@ng-atomic/common 19.50.0 → 19.80.0
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/fesm2022/ng-atomic-common-directives-active-control.mjs +51 -60
- package/fesm2022/ng-atomic-common-directives-active-control.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +0 -3
- package/fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-prevent-browser-zoom.mjs +0 -3
- package/fesm2022/ng-atomic-common-directives-prevent-browser-zoom.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors-authorization.mjs +0 -1
- package/fesm2022/ng-atomic-common-interceptors-authorization.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-columns.mjs +0 -1
- package/fesm2022/ng-atomic-common-pipes-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-domain.mjs +0 -9
- package/fesm2022/ng-atomic-common-pipes-domain.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs +0 -3
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-app.mjs +1 -3
- package/fesm2022/ng-atomic-common-services-app.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-auth.mjs +14 -25
- package/fesm2022/ng-atomic-common-services-auth.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-editing.mjs +0 -16
- package/fesm2022/ng-atomic-common-services-editing.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-_index.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-json-schema.mjs +1 -25
- package/fesm2022/ng-atomic-common-services-form-json-schema.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form.mjs +0 -5
- package/fesm2022/ng-atomic-common-services-form.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs +0 -2
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-sheets-actions.mjs +0 -1
- package/fesm2022/ng-atomic-common-services-sheets-actions.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-side-app.mjs +0 -1
- package/fesm2022/ng-atomic-common-services-side-app.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs +0 -1
- package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-spreadsheet.mjs +2 -39
- package/fesm2022/ng-atomic-common-services-spreadsheet.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-ui.mjs +0 -2
- package/fesm2022/ng-atomic-common-services-ui.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entities.mjs +0 -18
- package/fesm2022/ng-atomic-common-stores-entities.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-utils.mjs +2 -34
- package/fesm2022/ng-atomic-common-utils.mjs.map +1 -1
- package/fesm2022/ng-atomic-common.mjs +56 -121
- package/fesm2022/ng-atomic-common.mjs.map +1 -1
- package/package.json +3 -3
- package/types/ng-atomic-common-directives-active-control.d.ts +2 -27
- package/types/ng-atomic-common-directives-active-control.d.ts.map +1 -1
- package/types/ng-atomic-common-directives-prevent-browser-zoom.d.ts +0 -3
- package/types/ng-atomic-common-directives-prevent-browser-zoom.d.ts.map +1 -1
- package/types/ng-atomic-common-interceptors-authorization.d.ts +0 -1
- package/types/ng-atomic-common-interceptors-authorization.d.ts.map +1 -1
- package/types/ng-atomic-common-pipes-columns.d.ts +0 -1
- package/types/ng-atomic-common-pipes-columns.d.ts.map +1 -1
- package/types/ng-atomic-common-pipes-domain.d.ts +0 -9
- package/types/ng-atomic-common-pipes-domain.d.ts.map +1 -1
- package/types/ng-atomic-common-pipes-smart-field.d.ts +0 -3
- package/types/ng-atomic-common-pipes-smart-field.d.ts.map +1 -1
- package/types/ng-atomic-common-services-auth.d.ts +4 -2
- package/types/ng-atomic-common-services-auth.d.ts.map +1 -1
- package/types/ng-atomic-common-services-editing.d.ts +0 -16
- package/types/ng-atomic-common-services-editing.d.ts.map +1 -1
- package/types/ng-atomic-common-services-form.d.ts +0 -5
- package/types/ng-atomic-common-services-form.d.ts.map +1 -1
- package/types/ng-atomic-common-services-side-nav-mode.d.ts +0 -1
- package/types/ng-atomic-common-services-side-nav-mode.d.ts.map +1 -1
- package/types/ng-atomic-common-services-spreadsheet.d.ts +0 -4
- package/types/ng-atomic-common-services-spreadsheet.d.ts.map +1 -1
- package/types/ng-atomic-common-stores-entities.d.ts +0 -3
- package/types/ng-atomic-common-stores-entities.d.ts.map +1 -1
- package/types/ng-atomic-common-utils.d.ts +0 -24
- package/types/ng-atomic-common-utils.d.ts.map +1 -1
- package/types/ng-atomic-common.d.ts +2 -77
- package/types/ng-atomic-common.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-stores-entities.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/stores/entities/proxy-id.service.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/task-composer.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store-adapter.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store-manager.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/di.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/ng-atomic-common-stores-entities.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\n\n@Injectable({providedIn: 'root'})\nexport class ProxyIdService {\n proxyMap = new Map<string, string>();\n\n isProxyId(id: string | null): boolean {\n return !!id?.startsWith('proxy-');\n }\n\n proxyId(_id: string): string {\n const id = this.isProxyId(_id) ? _id : `proxy-${this.proxyMap.size}`;\n if (!this.proxyMap.get(id)) this.proxyMap.set(id, id);\n return id;\n }\n\n update(proxyId: string, id: string) {\n this.proxyMap.set(proxyId, id);\n }\n\n resolve(proxyIdOrId: string): string {\n return this.isProxyId(proxyIdOrId) ? this.proxyMap.get(proxyIdOrId)! : proxyIdOrId;\n }\n}\n","import { Injectable, inject } from \"@angular/core\";\nimport { merge } from \"lodash-es\";\nimport { ProxyIdService } from \"./proxy-id.service\";\n\nexport type Entity = {id: string};\n\ninterface BaseTask {\n type: 'create' | 'update' | 'delete' | 'noop';\n timestamp: number;\n}\n\ninterface CreateAction<T extends Entity> extends BaseTask {\n type: 'create';\n payload: T;\n}\n\ninterface UpdateAction<T extends Entity> extends BaseTask {\n type: 'update';\n payload: Partial<T> & Entity;\n}\n\ninterface DeleteAction extends BaseTask {\n type: 'delete';\n payload: Entity;\n}\n\ninterface NoopAction extends BaseTask {\n type: 'noop';\n payload: {};\n}\n\nexport type Task<T extends Entity> = CreateAction<T> | UpdateAction<T> | DeleteAction | NoopAction;\n\nexport function pushMap<T>(map: Map<string, T[]>, id: string, item: T): Map<string, T[]> {\n const items = map.get(id) ?? [];\n items.push(item);\n map.set(id, items);\n return map;\n}\n\n@Injectable({providedIn: 'root'})\nexport class TaskComposerService {\n readonly proxyId = inject(ProxyIdService);\n\n composeTasks<T extends Entity>(tasks: Task<T>[]): Task<T>[] {\n const map = new Map<string, Task<T>[]>();\n tasks.sort((a, b) => a.timestamp - b.timestamp).forEach((task) => {\n let id = (task.payload as any)?.id;\n switch(task.type) {\n case 'noop':\n break\n case 'create':\n id = this.proxyId.proxyId(task.payload.id);\n pushMap(map, id, {...task, payload: {...task.payload, id}} as Task<T>);\n break;\n case 'update':\n case 'delete':\n pushMap(map, this.proxyId.resolve(id), task);\n break;\n }\n });\n\n const _tasks: Task<T>[] = [];\n for (const tasks of map.values()) {\n _tasks.push(this.compose(tasks));\n }\n return _tasks.filter(task => task.type !== 'noop');\n }\n\n compose<T extends Entity>(tasks: Task<T>[]): Task<T> {\n let created = false;\n return tasks.reduce<Task<T>>((a, b) => {\n switch(b.type) {\n case 'create':\n created = true;\n return {\n type: 'create',\n payload: b.payload,\n timestamp: b.timestamp,\n } as Task<T>;\n case 'update':\n return {\n type: created ? 'create' : 'update',\n payload: merge(a.payload, b.payload),\n timestamp: b.timestamp,\n } as Task<T>;\n case 'delete':\n return {\n type: created ? 'noop' : 'delete',\n payload: b.payload,\n timestamp: b.timestamp,\n } as Task<T>;\n default:\n return a;\n }\n }, {type: 'noop', payload: {}} as Task<T>)\n }\n}\n","\nimport { InjectionToken, Injector, inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { Observable } from 'rxjs';\nimport { Entity } from './task-composer';\n\nexport class EntityStoreAdapter<E extends Entity> {\n list?(): Observable<E[]> {\n throw new Error('not implemented');\n }\n\n create?(entity: E): Promise<E> {\n throw new Error('not implemented');\n }\n\n update?(entity: Partial<E> & Pick<E, 'id'>): Promise<void> {\n throw new Error('not implemented');\n }\n\n delete?(entity: Pick<E, 'id'>): Promise<void> {\n throw new Error('not implemented');\n }\n\n save?(entity: E): Promise<E> {\n throw new Error('not implemented');\n }\n}\n\nexport const ENTITY_STORE_ADAPTER = new InjectionToken<{\n entity: Type<Entity>,\n adapter: EntityStoreAdapter<Entity>\n}[]>('ENTITY_STORE_ADAPTER');\n\nexport function provideEntityStoreAdapter<E extends Entity>(\n entity: Type<E>,\n adapterFactory: (injector: Injector) => EntityStoreAdapter<E>,\n) {\n return {\n provide: ENTITY_STORE_ADAPTER,\n multi: true,\n useFactory: (injector: Injector) => {\n return { entity, adapter: adapterFactory(injector) };\n },\n deps: [Injector]\n };\n}\n\nexport function injectEntityStoreAdapter<E extends Entity>(entity: Type<E>): EntityStoreAdapter<E> {\n const adapters = inject(ENTITY_STORE_ADAPTER, {optional: true}) ?? [];\n return adapters.find(adapter => adapter.entity === entity)?.adapter as EntityStoreAdapter<E>;\n}\n","import { toSignal } from '@angular/core/rxjs-interop';\nimport { inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { EntityState, EntityAdapter, createEntityAdapter } from '@ngrx/entity';\nimport { Observable, ReplaySubject, Subject, isObservable, of } from 'rxjs';\nimport { bufferTime, distinctUntilChanged, filter, map, shareReplay, switchMap, tap } from 'rxjs/operators';\nimport { merge } from 'lodash-es';\nimport { Entity, Task, TaskComposerService } from './task-composer';\nimport { ProxyIdService } from './proxy-id.service';\nimport { EntityStoreAdapter, injectEntityStoreAdapter } from './entity-store-adapter';\n\nexport const distinctUntilChangedArray = <T>() => {\n return distinctUntilChanged<T>((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur));\n};\n\nexport class BaseEntityStore<E extends Entity> extends ComponentStore<EntityState<E>> {\n protected adapter: EntityStoreAdapter<E>;\n\n protected readonly refresh$ = new ReplaySubject<void>(1);\n protected get selectors() { return this.entityAdapter.getSelectors(); }\n readonly all$ = this.select((state) => this.selectors.selectAll(state));\n readonly all = toSignal(this.all$);\n readonly total$ = this.select((state) => this.selectors.selectTotal(state));\n readonly total = toSignal(this.total$);\n\n /** @deprecated use BaseEntityStore.all$ instead. */\n readonly entities$ = this.all$\n /** @deprecated use BaseEntityStore.all instead. */\n readonly entities = this.all;\n /** @deprecated use BaseEntityStore.total$ instead. */\n readonly size$ = this.total$;\n\n readonly addOne = this.updater((state, entity: E) => this.entityAdapter.addOne(entity, state));\n readonly addMany = this.updater((state, entities: E[]) => this.entityAdapter.addMany(entities, state));\n readonly updateOne = this.updater((state, update: {id: string, changes: Partial<E>}) => this.entityAdapter.updateOne(update, state));\n readonly updateMany = this.updater((state, updates: {id: string, changes: Partial<E>}[]) => this.entityAdapter.updateMany(updates, state));\n readonly upsertOne = this.updater((state, entity: E) => this.entityAdapter.upsertOne(entity, state));\n readonly upsertMany = this.updater((state, entities: E[]) => this.entityAdapter.upsertMany(entities, state));\n readonly removeOne = this.updater((state, id: string) => this.entityAdapter.removeOne(id, state));\n readonly removeMany = this.updater((state, ids: string[]) => this.entityAdapter.removeMany(ids, state));\n readonly removeAll = this.updater((state) => this.entityAdapter.removeAll(state));\n readonly setOne = this.updater((state, entity: E) => this.entityAdapter.setOne(entity, state));\n readonly setAll = this.updater((state, entities: E[]) => this.entityAdapter.setAll(entities, state));\n\n constructor(\n protected entity: Type<E>,\n protected entityAdapter: EntityAdapter<E> = createEntityAdapter<E>({selectId: (entity) => entity.id, sortComparer: false}),\n ) {\n super(entityAdapter.getInitialState());\n this.adapter = injectEntityStoreAdapter(entity);\n this.getEntities(this.refresh$);\n this.refresh();\n }\n\n protected getEntities = this.effect((refresh$: Observable<void>) => refresh$.pipe(\n switchMap(() => this.adapter?.list?.() ?? of([] as E[])),\n tap((entities: E[]) => this.setAll(entities)),\n ));\n\n refresh() {\n this.refresh$.next();\n }\n\n mapToOne(valueOrObs: string | Observable<string>): Observable<E> {\n const wrap = (valueOrObs: string | Observable<string>) => isObservable(valueOrObs) ? valueOrObs : of(valueOrObs);\n return wrap(valueOrObs).pipe(\n switchMap(id => this.select((state) => this.selectors.selectEntities(state)[id])),\n ) as Observable<E>;\n }\n\n}\n\nexport class EntityStore<E extends Entity> extends BaseEntityStore<E> {\n protected proxyId = inject(ProxyIdService, {});\n protected composer = inject(TaskComposerService);\n protected taskSubject$ = new Subject<Task<E>>();\n protected task$: Observable<Task<E>> = this.taskSubject$.pipe(\n map(task => {\n switch(task.type) {\n case 'create': return merge(task, {payload: {id: this.proxyId.proxyId(task.payload.id)}});\n default: return task;\n }\n }),\n shareReplay(1),\n );\n protected composedTasks$ = this.task$.pipe(\n bufferTime(5 * 1000),\n filter(tasks => tasks.length > 0),\n map((tasks) => this.composer.composeTasks(tasks)),\n );\n\n constructor(\n protected entity: Type<E>,\n protected entityAdapter: EntityAdapter<E> = createEntityAdapter<E>({selectId: (entity) => entity.id, sortComparer: false}),\n ) {\n super(entity, entityAdapter);\n this.task$.subscribe((task: Task<E>) => this.runTask(task));\n this.composedTasks$.subscribe(tasks => this.runComposedTasks(tasks));\n }\n\n dispatch(action: Task<E>) {\n this.taskSubject$.next(action);\n }\n\n protected async runTask(task: Task<E>): Promise<any> {\n switch(task.type) {\n case 'create': return this.addOne(task.payload);\n case 'update': return this.updateOne({id: task.payload.id, changes: task.payload});\n case 'delete': return this.removeOne(task.payload.id);\n }\n }\n\n protected async runComposedTasks(tasks: Task<E>[]): Promise<void> {\n return Promise.all(tasks.map((task) => {\n switch(task.type) {\n case 'create': return this.adapter.create!(task.payload)\n .then((entity) => {\n this.proxyId.update(task.payload.id, entity.id);\n const _entity = this.state().entities[task.payload.id];\n this.removeOne(task.payload.id);\n this.addOne({..._entity, id: entity.id} as E);\n });\n case 'update': return this.adapter.update!({\n ...task.payload,\n id: this.proxyId.resolve(task.payload.id),\n });\n case 'delete': return this.adapter.delete!({\n ...task.payload,\n id: this.proxyId.resolve(task.payload.id),\n } as any);\n }\n }))\n .then(() => this.onSyncSucceeded())\n .catch(() => this.onSyncFailed());\n }\n\n protected onSyncFailed() { }\n protected onSyncSucceeded() { }\n\n create(payload: E): Promise<E> {\n return this.adapter.create!(payload);\n }\n\n update(payload: Pick<E, 'id'> & Partial<E>): Promise<void> {\n return this.adapter.update!(payload);\n }\n\n delete(payload: Pick<E, 'id'>): Promise<void> {\n return this.adapter.delete!(payload);\n }\n\n save(payload: E): Promise<E> {\n return this.adapter.save!(payload);\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nexport { distinctUntilChangedArray } from './entity-store';\n\n@Injectable({providedIn: 'root'})\nexport class EntityStoreService {\n protected storeMap = new Map<Type<Entity>, EntityStore<Entity>>();\n\n get<E extends Entity>(Entity: Type<E>): EntityStore<E> {\n if (!this.storeMap.has(Entity)) {\n this.storeMap.set(Entity, new EntityStore(Entity) as unknown as EntityStore<Entity>);\n }\n return this.storeMap.get(Entity) as unknown as EntityStore<E>;\n }\n}\n\nexport function injectEntityStore<E extends Entity>(Entity: Type<E>): EntityStore<E> {\n return inject(EntityStoreService).get(Entity);\n}\n","import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { Signal, computed, inject } from '@angular/core';\nimport { Resolver, BaseResolver, Type } from '@nx-ddd/common/domain';\nimport { injectResolver$ } from '@ng-atomic/common/utils';\nimport { Observable, combineLatest, isObservable, of, filter, map, shareReplay, switchMap } from 'rxjs';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nimport { injectEntityStore } from './entity-store-manager';\nimport { derivedAsync } from 'ngxtension/derived-async';\n\ntype OneProps<V> = {id: V, [key: string]: V};\ntype AllProps<V> = {[key: string]: V};\n\nexport function injectOne$<T extends Entity>(\n Entity: Type<T>,\n params: OneProps<Observable<any>>,\n resolverType: Type<BaseResolver<T>> = Resolver\n): Observable<T> {\n if (resolverType) {\n return combineLatest({\n resolver: injectResolver$(resolverType, params),\n Entity: injectEntityStore(Entity).mapToOne(params.id).pipe(\n filter((Entity) => !!Entity)\n ),\n }).pipe(\n map(({ resolver, Entity }) => resolver.resolve(Entity)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n }\n\n return injectEntityStore(Entity).mapToOne(params.id).pipe(\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nfunction signalMapToObsMap(map: AllProps<Signal<any>>): AllProps<Observable<any>> {\n return Object.entries(map).reduce((acc, [key, value]) => {\n acc[key] = toObservable(value as any);\n return acc;\n }, {} as AllProps<Observable<any>>);\n}\n\n\nexport function injectOne<T extends Entity>(\n Entity: Type<T>,\n params: OneProps<Signal<any>>,\n resolverType: Type<BaseResolver<T>> = Resolver\n) {\n return toSignal(injectOne$(Entity, signalMapToObsMap(params) as any, resolverType));\n}\n\nexport function injectAll$<T extends Entity>(\n Entity: Type<T>,\n params: Record<string, Observable<any>> = {},\n resolverType: Type<BaseResolver<T>> = Resolver\n) {\n if (resolverType) {\n return combineLatest({\n resolver: injectResolver$(resolverType, params),\n entities: injectEntityStore(Entity).all$,\n }).pipe(\n map(({ resolver, entities }) => resolver.resolveMany(entities)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n }\n\n return injectEntityStore(Entity).entities$.pipe(\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport const callSignalMap = <T extends Record<string, Signal<any>>>(map: T): Signal<T> => {\n return computed(() => Object.entries(map).reduce((acc, [key, value]) => {\n return {...acc, [key]: value()};\n }, {} as T));\n}\n\n// export function injectAll<T extends Entity>(\n// Entity: Type<T>,\n// params: Record<string, Signal<any>> = {},\n// resolverType?: new (params: Record<string, any>) => Resolver<T>\n// ) {\n// const store = injectEntityStore(Entity);\n// if (resolverType) {\n// return computed(() => {\n// const resolver = getResolver(resolverType, callSignalMap(params)());\n// const items = resolver.resolveMany(store.all());\n// return items;\n// });\n// }\n// return computed(() => store.all());\n// }\n\nexport function injectAll<T extends Entity>(\n Entity: Type<T>,\n params: AllProps<Signal<any>> = {},\n resolverType: Type<BaseResolver<T>> = Resolver\n): Signal<T[]> {\n const $params = signalMapToObsMap(params);\n const all$ = injectAll$(Entity, $params, resolverType);\n return derivedAsync(() => all$, { initialValue: [] });\n}\n\nexport type ValueOrObservable<T> = T | Observable<T>;\n\nexport function mapToOne$<T extends {id: string}>(\n storeType: new () => EntityStore<T>,\n keyOrKey$: ValueOrObservable<string>,\n): Observable<T> {\n const store = inject<EntityStore<T>>(storeType, {});\n const key$ = isObservable(keyOrKey$) ? keyOrKey$ : of(keyOrKey$);\n return key$.pipe(switchMap(key => store.mapToOne(key)));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["filter","map","shareReplay","switchMap"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-stores-entities.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/stores/entities/proxy-id.service.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/task-composer.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store-adapter.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/entity-store-manager.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/di.ts","../../../../../packages/@ng-atomic/common/src/lib/stores/entities/ng-atomic-common-stores-entities.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\n\n@Injectable({providedIn: 'root'})\nexport class ProxyIdService {\n proxyMap = new Map<string, string>();\n\n isProxyId(id: string | null): boolean {\n return !!id?.startsWith('proxy-');\n }\n\n proxyId(_id: string): string {\n const id = this.isProxyId(_id) ? _id : `proxy-${this.proxyMap.size}`;\n if (!this.proxyMap.get(id)) this.proxyMap.set(id, id);\n return id;\n }\n\n update(proxyId: string, id: string) {\n this.proxyMap.set(proxyId, id);\n }\n\n resolve(proxyIdOrId: string): string {\n return this.isProxyId(proxyIdOrId) ? this.proxyMap.get(proxyIdOrId)! : proxyIdOrId;\n }\n}\n","import { Injectable, inject } from \"@angular/core\";\nimport { merge } from \"lodash-es\";\nimport { ProxyIdService } from \"./proxy-id.service\";\n\nexport type Entity = {id: string};\n\ninterface BaseTask {\n type: 'create' | 'update' | 'delete' | 'noop';\n timestamp: number;\n}\n\ninterface CreateAction<T extends Entity> extends BaseTask {\n type: 'create';\n payload: T;\n}\n\ninterface UpdateAction<T extends Entity> extends BaseTask {\n type: 'update';\n payload: Partial<T> & Entity;\n}\n\ninterface DeleteAction extends BaseTask {\n type: 'delete';\n payload: Entity;\n}\n\ninterface NoopAction extends BaseTask {\n type: 'noop';\n payload: {};\n}\n\nexport type Task<T extends Entity> = CreateAction<T> | UpdateAction<T> | DeleteAction | NoopAction;\n\nexport function pushMap<T>(map: Map<string, T[]>, id: string, item: T): Map<string, T[]> {\n const items = map.get(id) ?? [];\n items.push(item);\n map.set(id, items);\n return map;\n}\n\n@Injectable({providedIn: 'root'})\nexport class TaskComposerService {\n readonly proxyId = inject(ProxyIdService);\n\n composeTasks<T extends Entity>(tasks: Task<T>[]): Task<T>[] {\n const map = new Map<string, Task<T>[]>();\n tasks.sort((a, b) => a.timestamp - b.timestamp).forEach((task) => {\n let id = (task.payload as any)?.id;\n switch(task.type) {\n case 'noop':\n break\n case 'create':\n id = this.proxyId.proxyId(task.payload.id);\n pushMap(map, id, {...task, payload: {...task.payload, id}} as Task<T>);\n break;\n case 'update':\n case 'delete':\n pushMap(map, this.proxyId.resolve(id), task);\n break;\n }\n });\n\n const _tasks: Task<T>[] = [];\n for (const tasks of map.values()) {\n _tasks.push(this.compose(tasks));\n }\n return _tasks.filter(task => task.type !== 'noop');\n }\n\n compose<T extends Entity>(tasks: Task<T>[]): Task<T> {\n let created = false;\n return tasks.reduce<Task<T>>((a, b) => {\n switch(b.type) {\n case 'create':\n created = true;\n return {\n type: 'create',\n payload: b.payload,\n timestamp: b.timestamp,\n } as Task<T>;\n case 'update':\n return {\n type: created ? 'create' : 'update',\n payload: merge(a.payload, b.payload),\n timestamp: b.timestamp,\n } as Task<T>;\n case 'delete':\n return {\n type: created ? 'noop' : 'delete',\n payload: b.payload,\n timestamp: b.timestamp,\n } as Task<T>;\n default:\n return a;\n }\n }, {type: 'noop', payload: {}} as Task<T>)\n }\n}\n","\nimport { InjectionToken, Injector, inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { Observable } from 'rxjs';\nimport { Entity } from './task-composer';\n\nexport class EntityStoreAdapter<E extends Entity> {\n list?(): Observable<E[]> {\n throw new Error('not implemented');\n }\n\n create?(entity: E): Promise<E> {\n throw new Error('not implemented');\n }\n\n update?(entity: Partial<E> & Pick<E, 'id'>): Promise<void> {\n throw new Error('not implemented');\n }\n\n delete?(entity: Pick<E, 'id'>): Promise<void> {\n throw new Error('not implemented');\n }\n\n save?(entity: E): Promise<E> {\n throw new Error('not implemented');\n }\n}\n\nexport const ENTITY_STORE_ADAPTER = new InjectionToken<{\n entity: Type<Entity>,\n adapter: EntityStoreAdapter<Entity>\n}[]>('ENTITY_STORE_ADAPTER');\n\nexport function provideEntityStoreAdapter<E extends Entity>(\n entity: Type<E>,\n adapterFactory: (injector: Injector) => EntityStoreAdapter<E>,\n) {\n return {\n provide: ENTITY_STORE_ADAPTER,\n multi: true,\n useFactory: (injector: Injector) => {\n return { entity, adapter: adapterFactory(injector) };\n },\n deps: [Injector]\n };\n}\n\nexport function injectEntityStoreAdapter<E extends Entity>(entity: Type<E>): EntityStoreAdapter<E> {\n const adapters = inject(ENTITY_STORE_ADAPTER, {optional: true}) ?? [];\n return adapters.find(adapter => adapter.entity === entity)?.adapter as EntityStoreAdapter<E>;\n}\n","import { toSignal } from '@angular/core/rxjs-interop';\nimport { inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { EntityState, EntityAdapter, createEntityAdapter } from '@ngrx/entity';\nimport { Observable, ReplaySubject, Subject, isObservable, of } from 'rxjs';\nimport { bufferTime, distinctUntilChanged, filter, map, shareReplay, switchMap, tap } from 'rxjs/operators';\nimport { merge } from 'lodash-es';\nimport { Entity, Task, TaskComposerService } from './task-composer';\nimport { ProxyIdService } from './proxy-id.service';\nimport { EntityStoreAdapter, injectEntityStoreAdapter } from './entity-store-adapter';\n\nexport const distinctUntilChangedArray = <T>() => {\n return distinctUntilChanged<T>((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur));\n};\n\nexport class BaseEntityStore<E extends Entity> extends ComponentStore<EntityState<E>> {\n protected adapter: EntityStoreAdapter<E>;\n\n protected readonly refresh$ = new ReplaySubject<void>(1);\n protected get selectors() { return this.entityAdapter.getSelectors(); }\n readonly all$ = this.select((state) => this.selectors.selectAll(state));\n readonly all = toSignal(this.all$);\n readonly total$ = this.select((state) => this.selectors.selectTotal(state));\n readonly total = toSignal(this.total$);\n\n \n readonly entities$ = this.all$\n \n readonly entities = this.all;\n \n readonly size$ = this.total$;\n\n readonly addOne = this.updater((state, entity: E) => this.entityAdapter.addOne(entity, state));\n readonly addMany = this.updater((state, entities: E[]) => this.entityAdapter.addMany(entities, state));\n readonly updateOne = this.updater((state, update: {id: string, changes: Partial<E>}) => this.entityAdapter.updateOne(update, state));\n readonly updateMany = this.updater((state, updates: {id: string, changes: Partial<E>}[]) => this.entityAdapter.updateMany(updates, state));\n readonly upsertOne = this.updater((state, entity: E) => this.entityAdapter.upsertOne(entity, state));\n readonly upsertMany = this.updater((state, entities: E[]) => this.entityAdapter.upsertMany(entities, state));\n readonly removeOne = this.updater((state, id: string) => this.entityAdapter.removeOne(id, state));\n readonly removeMany = this.updater((state, ids: string[]) => this.entityAdapter.removeMany(ids, state));\n readonly removeAll = this.updater((state) => this.entityAdapter.removeAll(state));\n readonly setOne = this.updater((state, entity: E) => this.entityAdapter.setOne(entity, state));\n readonly setAll = this.updater((state, entities: E[]) => this.entityAdapter.setAll(entities, state));\n\n constructor(\n protected entity: Type<E>,\n protected entityAdapter: EntityAdapter<E> = createEntityAdapter<E>({selectId: (entity) => entity.id, sortComparer: false}),\n ) {\n super(entityAdapter.getInitialState());\n this.adapter = injectEntityStoreAdapter(entity);\n this.getEntities(this.refresh$);\n this.refresh();\n }\n\n protected getEntities = this.effect((refresh$: Observable<void>) => refresh$.pipe(\n switchMap(() => this.adapter?.list?.() ?? of([] as E[])),\n tap((entities: E[]) => this.setAll(entities)),\n ));\n\n refresh() {\n this.refresh$.next();\n }\n\n mapToOne(valueOrObs: string | Observable<string>): Observable<E> {\n const wrap = (valueOrObs: string | Observable<string>) => isObservable(valueOrObs) ? valueOrObs : of(valueOrObs);\n return wrap(valueOrObs).pipe(\n switchMap(id => this.select((state) => this.selectors.selectEntities(state)[id])),\n ) as Observable<E>;\n }\n\n}\n\nexport class EntityStore<E extends Entity> extends BaseEntityStore<E> {\n protected proxyId = inject(ProxyIdService, {});\n protected composer = inject(TaskComposerService);\n protected taskSubject$ = new Subject<Task<E>>();\n protected task$: Observable<Task<E>> = this.taskSubject$.pipe(\n map(task => {\n switch(task.type) {\n case 'create': return merge(task, {payload: {id: this.proxyId.proxyId(task.payload.id)}});\n default: return task;\n }\n }),\n shareReplay(1),\n );\n protected composedTasks$ = this.task$.pipe(\n bufferTime(5 * 1000),\n filter(tasks => tasks.length > 0),\n map((tasks) => this.composer.composeTasks(tasks)),\n );\n\n constructor(\n protected entity: Type<E>,\n protected entityAdapter: EntityAdapter<E> = createEntityAdapter<E>({selectId: (entity) => entity.id, sortComparer: false}),\n ) {\n super(entity, entityAdapter);\n this.task$.subscribe((task: Task<E>) => this.runTask(task));\n this.composedTasks$.subscribe(tasks => this.runComposedTasks(tasks));\n }\n\n dispatch(action: Task<E>) {\n this.taskSubject$.next(action);\n }\n\n protected async runTask(task: Task<E>): Promise<any> {\n switch(task.type) {\n case 'create': return this.addOne(task.payload);\n case 'update': return this.updateOne({id: task.payload.id, changes: task.payload});\n case 'delete': return this.removeOne(task.payload.id);\n }\n }\n\n protected async runComposedTasks(tasks: Task<E>[]): Promise<void> {\n return Promise.all(tasks.map((task) => {\n switch(task.type) {\n case 'create': return this.adapter.create!(task.payload)\n .then((entity) => {\n this.proxyId.update(task.payload.id, entity.id);\n const _entity = this.state().entities[task.payload.id];\n this.removeOne(task.payload.id);\n this.addOne({..._entity, id: entity.id} as E);\n });\n case 'update': return this.adapter.update!({\n ...task.payload,\n id: this.proxyId.resolve(task.payload.id),\n });\n case 'delete': return this.adapter.delete!({\n ...task.payload,\n id: this.proxyId.resolve(task.payload.id),\n } as any);\n }\n }))\n .then(() => this.onSyncSucceeded())\n .catch(() => this.onSyncFailed());\n }\n\n protected onSyncFailed() { }\n protected onSyncSucceeded() { }\n\n create(payload: E): Promise<E> {\n return this.adapter.create!(payload);\n }\n\n update(payload: Pick<E, 'id'> & Partial<E>): Promise<void> {\n return this.adapter.update!(payload);\n }\n\n delete(payload: Pick<E, 'id'>): Promise<void> {\n return this.adapter.delete!(payload);\n }\n\n save(payload: E): Promise<E> {\n return this.adapter.save!(payload);\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nexport { distinctUntilChangedArray } from './entity-store';\n\n@Injectable({providedIn: 'root'})\nexport class EntityStoreService {\n protected storeMap = new Map<Type<Entity>, EntityStore<Entity>>();\n\n get<E extends Entity>(Entity: Type<E>): EntityStore<E> {\n if (!this.storeMap.has(Entity)) {\n this.storeMap.set(Entity, new EntityStore(Entity) as unknown as EntityStore<Entity>);\n }\n return this.storeMap.get(Entity) as unknown as EntityStore<E>;\n }\n}\n\nexport function injectEntityStore<E extends Entity>(Entity: Type<E>): EntityStore<E> {\n return inject(EntityStoreService).get(Entity);\n}\n","import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { Signal, computed, inject } from '@angular/core';\nimport { Resolver, BaseResolver, Type } from '@nx-ddd/common/domain';\nimport { injectResolver$ } from '@ng-atomic/common/utils';\nimport { Observable, combineLatest, isObservable, of, filter, map, shareReplay, switchMap } from 'rxjs';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nimport { injectEntityStore } from './entity-store-manager';\nimport { derivedAsync } from 'ngxtension/derived-async';\n\ntype OneProps<V> = {id: V, [key: string]: V};\ntype AllProps<V> = {[key: string]: V};\n\nexport function injectOne$<T extends Entity>(\n Entity: Type<T>,\n params: OneProps<Observable<any>>,\n resolverType: Type<BaseResolver<T>> = Resolver\n): Observable<T> {\n if (resolverType) {\n return combineLatest({\n resolver: injectResolver$(resolverType, params),\n Entity: injectEntityStore(Entity).mapToOne(params.id).pipe(\n filter((Entity) => !!Entity)\n ),\n }).pipe(\n map(({ resolver, Entity }) => resolver.resolve(Entity)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n }\n\n return injectEntityStore(Entity).mapToOne(params.id).pipe(\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nfunction signalMapToObsMap(map: AllProps<Signal<any>>): AllProps<Observable<any>> {\n return Object.entries(map).reduce((acc, [key, value]) => {\n acc[key] = toObservable(value as any);\n return acc;\n }, {} as AllProps<Observable<any>>);\n}\n\n\nexport function injectOne<T extends Entity>(\n Entity: Type<T>,\n params: OneProps<Signal<any>>,\n resolverType: Type<BaseResolver<T>> = Resolver\n) {\n return toSignal(injectOne$(Entity, signalMapToObsMap(params) as any, resolverType));\n}\n\nexport function injectAll$<T extends Entity>(\n Entity: Type<T>,\n params: Record<string, Observable<any>> = {},\n resolverType: Type<BaseResolver<T>> = Resolver\n) {\n if (resolverType) {\n return combineLatest({\n resolver: injectResolver$(resolverType, params),\n entities: injectEntityStore(Entity).all$,\n }).pipe(\n map(({ resolver, entities }) => resolver.resolveMany(entities)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n }\n\n return injectEntityStore(Entity).entities$.pipe(\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport const callSignalMap = <T extends Record<string, Signal<any>>>(map: T): Signal<T> => {\n return computed(() => Object.entries(map).reduce((acc, [key, value]) => {\n return {...acc, [key]: value()};\n }, {} as T));\n}\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nexport function injectAll<T extends Entity>(\n Entity: Type<T>,\n params: AllProps<Signal<any>> = {},\n resolverType: Type<BaseResolver<T>> = Resolver\n): Signal<T[]> {\n const $params = signalMapToObsMap(params);\n const all$ = injectAll$(Entity, $params, resolverType);\n return derivedAsync(() => all$, { initialValue: [] });\n}\n\nexport type ValueOrObservable<T> = T | Observable<T>;\n\nexport function mapToOne$<T extends {id: string}>(\n storeType: new () => EntityStore<T>,\n keyOrKey$: ValueOrObservable<string>,\n): Observable<T> {\n const store = inject<EntityStore<T>>(storeType, {});\n const key$ = isObservable(keyOrKey$) ? keyOrKey$ : of(keyOrKey$);\n return key$.pipe(switchMap(key => store.mapToOne(key)));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["filter","map","shareReplay","switchMap"],"mappings":"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"}
|
|
@@ -66,7 +66,6 @@ function getInvalid(form) {
|
|
|
66
66
|
return toSignal(getInvalid$(form));
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
/** @deprecated use lodash-es */
|
|
70
69
|
function get(obj, path) {
|
|
71
70
|
return get$1(obj, path);
|
|
72
71
|
}
|
|
@@ -74,7 +73,6 @@ function get(obj, path) {
|
|
|
74
73
|
function injectRouterParam$(key) {
|
|
75
74
|
return inject(ActivatedRoute).paramMap.pipe(map((params) => params.get(key)), shareReplay(1), takeUntilDestroyed());
|
|
76
75
|
}
|
|
77
|
-
/** @deprecated */
|
|
78
76
|
function injectRouterParam(key) {
|
|
79
77
|
return toSignal(injectRouterParam$(key));
|
|
80
78
|
}
|
|
@@ -217,7 +215,7 @@ class ResolverManager {
|
|
|
217
215
|
}
|
|
218
216
|
get(Entity) {
|
|
219
217
|
if (!this.map.has(Entity.name)) {
|
|
220
|
-
|
|
218
|
+
void 0;
|
|
221
219
|
}
|
|
222
220
|
return this.map.get(Entity.name);
|
|
223
221
|
}
|
|
@@ -236,14 +234,6 @@ function getResolver(ResolverType, params) {
|
|
|
236
234
|
return new ResolverType(params);
|
|
237
235
|
}
|
|
238
236
|
|
|
239
|
-
/**
|
|
240
|
-
* Angular injection utilities for routing and resolvers
|
|
241
|
-
*
|
|
242
|
-
* Re-exports all utilities from split files for backward compatibility
|
|
243
|
-
*/
|
|
244
|
-
// Route parameter utilities
|
|
245
|
-
|
|
246
|
-
/** InjectionToken for Dayjs date adapter to configure options. */
|
|
247
237
|
const MAT_DAYJS_DATE_ADAPTER_OPTIONS = new InjectionToken('MAT_DAYJS_DATE_ADAPTER_OPTIONS', {
|
|
248
238
|
providedIn: 'root',
|
|
249
239
|
factory: MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY
|
|
@@ -253,7 +243,6 @@ function MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY() {
|
|
|
253
243
|
useUtc: false
|
|
254
244
|
};
|
|
255
245
|
}
|
|
256
|
-
/** Creates an array and fills it with values. */
|
|
257
246
|
function range(length, valueFunction) {
|
|
258
247
|
const valuesArray = Array(length);
|
|
259
248
|
for (let i = 0; i < length; i++) {
|
|
@@ -261,7 +250,6 @@ function range(length, valueFunction) {
|
|
|
261
250
|
}
|
|
262
251
|
return valuesArray;
|
|
263
252
|
}
|
|
264
|
-
/** Adapts Dayjs Dates for use with Angular Material. */
|
|
265
253
|
let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
|
|
266
254
|
constructor(dateLocale, options) {
|
|
267
255
|
super();
|
|
@@ -269,7 +257,6 @@ let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
|
|
|
269
257
|
this.options = options;
|
|
270
258
|
this.initializeParser(dateLocale);
|
|
271
259
|
}
|
|
272
|
-
// TODO: Implement
|
|
273
260
|
setLocale(locale) {
|
|
274
261
|
super.setLocale(locale);
|
|
275
262
|
const dayJsLocaleData = this.dayJs().localeData();
|
|
@@ -356,25 +343,12 @@ let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
|
|
|
356
343
|
toIso8601(date) {
|
|
357
344
|
return date.toISOString();
|
|
358
345
|
}
|
|
359
|
-
/**
|
|
360
|
-
* Attempts to deserialize a value to a valid date object. This is different from parsing in that
|
|
361
|
-
* deserialize should only accept non-ambiguous, locale-independent formats (e.g. a ISO 8601
|
|
362
|
-
* string). The default implementation does not allow any deserialization, it simply checks that
|
|
363
|
-
* the given value is already a valid date object or null. The `<mat-datepicker>` will call this
|
|
364
|
-
* method on all of it's `@Input()` properties that accept dates. It is therefore possible to
|
|
365
|
-
* support passing values from your backend directly to these properties by overriding this method
|
|
366
|
-
* to also deserialize the format used by your backend.
|
|
367
|
-
* @param value The value to be deserialized into a date object.
|
|
368
|
-
* @returns The deserialized date object, either a valid date, null if the value can be
|
|
369
|
-
* deserialized into a null date (e.g. the empty string), or an invalid date.
|
|
370
|
-
*/
|
|
371
346
|
deserialize(value) {
|
|
372
347
|
let date;
|
|
373
348
|
if (value instanceof Date) {
|
|
374
349
|
date = this.dayJs(value);
|
|
375
350
|
}
|
|
376
351
|
else if (this.isDateInstance(value)) {
|
|
377
|
-
// NOTE: assumes that cloning also sets the correct locale.
|
|
378
352
|
return this.clone(value);
|
|
379
353
|
}
|
|
380
354
|
if (typeof value === 'string') {
|
|
@@ -384,7 +358,7 @@ let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
|
|
|
384
358
|
date = this.dayJs(value).toISOString();
|
|
385
359
|
}
|
|
386
360
|
if (date && this.isValid(date)) {
|
|
387
|
-
return this.dayJs(date);
|
|
361
|
+
return this.dayJs(date);
|
|
388
362
|
}
|
|
389
363
|
return super.deserialize(value);
|
|
390
364
|
}
|
|
@@ -425,9 +399,6 @@ DayjsDateAdapter = __decorate([
|
|
|
425
399
|
__metadata("design:paramtypes", [String, Object])
|
|
426
400
|
], DayjsDateAdapter);
|
|
427
401
|
|
|
428
|
-
/**
|
|
429
|
-
* Custom Date-Formats and Adapter (using https://github.com/iamkun/dayjs)
|
|
430
|
-
*/
|
|
431
402
|
const MAT_DAYJS_DATE_FORMATS = {
|
|
432
403
|
parse: {
|
|
433
404
|
dateInput: 'MM/DD/YYYY',
|
|
@@ -608,7 +579,6 @@ const getAllProps = (obj, keys = Object.keys(obj)) => {
|
|
|
608
579
|
};
|
|
609
580
|
const toObject = (obj) => getAllProps(obj).reduce((p, k) => ({ ...p, [k]: obj[k] }), {});
|
|
610
581
|
|
|
611
|
-
// 秒数をhh:mm:ssの形にフォーマットする
|
|
612
582
|
function formatSeconds(seconds) {
|
|
613
583
|
const h = `${Math.floor(seconds / 3600)}`.padStart(2, '0');
|
|
614
584
|
const m = `${Math.floor(seconds % 3600 / 60)}`.padStart(2, '0');
|
|
@@ -616,8 +586,6 @@ function formatSeconds(seconds) {
|
|
|
616
586
|
return `${h}:${m}:${s}`;
|
|
617
587
|
}
|
|
618
588
|
|
|
619
|
-
// export * from './define-element';
|
|
620
|
-
|
|
621
589
|
/**
|
|
622
590
|
* Generated bundle index. Do not edit.
|
|
623
591
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-utils.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/utils/comma/comma.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/compare-by-id/compare-by-id.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/date-utils/date-utils.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/diff/diff.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/form/form.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/get/get.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-params.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-query.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-navigation.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-data.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/resolver.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/inject.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.adapter.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.formats.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-jp-providers.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.module.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/page/page.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/router/router.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/expression/expression.transformer.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/to-object/to-object.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/time.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/index.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/ng-atomic-common-utils.ts"],"sourcesContent":["export const comma = (n: number | null): string => n === null ? '0' : n.toLocaleString();\nexport const commaStr = (n: number, unit = '円') => n < 0 ? `-${comma(abs(n))}${unit}` : `${comma(n)}${unit}`;\nexport const abs = (n: number) => Math.abs(n);","export type HasId = { id: string };\nexport function compareByIdFactory(key: string) {\n return (a: any, b: any) => parseInt(a?.[key], 10) - parseInt(b?.[key], 10);\n}\nexport const compareById = compareByIdFactory('id');\n","import dayjs from 'dayjs';\n\nexport const removeComma = (str: string) => str.replace(/\\,/g, '');\n\nexport const DATE_FORMAT = 'YYYY-MM-DDTHH:mm:ss';\nconst DATE_REGEX = /^[0-9]{4}\\/(0[1-9]|1[0-2])\\/(0[1-9]|[12][0-9]|3[01])$/;\nconst DATETIME_REGEX = /^\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\+([+-][0-2]\\d:[0-5]\\d)$/;\nexport const isDateStr = (str: string | null): str is string => !!str && !!str.match(DATE_REGEX);\nexport const isDateTimeStr = (str: string | null): str is string => !!str && !!str.match(DATE_REGEX);\n\nconst ISO_REGEX = /\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\.\\d+([+-][0-2]\\d:[0-5]\\d|Z)/;\nexport const isIsoString = (str: string | null): str is string => !!str && !!str.match(ISO_REGEX);\n\n\nexport interface Timestamp {\n toDate: () => Date;\n}\n\nexport function timestampToDayjs(timestamp: Timestamp | null): dayjs.Dayjs | null {\n return timestamp ? dayjs(timestamp.toDate()) : null;\n}","import { SelectionModel } from \"@angular/cdk/collections\";\n\nexport function diff<T = any>(initial: SelectionModel<T>, current: SelectionModel<T>): {\n selectedIds: T[],\n unselectedIds: T[],\n} {\n return {\n selectedIds: current.selected.filter((id: T) => !initial.isSelected(id)),\n unselectedIds: initial.selected.filter((id: T) => !current.isSelected(id)),\n }\n}\n","import { Signal } from \"@angular/core\";\nimport { toSignal } from \"@angular/core/rxjs-interop\";\nimport { AbstractControl } from \"@angular/forms\";\nimport { Observable, distinctUntilChanged, map, merge, of, startWith } from \"rxjs\";\nimport { computedAsync } from \"ngxtension/computed-async\";\nimport { computeFake } from \"@ng-atomic/core\";\n\nexport function getValue$<T>(control: AbstractControl<T>): Observable<T> {\n return merge(of(control.value), control.valueChanges).pipe(\n distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)),\n );\n}\n\nexport function getValue<T>(control: AbstractControl<T>): Signal<T> {\n return toSignal(getValue$(control)) as Signal<T>;\n}\n\nexport function getRawValue$<T>(control: AbstractControl<T>): Observable<T> {\n return merge(of(control.getRawValue()), control.valueChanges.pipe(map(() => control.getRawValue())));\n}\n\nexport function getRawValue<T>(control: AbstractControl<T>): Signal<T> {\n return toSignal(getRawValue$(control)) as Signal<T>;\n}\n\nexport function computedRawValue<T>(controlFactory: () => AbstractControl<T>): Signal<T> {\n return computedAsync(() => controlFactory().valueChanges.pipe(\n startWith(null),\n map(() => controlFactory().getRawValue()),\n ), { initialValue: computeFake(controlFactory()).getRawValue() });\n}\n\nexport function getInvalid$<T>(control: AbstractControl<T>): Observable<boolean> {\n return control.statusChanges.pipe(\n startWith(null),\n map(() => control.invalid),\n );\n}\n\nexport function getInvalid<T>(form: AbstractControl<T>): Signal<boolean> {\n return toSignal(getInvalid$(form)) as Signal<boolean>;\n}\n\n","import { get as _get } from 'lodash-es';\n\n// ネストされたオブジェクトのキーの組み合わせを生成する型ヘルパー\nexport type PathKeys<T> = T extends object ? {\n [K in keyof T]-?: K extends string | number ?\n T[K] extends object ? [K] | [K, ...PathKeys<T[K]>] : [K]\n : never\n}[keyof T] : [];\n\n// ネストされたパスに対応する型を抽出するための型ヘルパー\nexport type NestedGetType<T, P extends any[]> = \n P extends [infer F, ...infer R]\n ? F extends keyof T\n ? NestedGetType<T[F], R>\n : never\n : T;\n\n/** @deprecated use lodash-es */\nexport function get<T, P extends PathKeys<T>>(obj: T, path: P): NestedGetType<T, P> {\n return _get(obj, path as any);\n}","import { Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, ParamMap, Params } from \"@angular/router\";\nimport { Observable, OperatorFunction, combineLatest, map, of, shareReplay } from \"rxjs\";\nimport { unflatten } from 'flat';\n\nexport function injectRouterParam$(key: string): Observable<string> {\n return inject(ActivatedRoute).paramMap.pipe(\n map((params) => params.get(key)) as OperatorFunction<ParamMap, string>,\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\n/** @deprecated */\nexport function injectRouterParam(key: string): Signal<string> {\n return toSignal(injectRouterParam$(key)) as Signal<string>;\n}\n\nexport function injectRouteParams$({\n merge = true,\n route = inject(ActivatedRoute),\n}: {\n merge?: boolean,\n route?: ActivatedRoute,\n} = {}): Observable<Params> {\n const parentParams = (merge && route.parent) ? injectRouteParams$({merge, route: route.parent}) : of(new Map<string, string>());\n return combineLatest({\n parentParams,\n params: route.params\n }).pipe(\n map(({parentParams, params}) => ({\n ...parentParams,\n ...params,\n })),\n shareReplay(1),\n takeUntilDestroyed(),\n )\n}\n\nexport function injectUnflattenRouteParams$({\n merge = true,\n route = inject(ActivatedRoute),\n}: {\n merge?: boolean,\n route?: ActivatedRoute,\n} = {}) {\n return injectRouteParams$({merge, route}).pipe(\n map((params) => (unflatten(params) as any)),\n );\n}\n\nexport function injectUnflattenRouteParam$<T = any>(key?: string): Observable<T> {\n return injectUnflattenRouteParams$().pipe(\n map((params) => key ? params[key]: params),\n );\n}\n\nexport function injectUnflattenRouteParam<T = any>(key?: string): Signal<T> {\n return toSignal(injectUnflattenRouteParam$(key)) as Signal<T>;\n}\n\nexport function injectUnflattenRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<any> {\n return toSignal(injectUnflattenRouteParams$({merge}), {initialValue: {}});\n}\n\nexport function injectRouteParamMap$({\n merge = true,\n}: {\n merge?: boolean,\n} = {}) {\n return injectRouteParams$({merge}).pipe(\n map((params) => new Map(Object.entries(params)) as never as ParamMap),\n );\n}\n\nexport function injectRouteParamMap({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<ParamMap> {\n return toSignal(injectRouteParamMap$({merge})) as Signal<ParamMap>;\n}\n\nexport function injectRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<Record<string, string>> {\n return toSignal(injectRouteParams$({merge})) as Signal<Record<string, string>>;\n}\n\nexport function injectRouteParam$(key: string, {\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Observable<string> {\n return injectRouteParamMap$({merge}).pipe(\n map((params) => params.get(key)) as OperatorFunction<ParamMap, string>,\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteParam(key: string, injector?: import(\"@angular/core\").Injector): Signal<string> {\n return toSignal(injectRouteParam$(key), {injector}) as Signal<string>;\n}\n\nexport function injectRouteSkip$(): Observable<boolean> {\n return injectRouteParam$('skip', {merge: false}).pipe(\n map((skip) => skip === 'true'),\n shareReplay(1),\n takeUntilDestroyed(),\n )\n}\n\nexport function injectRouteSkip(): Signal<boolean> {\n return toSignal(injectRouteSkip$()) as Signal<boolean>;\n}\n","import { Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Observable, map, shareReplay } from \"rxjs\";\n\nexport function injectRouteQueryParam$<T extends string = string>(key: string): Observable<T> {\n return inject(ActivatedRoute).queryParamMap.pipe(\n map((params) => params.get(key) as T),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteQueryParam(key: string): Signal<string> {\n return toSignal(injectRouteQueryParam$(key)) as Signal<string>;\n}\n\nexport function injectRouterQueryParam$<T extends string = string>(key: string): Observable<T> {\n return inject(ActivatedRoute).queryParamMap.pipe(\n map((params) => params.get(key) as T),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouterQueryParam<T extends string = string>(key: string): Signal<T> {\n return toSignal(injectRouterQueryParam$(key)) as Signal<T>;\n}\n","import { Signal, computed, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from \"@angular/router\";\nimport { Observable, filter, map, of, shareReplay, startWith, switchMap } from \"rxjs\";\n\nexport function injectRouteNavigated$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n filter(event => event instanceof NavigationEnd),\n map(() => route),\n );\n}\n\nexport function injectRouteNavigated() {\n return toSignal(injectRouteNavigated$());\n}\n\nexport function injectPrimaryPaths$() {\n return injectRouteNavigated$().pipe(\n map(route => {\n const paths: (string | null)[] = [];\n let current: ActivatedRoute | null = route.root;\n while (current) {\n paths.push(current?.routeConfig?.path ?? null);\n current = current.firstChild;\n }\n return paths.filter(Boolean);\n }),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectPrimaryPaths() {\n return toSignal(injectPrimaryPaths$());\n}\n\nexport function injectChildRouteParam$(key: string): Observable<string> {\n return injectRouteNavigated$().pipe(\n switchMap((route) => route?.firstChild ? route.firstChild.paramMap : of(new Map<string, string>())),\n map((params) => params.get(key) as string),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRouteParam(key: string): Signal<string> {\n return toSignal(injectChildRouteParam$(key)) as Signal<string>;\n}\n\nexport function injectChildRoute$() {\n return injectRouteNavigated$().pipe(\n map((route) => (route?.firstChild?.firstChild ?? null) as ActivatedRoute),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRoute(): Signal<ActivatedRoute> {\n return toSignal(injectChildRoute$()) as Signal<ActivatedRoute>;\n}\n\nexport function injectHasNext$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n startWith(null),\n map(() => !!route?.firstChild?.firstChild),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectHasNext() {\n return toSignal(injectHasNext$());\n}\n\nexport function injectNavigationExtras(): Signal<NavigationExtras> {\n const relativeTo = inject(ActivatedRoute);\n const hasNext = injectHasNext();\n return computed(() => ({ relativeTo, replaceUrl: hasNext() }));\n}\n","import { Injector, Signal, computed, inject } from \"@angular/core\";\nimport { toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Observable, map } from \"rxjs\";\nimport { get } from \"lodash-es\";\n\nexport function injectRouteData$<T>(path: string): Observable<T> {\n return inject(ActivatedRoute).data.pipe(map(data => get(data, path) as T));\n}\n\nexport function injectRouteData<T>(key: string): Signal<T> {\n return toSignal(injectRouteData$<T>(key)) as Signal<T>;\n}\n\nexport function injectRouteDataSnapshot<T>(key: string): Signal<T> {\n const route = inject(ActivatedRoute);\n return computed(() => route.snapshot.data[key] as T);\n}\n\nexport function injectActivatedComponents(injector: Injector = inject(Injector)): any[] {\n const components = [];\n let route = injector.get(ActivatedRoute, {optional: true}) ?? null;\n while(route) {\n if (route.component) components.push(route.component);\n route = route.parent;\n }\n return components;\n}\n","import { Injectable } from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { Observable, combineLatest, map, of, shareReplay } from \"rxjs\";\nimport { BaseResolver, Type } from \"@nx-ddd/common/domain\";\n\nexport interface Resolver<T> {\n resolve(entry: T): T;\n resolveMany(entities: T[]): T[];\n}\n\nexport function provideResolver(\n Entity: Type<{id: string}>,\n ResolverType: new (params: Record<string, Observable<any>>) => Resolver<any>,\n) {\n return {\n provide: Entity,\n deps: [],\n multi: true,\n };\n}\n\n@Injectable({providedIn: 'root'})\nexport class ResolverManager {\n protected map = new Map<string, Resolver<any>>();\n\n get(Entity: Type<{id: string}>) {\n if (!this.map.has(Entity.name)) {\n // placeholder for future implementation\n }\n return this.map.get(Entity.name);\n }\n}\n\nexport function injectResolver$<T>(\n ResolverType: Type<BaseResolver<T>>,\n params: Record<string, Observable<any>>,\n): Observable<BaseResolver<T>> {\n const params$ = Object.keys(params).length > 0 ? combineLatest(params) : of({});\n return params$.pipe(\n map((params) => new ResolverType(params)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function getResolver<T>(\n ResolverType: new (params: Record<string, any>) => Resolver<T>,\n params: Record<string, any>,\n): Resolver<T> {\n return new ResolverType(params);\n}\n","/**\n * Angular injection utilities for routing and resolvers\n *\n * Re-exports all utilities from split files for backward compatibility\n */\n\n// Route parameter utilities\nexport {\n injectRouterParam$,\n injectRouterParam,\n injectRouteParams$,\n injectRouteParams,\n injectRouteParamMap$,\n injectRouteParamMap,\n injectRouteParam$,\n injectRouteParam,\n injectRouteSkip$,\n injectRouteSkip,\n injectUnflattenRouteParams$,\n injectUnflattenRouteParams,\n injectUnflattenRouteParam$,\n injectUnflattenRouteParam,\n} from './route-params';\n\n// Query parameter utilities\nexport {\n injectRouteQueryParam$,\n injectRouteQueryParam,\n injectRouterQueryParam$,\n injectRouterQueryParam,\n} from './route-query';\n\n// Navigation utilities\nexport {\n injectRouteNavigated$,\n injectRouteNavigated,\n injectPrimaryPaths$,\n injectPrimaryPaths,\n injectChildRouteParam$,\n injectChildRouteParam,\n injectChildRoute$,\n injectChildRoute,\n injectHasNext$,\n injectHasNext,\n injectNavigationExtras,\n} from './route-navigation';\n\n// Route data utilities\nexport {\n injectRouteData$,\n injectRouteData,\n injectRouteDataSnapshot,\n injectActivatedComponents,\n} from './route-data';\n\n// Resolver utilities\nexport type { Resolver } from './resolver';\nexport {\n provideResolver,\n ResolverManager,\n injectResolver$,\n getResolver,\n} from './resolver';\n","\nimport { Optional, Inject, InjectionToken } from '@angular/core';\nimport { DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';\nimport dayjs from 'dayjs';\nimport { Dayjs } from 'dayjs';\nimport utc from 'dayjs/plugin/utc';\nimport localeData from 'dayjs/plugin/localeData';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\n\n\nexport interface DayJsDateAdapterOptions {\n /**\n * Turns the use of utc dates on or off.\n * Changing this will change how Angular Material components like DatePicker output dates.\n * {@default false}\n */\n useUtc?: boolean;\n}\n\n/** InjectionToken for Dayjs date adapter to configure options. */\nexport const MAT_DAYJS_DATE_ADAPTER_OPTIONS = new InjectionToken<DayJsDateAdapterOptions>(\n 'MAT_DAYJS_DATE_ADAPTER_OPTIONS', {\n providedIn: 'root',\n factory: MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY\n});\n\nexport function MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY(): DayJsDateAdapterOptions {\n return {\n useUtc: false\n };\n}\n\n/** Creates an array and fills it with values. */\nfunction range<T>(length: number, valueFunction: (index: number) => T): T[] {\n const valuesArray = Array(length);\n for (let i = 0; i < length; i++) {\n valuesArray[i] = valueFunction(i);\n }\n return valuesArray;\n}\n\n/** Adapts Dayjs Dates for use with Angular Material. */\nexport class DayjsDateAdapter extends DateAdapter<Dayjs> {\n private localeData!: {\n firstDayOfWeek: number,\n longMonths: string[],\n shortMonths: string[],\n dates: string[],\n longDaysOfWeek: string[],\n shortDaysOfWeek: string[],\n narrowDaysOfWeek: string[]\n };\n\n constructor(\n @Optional() @Inject(MAT_DATE_LOCALE) public dateLocale: string,\n @Optional() @Inject(MAT_DAYJS_DATE_ADAPTER_OPTIONS) private options?: DayJsDateAdapterOptions\n ) {\n super();\n this.initializeParser(dateLocale);\n }\n\n // TODO: Implement\n override setLocale(locale: string) {\n super.setLocale(locale);\n\n const dayJsLocaleData = this.dayJs().localeData();\n this.localeData = {\n firstDayOfWeek: dayJsLocaleData.firstDayOfWeek(),\n longMonths: dayJsLocaleData.months(),\n shortMonths: dayJsLocaleData.monthsShort(),\n dates: range(31, (i) => this.createDate(2017, 0, i + 1).format('D')),\n longDaysOfWeek: range(7, (i) => this.dayJs().set('day', i).format('dddd')),\n shortDaysOfWeek: dayJsLocaleData.weekdaysShort(),\n narrowDaysOfWeek: dayJsLocaleData.weekdaysMin(),\n };\n }\n\n getYear(date: Dayjs): number {\n return this.dayJs(date).year();\n }\n\n getMonth(date: Dayjs): number {\n return this.dayJs(date).month();\n }\n\n getDate(date: Dayjs): number {\n return this.dayJs(date).date();\n }\n\n getDayOfWeek(date: Dayjs): number {\n return this.dayJs(date).day();\n }\n\n getMonthNames(style: 'long' | 'short' | 'narrow'): string[] {\n return style === 'long' ? this.localeData.longMonths : this.localeData.shortMonths;\n }\n\n getDateNames(): string[] {\n return this.localeData.dates;\n }\n\n getDayOfWeekNames(style: 'long' | 'short' | 'narrow'): string[] {\n if (style === 'long') {\n return this.localeData.longDaysOfWeek;\n }\n if (style === 'short') {\n return this.localeData.shortDaysOfWeek;\n }\n return this.localeData.narrowDaysOfWeek;\n }\n\n getYearName(date: Dayjs): string {\n return this.dayJs(date).format('YYYY');\n }\n\n getFirstDayOfWeek(): number {\n return this.localeData.firstDayOfWeek;\n }\n\n getNumDaysInMonth(date: Dayjs): number {\n return this.dayJs(date).daysInMonth();\n }\n\n clone(date: Dayjs): Dayjs {\n return date.clone();\n }\n\n createDate(year: number, month: number, date: number): Dayjs {\n const returnDayjs = this.dayJs()\n .set('year', year)\n .set('month', month)\n .set('date', date);\n return returnDayjs;\n }\n\n today(): Dayjs {\n return this.dayJs();\n }\n\n parse(value: any, parseFormat: string): Dayjs | null {\n if (value && typeof value === 'string') {\n return this.dayJs(value, dayjs().localeData().longDateFormat(parseFormat), this.locale);\n }\n return value ? this.dayJs(value).locale(this.locale) : null;\n }\n\n format(date: Dayjs, displayFormat: string): string {\n if (!this.isValid(date)) {\n throw Error('DayjsDateAdapter: Cannot format invalid date.');\n }\n return date.locale(this.locale).format(displayFormat);\n }\n\n addCalendarYears(date: Dayjs, years: number): Dayjs {\n return date.add(years, 'year');\n }\n\n addCalendarMonths(date: Dayjs, months: number): Dayjs {\n return date.add(months, 'month');\n }\n\n addCalendarDays(date: Dayjs, days: number): Dayjs {\n return date.add(days, 'day');\n }\n\n toIso8601(date: Dayjs): string {\n return date.toISOString();\n }\n\n /**\n * Attempts to deserialize a value to a valid date object. This is different from parsing in that\n * deserialize should only accept non-ambiguous, locale-independent formats (e.g. a ISO 8601\n * string). The default implementation does not allow any deserialization, it simply checks that\n * the given value is already a valid date object or null. The `<mat-datepicker>` will call this\n * method on all of it's `@Input()` properties that accept dates. It is therefore possible to\n * support passing values from your backend directly to these properties by overriding this method\n * to also deserialize the format used by your backend.\n * @param value The value to be deserialized into a date object.\n * @returns The deserialized date object, either a valid date, null if the value can be\n * deserialized into a null date (e.g. the empty string), or an invalid date.\n */\n override deserialize(value: any): Dayjs | null {\n let date;\n if (value instanceof Date) {\n date = this.dayJs(value);\n } else if (this.isDateInstance(value)) {\n // NOTE: assumes that cloning also sets the correct locale.\n return this.clone(value);\n }\n if (typeof value === 'string') {\n if (!value) {\n return null;\n }\n date = this.dayJs(value).toISOString();\n }\n if (date && this.isValid(date as Dayjs)) {\n return this.dayJs(date); // NOTE: Is this necessary since Dayjs is immutable and Moment was not?\n }\n return super.deserialize(value);\n }\n\n isDateInstance(obj: any): boolean {\n return dayjs.isDayjs(obj);\n }\n\n isValid(date: Dayjs): boolean {\n return this.dayJs(date).isValid();\n }\n\n invalid(): Dayjs {\n return this.dayJs(null);\n }\n\n private dayJs(input?: any, format?: string, locale?: string): Dayjs {\n if (!this.shouldUseUtc) {\n return dayjs(input, { format, locale }, locale);\n }\n return dayjs(input, { format, locale, utc: this.shouldUseUtc }, locale).utc();\n }\n\n private get shouldUseUtc(): boolean {\n const { useUtc }: DayJsDateAdapterOptions = this.options || {};\n return !!useUtc;\n }\n\n private initializeParser(dateLocale: string) {\n if (this.shouldUseUtc) {\n dayjs.extend(utc);\n }\n\n dayjs.extend(LocalizedFormat);\n dayjs.extend(customParseFormat);\n dayjs.extend(localeData);\n\n this.setLocale(dateLocale);\n }\n}","import { MatDateFormats } from '@angular/material/core';\n\n/**\n * Custom Date-Formats and Adapter (using https://github.com/iamkun/dayjs)\n */\nexport const MAT_DAYJS_DATE_FORMATS: MatDateFormats = {\n parse: {\n dateInput: 'MM/DD/YYYY',\n },\n display: {\n dateInput: 'MM/DD/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n }\n};","import { MatDateFormats, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/ja'\ndayjs.locale('ja');\n\nexport const MAT_DAYJS_DATE_FORMATS_FOR_JP: MatDateFormats = {\n parse: {\n dateInput: 'YYYY/MM/DD',\n },\n display: {\n dateInput: 'YYYY/MM/DD',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n }\n};\n\nexport const MAT_DAYJS_JP_PROVIDERS = [\n { provide: MAT_DATE_LOCALE, useValue: 'ja' },\n { provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS_FOR_JP },\n];\n","import { NgModule, Provider } from '@angular/core';\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport { DayjsDateAdapter, MAT_DAYJS_DATE_ADAPTER_OPTIONS } from './dayjs-date.adapter';\nimport { MAT_DAYJS_DATE_FORMATS } from './dayjs-date.formats';\n\n@NgModule({\n providers: [\n provideDayjsDateAdapter(),\n ],\n})\nexport class DayjsDateModule { }\n\nexport function provideDayjsDateAdapter(): Provider[] {\n return [\n {\n provide: DateAdapter,\n useClass: DayjsDateAdapter,\n deps: [\n MAT_DATE_LOCALE, \n MAT_DAYJS_DATE_ADAPTER_OPTIONS,\n ]\n },\n {\n provide: MAT_DATE_FORMATS,\n useValue: MAT_DAYJS_DATE_FORMATS,\n }, \n ]\n}\n","import { PageEvent } from '@angular/material/paginator';\n\nexport interface Page extends PageEvent {\n sortKey: string;\n sortOrder: 'asc' | 'desc';\n}\n\nexport class Page {\n static from(event: Partial<Page> = {}): Page {\n return Object.assign(new Page(), {\n pageSize: 50,\n pageIndex: 0,\n length: 100,\n ...event\n });\n }\n\n get start(): number {\n return this.pageIndex * this.pageSize;\n }\n\n get end(): number {\n return Math.min((this.pageIndex + 1) * this.pageSize, this.length);\n }\n\n patch(obj: Partial<Page>): Page {\n return Page.from({...this, ...obj});\n }\n}\n","import { ActivatedRouteSnapshot, RouterStateSnapshot, Routes } from \"@angular/router\";\n\nexport function walkActivatedRouteSnapshot(\n snapshot: ActivatedRouteSnapshot,\n callback: (snapshot: ActivatedRouteSnapshot) => boolean,\n target: 'children' | 'parent' = 'children',\n): void {\n if(callback(snapshot)) return;\n if (target === 'children') {\n snapshot.children.forEach(child => walkActivatedRouteSnapshot(child, callback, target));\n }\n}\n\n\nexport function skippedResolver(outlet = 'primary') {\n\tlet skipped: boolean | undefined;\n\n\treturn (route: ActivatedRouteSnapshot, snapshot: RouterStateSnapshot) => {\n\t\tconst routes: ActivatedRouteSnapshot[] = [];\n\t\twalkActivatedRouteSnapshot(snapshot.root, snapshot => {\n\t\t\tif (snapshot.outlet === outlet) {\n\t\t\t\troutes.push(snapshot);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t});\n\n\t\tif (route === (routes as any).at(-1)) {\n\t\t\treturn skipped = false;\n\t\t}\n\n\t\treturn skipped ??= route !== (routes as any).at(-1);\n\t}\n}\n\nfunction resolveModule(m: any) {\n if (m.default) {\n return m.default;\n }\n return m;\n}\n\nexport function wrapRoutes(routes: Routes): Routes {\n return (routes ?? []).map(route => {\n if (route.loadChildren) {\n return {\n ...route,\n loadChildren: () => (route.loadChildren!() as Promise<Routes>).then(routes => {\n\t\t\t\t\treturn wrapRoutes(resolveModule(routes))\n\t\t\t\t}),\n resolve: {\n ...(route?.resolve || {}),\n skipped: skippedResolver(),\n }\n };\n }\n return {\n ...route,\n resolve: {\n ...(route?.resolve || {}),\n skipped: skippedResolver(),\n },\n };\n });\n}","import { inject, InjectionToken } from '@angular/core';\nimport dayjs from 'dayjs';\nimport { comma } from '../comma';\n\nexport const yenTransform = (value: number, _unit = ''): string => {\n return `${comma(value)} ${_unit}`;\n}\n\nexport type ExpressionTransformer = (value: string | number | dayjs.Dayjs | any, context?: any) => string;\nexport const defaultExpressionTransformer: ExpressionTransformer = input => {\n if (dayjs.isDayjs(input)) {\n return input.format('YY/MM/DD');\n } else if (Array.isArray(input)) {\n return `${input.length}個のアイテム`;\n } else if (typeof input === 'object') {\n return JSON.stringify(input);\n } else if (typeof input === 'string') {\n return input;\n } else if (typeof input === 'number') {\n return yenTransform(input);\n } else {\n return input;\n }\n}\n\nexport const EXPRESSION_TRANSFORMER = new InjectionToken<ExpressionTransformer>('[@ng-atomic/common] Expression Transformer', {\n providedIn: 'root',\n factory: () => defaultExpressionTransformer,\n});\n\nexport function provideExpressionTransformer(useFactory: () => ExpressionTransformer) {\n return { provide: EXPRESSION_TRANSFORMER, useFactory };\n}\n\nexport function injectParentExpressionTransformer() {\n return inject(EXPRESSION_TRANSFORMER, {skipSelf: true, optional: true}) ?? defaultExpressionTransformer\n}\n\nexport const smartExpTransformer: ExpressionTransformer = defaultExpressionTransformer;\n","const getAllProps = (obj: object, keys: string[] = Object.keys(obj)): string[] => {\n const proto = Object.getPrototypeOf(obj);\n keys = Object.getOwnPropertyNames(proto)\n .filter(v => v !== '__proto__')\n .filter(v => Object.getOwnPropertyDescriptor(proto, v)?.get instanceof Function)\n .concat(keys);\n\n return proto.constructor.name === 'Object' ? keys : getAllProps(proto, keys);\n}\n\nexport const toObject = (obj: object): object => getAllProps(obj).reduce((p, k) => ({...p, [k]: (obj as Record<string, unknown>)[k]}), {});\n","// 秒数をhh:mm:ssの形にフォーマットする\nexport function formatSeconds(seconds: number): string {\n const h = `${Math.floor(seconds / 3600)}`.padStart(2, '0');\n const m = `${Math.floor(seconds % 3600 / 60)}`.padStart(2, '0');\n const s = `${Math.floor(seconds % 3600 % 60)}`.padStart(2, '0');\n return `${h}:${m}:${s}`;\n}","export * from './comma';\nexport * from './compare-by-id';\nexport * from './date-utils';\nexport * from './diff';\nexport * from './form';\nexport * from './get';\nexport * from './inject';\nexport * from './mat-dayjs-date';\nexport * from './page';\nexport * from './router';\nexport * from './expression';\nexport * from './to-object';\n\nexport * from './time';\n// export * from './define-element';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_get","get"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-utils.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/utils/comma/comma.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/compare-by-id/compare-by-id.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/date-utils/date-utils.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/diff/diff.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/form/form.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/get/get.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-params.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-query.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-navigation.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/route-data.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/inject/resolver.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.adapter.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.formats.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-jp-providers.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/mat-dayjs-date/dayjs-date.module.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/page/page.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/router/router.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/expression/expression.transformer.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/to-object/to-object.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/time.ts","../../../../../packages/@ng-atomic/common/src/lib/utils/ng-atomic-common-utils.ts"],"sourcesContent":["export const comma = (n: number | null): string => n === null ? '0' : n.toLocaleString();\nexport const commaStr = (n: number, unit = '円') => n < 0 ? `-${comma(abs(n))}${unit}` : `${comma(n)}${unit}`;\nexport const abs = (n: number) => Math.abs(n);","export type HasId = { id: string };\nexport function compareByIdFactory(key: string) {\n return (a: any, b: any) => parseInt(a?.[key], 10) - parseInt(b?.[key], 10);\n}\nexport const compareById = compareByIdFactory('id');\n","import dayjs from 'dayjs';\n\nexport const removeComma = (str: string) => str.replace(/\\,/g, '');\n\nexport const DATE_FORMAT = 'YYYY-MM-DDTHH:mm:ss';\nconst DATE_REGEX = /^[0-9]{4}\\/(0[1-9]|1[0-2])\\/(0[1-9]|[12][0-9]|3[01])$/;\nconst DATETIME_REGEX = /^\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\+([+-][0-2]\\d:[0-5]\\d)$/;\nexport const isDateStr = (str: string | null): str is string => !!str && !!str.match(DATE_REGEX);\nexport const isDateTimeStr = (str: string | null): str is string => !!str && !!str.match(DATE_REGEX);\n\nconst ISO_REGEX = /\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\.\\d+([+-][0-2]\\d:[0-5]\\d|Z)/;\nexport const isIsoString = (str: string | null): str is string => !!str && !!str.match(ISO_REGEX);\n\n\nexport interface Timestamp {\n toDate: () => Date;\n}\n\nexport function timestampToDayjs(timestamp: Timestamp | null): dayjs.Dayjs | null {\n return timestamp ? dayjs(timestamp.toDate()) : null;\n}","import { SelectionModel } from \"@angular/cdk/collections\";\n\nexport function diff<T = any>(initial: SelectionModel<T>, current: SelectionModel<T>): {\n selectedIds: T[],\n unselectedIds: T[],\n} {\n return {\n selectedIds: current.selected.filter((id: T) => !initial.isSelected(id)),\n unselectedIds: initial.selected.filter((id: T) => !current.isSelected(id)),\n }\n}\n","import { Signal } from \"@angular/core\";\nimport { toSignal } from \"@angular/core/rxjs-interop\";\nimport { AbstractControl } from \"@angular/forms\";\nimport { Observable, distinctUntilChanged, map, merge, of, startWith } from \"rxjs\";\nimport { computedAsync } from \"ngxtension/computed-async\";\nimport { computeFake } from \"@ng-atomic/core\";\n\nexport function getValue$<T>(control: AbstractControl<T>): Observable<T> {\n return merge(of(control.value), control.valueChanges).pipe(\n distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)),\n );\n}\n\nexport function getValue<T>(control: AbstractControl<T>): Signal<T> {\n return toSignal(getValue$(control)) as Signal<T>;\n}\n\nexport function getRawValue$<T>(control: AbstractControl<T>): Observable<T> {\n return merge(of(control.getRawValue()), control.valueChanges.pipe(map(() => control.getRawValue())));\n}\n\nexport function getRawValue<T>(control: AbstractControl<T>): Signal<T> {\n return toSignal(getRawValue$(control)) as Signal<T>;\n}\n\nexport function computedRawValue<T>(controlFactory: () => AbstractControl<T>): Signal<T> {\n return computedAsync(() => controlFactory().valueChanges.pipe(\n startWith(null),\n map(() => controlFactory().getRawValue()),\n ), { initialValue: computeFake(controlFactory()).getRawValue() });\n}\n\nexport function getInvalid$<T>(control: AbstractControl<T>): Observable<boolean> {\n return control.statusChanges.pipe(\n startWith(null),\n map(() => control.invalid),\n );\n}\n\nexport function getInvalid<T>(form: AbstractControl<T>): Signal<boolean> {\n return toSignal(getInvalid$(form)) as Signal<boolean>;\n}\n\n","import { get as _get } from 'lodash-es';\n\n\nexport type PathKeys<T> = T extends object ? {\n [K in keyof T]-?: K extends string | number ?\n T[K] extends object ? [K] | [K, ...PathKeys<T[K]>] : [K]\n : never\n}[keyof T] : [];\n\n\nexport type NestedGetType<T, P extends any[]> = \n P extends [infer F, ...infer R]\n ? F extends keyof T\n ? NestedGetType<T[F], R>\n : never\n : T;\n\n\nexport function get<T, P extends PathKeys<T>>(obj: T, path: P): NestedGetType<T, P> {\n return _get(obj, path as any);\n}","import { Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, ParamMap, Params } from \"@angular/router\";\nimport { Observable, OperatorFunction, combineLatest, map, of, shareReplay } from \"rxjs\";\nimport { unflatten } from 'flat';\n\nexport function injectRouterParam$(key: string): Observable<string> {\n return inject(ActivatedRoute).paramMap.pipe(\n map((params) => params.get(key)) as OperatorFunction<ParamMap, string>,\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\n\nexport function injectRouterParam(key: string): Signal<string> {\n return toSignal(injectRouterParam$(key)) as Signal<string>;\n}\n\nexport function injectRouteParams$({\n merge = true,\n route = inject(ActivatedRoute),\n}: {\n merge?: boolean,\n route?: ActivatedRoute,\n} = {}): Observable<Params> {\n const parentParams = (merge && route.parent) ? injectRouteParams$({merge, route: route.parent}) : of(new Map<string, string>());\n return combineLatest({\n parentParams,\n params: route.params\n }).pipe(\n map(({parentParams, params}) => ({\n ...parentParams,\n ...params,\n })),\n shareReplay(1),\n takeUntilDestroyed(),\n )\n}\n\nexport function injectUnflattenRouteParams$({\n merge = true,\n route = inject(ActivatedRoute),\n}: {\n merge?: boolean,\n route?: ActivatedRoute,\n} = {}) {\n return injectRouteParams$({merge, route}).pipe(\n map((params) => (unflatten(params) as any)),\n );\n}\n\nexport function injectUnflattenRouteParam$<T = any>(key?: string): Observable<T> {\n return injectUnflattenRouteParams$().pipe(\n map((params) => key ? params[key]: params),\n );\n}\n\nexport function injectUnflattenRouteParam<T = any>(key?: string): Signal<T> {\n return toSignal(injectUnflattenRouteParam$(key)) as Signal<T>;\n}\n\nexport function injectUnflattenRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<any> {\n return toSignal(injectUnflattenRouteParams$({merge}), {initialValue: {}});\n}\n\nexport function injectRouteParamMap$({\n merge = true,\n}: {\n merge?: boolean,\n} = {}) {\n return injectRouteParams$({merge}).pipe(\n map((params) => new Map(Object.entries(params)) as never as ParamMap),\n );\n}\n\nexport function injectRouteParamMap({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<ParamMap> {\n return toSignal(injectRouteParamMap$({merge})) as Signal<ParamMap>;\n}\n\nexport function injectRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<Record<string, string>> {\n return toSignal(injectRouteParams$({merge})) as Signal<Record<string, string>>;\n}\n\nexport function injectRouteParam$(key: string, {\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Observable<string> {\n return injectRouteParamMap$({merge}).pipe(\n map((params) => params.get(key)) as OperatorFunction<ParamMap, string>,\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteParam(key: string, injector?: import(\"@angular/core\").Injector): Signal<string> {\n return toSignal(injectRouteParam$(key), {injector}) as Signal<string>;\n}\n\nexport function injectRouteSkip$(): Observable<boolean> {\n return injectRouteParam$('skip', {merge: false}).pipe(\n map((skip) => skip === 'true'),\n shareReplay(1),\n takeUntilDestroyed(),\n )\n}\n\nexport function injectRouteSkip(): Signal<boolean> {\n return toSignal(injectRouteSkip$()) as Signal<boolean>;\n}\n","import { Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Observable, map, shareReplay } from \"rxjs\";\n\nexport function injectRouteQueryParam$<T extends string = string>(key: string): Observable<T> {\n return inject(ActivatedRoute).queryParamMap.pipe(\n map((params) => params.get(key) as T),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteQueryParam(key: string): Signal<string> {\n return toSignal(injectRouteQueryParam$(key)) as Signal<string>;\n}\n\nexport function injectRouterQueryParam$<T extends string = string>(key: string): Observable<T> {\n return inject(ActivatedRoute).queryParamMap.pipe(\n map((params) => params.get(key) as T),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouterQueryParam<T extends string = string>(key: string): Signal<T> {\n return toSignal(injectRouterQueryParam$(key)) as Signal<T>;\n}\n","import { Signal, computed, inject } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from \"@angular/router\";\nimport { Observable, filter, map, of, shareReplay, startWith, switchMap } from \"rxjs\";\n\nexport function injectRouteNavigated$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n filter(event => event instanceof NavigationEnd),\n map(() => route),\n );\n}\n\nexport function injectRouteNavigated() {\n return toSignal(injectRouteNavigated$());\n}\n\nexport function injectPrimaryPaths$() {\n return injectRouteNavigated$().pipe(\n map(route => {\n const paths: (string | null)[] = [];\n let current: ActivatedRoute | null = route.root;\n while (current) {\n paths.push(current?.routeConfig?.path ?? null);\n current = current.firstChild;\n }\n return paths.filter(Boolean);\n }),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectPrimaryPaths() {\n return toSignal(injectPrimaryPaths$());\n}\n\nexport function injectChildRouteParam$(key: string): Observable<string> {\n return injectRouteNavigated$().pipe(\n switchMap((route) => route?.firstChild ? route.firstChild.paramMap : of(new Map<string, string>())),\n map((params) => params.get(key) as string),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRouteParam(key: string): Signal<string> {\n return toSignal(injectChildRouteParam$(key)) as Signal<string>;\n}\n\nexport function injectChildRoute$() {\n return injectRouteNavigated$().pipe(\n map((route) => (route?.firstChild?.firstChild ?? null) as ActivatedRoute),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRoute(): Signal<ActivatedRoute> {\n return toSignal(injectChildRoute$()) as Signal<ActivatedRoute>;\n}\n\nexport function injectHasNext$() {\n const router = inject(Router);\n const route = inject(ActivatedRoute);\n return router.events.pipe(\n startWith(null),\n map(() => !!route?.firstChild?.firstChild),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectHasNext() {\n return toSignal(injectHasNext$());\n}\n\nexport function injectNavigationExtras(): Signal<NavigationExtras> {\n const relativeTo = inject(ActivatedRoute);\n const hasNext = injectHasNext();\n return computed(() => ({ relativeTo, replaceUrl: hasNext() }));\n}\n","import { Injector, Signal, computed, inject } from \"@angular/core\";\nimport { toSignal } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { Observable, map } from \"rxjs\";\nimport { get } from \"lodash-es\";\n\nexport function injectRouteData$<T>(path: string): Observable<T> {\n return inject(ActivatedRoute).data.pipe(map(data => get(data, path) as T));\n}\n\nexport function injectRouteData<T>(key: string): Signal<T> {\n return toSignal(injectRouteData$<T>(key)) as Signal<T>;\n}\n\nexport function injectRouteDataSnapshot<T>(key: string): Signal<T> {\n const route = inject(ActivatedRoute);\n return computed(() => route.snapshot.data[key] as T);\n}\n\nexport function injectActivatedComponents(injector: Injector = inject(Injector)): any[] {\n const components = [];\n let route = injector.get(ActivatedRoute, {optional: true}) ?? null;\n while(route) {\n if (route.component) components.push(route.component);\n route = route.parent;\n }\n return components;\n}\n","import { Injectable } from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { Observable, combineLatest, map, of, shareReplay } from \"rxjs\";\nimport { BaseResolver, Type } from \"@nx-ddd/common/domain\";\n\nexport interface Resolver<T> {\n resolve(entry: T): T;\n resolveMany(entities: T[]): T[];\n}\n\nexport function provideResolver(\n Entity: Type<{id: string}>,\n ResolverType: new (params: Record<string, Observable<any>>) => Resolver<any>,\n) {\n return {\n provide: Entity,\n deps: [],\n multi: true,\n };\n}\n\n@Injectable({providedIn: 'root'})\nexport class ResolverManager {\n protected map = new Map<string, Resolver<any>>();\n\n get(Entity: Type<{id: string}>) {\n if (!this.map.has(Entity.name)) {\n void 0;\n }\n return this.map.get(Entity.name);\n }\n}\n\nexport function injectResolver$<T>(\n ResolverType: Type<BaseResolver<T>>,\n params: Record<string, Observable<any>>,\n): Observable<BaseResolver<T>> {\n const params$ = Object.keys(params).length > 0 ? combineLatest(params) : of({});\n return params$.pipe(\n map((params) => new ResolverType(params)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function getResolver<T>(\n ResolverType: new (params: Record<string, any>) => Resolver<T>,\n params: Record<string, any>,\n): Resolver<T> {\n return new ResolverType(params);\n}\n","\nimport { Optional, Inject, InjectionToken } from '@angular/core';\nimport { DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';\nimport dayjs from 'dayjs';\nimport { Dayjs } from 'dayjs';\nimport utc from 'dayjs/plugin/utc';\nimport localeData from 'dayjs/plugin/localeData';\nimport LocalizedFormat from 'dayjs/plugin/localizedFormat';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\n\n\nexport interface DayJsDateAdapterOptions {\n \n useUtc?: boolean;\n}\n\n\nexport const MAT_DAYJS_DATE_ADAPTER_OPTIONS = new InjectionToken<DayJsDateAdapterOptions>(\n 'MAT_DAYJS_DATE_ADAPTER_OPTIONS', {\n providedIn: 'root',\n factory: MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY\n});\n\nexport function MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY(): DayJsDateAdapterOptions {\n return {\n useUtc: false\n };\n}\n\n\nfunction range<T>(length: number, valueFunction: (index: number) => T): T[] {\n const valuesArray = Array(length);\n for (let i = 0; i < length; i++) {\n valuesArray[i] = valueFunction(i);\n }\n return valuesArray;\n}\n\n\nexport class DayjsDateAdapter extends DateAdapter<Dayjs> {\n private localeData!: {\n firstDayOfWeek: number,\n longMonths: string[],\n shortMonths: string[],\n dates: string[],\n longDaysOfWeek: string[],\n shortDaysOfWeek: string[],\n narrowDaysOfWeek: string[]\n };\n\n constructor(\n @Optional() @Inject(MAT_DATE_LOCALE) public dateLocale: string,\n @Optional() @Inject(MAT_DAYJS_DATE_ADAPTER_OPTIONS) private options?: DayJsDateAdapterOptions\n ) {\n super();\n this.initializeParser(dateLocale);\n }\n\n override setLocale(locale: string) {\n super.setLocale(locale);\n\n const dayJsLocaleData = this.dayJs().localeData();\n this.localeData = {\n firstDayOfWeek: dayJsLocaleData.firstDayOfWeek(),\n longMonths: dayJsLocaleData.months(),\n shortMonths: dayJsLocaleData.monthsShort(),\n dates: range(31, (i) => this.createDate(2017, 0, i + 1).format('D')),\n longDaysOfWeek: range(7, (i) => this.dayJs().set('day', i).format('dddd')),\n shortDaysOfWeek: dayJsLocaleData.weekdaysShort(),\n narrowDaysOfWeek: dayJsLocaleData.weekdaysMin(),\n };\n }\n\n getYear(date: Dayjs): number {\n return this.dayJs(date).year();\n }\n\n getMonth(date: Dayjs): number {\n return this.dayJs(date).month();\n }\n\n getDate(date: Dayjs): number {\n return this.dayJs(date).date();\n }\n\n getDayOfWeek(date: Dayjs): number {\n return this.dayJs(date).day();\n }\n\n getMonthNames(style: 'long' | 'short' | 'narrow'): string[] {\n return style === 'long' ? this.localeData.longMonths : this.localeData.shortMonths;\n }\n\n getDateNames(): string[] {\n return this.localeData.dates;\n }\n\n getDayOfWeekNames(style: 'long' | 'short' | 'narrow'): string[] {\n if (style === 'long') {\n return this.localeData.longDaysOfWeek;\n }\n if (style === 'short') {\n return this.localeData.shortDaysOfWeek;\n }\n return this.localeData.narrowDaysOfWeek;\n }\n\n getYearName(date: Dayjs): string {\n return this.dayJs(date).format('YYYY');\n }\n\n getFirstDayOfWeek(): number {\n return this.localeData.firstDayOfWeek;\n }\n\n getNumDaysInMonth(date: Dayjs): number {\n return this.dayJs(date).daysInMonth();\n }\n\n clone(date: Dayjs): Dayjs {\n return date.clone();\n }\n\n createDate(year: number, month: number, date: number): Dayjs {\n const returnDayjs = this.dayJs()\n .set('year', year)\n .set('month', month)\n .set('date', date);\n return returnDayjs;\n }\n\n today(): Dayjs {\n return this.dayJs();\n }\n\n parse(value: any, parseFormat: string): Dayjs | null {\n if (value && typeof value === 'string') {\n return this.dayJs(value, dayjs().localeData().longDateFormat(parseFormat), this.locale);\n }\n return value ? this.dayJs(value).locale(this.locale) : null;\n }\n\n format(date: Dayjs, displayFormat: string): string {\n if (!this.isValid(date)) {\n throw Error('DayjsDateAdapter: Cannot format invalid date.');\n }\n return date.locale(this.locale).format(displayFormat);\n }\n\n addCalendarYears(date: Dayjs, years: number): Dayjs {\n return date.add(years, 'year');\n }\n\n addCalendarMonths(date: Dayjs, months: number): Dayjs {\n return date.add(months, 'month');\n }\n\n addCalendarDays(date: Dayjs, days: number): Dayjs {\n return date.add(days, 'day');\n }\n\n toIso8601(date: Dayjs): string {\n return date.toISOString();\n }\n\n \n override deserialize(value: any): Dayjs | null {\n let date;\n if (value instanceof Date) {\n date = this.dayJs(value);\n } else if (this.isDateInstance(value)) {\n \n return this.clone(value);\n }\n if (typeof value === 'string') {\n if (!value) {\n return null;\n }\n date = this.dayJs(value).toISOString();\n }\n if (date && this.isValid(date as Dayjs)) {\n return this.dayJs(date); \n }\n return super.deserialize(value);\n }\n\n isDateInstance(obj: any): boolean {\n return dayjs.isDayjs(obj);\n }\n\n isValid(date: Dayjs): boolean {\n return this.dayJs(date).isValid();\n }\n\n invalid(): Dayjs {\n return this.dayJs(null);\n }\n\n private dayJs(input?: any, format?: string, locale?: string): Dayjs {\n if (!this.shouldUseUtc) {\n return dayjs(input, { format, locale }, locale);\n }\n return dayjs(input, { format, locale, utc: this.shouldUseUtc }, locale).utc();\n }\n\n private get shouldUseUtc(): boolean {\n const { useUtc }: DayJsDateAdapterOptions = this.options || {};\n return !!useUtc;\n }\n\n private initializeParser(dateLocale: string) {\n if (this.shouldUseUtc) {\n dayjs.extend(utc);\n }\n\n dayjs.extend(LocalizedFormat);\n dayjs.extend(customParseFormat);\n dayjs.extend(localeData);\n\n this.setLocale(dateLocale);\n }\n}","import { MatDateFormats } from '@angular/material/core';\n\n\nexport const MAT_DAYJS_DATE_FORMATS: MatDateFormats = {\n parse: {\n dateInput: 'MM/DD/YYYY',\n },\n display: {\n dateInput: 'MM/DD/YYYY',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n }\n};","import { MatDateFormats, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport dayjs from 'dayjs';\nimport 'dayjs/locale/ja'\ndayjs.locale('ja');\n\nexport const MAT_DAYJS_DATE_FORMATS_FOR_JP: MatDateFormats = {\n parse: {\n dateInput: 'YYYY/MM/DD',\n },\n display: {\n dateInput: 'YYYY/MM/DD',\n monthYearLabel: 'MMM YYYY',\n dateA11yLabel: 'LL',\n monthYearA11yLabel: 'MMMM YYYY',\n }\n};\n\nexport const MAT_DAYJS_JP_PROVIDERS = [\n { provide: MAT_DATE_LOCALE, useValue: 'ja' },\n { provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS_FOR_JP },\n];\n","import { NgModule, Provider } from '@angular/core';\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\nimport { DayjsDateAdapter, MAT_DAYJS_DATE_ADAPTER_OPTIONS } from './dayjs-date.adapter';\nimport { MAT_DAYJS_DATE_FORMATS } from './dayjs-date.formats';\n\n@NgModule({\n providers: [\n provideDayjsDateAdapter(),\n ],\n})\nexport class DayjsDateModule { }\n\nexport function provideDayjsDateAdapter(): Provider[] {\n return [\n {\n provide: DateAdapter,\n useClass: DayjsDateAdapter,\n deps: [\n MAT_DATE_LOCALE, \n MAT_DAYJS_DATE_ADAPTER_OPTIONS,\n ]\n },\n {\n provide: MAT_DATE_FORMATS,\n useValue: MAT_DAYJS_DATE_FORMATS,\n }, \n ]\n}\n","import { PageEvent } from '@angular/material/paginator';\n\nexport interface Page extends PageEvent {\n sortKey: string;\n sortOrder: 'asc' | 'desc';\n}\n\nexport class Page {\n static from(event: Partial<Page> = {}): Page {\n return Object.assign(new Page(), {\n pageSize: 50,\n pageIndex: 0,\n length: 100,\n ...event\n });\n }\n\n get start(): number {\n return this.pageIndex * this.pageSize;\n }\n\n get end(): number {\n return Math.min((this.pageIndex + 1) * this.pageSize, this.length);\n }\n\n patch(obj: Partial<Page>): Page {\n return Page.from({...this, ...obj});\n }\n}\n","import { ActivatedRouteSnapshot, RouterStateSnapshot, Routes } from \"@angular/router\";\n\nexport function walkActivatedRouteSnapshot(\n snapshot: ActivatedRouteSnapshot,\n callback: (snapshot: ActivatedRouteSnapshot) => boolean,\n target: 'children' | 'parent' = 'children',\n): void {\n if(callback(snapshot)) return;\n if (target === 'children') {\n snapshot.children.forEach(child => walkActivatedRouteSnapshot(child, callback, target));\n }\n}\n\n\nexport function skippedResolver(outlet = 'primary') {\n\tlet skipped: boolean | undefined;\n\n\treturn (route: ActivatedRouteSnapshot, snapshot: RouterStateSnapshot) => {\n\t\tconst routes: ActivatedRouteSnapshot[] = [];\n\t\twalkActivatedRouteSnapshot(snapshot.root, snapshot => {\n\t\t\tif (snapshot.outlet === outlet) {\n\t\t\t\troutes.push(snapshot);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t});\n\n\t\tif (route === (routes as any).at(-1)) {\n\t\t\treturn skipped = false;\n\t\t}\n\n\t\treturn skipped ??= route !== (routes as any).at(-1);\n\t}\n}\n\nfunction resolveModule(m: any) {\n if (m.default) {\n return m.default;\n }\n return m;\n}\n\nexport function wrapRoutes(routes: Routes): Routes {\n return (routes ?? []).map(route => {\n if (route.loadChildren) {\n return {\n ...route,\n loadChildren: () => (route.loadChildren!() as Promise<Routes>).then(routes => {\n\t\t\t\t\treturn wrapRoutes(resolveModule(routes))\n\t\t\t\t}),\n resolve: {\n ...(route?.resolve || {}),\n skipped: skippedResolver(),\n }\n };\n }\n return {\n ...route,\n resolve: {\n ...(route?.resolve || {}),\n skipped: skippedResolver(),\n },\n };\n });\n}","import { inject, InjectionToken } from '@angular/core';\nimport dayjs from 'dayjs';\nimport { comma } from '../comma';\n\nexport const yenTransform = (value: number, _unit = ''): string => {\n return `${comma(value)} ${_unit}`;\n}\n\nexport type ExpressionTransformer = (value: string | number | dayjs.Dayjs | any, context?: any) => string;\nexport const defaultExpressionTransformer: ExpressionTransformer = input => {\n if (dayjs.isDayjs(input)) {\n return input.format('YY/MM/DD');\n } else if (Array.isArray(input)) {\n return `${input.length}個のアイテム`;\n } else if (typeof input === 'object') {\n return JSON.stringify(input);\n } else if (typeof input === 'string') {\n return input;\n } else if (typeof input === 'number') {\n return yenTransform(input);\n } else {\n return input;\n }\n}\n\nexport const EXPRESSION_TRANSFORMER = new InjectionToken<ExpressionTransformer>('[@ng-atomic/common] Expression Transformer', {\n providedIn: 'root',\n factory: () => defaultExpressionTransformer,\n});\n\nexport function provideExpressionTransformer(useFactory: () => ExpressionTransformer) {\n return { provide: EXPRESSION_TRANSFORMER, useFactory };\n}\n\nexport function injectParentExpressionTransformer() {\n return inject(EXPRESSION_TRANSFORMER, {skipSelf: true, optional: true}) ?? defaultExpressionTransformer\n}\n\nexport const smartExpTransformer: ExpressionTransformer = defaultExpressionTransformer;\n","const getAllProps = (obj: object, keys: string[] = Object.keys(obj)): string[] => {\n const proto = Object.getPrototypeOf(obj);\n keys = Object.getOwnPropertyNames(proto)\n .filter(v => v !== '__proto__')\n .filter(v => Object.getOwnPropertyDescriptor(proto, v)?.get instanceof Function)\n .concat(keys);\n\n return proto.constructor.name === 'Object' ? keys : getAllProps(proto, keys);\n}\n\nexport const toObject = (obj: object): object => getAllProps(obj).reduce((p, k) => ({...p, [k]: (obj as Record<string, unknown>)[k]}), {});\n","\nexport function formatSeconds(seconds: number): string {\n const h = `${Math.floor(seconds / 3600)}`.padStart(2, '0');\n const m = `${Math.floor(seconds % 3600 / 60)}`.padStart(2, '0');\n const s = `${Math.floor(seconds % 3600 % 60)}`.padStart(2, '0');\n return `${h}:${m}:${s}`;\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_get","get"],"mappings":";;;;;;;;;;;;;;;;;;MAAa,KAAK,GAAG,CAAC,CAAgB,KAAa,CAAC,KAAK,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,cAAc;AAC/E,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAA,CAAA,EAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA,EAAG,IAAI,CAAA,CAAE,GAAG,CAAA,EAAG,KAAK,CAAC,CAAC,CAAC,CAAA,EAAG,IAAI;AACnG,MAAM,GAAG,GAAG,CAAC,CAAS,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;;ACDtC,SAAU,kBAAkB,CAAC,GAAW,EAAA;AAC5C,IAAA,OAAO,CAAC,CAAM,EAAE,CAAM,KAAK,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC;AAC5E;MACa,WAAW,GAAG,kBAAkB,CAAC,IAAI;;ACF3C,MAAM,WAAW,GAAG,CAAC,GAAW,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE;AAE1D,MAAM,WAAW,GAAG;AAC3B,MAAM,UAAU,GAAG,uDAAuD;AAC1E,MAAM,cAAc,GAAG,uEAAuE;MACjF,SAAS,GAAG,CAAC,GAAkB,KAAoB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU;MAClF,aAAa,GAAG,CAAC,GAAkB,KAAoB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU;AAEnG,MAAM,SAAS,GAAG,0EAA0E;MAC/E,WAAW,GAAG,CAAC,GAAkB,KAAoB,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS;AAO1F,SAAU,gBAAgB,CAAC,SAA2B,EAAA;AAC1D,IAAA,OAAO,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI;AACrD;;AClBM,SAAU,IAAI,CAAU,OAA0B,EAAE,OAA0B,EAAA;IAIlF,OAAO;AACL,QAAA,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAK,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACxE,QAAA,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAK,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;KAC3E;AACH;;ACHM,SAAU,SAAS,CAAI,OAA2B,EAAA;AACtD,IAAA,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CACxD,oBAAoB,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAChF;AACH;AAEM,SAAU,QAAQ,CAAI,OAA2B,EAAA;AACrD,IAAA,OAAO,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAc;AAClD;AAEM,SAAU,YAAY,CAAI,OAA2B,EAAA;AACzD,IAAA,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACtG;AAEM,SAAU,WAAW,CAAI,OAA2B,EAAA;AACxD,IAAA,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAc;AACrD;AAEM,SAAU,gBAAgB,CAAI,cAAwC,EAAA;AAC1E,IAAA,OAAO,aAAa,CAAC,MAAM,cAAc,EAAE,CAAC,YAAY,CAAC,IAAI,CAC3D,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,cAAc,EAAE,CAAC,WAAW,EAAE,CAAC,CAC1C,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;AACnE;AAEM,SAAU,WAAW,CAAI,OAA2B,EAAA;IACxD,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,CAC/B,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,CAC3B;AACH;AAEM,SAAU,UAAU,CAAI,IAAwB,EAAA;AACpD,IAAA,OAAO,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAoB;AACvD;;ACvBM,SAAU,GAAG,CAA2B,GAAM,EAAE,IAAO,EAAA;AAC3D,IAAA,OAAOA,KAAI,CAAC,GAAG,EAAE,IAAW,CAAC;AAC/B;;ACdM,SAAU,kBAAkB,CAAC,GAAW,EAAA;AAC5C,IAAA,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CACzC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAuC,EACtE,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAGM,SAAU,iBAAiB,CAAC,GAAW,EAAA;AAC3C,IAAA,OAAO,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAmB;AAC5D;AAEM,SAAU,kBAAkB,CAAC,EACjC,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,MAI5B,EAAE,EAAA;AACJ,IAAA,MAAM,YAAY,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,kBAAkB,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAC,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAkB,CAAC;AAC/H,IAAA,OAAO,aAAa,CAAC;QACnB,YAAY;QACZ,MAAM,EAAE,KAAK,CAAC;AACf,KAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,EAAC,YAAY,EAAE,MAAM,EAAC,MAAM;AAC/B,QAAA,GAAG,YAAY;AACf,QAAA,GAAG,MAAM;KACV,CAAC,CAAC,EACH,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,2BAA2B,CAAC,EAC1C,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,MAI5B,EAAE,EAAA;IACJ,OAAO,kBAAkB,CAAC,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,IAAI,CAC5C,GAAG,CAAC,CAAC,MAAM,KAAM,SAAS,CAAC,MAAM,CAAS,CAAC,CAC5C;AACH;AAEM,SAAU,0BAA0B,CAAU,GAAY,EAAA;IAC9D,OAAO,2BAA2B,EAAE,CAAC,IAAI,CACvC,GAAG,CAAC,CAAC,MAAM,KAAK,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,GAAE,MAAM,CAAC,CAC3C;AACH;AAEM,SAAU,yBAAyB,CAAU,GAAY,EAAA;AAC7D,IAAA,OAAO,QAAQ,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAc;AAC/D;AAEM,SAAU,0BAA0B,CAAC,EACzC,KAAK,GAAG,IAAI,MAGV,EAAE,EAAA;AACJ,IAAA,OAAO,QAAQ,CAAC,2BAA2B,CAAC,EAAC,KAAK,EAAC,CAAC,EAAE,EAAC,YAAY,EAAE,EAAE,EAAC,CAAC;AAC3E;AAEM,SAAU,oBAAoB,CAAC,EACnC,KAAK,GAAG,IAAI,MAGV,EAAE,EAAA;AACJ,IAAA,OAAO,kBAAkB,CAAC,EAAC,KAAK,EAAC,CAAC,CAAC,IAAI,CACrC,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAsB,CAAC,CACtE;AACH;AAEM,SAAU,mBAAmB,CAAC,EAClC,KAAK,GAAG,IAAI,MAGV,EAAE,EAAA;IACJ,OAAO,QAAQ,CAAC,oBAAoB,CAAC,EAAC,KAAK,EAAC,CAAC,CAAqB;AACpE;AAEM,SAAU,iBAAiB,CAAC,EAChC,KAAK,GAAG,IAAI,MAGV,EAAE,EAAA;IACJ,OAAO,QAAQ,CAAC,kBAAkB,CAAC,EAAC,KAAK,EAAC,CAAC,CAAmC;AAChF;AAEM,SAAU,iBAAiB,CAAC,GAAW,EAAE,EAC7C,KAAK,GAAG,IAAI,GAAA,GAGV,EAAE,EAAA;IACJ,OAAO,oBAAoB,CAAC,EAAC,KAAK,EAAC,CAAC,CAAC,IAAI,CACvC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAuC,EACtE,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,gBAAgB,CAAC,GAAW,EAAE,QAA2C,EAAA;IACvF,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAC,QAAQ,EAAC,CAAmB;AACvE;SAEgB,gBAAgB,GAAA;AAC9B,IAAA,OAAO,iBAAiB,CAAC,MAAM,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,IAAI,CACnD,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,KAAK,MAAM,CAAC,EAC9B,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;SAEgB,eAAe,GAAA;AAC7B,IAAA,OAAO,QAAQ,CAAC,gBAAgB,EAAE,CAAoB;AACxD;;ACpHM,SAAU,sBAAsB,CAA4B,GAAW,EAAA;AAC3E,IAAA,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,IAAI,CAC9C,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC,EACrC,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,qBAAqB,CAAC,GAAW,EAAA;AAC/C,IAAA,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAmB;AAChE;AAEM,SAAU,uBAAuB,CAA4B,GAAW,EAAA;AAC5E,IAAA,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,aAAa,CAAC,IAAI,CAC9C,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAM,CAAC,EACrC,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,sBAAsB,CAA4B,GAAW,EAAA;AAC3E,IAAA,OAAO,QAAQ,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAc;AAC5D;;SCtBgB,qBAAqB,GAAA;AACnC,IAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7B,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;IACpC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CACvB,MAAM,CAAC,KAAK,IAAI,KAAK,YAAY,aAAa,CAAC,EAC/C,GAAG,CAAC,MAAM,KAAK,CAAC,CACjB;AACH;SAEgB,oBAAoB,GAAA;AAClC,IAAA,OAAO,QAAQ,CAAC,qBAAqB,EAAE,CAAC;AAC1C;SAEgB,mBAAmB,GAAA;IACjC,OAAO,qBAAqB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,KAAK,IAAG;QACV,MAAM,KAAK,GAAsB,EAAE;AACnC,QAAA,IAAI,OAAO,GAA0B,KAAK,CAAC,IAAI;QAC/C,OAAO,OAAO,EAAE;YACd,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,IAAI,IAAI,CAAC;AAC9C,YAAA,OAAO,GAAG,OAAO,CAAC,UAAU;QAC9B;AACA,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9B,CAAC,CAAC,EACF,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;SAEgB,kBAAkB,GAAA;AAChC,IAAA,OAAO,QAAQ,CAAC,mBAAmB,EAAE,CAAC;AACxC;AAEM,SAAU,sBAAsB,CAAC,GAAW,EAAA;IAChD,OAAO,qBAAqB,EAAE,CAAC,IAAI,CACjC,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,GAAG,EAAE,CAAC,IAAI,GAAG,EAAkB,CAAC,CAAC,EACnG,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAW,CAAC,EAC1C,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,qBAAqB,CAAC,GAAW,EAAA;AAC/C,IAAA,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAmB;AAChE;SAEgB,iBAAiB,GAAA;AAC/B,IAAA,OAAO,qBAAqB,EAAE,CAAC,IAAI,CACjC,GAAG,CAAC,CAAC,KAAK,MAAM,KAAK,EAAE,UAAU,EAAE,UAAU,IAAI,IAAI,CAAmB,CAAC,EACzE,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;SAEgB,gBAAgB,GAAA;AAC9B,IAAA,OAAO,QAAQ,CAAC,iBAAiB,EAAE,CAA2B;AAChE;SAEgB,cAAc,GAAA;AAC5B,IAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7B,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AACpC,IAAA,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CACvB,SAAS,CAAC,IAAI,CAAC,EACf,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,EAC1C,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;SAEgB,aAAa,GAAA;AAC3B,IAAA,OAAO,QAAQ,CAAC,cAAc,EAAE,CAAC;AACnC;SAEgB,sBAAsB,GAAA;AACpC,IAAA,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,CAAC;AACzC,IAAA,MAAM,OAAO,GAAG,aAAa,EAAE;AAC/B,IAAA,OAAO,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAChE;;AC5EM,SAAU,gBAAgB,CAAI,IAAY,EAAA;IAC9C,OAAO,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAIC,KAAG,CAAC,IAAI,EAAE,IAAI,CAAM,CAAC,CAAC;AAC5E;AAEM,SAAU,eAAe,CAAI,GAAW,EAAA;AAC5C,IAAA,OAAO,QAAQ,CAAC,gBAAgB,CAAI,GAAG,CAAC,CAAc;AACxD;AAEM,SAAU,uBAAuB,CAAI,GAAW,EAAA;AACpD,IAAA,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AACpC,IAAA,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAM,CAAC;AACtD;SAEgB,yBAAyB,CAAC,WAAqB,MAAM,CAAC,QAAQ,CAAC,EAAA;IAC7E,MAAM,UAAU,GAAG,EAAE;AACrB,IAAA,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,IAAI,IAAI;IAClE,OAAM,KAAK,EAAE;QACX,IAAI,KAAK,CAAC,SAAS;AAAE,YAAA,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;AACrD,QAAA,KAAK,GAAG,KAAK,CAAC,MAAM;IACtB;AACA,IAAA,OAAO,UAAU;AACnB;;ACjBM,SAAU,eAAe,CAC7B,MAA0B,EAC1B,YAA4E,EAAA;IAE5E,OAAO;AACL,QAAA,OAAO,EAAE,MAAM;AACf,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,KAAK,EAAE,IAAI;KACZ;AACH;MAGa,eAAe,CAAA;AAD5B,IAAA,WAAA,GAAA;AAEY,QAAA,IAAA,CAAA,GAAG,GAAG,IAAI,GAAG,EAAyB;AAQjD,IAAA;AANC,IAAA,GAAG,CAAC,MAA0B,EAAA;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;AAC9B,YAAA,KAAK,CAAC;QACR;QACA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAClC;8GARW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cADH,MAAM,EAAA,CAAA,CAAA;;2FAClB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;AAY1B,SAAU,eAAe,CAC7B,YAAmC,EACnC,MAAuC,EAAA;IAEvC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IAC/E,OAAO,OAAO,CAAC,IAAI,CACjB,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,EACzC,WAAW,CAAC,CAAC,CAAC,EACd,kBAAkB,EAAE,CACrB;AACH;AAEM,SAAU,WAAW,CACzB,YAA8D,EAC9D,MAA2B,EAAA;AAE3B,IAAA,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC;AACjC;;MCjCa,8BAA8B,GAAG,IAAI,cAAc,CAC9D,gCAAgC,EAAE;AAClC,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE;AACV,CAAA;SAEe,sCAAsC,GAAA;IACpD,OAAO;AACL,QAAA,MAAM,EAAE;KACT;AACH;AAGA,SAAS,KAAK,CAAI,MAAc,EAAE,aAAmC,EAAA;AACnE,IAAA,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;AACjC,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/B,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC;IACnC;AACA,IAAA,OAAO,WAAW;AACpB;AAGA,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,WAAkB,CAAA;IAWtD,WAAA,CAC8C,UAAkB,EACF,OAAiC,EAAA;AAE7F,QAAA,KAAK,EAAE;QAHqC,IAAA,CAAA,UAAU,GAAV,UAAU;QACM,IAAA,CAAA,OAAO,GAAP,OAAO;AAGnE,QAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;IACnC;AAES,IAAA,SAAS,CAAC,MAAc,EAAA;AAC/B,QAAA,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAEvB,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE;QACjD,IAAI,CAAC,UAAU,GAAG;AAChB,YAAA,cAAc,EAAE,eAAe,CAAC,cAAc,EAAE;AAChD,YAAA,UAAU,EAAE,eAAe,CAAC,MAAM,EAAE;AACpC,YAAA,WAAW,EAAE,eAAe,CAAC,WAAW,EAAE;YAC1C,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACpE,cAAc,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC1E,YAAA,eAAe,EAAE,eAAe,CAAC,aAAa,EAAE;AAChD,YAAA,gBAAgB,EAAE,eAAe,CAAC,WAAW,EAAE;SAChD;IACH;AAEA,IAAA,OAAO,CAAC,IAAW,EAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;IAChC;AAEA,IAAA,QAAQ,CAAC,IAAW,EAAA;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE;IACjC;AAEA,IAAA,OAAO,CAAC,IAAW,EAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE;IAChC;AAEA,IAAA,YAAY,CAAC,IAAW,EAAA;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE;IAC/B;AAEA,IAAA,aAAa,CAAC,KAAkC,EAAA;AAC9C,QAAA,OAAO,KAAK,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW;IACpF;IAEA,YAAY,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK;IAC9B;AAEA,IAAA,iBAAiB,CAAC,KAAkC,EAAA;AAClD,QAAA,IAAI,KAAK,KAAK,MAAM,EAAE;AACpB,YAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc;QACvC;AACA,QAAA,IAAI,KAAK,KAAK,OAAO,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe;QACxC;AACA,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB;IACzC;AAEA,IAAA,WAAW,CAAC,IAAW,EAAA;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IACxC;IAEA,iBAAiB,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc;IACvC;AAEA,IAAA,iBAAiB,CAAC,IAAW,EAAA;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;IACvC;AAEA,IAAA,KAAK,CAAC,IAAW,EAAA;AACf,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE;IACrB;AAEA,IAAA,UAAU,CAAC,IAAY,EAAE,KAAa,EAAE,IAAY,EAAA;AAClD,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK;AAC3B,aAAA,GAAG,CAAC,MAAM,EAAE,IAAI;AAChB,aAAA,GAAG,CAAC,OAAO,EAAE,KAAK;AAClB,aAAA,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC;AACpB,QAAA,OAAO,WAAW;IACpB;IAEA,KAAK,GAAA;AACH,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE;IACrB;IAEA,KAAK,CAAC,KAAU,EAAE,WAAmB,EAAA;AACnC,QAAA,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YACtC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,UAAU,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;QACzF;QACA,OAAO,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI;IAC7D;IAEA,MAAM,CAAC,IAAW,EAAE,aAAqB,EAAA;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACvB,YAAA,MAAM,KAAK,CAAC,+CAA+C,CAAC;QAC9D;AACA,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;IACvD;IAEA,gBAAgB,CAAC,IAAW,EAAE,KAAa,EAAA;QACzC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC;IAChC;IAEA,iBAAiB,CAAC,IAAW,EAAE,MAAc,EAAA;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAClC;IAEA,eAAe,CAAC,IAAW,EAAE,IAAY,EAAA;QACvC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC;IAC9B;AAEA,IAAA,SAAS,CAAC,IAAW,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,WAAW,EAAE;IAC3B;AAGU,IAAA,WAAW,CAAC,KAAU,EAAA;AAC9B,QAAA,IAAI,IAAI;AACR,QAAA,IAAI,KAAK,YAAY,IAAI,EAAE;AACzB,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC1B;AAAO,aAAA,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;AAErC,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC1B;AACA,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,OAAO,IAAI;YACb;YACA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;QACxC;QACA,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAa,CAAC,EAAE;AACvC,YAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QACzB;AACA,QAAA,OAAO,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;IACjC;AAEA,IAAA,cAAc,CAAC,GAAQ,EAAA;AACrB,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;IAC3B;AAEA,IAAA,OAAO,CAAC,IAAW,EAAA;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;IACnC;IAEA,OAAO,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB;AAEQ,IAAA,KAAK,CAAC,KAAW,EAAE,MAAe,EAAE,MAAe,EAAA;AACzD,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,OAAO,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC;QACjD;QACA,OAAO,KAAK,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE;IAC/E;AAEA,IAAA,IAAY,YAAY,GAAA;QACtB,MAAM,EAAE,MAAM,EAAE,GAA4B,IAAI,CAAC,OAAO,IAAI,EAAE;QAC9D,OAAO,CAAC,CAAC,MAAM;IACjB;AAEQ,IAAA,gBAAgB,CAAC,UAAkB,EAAA;AACzC,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;QACnB;AAEA,QAAA,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;AAC7B,QAAA,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC;AAC/B,QAAA,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;AAExB,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;IAC5B;;AArLW,gBAAgB,GAAA,UAAA,CAAA;IAYxB,OAAA,CAAA,CAAA,EAAA,QAAQ,EAAE,CAAA;AAAE,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,eAAe,CAAC,CAAA;IACnC,OAAA,CAAA,CAAA,EAAA,QAAQ,EAAE,CAAA;AAAE,IAAA,OAAA,CAAA,CAAA,EAAA,MAAM,CAAC,8BAA8B,CAAC,CAAA;;AAb1C,CAAA,EAAA,gBAAgB,CAsL5B;;AC1NM,MAAM,sBAAsB,GAAmB;AACpD,IAAA,KAAK,EAAE;AACL,QAAA,SAAS,EAAE,YAAY;AACxB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,SAAS,EAAE,YAAY;AACvB,QAAA,cAAc,EAAE,UAAU;AAC1B,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,kBAAkB,EAAE,WAAW;AAChC;;;ACTH,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;AAEX,MAAM,6BAA6B,GAAmB;AAC3D,IAAA,KAAK,EAAE;AACL,QAAA,SAAS,EAAE,YAAY;AACxB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,SAAS,EAAE,YAAY;AACvB,QAAA,cAAc,EAAE,UAAU;AAC1B,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,kBAAkB,EAAE,WAAW;AAChC;;AAGI,MAAM,sBAAsB,GAAG;AACpC,IAAA,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC5C,IAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,6BAA6B,EAAE;;;MCT3D,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAf,eAAe,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAAA,SAAA,EAJf;AACT,YAAA,uBAAuB,EAAE;AAC1B,SAAA,EAAA,CAAA,CAAA;;2FAEU,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;AACT,wBAAA,uBAAuB,EAAE;AAC1B,qBAAA;AACF,iBAAA;;SAGe,uBAAuB,GAAA;IACrC,OAAO;AACL,QAAA;AACE,YAAA,OAAO,EAAE,WAAW;AACpB,YAAA,QAAQ,EAAE,gBAAgB;AAC1B,YAAA,IAAI,EAAE;gBACJ,eAAe;gBACf,8BAA8B;AAC/B;AACF,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,QAAQ,EAAE,sBAAsB;AACjC,SAAA;KACF;AACH;;MCpBa,IAAI,CAAA;AACf,IAAA,OAAO,IAAI,CAAC,KAAA,GAAuB,EAAE,EAAA;AACnC,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE;AAC/B,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,SAAS,EAAE,CAAC;AACZ,YAAA,MAAM,EAAE,GAAG;AACX,YAAA,GAAG;AACJ,SAAA,CAAC;IACJ;AAEA,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ;IACvC;AAEA,IAAA,IAAI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC;IACpE;AAEA,IAAA,KAAK,CAAC,GAAkB,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,EAAC,GAAG,IAAI,EAAE,GAAG,GAAG,EAAC,CAAC;IACrC;AACD;;AC1BK,SAAU,0BAA0B,CACxC,QAAgC,EAChC,QAAuD,EACvD,SAAgC,UAAU,EAAA;IAE1C,IAAG,QAAQ,CAAC,QAAQ,CAAC;QAAE;AACvB,IAAA,IAAI,MAAM,KAAK,UAAU,EAAE;AACzB,QAAA,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,0BAA0B,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzF;AACF;AAGM,SAAU,eAAe,CAAC,MAAM,GAAG,SAAS,EAAA;AACjD,IAAA,IAAI,OAA4B;AAEhC,IAAA,OAAO,CAAC,KAA6B,EAAE,QAA6B,KAAI;QACvE,MAAM,MAAM,GAA6B,EAAE;AAC3C,QAAA,0BAA0B,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,IAAG;AACpD,YAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE;AAC/B,gBAAA,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;AACrB,gBAAA,OAAO,KAAK;YACb;AACA,YAAA,OAAO,IAAI;AACZ,QAAA,CAAC,CAAC;QAEF,IAAI,KAAK,KAAM,MAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACrC,OAAO,OAAO,GAAG,KAAK;QACvB;QAEA,OAAO,OAAO,KAAK,KAAK,KAAM,MAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,IAAA,CAAC;AACF;AAEA,SAAS,aAAa,CAAC,CAAM,EAAA;AAC3B,IAAA,IAAI,CAAC,CAAC,OAAO,EAAE;QACb,OAAO,CAAC,CAAC,OAAO;IAClB;AACA,IAAA,OAAO,CAAC;AACV;AAEM,SAAU,UAAU,CAAC,MAAc,EAAA;IACvC,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,CAAC,KAAK,IAAG;AAChC,QAAA,IAAI,KAAK,CAAC,YAAY,EAAE;YACtB,OAAO;AACL,gBAAA,GAAG,KAAK;AACR,gBAAA,YAAY,EAAE,MAAO,KAAK,CAAC,YAAa,EAAsB,CAAC,IAAI,CAAC,MAAM,IAAG;AAChF,oBAAA,OAAO,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACzC,gBAAA,CAAC,CAAC;AACE,gBAAA,OAAO,EAAE;AACP,oBAAA,IAAI,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;oBACzB,OAAO,EAAE,eAAe,EAAE;AAC3B;aACF;QACH;QACA,OAAO;AACL,YAAA,GAAG,KAAK;AACR,YAAA,OAAO,EAAE;AACP,gBAAA,IAAI,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;gBACzB,OAAO,EAAE,eAAe,EAAE;AAC3B,aAAA;SACF;AACH,IAAA,CAAC,CAAC;AACJ;;AC5DO,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,KAAK,GAAG,EAAE,KAAY;IAChE,OAAO,CAAA,EAAG,KAAK,CAAC,KAAK,CAAC,CAAA,CAAA,EAAI,KAAK,EAAE;AACnC;AAGO,MAAM,4BAA4B,GAA0B,KAAK,IAAG;AACzE,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,QAAA,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;IACjC;AAAO,SAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAC/B,QAAA,OAAO,CAAA,EAAG,KAAK,CAAC,MAAM,QAAQ;IAChC;AAAO,SAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACpC,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9B;AAAO,SAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACpC,QAAA,OAAO,KAAK;IACd;AAAO,SAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACpC,QAAA,OAAO,YAAY,CAAC,KAAK,CAAC;IAC5B;SAAO;AACL,QAAA,OAAO,KAAK;IACd;AACF;MAEa,sBAAsB,GAAG,IAAI,cAAc,CAAwB,4CAA4C,EAAE;AAC5H,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,4BAA4B;AAC5C,CAAA;AAEK,SAAU,4BAA4B,CAAC,UAAuC,EAAA;AAClF,IAAA,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE;AACxD;SAEgB,iCAAiC,GAAA;AAC/C,IAAA,OAAO,MAAM,CAAC,sBAAsB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,IAAI,4BAA4B;AACzG;AAEO,MAAM,mBAAmB,GAA0B;;ACtC1D,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,IAAA,GAAiB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAc;IAC/E,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC;AACxC,IAAA,IAAI,GAAG,MAAM,CAAC,mBAAmB,CAAC,KAAK;SACpC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,WAAW;AAC7B,SAAA,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,YAAY,QAAQ;SAC9E,MAAM,CAAC,IAAI,CAAC;IAEf,OAAO,KAAK,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC;AAC9E,CAAC;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAa,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAI,GAA+B,CAAC,CAAC,CAAC,EAAC,CAAC,EAAE,EAAE;;ACTnI,SAAU,aAAa,CAAC,OAAe,EAAA;AAC3C,IAAA,MAAM,CAAC,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA,CAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAC1D,MAAM,CAAC,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAC/D,MAAM,CAAC,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AAC/D,IAAA,OAAO,GAAG,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,EAAI,CAAC,EAAE;AACzB;;ACNA;;AAEG;;;;"}
|