@ngxs/store 3.8.1-dev.master-22b962e → 3.8.1-dev.master-66dd672
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/esm2020/internals/initial-state.mjs +18 -0
- package/esm2020/internals/internal-tokens.mjs +6 -0
- package/{esm2015/internals/ngxs-bootstrapper.js → esm2020/internals/ngxs-bootstrapper.mjs} +4 -4
- package/esm2020/internals/testing/fresh-platform.mjs +72 -0
- package/{esm2015/internals/testing/helpers/ngxs-test.component.js → esm2020/internals/testing/helpers/ngxs-test.component.mjs} +4 -4
- package/esm2020/internals/testing/helpers/ngxs-test.module.mjs +20 -0
- package/{esm2015/internals/testing/ngxs.setup.js → esm2020/internals/testing/ngxs.setup.mjs} +4 -2
- package/esm2020/operators/patch.mjs +21 -0
- package/{esm2015/src/actions-stream.js → esm2020/src/actions-stream.mjs} +7 -7
- package/{esm2015/src/decorators/select/select-factory.js → esm2020/src/decorators/select/select-factory.mjs} +4 -4
- package/esm2020/src/decorators/selector/selector.mjs +32 -0
- package/esm2020/src/decorators/state.mjs +36 -0
- package/{esm2015/src/dev-features/ngxs-development.module.js → esm2020/src/dev-features/ngxs-development.module.mjs} +5 -5
- package/{esm2015/src/dev-features/ngxs-unhandled-actions-logger.js → esm2020/src/dev-features/ngxs-unhandled-actions-logger.mjs} +4 -4
- package/{esm2015/src/execution/dispatch-outside-zone-ngxs-execution-strategy.js → esm2020/src/execution/dispatch-outside-zone-ngxs-execution-strategy.mjs} +4 -4
- package/{esm2015/src/execution/internal-ngxs-execution-strategy.js → esm2020/src/execution/internal-ngxs-execution-strategy.mjs} +4 -4
- package/{esm2015/src/execution/noop-ngxs-execution-strategy.js → esm2020/src/execution/noop-ngxs-execution-strategy.mjs} +4 -4
- package/esm2020/src/execution/symbols.mjs +27 -0
- package/{esm2015/src/internal/dispatcher.js → esm2020/src/internal/dispatcher.mjs} +11 -11
- package/{esm2015/src/internal/error-handler.js → esm2020/src/internal/error-handler.mjs} +5 -5
- package/{esm2015/src/internal/lifecycle-state-manager.js → esm2020/src/internal/lifecycle-state-manager.mjs} +4 -4
- package/{esm2015/src/internal/state-context-factory.js → esm2020/src/internal/state-context-factory.mjs} +4 -4
- package/esm2020/src/internal/state-factory.mjs +292 -0
- package/{esm2015/src/internal/state-operations.js → esm2020/src/internal/state-operations.mjs} +5 -5
- package/esm2020/src/internal/state-operators.mjs +20 -0
- package/esm2020/src/internal/state-stream.mjs +27 -0
- package/{esm2015/src/ivy/ivy-enabled-in-dev-mode.js → esm2020/src/ivy/ivy-enabled-in-dev-mode.mjs} +2 -2
- package/esm2020/src/module.mjs +27 -0
- package/esm2020/src/modules/ngxs-feature.module.mjs +18 -0
- package/esm2020/src/modules/ngxs-root.module.mjs +18 -0
- package/{esm2015/src/operators/of-action.js → esm2020/src/operators/of-action.mjs} +10 -10
- package/{esm2015/src/plugin-manager.js → esm2020/src/plugin-manager.mjs} +4 -4
- package/esm2020/src/public_api.mjs +28 -0
- package/esm2020/src/selectors/create-property-selectors.mjs +20 -0
- package/esm2020/src/selectors/selector-metadata.mjs +35 -0
- package/esm2020/src/standalone-features/feature-providers.mjs +20 -0
- package/esm2020/src/standalone-features/index.mjs +4 -0
- package/esm2020/src/standalone-features/initializers.mjs +86 -0
- package/esm2020/src/standalone-features/plugin.mjs +20 -0
- package/esm2020/src/standalone-features/provide-states.mjs +26 -0
- package/esm2020/src/standalone-features/provide-store.mjs +26 -0
- package/esm2020/src/standalone-features/root-providers.mjs +47 -0
- package/{esm2015/src/store.js → esm2020/src/store.mjs} +6 -5
- package/esm2020/src/symbols.mjs +68 -0
- package/esm2020/src/utils/utils.mjs +92 -0
- package/fesm2015/{ngxs-store-internals-testing.js → ngxs-store-internals-testing.mjs} +19 -13
- package/fesm2015/ngxs-store-internals-testing.mjs.map +1 -0
- package/fesm2015/{ngxs-store-internals.js → ngxs-store-internals.mjs} +9 -7
- package/fesm2015/ngxs-store-internals.mjs.map +1 -0
- package/fesm2015/{ngxs-store-operators.js → ngxs-store-operators.mjs} +1 -1
- package/fesm2015/ngxs-store-operators.mjs.map +1 -0
- package/fesm2015/ngxs-store.mjs +2429 -0
- package/fesm2015/ngxs-store.mjs.map +1 -0
- package/fesm2020/ngxs-store-internals-testing.mjs +180 -0
- package/fesm2020/ngxs-store-internals-testing.mjs.map +1 -0
- package/fesm2020/ngxs-store-internals.mjs +103 -0
- package/fesm2020/ngxs-store-internals.mjs.map +1 -0
- package/fesm2020/ngxs-store-operators.mjs +202 -0
- package/fesm2020/ngxs-store-operators.mjs.map +1 -0
- package/{fesm2015/ngxs-store.js → fesm2020/ngxs-store.mjs} +1153 -1015
- package/fesm2020/ngxs-store.mjs.map +1 -0
- package/internals/initial-state.d.ts +1 -1
- package/internals/testing/helpers/ngxs-test.component.d.ts +1 -1
- package/package.json +46 -10
- package/src/execution/symbols.d.ts +8 -2
- package/src/module.d.ts +0 -11
- package/src/modules/ngxs-feature.module.d.ts +2 -9
- package/src/modules/ngxs-root.module.d.ts +2 -9
- package/src/public_api.d.ts +5 -4
- package/src/standalone-features/feature-providers.d.ts +7 -0
- package/src/standalone-features/index.d.ts +3 -0
- package/src/standalone-features/initializers.d.ts +29 -0
- package/src/standalone-features/plugin.d.ts +17 -0
- package/src/standalone-features/provide-states.d.ts +18 -0
- package/src/standalone-features/provide-store.d.ts +22 -0
- package/src/standalone-features/root-providers.d.ts +8 -0
- package/src/symbols.d.ts +3 -3
- package/bundles/ngxs-store-internals-testing.umd.js +0 -547
- package/bundles/ngxs-store-internals-testing.umd.js.map +0 -1
- package/bundles/ngxs-store-internals.umd.js +0 -141
- package/bundles/ngxs-store-internals.umd.js.map +0 -1
- package/bundles/ngxs-store-operators.umd.js +0 -224
- package/bundles/ngxs-store-operators.umd.js.map +0 -1
- package/bundles/ngxs-store.umd.js +0 -2939
- package/bundles/ngxs-store.umd.js.map +0 -1
- package/esm2015/internals/initial-state.js +0 -17
- package/esm2015/internals/internal-tokens.js +0 -5
- package/esm2015/internals/testing/fresh-platform.js +0 -70
- package/esm2015/internals/testing/helpers/ngxs-test.module.js +0 -21
- package/esm2015/operators/patch.js +0 -21
- package/esm2015/src/decorators/selector/selector.js +0 -32
- package/esm2015/src/decorators/state.js +0 -36
- package/esm2015/src/execution/symbols.js +0 -23
- package/esm2015/src/internal/state-factory.js +0 -288
- package/esm2015/src/internal/state-operators.js +0 -20
- package/esm2015/src/internal/state-stream.js +0 -25
- package/esm2015/src/module.js +0 -88
- package/esm2015/src/modules/ngxs-feature.module.js +0 -45
- package/esm2015/src/modules/ngxs-root.module.js +0 -41
- package/esm2015/src/public_api.js +0 -27
- package/esm2015/src/selectors/create-property-selectors.js +0 -20
- package/esm2015/src/selectors/selector-metadata.js +0 -30
- package/esm2015/src/symbols.js +0 -58
- package/esm2015/src/utils/utils.js +0 -92
- package/fesm2015/ngxs-store-internals-testing.js.map +0 -1
- package/fesm2015/ngxs-store-internals.js.map +0 -1
- package/fesm2015/ngxs-store-operators.js.map +0 -1
- package/fesm2015/ngxs-store.js.map +0 -1
- package/internals/ngxs-store-internals.d.ts +0 -5
- package/internals/package.json +0 -10
- package/internals/testing/ngxs-store-internals-testing.d.ts +0 -5
- package/internals/testing/package.json +0 -10
- package/ngxs-store.d.ts +0 -5
- package/operators/ngxs-store-operators.d.ts +0 -5
- package/operators/package.json +0 -10
- /package/{esm2015/index.js → esm2020/index.mjs} +0 -0
- /package/{esm2015/internals/index.js → esm2020/internals/index.mjs} +0 -0
- /package/{esm2015/internals/memoize.js → esm2020/internals/memoize.mjs} +0 -0
- /package/{esm2015/internals/ngxs-store-internals.js → esm2020/internals/ngxs-store-internals.mjs} +0 -0
- /package/{esm2015/internals/src/symbols.js → esm2020/internals/src/symbols.mjs} +0 -0
- /package/{esm2015/internals/symbols.js → esm2020/internals/symbols.mjs} +0 -0
- /package/{esm2015/internals/testing/index.js → esm2020/internals/testing/index.mjs} +0 -0
- /package/{esm2015/internals/testing/ngxs-store-internals-testing.js → esm2020/internals/testing/ngxs-store-internals-testing.mjs} +0 -0
- /package/{esm2015/internals/testing/skip-console-logging.js → esm2020/internals/testing/skip-console-logging.mjs} +0 -0
- /package/{esm2015/internals/testing/symbol.js → esm2020/internals/testing/symbol.mjs} +0 -0
- /package/{esm2015/ngxs-store.js → esm2020/ngxs-store.mjs} +0 -0
- /package/{esm2015/operators/append.js → esm2020/operators/append.mjs} +0 -0
- /package/{esm2015/operators/compose.js → esm2020/operators/compose.mjs} +0 -0
- /package/{esm2015/operators/iif.js → esm2020/operators/iif.mjs} +0 -0
- /package/{esm2015/operators/index.js → esm2020/operators/index.mjs} +0 -0
- /package/{esm2015/operators/insert-item.js → esm2020/operators/insert-item.mjs} +0 -0
- /package/{esm2015/operators/ngxs-store-operators.js → esm2020/operators/ngxs-store-operators.mjs} +0 -0
- /package/{esm2015/operators/remove-item.js → esm2020/operators/remove-item.mjs} +0 -0
- /package/{esm2015/operators/types.js → esm2020/operators/types.mjs} +0 -0
- /package/{esm2015/operators/update-item.js → esm2020/operators/update-item.mjs} +0 -0
- /package/{esm2015/operators/utils.js → esm2020/operators/utils.mjs} +0 -0
- /package/{esm2015/src/actions/actions.js → esm2020/src/actions/actions.mjs} +0 -0
- /package/{esm2015/src/actions/symbols.js → esm2020/src/actions/symbols.mjs} +0 -0
- /package/{esm2015/src/configs/messages.config.js → esm2020/src/configs/messages.config.mjs} +0 -0
- /package/{esm2015/src/decorators/action.js → esm2020/src/decorators/action.mjs} +0 -0
- /package/{esm2015/src/decorators/select/select.js → esm2020/src/decorators/select/select.mjs} +0 -0
- /package/{esm2015/src/decorators/select/symbols.js → esm2020/src/decorators/select/symbols.mjs} +0 -0
- /package/{esm2015/src/decorators/selector/symbols.js → esm2020/src/decorators/selector/symbols.mjs} +0 -0
- /package/{esm2015/src/decorators/selector-options.js → esm2020/src/decorators/selector-options.mjs} +0 -0
- /package/{esm2015/src/dev-features/symbols.js → esm2020/src/dev-features/symbols.mjs} +0 -0
- /package/{esm2015/src/internal/custom-rxjs-subjects.js → esm2020/src/internal/custom-rxjs-subjects.mjs} +0 -0
- /package/{esm2015/src/internal/internals.js → esm2020/src/internal/internals.mjs} +0 -0
- /package/{esm2015/src/operators/leave-ngxs.js → esm2020/src/operators/leave-ngxs.mjs} +0 -0
- /package/{esm2015/src/plugin_api.js → esm2020/src/plugin_api.mjs} +0 -0
- /package/{esm2015/src/private_api.js → esm2020/src/private_api.mjs} +0 -0
- /package/{esm2015/src/public_to_deprecate.js → esm2020/src/public_to_deprecate.mjs} +0 -0
- /package/{esm2015/src/selectors/create-model-selector.js → esm2020/src/selectors/create-model-selector.mjs} +0 -0
- /package/{esm2015/src/selectors/create-pick-selector.js → esm2020/src/selectors/create-pick-selector.mjs} +0 -0
- /package/{esm2015/src/selectors/create-selector.js → esm2020/src/selectors/create-selector.mjs} +0 -0
- /package/{esm2015/src/selectors/index.js → esm2020/src/selectors/index.mjs} +0 -0
- /package/{esm2015/src/selectors/selector-checks.util.js → esm2020/src/selectors/selector-checks.util.mjs} +0 -0
- /package/{esm2015/src/selectors/selector-models.js → esm2020/src/selectors/selector-models.mjs} +0 -0
- /package/{esm2015/src/selectors/selector-types.util.js → esm2020/src/selectors/selector-types.util.mjs} +0 -0
- /package/{esm2015/src/selectors/selector-utils.js → esm2020/src/selectors/selector-utils.mjs} +0 -0
- /package/{esm2015/src/state-token/state-token.js → esm2020/src/state-token/state-token.mjs} +0 -0
- /package/{esm2015/src/state-token/symbols.js → esm2020/src/state-token/symbols.mjs} +0 -0
- /package/{esm2015/src/utils/compose.js → esm2020/src/utils/compose.mjs} +0 -0
- /package/{esm2015/src/utils/freeze.js → esm2020/src/utils/freeze.mjs} +0 -0
- /package/{esm2015/src/utils/store-validators.js → esm2020/src/utils/store-validators.mjs} +0 -0
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { OrderedBehaviorSubject } from './custom-rxjs-subjects';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
/**
|
|
5
|
-
* BehaviorSubject of the entire state.
|
|
6
|
-
* @ignore
|
|
7
|
-
*/
|
|
8
|
-
export class StateStream extends OrderedBehaviorSubject {
|
|
9
|
-
constructor() {
|
|
10
|
-
super({});
|
|
11
|
-
}
|
|
12
|
-
ngOnDestroy() {
|
|
13
|
-
// The `StateStream` should never emit values once the root view is removed, e.g. when the `NgModuleRef.destroy()` is called.
|
|
14
|
-
// This will eliminate memory leaks in server-side rendered apps where the `StateStream` is created per each HTTP request, users
|
|
15
|
-
// might forget to unsubscribe from `store.select` or `store.subscribe`, thus this will lead to huge memory leaks in SSR apps.
|
|
16
|
-
this.complete();
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
/** @nocollapse */ StateStream.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StateStream, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
-
/** @nocollapse */ StateStream.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StateStream, providedIn: 'root' });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StateStream, decorators: [{
|
|
22
|
-
type: Injectable,
|
|
23
|
-
args: [{ providedIn: 'root' }]
|
|
24
|
-
}], ctorParameters: function () { return []; } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtc3RyZWFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL2ludGVybmFsL3N0YXRlLXN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBSXRELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUVoRTs7O0dBR0c7QUFFSCxNQUFNLE9BQU8sV0FBWSxTQUFRLHNCQUFtQztJQUNsRTtRQUNFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsNkhBQTZIO1FBQzdILGdJQUFnSTtRQUNoSSw4SEFBOEg7UUFDOUgsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7OzRIQVZVLFdBQVc7Z0lBQVgsV0FBVyxjQURFLE1BQU07NEZBQ25CLFdBQVc7a0JBRHZCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFBsYWluT2JqZWN0IH0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuaW1wb3J0IHsgT3JkZXJlZEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJy4vY3VzdG9tLXJ4anMtc3ViamVjdHMnO1xuXG4vKipcbiAqIEJlaGF2aW9yU3ViamVjdCBvZiB0aGUgZW50aXJlIHN0YXRlLlxuICogQGlnbm9yZVxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFN0YXRlU3RyZWFtIGV4dGVuZHMgT3JkZXJlZEJlaGF2aW9yU3ViamVjdDxQbGFpbk9iamVjdD4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7fSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAvLyBUaGUgYFN0YXRlU3RyZWFtYCBzaG91bGQgbmV2ZXIgZW1pdCB2YWx1ZXMgb25jZSB0aGUgcm9vdCB2aWV3IGlzIHJlbW92ZWQsIGUuZy4gd2hlbiB0aGUgYE5nTW9kdWxlUmVmLmRlc3Ryb3koKWAgaXMgY2FsbGVkLlxuICAgIC8vIFRoaXMgd2lsbCBlbGltaW5hdGUgbWVtb3J5IGxlYWtzIGluIHNlcnZlci1zaWRlIHJlbmRlcmVkIGFwcHMgd2hlcmUgdGhlIGBTdGF0ZVN0cmVhbWAgaXMgY3JlYXRlZCBwZXIgZWFjaCBIVFRQIHJlcXVlc3QsIHVzZXJzXG4gICAgLy8gbWlnaHQgZm9yZ2V0IHRvIHVuc3Vic2NyaWJlIGZyb20gYHN0b3JlLnNlbGVjdGAgb3IgYHN0b3JlLnN1YnNjcmliZWAsIHRodXMgdGhpcyB3aWxsIGxlYWQgdG8gaHVnZSBtZW1vcnkgbGVha3MgaW4gU1NSIGFwcHMuXG4gICAgdGhpcy5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
|
package/esm2015/src/module.js
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { APP_BOOTSTRAP_LISTENER, NgModule } from '@angular/core';
|
|
2
|
-
import { ɵNGXS_STATE_FACTORY, ɵNGXS_STATE_CONTEXT_FACTORY, NgxsBootstrapper } from '@ngxs/store/internals';
|
|
3
|
-
import { FEATURE_STATE_TOKEN, ROOT_OPTIONS, ROOT_STATE_TOKEN } from './symbols';
|
|
4
|
-
import { USER_PROVIDED_NGXS_EXECUTION_STRATEGY } from './execution/symbols';
|
|
5
|
-
import { StateFactory } from './internal/state-factory';
|
|
6
|
-
import { StateContextFactory } from './internal/state-context-factory';
|
|
7
|
-
import { PluginManager } from './plugin-manager';
|
|
8
|
-
import { NgxsRootModule } from './modules/ngxs-root.module';
|
|
9
|
-
import { NgxsFeatureModule } from './modules/ngxs-feature.module';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
/**
|
|
12
|
-
* Ngxs Module
|
|
13
|
-
*/
|
|
14
|
-
export class NgxsModule {
|
|
15
|
-
/**
|
|
16
|
-
* Root module factory
|
|
17
|
-
*/
|
|
18
|
-
static forRoot(states = [], options = {}) {
|
|
19
|
-
return {
|
|
20
|
-
ngModule: NgxsRootModule,
|
|
21
|
-
providers: [
|
|
22
|
-
StateFactory,
|
|
23
|
-
PluginManager,
|
|
24
|
-
...states,
|
|
25
|
-
...NgxsModule.ngxsTokenProviders(states, options)
|
|
26
|
-
]
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Feature module factory
|
|
31
|
-
*/
|
|
32
|
-
static forFeature(states = []) {
|
|
33
|
-
return {
|
|
34
|
-
ngModule: NgxsFeatureModule,
|
|
35
|
-
providers: [
|
|
36
|
-
// This is required on the feature level, see comments in `state-factory.ts`.
|
|
37
|
-
StateFactory,
|
|
38
|
-
PluginManager,
|
|
39
|
-
...states,
|
|
40
|
-
{
|
|
41
|
-
provide: FEATURE_STATE_TOKEN,
|
|
42
|
-
multi: true,
|
|
43
|
-
useValue: states
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
static ngxsTokenProviders(states, options) {
|
|
49
|
-
return [
|
|
50
|
-
{
|
|
51
|
-
provide: USER_PROVIDED_NGXS_EXECUTION_STRATEGY,
|
|
52
|
-
useValue: options.executionStrategy
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
provide: ROOT_STATE_TOKEN,
|
|
56
|
-
useValue: states
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
provide: ROOT_OPTIONS,
|
|
60
|
-
useValue: options
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
provide: APP_BOOTSTRAP_LISTENER,
|
|
64
|
-
useFactory: NgxsModule.appBootstrapListenerFactory,
|
|
65
|
-
multi: true,
|
|
66
|
-
deps: [NgxsBootstrapper]
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
provide: ɵNGXS_STATE_CONTEXT_FACTORY,
|
|
70
|
-
useExisting: StateContextFactory
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
provide: ɵNGXS_STATE_FACTORY,
|
|
74
|
-
useExisting: StateFactory
|
|
75
|
-
}
|
|
76
|
-
];
|
|
77
|
-
}
|
|
78
|
-
static appBootstrapListenerFactory(bootstrapper) {
|
|
79
|
-
return () => bootstrapper.bootstrap();
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/** @nocollapse */ NgxsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
83
|
-
/** @nocollapse */ NgxsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsModule });
|
|
84
|
-
/** @nocollapse */ NgxsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsModule });
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsModule, decorators: [{
|
|
86
|
-
type: NgModule
|
|
87
|
-
}] });
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvc3RvcmUvc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsc0JBQXNCLEVBRXRCLFFBQVEsRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLDJCQUEyQixFQUMzQixnQkFBZ0IsRUFFakIsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQixPQUFPLEVBQ0wsbUJBQW1CLEVBRW5CLFlBQVksRUFDWixnQkFBZ0IsRUFDakIsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRWxFOztHQUVHO0FBRUgsTUFBTSxPQUFPLFVBQVU7SUFDckI7O09BRUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUNaLFNBQXVCLEVBQUUsRUFDekIsVUFBNkIsRUFBRTtRQUUvQixPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULFlBQVk7Z0JBQ1osYUFBYTtnQkFDYixHQUFHLE1BQU07Z0JBQ1QsR0FBRyxVQUFVLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQzthQUNsRDtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLFNBQXVCLEVBQUU7UUFDekMsT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFO2dCQUNULDZFQUE2RTtnQkFDN0UsWUFBWTtnQkFDWixhQUFhO2dCQUNiLEdBQUcsTUFBTTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsbUJBQW1CO29CQUM1QixLQUFLLEVBQUUsSUFBSTtvQkFDWCxRQUFRLEVBQUUsTUFBTTtpQkFDakI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRU8sTUFBTSxDQUFDLGtCQUFrQixDQUMvQixNQUFvQixFQUNwQixPQUEwQjtRQUUxQixPQUFPO1lBQ0w7Z0JBQ0UsT0FBTyxFQUFFLHFDQUFxQztnQkFDOUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxpQkFBaUI7YUFDcEM7WUFDRDtnQkFDRSxPQUFPLEVBQUUsZ0JBQWdCO2dCQUN6QixRQUFRLEVBQUUsTUFBTTthQUNqQjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxZQUFZO2dCQUNyQixRQUFRLEVBQUUsT0FBTzthQUNsQjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxzQkFBc0I7Z0JBQy9CLFVBQVUsRUFBRSxVQUFVLENBQUMsMkJBQTJCO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTtnQkFDWCxJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzthQUN6QjtZQUNEO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFdBQVcsRUFBRSxtQkFBbUI7YUFDakM7WUFDRDtnQkFDRSxPQUFPLEVBQUUsbUJBQW1CO2dCQUM1QixXQUFXLEVBQUUsWUFBWTthQUMxQjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRU8sTUFBTSxDQUFDLDJCQUEyQixDQUFDLFlBQThCO1FBQ3ZFLE9BQU8sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3hDLENBQUM7OzJIQTNFVSxVQUFVOzRIQUFWLFVBQVU7NEhBQVYsVUFBVTs0RkFBVixVQUFVO2tCQUR0QixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVBQX0JPT1RTVFJBUF9MSVNURU5FUixcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG4gIFByb3ZpZGVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgybVOR1hTX1NUQVRFX0ZBQ1RPUlksXG4gIMm1TkdYU19TVEFURV9DT05URVhUX0ZBQ1RPUlksXG4gIE5neHNCb290c3RyYXBwZXIsXG4gIFN0YXRlQ2xhc3Ncbn0gZnJvbSAnQG5neHMvc3RvcmUvaW50ZXJuYWxzJztcblxuaW1wb3J0IHtcbiAgRkVBVFVSRV9TVEFURV9UT0tFTixcbiAgTmd4c01vZHVsZU9wdGlvbnMsXG4gIFJPT1RfT1BUSU9OUyxcbiAgUk9PVF9TVEFURV9UT0tFTlxufSBmcm9tICcuL3N5bWJvbHMnO1xuaW1wb3J0IHsgVVNFUl9QUk9WSURFRF9OR1hTX0VYRUNVVElPTl9TVFJBVEVHWSB9IGZyb20gJy4vZXhlY3V0aW9uL3N5bWJvbHMnO1xuaW1wb3J0IHsgU3RhdGVGYWN0b3J5IH0gZnJvbSAnLi9pbnRlcm5hbC9zdGF0ZS1mYWN0b3J5JztcbmltcG9ydCB7IFN0YXRlQ29udGV4dEZhY3RvcnkgfSBmcm9tICcuL2ludGVybmFsL3N0YXRlLWNvbnRleHQtZmFjdG9yeSc7XG5pbXBvcnQgeyBQbHVnaW5NYW5hZ2VyIH0gZnJvbSAnLi9wbHVnaW4tbWFuYWdlcic7XG5pbXBvcnQgeyBOZ3hzUm9vdE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9uZ3hzLXJvb3QubW9kdWxlJztcbmltcG9ydCB7IE5neHNGZWF0dXJlTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL25neHMtZmVhdHVyZS5tb2R1bGUnO1xuXG4vKipcbiAqIE5neHMgTW9kdWxlXG4gKi9cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgTmd4c01vZHVsZSB7XG4gIC8qKlxuICAgKiBSb290IG1vZHVsZSBmYWN0b3J5XG4gICAqL1xuICBzdGF0aWMgZm9yUm9vdChcbiAgICBzdGF0ZXM6IFN0YXRlQ2xhc3NbXSA9IFtdLFxuICAgIG9wdGlvbnM6IE5neHNNb2R1bGVPcHRpb25zID0ge31cbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzUm9vdE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTmd4c1Jvb3RNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgU3RhdGVGYWN0b3J5LFxuICAgICAgICBQbHVnaW5NYW5hZ2VyLFxuICAgICAgICAuLi5zdGF0ZXMsXG4gICAgICAgIC4uLk5neHNNb2R1bGUubmd4c1Rva2VuUHJvdmlkZXJzKHN0YXRlcywgb3B0aW9ucylcbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEZlYXR1cmUgbW9kdWxlIGZhY3RvcnlcbiAgICovXG4gIHN0YXRpYyBmb3JGZWF0dXJlKHN0YXRlczogU3RhdGVDbGFzc1tdID0gW10pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neHNGZWF0dXJlTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ3hzRmVhdHVyZU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIG9uIHRoZSBmZWF0dXJlIGxldmVsLCBzZWUgY29tbWVudHMgaW4gYHN0YXRlLWZhY3RvcnkudHNgLlxuICAgICAgICBTdGF0ZUZhY3RvcnksXG4gICAgICAgIFBsdWdpbk1hbmFnZXIsXG4gICAgICAgIC4uLnN0YXRlcyxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEZFQVRVUkVfU1RBVEVfVE9LRU4sXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgdXNlVmFsdWU6IHN0YXRlc1xuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG5neHNUb2tlblByb3ZpZGVycyhcbiAgICBzdGF0ZXM6IFN0YXRlQ2xhc3NbXSxcbiAgICBvcHRpb25zOiBOZ3hzTW9kdWxlT3B0aW9uc1xuICApOiBQcm92aWRlcltdIHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBwcm92aWRlOiBVU0VSX1BST1ZJREVEX05HWFNfRVhFQ1VUSU9OX1NUUkFURUdZLFxuICAgICAgICB1c2VWYWx1ZTogb3B0aW9ucy5leGVjdXRpb25TdHJhdGVneVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogUk9PVF9TVEFURV9UT0tFTixcbiAgICAgICAgdXNlVmFsdWU6IHN0YXRlc1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogUk9PVF9PUFRJT05TLFxuICAgICAgICB1c2VWYWx1ZTogb3B0aW9uc1xuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogQVBQX0JPT1RTVFJBUF9MSVNURU5FUixcbiAgICAgICAgdXNlRmFjdG9yeTogTmd4c01vZHVsZS5hcHBCb290c3RyYXBMaXN0ZW5lckZhY3RvcnksXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICBkZXBzOiBbTmd4c0Jvb3RzdHJhcHBlcl1cbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHByb3ZpZGU6IMm1TkdYU19TVEFURV9DT05URVhUX0ZBQ1RPUlksXG4gICAgICAgIHVzZUV4aXN0aW5nOiBTdGF0ZUNvbnRleHRGYWN0b3J5XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBwcm92aWRlOiDJtU5HWFNfU1RBVEVfRkFDVE9SWSxcbiAgICAgICAgdXNlRXhpc3Rpbmc6IFN0YXRlRmFjdG9yeVxuICAgICAgfVxuICAgIF07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBhcHBCb290c3RyYXBMaXN0ZW5lckZhY3RvcnkoYm9vdHN0cmFwcGVyOiBOZ3hzQm9vdHN0cmFwcGVyKTogRnVuY3Rpb24ge1xuICAgIHJldHVybiAoKSA9PiBib290c3RyYXBwZXIuYm9vdHN0cmFwKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Inject, NgModule, Optional } from '@angular/core';
|
|
2
|
-
import { Store } from '../store';
|
|
3
|
-
import { InternalStateOperations } from '../internal/state-operations';
|
|
4
|
-
import { StateFactory } from '../internal/state-factory';
|
|
5
|
-
import { FEATURE_STATE_TOKEN } from '../symbols';
|
|
6
|
-
import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
|
|
7
|
-
import { UpdateState } from '../actions/actions';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../store";
|
|
10
|
-
import * as i2 from "../internal/state-operations";
|
|
11
|
-
import * as i3 from "../internal/state-factory";
|
|
12
|
-
import * as i4 from "../internal/lifecycle-state-manager";
|
|
13
|
-
/**
|
|
14
|
-
* Feature module
|
|
15
|
-
* @ignore
|
|
16
|
-
*/
|
|
17
|
-
export class NgxsFeatureModule {
|
|
18
|
-
constructor(_store, internalStateOperations, factory, states = [], lifecycleStateManager) {
|
|
19
|
-
// Since FEATURE_STATE_TOKEN is a multi token, we need to
|
|
20
|
-
// flatten it [[Feature1State, Feature2State], [Feature3State]]
|
|
21
|
-
const flattenedStates = NgxsFeatureModule.flattenStates(states);
|
|
22
|
-
// add stores to the state graph and return their defaults
|
|
23
|
-
const results = factory.addAndReturnDefaults(flattenedStates);
|
|
24
|
-
if (results.states.length) {
|
|
25
|
-
internalStateOperations.setStateToTheCurrentWithNew(results);
|
|
26
|
-
// dispatch the update action and invoke init and bootstrap functions after
|
|
27
|
-
lifecycleStateManager.ngxsBootstrap(new UpdateState(results.defaults), results);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
static flattenStates(states = []) {
|
|
31
|
-
return states.reduce((total, values) => total.concat(values), []);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
/** @nocollapse */ NgxsFeatureModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsFeatureModule, deps: [{ token: i1.Store }, { token: i2.InternalStateOperations }, { token: i3.StateFactory }, { token: FEATURE_STATE_TOKEN, optional: true }, { token: i4.LifecycleStateManager }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
35
|
-
/** @nocollapse */ NgxsFeatureModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsFeatureModule });
|
|
36
|
-
/** @nocollapse */ NgxsFeatureModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsFeatureModule });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsFeatureModule, decorators: [{
|
|
38
|
-
type: NgModule
|
|
39
|
-
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.InternalStateOperations }, { type: i3.StateFactory }, { type: undefined, decorators: [{
|
|
40
|
-
type: Optional
|
|
41
|
-
}, {
|
|
42
|
-
type: Inject,
|
|
43
|
-
args: [FEATURE_STATE_TOKEN]
|
|
44
|
-
}] }, { type: i4.LifecycleStateManager }]; } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1mZWF0dXJlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9tb2R1bGVzL25neHMtZmVhdHVyZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQUVqRDs7O0dBR0c7QUFFSCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQ0UsTUFBYSxFQUNiLHVCQUFnRCxFQUNoRCxPQUFxQixFQUdyQixTQUFpQyxFQUFFLEVBQ25DLHFCQUE0QztRQUU1Qyx5REFBeUQ7UUFDekQsK0RBQStEO1FBQy9ELE1BQU0sZUFBZSxHQUF5QixpQkFBaUIsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdEYsMERBQTBEO1FBQzFELE1BQU0sT0FBTyxHQUFzQixPQUFPLENBQUMsb0JBQW9CLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFakYsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUN6Qix1QkFBdUIsQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUU3RCwyRUFBMkU7WUFDM0UscUJBQXFCLENBQUMsYUFBYSxDQUFDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNqRjtJQUNILENBQUM7SUFFTyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQWlDLEVBQUU7UUFDOUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUNsQixDQUFDLEtBQTJCLEVBQUUsTUFBNEIsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFDbkYsRUFBRSxDQUNILENBQUM7SUFDSixDQUFDOztrSUE5QlUsaUJBQWlCLDBHQU1sQixtQkFBbUI7bUlBTmxCLGlCQUFpQjttSUFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFFBQVE7OzBCQU1KLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBOZ01vZHVsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICcuLi9zdG9yZSc7XG5pbXBvcnQgeyBJbnRlcm5hbFN0YXRlT3BlcmF0aW9ucyB9IGZyb20gJy4uL2ludGVybmFsL3N0YXRlLW9wZXJhdGlvbnMnO1xuaW1wb3J0IHsgU3RhdGVGYWN0b3J5IH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtZmFjdG9yeSc7XG5pbXBvcnQgeyBGRUFUVVJFX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBMaWZlY3ljbGVTdGF0ZU1hbmFnZXIgfSBmcm9tICcuLi9pbnRlcm5hbC9saWZlY3ljbGUtc3RhdGUtbWFuYWdlcic7XG5pbXBvcnQgeyBTdGF0ZUNsYXNzSW50ZXJuYWwsIFN0YXRlc0FuZERlZmF1bHRzIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IFVwZGF0ZVN0YXRlIH0gZnJvbSAnLi4vYWN0aW9ucy9hY3Rpb25zJztcblxuLyoqXG4gKiBGZWF0dXJlIG1vZHVsZVxuICogQGlnbm9yZVxuICovXG5ATmdNb2R1bGUoKVxuZXhwb3J0IGNsYXNzIE5neHNGZWF0dXJlTW9kdWxlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgX3N0b3JlOiBTdG9yZSxcbiAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9uczogSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMsXG4gICAgZmFjdG9yeTogU3RhdGVGYWN0b3J5LFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChGRUFUVVJFX1NUQVRFX1RPS0VOKVxuICAgIHN0YXRlczogU3RhdGVDbGFzc0ludGVybmFsW11bXSA9IFtdLFxuICAgIGxpZmVjeWNsZVN0YXRlTWFuYWdlcjogTGlmZWN5Y2xlU3RhdGVNYW5hZ2VyXG4gICkge1xuICAgIC8vIFNpbmNlIEZFQVRVUkVfU1RBVEVfVE9LRU4gaXMgYSBtdWx0aSB0b2tlbiwgd2UgbmVlZCB0b1xuICAgIC8vIGZsYXR0ZW4gaXQgW1tGZWF0dXJlMVN0YXRlLCBGZWF0dXJlMlN0YXRlXSwgW0ZlYXR1cmUzU3RhdGVdXVxuICAgIGNvbnN0IGZsYXR0ZW5lZFN0YXRlczogU3RhdGVDbGFzc0ludGVybmFsW10gPSBOZ3hzRmVhdHVyZU1vZHVsZS5mbGF0dGVuU3RhdGVzKHN0YXRlcyk7XG5cbiAgICAvLyBhZGQgc3RvcmVzIHRvIHRoZSBzdGF0ZSBncmFwaCBhbmQgcmV0dXJuIHRoZWlyIGRlZmF1bHRzXG4gICAgY29uc3QgcmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMgPSBmYWN0b3J5LmFkZEFuZFJldHVybkRlZmF1bHRzKGZsYXR0ZW5lZFN0YXRlcyk7XG5cbiAgICBpZiAocmVzdWx0cy5zdGF0ZXMubGVuZ3RoKSB7XG4gICAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9ucy5zZXRTdGF0ZVRvVGhlQ3VycmVudFdpdGhOZXcocmVzdWx0cyk7XG5cbiAgICAgIC8vIGRpc3BhdGNoIHRoZSB1cGRhdGUgYWN0aW9uIGFuZCBpbnZva2UgaW5pdCBhbmQgYm9vdHN0cmFwIGZ1bmN0aW9ucyBhZnRlclxuICAgICAgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyLm5neHNCb290c3RyYXAobmV3IFVwZGF0ZVN0YXRlKHJlc3VsdHMuZGVmYXVsdHMpLCByZXN1bHRzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBmbGF0dGVuU3RhdGVzKHN0YXRlczogU3RhdGVDbGFzc0ludGVybmFsW11bXSA9IFtdKTogU3RhdGVDbGFzc0ludGVybmFsW10ge1xuICAgIHJldHVybiBzdGF0ZXMucmVkdWNlKFxuICAgICAgKHRvdGFsOiBTdGF0ZUNsYXNzSW50ZXJuYWxbXSwgdmFsdWVzOiBTdGF0ZUNsYXNzSW50ZXJuYWxbXSkgPT4gdG90YWwuY29uY2F0KHZhbHVlcyksXG4gICAgICBbXVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Inject, NgModule, Optional } from '@angular/core';
|
|
2
|
-
import { StateFactory } from '../internal/state-factory';
|
|
3
|
-
import { InternalStateOperations } from '../internal/state-operations';
|
|
4
|
-
import { Store } from '../store';
|
|
5
|
-
import { SelectFactory } from '../decorators/select/select-factory';
|
|
6
|
-
import { ROOT_STATE_TOKEN } from '../symbols';
|
|
7
|
-
import { LifecycleStateManager } from '../internal/lifecycle-state-manager';
|
|
8
|
-
import { InitState } from '../actions/actions';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "../internal/state-factory";
|
|
11
|
-
import * as i2 from "../internal/state-operations";
|
|
12
|
-
import * as i3 from "../store";
|
|
13
|
-
import * as i4 from "../decorators/select/select-factory";
|
|
14
|
-
import * as i5 from "../internal/lifecycle-state-manager";
|
|
15
|
-
/**
|
|
16
|
-
* Root module
|
|
17
|
-
* @ignore
|
|
18
|
-
*/
|
|
19
|
-
export class NgxsRootModule {
|
|
20
|
-
constructor(factory, internalStateOperations, _store, _select, states = [], lifecycleStateManager) {
|
|
21
|
-
// Add stores to the state graph and return their defaults
|
|
22
|
-
const results = factory.addAndReturnDefaults(states);
|
|
23
|
-
internalStateOperations.setStateToTheCurrentWithNew(results);
|
|
24
|
-
// Connect our actions stream
|
|
25
|
-
factory.connectActionHandlers();
|
|
26
|
-
// Dispatch the init action and invoke init and bootstrap functions after
|
|
27
|
-
lifecycleStateManager.ngxsBootstrap(new InitState(), results);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
/** @nocollapse */ NgxsRootModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsRootModule, deps: [{ token: i1.StateFactory }, { token: i2.InternalStateOperations }, { token: i3.Store }, { token: i4.SelectFactory }, { token: ROOT_STATE_TOKEN, optional: true }, { token: i5.LifecycleStateManager }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
31
|
-
/** @nocollapse */ NgxsRootModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsRootModule });
|
|
32
|
-
/** @nocollapse */ NgxsRootModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsRootModule });
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsRootModule, decorators: [{
|
|
34
|
-
type: NgModule
|
|
35
|
-
}], ctorParameters: function () { return [{ type: i1.StateFactory }, { type: i2.InternalStateOperations }, { type: i3.Store }, { type: i4.SelectFactory }, { type: undefined, decorators: [{
|
|
36
|
-
type: Optional
|
|
37
|
-
}, {
|
|
38
|
-
type: Inject,
|
|
39
|
-
args: [ROOT_STATE_TOKEN]
|
|
40
|
-
}] }, { type: i5.LifecycleStateManager }]; } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1yb290Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9tb2R1bGVzL25neHMtcm9vdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFOUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7O0FBRS9DOzs7R0FHRztBQUVILE1BQU0sT0FBTyxjQUFjO0lBQ3pCLFlBQ0UsT0FBcUIsRUFDckIsdUJBQWdELEVBQ2hELE1BQWEsRUFDYixPQUFzQixFQUd0QixTQUErQixFQUFFLEVBQ2pDLHFCQUE0QztRQUU1QywwREFBMEQ7UUFDMUQsTUFBTSxPQUFPLEdBQXNCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV4RSx1QkFBdUIsQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU3RCw2QkFBNkI7UUFDN0IsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFaEMseUVBQXlFO1FBQ3pFLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxJQUFJLFNBQVMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7OytIQXJCVSxjQUFjLHVJQU9mLGdCQUFnQjtnSUFQZixjQUFjO2dJQUFkLGNBQWM7NEZBQWQsY0FBYztrQkFEMUIsUUFBUTs7MEJBT0osUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIE5nTW9kdWxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdGF0ZUZhY3RvcnkgfSBmcm9tICcuLi9pbnRlcm5hbC9zdGF0ZS1mYWN0b3J5JztcbmltcG9ydCB7IEludGVybmFsU3RhdGVPcGVyYXRpb25zIH0gZnJvbSAnLi4vaW50ZXJuYWwvc3RhdGUtb3BlcmF0aW9ucyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4uL3N0b3JlJztcbmltcG9ydCB7IFNlbGVjdEZhY3RvcnkgfSBmcm9tICcuLi9kZWNvcmF0b3JzL3NlbGVjdC9zZWxlY3QtZmFjdG9yeSc7XG5pbXBvcnQgeyBST09UX1NUQVRFX1RPS0VOIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBTdGF0ZUNsYXNzSW50ZXJuYWwsIFN0YXRlc0FuZERlZmF1bHRzIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IExpZmVjeWNsZVN0YXRlTWFuYWdlciB9IGZyb20gJy4uL2ludGVybmFsL2xpZmVjeWNsZS1zdGF0ZS1tYW5hZ2VyJztcbmltcG9ydCB7IEluaXRTdGF0ZSB9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9ucyc7XG5cbi8qKlxuICogUm9vdCBtb2R1bGVcbiAqIEBpZ25vcmVcbiAqL1xuQE5nTW9kdWxlKClcbmV4cG9ydCBjbGFzcyBOZ3hzUm9vdE1vZHVsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIGZhY3Rvcnk6IFN0YXRlRmFjdG9yeSxcbiAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9uczogSW50ZXJuYWxTdGF0ZU9wZXJhdGlvbnMsXG4gICAgX3N0b3JlOiBTdG9yZSxcbiAgICBfc2VsZWN0OiBTZWxlY3RGYWN0b3J5LFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChST09UX1NUQVRFX1RPS0VOKVxuICAgIHN0YXRlczogU3RhdGVDbGFzc0ludGVybmFsW10gPSBbXSxcbiAgICBsaWZlY3ljbGVTdGF0ZU1hbmFnZXI6IExpZmVjeWNsZVN0YXRlTWFuYWdlclxuICApIHtcbiAgICAvLyBBZGQgc3RvcmVzIHRvIHRoZSBzdGF0ZSBncmFwaCBhbmQgcmV0dXJuIHRoZWlyIGRlZmF1bHRzXG4gICAgY29uc3QgcmVzdWx0czogU3RhdGVzQW5kRGVmYXVsdHMgPSBmYWN0b3J5LmFkZEFuZFJldHVybkRlZmF1bHRzKHN0YXRlcyk7XG5cbiAgICBpbnRlcm5hbFN0YXRlT3BlcmF0aW9ucy5zZXRTdGF0ZVRvVGhlQ3VycmVudFdpdGhOZXcocmVzdWx0cyk7XG5cbiAgICAvLyBDb25uZWN0IG91ciBhY3Rpb25zIHN0cmVhbVxuICAgIGZhY3RvcnkuY29ubmVjdEFjdGlvbkhhbmRsZXJzKCk7XG5cbiAgICAvLyBEaXNwYXRjaCB0aGUgaW5pdCBhY3Rpb24gYW5kIGludm9rZSBpbml0IGFuZCBib290c3RyYXAgZnVuY3Rpb25zIGFmdGVyXG4gICAgbGlmZWN5Y2xlU3RhdGVNYW5hZ2VyLm5neHNCb290c3RyYXAobmV3IEluaXRTdGF0ZSgpLCByZXN1bHRzKTtcbiAgfVxufVxuIl19
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export { NgxsModule } from './module';
|
|
2
|
-
export { Action } from './decorators/action';
|
|
3
|
-
export { Store } from './store';
|
|
4
|
-
export { State } from './decorators/state';
|
|
5
|
-
export { Select } from './decorators/select/select';
|
|
6
|
-
export { SelectorOptions } from './decorators/selector-options';
|
|
7
|
-
export { Actions } from './actions-stream';
|
|
8
|
-
// TODO: v4 - We need to come up with an alternative api to exposing this metadata
|
|
9
|
-
// because it is currently used by the following (after a github search):
|
|
10
|
-
// - https://github.com/ngxs-labs/emitter/blob/81d21d135400d7e3765fc579e09aea29b1b92bf7/emitter/src/lib/core/decorators/receiver.ts#L91
|
|
11
|
-
// - https://github.com/ngxs-labs/data/blob/73a320059f21924eb975a86adae5169a404071fd/src/lib/decorators/persistence/persistence.ts#L13
|
|
12
|
-
// - https://github.com/ng-turkey/ngxs-reset-plugin/blob/0f22f22e277c7de5b340d1917aae303d01020cee/src/lib/reset.plugin.ts#L19
|
|
13
|
-
// tslint:disable: max-line-length
|
|
14
|
-
// - https://github.com/ngxs-labs/firebase-plugin/blob/7251d877aeadefea8c3c891b7b55e7653a9f289c/src/lib/decorators/ngxs-firestore-connect.ts#L23
|
|
15
|
-
// - https://github.com/stefan-schubert/ngxs-extensions/blob/922ee2f87eba17823b5efab142b656b0d29f827d/src/lib/core/decorators/reset-state.decorator.ts#L18
|
|
16
|
-
// tslint:enable: max-line-length
|
|
17
|
-
export { getSelectorMetadata, getStoreMetadata, ensureStoreMetadata, ensureSelectorMetadata, } from './public_to_deprecate';
|
|
18
|
-
export { ofAction, ofActionDispatched, ofActionSuccessful, ofActionCanceled, ofActionErrored, ofActionCompleted, } from './operators/of-action';
|
|
19
|
-
export { NgxsSimpleChange, } from './symbols';
|
|
20
|
-
export { Selector } from './decorators/selector/selector';
|
|
21
|
-
export { getActionTypeFromInstance, actionMatcher } from './utils/utils';
|
|
22
|
-
export { NoopNgxsExecutionStrategy } from './execution/noop-ngxs-execution-strategy';
|
|
23
|
-
export { StateToken } from './state-token/state-token';
|
|
24
|
-
export { NgxsDevelopmentModule } from './dev-features/ngxs-development.module';
|
|
25
|
-
export { NgxsUnhandledActionsLogger } from './dev-features/ngxs-unhandled-actions-logger';
|
|
26
|
-
export { createModelSelector, createPickSelector, createPropertySelectors, createSelector, } from './selectors';
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBK0IsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RSxrRkFBa0Y7QUFDbEYsMkVBQTJFO0FBQzNFLHVJQUF1STtBQUN2SSxzSUFBc0k7QUFDdEksNkhBQTZIO0FBQzdILGtDQUFrQztBQUNsQyxnSkFBZ0o7QUFDaEosMEpBQTBKO0FBQzFKLGlDQUFpQztBQUNqQyxPQUFPLEVBQ0wsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsc0JBQXNCLEdBQ3ZCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUNMLFFBQVEsRUFDUixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsaUJBQWlCLEdBRWxCLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQU9MLGdCQUFnQixHQUNqQixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDMUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd6RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNyRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFMUYsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLGNBQWMsR0FHZixNQUFNLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgeyBBY3Rpb24gfSBmcm9tICcuL2RlY29yYXRvcnMvYWN0aW9uJztcbmV4cG9ydCB7IFN0b3JlIH0gZnJvbSAnLi9zdG9yZSc7XG5leHBvcnQgeyBTdGF0ZSB9IGZyb20gJy4vZGVjb3JhdG9ycy9zdGF0ZSc7XG5leHBvcnQgeyBTZWxlY3QgfSBmcm9tICcuL2RlY29yYXRvcnMvc2VsZWN0L3NlbGVjdCc7XG5leHBvcnQgeyBTZWxlY3Rvck9wdGlvbnMgfSBmcm9tICcuL2RlY29yYXRvcnMvc2VsZWN0b3Itb3B0aW9ucyc7XG5leHBvcnQgeyBBY3Rpb25zLCBBY3Rpb25Db250ZXh0LCBBY3Rpb25TdGF0dXMgfSBmcm9tICcuL2FjdGlvbnMtc3RyZWFtJztcblxuLy8gVE9ETzogdjQgLSBXZSBuZWVkIHRvIGNvbWUgdXAgd2l0aCBhbiBhbHRlcm5hdGl2ZSBhcGkgdG8gZXhwb3NpbmcgdGhpcyBtZXRhZGF0YVxuLy8gICBiZWNhdXNlIGl0IGlzIGN1cnJlbnRseSB1c2VkIGJ5IHRoZSBmb2xsb3dpbmcgKGFmdGVyIGEgZ2l0aHViIHNlYXJjaCk6XG4vLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uZ3hzLWxhYnMvZW1pdHRlci9ibG9iLzgxZDIxZDEzNTQwMGQ3ZTM3NjVmYzU3OWUwOWFlYTI5YjFiOTJiZjcvZW1pdHRlci9zcmMvbGliL2NvcmUvZGVjb3JhdG9ycy9yZWNlaXZlci50cyNMOTFcbi8vIC0gaHR0cHM6Ly9naXRodWIuY29tL25neHMtbGFicy9kYXRhL2Jsb2IvNzNhMzIwMDU5ZjIxOTI0ZWI5NzVhODZhZGFlNTE2OWE0MDQwNzFmZC9zcmMvbGliL2RlY29yYXRvcnMvcGVyc2lzdGVuY2UvcGVyc2lzdGVuY2UudHMjTDEzXG4vLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uZy10dXJrZXkvbmd4cy1yZXNldC1wbHVnaW4vYmxvYi8wZjIyZjIyZTI3N2M3ZGU1YjM0MGQxOTE3YWFlMzAzZDAxMDIwY2VlL3NyYy9saWIvcmVzZXQucGx1Z2luLnRzI0wxOVxuLy8gdHNsaW50OmRpc2FibGU6IG1heC1saW5lLWxlbmd0aFxuLy8gLSBodHRwczovL2dpdGh1Yi5jb20vbmd4cy1sYWJzL2ZpcmViYXNlLXBsdWdpbi9ibG9iLzcyNTFkODc3YWVhZGVmZWE4YzNjODkxYjdiNTVlNzY1M2E5ZjI4OWMvc3JjL2xpYi9kZWNvcmF0b3JzL25neHMtZmlyZXN0b3JlLWNvbm5lY3QudHMjTDIzXG4vLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9zdGVmYW4tc2NodWJlcnQvbmd4cy1leHRlbnNpb25zL2Jsb2IvOTIyZWUyZjg3ZWJhMTc4MjNiNWVmYWIxNDJiNjU2YjBkMjlmODI3ZC9zcmMvbGliL2NvcmUvZGVjb3JhdG9ycy9yZXNldC1zdGF0ZS5kZWNvcmF0b3IudHMjTDE4XG4vLyB0c2xpbnQ6ZW5hYmxlOiBtYXgtbGluZS1sZW5ndGhcbmV4cG9ydCB7XG4gIGdldFNlbGVjdG9yTWV0YWRhdGEsXG4gIGdldFN0b3JlTWV0YWRhdGEsXG4gIGVuc3VyZVN0b3JlTWV0YWRhdGEsXG4gIGVuc3VyZVNlbGVjdG9yTWV0YWRhdGEsXG59IGZyb20gJy4vcHVibGljX3RvX2RlcHJlY2F0ZSc7XG5leHBvcnQge1xuICBvZkFjdGlvbixcbiAgb2ZBY3Rpb25EaXNwYXRjaGVkLFxuICBvZkFjdGlvblN1Y2Nlc3NmdWwsXG4gIG9mQWN0aW9uQ2FuY2VsZWQsXG4gIG9mQWN0aW9uRXJyb3JlZCxcbiAgb2ZBY3Rpb25Db21wbGV0ZWQsXG4gIEFjdGlvbkNvbXBsZXRpb24sXG59IGZyb20gJy4vb3BlcmF0b3JzL29mLWFjdGlvbic7XG5leHBvcnQge1xuICBTdGF0ZUNvbnRleHQsXG4gIFN0YXRlT3BlcmF0b3IsXG4gIE5neHNPbkluaXQsXG4gIE5neHNBZnRlckJvb3RzdHJhcCxcbiAgTmd4c09uQ2hhbmdlcyxcbiAgTmd4c01vZHVsZU9wdGlvbnMsXG4gIE5neHNTaW1wbGVDaGFuZ2UsXG59IGZyb20gJy4vc3ltYm9scyc7XG5leHBvcnQgeyBTZWxlY3RvciB9IGZyb20gJy4vZGVjb3JhdG9ycy9zZWxlY3Rvci9zZWxlY3Rvcic7XG5leHBvcnQgeyBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlLCBhY3Rpb25NYXRjaGVyIH0gZnJvbSAnLi91dGlscy91dGlscyc7XG5leHBvcnQgeyBOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL2V4ZWN1dGlvbi9zeW1ib2xzJztcbmV4cG9ydCB7IEFjdGlvblR5cGUsIEFjdGlvbk9wdGlvbnMgfSBmcm9tICcuL2FjdGlvbnMvc3ltYm9scyc7XG5leHBvcnQgeyBOb29wTmd4c0V4ZWN1dGlvblN0cmF0ZWd5IH0gZnJvbSAnLi9leGVjdXRpb24vbm9vcC1uZ3hzLWV4ZWN1dGlvbi1zdHJhdGVneSc7XG5leHBvcnQgeyBTdGF0ZVRva2VuIH0gZnJvbSAnLi9zdGF0ZS10b2tlbi9zdGF0ZS10b2tlbic7XG5cbmV4cG9ydCB7IE5neHNEZXZlbG9wbWVudE9wdGlvbnMgfSBmcm9tICcuL2Rldi1mZWF0dXJlcy9zeW1ib2xzJztcbmV4cG9ydCB7IE5neHNEZXZlbG9wbWVudE1vZHVsZSB9IGZyb20gJy4vZGV2LWZlYXR1cmVzL25neHMtZGV2ZWxvcG1lbnQubW9kdWxlJztcbmV4cG9ydCB7IE5neHNVbmhhbmRsZWRBY3Rpb25zTG9nZ2VyIH0gZnJvbSAnLi9kZXYtZmVhdHVyZXMvbmd4cy11bmhhbmRsZWQtYWN0aW9ucy1sb2dnZXInO1xuXG5leHBvcnQge1xuICBjcmVhdGVNb2RlbFNlbGVjdG9yLFxuICBjcmVhdGVQaWNrU2VsZWN0b3IsXG4gIGNyZWF0ZVByb3BlcnR5U2VsZWN0b3JzLFxuICBjcmVhdGVTZWxlY3RvcixcbiAgUHJvcGVydHlTZWxlY3RvcnMsXG4gIFR5cGVkU2VsZWN0b3IsXG59IGZyb20gJy4vc2VsZWN0b3JzJztcbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { createSelector } from './create-selector';
|
|
2
|
-
import { ensureValidSelector } from './selector-checks.util';
|
|
3
|
-
export function createPropertySelectors(parentSelector) {
|
|
4
|
-
if (typeof ngDevMode === 'undefined' || ngDevMode) {
|
|
5
|
-
ensureValidSelector(parentSelector, {
|
|
6
|
-
prefix: '[createPropertySelectors]',
|
|
7
|
-
noun: 'parent selector'
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
const cache = {};
|
|
11
|
-
return new Proxy({}, {
|
|
12
|
-
get(_target, prop) {
|
|
13
|
-
const selector = cache[prop] ||
|
|
14
|
-
createSelector([parentSelector], (s) => s === null || s === void 0 ? void 0 : s[prop]);
|
|
15
|
-
cache[prop] = selector;
|
|
16
|
-
return selector;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXByb3BlcnR5LXNlbGVjdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zZWxlY3RvcnMvY3JlYXRlLXByb3BlcnR5LXNlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFTN0QsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxjQUFtQztJQUVuQyxJQUFJLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxTQUFTLEVBQUU7UUFDakQsbUJBQW1CLENBQUMsY0FBYyxFQUFFO1lBQ2xDLE1BQU0sRUFBRSwyQkFBMkI7WUFDbkMsSUFBSSxFQUFFLGlCQUFpQjtTQUN4QixDQUFDLENBQUM7S0FDSjtJQUNELE1BQU0sS0FBSyxHQUF1QyxFQUFFLENBQUM7SUFDckQsT0FBTyxJQUFJLEtBQUssQ0FDZCxFQUEwQyxFQUMxQztRQUNFLEdBQUcsQ0FBQyxPQUFZLEVBQUUsSUFBa0I7WUFDbEMsTUFBTSxRQUFRLEdBQ1osS0FBSyxDQUFDLElBQUksQ0FBQztnQkFDVixjQUFjLENBQ2IsQ0FBQyxjQUFjLENBQUMsRUFDaEIsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBRCxDQUFDLHVCQUFELENBQUMsQ0FBRyxJQUFJLENBQUMsQ0FDa0IsQ0FBQztZQUMvQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDO1lBQ3ZCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUM7S0FDeUMsQ0FDN0MsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVTZWxlY3RvciB9IGZyb20gJy4vY3JlYXRlLXNlbGVjdG9yJztcbmltcG9ydCB7IGVuc3VyZVZhbGlkU2VsZWN0b3IgfSBmcm9tICcuL3NlbGVjdG9yLWNoZWNrcy51dGlsJztcbmltcG9ydCB7IFNlbGVjdG9yRGVmIH0gZnJvbSAnLi9zZWxlY3Rvci10eXBlcy51dGlsJztcblxuZXhwb3J0IHR5cGUgUHJvcGVydHlTZWxlY3RvcnM8VE1vZGVsPiA9IHtcbiAgW1AgaW4ga2V5b2YgTm9uTnVsbGFibGU8VE1vZGVsPl0tPzogKFxuICAgIG1vZGVsOiBUTW9kZWxcbiAgKSA9PiBUTW9kZWwgZXh0ZW5kcyBudWxsIHwgdW5kZWZpbmVkID8gdW5kZWZpbmVkIDogTm9uTnVsbGFibGU8VE1vZGVsPltQXTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+KFxuICBwYXJlbnRTZWxlY3RvcjogU2VsZWN0b3JEZWY8VE1vZGVsPlxuKTogUHJvcGVydHlTZWxlY3RvcnM8VE1vZGVsPiB7XG4gIGlmICh0eXBlb2YgbmdEZXZNb2RlID09PSAndW5kZWZpbmVkJyB8fCBuZ0Rldk1vZGUpIHtcbiAgICBlbnN1cmVWYWxpZFNlbGVjdG9yKHBhcmVudFNlbGVjdG9yLCB7XG4gICAgICBwcmVmaXg6ICdbY3JlYXRlUHJvcGVydHlTZWxlY3RvcnNdJyxcbiAgICAgIG5vdW46ICdwYXJlbnQgc2VsZWN0b3InXG4gICAgfSk7XG4gIH1cbiAgY29uc3QgY2FjaGU6IFBhcnRpYWw8UHJvcGVydHlTZWxlY3RvcnM8VE1vZGVsPj4gPSB7fTtcbiAgcmV0dXJuIG5ldyBQcm94eTxQcm9wZXJ0eVNlbGVjdG9yczxUTW9kZWw+PihcbiAgICB7fSBhcyB1bmtub3duIGFzIFByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD4sXG4gICAge1xuICAgICAgZ2V0KF90YXJnZXQ6IGFueSwgcHJvcDoga2V5b2YgVE1vZGVsKSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdG9yID1cbiAgICAgICAgICBjYWNoZVtwcm9wXSB8fFxuICAgICAgICAgIChjcmVhdGVTZWxlY3RvcihcbiAgICAgICAgICAgIFtwYXJlbnRTZWxlY3Rvcl0sXG4gICAgICAgICAgICAoczogVE1vZGVsKSA9PiBzPy5bcHJvcF1cbiAgICAgICAgICApIGFzIFByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD5bdHlwZW9mIHByb3BdKTtcbiAgICAgICAgY2FjaGVbcHJvcF0gPSBzZWxlY3RvcjtcbiAgICAgICAgcmV0dXJuIHNlbGVjdG9yO1xuICAgICAgfVxuICAgIH0gYXMgUHJveHlIYW5kbGVyPFByb3BlcnR5U2VsZWN0b3JzPFRNb2RlbD4+XG4gICk7XG59XG4iXX0=
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { ensureSelectorMetadata, } from '../internal/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 = Object.assign({}, selectorMetaData);
|
|
24
|
-
selectorMetaData.getSelectorOptions = () => getLocalSelectorOptions(selectorMetaDataClone, getExplicitSelectorOptions());
|
|
25
|
-
return selectorMetaData;
|
|
26
|
-
}
|
|
27
|
-
function getLocalSelectorOptions(selectorMetaData, explicitOptions) {
|
|
28
|
-
return Object.assign(Object.assign(Object.assign(Object.assign({}, (selectorOptionsMetaAccessor.getOptions(selectorMetaData.containerClass) || {})), (selectorOptionsMetaAccessor.getOptions(selectorMetaData.originalFn) || {})), (selectorMetaData.getSelectorOptions() || {})), explicitOptions);
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3ItbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvc2VsZWN0b3JzL3NlbGVjdG9yLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxzQkFBc0IsR0FHdkIsTUFBTSx1QkFBdUIsQ0FBQztBQUcvQixNQUFNLHlCQUF5QixHQUFHLDRCQUE0QixDQUFDO0FBRS9ELE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHO0lBQ3pDLFVBQVUsRUFBRSxDQUFDLE1BQVcsRUFBeUIsRUFBRTtRQUNqRCxPQUFPLENBQUMsTUFBTSxJQUFVLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFDRCxhQUFhLEVBQUUsQ0FBQyxNQUFXLEVBQUUsT0FBOEIsRUFBRSxFQUFFO1FBQzdELElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUNkLE1BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLE9BQU8sQ0FBQztJQUNyRCxDQUFDO0NBQ0YsQ0FBQztBQUVGLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsVUFBYSxFQUNiLGdCQUF1RDtJQUV2RCxNQUFNLGdCQUFnQixHQUFHLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzVELGdCQUFnQixDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDekMsSUFBSSwwQkFBMEIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLElBQUksZ0JBQWdCLEVBQUU7UUFDcEIsZ0JBQWdCLENBQUMsY0FBYyxHQUFHLGdCQUFnQixDQUFDLGNBQWMsQ0FBQztRQUNsRSxnQkFBZ0IsQ0FBQyxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQztRQUN0RSwwQkFBMEI7WUFDeEIsZ0JBQWdCLENBQUMsa0JBQWtCLElBQUksMEJBQTBCLENBQUM7S0FDckU7SUFDRCxNQUFNLHFCQUFxQixxQkFBUSxnQkFBZ0IsQ0FBRSxDQUFDO0lBQ3RELGdCQUFnQixDQUFDLGtCQUFrQixHQUFHLEdBQUcsRUFBRSxDQUN6Qyx1QkFBdUIsQ0FBQyxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSxDQUFDLENBQUM7SUFDL0UsT0FBTyxnQkFBZ0IsQ0FBQztBQUMxQixDQUFDO0FBRUQsU0FBUyx1QkFBdUIsQ0FDOUIsZ0JBQXVDLEVBQ3ZDLGVBQXNDO0lBRXRDLG1FQUNLLENBQUMsMkJBQTJCLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUMvRSxDQUFDLDJCQUEyQixDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUMsR0FDM0UsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUM3QyxlQUFlLEVBQ2xCO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGVuc3VyZVNlbGVjdG9yTWV0YWRhdGEsXG4gIFNlbGVjdG9yTWV0YURhdGFNb2RlbCxcbiAgU2hhcmVkU2VsZWN0b3JPcHRpb25zLFxufSBmcm9tICcuLi9pbnRlcm5hbC9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgQ3JlYXRpb25NZXRhZGF0YSB9IGZyb20gJy4vc2VsZWN0b3ItbW9kZWxzJztcblxuY29uc3QgU0VMRUNUT1JfT1BUSU9OU19NRVRBX0tFWSA9ICdOR1hTX1NFTEVDVE9SX09QVElPTlNfTUVUQSc7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3Rvck9wdGlvbnNNZXRhQWNjZXNzb3IgPSB7XG4gIGdldE9wdGlvbnM6ICh0YXJnZXQ6IGFueSk6IFNoYXJlZFNlbGVjdG9yT3B0aW9ucyA9PiB7XG4gICAgcmV0dXJuICh0YXJnZXQgJiYgKDxhbnk+dGFyZ2V0KVtTRUxFQ1RPUl9PUFRJT05TX01FVEFfS0VZXSkgfHwge307XG4gIH0sXG4gIGRlZmluZU9wdGlvbnM6ICh0YXJnZXQ6IGFueSwgb3B0aW9uczogU2hhcmVkU2VsZWN0b3JPcHRpb25zKSA9PiB7XG4gICAgaWYgKCF0YXJnZXQpIHJldHVybjtcbiAgICAoPGFueT50YXJnZXQpW1NFTEVDVE9SX09QVElPTlNfTUVUQV9LRVldID0gb3B0aW9ucztcbiAgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cFNlbGVjdG9yTWV0YWRhdGE8VCBleHRlbmRzICguLi5hcmdzOiBhbnlbXSkgPT4gYW55PihcbiAgb3JpZ2luYWxGbjogVCxcbiAgY3JlYXRpb25NZXRhZGF0YTogUGFydGlhbDxDcmVhdGlvbk1ldGFkYXRhPiB8IHVuZGVmaW5lZFxuKSB7XG4gIGNvbnN0IHNlbGVjdG9yTWV0YURhdGEgPSBlbnN1cmVTZWxlY3Rvck1ldGFkYXRhKG9yaWdpbmFsRm4pO1xuICBzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4gPSBvcmlnaW5hbEZuO1xuICBsZXQgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PiAoe30pO1xuICBpZiAoY3JlYXRpb25NZXRhZGF0YSkge1xuICAgIHNlbGVjdG9yTWV0YURhdGEuY29udGFpbmVyQ2xhc3MgPSBjcmVhdGlvbk1ldGFkYXRhLmNvbnRhaW5lckNsYXNzO1xuICAgIHNlbGVjdG9yTWV0YURhdGEuc2VsZWN0b3JOYW1lID0gY3JlYXRpb25NZXRhZGF0YS5zZWxlY3Rvck5hbWUgfHwgbnVsbDtcbiAgICBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucyA9XG4gICAgICBjcmVhdGlvbk1ldGFkYXRhLmdldFNlbGVjdG9yT3B0aW9ucyB8fCBnZXRFeHBsaWNpdFNlbGVjdG9yT3B0aW9ucztcbiAgfVxuICBjb25zdCBzZWxlY3Rvck1ldGFEYXRhQ2xvbmUgPSB7IC4uLnNlbGVjdG9yTWV0YURhdGEgfTtcbiAgc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMgPSAoKSA9PlxuICAgIGdldExvY2FsU2VsZWN0b3JPcHRpb25zKHNlbGVjdG9yTWV0YURhdGFDbG9uZSwgZ2V0RXhwbGljaXRTZWxlY3Rvck9wdGlvbnMoKSk7XG4gIHJldHVybiBzZWxlY3Rvck1ldGFEYXRhO1xufVxuXG5mdW5jdGlvbiBnZXRMb2NhbFNlbGVjdG9yT3B0aW9ucyhcbiAgc2VsZWN0b3JNZXRhRGF0YTogU2VsZWN0b3JNZXRhRGF0YU1vZGVsLFxuICBleHBsaWNpdE9wdGlvbnM6IFNoYXJlZFNlbGVjdG9yT3B0aW9uc1xuKTogU2hhcmVkU2VsZWN0b3JPcHRpb25zIHtcbiAgcmV0dXJuIHtcbiAgICAuLi4oc2VsZWN0b3JPcHRpb25zTWV0YUFjY2Vzc29yLmdldE9wdGlvbnMoc2VsZWN0b3JNZXRhRGF0YS5jb250YWluZXJDbGFzcykgfHwge30pLFxuICAgIC4uLihzZWxlY3Rvck9wdGlvbnNNZXRhQWNjZXNzb3IuZ2V0T3B0aW9ucyhzZWxlY3Rvck1ldGFEYXRhLm9yaWdpbmFsRm4pIHx8IHt9KSxcbiAgICAuLi4oc2VsZWN0b3JNZXRhRGF0YS5nZXRTZWxlY3Rvck9wdGlvbnMoKSB8fCB7fSksXG4gICAgLi4uZXhwbGljaXRPcHRpb25zLFxuICB9O1xufVxuIl19
|
package/esm2015/src/symbols.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Injectable, InjectionToken } 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
|
-
export const ROOT_OPTIONS = new InjectionToken('ROOT_OPTIONS');
|
|
6
|
-
export const ROOT_STATE_TOKEN = new InjectionToken('ROOT_STATE_TOKEN');
|
|
7
|
-
export const FEATURE_STATE_TOKEN = new InjectionToken('FEATURE_STATE_TOKEN');
|
|
8
|
-
export const NGXS_PLUGINS = new InjectionToken('NGXS_PLUGINS');
|
|
9
|
-
export const META_KEY = 'NGXS_META';
|
|
10
|
-
export const META_OPTIONS_KEY = 'NGXS_OPTIONS_META';
|
|
11
|
-
export const SELECTOR_META_KEY = 'NGXS_SELECTOR_META';
|
|
12
|
-
/**
|
|
13
|
-
* The NGXS config settings.
|
|
14
|
-
*/
|
|
15
|
-
export class NgxsConfig {
|
|
16
|
-
constructor() {
|
|
17
|
-
/**
|
|
18
|
-
* Defining the default state before module initialization
|
|
19
|
-
* This is convenient if we need to create a define our own set of states.
|
|
20
|
-
* @deprecated will be removed after v4
|
|
21
|
-
* (default: {})
|
|
22
|
-
*/
|
|
23
|
-
this.defaultsState = {};
|
|
24
|
-
/**
|
|
25
|
-
* Defining shared selector options
|
|
26
|
-
*/
|
|
27
|
-
this.selectorOptions = {
|
|
28
|
-
injectContainerState: true,
|
|
29
|
-
suppressErrors: true // TODO: default is true in v3, will change in v4
|
|
30
|
-
};
|
|
31
|
-
this.compatibility = {
|
|
32
|
-
strictContentSecurityPolicy: false
|
|
33
|
-
};
|
|
34
|
-
this.executionStrategy = DispatchOutsideZoneNgxsExecutionStrategy;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
/** @nocollapse */ NgxsConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
38
|
-
/** @nocollapse */ NgxsConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsConfig, providedIn: 'root', useFactory: (options) => mergeDeep(new NgxsConfig(), options), deps: [{ token: ROOT_OPTIONS }] });
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxsConfig, decorators: [{
|
|
40
|
-
type: Injectable,
|
|
41
|
-
args: [{
|
|
42
|
-
providedIn: 'root',
|
|
43
|
-
useFactory: (options) => mergeDeep(new NgxsConfig(), options),
|
|
44
|
-
deps: [ROOT_OPTIONS]
|
|
45
|
-
}]
|
|
46
|
-
}], ctorParameters: function () { return []; } });
|
|
47
|
-
/**
|
|
48
|
-
* Represents a basic change from a previous to a new value for a single state instance.
|
|
49
|
-
* Passed as a value in a NgxsSimpleChanges object to the ngxsOnChanges hook.
|
|
50
|
-
*/
|
|
51
|
-
export class NgxsSimpleChange {
|
|
52
|
-
constructor(previousValue, currentValue, firstChange) {
|
|
53
|
-
this.previousValue = previousValue;
|
|
54
|
-
this.currentValue = currentValue;
|
|
55
|
-
this.firstChange = firstChange;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3N0b3JlL3NyYy9zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBTWpFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sMkRBQTJELENBQUM7O0FBS3JILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBb0IsY0FBYyxDQUFDLENBQUM7QUFDbEYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQU0sa0JBQWtCLENBQUMsQ0FBQztBQUM1RSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FBTSxxQkFBcUIsQ0FBQyxDQUFDO0FBQ2xGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUUvRCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDO0FBQ3BELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLG9CQUFvQixDQUFDO0FBUXREOztHQUVHO0FBTUgsTUFBTSxPQUFPLFVBQVU7SUE4Q3JCO1FBZkE7Ozs7O1dBS0c7UUFDSCxrQkFBYSxHQUFnQixFQUFFLENBQUM7UUFDaEM7O1dBRUc7UUFDSCxvQkFBZSxHQUEwQjtZQUN2QyxvQkFBb0IsRUFBRSxJQUFJO1lBQzFCLGNBQWMsRUFBRSxJQUFJLENBQUMsaURBQWlEO1NBQ3ZFLENBQUM7UUFHQSxJQUFJLENBQUMsYUFBYSxHQUFHO1lBQ25CLDJCQUEyQixFQUFFLEtBQUs7U0FDbkMsQ0FBQztRQUNGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyx3Q0FBd0MsQ0FBQztJQUNwRSxDQUFDOzsySEFuRFUsVUFBVTsrSEFBVixVQUFVLGNBSlQsTUFBTSxjQUNOLENBQUMsT0FBMEIsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksVUFBVSxFQUFFLEVBQUUsT0FBTyxDQUFDLGtCQUN6RSxZQUFZOzRGQUVSLFVBQVU7a0JBTHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFVBQVUsRUFBRSxDQUFDLE9BQTBCLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUM7b0JBQ2hGLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDckI7O0FBa0hEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsWUFDa0IsYUFBZ0IsRUFDaEIsWUFBZSxFQUNmLFdBQW9CO1FBRnBCLGtCQUFhLEdBQWIsYUFBYSxDQUFHO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFHO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQVM7SUFDbkMsQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgUGxhaW5PYmplY3QsIFN0YXRlQ2xhc3MgfSBmcm9tICdAbmd4cy9zdG9yZS9pbnRlcm5hbHMnO1xuaW1wb3J0IHsgU3RhdGVPcGVyYXRvciB9IGZyb20gJ0BuZ3hzL3N0b3JlL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IG1lcmdlRGVlcCB9IGZyb20gJy4vdXRpbHMvdXRpbHMnO1xuaW1wb3J0IHsgRGlzcGF0Y2hPdXRzaWRlWm9uZU5neHNFeGVjdXRpb25TdHJhdGVneSB9IGZyb20gJy4vZXhlY3V0aW9uL2Rpc3BhdGNoLW91dHNpZGUtem9uZS1uZ3hzLWV4ZWN1dGlvbi1zdHJhdGVneSc7XG5pbXBvcnQgeyBOZ3hzRXhlY3V0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL2V4ZWN1dGlvbi9zeW1ib2xzJztcbmltcG9ydCB7IFNoYXJlZFNlbGVjdG9yT3B0aW9ucyB9IGZyb20gJy4vaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IFN0YXRlVG9rZW4gfSBmcm9tICcuL3N0YXRlLXRva2VuL3N0YXRlLXRva2VuJztcblxuZXhwb3J0IGNvbnN0IFJPT1RfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hzTW9kdWxlT3B0aW9ucz4oJ1JPT1RfT1BUSU9OUycpO1xuZXhwb3J0IGNvbnN0IFJPT1RfU1RBVEVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignUk9PVF9TVEFURV9UT0tFTicpO1xuZXhwb3J0IGNvbnN0IEZFQVRVUkVfU1RBVEVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignRkVBVFVSRV9TVEFURV9UT0tFTicpO1xuZXhwb3J0IGNvbnN0IE5HWFNfUExVR0lOUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignTkdYU19QTFVHSU5TJyk7XG5cbmV4cG9ydCBjb25zdCBNRVRBX0tFWSA9ICdOR1hTX01FVEEnO1xuZXhwb3J0IGNvbnN0IE1FVEFfT1BUSU9OU19LRVkgPSAnTkdYU19PUFRJT05TX01FVEEnO1xuZXhwb3J0IGNvbnN0IFNFTEVDVE9SX01FVEFfS0VZID0gJ05HWFNfU0VMRUNUT1JfTUVUQSc7XG5cbmV4cG9ydCB0eXBlIE5neHNMaWZlQ3ljbGUgPSBQYXJ0aWFsPE5neHNPbkNoYW5nZXM+ICZcbiAgUGFydGlhbDxOZ3hzT25Jbml0PiAmXG4gIFBhcnRpYWw8Tmd4c0FmdGVyQm9vdHN0cmFwPjtcblxuZXhwb3J0IHR5cGUgTmd4c1BsdWdpbkZuID0gKHN0YXRlOiBhbnksIG11dGF0aW9uOiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pID0+IGFueTtcblxuLyoqXG4gKiBUaGUgTkdYUyBjb25maWcgc2V0dGluZ3MuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICB1c2VGYWN0b3J5OiAob3B0aW9uczogTmd4c01vZHVsZU9wdGlvbnMpID0+IG1lcmdlRGVlcChuZXcgTmd4c0NvbmZpZygpLCBvcHRpb25zKSxcbiAgZGVwczogW1JPT1RfT1BUSU9OU11cbn0pXG5leHBvcnQgY2xhc3MgTmd4c0NvbmZpZyB7XG4gIC8qKlxuICAgKiBSdW4gaW4gZGV2ZWxvcG1lbnQgbW9kZS4gVGhpcyB3aWxsIGFkZCBhZGRpdGlvbmFsIGRlYnVnZ2luZyBmZWF0dXJlczpcbiAgICogLSBPYmplY3QuZnJlZXplIG9uIHRoZSBzdGF0ZSBhbmQgYWN0aW9ucyB0byBndWFyYW50ZWUgaW1tdXRhYmlsaXR5XG4gICAqIChkZWZhdWx0OiBmYWxzZSlcbiAgICpcbiAgICogTm90ZTogdGhpcyBwcm9wZXJ0eSB3aWxsIGJlIGFjY291bnRlZCBvbmx5IGluIGRldmVsb3BtZW50IG1vZGUgd2hlbiB1c2luZyB0aGUgSXZ5IGNvbXBpbGVyLlxuICAgKiBJdCBtYWtlcyBzZW5zZSB0byB1c2UgaXQgb25seSBkdXJpbmcgZGV2ZWxvcG1lbnQgdG8gZW5zdXJlIHRoZXJlJ3JlIG5vIHN0YXRlIG11dGF0aW9ucy5cbiAgICogV2hlbiBidWlsZGluZyBmb3IgcHJvZHVjdGlvbiwgdGhlIE9iamVjdC5mcmVlemUgd2lsbCBiZSB0cmVlLXNoYWtlbiBhd2F5LlxuICAgKi9cbiAgZGV2ZWxvcG1lbnRNb2RlOiBib29sZWFuO1xuICBjb21wYXRpYmlsaXR5OiB7XG4gICAgLyoqXG4gICAgICogU3VwcG9ydCBhIHN0cmljdCBDb250ZW50IFNlY3VyaXR5IFBvbGljeS5cbiAgICAgKiBUaGlzIHdpbGwgY2lyY3VtdmVudCBzb21lIG9wdGltaXNhdGlvbnMgdGhhdCB2aW9sYXRlIGEgc3RyaWN0IENTUCB0aHJvdWdoIHRoZSB1c2Ugb2YgYG5ldyBGdW5jdGlvbiguLi4pYC5cbiAgICAgKiAoZGVmYXVsdDogZmFsc2UpXG4gICAgICovXG4gICAgc3RyaWN0Q29udGVudFNlY3VyaXR5UG9saWN5OiBib29sZWFuO1xuICB9O1xuICAvKipcbiAgICogRGV0ZXJtaW5lcyB0aGUgZXhlY3V0aW9uIGNvbnRleHQgdG8gcGVyZm9ybSBhc3luYyBvcGVyYXRpb25zIGluc2lkZS4gQW4gaW1wbGVtZW50YXRpb24gY2FuIGJlXG4gICAqIHByb3ZpZGVkIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJlaGF2aW91ciB3aGVyZSB0aGUgYXN5bmMgb3BlcmF0aW9ucyBhcmUgcnVuXG4gICAqIG91dHNpZGUgQW5ndWxhcidzIHpvbmUgYnV0IGFsbCBvYnNlcnZhYmxlIGJlaGF2aW91cnMgb2YgTkdYUyBhcmUgcnVuIGJhY2sgaW5zaWRlIEFuZ3VsYXIncyB6b25lLlxuICAgKiBUaGVzZSBvYnNlcnZhYmxlIGJlaGF2aW91cnMgYXJlIGZyb206XG4gICAqICAgYEBTZWxlY3QoLi4uKWAsIGBzdG9yZS5zZWxlY3QoLi4uKWAsIGBhY3Rpb25zLnN1YnNjcmliZSguLi4pYCBvciBgc3RvcmUuZGlzcGF0Y2goLi4uKS5zdWJzY3JpYmUoLi4uKWBcbiAgICogRXZlcnkgYHpvbmUucnVuYCBjYXVzZXMgQW5ndWxhciB0byBydW4gY2hhbmdlIGRldGVjdGlvbiBvbiB0aGUgd2hvbGUgdHJlZSAoYGFwcC50aWNrKClgKSBzbyBvZiB5b3VyXG4gICAqIGFwcGxpY2F0aW9uIGRvZXNuJ3QgcmVseSBvbiB6b25lLmpzIHJ1bm5pbmcgY2hhbmdlIGRldGVjdGlvbiB0aGVuIHlvdSBjYW4gc3dpdGNoIHRvIHRoZVxuICAgKiBgTm9vcE5neHNFeGVjdXRpb25TdHJhdGVneWAgdGhhdCBkb2Vzbid0IGludGVyYWN0IHdpdGggem9uZXMuXG4gICAqIChkZWZhdWx0OiBudWxsKVxuICAgKi9cbiAgZXhlY3V0aW9uU3RyYXRlZ3k6IFR5cGU8Tmd4c0V4ZWN1dGlvblN0cmF0ZWd5PjtcbiAgLyoqXG4gICAqIERlZmluaW5nIHRoZSBkZWZhdWx0IHN0YXRlIGJlZm9yZSBtb2R1bGUgaW5pdGlhbGl6YXRpb25cbiAgICogVGhpcyBpcyBjb252ZW5pZW50IGlmIHdlIG5lZWQgdG8gY3JlYXRlIGEgZGVmaW5lIG91ciBvd24gc2V0IG9mIHN0YXRlcy5cbiAgICogQGRlcHJlY2F0ZWQgd2lsbCBiZSByZW1vdmVkIGFmdGVyIHY0XG4gICAqIChkZWZhdWx0OiB7fSlcbiAgICovXG4gIGRlZmF1bHRzU3RhdGU6IFBsYWluT2JqZWN0ID0ge307XG4gIC8qKlxuICAgKiBEZWZpbmluZyBzaGFyZWQgc2VsZWN0b3Igb3B0aW9uc1xuICAgKi9cbiAgc2VsZWN0b3JPcHRpb25zOiBTaGFyZWRTZWxlY3Rvck9wdGlvbnMgPSB7XG4gICAgaW5qZWN0Q29udGFpbmVyU3RhdGU6IHRydWUsIC8vIFRPRE86IGRlZmF1bHQgaXMgdHJ1ZSBpbiB2Mywgd2lsbCBjaGFuZ2UgaW4gdjRcbiAgICBzdXBwcmVzc0Vycm9yczogdHJ1ZSAvLyBUT0RPOiBkZWZhdWx0IGlzIHRydWUgaW4gdjMsIHdpbGwgY2hhbmdlIGluIHY0XG4gIH07XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5jb21wYXRpYmlsaXR5ID0ge1xuICAgICAgc3RyaWN0Q29udGVudFNlY3VyaXR5UG9saWN5OiBmYWxzZVxuICAgIH07XG4gICAgdGhpcy5leGVjdXRpb25TdHJhdGVneSA9IERpc3BhdGNoT3V0c2lkZVpvbmVOZ3hzRXhlY3V0aW9uU3RyYXRlZ3k7XG4gIH1cbn1cblxuZXhwb3J0IHsgU3RhdGVPcGVyYXRvciB9O1xuXG4vKipcbiAqIFN0YXRlIGNvbnRleHQgcHJvdmlkZWQgdG8gdGhlIGFjdGlvbnMgaW4gdGhlIHN0YXRlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRlQ29udGV4dDxUPiB7XG4gIC8qKlxuICAgKiBHZXQgdGhlIGN1cnJlbnQgc3RhdGUuXG4gICAqL1xuICBnZXRTdGF0ZSgpOiBUO1xuXG4gIC8qKlxuICAgKiBSZXNldCB0aGUgc3RhdGUgdG8gYSBuZXcgdmFsdWUuXG4gICAqL1xuICBzZXRTdGF0ZSh2YWw6IFQgfCBTdGF0ZU9wZXJhdG9yPFQ+KTogVDtcblxuICAvKipcbiAgICogUGF0Y2ggdGhlIGV4aXN0aW5nIHN0YXRlIHdpdGggdGhlIHByb3ZpZGVkIHZhbHVlLlxuICAgKi9cbiAgcGF0Y2hTdGF0ZSh2YWw6IFBhcnRpYWw8VD4pOiBUO1xuXG4gIC8qKlxuICAgKiBEaXNwYXRjaCBhIG5ldyBhY3Rpb24gYW5kIHJldHVybiB0aGUgZGlzcGF0Y2hlZCBvYnNlcnZhYmxlLlxuICAgKi9cbiAgZGlzcGF0Y2goYWN0aW9uczogYW55IHwgYW55W10pOiBPYnNlcnZhYmxlPHZvaWQ+O1xufVxuXG5leHBvcnQgdHlwZSBOZ3hzTmV4dFBsdWdpbkZuID0gKHN0YXRlOiBhbnksIG11dGF0aW9uOiBhbnkpID0+IGFueTtcblxuLyoqXG4gKiBQbHVnaW4gaW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmd4c1BsdWdpbiB7XG4gIC8qKlxuICAgKiBIYW5kbGUgdGhlIHN0YXRlL2FjdGlvbiBiZWZvcmUgaXRzIHN1Ym1pdHRlZCB0byB0aGUgc3RhdGUgaGFuZGxlcnMuXG4gICAqL1xuICBoYW5kbGUoc3RhdGU6IGFueSwgYWN0aW9uOiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pOiBhbnk7XG59XG5cbi8qKlxuICogT3B0aW9ucyB0aGF0IGNhbiBiZSBwcm92aWRlZCB0byB0aGUgc3RvcmUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RvcmVPcHRpb25zPFQ+IHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHN0YXRlLiBSZXF1aXJlZC5cbiAgICovXG4gIG5hbWU6IHN0cmluZyB8IFN0YXRlVG9rZW48VD47XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgdmFsdWVzIGZvciB0aGUgc3RhdGUuIElmIG5vdCBwcm92aWRlZCwgdXNlcyBlbXB0eSBvYmplY3QuXG4gICAqL1xuICBkZWZhdWx0cz86IFQ7XG5cbiAgLyoqXG4gICAqIFN1YiBzdGF0ZXMgZm9yIHRoZSBnaXZlbiBzdGF0ZS5cbiAgICovXG4gIGNoaWxkcmVuPzogU3RhdGVDbGFzc1tdO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBiYXNpYyBjaGFuZ2UgZnJvbSBhIHByZXZpb3VzIHRvIGEgbmV3IHZhbHVlIGZvciBhIHNpbmdsZSBzdGF0ZSBpbnN0YW5jZS5cbiAqIFBhc3NlZCBhcyBhIHZhbHVlIGluIGEgTmd4c1NpbXBsZUNoYW5nZXMgb2JqZWN0IHRvIHRoZSBuZ3hzT25DaGFuZ2VzIGhvb2suXG4gKi9cbmV4cG9ydCBjbGFzcyBOZ3hzU2ltcGxlQ2hhbmdlPFQgPSBhbnk+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHByZXZpb3VzVmFsdWU6IFQsXG4gICAgcHVibGljIHJlYWRvbmx5IGN1cnJlbnRWYWx1ZTogVCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlyc3RDaGFuZ2U6IGJvb2xlYW5cbiAgKSB7fVxufVxuXG4vKipcbiAqIE9uIGluaXQgaW50ZXJmYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmd4c09uSW5pdCB7XG4gIG5neHNPbkluaXQoY3R4OiBTdGF0ZUNvbnRleHQ8YW55Pik6IHZvaWQ7XG59XG5cbi8qKlxuICogT24gY2hhbmdlIGludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5neHNPbkNoYW5nZXMge1xuICBuZ3hzT25DaGFuZ2VzKGNoYW5nZTogTmd4c1NpbXBsZUNoYW5nZSk6IHZvaWQ7XG59XG5cbi8qKlxuICogQWZ0ZXIgYm9vdHN0cmFwIGludGVyZmFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5neHNBZnRlckJvb3RzdHJhcCB7XG4gIG5neHNBZnRlckJvb3RzdHJhcChjdHg6IFN0YXRlQ29udGV4dDxhbnk+KTogdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgTmd4c01vZHVsZU9wdGlvbnMgPSBQYXJ0aWFsPE5neHNDb25maWc+O1xuXG4vKiogQGludGVybmFsICovXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGNvbnN0IG5nRGV2TW9kZTogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -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 = Object.assign({}, 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() : Object.assign({}, 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zdG9yZS9zcmMvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHlCQUF5QixDQUFDLE1BQVc7SUFDbkQsSUFBSSxNQUFNLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFO1FBQ2pELE9BQU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7S0FDaEM7U0FBTTtRQUNMLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQztLQUNwQjtBQUNILENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQVk7SUFDeEMsTUFBTSxLQUFLLEdBQUcseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFakQsT0FBTyxVQUFTLE9BQVk7UUFDMUIsT0FBTyxLQUFLLEtBQUsseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEQsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQVEsRUFBRSxJQUFZLEVBQUUsR0FBUSxFQUFFLEVBQUU7SUFDM0QsR0FBRyxxQkFBUSxHQUFHLENBQUUsQ0FBQztJQUVqQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBRW5DLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ2hDLElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRTtZQUN2QixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxDQUFDO1NBQ2pCO2FBQU07WUFDTCxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsbUJBQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFFLENBQUM7U0FDN0U7UUFFRCxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRVIsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFRLEVBQUUsSUFBWSxFQUFPLEVBQUUsQ0FDdEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFRLEVBQUUsSUFBWSxFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBRTVFOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtJQUNwQyxPQUFPLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2xFLENBQUMsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLElBQVMsRUFBRSxHQUFHLE9BQWMsRUFBTyxFQUFFO0lBQzdELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQ2pDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUUvQixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDdEMsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUU7WUFDeEIsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO29CQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRCxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ25DO2lCQUFNO2dCQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzdDO1NBQ0Y7S0FDRjtJQUVELE9BQU8sU0FBUyxDQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0FBQ3JDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJucyB0aGUgdHlwZSBmcm9tIGFuIGFjdGlvbiBpbnN0YW5jZS9jbGFzcy5cbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFjdGlvblR5cGVGcm9tSW5zdGFuY2UoYWN0aW9uOiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoYWN0aW9uLmNvbnN0cnVjdG9yICYmIGFjdGlvbi5jb25zdHJ1Y3Rvci50eXBlKSB7XG4gICAgcmV0dXJuIGFjdGlvbi5jb25zdHJ1Y3Rvci50eXBlO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBhY3Rpb24udHlwZTtcbiAgfVxufVxuXG4vKipcbiAqIE1hdGNoZXMgYSBhY3Rpb25cbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFjdGlvbk1hdGNoZXIoYWN0aW9uMTogYW55KSB7XG4gIGNvbnN0IHR5cGUxID0gZ2V0QWN0aW9uVHlwZUZyb21JbnN0YW5jZShhY3Rpb24xKTtcblxuICByZXR1cm4gZnVuY3Rpb24oYWN0aW9uMjogYW55KSB7XG4gICAgcmV0dXJuIHR5cGUxID09PSBnZXRBY3Rpb25UeXBlRnJvbUluc3RhbmNlKGFjdGlvbjIpO1xuICB9O1xufVxuXG4vKipcbiAqIFNldCBhIGRlZXBseSBuZXN0ZWQgdmFsdWUuIEV4YW1wbGU6XG4gKlxuICogICBzZXRWYWx1ZSh7IGZvbzogeyBiYXI6IHsgZWF0OiBmYWxzZSB9IH0gfSxcbiAqICAgICAgJ2Zvby5iYXIuZWF0JywgdHJ1ZSkgLy89PiB7IGZvbzogeyBiYXI6IHsgZWF0OiB0cnVlIH0gfSB9XG4gKlxuICogV2hpbGUgaXQgdHJhdmVyc2VzIGl0IGFsc28gY3JlYXRlcyBuZXcgb2JqZWN0cyBmcm9tIHRvcCBkb3duLlxuICpcbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGNvbnN0IHNldFZhbHVlID0gKG9iajogYW55LCBwcm9wOiBzdHJpbmcsIHZhbDogYW55KSA9PiB7XG4gIG9iaiA9IHsgLi4ub2JqIH07XG5cbiAgY29uc3Qgc3BsaXQgPSBwcm9wLnNwbGl0KCcuJyk7XG4gIGNvbnN0IGxhc3RJbmRleCA9IHNwbGl0Lmxlbmd0aCAtIDE7XG5cbiAgc3BsaXQucmVkdWNlKChhY2MsIHBhcnQsIGluZGV4KSA9PiB7XG4gICAgaWYgKGluZGV4ID09PSBsYXN0SW5kZXgpIHtcbiAgICAgIGFjY1twYXJ0XSA9IHZhbDtcbiAgICB9IGVsc2Uge1xuICAgICAgYWNjW3BhcnRdID0gQXJyYXkuaXNBcnJheShhY2NbcGFydF0pID8gYWNjW3BhcnRdLnNsaWNlKCkgOiB7IC4uLmFjY1twYXJ0XSB9O1xuICAgIH1cblxuICAgIHJldHVybiBhY2MgJiYgYWNjW3BhcnRdO1xuICB9LCBvYmopO1xuXG4gIHJldHVybiBvYmo7XG59O1xuXG4vKipcbiAqIEdldCBhIGRlZXBseSBuZXN0ZWQgdmFsdWUuIEV4YW1wbGU6XG4gKlxuICogICAgZ2V0VmFsdWUoeyBmb286IGJhcjogW10gfSwgJ2Zvby5iYXInKSAvLz0+IFtdXG4gKlxuICogQGlnbm9yZVxuICovXG5leHBvcnQgY29uc3QgZ2V0VmFsdWUgPSAob2JqOiBhbnksIHByb3A6IHN0cmluZyk6IGFueSA9PlxuICBwcm9wLnNwbGl0KCcuJykucmVkdWNlKChhY2M6IGFueSwgcGFydDogc3RyaW5nKSA9PiBhY2MgJiYgYWNjW3BhcnRdLCBvYmopO1xuXG4vKipcbiAqIFNpbXBsZSBvYmplY3QgY2hlY2suXG4gKlxuICogICAgaXNPYmplY3Qoe2E6MX0pIC8vPT4gdHJ1ZVxuICogICAgaXNPYmplY3QoMSkgLy89PiBmYWxzZVxuICpcbiAqIEBpZ25vcmVcbiAqL1xuZXhwb3J0IGNvbnN0IGlzT2JqZWN0ID0gKGl0ZW06IGFueSkgPT4ge1xuICByZXR1cm4gaXRlbSAmJiB0eXBlb2YgaXRlbSA9PT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkoaXRlbSk7XG59O1xuXG4vKipcbiAqIERlZXAgbWVyZ2UgdHdvIG9iamVjdHMuXG4gKlxuICogICAgbWVyZ2VEZWVwKHthOjEsIGI6e3g6IDEsIHk6Mn19LCB7Yjp7eDogM30sIGM6NH0pIC8vPT4ge2E6MSwgYjp7eDozLCB5OjJ9LCBjOjR9XG4gKlxuICogQHBhcmFtIGJhc2UgYmFzZSBvYmplY3Qgb250byB3aGljaCBgc291cmNlc2Agd2lsbCBiZSBhcHBsaWVkXG4gKi9cbmV4cG9ydCBjb25zdCBtZXJnZURlZXAgPSAoYmFzZTogYW55LCAuLi5zb3VyY2VzOiBhbnlbXSk6IGFueSA9PiB7XG4gIGlmICghc291cmNlcy5sZW5ndGgpIHJldHVybiBiYXNlO1xuICBjb25zdCBzb3VyY2UgPSBzb3VyY2VzLnNoaWZ0KCk7XG5cbiAgaWYgKGlzT2JqZWN0KGJhc2UpICYmIGlzT2JqZWN0KHNvdXJjZSkpIHtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBzb3VyY2UpIHtcbiAgICAgIGlmIChpc09iamVjdChzb3VyY2Vba2V5XSkpIHtcbiAgICAgICAgaWYgKCFiYXNlW2tleV0pIE9iamVjdC5hc3NpZ24oYmFzZSwgeyBba2V5XToge30gfSk7XG4gICAgICAgIG1lcmdlRGVlcChiYXNlW2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIE9iamVjdC5hc3NpZ24oYmFzZSwgeyBba2V5XTogc291cmNlW2tleV0gfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1lcmdlRGVlcChiYXNlLCAuLi5zb3VyY2VzKTtcbn07XG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-store-internals-testing.js","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 entryComponents: [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 }\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() {\n destroyPlatform();\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\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 destroyPlatformBeforeBootstrappingTheNewOne();\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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-store-internals.js","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/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';\nimport { PlainObject } from './symbols';\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<any>('INITIAL_STATE_TOKEN', {\n providedIn: 'root',\n factory: () => InitialState.pop()\n});\n","import { InjectionToken } from '@angular/core';\n\n// These tokens are internal and can change at any point.\n\nexport const ɵNGXS_STATE_FACTORY = new InjectionToken<any>('ɵNGXS_STATE_FACTORY');\n\nexport const ɵNGXS_STATE_CONTEXT_FACTORY = new InjectionToken<any>(\n 'ɵNGXS_STATE_CONTEXT_FACTORY'\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ngxs-store-operators.js","sources":["../../../packages/store/operators/src/append.ts","../../../packages/store/operators/src/compose.ts","../../../packages/store/operators/src/utils.ts","../../../packages/store/operators/src/iif.ts","../../../packages/store/operators/src/insert-item.ts","../../../packages/store/operators/src/patch.ts","../../../packages/store/operators/src/update-item.ts","../../../packages/store/operators/src/remove-item.ts","../../../packages/store/operators/src/index.ts","../../../packages/store/operators/src/ngxs-store-operators.ts"],"sourcesContent":["import { ExistingState, NoInfer, StateOperator } from './types';\n\n/**\n * @param items - Specific items to append to the end of an array\n */\nexport function append<T>(items: NoInfer<T[]>): StateOperator<T[]> {\n return function appendOperator(existing: ExistingState<T[]>): T[] {\n // If `items` is `undefined` or `null` or `[]` but `existing` is provided\n // just return `existing`\n const itemsNotProvidedButExistingIs = (!items || !items.length) && existing;\n if (itemsNotProvidedButExistingIs) {\n return (existing as unknown) as T[];\n }\n\n if (Array.isArray(existing)) {\n return existing.concat((items as unknown) as ExistingState<T[]>);\n }\n\n // For example if some property is added dynamically\n // and didn't exist before thus it's not `ArrayLike`\n return (items as unknown) as T[];\n };\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\n\nexport function compose<T>(...operators: NoInfer<StateOperator<T>[]>): StateOperator<T> {\n return function composeOperator(existing: ExistingState<T>): T {\n return operators.reduce(\n (accumulator, operator) => operator(accumulator as ExistingState<T>),\n existing as T\n );\n };\n}\n","import { StateOperator } from './types';\n\nexport type Predicate<T = any> = (value: T | Readonly<T>) => boolean;\n\nexport function isStateOperator<T>(value: T | StateOperator<T>): value is StateOperator<T> {\n return typeof value === 'function';\n}\n\nexport function isUndefined(value: any): value is undefined {\n return typeof value === 'undefined';\n}\n\nexport function isPredicate<T>(value: Predicate<T> | boolean | number): value is Predicate<T> {\n return typeof value === 'function';\n}\n\nexport function isNumber(value: any): value is number {\n return typeof value === 'number';\n}\n\nexport function invalidIndex(index: number): boolean {\n return Number.isNaN(index) || index === -1;\n}\n\nexport function isNil<T>(value: T | null | undefined): value is null | undefined {\n return value === null || isUndefined(value);\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\n\nimport { isStateOperator, isUndefined, isPredicate, Predicate } from './utils';\n\nfunction retrieveValue<T>(\n operatorOrValue: StateOperator<T> | T,\n existing: ExistingState<T>\n): T {\n // If state operator is a function\n // then call it with an original value\n if (isStateOperator(operatorOrValue)) {\n const value = operatorOrValue(existing);\n return value as T;\n }\n\n // If operator or value was not provided\n // e.g. `elseOperatorOrValue` is `undefined`\n // then we just return an original value\n if (isUndefined(operatorOrValue)) {\n return existing as T;\n }\n\n return operatorOrValue as T;\n}\n\n/**\n * @param condition - Condition can be a plain boolean value or a function,\n * that returns boolean, also this function can take a value as an argument\n * to which this state operator applies\n * @param trueOperatorOrValue - Any value or a state operator\n * @param elseOperatorOrValue - Any value or a state operator\n */\nexport function iif<T>(\n condition: NoInfer<Predicate<T>> | boolean,\n trueOperatorOrValue: NoInfer<StateOperator<T> | T>,\n elseOperatorOrValue?: NoInfer<StateOperator<T> | T>\n): StateOperator<T> {\n return function iifOperator(existing: ExistingState<T>): T {\n // Convert the value to a boolean\n let result = !!condition;\n // but if it is a function then run it to get the result\n if (isPredicate(condition)) {\n result = condition(existing as T);\n }\n\n if (result) {\n return retrieveValue<T>(trueOperatorOrValue as StateOperator<T> | T, existing);\n }\n\n return retrieveValue<T>(elseOperatorOrValue! as StateOperator<T> | T, existing);\n };\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\nimport { isNil } from './utils';\n\n/**\n * @param value - Value to insert\n * @param [beforePosition] - Specified index to insert value before, optional\n */\nexport function insertItem<T>(value: NoInfer<T>, beforePosition?: number): StateOperator<T[]> {\n return function insertItemOperator(existing: ExistingState<T[]>): T[] {\n // Have to check explicitly for `null` and `undefined`\n // because `value` can be `0`, thus `!value` will return `true`\n if (isNil(value) && existing) {\n return existing as T[];\n }\n\n // Property may be dynamic and might not existed before\n if (!Array.isArray(existing)) {\n return [(value as unknown) as T];\n }\n\n const clone = existing.slice();\n\n let index = 0;\n\n // No need to call `isNumber`\n // as we are checking `> 0` not `>= 0`\n // everything except number will return false here\n if (beforePosition! > 0) {\n index = beforePosition!;\n }\n\n clone.splice(index, 0, (value as unknown) as T);\n return clone;\n };\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\nimport { isStateOperator } from './utils';\n\ntype NotUndefined<T> = T extends undefined ? never : T;\n\nexport type ɵPatchSpec<T> = { [P in keyof T]?: T[P] | StateOperator<NotUndefined<T[P]>> };\n\nexport function patch<T extends Record<string, any>>(\n patchObject: NoInfer<ɵPatchSpec<T>>\n): StateOperator<T> {\n return function patchStateOperator(existing: ExistingState<T>): T {\n let clone = null;\n for (const k in patchObject) {\n const newValue = patchObject[k];\n const existingPropValue = existing[k];\n const newPropValue = isStateOperator(newValue)\n ? newValue(<any>existingPropValue)\n : newValue;\n if (newPropValue !== existingPropValue) {\n if (!clone) {\n clone = { ...(<any>existing) };\n }\n clone[k] = newPropValue;\n }\n }\n return clone || existing;\n };\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\n\nimport { isStateOperator, isPredicate, isNumber, invalidIndex, Predicate } from './utils';\n\n/**\n * @param selector - Index of item in the array or a predicate function\n * that can be provided in `Array.prototype.findIndex`\n * @param operatorOrValue - New value under the `selector` index or a\n * function that can be applied to an existing value\n */\nexport function updateItem<T>(\n selector: number | NoInfer<Predicate<T>>,\n operatorOrValue: NoInfer<T> | NoInfer<StateOperator<T>>\n): StateOperator<T[]> {\n return function updateItemOperator(existing: ExistingState<T[]>): T[] {\n let index = -1;\n\n if (isPredicate(selector)) {\n index = existing.findIndex(selector as Predicate<T>);\n } else if (isNumber(selector)) {\n index = selector;\n }\n\n if (invalidIndex(index)) {\n return existing as T[];\n }\n\n let value: T = null!;\n // Need to check if the new item value will change the existing item value\n // then, only if it will change it then clone the array and set the item\n const theOperatorOrValue = operatorOrValue as T | StateOperator<T>;\n if (isStateOperator(theOperatorOrValue)) {\n value = theOperatorOrValue(existing[index] as ExistingState<T>);\n } else {\n value = theOperatorOrValue;\n }\n\n // If the value hasn't been mutated\n // then we just return `existing` array\n if (value === existing[index]) {\n return existing as T[];\n }\n\n const clone = existing.slice();\n clone[index] = value as T;\n return clone;\n };\n}\n","import { ExistingState, NoInfer, StateOperator } from './types';\nimport { isPredicate, isNumber, invalidIndex, Predicate } from './utils';\n\n/**\n * @param selector - index or predicate to remove an item from an array by\n */\nexport function removeItem<T>(selector: number | NoInfer<Predicate<T>>): StateOperator<T[]> {\n return function removeItemOperator(existing: ExistingState<T[]>): T[] {\n let index = -1;\n\n if (isPredicate(selector)) {\n index = existing.findIndex(selector);\n } else if (isNumber(selector)) {\n index = selector;\n }\n\n if (invalidIndex(index)) {\n return existing as T[];\n }\n\n const clone = existing.slice();\n clone.splice(index, 1);\n return clone;\n };\n}\n","/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\nexport { append } from './append';\nexport { compose } from './compose';\nexport { iif } from './iif';\nexport { insertItem } from './insert-item';\nexport { patch, ɵPatchSpec } from './patch';\nexport { isStateOperator, isPredicate, Predicate } from './utils';\nexport { updateItem } from './update-item';\nexport { removeItem } from './remove-item';\nexport { ExistingState, NoInfer, StateOperator } from './types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|