@ng-atomic/common 4.13.0 → 4.15.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 (70) hide show
  1. package/esm2020/models/action.mjs +1 -1
  2. package/esm2020/pipes/pagination/index.mjs +2 -1
  3. package/esm2020/pipes/pagination/pagination.pipe.mjs +8 -9
  4. package/esm2020/pipes/pagination/pagination.transformer.mjs +5 -0
  5. package/esm2020/pipes/smart-sort-by/index.mjs +2 -1
  6. package/esm2020/pipes/smart-sort-by/smart-sort-by.pipe.mjs +2 -5
  7. package/esm2020/pipes/smart-sort-by/smart-sort-by.transformer.mjs +5 -0
  8. package/esm2020/services/loading/loading.service.mjs +5 -1
  9. package/esm2020/stores/entities/entities.store.mjs +8 -6
  10. package/esm2020/stores/pagination/pagination.store.mjs +1 -10
  11. package/esm2020/stores/query/query.store.mjs +2 -1
  12. package/esm2020/stores/sort/index.mjs +2 -0
  13. package/esm2020/stores/sort/ng-atomic-common-stores-sort.mjs +5 -0
  14. package/esm2020/stores/sort/sort.store.mjs +28 -0
  15. package/fesm2015/ng-atomic-common-pipes-pagination.mjs +13 -9
  16. package/fesm2015/ng-atomic-common-pipes-pagination.mjs.map +1 -1
  17. package/fesm2015/ng-atomic-common-pipes-smart-sort-by.mjs +2 -1
  18. package/fesm2015/ng-atomic-common-pipes-smart-sort-by.mjs.map +1 -1
  19. package/fesm2015/ng-atomic-common-services-loading.mjs +4 -0
  20. package/fesm2015/ng-atomic-common-services-loading.mjs.map +1 -1
  21. package/fesm2015/ng-atomic-common-stores-entities.mjs +7 -5
  22. package/fesm2015/ng-atomic-common-stores-entities.mjs.map +1 -1
  23. package/fesm2015/ng-atomic-common-stores-pagination.mjs +0 -9
  24. package/fesm2015/ng-atomic-common-stores-pagination.mjs.map +1 -1
  25. package/fesm2015/ng-atomic-common-stores-query.mjs +2 -0
  26. package/fesm2015/ng-atomic-common-stores-query.mjs.map +1 -1
  27. package/fesm2015/ng-atomic-common-stores-sort.mjs +37 -0
  28. package/fesm2015/ng-atomic-common-stores-sort.mjs.map +1 -0
  29. package/fesm2020/ng-atomic-common-pipes-pagination.mjs +13 -9
  30. package/fesm2020/ng-atomic-common-pipes-pagination.mjs.map +1 -1
  31. package/fesm2020/ng-atomic-common-pipes-smart-sort-by.mjs +2 -1
  32. package/fesm2020/ng-atomic-common-pipes-smart-sort-by.mjs.map +1 -1
  33. package/fesm2020/ng-atomic-common-services-loading.mjs +4 -0
  34. package/fesm2020/ng-atomic-common-services-loading.mjs.map +1 -1
  35. package/fesm2020/ng-atomic-common-stores-entities.mjs +7 -5
  36. package/fesm2020/ng-atomic-common-stores-entities.mjs.map +1 -1
  37. package/fesm2020/ng-atomic-common-stores-pagination.mjs +0 -9
  38. package/fesm2020/ng-atomic-common-stores-pagination.mjs.map +1 -1
  39. package/fesm2020/ng-atomic-common-stores-query.mjs +1 -0
  40. package/fesm2020/ng-atomic-common-stores-query.mjs.map +1 -1
  41. package/fesm2020/ng-atomic-common-stores-sort.mjs +35 -0
  42. package/fesm2020/ng-atomic-common-stores-sort.mjs.map +1 -0
  43. package/models/action.d.ts +3 -0
  44. package/models/action.d.ts.map +1 -1
  45. package/package.json +9 -1
  46. package/pipes/pagination/index.d.ts +1 -0
  47. package/pipes/pagination/index.d.ts.map +1 -1
  48. package/pipes/pagination/pagination.pipe.d.ts +9 -9
  49. package/pipes/pagination/pagination.pipe.d.ts.map +1 -1
  50. package/pipes/pagination/pagination.transformer.d.ts +10 -0
  51. package/pipes/pagination/pagination.transformer.d.ts.map +1 -0
  52. package/pipes/smart-sort-by/index.d.ts +1 -0
  53. package/pipes/smart-sort-by/index.d.ts.map +1 -1
  54. package/pipes/smart-sort-by/smart-sort-by.pipe.d.ts +1 -2
  55. package/pipes/smart-sort-by/smart-sort-by.pipe.d.ts.map +1 -1
  56. package/pipes/smart-sort-by/smart-sort-by.transformer.d.ts +3 -0
  57. package/pipes/smart-sort-by/smart-sort-by.transformer.d.ts.map +1 -0
  58. package/services/loading/loading.service.d.ts +1 -0
  59. package/services/loading/loading.service.d.ts.map +1 -1
  60. package/stores/entities/entities.store.d.ts +4 -6
  61. package/stores/entities/entities.store.d.ts.map +1 -1
  62. package/stores/pagination/pagination.store.d.ts +0 -5
  63. package/stores/pagination/pagination.store.d.ts.map +1 -1
  64. package/stores/query/query.store.d.ts +1 -1
  65. package/stores/query/query.store.d.ts.map +1 -1
  66. package/stores/sort/index.d.ts +2 -0
  67. package/stores/sort/index.d.ts.map +1 -0
  68. package/stores/sort/ng-atomic-common-stores-sort.d.ts.map +1 -0
  69. package/stores/sort/sort.store.d.ts +22 -0
  70. package/stores/sort/sort.store.d.ts.map +1 -0
