Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

@ngrx/signals/entity: Replace idKey with selectId #4392

Closed
1 of 2 tasks
markostanimirovic opened this issue Jun 14, 2024 · 0 comments
Closed
1 of 2 tasks

@ngrx/signals/entity: Replace idKey with selectId #4392

markostanimirovic opened this issue Jun 14, 2024 · 0 comments
Assignees

Comments

@markostanimirovic
Copy link
Member

Which @ngrx/* package(s) are relevant/related to the feature request?

signals

Information

To allow defining entity identifier from multiple properties, but also for consistency with @ngrx/entity, idKey will be replaced with selectId.

Before:

const TodosStore = signalStore(
  withEntities<Todo>(),
  withMethods((store) => ({
    addTodo(todo: Todo): void {
      patchState(store, addEntity(todo, { idKey: '_id' }));
    },
  })
);

After:

const selectId = (todo: Todo) => todo._id;

const TodosStore = signalStore(
  withEntities<Todo>(),
  withMethods((store) => ({
    addTodo(todo: Todo): void {
      patchState(store, addEntity(todo, { selectId }));
    },
  })
);

Describe any alternatives/workarounds you're currently using

No response

I would be willing to submit a PR to fix this issue

  • Yes
  • No
@markostanimirovic markostanimirovic self-assigned this Jun 14, 2024
markostanimirovic added a commit that referenced this issue Jun 18, 2024
gisbdzhch pushed a commit to gisktzh/gb3-web_ui that referenced this issue Aug 13, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@ngrx/schematics](https://github.com/ngrx/platform) | devDependencies | major | [`^17.1.1` -> `^18.0.0`](https://renovatebot.com/diffs/npm/@ngrx%2fschematics/17.2.0/18.0.1) |

---

### Release Notes

<details>
<summary>ngrx/platform (@&#8203;ngrx/schematics)</summary>

### [`v18.0.1`](https://github.com/ngrx/platform/blob/HEAD/CHANGELOG.md#1801-2024-06-27)

[Compare Source](ngrx/platform@18.0.0...18.0.1)

##### Bug Fixes

-   **component-store:** resolve issues in migration script to v18 ([#&#8203;4403](ngrx/platform#4403)) ([a15d53e](ngrx/platform@a15d53e))
-   **effects:** fix bugs in migration script to v18 ([#&#8203;4402](ngrx/platform#4402)) ([6ae4723](ngrx/platform@6ae4723))
-   **eslint-plugin:** only take return statement into account with no-multiple-actions-in-effects ([#&#8203;4410](ngrx/platform#4410)) ([c9c646c](ngrx/platform@c9c646c)), closes [#&#8203;4409](ngrx/platform#4409)

##### Features

-   **signals:** rename signals to computed when defining custom features with input ([#&#8203;4395](ngrx/platform#4395)) ([05f0940](ngrx/platform@05f0940)), closes [#&#8203;4391](ngrx/platform#4391)
-   **signals:** replace `idKey` with `selectId` when defining custom entity ID ([#&#8203;4396](ngrx/platform#4396)) ([67a5a93](ngrx/platform@67a5a93)), closes [#&#8203;4217](ngrx/platform#4217) [#&#8203;4392](ngrx/platform#4392)

### [`v18.0.0`](https://github.com/ngrx/platform/blob/HEAD/CHANGELOG.md#1800-2024-06-13)

[Compare Source](ngrx/platform@17.2.0...18.0.0)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or rename PR to start with "rebase!".

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: Done
Development

No branches or pull requests

1 participant