@ng-atomic/common 17.13.0 → 17.14.0-preview-update-nx-workspace-19.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/directives/fallback-src/fallback-src.directive.mjs +3 -3
- package/esm2022/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.mjs +3 -3
- package/esm2022/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.mjs +4 -4
- package/esm2022/interceptors/authorization/authorization.interceptor.mjs +3 -3
- package/esm2022/interceptors/interceptors.module.mjs +4 -4
- package/esm2022/interceptors/throttle/throttle.interceptor.mjs +7 -7
- package/esm2022/interceptors/token/authorization.interceptor.mjs +3 -3
- package/esm2022/models/index.mjs +1 -1
- package/esm2022/pipes/actions/actions.pipe.mjs +3 -3
- package/esm2022/pipes/auto-columns/auto-columns.pipe.mjs +3 -3
- package/esm2022/pipes/columns/columns.pipe.mjs +3 -3
- package/esm2022/pipes/data-accessor/data-accessor.pipe.mjs +3 -3
- package/esm2022/pipes/domain/domain.pipe.mjs +3 -3
- package/esm2022/pipes/error/error.pipe.mjs +4 -4
- package/esm2022/pipes/grouped-by/grouped-by.pipe.mjs +3 -3
- package/esm2022/pipes/index/index.pipe.mjs +3 -3
- package/esm2022/pipes/index-length/index-length.pipe.mjs +3 -3
- package/esm2022/pipes/keys/keys.pipe.mjs +3 -3
- package/esm2022/pipes/map/map.pipe.mjs +3 -3
- package/esm2022/pipes/page/page.pipe.mjs +3 -3
- package/esm2022/pipes/pagination/pagination.pipe.mjs +4 -4
- package/esm2022/pipes/query/query.pipe.mjs +4 -4
- package/esm2022/pipes/resolve-columns/resolve-columns.pipe.mjs +4 -4
- package/esm2022/pipes/secret/secret.pipe.mjs +3 -3
- package/esm2022/pipes/select-id/select-id.pipe.mjs +3 -3
- package/esm2022/pipes/signal/signal.pipe.mjs +4 -6
- package/esm2022/pipes/smart-exp/smart-exp.module.mjs +4 -4
- package/esm2022/pipes/smart-exp/smart-exp.pipe.mjs +3 -3
- package/esm2022/pipes/smart-field/smart-field.pipe.mjs +3 -3
- package/esm2022/pipes/sort/sort.pipe.mjs +3 -3
- package/esm2022/pipes/sort-by/sort-by.pipe.mjs +3 -3
- package/esm2022/pipes/yen/yen.pipe.mjs +3 -3
- package/esm2022/services/app/app.service.mjs +3 -3
- package/esm2022/services/auth/auth.service.mjs +3 -3
- package/esm2022/services/breakpoint/breakpoint.service.mjs +3 -3
- package/esm2022/services/chips-manager/chips.manager.mjs +3 -3
- package/esm2022/services/csv/csv.service.mjs +4 -4
- package/esm2022/services/fab/fab.service.mjs +6 -6
- package/esm2022/services/form/_index/index.mjs +2 -0
- package/esm2022/services/form/_index/index.service.mjs +51 -0
- package/esm2022/services/form/_index/ng-atomic-common-services-form-_index.mjs +5 -0
- package/esm2022/services/form/columns/columns.service.mjs +129 -0
- package/esm2022/services/form/columns/index.mjs +2 -0
- package/esm2022/services/form/columns/ng-atomic-common-services-form-columns.mjs +5 -0
- package/esm2022/services/form/pagination/pagination.service.mjs +3 -3
- package/esm2022/services/form/sort/sort.service.mjs +4 -4
- package/esm2022/services/initializer/initializer.service.mjs +4 -4
- package/esm2022/services/loading/loading.service.mjs +7 -7
- package/esm2022/services/navigation-history/navigation-history.service.mjs +4 -4
- package/esm2022/services/query-resolver/query-resolver.service.mjs +7 -7
- package/esm2022/services/root-property/root-property.di.mjs +2 -1
- package/esm2022/services/root-property/root-property.service.mjs +12 -11
- package/esm2022/services/router/router.service.mjs +3 -3
- package/esm2022/services/secret/secret.service.mjs +3 -3
- package/esm2022/services/side-app/side-app.service.mjs +3 -3
- package/esm2022/services/side-nav-mode/side-nav-mode.service.mjs +3 -3
- package/esm2022/services/snack-bar/snack-bar.module.mjs +4 -4
- package/esm2022/services/snack-bar/snack-bar.service.mjs +3 -3
- package/esm2022/services/ui/ui.helpers.mjs +1 -2
- package/esm2022/services/ui/ui.service.mjs +3 -3
- package/esm2022/stores/entities/di.mjs +1 -1
- package/esm2022/stores/entities/entity-store-manager.mjs +4 -4
- package/esm2022/stores/entities/entity-store.mjs +1 -1
- package/esm2022/stores/entities/proxy-id.service.mjs +3 -3
- package/esm2022/stores/entities/task-composer.mjs +4 -4
- package/esm2022/stores/entity/entity.store.mjs +1 -1
- package/esm2022/stores/pagination/pagination.store.mjs +6 -6
- package/esm2022/stores/query/query.store.mjs +3 -3
- package/esm2022/stores/selection/selection.store.mjs +3 -3
- package/esm2022/stores/sort/sort.store.mjs +3 -3
- package/esm2022/utils/comma/comma.mjs +1 -1
- package/esm2022/utils/get/get.mjs +1 -2
- package/esm2022/utils/index.mjs +2 -1
- package/esm2022/utils/inject/inject.mjs +4 -4
- package/esm2022/utils/mat-dayjs-date/dayjs-date.adapter.mjs +1 -1
- package/esm2022/utils/mat-dayjs-date/dayjs-date.module.mjs +4 -4
- package/esm2022/utils/router/router.mjs +1 -1
- package/esm2022/utils/smart-exp-transformer/smart-exp-transformer.mjs +1 -1
- package/fesm2022/ng-atomic-common-directives-fallback-src.mjs +3 -3
- package/fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +7 -7
- package/fesm2022/ng-atomic-common-interceptors-authorization.mjs +3 -3
- package/fesm2022/ng-atomic-common-interceptors-throttle.mjs +6 -6
- package/fesm2022/ng-atomic-common-interceptors-throttle.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors-token.mjs +3 -3
- package/fesm2022/ng-atomic-common-interceptors.mjs +4 -4
- package/fesm2022/ng-atomic-common-pipes-actions.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-auto-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-data-accessor.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-domain.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-error.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-error.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-grouped-by.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-index-length.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-index.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-keys.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-map.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-page.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-pagination.mjs +4 -4
- package/fesm2022/ng-atomic-common-pipes-query.mjs +4 -4
- package/fesm2022/ng-atomic-common-pipes-resolve-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-resolve-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-secret.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-select-id.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-signal.mjs +3 -5
- package/fesm2022/ng-atomic-common-pipes-signal.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-smart-exp.mjs +7 -7
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-sort-by.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-yen.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-app.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-auth.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-breakpoint.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-chips-manager.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-csv.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-csv.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-fab.mjs +5 -5
- package/fesm2022/ng-atomic-common-services-fab.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-_index.mjs +51 -0
- package/fesm2022/ng-atomic-common-services-form-_index.mjs.map +1 -0
- package/fesm2022/ng-atomic-common-services-form-columns.mjs +136 -0
- package/fesm2022/ng-atomic-common-services-form-columns.mjs.map +1 -0
- package/fesm2022/ng-atomic-common-services-form-pagination.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-sort.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-initializer.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-initializer.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-loading.mjs +6 -6
- package/fesm2022/ng-atomic-common-services-loading.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-navigation-history.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-navigation-history.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs +6 -6
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-root-property.mjs +12 -10
- package/fesm2022/ng-atomic-common-services-root-property.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-router.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-secret.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-side-app.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-snack-bar.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-ui.mjs +3 -4
- package/fesm2022/ng-atomic-common-services-ui.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entities.mjs +9 -9
- package/fesm2022/ng-atomic-common-stores-entities.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entity.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-pagination.mjs +6 -6
- package/fesm2022/ng-atomic-common-stores-pagination.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-query.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-selection.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-utils.mjs +28 -9
- package/fesm2022/ng-atomic-common-utils.mjs.map +1 -1
- package/models/index.d.ts +1 -1
- package/package.json +22 -17
- package/pipes/index/index.pipe.d.ts +1 -1
- package/pipes/index-length/index-length.pipe.d.ts +1 -1
- package/services/form/_index/index.d.ts +1 -0
- package/services/form/_index/index.service.d.ts +64 -0
- package/services/form/columns/columns.service.d.ts +53 -0
- package/services/form/columns/index.d.ts +1 -0
- package/services/root-property/root-property.di.d.ts +1 -6
- package/services/root-property/root-property.service.d.ts +2 -1
- package/services/ui/ui.helpers.d.ts +2 -2
- package/stores/pagination/pagination.store.d.ts +1 -1
- package/utils/index.d.ts +1 -0
- package/esm2022/utils/page/ng-atomic-common-utils-page.mjs +0 -5
- package/fesm2022/ng-atomic-common-utils-page.mjs +0 -26
- package/fesm2022/ng-atomic-common-utils-page.mjs.map +0 -1
|
@@ -21,10 +21,10 @@ class QueryParserService {
|
|
|
21
21
|
return { key: '*', operator: ':', value: str, not };
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
25
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryParserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
25
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryParserService, providedIn: 'any' }); }
|
|
26
26
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryParserService, decorators: [{
|
|
28
28
|
type: Injectable,
|
|
29
29
|
args: [{ providedIn: 'any' }]
|
|
30
30
|
}] });
|
|
@@ -59,10 +59,10 @@ class QueryResolverService {
|
|
|
59
59
|
const flattenObj = flattenExcludeDayjs(toObject(item));
|
|
60
60
|
return Object.keys(flattenObj).some((key) => this.operateByKey(item, operator, { ...query, key }));
|
|
61
61
|
}
|
|
62
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
63
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
62
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
63
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryResolverService, providedIn: 'any' }); }
|
|
64
64
|
}
|
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: QueryResolverService, decorators: [{
|
|
66
66
|
type: Injectable,
|
|
67
67
|
args: [{ providedIn: 'any' }]
|
|
68
68
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-services-query-resolver.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/query-resolver/query-resolver.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/query-resolver/ng-atomic-common-services-query-resolver.ts"],"sourcesContent":["import { Injectable, inject } from \"@angular/core\";\nimport { DOMAIN_LANG_MAP } from \"@ng-atomic/common/pipes/domain\";\nimport { toObject } from '@ng-atomic/common/utils';\nimport { smartExpTransformer, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';\nimport { flattenExcludeDayjs as flatten } from '@nx-ddd/core/util/walk-obj';\nimport dayjs from 'dayjs';\nimport { DATA_ACCESSOR, defaultDataAccessor } from \"@ng-atomic/common/pipes/data-accessor\";\n\ninterface Query {\n key: string;\n operator: ':' | '>' | '<' | '=';\n value: string;\n not: boolean;\n}\n\n@Injectable({ providedIn: 'any' })\nexport class QueryParserService {\n parse(query: string): Query[] {\n return query.split(' ').filter(q => q.length).map(str => {\n const not = str.startsWith('-');\n if (not) str = str.slice(1);\n\n for (const operator of ['=', '>', '<', ':'] as const) {\n if (str.includes(operator)) {\n const [key, value] = str.split(operator);\n return { key, operator, value, not };\n }\n }\n return { key: '*', operator: ':', value: str, not };\n });\n }\n}\n\n@Injectable({ providedIn: 'any' })\nexport class QueryResolverService<T extends object> {\n protected parser = inject(QueryParserService);\n protected dataAccessor = inject(DATA_ACCESSOR, {optional: true}) ?? defaultDataAccessor;\n protected transformer = inject(SMART_EXP_TRANSFORMER, {optional: true}) ?? smartExpTransformer;\n protected map = inject(DOMAIN_LANG_MAP, {optional: true}) ?? {};\n protected reversedMap = Object.entries(this.map).reduce((p, [k, v]) => ({...p, [v]: k}), {} as Record<string, string>);\n\n resolve(items: T[], queryStr
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-services-query-resolver.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/query-resolver/query-resolver.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/query-resolver/ng-atomic-common-services-query-resolver.ts"],"sourcesContent":["import { Injectable, inject } from \"@angular/core\";\nimport { DOMAIN_LANG_MAP } from \"@ng-atomic/common/pipes/domain\";\nimport { toObject } from '@ng-atomic/common/utils';\nimport { smartExpTransformer, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';\nimport { flattenExcludeDayjs as flatten } from '@nx-ddd/core/util/walk-obj';\nimport dayjs from 'dayjs';\nimport { DATA_ACCESSOR, defaultDataAccessor } from \"@ng-atomic/common/pipes/data-accessor\";\n\ninterface Query {\n key: string;\n operator: ':' | '>' | '<' | '=';\n value: string;\n not: boolean;\n}\n\n@Injectable({ providedIn: 'any' })\nexport class QueryParserService {\n parse(query: string): Query[] {\n return query.split(' ').filter(q => q.length).map(str => {\n const not = str.startsWith('-');\n if (not) str = str.slice(1);\n\n for (const operator of ['=', '>', '<', ':'] as const) {\n if (str.includes(operator)) {\n const [key, value] = str.split(operator);\n return { key, operator, value, not };\n }\n }\n return { key: '*', operator: ':', value: str, not };\n });\n }\n}\n\n@Injectable({ providedIn: 'any' })\nexport class QueryResolverService<T extends object> {\n protected parser = inject(QueryParserService);\n protected dataAccessor = inject(DATA_ACCESSOR, {optional: true}) ?? defaultDataAccessor;\n protected transformer = inject(SMART_EXP_TRANSFORMER, {optional: true}) ?? smartExpTransformer;\n protected map = inject(DOMAIN_LANG_MAP, {optional: true}) ?? {};\n protected reversedMap = Object.entries(this.map).reduce((p, [k, v]) => ({...p, [v]: k}), {} as Record<string, string>);\n\n resolve(items: T[], queryStr = ''): T[] {\n return this.parser.parse(queryStr).reduce((_items, query) => this.executeQuery(_items, query), items);\n }\n\n protected executeQuery(items: T[], query: Query): T[] {\n if (query.key === '*' && query.operator === ':')\n return items.filter(item => this.operateByAllKey(item, in_, query));\n switch (query.operator) {\n case ':': return items.filter(item => this.operateByKey(item, in_, query));\n case '=': return items.filter(item => this.operateByKey(item, eq, query));\n case '>': return items.filter(item => this.operateByKey(item, gt, query));\n case '<': return items.filter(item => this.operateByKey(item, lt, query));\n }\n }\n\n protected operateByKey(item: T, operator: QueryOperator, {key, value, not}: Query): boolean {\n let itemValue: any;\n itemValue = this.dataAccessor(item, key);\n itemValue = this.transformer(itemValue, key);\n return not ? !operator(itemValue, value) : operator(itemValue, value);\n }\n\n protected operateByAllKey(item: T, operator: QueryOperator, query: Query) {\n const flattenObj = flatten(toObject(item));\n return Object.keys(flattenObj).some((key) => this.operateByKey(item, operator, {...query, key}));\n }\n}\n\ntype QueryOperator = (_value: any, query: string) => boolean;\n\nfunction in_(value: any, query: string): boolean {\n return typeof value === 'string' ? value?.includes(query) : false;\n}\n\nfunction eq(value: any, query: string): boolean {\n return typeof value === 'string' ? value === query : false;\n}\n\nfunction gt(value: any, query: string): boolean {\n // const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);\n return typeof value === 'string' \n ? parseFloat(value) > parseFloat(query) \n : typeof value === 'number'\n ? value > parseFloat(query)\n : dayjs.isDayjs(value)\n ? dayjs(query).isBefore(value)\n : false;\n}\n\nfunction lt(value: any, query: string): boolean {\n // const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);\n return typeof value === 'string' \n ? parseFloat(value) < parseFloat(query) \n : typeof value === 'number'\n ? value < parseFloat(query)\n : dayjs.isDayjs(value)\n ? dayjs(query).isAfter(value)\n : false;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["flatten"],"mappings":"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"}
|
|
@@ -66,7 +66,7 @@ class RootPropertyService {
|
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
}, ['root', 'properties']); }
|
|
69
|
-
static
|
|
69
|
+
static provideColorSchemaA() {
|
|
70
70
|
return RootPropertyService.Config.provide(() => {
|
|
71
71
|
return (config) => ({
|
|
72
72
|
...config,
|
|
@@ -87,6 +87,7 @@ class RootPropertyService {
|
|
|
87
87
|
});
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
|
+
static { this.provideColorSchema1 = RootPropertyService.provideColorSchemaA; }
|
|
90
91
|
static provideMenuWidthForIconButtonMenu() {
|
|
91
92
|
return RootPropertyService.Config.provide(() => {
|
|
92
93
|
const getMenuWidth = (context) => {
|
|
@@ -120,10 +121,10 @@ class RootPropertyService {
|
|
|
120
121
|
this.matCssVar.setDarkTheme(false);
|
|
121
122
|
});
|
|
122
123
|
}
|
|
123
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
124
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
124
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
125
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyService, providedIn: 'root' }); }
|
|
125
126
|
}
|
|
126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyService, decorators: [{
|
|
127
128
|
type: Injectable,
|
|
128
129
|
args: [{ providedIn: 'root' }]
|
|
129
130
|
}], ctorParameters: () => [] });
|
|
@@ -139,10 +140,10 @@ class NgAtomicStyleDirective {
|
|
|
139
140
|
}
|
|
140
141
|
});
|
|
141
142
|
}
|
|
142
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
143
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
143
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NgAtomicStyleDirective, deps: [{ token: RootPropertyService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
144
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: NgAtomicStyleDirective, isStandalone: true, selector: "[atomicStyle]", ngImport: i0 }); }
|
|
144
145
|
}
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: NgAtomicStyleDirective, decorators: [{
|
|
146
147
|
type: Directive,
|
|
147
148
|
args: [{ standalone: true, selector: '[atomicStyle]' }]
|
|
148
149
|
}], ctorParameters: () => [{ type: RootPropertyService }] });
|
|
@@ -157,10 +158,10 @@ class RootPropertyGuard {
|
|
|
157
158
|
return of(null);
|
|
158
159
|
return this.properties$.pipe(filter(properties => properties['--background-color'] === '#f0f0f0'), delay(500), map(() => true));
|
|
159
160
|
}
|
|
160
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
161
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
161
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
162
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyGuard, providedIn: 'root' }); }
|
|
162
163
|
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RootPropertyGuard, decorators: [{
|
|
164
165
|
type: Injectable,
|
|
165
166
|
args: [{ providedIn: 'root' }]
|
|
166
167
|
}] });
|
|
@@ -173,6 +174,7 @@ function provideRootProperty() {
|
|
|
173
174
|
multi: true,
|
|
174
175
|
},
|
|
175
176
|
provideMaterialCssVars({}),
|
|
177
|
+
RootPropertyService.provideColorSchemaA(),
|
|
176
178
|
];
|
|
177
179
|
}
|
|
178
180
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-services-root-property.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/root-property/root-property.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/root-property/root-property.di.ts","../../../../../packages/@ng-atomic/common/src/lib/services/root-property/ng-atomic-common-services-root-property.ts"],"sourcesContent":["import { isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport { Directive, ElementRef, Injectable, PLATFORM_ID, effect, inject } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { makeConfig, UIContext } from '@ng-atomic/common/services/ui';\nimport { MaterialCssVarsService } from 'angular-material-css-vars';\nimport { Observable, delay, filter, map, of } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class RootPropertyService {\n static readonly Config = makeConfig(() => {\n return (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '100vw',\n '--page-width-lv2': '100vw',\n '--page-width-lv3': '100vw',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'small':\n case 'medium': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '64px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw, 1600px) - 360px - var(--menu-width)), 360px)',\n '--page-width-lv3': 'max(calc(min(100vw, 1600px) - var(--menu-width)), 360px)',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'large': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw, 1600px) - var(--page-width-lv1) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv3': 'max(calc(min(100vw, 1600px) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'xLarge': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw) - var(--page-width-lv1) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv3': 'max(calc(min(100vw) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n }\n };\n }, ['root', 'properties']);\n static provideColorSchema1() {\n return RootPropertyService.Config.provide(() => {\n return (config) => ({\n ...config,\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--accent-color': '#d8ab12',\n '--background-color': '#ffffff',\n '--on-background-color': '#404040',\n '--menu-background-color': '#404040',\n '--menu-on-background-color': '#f0f0f0',\n '--navigator-background-color': '#404040',\n '--navigator-on-background-color': '#f0f0f0',\n '--loading-primary-color': 'var(--accent-color)',\n '--background-primary-color': 'var(--primary-color)',\n '--background-on-primary-color': 'var(--on-primary-color)',\n '--selection-color': 'var(--background-color)',\n '--selection-background-color': 'var(--on-background-color)',\n });\n });\n }\n\n static provideMenuWidthForIconButtonMenu() {\n return RootPropertyService.Config.provide(() => {\n const getMenuWidth = (context: UIContext) => {\n switch (context.breakpoint) {\n case 'xSmall': return '220px';\n case 'small':\n case 'medium':\n case 'large':\n case 'xLarge': return '64px';\n }\n }\n return (config, context) => ({\n ...config,\n '--menu-width': getMenuWidth(context),\n });\n });\n }\n\n readonly config = RootPropertyService.Config.inject();\n\n readonly platformId = inject(PLATFORM_ID);\n readonly matCssVar = inject(MaterialCssVarsService);\n\n constructor() {\n effect(() => {\n if (isPlatformBrowser(this.platformId)) {\n for (const [key, value] of Object.entries(this.config?.() ?? {})) {\n document.documentElement.style.setProperty(key, value);\n }\n }\n this.matCssVar.setPrimaryColor(this.config()['--primary-color']);\n this.matCssVar.setAccentColor(this.config()['--accent-color']);\n this.matCssVar.setWarnColor(this.config()['--warn-color']);\n this.matCssVar.setDarkTheme(false);\n });\n }\n}\n\n@Directive({ standalone: true, selector: '[atomicStyle]' })\nexport class NgAtomicStyleDirective {\n readonly #el = inject(ElementRef);\n readonly platformId = inject(PLATFORM_ID);\n\n constructor(private rootPropertyService: RootPropertyService) {\n effect(() => {\n for (const [key, value] of Object.entries(this.rootPropertyService.config?.() ?? {})) {\n this.#el.nativeElement.style.setProperty(key, value);\n }\n });\n }\n}\n\n@Injectable({providedIn: 'root'})\nexport class RootPropertyGuard {\n\treadonly properties = RootPropertyService.Config.inject();\n\treadonly properties$ = toObservable(this.properties);\n\treadonly platformId = inject(PLATFORM_ID);\n\n\tcanActivate(): Observable<boolean> {\n\t\tif (isPlatformServer(this.platformId)) return of(null);\t\n\t\treturn this.properties$.pipe(\n\t\t\tfilter(properties => properties['--background-color'] === '#f0f0f0'),\n\t\t\tdelay(500),\n\t\t\tmap(() => true),\n\t\t);\n\t}\n}\n","import { ENVIRONMENT_INITIALIZER, inject } from \"@angular/core\";\nimport { provideMaterialCssVars } from \"angular-material-css-vars\";\nimport { RootPropertyService } from \"./root-property.service\";\n\nexport function provideRootProperty() {\n return [\n {\n provide: ENVIRONMENT_INITIALIZER,\n useFactory: () => () => inject(RootPropertyService),\n multi: true,\n },\n provideMaterialCssVars({}),\n ]\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-services-root-property.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/root-property/root-property.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/root-property/root-property.di.ts","../../../../../packages/@ng-atomic/common/src/lib/services/root-property/ng-atomic-common-services-root-property.ts"],"sourcesContent":["import { isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport { Directive, ElementRef, Injectable, PLATFORM_ID, effect, inject } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { makeConfig, UIContext } from '@ng-atomic/common/services/ui';\nimport { MaterialCssVarsService } from 'angular-material-css-vars';\nimport { Observable, delay, filter, map, of } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class RootPropertyService {\n static readonly Config = makeConfig(() => {\n return (context) => {\n switch (context.breakpoint) {\n case 'xSmall': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '100vw',\n '--page-width-lv2': '100vw',\n '--page-width-lv3': '100vw',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'small':\n case 'medium': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '64px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw, 1600px) - 360px - var(--menu-width)), 360px)',\n '--page-width-lv3': 'max(calc(min(100vw, 1600px) - var(--menu-width)), 360px)',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'large': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw, 1600px) - var(--page-width-lv1) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv3': 'max(calc(min(100vw, 1600px) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n case 'xLarge': return {\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--surface-color': '#fff',\n '--on-surface-color': '#404040',\n '--background-color': '#fff',\n '--menu-width': '220px',\n '--page-width-lv1': '360px',\n '--page-width-lv2': 'max(calc(min(100vw) - var(--page-width-lv1) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv3': 'max(calc(min(100vw) - var(--menu-width)), var(--page-width-lv1))',\n '--page-width-lv4': '100vw',\n '--page-height-lv1': '100vh',\n };\n }\n };\n }, ['root', 'properties']);\n static provideColorSchemaA() {\n return RootPropertyService.Config.provide(() => {\n return (config) => ({\n ...config,\n '--primary-color': '#404040',\n '--on-primary-color': '#f0f0f0',\n '--accent-color': '#d8ab12',\n '--background-color': '#ffffff',\n '--on-background-color': '#404040',\n '--menu-background-color': '#404040',\n '--menu-on-background-color': '#f0f0f0',\n '--navigator-background-color': '#404040',\n '--navigator-on-background-color': '#f0f0f0',\n '--loading-primary-color': 'var(--accent-color)',\n '--background-primary-color': 'var(--primary-color)',\n '--background-on-primary-color': 'var(--on-primary-color)',\n '--selection-color': 'var(--background-color)',\n '--selection-background-color': 'var(--on-background-color)',\n });\n });\n }\n\n static provideColorSchema1 = RootPropertyService.provideColorSchemaA;\n static provideMenuWidthForIconButtonMenu() {\n return RootPropertyService.Config.provide(() => {\n const getMenuWidth = (context: UIContext) => {\n switch (context.breakpoint) {\n case 'xSmall': return '220px';\n case 'small':\n case 'medium':\n case 'large':\n case 'xLarge': return '64px';\n }\n }\n return (config, context) => ({\n ...config,\n '--menu-width': getMenuWidth(context),\n });\n });\n }\n\n readonly config = RootPropertyService.Config.inject();\n\n readonly platformId = inject(PLATFORM_ID);\n readonly matCssVar = inject(MaterialCssVarsService);\n\n constructor() {\n effect(() => {\n if (isPlatformBrowser(this.platformId)) {\n for (const [key, value] of Object.entries(this.config?.() ?? {})) {\n document.documentElement.style.setProperty(key, value);\n }\n }\n this.matCssVar.setPrimaryColor(this.config()['--primary-color']);\n this.matCssVar.setAccentColor(this.config()['--accent-color']);\n this.matCssVar.setWarnColor(this.config()['--warn-color']);\n this.matCssVar.setDarkTheme(false);\n });\n }\n}\n\n@Directive({ standalone: true, selector: '[atomicStyle]' })\nexport class NgAtomicStyleDirective {\n readonly #el = inject(ElementRef);\n readonly platformId = inject(PLATFORM_ID);\n\n constructor(private rootPropertyService: RootPropertyService) {\n effect(() => {\n for (const [key, value] of Object.entries(this.rootPropertyService.config?.() ?? {})) {\n this.#el.nativeElement.style.setProperty(key, value);\n }\n });\n }\n}\n\n@Injectable({providedIn: 'root'})\nexport class RootPropertyGuard {\n\treadonly properties = RootPropertyService.Config.inject();\n\treadonly properties$ = toObservable(this.properties);\n\treadonly platformId = inject(PLATFORM_ID);\n\n\tcanActivate(): Observable<boolean> {\n\t\tif (isPlatformServer(this.platformId)) return of(null);\t\n\t\treturn this.properties$.pipe(\n\t\t\tfilter(properties => properties['--background-color'] === '#f0f0f0'),\n\t\t\tdelay(500),\n\t\t\tmap(() => true),\n\t\t);\n\t}\n}\n","import { ENVIRONMENT_INITIALIZER, inject } from \"@angular/core\";\nimport { provideMaterialCssVars } from \"angular-material-css-vars\";\nimport { RootPropertyService } from \"./root-property.service\";\n\nexport function provideRootProperty() {\n return [\n {\n provide: ENVIRONMENT_INITIALIZER,\n useFactory: () => () => inject(RootPropertyService),\n multi: true,\n },\n provideMaterialCssVars({}),\n RootPropertyService.provideColorSchemaA(),\n ]\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,10 @@ class RouterService extends Router {
|
|
|
16
16
|
back() {
|
|
17
17
|
history.back();
|
|
18
18
|
}
|
|
19
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
20
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RouterService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RouterService, providedIn: 'root' }); }
|
|
21
21
|
}
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: RouterService, decorators: [{
|
|
23
23
|
type: Injectable,
|
|
24
24
|
args: [{ providedIn: 'root' }]
|
|
25
25
|
}] });
|
|
@@ -5,10 +5,10 @@ class SecretService {
|
|
|
5
5
|
constructor() {
|
|
6
6
|
this.isSecret = signal(false);
|
|
7
7
|
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
9
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SecretService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
9
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SecretService, providedIn: 'root' }); }
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SecretService, decorators: [{
|
|
12
12
|
type: Injectable,
|
|
13
13
|
args: [{
|
|
14
14
|
providedIn: 'root'
|
|
@@ -14,10 +14,10 @@ class SideAppService {
|
|
|
14
14
|
expand() {
|
|
15
15
|
this.opened.set(true);
|
|
16
16
|
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
18
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideAppService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideAppService, providedIn: 'root' }); }
|
|
19
19
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideAppService, decorators: [{
|
|
21
21
|
type: Injectable,
|
|
22
22
|
args: [{
|
|
23
23
|
providedIn: 'root'
|
|
@@ -18,10 +18,10 @@ class SideNavModeService {
|
|
|
18
18
|
expand() {
|
|
19
19
|
this.sideNavMode.set('expanded');
|
|
20
20
|
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
22
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideNavModeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
22
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideNavModeService, providedIn: 'root' }); }
|
|
23
23
|
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SideNavModeService, decorators: [{
|
|
25
25
|
type: Injectable,
|
|
26
26
|
args: [{ providedIn: 'root' }]
|
|
27
27
|
}] });
|
|
@@ -13,10 +13,10 @@ class SnackBarService {
|
|
|
13
13
|
duration: 2000,
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarService, deps: [{ token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarService, providedIn: 'root' }); }
|
|
18
18
|
}
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarService, decorators: [{
|
|
20
20
|
type: Injectable,
|
|
21
21
|
args: [{
|
|
22
22
|
providedIn: 'root'
|
|
@@ -24,13 +24,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.2", ngImpor
|
|
|
24
24
|
}], ctorParameters: () => [{ type: i1.MatSnackBar }] });
|
|
25
25
|
|
|
26
26
|
class SnackBarModule {
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
28
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
28
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: SnackBarModule, imports: [CommonModule,
|
|
29
29
|
MatSnackBarModule] }); }
|
|
30
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
30
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarModule, imports: [CommonModule,
|
|
31
31
|
MatSnackBarModule] }); }
|
|
32
32
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SnackBarModule, decorators: [{
|
|
34
34
|
type: NgModule,
|
|
35
35
|
args: [{
|
|
36
36
|
declarations: [],
|
|
@@ -24,10 +24,10 @@ class UiService {
|
|
|
24
24
|
paths: this.paths(),
|
|
25
25
|
}));
|
|
26
26
|
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
28
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UiService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
28
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UiService, providedIn: 'root' }); }
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: UiService, decorators: [{
|
|
31
31
|
type: Injectable,
|
|
32
32
|
args: [{ providedIn: 'root' }]
|
|
33
33
|
}] });
|
|
@@ -194,7 +194,6 @@ function provideUiConfig(reducerFactory, path = [], name = 'name') {
|
|
|
194
194
|
return set(config, path, reducer(get(config, path), context));
|
|
195
195
|
};
|
|
196
196
|
}
|
|
197
|
-
;
|
|
198
197
|
Object.defineProperty(_reducerFactory, 'name', { value: name, configurable: true });
|
|
199
198
|
setReducerPath(_reducerFactory, path);
|
|
200
199
|
return _reducerFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-services-ui.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/ui/ui.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/ui/ui.helpers.ts","../../../../../packages/@ng-atomic/common/src/lib/services/ui/ng-atomic-common-services-ui.ts"],"sourcesContent":["\nimport { Injectable, PLATFORM_ID, computed, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { NavigationStart } from '@angular/router';\nimport { filter, map, startWith } from 'rxjs';\nimport { isPlatformBrowser } from '@angular/common';\nimport { RouterService } from '@ng-atomic/common/services/router';\nimport { Breakpoint, BreakpointService } from '@ng-atomic/common/services/breakpoint';\n\nexport interface UIContext {\n breakpoint: Breakpoint;\n paths: any[];\n}\n\n@Injectable({ providedIn: 'root' })\nexport class UiService {\n readonly breakpoint = inject(BreakpointService);\n readonly router = inject(RouterService);\n readonly platformId = inject(PLATFORM_ID);\n\n readonly paths$ = this.router.events.pipe(\n filter(event => event instanceof NavigationStart),\n map((event: NavigationStart) => event.url),\n startWith(isPlatformBrowser(this.platformId) ? window?.location?.pathname : ''),\n map(url => this.router.parseUrl(url)),\n map(urlTree => urlTree.root.children?.primary?.segments ?? []),\n );\n readonly paths = toSignal(this.paths$);\n\n readonly snapshot$ = this.router.events.pipe(\n filter(event => event instanceof NavigationStart),\n map(() => this.router.routerState.snapshot.root),\n );\n readonly snapshot = toSignal(this.snapshot$);\n\n readonly uiContext = computed(() => ({\n breakpoint: this.breakpoint.breakpoint(),\n paths: this.paths(),\n }));\n}\n","import { ElementRef, InjectionToken, Injector, Provider, ProviderToken, Signal, computed, effect, inject, isSignal, runInInjectionContext, signal } from \"@angular/core\";\nimport { UIContext, UiService } from \"./ui.service\";\nimport { get, set } from \"lodash-es\";\nimport { Action } from \"@ng-atomic/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { map, shareReplay, startWith } from \"rxjs\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { computedAsync } from \"ngxtension/computed-async\";\nimport { NavigationHistoryService } from \"@ng-atomic/common/services/navigation-history\";\n\nexport function scoped<T extends object, TKey extends keyof T>(source: Signal<T>, path: TKey | [TKey]): Signal<T[TKey]> {\n const scopedSignal = signal<T[TKey]>(get(source(), path));\n effect(() => {\n scopedSignal.set(get(source(), path, source()) as T[TKey]);\n }, {allowSignalWrites: true});\n return computed(() => scopedSignal());\n}\n\nexport function injectBreakpoint() {\n return inject(UiService).breakpoint.breakpoint;\n}\n\nexport function injectIsMobile() {\n const breakpoint = injectBreakpoint();\n return computed(() => ['xSmall', 'small'].includes(breakpoint()));\n}\n\nexport enum NavActionId {\n TOGGLE_SIDE_NAV = '[@ng-atomic/common/services/ui] TOGGLE_SIDE_NAV',\n BACK = '[@ng-atomic/common/services/ui] BACK',\n CLOSE = '[@ng-atomic/common/services/ui] CLOSE',\n}\n\nexport function injectIsRootPage$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n startWith(null),\n map(() => {\n const components = [];\n let route_ = route; \n while(route_) {\n if (!route_.parent) break;\n route_ = route_.parent;\n if (route_.component) {\n components.push(route_.component);\n }\n }\n return !!(components?.length === 1);\n }),\n map((route) => !!route),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectIsRootPage() {\n const isRootPage$ = injectIsRootPage$();\n const injector = inject(Injector);\n return computedAsync(() => isRootPage$, {injector});\n}\n\nexport function injectNavStartActions(\n isRootPage: Signal<boolean> = signal<boolean>(false),\n): Signal<Action[]> {\n const context = injectUiContext();\n const navigationHistory = inject(NavigationHistoryService);\n let isInitial: boolean;\n return computed(() => {\n switch(context().breakpoint) {\n case 'xLarge':\n case 'large':\n case 'medium':\n case 'small': {\n if (isRootPage()) {\n return [];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n case 'xSmall': {\n if (isRootPage()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }];\n } else {\n if (navigationHistory.isInitial()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }]\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n default: {\n if (isRootPage()) return [];\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n });\n}\n\nexport function injectSideAppNavStartActions(\n isRootPage: Signal<boolean> = signal<boolean>(false),\n): Signal<Action[]> {\n const context = injectUiContext();\n const navigationHistory = inject(NavigationHistoryService);\n let isInitial: boolean;\n return computed(() => {\n switch(context().breakpoint) {\n case 'xLarge':\n case 'large':\n case 'medium':\n case 'small': {\n if (isRootPage()) {\n return [];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [{ id: NavActionId.CLOSE, name: 'CLOSE', icon: 'close' }];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n case 'xSmall': {\n if (isRootPage()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [{ id: NavActionId.CLOSE, name: 'CLOSE', icon: 'close' }];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n default: {\n if (isRootPage()) return [];\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n });\n \n}\n\nexport function injectUiContext(): Signal<UIContext> {\n return inject(UiService).uiContext;\n}\n\nexport type UiConfigReducer<T extends object | string, C extends UIContext = any> = (config: T, context: C) => T;\nexport const UI_CONFIG_REDUCER = new InjectionToken<UiConfigReducer<any>>('UI_CONFIG_REDUCER');\nexport type ReducerFactory<T extends object | string> \n = (injector: Injector, hostInjector: Injector) => (config: T, context: UIContext) => T;\n\nexport type DefaultReducerFactory<T extends object | string>\n = (injector: Injector, hostInjector: Injector) => (context: UIContext) => T;\n\nexport const wrap = <T extends object | string>(\n defaultReducerFactory: DefaultReducerFactory<T>,\n): ReducerFactory<T> => {\n return (injector: Injector, hostInjector: Injector) => {\n const reducer = defaultReducerFactory(injector, hostInjector);\n return (_: T, context: UIContext) => {\n return reducer(context);\n }\n };\n}\n\nexport function call<T>(signalOrValue: Signal<T> | T): T {\n return isSignal(signalOrValue) ? signalOrValue() : signalOrValue;\n}\n\nfunction setReducerPath(reducer: Function, path: string[]) {\n Object.defineProperty(reducer, 'path', { value: path, configurable: true });\n return reducer;\n}\n\nfunction getReducerPath(reducer: Function) {\n return reducer['path'];\n}\n\nexport function provideUiConfig<T extends object | string>(\n reducerFactory: ReducerFactory<T>,\n path: string[] = [],\n name = 'name',\n): Provider {\n return {\n provide: UI_CONFIG_REDUCER,\n useFactory: (injector: Injector) => {\n function _reducerFactory(hostInjector: Injector) {\n const reducer = reducerFactory(injector, hostInjector); \n return (config: T, context: any): T => {\n if (path.length === 0) return reducer(config, context);\n return set(config as object, path, reducer(get<any, any>(config, path), context)) as T;\n }\n };\n Object.defineProperty(_reducerFactory, 'name', { value: name, configurable: true });\n setReducerPath(_reducerFactory, path);\n return _reducerFactory;\n },\n deps: [Injector],\n multi: true,\n };\n}\n\nexport function injectRootConfig<T extends object>(paths: string[] = []): Signal<T> {\n const uiContext = injectUiContext();\n const factories = injectReducerFactories(paths);\n const hostInjector = inject(Injector);\n const reducers = factories.map(factory => {\n return runInInjectionContext(hostInjector, () => factory(hostInjector));\n });\n if (!reducers) return undefined;\n const rootConfig = computed(() => {\n const context = uiContext();\n return reducers.reduce((acc, reducer) => {\n return runInInjectionContext(hostInjector, () => reducer(acc, context));\n }, {} as T);\n });\n return rootConfig;\n}\n\n// TODO(@nontangent): itemsなどの取得が全てのコンポーネントで行われるので計算を最適化する。\nexport function injectUiConfig<T extends object>(paths: string[] = []): Signal<T> {\n const rootConfig = injectRootConfig<T>(paths);\n return scoped(rootConfig, paths as any);\n}\n\nexport function makeConfig<T extends object>(defaultUseFactory: DefaultReducerFactory<T>, path: string[]) {\n const factory = wrap(defaultUseFactory);\n return {\n provide(useFactory?: ReducerFactory<T>, label = useFactory ? 'custom' : 'default') {\n useFactory ??= factory;\n return provideUiConfig<T>(useFactory, path, `[${path.join('.')}] ${label}`);\n },\n inject() {\n return injectUiConfig<T>(path);\n },\n }\n}\n\nfunction injectReducers(): ((hostInjector: Injector) => UiConfigReducer<any>)[] {\n return injectDeepMulti<(hostInjector: Injector) => UiConfigReducer<any>>(UI_CONFIG_REDUCER);\n}\n\nfunction injectReducerFactories(path: string[] = []): ((hostInjector: Injector) => UiConfigReducer<any>)[] {\n return injectReducers().filter(factory => {\n return getReducerPath(factory).every((p, i) => path[i] === p);\n });\n}\n\nexport function injectDeepMulti<T>(token: ProviderToken<T>, injector: Injector = inject(Injector)): T[] {\n const valueOrArray = injector.get(token as ProviderToken<T[]>, [], {optional: true});\n const items = Array.isArray(valueOrArray) ? valueOrArray : [valueOrArray];\n const parentInjector = injector.get(Injector, null, {skipSelf: true});\n if (!parentInjector) return items;\n return [...new Set([...injectDeepMulti(token, parentInjector), ...items])];\n}\n\nexport function debugInjector(injector: Injector | null = inject(Injector)) {\n const getParent = (injector: Injector, n = 0): Injector | null => {\n while (injector && n-- > 0) {\n injector = injector.get(Injector, null, { skipSelf: true });\n }\n return injector;\n }\n\n const getInjectorName = (injector: Injector): string => {\n const name = injector.get(ElementRef, null)?.nativeElement?.tagName?.toLowerCase();\n if (name) return `<${name}>`;\n return `${injector['source']}`;\n }\n\n const isNodeInjector = (injector: Injector): boolean => {\n return injector.get(ElementRef, null) !== null;\n }\n\n const mapToNames = (reducers: any) => (reducers ?? []).map(reducer => reducer.name);\n\n for (let i = 0; i < 20; i++) {\n injector = getParent(injector, i);\n if (injector === Injector.NULL) break;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-services-ui.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/services/ui/ui.service.ts","../../../../../packages/@ng-atomic/common/src/lib/services/ui/ui.helpers.ts","../../../../../packages/@ng-atomic/common/src/lib/services/ui/ng-atomic-common-services-ui.ts"],"sourcesContent":["\nimport { Injectable, PLATFORM_ID, computed, inject } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { NavigationStart } from '@angular/router';\nimport { filter, map, startWith } from 'rxjs';\nimport { isPlatformBrowser } from '@angular/common';\nimport { RouterService } from '@ng-atomic/common/services/router';\nimport { Breakpoint, BreakpointService } from '@ng-atomic/common/services/breakpoint';\n\nexport interface UIContext {\n breakpoint: Breakpoint;\n paths: any[];\n}\n\n@Injectable({ providedIn: 'root' })\nexport class UiService {\n readonly breakpoint = inject(BreakpointService);\n readonly router = inject(RouterService);\n readonly platformId = inject(PLATFORM_ID);\n\n readonly paths$ = this.router.events.pipe(\n filter(event => event instanceof NavigationStart),\n map((event: NavigationStart) => event.url),\n startWith(isPlatformBrowser(this.platformId) ? window?.location?.pathname : ''),\n map(url => this.router.parseUrl(url)),\n map(urlTree => urlTree.root.children?.primary?.segments ?? []),\n );\n readonly paths = toSignal(this.paths$);\n\n readonly snapshot$ = this.router.events.pipe(\n filter(event => event instanceof NavigationStart),\n map(() => this.router.routerState.snapshot.root),\n );\n readonly snapshot = toSignal(this.snapshot$);\n\n readonly uiContext = computed(() => ({\n breakpoint: this.breakpoint.breakpoint(),\n paths: this.paths(),\n }));\n}\n","import { ElementRef, InjectionToken, Injector, Provider, ProviderToken, Signal, computed, effect, inject, isSignal, runInInjectionContext, signal } from \"@angular/core\";\nimport { UIContext, UiService } from \"./ui.service\";\nimport { get, set } from \"lodash-es\";\nimport { Action } from \"@ng-atomic/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { map, shareReplay, startWith } from \"rxjs\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { computedAsync } from \"ngxtension/computed-async\";\nimport { NavigationHistoryService } from \"@ng-atomic/common/services/navigation-history\";\n\nexport function scoped<T extends object, TKey extends keyof T>(source: Signal<T>, path: TKey | [TKey]): Signal<T[TKey]> {\n const scopedSignal = signal<T[TKey]>(get(source(), path));\n effect(() => {\n scopedSignal.set(get(source(), path, source()) as T[TKey]);\n }, {allowSignalWrites: true});\n return computed(() => scopedSignal());\n}\n\nexport function injectBreakpoint() {\n return inject(UiService).breakpoint.breakpoint;\n}\n\nexport function injectIsMobile() {\n const breakpoint = injectBreakpoint();\n return computed(() => ['xSmall', 'small'].includes(breakpoint()));\n}\n\nexport enum NavActionId {\n TOGGLE_SIDE_NAV = '[@ng-atomic/common/services/ui] TOGGLE_SIDE_NAV',\n BACK = '[@ng-atomic/common/services/ui] BACK',\n CLOSE = '[@ng-atomic/common/services/ui] CLOSE',\n}\n\nexport function injectIsRootPage$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n startWith(null),\n map(() => {\n const components = [];\n let route_ = route; \n while(route_) {\n if (!route_.parent) break;\n route_ = route_.parent;\n if (route_.component) {\n components.push(route_.component);\n }\n }\n return !!(components?.length === 1);\n }),\n map((route) => !!route),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectIsRootPage() {\n const isRootPage$ = injectIsRootPage$();\n const injector = inject(Injector);\n return computedAsync(() => isRootPage$, {injector});\n}\n\nexport function injectNavStartActions(\n isRootPage: Signal<boolean> = signal<boolean>(false),\n): Signal<Action[]> {\n const context = injectUiContext();\n const navigationHistory = inject(NavigationHistoryService);\n let isInitial: boolean;\n return computed(() => {\n switch(context().breakpoint) {\n case 'xLarge':\n case 'large':\n case 'medium':\n case 'small': {\n if (isRootPage()) {\n return [];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n case 'xSmall': {\n if (isRootPage()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }];\n } else {\n if (navigationHistory.isInitial()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }]\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n default: {\n if (isRootPage()) return [];\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n });\n}\n\nexport function injectSideAppNavStartActions(\n isRootPage: Signal<boolean> = signal<boolean>(false),\n): Signal<Action[]> {\n const context = injectUiContext();\n const navigationHistory = inject(NavigationHistoryService);\n let isInitial: boolean;\n return computed(() => {\n switch(context().breakpoint) {\n case 'xLarge':\n case 'large':\n case 'medium':\n case 'small': {\n if (isRootPage()) {\n return [];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [{ id: NavActionId.CLOSE, name: 'CLOSE', icon: 'close' }];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n case 'xSmall': {\n if (isRootPage()) {\n return [{ id: NavActionId.TOGGLE_SIDE_NAV, name: 'メニュー', icon: 'menu' }];\n } else {\n if (isInitial ??= navigationHistory.isInitial()) {\n return [{ id: NavActionId.CLOSE, name: 'CLOSE', icon: 'close' }];\n } else {\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n }\n default: {\n if (isRootPage()) return [];\n return [{ id: NavActionId.BACK, name: 'BACK', icon: 'arrow_back' }];\n }\n }\n });\n \n}\n\nexport function injectUiContext(): Signal<UIContext> {\n return inject(UiService).uiContext;\n}\n\nexport type UiConfigReducer<T extends object | string, C extends UIContext = any> = (config: T, context: C) => T;\nexport const UI_CONFIG_REDUCER = new InjectionToken<UiConfigReducer<any>>('UI_CONFIG_REDUCER');\nexport type ReducerFactory<T extends object | string> \n = (injector: Injector, hostInjector: Injector) => (config: T, context: UIContext) => T;\n\nexport type DefaultReducerFactory<T extends object | string>\n = (injector: Injector, hostInjector: Injector) => (context: UIContext) => T;\n\nexport const wrap = <T extends object | string>(\n defaultReducerFactory: DefaultReducerFactory<T>,\n): ReducerFactory<T> => {\n return (injector: Injector, hostInjector: Injector) => {\n const reducer = defaultReducerFactory(injector, hostInjector);\n return (_: T, context: UIContext) => {\n return reducer(context);\n }\n };\n}\n\nexport function call<T>(signalOrValue: Signal<T> | T): T {\n return isSignal(signalOrValue) ? signalOrValue() : signalOrValue;\n}\n\nfunction setReducerPath(reducer: Function, path: string[]) {\n Object.defineProperty(reducer, 'path', { value: path, configurable: true });\n return reducer;\n}\n\nfunction getReducerPath(reducer: Function) {\n return reducer['path'];\n}\n\nexport function provideUiConfig<T extends object | string>(\n reducerFactory: ReducerFactory<T>,\n path: string[] = [],\n name = 'name',\n): Provider {\n return {\n provide: UI_CONFIG_REDUCER,\n useFactory: (injector: Injector) => {\n function _reducerFactory(hostInjector: Injector) {\n const reducer = reducerFactory(injector, hostInjector); \n return (config: T, context: any): T => {\n if (path.length === 0) return reducer(config, context);\n return set(config as object, path, reducer(get<any, any>(config, path), context)) as T;\n }\n }\n Object.defineProperty(_reducerFactory, 'name', { value: name, configurable: true });\n setReducerPath(_reducerFactory, path);\n return _reducerFactory;\n },\n deps: [Injector],\n multi: true,\n };\n}\n\nexport function injectRootConfig<T extends object>(paths: string[] = []): Signal<T> {\n const uiContext = injectUiContext();\n const factories = injectReducerFactories(paths);\n const hostInjector = inject(Injector);\n const reducers = factories.map(factory => {\n return runInInjectionContext(hostInjector, () => factory(hostInjector));\n });\n if (!reducers) return undefined;\n const rootConfig = computed(() => {\n const context = uiContext();\n return reducers.reduce((acc, reducer) => {\n return runInInjectionContext(hostInjector, () => reducer(acc, context));\n }, {} as T);\n });\n return rootConfig;\n}\n\n// TODO(@nontangent): itemsなどの取得が全てのコンポーネントで行われるので計算を最適化する。\nexport function injectUiConfig<T extends object>(paths: string[] = []): Signal<T> {\n const rootConfig = injectRootConfig<T>(paths);\n return scoped(rootConfig, paths as any);\n}\n\nexport function makeConfig<T extends object>(defaultUseFactory: DefaultReducerFactory<T>, path: string[]) {\n const factory = wrap(defaultUseFactory);\n return {\n provide(useFactory?: ReducerFactory<T>, label = useFactory ? 'custom' : 'default') {\n useFactory ??= factory;\n return provideUiConfig<T>(useFactory, path, `[${path.join('.')}] ${label}`);\n },\n inject() {\n return injectUiConfig<T>(path);\n },\n }\n}\n\nfunction injectReducers(): ((hostInjector: Injector) => UiConfigReducer<any>)[] {\n return injectDeepMulti<(hostInjector: Injector) => UiConfigReducer<any>>(UI_CONFIG_REDUCER);\n}\n\nfunction injectReducerFactories(path: string[] = []): ((hostInjector: Injector) => UiConfigReducer<any>)[] {\n return injectReducers().filter(factory => {\n return getReducerPath(factory).every((p, i) => path[i] === p);\n });\n}\n\nexport function injectDeepMulti<T>(token: ProviderToken<T>, injector: Injector = inject(Injector)): T[] {\n const valueOrArray = injector.get(token as ProviderToken<T[]>, [], {optional: true});\n const items = Array.isArray(valueOrArray) ? valueOrArray : [valueOrArray];\n const parentInjector = injector.get(Injector, null, {skipSelf: true});\n if (!parentInjector) return items;\n return [...new Set([...injectDeepMulti(token, parentInjector), ...items])];\n}\n\nexport function debugInjector(injector: Injector | null = inject(Injector)) {\n const getParent = (injector: Injector, n = 0): Injector | null => {\n while (injector && n-- > 0) {\n injector = injector.get(Injector, null, { skipSelf: true });\n }\n return injector;\n }\n\n const getInjectorName = (injector: Injector): string => {\n const name = injector.get(ElementRef, null)?.nativeElement?.tagName?.toLowerCase();\n if (name) return `<${name}>`;\n return `${injector['source']}`;\n }\n\n const isNodeInjector = (injector: Injector): boolean => {\n return injector.get(ElementRef, null) !== null;\n }\n\n const mapToNames = (reducers: any) => (reducers ?? []).map(reducer => reducer.name);\n\n for (let i = 0; i < 20; i++) {\n injector = getParent(injector, i);\n if (injector === Injector.NULL) break;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -28,10 +28,10 @@ class ProxyIdService {
|
|
|
28
28
|
resolve(proxyIdOrId) {
|
|
29
29
|
return this.isProxyId(proxyIdOrId) ? this.proxyMap.get(proxyIdOrId) : proxyIdOrId;
|
|
30
30
|
}
|
|
31
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
32
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
31
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ProxyIdService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
32
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ProxyIdService, providedIn: 'root' }); }
|
|
33
33
|
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: ProxyIdService, decorators: [{
|
|
35
35
|
type: Injectable,
|
|
36
36
|
args: [{ providedIn: 'root' }]
|
|
37
37
|
}] });
|
|
@@ -95,10 +95,10 @@ class TaskComposerService {
|
|
|
95
95
|
}
|
|
96
96
|
}, { type: 'noop', payload: {} });
|
|
97
97
|
}
|
|
98
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
99
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TaskComposerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
99
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TaskComposerService, providedIn: 'root' }); }
|
|
100
100
|
}
|
|
101
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: TaskComposerService, decorators: [{
|
|
102
102
|
type: Injectable,
|
|
103
103
|
args: [{ providedIn: 'root' }]
|
|
104
104
|
}] });
|
|
@@ -242,10 +242,10 @@ class EntityStoreService {
|
|
|
242
242
|
}
|
|
243
243
|
return this.storeMap.get(Entity);
|
|
244
244
|
}
|
|
245
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
246
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EntityStoreService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
246
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EntityStoreService, providedIn: 'root' }); }
|
|
247
247
|
}
|
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: EntityStoreService, decorators: [{
|
|
249
249
|
type: Injectable,
|
|
250
250
|
args: [{ providedIn: 'root' }]
|
|
251
251
|
}] });
|