@ngxs/store 18.1.5 → 18.1.6-dev.master-a9e7ff3

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.
Files changed (153) hide show
  1. package/experimental/index.d.ts +6 -5
  2. package/fesm2022/ngxs-store-experimental.mjs +8 -25
  3. package/fesm2022/ngxs-store-experimental.mjs.map +1 -1
  4. package/fesm2022/ngxs-store-internals-testing.mjs +8 -9
  5. package/fesm2022/ngxs-store-internals-testing.mjs.map +1 -1
  6. package/fesm2022/ngxs-store-internals.mjs +9 -11
  7. package/fesm2022/ngxs-store-internals.mjs.map +1 -1
  8. package/fesm2022/ngxs-store-operators.mjs.map +1 -1
  9. package/fesm2022/ngxs-store-plugins.mjs +14 -5
  10. package/fesm2022/ngxs-store-plugins.mjs.map +1 -1
  11. package/fesm2022/ngxs-store.mjs +276 -272
  12. package/fesm2022/ngxs-store.mjs.map +1 -1
  13. package/index.d.ts +44 -185
  14. package/package.json +7 -19
  15. package/plugins/index.d.ts +12 -5
  16. package/schematics/src/actions/actions.factory.js +1 -2
  17. package/schematics/src/actions/actions.factory.js.map +1 -1
  18. package/schematics/src/ng-add/add-declaration.js +2 -3
  19. package/schematics/src/ng-add/add-declaration.js.map +1 -1
  20. package/schematics/src/ng-add/ng-add.factory.js +1 -2
  21. package/schematics/src/ng-add/ng-add.factory.js.map +1 -1
  22. package/schematics/src/starter-kit/starter-kit.factory.js +1 -2
  23. package/schematics/src/starter-kit/starter-kit.factory.js.map +1 -1
  24. package/schematics/src/state/state.factory.js +1 -2
  25. package/schematics/src/state/state.factory.js.map +1 -1
  26. package/schematics/src/store/store.factory.js +1 -2
  27. package/schematics/src/store/store.factory.js.map +1 -1
  28. package/schematics/src/utils/common/properties.js +1 -2
  29. package/schematics/src/utils/common/properties.js.map +1 -1
  30. package/schematics/src/utils/config.js +2 -3
  31. package/schematics/src/utils/config.js.map +1 -1
  32. package/schematics/src/utils/generate-utils.js +1 -2
  33. package/schematics/src/utils/generate-utils.js.map +1 -1
  34. package/schematics/src/utils/normalize-options.js +3 -4
  35. package/schematics/src/utils/normalize-options.js.map +1 -1
  36. package/schematics/src/utils/project.js +4 -5
  37. package/schematics/src/utils/project.js.map +1 -1
  38. package/schematics/src/utils/versions.json +1 -1
  39. package/esm2022/experimental/index.mjs +0 -2
  40. package/esm2022/experimental/ngxs-store-experimental.mjs +0 -5
  41. package/esm2022/experimental/pending-tasks.mjs +0 -30
  42. package/esm2022/index.mjs +0 -13
  43. package/esm2022/internals/custom-rxjs-operators.mjs +0 -19
  44. package/esm2022/internals/custom-rxjs-subjects.mjs +0 -92
  45. package/esm2022/internals/index.mjs +0 -11
  46. package/esm2022/internals/initial-state.mjs +0 -18
  47. package/esm2022/internals/internal-tokens.mjs +0 -6
  48. package/esm2022/internals/memoize.mjs +0 -43
  49. package/esm2022/internals/metadata.mjs +0 -57
  50. package/esm2022/internals/ngxs-app-bootstrapped-state.mjs +0 -19
  51. package/esm2022/internals/ngxs-store-internals.mjs +0 -5
  52. package/esm2022/internals/state-stream.mjs +0 -33
  53. package/esm2022/internals/state-token.mjs +0 -17
  54. package/esm2022/internals/symbols.mjs +0 -11
  55. package/esm2022/internals/testing/fresh-platform.mjs +0 -72
  56. package/esm2022/internals/testing/helpers/ngxs-test.component.mjs +0 -16
  57. package/esm2022/internals/testing/helpers/ngxs-test.module.mjs +0 -20
  58. package/esm2022/internals/testing/index.mjs +0 -4
  59. package/esm2022/internals/testing/ngxs-store-internals-testing.mjs +0 -5
  60. package/esm2022/internals/testing/ngxs.setup.mjs +0 -49
  61. package/esm2022/internals/testing/skip-console-logging.mjs +0 -37
  62. package/esm2022/internals/testing/symbol.mjs +0 -2
  63. package/esm2022/ngxs-store.mjs +0 -5
  64. package/esm2022/operators/append.mjs +0 -20
  65. package/esm2022/operators/compose.mjs +0 -6
  66. package/esm2022/operators/iif.mjs +0 -38
  67. package/esm2022/operators/index.mjs +0 -14
  68. package/esm2022/operators/insert-item.mjs +0 -29
  69. package/esm2022/operators/ngxs-store-operators.mjs +0 -5
  70. package/esm2022/operators/patch.mjs +0 -21
  71. package/esm2022/operators/remove-item.mjs +0 -22
  72. package/esm2022/operators/types.mjs +0 -2
  73. package/esm2022/operators/update-item.mjs +0 -40
  74. package/esm2022/operators/utils.mjs +0 -19
  75. package/esm2022/plugins/actions.mjs +0 -16
  76. package/esm2022/plugins/index.mjs +0 -4
  77. package/esm2022/plugins/ngxs-store-plugins.mjs +0 -5
  78. package/esm2022/plugins/symbols.mjs +0 -6
  79. package/esm2022/plugins/utils.mjs +0 -51
  80. package/esm2022/src/actions/action-registry.mjs +0 -34
  81. package/esm2022/src/actions/symbols.mjs +0 -2
  82. package/esm2022/src/actions-stream.mjs +0 -60
  83. package/esm2022/src/configs/messages.config.mjs +0 -48
  84. package/esm2022/src/decorators/action.mjs +0 -31
  85. package/esm2022/src/decorators/select/select-factory.mjs +0 -29
  86. package/esm2022/src/decorators/select/select.mjs +0 -29
  87. package/esm2022/src/decorators/select/symbols.mjs +0 -29
  88. package/esm2022/src/decorators/selector/selector.mjs +0 -29
  89. package/esm2022/src/decorators/selector/symbols.mjs +0 -2
  90. package/esm2022/src/decorators/selector-options.mjs +0 -21
  91. package/esm2022/src/decorators/state.mjs +0 -35
  92. package/esm2022/src/dev-features/ngxs-development.module.mjs +0 -28
  93. package/esm2022/src/dev-features/ngxs-unhandled-actions-logger.mjs +0 -45
  94. package/esm2022/src/dev-features/symbols.mjs +0 -7
  95. package/esm2022/src/execution/dispatch-outside-zone-ngxs-execution-strategy.mjs +0 -55
  96. package/esm2022/src/execution/internal-ngxs-execution-strategy.mjs +0 -24
  97. package/esm2022/src/execution/noop-ngxs-execution-strategy.mjs +0 -17
  98. package/esm2022/src/execution/symbols.mjs +0 -29
  99. package/esm2022/src/internal/dispatcher.mjs +0 -106
  100. package/esm2022/src/internal/fallback-subscriber.mjs +0 -29
  101. package/esm2022/src/internal/internals.mjs +0 -206
  102. package/esm2022/src/internal/lifecycle-state-manager.mjs +0 -86
  103. package/esm2022/src/internal/provide-internal-tokens.mjs +0 -20
  104. package/esm2022/src/internal/state-context-factory.mjs +0 -71
  105. package/esm2022/src/internal/state-factory.mjs +0 -331
  106. package/esm2022/src/internal/state-operations.mjs +0 -63
  107. package/esm2022/src/internal/state-operators.mjs +0 -20
  108. package/esm2022/src/internal/unhandled-rxjs-error-callback.mjs +0 -39
  109. package/esm2022/src/ivy/ivy-enabled-in-dev-mode.mjs +0 -25
  110. package/esm2022/src/module.mjs +0 -27
  111. package/esm2022/src/modules/ngxs-feature.module.mjs +0 -18
  112. package/esm2022/src/modules/ngxs-root.module.mjs +0 -18
  113. package/esm2022/src/ngxs-unhandled-error-handler.mjs +0 -29
  114. package/esm2022/src/operators/leave-ngxs.mjs +0 -9
  115. package/esm2022/src/operators/of-action.mjs +0 -104
  116. package/esm2022/src/plugin-manager.mjs +0 -33
  117. package/esm2022/src/plugin_api.mjs +0 -2
  118. package/esm2022/src/private_api.mjs +0 -5
  119. package/esm2022/src/public_api.mjs +0 -20
  120. package/esm2022/src/selectors/create-model-selector.mjs +0 -30
  121. package/esm2022/src/selectors/create-pick-selector.mjs +0 -16
  122. package/esm2022/src/selectors/create-property-selectors.mjs +0 -20
  123. package/esm2022/src/selectors/create-selector.mjs +0 -9
  124. package/esm2022/src/selectors/index.mjs +0 -6
  125. package/esm2022/src/selectors/private_api.mjs +0 -2
  126. package/esm2022/src/selectors/selector-checks.util.mjs +0 -43
  127. package/esm2022/src/selectors/selector-metadata.mjs +0 -35
  128. package/esm2022/src/selectors/selector-models.mjs +0 -2
  129. package/esm2022/src/selectors/selector-types.util.mjs +0 -2
  130. package/esm2022/src/selectors/selector-utils.mjs +0 -96
  131. package/esm2022/src/standalone-features/feature-providers.mjs +0 -20
  132. package/esm2022/src/standalone-features/index.mjs +0 -5
  133. package/esm2022/src/standalone-features/initializers.mjs +0 -89
  134. package/esm2022/src/standalone-features/plugin.mjs +0 -27
  135. package/esm2022/src/standalone-features/preboot.mjs +0 -32
  136. package/esm2022/src/standalone-features/provide-states.mjs +0 -26
  137. package/esm2022/src/standalone-features/provide-store.mjs +0 -26
  138. package/esm2022/src/standalone-features/root-providers.mjs +0 -38
  139. package/esm2022/src/store.mjs +0 -127
  140. package/esm2022/src/symbols.mjs +0 -87
  141. package/esm2022/src/utils/compose.mjs +0 -26
  142. package/esm2022/src/utils/create-dispatch-map.mjs +0 -11
  143. package/esm2022/src/utils/create-select-map.mjs +0 -13
  144. package/esm2022/src/utils/dispatch.mjs +0 -7
  145. package/esm2022/src/utils/freeze.mjs +0 -20
  146. package/esm2022/src/utils/public_api.mjs +0 -5
  147. package/esm2022/src/utils/select.mjs +0 -19
  148. package/esm2022/src/utils/store-validators.mjs +0 -25
  149. package/experimental/package.json +0 -3
  150. package/internals/package.json +0 -3
  151. package/internals/testing/package.json +0 -3
  152. package/operators/package.json +0 -3
  153. package/plugins/package.json +0 -3
