@furystack/repository
Version:
Repository implementation for FuryStack
20 lines • 799 B
JavaScript
/**
* Resolves the {@link DataSet} for `token` on `injector`. The preferred
* write gateway for application code — `furystack/no-direct-store-token`
* forbids resolving the underlying `StoreToken` directly. For server-side
* or background work, wrap `injector` with `useSystemIdentityContext` from
* `@furystack/core` to obtain an elevated identity before calling this.
*
* @example
* ```ts
* await usingAsync(
* useSystemIdentityContext({ injector, username: 'background-job' }),
* async (systemInjector) => {
* const dataSet = getDataSetFor(systemInjector, UserDataSet)
* await dataSet.add(systemInjector, { username: 'alice', roles: [] })
* },
* )
* ```
*/
export const getDataSetFor = (injector, token) => injector.get(token);
//# sourceMappingURL=helpers.js.map