@ng-atomic/common 4.1.0 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/esm2020/pipes/pagination/pagination.pipe.mjs +1 -2
  2. package/esm2020/stores/entities/entities.store.mjs +8 -33
  3. package/esm2020/stores/pagination/index.mjs +2 -0
  4. package/esm2020/stores/pagination/ng-atomic-common-stores-pagination.mjs +5 -0
  5. package/esm2020/stores/pagination/pagination.store.mjs +32 -0
  6. package/esm2020/stores/query/index.mjs +2 -0
  7. package/esm2020/stores/query/ng-atomic-common-stores-query.mjs +5 -0
  8. package/esm2020/stores/query/query.store.mjs +30 -0
  9. package/esm2020/stores/selection/index.mjs +2 -0
  10. package/esm2020/stores/selection/ng-atomic-common-stores-selection.mjs +5 -0
  11. package/esm2020/stores/selection/selection.store.mjs +29 -0
  12. package/esm2020/utils/page/index.mjs +2 -0
  13. package/esm2020/utils/page/ng-atomic-common-utils-page.mjs +5 -0
  14. package/esm2020/utils/page/page.mjs +20 -0
  15. package/fesm2015/ng-atomic-common-pipes-pagination.mjs +0 -1
  16. package/fesm2015/ng-atomic-common-pipes-pagination.mjs.map +1 -1
  17. package/fesm2015/ng-atomic-common-stores-entities.mjs +8 -33
  18. package/fesm2015/ng-atomic-common-stores-entities.mjs.map +1 -1
  19. package/fesm2015/ng-atomic-common-stores-pagination.mjs +41 -0
  20. package/fesm2015/ng-atomic-common-stores-pagination.mjs.map +1 -0
  21. package/fesm2015/ng-atomic-common-stores-query.mjs +40 -0
  22. package/fesm2015/ng-atomic-common-stores-query.mjs.map +1 -0
  23. package/fesm2015/ng-atomic-common-stores-selection.mjs +38 -0
  24. package/fesm2015/ng-atomic-common-stores-selection.mjs.map +1 -0
  25. package/fesm2015/ng-atomic-common-utils-page.mjs +21 -0
  26. package/fesm2015/ng-atomic-common-utils-page.mjs.map +1 -0
  27. package/fesm2020/ng-atomic-common-pipes-pagination.mjs +0 -1
  28. package/fesm2020/ng-atomic-common-pipes-pagination.mjs.map +1 -1
  29. package/fesm2020/ng-atomic-common-stores-entities.mjs +8 -33
  30. package/fesm2020/ng-atomic-common-stores-entities.mjs.map +1 -1
  31. package/fesm2020/ng-atomic-common-stores-pagination.mjs +39 -0
  32. package/fesm2020/ng-atomic-common-stores-pagination.mjs.map +1 -0
  33. package/fesm2020/ng-atomic-common-stores-query.mjs +36 -0
  34. package/fesm2020/ng-atomic-common-stores-query.mjs.map +1 -0
  35. package/fesm2020/ng-atomic-common-stores-selection.mjs +36 -0
  36. package/fesm2020/ng-atomic-common-stores-selection.mjs.map +1 -0
  37. package/fesm2020/ng-atomic-common-utils-page.mjs +26 -0
  38. package/fesm2020/ng-atomic-common-utils-page.mjs.map +1 -0
  39. package/package.json +33 -1
  40. package/pipes/pagination/pagination.pipe.d.ts.map +1 -1
  41. package/stores/entities/entities.store.d.ts +3 -23
  42. package/stores/entities/entities.store.d.ts.map +1 -1
  43. package/stores/pagination/index.d.ts +2 -0
  44. package/stores/pagination/index.d.ts.map +1 -0
  45. package/stores/pagination/ng-atomic-common-stores-pagination.d.ts.map +1 -0
  46. package/stores/pagination/pagination.store.d.ts +25 -0
  47. package/stores/pagination/pagination.store.d.ts.map +1 -0
  48. package/stores/query/index.d.ts +2 -0
  49. package/stores/query/index.d.ts.map +1 -0
  50. package/stores/query/ng-atomic-common-stores-query.d.ts.map +1 -0
  51. package/stores/query/query.store.d.ts +18 -0
  52. package/stores/query/query.store.d.ts.map +1 -0
  53. package/stores/selection/index.d.ts +2 -0
  54. package/stores/selection/index.d.ts.map +1 -0
  55. package/stores/selection/ng-atomic-common-stores-selection.d.ts.map +1 -0
  56. package/stores/selection/selection.store.d.ts +24 -0
  57. package/stores/selection/selection.store.d.ts.map +1 -0
  58. package/utils/page/index.d.ts +2 -0
  59. package/utils/page/index.d.ts.map +1 -0
  60. package/utils/page/ng-atomic-common-utils-page.d.ts.map +1 -0
  61. package/utils/page/page.d.ts +12 -0
  62. package/utils/page/page.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-pipes-pagination.mjs","sources":["../../../../libs/common/src/pipes/pagination/pagination.pipe.ts","../../../../libs/common/src/pipes/pagination/pagination.module.ts","../../../../libs/common/src/pipes/pagination/ng-atomic-common-pipes-pagination.ts"],"sourcesContent":["import { SlicePipe } from '@angular/common';\nimport { Inject, Optional, Pipe, PipeTransform } from '@angular/core';\nimport { smartSortByTransformer, SmartSortByTransformer, SMART_SORT_BY_TRANSFORMER } from '@ng-atomic/common/pipes/smart-sort-by';\n\n@Pipe({\n name: 'pagination',\n pure: true,\n})\nexport class PaginationPipe implements PipeTransform {\n private slicePipe = new SlicePipe();\n\n constructor(\n @Optional()\n @Inject(SMART_SORT_BY_TRANSFORMER)\n private transformer: SmartSortByTransformer,\n ) {\n this.transformer ??= smartSortByTransformer;\n }\n\n transform<T>(items: T[], {sortKey, sortOrder, start, end}: {sortKey: string, sortOrder: 'asc' | 'desc', start: number, end: number}) {\n // transform<T>(items: T[], key: string, order: 'asc' | 'desc', start: number, end: number): T[] { \n return this.slicePipe.transform(this.transformer(items, sortKey, sortOrder), start, end);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PaginationPipe } from './pagination.pipe';\n\n\n\n@NgModule({\n declarations: [\n PaginationPipe\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n PaginationPipe\n ]\n})\nexport class PaginationModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAQa,cAAc,CAAA;AAGzB,IAAA,WAAA,CAGU,WAAmC,EAAA;QAAnC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAwB;AALrC,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QAOlC,IAAI,CAAC,WAAW,KAAhB,IAAI,CAAC,WAAW,GAAK,sBAAsB,CAAC,CAAA;KAC7C;IAED,SAAS,CAAI,KAAU,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAA2E,EAAA;;QAEjI,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;KAC1F;;AAdU,cAAA,CAAA,IAAA,GAAA,SAAA,sBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,cAAc,uBAKf,yBAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;iFALxB,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,CAAA;uFAAd,cAAc,EAAA,CAAA;cAJ1B,IAAI;AAAC,QAAA,IAAA,EAAA,CAAA;AACJ,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,IAAI,EAAE,IAAI;AACX,aAAA,CAAA;;sBAKI,QAAQ;;sBACR,MAAM;uBAAC,yBAAyB,CAAA;;;MCIxB,gBAAgB,CAAA;;gFAAhB,gBAAgB,GAAA,CAAA,EAAA,CAAA;kEAAhB,gBAAgB,EAAA,CAAA,CAAA;sEANzB,YAAY,CAAA,EAAA,CAAA,CAAA;uFAMH,gBAAgB,EAAA,CAAA;cAX5B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE;oBACZ,cAAc;AACf,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,YAAY;AACb,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,cAAc;AACf,iBAAA;AACF,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,gBAAgB,EATzB,EAAA,YAAA,EAAA,CAAA,cAAc,CAGd,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,cAAc,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACdlB;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-common-pipes-pagination.mjs","sources":["../../../../libs/common/src/pipes/pagination/pagination.pipe.ts","../../../../libs/common/src/pipes/pagination/pagination.module.ts","../../../../libs/common/src/pipes/pagination/ng-atomic-common-pipes-pagination.ts"],"sourcesContent":["import { SlicePipe } from '@angular/common';\nimport { Inject, Optional, Pipe, PipeTransform } from '@angular/core';\nimport { smartSortByTransformer, SmartSortByTransformer, SMART_SORT_BY_TRANSFORMER } from '@ng-atomic/common/pipes/smart-sort-by';\n\n@Pipe({\n name: 'pagination',\n pure: true,\n})\nexport class PaginationPipe implements PipeTransform {\n private slicePipe = new SlicePipe();\n\n constructor(\n @Optional()\n @Inject(SMART_SORT_BY_TRANSFORMER)\n private transformer: SmartSortByTransformer,\n ) {\n this.transformer ??= smartSortByTransformer;\n }\n\n transform<T>(items: T[], {sortKey, sortOrder, start, end}: {sortKey: string, sortOrder: 'asc' | 'desc', start: number, end: number}) {\n return this.slicePipe.transform(this.transformer(items, sortKey, sortOrder), start, end);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PaginationPipe } from './pagination.pipe';\n\n\n\n@NgModule({\n declarations: [\n PaginationPipe\n ],\n imports: [\n CommonModule,\n ],\n exports: [\n PaginationPipe\n ]\n})\nexport class PaginationModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAQa,cAAc,CAAA;AAGzB,IAAA,WAAA,CAGU,WAAmC,EAAA;QAAnC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAwB;AALrC,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QAOlC,IAAI,CAAC,WAAW,KAAhB,IAAI,CAAC,WAAW,GAAK,sBAAsB,CAAC,CAAA;KAC7C;IAED,SAAS,CAAI,KAAU,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAA2E,EAAA;QACjI,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;KAC1F;;AAbU,cAAA,CAAA,IAAA,GAAA,SAAA,sBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,cAAc,uBAKf,yBAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;iFALxB,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,CAAA;uFAAd,cAAc,EAAA,CAAA;cAJ1B,IAAI;AAAC,QAAA,IAAA,EAAA,CAAA;AACJ,gBAAA,IAAI,EAAE,YAAY;AAClB,gBAAA,IAAI,EAAE,IAAI;AACX,aAAA,CAAA;;sBAKI,QAAQ;;sBACR,MAAM;uBAAC,yBAAyB,CAAA;;;MCIxB,gBAAgB,CAAA;;gFAAhB,gBAAgB,GAAA,CAAA,EAAA,CAAA;kEAAhB,gBAAgB,EAAA,CAAA,CAAA;sEANzB,YAAY,CAAA,EAAA,CAAA,CAAA;uFAMH,gBAAgB,EAAA,CAAA;cAX5B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE;oBACZ,cAAc;AACf,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,YAAY;AACb,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,cAAc;AACf,iBAAA;AACF,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,gBAAgB,EATzB,EAAA,YAAA,EAAA,CAAA,cAAc,CAGd,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,cAAc,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACdlB;;AAEG;;;;"}
@@ -1,51 +1,26 @@
1
1
  import { ComponentStore } from '@ngrx/component-store';
2
- import { QueryResolverService } from '@ng-atomic/common/services/query-resolver';
3
2
  import { compareById } from '@ng-atomic/common/utils';
4
- import { filter, map, distinctUntilChanged, tap, switchMap } from 'rxjs/operators';
3
+ import { distinctUntilChanged, filter, switchMap, tap } from 'rxjs/operators';
5
4
 
5
+ const distinctUntilChangedArray = () => {
6
+ return distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur));
7
+ };
6
8
  class EntitiesStore extends ComponentStore {
7
- constructor(initialState, queryResolver = new QueryResolverService()) {
9
+ constructor(initialState) {
8
10
  super(initialState);
9
- this.queryResolver = queryResolver;
10
11
  this.userId$ = this.select(state => state.userId).pipe(filter(userId => !!userId));
11
- this.entities$ = this.select(({ query, entities }) => this.queryResolver.resolve(entities, query, this.LANG_MAP))
12
- .pipe(map((entities) => entities.sort(compareById)))
13
- .pipe(distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)));
12
+ this.entities$ = this.select(({ entities }) => entities ? entities.sort(compareById) : []);
14
13
  this.setUserId = this.updater((state, userId) => ({ ...state, userId }));
15
14
  this.setEntities = this.updater((state, entities) => ({ ...state, entities }));
16
- this.setPage = this.updater((state, page) => ({ ...state, page }));
17
- this.setIdSet = this.updater((state, idSet) => ({ ...state, idSet }));
18
- this.setSortKey = this.updater((state, sortKey) => ({ ...state, sortKey }));
19
- this.setSortOrder = this.updater((state, sortOrder) => ({ ...state, sortOrder }));
20
- this.addId = this.updater((state, id) => ({ ...state, idSet: new Set([...state.idSet, id]) }));
21
- this.removeId = this.updater((state, id) => {
22
- return { ...state, idSet: new Set([...state.idSet].filter(_id => _id !== id)) };
23
- });
24
- this.setQuery = this.updater((state, query) => ({ ...state, query }));
25
- this.getPage = this.effect((entities$) => entities$.pipe(tap(({ length }) => this.setPage(this.page.patch({ length })))));
26
15
  this.getEntities = this.effect((userId$) => userId$.pipe(filter(userId => !!userId), switchMap((userId) => this._getEntities({ userId })), tap((entities) => this.setEntities(entities))));
27
- this.getPage(this.entities$);
28
16
  this.getEntities(this.userId$);
29
17
  }