@@ -1,6 +0,0 @@
1
- export * from './create-model-selector';
2
- export * from './create-pick-selector';
3
- export * from './create-property-selectors';
4
- export * from './create-selector';
5
- export * from './selector-types.util';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLW1vZGVsLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLXBpY2stc2VsZWN0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9jcmVhdGUtcHJvcGVydHktc2VsZWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vY3JlYXRlLXNlbGVjdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0b3ItdHlwZXMudXRpbCc7XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3ByaXZhdGVfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZXNlIHR5cGVzIGFyZSBleHBvcnRlZCBwcml2YXRlbHkgZm9yIGRldmVsb3BlcnMgd2hvIHdvcmsgb24gYWR2YW5jZWRcbiAqIHV0aWxpdGllcyBhbmQgbWF5IG5lZWQgdG8gdXNlIHRoZXNlIHR5cGVzIGV4dGVybmFsbHkuIEZvciBpbnN0YW5jZSxcbiAqIHRoZXkgbWF5IGhhdmUgYSBmdW5jdGlvbiB0aGF0IGFjY2VwdHMgc2VsZWN0b3IgZnVuY3Rpb25zIGFuZCByZXR1cm5zXG4gKiBzaWduYWxzIHdpdGggdGhlIHR5cGUgY29ycmVzcG9uZGluZyB0byB0aGUgcmV0dXJuIHR5cGUgb2YgdGhvc2Ugc2VsZWN0b3JzLlxuICovXG5leHBvcnQge1xuICDJtVNlbGVjdG9yRnVuYyxcbiAgybVTdGF0ZVNlbGVjdG9yLFxuICDJtVNlbGVjdG9yRGVmLFxuICDJtVNlbGVjdG9yUmV0dXJuVHlwZVxufSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuIl19
@@ -1,43 +0,0 @@
1
- import { ɵgetSelectorMetadata, ɵgetStoreMetadata } from '@ngxs/store/internals';
2
- import { NgZone } from '@angular/core';
3
- function getMissingMetaDataError(selector, context = {}) {
4
- const metadata = ɵgetSelectorMetadata(selector) || ɵgetStoreMetadata(selector);
5
- if (!metadata) {
6
- return new Error(`${context.prefix}The value provided as the ${context.noun} is not a valid selector.`);
7
- }
8
- return null;
9
- }
10
- export function ensureValidSelector(selector, context = {}) {
11
- const noun = context.noun || 'selector';
12
- const prefix = context.prefix ? context.prefix + ': ' : '';
13
- ensureValueProvided(selector, { noun, prefix: context.prefix });
14
- const error = getMissingMetaDataError(selector, { noun, prefix });
15
- if (error) {
16
- // If we have used this utility within a state class, we may be
17
- // before the @State or @Selector decorators have been applied.
18
- // wait until the next microtask to verify.
19
- // Theoretically this situation is only encountered when the javascript
20
- // files are being loaded and we are outside the angular zone.
21
- if (!NgZone.isInAngularZone()) {
22
- Promise.resolve().then(() => {
23
- const errorAgain = getMissingMetaDataError(selector, { noun, prefix });
24
- if (errorAgain) {
25
- // Throw the originally captured error so that the stack trace shows the
26
- // original utility call site.
27
- console.error(error);
28
- }
29
- });
30
- }
31
- else {
32
- throw error;
33
- }
34
- }
35
- }
36
- export function ensureValueProvided(value, context = {}) {
37
- const noun = context.noun || 'value';
38
- const prefix = context.prefix ? context.prefix + ': ' : '';
39
- if (!value) {
40
- throw new Error(`${prefix}A ${noun} must be provided.`);
41
- }
42
- }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItY2hlY2tzLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLWNoZWNrcy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWhGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsU0FBUyx1QkFBdUIsQ0FDOUIsUUFBMkIsRUFDM0IsVUFBOEMsRUFBRTtJQUVoRCxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxRQUFlLENBQUMsQ0FBQztJQUN0RixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxPQUFPLElBQUksS0FBSyxDQUNkLEdBQUcsT0FBTyxDQUFDLE1BQU0sNkJBQTZCLE9BQU8sQ0FBQyxJQUFJLDJCQUEyQixDQUN0RixDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsUUFBMkIsRUFDM0IsVUFBOEMsRUFBRTtJQUVoRCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLFVBQVUsQ0FBQztJQUN4QyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzNELG1CQUFtQixDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDaEUsTUFBTSxLQUFLLEdBQUcsdUJBQXVCLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDbEUsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUNWLCtEQUErRDtRQUMvRCxnRUFBZ0U7UUFDaEUsNENBQTRDO1FBQzVDLHVFQUF1RTtRQUN2RSwrREFBK0Q7UUFDL0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUMxQixNQUFNLFVBQVUsR0FBRyx1QkFBdUIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDZix3RUFBd0U7b0JBQ3hFLDhCQUE4QjtvQkFDOUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdkIsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLEtBQUssQ0FBQztRQUNkLENBQUM7SUFDSCxDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FDakMsS0FBVSxFQUNWLFVBQThDLEVBQUU7SUFFaEQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUM7SUFDckMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMzRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsTUFBTSxLQUFLLElBQUksb0JBQW9CLENBQUMsQ0FBQztJQUMxRCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1Z2V0U2VsZWN0b3JNZXRhZGF0YSwgybVnZXRTdG9yZU1ldGFkYXRhIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcbmltcG9ydCB7IMm1U2VsZWN0b3JEZWYgfSBmcm9tICcuL3NlbGVjdG9yLXR5cGVzLnV0aWwnO1xuaW1wb3J0IHsgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmZ1bmN0aW9uIGdldE1pc3NpbmdNZXRhRGF0YUVycm9yKFxuICBzZWxlY3RvcjogybVTZWxlY3RvckRlZjxhbnk+LFxuICBjb250ZXh0OiB7IHByZWZpeD86IHN0cmluZzsgbm91bj86IHN0cmluZyB9ID0ge31cbikge1xuICBjb25zdCBtZXRhZGF0YSA9IMm1Z2V0U2VsZWN0b3JNZXRhZGF0YShzZWxlY3RvcikgfHwgybVnZXRTdG9yZU1ldGFkYXRhKHNlbGVjdG9yIGFzIGFueSk7XG4gIGlmICghbWV0YWRhdGEpIHtcbiAgICByZXR1cm4gbmV3IEVycm9yKFxuICAgICAgYCR7Y29udGV4dC5wcmVmaXh9VGhlIHZhbHVlIHByb3ZpZGVkIGFzIHRoZSAke2NvbnRleHQubm91bn0gaXMgbm90IGEgdmFsaWQgc2VsZWN0b3IuYFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIG51bGw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVWYWxpZFNlbGVjdG9yKFxuICBzZWxlY3RvcjogybVTZWxlY3RvckRlZjxhbnk+LFxuICBjb250ZXh0OiB7IHByZWZpeD86IHN0cmluZzsgbm91bj86IHN0cmluZyB9ID0ge31cbikge1xuICBjb25zdCBub3VuID0gY29udGV4dC5ub3VuIHx8ICdzZWxlY3Rvcic7XG4gIGNvbnN0IHByZWZpeCA9IGNvbnRleHQucHJlZml4ID8gY29udGV4dC5wcmVmaXggKyAnOiAnIDogJyc7XG4gIGVuc3VyZVZhbHVlUHJvdmlkZWQoc2VsZWN0b3IsIHsgbm91biwgcHJlZml4OiBjb250ZXh0LnByZWZpeCB9KTtcbiAgY29uc3QgZXJyb3IgPSBnZXRNaXNzaW5nTWV0YURhdGFFcnJvcihzZWxlY3RvciwgeyBub3VuLCBwcmVmaXggfSk7XG4gIGlmIChlcnJvcikge1xuICAgIC8vIElmIHdlIGhhdmUgdXNlZCB0aGlzIHV0aWxpdHkgd2l0aGluIGEgc3RhdGUgY2xhc3MsIHdlIG1heSBiZVxuICAgIC8vICBiZWZvcmUgdGhlIEBTdGF0ZSBvciBAU2VsZWN0b3IgZGVjb3JhdG9ycyBoYXZlIGJlZW4gYXBwbGllZC5cbiAgICAvLyAgd2FpdCB1bnRpbCB0aGUgbmV4dCBtaWNyb3Rhc2sgdG8gdmVyaWZ5LlxuICAgIC8vIFRoZW9yZXRpY2FsbHkgdGhpcyBzaXR1YXRpb24gaXMgb25seSBlbmNvdW50ZXJlZCB3aGVuIHRoZSBqYXZhc2NyaXB0XG4gICAgLy8gIGZpbGVzIGFyZSBiZWluZyBsb2FkZWQgYW5kIHdlIGFyZSBvdXRzaWRlIHRoZSBhbmd1bGFyIHpvbmUuXG4gICAgaWYgKCFOZ1pvbmUuaXNJbkFuZ3VsYXJab25lKCkpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICBjb25zdCBlcnJvckFnYWluID0gZ2V0TWlzc2luZ01ldGFEYXRhRXJyb3Ioc2VsZWN0b3IsIHsgbm91biwgcHJlZml4IH0pO1xuICAgICAgICBpZiAoZXJyb3JBZ2Fpbikge1xuICAgICAgICAgIC8vIFRocm93IHRoZSBvcmlnaW5hbGx5IGNhcHR1cmVkIGVycm9yIHNvIHRoYXQgdGhlIHN0YWNrIHRyYWNlIHNob3dzIHRoZVxuICAgICAgICAgIC8vIG9yaWdpbmFsIHV0aWxpdHkgY2FsbCBzaXRlLlxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVWYWx1ZVByb3ZpZGVkKFxuICB2YWx1ZTogYW55LFxuICBjb250ZXh0OiB7IHByZWZpeD86IHN0cmluZzsgbm91bj86IHN0cmluZyB9ID0ge31cbikge1xuICBjb25zdCBub3VuID0gY29udGV4dC5ub3VuIHx8ICd2YWx1ZSc7XG4gIGNvbnN0IHByZWZpeCA9IGNvbnRleHQucHJlZml4ID8gY29udGV4dC5wcmVmaXggKyAnOiAnIDogJyc7XG4gIGlmICghdmFsdWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7cHJlZml4fUEgJHtub3VufSBtdXN0IGJlIHByb3ZpZGVkLmApO1xuICB9XG59XG4iXX0=
@@ -1,35 +0,0 @@
1
- import { ɵensureSelectorMetadata } from '@ngxs/store/internals';
2
- const SELECTOR_OPTIONS_META_KEY = 'NGXS_SELECTOR_OPTIONS_META';
3
- export const selectorOptionsMetaAccessor = {
4
- getOptions: (target) => {
5
- return (target && target[SELECTOR_OPTIONS_META_KEY]) || {};
6
- },
7
- defineOptions: (target, options) => {
8
- if (!target)
9
- return;
10
- target[SELECTOR_OPTIONS_META_KEY] = options;
11
- }
12
- };
13
- export function setupSelectorMetadata(originalFn, creationMetadata) {
14
- const selectorMetaData = ɵensureSelectorMetadata(originalFn);
15
- selectorMetaData.originalFn = originalFn;
16
- let getExplicitSelectorOptions = () => ({});
17
- if (creationMetadata) {
18
- selectorMetaData.containerClass = creationMetadata.containerClass;
19
- selectorMetaData.selectorName = creationMetadata.selectorName || null;
20
- getExplicitSelectorOptions =
21
- creationMetadata.getSelectorOptions || getExplicitSelectorOptions;
22
- }
23
- const selectorMetaDataClone = { ...selectorMetaData };
24
- selectorMetaData.getSelectorOptions = () => getLocalSelectorOptions(selectorMetaDataClone, getExplicitSelectorOptions());
25
- return selectorMetaData;
26
- }
27
- function getLocalSelectorOptions(selectorMetaData, explicitOptions) {
28
- return {
29
- ...(selectorOptionsMetaAccessor.getOptions(selectorMetaData.containerClass) || {}),
30
- ...(selectorOptionsMetaAccessor.getOptions(selectorMetaData.originalFn) || {}),
31
- ...(selectorMetaData.getSelectorOptions() || {}),
32
- ...explicitOptions
33
- };
34
- }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCx1QkFBdUIsRUFDeEIsTUFBTSx1QkFBdUIsQ0FBQztBQUkvQixNQUFNLHlCQUF5QixHQUFHLDRCQUE0QixDQUFDO0FBRS9ELE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHO0lBQ3pDLFVBQVUsRUFBRSxDQUFDLE1BQVcsRUFBMEIsRUFBRTtRQUNsRCxPQUFPLENBQUMsTUFBTSxJQUFVLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFDRCxhQUFhLEVBQUUsQ0FBQyxNQUFXLEVBQUUsT0FBK0IsRUFBRSxFQUFFO1FBQzlELElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUNkLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLE9BQU8sQ0FBQztJQUNyRCxDQUFDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsVUFBYSxFQUNiLGdCQUF1RDtJQUV2RCxNQUFNLGdCQUFnQixHQUFHLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdELGdCQUFnQixDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDekMsSUFBSSwwQkFBMEIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztRQUNyQixnQkFBZ0IsQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO1FBQ2xFLGdCQUFnQixDQUFDLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ3RFLDBCQUEwQjtZQUN4QixnQkFBZ0IsQ0FBQyxrQkFBa0IsSUFBSSwwQkFBMEIsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsTUFBTSxxQkFBcUIsR0FBRyxFQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUN0RCxnQkFBZ0IsQ0FBQyxrQkFBa0IsR0FBRyxHQUFHLEVBQUUsQ0FDekMsdUJBQXVCLENBQUMscUJBQXFCLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLE9BQU8sZ0JBQWdCLENBQUM7QUFDMUIsQ0FBQztBQUVELFNBQVMsdUJBQXVCLENBQzlCLGdCQUF3QyxFQUN4QyxlQUF1QztJQUV2QyxPQUFPO1FBQ0wsR0FBRyxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbEYsR0FBRyxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUUsR0FBRyxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2hELEdBQUcsZUFBZTtLQUNuQixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICDJtVNoYXJlZFNlbGVjdG9yT3B0aW9ucyxcbiAgybVlbnN1cmVTZWxlY3Rvck1ldGFkYXRhXG59IGZyb20gJ0BuZ3hzL3N0b3JlL2ludGVybmFscyc7XG5cbmltcG9ydCB7IENyZWF0aW9uTWV0YWRhdGEgfSBmcm9tICcuL3NlbGVjdG9yLW1vZGVscyc7XG5cbmNvbnN0IFNFTEVDVE9SX09QVElPTlNfTUVUQV9LRVkgPSAnTkdYU19TRUxFQ1RPUl9PUFRJT05TX01FVEEnO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0b3JPcHRpb25zTWV0YUFjY2Vzc29yID0ge1xuICBnZXRPcHRpb25zOiAodGFyZ2V0OiBhbnkpOiDJtVNoYXJlZFNlbGVjdG9yT3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuICh0YXJnZXQgJiYgKDxhbnk+dGFyZ2V0KVtTRUxFQ1RPUl9PUFRJT05TX01FVEFfS0VZXSkgfHwge307XG4gIH0sXG4gIGRlZmluZU9wdGlvbnM6ICh0YXJnZXQ6IGFueSwgb3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnMpID0+IHtcbiAgICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuICAgICg8YW55PnRhcmdldClbU0VMRUNUT1JfT1BUSU9OU19NRVRBX0tFWV0gPSBvcHRpb25zO1xuICB9XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0dXBTZWxlY3Rvck1ldGFkYXRhPFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueT4oXG4gIG9yaWdpbmFsRm46IFQsXG4gIGNyZWF0aW9uTWV0YWRhdGE6IFBhcnRpYWw8Q3JlYXRpb25NZXRhZGF0YT4gfCB1bmRlZmluZWRcbikge1xuICBjb25zdCBzZWxlY3Rvck1ldGFEYXRhID0gybVlbnN1cmVTZWxlY3Rvck1ldGFkYXRhKG9yaWdpbmFsRm4pO1xuICBzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4gPSBvcmlnaW5hbEZuO1xuICBsZXQgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PiAoe30pO1xuICBpZiAoY3JlYXRpb25NZXRhZGF0YSkge1xuICAgIHNlbGVjdG9yTWV0YURhdGEuY29udGFpbmVyQ2xhc3MgPSBjcmVhdGlvbk1ldGFkYXRhLmNvbnRhaW5lckNsYXNzO1xuICAgIHNlbGVjdG9yTWV0YURhdGEuc2VsZWN0b3JOYW1lID0gY3JlYXRpb25NZXRhZGF0YS5zZWxlY3Rvck5hbWUgfHwgbnVsbDtcbiAgICBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucyA9XG4gICAgICBjcmVhdGlvbk1ldGFkYXRhLmdldFNlbGVjdG9yT3B0aW9ucyB8fCBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucztcbiAgfVxuICBjb25zdCBzZWxlY3Rvck1ldGFEYXRhQ2xvbmUgPSB7IC4uLnNlbGVjdG9yTWV0YURhdGEgfTtcbiAgc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PlxuICAgIGdldExvY2FsU2VsZWN0b3JPcHRpb25zKHNlbGVjdG9yTWV0YURhdGFDbG9uZSwgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMoKSk7XG4gIHJldHVybiBzZWxlY3Rvck1ldGFEYXRhO1xufVxuXG5mdW5jdGlvbiBnZXRMb2NhbFNlbGVjdG9yT3B0aW9ucyhcbiAgc2VsZWN0b3JNZXRhRGF0YTogybVTZWxlY3Rvck1ldGFEYXRhTW9kZWwsXG4gIGV4cGxpY2l0T3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnNcbik6IMm1U2hhcmVkU2VsZWN0b3JPcHRpb25zIHtcbiAgcmV0dXJuIHtcbiAgICAuLi4oc2VsZWN0b3JPcHRpb25zTWV0YUFjY2Vzc29yLmdldE9wdGlvbnMoc2VsZWN0b3JNZXRhRGF0YS5jb250YWluZXJDbGFzcykgfHwge30pLFxuICAgIC4uLihzZWxlY3Rvck9wdGlvbnNNZXRhQWNjZXNzb3IuZ2V0T3B0aW9ucyhzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4pIHx8IHt9KSxcbiAgICAuLi4oc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMoKSB8fCB7fSksXG4gICAgLi4uZXhwbGljaXRPcHRpb25zXG4gIH07XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3NlbGVjdG9ycy9zZWxlY3Rvci1tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IMm1U2hhcmVkU2VsZWN0b3JPcHRpb25zLCDJtVNlbGVjdEZyb21Sb290U3RhdGUgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0aW9uTWV0YWRhdGEge1xuICBjb250YWluZXJDbGFzczogYW55O1xuICBzZWxlY3Rvck5hbWU6IHN0cmluZztcbiAgZ2V0U2VsZWN0b3JPcHRpb25zPzogKCkgPT4gybVTaGFyZWRTZWxlY3Rvck9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZVNlbGVjdG9ySW5mbyB7XG4gIHNlbGVjdG9yT3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnM7XG4gIGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnM6IMm1U2VsZWN0RnJvbVJvb3RTdGF0ZVtdO1xufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItdHlwZXMudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zZWxlY3RvcnMvc2VsZWN0b3ItdHlwZXMudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgybVTdGF0ZUNsYXNzLCBTdGF0ZVRva2VuIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuZXhwb3J0IHR5cGUgybVTZWxlY3RvckZ1bmM8VE1vZGVsPiA9ICguLi5hcmc6IGFueVtdKSA9PiBUTW9kZWw7XG5cbmV4cG9ydCB0eXBlIFR5cGVkU2VsZWN0b3I8VE1vZGVsPiA9IFN0YXRlVG9rZW48VE1vZGVsPiB8IMm1U2VsZWN0b3JGdW5jPFRNb2RlbD47XG5cbmV4cG9ydCB0eXBlIMm1U3RhdGVTZWxlY3RvciA9IMm1U3RhdGVDbGFzczxhbnk+O1xuXG5leHBvcnQgdHlwZSDJtVNlbGVjdG9yRGVmPFRNb2RlbD4gPSDJtVN0YXRlU2VsZWN0b3IgfCBUeXBlZFNlbGVjdG9yPFRNb2RlbD47XG5cbmV4cG9ydCB0eXBlIMm1U2VsZWN0b3JSZXR1cm5UeXBlPFQgZXh0ZW5kcyDJtVNlbGVjdG9yRGVmPGFueT4+ID1cbiAgVCBleHRlbmRzIFN0YXRlVG9rZW48aW5mZXIgUjE+XG4gICAgPyBSMVxuICAgIDogVCBleHRlbmRzIMm1U2VsZWN0b3JGdW5jPGluZmVyIFIyPlxuICAgICAgPyBSMlxuICAgICAgOiBUIGV4dGVuZHMgybVTdGF0ZUNsYXNzPGFueT5cbiAgICAgICAgPyBhbnkgLyogKEJsb2NrIGNvbW1lbnQgdG8gc3RvcCBwcmV0dGllciBicmVha2luZyB0aGUgY29tbWVudCBiZWxvdylcbiAgLy8gSWYgdGhlIHN0YXRlIHNlbGVjdG9yIGlzIGEgY2xhc3MgdGhlbiB3ZSBzaG91bGQgaW5mZXIgaXRzIHJldHVybiB0eXBlIHRvIGBhbnlgLCBhbmQgbm90IHRvIGB1bmtub3duYC5cbiAgLy8gU2luY2Ugd2UnbGwgZ2V0IGFuIGVycm9yIHRoYXQgYFR5cGUgJ3Vua25vd24nIGlzIG5vdCBhc3NpZ25hYmxlIHRvIHR5cGUgJ0F1dGhTdGF0ZU1vZGVsJy5gXG4gIC8vIFRoZSBgdW5rbm93bmAgdHlwZSBpcyBub3Qgb3ZlcnJpZGFibGUgd2hlbiB0aGUgc3RyaWN0IG1vZGUgaXMgZW5hYmxlZDpcbiAgLy8gZnVuY3Rpb24gZG9Tb21ldGhpbmdXaXRoQXJyYXkoYXJyYXk6IG51bWJlcltdLCBmYWN0b3J5OiAoeDogdW5rbm93bikgPT4gdm9pZCkge1xuICAvLyAgIGFycmF5LmZvckVhY2goZmFjdG9yeSk7XG4gIC8vIH1cbiAgLy8gZG9Tb21ldGhpbmdXaXRoQXJyYXkoWzEsIDJdLCAoeDogbnVtYmVyKSA9PiBjb25zb2xlLmxvZyh4KSk7XG4gIC8vICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5cbiAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUeXBlICd1bmtub3duJyBpcyBub3QgYXNzaWduYWJsZSB0byB0eXBlICdudW1iZXInLlxuICAqL1xuICAgICAgICA6IG5ldmVyO1xuIl19
@@ -1,96 +0,0 @@
1
- import { ɵmemoize, ɵgetStoreMetadata, ɵgetSelectorMetadata } from '@ngxs/store/internals';
2
- const NG_DEV_MODE = typeof ngDevMode !== 'undefined' && ngDevMode;
3
- export function createRootSelectorFactory(selectorMetaData, selectors, memoizedSelectorFn) {
4
- return (context) => {
5
- const { argumentSelectorFunctions, selectorOptions } = getRuntimeSelectorInfo(context, selectorMetaData, selectors);
6
- const { suppressErrors } = selectorOptions;
7
- return function selectFromRoot(rootState) {
8
- // Determine arguments from the app state using the selectors
9
- const results = argumentSelectorFunctions.map(argFn => argFn(rootState));
10
- // If the lambda attempts to access something in the state that doesn't exist,
11
- // it will throw a `TypeError`. Since this behavior is common, we simply return
12
- // `undefined` in such cases.
13
- try {
14
- return memoizedSelectorFn(...results);
15
- }
16
- catch (ex) {
17
- if (suppressErrors && ex instanceof TypeError) {
18
- return undefined;
19
- }
20
- // We're logging an error in this function because it may be used by `select`,
21
- // `selectSignal`, and `selectSnapshot`. Therefore, there's no need to catch
22
- // exceptions there to log errors.
23
- if (NG_DEV_MODE) {
24
- const message = 'The selector below has thrown an error upon invocation. ' +
25
- 'Please check for any unsafe property access that may result in null ' +
26
- 'or undefined values.';
27
- // Avoid concatenating the message with the original function, as this will
28
- // invoke `toString()` on the function. Instead, log it as the second argument.
29
- // This way, developers will be able to navigate to the actual code in the browser.
30
- console.error(message, selectorMetaData.originalFn);
31
- }
32
- throw ex;
33
- }
34
- };
35
- };
36
- }
37
- export function createMemoizedSelectorFn(originalFn, creationMetadata) {
38
- const containerClass = creationMetadata && creationMetadata.containerClass;
39
- const wrappedFn = function wrappedSelectorFn() {
40
- // eslint-disable-next-line prefer-rest-params
41
- const returnValue = originalFn.apply(containerClass, arguments);
42
- if (typeof returnValue === 'function') {
43
- const innerMemoizedFn = ɵmemoize.apply(null, [returnValue]);
44
- return innerMemoizedFn;
45
- }
46
- return returnValue;
47
- };
48
- const memoizedFn = ɵmemoize(wrappedFn);
49
- Object.setPrototypeOf(memoizedFn, originalFn);
50
- return memoizedFn;
51
- }
52
- function getRuntimeSelectorInfo(context, selectorMetaData, selectors = []) {
53
- const localSelectorOptions = selectorMetaData.getSelectorOptions();
54
- const selectorOptions = context.getSelectorOptions(localSelectorOptions);
55
- const selectorsToApply = getSelectorsToApply(selectors, selectorOptions, selectorMetaData.containerClass);
56
- const argumentSelectorFunctions = selectorsToApply.map(selector => {
57
- const factory = getRootSelectorFactory(selector);
58
- return factory(context);
59
- });
60
- return {
61
- selectorOptions,
62
- argumentSelectorFunctions
63
- };
64
- }
65
- function getSelectorsToApply(selectors = [], selectorOptions, containerClass) {
66
- const selectorsToApply = [];
67
- // The container state refers to the state class that includes the
68
- // definition of the selector function, for example:
69
- // @State()
70
- // class AnimalsState {
71
- // @Selector()
72
- // static getAnimals(state: AnimalsStateModel) {}
73
- // }
74
- // The `AnimalsState` serves as the container state. Additionally, the
75
- // selector may reside within a namespace or another class lacking the
76
- // `@State` decorator, thus not being treated as the container state.
77
- const canInjectContainerState = selectorOptions.injectContainerState || selectors.length === 0;
78
- if (containerClass && canInjectContainerState) {
79
- // If we are on a state class, add it as the first selector parameter
80
- const metadata = ɵgetStoreMetadata(containerClass);
81
- if (metadata) {
82
- selectorsToApply.push(containerClass);
83
- }
84
- }
85
- selectorsToApply.push(...selectors);
86
- return selectorsToApply;
87
- }
88
- /**
89
- * This function gets the factory function to create the selector to get the selected slice from the app state
90
- * @ignore
91
- */
92
- export function getRootSelectorFactory(selector) {
93
- const metadata = ɵgetSelectorMetadata(selector) || ɵgetStoreMetadata(selector);
94
- return (metadata && metadata.makeRootSelector) || (() => selector);
95
- }
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxRQUFRLEVBR1IsaUJBQWlCLEVBQ2pCLG9CQUFvQixFQUdyQixNQUFNLHVCQUF1QixDQUFDO0FBTS9CLE1BQU0sV0FBVyxHQUFHLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUM7QUFFbEUsTUFBTSxVQUFVLHlCQUF5QixDQUN2QyxnQkFBd0MsRUFDeEMsU0FBNEIsRUFDNUIsa0JBQXFCO0lBRXJCLE9BQU8sQ0FBQyxPQUFnQyxFQUFFLEVBQUU7UUFDMUMsTUFBTSxFQUFFLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxHQUFHLHNCQUFzQixDQUMzRSxPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLFNBQVMsQ0FDVixDQUFDO1FBRUYsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLGVBQWUsQ0FBQztRQUUzQyxPQUFPLFNBQVMsY0FBYyxDQUFDLFNBQWM7WUFDM0MsNkRBQTZEO1lBQzdELE1BQU0sT0FBTyxHQUFHLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBRXpFLDhFQUE4RTtZQUM5RSwrRUFBK0U7WUFDL0UsNkJBQTZCO1lBQzdCLElBQUksQ0FBQztnQkFDSCxPQUFPLGtCQUFrQixDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7WUFDeEMsQ0FBQztZQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQ1osSUFBSSxjQUFjLElBQUksRUFBRSxZQUFZLFNBQVMsRUFBRSxDQUFDO29CQUM5QyxPQUFPLFNBQVMsQ0FBQztnQkFDbkIsQ0FBQztnQkFFRCw4RUFBOEU7Z0JBQzlFLDRFQUE0RTtnQkFDNUUsa0NBQWtDO2dCQUNsQyxJQUFJLFdBQVcsRUFBRSxDQUFDO29CQUNoQixNQUFNLE9BQU8sR0FDWCwwREFBMEQ7d0JBQzFELHNFQUFzRTt3QkFDdEUsc0JBQXNCLENBQUM7b0JBRXpCLDJFQUEyRTtvQkFDM0UsK0VBQStFO29CQUMvRSxtRkFBbUY7b0JBQ25GLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUN0RCxDQUFDO2dCQUVELE1BQU0sRUFBRSxDQUFDO1lBQ1gsQ0FBQztRQUNILENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQ3RDLFVBQWEsRUFDYixnQkFBdUQ7SUFFdkQsTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUMsY0FBYyxDQUFDO0lBQzNFLE1BQU0sU0FBUyxHQUFHLFNBQVMsaUJBQWlCO1FBQzFDLDhDQUE4QztRQUM5QyxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBTyxTQUFTLENBQUMsQ0FBQztRQUNyRSxJQUFJLE9BQU8sV0FBVyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUM1RCxPQUFPLGVBQWUsQ0FBQztRQUN6QixDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBTSxDQUFDO0lBQ1AsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUM3QixPQUFnQyxFQUNoQyxnQkFBd0MsRUFDeEMsWUFBK0IsRUFBRTtJQUVqQyxNQUFNLG9CQUFvQixHQUFHLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDbkUsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDekUsTUFBTSxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FDMUMsU0FBUyxFQUNULGVBQWUsRUFDZixnQkFBZ0IsQ0FBQyxjQUFjLENBQ2hDLENBQUM7SUFFRixNQUFNLHlCQUF5QixHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNoRSxNQUFNLE9BQU8sR0FBRyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQixDQUFDLENBQUMsQ0FBQztJQUNILE9BQU87UUFDTCxlQUFlO1FBQ2YseUJBQXlCO0tBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FDMUIsWUFBK0IsRUFBRSxFQUNqQyxlQUF1QyxFQUN2QyxjQUFtQjtJQUVuQixNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUM1QixrRUFBa0U7SUFDbEUsb0RBQW9EO0lBQ3BELFdBQVc7SUFDWCx1QkFBdUI7SUFDdkIsZ0JBQWdCO0lBQ2hCLG1EQUFtRDtJQUNuRCxJQUFJO0lBQ0osc0VBQXNFO0lBQ3RFLHNFQUFzRTtJQUN0RSxxRUFBcUU7SUFDckUsTUFBTSx1QkFBdUIsR0FDM0IsZUFBZSxDQUFDLG9CQUFvQixJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBRWpFLElBQUksY0FBYyxJQUFJLHVCQUF1QixFQUFFLENBQUM7UUFDOUMscUVBQXFFO1FBQ3JFLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ25ELElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNwQyxPQUFPLGdCQUFnQixDQUFDO0FBQzFCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBYTtJQUNsRCxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMvRSxPQUFPLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDckUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIMm1bWVtb2l6ZSxcbiAgybVSdW50aW1lU2VsZWN0b3JDb250ZXh0LFxuICDJtVNlbGVjdG9yRmFjdG9yeSxcbiAgybVnZXRTdG9yZU1ldGFkYXRhLFxuICDJtWdldFNlbGVjdG9yTWV0YWRhdGEsXG4gIMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICDJtVNoYXJlZFNlbGVjdG9yT3B0aW9uc1xufSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBDcmVhdGlvbk1ldGFkYXRhLCBSdW50aW1lU2VsZWN0b3JJbmZvIH0gZnJvbSAnLi9zZWxlY3Rvci1tb2RlbHMnO1xuXG5kZWNsYXJlIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbjtcblxuY29uc3QgTkdfREVWX01PREUgPSB0eXBlb2YgbmdEZXZNb2RlICE9PSAndW5kZWZpbmVkJyAmJiBuZ0Rldk1vZGU7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSb290U2VsZWN0b3JGYWN0b3J5PFQgZXh0ZW5kcyAoLi4uYXJnczogYW55W10pID0+IGFueT4oXG4gIHNlbGVjdG9yTWV0YURhdGE6IMm1U2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICBzZWxlY3RvcnM6IGFueVtdIHwgdW5kZWZpbmVkLFxuICBtZW1vaXplZFNlbGVjdG9yRm46IFRcbik6IMm1U2VsZWN0b3JGYWN0b3J5IHtcbiAgcmV0dXJuIChjb250ZXh0OiDJtVJ1bnRpbWVTZWxlY3RvckNvbnRleHQpID0+IHtcbiAgICBjb25zdCB7IGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnMsIHNlbGVjdG9yT3B0aW9ucyB9ID0gZ2V0UnVudGltZVNlbGVjdG9ySW5mbyhcbiAgICAgIGNvbnRleHQsXG4gICAgICBzZWxlY3Rvck1ldGFEYXRhLFxuICAgICAgc2VsZWN0b3JzXG4gICAgKTtcblxuICAgIGNvbnN0IHsgc3VwcHJlc3NFcnJvcnMgfSA9IHNlbGVjdG9yT3B0aW9ucztcblxuICAgIHJldHVybiBmdW5jdGlvbiBzZWxlY3RGcm9tUm9vdChyb290U3RhdGU6IGFueSkge1xuICAgICAgLy8gRGV0ZXJtaW5lIGFyZ3VtZW50cyBmcm9tIHRoZSBhcHAgc3RhdGUgdXNpbmcgdGhlIHNlbGVjdG9yc1xuICAgICAgY29uc3QgcmVzdWx0cyA9IGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnMubWFwKGFyZ0ZuID0+IGFyZ0ZuKHJvb3RTdGF0ZSkpO1xuXG4gICAgICAvLyBJZiB0aGUgbGFtYmRhIGF0dGVtcHRzIHRvIGFjY2VzcyBzb21ldGhpbmcgaW4gdGhlIHN0YXRlIHRoYXQgZG9lc24ndCBleGlzdCxcbiAgICAgIC8vIGl0IHdpbGwgdGhyb3cgYSBgVHlwZUVycm9yYC4gU2luY2UgdGhpcyBiZWhhdmlvciBpcyBjb21tb24sIHdlIHNpbXBseSByZXR1cm5cbiAgICAgIC8vIGB1bmRlZmluZWRgIGluIHN1Y2ggY2FzZXMuXG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gbWVtb2l6ZWRTZWxlY3RvckZuKC4uLnJlc3VsdHMpO1xuICAgICAgfSBjYXRjaCAoZXgpIHtcbiAgICAgICAgaWYgKHN1cHByZXNzRXJyb3JzICYmIGV4IGluc3RhbmNlb2YgVHlwZUVycm9yKSB7XG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdlJ3JlIGxvZ2dpbmcgYW4gZXJyb3IgaW4gdGhpcyBmdW5jdGlvbiBiZWNhdXNlIGl0IG1heSBiZSB1c2VkIGJ5IGBzZWxlY3RgLFxuICAgICAgICAvLyBgc2VsZWN0U2lnbmFsYCwgYW5kIGBzZWxlY3RTbmFwc2hvdGAuIFRoZXJlZm9yZSwgdGhlcmUncyBubyBuZWVkIHRvIGNhdGNoXG4gICAgICAgIC8vIGV4Y2VwdGlvbnMgdGhlcmUgdG8gbG9nIGVycm9ycy5cbiAgICAgICAgaWYgKE5HX0RFVl9NT0RFKSB7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9XG4gICAgICAgICAgICAnVGhlIHNlbGVjdG9yIGJlbG93IGhhcyB0aHJvd24gYW4gZXJyb3IgdXBvbiBpbnZvY2F0aW9uLiAnICtcbiAgICAgICAgICAgICdQbGVhc2UgY2hlY2sgZm9yIGFueSB1bnNhZmUgcHJvcGVydHkgYWNjZXNzIHRoYXQgbWF5IHJlc3VsdCBpbiBudWxsICcgK1xuICAgICAgICAgICAgJ29yIHVuZGVmaW5lZCB2YWx1ZXMuJztcblxuICAgICAgICAgIC8vIEF2b2lkIGNvbmNhdGVuYXRpbmcgdGhlIG1lc3NhZ2Ugd2l0aCB0aGUgb3JpZ2luYWwgZnVuY3Rpb24sIGFzIHRoaXMgd2lsbFxuICAgICAgICAgIC8vIGludm9rZSBgdG9TdHJpbmcoKWAgb24gdGhlIGZ1bmN0aW9uLiBJbnN0ZWFkLCBsb2cgaXQgYXMgdGhlIHNlY29uZCBhcmd1bWVudC5cbiAgICAgICAgICAvLyBUaGlzIHdheSwgZGV2ZWxvcGVycyB3aWxsIGJlIGFibGUgdG8gbmF2aWdhdGUgdG8gdGhlIGFjdHVhbCBjb2RlIGluIHRoZSBicm93c2VyLlxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IobWVzc2FnZSwgc2VsZWN0b3JNZXRhRGF0YS5vcmlnaW5hbEZuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IGV4O1xuICAgICAgfVxuICAgIH07XG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNZW1vaXplZFNlbGVjdG9yRm48VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgb3JpZ2luYWxGbjogVCxcbiAgY3JlYXRpb25NZXRhZGF0YTogUGFydGlhbDxDcmVhdGlvbk1ldGFkYXRhPiB8IHVuZGVmaW5lZFxuKSB7XG4gIGNvbnN0IGNvbnRhaW5lckNsYXNzID0gY3JlYXRpb25NZXRhZGF0YSAmJiBjcmVhdGlvbk1ldGFkYXRhLmNvbnRhaW5lckNsYXNzO1xuICBjb25zdCB3cmFwcGVkRm4gPSBmdW5jdGlvbiB3cmFwcGVkU2VsZWN0b3JGbigpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgY29uc3QgcmV0dXJuVmFsdWUgPSBvcmlnaW5hbEZuLmFwcGx5KGNvbnRhaW5lckNsYXNzLCA8YW55PmFyZ3VtZW50cyk7XG4gICAgaWYgKHR5cGVvZiByZXR1cm5WYWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY29uc3QgaW5uZXJNZW1vaXplZEZuID0gybVtZW1vaXplLmFwcGx5KG51bGwsIFtyZXR1cm5WYWx1ZV0pO1xuICAgICAgcmV0dXJuIGlubmVyTWVtb2l6ZWRGbjtcbiAgICB9XG4gICAgcmV0dXJuIHJldHVyblZhbHVlO1xuICB9IGFzIFQ7XG4gIGNvbnN0IG1lbW9pemVkRm4gPSDJtW1lbW9pemUod3JhcHBlZEZuKTtcbiAgT2JqZWN0LnNldFByb3RvdHlwZU9mKG1lbW9pemVkRm4sIG9yaWdpbmFsRm4pO1xuICByZXR1cm4gbWVtb2l6ZWRGbjtcbn1cblxuZnVuY3Rpb24gZ2V0UnVudGltZVNlbGVjdG9ySW5mbyhcbiAgY29udGV4dDogybVSdW50aW1lU2VsZWN0b3JDb250ZXh0LFxuICBzZWxlY3Rvck1ldGFEYXRhOiDJtVNlbGVjdG9yTWV0YURhdGFNb2RlbCxcbiAgc2VsZWN0b3JzOiBhbnlbXSB8IHVuZGVmaW5lZCA9IFtdXG4pOiBSdW50aW1lU2VsZWN0b3JJbmZvIHtcbiAgY29uc3QgbG9jYWxTZWxlY3Rvck9wdGlvbnMgPSBzZWxlY3Rvck1ldGFEYXRhLmdldFNlbGVjdG9yT3B0aW9ucygpO1xuICBjb25zdCBzZWxlY3Rvck9wdGlvbnMgPSBjb250ZXh0LmdldFNlbGVjdG9yT3B0aW9ucyhsb2NhbFNlbGVjdG9yT3B0aW9ucyk7XG4gIGNvbnN0IHNlbGVjdG9yc1RvQXBwbHkgPSBnZXRTZWxlY3RvcnNUb0FwcGx5KFxuICAgIHNlbGVjdG9ycyxcbiAgICBzZWxlY3Rvck9wdGlvbnMsXG4gICAgc2VsZWN0b3JNZXRhRGF0YS5jb250YWluZXJDbGFzc1xuICApO1xuXG4gIGNvbnN0IGFyZ3VtZW50U2VsZWN0b3JGdW5jdGlvbnMgPSBzZWxlY3RvcnNUb0FwcGx5Lm1hcChzZWxlY3RvciA9PiB7XG4gICAgY29uc3QgZmFjdG9yeSA9IGdldFJvb3RTZWxlY3RvckZhY3Rvcnkoc2VsZWN0b3IpO1xuICAgIHJldHVybiBmYWN0b3J5KGNvbnRleHQpO1xuICB9KTtcbiAgcmV0dXJuIHtcbiAgICBzZWxlY3Rvck9wdGlvbnMsXG4gICAgYXJndW1lbnRTZWxlY3RvckZ1bmN0aW9uc1xuICB9O1xufVxuXG5mdW5jdGlvbiBnZXRTZWxlY3RvcnNUb0FwcGx5KFxuICBzZWxlY3RvcnM6IGFueVtdIHwgdW5kZWZpbmVkID0gW10sXG4gIHNlbGVjdG9yT3B0aW9uczogybVTaGFyZWRTZWxlY3Rvck9wdGlvbnMsXG4gIGNvbnRhaW5lckNsYXNzOiBhbnlcbikge1xuICBjb25zdCBzZWxlY3RvcnNUb0FwcGx5ID0gW107XG4gIC8vIFRoZSBjb250YWluZXIgc3RhdGUgcmVmZXJzIHRvIHRoZSBzdGF0ZSBjbGFzcyB0aGF0IGluY2x1ZGVzIHRoZVxuICAvLyBkZWZpbml0aW9uIG9mIHRoZSBzZWxlY3RvciBmdW5jdGlvbiwgZm9yIGV4YW1wbGU6XG4gIC8vIEBTdGF0ZSgpXG4gIC8vIGNsYXNzIEFuaW1hbHNTdGF0ZSB7XG4gIC8vICAgQFNlbGVjdG9yKClcbiAgLy8gICBzdGF0aWMgZ2V0QW5pbWFscyhzdGF0ZTogQW5pbWFsc1N0YXRlTW9kZWwpIHt9XG4gIC8vIH1cbiAgLy8gVGhlIGBBbmltYWxzU3RhdGVgIHNlcnZlcyBhcyB0aGUgY29udGFpbmVyIHN0YXRlLiBBZGRpdGlvbmFsbHksIHRoZVxuICAvLyBzZWxlY3RvciBtYXkgcmVzaWRlIHdpdGhpbiBhIG5hbWVzcGFjZSBvciBhbm90aGVyIGNsYXNzIGxhY2tpbmcgdGhlXG4gIC8vIGBAU3RhdGVgIGRlY29yYXRvciwgdGh1cyBub3QgYmVpbmcgdHJlYXRlZCBhcyB0aGUgY29udGFpbmVyIHN0YXRlLlxuICBjb25zdCBjYW5JbmplY3RDb250YWluZXJTdGF0ZSA9XG4gICAgc2VsZWN0b3JPcHRpb25zLmluamVjdENvbnRhaW5lclN0YXRlIHx8IHNlbGVjdG9ycy5sZW5ndGggPT09IDA7XG5cbiAgaWYgKGNvbnRhaW5lckNsYXNzICYmIGNhbkluamVjdENvbnRhaW5lclN0YXRlKSB7XG4gICAgLy8gSWYgd2UgYXJlIG9uIGEgc3RhdGUgY2xhc3MsIGFkZCBpdCBhcyB0aGUgZmlyc3Qgc2VsZWN0b3IgcGFyYW1ldGVyXG4gICAgY29uc3QgbWV0YWRhdGEgPSDJtWdldFN0b3JlTWV0YWRhdGEoY29udGFpbmVyQ2xhc3MpO1xuICAgIGlmIChtZXRhZGF0YSkge1xuICAgICAgc2VsZWN0b3JzVG9BcHBseS5wdXNoKGNvbnRhaW5lckNsYXNzKTtcbiAgICB9XG4gIH1cbiAgc2VsZWN0b3JzVG9BcHBseS5wdXNoKC4uLnNlbGVjdG9ycyk7XG4gIHJldHVybiBzZWxlY3RvcnNUb0FwcGx5O1xufVxuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gZ2V0cyB0aGUgZmFjdG9yeSBmdW5jdGlvbiB0byBjcmVhdGUgdGhlIHNlbGVjdG9yIHRvIGdldCB0aGUgc2VsZWN0ZWQgc2xpY2UgZnJvbSB0aGUgYXBwIHN0YXRlXG4gKiBAaWdub3JlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRSb290U2VsZWN0b3JGYWN0b3J5KHNlbGVjdG9yOiBhbnkpOiDJtVNlbGVjdG9yRmFjdG9yeSB7XG4gIGNvbnN0IG1ldGFkYXRhID0gybVnZXRTZWxlY3Rvck1ldGFkYXRhKHNlbGVjdG9yKSB8fCDJtWdldFN0b3JlTWV0YWRhdGEoc2VsZWN0b3IpO1xuICByZXR1cm4gKG1ldGFkYXRhICYmIG1ldGFkYXRhLm1ha2VSb290U2VsZWN0b3IpIHx8ICgoKSA9PiBzZWxlY3Rvcik7XG59XG4iXX0=
@@ -1,20 +0,0 @@
1
- import { FEATURE_STATE_TOKEN } from '../symbols';
2
- import { PluginManager } from '../plugin-manager';
3
- import { StateFactory } from '../internal/state-factory';
4
- /**
5
- * This function provides the required providers when calling `NgxsModule.forFeature`
6
- * or `provideStates`. It is shared between the NgModule and standalone APIs.
7
- */
8
- export function getFeatureProviders(states) {
9
- return [
10
- StateFactory,
11
- PluginManager,
12
- ...states,
13
- {
14
- provide: FEATURE_STATE_TOKEN,
15
- multi: true,
16
- useValue: states
17
- }
18
- ];
19
- }
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9mZWF0dXJlLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsTUFBcUI7SUFDdkQsT0FBTztRQUNMLFlBQVk7UUFDWixhQUFhO1FBQ2IsR0FBRyxNQUFNO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsbUJBQW1CO1lBQzVCLEtBQUssRUFBRSxJQUFJO1lBQ1gsUUFBUSxFQUFFLE1BQU07U0FDakI7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyDJtVN0YXRlQ2xhc3MgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBGRUFUVVJFX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBQbHVnaW5NYW5hZ2VyIH0gZnJvbSAnLi4vcGx1Z2luLW1hbmFnZXInO1xuaW1wb3J0IHsgU3RhdGVGYWN0b3J5IH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBwcm92aWRlcyB0aGUgcmVxdWlyZWQgcHJvdmlkZXJzIHdoZW4gY2FsbGluZyBgTmd4c01vZHVsZS5mb3JGZWF0dXJlYFxuICogb3IgYHByb3ZpZGVTdGF0ZXNgLiBJdCBpcyBzaGFyZWQgYmV0d2VlbiB0aGUgTmdNb2R1bGUgYW5kIHN0YW5kYWxvbmUgQVBJcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEZlYXR1cmVQcm92aWRlcnMoc3RhdGVzOiDJtVN0YXRlQ2xhc3NbXSk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIFN0YXRlRmFjdG9yeSxcbiAgICBQbHVnaW5NYW5hZ2VyLFxuICAgIC4uLnN0YXRlcyxcbiAgICB7XG4gICAgICBwcm92aWRlOiBGRUFUVVJFX1NUQVRFX1RPS0VOLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICB1c2VWYWx1ZTogc3RhdGVzXG4gICAgfVxuICBdO1xufVxuIl19
@@ -1,5 +0,0 @@
1
- export { provideStore } from './provide-store';
2
- export { provideStates } from './provide-states';
3
- export { withNgxsPlugin } from './plugin';
4
- export { withNgxsPreboot } from './preboot';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IHByb3ZpZGVTdG9yZSB9IGZyb20gJy4vcHJvdmlkZS1zdG9yZSc7XG5leHBvcnQgeyBwcm92aWRlU3RhdGVzIH0gZnJvbSAnLi9wcm92aWRlLXN0YXRlcyc7XG5leHBvcnQgeyB3aXRoTmd4c1BsdWdpbiB9IGZyb20gJy4vcGx1Z2luJztcbmV4cG9ydCB7IHdpdGhOZ3hzUHJlYm9vdCB9IGZyb20gJy4vcHJlYm9vdCc7XG4iXX0=
@@ -1,89 +0,0 @@
1
- import { ENVIRONMENT_INITIALIZER, InjectionToken, inject } from '@angular/core';
2
- import { Store } from '../store';
3
- import { NGXS_PREBOOT_FNS } from './preboot';
4
- import { InitState, UpdateState } from '../plugin_api';
5
- import { FEATURE_STATE_TOKEN, ROOT_STATE_TOKEN } from '../symbols';
6
- import { StateFactory } from '../internal/state-factory';
7
- import { SelectFactory } from '../decorators/select/select-factory';
8
- import { InternalStateOperations } from '../internal/state-operations';
9
- import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
10
- const NG_DEV_MODE = typeof ngDevMode !== 'undefined' && ngDevMode;
11
- /**
12
- * This function is shared by both NgModule and standalone features.
13
- * When using `NgxsModule.forRoot` and `provideStore`, we can depend on the
14
- * same initialization functionality.
15
- */
16
- export function rootStoreInitializer() {
17
- const prebootFns = inject(NGXS_PREBOOT_FNS, { optional: true }) || [];
18
- prebootFns.forEach(prebootFn => prebootFn());
19
- const factory = inject(StateFactory);
20
- const internalStateOperations = inject(InternalStateOperations);
21
- inject(Store);
22
- inject(SelectFactory);
23
- const states = inject(ROOT_STATE_TOKEN, { optional: true }) || [];
24
- const lifecycleStateManager = inject(LifecycleStateManager);
25
- // Add stores to the state graph and return their defaults.
26
- const results = factory.addAndReturnDefaults(states);
27
- internalStateOperations.setStateToTheCurrentWithNew(results);
28
- // Connect our actions stream.
29
- factory.connectActionHandlers();
30
- // Dispatch the init action and invoke init and bootstrap functions after.
31
- lifecycleStateManager.ngxsBootstrap(new InitState(), results);
32
- }
33
- /**
34
- * This function is utilized by both NgModule and standalone features.
35
- * When using `NgxsModule.forFeature` and `provideStates`, we can depend on
36
- * the same initialization functionality.
37
- */
38
- export function featureStatesInitializer() {
39
- inject(Store);
40
- const internalStateOperations = inject(InternalStateOperations);
41
- const factory = inject(StateFactory);
42
- const states = inject(FEATURE_STATE_TOKEN, { optional: true }) || [];
43
- const lifecycleStateManager = inject(LifecycleStateManager);
44
- // Since FEATURE_STATE_TOKEN is a multi token, we need to
45
- // flatten it [[Feature1State, Feature2State], [Feature3State]].
46
- const flattenedStates = states.reduce((total, values) => total.concat(values), []);
47
- // add stores to the state graph and return their defaults.
48
- const results = factory.addAndReturnDefaults(flattenedStates);
49
- if (results.states.length) {
50
- internalStateOperations.setStateToTheCurrentWithNew(results);
51
- // Dispatch the update action and invoke init and bootstrap functions after.
52
- lifecycleStateManager.ngxsBootstrap(new UpdateState(results.defaults), results);
53
- }
54
- }
55
- /**
56
- * InjectionToken that registers the global Store.
57
- */
58
- export const NGXS_ROOT_STORE_INITIALIZER = new InjectionToken(NG_DEV_MODE ? 'NGXS_ROOT_STORE_INITIALIZER' : '');
59
- /**
60
- * InjectionToken that registers feature states.
61
- */
62
- export const NGXS_FEATURE_STORE_INITIALIZER = new InjectionToken(NG_DEV_MODE ? 'NGXS_FEATURE_STORE_INITIALIZER' : '');
63
- export const NGXS_ROOT_ENVIRONMENT_INITIALIZER = [
64
- { provide: NGXS_ROOT_STORE_INITIALIZER, useFactory: rootStoreInitializer },
65
- {
66
- provide: ENVIRONMENT_INITIALIZER,
67
- multi: true,
68
- useFactory() {
69
- return () => inject(NGXS_ROOT_STORE_INITIALIZER);
70
- }
71
- }
72
- ];
73
- /**
74
- * The `NGXS_FEATURE_ENVIRONMENT_INITIALIZER` functions as an environment initializer
75
- * at the `Route` level. Angular Router creates an environment route injector for each
76
- * matched route where navigation occurs. The injector is created once, ensuring that
77
- * the feature states initialization only happens once as well.
78
- */
79
- export const NGXS_FEATURE_ENVIRONMENT_INITIALIZER = [
80
- { provide: NGXS_FEATURE_STORE_INITIALIZER, useFactory: featureStatesInitializer },
81
- {
82
- provide: ENVIRONMENT_INITIALIZER,
83
- multi: true,
84
- useFactory() {
85
- return () => inject(NGXS_FEATURE_STORE_INITIALIZER);
86
- }
87
- }
88
- ];
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3N0YW5kYWxvbmUtZmVhdHVyZXMvaW5pdGlhbGl6ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxjQUFjLEVBQVksTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzFGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTVFLE1BQU0sV0FBVyxHQUFHLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLENBQUM7QUFFbEU7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RFLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBRTdDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNyQyxNQUFNLHVCQUF1QixH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QjtRQUNoQyxLQUFLLEVBQUUsSUFBSTtRQUNYLFVBQVU7WUFDUixPQUFPLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQ3RELENBQUM7S0FDRjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTlZJUk9OTUVOVF9JTklUSUFMSVpFUiwgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IMm1U3RhdGVDbGFzc0ludGVybmFsIH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuLi9zdG9yZSc7XG5pbXBvcnQgeyBOR1hTX1BSRUJPT1RfRk5TIH0gZnJvbSAnLi9wcmVib290JztcbmltcG9ydCB7IEluaXRTdGF0ZSwgVXBkYXRlU3RhdGUgfSBmcm9tICcuLi9wbHVnaW5fYXBpJztcbmltcG9ydCB7IEZFQVRVUkVfU1RBVEVfVE9LRU4sIFJPT1RfU1RBVEVfVE9LRU4gfSBmcm9tICcuLi9zeW1ib2xzJztcbmltcG9ydCB7IFN0YXRlRmFjdG9yeSB9IGZyb20gJy4uL2ludGVybmFsL3N0YXRlLWZhY3RvcnknO1xuaW1wb3J0IHsgU3RhdGVzQW5kRGVmYXVsdHMgfSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgU2VsZWN0RmFjdG9yeSB9IGZyb20gJy4uL2RlY29yYXRvcnMvc2VsZWN0L3NlbGVjdC1mYWN0b3J5JztcbmltcG9ydCB7IEludGVybmFsU3RhdGVPcGVyYXRpb25zIH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XG5pbXBvcnQgeyBMaWZlY3ljbGVTdGF0ZU1hbmFnZXIgfSBmcm9tICcuLi9pbnRlcm5hbC9saWZlY3ljbGUtc3RhdGUtbWFuYWdlcic7XG5cbmNvbnN0IE5HX0RFVl9NT0RFID0gdHlwZW9mIG5nRGV2TW9kZSAhPT0gJ3VuZGVmaW5lZCcgJiYgbmdEZXZNb2RlO1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gaXMgc2hhcmVkIGJ5IGJvdGggTmdNb2R1bGUgYW5kIHN0YW5kYWxvbmUgZmVhdHVyZXMuXG4gKiBXaGVuIHVzaW5nIGBOZ3hzTW9kdWxlLmZvclJvb3RgIGFuZCBgcHJvdmlkZVN0b3JlYCwgd2UgY2FuIGRlcGVuZCBvbiB0aGVcbiAqIHNhbWUgaW5pdGlhbGl6YXRpb24gZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJvb3RTdG9yZUluaXRpYWxpemVyKCk6IHZvaWQge1xuICBjb25zdCBwcmVib290Rm5zID0gaW5qZWN0KE5HWFNfUFJFQk9PVF9GTlMsIHsgb3B0aW9uYWw6IHRydWUgfSkgfHwgW107XG4gIHByZWJvb3RGbnMuZm9yRWFjaChwcmVib290Rm4gPT4gcHJlYm9vdEZuKCkpO1xuXG4gIGNvbnN0IGZhY3RvcnkgPSBpbmplY3QoU3RhdGVGYWN0b3J5KTtcbiAgY29uc3QgaW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMgPSBpbmplY3QoSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMpO1xuXG4gIGluamVjdChTdG9yZSk7XG4gIGluamVjdChTZWxlY3RGYWN0b3J5KTtcblxuICBjb25zdCBzdGF0ZXMgPSBpbmplY3QoUk9PVF9TVEFURV9UT0tFTiwgeyBvcHRpb25hbDogdHJ1ZSB9KSB8fCBbXTtcbiAgY29uc3QgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyID0gaW5qZWN0KExpZmVjeWNsZVN0YXRlTWFuYWdlcik7XG5cbiAgLy8gQWRkIHN0b3JlcyB0byB0aGUgc3RhdGUgZ3JhcGggYW5kIHJldHVybiB0aGVpciBkZWZhdWx0cy5cbiAgY29uc3QgcmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMgPSBmYWN0b3J5LmFkZEFuZFJldHVybkRlZmF1bHRzKHN0YXRlcyk7XG5cbiAgaW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMuc2V0U3RhdGVUb1RoZUN1cnJlbnRXaXRoTmV3KHJlc3VsdHMpO1xuXG4gIC8vIENvbm5lY3Qgb3VyIGFjdGlvbnMgc3RyZWFtLlxuICBmYWN0b3J5LmNvbm5lY3RBY3Rpb25IYW5kbGVycygpO1xuXG4gIC8vIERpc3BhdGNoIHRoZSBpbml0IGFjdGlvbiBhbmQgaW52b2tlIGluaXQgYW5kIGJvb3RzdHJhcCBmdW5jdGlvbnMgYWZ0ZXIuXG4gIGxpZmVjeWNsZVN0YXRlTWFuYWdlci5uZ3hzQm9vdHN0cmFwKG5ldyBJbml0U3RhdGUoKSwgcmVzdWx0cyk7XG59XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBpcyB1dGlsaXplZCBieSBib3RoIE5nTW9kdWxlIGFuZCBzdGFuZGFsb25lIGZlYXR1cmVzLlxuICogV2hlbiB1c2luZyBgTmd4c01vZHVsZS5mb3JGZWF0dXJlYCBhbmQgYHByb3ZpZGVTdGF0ZXNgLCB3ZSBjYW4gZGVwZW5kIG9uXG4gKiB0aGUgc2FtZSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbmFsaXR5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZmVhdHVyZVN0YXRlc0luaXRpYWxpemVyKCk6IHZvaWQge1xuICBpbmplY3QoU3RvcmUpO1xuXG4gIGNvbnN0IGludGVybmFsU3RhdGVPcGVyYXRpb25zID0gaW5qZWN0KEludGVybmFsU3RhdGVPcGVyYXRpb25zKTtcbiAgY29uc3QgZmFjdG9yeSA9IGluamVjdChTdGF0ZUZhY3RvcnkpO1xuICBjb25zdCBzdGF0ZXMgPSBpbmplY3QoRkVBVFVSRV9TVEFURV9UT0tFTiwgeyBvcHRpb25hbDogdHJ1ZSB9KSB8fCBbXTtcbiAgY29uc3QgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyID0gaW5qZWN0KExpZmVjeWNsZVN0YXRlTWFuYWdlcik7XG5cbiAgLy8gU2luY2UgRkVBVFVSRV9TVEFURV9UT0tFTiBpcyBhIG11bHRpIHRva2VuLCB3ZSBuZWVkIHRvXG4gIC8vIGZsYXR0ZW4gaXQgW1tGZWF0dXJlMVN0YXRlLCBGZWF0dXJlMlN0YXRlXSwgW0ZlYXR1cmUzU3RhdGVdXS5cbiAgY29uc3QgZmxhdHRlbmVkU3RhdGVzOiDJtVN0YXRlQ2xhc3NJbnRlcm5hbFtdID0gc3RhdGVzLnJlZHVjZShcbiAgICAodG90YWw6IMm1U3RhdGVDbGFzc0ludGVybmFsW10sIHZhbHVlczogybVTdGF0ZUNsYXNzSW50ZXJuYWxbXSkgPT4gdG90YWwuY29uY2F0KHZhbHVlcyksXG4gICAgW11cbiAgKTtcblxuICAvLyBhZGQgc3RvcmVzIHRvIHRoZSBzdGF0ZSBncmFwaCBhbmQgcmV0dXJuIHRoZWlyIGRlZmF1bHRzLlxuICBjb25zdCByZXN1bHRzOiBTdGF0ZXNBbmREZWZhdWx0cyA9IGZhY3RvcnkuYWRkQW5kUmV0dXJuRGVmYXVsdHMoZmxhdHRlbmVkU3RhdGVzKTtcblxuICBpZiAocmVzdWx0cy5zdGF0ZXMubGVuZ3RoKSB7XG4gICAgaW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMuc2V0U3RhdGVUb1RoZUN1cnJlbnRXaXRoTmV3KHJlc3VsdHMpO1xuXG4gICAgLy8gRGlzcGF0Y2ggdGhlIHVwZGF0ZSBhY3Rpb24gYW5kIGludm9rZSBpbml0IGFuZCBib290c3RyYXAgZnVuY3Rpb25zIGFmdGVyLlxuICAgIGxpZmVjeWNsZVN0YXRlTWFuYWdlci5uZ3hzQm9vdHN0cmFwKG5ldyBVcGRhdGVTdGF0ZShyZXN1bHRzLmRlZmF1bHRzKSwgcmVzdWx0cyk7XG4gIH1cbn1cblxuLyoqXG4gKiBJbmplY3Rpb25Ub2tlbiB0aGF0IHJlZ2lzdGVycyB0aGUgZ2xvYmFsIFN0b3JlLlxuICovXG5leHBvcnQgY29uc3QgTkdYU19ST09UX1NUT1JFX0lOSVRJQUxJWkVSID0gbmV3IEluamVjdGlvblRva2VuPHZvaWQ+KFxuICBOR19ERVZfTU9ERSA/ICdOR1hTX1JPT1RfU1RPUkVfSU5JVElBTElaRVInIDogJydcbik7XG5cbi8qKlxuICogSW5qZWN0aW9uVG9rZW4gdGhhdCByZWdpc3RlcnMgZmVhdHVyZSBzdGF0ZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBOR1hTX0ZFQVRVUkVfU1RPUkVfSU5JVElBTElaRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48dm9pZD4oXG4gIE5HX0RFVl9NT0RFID8gJ05HWFNfRkVBVFVSRV9TVE9SRV9JTklUSUFMSVpFUicgOiAnJ1xuKTtcblxuZXhwb3J0IGNvbnN0IE5HWFNfUk9PVF9FTlZJUk9OTUVOVF9JTklUSUFMSVpFUjogUHJvdmlkZXJbXSA9IFtcbiAgeyBwcm92aWRlOiBOR1hTX1JPT1RfU1RPUkVfSU5JVElBTElaRVIsIHVzZUZhY3Rvcnk6IHJvb3RTdG9yZUluaXRpYWxpemVyIH0sXG4gIHtcbiAgICBwcm92aWRlOiBFTlZJUk9OTUVOVF9JTklUSUFMSVpFUixcbiAgICBtdWx0aTogdHJ1ZSxcbiAgICB1c2VGYWN0b3J5KCkge1xuICAgICAgcmV0dXJuICgpID0+IGluamVjdChOR1hTX1JPT1RfU1RPUkVfSU5JVElBTElaRVIpO1xuICAgIH1cbiAgfVxuXTtcblxuLyoqXG4gKiBUaGUgYE5HWFNfRkVBVFVSRV9FTlZJUk9OTUVOVF9JTklUSUFMSVpFUmAgZnVuY3Rpb25zIGFzIGFuIGVudmlyb25tZW50IGluaXRpYWxpemVyXG4gKiBhdCB0aGUgYFJvdXRlYCBsZXZlbC4gQW5ndWxhciBSb3V0ZXIgY3JlYXRlcyBhbiBlbnZpcm9ubWVudCByb3V0ZSBpbmplY3RvciBmb3IgZWFjaFxuICogbWF0Y2hlZCByb3V0ZSB3aGVyZSBuYXZpZ2F0aW9uIG9jY3Vycy4gVGhlIGluamVjdG9yIGlzIGNyZWF0ZWQgb25jZSwgZW5zdXJpbmcgdGhhdFxuICogdGhlIGZlYXR1cmUgc3RhdGVzIGluaXRpYWxpemF0aW9uIG9ubHkgaGFwcGVucyBvbmNlIGFzIHdlbGwuXG4gKi9cbmV4cG9ydCBjb25zdCBOR1hTX0ZFQVRVUkVfRU5WSVJPTk1FTlRfSU5JVElBTElaRVI6IFByb3ZpZGVyW10gPSBbXG4gIHsgcHJvdmlkZTogTkdYU19GRUFUVVJFX1NUT1JFX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBmZWF0dXJlU3RhdGVzSW5pdGlhbGl6ZXIgfSxcbiAge1xuICAgIHByb3ZpZGU6IEVOVklST05NRU5UX0lOSVRJQUxJWkVSLFxuICAgIG11bHRpOiB0cnVlLFxuICAgIHVzZUZhY3RvcnkoKSB7XG4gICAgICByZXR1cm4gKCkgPT4gaW5qZWN0KE5HWFNfRkVBVFVSRV9TVE9SRV9JTklUSUFMSVpFUik7XG4gICAgfVxuICB9XG5dO1xuIl19
@@ -1,27 +0,0 @@
1
- import { ENVIRONMENT_INITIALIZER, inject, makeEnvironmentProviders } from '@angular/core';
2
- import { NGXS_PLUGINS } from '@ngxs/store/plugins';
3
- import { PluginManager } from '../plugin-manager';
4
- /**
5
- * This function registers a custom global plugin for the state.
6
- *
7
- * ```ts
8
- * bootstrapApplication(AppComponent, {
9
- * providers: [
10
- * provideStore(
11
- * [CountriesState],
12
- * withNgxsPlugin(LogoutPlugin)
13
- * )
14
- * ]
15
- * });
16
- * ```
17
- */
18
- export function withNgxsPlugin(plugin) {
19
- return makeEnvironmentProviders([
20
- { provide: NGXS_PLUGINS, useClass: plugin, multi: true },
21
- // We should inject the `PluginManager` to retrieve `NGXS_PLUGINS` and
22
- // register those plugins. The plugin can be added from inside the child
23
- // route, so the plugin manager should be re-injected.
24
- { provide: ENVIRONMENT_INITIALIZER, useValue: () => inject(PluginManager), multi: true }
25
- ]);
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL3N0YW5kYWxvbmUtZmVhdHVyZXMvcGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFHdkIsTUFBTSxFQUNOLHdCQUF3QixFQUN6QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFjLE1BQU0scUJBQXFCLENBQUM7QUFFL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLE1BQXdCO0lBQ3JELE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtRQUN4RCxzRUFBc0U7UUFDdEUsd0VBQXdFO1FBQ3hFLHNEQUFzRDtRQUN0RCxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7S0FDekYsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVOVklST05NRU5UX0lOSVRJQUxJWkVSLFxuICBFbnZpcm9ubWVudFByb3ZpZGVycyxcbiAgVHlwZSxcbiAgaW5qZWN0LFxuICBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR1hTX1BMVUdJTlMsIE5neHNQbHVnaW4gfSBmcm9tICdAbmd4cy9zdG9yZS9wbHVnaW5zJztcblxuaW1wb3J0IHsgUGx1Z2luTWFuYWdlciB9IGZyb20gJy4uL3BsdWdpbi1tYW5hZ2VyJztcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHJlZ2lzdGVycyBhIGN1c3RvbSBnbG9iYWwgcGx1Z2luIGZvciB0aGUgc3RhdGUuXG4gKlxuICogYGBgdHNcbiAqIGJvb3RzdHJhcEFwcGxpY2F0aW9uKEFwcENvbXBvbmVudCwge1xuICogICBwcm92aWRlcnM6IFtcbiAqICAgICBwcm92aWRlU3RvcmUoXG4gKiAgICAgICBbQ291bnRyaWVzU3RhdGVdLFxuICogICAgICAgd2l0aE5neHNQbHVnaW4oTG9nb3V0UGx1Z2luKVxuICogICAgIClcbiAqICAgXVxuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhOZ3hzUGx1Z2luKHBsdWdpbjogVHlwZTxOZ3hzUGx1Z2luPik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgeyBwcm92aWRlOiBOR1hTX1BMVUdJTlMsIHVzZUNsYXNzOiBwbHVnaW4sIG11bHRpOiB0cnVlIH0sXG4gICAgLy8gV2Ugc2hvdWxkIGluamVjdCB0aGUgYFBsdWdpbk1hbmFnZXJgIHRvIHJldHJpZXZlIGBOR1hTX1BMVUdJTlNgIGFuZFxuICAgIC8vIHJlZ2lzdGVyIHRob3NlIHBsdWdpbnMuIFRoZSBwbHVnaW4gY2FuIGJlIGFkZGVkIGZyb20gaW5zaWRlIHRoZSBjaGlsZFxuICAgIC8vIHJvdXRlLCBzbyB0aGUgcGx1Z2luIG1hbmFnZXIgc2hvdWxkIGJlIHJlLWluamVjdGVkLlxuICAgIHsgcHJvdmlkZTogRU5WSVJPTk1FTlRfSU5JVElBTElaRVIsIHVzZVZhbHVlOiAoKSA9PiBpbmplY3QoUGx1Z2luTWFuYWdlciksIG11bHRpOiB0cnVlIH1cbiAgXSk7XG59XG4iXX0=
@@ -1,32 +0,0 @@
1
- import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
2
- const NG_DEV_MODE = typeof ngDevMode !== 'undefined' && ngDevMode;
3
- /**
4
- * InjectionToken that registers preboot functions (called before the root initializer).
5
- */
6
- export const NGXS_PREBOOT_FNS = new InjectionToken(NG_DEV_MODE ? 'NGXS_PREBOOT_FNS' : '');
7
- /**
8
- * This function registers a preboot function which will be called before the root
9
- * store initializer is run, but after all of the NGXS features are provided and
10
- * available for injection. This is useful for registering action stream listeners
11
- * before any action is dispatched.
12
- *
13
- * ```ts
14
- * bootstrapApplication(AppComponent, {
15
- * providers: [
16
- * provideStore(
17
- * [CountriesState],
18
- * withNgxsPreboot(() => {
19
- * const actions$ = inject(Actions);
20
- * actions$.subscribe(ctx => console.log(ctx));
21
- * })
22
- * )
23
- * ]
24
- * });
25
- * ```
26
- */
27
- export function withNgxsPreboot(prebootFn) {
28
- return makeEnvironmentProviders([
29
- { provide: NGXS_PREBOOT_FNS, multi: true, useValue: prebootFn }
30
- ]);
31
- }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlYm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zdGFuZGFsb25lLWZlYXR1cmVzL3ByZWJvb3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RSxNQUFNLFdBQVcsR0FBRyxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDO0FBRWxFOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQ2hELFdBQVcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDdEMsQ0FBQztBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxTQUF1QjtJQUNyRCxPQUFPLHdCQUF3QixDQUFDO1FBQzlCLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRTtLQUNoRSxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5jb25zdCBOR19ERVZfTU9ERSA9IHR5cGVvZiBuZ0Rldk1vZGUgIT09ICd1bmRlZmluZWQnICYmIG5nRGV2TW9kZTtcblxuLyoqXG4gKiBJbmplY3Rpb25Ub2tlbiB0aGF0IHJlZ2lzdGVycyBwcmVib290IGZ1bmN0aW9ucyAoY2FsbGVkIGJlZm9yZSB0aGUgcm9vdCBpbml0aWFsaXplcikuXG4gKi9cbmV4cG9ydCBjb25zdCBOR1hTX1BSRUJPT1RfRk5TID0gbmV3IEluamVjdGlvblRva2VuPFZvaWRGdW5jdGlvbltdPihcbiAgTkdfREVWX01PREUgPyAnTkdYU19QUkVCT09UX0ZOUycgOiAnJ1xuKTtcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHJlZ2lzdGVycyBhIHByZWJvb3QgZnVuY3Rpb24gd2hpY2ggd2lsbCBiZSBjYWxsZWQgYmVmb3JlIHRoZSByb290XG4gKiBzdG9yZSBpbml0aWFsaXplciBpcyBydW4sIGJ1dCBhZnRlciBhbGwgb2YgdGhlIE5HWFMgZmVhdHVyZXMgYXJlIHByb3ZpZGVkIGFuZFxuICogYXZhaWxhYmxlIGZvciBpbmplY3Rpb24uIFRoaXMgaXMgdXNlZnVsIGZvciByZWdpc3RlcmluZyBhY3Rpb24gc3RyZWFtIGxpc3RlbmVyc1xuICogYmVmb3JlIGFueSBhY3Rpb24gaXMgZGlzcGF0Y2hlZC5cbiAqXG4gKiBgYGB0c1xuICogYm9vdHN0cmFwQXBwbGljYXRpb24oQXBwQ29tcG9uZW50LCB7XG4gKiAgIHByb3ZpZGVyczogW1xuICogICAgIHByb3ZpZGVTdG9yZShcbiAqICAgICAgIFtDb3VudHJpZXNTdGF0ZV0sXG4gKiAgICAgICB3aXRoTmd4c1ByZWJvb3QoKCkgPT4ge1xuICogICAgICAgICBjb25zdCBhY3Rpb25zJCA9IGluamVjdChBY3Rpb25zKTtcbiAqICAgICAgICAgYWN0aW9ucyQuc3Vic2NyaWJlKGN0eCA9PiBjb25zb2xlLmxvZyhjdHgpKTtcbiAqICAgICAgIH0pXG4gKiAgICAgKVxuICogICBdXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aE5neHNQcmVib290KHByZWJvb3RGbjogVm9pZEZ1bmN0aW9uKSB7XG4gIHJldHVybiBtYWtlRW52aXJvbm1lbnRQcm92aWRlcnMoW1xuICAgIHsgcHJvdmlkZTogTkdYU19QUkVCT09UX0ZOUywgbXVsdGk6IHRydWUsIHVzZVZhbHVlOiBwcmVib290Rm4gfVxuICBdKTtcbn1cbiJdfQ==
@@ -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
- NGXS_ROOT_ENVIRONMENT_INITIALIZER,
20
- features
21
- ]);
22
- }
23
- function isEnvironmentProvider(target) {
24
- return !!target.ɵproviders;
25
- }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZS1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zdGFuZGFsb25lLWZlYXR1cmVzL3Byb3ZpZGUtc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3Qix3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQThCbkUsTUFBTSxVQUFVLFlBQVksQ0FDMUIsU0FBd0IsRUFBRSxFQUMxQixHQUFHLGtCQUF5QjtJQUU1QixNQUFNLFFBQVEsR0FBMkIsRUFBRSxDQUFDO0lBQzVDLGdEQUFnRDtJQUNoRCxJQUFJLE9BQU8sR0FBc0IsRUFBRSxDQUFDO0lBRXBDLElBQUksa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2xDLElBQUkscUJBQXFCLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pELFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxHQUFHLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2hDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sd0JBQXdCLENBQUM7UUFDOUIsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDO1FBQ3BDLGlDQUFpQztRQUNqQyxRQUFRO0tBQ1QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsTUFBVztJQUN4QyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbnZpcm9ubWVudFByb3ZpZGVycywgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyDJtVN0YXRlQ2xhc3MgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuXG5pbXBvcnQgeyBOZ3hzTW9kdWxlT3B0aW9ucyB9IGZyb20gJy4uL3N5bWJvbHMnO1xuaW1wb3J0IHsgZ2V0Um9vdFByb3ZpZGVycyB9IGZyb20gJy4vcm9vdC1wcm92aWRlcnMnO1xuaW1wb3J0IHsgTkdYU19ST09UX0VOVklST05NRU5UX0lOSVRJQUxJWkVSIH0gZnJvbSAnLi9pbml0aWFsaXplcnMnO1xuXG4vKipcbiAqIFRoaXMgZnVuY3Rpb24gcHJvdmlkZXMgZ2xvYmFsIHN0b3JlIHByb3ZpZGVycyBhbmQgaW5pdGlhbGl6ZXMgdGhlIHN0b3JlLlxuICpcbiAqIGBgYHRzXG4gKiBib290c3RyYXBBcHBsaWNhdGlvbihBcHBDb21wb25lbnQsIHtcbiAqICAgcHJvdmlkZXJzOiBbcHJvdmlkZVN0b3JlKFtDb3VudHJpZXNTdGF0ZV0pXVxuICogfSk7XG4gKiBgYGBcbiAqXG4gKiBUaGUgYHByb3ZpZGVTdG9yZWAgbWF5IGJlIG9wdGlvbmFsbHkgY2FsbGVkIHdpdGggYSBjb25maWcgYmVmb3JlIHRoZSBsaXN0IG9mIGZlYXR1cmVzOlxuICpcbiAqIGBgYHRzXG4gKiBwcm92aWRlU3RvcmUoW0NvdW50cmllc1N0YXRlXSwge1xuICogICBkZXZlbG9wbWVudE1vZGU6ICFlbnZpcm9ubWVudC5wcm9kdWN0aW9uXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0b3JlKFxuICBzdGF0ZXM/OiDJtVN0YXRlQ2xhc3NbXSxcbiAgLi4uZmVhdHVyZXM6IEVudmlyb25tZW50UHJvdmlkZXJzW11cbik6IEVudmlyb25tZW50UHJvdmlkZXJzO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZVN0b3JlKFxuICBzdGF0ZXM/OiDJtVN0YXRlQ2xhc3NbXSxcbiAgb3B0aW9ucz86IE5neHNNb2R1bGVPcHRpb25zLFxuICAuLi5mZWF0dXJlczogRW52aXJvbm1lbnRQcm92aWRlcnNbXVxuKTogRW52aXJvbm1lbnRQcm92aWRlcnM7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlU3RvcmUoXG4gIHN0YXRlczogybVTdGF0ZUNsYXNzW10gPSBbXSxcbiAgLi4ub3B0aW9uc0FuZEZlYXR1cmVzOiBhbnlbXVxuKTogRW52aXJvbm1lbnRQcm92aWRlcnMge1xuICBjb25zdCBmZWF0dXJlczogRW52aXJvbm1lbnRQcm92aWRlcnNbXSA9IFtdO1xuICAvLyBPcHRpb25zIGFyZSBlbXB0eSBieSBkZWZhdWx0IChzZWUgYGZvclJvb3RgKS5cbiAgbGV0IG9wdGlvbnM6IE5neHNNb2R1bGVPcHRpb25zID0ge307XG5cbiAgaWYgKG9wdGlvbnNBbmRGZWF0dXJlcy5sZW5ndGggPiAwKSB7XG4gICAgaWYgKGlzRW52aXJvbm1lbnRQcm92aWRlcihvcHRpb25zQW5kRmVhdHVyZXNbMF0pKSB7XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLm9wdGlvbnNBbmRGZWF0dXJlcyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG9wdGlvbnMgPSBvcHRpb25zQW5kRmVhdHVyZXNbMF07XG4gICAgICBmZWF0dXJlcy5wdXNoKC4uLm9wdGlvbnNBbmRGZWF0dXJlcy5zbGljZSgxKSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbXG4gICAgLi4uZ2V0Um9vdFByb3ZpZGVycyhzdGF0ZXMsIG9wdGlvbnMpLFxuICAgIE5HWFNfUk9PVF9FTlZJUk9OTUVOVF9JTklUSUFMSVpFUixcbiAgICBmZWF0dXJlc1xuICBdKTtcbn1cblxuZnVuY3Rpb24gaXNFbnZpcm9ubWVudFByb3ZpZGVyKHRhcmdldDogYW55KTogdGFyZ2V0IGlzIEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuICEhdGFyZ2V0Lsm1cHJvdmlkZXJzO1xufVxuIl19
@@ -1,38 +0,0 @@
1
- import { APP_BOOTSTRAP_LISTENER, inject } from '@angular/core';
2
- import { ɵNgxsAppBootstrappedState } 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 { ROOT_STATE_TOKEN, NGXS_OPTIONS } from '../symbols';
7
- /**
8
- * This function provides the required providers when invoking `NgxsModule.forRoot`
9
- * or `provideStore`. It is shared between the NgModule and standalone APIs.
10
- */
11
- export function getRootProviders(states, options) {
12
- return [
13
- StateFactory,
14
- PluginManager,
15
- ...states,
16
- {
17
- provide: ROOT_STATE_TOKEN,
18
- useValue: states
19
- },
20
- {
21
- provide: APP_BOOTSTRAP_LISTENER,
22
- useFactory: () => {
23
- const appBootstrappedState = inject(ɵNgxsAppBootstrappedState);
24
- return () => appBootstrappedState.bootstrap();
25
- },
26
- multi: true
27
- },
28
- {
29
- provide: NGXS_OPTIONS,
30
- useValue: options
31
- },
32
- {
33
- provide: CUSTOM_NGXS_EXECUTION_STRATEGY,
34
- useValue: options.executionStrategy
35
- }
36
- ];
37
- }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc3RhbmRhbG9uZS1mZWF0dXJlcy9yb290LXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQVksTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBZSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRS9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFxQixnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0U7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixNQUFxQixFQUNyQixPQUEwQjtJQUUxQixPQUFPO1FBQ0wsWUFBWTtRQUNaLGFBQWE7UUFDYixHQUFHLE1BQU07UUFDVDtZQUNFLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsUUFBUSxFQUFFLE1BQU07U0FDakI7UUFDRDtZQUNFLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsVUFBVSxFQUFFLEdBQUcsRUFBRTtnQkFDZixNQUFNLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2dCQUMvRCxPQUFPLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2hELENBQUM7WUFDRCxLQUFLLEVBQUUsSUFBSTtTQUNaO1FBQ0Q7WUFDRSxPQUFPLEVBQUUsWUFBWTtZQUNyQixRQUFRLEVBQUUsT0FBTztTQUNsQjtRQUNEO1lBQ0UsT0FBTyxFQUFFLDhCQUE4QjtZQUN2QyxRQUFRLEVBQUUsT0FBTyxDQUFDLGlCQUFpQjtTQUNwQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0JPT1RTVFJBUF9MSVNURU5FUiwgUHJvdmlkZXIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgybVTdGF0ZUNsYXNzLCDJtU5neHNBcHBCb290c3RyYXBwZWRTdGF0ZSB9IGZyb20gJ0BuZ3hzL3N0b3JlL2ludGVybmFscyc7XG5cbmltcG9ydCB7IFBsdWdpbk1hbmFnZXIgfSBmcm9tICcuLi9wbHVnaW4tbWFuYWdlcic7XG5pbXBvcnQgeyBTdGF0ZUZhY3RvcnkgfSBmcm9tICcuLi9pbnRlcm5hbC9zdGF0ZS1mYWN0b3J5JztcbmltcG9ydCB7IENVU1RPTV9OR1hTX0VYRUNVVElPTl9TVFJBVEVHWSB9IGZyb20gJy4uL2V4ZWN1dGlvbi9zeW1ib2xzJztcbmltcG9ydCB7IE5neHNNb2R1bGVPcHRpb25zLCBST09UX1NUQVRFX1RPS0VOLCBOR1hTX09QVElPTlMgfSBmcm9tICcuLi9zeW1ib2xzJztcblxuLyoqXG4gKiBUaGlzIGZ1bmN0aW9uIHByb3ZpZGVzIHRoZSByZXF1aXJlZCBwcm92aWRlcnMgd2hlbiBpbnZva2luZyBgTmd4c01vZHVsZS5mb3JSb290YFxuICogb3IgYHByb3ZpZGVTdG9yZWAuIEl0IGlzIHNoYXJlZCBiZXR3ZWVuIHRoZSBOZ01vZHVsZSBhbmQgc3RhbmRhbG9uZSBBUElzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Um9vdFByb3ZpZGVycyhcbiAgc3RhdGVzOiDJtVN0YXRlQ2xhc3NbXSxcbiAgb3B0aW9uczogTmd4c01vZHVsZU9wdGlvbnNcbik6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW1xuICAgIFN0YXRlRmFjdG9yeSxcbiAgICBQbHVnaW5NYW5hZ2VyLFxuICAgIC4uLnN0YXRlcyxcbiAgICB7XG4gICAgICBwcm92aWRlOiBST09UX1NUQVRFX1RPS0VOLFxuICAgICAgdXNlVmFsdWU6IHN0YXRlc1xuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVBQX0JPT1RTVFJBUF9MSVNURU5FUixcbiAgICAgIHVzZUZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgY29uc3QgYXBwQm9vdHN0cmFwcGVkU3RhdGUgPSBpbmplY3QoybVOZ3hzQXBwQm9vdHN0cmFwcGVkU3RhdGUpO1xuICAgICAgICByZXR1cm4gKCkgPT4gYXBwQm9vdHN0cmFwcGVkU3RhdGUuYm9vdHN0cmFwKCk7XG4gICAgICB9LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HWFNfT1BUSU9OUyxcbiAgICAgIHVzZVZhbHVlOiBvcHRpb25zXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBDVVNUT01fTkdYU19FWEVDVVRJT05fU1RSQVRFR1ksXG4gICAgICB1c2VWYWx1ZTogb3B0aW9ucy5leGVjdXRpb25TdHJhdGVneVxuICAgIH1cbiAgXTtcbn1cbiJdfQ==