@versatiledatakit/shared
Version:
Versatile Data Kit Shared library enables reusability of shared features like: NgRx Redux, Error Handlers, Utils, Generic Components, etc.
69 lines • 9.09 kB
JavaScript
/*
* Copyright 2023-2025 Broadcom
* SPDX-License-Identifier: Apache-2.0
*/
import { NgModule } from '@angular/core';
import { StoreModule } from '@ngrx/store';
import { StoreRouterConnectingModule } from '@ngrx/router-store';
import { EffectsModule } from '@ngrx/effects';
import { StoreDevtoolsModule } from '@ngrx/store-devtools';
import { RouterService, RouterServiceImpl } from '../../router';
import { SharedRouterSerializer } from '../../router/integration/ngrx';
import { ComponentService, ComponentServiceImpl } from '../../component';
import { SHARED_ROOT_REDUCERS } from '../reducers';
import { SHARED_ROOT_EFFECTS } from '../effects';
import { NGRX_STORE_CONFIG, NGRX_STORE_DEVTOOLS_CONFIG } from '../config';
import { STORE_ROUTER } from '../state';
import * as i0 from "@angular/core";
import * as i1 from "@ngrx/store";
import * as i2 from "@ngrx/effects";
import * as i3 from "@ngrx/store-devtools";
import * as i4 from "@ngrx/router-store";
/**
* ** VDK NgRx Redux module recommended for use in Development builds.
*/
export class VdkSharedNgrxDevModule {
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment,@typescript-eslint/no-explicit-any
static forRoot(config = {}) {
VdkSharedNgrxDevModule.storeDevToolsConfig = {
...NGRX_STORE_DEVTOOLS_CONFIG,
...config
};
return {
ngModule: VdkSharedNgrxDevModule,
providers: [
{ provide: RouterService, useClass: RouterServiceImpl },
{ provide: ComponentService, useClass: ComponentServiceImpl }
]
};
}
}
VdkSharedNgrxDevModule.storeDevToolsConfig = NGRX_STORE_DEVTOOLS_CONFIG;
VdkSharedNgrxDevModule.ɵfac = function VdkSharedNgrxDevModule_Factory(t) { return new (t || VdkSharedNgrxDevModule)(); };
VdkSharedNgrxDevModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: VdkSharedNgrxDevModule });
VdkSharedNgrxDevModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
StoreModule.forRoot(SHARED_ROOT_REDUCERS, NGRX_STORE_CONFIG),
EffectsModule.forRoot(SHARED_ROOT_EFFECTS),
StoreDevtoolsModule.instrument(() => VdkSharedNgrxDevModule.storeDevToolsConfig),
StoreRouterConnectingModule.forRoot({
stateKey: STORE_ROUTER,
serializer: SharedRouterSerializer
})
], StoreModule, EffectsModule, StoreDevtoolsModule, StoreRouterConnectingModule] });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(VdkSharedNgrxDevModule, [{
type: NgModule,
args: [{
imports: [
StoreModule.forRoot(SHARED_ROOT_REDUCERS, NGRX_STORE_CONFIG),
EffectsModule.forRoot(SHARED_ROOT_EFFECTS),
StoreDevtoolsModule.instrument(() => VdkSharedNgrxDevModule.storeDevToolsConfig),
StoreRouterConnectingModule.forRoot({
stateKey: STORE_ROUTER,
serializer: SharedRouterSerializer
})
],
exports: [StoreModule, EffectsModule, StoreDevtoolsModule, StoreRouterConnectingModule]
}]
}], null, null); })();
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(VdkSharedNgrxDevModule, { imports: [i1.StoreRootModule, i2.EffectsRootModule, i3.StoreDevtoolsModule, i4.StoreRouterConnectingModule], exports: [StoreModule, EffectsModule, StoreDevtoolsModule, StoreRouterConnectingModule] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmRrLXNoYXJlZC1uZ3J4LWRldi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9jb3JlL25ncngvaGVscGVyLW1vZHVsZXMvdmRrLXNoYXJlZC1uZ3J4LWRldi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBRUgsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBdUIsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7OztBQUV4Qzs7R0FFRztBQWFILE1BQU0sT0FBTyxzQkFBc0I7SUFHL0Isc0dBQXNHO0lBQ3RHLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBOEIsRUFBUztRQUNsRCxzQkFBc0IsQ0FBQyxtQkFBbUIsR0FBRztZQUN6QyxHQUFHLDBCQUEwQjtZQUM3QixHQUFHLE1BQU07U0FDWixDQUFDO1FBRUYsT0FBTztZQUNILFFBQVEsRUFBRSxzQkFBc0I7WUFDaEMsU0FBUyxFQUFFO2dCQUNQLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUU7Z0JBQ3ZELEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRTthQUNoRTtTQUNKLENBQUM7SUFDTixDQUFDOztBQWhCYywwQ0FBbUIsR0FBd0IsMEJBQTJCLENBQUE7NEZBRDVFLHNCQUFzQjt3RUFBdEIsc0JBQXNCOzRFQVh0QjtZQUNMLFdBQVcsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUM7WUFDNUQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztZQUMxQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUMsbUJBQW1CLENBQUM7WUFDaEYsMkJBQTJCLENBQUMsT0FBTyxDQUFDO2dCQUNoQyxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsVUFBVSxFQUFFLHNCQUFzQjthQUNyQyxDQUFDO1NBQ0wsRUFDUyxXQUFXLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLDJCQUEyQjt1RkFFN0Usc0JBQXNCO2NBWmxDLFFBQVE7ZUFBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsV0FBVyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDNUQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztvQkFDMUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixtQkFBbUIsQ0FBQztvQkFDaEYsMkJBQTJCLENBQUMsT0FBTyxDQUFDO3dCQUNoQyxRQUFRLEVBQUUsWUFBWTt3QkFDdEIsVUFBVSxFQUFFLHNCQUFzQjtxQkFDckMsQ0FBQztpQkFDTDtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLDJCQUEyQixDQUFDO2FBQzFGOzt3RkFDWSxzQkFBc0IsMkhBRnJCLFdBQVcsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIzLTIwMjUgQnJvYWRjb21cbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBTdG9yZVJvdXRlckNvbm5lY3RpbmdNb2R1bGUgfSBmcm9tICdAbmdyeC9yb3V0ZXItc3RvcmUnO1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmVEZXZ0b29sc0NvbmZpZywgU3RvcmVEZXZ0b29sc01vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlLWRldnRvb2xzJztcblxuaW1wb3J0IHsgUm91dGVyU2VydmljZSwgUm91dGVyU2VydmljZUltcGwgfSBmcm9tICcuLi8uLi9yb3V0ZXInO1xuaW1wb3J0IHsgU2hhcmVkUm91dGVyU2VyaWFsaXplciB9IGZyb20gJy4uLy4uL3JvdXRlci9pbnRlZ3JhdGlvbi9uZ3J4JztcblxuaW1wb3J0IHsgQ29tcG9uZW50U2VydmljZSwgQ29tcG9uZW50U2VydmljZUltcGwgfSBmcm9tICcuLi8uLi9jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTSEFSRURfUk9PVF9SRURVQ0VSUyB9IGZyb20gJy4uL3JlZHVjZXJzJztcbmltcG9ydCB7IFNIQVJFRF9ST09UX0VGRkVDVFMgfSBmcm9tICcuLi9lZmZlY3RzJztcbmltcG9ydCB7IE5HUlhfU1RPUkVfQ09ORklHLCBOR1JYX1NUT1JFX0RFVlRPT0xTX0NPTkZJRyB9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQgeyBTVE9SRV9ST1VURVIgfSBmcm9tICcuLi9zdGF0ZSc7XG5cbi8qKlxuICogKiogVkRLIE5nUnggUmVkdXggbW9kdWxlIHJlY29tbWVuZGVkIGZvciB1c2UgaW4gRGV2ZWxvcG1lbnQgYnVpbGRzLlxuICovXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgU3RvcmVNb2R1bGUuZm9yUm9vdChTSEFSRURfUk9PVF9SRURVQ0VSUywgTkdSWF9TVE9SRV9DT05GSUcpLFxuICAgICAgICBFZmZlY3RzTW9kdWxlLmZvclJvb3QoU0hBUkVEX1JPT1RfRUZGRUNUUyksXG4gICAgICAgIFN0b3JlRGV2dG9vbHNNb2R1bGUuaW5zdHJ1bWVudCgoKSA9PiBWZGtTaGFyZWROZ3J4RGV2TW9kdWxlLnN0b3JlRGV2VG9vbHNDb25maWcpLFxuICAgICAgICBTdG9yZVJvdXRlckNvbm5lY3RpbmdNb2R1bGUuZm9yUm9vdCh7XG4gICAgICAgICAgICBzdGF0ZUtleTogU1RPUkVfUk9VVEVSLFxuICAgICAgICAgICAgc2VyaWFsaXplcjogU2hhcmVkUm91dGVyU2VyaWFsaXplclxuICAgICAgICB9KVxuICAgIF0sXG4gICAgZXhwb3J0czogW1N0b3JlTW9kdWxlLCBFZmZlY3RzTW9kdWxlLCBTdG9yZURldnRvb2xzTW9kdWxlLCBTdG9yZVJvdXRlckNvbm5lY3RpbmdNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFZka1NoYXJlZE5ncnhEZXZNb2R1bGUge1xuICAgIHByaXZhdGUgc3RhdGljIHN0b3JlRGV2VG9vbHNDb25maWc6IFN0b3JlRGV2dG9vbHNDb25maWcgPSBOR1JYX1NUT1JFX0RFVlRPT0xTX0NPTkZJRztcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW5zYWZlLWFzc2lnbm1lbnQsQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHN0YXRpYyBmb3JSb290KGNvbmZpZzogU3RvcmVEZXZ0b29sc0NvbmZpZyA9IHt9IGFzIGFueSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8VmRrU2hhcmVkTmdyeERldk1vZHVsZT4ge1xuICAgICAgICBWZGtTaGFyZWROZ3J4RGV2TW9kdWxlLnN0b3JlRGV2VG9vbHNDb25maWcgPSB7XG4gICAgICAgICAgICAuLi5OR1JYX1NUT1JFX0RFVlRPT0xTX0NPTkZJRyxcbiAgICAgICAgICAgIC4uLmNvbmZpZ1xuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogVmRrU2hhcmVkTmdyeERldk1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIHsgcHJvdmlkZTogUm91dGVyU2VydmljZSwgdXNlQ2xhc3M6IFJvdXRlclNlcnZpY2VJbXBsIH0sXG4gICAgICAgICAgICAgICAgeyBwcm92aWRlOiBDb21wb25lbnRTZXJ2aWNlLCB1c2VDbGFzczogQ29tcG9uZW50U2VydmljZUltcGwgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==