30
- get page() { return this.get(state => state.page); }
31
- get sortKey() { return this.get(state => state.sortKey); }
32
- get sortOrder() { return this.get(state => state.sortOrder); }
33
- get idSet() { return this.get(state => state.idSet); }
34
- changeSortFromEvent(name) {
35
- if (name === this.sortKey) {
36
- const order = this.sortOrder === 'asc' ? 'desc' : 'asc';
37
- this.setSortOrder(order);
38
- }
39
- else {
40
- this.setSortKey(name);
41
- this.setSortOrder('asc');
42
- }
43
- }
18
+ get entities() { return this.get().entities; }
44
19
  }
45
20
 
46
21
  /**
47
22
  * Generated bundle index. Do not edit.
48
23
  */
49
24
 
50
- export { EntitiesStore };
25
+ export { EntitiesStore, distinctUntilChangedArray };
51
26
  //# sourceMappingURL=ng-atomic-common-stores-entities.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-stores-entities.mjs","sources":["../../../../libs/common/src/stores/entities/entities.store.ts","../../../../libs/common/src/stores/entities/ng-atomic-common-stores-entities.ts"],"sourcesContent":["import { ComponentStore } from '@ngrx/component-store';\nimport { QueryResolverService } from '@ng-atomic/common/services/query-resolver';\nimport { compareById } from '@ng-atomic/common/utils';\nimport { Observable } from 'rxjs';\nimport { distinctUntilChanged, tap, map, filter, switchMap } from 'rxjs/operators';\n\nexport type Page = any\n\nexport interface EntitiesState<E> {\n userId: string; \n idSet: Set<string>;\n query: string;\n entities: E[]\n page: Page;\n sortKey?: string;\n sortOrder?: 'asc' | 'desc';\n}\n\nexport abstract class EntitiesStore<S extends EntitiesState<E>, E extends {id: string}> extends ComponentStore<S> {\n abstract LANG_MAP: Record<string, string>;\n\n get page(): Page { return this.get(state => state.page); }\n get sortKey(): string { return this.get(state => state.sortKey); }\n get sortOrder(): string { return this.get(state => state.sortOrder); }\n get idSet(): Set<string> { return this.get(state => state.idSet); }\n\n userId$ = this.select(state => state.userId).pipe(filter(userId => !!userId));\n entities$ = this.select(({query, entities}) => this.queryResolver.resolve(entities, query, this.LANG_MAP))\n .pipe(map((entities: E[]) => entities.sort(compareById)))\n .pipe(distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)));\n\n constructor(\n initialState: S,\n public queryResolver = new QueryResolverService(),\n ) {\n super(initialState);\n this.getPage(this.entities$);\n this.getEntities(this.userId$);\n }\n\n setUserId = this.updater((state, userId: string) => ({...state, userId}));\n setEntities = this.updater((state, entities: E[]) => ({...state, entities}));\n setPage = this.updater((state, page: Page) => ({...state, page}));\n setIdSet = this.updater((state, idSet: Set<string>) => ({...state, idSet}));\n setSortKey = this.updater((state, sortKey: string) => ({...state, sortKey}));\n setSortOrder = this.updater((state, sortOrder: 'asc' | 'desc') => ({...state, sortOrder}));\n addId = this.updater((state, id: string) => ({...state, idSet: new Set([...state.idSet, id])}));\n removeId = this.updater((state, id: string) => {\n return {...state, idSet: new Set([...state.idSet].filter(_id => _id !== id))}\n });\n setQuery = this.updater((state, query: string) => ({...state, query}));\n\n getPage = this.effect((entities$: Observable<E[]>) => entities$.pipe(\n tap(({length}: E[]) => this.setPage(this.page.patch({length}))),\n ));\n\n getEntities = this.effect((userId$: Observable<string>) => userId$.pipe(\n filter(userId => !!userId),\n switchMap((userId) => this._getEntities({userId})),\n tap((entities: E[]) => this.setEntities(entities)),\n )); \n\n changeSortFromEvent(name: string) {\n if (name === this.sortKey) {\n const order = this.sortOrder === 'asc' ? 'desc' : 'asc';\n this.setSortOrder(order);\n } else {\n this.setSortKey(name);\n this.setSortOrder('asc');\n }\n }\n\n abstract _getEntities(data?: object): Observable<E[]>;\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-common-stores-entities.mjs","sources":["../../../../libs/common/src/stores/entities/entities.store.ts","../../../../libs/common/src/stores/entities/ng-atomic-common-stores-entities.ts"],"sourcesContent":["import { ComponentStore } from '@ngrx/component-store';\nimport { compareById } from '@ng-atomic/common/utils';\nimport { Observable } from 'rxjs';\nimport { distinctUntilChanged, tap, filter, switchMap } from 'rxjs/operators';\n\nexport interface EntitiesState<E> {\n userId: string; \n entities: E[]\n}\n\nexport const distinctUntilChangedArray = <T>() => {\n return distinctUntilChanged<T>((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur));\n};\n\nexport abstract class EntitiesStore<S extends EntitiesState<E>, E extends {id: string}> extends ComponentStore<S> {\n get entities() { return this.get().entities; }\n\n userId$ = this.select(state => state.userId).pipe(filter(userId => !!userId));\n entities$ = this.select(({entities}) => entities ? entities.sort(compareById) : []);\n \n constructor(initialState: S) {\n super(initialState);\n this.getEntities(this.userId$);\n }\n\n setUserId = this.updater((state, userId: string) => ({...state, userId}));\n setEntities = this.updater((state, entities: E[]) => ({...state, entities}));\n\n getEntities = this.effect((userId$: Observable<string>) => userId$.pipe(\n filter(userId => !!userId),\n switchMap((userId) => this._getEntities({userId})),\n tap((entities: E[]) => this.setEntities(entities)),\n )); \n\n abstract _getEntities(data?: object): Observable<E[]>;\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUO,MAAM,yBAAyB,GAAG,MAAQ;IAC/C,OAAO,oBAAoB,CAAI,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5F,EAAE;AAEI,MAAgB,aAAkE,SAAQ,cAAiB,CAAA;AAM/G,IAAA,WAAA,CAAY,YAAe,EAAA;QACzB,KAAK,CAAC,YAAY,CAAC,CAAC;QAJtB,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9E,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAK,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;QAOpF,IAAS,CAAA,SAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,MAAc,MAAM,EAAC,GAAG,KAAK,EAAE,MAAM,EAAC,CAAC,CAAC,CAAC;QAC1E,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,QAAa,MAAM,EAAC,GAAG,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC,CAAC;QAE7E,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,OAA2B,KAAK,OAAO,CAAC,IAAI,CACrE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,EAC1B,SAAS,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,EAClD,GAAG,CAAC,CAAC,QAAa,KAAK,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CACnD,CAAC,CAAC;AAVD,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAChC;IARD,IAAI,QAAQ,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE;AAoB/C;;ACnCD;;AAEG;;;;"}
