@ngrx/signals 17.0.0-beta.0 → 17.0.0
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/entities/index.d.ts +1 -0
- package/entities/src/helpers.d.ts +25 -0
- package/entities/src/index.d.ts +13 -0
- package/entities/src/models.d.ts +29 -0
- package/entities/src/updaters/add-entities.d.ts +17 -0
- package/entities/src/updaters/add-entity.d.ts +17 -0
- package/entities/src/updaters/remove-all-entities.d.ts +6 -0
- package/entities/src/updaters/remove-entities.d.ts +10 -0
- package/entities/src/updaters/remove-entity.d.ts +6 -0
- package/entities/src/updaters/set-all-entities.d.ts +17 -0
- package/entities/src/updaters/set-entities.d.ts +17 -0
- package/entities/src/updaters/set-entity.d.ts +17 -0
- package/entities/src/updaters/update-all-entities.d.ts +6 -0
- package/entities/src/updaters/update-entities.d.ts +22 -0
- package/entities/src/updaters/update-entity.d.ts +12 -0
- package/entities/src/with-entities.d.ts +34 -0
- package/esm2022/entities/index.mjs +2 -0
- package/esm2022/entities/ngrx-signals-entities.mjs +5 -0
- package/esm2022/entities/src/helpers.mjs +105 -0
- package/esm2022/entities/src/index.mjs +13 -0
- package/esm2022/entities/src/models.mjs +7 -0
- package/esm2022/entities/src/updaters/add-entities.mjs +11 -0
- package/esm2022/entities/src/updaters/add-entity.mjs +11 -0
- package/esm2022/entities/src/updaters/remove-all-entities.mjs +9 -0
- package/esm2022/entities/src/updaters/remove-entities.mjs +10 -0
- package/esm2022/entities/src/updaters/remove-entity.mjs +10 -0
- package/esm2022/entities/src/updaters/set-all-entities.mjs +14 -0
- package/esm2022/entities/src/updaters/set-entities.mjs +11 -0
- package/esm2022/entities/src/updaters/set-entity.mjs +11 -0
- package/esm2022/entities/src/updaters/update-all-entities.mjs +10 -0
- package/esm2022/entities/src/updaters/update-entities.mjs +11 -0
- package/esm2022/entities/src/updaters/update-entity.mjs +10 -0
- package/esm2022/entities/src/with-entities.mjs +17 -0
- package/esm2022/src/deep-signal.mjs +6 -4
- package/esm2022/src/get-state.mjs +5 -0
- package/esm2022/src/index.mjs +2 -1
- package/esm2022/src/patch-state.mjs +1 -1
- package/esm2022/src/signal-state.mjs +1 -1
- package/esm2022/src/signal-store-models.mjs +1 -1
- package/esm2022/src/signal-store.mjs +4 -4
- package/esm2022/src/ts-helpers.mjs +1 -1
- package/esm2022/src/with-state.mjs +1 -1
- package/fesm2022/ngrx-signals-entities.mjs +241 -0
- package/fesm2022/ngrx-signals-entities.mjs.map +1 -0
- package/fesm2022/ngrx-signals-rxjs-interop.mjs +1 -1
- package/fesm2022/ngrx-signals.mjs +13 -7
- package/fesm2022/ngrx-signals.mjs.map +1 -1
- package/package.json +8 -2
- 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 +9 -4
- package/src/get-state.d.ts +2 -0
- package/src/index.d.ts +2 -0
- package/src/patch-state.d.ts +2 -2
- package/src/signal-state.d.ts +3 -5
- package/src/signal-store-models.d.ts +6 -6
- package/src/ts-helpers.d.ts +2 -7
- package/src/with-state.d.ts +2 -5
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { cloneEntityState, getEntityStateKeys, getEntityUpdaterResult, updateEntitiesMutably, } from '../helpers';
|
|
2
|
+
export function updateEntities(update, config) {
|
|
3
|
+
const stateKeys = getEntityStateKeys(config);
|
|
4
|
+
const idsOrPredicate = 'ids' in update ? update.ids : update.predicate;
|
|
5
|
+
return (state) => {
|
|
6
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
7
|
+
const didMutate = updateEntitiesMutably(clonedState, idsOrPredicate, update.changes);
|
|
8
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWVudGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL2VudGl0aWVzL3NyYy91cGRhdGVycy91cGRhdGUtZW50aXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixrQkFBa0IsRUFDbEIsc0JBQXNCLEVBQ3RCLHFCQUFxQixHQUN0QixNQUFNLFlBQVksQ0FBQztBQWdDcEIsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsTUFFQyxFQUNELE1BQWdDO0lBRWhDLE1BQU0sU0FBUyxHQUFHLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdDLE1BQU0sY0FBYyxHQUFHLEtBQUssSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7SUFFdkUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2YsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sU0FBUyxHQUFHLHFCQUFxQixDQUNyQyxXQUFXLEVBQ1gsY0FBYyxFQUNkLE1BQU0sQ0FBQyxPQUFPLENBQ2YsQ0FBQztRQUVGLE9BQU8sc0JBQXNCLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNuRSxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFydGlhbFN0YXRlVXBkYXRlciB9IGZyb20gJ0BuZ3J4L3NpZ25hbHMnO1xuaW1wb3J0IHtcbiAgRW50aXR5Q2hhbmdlcyxcbiAgRW50aXR5SWQsXG4gIEVudGl0eVByZWRpY2F0ZSxcbiAgRW50aXR5U3RhdGUsXG4gIE5hbWVkRW50aXR5U3RhdGUsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge1xuICBjbG9uZUVudGl0eVN0YXRlLFxuICBnZXRFbnRpdHlTdGF0ZUtleXMsXG4gIGdldEVudGl0eVVwZGF0ZXJSZXN1bHQsXG4gIHVwZGF0ZUVudGl0aWVzTXV0YWJseSxcbn0gZnJvbSAnLi4vaGVscGVycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVFbnRpdGllczxFbnRpdHk+KHVwZGF0ZToge1xuICBpZHM6IEVudGl0eUlkW107XG4gIGNoYW5nZXM6IEVudGl0eUNoYW5nZXM8RW50aXR5ICYge30+O1xufSk6IFBhcnRpYWxTdGF0ZVVwZGF0ZXI8RW50aXR5U3RhdGU8RW50aXR5Pj47XG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlRW50aXRpZXM8RW50aXR5Pih1cGRhdGU6IHtcbiAgcHJlZGljYXRlOiBFbnRpdHlQcmVkaWNhdGU8RW50aXR5PjtcbiAgY2hhbmdlczogRW50aXR5Q2hhbmdlczxFbnRpdHkgJiB7fT47XG59KTogUGFydGlhbFN0YXRlVXBkYXRlcjxFbnRpdHlTdGF0ZTxFbnRpdHk+PjtcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVFbnRpdGllczxcbiAgQ29sbGVjdGlvbiBleHRlbmRzIHN0cmluZyxcbiAgU3RhdGUgZXh0ZW5kcyBOYW1lZEVudGl0eVN0YXRlPGFueSwgQ29sbGVjdGlvbj4sXG4gIEVudGl0eSA9IFN0YXRlIGV4dGVuZHMgTmFtZWRFbnRpdHlTdGF0ZTxpbmZlciBFLCBDb2xsZWN0aW9uPiA/IEUgOiBuZXZlclxuPihcbiAgdXBkYXRlOiB7XG4gICAgaWRzOiBFbnRpdHlJZFtdO1xuICAgIGNoYW5nZXM6IEVudGl0eUNoYW5nZXM8RW50aXR5ICYge30+O1xuICB9LFxuICBjb25maWc6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbiB9XG4pOiBQYXJ0aWFsU3RhdGVVcGRhdGVyPFN0YXRlPjtcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVFbnRpdGllczxcbiAgQ29sbGVjdGlvbiBleHRlbmRzIHN0cmluZyxcbiAgU3RhdGUgZXh0ZW5kcyBOYW1lZEVudGl0eVN0YXRlPGFueSwgQ29sbGVjdGlvbj4sXG4gIEVudGl0eSA9IFN0YXRlIGV4dGVuZHMgTmFtZWRFbnRpdHlTdGF0ZTxpbmZlciBFLCBDb2xsZWN0aW9uPiA/IEUgOiBuZXZlclxuPihcbiAgdXBkYXRlOiB7XG4gICAgcHJlZGljYXRlOiBFbnRpdHlQcmVkaWNhdGU8RW50aXR5PjtcbiAgICBjaGFuZ2VzOiBFbnRpdHlDaGFuZ2VzPEVudGl0eSAmIHt9PjtcbiAgfSxcbiAgY29uZmlnOiB7IGNvbGxlY3Rpb246IENvbGxlY3Rpb24gfVxuKTogUGFydGlhbFN0YXRlVXBkYXRlcjxTdGF0ZT47XG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlRW50aXRpZXMoXG4gIHVwZGF0ZTogKHsgaWRzOiBFbnRpdHlJZFtdIH0gfCB7IHByZWRpY2F0ZTogRW50aXR5UHJlZGljYXRlPGFueT4gfSkgJiB7XG4gICAgY2hhbmdlczogRW50aXR5Q2hhbmdlczxhbnk+O1xuICB9LFxuICBjb25maWc/OiB7IGNvbGxlY3Rpb24/OiBzdHJpbmcgfVxuKTogUGFydGlhbFN0YXRlVXBkYXRlcjxFbnRpdHlTdGF0ZTxhbnk+IHwgTmFtZWRFbnRpdHlTdGF0ZTxhbnksIHN0cmluZz4+IHtcbiAgY29uc3Qgc3RhdGVLZXlzID0gZ2V0RW50aXR5U3RhdGVLZXlzKGNvbmZpZyk7XG4gIGNvbnN0IGlkc09yUHJlZGljYXRlID0gJ2lkcycgaW4gdXBkYXRlID8gdXBkYXRlLmlkcyA6IHVwZGF0ZS5wcmVkaWNhdGU7XG5cbiAgcmV0dXJuIChzdGF0ZSkgPT4ge1xuICAgIGNvbnN0IGNsb25lZFN0YXRlID0gY2xvbmVFbnRpdHlTdGF0ZShzdGF0ZSwgc3RhdGVLZXlzKTtcbiAgICBjb25zdCBkaWRNdXRhdGUgPSB1cGRhdGVFbnRpdGllc011dGFibHkoXG4gICAgICBjbG9uZWRTdGF0ZSxcbiAgICAgIGlkc09yUHJlZGljYXRlLFxuICAgICAgdXBkYXRlLmNoYW5nZXNcbiAgICApO1xuXG4gICAgcmV0dXJuIGdldEVudGl0eVVwZGF0ZXJSZXN1bHQoY2xvbmVkU3RhdGUsIHN0YXRlS2V5cywgZGlkTXV0YXRlKTtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { cloneEntityState, getEntityStateKeys, getEntityUpdaterResult, updateEntitiesMutably, } from '../helpers';
|
|
2
|
+
export function updateEntity(update, config) {
|
|
3
|
+
const stateKeys = getEntityStateKeys(config);
|
|
4
|
+
return (state) => {
|
|
5
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
6
|
+
const didMutate = updateEntitiesMutably(clonedState, [update.id], update.changes);
|
|
7
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWVudGl0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9lbnRpdGllcy9zcmMvdXBkYXRlcnMvdXBkYXRlLWVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIscUJBQXFCLEdBQ3RCLE1BQU0sWUFBWSxDQUFDO0FBaUJwQixNQUFNLFVBQVUsWUFBWSxDQUMxQixNQUdDLEVBQ0QsTUFBZ0M7SUFFaEMsTUFBTSxTQUFTLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFN0MsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ2YsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sU0FBUyxHQUFHLHFCQUFxQixDQUNyQyxXQUFXLEVBQ1gsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQ1gsTUFBTSxDQUFDLE9BQU8sQ0FDZixDQUFDO1FBRUYsT0FBTyxzQkFBc0IsQ0FBQyxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25FLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXJ0aWFsU3RhdGVVcGRhdGVyIH0gZnJvbSAnQG5ncngvc2lnbmFscyc7XG5pbXBvcnQge1xuICBFbnRpdHlDaGFuZ2VzLFxuICBFbnRpdHlJZCxcbiAgRW50aXR5U3RhdGUsXG4gIE5hbWVkRW50aXR5U3RhdGUsXG59IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQge1xuICBjbG9uZUVudGl0eVN0YXRlLFxuICBnZXRFbnRpdHlTdGF0ZUtleXMsXG4gIGdldEVudGl0eVVwZGF0ZXJSZXN1bHQsXG4gIHVwZGF0ZUVudGl0aWVzTXV0YWJseSxcbn0gZnJvbSAnLi4vaGVscGVycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVFbnRpdHk8RW50aXR5Pih1cGRhdGU6IHtcbiAgaWQ6IEVudGl0eUlkO1xuICBjaGFuZ2VzOiBFbnRpdHlDaGFuZ2VzPEVudGl0eSAmIHt9Pjtcbn0pOiBQYXJ0aWFsU3RhdGVVcGRhdGVyPEVudGl0eVN0YXRlPEVudGl0eT4+O1xuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZUVudGl0eTxcbiAgQ29sbGVjdGlvbiBleHRlbmRzIHN0cmluZyxcbiAgU3RhdGUgZXh0ZW5kcyBOYW1lZEVudGl0eVN0YXRlPGFueSwgQ29sbGVjdGlvbj4sXG4gIEVudGl0eSA9IFN0YXRlIGV4dGVuZHMgTmFtZWRFbnRpdHlTdGF0ZTxpbmZlciBFLCBDb2xsZWN0aW9uPiA/IEUgOiBuZXZlclxuPihcbiAgdXBkYXRlOiB7XG4gICAgaWQ6IEVudGl0eUlkO1xuICAgIGNoYW5nZXM6IEVudGl0eUNoYW5nZXM8RW50aXR5ICYge30+O1xuICB9LFxuICBjb25maWc6IHsgY29sbGVjdGlvbjogQ29sbGVjdGlvbiB9XG4pOiBQYXJ0aWFsU3RhdGVVcGRhdGVyPFN0YXRlPjtcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVFbnRpdHkoXG4gIHVwZGF0ZToge1xuICAgIGlkOiBFbnRpdHlJZDtcbiAgICBjaGFuZ2VzOiBFbnRpdHlDaGFuZ2VzPGFueT47XG4gIH0sXG4gIGNvbmZpZz86IHsgY29sbGVjdGlvbj86IHN0cmluZyB9XG4pOiBQYXJ0aWFsU3RhdGVVcGRhdGVyPEVudGl0eVN0YXRlPGFueT4gfCBOYW1lZEVudGl0eVN0YXRlPGFueSwgc3RyaW5nPj4ge1xuICBjb25zdCBzdGF0ZUtleXMgPSBnZXRFbnRpdHlTdGF0ZUtleXMoY29uZmlnKTtcblxuICByZXR1cm4gKHN0YXRlKSA9PiB7XG4gICAgY29uc3QgY2xvbmVkU3RhdGUgPSBjbG9uZUVudGl0eVN0YXRlKHN0YXRlLCBzdGF0ZUtleXMpO1xuICAgIGNvbnN0IGRpZE11dGF0ZSA9IHVwZGF0ZUVudGl0aWVzTXV0YWJseShcbiAgICAgIGNsb25lZFN0YXRlLFxuICAgICAgW3VwZGF0ZS5pZF0sXG4gICAgICB1cGRhdGUuY2hhbmdlc1xuICAgICk7XG5cbiAgICByZXR1cm4gZ2V0RW50aXR5VXBkYXRlclJlc3VsdChjbG9uZWRTdGF0ZSwgc3RhdGVLZXlzLCBkaWRNdXRhdGUpO1xuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { computed } from '@angular/core';
|
|
2
|
+
import { signalStoreFeature, withComputed, withState, } from '@ngrx/signals';
|
|
3
|
+
import { getEntityStateKeys } from './helpers';
|
|
4
|
+
export function withEntities(config) {
|
|
5
|
+
const { entityMapKey, idsKey, entitiesKey } = getEntityStateKeys(config);
|
|
6
|
+
return signalStoreFeature(withState({
|
|
7
|
+
[entityMapKey]: {},
|
|
8
|
+
[idsKey]: [],
|
|
9
|
+
}), withComputed((store) => ({
|
|
10
|
+
[entitiesKey]: computed(() => {
|
|
11
|
+
const entityMap = store[entityMapKey]();
|
|
12
|
+
const ids = store[idsKey]();
|
|
13
|
+
return ids.map((id) => entityMap[id]);
|
|
14
|
+
}),
|
|
15
|
+
})));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1lbnRpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9lbnRpdGllcy9zcmMvd2l0aC1lbnRpdGllcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFFTCxrQkFBa0IsRUFDbEIsWUFBWSxFQUNaLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQVN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUErQi9DLE1BQU0sVUFBVSxZQUFZLENBQVMsTUFHcEM7SUFDQyxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUV6RSxPQUFPLGtCQUFrQixDQUN2QixTQUFTLENBQUM7UUFDUixDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7UUFDbEIsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFO0tBQ2IsQ0FBQyxFQUNGLFlBQVksQ0FBQyxDQUFDLEtBQXNDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEQsQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFBdUIsQ0FBQztZQUM3RCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQWdCLENBQUM7WUFFMUMsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUM7S0FDSCxDQUFDLENBQUMsQ0FDSixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNpZ25hbFN0b3JlRmVhdHVyZSxcbiAgc2lnbmFsU3RvcmVGZWF0dXJlLFxuICB3aXRoQ29tcHV0ZWQsXG4gIHdpdGhTdGF0ZSxcbn0gZnJvbSAnQG5ncngvc2lnbmFscyc7XG5pbXBvcnQge1xuICBFbnRpdHlJZCxcbiAgRW50aXR5TWFwLFxuICBFbnRpdHlTaWduYWxzLFxuICBFbnRpdHlTdGF0ZSxcbiAgTmFtZWRFbnRpdHlTaWduYWxzLFxuICBOYW1lZEVudGl0eVN0YXRlLFxufSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgeyBnZXRFbnRpdHlTdGF0ZUtleXMgfSBmcm9tICcuL2hlbHBlcnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aEVudGl0aWVzPEVudGl0eT4oKTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICB7IHN0YXRlOiB7fTsgc2lnbmFsczoge307IG1ldGhvZHM6IHt9IH0sXG4gIHtcbiAgICBzdGF0ZTogRW50aXR5U3RhdGU8RW50aXR5PjtcbiAgICBzaWduYWxzOiBFbnRpdHlTaWduYWxzPEVudGl0eT47XG4gICAgbWV0aG9kczoge307XG4gIH1cbj47XG5leHBvcnQgZnVuY3Rpb24gd2l0aEVudGl0aWVzPEVudGl0eSwgQ29sbGVjdGlvbiBleHRlbmRzIHN0cmluZz4oY29uZmlnOiB7XG4gIGVudGl0eTogRW50aXR5O1xuICBjb2xsZWN0aW9uOiBDb2xsZWN0aW9uO1xufSk6IFNpZ25hbFN0b3JlRmVhdHVyZTxcbiAgeyBzdGF0ZToge307IHNpZ25hbHM6IHt9OyBtZXRob2RzOiB7fSB9LFxuICB7XG4gICAgc3RhdGU6IE5hbWVkRW50aXR5U3RhdGU8RW50aXR5LCBDb2xsZWN0aW9uPjtcbiAgICBzaWduYWxzOiBOYW1lZEVudGl0eVNpZ25hbHM8RW50aXR5LCBDb2xsZWN0aW9uPjtcbiAgICBtZXRob2RzOiB7fTtcbiAgfVxuPjtcbmV4cG9ydCBmdW5jdGlvbiB3aXRoRW50aXRpZXM8RW50aXR5Pihjb25maWc6IHtcbiAgZW50aXR5OiBFbnRpdHk7XG59KTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICB7IHN0YXRlOiB7fTsgc2lnbmFsczoge307IG1ldGhvZHM6IHt9IH0sXG4gIHtcbiAgICBzdGF0ZTogRW50aXR5U3RhdGU8RW50aXR5PjtcbiAgICBzaWduYWxzOiBFbnRpdHlTaWduYWxzPEVudGl0eT47XG4gICAgbWV0aG9kczoge307XG4gIH1cbj47XG5leHBvcnQgZnVuY3Rpb24gd2l0aEVudGl0aWVzPEVudGl0eT4oY29uZmlnPzoge1xuICBlbnRpdHk6IEVudGl0eTtcbiAgY29sbGVjdGlvbj86IHN0cmluZztcbn0pOiBTaWduYWxTdG9yZUZlYXR1cmUge1xuICBjb25zdCB7IGVudGl0eU1hcEtleSwgaWRzS2V5LCBlbnRpdGllc0tleSB9ID0gZ2V0RW50aXR5U3RhdGVLZXlzKGNvbmZpZyk7XG5cbiAgcmV0dXJuIHNpZ25hbFN0b3JlRmVhdHVyZShcbiAgICB3aXRoU3RhdGUoe1xuICAgICAgW2VudGl0eU1hcEtleV06IHt9LFxuICAgICAgW2lkc0tleV06IFtdLFxuICAgIH0pLFxuICAgIHdpdGhDb21wdXRlZCgoc3RvcmU6IFJlY29yZDxzdHJpbmcsIFNpZ25hbDx1bmtub3duPj4pID0+ICh7XG4gICAgICBbZW50aXRpZXNLZXldOiBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGVudGl0eU1hcCA9IHN0b3JlW2VudGl0eU1hcEtleV0oKSBhcyBFbnRpdHlNYXA8RW50aXR5PjtcbiAgICAgICAgY29uc3QgaWRzID0gc3RvcmVbaWRzS2V5XSgpIGFzIEVudGl0eUlkW107XG5cbiAgICAgICAgcmV0dXJuIGlkcy5tYXAoKGlkKSA9PiBlbnRpdHlNYXBbaWRdKTtcbiAgICAgIH0pLFxuICAgIH0pKVxuICApO1xufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { computed, untracked } from '@angular/core';
|
|
1
|
+
import { computed, isSignal, untracked, } from '@angular/core';
|
|
2
2
|
export function toDeepSignal(signal) {
|
|
3
3
|
const value = untracked(() => signal());
|
|
4
4
|
if (!isRecord(value)) {
|
|
@@ -9,8 +9,10 @@ export function toDeepSignal(signal) {
|
|
|
9
9
|
if (!(prop in value)) {
|
|
10
10
|
return target[prop];
|
|
11
11
|
}
|
|
12
|
-
if (!target[prop]) {
|
|
13
|
-
target
|
|
12
|
+
if (!isSignal(target[prop])) {
|
|
13
|
+
Object.defineProperty(target, prop, {
|
|
14
|
+
value: computed(() => target()[prop]),
|
|
15
|
+
});
|
|
14
16
|
}
|
|
15
17
|
return toDeepSignal(target[prop]);
|
|
16
18
|
},
|
|
@@ -19,4 +21,4 @@ export function toDeepSignal(signal) {
|
|
|
19
21
|
function isRecord(value) {
|
|
20
22
|
return value?.constructor === Object;
|
|
21
23
|
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcC1zaWduYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL3NpZ25hbHMvc3JjL2RlZXAtc2lnbmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBQ1IsUUFBUSxFQUVSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQW1CdkIsTUFBTSxVQUFVLFlBQVksQ0FBSSxNQUFpQjtJQUMvQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3BCLE9BQU8sTUFBdUIsQ0FBQztLQUNoQztJQUVELE9BQU8sSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ3ZCLEdBQUcsQ0FBQyxNQUFXLEVBQUUsSUFBSTtZQUNuQixJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ3BCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3JCO1lBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDM0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFO29CQUNsQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUN0QyxDQUFDLENBQUM7YUFDSjtZQUVELE9BQU8sWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQsU0FBUyxRQUFRLENBQUMsS0FBYztJQUM5QixPQUFPLEtBQUssRUFBRSxXQUFXLEtBQUssTUFBTSxDQUFDO0FBQ3ZDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBjb21wdXRlZCxcbiAgaXNTaWduYWwsXG4gIFNpZ25hbCBhcyBOZ1NpZ25hbCxcbiAgdW50cmFja2VkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElzS25vd25SZWNvcmQgfSBmcm9tICcuL3RzLWhlbHBlcnMnO1xuXG4vLyBBbiBleHRlbmRlZCBTaWduYWwgdHlwZSB0aGF0IGVuYWJsZXMgdGhlIGNvcnJlY3QgdHlwaW5nXG4vLyBvZiBuZXN0ZWQgc2lnbmFscyB3aXRoIHRoZSBgbmFtZWAgb3IgYGxlbmd0aGAga2V5LlxuaW50ZXJmYWNlIFNpZ25hbDxUPiBleHRlbmRzIE5nU2lnbmFsPFQ+IHtcbiAgbmFtZTogdW5rbm93bjtcbiAgbGVuZ3RoOiB1bmtub3duO1xufVxuXG5leHBvcnQgdHlwZSBEZWVwU2lnbmFsPFQ+ID0gU2lnbmFsPFQ+ICZcbiAgKElzS25vd25SZWNvcmQ8VD4gZXh0ZW5kcyB0cnVlXG4gICAgPyBSZWFkb25seTx7XG4gICAgICAgIFtLIGluIGtleW9mIFRdOiBJc0tub3duUmVjb3JkPFRbS10+IGV4dGVuZHMgdHJ1ZVxuICAgICAgICAgID8gRGVlcFNpZ25hbDxUW0tdPlxuICAgICAgICAgIDogU2lnbmFsPFRbS10+O1xuICAgICAgfT5cbiAgICA6IHVua25vd24pO1xuXG5leHBvcnQgZnVuY3Rpb24gdG9EZWVwU2lnbmFsPFQ+KHNpZ25hbDogU2lnbmFsPFQ+KTogRGVlcFNpZ25hbDxUPiB7XG4gIGNvbnN0IHZhbHVlID0gdW50cmFja2VkKCgpID0+IHNpZ25hbCgpKTtcbiAgaWYgKCFpc1JlY29yZCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gc2lnbmFsIGFzIERlZXBTaWduYWw8VD47XG4gIH1cblxuICByZXR1cm4gbmV3IFByb3h5KHNpZ25hbCwge1xuICAgIGdldCh0YXJnZXQ6IGFueSwgcHJvcCkge1xuICAgICAgaWYgKCEocHJvcCBpbiB2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIHRhcmdldFtwcm9wXTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFpc1NpZ25hbCh0YXJnZXRbcHJvcF0pKSB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHByb3AsIHtcbiAgICAgICAgICB2YWx1ZTogY29tcHV0ZWQoKCkgPT4gdGFyZ2V0KClbcHJvcF0pLFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRvRGVlcFNpZ25hbCh0YXJnZXRbcHJvcF0pO1xuICAgIH0sXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBpc1JlY29yZCh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgcmV0dXJuIHZhbHVlPy5jb25zdHJ1Y3RvciA9PT0gT2JqZWN0O1xufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { STATE_SIGNAL } from './signal-state';
|
|
2
|
+
export function getState(signalState) {
|
|
3
|
+
return signalState[STATE_SIGNAL]();
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9nZXQtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRCxNQUFNLFVBQVUsUUFBUSxDQUN0QixXQUFtQztJQUVuQyxPQUFPLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO0FBQ3JDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTVEFURV9TSUdOQUwsIFNpZ25hbFN0YXRlTWV0YSB9IGZyb20gJy4vc2lnbmFsLXN0YXRlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgc2lnbmFsU3RhdGU6IFNpZ25hbFN0YXRlTWV0YTxTdGF0ZT5cbik6IFN0YXRlIHtcbiAgcmV0dXJuIHNpZ25hbFN0YXRlW1NUQVRFX1NJR05BTF0oKTtcbn1cbiJdfQ==
|
package/esm2022/src/index.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { getState } from './get-state';
|
|
1
2
|
export { patchState } from './patch-state';
|
|
2
3
|
export { signalState } from './signal-state';
|
|
3
4
|
export { signalStore } from './signal-store';
|
|
@@ -6,4 +7,4 @@ export { withComputed } from './with-computed';
|
|
|
6
7
|
export { withHooks } from './with-hooks';
|
|
7
8
|
export { withMethods } from './with-methods';
|
|
8
9
|
export { withState } from './with-state';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL3NpZ25hbHMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxFQUF1QixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBnZXRTdGF0ZSB9IGZyb20gJy4vZ2V0LXN0YXRlJztcbmV4cG9ydCB7IFBhcnRpYWxTdGF0ZVVwZGF0ZXIsIHBhdGNoU3RhdGUgfSBmcm9tICcuL3BhdGNoLXN0YXRlJztcbmV4cG9ydCB7IHNpZ25hbFN0YXRlIH0gZnJvbSAnLi9zaWduYWwtc3RhdGUnO1xuZXhwb3J0IHsgc2lnbmFsU3RvcmUgfSBmcm9tICcuL3NpZ25hbC1zdG9yZSc7XG5leHBvcnQgeyBzaWduYWxTdG9yZUZlYXR1cmUsIHR5cGUgfSBmcm9tICcuL3NpZ25hbC1zdG9yZS1mZWF0dXJlJztcbmV4cG9ydCB7IFNpZ25hbFN0b3JlRmVhdHVyZSB9IGZyb20gJy4vc2lnbmFsLXN0b3JlLW1vZGVscyc7XG5cbmV4cG9ydCB7IHdpdGhDb21wdXRlZCB9IGZyb20gJy4vd2l0aC1jb21wdXRlZCc7XG5leHBvcnQgeyB3aXRoSG9va3MgfSBmcm9tICcuL3dpdGgtaG9va3MnO1xuZXhwb3J0IHsgd2l0aE1ldGhvZHMgfSBmcm9tICcuL3dpdGgtbWV0aG9kcyc7XG5leHBvcnQgeyB3aXRoU3RhdGUgfSBmcm9tICcuL3dpdGgtc3RhdGUnO1xuIl19
|
|
@@ -5,4 +5,4 @@ export function patchState(signalState, ...updaters) {
|
|
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0Y2gtc3RhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tb2R1bGVzL3NpZ25hbHMvc3JjL3BhdGNoLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0sZ0JBQWdCLENBQUM7QUFNL0QsTUFBTSxVQUFVLFVBQVUsQ0FDeEIsV0FBbUMsRUFDbkMsR0FBRyxRQUFzRTtJQUV6RSxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FDaEQsUUFBUSxDQUFDLE1BQU0sQ0FDYixDQUFDLFNBQWdCLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLEdBQUcsU0FBUztRQUNaLEdBQUcsQ0FBQyxPQUFPLE9BQU8sS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO0tBQ2xFLENBQUMsRUFDRixZQUFZLENBQ2IsQ0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNUQVRFX1NJR05BTCwgU2lnbmFsU3RhdGVNZXRhIH0gZnJvbSAnLi9zaWduYWwtc3RhdGUnO1xuXG5leHBvcnQgdHlwZSBQYXJ0aWFsU3RhdGVVcGRhdGVyPFN0YXRlIGV4dGVuZHMgb2JqZWN0PiA9IChcbiAgc3RhdGU6IFN0YXRlXG4pID0+IFBhcnRpYWw8U3RhdGU+O1xuXG5leHBvcnQgZnVuY3Rpb24gcGF0Y2hTdGF0ZTxTdGF0ZSBleHRlbmRzIG9iamVjdD4oXG4gIHNpZ25hbFN0YXRlOiBTaWduYWxTdGF0ZU1ldGE8U3RhdGU+LFxuICAuLi51cGRhdGVyczogQXJyYXk8UGFydGlhbDxTdGF0ZSAmIHt9PiB8IFBhcnRpYWxTdGF0ZVVwZGF0ZXI8U3RhdGUgJiB7fT4+XG4pOiB2b2lkIHtcbiAgc2lnbmFsU3RhdGVbU1RBVEVfU0lHTkFMXS51cGRhdGUoKGN1cnJlbnRTdGF0ZSkgPT5cbiAgICB1cGRhdGVycy5yZWR1Y2UoXG4gICAgICAobmV4dFN0YXRlOiBTdGF0ZSwgdXBkYXRlcikgPT4gKHtcbiAgICAgICAgLi4ubmV4dFN0YXRlLFxuICAgICAgICAuLi4odHlwZW9mIHVwZGF0ZXIgPT09ICdmdW5jdGlvbicgPyB1cGRhdGVyKG5leHRTdGF0ZSkgOiB1cGRhdGVyKSxcbiAgICAgIH0pLFxuICAgICAgY3VycmVudFN0YXRlXG4gICAgKVxuICApO1xufVxuIl19
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zaWduYWwtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFjLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBU25ELE1BQU0sVUFBVSxXQUFXLENBQ3pCLFlBQW1CO0lBRW5CLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxZQUFxQixDQUFDLENBQUM7SUFDbEQsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzFELE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRTtRQUM5QyxLQUFLLEVBQUUsV0FBVztLQUNuQixDQUFDLENBQUM7SUFFSCxPQUFPLFVBQWdDLENBQUM7QUFDMUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNpZ25hbCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlZXBTaWduYWwsIHRvRGVlcFNpZ25hbCB9IGZyb20gJy4vZGVlcC1zaWduYWwnO1xuXG5leHBvcnQgY29uc3QgU1RBVEVfU0lHTkFMID0gU3ltYm9sKCdTVEFURV9TSUdOQUwnKTtcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RhdGVNZXRhPFN0YXRlIGV4dGVuZHMgb2JqZWN0PiA9IHtcbiAgW1NUQVRFX1NJR05BTF06IFdyaXRhYmxlU2lnbmFsPFN0YXRlPjtcbn07XG5cbnR5cGUgU2lnbmFsU3RhdGU8U3RhdGUgZXh0ZW5kcyBvYmplY3Q+ID0gRGVlcFNpZ25hbDxTdGF0ZT4gJlxuICBTaWduYWxTdGF0ZU1ldGE8U3RhdGU+O1xuXG5leHBvcnQgZnVuY3Rpb24gc2lnbmFsU3RhdGU8U3RhdGUgZXh0ZW5kcyBvYmplY3Q+KFxuICBpbml0aWFsU3RhdGU6IFN0YXRlXG4pOiBTaWduYWxTdGF0ZTxTdGF0ZT4ge1xuICBjb25zdCBzdGF0ZVNpZ25hbCA9IHNpZ25hbChpbml0aWFsU3RhdGUgYXMgU3RhdGUpO1xuICBjb25zdCBkZWVwU2lnbmFsID0gdG9EZWVwU2lnbmFsKHN0YXRlU2lnbmFsLmFzUmVhZG9ubHkoKSk7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkZWVwU2lnbmFsLCBTVEFURV9TSUdOQUwsIHtcbiAgICB2YWx1ZTogc3RhdGVTaWduYWwsXG4gIH0pO1xuXG4gIHJldHVybiBkZWVwU2lnbmFsIGFzIFNpZ25hbFN0YXRlPFN0YXRlPjtcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0b3JlLW1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvc2lnbmFsLXN0b3JlLW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZWVwU2lnbmFsIH0gZnJvbSAnLi9kZWVwLXNpZ25hbCc7XG5pbXBvcnQgeyBTaWduYWxTdGF0ZU1ldGEgfSBmcm9tICcuL3NpZ25hbC1zdGF0ZSc7XG5pbXBvcnQgeyBJc0tub3duUmVjb3JkLCBQcmV0dGlmeSB9IGZyb20gJy4vdHMtaGVscGVycyc7XG5cbmV4cG9ydCB0eXBlIFNpZ25hbFN0b3JlQ29uZmlnID0geyBwcm92aWRlZEluOiAncm9vdCcgfTtcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RvcmVTbGljZXM8U3RhdGU+ID0gSXNLbm93blJlY29yZDxcbiAgUHJldHRpZnk8U3RhdGU+XG4+IGV4dGVuZHMgdHJ1ZVxuICA/IHtcbiAgICAgIFtLZXkgaW4ga2V5b2YgU3RhdGVdOiBJc0tub3duUmVjb3JkPFN0YXRlW0tleV0+IGV4dGVuZHMgdHJ1ZVxuICAgICAgICA/IERlZXBTaWduYWw8U3RhdGVbS2V5XT5cbiAgICAgICAgOiBTaWduYWw8U3RhdGVbS2V5XT47XG4gICAgfVxuICA6IHt9O1xuXG5leHBvcnQgdHlwZSBTaWduYWxTdG9yZTxGZWF0dXJlUmVzdWx0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0PiA9XG4gIFByZXR0aWZ5PFxuICAgIFNpZ25hbFN0b3JlU2xpY2VzPEZlYXR1cmVSZXN1bHRbJ3N0YXRlJ10+ICZcbiAgICAgIEZlYXR1cmVSZXN1bHRbJ3NpZ25hbHMnXSAmXG4gICAgICBGZWF0dXJlUmVzdWx0WydtZXRob2RzJ10gJlxuICAgICAgU2lnbmFsU3RhdGVNZXRhPFByZXR0aWZ5PEZlYXR1cmVSZXN1bHRbJ3N0YXRlJ10+PlxuICA+O1xuXG5leHBvcnQgdHlwZSBTaWduYWxzRGljdGlvbmFyeSA9IFJlY29yZDxzdHJpbmcsIFNpZ25hbDx1bmtub3duPj47XG5cbmV4cG9ydCB0eXBlIE1ldGhvZHNEaWN0aW9uYXJ5ID0gUmVjb3JkPHN0cmluZywgKC4uLmFyZ3M6IGFueVtdKSA9PiB1bmtub3duPjtcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RvcmVIb29rcyA9IHtcbiAgb25Jbml0PzogKCkgPT4gdm9pZDtcbiAgb25EZXN0cm95PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIElubmVyU2lnbmFsU3RvcmU8XG4gIFN0YXRlIGV4dGVuZHMgb2JqZWN0ID0gb2JqZWN0LFxuICBTaWduYWxzIGV4dGVuZHMgU2lnbmFsc0RpY3Rpb25hcnkgPSBTaWduYWxzRGljdGlvbmFyeSxcbiAgTWV0aG9kcyBleHRlbmRzIE1ldGhvZHNEaWN0aW9uYXJ5ID0gTWV0aG9kc0RpY3Rpb25hcnlcbj4gPSB7XG4gIHNsaWNlczogU2lnbmFsU3RvcmVTbGljZXM8U3RhdGU+O1xuICBzaWduYWxzOiBTaWduYWxzO1xuICBtZXRob2RzOiBNZXRob2RzO1xuICBob29rczogU2lnbmFsU3RvcmVIb29rcztcbn0gJiBTaWduYWxTdGF0ZU1ldGE8U3RhdGU+O1xuXG5leHBvcnQgdHlwZSBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQgPSB7XG4gIHN0YXRlOiBvYmplY3Q7XG4gIHNpZ25hbHM6IFNpZ25hbHNEaWN0aW9uYXJ5O1xuICBtZXRob2RzOiBNZXRob2RzRGljdGlvbmFyeTtcbn07XG5cbmV4cG9ydCB0eXBlIEVtcHR5RmVhdHVyZVJlc3VsdCA9IHsgc3RhdGU6IHt9OyBzaWduYWxzOiB7fTsgbWV0aG9kczoge30gfTtcblxuZXhwb3J0IHR5cGUgU2lnbmFsU3RvcmVGZWF0dXJlPFxuICBJbnB1dCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCA9IFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgT3V0cHV0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0ID0gU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0XG4+ID0gKFxuICBzdG9yZTogSW5uZXJTaWduYWxTdG9yZTxJbnB1dFsnc3RhdGUnXSwgSW5wdXRbJ3NpZ25hbHMnXSwgSW5wdXRbJ21ldGhvZHMnXT5cbikgPT4gSW5uZXJTaWduYWxTdG9yZTxPdXRwdXRbJ3N0YXRlJ10sIE91dHB1dFsnc2lnbmFscyddLCBPdXRwdXRbJ21ldGhvZHMnXT47XG5cbmV4cG9ydCB0eXBlIE1lcmdlRmVhdHVyZVJlc3VsdHM8XG4gIEZlYXR1cmVSZXN1bHRzIGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0W11cbj4gPSBGZWF0dXJlUmVzdWx0cyBleHRlbmRzIFtdXG4gID8ge31cbiAgOiBGZWF0dXJlUmVzdWx0cyBleHRlbmRzIFtpbmZlciBGaXJzdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdF1cbiAgPyBGaXJzdFxuICA6IEZlYXR1cmVSZXN1bHRzIGV4dGVuZHMgW1xuICAgICAgaW5mZXIgRmlyc3QgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gICAgICBpbmZlciBTZWNvbmQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHRcbiAgICBdXG4gID8gTWVyZ2VUd29GZWF0dXJlUmVzdWx0czxGaXJzdCwgU2Vjb25kPlxuICA6IEZlYXR1cmVSZXN1bHRzIGV4dGVuZHMgW1xuICAgICAgaW5mZXIgRmlyc3QgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gICAgICBpbmZlciBTZWNvbmQgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gICAgICAuLi5pbmZlciBSZXN0IGV4dGVuZHMgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0W11cbiAgICBdXG4gID8gTWVyZ2VGZWF0dXJlUmVzdWx0czxbTWVyZ2VUd29GZWF0dXJlUmVzdWx0czxGaXJzdCwgU2Vjb25kPiwgLi4uUmVzdF0+XG4gIDogbmV2ZXI7XG5cbnR5cGUgRmVhdHVyZVJlc3VsdEtleXM8RmVhdHVyZVJlc3VsdCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4gPVxuICB8IGtleW9mIEZlYXR1cmVSZXN1bHRbJ3N0YXRlJ11cbiAgfCBrZXlvZiBGZWF0dXJlUmVzdWx0WydzaWduYWxzJ11cbiAgfCBrZXlvZiBGZWF0dXJlUmVzdWx0WydtZXRob2RzJ107XG5cbnR5cGUgTWVyZ2VUd29GZWF0dXJlUmVzdWx0czxcbiAgRmlyc3QgZXh0ZW5kcyBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG4gIFNlY29uZCBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdFxuPiA9IHtcbiAgc3RhdGU6IE9taXQ8Rmlyc3RbJ3N0YXRlJ10sIEZlYXR1cmVSZXN1bHRLZXlzPFNlY29uZD4+O1xuICBzaWduYWxzOiBPbWl0PEZpcnN0WydzaWduYWxzJ10sIEZlYXR1cmVSZXN1bHRLZXlzPFNlY29uZD4+O1xuICBtZXRob2RzOiBPbWl0PEZpcnN0WydtZXRob2RzJ10sIEZlYXR1cmVSZXN1bHRLZXlzPFNlY29uZD4+O1xufSAmIFNlY29uZDtcbiJdfQ==
|
|
@@ -26,10 +26,10 @@ export function signalStore(...args) {
|
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0
|
|
30
|
-
/** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0
|
|
29
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: SignalStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
30
|
+
/** @nocollapse */ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: SignalStore, providedIn: config.providedIn || null });
|
|
31
31
|
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0", ngImport: i0, type: SignalStore, decorators: [{
|
|
33
33
|
type: Injectable,
|
|
34
34
|
args: [{ providedIn: config.providedIn || null }]
|
|
35
35
|
}], ctorParameters: () => [] });
|
|
@@ -44,4 +44,4 @@ export function getInitialInnerStore() {
|
|
|
44
44
|
hooks: {},
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsLXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kdWxlcy9zaWduYWxzL3NyYy9zaWduYWwtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDVixNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsRUFDUixxQkFBcUIsRUFDckIsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFrUTlDLE1BQU0sVUFBVSxXQUFXLENBQ3pCLEdBQUcsSUFBeUU7SUFFNUUsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBRWxDLE1BQU0sTUFBTSxHQUNWLFlBQVksSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBRSxlQUFlLENBQUMsS0FBSyxFQUF3QjtRQUNoRCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1QsTUFBTSxRQUFRLEdBQUcsZUFBdUMsQ0FBQztJQUV6RCxNQUNNLFdBQVc7UUFDZjtZQUNFLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQ2hDLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUNsQyxvQkFBb0IsRUFBRSxDQUN2QixDQUFDO1lBQ0YsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFFbkQsSUFBWSxDQUFDLFlBQVksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUV2RCxLQUFLLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBRTtnQkFDdEIsSUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNqQztZQUVELElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDaEIsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2hCO1lBRUQsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO2dCQUNuQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWxDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO29CQUNoQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFNBQVUsQ0FBQyxDQUFDO2dCQUNwRCxDQUFDLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQztxSUExQkcsV0FBVzt5SUFBWCxXQUFXLGNBRFMsTUFBTSxDQUFDLFVBQVUsSUFBSSxJQUFJOztzR0FDN0MsV0FBVztzQkFEaEIsVUFBVTt1QkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxJQUFJLElBQUksRUFBRTs7SUE4QnJELE9BQU8sV0FBVyxDQUFDO0NBQ3BCO0FBRUQsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxPQUFPO1FBQ0wsQ0FBQyxZQUFZLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxFQUFFO1FBQ1YsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsRUFBRTtRQUNYLEtBQUssRUFBRSxFQUFFO0tBQ1YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEZXN0cm95UmVmLFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIEluamVjdG9yLFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIHNpZ25hbCxcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTVEFURV9TSUdOQUwgfSBmcm9tICcuL3NpZ25hbC1zdGF0ZSc7XG5pbXBvcnQge1xuICBFbXB0eUZlYXR1cmVSZXN1bHQsXG4gIElubmVyU2lnbmFsU3RvcmUsXG4gIE1lcmdlRmVhdHVyZVJlc3VsdHMsXG4gIFNpZ25hbFN0b3JlLFxuICBTaWduYWxTdG9yZUNvbmZpZyxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlLFxuICBTaWduYWxTdG9yZUZlYXR1cmVSZXN1bHQsXG59IGZyb20gJy4vc2lnbmFsLXN0b3JlLW1vZGVscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzaWduYWxTdG9yZTxGMSBleHRlbmRzIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdD4oXG4gIGYxOiBTaWduYWxTdG9yZUZlYXR1cmU8RW1wdHlGZWF0dXJlUmVzdWx0LCBGMT5cbik6IFR5cGU8U2lnbmFsU3RvcmU8RjE+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,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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHMtaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvdHMtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgUHJldHRpZnk8VD4gPSB7IFtLIGluIGtleW9mIFRdOiBUW0tdIH0gJiB7fTtcblxuZXhwb3J0IHR5cGUgSXNSZWNvcmQ8VD4gPSBUIGV4dGVuZHMgb2JqZWN0XG4gID8gVCBleHRlbmRzIHVua25vd25bXVxuICAgID8gZmFsc2VcbiAgICA6IFQgZXh0ZW5kcyBTZXQ8dW5rbm93bj5cbiAgICA/IGZhbHNlXG4gICAgOiBUIGV4dGVuZHMgTWFwPHVua25vd24sIHVua25vd24+XG4gICAgPyBmYWxzZVxuICAgIDogVCBleHRlbmRzIEZ1bmN0aW9uXG4gICAgPyBmYWxzZVxuICAgIDogdHJ1ZVxuICA6IGZhbHNlO1xuXG5leHBvcnQgdHlwZSBJc1Vua25vd25SZWNvcmQ8VD4gPSBzdHJpbmcgZXh0ZW5kcyBrZXlvZiBUXG4gID8gdHJ1ZVxuICA6IG51bWJlciBleHRlbmRzIGtleW9mIFRcbiAgPyB0cnVlXG4gIDogZmFsc2U7XG5cbmV4cG9ydCB0eXBlIElzS25vd25SZWNvcmQ8VD4gPSBJc1JlY29yZDxUPiBleHRlbmRzIHRydWVcbiAgPyBJc1Vua25vd25SZWNvcmQ8VD4gZXh0ZW5kcyB0cnVlXG4gICAgPyBmYWxzZVxuICAgIDogdHJ1ZVxuICA6IGZhbHNlO1xuIl19
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZHVsZXMvc2lnbmFscy9zcmMvd2l0aC1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFxQjlDLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLGNBQXFDO0lBS3JDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNmLE1BQU0sS0FBSyxHQUNULE9BQU8sY0FBYyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztRQUMzRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsR0FBRyxZQUFZO1lBQ2YsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDLENBQUM7UUFFSixNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQzNDLE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FDcEIsR0FBRyxFQUFFLENBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUE4QixDQUFDLEdBQUcsQ0FBQyxDQUM5RCxDQUFDO1lBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDaEQsQ0FBQyxFQUFFLEVBQXVCLENBQUMsQ0FBQztRQUM1QixNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN0RCxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUV0RCxPQUFPO1lBQ0wsR0FBRyxLQUFLO1lBQ1IsTUFBTSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsTUFBTSxFQUFFO1lBQ3RDLE9BQU87WUFDUCxPQUFPO1NBQ21CLENBQUM7SUFDL0IsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b0RlZXBTaWduYWwgfSBmcm9tICcuL2RlZXAtc2lnbmFsJztcbmltcG9ydCB7IGV4Y2x1ZGVLZXlzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IFNUQVRFX1NJR05BTCB9IGZyb20gJy4vc2lnbmFsLXN0YXRlJztcbmltcG9ydCB7XG4gIEVtcHR5RmVhdHVyZVJlc3VsdCxcbiAgSW5uZXJTaWduYWxTdG9yZSxcbiAgU2lnbmFsc0RpY3Rpb25hcnksXG4gIFNpZ25hbFN0b3JlRmVhdHVyZSxcbiAgU2lnbmFsU3RvcmVGZWF0dXJlUmVzdWx0LFxufSBmcm9tICcuL3NpZ25hbC1zdG9yZS1tb2RlbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gd2l0aFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgc3RhdGVGYWN0b3J5OiAoKSA9PiBTdGF0ZVxuKTogU2lnbmFsU3RvcmVGZWF0dXJlPFxuICBFbXB0eUZlYXR1cmVSZXN1bHQsXG4gIEVtcHR5RmVhdHVyZVJlc3VsdCAmIHsgc3RhdGU6IFN0YXRlIH1cbj47XG5leHBvcnQgZnVuY3Rpb24gd2l0aFN0YXRlPFN0YXRlIGV4dGVuZHMgb2JqZWN0PihcbiAgc3RhdGU6IFN0YXRlXG4pOiBTaWduYWxTdG9yZUZlYXR1cmU8XG4gIEVtcHR5RmVhdHVyZVJlc3VsdCxcbiAgRW1wdHlGZWF0dXJlUmVzdWx0ICYgeyBzdGF0ZTogU3RhdGUgfVxuPjtcbmV4cG9ydCBmdW5jdGlvbiB3aXRoU3RhdGU8U3RhdGUgZXh0ZW5kcyBvYmplY3Q+KFxuICBzdGF0ZU9yRmFjdG9yeTogU3RhdGUgfCAoKCkgPT4gU3RhdGUpXG4pOiBTaWduYWxTdG9yZUZlYXR1cmU8XG4gIFNpZ25hbFN0b3JlRmVhdHVyZVJlc3VsdCxcbiAgRW1wdHlGZWF0dXJlUmVzdWx0ICYgeyBzdGF0ZTogU3RhdGUgfVxuPiB7XG4gIHJldHVybiAoc3RvcmUpID0+IHtcbiAgICBjb25zdCBzdGF0ZSA9XG4gICAgICB0eXBlb2Ygc3RhdGVPckZhY3RvcnkgPT09ICdmdW5jdGlvbicgPyBzdGF0ZU9yRmFjdG9yeSgpIDogc3RhdGVPckZhY3Rvcnk7XG4gICAgY29uc3Qgc3RhdGVLZXlzID0gT2JqZWN0LmtleXMoc3RhdGUpO1xuXG4gICAgc3RvcmVbU1RBVEVfU0lHTkFMXS51cGRhdGUoKGN1cnJlbnRTdGF0ZSkgPT4gKHtcbiAgICAgIC4uLmN1cnJlbnRTdGF0ZSxcbiAgICAgIC4uLnN0YXRlLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IHNsaWNlcyA9IHN0YXRlS2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiB7XG4gICAgICBjb25zdCBzbGljZSA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiAoc3RvcmVbU1RBVEVfU0lHTkFMXSgpIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KVtrZXldXG4gICAgICApO1xuICAgICAgcmV0dXJuIHsgLi4uYWNjLCBba2V5XTogdG9EZWVwU2lnbmFsKHNsaWNlKSB9O1xuICAgIH0sIHt9IGFzIFNpZ25hbHNEaWN0aW9uYXJ5KTtcbiAgICBjb25zdCBzaWduYWxzID0gZXhjbHVkZUtleXMoc3RvcmUuc2lnbmFscywgc3RhdGVLZXlzKTtcbiAgICBjb25zdCBtZXRob2RzID0gZXhjbHVkZUtleXMoc3RvcmUubWV0aG9kcywgc3RhdGVLZXlzKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5zdG9yZSxcbiAgICAgIHNsaWNlczogeyAuLi5zdG9yZS5zbGljZXMsIC4uLnNsaWNlcyB9LFxuICAgICAgc2lnbmFscyxcbiAgICAgIG1ldGhvZHMsXG4gICAgfSBhcyBJbm5lclNpZ25hbFN0b3JlPFN0YXRlPjtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import { computed } from '@angular/core';
|
|
2
|
+
import { withState, withComputed, signalStoreFeature } from '@ngrx/signals';
|
|
3
|
+
|
|
4
|
+
var DidMutate;
|
|
5
|
+
(function (DidMutate) {
|
|
6
|
+
DidMutate[DidMutate["None"] = 0] = "None";
|
|
7
|
+
DidMutate[DidMutate["Entities"] = 1] = "Entities";
|
|
8
|
+
DidMutate[DidMutate["Both"] = 2] = "Both";
|
|
9
|
+
})(DidMutate || (DidMutate = {}));
|
|
10
|
+
|
|
11
|
+
function getEntityIdKey(config) {
|
|
12
|
+
return config?.idKey ?? 'id';
|
|
13
|
+
}
|
|
14
|
+
function getEntityStateKeys(config) {
|
|
15
|
+
const collection = config?.collection;
|
|
16
|
+
const entityMapKey = collection === undefined ? 'entityMap' : `${collection}EntityMap`;
|
|
17
|
+
const idsKey = collection === undefined ? 'ids' : `${collection}Ids`;
|
|
18
|
+
const entitiesKey = collection === undefined ? 'entities' : `${collection}Entities`;
|
|
19
|
+
return { entityMapKey, idsKey, entitiesKey };
|
|
20
|
+
}
|
|
21
|
+
function cloneEntityState(state, stateKeys) {
|
|
22
|
+
return {
|
|
23
|
+
entityMap: { ...state[stateKeys.entityMapKey] },
|
|
24
|
+
ids: [...state[stateKeys.idsKey]],
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function getEntityUpdaterResult(state, stateKeys, didMutate) {
|
|
28
|
+
switch (didMutate) {
|
|
29
|
+
case DidMutate.Both: {
|
|
30
|
+
return {
|
|
31
|
+
[stateKeys.entityMapKey]: state.entityMap,
|
|
32
|
+
[stateKeys.idsKey]: state.ids,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
case DidMutate.Entities: {
|
|
36
|
+
return { [stateKeys.entityMapKey]: state.entityMap };
|
|
37
|
+
}
|
|
38
|
+
default: {
|
|
39
|
+
return {};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function addEntityMutably(state, entity, idKey) {
|
|
44
|
+
const id = entity[idKey];
|
|
45
|
+
if (state.entityMap[id]) {
|
|
46
|
+
return DidMutate.None;
|
|
47
|
+
}
|
|
48
|
+
state.entityMap[id] = entity;
|
|
49
|
+
state.ids.push(id);
|
|
50
|
+
return DidMutate.Both;
|
|
51
|
+
}
|
|
52
|
+
function addEntitiesMutably(state, entities, idKey) {
|
|
53
|
+
let didMutate = DidMutate.None;
|
|
54
|
+
for (const entity of entities) {
|
|
55
|
+
const result = addEntityMutably(state, entity, idKey);
|
|
56
|
+
if (result === DidMutate.Both) {
|
|
57
|
+
didMutate = result;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return didMutate;
|
|
61
|
+
}
|
|
62
|
+
function setEntityMutably(state, entity, idKey) {
|
|
63
|
+
const id = entity[idKey];
|
|
64
|
+
if (state.entityMap[id]) {
|
|
65
|
+
state.entityMap[id] = entity;
|
|
66
|
+
return DidMutate.Entities;
|
|
67
|
+
}
|
|
68
|
+
state.entityMap[id] = entity;
|
|
69
|
+
state.ids.push(id);
|
|
70
|
+
return DidMutate.Both;
|
|
71
|
+
}
|
|
72
|
+
function setEntitiesMutably(state, entities, idKey) {
|
|
73
|
+
let didMutate = DidMutate.None;
|
|
74
|
+
for (const entity of entities) {
|
|
75
|
+
const result = setEntityMutably(state, entity, idKey);
|
|
76
|
+
if (didMutate === DidMutate.Both) {
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
didMutate = result;
|
|
80
|
+
}
|
|
81
|
+
return didMutate;
|
|
82
|
+
}
|
|
83
|
+
function removeEntitiesMutably(state, idsOrPredicate) {
|
|
84
|
+
const ids = Array.isArray(idsOrPredicate)
|
|
85
|
+
? idsOrPredicate
|
|
86
|
+
: state.ids.filter((id) => idsOrPredicate(state.entityMap[id]));
|
|
87
|
+
let didMutate = DidMutate.None;
|
|
88
|
+
for (const id of ids) {
|
|
89
|
+
if (state.entityMap[id]) {
|
|
90
|
+
delete state.entityMap[id];
|
|
91
|
+
didMutate = DidMutate.Both;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
if (didMutate === DidMutate.Both) {
|
|
95
|
+
state.ids = state.ids.filter((id) => id in state.entityMap);
|
|
96
|
+
}
|
|
97
|
+
return didMutate;
|
|
98
|
+
}
|
|
99
|
+
function updateEntitiesMutably(state, idsOrPredicate, changes) {
|
|
100
|
+
const ids = Array.isArray(idsOrPredicate)
|
|
101
|
+
? idsOrPredicate
|
|
102
|
+
: state.ids.filter((id) => idsOrPredicate(state.entityMap[id]));
|
|
103
|
+
let didMutate = DidMutate.None;
|
|
104
|
+
for (const id of ids) {
|
|
105
|
+
const entity = state.entityMap[id];
|
|
106
|
+
if (entity) {
|
|
107
|
+
const changesRecord = typeof changes === 'function' ? changes(entity) : changes;
|
|
108
|
+
state.entityMap[id] = { ...entity, ...changesRecord };
|
|
109
|
+
didMutate = DidMutate.Entities;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return didMutate;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function addEntity(entity, config) {
|
|
116
|
+
const idKey = getEntityIdKey(config);
|
|
117
|
+
const stateKeys = getEntityStateKeys(config);
|
|
118
|
+
return (state) => {
|
|
119
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
120
|
+
const didMutate = addEntityMutably(clonedState, entity, idKey);
|
|
121
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
function addEntities(entities, config) {
|
|
126
|
+
const idKey = getEntityIdKey(config);
|
|
127
|
+
const stateKeys = getEntityStateKeys(config);
|
|
128
|
+
return (state) => {
|
|
129
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
130
|
+
const didMutate = addEntitiesMutably(clonedState, entities, idKey);
|
|
131
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
function removeEntity(id, config) {
|
|
136
|
+
const stateKeys = getEntityStateKeys(config);
|
|
137
|
+
return (state) => {
|
|
138
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
139
|
+
const didMutate = removeEntitiesMutably(clonedState, [id]);
|
|
140
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function removeEntities(idsOrPredicate, config) {
|
|
145
|
+
const stateKeys = getEntityStateKeys(config);
|
|
146
|
+
return (state) => {
|
|
147
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
148
|
+
const didMutate = removeEntitiesMutably(clonedState, idsOrPredicate);
|
|
149
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
function removeAllEntities(config) {
|
|
154
|
+
const stateKeys = getEntityStateKeys(config);
|
|
155
|
+
return () => ({
|
|
156
|
+
[stateKeys.entityMapKey]: {},
|
|
157
|
+
[stateKeys.idsKey]: [],
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
function setEntity(entity, config) {
|
|
162
|
+
const idKey = getEntityIdKey(config);
|
|
163
|
+
const stateKeys = getEntityStateKeys(config);
|
|
164
|
+
return (state) => {
|
|
165
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
166
|
+
const didMutate = setEntityMutably(clonedState, entity, idKey);
|
|
167
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
function setEntities(entities, config) {
|
|
172
|
+
const idKey = getEntityIdKey(config);
|
|
173
|
+
const stateKeys = getEntityStateKeys(config);
|
|
174
|
+
return (state) => {
|
|
175
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
176
|
+
const didMutate = setEntitiesMutably(clonedState, entities, idKey);
|
|
177
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function setAllEntities(entities, config) {
|
|
182
|
+
const idKey = getEntityIdKey(config);
|
|
183
|
+
const stateKeys = getEntityStateKeys(config);
|
|
184
|
+
return () => {
|
|
185
|
+
const state = { entityMap: {}, ids: [] };
|
|
186
|
+
setEntitiesMutably(state, entities, idKey);
|
|
187
|
+
return {
|
|
188
|
+
[stateKeys.entityMapKey]: state.entityMap,
|
|
189
|
+
[stateKeys.idsKey]: state.ids,
|
|
190
|
+
};
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function updateEntity(update, config) {
|
|
195
|
+
const stateKeys = getEntityStateKeys(config);
|
|
196
|
+
return (state) => {
|
|
197
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
198
|
+
const didMutate = updateEntitiesMutably(clonedState, [update.id], update.changes);
|
|
199
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
function updateEntities(update, config) {
|
|
204
|
+
const stateKeys = getEntityStateKeys(config);
|
|
205
|
+
const idsOrPredicate = 'ids' in update ? update.ids : update.predicate;
|
|
206
|
+
return (state) => {
|
|
207
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
208
|
+
const didMutate = updateEntitiesMutably(clonedState, idsOrPredicate, update.changes);
|
|
209
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
function updateAllEntities(changes, config) {
|
|
214
|
+
const stateKeys = getEntityStateKeys(config);
|
|
215
|
+
return (state) => {
|
|
216
|
+
const clonedState = cloneEntityState(state, stateKeys);
|
|
217
|
+
const didMutate = updateEntitiesMutably(clonedState, state[stateKeys.idsKey], changes);
|
|
218
|
+
return getEntityUpdaterResult(clonedState, stateKeys, didMutate);
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
function withEntities(config) {
|
|
223
|
+
const { entityMapKey, idsKey, entitiesKey } = getEntityStateKeys(config);
|
|
224
|
+
return signalStoreFeature(withState({
|
|
225
|
+
[entityMapKey]: {},
|
|
226
|
+
[idsKey]: [],
|
|
227
|
+
}), withComputed((store) => ({
|
|
228
|
+
[entitiesKey]: computed(() => {
|
|
229
|
+
const entityMap = store[entityMapKey]();
|
|
230
|
+
const ids = store[idsKey]();
|
|
231
|
+
return ids.map((id) => entityMap[id]);
|
|
232
|
+
}),
|
|
233
|
+
})));
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* Generated bundle index. Do not edit.
|
|
238
|
+
*/
|
|
239
|
+
|
|
240
|
+
export { addEntities, addEntity, removeAllEntities, removeEntities, removeEntity, setAllEntities, setEntities, setEntity, updateAllEntities, updateEntities, updateEntity, withEntities };
|
|
241
|
+
//# sourceMappingURL=ngrx-signals-entities.mjs.map
|