@ng-atomic/common 19.0.0-preview.12 → 19.0.0-preview.13
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-pipes-domain.mjs +1 -1
- package/fesm2022/ng-atomic-common-pipes-domain.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entities.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-utils.mjs.map +1 -1
- package/package.json +16 -16
- package/pipes/domain/domain.pipe.d.ts +1 -1
- package/stores/entities/di.d.ts +1 -1
- package/stores/entities/entity-store-adapter.d.ts +1 -1
- package/stores/entities/entity-store-manager.d.ts +1 -1
- package/stores/entities/entity-store.d.ts +1 -1
- package/utils/inject/inject.d.ts +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { InjectionToken, inject, Pipe, signal } from '@angular/core';
|
|
3
|
-
import { getLangMap, getProps, getModelName } from '@nx-ddd/common/domain
|
|
3
|
+
import { getLangMap, getProps, getModelName } from '@nx-ddd/common/domain';
|
|
4
4
|
import { wrapFactory } from '@ng-atomic/common/pipes/signal';
|
|
5
5
|
import { LanguageService, DOMAIN_LANG_MAP } from '@ng-atomic/common/services/language';
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common-pipes-domain.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/pipes/domain/domain.pipe.ts","../../../../../packages/@ng-atomic/common/src/lib/pipes/domain/ng-atomic-common-pipes-domain.ts"],"sourcesContent":["import { InjectionToken, Injector, Pipe, Signal, inject, signal, PipeTransform } from '@angular/core';\nimport { Entity, Type, getLangMap, getModelName, getProps } from '@nx-ddd/common/domain
|
|
1
|
+
{"version":3,"file":"ng-atomic-common-pipes-domain.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/pipes/domain/domain.pipe.ts","../../../../../packages/@ng-atomic/common/src/lib/pipes/domain/ng-atomic-common-pipes-domain.ts"],"sourcesContent":["import { InjectionToken, Injector, Pipe, Signal, inject, signal, PipeTransform } from '@angular/core';\nimport { Entity, Type, getLangMap, getModelName, getProps } from '@nx-ddd/common/domain';\nimport { SignalOrValue, wrapFactory } from '@ng-atomic/common/pipes/signal';\nimport { DOMAIN_LANG_MAP, DomainLangMap, LanguageService } from '@ng-atomic/common/services/language';\n\nexport const DOMAIN_MODEL = new InjectionToken<Type<{id: string}>>('Domain Model');\nexport const DOMAIN_PROPS = new InjectionToken<Signal<string[]>>('Domain Props');\nexport const DOMAIN_MODEL_NAME = new InjectionToken<Signal<string>>('Domain Model Name');\n\n@Pipe({\n standalone: true,\n name: 'domain',\n pure: true,\n})\nexport class DomainPipe implements PipeTransform {\n readonly language = inject(LanguageService);\n\n transform(input: string, map?: DomainLangMap) {\n return this.language.transform(input, map);\n }\n}\n\nexport function injectParentDomainLangMap(): DomainLangMap {\n return inject(DOMAIN_LANG_MAP, {skipSelf: true, optional: true}) ?? {};\n}\n\nexport function provideLangMap(useFactory: () => DomainLangMap, {\n merge = true\n}: {\n merge?: boolean\n} = {}) {\n return {\n provide: DOMAIN_LANG_MAP,\n useFactory: () => {\n if (merge) return {...injectParentDomainLangMap(), ...useFactory()};\n return useFactory();\n }\n };\n}\n\nexport function provideDomainLang<E>(domain: Type<E>, mergeObj: DomainLangMap = {}) {\n return provideLangMap(() => getLangMap(domain, mergeObj));\n}\n\nexport function provideModel<E>(useFactory: () => Type<E>) {\n return { provide: DOMAIN_MODEL, useFactory};\n}\n\nexport function injectModel<E = Entity>(): Type<E> {\n return inject(DOMAIN_MODEL, {optional: true}) as Type<E> ?? null;\n}\n\nexport function provideProps(useFactory: () => SignalOrValue<string[]>) {\n return { provide: DOMAIN_PROPS, useFactory: wrapFactory(useFactory)}\n}\n\nexport function provideModelName(useFactory: () => SignalOrValue<string>) {\n return { provide: DOMAIN_MODEL_NAME, useFactory: wrapFactory(useFactory)}\n}\n\nexport function injectProps(): Signal<string[]> {\n return inject(DOMAIN_PROPS, {optional: true}) ?? signal([]);\n}\n\nexport function injectModelName(injector?: Injector): Signal<string> {\n if (injector) return injector.get(DOMAIN_MODEL_NAME, null) ?? signal(null);\n return inject(DOMAIN_MODEL_NAME, {optional: true}) ?? signal(null);\n}\n\nexport function provideDomain<E>(useFactory: () => Type<E>) {\n return [\n provideModel(useFactory),\n provideLangMap(() => getLangMap(useFactory())),\n provideProps(() => getProps(useFactory())),\n provideModelName(() => getModelName(useFactory()))\n ]\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -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((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 }\n }, {type: 'noop', payload: {}} as Task<T>)\n }\n}\n","\nimport { InjectionToken, Injector, inject } from '@angular/core';\nimport { Type } from '@nx-ddd/common/domain/models';\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/models';\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 readonly selectors = this.entityAdapter.getSelectors();\n readonly all$ = this.select(this.selectors.selectAll);\n readonly all = toSignal(this.all$);\n readonly total$ = this.select(this.selectors.selectTotal);\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([])),\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 );\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});\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/models';\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));\n }\n return this.storeMap.get(Entity) 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 { Type } from '@nx-ddd/common/domain/models';\nimport { Resolver, getResolver, injectResolver$ } from '@ng-atomic/common/utils';\nimport { Observable, combineLatest, isObservable, of, filter, map, shareReplay, switchMap, tap, distinctUntilChanged } from 'rxjs';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nimport { injectEntityStore } from './entity-store-manager';\nimport { computedAsync } from 'ngxtension/computed-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?: new (params: Record<string, Observable<any>>) => Resolver<T>\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 signalMapToObs(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?: new (params: Record<string, any>) => Resolver<T>\n) {\n return toSignal(injectOne$(Entity, signalMapToObs(params) as any, resolverType));\n}\n\nexport function injectAll$<T extends Entity>(\n Entity: Type<T>,\n params: Record<string, Observable<any>> = {},\n resolverType?: new (params: Record<string, any>) => Resolver<T>\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?: new (params: Record<string, any>) => Resolver<T>\n) {\n const $params = signalMapToObs(params);\n const all$ = injectAll$(Entity, $params, resolverType);\n return computedAsync(() => 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((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 }\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 readonly selectors = this.entityAdapter.getSelectors();\n readonly all$ = this.select(this.selectors.selectAll);\n readonly all = toSignal(this.all$);\n readonly total$ = this.select(this.selectors.selectTotal);\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([])),\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 );\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});\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));\n }\n return this.storeMap.get(Entity) 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 { Type } from '@nx-ddd/common/domain';\nimport { Resolver, getResolver, injectResolver$ } from '@ng-atomic/common/utils';\nimport { Observable, combineLatest, isObservable, of, filter, map, shareReplay, switchMap, tap, distinctUntilChanged } from 'rxjs';\nimport { Entity } from './task-composer';\nimport { EntityStore } from './entity-store';\nimport { injectEntityStore } from './entity-store-manager';\nimport { computedAsync } from 'ngxtension/computed-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?: new (params: Record<string, Observable<any>>) => Resolver<T>\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 signalMapToObs(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?: new (params: Record<string, any>) => Resolver<T>\n) {\n return toSignal(injectOne$(Entity, signalMapToObs(params) as any, resolverType));\n}\n\nexport function injectAll$<T extends Entity>(\n Entity: Type<T>,\n params: Record<string, Observable<any>> = {},\n resolverType?: new (params: Record<string, any>) => Resolver<T>\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?: new (params: Record<string, any>) => Resolver<T>\n) {\n const $params = signalMapToObs(params);\n const all$ = injectAll$(Entity, $params, resolverType);\n return computedAsync(() => 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 +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/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));\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));\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));\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 { Injectable, Injector, Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, NavigationEnd, ParamMap, Params, Router } from \"@angular/router\";\nimport { Observable, combineLatest, filter, map, of, shareReplay, startWith, switchMap } from \"rxjs\";\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { Type } from \"@nx-ddd/common/domain/models\";\nimport { get } from \"lodash-es\";\nimport { unflatten } from 'flat';\n\nexport function injectRouterParam$(key: string): Observable<string> {\n return inject(ActivatedRoute).paramMap.pipe(\n map((params) => params.get(key)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\n/** @deprecated */\nexport function injectRouterParam(key: string): Signal<string> {\n return toSignal(injectRouterParam$(key));\n}\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));\n}\n\n// export function injectRouteParamMap$(): Observable<ParamMap> {\n// return inject(ActivatedRoute).paramMap.pipe(\n// shareReplay(1),\n// takeUntilDestroyed(),\n// );\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) => params[key]),\n );\n}\n\nexport function injectUnflattenRouteParam<T = any>(key: string): Signal<T> {\n return toSignal(injectUnflattenRouteParam$(key));\n}\n\nexport function injectUnflattenRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<any> {\n return toSignal(injectUnflattenRouteParams$({merge}));\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}));\n}\n\n// export function injectRouteParams$(): Observable<Record<string, string>> {\n// return inject(ActivatedRoute).paramMap.pipe(\n// map((params) => {\n// const result = {};\n// params.keys.forEach(key => result[key] = params.get(key));\n// return result;\n// }),\n// shareReplay(1),\n// takeUntilDestroyed(),\n// );\n// }\n\nexport function injectRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<Record<string, string>> {\n return toSignal(injectRouteParams$({merge}));\n}\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 = [];\n let current = 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)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRouteParam(key: string): Signal<string> {\n return toSignal(injectChildRouteParam$(key));\n}\n\nexport function injectChildRoute$() {\n return injectRouteNavigated$().pipe(\n map((route) => route?.firstChild?.firstChild),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRoute(): Signal<ActivatedRoute> {\n return toSignal(injectChildRoute$());\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 injectRouterQueryParam$<\n T extends string = string\n>(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));\n}\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$(key));\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\n\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 // useFactory: () => new ResolverType(params),\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 // return this.map.set()\n }\n return this.map.get(Entity.name);\n }\n}\n\nexport function injectResolver$<T>(\n ResolverType: new (params: Record<string, any>) => Resolver<T>,\n params: Record<string, Observable<any>>,\n): Observable<Resolver<T>> {\n return combineLatest(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\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)),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteParam(key: string, injector?: Injector): Signal<string> {\n return toSignal(injectRouteParam$(key), {injector});\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$());\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 * 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;\n\n\treturn (route: ActivatedRouteSnapshot, snapshot: RouterStateSnapshot) => {\n\t\tconst routes = [];\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.at(-1)) {\n\t\t\treturn skipped = false;\n\t\t}\n\n\t\treturn skipped ??= route !== routes.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) {\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[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/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));\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));\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));\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 { Injectable, Injector, Signal, inject } from \"@angular/core\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport { ActivatedRoute, NavigationEnd, ParamMap, Params, Router } from \"@angular/router\";\nimport { Observable, combineLatest, filter, map, of, shareReplay, startWith, switchMap } from \"rxjs\";\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { Type } from \"@nx-ddd/common/domain\";\nimport { get } from \"lodash-es\";\nimport { unflatten } from 'flat';\n\nexport function injectRouterParam$(key: string): Observable<string> {\n return inject(ActivatedRoute).paramMap.pipe(\n map((params) => params.get(key)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\n/** @deprecated */\nexport function injectRouterParam(key: string): Signal<string> {\n return toSignal(injectRouterParam$(key));\n}\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));\n}\n\n// export function injectRouteParamMap$(): Observable<ParamMap> {\n// return inject(ActivatedRoute).paramMap.pipe(\n// shareReplay(1),\n// takeUntilDestroyed(),\n// );\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) => params[key]),\n );\n}\n\nexport function injectUnflattenRouteParam<T = any>(key: string): Signal<T> {\n return toSignal(injectUnflattenRouteParam$(key));\n}\n\nexport function injectUnflattenRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<any> {\n return toSignal(injectUnflattenRouteParams$({merge}));\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}));\n}\n\n// export function injectRouteParams$(): Observable<Record<string, string>> {\n// return inject(ActivatedRoute).paramMap.pipe(\n// map((params) => {\n// const result = {};\n// params.keys.forEach(key => result[key] = params.get(key));\n// return result;\n// }),\n// shareReplay(1),\n// takeUntilDestroyed(),\n// );\n// }\n\nexport function injectRouteParams({\n merge = true,\n}: {\n merge?: boolean,\n} = {}): Signal<Record<string, string>> {\n return toSignal(injectRouteParams$({merge}));\n}\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 = [];\n let current = 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)),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRouteParam(key: string): Signal<string> {\n return toSignal(injectChildRouteParam$(key));\n}\n\nexport function injectChildRoute$() {\n return injectRouteNavigated$().pipe(\n map((route) => route?.firstChild?.firstChild),\n shareReplay(1),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectChildRoute(): Signal<ActivatedRoute> {\n return toSignal(injectChildRoute$());\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 injectRouterQueryParam$<\n T extends string = string\n>(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));\n}\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$(key));\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\n\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 // useFactory: () => new ResolverType(params),\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 // return this.map.set()\n }\n return this.map.get(Entity.name);\n }\n}\n\nexport function injectResolver$<T>(\n ResolverType: new (params: Record<string, any>) => Resolver<T>,\n params: Record<string, Observable<any>>,\n): Observable<Resolver<T>> {\n return combineLatest(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\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)),\n takeUntilDestroyed(),\n );\n}\n\nexport function injectRouteParam(key: string, injector?: Injector): Signal<string> {\n return toSignal(injectRouteParam$(key), {injector});\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$());\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 * 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;\n\n\treturn (route: ActivatedRouteSnapshot, snapshot: RouterStateSnapshot) => {\n\t\tconst routes = [];\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.at(-1)) {\n\t\t\treturn skipped = false;\n\t\t}\n\n\t\treturn skipped ??= route !== routes.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) {\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[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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ng-atomic/common",
|
|
3
|
-
"version": "19.0.0-preview.
|
|
3
|
+
"version": "19.0.0-preview.13",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/cdk": "19.1.2",
|
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
"@angular/material": "19.1.2",
|
|
12
12
|
"@angular/router": "19.1.4",
|
|
13
13
|
"@ngrx/component-store": "19.0.1",
|
|
14
|
-
"@nx-ddd/core": "19.0.0-preview.
|
|
14
|
+
"@nx-ddd/core": "19.0.0-preview.13",
|
|
15
15
|
"dayjs": "1.11.13",
|
|
16
16
|
"flat": "^6.0.0",
|
|
17
17
|
"lodash-es": "^4.17.15",
|
|
18
18
|
"papaparse": "^5.4.1",
|
|
19
19
|
"rxjs": "^7.0.0",
|
|
20
|
-
"@ng-atomic/core": "19.0.0-preview.
|
|
21
|
-
"@nx-ddd/common": "19.0.0-preview.
|
|
20
|
+
"@ng-atomic/core": "19.0.0-preview.13",
|
|
21
|
+
"@nx-ddd/common": "19.0.0-preview.13",
|
|
22
22
|
"class-validator": "^0.14.0",
|
|
23
23
|
"ngxtension": "^2.0.0",
|
|
24
24
|
"ffprobe-wasm": "^0.3.1",
|
|
@@ -103,14 +103,14 @@
|
|
|
103
103
|
"types": "./pipes/error/index.d.ts",
|
|
104
104
|
"default": "./fesm2022/ng-atomic-common-pipes-error.mjs"
|
|
105
105
|
},
|
|
106
|
-
"./pipes/expression": {
|
|
107
|
-
"types": "./pipes/expression/index.d.ts",
|
|
108
|
-
"default": "./fesm2022/ng-atomic-common-pipes-expression.mjs"
|
|
109
|
-
},
|
|
110
106
|
"./pipes/grouped-by": {
|
|
111
107
|
"types": "./pipes/grouped-by/index.d.ts",
|
|
112
108
|
"default": "./fesm2022/ng-atomic-common-pipes-grouped-by.mjs"
|
|
113
109
|
},
|
|
110
|
+
"./pipes/expression": {
|
|
111
|
+
"types": "./pipes/expression/index.d.ts",
|
|
112
|
+
"default": "./fesm2022/ng-atomic-common-pipes-expression.mjs"
|
|
113
|
+
},
|
|
114
114
|
"./pipes/index": {
|
|
115
115
|
"types": "./pipes/index/index.d.ts",
|
|
116
116
|
"default": "./fesm2022/ng-atomic-common-pipes-index.mjs"
|
|
@@ -191,14 +191,14 @@
|
|
|
191
191
|
"types": "./services/chips-manager/index.d.ts",
|
|
192
192
|
"default": "./fesm2022/ng-atomic-common-services-chips-manager.mjs"
|
|
193
193
|
},
|
|
194
|
-
"./services/csv": {
|
|
195
|
-
"types": "./services/csv/index.d.ts",
|
|
196
|
-
"default": "./fesm2022/ng-atomic-common-services-csv.mjs"
|
|
197
|
-
},
|
|
198
194
|
"./services/fab": {
|
|
199
195
|
"types": "./services/fab/index.d.ts",
|
|
200
196
|
"default": "./fesm2022/ng-atomic-common-services-fab.mjs"
|
|
201
197
|
},
|
|
198
|
+
"./services/csv": {
|
|
199
|
+
"types": "./services/csv/index.d.ts",
|
|
200
|
+
"default": "./fesm2022/ng-atomic-common-services-csv.mjs"
|
|
201
|
+
},
|
|
202
202
|
"./services/form": {
|
|
203
203
|
"types": "./services/form/index.d.ts",
|
|
204
204
|
"default": "./fesm2022/ng-atomic-common-services-form.mjs"
|
|
@@ -223,14 +223,14 @@
|
|
|
223
223
|
"types": "./services/query-resolver/index.d.ts",
|
|
224
224
|
"default": "./fesm2022/ng-atomic-common-services-query-resolver.mjs"
|
|
225
225
|
},
|
|
226
|
-
"./services/router": {
|
|
227
|
-
"types": "./services/router/index.d.ts",
|
|
228
|
-
"default": "./fesm2022/ng-atomic-common-services-router.mjs"
|
|
229
|
-
},
|
|
230
226
|
"./services/root-property": {
|
|
231
227
|
"types": "./services/root-property/index.d.ts",
|
|
232
228
|
"default": "./fesm2022/ng-atomic-common-services-root-property.mjs"
|
|
233
229
|
},
|
|
230
|
+
"./services/router": {
|
|
231
|
+
"types": "./services/router/index.d.ts",
|
|
232
|
+
"default": "./fesm2022/ng-atomic-common-services-router.mjs"
|
|
233
|
+
},
|
|
234
234
|
"./services/secret": {
|
|
235
235
|
"types": "./services/secret/index.d.ts",
|
|
236
236
|
"default": "./fesm2022/ng-atomic-common-services-secret.mjs"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InjectionToken, Injector, Signal, PipeTransform } from '@angular/core';
|
|
2
|
-
import { Entity, Type } from '@nx-ddd/common/domain
|
|
2
|
+
import { Entity, Type } from '@nx-ddd/common/domain';
|
|
3
3
|
import { SignalOrValue } from '@ng-atomic/common/pipes/signal';
|
|
4
4
|
import { DomainLangMap, LanguageService } from '@ng-atomic/common/services/language';
|
|
5
5
|
import * as i0 from "@angular/core";
|
package/stores/entities/di.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Signal } from '@angular/core';
|
|
2
|
-
import { Type } from '@nx-ddd/common/domain
|
|
2
|
+
import { Type } from '@nx-ddd/common/domain';
|
|
3
3
|
import { Resolver } from '@ng-atomic/common/utils';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
5
|
import { Entity } from './task-composer';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InjectionToken, Injector } from '@angular/core';
|
|
2
|
-
import { Type } from '@nx-ddd/common/domain
|
|
2
|
+
import { Type } from '@nx-ddd/common/domain';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import { Entity } from './task-composer';
|
|
5
5
|
export declare class EntityStoreAdapter<E extends Entity> {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Type } from '@nx-ddd/common/domain
|
|
1
|
+
import { Type } from '@nx-ddd/common/domain';
|
|
2
2
|
import { ComponentStore } from '@ngrx/component-store';
|
|
3
3
|
import { EntityState, EntityAdapter } from '@ngrx/entity';
|
|
4
4
|
import { Observable, ReplaySubject, Subject } from 'rxjs';
|
package/utils/inject/inject.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Injector, Signal } from "@angular/core";
|
|
2
2
|
import { ActivatedRoute, ParamMap, Params } from "@angular/router";
|
|
3
3
|
import { Observable } from "rxjs";
|
|
4
|
-
import { Type } from "@nx-ddd/common/domain
|
|
4
|
+
import { Type } from "@nx-ddd/common/domain";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare function injectRouterParam$(key: string): Observable<string>;
|
|
7
7
|
/** @deprecated */
|