@@ -0,0 +1,39 @@
1
+ import { ComponentStore } from '@ngrx/component-store';
2
+ import { Page } from '@ng-atomic/common/utils/page';
3
+ import { tap } from 'rxjs';
4
+ import * as i0 from '@angular/core';
5
+ import { Injectable } from '@angular/core';
6
+
7
+ class PaginationStore extends ComponentStore {
8
+ constructor() {
9
+ super({ page: Page.from() });
10
+ this.page$ = this.select(state => state.page);
11
+ this.setPage = this.updater((state, page) => ({ ...state, page }));
12
+ this.setSortKey = this.updater((state, sortKey) => ({ ...state, page: this.page.patch({ sortKey }) }));
13
+ this.setSortOrder = this.updater((state, sortOrder) => ({ ...state, page: this.page.patch({ sortOrder }) }));
14
+ this.patch = this.updater((state, page) => ({ ...state, page: state.page.patch(page) }));
15
+ this.getPageLength = this.effect((entities$) => entities$.pipe(tap(({ length }) => this.setPage(this.page.patch({ length })))));
16
+ }
17
+ get page() { return this.get(state => state.page); }
18
+ get sortKey() { return this.page.sortKey; }
19
+ get sortOrder() { return this.page.sortOrder; }
20
+ get start() { return this.page.start; }
21
+ get end() { return this.page.end; }
22
+ changeSortFromEvent(sortKey, page = this.page) {
23
+ const reverse = (order) => order === 'asc' ? 'desc' : 'asc';
24
+ const sortOrder = sortKey === page.sortKey ? reverse(page.sortOrder) : 'asc';
25
+ this.patch({ sortKey, sortOrder });
26
+ }
27
+ }
28
+ PaginationStore.ɵfac = function PaginationStore_Factory(t) { return new (t || PaginationStore)(); };
29
+ PaginationStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: PaginationStore, factory: PaginationStore.ɵfac });
30
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationStore, [{
31
+ type: Injectable
32
+ }], function () { return []; }, null); })();
33
+
34
+ /**
35
+ * Generated bundle index. Do not edit.
36
+ */
37
+
38
+ export { PaginationStore };
39
+ //# sourceMappingURL=ng-atomic-common-stores-pagination.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-pagination.mjs","sources":["../../../../libs/common/src/stores/pagination/pagination.store.ts","../../../../libs/common/src/stores/pagination/ng-atomic-common-stores-pagination.ts"],"sourcesContent":["import { ComponentStore } from \"@ngrx/component-store\";\nimport { Page } from '@ng-atomic/common/utils/page';\nimport { Observable, tap } from \"rxjs\";\nimport { Injectable } from \"@angular/core\";\n\nexport interface EntitiesState<E> {\n page: Page;\n}\n\n@Injectable()\nexport class PaginationStore extends ComponentStore<any> {\n constructor() {super({page: Page.from()})}\n\n get page() { return this.get(state => state.page); }\n get sortKey() { return this.page.sortKey; }\n get sortOrder() { return this.page.sortOrder; }\n get start() { return this.page.start; }\n get end() { return this.page.end; }\n\n page$ = this.select(state => state.page);\n\n setPage = this.updater((state, page: Page) => ({...state, page}));\n setSortKey = this.updater((state, sortKey: string) => ({...state, page: this.page.patch({sortKey})}));\n setSortOrder = this.updater((state, sortOrder: 'asc' | 'desc') => ({...state, page: this.page.patch({sortOrder})}));\n patch = this.updater((state, page: Partial<Page>) => ({...state, page: state.page.patch(page)}));\n \n getPageLength = this.effect((entities$: Observable<any[]>) => entities$.pipe(\n tap(({length}: any[]) => this.setPage(this.page.patch({length}))),\n ));\n\n changeSortFromEvent(sortKey: string, page: Page = this.page) {\n const reverse = (order: 'asc' | 'desc') => order === 'asc' ? 'desc' : 'asc';\n const sortOrder = sortKey === page.sortKey ? reverse(page.sortOrder) : 'asc';\n this.patch({sortKey, sortOrder});\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAUM,MAAO,eAAgB,SAAQ,cAAmB,CAAA;AACtD,IAAA,WAAA,GAAA;QAAe,KAAK,CAAC,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAC,CAAC,CAAA;AAQzC,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;QAEzC,IAAO,CAAA,OAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAU,MAAM,EAAC,GAAG,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;AAClE,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,OAAe,MAAM,EAAC,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAC,OAAO,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC;AACtG,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,SAAyB,MAAM,EAAC,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAC,SAAS,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC;AACpH,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,IAAmB,MAAM,EAAC,GAAG,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC,CAAC;AAEjG,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,SAA4B,KAAK,SAAS,CAAC,IAAI,CAC1E,GAAG,CAAC,CAAC,EAAC,MAAM,EAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,CAAC,CAClE,CAAC,CAAC;KAjBuC;AAE1C,IAAA,IAAI,IAAI,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE;IACpD,IAAI,OAAO,GAAK,EAAA,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;IAC3C,IAAI,SAAS,GAAK,EAAA,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;IAC/C,IAAI,KAAK,GAAK,EAAA,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;IACvC,IAAI,GAAG,GAAK,EAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AAanC,IAAA,mBAAmB,CAAC,OAAe,EAAE,IAAa,GAAA,IAAI,CAAC,IAAI,EAAA;AACzD,QAAA,MAAM,OAAO,GAAG,CAAC,KAAqB,KAAK,KAAK,KAAK,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;QAC5E,MAAM,SAAS,GAAG,OAAO,KAAK,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QAC7E,IAAI,CAAC,KAAK,CAAC,EAAC,OAAO,EAAE,SAAS,EAAC,CAAC,CAAC;KAClC;;8EAxBU,eAAe,GAAA,CAAA,EAAA,CAAA;AAAf,eAAA,CAAA,KAAA,iBAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,KAAA,EAAA,eAAe,WAAf,eAAe,CAAA,IAAA,EAAA,CAAA,CAAA;uFAAf,eAAe,EAAA,CAAA;cAD3B,UAAU;;;ACTX;;AAEG;;;;"}
@@ -0,0 +1,36 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, Optional, Inject } from '@angular/core';
3
+ import { DOMAIN_LANG_MAP } from '@ng-atomic/common/pipes/domain';
4
+ import * as i1 from '@ng-atomic/common/services/query-resolver';
5
+ import { ComponentStore } from '@ngrx/component-store';
6
+
7
+ class QueryStore extends ComponentStore {
8
+ constructor(queryResolver, langMap) {
9
+ super({ query: '' });
10
+ this.queryResolver = queryResolver;
11
+ this.langMap = langMap;
12
+ this.query$ = this.select((state) => state.query);
13
+ this.setQuery = this.updater((state, query) => ({ ...state, query }));
14
+ }
15
+ get query() { return this.get().query; }
16
+ resolve(entities) {
17
+ return this.queryResolver.resolve(entities, this.query, this.langMap);
18
+ }
19
+ }
20
+ QueryStore.ɵfac = function QueryStore_Factory(t) { return new (t || QueryStore)(i0.ɵɵinject(i1.QueryResolverService), i0.ɵɵinject(DOMAIN_LANG_MAP, 8)); };
21
+ QueryStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: QueryStore, factory: QueryStore.ɵfac });
22
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(QueryStore, [{
23
+ type: Injectable
24
+ }], function () { return [{ type: i1.QueryResolverService }, { type: undefined, decorators: [{
25
+ type: Optional
26
+ }, {
27
+ type: Inject,
28
+ args: [DOMAIN_LANG_MAP]
29
+ }] }]; }, null); })();
30
+
31
+ /**
32
+ * Generated bundle index. Do not edit.
33
+ */
34
+
35
+ export { QueryStore };
36
+ //# sourceMappingURL=ng-atomic-common-stores-query.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-query.mjs","sources":["../../../../libs/common/src/stores/query/query.store.ts","../../../../libs/common/src/stores/query/ng-atomic-common-stores-query.ts"],"sourcesContent":["import { Inject, Injectable, Optional } from \"@angular/core\";\nimport { DOMAIN_LANG_MAP } from \"@ng-atomic/common/pipes/domain\";\nimport { QueryResolverService } from \"@ng-atomic/common/services/query-resolver\";\nimport { ComponentStore } from \"@ngrx/component-store\";\n\nexport interface QueryState {\n query: string;\n}\n\n@Injectable()\nexport class QueryStore<E> extends ComponentStore<QueryState> {\n constructor(\n protected queryResolver: QueryResolverService,\n @Optional() @Inject(DOMAIN_LANG_MAP) protected langMap: Record<string, string>,\n ) {\n super({query: ''});\n }\n\n get query(): string { return this.get().query; }\n query$ = this.select((state) => state.query);\n\n setQuery = this.updater((state, query: string) => ({...state, query}));\n\n resolve(entities: E[]): E[] {\n return this.queryResolver.resolve(entities, this.query, this.langMap);\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAUM,MAAO,UAAc,SAAQ,cAA0B,CAAA;IAC3D,WACY,CAAA,aAAmC,EACE,OAA+B,EAAA;AAE9E,QAAA,KAAK,CAAC,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;QAHT,IAAa,CAAA,aAAA,GAAb,aAAa,CAAsB;QACE,IAAO,CAAA,OAAA,GAAP,OAAO,CAAwB;AAMhF,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;QAE7C,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAa,MAAM,EAAC,GAAG,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;KALtE;IAED,IAAI,KAAK,GAAa,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;AAKhD,IAAA,OAAO,CAAC,QAAa,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KACvE;;AAfU,UAAA,CAAA,IAAA,GAAA,SAAA,kBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,UAAU,oDAGC,eAAe,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;AAH1B,UAAA,CAAA,KAAA,iBAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,KAAA,EAAA,UAAU,WAAV,UAAU,CAAA,IAAA,EAAA,CAAA,CAAA;uFAAV,UAAU,EAAA,CAAA;cADtB,UAAU;;sBAIN,QAAQ;;sBAAI,MAAM;uBAAC,eAAe,CAAA;;;ACbvC;;AAEG;;;;"}
@@ -0,0 +1,36 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable } from '@angular/core';
3
+ import { ComponentStore } from '@ngrx/component-store';
4
+
5
+ class SelectionStore extends ComponentStore {
6
+ constructor() {
7
+ super({ idSet: new Set(), initialIdSet: null });
8
+ this.setIdSet = this.updater((state, idSet) => ({ ...state, idSet }));
9
+ this.setInitialIdSet = this.updater((state, initialIdSet) => ({ ...state, initialIdSet }));
10
+ this.addIds = (ids) => this.setIdSet(new Set([...this.idSet, ...ids]));
11
+ this.addId = (id) => this.addIds([id]);
12
+ this.removeId = (id) => this.setIdSet(new Set([...this.idSet].filter(_id => _id !== id)));
13
+ this.toggleId = (id) => this.idSet.has(id) ? this.removeId(id) : this.addId(id);
14
+ }
15
+ get idSet() { return this.get(state => state.idSet); }
16
+ get initialIdSet() { return this.get(state => state.initialIdSet); }
17
+ getSelectedAndUnselected() {
18
+ const unselectedIdSet = new Set([...this.initialIdSet].filter(id => !this.idSet.has(id)));
19
+ return [this.idSet, unselectedIdSet];
20
+ }
21
+ filterBySelectedIds(entities) {
22
+ return entities.filter(({ id }) => this.idSet.has(id));
23
+ }
24
+ }
25
+ SelectionStore.ɵfac = function SelectionStore_Factory(t) { return new (t || SelectionStore)(); };
26
+ SelectionStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SelectionStore, factory: SelectionStore.ɵfac });
27
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SelectionStore, [{
28
+ type: Injectable
29
+ }], function () { return []; }, null); })();
30
+
31
+ /**
32
+ * Generated bundle index. Do not edit.
33
+ */
34
+
35
+ export { SelectionStore };
36
+ //# sourceMappingURL=ng-atomic-common-stores-selection.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-selection.mjs","sources":["../../../../libs/common/src/stores/selection/selection.store.ts","../../../../libs/common/src/stores/selection/ng-atomic-common-stores-selection.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { ComponentStore } from \"@ngrx/component-store\";\n\nexport interface SelectionState {\n idSet: Set<string>;\n initialIdSet: Set<string> | null;\n\n}\n\n@Injectable()\nexport class SelectionStore extends ComponentStore<SelectionState> {\n get idSet(): Set<string> { return this.get(state => state.idSet); }\n get initialIdSet(): Set<string> { return this.get(state => state.initialIdSet); }\n\n constructor() {\n super({idSet: new Set(), initialIdSet: null});\n }\n\n setIdSet = this.updater((state, idSet: Set<string>) => ({...state, idSet}));\n setInitialIdSet = this.updater((state, initialIdSet: Set<string>) => ({...state, initialIdSet}));\n\n addIds = (ids: string[]) => this.setIdSet(new Set([...this.idSet, ...ids]));\n addId = (id: string) => this.addIds([id]);\n \n removeId = (id: string) => this.setIdSet(new Set([...this.idSet].filter(_id => _id !== id)));\n toggleId = (id: string) => this.idSet.has(id) ? this.removeId(id) : this.addId(id);\n\n getSelectedAndUnselected(): [Set<string>, Set<string>] {\n const unselectedIdSet = new Set([...this.initialIdSet].filter(id => !this.idSet.has(id)));\n return [this.idSet, unselectedIdSet];\n }\n\n filterBySelectedIds<E extends {id: string}>(entities: E[]): E[] {\n return entities.filter(({id}) => this.idSet.has(id));\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUM,MAAO,cAAe,SAAQ,cAA8B,CAAA;AAIhE,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,CAAC,EAAC,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,YAAY,EAAE,IAAI,EAAC,CAAC,CAAC;QAGhD,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAkB,MAAM,EAAC,GAAG,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;QAC5E,IAAe,CAAA,eAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,YAAyB,MAAM,EAAC,GAAG,KAAK,EAAE,YAAY,EAAC,CAAC,CAAC,CAAC;QAEjG,IAAM,CAAA,MAAA,GAAG,CAAC,GAAa,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5E,QAAA,IAAA,CAAA,KAAK,GAAG,CAAC,EAAU,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAE1C,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,EAAU,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7F,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,EAAU,KAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KATnF;AALD,IAAA,IAAI,KAAK,GAAkB,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;AACnE,IAAA,IAAI,YAAY,GAAkB,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE;IAejF,wBAAwB,GAAA;AACtB,QAAA,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1F,QAAA,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;KACtC;AAED,IAAA,mBAAmB,CAAyB,QAAa,EAAA;QACvD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAC,EAAE,EAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KACtD;;4EAxBU,cAAc,GAAA,CAAA,EAAA,CAAA;AAAd,cAAA,CAAA,KAAA,iBAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,KAAA,EAAA,cAAc,WAAd,cAAc,CAAA,IAAA,EAAA,CAAA,CAAA;uFAAd,cAAc,EAAA,CAAA;cAD1B,UAAU;;;ACTX;;AAEG;;;;"}
@@ -0,0 +1,26 @@
1
+ class Page {
2
+ static from(event = {}) {
3
+ return Object.assign(new Page(), {
4
+ pageSize: 50,
5
+ pageIndex: 0,
6
+ length: 100,
7
+ ...event
8
+ });
9
+ }
10
+ get start() {
11
+ return this.pageIndex * this.pageSize;
12
+ }
13
+ get end() {
14
+ return Math.min((this.pageIndex + 1) * this.pageSize, this.length);
15
+ }
16
+ patch(obj) {
17
+ return Page.from({ ...this, ...obj });
18
+ }
19
+ }
20
+
21
+ /**
22
+ * Generated bundle index. Do not edit.
23
+ */
24
+
25
+ export { Page };
26
+ //# sourceMappingURL=ng-atomic-common-utils-page.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-utils-page.mjs","sources":["../../../../libs/common/src/utils/page/page.ts","../../../../libs/common/src/utils/page/ng-atomic-common-utils-page.ts"],"sourcesContent":["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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"MAOa,IAAI,CAAA;AACf,IAAA,OAAO,IAAI,CAAC,KAAA,GAAuB,EAAE,EAAA;AACnC,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE;AAC/B,YAAA,QAAQ,EAAE,EAAE;AACZ,YAAA,SAAS,EAAE,CAAC;AACZ,YAAA,MAAM,EAAE,GAAG;AACX,YAAA,GAAG,KAAK;AACT,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;KACvC;AAED,IAAA,IAAI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;KACpE;AAED,IAAA,KAAK,CAAC,GAAkB,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,EAAC,GAAG,IAAI,EAAE,GAAG,GAAG,EAAC,CAAC,CAAC;KACrC;AACF;;AC5BD;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-atomic/common",
3
- "version": "4.1.0",
3
+ "version": "4.2.0",
4
4
  "license": "MIT",
