@ngrx/signals 17.0.0 → 17.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/src/deep-signal.mjs +2 -1
- package/esm2022/src/get-state.mjs +4 -4
- package/esm2022/src/patch-state.mjs +4 -4
- package/esm2022/src/signal-state.mjs +2 -2
- package/esm2022/src/signal-store-models.mjs +1 -1
- package/esm2022/src/signal-store.mjs +2 -2
- package/esm2022/src/state-signal.mjs +2 -0
- package/esm2022/src/with-hooks.mjs +2 -2
- package/esm2022/src/with-methods.mjs +2 -2
- package/esm2022/src/with-state.mjs +2 -2
- package/fesm2022/ngrx-signals.mjs +14 -12
- package/fesm2022/ngrx-signals.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics-core/utility/libs-version.js +1 -1
- package/schematics-core/utility/libs-version.js.map +1 -1
- package/src/deep-signal.d.ts +1 -2
- package/src/get-state.d.ts +2 -2
- package/src/patch-state.d.ts +2 -2
- package/src/signal-state.d.ts +2 -6
- package/src/signal-store-models.d.ts +4 -4
- package/src/signal-store.d.ts +89 -19
- package/src/state-signal.d.ts +5 -0
- package/src/with-hooks.d.ts +3 -3
- package/src/with-methods.d.ts +2 -2
|
@@ -12,6 +12,7 @@ export function toDeepSignal(signal) {
|
|
|
12
12
|
if (!isSignal(target[prop])) {
|
|
13
13
|
Object.defineProperty(target, prop, {
|
|
14
14
|
value: computed(() => target()[prop]),
|
|
15
|
+
configurable: true,
|
|
15
16
|
});
|
|
16
17
|
}
|
|
17
18
|
return toDeepSignal(target[prop]);
|
|
@@ -21,4 +22,4 @@ export function toDeepSignal(signal) {
|
|
|
21
22
|
function isRecord(value) {
|
|
22
23
|
return value?.constructor === Object;
|
|
23
24
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcC1zaWduYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL3NpZ25hbHMvc3JjL2RlZXAtc2lnbmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsUUFBUSxFQUVSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQW1CdkIsTUFBTSxVQUFVLFlBQVksQ0FBSSxNQUFpQjtJQUMvQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sTUFBdUIsQ0FBQztLQUNoQztJQUVELE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ3ZCLEdBQUcsQ0FBQyxNQUFXLEVBQUUsSUFBSTtZQUNuQixJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ3BCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3JCO1lBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDM0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFO29CQUNsQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNyQyxZQUFZLEVBQUUsSUFBSTtpQkFDbkIsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwQyxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMsUUFBUSxDQUFDLEtBQWM7SUFDOUIsT0FBTyxLQUFLLEVBQUUsV0FBVyxLQUFLLE1BQU0sQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY29tcHV0ZWQsXG4gIGlzU2lnbmFsLFxuICBTaWduYWwgYXMgTmdTaWduYWwsXG4gIHVudHJhY2tlZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJc0tub3duUmVjb3JkIH0gZnJvbSAnLi90cy1oZWxwZXJzJztcblxuLy8gQW4gZXh0ZW5kZWQgU2lnbmFsIHR5cGUgdGhhdCBlbmFibGVzIHRoZSBjb3JyZWN0IHR5cGluZ1xuLy8gb2YgbmVzdGVkIHNpZ25hbHMgd2l0aCB0aGUgYG5hbWVgIG9yIGBsZW5ndGhgIGtleS5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmFsPFQ+IGV4dGVuZHMgTmdTaWduYWw8VD4ge1xuICBuYW1lOiB1bmtub3duO1xuICBsZW5ndGg6IHVua25vd247XG59XG5cbmV4cG9ydCB0eXBlIERlZXBTaWduYWw8VD4gPSBTaWduYWw8VD4gJlxuICAoSXNLbm93blJlY29yZDxUPiBleHRlbmRzIHRydWVcbiAgICA/IFJlYWRvbmx5PHtcbiAgICAgICAgW0sgaW4ga2V5b2YgVF06IElzS25vd25SZWNvcmQ8VFtLXT4gZXh0ZW5kcyB0cnVlXG4gICAgICAgICAgPyBEZWVwU2lnbmFsPFRbS10+XG4gICAgICAgICAgOiBTaWduYWw8VFtLXT47XG4gICAgICB9PlxuICAgIDogdW5rbm93bik7XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0RlZXBTaWduYWw8VD4oc2lnbmFsOiBTaWduYWw8VD4pOiBEZWVwU2lnbmFsPFQ+IHtcbiAgY29uc3QgdmFsdWUgPSB1bnRyYWNrZWQoKCkgPT4gc2lnbmFsKCkpO1xuICBpZiAoIWlzUmVjb3JkKHZhbHVlKSkge1xuICAgIHJldHVybiBzaWduYWwgYXMgRGVlcFNpZ25hbDxUPjtcbiAgfVxuXG4gIHJldHVybiBuZXcgUHJveHkoc2lnbmFsLCB7XG4gICAgZ2V0KHRhcmdldDogYW55LCBwcm9wKSB7XG4gICAgICBpZiAoIShwcm9wIGluIHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gdGFyZ2V0W3Byb3BdO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWlzU2lnbmFsKHRhcmdldFtwcm9wXSkpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcHJvcCwge1xuICAgICAgICAgIHZhbHVlOiBjb21wdXRlZCgoKSA9PiB0YXJnZXQoKVtwcm9wXSksXG4gICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRvRGVlcFNpZ25hbCh0YXJnZXRbcHJvcF0pO1xuICAgIH0sXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBpc1JlY29yZCh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgcmV0dXJuIHZhbHVlPy5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0O1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { STATE_SIGNAL } from './signal
|
|
2
|
-
export function getState(
|
|
3
|
-
return
|
|
1
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
2
|
+
export function getState(stateSignal) {
|
|
3
|
+
return stateSignal[STATE_SIGNAL]();
|
|
4
4
|
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9nZXQtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBZSxNQUFNLGdCQUFnQixDQUFDO0FBRTNELE1BQU0sVUFBVSxRQUFRLENBQ3RCLFdBQStCO0lBRS9CLE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7QUFDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNUQVRFX1NJR05BTCwgU3RhdGVTaWduYWwgfSBmcm9tICcuL3N0YXRlLXNpZ25hbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTdGF0ZTxTdGF0ZSBleHRlbmRzIG9iamVjdD4oXG4gIHN0YXRlU2lnbmFsOiBTdGF0ZVNpZ25hbDxTdGF0ZT5cbik6IFN0YXRlIHtcbiAgcmV0dXJuIHN0YXRlU2lnbmFsW1NUQVRFX1NJR05BTF0oKTtcbn1cbiJdfQ==
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { STATE_SIGNAL } from './signal
|
|
2
|
-
export function patchState(
|
|
3
|
-
|
|
1
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
2
|
+
export function patchState(stateSignal, ...updaters) {
|
|
3
|
+
stateSignal[STATE_SIGNAL].update((currentState) => updaters.reduce((nextState, updater) => ({
|
|
4
4
|
...nextState,
|
|
5
5
|
...(typeof updater === 'function' ? updater(nextState) : updater),
|
|
6
6
|
}), currentState));
|
|
7
7
|
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0Y2gtc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL3NpZ25hbHMvc3JjL3BhdGNoLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQU0zRCxNQUFNLFVBQVUsVUFBVSxDQUN4QixXQUErQixFQUMvQixHQUFHLFFBQXNFO0lBRXpFLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUNoRCxRQUFRLENBQUMsTUFBTSxDQUNiLENBQUMsU0FBZ0IsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUIsR0FBRyxTQUFTO1FBQ1osR0FBRyxDQUFDLE9BQU8sT0FBTyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7S0FDbEUsQ0FBQyxFQUNGLFlBQVksQ0FDYixDQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU1RBVEVfU0lHTkFMLCBTdGF0ZVNpZ25hbCB9IGZyb20gJy4vc3RhdGUtc2lnbmFsJztcblxuZXhwb3J0IHR5cGUgUGFydGlhbFN0YXRlVXBkYXRlcjxTdGF0ZSBleHRlbmRzIG9iamVjdD4gPSAoXG4gIHN0YXRlOiBTdGF0ZVxuKSA9PiBQYXJ0aWFsPFN0YXRlPjtcblxuZXhwb3J0IGZ1bmN0aW9uIHBhdGNoU3RhdGU8U3RhdGUgZXh0ZW5kcyBvYmplY3Q+KFxuICBzdGF0ZVNpZ25hbDogU3RhdGVTaWduYWw8U3RhdGU+LFxuICAuLi51cGRhdGVyczogQXJyYXk8UGFydGlhbDxTdGF0ZSAmIHt9PiB8IFBhcnRpYWxTdGF0ZVVwZGF0ZXI8U3RhdGUgJiB7fT4+XG4pOiB2b2lkIHtcbiAgc3RhdGVTaWduYWxbU1RBVEVfU0lHTkFMXS51cGRhdGUoKGN1cnJlbnRTdGF0ZSkgPT5cbiAgICB1cGRhdGVycy5yZWR1Y2UoXG4gICAgICAobmV4dFN0YXRlOiBTdGF0ZSwgdXBkYXRlcikgPT4gKHtcbiAgICAgICAgLi4ubmV4dFN0YXRlLFxuICAgICAgICAuLi4odHlwZW9mIHVwZGF0ZXIgPT09ICdmdW5jdGlvbicgPyB1cGRhdGVyKG5leHRTdGF0ZSkgOiB1cGRhdGVyKSxcbiAgICAgIH0pLFxuICAgICAgY3VycmVudFN0YXRlXG4gICAgKVxuICApO1xufVxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { signal } from '@angular/core';
|
|
2
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
2
3
|
import { toDeepSignal } from './deep-signal';
|
|
3
|
-
export const STATE_SIGNAL = Symbol('STATE_SIGNAL');
|
|
4
4
|
export function signalState(initialState) {
|
|
5
5
|
const stateSignal = signal(initialState);
|
|
6
6
|
const deepSignal = toDeepSignal(stateSignal.asReadonly());
|
|
@@ -9,4 +9,4 @@ export function signalState(initialState) {
|
|
|
9
9
|
});
|
|
10
10
|
return deepSignal;
|
|
11
11
|
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zaWduYWwtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUl6RCxNQUFNLFVBQVUsV0FBVyxDQUN6QixZQUFtQjtJQUVuQixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsWUFBcUIsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUMxRCxNQUFNLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUU7UUFDOUMsS0FBSyxFQUFFLFdBQVc7S0FDbkIsQ0FBQyxDQUFDO0lBRUgsT0FBTyxVQUFnQyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNUQVRFX1NJR05BTCwgU3RhdGVTaWduYWwgfSBmcm9tICcuL3N0YXRlLXNpZ25hbCc7XG5pbXBvcnQgeyBEZWVwU2lnbmFsLCB0b0RlZXBTaWduYWwgfSBmcm9tICcuL2RlZXAtc2lnbmFsJztcblxudHlwZSBTaWduYWxTdGF0ZTxTdGF0ZSBleHRlbmRzIG9iamVjdD4gPSBEZWVwU2lnbmFsPFN0YXRlPiAmIFN0YXRlU2lnbmFsPFN0YXRlPjtcblxuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgaW5pdGlhbFN0YXRlOiBTdGF0ZVxuKTogU2lnbmFsU3RhdGU8U3RhdGU+IHtcbiAgY29uc3Qgc3RhdGVTaWduYWwgPSBzaWduYWwoaW5pdGlhbFN0YXRlIGFzIFN0YXRlKTtcbiAgY29uc3QgZGVlcFNpZ25hbCA9IHRvRGVlcFNpZ25hbChzdGF0ZVNpZ25hbC5hc1JlYWRvbmx5KCkpO1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZGVlcFNpZ25hbCwgU1RBVEVfU0lHTkFMLCB7XG4gICAgdmFsdWU6IHN0YXRlU2lnbmFsLFxuICB9KTtcblxuICByZXR1cm4gZGVlcFNpZ25hbCBhcyBTaWduYWxTdGF0ZTxTdGF0ZT47XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0b3JlLW1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvc2lnbmFsLXN0b3JlLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZWVwU2lnbmFsIH0gZnJvbSAnLi9kZWVwLXNpZ25hbCc7XG5pbXBvcnQgeyBTdGF0ZVNpZ25hbCB9IGZyb20gJy4vc3RhdGUtc2lnbmFsJztcbmltcG9ydCB7IElzS25vd25SZWNvcmQsIFByZXR0aWZ5IH0gZnJvbSAnLi90cy1oZWxwZXJzJztcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RvcmVDb25maWcgPSB7IHByb3ZpZGVkSW46ICdyb290JyB9O1xuXG5leHBvcnQgdHlwZSBTaWduYWxTdG9yZVNsaWNlczxTdGF0ZT4gPSBJc0tub3duUmVjb3JkPFxuICBQcmV0dGlmeTxTdGF0ZT5cbj4gZXh0ZW5kcyB0cnVlXG4gID8ge1xuICAgICAgW0tleSBpbiBrZXlvZiBTdGF0ZV06IElzS25vd25SZWNvcmQ8U3RhdGVbS2V5XT4gZXh0ZW5kcyB0cnVlXG4gICAgICAgID8gRGVlcFNpZ25hbDxTdGF0ZVtLZXldPlxuICAgICAgICA6IFNpZ25hbDxTdGF0ZVtLZXldPjtcbiAgICB9XG4gIDoge307XG5cbmV4cG9ydCB0eXBlIFNpZ25hbFN0b3JlUHJvcHM8RmVhdHVyZVJlc3VsdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4gPVxuICBQcmV0dGlmeTxcbiAgICBTaWduYWxTdG9yZVNsaWNlczxGZWF0dXJlUmVzdWx0WydzdGF0ZSddPiAmXG4gICAgICBGZWF0dXJlUmVzdWx0WydzaWduYWxzJ10gJlxuICAgICAgRmVhdHVyZVJlc3VsdFsnbWV0aG9kcyddXG4gID47XG5cbmV4cG9ydCB0eXBlIFNpZ25hbHNEaWN0aW9uYXJ5ID0gUmVjb3JkPHN0cmluZywgU2lnbmFsPHVua25vd24+PjtcblxuZXhwb3J0IHR5cGUgTWV0aG9kc0RpY3Rpb25hcnkgPSBSZWNvcmQ8c3RyaW5nLCAoLi4uYXJnczogYW55W10pID0+IHVua25vd24+O1xuXG5leHBvcnQgdHlwZSBTaWduYWxTdG9yZUhvb2tzID0ge1xuICBvbkluaXQ/OiAoKSA9PiB2b2lkO1xuICBvbkRlc3Ryb3k/OiAoKSA9PiB2b2lkO1xufTtcblxuZXhwb3J0IHR5cGUgSW5uZXJTaWduYWxTdG9yZTxcbiAgU3RhdGUgZXh0ZW5kcyBvYmplY3QgPSBvYmplY3QsXG4gIFNpZ25hbHMgZXh0ZW5kcyBTaWduYWxzRGljdGlvbmFyeSA9IFNpZ25hbHNEaWN0aW9uYXJ5LFxuICBNZXRob2RzIGV4dGVuZHMgTWV0aG9kc0RpY3Rpb25hcnkgPSBNZXRob2RzRGljdGlvbmFyeVxuPiA9IHtcbiAgc2xpY2VzOiBTaWduYWxTdG9yZVNsaWNlczxTdGF0ZT47XG4gIHNpZ25hbHM6IFNpZ25hbHM7XG4gIG1ldGhvZHM6IE1ldGhvZHM7XG4gIGhvb2tzOiBTaWduYWxTdG9yZUhvb2tzO1xufSAmIFN0YXRlU2lnbmFsPFN0YXRlPjtcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0ge1xuICBzdGF0ZTogb2JqZWN0O1xuICBzaWduYWxzOiBTaWduYWxzRGljdGlvbmFyeTtcbiAgbWV0aG9kczogTWV0aG9kc0RpY3Rpb25hcnk7XG59O1xuXG5leHBvcnQgdHlwZSBFbXB0eUZlYXR1cmVSZXN1bHQgPSB7IHN0YXRlOiB7fTsgc2lnbmFsczoge307IG1ldGhvZHM6IHt9IH07XG5cbmV4cG9ydCB0eXBlIFNpZ25hbFN0b3JlRmVhdHVyZTxcbiAgSW5wdXQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIE91dHB1dCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPiA9IChcbiAgc3RvcmU6IElubmVyU2lnbmFsU3RvcmU8SW5wdXRbJ3N0YXRlJ10sIElucHV0WydzaWduYWxzJ10sIElucHV0WydtZXRob2RzJ10+XG4pID0+IElubmVyU2lnbmFsU3RvcmU8T3V0cHV0WydzdGF0ZSddLCBPdXRwdXRbJ3NpZ25hbHMnXSwgT3V0cHV0WydtZXRob2RzJ10+O1xuXG5leHBvcnQgdHlwZSBNZXJnZUZlYXR1cmVSZXN1bHRzPFxuICBGZWF0dXJlUmVzdWx0cyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFtdXG4+ID0gRmVhdHVyZVJlc3VsdHMgZXh0ZW5kcyBbXVxuICA/IEVtcHR5RmVhdHVyZVJlc3VsdFxuICA6IEZlYXR1cmVSZXN1bHRzIGV4dGVuZHMgW2luZmVyIEZpcnN0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XVxuICA/IEZpcnN0XG4gIDogRmVhdHVyZVJlc3VsdHMgZXh0ZW5kcyBbXG4gICAgICBpbmZlciBGaXJzdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgICAgIGluZmVyIFNlY29uZCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuICAgIF1cbiAgPyBNZXJnZVR3b0ZlYXR1cmVSZXN1bHRzPEZpcnN0LCBTZWNvbmQ+XG4gIDogRmVhdHVyZVJlc3VsdHMgZXh0ZW5kcyBbXG4gICAgICBpbmZlciBGaXJzdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgICAgIGluZmVyIFNlY29uZCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgICAgIC4uLmluZmVyIFJlc3QgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRbXVxuICAgIF1cbiAgPyBNZXJnZUZlYXR1cmVSZXN1bHRzPFtNZXJnZVR3b0ZlYXR1cmVSZXN1bHRzPEZpcnN0LCBTZWNvbmQ+LCAuLi5SZXN0XT5cbiAgOiBuZXZlcjtcblxudHlwZSBGZWF0dXJlUmVzdWx0S2V5czxGZWF0dXJlUmVzdWx0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0PiA9XG4gIHwga2V5b2YgRmVhdHVyZVJlc3VsdFsnc3RhdGUnXVxuICB8IGtleW9mIEZlYXR1cmVSZXN1bHRbJ3NpZ25hbHMnXVxuICB8IGtleW9mIEZlYXR1cmVSZXN1bHRbJ21ldGhvZHMnXTtcblxudHlwZSBNZXJnZVR3b0ZlYXR1cmVSZXN1bHRzPFxuICBGaXJzdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgU2Vjb25kIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+ID0ge1xuICBzdGF0ZTogT21pdDxGaXJzdFsnc3RhdGUnXSwgRmVhdHVyZVJlc3VsdEtleXM8U2Vjb25kPj47XG4gIHNpZ25hbHM6IE9taXQ8Rmlyc3RbJ3NpZ25hbHMnXSwgRmVhdHVyZVJlc3VsdEtleXM8U2Vjb25kPj47XG4gIG1ldGhvZHM6IE9taXQ8Rmlyc3RbJ21ldGhvZHMnXSwgRmVhdHVyZVJlc3VsdEtleXM8U2Vjb25kPj47XG59ICYgU2Vjb25kO1xuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DestroyRef, inject, Injectable, Injector, runInInjectionContext, signal, } from '@angular/core';
|
|
2
|
-
import { STATE_SIGNAL } from './signal
|
|
2
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export function signalStore(...args) {
|
|
5
5
|
const signalStoreArgs = [...args];
|
|
@@ -44,4 +44,4 @@ export function getInitialInnerStore() {
|
|
|
44
44
|
hooks: {},
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zaWduYWwtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsRUFDUixxQkFBcUIsRUFDckIsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFrUTlDLE1BQU0sVUFBVSxXQUFXLENBQ3pCLEdBQUcsSUFBeUU7SUFFNUUsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRWxDLE1BQU0sTUFBTSxHQUNWLFlBQVksSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBRSxlQUFlLENBQUMsS0FBSyxFQUF3QjtRQUNoRCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1QsTUFBTSxRQUFRLEdBQUcsZUFBdUMsQ0FBQztJQUV6RCxNQUNNLFdBQVc7UUFDZjtZQUNFLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQ2hDLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUNsQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO1lBQ0YsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFFbkQsSUFBWSxDQUFDLFlBQVksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUV2RCxLQUFLLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBRTtnQkFDdEIsSUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNqQztZQUVELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2hCO1lBRUQsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO2dCQUNuQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWxDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNoQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVUsQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQzs4SEExQkcsV0FBVztrSUFBWCxXQUFXLGNBRFMsTUFBTSxDQUFDLFVBQVUsSUFBSSxJQUFJOzsrRkFDN0MsV0FBVztzQkFEaEIsVUFBVTt1QkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxJQUFJLElBQUksRUFBRTs7SUE4QnJELE9BQU8sV0FBVyxDQUFDO0NBQ3BCO0FBRUQsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxPQUFPO1FBQ0wsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxFQUFFO1FBQ1YsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsRUFBRTtRQUNYLEtBQUssRUFBRSxFQUFFO0tBQ1YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZXN0cm95UmVmLFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIEluamVjdG9yLFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIHNpZ25hbCxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTVEFURV9TSUdOQUwgfSBmcm9tICcuL3NpZ25hbC1zdGF0ZSc7XG5pbXBvcnQge1xuICBFbXB0eUZlYXR1cmVSZXN1bHQsXG4gIElubmVyU2lnbmFsU3RvcmUsXG4gIE1lcmdlRmVhdHVyZVJlc3VsdHMsXG4gIFNpZ25hbFN0b3JlLFxuICBTaWduYWxTdG9yZUNvbmZpZyxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlLFxuICBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG59IGZyb20gJy4vc2lnbmFsLXN0b3JlLW1vZGVscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT5cbik6IFR5cGU8U2lnbmFsU3RvcmU8RjE+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+KFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+KFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+XG4pOiBUeXBlPFNpZ25hbFN0b3JlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY1IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT4sXG4gIGY2OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4sIEY2PlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2XT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY1IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjcgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY2IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjggZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz4sXG4gIGY4OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPiwgRjg+XG4pOiBUeXBlPFNpZ25hbFN0b3JlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3LCBGOF0+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY3IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGOCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjkgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz4sXG4gIGY4OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPiwgRjg+LFxuICBmOTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICAgIE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3LCBGOF0+LFxuICAgIEY5XG4gID5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjcsIEY4LCBGOV0+Pj47XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4oXG4gIGNvbmZpZzogU2lnbmFsU3RvcmVDb25maWcsXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT5cbik6IFR5cGU8U2lnbmFsU3RvcmU8RjE+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+XG4pOiBUeXBlPFNpZ25hbFN0b3JlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY1IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT4sXG4gIGY2OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4sIEY2PlxuKTogVHlwZTxTaWduYWxTdG9yZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2XT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY1IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjcgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGNvbmZpZzogU2lnbmFsU3RvcmVDb25maWcsXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY2IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjggZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGNvbmZpZzogU2lnbmFsU3RvcmVDb25maWcsXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz4sXG4gIGY4OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPiwgRjg+XG4pOiBUeXBlPFNpZ25hbFN0b3JlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3LCBGOF0+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY3IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGOCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjkgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbj4oXG4gIGNvbmZpZzogU2lnbmFsU3RvcmVDb25maWcsXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz4sXG4gIGY4OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPiwgRjg+LFxuICBmOTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICAgIE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3LCBGOF0+LFxuICAgIEY5XG4gID5cbik6IFR5cGU8U2lnbmFsU3RvcmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjcsIEY4LCBGOV0+Pj47XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZShcbiAgLi4uYXJnczogW1NpZ25hbFN0b3JlQ29uZmlnLCAuLi5TaWduYWxTdG9yZUZlYXR1cmVbXV0gfCBTaWduYWxTdG9yZUZlYXR1cmVbXVxuKTogVHlwZTxTaWduYWxTdG9yZTxhbnk+PiB7XG4gIGNvbnN0IHNpZ25hbFN0b3JlQXJncyA9IFsuLi5hcmdzXTtcblxuICBjb25zdCBjb25maWc6IFBhcnRpYWw8U2lnbmFsU3RvcmVDb25maWc+ID1cbiAgICAncHJvdmlkZWRJbicgaW4gc2lnbmFsU3RvcmVBcmdzWzBdXG4gICAgICA/IChzaWduYWxTdG9yZUFyZ3Muc2hpZnQoKSBhcyBTaWduYWxTdG9yZUNvbmZpZylcbiAgICAgIDoge307XG4gIGNvbnN0IGZlYXR1cmVzID0gc2lnbmFsU3RvcmVBcmdzIGFzIFNpZ25hbFN0b3JlRmVhdHVyZVtdO1xuXG4gIEBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogY29uZmlnLnByb3ZpZGVkSW4gfHwgbnVsbCB9KVxuICBjbGFzcyBTaWduYWxTdG9yZSB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICBjb25zdCBpbm5lclN0b3JlID0gZmVhdHVyZXMucmVkdWNlKFxuICAgICAgICAoc3RvcmUsIGZlYXR1cmUpID0+IGZlYXR1cmUoc3RvcmUpLFxuICAgICAgICBnZXRJbml0aWFsSW5uZXJTdG9yZSgpXG4gICAgICApO1xuICAgICAgY29uc3QgeyBzbGljZXMsIHNpZ25hbHMsIG1ldGhvZHMsIGhvb2tzIH0gPSBpbm5lclN0b3JlO1xuICAgICAgY29uc3QgcHJvcHMgPSB7IC4uLnNsaWNlcywgLi4uc2lnbmFscywgLi4ubWV0aG9kcyB9O1xuXG4gICAgICAodGhpcyBhcyBhbnkpW1NUQVRFX1NJR05BTF0gPSBpbm5lclN0b3JlW1NUQVRFX1NJR05BTF07XG5cbiAgICAgIGZvciAoY29uc3Qga2V5IGluIHByb3BzKSB7XG4gICAgICAgICh0aGlzIGFzIGFueSlba2V5XSA9IHByb3BzW2tleV07XG4gICAgICB9XG5cbiAgICAgIGlmIChob29rcy5vbkluaXQpIHtcbiAgICAgICAgaG9va3Mub25Jbml0KCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChob29rcy5vbkRlc3Ryb3kpIHtcbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xuXG4gICAgICAgIGluamVjdChEZXN0cm95UmVmKS5vbkRlc3Ryb3koKCkgPT4ge1xuICAgICAgICAgIHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgaG9va3Mub25EZXN0cm95ISk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBTaWduYWxTdG9yZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEluaXRpYWxJbm5lclN0b3JlKCk6IElubmVyU2lnbmFsU3RvcmUge1xuICByZXR1cm4ge1xuICAgIFtTVEFURV9TSUdOQUxdOiBzaWduYWwoe30pLFxuICAgIHNsaWNlczoge30sXG4gICAgc2lnbmFsczoge30sXG4gICAgbWV0aG9kczoge30sXG4gICAgaG9va3M6IHt9LFxuICB9O1xufVxuIl19
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zaWduYWwtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsRUFDUixxQkFBcUIsRUFDckIsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFtUzNELE1BQU0sVUFBVSxXQUFXLENBQ3pCLEdBQUcsSUFBeUU7SUFFNUUsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRWxDLE1BQU0sTUFBTSxHQUNWLFlBQVksSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBRSxlQUFlLENBQUMsS0FBSyxFQUF3QjtRQUNoRCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1QsTUFBTSxRQUFRLEdBQUcsZUFBdUMsQ0FBQztJQUV6RCxNQUNNLFdBQVc7UUFDZjtZQUNFLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQ2hDLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUNsQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO1lBQ0YsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFFbkQsSUFBWSxDQUFDLFlBQVksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUV2RCxLQUFLLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBRTtnQkFDdEIsSUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNqQztZQUVELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2hCO1lBRUQsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO2dCQUNuQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWxDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNoQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVUsQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQzs4SEExQkcsV0FBVztrSUFBWCxXQUFXLGNBRFMsTUFBTSxDQUFDLFVBQVUsSUFBSSxJQUFJOzsrRkFDN0MsV0FBVztzQkFEaEIsVUFBVTt1QkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxJQUFJLElBQUksRUFBRTs7SUE4QnJELE9BQU8sV0FBVyxDQUFDO0NBQ3BCO0FBRUQsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxPQUFPO1FBQ0wsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxFQUFFO1FBQ1YsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsRUFBRTtRQUNYLEtBQUssRUFBRSxFQUFFO0tBQ1YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZXN0cm95UmVmLFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIEluamVjdG9yLFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIHNpZ25hbCxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTVEFURV9TSUdOQUwsIFN0YXRlU2lnbmFsIH0gZnJvbSAnLi9zdGF0ZS1zaWduYWwnO1xuaW1wb3J0IHtcbiAgRW1wdHlGZWF0dXJlUmVzdWx0LFxuICBJbm5lclNpZ25hbFN0b3JlLFxuICBNZXJnZUZlYXR1cmVSZXN1bHRzLFxuICBTaWduYWxTdG9yZVByb3BzLFxuICBTaWduYWxTdG9yZUNvbmZpZyxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlLFxuICBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG59IGZyb20gJy4vc2lnbmFsLXN0b3JlLW1vZGVscyc7XG5pbXBvcnQgeyBQcmV0dGlmeSB9IGZyb20gJy4vdHMtaGVscGVycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxGMT4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxGMVsnc3RhdGUnXT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBSIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0gTWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT5cbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBSIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0gTWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+XG4+KFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0XT5cbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxSPiAmIFN0YXRlU2lnbmFsPFByZXR0aWZ5PFJbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+XG4+KFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+LFxuICBmNDogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPiwgRjQ+LFxuICBmNTogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0XT4sIEY1PlxuKTogVHlwZTxTaWduYWxTdG9yZVByb3BzPFI+ICYgU3RhdGVTaWduYWw8UHJldHRpZnk8Ulsnc3RhdGUnXT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY1IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8XG4gICAgW0YxLCBGMiwgRjMsIEY0LCBGNSwgRjZdXG4gID5cbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxSPiAmIFN0YXRlU2lnbmFsPFByZXR0aWZ5PFJbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY3IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBSIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0gTWVyZ2VGZWF0dXJlUmVzdWx0czxcbiAgICBbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddXG4gID5cbj4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxSPiAmIFN0YXRlU2lnbmFsPFByZXR0aWZ5PFJbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY3IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGOCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8XG4gICAgW0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3LCBGOF1cbiAgPlxuPihcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT4sXG4gIGY2OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4sIEY2PixcbiAgZjc6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2XT4sIEY3PixcbiAgZjg6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2LCBGN10+LCBGOD5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxSPiAmIFN0YXRlU2lnbmFsPFByZXR0aWZ5PFJbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY3IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGOCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjkgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBNZXJnZUZlYXR1cmVSZXN1bHRzPFxuICAgIFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2LCBGNywgRjgsIEY5XVxuICA+XG4+KFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+LFxuICBmNDogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPiwgRjQ+LFxuICBmNTogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0XT4sIEY1PixcbiAgZjY6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjVdPiwgRjY+LFxuICBmNzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjZdPiwgRjc+LFxuICBmODogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3XT4sIEY4PixcbiAgZjk6IFNpZ25hbFN0b3JlRmVhdHVyZTxcbiAgICBNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2LCBGNywgRjhdPixcbiAgICBGOVxuICA+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuXG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8RjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQ+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8RjE+ICYgU3RhdGVTaWduYWw8UHJldHRpZnk8RjFbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPlxuKTogVHlwZTxTaWduYWxTdG9yZVByb3BzPFI+ICYgU3RhdGVTaWduYWw8UHJldHRpZnk8Ulsnc3RhdGUnXT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPlxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPlxuKTogVHlwZTxTaWduYWxTdG9yZVByb3BzPFI+ICYgU3RhdGVTaWduYWw8UHJldHRpZnk8Ulsnc3RhdGUnXT4+PjtcbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxcbiAgRjEgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYyIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+LFxuICBmNDogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPiwgRjQ+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjVdPlxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT5cbik6IFR5cGU8U2lnbmFsU3RvcmVQcm9wczxSPiAmIFN0YXRlU2lnbmFsPFByZXR0aWZ5PFJbJ3N0YXRlJ10+Pj47XG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RvcmU8XG4gIEYxIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGMiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjMgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjYgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBNZXJnZUZlYXR1cmVSZXN1bHRzPFxuICAgIFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2XVxuICA+XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+LFxuICBmNDogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPiwgRjQ+LFxuICBmNTogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0XT4sIEY1PixcbiAgZjY6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjVdPiwgRjY+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY2IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgUiBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IE1lcmdlRmVhdHVyZVJlc3VsdHM8XG4gICAgW0YxLCBGMiwgRjMsIEY0LCBGNSwgRjYsIEY3XVxuICA+XG4+KFxuICBjb25maWc6IFNpZ25hbFN0b3JlQ29uZmlnLFxuICBmMTogU2lnbmFsU3RvcmVGZWF0dXJlPEVtcHR5RmVhdHVyZVJlc3VsdCwgRjE+LFxuICBmMjogU2lnbmFsU3RvcmVGZWF0dXJlPHt9ICYgRjEsIEYyPixcbiAgZjM6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjJdPiwgRjM+LFxuICBmNDogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjNdPiwgRjQ+LFxuICBmNTogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0XT4sIEY1PixcbiAgZjY6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjVdPiwgRjY+LFxuICBmNzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNSwgRjZdPiwgRjc+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY2IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjggZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSBNZXJnZUZlYXR1cmVSZXN1bHRzPFxuICAgIFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2LCBGNywgRjhdXG4gID5cbj4oXG4gIGNvbmZpZzogU2lnbmFsU3RvcmVDb25maWcsXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT4sXG4gIGYyOiBTaWduYWxTdG9yZUZlYXR1cmU8e30gJiBGMSwgRjI+LFxuICBmMzogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMl0+LCBGMz4sXG4gIGY0OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGM10+LCBGND4sXG4gIGY1OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjRdPiwgRjU+LFxuICBmNjogU2lnbmFsU3RvcmVGZWF0dXJlPE1lcmdlRmVhdHVyZVJlc3VsdHM8W0YxLCBGMiwgRjMsIEY0LCBGNV0+LCBGNj4sXG4gIGY3OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNl0+LCBGNz4sXG4gIGY4OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjddPiwgRjg+XG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8Uj4gJiBTdGF0ZVNpZ25hbDxQcmV0dGlmeTxSWydzdGF0ZSddPj4+O1xuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlPFxuICBGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjIgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEYzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjUgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY2IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBGNyBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRjggZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIEY5IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBSIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0gTWVyZ2VGZWF0dXJlUmVzdWx0czxcbiAgICBbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjcsIEY4LCBGOV1cbiAgPlxuPihcbiAgY29uZmlnOiBTaWduYWxTdG9yZUNvbmZpZyxcbiAgZjE6IFNpZ25hbFN0b3JlRmVhdHVyZTxFbXB0eUZlYXR1cmVSZXN1bHQsIEYxPixcbiAgZjI6IFNpZ25hbFN0b3JlRmVhdHVyZTx7fSAmIEYxLCBGMj4sXG4gIGYzOiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyXT4sIEYzPixcbiAgZjQ6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzXT4sIEY0PixcbiAgZjU6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNF0+LCBGNT4sXG4gIGY2OiBTaWduYWxTdG9yZUZlYXR1cmU8TWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1XT4sIEY2PixcbiAgZjc6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2XT4sIEY3PixcbiAgZjg6IFNpZ25hbFN0b3JlRmVhdHVyZTxNZXJnZUZlYXR1cmVSZXN1bHRzPFtGMSwgRjIsIEYzLCBGNCwgRjUsIEY2LCBGN10+LCBGOD4sXG4gIGY5OiBTaWduYWxTdG9yZUZlYXR1cmU8XG4gICAgTWVyZ2VGZWF0dXJlUmVzdWx0czxbRjEsIEYyLCBGMywgRjQsIEY1LCBGNiwgRjcsIEY4XT4sXG4gICAgRjlcbiAgPlxuKTogVHlwZTxTaWduYWxTdG9yZVByb3BzPFI+ICYgU3RhdGVTaWduYWw8UHJldHRpZnk8Ulsnc3RhdGUnXT4+PjtcblxuZXhwb3J0IGZ1bmN0aW9uIHNpZ25hbFN0b3JlKFxuICAuLi5hcmdzOiBbU2lnbmFsU3RvcmVDb25maWcsIC4uLlNpZ25hbFN0b3JlRmVhdHVyZVtdXSB8IFNpZ25hbFN0b3JlRmVhdHVyZVtdXG4pOiBUeXBlPFNpZ25hbFN0b3JlUHJvcHM8YW55Pj4ge1xuICBjb25zdCBzaWduYWxTdG9yZUFyZ3MgPSBbLi4uYXJnc107XG5cbiAgY29uc3QgY29uZmlnOiBQYXJ0aWFsPFNpZ25hbFN0b3JlQ29uZmlnPiA9XG4gICAgJ3Byb3ZpZGVkSW4nIGluIHNpZ25hbFN0b3JlQXJnc1swXVxuICAgICAgPyAoc2lnbmFsU3RvcmVBcmdzLnNoaWZ0KCkgYXMgU2lnbmFsU3RvcmVDb25maWcpXG4gICAgICA6IHt9O1xuICBjb25zdCBmZWF0dXJlcyA9IHNpZ25hbFN0b3JlQXJncyBhcyBTaWduYWxTdG9yZUZlYXR1cmVbXTtcblxuICBASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46IGNvbmZpZy5wcm92aWRlZEluIHx8IG51bGwgfSlcbiAgY2xhc3MgU2lnbmFsU3RvcmUge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgY29uc3QgaW5uZXJTdG9yZSA9IGZlYXR1cmVzLnJlZHVjZShcbiAgICAgICAgKHN0b3JlLCBmZWF0dXJlKSA9PiBmZWF0dXJlKHN0b3JlKSxcbiAgICAgICAgZ2V0SW5pdGlhbElubmVyU3RvcmUoKVxuICAgICAgKTtcbiAgICAgIGNvbnN0IHsgc2xpY2VzLCBzaWduYWxzLCBtZXRob2RzLCBob29rcyB9ID0gaW5uZXJTdG9yZTtcbiAgICAgIGNvbnN0IHByb3BzID0geyAuLi5zbGljZXMsIC4uLnNpZ25hbHMsIC4uLm1ldGhvZHMgfTtcblxuICAgICAgKHRoaXMgYXMgYW55KVtTVEFURV9TSUdOQUxdID0gaW5uZXJTdG9yZVtTVEFURV9TSUdOQUxdO1xuXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBwcm9wcykge1xuICAgICAgICAodGhpcyBhcyBhbnkpW2tleV0gPSBwcm9wc1trZXldO1xuICAgICAgfVxuXG4gICAgICBpZiAoaG9va3Mub25Jbml0KSB7XG4gICAgICAgIGhvb2tzLm9uSW5pdCgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaG9va3Mub25EZXN0cm95KSB7XG4gICAgICAgIGNvbnN0IGluamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcblxuICAgICAgICBpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcbiAgICAgICAgICBydW5JbkluamVjdGlvbkNvbnRleHQoaW5qZWN0b3IsIGhvb2tzLm9uRGVzdHJveSEpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gU2lnbmFsU3RvcmU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJbml0aWFsSW5uZXJTdG9yZSgpOiBJbm5lclNpZ25hbFN0b3JlIHtcbiAgcmV0dXJuIHtcbiAgICBbU1RBVEVfU0lHTkFMXTogc2lnbmFsKHt9KSxcbiAgICBzbGljZXM6IHt9LFxuICAgIHNpZ25hbHM6IHt9LFxuICAgIG1ldGhvZHM6IHt9LFxuICAgIGhvb2tzOiB7fSxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const STATE_SIGNAL = Symbol('STATE_SIGNAL');
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtc2lnbmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zdGF0ZS1zaWduYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBTVEFURV9TSUdOQUwgPSBTeW1ib2woJ1NUQVRFX1NJR05BTCcpO1xuXG5leHBvcnQgdHlwZSBTdGF0ZVNpZ25hbDxTdGF0ZSBleHRlbmRzIG9iamVjdD4gPSB7XG4gIFtTVEFURV9TSUdOQUxdOiBXcml0YWJsZVNpZ25hbDxTdGF0ZT47XG59O1xuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { STATE_SIGNAL } from './signal
|
|
1
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
2
2
|
export function withHooks(hooks) {
|
|
3
3
|
return (store) => {
|
|
4
4
|
const createHook = (name) => {
|
|
@@ -27,4 +27,4 @@ export function withHooks(hooks) {
|
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1ob29rcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvd2l0aC1ob29rcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFrQjNELE1BQU0sVUFBVSxTQUFTLENBQXlDLEtBR2pFO0lBQ0MsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2YsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUF3QixFQUFFLEVBQUU7WUFDOUMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3pCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFdEMsT0FBTyxJQUFJO2dCQUNULENBQUMsQ0FBQyxHQUFHLEVBQUU7b0JBQ0gsSUFBSSxXQUFXLEVBQUU7d0JBQ2YsV0FBVyxFQUFFLENBQUM7cUJBQ2Y7b0JBRUQsSUFBSSxDQUFDO3dCQUNILENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQzt3QkFDbkMsR0FBRyxLQUFLLENBQUMsTUFBTTt3QkFDZixHQUFHLEtBQUssQ0FBQyxPQUFPO3dCQUNoQixHQUFHLEtBQUssQ0FBQyxPQUFPO3FCQUNqQixDQUFDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDSCxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ2xCLENBQUMsQ0FBQztRQUVGLE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixLQUFLLEVBQUU7Z0JBQ0wsTUFBTSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7Z0JBQzVCLFNBQVMsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDO2FBQ25DO1NBQ0YsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTVEFURV9TSUdOQUwsIFN0YXRlU2lnbmFsIH0gZnJvbSAnLi9zdGF0ZS1zaWduYWwnO1xuaW1wb3J0IHtcbiAgRW1wdHlGZWF0dXJlUmVzdWx0LFxuICBTaWduYWxTdG9yZUZlYXR1cmUsXG4gIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgU2lnbmFsU3RvcmVTbGljZXMsXG59IGZyb20gJy4vc2lnbmFsLXN0b3JlLW1vZGVscyc7XG5pbXBvcnQgeyBQcmV0dGlmeSB9IGZyb20gJy4vdHMtaGVscGVycyc7XG5cbnR5cGUgSG9va3NGYWN0b3J5PElucHV0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0PiA9IChcbiAgc3RvcmU6IFByZXR0aWZ5PFxuICAgIFNpZ25hbFN0b3JlU2xpY2VzPElucHV0WydzdGF0ZSddPiAmXG4gICAgICBJbnB1dFsnc2lnbmFscyddICZcbiAgICAgIElucHV0WydtZXRob2RzJ10gJlxuICAgICAgU3RhdGVTaWduYWw8UHJldHRpZnk8SW5wdXRbJ3N0YXRlJ10+PlxuICA+XG4pID0+IHZvaWQ7XG5cbmV4cG9ydCBmdW5jdGlvbiB3aXRoSG9va3M8SW5wdXQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQ+KGhvb2tzOiB7XG4gIG9uSW5pdD86IEhvb2tzRmFjdG9yeTxJbnB1dD47XG4gIG9uRGVzdHJveT86IEhvb2tzRmFjdG9yeTxJbnB1dD47XG59KTogU2lnbmFsU3RvcmVGZWF0dXJlPElucHV0LCBFbXB0eUZlYXR1cmVSZXN1bHQ+IHtcbiAgcmV0dXJuIChzdG9yZSkgPT4ge1xuICAgIGNvbnN0IGNyZWF0ZUhvb2sgPSAobmFtZToga2V5b2YgdHlwZW9mIGhvb2tzKSA9PiB7XG4gICAgICBjb25zdCBob29rID0gaG9va3NbbmFtZV07XG4gICAgICBjb25zdCBjdXJyZW50SG9vayA9IHN0b3JlLmhvb2tzW25hbWVdO1xuXG4gICAgICByZXR1cm4gaG9va1xuICAgICAgICA/ICgpID0+IHtcbiAgICAgICAgICAgIGlmIChjdXJyZW50SG9vaykge1xuICAgICAgICAgICAgICBjdXJyZW50SG9vaygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBob29rKHtcbiAgICAgICAgICAgICAgW1NUQVRFX1NJR05BTF06IHN0b3JlW1NUQVRFX1NJR05BTF0sXG4gICAgICAgICAgICAgIC4uLnN0b3JlLnNsaWNlcyxcbiAgICAgICAgICAgICAgLi4uc3RvcmUuc2lnbmFscyxcbiAgICAgICAgICAgICAgLi4uc3RvcmUubWV0aG9kcyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgOiBjdXJyZW50SG9vaztcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnN0b3JlLFxuICAgICAgaG9va3M6IHtcbiAgICAgICAgb25Jbml0OiBjcmVhdGVIb29rKCdvbkluaXQnKSxcbiAgICAgICAgb25EZXN0cm95OiBjcmVhdGVIb29rKCdvbkRlc3Ryb3knKSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { excludeKeys } from './helpers';
|
|
2
|
-
import { STATE_SIGNAL } from './signal
|
|
2
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
3
3
|
export function withMethods(methodsFactory) {
|
|
4
4
|
return (store) => {
|
|
5
5
|
const methods = methodsFactory({
|
|
@@ -19,4 +19,4 @@ export function withMethods(methodsFactory) {
|
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1tZXRob2RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy93aXRoLW1ldGhvZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFZM0QsTUFBTSxVQUFVLFdBQVcsQ0FJekIsY0FPWTtJQUVaLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNmLE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQztZQUM3QixDQUFDLFlBQVksQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUM7WUFDbkMsR0FBRyxLQUFLLENBQUMsTUFBTTtZQUNmLEdBQUcsS0FBSyxDQUFDLE9BQU87WUFDaEIsR0FBRyxLQUFLLENBQUMsT0FBTztTQUNqQixDQUFDLENBQUM7UUFDSCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRXhELE9BQU87WUFDTCxHQUFHLEtBQUs7WUFDUixNQUFNO1lBQ04sT0FBTztZQUNQLE9BQU8sRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDLE9BQU8sRUFBRSxHQUFHLE9BQU8sRUFBRTtTQUMrQixDQUFDO0lBQzdFLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBleGNsdWRlS2V5cyB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBTVEFURV9TSUdOQUwsIFN0YXRlU2lnbmFsIH0gZnJvbSAnLi9zdGF0ZS1zaWduYWwnO1xuaW1wb3J0IHtcbiAgRW1wdHlGZWF0dXJlUmVzdWx0LFxuICBJbm5lclNpZ25hbFN0b3JlLFxuICBNZXRob2RzRGljdGlvbmFyeSxcbiAgU2lnbmFsc0RpY3Rpb25hcnksXG4gIFNpZ25hbFN0b3JlRmVhdHVyZSxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxuICBTaWduYWxTdG9yZVNsaWNlcyxcbn0gZnJvbSAnLi9zaWduYWwtc3RvcmUtbW9kZWxzJztcbmltcG9ydCB7IFByZXR0aWZ5IH0gZnJvbSAnLi90cy1oZWxwZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHdpdGhNZXRob2RzPFxuICBJbnB1dCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgTWV0aG9kcyBleHRlbmRzIE1ldGhvZHNEaWN0aW9uYXJ5XG4+KFxuICBtZXRob2RzRmFjdG9yeTogKFxuICAgIHN0b3JlOiBQcmV0dGlmeTxcbiAgICAgIFNpZ25hbFN0b3JlU2xpY2VzPElucHV0WydzdGF0ZSddPiAmXG4gICAgICAgIElucHV0WydzaWduYWxzJ10gJlxuICAgICAgICBJbnB1dFsnbWV0aG9kcyddICZcbiAgICAgICAgU3RhdGVTaWduYWw8UHJldHRpZnk8SW5wdXRbJ3N0YXRlJ10+PlxuICAgID5cbiAgKSA9PiBNZXRob2RzXG4pOiBTaWduYWxTdG9yZUZlYXR1cmU8SW5wdXQsIEVtcHR5RmVhdHVyZVJlc3VsdCAmIHsgbWV0aG9kczogTWV0aG9kcyB9PiB7XG4gIHJldHVybiAoc3RvcmUpID0+IHtcbiAgICBjb25zdCBtZXRob2RzID0gbWV0aG9kc0ZhY3Rvcnkoe1xuICAgICAgW1NUQVRFX1NJR05BTF06IHN0b3JlW1NUQVRFX1NJR05BTF0sXG4gICAgICAuLi5zdG9yZS5zbGljZXMsXG4gICAgICAuLi5zdG9yZS5zaWduYWxzLFxuICAgICAgLi4uc3RvcmUubWV0aG9kcyxcbiAgICB9KTtcbiAgICBjb25zdCBtZXRob2RzS2V5cyA9IE9iamVjdC5rZXlzKG1ldGhvZHMpO1xuICAgIGNvbnN0IHNsaWNlcyA9IGV4Y2x1ZGVLZXlzKHN0b3JlLnNsaWNlcywgbWV0aG9kc0tleXMpO1xuICAgIGNvbnN0IHNpZ25hbHMgPSBleGNsdWRlS2V5cyhzdG9yZS5zaWduYWxzLCBtZXRob2RzS2V5cyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3RvcmUsXG4gICAgICBzbGljZXMsXG4gICAgICBzaWduYWxzLFxuICAgICAgbWV0aG9kczogeyAuLi5zdG9yZS5tZXRob2RzLCAuLi5tZXRob2RzIH0sXG4gICAgfSBhcyBJbm5lclNpZ25hbFN0b3JlPFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBTaWduYWxzRGljdGlvbmFyeSwgTWV0aG9kcz47XG4gIH07XG59XG4iXX0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { computed } from '@angular/core';
|
|
2
2
|
import { toDeepSignal } from './deep-signal';
|
|
3
3
|
import { excludeKeys } from './helpers';
|
|
4
|
-
import { STATE_SIGNAL } from './signal
|
|
4
|
+
import { STATE_SIGNAL } from './state-signal';
|
|
5
5
|
export function withState(stateOrFactory) {
|
|
6
6
|
return (store) => {
|
|
7
7
|
const state = typeof stateOrFactory === 'function' ? stateOrFactory() : stateOrFactory;
|
|
@@ -24,4 +24,4 @@ export function withState(stateOrFactory) {
|
|
|
24
24
|
};
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvd2l0aC1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFxQjlDLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLGNBQXFDO0lBS3JDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNmLE1BQU0sS0FBSyxHQUNULE9BQU8sY0FBYyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztRQUMzRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsR0FBRyxZQUFZO1lBQ2YsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDLENBQUM7UUFFSixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzNDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FDcEIsR0FBRyxFQUFFLENBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUE4QixDQUFDLEdBQUcsQ0FBQyxDQUM5RCxDQUFDO1lBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDaEQsQ0FBQyxFQUFFLEVBQXVCLENBQUMsQ0FBQztRQUM1QixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN0RCxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUV0RCxPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsTUFBTSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsTUFBTSxFQUFFO1lBQ3RDLE9BQU87WUFDUCxPQUFPO1NBQ21CLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b0RlZXBTaWduYWwgfSBmcm9tICcuL2RlZXAtc2lnbmFsJztcbmltcG9ydCB7IGV4Y2x1ZGVLZXlzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IFNUQVRFX1NJR05BTCB9IGZyb20gJy4vc3RhdGUtc2lnbmFsJztcbmltcG9ydCB7XG4gIEVtcHR5RmVhdHVyZVJlc3VsdCxcbiAgSW5uZXJTaWduYWxTdG9yZSxcbiAgU2lnbmFsc0RpY3Rpb25hcnksXG4gIFNpZ25hbFN0b3JlRmVhdHVyZSxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxufSBmcm9tICcuL3NpZ25hbC1zdG9yZS1tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgc3RhdGVGYWN0b3J5OiAoKSA9PiBTdGF0ZVxuKTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICBFbXB0eUZlYXR1cmVSZXN1bHQsXG4gIEVtcHR5RmVhdHVyZVJlc3VsdCAmIHsgc3RhdGU6IFN0YXRlIH1cbj47XG5leHBvcnQgZnVuY3Rpb24gd2l0aFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgc3RhdGU6IFN0YXRlXG4pOiBTaWduYWxTdG9yZUZlYXR1cmU8XG4gIEVtcHR5RmVhdHVyZVJlc3VsdCxcbiAgRW1wdHlGZWF0dXJlUmVzdWx0ICYgeyBzdGF0ZTogU3RhdGUgfVxuPjtcbmV4cG9ydCBmdW5jdGlvbiB3aXRoU3RhdGU8U3RhdGUgZXh0ZW5kcyBvYmplY3Q+KFxuICBzdGF0ZU9yRmFjdG9yeTogU3RhdGUgfCAoKCkgPT4gU3RhdGUpXG4pOiBTaWduYWxTdG9yZUZlYXR1cmU8XG4gIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRW1wdHlGZWF0dXJlUmVzdWx0ICYgeyBzdGF0ZTogU3RhdGUgfVxuPiB7XG4gIHJldHVybiAoc3RvcmUpID0+IHtcbiAgICBjb25zdCBzdGF0ZSA9XG4gICAgICB0eXBlb2Ygc3RhdGVPckZhY3RvcnkgPT09ICdmdW5jdGlvbicgPyBzdGF0ZU9yRmFjdG9yeSgpIDogc3RhdGVPckZhY3Rvcnk7XG4gICAgY29uc3Qgc3RhdGVLZXlzID0gT2JqZWN0LmtleXMoc3RhdGUpO1xuXG4gICAgc3RvcmVbU1RBVEVfU0lHTkFMXS51cGRhdGUoKGN1cnJlbnRTdGF0ZSkgPT4gKHtcbiAgICAgIC4uLmN1cnJlbnRTdGF0ZSxcbiAgICAgIC4uLnN0YXRlLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IHNsaWNlcyA9IHN0YXRlS2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICBjb25zdCBzbGljZSA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiAoc3RvcmVbU1RBVEVfU0lHTkFMXSgpIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVtrZXldXG4gICAgICApO1xuICAgICAgcmV0dXJuIHsgLi4uYWNjLCBba2V5XTogdG9EZWVwU2lnbmFsKHNsaWNlKSB9O1xuICAgIH0sIHt9IGFzIFNpZ25hbHNEaWN0aW9uYXJ5KTtcbiAgICBjb25zdCBzaWduYWxzID0gZXhjbHVkZUtleXMoc3RvcmUuc2lnbmFscywgc3RhdGVLZXlzKTtcbiAgICBjb25zdCBtZXRob2RzID0gZXhjbHVkZUtleXMoc3RvcmUubWV0aG9kcywgc3RhdGVLZXlzKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5zdG9yZSxcbiAgICAgIHNsaWNlczogeyAuLi5zdG9yZS5zbGljZXMsIC4uLnNsaWNlcyB9LFxuICAgICAgc2lnbmFscyxcbiAgICAgIG1ldGhvZHMsXG4gICAgfSBhcyBJbm5lclNpZ25hbFN0b3JlPFN0YXRlPjtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { untracked, isSignal, computed, signal, Injector, inject, runInInjectionContext, DestroyRef, Injectable } from '@angular/core';
|
|
3
3
|
|
|
4
|
+
const STATE_SIGNAL = Symbol('STATE_SIGNAL');
|
|
5
|
+
|
|
6
|
+
function getState(stateSignal) {
|
|
7
|
+
return stateSignal[STATE_SIGNAL]();
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
function patchState(stateSignal, ...updaters) {
|
|
11
|
+
stateSignal[STATE_SIGNAL].update((currentState) => updaters.reduce((nextState, updater) => ({
|
|
12
|
+
...nextState,
|
|
13
|
+
...(typeof updater === 'function' ? updater(nextState) : updater),
|
|
14
|
+
}), currentState));
|
|
15
|
+
}
|
|
16
|
+
|
|
4
17
|
function toDeepSignal(signal) {
|
|
5
18
|
const value = untracked(() => signal());
|
|
6
19
|
if (!isRecord(value)) {
|
|
@@ -14,6 +27,7 @@ function toDeepSignal(signal) {
|
|
|
14
27
|
if (!isSignal(target[prop])) {
|
|
15
28
|
Object.defineProperty(target, prop, {
|
|
16
29
|
value: computed(() => target()[prop]),
|
|
30
|
+
configurable: true,
|
|
17
31
|
});
|
|
18
32
|
}
|
|
19
33
|
return toDeepSignal(target[prop]);
|
|
@@ -24,7 +38,6 @@ function isRecord(value) {
|
|
|
24
38
|
return value?.constructor === Object;
|
|
25
39
|
}
|
|
26
40
|
|
|
27
|
-
const STATE_SIGNAL = Symbol('STATE_SIGNAL');
|
|
28
41
|
function signalState(initialState) {
|
|
29
42
|
const stateSignal = signal(initialState);
|
|
30
43
|
const deepSignal = toDeepSignal(stateSignal.asReadonly());
|
|
@@ -34,17 +47,6 @@ function signalState(initialState) {
|
|
|
34
47
|
return deepSignal;
|
|
35
48
|
}
|
|
36
49
|
|
|
37
|
-
function getState(signalState) {
|
|
38
|
-
return signalState[STATE_SIGNAL]();
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
function patchState(signalState, ...updaters) {
|
|
42
|
-
signalState[STATE_SIGNAL].update((currentState) => updaters.reduce((nextState, updater) => ({
|
|
43
|
-
...nextState,
|
|
44
|
-
...(typeof updater === 'function' ? updater(nextState) : updater),
|
|
45
|
-
}), currentState));
|
|
46
|
-
}
|
|
47
|
-
|
|
48
50
|
function signalStore(...args) {
|
|
49
51
|
const signalStoreArgs = [...args];
|
|
50
52
|
const config = 'providedIn' in signalStoreArgs[0]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngrx-signals.mjs","sources":["../../../../modules/signals/src/deep-signal.ts","../../../../modules/signals/src/signal-state.ts","../../../../modules/signals/src/get-state.ts","../../../../modules/signals/src/patch-state.ts","../../../../modules/signals/src/signal-store.ts","../../../../modules/signals/src/signal-store-feature.ts","../../../../modules/signals/src/helpers.ts","../../../../modules/signals/src/with-computed.ts","../../../../modules/signals/src/with-hooks.ts","../../../../modules/signals/src/with-methods.ts","../../../../modules/signals/src/with-state.ts","../../../../modules/signals/ngrx-signals.ts"],"sourcesContent":["import {\n computed,\n isSignal,\n Signal as NgSignal,\n untracked,\n} from '@angular/core';\nimport { IsKnownRecord } from './ts-helpers';\n\n// An extended Signal type that enables the correct typing\n// of nested signals with the `name` or `length` key.\ninterface Signal<T> extends NgSignal<T> {\n name: unknown;\n length: unknown;\n}\n\nexport type DeepSignal<T> = Signal<T> &\n (IsKnownRecord<T> extends true\n ? Readonly<{\n [K in keyof T]: IsKnownRecord<T[K]> extends true\n ? DeepSignal<T[K]>\n : Signal<T[K]>;\n }>\n : unknown);\n\nexport function toDeepSignal<T>(signal: Signal<T>): DeepSignal<T> {\n const value = untracked(() => signal());\n if (!isRecord(value)) {\n return signal as DeepSignal<T>;\n }\n\n return new Proxy(signal, {\n get(target: any, prop) {\n if (!(prop in value)) {\n return target[prop];\n }\n\n if (!isSignal(target[prop])) {\n Object.defineProperty(target, prop, {\n value: computed(() => target()[prop]),\n });\n }\n\n return toDeepSignal(target[prop]);\n },\n });\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value?.constructor === Object;\n}\n","import { signal, WritableSignal } from '@angular/core';\nimport { DeepSignal, toDeepSignal } from './deep-signal';\n\nexport const STATE_SIGNAL = Symbol('STATE_SIGNAL');\n\nexport type SignalStateMeta<State extends object> = {\n [STATE_SIGNAL]: WritableSignal<State>;\n};\n\ntype SignalState<State extends object> = DeepSignal<State> &\n SignalStateMeta<State>;\n\nexport function signalState<State extends object>(\n initialState: State\n): SignalState<State> {\n const stateSignal = signal(initialState as State);\n const deepSignal = toDeepSignal(stateSignal.asReadonly());\n Object.defineProperty(deepSignal, STATE_SIGNAL, {\n value: stateSignal,\n });\n\n return deepSignal as SignalState<State>;\n}\n","import { STATE_SIGNAL, SignalStateMeta } from './signal-state';\n\nexport function getState<State extends object>(\n signalState: SignalStateMeta<State>\n): State {\n return signalState[STATE_SIGNAL]();\n}\n","import { STATE_SIGNAL, SignalStateMeta } from './signal-state';\n\nexport type PartialStateUpdater<State extends object> = (\n state: State\n) => Partial<State>;\n\nexport function patchState<State extends object>(\n signalState: SignalStateMeta<State>,\n ...updaters: Array<Partial<State & {}> | PartialStateUpdater<State & {}>>\n): void {\n signalState[STATE_SIGNAL].update((currentState) =>\n updaters.reduce(\n (nextState: State, updater) => ({\n ...nextState,\n ...(typeof updater === 'function' ? updater(nextState) : updater),\n }),\n currentState\n )\n );\n}\n","import {\n DestroyRef,\n inject,\n Injectable,\n Injector,\n runInInjectionContext,\n signal,\n Type,\n} from '@angular/core';\nimport { STATE_SIGNAL } from './signal-state';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n MergeFeatureResults,\n SignalStore,\n SignalStoreConfig,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\n\nexport function signalStore<F1 extends SignalStoreFeatureResult>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): Type<SignalStore<F1>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): Type<SignalStore<MergeFeatureResults<[F1, F2]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n F9 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>,\n f9: SignalStoreFeature<\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>,\n F9\n >\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8, F9]>>>;\n\nexport function signalStore<F1 extends SignalStoreFeatureResult>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): Type<SignalStore<F1>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): Type<SignalStore<MergeFeatureResults<[F1, F2]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n F9 extends SignalStoreFeatureResult\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>,\n f9: SignalStoreFeature<\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>,\n F9\n >\n): Type<SignalStore<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8, F9]>>>;\n\nexport function signalStore(\n ...args: [SignalStoreConfig, ...SignalStoreFeature[]] | SignalStoreFeature[]\n): Type<SignalStore<any>> {\n const signalStoreArgs = [...args];\n\n const config: Partial<SignalStoreConfig> =\n 'providedIn' in signalStoreArgs[0]\n ? (signalStoreArgs.shift() as SignalStoreConfig)\n : {};\n const features = signalStoreArgs as SignalStoreFeature[];\n\n @Injectable({ providedIn: config.providedIn || null })\n class SignalStore {\n constructor() {\n const innerStore = features.reduce(\n (store, feature) => feature(store),\n getInitialInnerStore()\n );\n const { slices, signals, methods, hooks } = innerStore;\n const props = { ...slices, ...signals, ...methods };\n\n (this as any)[STATE_SIGNAL] = innerStore[STATE_SIGNAL];\n\n for (const key in props) {\n (this as any)[key] = props[key];\n }\n\n if (hooks.onInit) {\n hooks.onInit();\n }\n\n if (hooks.onDestroy) {\n const injector = inject(Injector);\n\n inject(DestroyRef).onDestroy(() => {\n runInInjectionContext(injector, hooks.onDestroy!);\n });\n }\n }\n }\n\n return SignalStore;\n}\n\nexport function getInitialInnerStore(): InnerSignalStore {\n return {\n [STATE_SIGNAL]: signal({}),\n slices: {},\n signals: {},\n methods: {},\n hooks: {},\n };\n}\n","import {\n EmptyFeatureResult,\n MergeFeatureResults,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function signalStoreFeature<F1 extends SignalStoreFeatureResult>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): SignalStoreFeature<EmptyFeatureResult, F1>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): SignalStoreFeature<EmptyFeatureResult, MergeFeatureResults<[F1, F2]>>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): SignalStoreFeature<EmptyFeatureResult, MergeFeatureResults<[F1, F2, F3]>>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4]>\n>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>\n>;\n\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>\n): SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n Input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >,\n f5: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4]>,\n F5\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >,\n f5: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4]>,\n F5\n >,\n f6: SignalStoreFeature<\n MergeFeatureResults<\n [Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4, F5]\n >,\n F6\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>\n>;\n\nexport function signalStoreFeature(\n featureOrInput: SignalStoreFeature | Partial<SignalStoreFeatureResult>,\n ...restFeatures: SignalStoreFeature[]\n): SignalStoreFeature {\n const features =\n typeof featureOrInput === 'function'\n ? [featureOrInput, ...restFeatures]\n : restFeatures;\n\n return (inputStore) =>\n features.reduce((store, feature) => feature(store), inputStore);\n}\n\nexport function type<T>(): T {\n return undefined as T;\n}\n","export function excludeKeys<\n Obj extends Record<string, unknown>,\n Keys extends string[]\n>(obj: Obj, keys: Keys): Omit<Obj, Keys[number]> {\n return Object.keys(obj).reduce(\n (acc, key) => (keys.includes(key) ? acc : { ...acc, [key]: obj[key] }),\n {}\n ) as Omit<Obj, Keys[number]>;\n}\n","import { excludeKeys } from './helpers';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n SignalStoreSlices,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function withComputed<\n Input extends SignalStoreFeatureResult,\n Signals extends SignalsDictionary\n>(\n signalsFactory: (\n store: Prettify<SignalStoreSlices<Input['state']> & Input['signals']>\n ) => Signals\n): SignalStoreFeature<Input, EmptyFeatureResult & { signals: Signals }> {\n return (store) => {\n const signals = signalsFactory({ ...store.slices, ...store.signals });\n const signalsKeys = Object.keys(signals);\n const slices = excludeKeys(store.slices, signalsKeys);\n const methods = excludeKeys(store.methods, signalsKeys);\n\n return {\n ...store,\n slices,\n signals: { ...store.signals, ...signals },\n methods,\n } as InnerSignalStore<Record<string, unknown>, Signals>;\n };\n}\n","import { STATE_SIGNAL, SignalStateMeta } from './signal-state';\nimport {\n EmptyFeatureResult,\n SignalStoreFeature,\n SignalStoreSlices,\n SignalStoreFeatureResult,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\ntype HooksFactory<Input extends SignalStoreFeatureResult> = (\n store: Prettify<\n SignalStoreSlices<Input['state']> &\n Input['signals'] &\n Input['methods'] &\n SignalStateMeta<Prettify<Input['state']>>\n >\n) => void;\n\nexport function withHooks<Input extends SignalStoreFeatureResult>(hooks: {\n onInit?: HooksFactory<Input>;\n onDestroy?: HooksFactory<Input>;\n}): SignalStoreFeature<Input, EmptyFeatureResult> {\n return (store) => {\n const createHook = (name: keyof typeof hooks) => {\n const hook = hooks[name];\n const currentHook = store.hooks[name];\n\n return hook\n ? () => {\n if (currentHook) {\n currentHook();\n }\n\n hook({\n [STATE_SIGNAL]: store[STATE_SIGNAL],\n ...store.slices,\n ...store.signals,\n ...store.methods,\n });\n }\n : currentHook;\n };\n\n return {\n ...store,\n hooks: {\n onInit: createHook('onInit'),\n onDestroy: createHook('onDestroy'),\n },\n };\n };\n}\n","import { excludeKeys } from './helpers';\nimport { STATE_SIGNAL, SignalStateMeta } from './signal-state';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n MethodsDictionary,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n SignalStoreSlices,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function withMethods<\n Input extends SignalStoreFeatureResult,\n Methods extends MethodsDictionary\n>(\n methodsFactory: (\n store: Prettify<\n SignalStoreSlices<Input['state']> &\n Input['signals'] &\n Input['methods'] &\n SignalStateMeta<Prettify<Input['state']>>\n >\n ) => Methods\n): SignalStoreFeature<Input, EmptyFeatureResult & { methods: Methods }> {\n return (store) => {\n const methods = methodsFactory({\n [STATE_SIGNAL]: store[STATE_SIGNAL],\n ...store.slices,\n ...store.signals,\n ...store.methods,\n });\n const methodsKeys = Object.keys(methods);\n const slices = excludeKeys(store.slices, methodsKeys);\n const signals = excludeKeys(store.signals, methodsKeys);\n\n return {\n ...store,\n slices,\n signals,\n methods: { ...store.methods, ...methods },\n } as InnerSignalStore<Record<string, unknown>, SignalsDictionary, Methods>;\n };\n}\n","import { computed } from '@angular/core';\nimport { toDeepSignal } from './deep-signal';\nimport { excludeKeys } from './helpers';\nimport { STATE_SIGNAL } from './signal-state';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\n\nexport function withState<State extends object>(\n stateFactory: () => State\n): SignalStoreFeature<\n EmptyFeatureResult,\n EmptyFeatureResult & { state: State }\n>;\nexport function withState<State extends object>(\n state: State\n): SignalStoreFeature<\n EmptyFeatureResult,\n EmptyFeatureResult & { state: State }\n>;\nexport function withState<State extends object>(\n stateOrFactory: State | (() => State)\n): SignalStoreFeature<\n SignalStoreFeatureResult,\n EmptyFeatureResult & { state: State }\n> {\n return (store) => {\n const state =\n typeof stateOrFactory === 'function' ? stateOrFactory() : stateOrFactory;\n const stateKeys = Object.keys(state);\n\n store[STATE_SIGNAL].update((currentState) => ({\n ...currentState,\n ...state,\n }));\n\n const slices = stateKeys.reduce((acc, key) => {\n const slice = computed(\n () => (store[STATE_SIGNAL]() as Record<string, unknown>)[key]\n );\n return { ...acc, [key]: toDeepSignal(slice) };\n }, {} as SignalsDictionary);\n const signals = excludeKeys(store.signals, stateKeys);\n const methods = excludeKeys(store.methods, stateKeys);\n\n return {\n ...store,\n slices: { ...store.slices, ...slices },\n signals,\n methods,\n } as InnerSignalStore<State>;\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngrx-signals.mjs","sources":["../../../../modules/signals/src/state-signal.ts","../../../../modules/signals/src/get-state.ts","../../../../modules/signals/src/patch-state.ts","../../../../modules/signals/src/deep-signal.ts","../../../../modules/signals/src/signal-state.ts","../../../../modules/signals/src/signal-store.ts","../../../../modules/signals/src/signal-store-feature.ts","../../../../modules/signals/src/helpers.ts","../../../../modules/signals/src/with-computed.ts","../../../../modules/signals/src/with-hooks.ts","../../../../modules/signals/src/with-methods.ts","../../../../modules/signals/src/with-state.ts","../../../../modules/signals/ngrx-signals.ts"],"sourcesContent":["import { WritableSignal } from '@angular/core';\n\nexport const STATE_SIGNAL = Symbol('STATE_SIGNAL');\n\nexport type StateSignal<State extends object> = {\n [STATE_SIGNAL]: WritableSignal<State>;\n};\n","import { STATE_SIGNAL, StateSignal } from './state-signal';\n\nexport function getState<State extends object>(\n stateSignal: StateSignal<State>\n): State {\n return stateSignal[STATE_SIGNAL]();\n}\n","import { STATE_SIGNAL, StateSignal } from './state-signal';\n\nexport type PartialStateUpdater<State extends object> = (\n state: State\n) => Partial<State>;\n\nexport function patchState<State extends object>(\n stateSignal: StateSignal<State>,\n ...updaters: Array<Partial<State & {}> | PartialStateUpdater<State & {}>>\n): void {\n stateSignal[STATE_SIGNAL].update((currentState) =>\n updaters.reduce(\n (nextState: State, updater) => ({\n ...nextState,\n ...(typeof updater === 'function' ? updater(nextState) : updater),\n }),\n currentState\n )\n );\n}\n","import {\n computed,\n isSignal,\n Signal as NgSignal,\n untracked,\n} from '@angular/core';\nimport { IsKnownRecord } from './ts-helpers';\n\n// An extended Signal type that enables the correct typing\n// of nested signals with the `name` or `length` key.\nexport interface Signal<T> extends NgSignal<T> {\n name: unknown;\n length: unknown;\n}\n\nexport type DeepSignal<T> = Signal<T> &\n (IsKnownRecord<T> extends true\n ? Readonly<{\n [K in keyof T]: IsKnownRecord<T[K]> extends true\n ? DeepSignal<T[K]>\n : Signal<T[K]>;\n }>\n : unknown);\n\nexport function toDeepSignal<T>(signal: Signal<T>): DeepSignal<T> {\n const value = untracked(() => signal());\n if (!isRecord(value)) {\n return signal as DeepSignal<T>;\n }\n\n return new Proxy(signal, {\n get(target: any, prop) {\n if (!(prop in value)) {\n return target[prop];\n }\n\n if (!isSignal(target[prop])) {\n Object.defineProperty(target, prop, {\n value: computed(() => target()[prop]),\n configurable: true,\n });\n }\n\n return toDeepSignal(target[prop]);\n },\n });\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return value?.constructor === Object;\n}\n","import { signal } from '@angular/core';\nimport { STATE_SIGNAL, StateSignal } from './state-signal';\nimport { DeepSignal, toDeepSignal } from './deep-signal';\n\ntype SignalState<State extends object> = DeepSignal<State> & StateSignal<State>;\n\nexport function signalState<State extends object>(\n initialState: State\n): SignalState<State> {\n const stateSignal = signal(initialState as State);\n const deepSignal = toDeepSignal(stateSignal.asReadonly());\n Object.defineProperty(deepSignal, STATE_SIGNAL, {\n value: stateSignal,\n });\n\n return deepSignal as SignalState<State>;\n}\n","import {\n DestroyRef,\n inject,\n Injectable,\n Injector,\n runInInjectionContext,\n signal,\n Type,\n} from '@angular/core';\nimport { STATE_SIGNAL, StateSignal } from './state-signal';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n MergeFeatureResults,\n SignalStoreProps,\n SignalStoreConfig,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function signalStore<F1 extends SignalStoreFeatureResult>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): Type<SignalStoreProps<F1> & StateSignal<Prettify<F1['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2]>\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3]>\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4]>\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6]\n >\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7]\n >\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7, F8]\n >\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n F9 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7, F8, F9]\n >\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>,\n f9: SignalStoreFeature<\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>,\n F9\n >\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\n\nexport function signalStore<F1 extends SignalStoreFeatureResult>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): Type<SignalStoreProps<F1> & StateSignal<Prettify<F1['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2]>\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3]>\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4]>\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6]\n >\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7]\n >\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7, F8]\n >\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\nexport function signalStore<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult,\n F7 extends SignalStoreFeatureResult,\n F8 extends SignalStoreFeatureResult,\n F9 extends SignalStoreFeatureResult,\n R extends SignalStoreFeatureResult = MergeFeatureResults<\n [F1, F2, F3, F4, F5, F6, F7, F8, F9]\n >\n>(\n config: SignalStoreConfig,\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>,\n f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>,\n f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>,\n f9: SignalStoreFeature<\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>,\n F9\n >\n): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;\n\nexport function signalStore(\n ...args: [SignalStoreConfig, ...SignalStoreFeature[]] | SignalStoreFeature[]\n): Type<SignalStoreProps<any>> {\n const signalStoreArgs = [...args];\n\n const config: Partial<SignalStoreConfig> =\n 'providedIn' in signalStoreArgs[0]\n ? (signalStoreArgs.shift() as SignalStoreConfig)\n : {};\n const features = signalStoreArgs as SignalStoreFeature[];\n\n @Injectable({ providedIn: config.providedIn || null })\n class SignalStore {\n constructor() {\n const innerStore = features.reduce(\n (store, feature) => feature(store),\n getInitialInnerStore()\n );\n const { slices, signals, methods, hooks } = innerStore;\n const props = { ...slices, ...signals, ...methods };\n\n (this as any)[STATE_SIGNAL] = innerStore[STATE_SIGNAL];\n\n for (const key in props) {\n (this as any)[key] = props[key];\n }\n\n if (hooks.onInit) {\n hooks.onInit();\n }\n\n if (hooks.onDestroy) {\n const injector = inject(Injector);\n\n inject(DestroyRef).onDestroy(() => {\n runInInjectionContext(injector, hooks.onDestroy!);\n });\n }\n }\n }\n\n return SignalStore;\n}\n\nexport function getInitialInnerStore(): InnerSignalStore {\n return {\n [STATE_SIGNAL]: signal({}),\n slices: {},\n signals: {},\n methods: {},\n hooks: {},\n };\n}\n","import {\n EmptyFeatureResult,\n MergeFeatureResults,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function signalStoreFeature<F1 extends SignalStoreFeatureResult>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>\n): SignalStoreFeature<EmptyFeatureResult, F1>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>\n): SignalStoreFeature<EmptyFeatureResult, MergeFeatureResults<[F1, F2]>>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>\n): SignalStoreFeature<EmptyFeatureResult, MergeFeatureResults<[F1, F2, F3]>>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4]>\n>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>;\nexport function signalStoreFeature<\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n f1: SignalStoreFeature<EmptyFeatureResult, F1>,\n f2: SignalStoreFeature<{} & F1, F2>,\n f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>,\n f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>,\n f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>,\n f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>\n): SignalStoreFeature<\n EmptyFeatureResult,\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>\n>;\n\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>\n): SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult\n>(\n Input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >,\n f5: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4]>,\n F5\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4, F5]>\n>;\nexport function signalStoreFeature<\n Input extends Partial<SignalStoreFeatureResult>,\n F1 extends SignalStoreFeatureResult,\n F2 extends SignalStoreFeatureResult,\n F3 extends SignalStoreFeatureResult,\n F4 extends SignalStoreFeatureResult,\n F5 extends SignalStoreFeatureResult,\n F6 extends SignalStoreFeatureResult\n>(\n input: Input,\n f1: SignalStoreFeature<Prettify<EmptyFeatureResult & Input>, F1>,\n f2: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1]>,\n F2\n >,\n f3: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2]>,\n F3\n >,\n f4: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3]>,\n F4\n >,\n f5: SignalStoreFeature<\n MergeFeatureResults<[Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4]>,\n F5\n >,\n f6: SignalStoreFeature<\n MergeFeatureResults<\n [Prettify<EmptyFeatureResult & Input>, F1, F2, F3, F4, F5]\n >,\n F6\n >\n): SignalStoreFeature<\n Prettify<EmptyFeatureResult & Input>,\n MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>\n>;\n\nexport function signalStoreFeature(\n featureOrInput: SignalStoreFeature | Partial<SignalStoreFeatureResult>,\n ...restFeatures: SignalStoreFeature[]\n): SignalStoreFeature {\n const features =\n typeof featureOrInput === 'function'\n ? [featureOrInput, ...restFeatures]\n : restFeatures;\n\n return (inputStore) =>\n features.reduce((store, feature) => feature(store), inputStore);\n}\n\nexport function type<T>(): T {\n return undefined as T;\n}\n","export function excludeKeys<\n Obj extends Record<string, unknown>,\n Keys extends string[]\n>(obj: Obj, keys: Keys): Omit<Obj, Keys[number]> {\n return Object.keys(obj).reduce(\n (acc, key) => (keys.includes(key) ? acc : { ...acc, [key]: obj[key] }),\n {}\n ) as Omit<Obj, Keys[number]>;\n}\n","import { excludeKeys } from './helpers';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n SignalStoreSlices,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function withComputed<\n Input extends SignalStoreFeatureResult,\n Signals extends SignalsDictionary\n>(\n signalsFactory: (\n store: Prettify<SignalStoreSlices<Input['state']> & Input['signals']>\n ) => Signals\n): SignalStoreFeature<Input, EmptyFeatureResult & { signals: Signals }> {\n return (store) => {\n const signals = signalsFactory({ ...store.slices, ...store.signals });\n const signalsKeys = Object.keys(signals);\n const slices = excludeKeys(store.slices, signalsKeys);\n const methods = excludeKeys(store.methods, signalsKeys);\n\n return {\n ...store,\n slices,\n signals: { ...store.signals, ...signals },\n methods,\n } as InnerSignalStore<Record<string, unknown>, Signals>;\n };\n}\n","import { STATE_SIGNAL, StateSignal } from './state-signal';\nimport {\n EmptyFeatureResult,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n SignalStoreSlices,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\ntype HooksFactory<Input extends SignalStoreFeatureResult> = (\n store: Prettify<\n SignalStoreSlices<Input['state']> &\n Input['signals'] &\n Input['methods'] &\n StateSignal<Prettify<Input['state']>>\n >\n) => void;\n\nexport function withHooks<Input extends SignalStoreFeatureResult>(hooks: {\n onInit?: HooksFactory<Input>;\n onDestroy?: HooksFactory<Input>;\n}): SignalStoreFeature<Input, EmptyFeatureResult> {\n return (store) => {\n const createHook = (name: keyof typeof hooks) => {\n const hook = hooks[name];\n const currentHook = store.hooks[name];\n\n return hook\n ? () => {\n if (currentHook) {\n currentHook();\n }\n\n hook({\n [STATE_SIGNAL]: store[STATE_SIGNAL],\n ...store.slices,\n ...store.signals,\n ...store.methods,\n });\n }\n : currentHook;\n };\n\n return {\n ...store,\n hooks: {\n onInit: createHook('onInit'),\n onDestroy: createHook('onDestroy'),\n },\n };\n };\n}\n","import { excludeKeys } from './helpers';\nimport { STATE_SIGNAL, StateSignal } from './state-signal';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n MethodsDictionary,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n SignalStoreSlices,\n} from './signal-store-models';\nimport { Prettify } from './ts-helpers';\n\nexport function withMethods<\n Input extends SignalStoreFeatureResult,\n Methods extends MethodsDictionary\n>(\n methodsFactory: (\n store: Prettify<\n SignalStoreSlices<Input['state']> &\n Input['signals'] &\n Input['methods'] &\n StateSignal<Prettify<Input['state']>>\n >\n ) => Methods\n): SignalStoreFeature<Input, EmptyFeatureResult & { methods: Methods }> {\n return (store) => {\n const methods = methodsFactory({\n [STATE_SIGNAL]: store[STATE_SIGNAL],\n ...store.slices,\n ...store.signals,\n ...store.methods,\n });\n const methodsKeys = Object.keys(methods);\n const slices = excludeKeys(store.slices, methodsKeys);\n const signals = excludeKeys(store.signals, methodsKeys);\n\n return {\n ...store,\n slices,\n signals,\n methods: { ...store.methods, ...methods },\n } as InnerSignalStore<Record<string, unknown>, SignalsDictionary, Methods>;\n };\n}\n","import { computed } from '@angular/core';\nimport { toDeepSignal } from './deep-signal';\nimport { excludeKeys } from './helpers';\nimport { STATE_SIGNAL } from './state-signal';\nimport {\n EmptyFeatureResult,\n InnerSignalStore,\n SignalsDictionary,\n SignalStoreFeature,\n SignalStoreFeatureResult,\n} from './signal-store-models';\n\nexport function withState<State extends object>(\n stateFactory: () => State\n): SignalStoreFeature<\n EmptyFeatureResult,\n EmptyFeatureResult & { state: State }\n>;\nexport function withState<State extends object>(\n state: State\n): SignalStoreFeature<\n EmptyFeatureResult,\n EmptyFeatureResult & { state: State }\n>;\nexport function withState<State extends object>(\n stateOrFactory: State | (() => State)\n): SignalStoreFeature<\n SignalStoreFeatureResult,\n EmptyFeatureResult & { state: State }\n> {\n return (store) => {\n const state =\n typeof stateOrFactory === 'function' ? stateOrFactory() : stateOrFactory;\n const stateKeys = Object.keys(state);\n\n store[STATE_SIGNAL].update((currentState) => ({\n ...currentState,\n ...state,\n }));\n\n const slices = stateKeys.reduce((acc, key) => {\n const slice = computed(\n () => (store[STATE_SIGNAL]() as Record<string, unknown>)[key]\n );\n return { ...acc, [key]: toDeepSignal(slice) };\n }, {} as SignalsDictionary);\n const signals = excludeKeys(store.signals, stateKeys);\n const methods = excludeKeys(store.methods, stateKeys);\n\n return {\n ...store,\n slices: { ...store.slices, ...slices },\n signals,\n methods,\n } as InnerSignalStore<State>;\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"libs-version.js","sourceRoot":"","sources":["../../../../../modules/signals/schematics-core/utility/libs-version.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,SAAS,CAAC","sourcesContent":["export const platformVersion = '^17.0.
|
|
1
|
+
{"version":3,"file":"libs-version.js","sourceRoot":"","sources":["../../../../../modules/signals/schematics-core/utility/libs-version.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,SAAS,CAAC","sourcesContent":["export const platformVersion = '^17.0.1';\n"]}
|
package/src/deep-signal.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Signal as NgSignal } from '@angular/core';
|
|
2
2
|
import { IsKnownRecord } from './ts-helpers';
|
|
3
|
-
interface Signal<T> extends NgSignal<T> {
|
|
3
|
+
export interface Signal<T> extends NgSignal<T> {
|
|
4
4
|
name: unknown;
|
|
5
5
|
length: unknown;
|
|
6
6
|
}
|
|
@@ -8,4 +8,3 @@ export type DeepSignal<T> = Signal<T> & (IsKnownRecord<T> extends true ? Readonl
|
|
|
8
8
|
[K in keyof T]: IsKnownRecord<T[K]> extends true ? DeepSignal<T[K]> : Signal<T[K]>;
|
|
9
9
|
}> : unknown);
|
|
10
10
|
export declare function toDeepSignal<T>(signal: Signal<T>): DeepSignal<T>;
|
|
11
|
-
export {};
|
package/src/get-state.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function getState<State extends object>(
|
|
1
|
+
import { StateSignal } from './state-signal';
|
|
2
|
+
export declare function getState<State extends object>(stateSignal: StateSignal<State>): State;
|
package/src/patch-state.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StateSignal } from './state-signal';
|
|
2
2
|
export type PartialStateUpdater<State extends object> = (state: State) => Partial<State>;
|
|
3
|
-
export declare function patchState<State extends object>(
|
|
3
|
+
export declare function patchState<State extends object>(stateSignal: StateSignal<State>, ...updaters: Array<Partial<State & {}> | PartialStateUpdater<State & {}>>): void;
|
package/src/signal-state.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StateSignal } from './state-signal';
|
|
2
2
|
import { DeepSignal } from './deep-signal';
|
|
3
|
-
|
|
4
|
-
export type SignalStateMeta<State extends object> = {
|
|
5
|
-
[STATE_SIGNAL]: WritableSignal<State>;
|
|
6
|
-
};
|
|
7
|
-
type SignalState<State extends object> = DeepSignal<State> & SignalStateMeta<State>;
|
|
3
|
+
type SignalState<State extends object> = DeepSignal<State> & StateSignal<State>;
|
|
8
4
|
export declare function signalState<State extends object>(initialState: State): SignalState<State>;
|
|
9
5
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Signal } from '@angular/core';
|
|
2
2
|
import { DeepSignal } from './deep-signal';
|
|
3
|
-
import {
|
|
3
|
+
import { StateSignal } from './state-signal';
|
|
4
4
|
import { IsKnownRecord, Prettify } from './ts-helpers';
|
|
5
5
|
export type SignalStoreConfig = {
|
|
6
6
|
providedIn: 'root';
|
|
@@ -8,7 +8,7 @@ export type SignalStoreConfig = {
|
|
|
8
8
|
export type SignalStoreSlices<State> = IsKnownRecord<Prettify<State>> extends true ? {
|
|
9
9
|
[Key in keyof State]: IsKnownRecord<State[Key]> extends true ? DeepSignal<State[Key]> : Signal<State[Key]>;
|
|
10
10
|
} : {};
|
|
11
|
-
export type
|
|
11
|
+
export type SignalStoreProps<FeatureResult extends SignalStoreFeatureResult> = Prettify<SignalStoreSlices<FeatureResult['state']> & FeatureResult['signals'] & FeatureResult['methods']>;
|
|
12
12
|
export type SignalsDictionary = Record<string, Signal<unknown>>;
|
|
13
13
|
export type MethodsDictionary = Record<string, (...args: any[]) => unknown>;
|
|
14
14
|
export type SignalStoreHooks = {
|
|
@@ -20,7 +20,7 @@ export type InnerSignalStore<State extends object = object, Signals extends Sign
|
|
|
20
20
|
signals: Signals;
|
|
21
21
|
methods: Methods;
|
|
22
22
|
hooks: SignalStoreHooks;
|
|
23
|
-
} &
|
|
23
|
+
} & StateSignal<State>;
|
|
24
24
|
export type SignalStoreFeatureResult = {
|
|
25
25
|
state: object;
|
|
26
26
|
signals: SignalsDictionary;
|
|
@@ -32,7 +32,7 @@ export type EmptyFeatureResult = {
|
|
|
32
32
|
methods: {};
|
|
33
33
|
};
|
|
34
34
|
export type SignalStoreFeature<Input extends SignalStoreFeatureResult = SignalStoreFeatureResult, Output extends SignalStoreFeatureResult = SignalStoreFeatureResult> = (store: InnerSignalStore<Input['state'], Input['signals'], Input['methods']>) => InnerSignalStore<Output['state'], Output['signals'], Output['methods']>;
|
|
35
|
-
export type MergeFeatureResults<FeatureResults extends SignalStoreFeatureResult[]> = FeatureResults extends [] ?
|
|
35
|
+
export type MergeFeatureResults<FeatureResults extends SignalStoreFeatureResult[]> = FeatureResults extends [] ? EmptyFeatureResult : FeatureResults extends [infer First extends SignalStoreFeatureResult] ? First : FeatureResults extends [
|
|
36
36
|
infer First extends SignalStoreFeatureResult,
|
|
37
37
|
infer Second extends SignalStoreFeatureResult
|
|
38
38
|
] ? MergeTwoFeatureResults<First, Second> : FeatureResults extends [
|
package/src/signal-store.d.ts
CHANGED
|
@@ -1,21 +1,91 @@
|
|
|
1
1
|
import { Type } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult
|
|
6
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult,
|
|
7
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult,
|
|
8
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult,
|
|
9
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult,
|
|
10
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult
|
|
19
|
-
|
|
20
|
-
|
|
2
|
+
import { StateSignal } from './state-signal';
|
|
3
|
+
import { EmptyFeatureResult, InnerSignalStore, MergeFeatureResults, SignalStoreProps, SignalStoreConfig, SignalStoreFeature, SignalStoreFeatureResult } from './signal-store-models';
|
|
4
|
+
import { Prettify } from './ts-helpers';
|
|
5
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult>(f1: SignalStoreFeature<EmptyFeatureResult, F1>): Type<SignalStoreProps<F1> & StateSignal<Prettify<F1['state']>>>;
|
|
6
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
7
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
8
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
9
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4, F5]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
10
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
11
|
+
F1,
|
|
12
|
+
F2,
|
|
13
|
+
F3,
|
|
14
|
+
F4,
|
|
15
|
+
F5,
|
|
16
|
+
F6
|
|
17
|
+
]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
18
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
19
|
+
F1,
|
|
20
|
+
F2,
|
|
21
|
+
F3,
|
|
22
|
+
F4,
|
|
23
|
+
F5,
|
|
24
|
+
F6,
|
|
25
|
+
F7
|
|
26
|
+
]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
27
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, F8 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
28
|
+
F1,
|
|
29
|
+
F2,
|
|
30
|
+
F3,
|
|
31
|
+
F4,
|
|
32
|
+
F5,
|
|
33
|
+
F6,
|
|
34
|
+
F7,
|
|
35
|
+
F8
|
|
36
|
+
]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>, f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
37
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, F8 extends SignalStoreFeatureResult, F9 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
38
|
+
F1,
|
|
39
|
+
F2,
|
|
40
|
+
F3,
|
|
41
|
+
F4,
|
|
42
|
+
F5,
|
|
43
|
+
F6,
|
|
44
|
+
F7,
|
|
45
|
+
F8,
|
|
46
|
+
F9
|
|
47
|
+
]>>(f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>, f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>, f9: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>, F9>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
48
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>): Type<SignalStoreProps<F1> & StateSignal<Prettify<F1['state']>>>;
|
|
49
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
50
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
51
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
52
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[F1, F2, F3, F4, F5]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
53
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
54
|
+
F1,
|
|
55
|
+
F2,
|
|
56
|
+
F3,
|
|
57
|
+
F4,
|
|
58
|
+
F5,
|
|
59
|
+
F6
|
|
60
|
+
]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
61
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
62
|
+
F1,
|
|
63
|
+
F2,
|
|
64
|
+
F3,
|
|
65
|
+
F4,
|
|
66
|
+
F5,
|
|
67
|
+
F6,
|
|
68
|
+
F7
|
|
69
|
+
]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
70
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, F8 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
71
|
+
F1,
|
|
72
|
+
F2,
|
|
73
|
+
F3,
|
|
74
|
+
F4,
|
|
75
|
+
F5,
|
|
76
|
+
F6,
|
|
77
|
+
F7,
|
|
78
|
+
F8
|
|
79
|
+
]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>, f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
80
|
+
export declare function signalStore<F1 extends SignalStoreFeatureResult, F2 extends SignalStoreFeatureResult, F3 extends SignalStoreFeatureResult, F4 extends SignalStoreFeatureResult, F5 extends SignalStoreFeatureResult, F6 extends SignalStoreFeatureResult, F7 extends SignalStoreFeatureResult, F8 extends SignalStoreFeatureResult, F9 extends SignalStoreFeatureResult, R extends SignalStoreFeatureResult = MergeFeatureResults<[
|
|
81
|
+
F1,
|
|
82
|
+
F2,
|
|
83
|
+
F3,
|
|
84
|
+
F4,
|
|
85
|
+
F5,
|
|
86
|
+
F6,
|
|
87
|
+
F7,
|
|
88
|
+
F8,
|
|
89
|
+
F9
|
|
90
|
+
]>>(config: SignalStoreConfig, f1: SignalStoreFeature<EmptyFeatureResult, F1>, f2: SignalStoreFeature<{} & F1, F2>, f3: SignalStoreFeature<MergeFeatureResults<[F1, F2]>, F3>, f4: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3]>, F4>, f5: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4]>, F5>, f6: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5]>, F6>, f7: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6]>, F7>, f8: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7]>, F8>, f9: SignalStoreFeature<MergeFeatureResults<[F1, F2, F3, F4, F5, F6, F7, F8]>, F9>): Type<SignalStoreProps<R> & StateSignal<Prettify<R['state']>>>;
|
|
21
91
|
export declare function getInitialInnerStore(): InnerSignalStore;
|
package/src/with-hooks.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { EmptyFeatureResult, SignalStoreFeature,
|
|
1
|
+
import { StateSignal } from './state-signal';
|
|
2
|
+
import { EmptyFeatureResult, SignalStoreFeature, SignalStoreFeatureResult, SignalStoreSlices } from './signal-store-models';
|
|
3
3
|
import { Prettify } from './ts-helpers';
|
|
4
|
-
type HooksFactory<Input extends SignalStoreFeatureResult> = (store: Prettify<SignalStoreSlices<Input['state']> & Input['signals'] & Input['methods'] &
|
|
4
|
+
type HooksFactory<Input extends SignalStoreFeatureResult> = (store: Prettify<SignalStoreSlices<Input['state']> & Input['signals'] & Input['methods'] & StateSignal<Prettify<Input['state']>>>) => void;
|
|
5
5
|
export declare function withHooks<Input extends SignalStoreFeatureResult>(hooks: {
|
|
6
6
|
onInit?: HooksFactory<Input>;
|
|
7
7
|
onDestroy?: HooksFactory<Input>;
|
package/src/with-methods.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StateSignal } from './state-signal';
|
|
2
2
|
import { EmptyFeatureResult, MethodsDictionary, SignalStoreFeature, SignalStoreFeatureResult, SignalStoreSlices } from './signal-store-models';
|
|
3
3
|
import { Prettify } from './ts-helpers';
|
|
4
|
-
export declare function withMethods<Input extends SignalStoreFeatureResult, Methods extends MethodsDictionary>(methodsFactory: (store: Prettify<SignalStoreSlices<Input['state']> & Input['signals'] & Input['methods'] &
|
|
4
|
+
export declare function withMethods<Input extends SignalStoreFeatureResult, Methods extends MethodsDictionary>(methodsFactory: (store: Prettify<SignalStoreSlices<Input['state']> & Input['signals'] & Input['methods'] & StateSignal<Prettify<Input['state']>>>) => Methods): SignalStoreFeature<Input, EmptyFeatureResult & {
|
|
5
5
|
methods: Methods;
|
|
6
6
|
}>;
|