@ngxs/store 3.8.2-dev.master-0fd1fe5 → 3.8.2
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/bundles/ngxs-store-internals-testing.umd.js +684 -0
- package/bundles/ngxs-store-internals-testing.umd.js.map +1 -0
- package/bundles/ngxs-store-internals.umd.js +141 -0
- package/bundles/ngxs-store-internals.umd.js.map +1 -0
- package/bundles/ngxs-store-operators.umd.js +224 -0
- package/bundles/ngxs-store-operators.umd.js.map +1 -0
- package/bundles/ngxs-store.umd.js +3076 -0
- package/bundles/ngxs-store.umd.js.map +1 -0
- package/esm2015/internals/index.js +5 -0
- package/esm2015/internals/initial-state.js +17 -0
- package/esm2015/internals/internal-tokens.js +5 -0
- package/{esm2020/internals/ngxs-bootstrapper.mjs → esm2015/internals/ngxs-bootstrapper.js} +4 -4
- package/esm2015/internals/src/symbols.js +2 -0
- package/esm2015/internals/symbols.js +2 -0
- package/esm2015/internals/testing/fresh-platform.js +70 -0
- package/{esm2020/internals/testing/helpers/ngxs-test.component.mjs → esm2015/internals/testing/helpers/ngxs-test.component.js} +4 -4
- package/esm2015/internals/testing/helpers/ngxs-test.module.js +21 -0
- package/{esm2020/internals/testing/ngxs.setup.mjs → esm2015/internals/testing/ngxs.setup.js} +2 -4
- package/esm2015/internals/testing/symbol.js +2 -0
- package/esm2015/operators/patch.js +21 -0
- package/{esm2020/src/actions-stream.mjs → esm2015/src/actions-stream.js} +7 -7
- package/esm2015/src/configs/messages.config.js +36 -0
- package/{esm2020/src/decorators/select/select-factory.mjs → esm2015/src/decorators/select/select-factory.js} +4 -4
- package/esm2015/src/decorators/selector/selector.js +32 -0
- package/esm2015/src/decorators/state.js +36 -0
- package/{esm2020/src/dev-features/ngxs-development.module.mjs → esm2015/src/dev-features/ngxs-development.module.js} +5 -5
- package/{esm2020/src/dev-features/ngxs-unhandled-actions-logger.mjs → esm2015/src/dev-features/ngxs-unhandled-actions-logger.js} +4 -4
- package/{esm2020/src/execution/dispatch-outside-zone-ngxs-execution-strategy.mjs → esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js} +4 -4
- package/{esm2020/src/execution/internal-ngxs-execution-strategy.mjs → esm2015/src/execution/internal-ngxs-execution-strategy.js} +4 -4
- package/{esm2020/src/execution/noop-ngxs-execution-strategy.mjs → esm2015/src/execution/noop-ngxs-execution-strategy.js} +4 -4
- package/esm2015/src/execution/symbols.js +23 -0
- package/{esm2020/src/internal/dispatcher.mjs → esm2015/src/internal/dispatcher.js} +11 -11
- package/{esm2020/src/internal/error-handler.mjs → esm2015/src/internal/error-handler.js} +5 -5
- package/esm2015/src/internal/internals.js +248 -0
- package/esm2015/src/internal/lifecycle-state-manager.js +79 -0
- package/{esm2020/src/internal/state-context-factory.mjs → esm2015/src/internal/state-context-factory.js} +4 -4
- package/esm2015/src/internal/state-factory.js +288 -0
- package/{esm2020/src/internal/state-operations.mjs → esm2015/src/internal/state-operations.js} +5 -5
- package/esm2015/src/internal/state-operators.js +20 -0
- package/esm2015/src/internal/state-stream.js +25 -0
- package/{esm2020/src/ivy/ivy-enabled-in-dev-mode.mjs → esm2015/src/ivy/ivy-enabled-in-dev-mode.js} +2 -2
- package/esm2015/src/module.js +88 -0
- package/esm2015/src/modules/ngxs-feature.module.js +45 -0
- package/esm2015/src/modules/ngxs-root.module.js +41 -0
- package/{esm2020/src/operators/of-action.mjs → esm2015/src/operators/of-action.js} +10 -10
- package/{esm2020/src/plugin-manager.mjs → esm2015/src/plugin-manager.js} +4 -4
- package/esm2015/src/public_api.js +27 -0
- package/esm2015/src/selectors/create-property-selectors.js +20 -0
- package/esm2015/src/selectors/selector-metadata.js +30 -0
- package/esm2015/src/selectors/selector-types.util.js +2 -0
- package/{esm2020/src/store.mjs → esm2015/src/store.js} +5 -6
- package/esm2015/src/symbols.js +58 -0
- package/esm2015/src/utils/utils.js +92 -0
- package/fesm2015/{ngxs-store-internals-testing.mjs → ngxs-store-internals-testing.js} +13 -19
- package/fesm2015/ngxs-store-internals-testing.js.map +1 -0
- package/{fesm2020/ngxs-store-internals.mjs → fesm2015/ngxs-store-internals.js} +8 -21
- package/fesm2015/ngxs-store-internals.js.map +1 -0
- package/fesm2015/{ngxs-store-operators.mjs → ngxs-store-operators.js} +1 -1
- package/fesm2015/ngxs-store-operators.js.map +1 -0
- package/{fesm2020/ngxs-store.mjs → fesm2015/ngxs-store.js} +1029 -1192
- package/fesm2015/ngxs-store.js.map +1 -0
- package/internals/index.d.ts +1 -1
- package/internals/initial-state.d.ts +1 -1
- package/internals/ngxs-store-internals.d.ts +5 -0
- package/internals/package.json +10 -0
- package/internals/src/symbols.d.ts +1 -4
- package/internals/symbols.d.ts +1 -4
- package/internals/testing/helpers/ngxs-test.component.d.ts +1 -1
- package/internals/testing/ngxs-store-internals-testing.d.ts +5 -0
- package/internals/testing/package.json +10 -0
- package/internals/testing/symbol.d.ts +2 -2
- package/ngxs-store.d.ts +5 -0
- package/operators/ngxs-store-operators.d.ts +5 -0
- package/operators/package.json +10 -0
- package/package.json +11 -48
- package/src/configs/messages.config.d.ts +0 -2
- package/src/decorators/state.d.ts +2 -2
- package/src/execution/symbols.d.ts +2 -8
- package/src/internal/internals.d.ts +5 -5
- package/src/internal/lifecycle-state-manager.d.ts +1 -3
- package/src/module.d.ts +14 -3
- package/src/modules/ngxs-feature.module.d.ts +9 -2
- package/src/modules/ngxs-root.module.d.ts +9 -2
- package/src/public_api.d.ts +4 -5
- package/src/selectors/selector-types.util.d.ts +3 -3
- package/src/symbols.d.ts +8 -5
- package/esm2020/internals/index.mjs +0 -6
- package/esm2020/internals/initial-state.mjs +0 -18
- package/esm2020/internals/internal-tokens.mjs +0 -6
- package/esm2020/internals/src/symbols.mjs +0 -11
- package/esm2020/internals/symbols.mjs +0 -11
- package/esm2020/internals/testing/fresh-platform.mjs +0 -72
- package/esm2020/internals/testing/helpers/ngxs-test.module.mjs +0 -20
- package/esm2020/internals/testing/symbol.mjs +0 -2
- package/esm2020/operators/patch.mjs +0 -21
- package/esm2020/src/configs/messages.config.mjs +0 -48
- package/esm2020/src/decorators/selector/selector.mjs +0 -32
- package/esm2020/src/decorators/state.mjs +0 -36
- package/esm2020/src/execution/symbols.mjs +0 -27
- package/esm2020/src/internal/internals.mjs +0 -248
- package/esm2020/src/internal/lifecycle-state-manager.mjs +0 -97
- package/esm2020/src/internal/state-factory.mjs +0 -292
- package/esm2020/src/internal/state-operators.mjs +0 -20
- package/esm2020/src/internal/state-stream.mjs +0 -27
- package/esm2020/src/module.mjs +0 -27
- package/esm2020/src/modules/ngxs-feature.module.mjs +0 -18
- package/esm2020/src/modules/ngxs-root.module.mjs +0 -18
- package/esm2020/src/public_api.mjs +0 -28
- package/esm2020/src/selectors/create-property-selectors.mjs +0 -20
- package/esm2020/src/selectors/selector-metadata.mjs +0 -35
- package/esm2020/src/selectors/selector-types.util.mjs +0 -2
- package/esm2020/src/standalone-features/feature-providers.mjs +0 -20
- package/esm2020/src/standalone-features/index.mjs +0 -4
- package/esm2020/src/standalone-features/initializers.mjs +0 -86
- package/esm2020/src/standalone-features/plugin.mjs +0 -20
- package/esm2020/src/standalone-features/provide-states.mjs +0 -26
- package/esm2020/src/standalone-features/provide-store.mjs +0 -26
- package/esm2020/src/standalone-features/root-providers.mjs +0 -47
- package/esm2020/src/symbols.mjs +0 -65
- package/esm2020/src/utils/utils.mjs +0 -92
- package/fesm2015/ngxs-store-internals-testing.mjs.map +0 -1
- package/fesm2015/ngxs-store-internals.mjs +0 -114
- package/fesm2015/ngxs-store-internals.mjs.map +0 -1
- package/fesm2015/ngxs-store-operators.mjs.map +0 -1
- package/fesm2015/ngxs-store.mjs +0 -2454
- package/fesm2015/ngxs-store.mjs.map +0 -1
- package/fesm2020/ngxs-store-internals-testing.mjs +0 -180
- package/fesm2020/ngxs-store-internals-testing.mjs.map +0 -1
- package/fesm2020/ngxs-store-internals.mjs.map +0 -1
- package/fesm2020/ngxs-store-operators.mjs +0 -202
- package/fesm2020/ngxs-store-operators.mjs.map +0 -1
- package/fesm2020/ngxs-store.mjs.map +0 -1
- package/schematics/collection.json +0 -36
- package/schematics/src/actions/actions.factory.d.ts +0 -3
- package/schematics/src/actions/actions.factory.js +0 -22
- package/schematics/src/actions/actions.factory.js.map +0 -1
- package/schematics/src/actions/files/__name__.actions.ts__template__ +0 -4
- package/schematics/src/actions/schema.json +0 -28
- package/schematics/src/ng-add/add-declaration.d.ts +0 -4
- package/schematics/src/ng-add/add-declaration.js +0 -109
- package/schematics/src/ng-add/add-declaration.js.map +0 -1
- package/schematics/src/ng-add/ng-add.factory.d.ts +0 -9
- package/schematics/src/ng-add/ng-add.factory.js +0 -86
- package/schematics/src/ng-add/ng-add.factory.js.map +0 -1
- package/schematics/src/ng-add/schema.json +0 -72
- package/schematics/src/starter-kit/files/store/auth/auth.actions.ts__template__ +0 -7
- package/schematics/src/starter-kit/files/store/auth/auth.state.spec.ts__template__ +0 -46
- package/schematics/src/starter-kit/files/store/auth/auth.state.ts__template__ +0 -45
- package/schematics/src/starter-kit/files/store/dashboard/index.ts__template__ +0 -11
- package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.actions.ts__template__ +0 -13
- package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.state.spec.ts__template__ +0 -77
- package/schematics/src/starter-kit/files/store/dashboard/states/dictionary/dictionary.state.ts__template__ +0 -60
- package/schematics/src/starter-kit/files/store/dashboard/states/user/user.actions.ts__template__ +0 -6
- package/schematics/src/starter-kit/files/store/dashboard/states/user/user.state.spec.ts__template__ +0 -54
- package/schematics/src/starter-kit/files/store/dashboard/states/user/user.state.ts__template__ +0 -40
- package/schematics/src/starter-kit/files/store/store.config.ts__template__ +0 -38
- package/schematics/src/starter-kit/files/store/store.module.ts__template__ +0 -22
- package/schematics/src/starter-kit/schema.json +0 -18
- package/schematics/src/starter-kit/starter-kit.factory.d.ts +0 -3
- package/schematics/src/starter-kit/starter-kit.factory.js +0 -12
- package/schematics/src/starter-kit/starter-kit.factory.js.map +0 -1
- package/schematics/src/state/files/__name__.state.spec.ts__template__ +0 -22
- package/schematics/src/state/files/__name__.state.ts__template__ +0 -20
- package/schematics/src/state/schema.json +0 -33
- package/schematics/src/state/state.factory.d.ts +0 -3
- package/schematics/src/state/state.factory.js +0 -20
- package/schematics/src/state/state.factory.js.map +0 -1
- package/schematics/src/store/files/__name__.actions.ts__template__ +0 -4
- package/schematics/src/store/files/__name__.state.spec.ts__template__ +0 -24
- package/schematics/src/store/files/__name__.state.ts__template__ +0 -27
- package/schematics/src/store/schema.json +0 -33
- package/schematics/src/store/store.factory.d.ts +0 -3
- package/schematics/src/store/store.factory.js +0 -20
- package/schematics/src/store/store.factory.js.map +0 -1
- package/schematics/src/utils/common/lib.config.d.ts +0 -10
- package/schematics/src/utils/common/lib.config.js +0 -15
- package/schematics/src/utils/common/lib.config.js.map +0 -1
- package/schematics/src/utils/common/project-files.config.d.ts +0 -3
- package/schematics/src/utils/common/project-files.config.js +0 -7
- package/schematics/src/utils/common/project-files.config.js.map +0 -1
- package/schematics/src/utils/common/properties.d.ts +0 -1
- package/schematics/src/utils/common/properties.js +0 -8
- package/schematics/src/utils/common/properties.js.map +0 -1
- package/schematics/src/utils/config.d.ts +0 -119
- package/schematics/src/utils/config.js +0 -21
- package/schematics/src/utils/config.js.map +0 -1
- package/schematics/src/utils/generate-utils.d.ts +0 -4
- package/schematics/src/utils/generate-utils.js +0 -14
- package/schematics/src/utils/generate-utils.js.map +0 -1
- package/schematics/src/utils/interfaces/package.interface.d.ts +0 -7
- package/schematics/src/utils/interfaces/package.interface.js +0 -3
- package/schematics/src/utils/interfaces/package.interface.js.map +0 -1
- package/schematics/src/utils/ng-utils/README.md +0 -1
- package/schematics/src/utils/ng-utils/ast-utils.d.ts +0 -99
- package/schematics/src/utils/ng-utils/ast-utils.js +0 -517
- package/schematics/src/utils/ng-utils/ast-utils.js.map +0 -1
- package/schematics/src/utils/ng-utils/ng-ast-utils.d.ts +0 -5
- package/schematics/src/utils/ng-utils/ng-ast-utils.js +0 -67
- package/schematics/src/utils/ng-utils/ng-ast-utils.js.map +0 -1
- package/schematics/src/utils/ng-utils/project.d.ts +0 -2
- package/schematics/src/utils/ng-utils/project.js +0 -21
- package/schematics/src/utils/ng-utils/project.js.map +0 -1
- package/schematics/src/utils/ng-utils/standalone/app_config.d.ts +0 -16
- package/schematics/src/utils/ng-utils/standalone/app_config.js +0 -84
- package/schematics/src/utils/ng-utils/standalone/app_config.js.map +0 -1
- package/schematics/src/utils/ng-utils/standalone/code_block.d.ts +0 -46
- package/schematics/src/utils/ng-utils/standalone/code_block.js +0 -73
- package/schematics/src/utils/ng-utils/standalone/code_block.js.map +0 -1
- package/schematics/src/utils/ng-utils/standalone/index.d.ts +0 -1
- package/schematics/src/utils/ng-utils/standalone/index.js +0 -7
- package/schematics/src/utils/ng-utils/standalone/index.js.map +0 -1
- package/schematics/src/utils/ng-utils/standalone/rules.d.ts +0 -38
- package/schematics/src/utils/ng-utils/standalone/rules.js +0 -195
- package/schematics/src/utils/ng-utils/standalone/rules.js.map +0 -1
- package/schematics/src/utils/ng-utils/standalone/util.d.ts +0 -28
- package/schematics/src/utils/ng-utils/standalone/util.js +0 -138
- package/schematics/src/utils/ng-utils/standalone/util.js.map +0 -1
- package/schematics/src/utils/normalize-options.d.ts +0 -9
- package/schematics/src/utils/normalize-options.js +0 -24
- package/schematics/src/utils/normalize-options.js.map +0 -1
- package/schematics/src/utils/project.d.ts +0 -16
- package/schematics/src/utils/project.js +0 -40
- package/schematics/src/utils/project.js.map +0 -1
- package/schematics/src/utils/versions.json +0 -3
- package/src/standalone-features/feature-providers.d.ts +0 -7
- package/src/standalone-features/index.d.ts +0 -3
- package/src/standalone-features/initializers.d.ts +0 -29
- package/src/standalone-features/plugin.d.ts +0 -17
- package/src/standalone-features/provide-states.d.ts +0 -18
- package/src/standalone-features/provide-store.d.ts +0 -22
- package/src/standalone-features/root-providers.d.ts +0 -8
- /package/{esm2020/index.mjs → esm2015/index.js} +0 -0
- /package/{esm2020/internals/memoize.mjs → esm2015/internals/memoize.js} +0 -0
- /package/{esm2020/internals/ngxs-store-internals.mjs → esm2015/internals/ngxs-store-internals.js} +0 -0
- /package/{esm2020/internals/testing/index.mjs → esm2015/internals/testing/index.js} +0 -0
- /package/{esm2020/internals/testing/ngxs-store-internals-testing.mjs → esm2015/internals/testing/ngxs-store-internals-testing.js} +0 -0
- /package/{esm2020/internals/testing/skip-console-logging.mjs → esm2015/internals/testing/skip-console-logging.js} +0 -0
- /package/{esm2020/ngxs-store.mjs → esm2015/ngxs-store.js} +0 -0
- /package/{esm2020/operators/append.mjs → esm2015/operators/append.js} +0 -0
- /package/{esm2020/operators/compose.mjs → esm2015/operators/compose.js} +0 -0
- /package/{esm2020/operators/iif.mjs → esm2015/operators/iif.js} +0 -0
- /package/{esm2020/operators/index.mjs → esm2015/operators/index.js} +0 -0
- /package/{esm2020/operators/insert-item.mjs → esm2015/operators/insert-item.js} +0 -0
- /package/{esm2020/operators/ngxs-store-operators.mjs → esm2015/operators/ngxs-store-operators.js} +0 -0
- /package/{esm2020/operators/remove-item.mjs → esm2015/operators/remove-item.js} +0 -0
- /package/{esm2020/operators/types.mjs → esm2015/operators/types.js} +0 -0
- /package/{esm2020/operators/update-item.mjs → esm2015/operators/update-item.js} +0 -0
- /package/{esm2020/operators/utils.mjs → esm2015/operators/utils.js} +0 -0
- /package/{esm2020/src/actions/actions.mjs → esm2015/src/actions/actions.js} +0 -0
- /package/{esm2020/src/actions/symbols.mjs → esm2015/src/actions/symbols.js} +0 -0
- /package/{esm2020/src/decorators/action.mjs → esm2015/src/decorators/action.js} +0 -0
- /package/{esm2020/src/decorators/select/select.mjs → esm2015/src/decorators/select/select.js} +0 -0
- /package/{esm2020/src/decorators/select/symbols.mjs → esm2015/src/decorators/select/symbols.js} +0 -0
- /package/{esm2020/src/decorators/selector/symbols.mjs → esm2015/src/decorators/selector/symbols.js} +0 -0
- /package/{esm2020/src/decorators/selector-options.mjs → esm2015/src/decorators/selector-options.js} +0 -0
- /package/{esm2020/src/dev-features/symbols.mjs → esm2015/src/dev-features/symbols.js} +0 -0
- /package/{esm2020/src/internal/custom-rxjs-subjects.mjs → esm2015/src/internal/custom-rxjs-subjects.js} +0 -0
- /package/{esm2020/src/operators/leave-ngxs.mjs → esm2015/src/operators/leave-ngxs.js} +0 -0
- /package/{esm2020/src/plugin_api.mjs → esm2015/src/plugin_api.js} +0 -0
- /package/{esm2020/src/private_api.mjs → esm2015/src/private_api.js} +0 -0
- /package/{esm2020/src/public_to_deprecate.mjs → esm2015/src/public_to_deprecate.js} +0 -0
- /package/{esm2020/src/selectors/create-model-selector.mjs → esm2015/src/selectors/create-model-selector.js} +0 -0
- /package/{esm2020/src/selectors/create-pick-selector.mjs → esm2015/src/selectors/create-pick-selector.js} +0 -0
- /package/{esm2020/src/selectors/create-selector.mjs → esm2015/src/selectors/create-selector.js} +0 -0
- /package/{esm2020/src/selectors/index.mjs → esm2015/src/selectors/index.js} +0 -0
- /package/{esm2020/src/selectors/selector-checks.util.mjs → esm2015/src/selectors/selector-checks.util.js} +0 -0
- /package/{esm2020/src/selectors/selector-models.mjs → esm2015/src/selectors/selector-models.js} +0 -0
- /package/{esm2020/src/selectors/selector-utils.mjs → esm2015/src/selectors/selector-utils.js} +0 -0
- /package/{esm2020/src/state-token/state-token.mjs → esm2015/src/state-token/state-token.js} +0 -0
- /package/{esm2020/src/state-token/symbols.mjs → esm2015/src/state-token/symbols.js} +0 -0
- /package/{esm2020/src/utils/compose.mjs → esm2015/src/utils/compose.js} +0 -0
- /package/{esm2020/src/utils/freeze.mjs → esm2015/src/utils/freeze.js} +0 -0
- /package/{esm2020/src/utils/store-validators.mjs → esm2015/src/utils/store-validators.js} +0 -0
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export { provideStore } from './provide-store';
|
|
2
|
-
export { provideStates } from './provide-states';
|
|
3
|
-
export { withNgxsPlugin } from './plugin';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBwcm92aWRlU3RvcmUgfSBmcm9tICcuL3Byb3ZpZGUtc3RvcmUnO1xuZXhwb3J0IHsgcHJvdmlkZVN0YXRlcyB9IGZyb20gJy4vcHJvdmlkZS1zdGF0ZXMnO1xuZXhwb3J0IHsgd2l0aE5neHNQbHVnaW4gfSBmcm9tICcuL3BsdWdpbic7XG4iXX0=
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { ENVIRONMENT_INITIALIZER, InjectionToken, inject } from '@angular/core';
|
|
2
|
-
import { Store } from '../store';
|
|
3
|
-
import { InitState, UpdateState } from '../plugin_api';
|
|
4
|
-
import { FEATURE_STATE_TOKEN, ROOT_STATE_TOKEN } from '../symbols';
|
|
5
|
-
import { StateFactory } from '../internal/state-factory';
|
|
6
|
-
import { SelectFactory } from '../decorators/select/select-factory';
|
|
7
|
-
import { InternalStateOperations } from '../internal/state-operations';
|
|
8
|
-
import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
|
|
9
|
-
const NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;
|
|
10
|
-
/**
|
|
11
|
-
* This function is shared by both NgModule and standalone features.
|
|
12
|
-
* When using `NgxsModule.forRoot` and `provideStore`, we can depend on the
|
|
13
|
-
* same initialization functionality.
|
|
14
|
-
*/
|
|
15
|
-
export function rootStoreInitializer() {
|
|
16
|
-
const factory = inject(StateFactory);
|
|
17
|
-
const internalStateOperations = inject(InternalStateOperations);
|
|
18
|
-
inject(Store);
|
|
19
|
-
inject(SelectFactory);
|
|
20
|
-
const states = inject(ROOT_STATE_TOKEN, { optional: true }) || [];
|
|
21
|
-
const lifecycleStateManager = inject(LifecycleStateManager);
|
|
22
|
-
// Add stores to the state graph and return their defaults.
|
|
23
|
-
const results = factory.addAndReturnDefaults(states);
|
|
24
|
-
internalStateOperations.setStateToTheCurrentWithNew(results);
|
|
25
|
-
// Connect our actions stream.
|
|
26
|
-
factory.connectActionHandlers();
|
|
27
|
-
// Dispatch the init action and invoke init and bootstrap functions after.
|
|
28
|
-
lifecycleStateManager.ngxsBootstrap(new InitState(), results);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* This function is utilized by both NgModule and standalone features.
|
|
32
|
-
* When using `NgxsModule.forFeature` and `provideStates`, we can depend on
|
|
33
|
-
* the same initialization functionality.
|
|
34
|
-
*/
|
|
35
|
-
export function featureStatesInitializer() {
|
|
36
|
-
inject(Store);
|
|
37
|
-
const internalStateOperations = inject(InternalStateOperations);
|
|
38
|
-
const factory = inject(StateFactory);
|
|
39
|
-
const states = inject(FEATURE_STATE_TOKEN, { optional: true }) || [];
|
|
40
|
-
const lifecycleStateManager = inject(LifecycleStateManager);
|
|
41
|
-
// Since FEATURE_STATE_TOKEN is a multi token, we need to
|
|
42
|
-
// flatten it [[Feature1State, Feature2State], [Feature3State]].
|
|
43
|
-
const flattenedStates = states.reduce((total, values) => total.concat(values), []);
|
|
44
|
-
// add stores to the state graph and return their defaults.
|
|
45
|
-
const results = factory.addAndReturnDefaults(flattenedStates);
|
|
46
|
-
if (results.states.length) {
|
|
47
|
-
internalStateOperations.setStateToTheCurrentWithNew(results);
|
|
48
|
-
// Dispatch the update action and invoke init and bootstrap functions after.
|
|
49
|
-
lifecycleStateManager.ngxsBootstrap(new UpdateState(results.defaults), results);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* InjectionToken that registers the global Store.
|
|
54
|
-
*/
|
|
55
|
-
export const NGXS_ROOT_STORE_INITIALIZER = new InjectionToken(NG_DEV_MODE ? 'NGXS_ROOT_STORE_INITIALIZER' : '');
|
|
56
|
-
/**
|
|
57
|
-
* InjectionToken that registers feature states.
|
|
58
|
-
*/
|
|
59
|
-
export const NGXS_FEATURE_STORE_INITIALIZER = new InjectionToken(NG_DEV_MODE ? 'NGXS_FEATURE_STORE_INITIALIZER' : '');
|
|
60
|
-
export const NGXS_ROOT_ENVIRONMENT_INITIALIZER = [
|
|
61
|
-
{ provide: NGXS_ROOT_STORE_INITIALIZER, useFactory: rootStoreInitializer },
|
|
62
|
-
{
|
|
63
|
-
provide: ENVIRONMENT_INITIALIZER,
|
|
64
|
-
multi: true,
|
|
65
|
-
useFactory() {
|
|
66
|
-
return () => inject(NGXS_ROOT_STORE_INITIALIZER);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
];
|
|
70
|
-
/**
|
|
71
|
-
* The `NGXS_FEATURE_ENVIRONMENT_INITIALIZER` functions as an environment initializer
|
|
72
|
-
* at the `Route` level. Angular Router creates an environment route injector for each
|
|
73
|
-
* matched route where navigation occurs. The injector is created once, ensuring that
|
|
74
|
-
* the feature states initialization only happens once as well.
|
|
75
|
-
*/
|
|
76
|
-
export const NGXS_FEATURE_ENVIRONMENT_INITIALIZER = [
|
|
77
|
-
{ provide: NGXS_FEATURE_STORE_INITIALIZER, useFactory: featureStatesInitializer },
|
|
78
|
-
{
|
|
79
|
-
provide: ENVIRONMENT_INITIALIZER,
|
|
80
|
-
multi: true,
|
|
81
|
-
useFactory() {
|
|
82
|
-
return () => inject(NGXS_FEATURE_STORE_INITIALIZER);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
];
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3N0YW5kYWxvbmUtZmVhdHVyZXMvaW5pdGlhbGl6ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxjQUFjLEVBQVksTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxXQUFXLEdBQUcsT0FBTyxTQUFTLEtBQUssV0FBVyxJQUFJLFNBQVMsQ0FBQztBQUVsRTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQjtJQUNsQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUVoRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZCxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFdEIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2xFLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFNUQsMkRBQTJEO0lBQzNELE1BQU0sT0FBTyxHQUFzQixPQUFPLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFeEUsdUJBQXVCLENBQUMsMkJBQTJCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFN0QsOEJBQThCO0lBQzlCLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBRWhDLDBFQUEwRTtJQUMxRSxxQkFBcUIsQ0FBQyxhQUFhLENBQUMsSUFBSSxTQUFTLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSx3QkFBd0I7SUFDdEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWQsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUNoRSxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JFLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFNUQseURBQXlEO0lBQ3pELGdFQUFnRTtJQUNoRSxNQUFNLGVBQWUsR0FBeUIsTUFBTSxDQUFDLE1BQU0sQ0FDekQsQ0FBQyxLQUEyQixFQUFFLE1BQTRCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQ25GLEVBQUUsQ0FDSCxDQUFDO0lBRUYsMkRBQTJEO0lBQzNELE1BQU0sT0FBTyxHQUFzQixPQUFPLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFakYsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUN6Qix1QkFBdUIsQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU3RCw0RUFBNEU7UUFDNUUscUJBQXFCLENBQUMsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNqRjtBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLElBQUksY0FBYyxDQUMzRCxXQUFXLENBQUMsQ0FBQyxDQUFDLDZCQUE2QixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ2pELENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLElBQUksY0FBYyxDQUM5RCxXQUFXLENBQUMsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQ3BELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBZTtJQUMzRCxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxVQUFVLEVBQUUsb0JBQW9CLEVBQUU7SUFDMUU7UUFDRSxPQUFPLEVBQUUsdUJBQXVCO1FBQ2hDLEtBQUssRUFBRSxJQUFJO1FBQ1gsVUFBVTtZQUNSLE9BQU8sR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDbkQsQ0FBQztLQUNGO0NBQ0YsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQWU7SUFDOUQsRUFBRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsVUFBVSxFQUFFLHdCQUF3QixFQUFFO0lBQ2pGO1FBQ0UsT0FBTyxFQUFFLHVCQUF1QjtRQUNoQyxLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVU7WUFDUixPQUFPLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQ3RELENBQUM7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTlZJUk9OTUVOVF9JTklUSUFMSVpFUiwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuLi9zdG9yZSc7XG5pbXBvcnQgeyBJbml0U3RhdGUsIFVwZGF0ZVN0YXRlIH0gZnJvbSAnLi4vcGx1Z2luX2FwaSc7XG5pbXBvcnQgeyBGRUFUVVJFX1NUQVRFX1RPS0VOLCBST09UX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBTdGF0ZUZhY3RvcnkgfSBmcm9tICcuLi9pbnRlcm5hbC9zdGF0ZS1mYWN0b3J5JztcbmltcG9ydCB7IFN0YXRlQ2xhc3NJbnRlcm5hbCwgU3RhdGVzQW5kRGVmYXVsdHMgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgU2VsZWN0RmFjdG9yeSB9IGZyb20gJy4uL2RlY29yYXRvcnMvc2VsZWN0L3NlbGVjdC1mYWN0b3J5JztcbmltcG9ydCB7IEludGVybmFsU3RhdGVPcGVyYXRpb25zIH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XG5pbXBvcnQgeyBMaWZlY3ljbGVTdGF0ZU1hbmFnZXIgfSBmcm9tICcuLi9pbnRlcm5hbC9saWZlY3ljbGUtc3RhdGUtbWFuYWdlcic7XG5cbmNvbnN0IE5HX0RFVl9NT0RFID0gdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlO1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaXMgc2hhcmVkIGJ5IGJvdGggTmdNb2R1bGUgYW5kIHN0YW5kYWxvbmUgZmVhdHVyZXMuXG4gKiBXaGVuIHVzaW5nIGBOZ3hzTW9kdWxlLmZvclJvb3RgIGFuZCBgcHJvdmlkZVN0b3JlYCwgd2UgY2FuIGRlcGVuZCBvbiB0aGVcbiAqIHNhbWUgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvb3RTdG9yZUluaXRpYWxpemVyKCk6IHZvaWQge1xuICBjb25zdCBmYWN0b3J5ID0gaW5qZWN0KFN0YXRlRmFjdG9yeSk7XG4gIGNvbnN0IGludGVybmFsU3RhdGVPcGVyYXRpb25zID0gaW5qZWN0KEludGVybmFsU3RhdGVPcGVyYXRpb25zKTtcblxuICBpbmplY3QoU3RvcmUpO1xuICBpbmplY3QoU2VsZWN0RmFjdG9yeSk7XG5cbiAgY29uc3Qgc3RhdGVzID0gaW5qZWN0KFJPT1RfU1RBVEVfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSkgfHwgW107XG4gIGNvbnN0IGxpZmVjeWNsZVN0YXRlTWFuYWdlciA9IGluamVjdChMaWZlY3ljbGVTdGF0ZU1hbmFnZXIpO1xuXG4gIC8vIEFkZCBzdG9yZXMgdG8gdGhlIHN0YXRlIGdyYXBoIGFuZCByZXR1cm4gdGhlaXIgZGVmYXVsdHMuXG4gIGNvbnN0IHJlc3VsdHM6IFN0YXRlc0FuZERlZmF1bHRzID0gZmFjdG9yeS5hZGRBbmRSZXR1cm5EZWZhdWx0cyhzdGF0ZXMpO1xuXG4gIGludGVybmFsU3RhdGVPcGVyYXRpb25zLnNldFN0YXRlVG9UaGVDdXJyZW50V2l0aE5ldyhyZXN1bHRzKTtcblxuICAvLyBDb25uZWN0IG91ciBhY3Rpb25zIHN0cmVhbS5cbiAgZmFjdG9yeS5jb25uZWN0QWN0aW9uSGFuZGxlcnMoKTtcblxuICAvLyBEaXNwYXRjaCB0aGUgaW5pdCBhY3Rpb24gYW5kIGludm9rZSBpbml0IGFuZCBib290c3RyYXAgZnVuY3Rpb25zIGFmdGVyLlxuICBsaWZlY3ljbGVTdGF0ZU1hbmFnZXIubmd4c0Jvb3RzdHJhcChuZXcgSW5pdFN0YXRlKCksIHJlc3VsdHMpO1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaXMgdXRpbGl6ZWQgYnkgYm90aCBOZ01vZHVsZSBhbmQgc3RhbmRhbG9uZSBmZWF0dXJlcy5cbiAqIFdoZW4gdXNpbmcgYE5neHNNb2R1bGUuZm9yRmVhdHVyZWAgYW5kIGBwcm92aWRlU3RhdGVzYCwgd2UgY2FuIGRlcGVuZCBvblxuICogdGhlIHNhbWUgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZlYXR1cmVTdGF0ZXNJbml0aWFsaXplcigpOiB2b2lkIHtcbiAgaW5qZWN0KFN0b3JlKTtcblxuICBjb25zdCBpbnRlcm5hbFN0YXRlT3BlcmF0aW9ucyA9IGluamVjdChJbnRlcm5hbFN0YXRlT3BlcmF0aW9ucyk7XG4gIGNvbnN0IGZhY3RvcnkgPSBpbmplY3QoU3RhdGVGYWN0b3J5KTtcbiAgY29uc3Qgc3RhdGVzID0gaW5qZWN0KEZFQVRVUkVfU1RBVEVfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSkgfHwgW107XG4gIGNvbnN0IGxpZmVjeWNsZVN0YXRlTWFuYWdlciA9IGluamVjdChMaWZlY3ljbGVTdGF0ZU1hbmFnZXIpO1xuXG4gIC8vIFNpbmNlIEZFQVRVUkVfU1RBVEVfVE9LRU4gaXMgYSBtdWx0aSB0b2tlbiwgd2UgbmVlZCB0b1xuICAvLyBmbGF0dGVuIGl0IFtbRmVhdHVyZTFTdGF0ZSwgRmVhdHVyZTJTdGF0ZV0sIFtGZWF0dXJlM1N0YXRlXV0uXG4gIGNvbnN0IGZsYXR0ZW5lZFN0YXRlczogU3RhdGVDbGFzc0ludGVybmFsW10gPSBzdGF0ZXMucmVkdWNlKFxuICAgICh0b3RhbDogU3RhdGVDbGFzc0ludGVybmFsW10sIHZhbHVlczogU3RhdGVDbGFzc0ludGVybmFsW10pID0+IHRvdGFsLmNvbmNhdCh2YWx1ZXMpLFxuICAgIFtdXG4gICk7XG5cbiAgLy8gYWRkIHN0b3JlcyB0byB0aGUgc3RhdGUgZ3JhcGggYW5kIHJldHVybiB0aGVpciBkZWZhdWx0cy5cbiAgY29uc3QgcmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMgPSBmYWN0b3J5LmFkZEFuZFJldHVybkRlZmF1bHRzKGZsYXR0ZW5lZFN0YXRlcyk7XG5cbiAgaWYgKHJlc3VsdHMuc3RhdGVzLmxlbmd0aCkge1xuICAgIGludGVybmFsU3RhdGVPcGVyYXRpb25zLnNldFN0YXRlVG9UaGVDdXJyZW50V2l0aE5ldyhyZXN1bHRzKTtcblxuICAgIC8vIERpc3BhdGNoIHRoZSB1cGRhdGUgYWN0aW9uIGFuZCBpbnZva2UgaW5pdCBhbmQgYm9vdHN0cmFwIGZ1bmN0aW9ucyBhZnRlci5cbiAgICBsaWZlY3ljbGVTdGF0ZU1hbmFnZXIubmd4c0Jvb3RzdHJhcChuZXcgVXBkYXRlU3RhdGUocmVzdWx0cy5kZWZhdWx0cyksIHJlc3VsdHMpO1xuICB9XG59XG5cbi8qKlxuICogSW5qZWN0aW9uVG9rZW4gdGhhdCByZWdpc3RlcnMgdGhlIGdsb2JhbCBTdG9yZS5cbiAqL1xuZXhwb3J0IGNvbnN0IE5HWFNfUk9PVF9TVE9SRV9JTklUSUFMSVpFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjx2b2lkPihcbiAgTkdfREVWX01PREUgPyAnTkdYU19ST09UX1NUT1JFX0lOSVRJQUxJWkVSJyA6ICcnXG4pO1xuXG4vKipcbiAqIEluamVjdGlvblRva2VuIHRoYXQgcmVnaXN0ZXJzIGZlYXR1cmUgc3RhdGVzLlxuICovXG5leHBvcnQgY29uc3QgTkdYU19GRUFUVVJFX1NUT1JFX0lOSVRJQUxJWkVSID0gbmV3IEluamVjdGlvblRva2VuPHZvaWQ+KFxuICBOR19ERVZfTU9ERSA/ICdOR1hTX0ZFQVRVUkVfU1RPUkVfSU5JVElBTElaRVInIDogJydcbik7XG5cbmV4cG9ydCBjb25zdCBOR1hTX1JPT1RfRU5WSVJPTk1FTlRfSU5JVElBTElaRVI6IFByb3ZpZGVyW10gPSBbXG4gIHsgcHJvdmlkZTogTkdYU19ST09UX1NUT1JFX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiByb290U3RvcmVJbml0aWFsaXplciB9LFxuICB7XG4gICAgcHJvdmlkZTogRU5WSVJPTk1FTlRfSU5JVElBTElaRVIsXG4gICAgbXVsdGk6IHRydWUsXG4gICAgdXNlRmFjdG9yeSgpIHtcbiAgICAgIHJldHVybiAoKSA9PiBpbmplY3QoTkdYU19ST09UX1NUT1JFX0lOSVRJQUxJWkVSKTtcbiAgICB9XG4gIH1cbl07XG5cbi8qKlxuICogVGhlIGBOR1hTX0ZFQVRVUkVfRU5WSVJPTk1FTlRfSU5JVElBTElaRVJgIGZ1bmN0aW9ucyBhcyBhbiBlbnZpcm9ubWVudCBpbml0aWFsaXplclxuICogYXQgdGhlIGBSb3V0ZWAgbGV2ZWwuIEFuZ3VsYXIgUm91dGVyIGNyZWF0ZXMgYW4gZW52aXJvbm1lbnQgcm91dGUgaW5qZWN0b3IgZm9yIGVhY2hcbiAqIG1hdGNoZWQgcm91dGUgd2hlcmUgbmF2aWdhdGlvbiBvY2N1cnMuIFRoZSBpbmplY3RvciBpcyBjcmVhdGVkIG9uY2UsIGVuc3VyaW5nIHRoYXRcbiAqIHRoZSBmZWF0dXJlIHN0YXRlcyBpbml0aWFsaXphdGlvbiBvbmx5IGhhcHBlbnMgb25jZSBhcyB3ZWxsLlxuICovXG5leHBvcnQgY29uc3QgTkdYU19GRUFUVVJFX0VOVklST05NRU5UX0lOSVRJQUxJWkVSOiBQcm92aWRlcltdID0gW1xuICB7IHByb3ZpZGU6IE5HWFNfRkVBVFVSRV9TVE9SRV9JTklUSUFMSVpFUiwgdXNlRmFjdG9yeTogZmVhdHVyZVN0YXRlc0luaXRpYWxpemVyIH0sXG4gIHtcbiAgICBwcm92aWRlOiBFTlZJUk9OTUVOVF9JTklUSUFMSVpFUixcbiAgICBtdWx0aTogdHJ1ZSxcbiAgICB1c2VGYWN0b3J5KCkge1xuICAgICAgcmV0dXJuICgpID0+IGluamVjdChOR1hTX0ZFQVRVUkVfU1RPUkVfSU5JVElBTElaRVIpO1xuICAgIH1cbiAgfVxuXTtcbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { makeEnvironmentProviders } from '@angular/core';
|
|
2
|
-
import { NGXS_PLUGINS } from '../symbols';
|
|
3
|
-
/**
|
|
4
|
-
* This function registers a custom global plugin for the state.
|
|
5
|
-
*
|
|
6
|
-
* ```ts
|
|
7
|
-
* bootstrapApplication(AppComponent, {
|
|
8
|
-
* providers: [
|
|
9
|
-
* provideStore(
|
|
10
|
-
* [CountriesState],
|
|
11
|
-
* withNgxsPlugin(logoutPlugin)
|
|
12
|
-
* )
|
|
13
|
-
* ]
|
|
14
|
-
* });
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
17
|
-
export function withNgxsPlugin(plugin) {
|
|
18
|
-
return makeEnvironmentProviders([{ provide: NGXS_PLUGINS, useClass: plugin, multi: true }]);
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3N0YW5kYWxvbmUtZmVhdHVyZXMvcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBOEIsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckYsT0FBTyxFQUFFLFlBQVksRUFBYyxNQUFNLFlBQVksQ0FBQztBQUV0RDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxNQUF3QjtJQUNyRCxPQUFPLHdCQUF3QixDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztBQUM5RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIFR5cGUsIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBOR1hTX1BMVUdJTlMsIE5neHNQbHVnaW4gfSBmcm9tICcuLi9zeW1ib2xzJztcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHJlZ2lzdGVycyBhIGN1c3RvbSBnbG9iYWwgcGx1Z2luIGZvciB0aGUgc3RhdGUuXG4gKlxuICogYGBgdHNcbiAqIGJvb3RzdHJhcEFwcGxpY2F0aW9uKEFwcENvbXBvbmVudCwge1xuICogICBwcm92aWRlcnM6IFtcbiAqICAgICBwcm92aWRlU3RvcmUoXG4gKiAgICAgICBbQ291bnRyaWVzU3RhdGVdLFxuICogICAgICAgd2l0aE5neHNQbHVnaW4obG9nb3V0UGx1Z2luKVxuICogICAgIClcbiAqICAgXVxuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhOZ3hzUGx1Z2luKHBsdWdpbjogVHlwZTxOZ3hzUGx1Z2luPik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbeyBwcm92aWRlOiBOR1hTX1BMVUdJTlMsIHVzZUNsYXNzOiBwbHVnaW4sIG11bHRpOiB0cnVlIH1dKTtcbn1cbiJdfQ==
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { makeEnvironmentProviders } from '@angular/core';
|
|
2
|
-
import { getFeatureProviders } from './feature-providers';
|
|
3
|
-
import { NGXS_FEATURE_ENVIRONMENT_INITIALIZER } from './initializers';
|
|
4
|
-
/**
|
|
5
|
-
* This version serves as a standalone alternative to `NgxsModule.forFeature`.
|
|
6
|
-
* It can be used in a similar manner to register feature states, but at the
|
|
7
|
-
* `Route` providers level:
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* const routes: Routes = [
|
|
11
|
-
* {
|
|
12
|
-
* path: 'products',
|
|
13
|
-
* loadComponent: async () => {...},
|
|
14
|
-
* providers: [provideStates([ProductsState])]
|
|
15
|
-
* }
|
|
16
|
-
* ];
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export function provideStates(states, ...features) {
|
|
20
|
-
return makeEnvironmentProviders([
|
|
21
|
-
...getFeatureProviders(states),
|
|
22
|
-
features,
|
|
23
|
-
NGXS_FEATURE_ENVIRONMENT_INITIALIZER
|
|
24
|
-
]);
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1zdGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9wcm92aWRlLXN0YXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRFOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FDM0IsTUFBcUIsRUFDckIsR0FBRyxRQUFnQztJQUVuQyxPQUFPLHdCQUF3QixDQUFDO1FBQzlCLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO1FBQzlCLFFBQVE7UUFDUixvQ0FBb0M7S0FDckMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IMm1U3RhdGVDbGFzcyB9IGZyb20gJ0BuZ3hzL3N0b3JlL2ludGVybmFscyc7XG5cbmltcG9ydCB7IGdldEZlYXR1cmVQcm92aWRlcnMgfSBmcm9tICcuL2ZlYXR1cmUtcHJvdmlkZXJzJztcbmltcG9ydCB7IE5HWFNfRkVBVFVSRV9FTlZJUk9OTUVOVF9JTklUSUFMSVpFUiB9IGZyb20gJy4vaW5pdGlhbGl6ZXJzJztcblxuLyoqXG4gKiBUaGlzIHZlcnNpb24gc2VydmVzIGFzIGEgc3RhbmRhbG9uZSBhbHRlcm5hdGl2ZSB0byBgTmd4c01vZHVsZS5mb3JGZWF0dXJlYC5cbiAqIEl0IGNhbiBiZSB1c2VkIGluIGEgc2ltaWxhciBtYW5uZXIgdG8gcmVnaXN0ZXIgZmVhdHVyZSBzdGF0ZXMsIGJ1dCBhdCB0aGVcbiAqIGBSb3V0ZWAgcHJvdmlkZXJzIGxldmVsOlxuICpcbiAqIGBgYHRzXG4gKiBjb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAqICAge1xuICogICAgIHBhdGg6ICdwcm9kdWN0cycsXG4gKiAgICAgbG9hZENvbXBvbmVudDogYXN5bmMgKCkgPT4gey4uLn0sXG4gKiAgICAgcHJvdmlkZXJzOiBbcHJvdmlkZVN0YXRlcyhbUHJvZHVjdHNTdGF0ZV0pXVxuICogICB9XG4gKiBdO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlU3RhdGVzKFxuICBzdGF0ZXM6IMm1U3RhdGVDbGFzc1tdLFxuICAuLi5mZWF0dXJlczogRW52aXJvbm1lbnRQcm92aWRlcnNbXVxuKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICAuLi5nZXRGZWF0dXJlUHJvdmlkZXJzKHN0YXRlcyksXG4gICAgZmVhdHVyZXMsXG4gICAgTkdYU19GRUFUVVJFX0VOVklST05NRU5UX0lOSVRJQUxJWkVSXG4gIF0pO1xufVxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { makeEnvironmentProviders } from '@angular/core';
|
|
2
|
-
import { getRootProviders } from './root-providers';
|
|
3
|
-
import { NGXS_ROOT_ENVIRONMENT_INITIALIZER } from './initializers';
|
|
4
|
-
export function provideStore(states = [], ...optionsAndFeatures) {
|
|
5
|
-
const features = [];
|
|
6
|
-
// Options are empty by default (see `forRoot`).
|
|
7
|
-
let options = {};
|
|
8
|
-
if (optionsAndFeatures.length > 0) {
|
|
9
|
-
if (isEnvironmentProvider(optionsAndFeatures[0])) {
|
|
10
|
-
features.push(...optionsAndFeatures);
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
options = optionsAndFeatures[0];
|
|
14
|
-
features.push(...optionsAndFeatures.slice(1));
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return makeEnvironmentProviders([
|
|
18
|
-
...getRootProviders(states, options),
|
|
19
|
-
features,
|
|
20
|
-
NGXS_ROOT_ENVIRONMENT_INITIALIZER
|
|
21
|
-
]);
|
|
22
|
-
}
|
|
23
|
-
function isEnvironmentProvider(target) {
|
|
24
|
-
return !!target.ɵproviders;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zdGFuZGFsb25lLWZlYXR1cmVzL3Byb3ZpZGUtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3Qix3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQThCbkUsTUFBTSxVQUFVLFlBQVksQ0FDMUIsU0FBd0IsRUFBRSxFQUMxQixHQUFHLGtCQUF5QjtJQUU1QixNQUFNLFFBQVEsR0FBMkIsRUFBRSxDQUFDO0lBQzVDLGdEQUFnRDtJQUNoRCxJQUFJLE9BQU8sR0FBc0IsRUFBRSxDQUFDO0lBRXBDLElBQUksa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNqQyxJQUFJLHFCQUFxQixDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEQsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLGtCQUFrQixDQUFDLENBQUM7U0FDdEM7YUFBTTtZQUNMLE9BQU8sR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0M7S0FDRjtJQUVELE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDO1FBQ3BDLFFBQVE7UUFDUixpQ0FBaUM7S0FDbEMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsTUFBVztJQUN4QyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudFByb3ZpZGVycywgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyDJtVN0YXRlQ2xhc3MgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBOZ3hzTW9kdWxlT3B0aW9ucyB9IGZyb20gJy4uL3N5bWJvbHMnO1xuaW1wb3J0IHsgZ2V0Um9vdFByb3ZpZGVycyB9IGZyb20gJy4vcm9vdC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgTkdYU19ST09UX0VOVklST05NRU5UX0lOSVRJQUxJWkVSIH0gZnJvbSAnLi9pbml0aWFsaXplcnMnO1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gcHJvdmlkZXMgZ2xvYmFsIHN0b3JlIHByb3ZpZGVycyBhbmQgaW5pdGlhbGl6ZXMgdGhlIHN0b3JlLlxuICpcbiAqIGBgYHRzXG4gKiBib290c3RyYXBBcHBsaWNhdGlvbihBcHBDb21wb25lbnQsIHtcbiAqICAgcHJvdmlkZXJzOiBbcHJvdmlkZVN0b3JlKFtDb3VudHJpZXNTdGF0ZV0pXVxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBUaGUgYHByb3ZpZGVTdG9yZWAgbWF5IGJlIG9wdGlvbmFsbHkgY2FsbGVkIHdpdGggYSBjb25maWcgYmVmb3JlIHRoZSBsaXN0IG9mIGZlYXR1cmVzOlxuICpcbiAqIGBgYHRzXG4gKiBwcm92aWRlU3RvcmUoW0NvdW50cmllc1N0YXRlXSwge1xuICogICBkZXZlbG9wbWVudE1vZGU6ICFlbnZpcm9ubWVudC5wcm9kdWN0aW9uXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0b3JlKFxuICBzdGF0ZXM/OiDJtVN0YXRlQ2xhc3NbXSxcbiAgLi4uZmVhdHVyZXM6IEVudmlyb25tZW50UHJvdmlkZXJzW11cbik6IEVudmlyb25tZW50UHJvdmlkZXJzO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0b3JlKFxuICBzdGF0ZXM/OiDJtVN0YXRlQ2xhc3NbXSxcbiAgb3B0aW9ucz86IE5neHNNb2R1bGVPcHRpb25zLFxuICAuLi5mZWF0dXJlczogRW52aXJvbm1lbnRQcm92aWRlcnNbXVxuKTogRW52aXJvbm1lbnRQcm92aWRlcnM7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlU3RvcmUoXG4gIHN0YXRlczogybVTdGF0ZUNsYXNzW10gPSBbXSxcbiAgLi4ub3B0aW9uc0FuZEZlYXR1cmVzOiBhbnlbXVxuKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICBjb25zdCBmZWF0dXJlczogRW52aXJvbm1lbnRQcm92aWRlcnNbXSA9IFtdO1xuICAvLyBPcHRpb25zIGFyZSBlbXB0eSBieSBkZWZhdWx0IChzZWUgYGZvclJvb3RgKS5cbiAgbGV0IG9wdGlvbnM6IE5neHNNb2R1bGVPcHRpb25zID0ge307XG5cbiAgaWYgKG9wdGlvbnNBbmRGZWF0dXJlcy5sZW5ndGggPiAwKSB7XG4gICAgaWYgKGlzRW52aXJvbm1lbnRQcm92aWRlcihvcHRpb25zQW5kRmVhdHVyZXNbMF0pKSB7XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLm9wdGlvbnNBbmRGZWF0dXJlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG9wdGlvbnMgPSBvcHRpb25zQW5kRmVhdHVyZXNbMF07XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLm9wdGlvbnNBbmRGZWF0dXJlcy5zbGljZSgxKSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgLi4uZ2V0Um9vdFByb3ZpZGVycyhzdGF0ZXMsIG9wdGlvbnMpLFxuICAgIGZlYXR1cmVzLFxuICAgIE5HWFNfUk9PVF9FTlZJUk9OTUVOVF9JTklUSUFMSVpFUlxuICBdKTtcbn1cblxuZnVuY3Rpb24gaXNFbnZpcm9ubWVudFByb3ZpZGVyKHRhcmdldDogYW55KTogdGFyZ2V0IGlzIEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuICEhdGFyZ2V0Lsm1cHJvdmlkZXJzO1xufVxuIl19
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { APP_BOOTSTRAP_LISTENER, inject } from '@angular/core';
|
|
2
|
-
import { NgxsBootstrapper, ɵNGXS_STATE_CONTEXT_FACTORY, ɵNGXS_STATE_FACTORY } from '@ngxs/store/internals';
|
|
3
|
-
import { PluginManager } from '../plugin-manager';
|
|
4
|
-
import { StateFactory } from '../internal/state-factory';
|
|
5
|
-
import { CUSTOM_NGXS_EXECUTION_STRATEGY } from '../execution/symbols';
|
|
6
|
-
import { StateContextFactory } from '../internal/state-context-factory';
|
|
7
|
-
import { ROOT_STATE_TOKEN, NGXS_OPTIONS } from '../symbols';
|
|
8
|
-
/**
|
|
9
|
-
* This function provides the required providers when invoking `NgxsModule.forRoot`
|
|
10
|
-
* or `provideStore`. It is shared between the NgModule and standalone APIs.
|
|
11
|
-
*/
|
|
12
|
-
export function getRootProviders(states, options) {
|
|
13
|
-
return [
|
|
14
|
-
StateFactory,
|
|
15
|
-
PluginManager,
|
|
16
|
-
...states,
|
|
17
|
-
{
|
|
18
|
-
provide: ROOT_STATE_TOKEN,
|
|
19
|
-
useValue: states
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
provide: APP_BOOTSTRAP_LISTENER,
|
|
23
|
-
useFactory: () => {
|
|
24
|
-
const bootstrapper = inject(NgxsBootstrapper);
|
|
25
|
-
return () => bootstrapper.bootstrap();
|
|
26
|
-
},
|
|
27
|
-
multi: true
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
provide: NGXS_OPTIONS,
|
|
31
|
-
useValue: options
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
provide: CUSTOM_NGXS_EXECUTION_STRATEGY,
|
|
35
|
-
useValue: options.executionStrategy
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
provide: ɵNGXS_STATE_CONTEXT_FACTORY,
|
|
39
|
-
useExisting: StateContextFactory
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
provide: ɵNGXS_STATE_FACTORY,
|
|
43
|
-
useExisting: StateFactory
|
|
44
|
-
}
|
|
45
|
-
];
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9yb290LXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQVksTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxnQkFBZ0IsRUFFaEIsMkJBQTJCLEVBQzNCLG1CQUFtQixFQUNwQixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFxQixnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0U7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixNQUFxQixFQUNyQixPQUEwQjtJQUUxQixPQUFPO1FBQ0wsWUFBWTtRQUNaLGFBQWE7UUFDYixHQUFHLE1BQU07UUFDVDtZQUNFLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsUUFBUSxFQUFFLE1BQU07U0FDakI7UUFDRDtZQUNFLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsVUFBVSxFQUFFLEdBQUcsRUFBRTtnQkFDZixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztnQkFDOUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDeEMsQ0FBQztZQUNELEtBQUssRUFBRSxJQUFJO1NBQ1o7UUFDRDtZQUNFLE9BQU8sRUFBRSxZQUFZO1lBQ3JCLFFBQVEsRUFBRSxPQUFPO1NBQ2xCO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsOEJBQThCO1lBQ3ZDLFFBQVEsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1NBQ3BDO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsMkJBQTJCO1lBQ3BDLFdBQVcsRUFBRSxtQkFBbUI7U0FDakM7UUFDRDtZQUNFLE9BQU8sRUFBRSxtQkFBbUI7WUFDNUIsV0FBVyxFQUFFLFlBQVk7U0FDMUI7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9CT09UU1RSQVBfTElTVEVORVIsIFByb3ZpZGVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE5neHNCb290c3RyYXBwZXIsXG4gIMm1U3RhdGVDbGFzcyxcbiAgybVOR1hTX1NUQVRFX0NPTlRFWFRfRkFDVE9SWSxcbiAgybVOR1hTX1NUQVRFX0ZBQ1RPUllcbn0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuaW1wb3J0IHsgUGx1Z2luTWFuYWdlciB9IGZyb20gJy4uL3BsdWdpbi1tYW5hZ2VyJztcbmltcG9ydCB7IFN0YXRlRmFjdG9yeSB9IGZyb20gJy4uL2ludGVybmFsL3N0YXRlLWZhY3RvcnknO1xuaW1wb3J0IHsgQ1VTVE9NX05HWFNfRVhFQ1VUSU9OX1NUUkFURUdZIH0gZnJvbSAnLi4vZXhlY3V0aW9uL3N5bWJvbHMnO1xuaW1wb3J0IHsgU3RhdGVDb250ZXh0RmFjdG9yeSB9IGZyb20gJy4uL2ludGVybmFsL3N0YXRlLWNvbnRleHQtZmFjdG9yeSc7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlT3B0aW9ucywgUk9PVF9TVEFURV9UT0tFTiwgTkdYU19PUFRJT05TIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBwcm92aWRlcyB0aGUgcmVxdWlyZWQgcHJvdmlkZXJzIHdoZW4gaW52b2tpbmcgYE5neHNNb2R1bGUuZm9yUm9vdGBcbiAqIG9yIGBwcm92aWRlU3RvcmVgLiBJdCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgTmdNb2R1bGUgYW5kIHN0YW5kYWxvbmUgQVBJcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJvb3RQcm92aWRlcnMoXG4gIHN0YXRlczogybVTdGF0ZUNsYXNzW10sXG4gIG9wdGlvbnM6IE5neHNNb2R1bGVPcHRpb25zXG4pOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICBTdGF0ZUZhY3RvcnksXG4gICAgUGx1Z2luTWFuYWdlcixcbiAgICAuLi5zdGF0ZXMsXG4gICAge1xuICAgICAgcHJvdmlkZTogUk9PVF9TVEFURV9UT0tFTixcbiAgICAgIHVzZVZhbHVlOiBzdGF0ZXNcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFQUF9CT09UU1RSQVBfTElTVEVORVIsXG4gICAgICB1c2VGYWN0b3J5OiAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGJvb3RzdHJhcHBlciA9IGluamVjdChOZ3hzQm9vdHN0cmFwcGVyKTtcbiAgICAgICAgcmV0dXJuICgpID0+IGJvb3RzdHJhcHBlci5ib290c3RyYXAoKTtcbiAgICAgIH0sXG4gICAgICBtdWx0aTogdHJ1ZVxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdYU19PUFRJT05TLFxuICAgICAgdXNlVmFsdWU6IG9wdGlvbnNcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IENVU1RPTV9OR1hTX0VYRUNVVElPTl9TVFJBVEVHWSxcbiAgICAgIHVzZVZhbHVlOiBvcHRpb25zLmV4ZWN1dGlvblN0cmF0ZWd5XG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiDJtU5HWFNfU1RBVEVfQ09OVEVYVF9GQUNUT1JZLFxuICAgICAgdXNlRXhpc3Rpbmc6IFN0YXRlQ29udGV4dEZhY3RvcnlcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IMm1TkdYU19TVEFURV9GQUNUT1JZLFxuICAgICAgdXNlRXhpc3Rpbmc6IFN0YXRlRmFjdG9yeVxuICAgIH1cbiAgXTtcbn1cbiJdfQ==
|
package/esm2020/src/symbols.mjs
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { Injectable, InjectionToken, inject } from '@angular/core';
|
|
2
|
-
import { mergeDeep } from './utils/utils';
|
|
3
|
-
import { DispatchOutsideZoneNgxsExecutionStrategy } from './execution/dispatch-outside-zone-ngxs-execution-strategy';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
const NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;
|
|
6
|
-
// The injection token is used to resolve a list of states provided at
|
|
7
|
-
// the root level through either `NgxsModule.forRoot` or `provideStore`.
|
|
8
|
-
export const ROOT_STATE_TOKEN = new InjectionToken(NG_DEV_MODE ? 'ROOT_STATE_TOKEN' : '');
|
|
9
|
-
// The injection token is used to resolve a list of states provided at
|
|
10
|
-
// the feature level through either `NgxsModule.forFeature` or `provideStates`.
|
|
11
|
-
// The Array<Array> is used to overload the resolved value of the token because
|
|
12
|
-
// it is a multi-provider token.
|
|
13
|
-
export const FEATURE_STATE_TOKEN = new InjectionToken(NG_DEV_MODE ? 'FEATURE_STATE_TOKEN' : '');
|
|
14
|
-
// The injection token is used to resolve to custom NGXS plugins provided
|
|
15
|
-
// at the root level through either `{provide}` scheme or `withNgxsPlugin`.
|
|
16
|
-
export const NGXS_PLUGINS = new InjectionToken(NG_DEV_MODE ? 'NGXS_PLUGINS' : '');
|
|
17
|
-
// The injection token is used to resolve to options provided at the root
|
|
18
|
-
// level through either `NgxsModule.forRoot` or `provideStore`.
|
|
19
|
-
export const NGXS_OPTIONS = new InjectionToken(NG_DEV_MODE ? 'NGXS_OPTIONS' : '');
|
|
20
|
-
/**
|
|
21
|
-
* The NGXS config settings.
|
|
22
|
-
*/
|
|
23
|
-
export class NgxsConfig {
|
|
24
|
-
constructor() {
|
|
25
|
-
/**
|
|
26
|
-
* Defining the default state before module initialization
|
|
27
|
-
* This is convenient if we need to create a define our own set of states.
|
|
28
|
-
* @deprecated will be removed after v4
|
|
29
|
-
* (default: {})
|
|
30
|
-
*/
|
|
31
|
-
this.defaultsState = {};
|
|
32
|
-
/**
|
|
33
|
-
* Defining shared selector options
|
|
34
|
-
*/
|
|
35
|
-
this.selectorOptions = {
|
|
36
|
-
injectContainerState: true,
|
|
37
|
-
suppressErrors: true // TODO: default is true in v3, will change in v4
|
|
38
|
-
};
|
|
39
|
-
this.compatibility = {
|
|
40
|
-
strictContentSecurityPolicy: false
|
|
41
|
-
};
|
|
42
|
-
this.executionStrategy = DispatchOutsideZoneNgxsExecutionStrategy;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
/** @nocollapse */ NgxsConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
-
/** @nocollapse */ NgxsConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsConfig, providedIn: 'root', useFactory: () => mergeDeep(new NgxsConfig(), inject(NGXS_OPTIONS)) });
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsConfig, decorators: [{
|
|
48
|
-
type: Injectable,
|
|
49
|
-
args: [{
|
|
50
|
-
providedIn: 'root',
|
|
51
|
-
useFactory: () => mergeDeep(new NgxsConfig(), inject(NGXS_OPTIONS))
|
|
52
|
-
}]
|
|
53
|
-
}], ctorParameters: function () { return []; } });
|
|
54
|
-
/**
|
|
55
|
-
* Represents a basic change from a previous to a new value for a single state instance.
|
|
56
|
-
* Passed as a value in a NgxsSimpleChanges object to the ngxsOnChanges hook.
|
|
57
|
-
*/
|
|
58
|
-
export class NgxsSimpleChange {
|
|
59
|
-
constructor(previousValue, currentValue, firstChange) {
|
|
60
|
-
this.previousValue = previousValue;
|
|
61
|
-
this.currentValue = currentValue;
|
|
62
|
-
this.firstChange = firstChange;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFRLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU16RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx3Q0FBd0MsRUFBRSxNQUFNLDJEQUEyRCxDQUFDOztBQUtySCxNQUFNLFdBQVcsR0FBRyxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDO0FBRWxFLHNFQUFzRTtBQUN0RSx3RUFBd0U7QUFDeEUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQ2hELFdBQVcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDdEMsQ0FBQztBQUVGLHNFQUFzRTtBQUN0RSwrRUFBK0U7QUFDL0UsK0VBQStFO0FBQy9FLGdDQUFnQztBQUNoQyxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FDbkQsV0FBVyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUN6QyxDQUFDO0FBRUYseUVBQXlFO0FBQ3pFLDJFQUEyRTtBQUMzRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBRWxGLHlFQUF5RTtBQUN6RSwrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksY0FBYyxDQUM1QyxXQUFXLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUNsQyxDQUFDO0FBUUY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sVUFBVTtJQThDckI7UUFmQTs7Ozs7V0FLRztRQUNILGtCQUFhLEdBQWdCLEVBQUUsQ0FBQztRQUNoQzs7V0FFRztRQUNILG9CQUFlLEdBQTBCO1lBQ3ZDLG9CQUFvQixFQUFFLElBQUk7WUFDMUIsY0FBYyxFQUFFLElBQUksQ0FBQyxpREFBaUQ7U0FDdkUsQ0FBQztRQUdBLElBQUksQ0FBQyxhQUFhLEdBQUc7WUFDbkIsMkJBQTJCLEVBQUUsS0FBSztTQUNuQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHdDQUF3QyxDQUFDO0lBQ3BFLENBQUM7OzBIQW5EVSxVQUFVOzhIQUFWLFVBQVUsY0FIVCxNQUFNLGNBQ04sR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksVUFBVSxFQUFFLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDOzJGQUV4RCxVQUFVO2tCQUp0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO29CQUNsQixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztpQkFDcEU7O0FBa0hEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFDa0IsYUFBZ0IsRUFDaEIsWUFBZSxFQUNmLFdBQW9CO1FBRnBCLGtCQUFhLEdBQWIsYUFBYSxDQUFHO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFHO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQVM7SUFDbkMsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFR5cGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBQbGFpbk9iamVjdCwgybVTdGF0ZUNsYXNzIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcbmltcG9ydCB7IFN0YXRlT3BlcmF0b3IgfSBmcm9tICdAbmd4cy9zdG9yZS9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBtZXJnZURlZXAgfSBmcm9tICcuL3V0aWxzL3V0aWxzJztcbmltcG9ydCB7IERpc3BhdGNoT3V0c2lkZVpvbmVOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL2V4ZWN1dGlvbi9kaXNwYXRjaC1vdXRzaWRlLXpvbmUtbmd4cy1leGVjdXRpb24tc3RyYXRlZ3knO1xuaW1wb3J0IHsgTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0gZnJvbSAnLi9leGVjdXRpb24vc3ltYm9scyc7XG5pbXBvcnQgeyBTaGFyZWRTZWxlY3Rvck9wdGlvbnMgfSBmcm9tICcuL2ludGVybmFsL2ludGVybmFscyc7XG5pbXBvcnQgeyBTdGF0ZVRva2VuIH0gZnJvbSAnLi9zdGF0ZS10b2tlbi9zdGF0ZS10b2tlbic7XG5cbmNvbnN0IE5HX0RFVl9NT0RFID0gdHlwZW9mIG5nRGV2TW9kZSA9PT0gJ3VuZGVmaW5lZCcgfHwgbmdEZXZNb2RlO1xuXG4vLyBUaGUgaW5qZWN0aW9uIHRva2VuIGlzIHVzZWQgdG8gcmVzb2x2ZSBhIGxpc3Qgb2Ygc3RhdGVzIHByb3ZpZGVkIGF0XG4vLyB0aGUgcm9vdCBsZXZlbCB0aHJvdWdoIGVpdGhlciBgTmd4c01vZHVsZS5mb3JSb290YCBvciBgcHJvdmlkZVN0b3JlYC5cbmV4cG9ydCBjb25zdCBST09UX1NUQVRFX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEFycmF5PMm1U3RhdGVDbGFzcz4+KFxuICBOR19ERVZfTU9ERSA/ICdST09UX1NUQVRFX1RPS0VOJyA6ICcnXG4pO1xuXG4vLyBUaGUgaW5qZWN0aW9uIHRva2VuIGlzIHVzZWQgdG8gcmVzb2x2ZSBhIGxpc3Qgb2Ygc3RhdGVzIHByb3ZpZGVkIGF0XG4vLyB0aGUgZmVhdHVyZSBsZXZlbCB0aHJvdWdoIGVpdGhlciBgTmd4c01vZHVsZS5mb3JGZWF0dXJlYCBvciBgcHJvdmlkZVN0YXRlc2AuXG4vLyBUaGUgQXJyYXk8QXJyYXk+IGlzIHVzZWQgdG8gb3ZlcmxvYWQgdGhlIHJlc29sdmVkIHZhbHVlIG9mIHRoZSB0b2tlbiBiZWNhdXNlXG4vLyBpdCBpcyBhIG11bHRpLXByb3ZpZGVyIHRva2VuLlxuZXhwb3J0IGNvbnN0IEZFQVRVUkVfU1RBVEVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48QXJyYXk8QXJyYXk8ybVTdGF0ZUNsYXNzPj4+KFxuICBOR19ERVZfTU9ERSA/ICdGRUFUVVJFX1NUQVRFX1RPS0VOJyA6ICcnXG4pO1xuXG4vLyBUaGUgaW5qZWN0aW9uIHRva2VuIGlzIHVzZWQgdG8gcmVzb2x2ZSB0byBjdXN0b20gTkdYUyBwbHVnaW5zIHByb3ZpZGVkXG4vLyBhdCB0aGUgcm9vdCBsZXZlbCB0aHJvdWdoIGVpdGhlciBge3Byb3ZpZGV9YCBzY2hlbWUgb3IgYHdpdGhOZ3hzUGx1Z2luYC5cbmV4cG9ydCBjb25zdCBOR1hTX1BMVUdJTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oTkdfREVWX01PREUgPyAnTkdYU19QTFVHSU5TJyA6ICcnKTtcblxuLy8gVGhlIGluamVjdGlvbiB0b2tlbiBpcyB1c2VkIHRvIHJlc29sdmUgdG8gb3B0aW9ucyBwcm92aWRlZCBhdCB0aGUgcm9vdFxuLy8gbGV2ZWwgdGhyb3VnaCBlaXRoZXIgYE5neHNNb2R1bGUuZm9yUm9vdGAgb3IgYHByb3ZpZGVTdG9yZWAuXG5leHBvcnQgY29uc3QgTkdYU19PUFRJT05TID0gbmV3IEluamVjdGlvblRva2VuPE5neHNNb2R1bGVPcHRpb25zPihcbiAgTkdfREVWX01PREUgPyAnTkdYU19PUFRJT05TJyA6ICcnXG4pO1xuXG5leHBvcnQgdHlwZSBOZ3hzTGlmZUN5Y2xlID0gUGFydGlhbDxOZ3hzT25DaGFuZ2VzPiAmXG4gIFBhcnRpYWw8Tmd4c09uSW5pdD4gJlxuICBQYXJ0aWFsPE5neHNBZnRlckJvb3RzdHJhcD47XG5cbmV4cG9ydCB0eXBlIE5neHNQbHVnaW5GbiA9IChzdGF0ZTogYW55LCBtdXRhdGlvbjogYW55LCBuZXh0OiBOZ3hzTmV4dFBsdWdpbkZuKSA9PiBhbnk7XG5cbi8qKlxuICogVGhlIE5HWFMgY29uZmlnIHNldHRpbmdzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290JyxcbiAgdXNlRmFjdG9yeTogKCkgPT4gbWVyZ2VEZWVwKG5ldyBOZ3hzQ29uZmlnKCksIGluamVjdChOR1hTX09QVElPTlMpKVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hzQ29uZmlnIHtcbiAgLyoqXG4gICAqIFJ1biBpbiBkZXZlbG9wbWVudCBtb2RlLiBUaGlzIHdpbGwgYWRkIGFkZGl0aW9uYWwgZGVidWdnaW5nIGZlYXR1cmVzOlxuICAgKiAtIE9iamVjdC5mcmVlemUgb24gdGhlIHN0YXRlIGFuZCBhY3Rpb25zIHRvIGd1YXJhbnRlZSBpbW11dGFiaWxpdHlcbiAgICogKGRlZmF1bHQ6IGZhbHNlKVxuICAgKlxuICAgKiBOb3RlOiB0aGlzIHByb3BlcnR5IHdpbGwgYmUgYWNjb3VudGVkIG9ubHkgaW4gZGV2ZWxvcG1lbnQgbW9kZSB3aGVuIHVzaW5nIHRoZSBJdnkgY29tcGlsZXIuXG4gICAqIEl0IG1ha2VzIHNlbnNlIHRvIHVzZSBpdCBvbmx5IGR1cmluZyBkZXZlbG9wbWVudCB0byBlbnN1cmUgdGhlcmUncmUgbm8gc3RhdGUgbXV0YXRpb25zLlxuICAgKiBXaGVuIGJ1aWxkaW5nIGZvciBwcm9kdWN0aW9uLCB0aGUgT2JqZWN0LmZyZWV6ZSB3aWxsIGJlIHRyZWUtc2hha2VuIGF3YXkuXG4gICAqL1xuICBkZXZlbG9wbWVudE1vZGU6IGJvb2xlYW47XG4gIGNvbXBhdGliaWxpdHk6IHtcbiAgICAvKipcbiAgICAgKiBTdXBwb3J0IGEgc3RyaWN0IENvbnRlbnQgU2VjdXJpdHkgUG9saWN5LlxuICAgICAqIFRoaXMgd2lsbCBjaXJjdW12ZW50IHNvbWUgb3B0aW1pc2F0aW9ucyB0aGF0IHZpb2xhdGUgYSBzdHJpY3QgQ1NQIHRocm91Z2ggdGhlIHVzZSBvZiBgbmV3IEZ1bmN0aW9uKC4uLilgLlxuICAgICAqIChkZWZhdWx0OiBmYWxzZSlcbiAgICAgKi9cbiAgICBzdHJpY3RDb250ZW50U2VjdXJpdHlQb2xpY3k6IGJvb2xlYW47XG4gIH07XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIHRoZSBleGVjdXRpb24gY29udGV4dCB0byBwZXJmb3JtIGFzeW5jIG9wZXJhdGlvbnMgaW5zaWRlLiBBbiBpbXBsZW1lbnRhdGlvbiBjYW4gYmVcbiAgICogcHJvdmlkZWQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYmVoYXZpb3VyIHdoZXJlIHRoZSBhc3luYyBvcGVyYXRpb25zIGFyZSBydW5cbiAgICogb3V0c2lkZSBBbmd1bGFyJ3Mgem9uZSBidXQgYWxsIG9ic2VydmFibGUgYmVoYXZpb3VycyBvZiBOR1hTIGFyZSBydW4gYmFjayBpbnNpZGUgQW5ndWxhcidzIHpvbmUuXG4gICAqIFRoZXNlIG9ic2VydmFibGUgYmVoYXZpb3VycyBhcmUgZnJvbTpcbiAgICogICBgQFNlbGVjdCguLi4pYCwgYHN0b3JlLnNlbGVjdCguLi4pYCwgYGFjdGlvbnMuc3Vic2NyaWJlKC4uLilgIG9yIGBzdG9yZS5kaXNwYXRjaCguLi4pLnN1YnNjcmliZSguLi4pYFxuICAgKiBFdmVyeSBgem9uZS5ydW5gIGNhdXNlcyBBbmd1bGFyIHRvIHJ1biBjaGFuZ2UgZGV0ZWN0aW9uIG9uIHRoZSB3aG9sZSB0cmVlIChgYXBwLnRpY2soKWApIHNvIG9mIHlvdXJcbiAgICogYXBwbGljYXRpb24gZG9lc24ndCByZWx5IG9uIHpvbmUuanMgcnVubmluZyBjaGFuZ2UgZGV0ZWN0aW9uIHRoZW4geW91IGNhbiBzd2l0Y2ggdG8gdGhlXG4gICAqIGBOb29wTmd4c0V4ZWN1dGlvblN0cmF0ZWd5YCB0aGF0IGRvZXNuJ3QgaW50ZXJhY3Qgd2l0aCB6b25lcy5cbiAgICogKGRlZmF1bHQ6IG51bGwpXG4gICAqL1xuICBleGVjdXRpb25TdHJhdGVneTogVHlwZTxOZ3hzRXhlY3V0aW9uU3RyYXRlZ3k+O1xuICAvKipcbiAgICogRGVmaW5pbmcgdGhlIGRlZmF1bHQgc3RhdGUgYmVmb3JlIG1vZHVsZSBpbml0aWFsaXphdGlvblxuICAgKiBUaGlzIGlzIGNvbnZlbmllbnQgaWYgd2UgbmVlZCB0byBjcmVhdGUgYSBkZWZpbmUgb3VyIG93biBzZXQgb2Ygc3RhdGVzLlxuICAgKiBAZGVwcmVjYXRlZCB3aWxsIGJlIHJlbW92ZWQgYWZ0ZXIgdjRcbiAgICogKGRlZmF1bHQ6IHt9KVxuICAgKi9cbiAgZGVmYXVsdHNTdGF0ZTogUGxhaW5PYmplY3QgPSB7fTtcbiAgLyoqXG4gICAqIERlZmluaW5nIHNoYXJlZCBzZWxlY3RvciBvcHRpb25zXG4gICAqL1xuICBzZWxlY3Rvck9wdGlvbnM6IFNoYXJlZFNlbGVjdG9yT3B0aW9ucyA9IHtcbiAgICBpbmplY3RDb250YWluZXJTdGF0ZTogdHJ1ZSwgLy8gVE9ETzogZGVmYXVsdCBpcyB0cnVlIGluIHYzLCB3aWxsIGNoYW5nZSBpbiB2NFxuICAgIHN1cHByZXNzRXJyb3JzOiB0cnVlIC8vIFRPRE86IGRlZmF1bHQgaXMgdHJ1ZSBpbiB2Mywgd2lsbCBjaGFuZ2UgaW4gdjRcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmNvbXBhdGliaWxpdHkgPSB7XG4gICAgICBzdHJpY3RDb250ZW50U2VjdXJpdHlQb2xpY3k6IGZhbHNlXG4gICAgfTtcbiAgICB0aGlzLmV4ZWN1dGlvblN0cmF0ZWd5ID0gRGlzcGF0Y2hPdXRzaWRlWm9uZU5neHNFeGVjdXRpb25TdHJhdGVneTtcbiAgfVxufVxuXG5leHBvcnQgeyBTdGF0ZU9wZXJhdG9yIH07XG5cbi8qKlxuICogU3RhdGUgY29udGV4dCBwcm92aWRlZCB0byB0aGUgYWN0aW9ucyBpbiB0aGUgc3RhdGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdGVDb250ZXh0PFQ+IHtcbiAgLyoqXG4gICAqIEdldCB0aGUgY3VycmVudCBzdGF0ZS5cbiAgICovXG4gIGdldFN0YXRlKCk6IFQ7XG5cbiAgLyoqXG4gICAqIFJlc2V0IHRoZSBzdGF0ZSB0byBhIG5ldyB2YWx1ZS5cbiAgICovXG4gIHNldFN0YXRlKHZhbDogVCB8IFN0YXRlT3BlcmF0b3I8VD4pOiBUO1xuXG4gIC8qKlxuICAgKiBQYXRjaCB0aGUgZXhpc3Rpbmcgc3RhdGUgd2l0aCB0aGUgcHJvdmlkZWQgdmFsdWUuXG4gICAqL1xuICBwYXRjaFN0YXRlKHZhbDogUGFydGlhbDxUPik6IFQ7XG5cbiAgLyoqXG4gICAqIERpc3BhdGNoIGEgbmV3IGFjdGlvbiBhbmQgcmV0dXJuIHRoZSBkaXNwYXRjaGVkIG9ic2VydmFibGUuXG4gICAqL1xuICBkaXNwYXRjaChhY3Rpb25zOiBhbnkgfCBhbnlbXSk6IE9ic2VydmFibGU8dm9pZD47XG59XG5cbmV4cG9ydCB0eXBlIE5neHNOZXh0UGx1Z2luRm4gPSAoc3RhdGU6IGFueSwgbXV0YXRpb246IGFueSkgPT4gYW55O1xuXG4vKipcbiAqIFBsdWdpbiBpbnRlcmZhY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZ3hzUGx1Z2luIHtcbiAgLyoqXG4gICAqIEhhbmRsZSB0aGUgc3RhdGUvYWN0aW9uIGJlZm9yZSBpdHMgc3VibWl0dGVkIHRvIHRoZSBzdGF0ZSBoYW5kbGVycy5cbiAgICovXG4gIGhhbmRsZShzdGF0ZTogYW55LCBhY3Rpb246IGFueSwgbmV4dDogTmd4c05leHRQbHVnaW5Gbik6IGFueTtcbn1cblxuLyoqXG4gKiBPcHRpb25zIHRoYXQgY2FuIGJlIHByb3ZpZGVkIHRvIHRoZSBzdG9yZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdG9yZU9wdGlvbnM8VD4ge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgc3RhdGUuIFJlcXVpcmVkLlxuICAgKi9cbiAgbmFtZTogc3RyaW5nIHwgU3RhdGVUb2tlbjxUPjtcblxuICAvKipcbiAgICogRGVmYXVsdCB2YWx1ZXMgZm9yIHRoZSBzdGF0ZS4gSWYgbm90IHByb3ZpZGVkLCB1c2VzIGVtcHR5IG9iamVjdC5cbiAgICovXG4gIGRlZmF1bHRzPzogVDtcblxuICAvKipcbiAgICogU3ViIHN0YXRlcyBmb3IgdGhlIGdpdmVuIHN0YXRlLlxuICAgKi9cbiAgY2hpbGRyZW4/OiDJtVN0YXRlQ2xhc3NbXTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgYmFzaWMgY2hhbmdlIGZyb20gYSBwcmV2aW91cyB0byBhIG5ldyB2YWx1ZSBmb3IgYSBzaW5nbGUgc3RhdGUgaW5zdGFuY2UuXG4gKiBQYXNzZWQgYXMgYSB2YWx1ZSBpbiBhIE5neHNTaW1wbGVDaGFuZ2VzIG9iamVjdCB0byB0aGUgbmd4c09uQ2hhbmdlcyBob29rLlxuICovXG5leHBvcnQgY2xhc3MgTmd4c1NpbXBsZUNoYW5nZTxUID0gYW55PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBwcmV2aW91c1ZhbHVlOiBULFxuICAgIHB1YmxpYyByZWFkb25seSBjdXJyZW50VmFsdWU6IFQsXG4gICAgcHVibGljIHJlYWRvbmx5IGZpcnN0Q2hhbmdlOiBib29sZWFuXG4gICkge31cbn1cblxuLyoqXG4gKiBPbiBpbml0IGludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5neHNPbkluaXQge1xuICBuZ3hzT25Jbml0KGN0eDogU3RhdGVDb250ZXh0PGFueT4pOiB2b2lkO1xufVxuXG4vKipcbiAqIE9uIGNoYW5nZSBpbnRlcmZhY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZ3hzT25DaGFuZ2VzIHtcbiAgbmd4c09uQ2hhbmdlcyhjaGFuZ2U6IE5neHNTaW1wbGVDaGFuZ2UpOiB2b2lkO1xufVxuXG4vKipcbiAqIEFmdGVyIGJvb3RzdHJhcCBpbnRlcmZhY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZ3hzQWZ0ZXJCb290c3RyYXAge1xuICBuZ3hzQWZ0ZXJCb290c3RyYXAoY3R4OiBTdGF0ZUNvbnRleHQ8YW55Pik6IHZvaWQ7XG59XG5cbmV4cG9ydCB0eXBlIE5neHNNb2R1bGVPcHRpb25zID0gUGFydGlhbDxOZ3hzQ29uZmlnPjtcblxuLyoqIEBpbnRlcm5hbCAqL1xuZGVjbGFyZSBnbG9iYWwge1xuICBjb25zdCBuZ0Rldk1vZGU6IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Returns the type from an action instance/class.
|
|
3
|
-
* @ignore
|
|
4
|
-
*/
|
|
5
|
-
export function getActionTypeFromInstance(action) {
|
|
6
|
-
if (action.constructor && action.constructor.type) {
|
|
7
|
-
return action.constructor.type;
|
|
8
|
-
}
|
|
9
|
-
else {
|
|
10
|
-
return action.type;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Matches a action
|
|
15
|
-
* @ignore
|
|
16
|
-
*/
|
|
17
|
-
export function actionMatcher(action1) {
|
|
18
|
-
const type1 = getActionTypeFromInstance(action1);
|
|
19
|
-
return function (action2) {
|
|
20
|
-
return type1 === getActionTypeFromInstance(action2);
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Set a deeply nested value. Example:
|
|
25
|
-
*
|
|
26
|
-
* setValue({ foo: { bar: { eat: false } } },
|
|
27
|
-
* 'foo.bar.eat', true) //=> { foo: { bar: { eat: true } } }
|
|
28
|
-
*
|
|
29
|
-
* While it traverses it also creates new objects from top down.
|
|
30
|
-
*
|
|
31
|
-
* @ignore
|
|
32
|
-
*/
|
|
33
|
-
export const setValue = (obj, prop, val) => {
|
|
34
|
-
obj = { ...obj };
|
|
35
|
-
const split = prop.split('.');
|
|
36
|
-
const lastIndex = split.length - 1;
|
|
37
|
-
split.reduce((acc, part, index) => {
|
|
38
|
-
if (index === lastIndex) {
|
|
39
|
-
acc[part] = val;
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
acc[part] = Array.isArray(acc[part]) ? acc[part].slice() : { ...acc[part] };
|
|
43
|
-
}
|
|
44
|
-
return acc && acc[part];
|
|
45
|
-
}, obj);
|
|
46
|
-
return obj;
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* Get a deeply nested value. Example:
|
|
50
|
-
*
|
|
51
|
-
* getValue({ foo: bar: [] }, 'foo.bar') //=> []
|
|
52
|
-
*
|
|
53
|
-
* @ignore
|
|
54
|
-
*/
|
|
55
|
-
export const getValue = (obj, prop) => prop.split('.').reduce((acc, part) => acc && acc[part], obj);
|
|
56
|
-
/**
|
|
57
|
-
* Simple object check.
|
|
58
|
-
*
|
|
59
|
-
* isObject({a:1}) //=> true
|
|
60
|
-
* isObject(1) //=> false
|
|
61
|
-
*
|
|
62
|
-
* @ignore
|
|
63
|
-
*/
|
|
64
|
-
export const isObject = (item) => {
|
|
65
|
-
return item && typeof item === 'object' && !Array.isArray(item);
|
|
66
|
-
};
|
|
67
|
-
/**
|
|
68
|
-
* Deep merge two objects.
|
|
69
|
-
*
|
|
70
|
-
* mergeDeep({a:1, b:{x: 1, y:2}}, {b:{x: 3}, c:4}) //=> {a:1, b:{x:3, y:2}, c:4}
|
|
71
|
-
*
|
|
72
|
-
* @param base base object onto which `sources` will be applied
|
|
73
|
-
*/
|
|
74
|
-
export const mergeDeep = (base, ...sources) => {
|
|
75
|
-
if (!sources.length)
|
|
76
|
-
return base;
|
|
77
|
-
const source = sources.shift();
|
|
78
|
-
if (isObject(base) && isObject(source)) {
|
|
79
|
-
for (const key in source) {
|
|
80
|
-
if (isObject(source[key])) {
|
|
81
|
-
if (!base[key])
|
|
82
|
-
Object.assign(base, { [key]: {} });
|
|
83
|
-
mergeDeep(base[key], source[key]);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
Object.assign(base, { [key]: source[key] });
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return mergeDeep(base, ...sources);
|
|
91
|
-
};
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE1BQVc7SUFDbkQsSUFBSSxNQUFNLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFO1FBQ2pELE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7S0FDaEM7U0FBTTtRQUNMLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQztLQUNwQjtBQUNILENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQVk7SUFDeEMsTUFBTSxLQUFLLEdBQUcseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFakQsT0FBTyxVQUFTLE9BQVk7UUFDMUIsT0FBTyxLQUFLLEtBQUsseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVEsRUFBRSxJQUFZLEVBQUUsR0FBUSxFQUFFLEVBQUU7SUFDM0QsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUVqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBRW5DLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ2hDLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ2pCO2FBQU07WUFDTCxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7U0FDN0U7UUFFRCxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRVIsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFRLEVBQUUsSUFBWSxFQUFPLEVBQUUsQ0FDdEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFRLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtJQUNwQyxPQUFPLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2xFLENBQUMsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLElBQVMsRUFBRSxHQUFHLE9BQWMsRUFBTyxFQUFFO0lBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ2pDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUUvQixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDdEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUU7WUFDeEIsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO29CQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRCxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ25DO2lCQUFNO2dCQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzdDO1NBQ0Y7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0FBQ3JDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyB0aGUgdHlwZSBmcm9tIGFuIGFjdGlvbiBpbnN0YW5jZS9jbGFzcy5cbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UoYWN0aW9uOiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoYWN0aW9uLmNvbnN0cnVjdG9yICYmIGFjdGlvbi5jb25zdHJ1Y3Rvci50eXBlKSB7XG4gICAgcmV0dXJuIGFjdGlvbi5jb25zdHJ1Y3Rvci50eXBlO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBhY3Rpb24udHlwZTtcbiAgfVxufVxuXG4vKipcbiAqIE1hdGNoZXMgYSBhY3Rpb25cbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbk1hdGNoZXIoYWN0aW9uMTogYW55KSB7XG4gIGNvbnN0IHR5cGUxID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShhY3Rpb24xKTtcblxuICByZXR1cm4gZnVuY3Rpb24oYWN0aW9uMjogYW55KSB7XG4gICAgcmV0dXJuIHR5cGUxID09PSBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlKGFjdGlvbjIpO1xuICB9O1xufVxuXG4vKipcbiAqIFNldCBhIGRlZXBseSBuZXN0ZWQgdmFsdWUuIEV4YW1wbGU6XG4gKlxuICogICBzZXRWYWx1ZSh7IGZvbzogeyBiYXI6IHsgZWF0OiBmYWxzZSB9IH0gfSxcbiAqICAgICAgJ2Zvby5iYXIuZWF0JywgdHJ1ZSkgLy89PiB7IGZvbzogeyBiYXI6IHsgZWF0OiB0cnVlIH0gfSB9XG4gKlxuICogV2hpbGUgaXQgdHJhdmVyc2VzIGl0IGFsc28gY3JlYXRlcyBuZXcgb2JqZWN0cyBmcm9tIHRvcCBkb3duLlxuICpcbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGNvbnN0IHNldFZhbHVlID0gKG9iajogYW55LCBwcm9wOiBzdHJpbmcsIHZhbDogYW55KSA9PiB7XG4gIG9iaiA9IHsgLi4ub2JqIH07XG5cbiAgY29uc3Qgc3BsaXQgPSBwcm9wLnNwbGl0KCcuJyk7XG4gIGNvbnN0IGxhc3RJbmRleCA9IHNwbGl0Lmxlbmd0aCAtIDE7XG5cbiAgc3BsaXQucmVkdWNlKChhY2MsIHBhcnQsIGluZGV4KSA9PiB7XG4gICAgaWYgKGluZGV4ID09PSBsYXN0SW5kZXgpIHtcbiAgICAgIGFjY1twYXJ0XSA9IHZhbDtcbiAgICB9IGVsc2Uge1xuICAgICAgYWNjW3BhcnRdID0gQXJyYXkuaXNBcnJheShhY2NbcGFydF0pID8gYWNjW3BhcnRdLnNsaWNlKCkgOiB7IC4uLmFjY1twYXJ0XSB9O1xuICAgIH1cblxuICAgIHJldHVybiBhY2MgJiYgYWNjW3BhcnRdO1xuICB9LCBvYmopO1xuXG4gIHJldHVybiBvYmo7XG59O1xuXG4vKipcbiAqIEdldCBhIGRlZXBseSBuZXN0ZWQgdmFsdWUuIEV4YW1wbGU6XG4gKlxuICogICAgZ2V0VmFsdWUoeyBmb286IGJhcjogW10gfSwgJ2Zvby5iYXInKSAvLz0+IFtdXG4gKlxuICogQGlnbm9yZVxuICovXG5leHBvcnQgY29uc3QgZ2V0VmFsdWUgPSAob2JqOiBhbnksIHByb3A6IHN0cmluZyk6IGFueSA9PlxuICBwcm9wLnNwbGl0KCcuJykucmVkdWNlKChhY2M6IGFueSwgcGFydDogc3RyaW5nKSA9PiBhY2MgJiYgYWNjW3BhcnRdLCBvYmopO1xuXG4vKipcbiAqIFNpbXBsZSBvYmplY3QgY2hlY2suXG4gKlxuICogICAgaXNPYmplY3Qoe2E6MX0pIC8vPT4gdHJ1ZVxuICogICAgaXNPYmplY3QoMSkgLy89PiBmYWxzZVxuICpcbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGNvbnN0IGlzT2JqZWN0ID0gKGl0ZW06IGFueSkgPT4ge1xuICByZXR1cm4gaXRlbSAmJiB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkoaXRlbSk7XG59O1xuXG4vKipcbiAqIERlZXAgbWVyZ2UgdHdvIG9iamVjdHMuXG4gKlxuICogICAgbWVyZ2VEZWVwKHthOjEsIGI6e3g6IDEsIHk6Mn19LCB7Yjp7eDogM30sIGM6NH0pIC8vPT4ge2E6MSwgYjp7eDozLCB5OjJ9LCBjOjR9XG4gKlxuICogQHBhcmFtIGJhc2UgYmFzZSBvYmplY3Qgb250byB3aGljaCBgc291cmNlc2Agd2lsbCBiZSBhcHBsaWVkXG4gKi9cbmV4cG9ydCBjb25zdCBtZXJnZURlZXAgPSAoYmFzZTogYW55LCAuLi5zb3VyY2VzOiBhbnlbXSk6IGFueSA9PiB7XG4gIGlmICghc291cmNlcy5sZW5ndGgpIHJldHVybiBiYXNlO1xuICBjb25zdCBzb3VyY2UgPSBzb3VyY2VzLnNoaWZ0KCk7XG5cbiAgaWYgKGlzT2JqZWN0KGJhc2UpICYmIGlzT2JqZWN0KHNvdXJjZSkpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBzb3VyY2UpIHtcbiAgICAgIGlmIChpc09iamVjdChzb3VyY2Vba2V5XSkpIHtcbiAgICAgICAgaWYgKCFiYXNlW2tleV0pIE9iamVjdC5hc3NpZ24oYmFzZSwgeyBba2V5XToge30gfSk7XG4gICAgICAgIG1lcmdlRGVlcChiYXNlW2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oYmFzZSwgeyBba2V5XTogc291cmNlW2tleV0gfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1lcmdlRGVlcChiYXNlLCAuLi5zb3VyY2VzKTtcbn07XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-store-internals-testing.mjs","sources":["../../../packages/store/internals/testing/src/helpers/ngxs-test.component.ts","../../../packages/store/internals/testing/src/helpers/ngxs-test.module.ts","../../../packages/store/internals/testing/src/ngxs.setup.ts","../../../packages/store/internals/testing/src/fresh-platform.ts","../../../packages/store/internals/testing/src/skip-console-logging.ts","../../../packages/store/internals/testing/src/ngxs-store-internals-testing.ts"],"sourcesContent":["import { AfterViewInit, Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-root',\n template: ''\n})\nexport class NgxsTestComponent implements OnInit, AfterViewInit {\n public ngOnInit(): void {}\n public ngAfterViewInit(): void {}\n}\n","import { ApplicationRef, NgModule } from '@angular/core';\nimport { BrowserModule } from '@angular/platform-browser';\n\nimport { NgxsTestComponent } from './ngxs-test.component';\n\n@NgModule({\n imports: [BrowserModule],\n declarations: [NgxsTestComponent]\n})\nexport class NgxsTestModule {\n public static ngDoBootstrap(app: ApplicationRef): void {\n app.bootstrap(NgxsTestComponent);\n }\n}\n","import { ApplicationRef } from '@angular/core';\nimport { TestBed, TestBedStatic } from '@angular/core/testing';\nimport { DOCUMENT } from '@angular/common';\nimport { ɵBrowserDomAdapter as BrowserDomAdapter } from '@angular/platform-browser';\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting\n} from '@angular/platform-browser-dynamic/testing';\nimport { NgxsModule, Store } from '@ngxs/store';\n\nimport { NgxsTestModule } from './helpers/ngxs-test.module';\nimport { NgxsOptionsTesting, NgxsTesting } from './symbol';\n\nexport class NgxsTestBed {\n public static configureTestingStates(options: NgxsOptionsTesting): NgxsTesting {\n this.resetTestBed();\n\n if (options.before) {\n options.before();\n }\n\n TestBed.configureTestingModule({\n imports: [\n NgxsTestModule,\n NgxsModule.forRoot(options.states || [], options.ngxsOptions || {}),\n ...(options.imports || [])\n ]\n }).compileComponents();\n\n NgxsTestBed.ngxsBootstrap();\n\n return {\n get store(): Store {\n return TestBed.inject(Store);\n },\n get getTestBed(): TestBedStatic {\n return TestBed;\n }\n };\n }\n\n private static ngxsBootstrap(): void {\n NgxsTestBed.createRootNode();\n NgxsTestModule.ngDoBootstrap(TestBed.inject(ApplicationRef));\n }\n\n private static resetTestBed(): void {\n TestBed.resetTestEnvironment();\n TestBed.initTestEnvironment(BrowserDynamicTestingModule, platformBrowserDynamicTesting(), {\n teardown: { destroyAfterEach: true }\n });\n }\n\n private static createRootNode(selector = 'app-root'): void {\n const document = TestBed.inject(DOCUMENT);\n const adapter = new BrowserDomAdapter();\n const root = adapter.createElement(selector);\n document.body.appendChild(root);\n }\n}\n","import { TestBed } from '@angular/core/testing';\nimport { DOCUMENT } from '@angular/common';\nimport { ɵgetDOM as getDOM } from '@angular/platform-browser';\nimport { VERSION, destroyPlatform, createPlatform } from '@angular/core';\n\nfunction createRootElement() {\n const document = TestBed.inject(DOCUMENT);\n const root = getDOM().createElement('app-root', document);\n document.body.appendChild(root);\n}\n\nfunction removeRootElement() {\n const root: Element = document.getElementsByTagName('app-root').item(0)!;\n try {\n document.body.removeChild(root);\n } catch {}\n}\n\nfunction destroyPlatformBeforeBootstrappingTheNewOne(freshUrl: string) {\n destroyPlatform();\n resetLocationToUrl(freshUrl);\n createRootElement();\n}\n\n// As we create our custom platform via `bootstrapModule`\n// we have to destroy it after assetions and revert\n// the previous one\nfunction resetPlatformAfterBootstrapping() {\n removeRootElement();\n destroyPlatform();\n const version = +VERSION.major;\n // https://github.com/angular/angular/commit/e250db4f261741b04ee4cbad4dec41a8908a12aa\n if (version < 14) {\n createPlatform(TestBed);\n }\n}\n\nfunction resetLocationToUrl(freshUrl: string) {\n window.history.replaceState({}, 'Test', freshUrl);\n}\n\nexport function freshPlatform(fn: (done?: VoidFunction) => Promise<void>) {\n let resolve: VoidFunction | null = null;\n let reject: ((error: Error) => void) | null = null;\n let whenDoneIsCalledPromise: Promise<void> | null = null;\n\n const hasDoneArgument = fn.length === 1;\n\n if (hasDoneArgument) {\n whenDoneIsCalledPromise = new Promise<void>((_resolve, _reject) => {\n resolve = _resolve;\n reject = _reject;\n });\n }\n\n return async function testWithAFreshPlatform() {\n try {\n const freshUrl = '/';\n destroyPlatformBeforeBootstrappingTheNewOne(freshUrl);\n\n if (hasDoneArgument) {\n await fn((error?: Error) => {\n if (error) {\n reject!(error);\n } else {\n resolve!();\n }\n });\n await whenDoneIsCalledPromise!;\n } else {\n await fn();\n }\n } finally {\n resetPlatformAfterBootstrapping();\n }\n };\n}\n","/// <reference types=\"jest\" />\n\nexport function skipConsoleLogging<T extends (...args: any[]) => any>(fn: T): ReturnType<T> {\n const consoleSpies = [\n jest.spyOn(console, 'log').mockImplementation(() => {}),\n jest.spyOn(console, 'warn').mockImplementation(() => {}),\n jest.spyOn(console, 'error').mockImplementation(() => {}),\n jest.spyOn(console, 'info').mockImplementation(() => {})\n ];\n function restoreSpies() {\n consoleSpies.forEach(spy => spy.mockRestore());\n }\n let restoreSpyAsync = false;\n try {\n const returnValue = fn();\n if (returnValue instanceof Promise) {\n restoreSpyAsync = true;\n return returnValue.finally(() => restoreSpies()) as ReturnType<T>;\n }\n return returnValue;\n } finally {\n if (!restoreSpyAsync) {\n restoreSpies();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["BrowserDomAdapter","getDOM"],"mappings":"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"}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, InjectionToken } from '@angular/core';
|
|
3
|
-
import { ReplaySubject } from 'rxjs';
|
|
4
|
-
|
|
5
|
-
class NgxsBootstrapper {
|
|
6
|
-
constructor() {
|
|
7
|
-
/**
|
|
8
|
-
* Use `ReplaySubject`, thus we can get cached value even if the stream is completed
|
|
9
|
-
*/
|
|
10
|
-
this.bootstrap$ = new ReplaySubject(1);
|
|
11
|
-
}
|
|
12
|
-
get appBootstrapped$() {
|
|
13
|
-
return this.bootstrap$.asObservable();
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* This event will be emitted after attaching `ComponentRef` of the root component
|
|
17
|
-
* to the tree of views, that's a signal that application has been fully rendered
|
|
18
|
-
*/
|
|
19
|
-
bootstrap() {
|
|
20
|
-
this.bootstrap$.next(true);
|
|
21
|
-
this.bootstrap$.complete();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
/** @nocollapse */ NgxsBootstrapper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsBootstrapper, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
-
/** @nocollapse */ NgxsBootstrapper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsBootstrapper, providedIn: 'root' });
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImport: i0, type: NgxsBootstrapper, decorators: [{
|
|
27
|
-
type: Injectable,
|
|
28
|
-
args: [{ providedIn: 'root' }]
|
|
29
|
-
}] });
|
|
30
|
-
|
|
31
|
-
function defaultEqualityCheck(a, b) {
|
|
32
|
-
return a === b;
|
|
33
|
-
}
|
|
34
|
-
function areArgumentsShallowlyEqual(equalityCheck, prev, next) {
|
|
35
|
-
if (prev === null || next === null || prev.length !== next.length) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
// Do this in a for loop (and not a `forEach` or an `every`) so we can determine equality as fast as possible.
|
|
39
|
-
const length = prev.length;
|
|
40
|
-
for (let i = 0; i < length; i++) {
|
|
41
|
-
if (!equalityCheck(prev[i], next[i])) {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return true;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Memoize a function on its last inputs only.
|
|
49
|
-
* Originally from: https://github.com/reduxjs/reselect/blob/master/src/index.js
|
|
50
|
-
*
|
|
51
|
-
* @ignore
|
|
52
|
-
*/
|
|
53
|
-
function memoize(func, equalityCheck = defaultEqualityCheck) {
|
|
54
|
-
let lastArgs = null;
|
|
55
|
-
let lastResult = null;
|
|
56
|
-
// we reference arguments instead of spreading them for performance reasons
|
|
57
|
-
function memoized() {
|
|
58
|
-
// eslint-disable-next-line prefer-rest-params
|
|
59
|
-
if (!areArgumentsShallowlyEqual(equalityCheck, lastArgs, arguments)) {
|
|
60
|
-
// apply arguments instead of spreading for performance.
|
|
61
|
-
// eslint-disable-next-line prefer-rest-params, prefer-spread
|
|
62
|
-
lastResult = func.apply(null, arguments);
|
|
63
|
-
}
|
|
64
|
-
// eslint-disable-next-line prefer-rest-params
|
|
65
|
-
lastArgs = arguments;
|
|
66
|
-
return lastResult;
|
|
67
|
-
}
|
|
68
|
-
memoized.reset = function () {
|
|
69
|
-
// The hidden (for now) ability to reset the memoization
|
|
70
|
-
lastArgs = null;
|
|
71
|
-
lastResult = null;
|
|
72
|
-
};
|
|
73
|
-
return memoized;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const NG_DEV_MODE$1 = typeof ngDevMode === 'undefined' || ngDevMode;
|
|
77
|
-
class InitialState {
|
|
78
|
-
static set(state) {
|
|
79
|
-
this._value = state;
|
|
80
|
-
}
|
|
81
|
-
static pop() {
|
|
82
|
-
const state = this._value;
|
|
83
|
-
this._value = {};
|
|
84
|
-
return state;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
InitialState._value = {};
|
|
88
|
-
const INITIAL_STATE_TOKEN = new InjectionToken(NG_DEV_MODE$1 ? 'INITIAL_STATE_TOKEN' : '', {
|
|
89
|
-
providedIn: 'root',
|
|
90
|
-
factory: () => InitialState.pop()
|
|
91
|
-
});
|
|
92
|
-
|
|
93
|
-
// This key is used to store metadata on state classes,
|
|
94
|
-
// such as actions and other related information.
|
|
95
|
-
const ɵMETA_KEY = 'NGXS_META';
|
|
96
|
-
// This key is used to store options on state classes
|
|
97
|
-
// provided through the `@State` decorator.
|
|
98
|
-
const ɵMETA_OPTIONS_KEY = 'NGXS_OPTIONS_META';
|
|
99
|
-
// This key is used to store selector metadata on selector functions,
|
|
100
|
-
// such as decorated with the `@Selector` or provided through the
|
|
101
|
-
// `createSelector` function.
|
|
102
|
-
const ɵSELECTOR_META_KEY = 'NGXS_SELECTOR_META';
|
|
103
|
-
|
|
104
|
-
const NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;
|
|
105
|
-
// These tokens are internal and can change at any point.
|
|
106
|
-
const ɵNGXS_STATE_FACTORY = new InjectionToken(NG_DEV_MODE ? 'ɵNGXS_STATE_FACTORY' : '');
|
|
107
|
-
const ɵNGXS_STATE_CONTEXT_FACTORY = new InjectionToken(NG_DEV_MODE ? 'ɵNGXS_STATE_CONTEXT_FACTORY' : '');
|
|
108
|
-
|
|
109
|
-
/**
|
|
110
|
-
* Generated bundle index. Do not edit.
|
|
111
|
-
*/
|
|
112
|
-
|
|
113
|
-
export { INITIAL_STATE_TOKEN, InitialState, NgxsBootstrapper, memoize, ɵMETA_KEY, ɵMETA_OPTIONS_KEY, ɵNGXS_STATE_CONTEXT_FACTORY, ɵNGXS_STATE_FACTORY, ɵSELECTOR_META_KEY };
|
|
114
|
-
//# sourceMappingURL=ngxs-store-internals.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-store-internals.mjs","sources":["../../../packages/store/internals/src/ngxs-bootstrapper.ts","../../../packages/store/internals/src/memoize.ts","../../../packages/store/internals/src/initial-state.ts","../../../packages/store/internals/src/symbols.ts","../../../packages/store/internals/src/internal-tokens.ts","../../../packages/store/internals/src/ngxs-store-internals.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class NgxsBootstrapper {\n /**\n * Use `ReplaySubject`, thus we can get cached value even if the stream is completed\n */\n private bootstrap$ = new ReplaySubject<boolean>(1);\n\n get appBootstrapped$(): Observable<boolean> {\n return this.bootstrap$.asObservable();\n }\n\n /**\n * This event will be emitted after attaching `ComponentRef` of the root component\n * to the tree of views, that's a signal that application has been fully rendered\n */\n bootstrap(): void {\n this.bootstrap$.next(true);\n this.bootstrap$.complete();\n }\n}\n","function defaultEqualityCheck(a: any, b: any) {\n return a === b;\n}\n\nfunction areArgumentsShallowlyEqual(\n equalityCheck: (a: any, b: any) => boolean,\n prev: IArguments | null,\n next: IArguments | null\n) {\n if (prev === null || next === null || prev.length !== next.length) {\n return false;\n }\n\n // Do this in a for loop (and not a `forEach` or an `every`) so we can determine equality as fast as possible.\n const length = prev.length;\n for (let i = 0; i < length; i++) {\n if (!equalityCheck(prev[i], next[i])) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Memoize a function on its last inputs only.\n * Originally from: https://github.com/reduxjs/reselect/blob/master/src/index.js\n *\n * @ignore\n */\nexport function memoize<T extends (...args: any[]) => any>(\n func: T,\n equalityCheck = defaultEqualityCheck\n): T {\n let lastArgs: IArguments | null = null;\n let lastResult: any = null;\n // we reference arguments instead of spreading them for performance reasons\n function memoized() {\n // eslint-disable-next-line prefer-rest-params\n if (!areArgumentsShallowlyEqual(equalityCheck, lastArgs, arguments)) {\n // apply arguments instead of spreading for performance.\n // eslint-disable-next-line prefer-rest-params, prefer-spread\n lastResult = (<Function>func).apply(null, arguments);\n }\n // eslint-disable-next-line prefer-rest-params\n lastArgs = arguments;\n return lastResult;\n }\n (<any>memoized).reset = function() {\n // The hidden (for now) ability to reset the memoization\n lastArgs = null;\n lastResult = null;\n };\n return memoized as T;\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { PlainObject } from './symbols';\n\ndeclare const ngDevMode: boolean;\n\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;\n\nexport class InitialState {\n private static _value: PlainObject = {};\n\n static set(state: PlainObject) {\n this._value = state;\n }\n\n static pop(): PlainObject {\n const state = this._value;\n this._value = {};\n return state;\n }\n}\n\nexport const INITIAL_STATE_TOKEN = new InjectionToken<PlainObject>(\n NG_DEV_MODE ? 'INITIAL_STATE_TOKEN' : '',\n {\n providedIn: 'root',\n factory: () => InitialState.pop()\n }\n);\n","export interface PlainObject {\n [key: string]: any;\n}\n\nexport interface PlainObjectOf<T> {\n [key: string]: T;\n}\n\nexport type ɵStateClass<T = any> = new (...args: any[]) => T;\n\n// This key is used to store metadata on state classes,\n// such as actions and other related information.\nexport const ɵMETA_KEY = 'NGXS_META';\n// This key is used to store options on state classes\n// provided through the `@State` decorator.\nexport const ɵMETA_OPTIONS_KEY = 'NGXS_OPTIONS_META';\n// This key is used to store selector metadata on selector functions,\n// such as decorated with the `@Selector` or provided through the\n// `createSelector` function.\nexport const ɵSELECTOR_META_KEY = 'NGXS_SELECTOR_META';\n","import { InjectionToken } from '@angular/core';\n\ndeclare const ngDevMode: boolean;\n\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || ngDevMode;\n\n// These tokens are internal and can change at any point.\n\nexport const ɵNGXS_STATE_FACTORY = new InjectionToken<any>(\n NG_DEV_MODE ? 'ɵNGXS_STATE_FACTORY' : ''\n);\n\nexport const ɵNGXS_STATE_CONTEXT_FACTORY = new InjectionToken<any>(\n NG_DEV_MODE ? 'ɵNGXS_STATE_CONTEXT_FACTORY' : ''\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["NG_DEV_MODE"],"mappings":"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"}
|