5
5
  "module": "fesm2015/ng-atomic-common.mjs",
6
6
  "es2020": "fesm2020/ng-atomic-common.mjs",
@@ -140,6 +140,30 @@
140
140
  "node": "./fesm2015/ng-atomic-common-stores-entity.mjs",
141
141
  "default": "./fesm2020/ng-atomic-common-stores-entity.mjs"
142
142
  },
143
+ "./stores/pagination": {
144
+ "types": "./stores/pagination/index.d.ts",
145
+ "esm2020": "./esm2020/stores/pagination/ng-atomic-common-stores-pagination.mjs",
146
+ "es2020": "./fesm2020/ng-atomic-common-stores-pagination.mjs",
147
+ "es2015": "./fesm2015/ng-atomic-common-stores-pagination.mjs",
148
+ "node": "./fesm2015/ng-atomic-common-stores-pagination.mjs",
149
+ "default": "./fesm2020/ng-atomic-common-stores-pagination.mjs"
150
+ },
151
+ "./stores/query": {
152
+ "types": "./stores/query/index.d.ts",
153
+ "esm2020": "./esm2020/stores/query/ng-atomic-common-stores-query.mjs",
154
+ "es2020": "./fesm2020/ng-atomic-common-stores-query.mjs",
155
+ "es2015": "./fesm2015/ng-atomic-common-stores-query.mjs",
156
+ "node": "./fesm2015/ng-atomic-common-stores-query.mjs",
157
+ "default": "./fesm2020/ng-atomic-common-stores-query.mjs"
158
+ },
159
+ "./stores/selection": {
160
+ "types": "./stores/selection/index.d.ts",
161
+ "esm2020": "./esm2020/stores/selection/ng-atomic-common-stores-selection.mjs",
162
+ "es2020": "./fesm2020/ng-atomic-common-stores-selection.mjs",
163
+ "es2015": "./fesm2015/ng-atomic-common-stores-selection.mjs",
164
+ "node": "./fesm2015/ng-atomic-common-stores-selection.mjs",
165
+ "default": "./fesm2020/ng-atomic-common-stores-selection.mjs"
166
+ },
143
167
  "./utils": {
144
168
  "types": "./utils/index.d.ts",
145
169
  "esm2020": "./esm2020/utils/ng-atomic-common-utils.mjs",
@@ -147,6 +171,14 @@
147
171
  "es2015": "./fesm2015/ng-atomic-common-utils.mjs",
148
172
  "node": "./fesm2015/ng-atomic-common-utils.mjs",
149
173
  "default": "./fesm2020/ng-atomic-common-utils.mjs"
174
+ },
175
+ "./utils/page": {
176
+ "types": "./utils/page/index.d.ts",
177
+ "esm2020": "./esm2020/utils/page/ng-atomic-common-utils-page.mjs",
178
+ "es2020": "./fesm2020/ng-atomic-common-utils-page.mjs",
179
+ "es2015": "./fesm2015/ng-atomic-common-utils-page.mjs",
180
+ "node": "./fesm2015/ng-atomic-common-utils-page.mjs",
181
+ "default": "./fesm2020/ng-atomic-common-utils-page.mjs"
150
182
  }