@@ -0,0 +1,37 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable } from '@angular/core';
3
+ import { ComponentStore } from '@ngrx/component-store';
4
+
5
+ class SortStore extends ComponentStore {
6
+ constructor() {
7
+ super({ key: null, order: 'asc' });
8
+ this.state$ = this.select(state => state);
9
+ this.key$ = this.select(state => state.key);
10
+ this.order$ = this.select(state => state.order);
11
+ this.setKey = this.updater((state, key) => (Object.assign(Object.assign({}, state), { key })));
12
+ this.setOrder = this.updater((state, order) => (Object.assign(Object.assign({}, state), { order })));
13
+ }
14
+ get state() { return this.get(); }
15
+ get key() { return this.get().key; }
16
+ get order() { return this.get().order; }
17
+ changeSortFromEvent(key, state = this.state) {
18
+ const reverse = (order) => order === 'asc' ? 'desc' : 'asc';
19
+ const order = key === state.key ? reverse(state.order) : 'asc';
20
+ this.setKey(key);
21
+ this.setOrder(order);
22
+ }
23
+ }
24
+ SortStore.ɵfac = function SortStore_Factory(t) { return new (t || SortStore)(); };
25
+ SortStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SortStore, factory: SortStore.ɵfac });
26
+ (function () {
27
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SortStore, [{
28
+ type: Injectable
29
+ }], function () { return []; }, null);
30
+ })();
31
+
32
+ /**
33
+ * Generated bundle index. Do not edit.
34
+ */
35
+
36
+ export { SortStore };
37
+ //# sourceMappingURL=ng-atomic-common-stores-sort.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-sort.mjs","sources":["../../../../libs/common/src/stores/sort/sort.store.ts","../../../../libs/common/src/stores/sort/ng-atomic-common-stores-sort.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { ComponentStore } from \"@ngrx/component-store\";\nimport { Observable } from \"rxjs\";\n\nexport interface SortState {\n key: string;\n order: 'asc' | 'desc';\n}\n\n@Injectable()\nexport class SortStore extends ComponentStore<SortState> {\n constructor() {super({key: null, order: 'asc'})}\n\n get state() { return this.get(); }\n get key() { return this.get().key; }\n get order() { return this.get().order; }\n\n state$ = this.select(state => state);\n key$ = this.select(state => state.key);\n order$ = this.select(state => state.order);\n\n setKey = this.updater((state, key: string) => ({...state, key}));\n setOrder = this.updater((state, order: 'asc' | 'desc') => ({...state, order}));\n \n changeSortFromEvent(key: string, state: SortState = this.state) {\n const reverse = (order: 'asc' | 'desc') => order === 'asc' ? 'desc' : 'asc';\n const order = key === state.key ? reverse(state.order) : 'asc';\n this.setKey(key);\n this.setOrder(order);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUM,MAAO,SAAU,SAAQ,cAAyB,CAAA;AACtD,IAAA,WAAA,GAAA;QAAe,KAAK,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAA;AAM/C,QAAA,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;AACrC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAW,MAAU,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KAAE,GAAG,EAAA,CAAA,CAAE,CAAC,CAAC;QACjE,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAqB,MAAU,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KAAE,KAAK,EAAA,CAAA,CAAE,CAAC,CAAC;KAX/B;IAEhD,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE;IAClC,IAAI,GAAG,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE;IACpC,IAAI,KAAK,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;AASxC,IAAA,mBAAmB,CAAC,GAAW,EAAE,KAAmB,GAAA,IAAI,CAAC,KAAK,EAAA;AAC5D,QAAA,MAAM,OAAO,GAAG,CAAC,KAAqB,KAAK,KAAK,KAAK,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;QAC5E,MAAM,KAAK,GAAG,GAAG,KAAK,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AAC/D,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACtB;;kEAnBU,SAAS,GAAA,CAAA,EAAA,CAAA;AAAT,SAAA,CAAA,KAAA,iBAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,KAAA,EAAA,SAAS,WAAT,SAAS,CAAA,IAAA,EAAA,CAAA,CAAA;;4EAAT,SAAS,EAAA,CAAA;kBADrB,UAAU;;;;ACTX;;AAEG;;;;"}
@@ -1,19 +1,23 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe, Optional, Inject, NgModule } from '@angular/core';
3
- import { SlicePipe, CommonModule } from '@angular/common';
4
- import { smartSortByTransformer, SMART_SORT_BY_TRANSFORMER } from '@ng-atomic/common/pipes/smart-sort-by';
2
+ import { InjectionToken, Pipe, Optional, Inject, NgModule } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { smartSortByTransformer } from '@ng-atomic/common/pipes/smart-sort-by';
5
5
 
6
+ function paginationTransformer(items, page) {
7
+ return smartSortByTransformer(items, page.key, page.order).slice(page.start, page.end);
8
+ }
9
+
10
+ const PAGINATION_TRANSFORMER = new InjectionToken('[@ng-atomic/pipes] Pagination Transformer');
6
11
  class PaginationPipe {
7
12
  constructor(transformer) {
8
13
  this.transformer = transformer;
9
- this.slicePipe = new SlicePipe();
10
- this.transformer ?? (this.transformer = smartSortByTransformer);
14
+ this.transformer ?? (this.transformer = paginationTransformer);
11
15
  }
12
16
  transform(items, { sortKey, sortOrder, start, end }) {
13
- return this.slicePipe.transform(this.transformer(items, sortKey, sortOrder), start, end);
17
+ return this.transformer(items, { key: sortKey, order: sortOrder, start, end });
14
18
  }
15
19
  }
16
- PaginationPipe.ɵfac = function PaginationPipe_Factory(t) { return new (t || PaginationPipe)(i0.ɵɵdirectiveInject(SMART_SORT_BY_TRANSFORMER, 24)); };
20
+ PaginationPipe.ɵfac = function PaginationPipe_Factory(t) { return new (t || PaginationPipe)(i0.ɵɵdirectiveInject(PAGINATION_TRANSFORMER, 24)); };
17
21
  PaginationPipe.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "pagination", type: PaginationPipe, pure: true });
18
22
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationPipe, [{
19
23
  type: Pipe,
@@ -25,7 +29,7 @@ PaginationPipe.ɵpipe = /*@__PURE__*/ i0.ɵɵdefinePipe({ name: "pagination", ty
25
29
  type: Optional
26
30
  }, {
27
31
  type: Inject,
28
- args: [SMART_SORT_BY_TRANSFORMER]
32
+ args: [PAGINATION_TRANSFORMER]
29
33
  }] }]; }, null); })();
30
34
 