151
183
  },
152
184
  "sideEffects": false,
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.pipe.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/pagination.pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,aAAa,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAA0B,sBAAsB,EAA6B,MAAM,uCAAuC,CAAC;;AAElI,qBAIa,cAAe,YAAW,aAAa;IAMhD,OAAO,CAAC,WAAW;IALrB,OAAO,CAAC,SAAS,CAAmB;gBAK1B,WAAW,EAAE,sBAAsB;IAK7C,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAC,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC;yCAXxH,cAAc;uCAAd,cAAc;CAe1B"}
1
+ {"version":3,"file":"pagination.pipe.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/pagination.pipe.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,aAAa,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAA0B,sBAAsB,EAA6B,MAAM,uCAAuC,CAAC;;AAElI,qBAIa,cAAe,YAAW,aAAa;IAMhD,OAAO,CAAC,WAAW;IALrB,OAAO,CAAC,SAAS,CAAmB;gBAK1B,WAAW,EAAE,sBAAsB;IAK7C,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAC,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC;yCAXxH,cAAc;uCAAd,cAAc;CAc1B"}
@@ -1,40 +1,20 @@
1
1
  import { ComponentStore } from '@ngrx/component-store';
2
- import { QueryResolverService } from '@ng-atomic/common/services/query-resolver';
3
2
  import { Observable } from 'rxjs';
4
- export declare type Page = any;
5
3
  export interface EntitiesState<E> {
6
4
  userId: string;
7
- idSet: Set<string>;
8
- query: string;
9
5
  entities: E[];
10
- page: Page;
11
- sortKey?: string;
12
- sortOrder?: 'asc' | 'desc';
13
6
  }
7
+ export declare const distinctUntilChangedArray: <T>() => import("rxjs").MonoTypeOperatorFunction<T>;
14
8
  export declare abstract class EntitiesStore<S extends EntitiesState<E>, E extends {
15
9
  id: string;
16
10
  }> extends ComponentStore<S> {
17
- queryResolver: QueryResolverService;
18
- abstract LANG_MAP: Record<string, string>;
19
- get page(): Page;
20
- get sortKey(): string;
21
- get sortOrder(): string;
22
- get idSet(): Set<string>;
11
+ get entities(): E[];
23
12
  userId$: Observable<string>;
24
13
  entities$: Observable<E[]>;
25
- constructor(initialState: S, queryResolver?: QueryResolverService);
14
+ constructor(initialState: S);
26
15
  setUserId: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
27
16
  setEntities: (observableOrValue: E[] | Observable<E[]>) => import("rxjs").Subscription;
28
- setPage: (() => void) | ((observableOrValue: any) => import("rxjs").Subscription);
29
- setIdSet: (observableOrValue: Set<string> | Observable<Set<string>>) => import("rxjs").Subscription;
30
- setSortKey: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
31
- setSortOrder: (observableOrValue: "asc" | "desc" | Observable<"asc" | "desc">) => import("rxjs").Subscription;
32
- addId: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
33
- removeId: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
34
- setQuery: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
35
- getPage: (observableOrValue: E[] | Observable<E[]>) => import("rxjs").Subscription;
36
17
  getEntities: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
37
- changeSortFromEvent(name: string): void;
38
18
  abstract _getEntities(data?: object): Observable<E[]>;
39
19
  }