31
35
  class PaginationModule {
@@ -53,5 +57,5 @@ PaginationModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonM
53
57
  * Generated bundle index. Do not edit.
54
58
  */
55
59
 
56
- export { PaginationModule, PaginationPipe };
60
+ export { PAGINATION_TRANSFORMER, PaginationModule, PaginationPipe, paginationTransformer };
57
61
  //# sourceMappingURL=ng-atomic-common-pipes-pagination.mjs.map
@@ -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 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
+ {"version":3,"file":"ng-atomic-common-pipes-pagination.mjs","sources":["../../../../libs/common/src/pipes/pagination/pagination.transformer.ts","../../../../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 { smartSortByTransformer } from '@ng-atomic/common/pipes/smart-sort-by';\n\ninterface Page {\n start: number;\n end: number;\n key: string;\n order: 'asc' | 'desc';\n}\n\nexport type PaginationTransformer<E> = (items: E[], page: Page) => E[];\n\nexport function paginationTransformer<E>(items: E[], page: Page): E[] {\n return smartSortByTransformer(items, page.key, page.order).slice(page.start, page.end);\n}\n","import { Inject, InjectionToken, Optional, Pipe, PipeTransform } from '@angular/core';\nimport { PaginationTransformer, paginationTransformer } from './pagination.transformer';\n\nexport const PAGINATION_TRANSFORMER = new InjectionToken('[@ng-atomic/pipes] Pagination Transformer');\n\n@Pipe({\n name: 'pagination',\n pure: true,\n})\nexport class PaginationPipe<E> implements PipeTransform {\n\n constructor(\n @Optional()\n @Inject(PAGINATION_TRANSFORMER)\n private transformer: PaginationTransformer<E>,\n ) {\n this.transformer ??= paginationTransformer;\n }\n\n transform(items: E[], {sortKey, sortOrder, start, end}: {sortKey: string, sortOrder: 'asc' | 'desc', start: number, end: number}) {\n return this.transformer(items, { key: sortKey, order: 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":";;;;;AAWgB,SAAA,qBAAqB,CAAI,KAAU,EAAE,IAAU,EAAA;IAC7D,OAAO,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AACzF;;MCVa,sBAAsB,GAAG,IAAI,cAAc,CAAC,2CAA2C,EAAE;MAMzF,cAAc,CAAA;AAEzB,IAAA,WAAA,CAGU,WAAqC,EAAA;QAArC,IAAW,CAAA,WAAA,GAAX,WAAW,CAA0B;QAE7C,IAAI,CAAC,WAAW,KAAhB,IAAI,CAAC,WAAW,GAAK,qBAAqB,CAAC,CAAA;KAC5C;IAED,SAAS,CAAC,KAAU,EAAE,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAA2E,EAAA;QAC9H,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;KAChF;;AAZU,cAAA,CAAA,IAAA,GAAA,SAAA,sBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,cAAc,uBAIf,sBAAsB,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;iFAJrB,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;;sBAII,QAAQ;;sBACR,MAAM;uBAAC,sBAAsB,CAAA;;;MCIrB,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;;;;"}
@@ -3,10 +3,11 @@ import { InjectionToken, Pipe, Optional, Inject, NgModule } from '@angular/core'
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { sortBy } from 'lodash';
5
5
 
6
- const SMART_SORT_BY_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Sort By Transformer');
7
6
  const smartSortByTransformer = (items, key, order) => {
8
7
  return order === 'asc' ? sortBy(items, key) : sortBy(items, key).reverse();
9
8
  };
9
+
10
+ const SMART_SORT_BY_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Sort By Transformer');
10
11
  class SmartSortByPipe {
11
12
  constructor(transformer) {
12
13
  this.transformer = transformer;
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-pipes-smart-sort-by.mjs","sources":["../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.pipe.ts","../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.module.ts","../../../../libs/common/src/pipes/smart-sort-by/ng-atomic-common-pipes-smart-sort-by.ts"],"sourcesContent":["import { Inject, InjectionToken, Optional, Pipe, PipeTransform } from '@angular/core';\nimport { sortBy } from 'lodash';\n\nexport const SMART_SORT_BY_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Sort By Transformer');\nexport type SmartSortByTransformer = <T>(items: T[], key: string, order: 'asc' | 'desc') => T[];\nexport const smartSortByTransformer: SmartSortByTransformer = (items, key, order) => {\n return order === 'asc' ? sortBy(items, key) : sortBy(items, key).reverse();\n}\n\n@Pipe({\n name: 'smartSortBy',\n pure: true,\n})\nexport class SmartSortByPipe implements PipeTransform {\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[], key: string, order: 'asc' | 'desc' = 'asc'): T[] {\n return this.transformer(items, key, order);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SmartSortByPipe } from './smart-sort-by.pipe';\n\n\n\n@NgModule({\n declarations: [\n SmartSortByPipe\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SmartSortByPipe\n ]\n})\nexport class SmartSortByModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAGa,yBAAyB,GAAG,IAAI,cAAc,CAAC,+CAA+C,EAAE;AAEhG,MAAA,sBAAsB,GAA2B,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAI;IAClF,OAAO,KAAK,KAAK,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC7E,EAAC;MAMY,eAAe,CAAA;AAE1B,IAAA,WAAA,CAGU,WAAoC,EAAA;QAApC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;QAE5C,IAAI,CAAC,WAAW,KAAhB,IAAI,CAAC,WAAW,GAAK,sBAAsB,CAAC,CAAA;KAC7C;AAED,IAAA,SAAS,CAAI,KAAU,EAAE,GAAW,EAAE,QAAwB,KAAK,EAAA;QACjE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;KAC5C;;AAZU,eAAA,CAAA,IAAA,GAAA,SAAA,uBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,eAAe,uBAIhB,yBAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;mFAJxB,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,CAAA;uFAAf,eAAe,EAAA,CAAA;cAJ3B,IAAI;AAAC,QAAA,IAAA,EAAA,CAAA;AACJ,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,IAAI,EAAE,IAAI;AACX,aAAA,CAAA;;sBAII,QAAQ;;sBACR,MAAM;uBAAC,yBAAyB,CAAA;;;MCAxB,iBAAiB,CAAA;;kFAAjB,iBAAiB,GAAA,CAAA,EAAA,CAAA;mEAAjB,iBAAiB,EAAA,CAAA,CAAA;uEAN1B,YAAY,CAAA,EAAA,CAAA,CAAA;uFAMH,iBAAiB,EAAA,CAAA;cAX7B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE;oBACZ,eAAe;AAChB,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,YAAY;AACb,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,eAAe;AAChB,iBAAA;AACF,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,iBAAiB,EAT1B,EAAA,YAAA,EAAA,CAAA,eAAe,CAGf,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACdnB;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-common-pipes-smart-sort-by.mjs","sources":["../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.transformer.ts","../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.pipe.ts","../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.module.ts","../../../../libs/common/src/pipes/smart-sort-by/ng-atomic-common-pipes-smart-sort-by.ts"],"sourcesContent":["import { sortBy } from 'lodash';\n\nexport type SmartSortByTransformer = <T>(items: T[], key: string, order: 'asc' | 'desc') => T[];\nexport const smartSortByTransformer: SmartSortByTransformer = (items, key, order) => {\n return order === 'asc' ? sortBy(items, key) : sortBy(items, key).reverse();\n}\n","import { Inject, InjectionToken, Optional, Pipe, PipeTransform } from '@angular/core';\nimport { smartSortByTransformer, SmartSortByTransformer } from './smart-sort-by.transformer';\n\nexport const SMART_SORT_BY_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Sort By Transformer');\n\n@Pipe({\n name: 'smartSortBy',\n pure: true,\n})\nexport class SmartSortByPipe implements PipeTransform {\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[], key: string, order: 'asc' | 'desc' = 'asc'): T[] {\n return this.transformer(items, key, order);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SmartSortByPipe } from './smart-sort-by.pipe';\n\n\n\n@NgModule({\n declarations: [\n SmartSortByPipe\n ],\n imports: [\n CommonModule\n ],\n exports: [\n SmartSortByPipe\n ]\n})\nexport class SmartSortByModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAGa,MAAA,sBAAsB,GAA2B,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAI;IAClF,OAAO,KAAK,KAAK,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC7E;;MCFa,yBAAyB,GAAG,IAAI,cAAc,CAAC,+CAA+C,EAAE;MAMhG,eAAe,CAAA;AAE1B,IAAA,WAAA,CAGU,WAAoC,EAAA;QAApC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAyB;QAE5C,IAAI,CAAC,WAAW,KAAhB,IAAI,CAAC,WAAW,GAAK,sBAAsB,CAAC,CAAA;KAC7C;AAED,IAAA,SAAS,CAAI,KAAU,EAAE,GAAW,EAAE,QAAwB,KAAK,EAAA;QACjE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;KAC5C;;AAZU,eAAA,CAAA,IAAA,GAAA,SAAA,uBAAA,CAAA,CAAA,EAAA,EAAA,OAAA,KAAA,CAAA,IAAA,eAAe,uBAIhB,yBAAyB,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA;mFAJxB,eAAe,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,CAAA;uFAAf,eAAe,EAAA,CAAA;cAJ3B,IAAI;AAAC,QAAA,IAAA,EAAA,CAAA;AACJ,gBAAA,IAAI,EAAE,aAAa;AACnB,gBAAA,IAAI,EAAE,IAAI;AACX,aAAA,CAAA;;sBAII,QAAQ;;sBACR,MAAM;uBAAC,yBAAyB,CAAA;;;MCIxB,iBAAiB,CAAA;;kFAAjB,iBAAiB,GAAA,CAAA,EAAA,CAAA;mEAAjB,iBAAiB,EAAA,CAAA,CAAA;uEAN1B,YAAY,CAAA,EAAA,CAAA,CAAA;uFAMH,iBAAiB,EAAA,CAAA;cAX7B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE;oBACZ,eAAe;AAChB,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,YAAY;AACb,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,eAAe;AAChB,iBAAA;AACF,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,iBAAiB,EAT1B,EAAA,YAAA,EAAA,CAAA,eAAe,CAGf,EAAA,OAAA,EAAA,CAAA,YAAY,aAGZ,eAAe,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACdnB;;AAEG;;;;"}
@@ -21,6 +21,10 @@ class LoadingService {
21
21
  removeKey(key) {
22
22
  this.loadingEntries$.next([key, false]);
23
23
  }
24
+ start(callback, key) {
25
+ this.setKey(key);
26
+ callback(() => this.removeKey(key));
27
+ }
24
28
  }
25
29
  LoadingService.ɵfac = function LoadingService_Factory(t) { return new (t || LoadingService)(); };
26
30
  LoadingService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: LoadingService, factory: LoadingService.ɵfac, providedIn: 'root' });
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-services-loading.mjs","sources":["../../../../libs/common/src/services/loading/loading.service.ts","../../../../libs/common/src/services/loading/ng-atomic-common-services-loading.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { scan, map, distinctUntilChanged, delay } from 'rxjs/operators';\n\ntype LoadingMap = Record<string, boolean>;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingService {\n private loadingEntries$ = new Subject<[string, boolean]>();\n\n loadingMap: LoadingMap = {};\n loadingMap$ = this.loadingEntries$.pipe(\n scan((pre, [key, value]) => ({ ...pre, [key]: value }), {} as LoadingMap),\n map((m: LoadingMap) => Object.entries(m)\n .filter(([k, v]: [string, boolean]) => v)\n .reduce((p, [k, v]) => ({ ...p, [k]: v }), {} as LoadingMap)),\n distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)),\n );\n\n isLoading$ = this.loadingMap$.pipe(\n map((m) => !!Object.keys(m).length),\n delay(0),\n );\n\n constructor() {\n this.loadingMap$.subscribe((m) => {\n this.loadingMap = m;\n });\n }\n\n setKey(key: string): void {\n this.loadingEntries$.next([key, true]);\n }\n\n removeKey(key: string): void {\n this.loadingEntries$.next([key, false]);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MASa,cAAc,CAAA;AAiBzB,IAAA,WAAA,GAAA;AAhBQ,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAqB,CAAC;QAE3D,IAAU,CAAA,UAAA,GAAe,EAAE,CAAC;QAC5B,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CACrC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,EAAE,EAAgB,CAAC,EACzE,GAAG,CAAC,CAAC,CAAa,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACrC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAoB,KAAK,CAAC,CAAC;aACxC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAgB,CAAC,CAAC,EAC/D,oBAAoB,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAChF,CAAC;AAEF,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAChC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EACnC,KAAK,CAAC,CAAC,CAAC,CACT,CAAC;QAGA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC/B,YAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;AACtB,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,MAAM,CAAC,GAAW,EAAA;QAChB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;KACxC;AAED,IAAA,SAAS,CAAC,GAAW,EAAA;QACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;KACzC;;4EA7BU,cAAc,GAAA,CAAA,EAAA,CAAA;oEAAd,cAAc,EAAA,OAAA,EAAd,cAAc,CAAA,IAAA,EAAA,UAAA,EAFb,MAAM,EAAA,CAAA,CAAA;uFAEP,cAAc,EAAA,CAAA;cAH1B,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACV,gBAAA,UAAU,EAAE,MAAM;AACnB,aAAA,CAAA;;;ACRD;;AAEG;;;;"}
1
+ {"version":3,"file":"ng-atomic-common-services-loading.mjs","sources":["../../../../libs/common/src/services/loading/loading.service.ts","../../../../libs/common/src/services/loading/ng-atomic-common-services-loading.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { scan, map, distinctUntilChanged, delay } from 'rxjs/operators';\n\ntype LoadingMap = Record<string, boolean>;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LoadingService {\n private loadingEntries$ = new Subject<[string, boolean]>();\n\n loadingMap: LoadingMap = {};\n loadingMap$ = this.loadingEntries$.pipe(\n scan((pre, [key, value]) => ({ ...pre, [key]: value }), {} as LoadingMap),\n map((m: LoadingMap) => Object.entries(m)\n .filter(([k, v]: [string, boolean]) => v)\n .reduce((p, [k, v]) => ({ ...p, [k]: v }), {} as LoadingMap)),\n distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur)),\n );\n\n isLoading$ = this.loadingMap$.pipe(\n map((m) => !!Object.keys(m).length),\n delay(0),\n );\n\n constructor() {\n this.loadingMap$.subscribe((m) => {\n this.loadingMap = m;\n });\n }\n\n setKey(key: string): void {\n this.loadingEntries$.next([key, true]);\n }\n\n removeKey(key: string): void {\n this.loadingEntries$.next([key, false]);\n }\n\n start(callback: (done: any) => void, key: string) {\n this.setKey(key);\n callback(() => this.removeKey(key));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MASa,cAAc,CAAA;AAiBzB,IAAA,WAAA,GAAA;AAhBQ,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,OAAO,EAAqB,CAAC;QAE3D,IAAU,CAAA,UAAA,GAAe,EAAE,CAAC;QAC5B,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CACrC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,KAAK,EAAE,CAAC,EAAE,EAAgB,CAAC,EACzE,GAAG,CAAC,CAAC,CAAa,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACrC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAoB,KAAK,CAAC,CAAC;aACxC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAgB,CAAC,CAAC,EAC/D,oBAAoB,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAChF,CAAC;AAEF,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAChC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EACnC,KAAK,CAAC,CAAC,CAAC,CACT,CAAC;QAGA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC/B,YAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;AACtB,SAAC,CAAC,CAAC;KACJ;AAED,IAAA,MAAM,CAAC,GAAW,EAAA;QAChB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;KACxC;AAED,IAAA,SAAS,CAAC,GAAW,EAAA;QACnB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;KACzC;IAED,KAAK,CAAC,QAA6B,EAAE,GAAW,EAAA;AAC9C,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjB,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;KACrC;;4EAlCU,cAAc,GAAA,CAAA,EAAA,CAAA;oEAAd,cAAc,EAAA,OAAA,EAAd,cAAc,CAAA,IAAA,EAAA,UAAA,EAFb,MAAM,EAAA,CAAA,CAAA;uFAEP,cAAc,EAAA,CAAA;cAH1B,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACV,gBAAA,UAAU,EAAE,MAAM;AACnB,aAAA,CAAA;;;ACRD;;AAEG;;;;"}
@@ -1,6 +1,7 @@
1
1
  import { ComponentStore } from '@ngrx/component-store';
2
2
  import { compareById } from '@ng-atomic/common/utils';
3
- import { distinctUntilChanged, filter, switchMap, tap } from 'rxjs/operators';
3
+ import { ReplaySubject } from 'rxjs';
4
+ import { distinctUntilChanged } from 'rxjs/operators';
4
5
 
5
6
  const distinctUntilChangedArray = () => {
6
7
  return distinctUntilChanged((pre, cur) => JSON.stringify(pre) === JSON.stringify(cur));
@@ -8,14 +9,15 @@ const distinctUntilChangedArray = () => {
8
9
  class EntitiesStore extends ComponentStore {
9
10
  constructor(initialState) {
10
11
  super(initialState);
11
- this.userId$ = this.select(state => state.userId).pipe(filter(userId => !!userId));
12
+ this.refresh$ = new ReplaySubject(1);
12
13
  this.entities$ = this.select(({ entities }) => entities ? entities.sort(compareById) : []);
13
- this.setUserId = this.updater((state, userId) => ({ ...state, userId }));
14
14
  this.setEntities = this.updater((state, entities) => ({ ...state, entities }));
15
- this.getEntities = this.effect((userId$) => userId$.pipe(filter(userId => !!userId), switchMap((userId) => this._getEntities({ userId })), tap((entities) => this.setEntities(entities))));
16
- this.getEntities(this.userId$);
15
+ this.refresh();
17
16
  }
18
17
  get entities() { return this.get().entities; }
18
+ refresh() {
19
+ this.refresh$.next();
20
+ }
19
21
  }
20
22
 
21
23
  /**
@@ -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 { 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;;;;"}
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, ReplaySubject } from 'rxjs';\nimport { distinctUntilChanged, tap, filter, switchMap } from 'rxjs/operators';\n\nexport interface EntitiesState<E> {\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 protected readonly refresh$ = new ReplaySubject<void>(1);\n\n get entities() { return this.get().entities; }\n\n entities$ = this.select(({entities}) => entities ? entities.sort(compareById) : []);\n \n constructor(initialState: S) {\n super(initialState);\n this.refresh();\n }\n\n setEntities = this.updater((state, entities: E[]) => ({...state, entities}));\n\n abstract getEntities: ReturnType<typeof this.effect>;\n\n refresh() {\n this.refresh$.next();\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AASO,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;AAO/G,IAAA,WAAA,CAAY,YAAe,EAAA;QACzB,KAAK,CAAC,YAAY,CAAC,CAAC;AAPH,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,aAAa,CAAO,CAAC,CAAC,CAAC;QAIzD,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,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,QAAa,MAAM,EAAC,GAAG,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC,CAAC;QAH3E,IAAI,CAAC,OAAO,EAAE,CAAC;KAChB;IAPD,IAAI,QAAQ,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE;IAa9C,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;KACtB;AACF;;AChCD;;AAEG;;;;"}
@@ -9,21 +9,12 @@ class PaginationStore extends ComponentStore {
9
9
  super({ page: Page.from() });
10
10
  this.page$ = this.select(state => state.page);
11
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
12
  this.patch = this.updater((state, page) => ({ ...state, page: state.page.patch(page) }));
15
13
  this.getPageLength = this.effect((entities$) => entities$.pipe(tap(({ length }) => this.setPage(this.page.patch({ length })))));
16
14
  }
17
15
  get page() { return this.get(state => state.page); }
18
- get sortKey() { return this.page.sortKey; }
19
- get sortOrder() { return this.page.sortOrder; }
20
16
  get start() { return this.page.start; }
21
17
  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
18
  }
28
19
  PaginationStore.ɵfac = function PaginationStore_Factory(t) { return new (t || PaginationStore)(); };
29
20
  PaginationStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: PaginationStore, factory: PaginationStore.ɵfac });
@@ -1 +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;;;;"}
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 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 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","/**\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;AAMzC,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,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;KAbuC;AAE1C,IAAA,IAAI,IAAI,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE;IACpD,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;;8EALxB,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;;;;"}
@@ -11,6 +11,7 @@ class QueryStore extends ComponentStore {
11
11
  this.langMap = langMap;
12
12
  this.query$ = this.select((state) => state.query);
13
13
  this.setQuery = this.updater((state, query) => ({ ...state, query }));
14
+ this.langMap ?? (this.langMap = {});
14
15
  }
15
16
  get query() { return this.get().query; }
16
17
  resolve(entities) {
@@ -1 +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;;;;"}
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 = any> 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 this.langMap ??= {};\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,UAAoB,SAAQ,cAA0B,CAAA;IACjE,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;AAOhF,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;QANrE,IAAI,CAAC,OAAO,KAAZ,IAAI,CAAC,OAAO,GAAK,EAAE,CAAC,CAAA;KACrB;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;;AAhBU,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,35 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable } from '@angular/core';
3
+ import { ComponentStore } from '@ngrx/component-store';
4
+
5
+ class SortStore extends ComponentStore {
6
+ constructor() {
7
+ super({ key: null, order: 'asc' });
8
+ this.state$ = this.select(state => state);
9
+ this.key$ = this.select(state => state.key);
10
+ this.order$ = this.select(state => state.order);
11
+ this.setKey = this.updater((state, key) => ({ ...state, key }));
12
+ this.setOrder = this.updater((state, order) => ({ ...state, order }));
13
+ }
14
+ get state() { return this.get(); }
15
+ get key() { return this.get().key; }
16
+ get order() { return this.get().order; }
17
+ changeSortFromEvent(key, state = this.state) {
18
+ const reverse = (order) => order === 'asc' ? 'desc' : 'asc';
19
+ const order = key === state.key ? reverse(state.order) : 'asc';
20
+ this.setKey(key);
21
+ this.setOrder(order);
22
+ }
23
+ }
24
+ SortStore.ɵfac = function SortStore_Factory(t) { return new (t || SortStore)(); };
25
+ SortStore.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SortStore, factory: SortStore.ɵfac });
26
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SortStore, [{
27
+ type: Injectable
28
+ }], function () { return []; }, null); })();
29
+
30
+ /**
31
+ * Generated bundle index. Do not edit.
32
+ */
33
+
34
+ export { SortStore };
35
+ //# sourceMappingURL=ng-atomic-common-stores-sort.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-sort.mjs","sources":["../../../../libs/common/src/stores/sort/sort.store.ts","../../../../libs/common/src/stores/sort/ng-atomic-common-stores-sort.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { ComponentStore } from \"@ngrx/component-store\";\nimport { Observable } from \"rxjs\";\n\nexport interface SortState {\n key: string;\n order: 'asc' | 'desc';\n}\n\n@Injectable()\nexport class SortStore extends ComponentStore<SortState> {\n constructor() {super({key: null, order: 'asc'})}\n\n get state() { return this.get(); }\n get key() { return this.get().key; }\n get order() { return this.get().order; }\n\n state$ = this.select(state => state);\n key$ = this.select(state => state.key);\n order$ = this.select(state => state.order);\n\n setKey = this.updater((state, key: string) => ({...state, key}));\n setOrder = this.updater((state, order: 'asc' | 'desc') => ({...state, order}));\n \n changeSortFromEvent(key: string, state: SortState = this.state) {\n const reverse = (order: 'asc' | 'desc') => order === 'asc' ? 'desc' : 'asc';\n const order = key === state.key ? reverse(state.order) : 'asc';\n this.setKey(key);\n this.setOrder(order);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAUM,MAAO,SAAU,SAAQ,cAAyB,CAAA;AACtD,IAAA,WAAA,GAAA;QAAe,KAAK,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAA;QAM/C,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;AACrC,QAAA,IAAA,CAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;QAE3C,IAAM,CAAA,MAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAW,MAAM,EAAC,GAAG,KAAK,EAAE,GAAG,EAAC,CAAC,CAAC,CAAC;QACjE,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAqB,MAAM,EAAC,GAAG,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;KAX/B;IAEhD,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE;IAClC,IAAI,GAAG,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE;IACpC,IAAI,KAAK,GAAK,EAAA,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE;AASxC,IAAA,mBAAmB,CAAC,GAAW,EAAE,KAAmB,GAAA,IAAI,CAAC,KAAK,EAAA;AAC5D,QAAA,MAAM,OAAO,GAAG,CAAC,KAAqB,KAAK,KAAK,KAAK,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;QAC5E,MAAM,KAAK,GAAG,GAAG,KAAK,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AAC/D,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACtB;;kEAnBU,SAAS,GAAA,CAAA,EAAA,CAAA;AAAT,SAAA,CAAA,KAAA,iBAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,KAAA,EAAA,SAAS,WAAT,SAAS,CAAA,IAAA,EAAA,CAAA,CAAA;uFAAT,SAAS,EAAA,CAAA;cADrB,UAAU;;;ACTX;;AAEG;;;;"}
@@ -1,5 +1,8 @@
1
1
  export interface Action<T = any> {
2
2
  id: string;
3
3
  payload?: T;
4
+ name?: string;
5
+ icon?: string;
6
+ disabled?: boolean;
4
7
  }
5
8
  //# sourceMappingURL=action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../../libs/common/src/models/action.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;CACb"}
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../../libs/common/src/models/action.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-atomic/common",
3
- "version": "4.13.0",
3
+ "version": "4.15.0",
4
4
  "license": "MIT",
5
5
  "module": "fesm2015/ng-atomic-common.mjs",
6
6
  "es2020": "fesm2020/ng-atomic-common.mjs",
@@ -164,6 +164,14 @@
164
164
  "node": "./fesm2015/ng-atomic-common-stores-selection.mjs",
165
165
  "default": "./fesm2020/ng-atomic-common-stores-selection.mjs"
166
166
  },
167
+ "./stores/sort": {
168
+ "types": "./stores/sort/index.d.ts",
169
+ "esm2020": "./esm2020/stores/sort/ng-atomic-common-stores-sort.mjs",
170
+ "es2020": "./fesm2020/ng-atomic-common-stores-sort.mjs",
171
+ "es2015": "./fesm2015/ng-atomic-common-stores-sort.mjs",
172
+ "node": "./fesm2015/ng-atomic-common-stores-sort.mjs",
173
+ "default": "./fesm2020/ng-atomic-common-stores-sort.mjs"
174
+ },
167
175
  "./utils": {
168
176
  "types": "./utils/index.d.ts",
169
177
  "esm2020": "./esm2020/utils/ng-atomic-common-utils.mjs",
@@ -1,3 +1,4 @@
1
1
  export * from './pagination.module';
2
2
  export * from './pagination.pipe';
3
+ export * from './pagination.transformer';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC"}
@@ -1,17 +1,17 @@
1
- import { PipeTransform } from '@angular/core';
2
- import { SmartSortByTransformer } from '@ng-atomic/common/pipes/smart-sort-by';
1
+ import { InjectionToken, PipeTransform } from '@angular/core';
2
+ import { PaginationTransformer } from './pagination.transformer';
3
3
  import * as i0 from "@angular/core";
4
- export declare class PaginationPipe implements PipeTransform {
4
+ export declare const PAGINATION_TRANSFORMER: InjectionToken<unknown>;
5
+ export declare class PaginationPipe<E> implements PipeTransform {
5
6
  private transformer;
6
- private slicePipe;
7
- constructor(transformer: SmartSortByTransformer);
8
- transform<T>(items: T[], { sortKey, sortOrder, start, end }: {
7
+ constructor(transformer: PaginationTransformer<E>);
8
+ transform(items: E[], { sortKey, sortOrder, start, end }: {
9
9
  sortKey: string;
10
10
  sortOrder: 'asc' | 'desc';
11
11
  start: number;
12
12
  end: number;
13
- }): T[];
14
- static ɵfac: i0.ɵɵFactoryDeclaration<PaginationPipe, [{ optional: true; }]>;
15
- static ɵpipe: i0.ɵɵPipeDeclaration<PaginationPipe, "pagination", false>;
13
+ }): E[];
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<PaginationPipe<any>, [{ optional: true; }]>;
15
+ static ɵpipe: i0.ɵɵPipeDeclaration<PaginationPipe<any>, "pagination", false>;
16
16
  }
17
17
  //# sourceMappingURL=pagination.pipe.d.ts.map
@@ -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;CAc1B"}
1
+ {"version":3,"file":"pagination.pipe.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/pagination.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,cAAc,EAAkB,aAAa,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAyB,MAAM,0BAA0B,CAAC;;AAExF,eAAO,MAAM,sBAAsB,yBAAkE,CAAC;AAEtG,qBAIa,cAAc,CAAC,CAAC,CAAE,YAAW,aAAa;IAKnD,OAAO,CAAC,WAAW;gBAAX,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC;IAK/C,SAAS,CAAC,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;yCAVrH,cAAc;uCAAd,cAAc;CAa1B"}
@@ -0,0 +1,10 @@
1
+ interface Page {
2
+ start: number;
3
+ end: number;
4
+ key: string;
5
+ order: 'asc' | 'desc';
6
+ }
7
+ export declare type PaginationTransformer<E> = (items: E[], page: Page) => E[];
8
+ export declare function paginationTransformer<E>(items: E[], page: Page): E[];
9
+ export {};
10
+ //# sourceMappingURL=pagination.transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.transformer.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/pagination/pagination.transformer.ts"],"names":[],"mappings":"AAEA,UAAU,IAAI;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC;CACvB;AAED,oBAAY,qBAAqB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,CAAC;AAEvE,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,CAEpE"}
@@ -1,3 +1,4 @@
1
1
  export * from './smart-sort-by.module';
2
2
  export * from './smart-sort-by.pipe';
3
+ export * from './smart-sort-by.transformer';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/smart-sort-by/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/smart-sort-by/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC"}
@@ -1,8 +1,7 @@
1
1
  import { InjectionToken, PipeTransform } from '@angular/core';
2
+ import { SmartSortByTransformer } from './smart-sort-by.transformer';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare const SMART_SORT_BY_TRANSFORMER: InjectionToken<unknown>;
4
- export declare type SmartSortByTransformer = <T>(items: T[], key: string, order: 'asc' | 'desc') => T[];
5
- export declare const smartSortByTransformer: SmartSortByTransformer;
6
5
  export declare class SmartSortByPipe implements PipeTransform {
7
6
  private transformer?;
8
7
  constructor(transformer?: SmartSortByTransformer);
@@ -1 +1 @@
1
- {"version":3,"file":"smart-sort-by.pipe.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,cAAc,EAAkB,aAAa,EAAE,MAAM,eAAe,CAAC;;AAGtF,eAAO,MAAM,yBAAyB,yBAAsE,CAAC;AAC7G,oBAAY,sBAAsB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC;AAChG,eAAO,MAAM,sBAAsB,EAAE,sBAEpC,CAAA;AAED,qBAIa,eAAgB,YAAW,aAAa;IAKjD,OAAO,CAAC,WAAW,CAAC;gBAAZ,WAAW,CAAC,EAAE,sBAAsB;IAK9C,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,KAAK,GAAG,MAAc,GAAG,CAAC,EAAE;yCAV9D,eAAe;uCAAf,eAAe;CAc3B"}
1
+ {"version":3,"file":"smart-sort-by.pipe.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.pipe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,cAAc,EAAkB,aAAa,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAA0B,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;;AAE7F,eAAO,MAAM,yBAAyB,yBAAsE,CAAC;AAE7G,qBAIa,eAAgB,YAAW,aAAa;IAKjD,OAAO,CAAC,WAAW,CAAC;gBAAZ,WAAW,CAAC,EAAE,sBAAsB;IAK9C,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,KAAK,GAAG,MAAc,GAAG,CAAC,EAAE;yCAV9D,eAAe;uCAAf,eAAe;CAc3B"}
@@ -0,0 +1,3 @@
1
+ export declare type SmartSortByTransformer = <T>(items: T[], key: string, order: 'asc' | 'desc') => T[];
2
+ export declare const smartSortByTransformer: SmartSortByTransformer;
3
+ //# sourceMappingURL=smart-sort-by.transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-sort-by.transformer.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/pipes/smart-sort-by/smart-sort-by.transformer.ts"],"names":[],"mappings":"AAEA,oBAAY,sBAAsB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC;AAChG,eAAO,MAAM,sBAAsB,EAAE,sBAEpC,CAAA"}
@@ -8,6 +8,7 @@ export declare class LoadingService {
8
8
  constructor();
9
9
  setKey(key: string): void;
10
10
  removeKey(key: string): void;
11
+ start(callback: (done: any) => void, key: string): void;
11
12
  static ɵfac: i0.ɵɵFactoryDeclaration<LoadingService, never>;
12
13
  static ɵprov: i0.ɵɵInjectableDeclaration<LoadingService>;
13
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loading.service.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/services/loading/loading.service.ts"],"names":[],"mappings":";AAIA,aAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,qBAGa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAoC;IAE3D,UAAU,EAAE,UAAU,CAAM;IAC5B,WAAW,wCAMT;IAEF,UAAU,qCAGR;;IAQF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;yCA3BjB,cAAc;6CAAd,cAAc;CA8B1B"}
1
+ {"version":3,"file":"loading.service.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/services/loading/loading.service.ts"],"names":[],"mappings":";AAIA,aAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,qBAGa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAoC;IAE3D,UAAU,EAAE,UAAU,CAAM;IAC5B,WAAW,wCAMT;IAEF,UAAU,qCAGR;;IAQF,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI5B,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,EAAE,GAAG,EAAE,MAAM;yCA/BrC,cAAc;6CAAd,cAAc;CAmC1B"}
@@ -1,20 +1,18 @@
1
1
  import { ComponentStore } from '@ngrx/component-store';
2
- import { Observable } from 'rxjs';
2
+ import { Observable, ReplaySubject } from 'rxjs';
3
3
  export interface EntitiesState<E> {
4
- userId: string;
5
4
  entities: E[];
6
5
  }
7
6
  export declare const distinctUntilChangedArray: <T>() => import("rxjs").MonoTypeOperatorFunction<T>;
8
7
  export declare abstract class EntitiesStore<S extends EntitiesState<E>, E extends {
9
8
  id: string;
10
9
  }> extends ComponentStore<S> {
10
+ protected readonly refresh$: ReplaySubject<void>;
11
11
  get entities(): E[];
12
- userId$: Observable<string>;
13
12
  entities$: Observable<E[]>;
14
13
  constructor(initialState: S);
15
- setUserId: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
16
14
  setEntities: (observableOrValue: E[] | Observable<E[]>) => import("rxjs").Subscription;
17
- getEntities: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
18
- abstract _getEntities(data?: object): Observable<E[]>;
15
+ abstract getEntities: ReturnType<typeof this.effect>;
16
+ refresh(): void;
19
17
  }
20
18
  //# 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;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"}
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,aAAa,EAAE,MAAM,MAAM,CAAC;AAGjD,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,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,SAAS,CAAC,QAAQ,CAAC,QAAQ,sBAA8B;IAEzD,IAAI,QAAQ,QAAkC;IAE9C,SAAS,kBAA2E;gBAExE,YAAY,EAAE,CAAC;IAK3B,WAAW,4EAAkE;IAE7E,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IAErD,OAAO;CAGR"}
@@ -8,17 +8,12 @@ export interface EntitiesState<E> {
8
8
  export declare class PaginationStore extends ComponentStore<any> {
9
9
  constructor();
10
10
  get page(): any;
11
- get sortKey(): any;
12
- get sortOrder(): any;
13
11
  get start(): any;
14
12
  get end(): any;
15
13
  page$: Observable<any>;
16
14
  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
15
  patch: (observableOrValue: Partial<Page> | Observable<Partial<Page>>) => import("rxjs").Subscription;
20
16
  getPageLength: (observableOrValue: any[] | Observable<any[]>) => import("rxjs").Subscription;
21
- changeSortFromEvent(sortKey: string, page?: Page): void;
22
17
  static ɵfac: i0.ɵɵFactoryDeclaration<PaginationStore, never>;
23
18
  static ɵprov: i0.ɵɵInjectableDeclaration<PaginationStore>;
24
19
  }
@@ -1 +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"}
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,KAAK,QAA8B;IACvC,IAAI,GAAG,QAA4B;IAEnC,KAAK,kBAAoC;IAEzC,OAAO,8EAA2D;IAClE,KAAK,gGAA4F;IAEjG,aAAa,gFAEV;yCAdQ,eAAe;6CAAf,eAAe;CAe3B"}
@@ -4,7 +4,7 @@ import * as i0 from "@angular/core";
4
4
  export interface QueryState {
5
5
  query: string;
6
6
  }
7
- export declare class QueryStore<E> extends ComponentStore<QueryState> {
7
+ export declare class QueryStore<E = any> extends ComponentStore<QueryState> {
8
8
  protected queryResolver: QueryResolverService;
9
9
  protected langMap: Record<string, string>;
10
10
  constructor(queryResolver: QueryResolverService, langMap: Record<string, string>);
@@ -1 +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"}
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,GAAG,GAAG,CAAE,SAAQ,cAAc,CAAC,UAAU,CAAC;IAE/D,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;IAMhF,IAAI,KAAK,IAAI,MAAM,CAA6B;IAChD,MAAM,oCAAuC;IAE7C,QAAQ,iGAA+D;IAEvE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;yCAdhB,UAAU;6CAAV,UAAU;CAkBtB"}
@@ -0,0 +1,2 @@
1
+ export * from './sort.store';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/sort/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-common-stores-sort.d.ts","sourceRoot":"","sources":["../../../../../libs/common/src/stores/sort/ng-atomic-common-stores-sort.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,SAAS,CAAC"}