40
20
  //# sourceMappingURL=entities.store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entities.store.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/entities/entities.store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,oBAAY,IAAI,GAAG,GAAG,CAAA;AAEtB,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,EAAE,CAAA;IACb,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B;AAED,8BAAsB,aAAa,CAAC,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS;IAAC,EAAE,EAAE,MAAM,CAAA;CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAetG,aAAa;IAdtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE1C,IAAI,IAAI,IAAI,IAAI,CAA0C;IAC1D,IAAI,OAAO,IAAI,MAAM,CAA6C;IAClE,IAAI,SAAS,IAAI,MAAM,CAA+C;IACtE,IAAI,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,CAA2C;IAEnE,OAAO,qBAAuE;IAC9E,SAAS,kBAEgF;gBAGvF,YAAY,EAAE,CAAC,EACR,aAAa,uBAA6B;IAOnD,SAAS,kFAAiE;IAC1E,WAAW,4EAAkE;IAC7E,OAAO,2EAA2D;IAClE,QAAQ,4FAAoE;IAC5E,UAAU,kFAAmE;IAC7E,YAAY,kGAA+E;IAC3F,KAAK,kFAA2F;IAChG,QAAQ,kFAEL;IACH,QAAQ,kFAA+D;IAEvE,OAAO,4EAEJ;IAEH,WAAW,kFAIR;IAEH,mBAAmB,CAAC,IAAI,EAAE,MAAM;IAUhC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC;CACtD"}
1
+ {"version":3,"file":"entities.store.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/entities/entities.store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,EAAE,CAAA;CACd;AAED,eAAO,MAAM,yBAAyB,qDAErC,CAAC;AAEF,8BAAsB,aAAa,CAAC,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS;IAAC,EAAE,EAAE,MAAM,CAAA;CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAC/G,IAAI,QAAQ,QAAkC;IAE9C,OAAO,qBAAuE;IAC9E,SAAS,kBAA2E;gBAExE,YAAY,EAAE,CAAC;IAK3B,SAAS,kFAAiE;IAC1E,WAAW,4EAAkE;IAE7E,WAAW,kFAIR;IAEH,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC;CACtD"}
@@ -0,0 +1,2 @@
1
+ export * from './pagination.store';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-pagination.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/pagination/ng-atomic-common-stores-pagination.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { ComponentStore } from "@ngrx/component-store";
2
+ import { Page } from '@ng-atomic/common/utils/page';
3
+ import { Observable } from "rxjs";
4
+ import * as i0 from "@angular/core";
5
+ export interface EntitiesState<E> {
6
+ page: Page;
7
+ }
8
+ export declare class PaginationStore extends ComponentStore<any> {
9
+ constructor();
10
+ get page(): any;
11
+ get sortKey(): any;
12
+ get sortOrder(): any;
13
+ get start(): any;
14
+ get end(): any;
15
+ page$: Observable<any>;
16
+ setPage: (observableOrValue: Page | Observable<Page>) => import("rxjs").Subscription;
17
+ setSortKey: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
18
+ setSortOrder: (observableOrValue: "asc" | "desc" | Observable<"asc" | "desc">) => import("rxjs").Subscription;
19
+ patch: (observableOrValue: Partial<Page> | Observable<Partial<Page>>) => import("rxjs").Subscription;
20
+ getPageLength: (observableOrValue: any[] | Observable<any[]>) => import("rxjs").Subscription;
21
+ changeSortFromEvent(sortKey: string, page?: Page): void;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<PaginationStore, never>;
23
+ static ɵprov: i0.ɵɵInjectableDeclaration<PaginationStore>;
24
+ }
25
+ //# sourceMappingURL=pagination.store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.store.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/pagination/pagination.store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAO,MAAM,MAAM,CAAC;;AAGvC,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,qBACa,eAAgB,SAAQ,cAAc,CAAC,GAAG,CAAC;;IAGtD,IAAI,IAAI,QAA4C;IACpD,IAAI,OAAO,QAAgC;IAC3C,IAAI,SAAS,QAAkC;IAC/C,IAAI,KAAK,QAA8B;IACvC,IAAI,GAAG,QAA4B;IAEnC,KAAK,kBAAoC;IAEzC,OAAO,8EAA2D;IAClE,UAAU,kFAA4F;IACtG,YAAY,kGAAwG;IACpH,KAAK,gGAA4F;IAEjG,aAAa,gFAEV;IAEH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,IAAgB;yCApBhD,eAAe;6CAAf,eAAe;CA0B3B"}
@@ -0,0 +1,2 @@
1
+ export * from './query.store';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/query/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-query.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/query/ng-atomic-common-stores-query.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { QueryResolverService } from "@ng-atomic/common/services/query-resolver";
2
+ import { ComponentStore } from "@ngrx/component-store";
3
+ import * as i0 from "@angular/core";
4
+ export interface QueryState {
5
+ query: string;
6
+ }
7
+ export declare class QueryStore<E> extends ComponentStore<QueryState> {
8
+ protected queryResolver: QueryResolverService;
9
+ protected langMap: Record<string, string>;
10
+ constructor(queryResolver: QueryResolverService, langMap: Record<string, string>);
11
+ get query(): string;
12
+ query$: import("rxjs").Observable<string>;
13
+ setQuery: (observableOrValue: string | import("rxjs").Observable<string>) => import("rxjs").Subscription;
14
+ resolve(entities: E[]): E[];
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<QueryStore<any>, [null, { optional: true; }]>;
16
+ static ɵprov: i0.ɵɵInjectableDeclaration<QueryStore<any>>;
17
+ }
18
+ //# sourceMappingURL=query.store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.store.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/query/query.store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;;AAEvD,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBACa,UAAU,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,UAAU,CAAC;IAEzD,SAAS,CAAC,aAAa,EAAE,oBAAoB;IACR,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;gBADpE,aAAa,EAAE,oBAAoB,EACE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAKhF,IAAI,KAAK,IAAI,MAAM,CAA6B;IAChD,MAAM,oCAAuC;IAE7C,QAAQ,iGAA+D;IAEvE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;yCAbhB,UAAU;6CAAV,UAAU;CAiBtB"}
@@ -0,0 +1,2 @@
1
+ export * from './selection.store';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/selection/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-selection.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/selection/ng-atomic-common-stores-selection.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { ComponentStore } from "@ngrx/component-store";
2
+ import * as i0 from "@angular/core";
3
+ export interface SelectionState {
4
+ idSet: Set<string>;
5
+ initialIdSet: Set<string> | null;
6
+ }
7
+ export declare class SelectionStore extends ComponentStore<SelectionState> {
8
+ get idSet(): Set<string>;
9
+ get initialIdSet(): Set<string>;
10
+ constructor();
11
+ setIdSet: (observableOrValue: Set<string> | import("rxjs").Observable<Set<string>>) => import("rxjs").Subscription;
12
+ setInitialIdSet: (observableOrValue: Set<string> | import("rxjs").Observable<Set<string>>) => import("rxjs").Subscription;
13
+ addIds: (ids: string[]) => import("rxjs").Subscription;
14
+ addId: (id: string) => import("rxjs").Subscription;
15
+ removeId: (id: string) => import("rxjs").Subscription;
16
+ toggleId: (id: string) => import("rxjs").Subscription;
17
+ getSelectedAndUnselected(): [Set<string>, Set<string>];
18
+ filterBySelectedIds<E extends {
19
+ id: string;
20
+ }>(entities: E[]): E[];
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectionStore, never>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<SelectionStore>;
23
+ }
24
+ //# sourceMappingURL=selection.store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.store.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/selection/selection.store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;;AAEvD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;CAElC;AAED,qBACa,cAAe,SAAQ,cAAc,CAAC,cAAc,CAAC;IAChE,IAAI,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,CAA2C;IACnE,IAAI,YAAY,IAAI,GAAG,CAAC,MAAM,CAAC,CAAkD;;IAMjF,QAAQ,2GAAoE;IAC5E,eAAe,2GAAkF;IAEjG,MAAM,QAAS,MAAM,EAAE,iCAAqD;IAC5E,KAAK,OAAQ,MAAM,iCAAuB;IAE1C,QAAQ,OAAQ,MAAM,iCAAuE;IAC7F,QAAQ,OAAQ,MAAM,iCAA8D;IAEpF,wBAAwB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAKtD,mBAAmB,CAAC,CAAC,SAAS;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;yCAtBpD,cAAc;6CAAd,cAAc;CAyB1B"}
@@ -0,0 +1,2 @@
1
+ export * from './page';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/utils/page/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-utils-page.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/utils/page/ng-atomic-common-utils-page.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { PageEvent } from '@angular/material/paginator';
2
+ export interface Page extends PageEvent {
3
+ sortKey: string;
4
+ sortOrder: 'asc' | 'desc';
5
+ }
6
+ export declare class Page {
7
+ static from(event?: Partial<Page>): Page;
8
+ get start(): number;
9
+ get end(): number;
10
+ patch(obj: Partial<Page>): Page;
11
+ }
12
+ //# sourceMappingURL=page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/utils/page/page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD,MAAM,WAAW,IAAK,SAAQ,SAAS;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AAED,qBAAa,IAAI;IACf,MAAM,CAAC,IAAI,CAAC,KAAK,GAAE,OAAO,CAAC,IAAI,CAAM,GAAG,IAAI;IAS5C,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAGhC"}