@ng-atomic/common 1.5.0 → 2.0.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 (118) hide show
  1. package/bundles/ng-atomic-common-directives-ios-safari-scroll-buggyfill.umd.js +15 -22
  2. package/bundles/ng-atomic-common-directives-ios-safari-scroll-buggyfill.umd.js.map +1 -1
  3. package/bundles/ng-atomic-common-directives.umd.js +15 -22
  4. package/bundles/ng-atomic-common-directives.umd.js.map +1 -1
  5. package/bundles/ng-atomic-common-models.umd.js +2 -2
  6. package/bundles/ng-atomic-common-models.umd.js.map +1 -1
  7. package/bundles/ng-atomic-common-pipes.umd.js +64 -96
  8. package/bundles/ng-atomic-common-pipes.umd.js.map +1 -1
  9. package/bundles/ng-atomic-common-services.umd.js +44 -47
  10. package/bundles/ng-atomic-common-services.umd.js.map +1 -1
  11. package/bundles/ng-atomic-common-store.umd.js +5 -5
  12. package/bundles/ng-atomic-common-store.umd.js.map +1 -1
  13. package/bundles/ng-atomic-common-utils.umd.js +83 -53
  14. package/bundles/ng-atomic-common-utils.umd.js.map +1 -1
  15. package/bundles/ng-atomic-common.umd.js +2 -2
  16. package/bundles/ng-atomic-common.umd.js.map +1 -1
  17. package/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.d.ts +2 -2
  18. package/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.d.ts +3 -3
  19. package/esm2015/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.js +11 -11
  20. package/esm2015/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.js.map +1 -1
  21. package/esm2015/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.js +17 -18
  22. package/esm2015/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.js.map +1 -1
  23. package/esm2015/pipes/domain/domain.module.js +17 -18
  24. package/esm2015/pipes/domain/domain.module.js.map +1 -1
  25. package/esm2015/pipes/domain/domain.pipe.js +14 -14
  26. package/esm2015/pipes/domain/domain.pipe.js.map +1 -1
  27. package/esm2015/pipes/smart-clamp/smart-clamp.module.js +17 -18
  28. package/esm2015/pipes/smart-clamp/smart-clamp.module.js.map +1 -1
  29. package/esm2015/pipes/smart-clamp/smart-clamp.pipe.js +14 -14
  30. package/esm2015/pipes/smart-clamp/smart-clamp.pipe.js.map +1 -1
  31. package/esm2015/pipes/smart-exp/smart-exp.module.js +10 -11
  32. package/esm2015/pipes/smart-exp/smart-exp.module.js.map +1 -1
  33. package/esm2015/pipes/smart-exp/smart-exp.pipe.js +14 -14
  34. package/esm2015/pipes/smart-exp/smart-exp.pipe.js.map +1 -1
  35. package/esm2015/pipes/smart-field/smart-field.module.js +17 -18
  36. package/esm2015/pipes/smart-field/smart-field.module.js.map +1 -1
  37. package/esm2015/pipes/smart-field/smart-field.pipe.js +14 -14
  38. package/esm2015/pipes/smart-field/smart-field.pipe.js.map +1 -1
  39. package/esm2015/pipes/smart-sort-by/smart-sort-by.module.js +17 -18
  40. package/esm2015/pipes/smart-sort-by/smart-sort-by.module.js.map +1 -1
  41. package/esm2015/pipes/smart-sort-by/smart-sort-by.pipe.js +14 -14
  42. package/esm2015/pipes/smart-sort-by/smart-sort-by.pipe.js.map +1 -1
  43. package/esm2015/pipes/yen/yen.module.js +17 -18
  44. package/esm2015/pipes/yen/yen.module.js.map +1 -1
  45. package/esm2015/pipes/yen/yen.pipe.js +8 -8
  46. package/esm2015/pipes/yen/yen.pipe.js.map +1 -1
  47. package/esm2015/services/form/form.service.js +8 -6
  48. package/esm2015/services/form/form.service.js.map +1 -1
  49. package/esm2015/services/loading/loading.service.js +8 -8
  50. package/esm2015/services/loading/loading.service.js.map +1 -1
  51. package/esm2015/services/query-resolver/query-resolver.service.js +18 -15
  52. package/esm2015/services/query-resolver/query-resolver.service.js.map +1 -1
  53. package/esm2015/services/snack-bar/snack-bar.module.js +14 -15
  54. package/esm2015/services/snack-bar/snack-bar.module.js.map +1 -1
  55. package/esm2015/services/snack-bar/snack-bar.service.js +8 -8
  56. package/esm2015/services/snack-bar/snack-bar.service.js.map +1 -1
  57. package/esm2015/utils/date-utils/date-utils.js +1 -1
  58. package/esm2015/utils/date-utils/date-utils.js.map +1 -1
  59. package/esm2015/utils/mat-dayjs-date/dayjs-date.adapter.js +9 -7
  60. package/esm2015/utils/mat-dayjs-date/dayjs-date.adapter.js.map +1 -1
  61. package/esm2015/utils/mat-dayjs-date/dayjs-date.module.js +25 -26
  62. package/esm2015/utils/mat-dayjs-date/dayjs-date.module.js.map +1 -1
  63. package/esm2015/utils/mat-dayjs-date/dayjs-jp-providers.js +1 -1
  64. package/esm2015/utils/mat-dayjs-date/dayjs-jp-providers.js.map +1 -1
  65. package/esm2015/utils/query/query.resolver.js +37 -4
  66. package/esm2015/utils/query/query.resolver.js.map +1 -1
  67. package/esm2015/utils/smart-exp-transformer/smart-exp-transformer.js +1 -1
  68. package/esm2015/utils/smart-exp-transformer/smart-exp-transformer.js.map +1 -1
  69. package/fesm2015/ng-atomic-common-directives-ios-safari-scroll-buggyfill.js +29 -30
  70. package/fesm2015/ng-atomic-common-directives-ios-safari-scroll-buggyfill.js.map +1 -1
  71. package/fesm2015/ng-atomic-common-directives.js +29 -30
  72. package/fesm2015/ng-atomic-common-directives.js.map +1 -1
  73. package/fesm2015/ng-atomic-common-models.js.map +1 -1
  74. package/fesm2015/ng-atomic-common-pipes.js +174 -180
  75. package/fesm2015/ng-atomic-common-pipes.js.map +1 -1
  76. package/fesm2015/ng-atomic-common-services.js +63 -57
  77. package/fesm2015/ng-atomic-common-services.js.map +1 -1
  78. package/fesm2015/ng-atomic-common-store.js.map +1 -1
  79. package/fesm2015/ng-atomic-common-utils.js +79 -46
  80. package/fesm2015/ng-atomic-common-utils.js.map +1 -1
  81. package/fesm2015/ng-atomic-common.js.map +1 -1
  82. package/package.json +3 -6
  83. package/pipes/domain/domain.module.d.ts +3 -3
  84. package/pipes/domain/domain.pipe.d.ts +3 -3
  85. package/pipes/smart-clamp/smart-clamp.module.d.ts +3 -3
  86. package/pipes/smart-clamp/smart-clamp.pipe.d.ts +2 -2
  87. package/pipes/smart-exp/smart-exp.module.d.ts +3 -3
  88. package/pipes/smart-exp/smart-exp.pipe.d.ts +3 -3
  89. package/pipes/smart-field/smart-field.module.d.ts +3 -3
  90. package/pipes/smart-field/smart-field.pipe.d.ts +3 -3
  91. package/pipes/smart-sort-by/smart-sort-by.module.d.ts +3 -3
  92. package/pipes/smart-sort-by/smart-sort-by.pipe.d.ts +2 -2
  93. package/pipes/yen/yen.module.d.ts +3 -3
  94. package/pipes/yen/yen.pipe.d.ts +2 -2
  95. package/services/loading/loading.service.d.ts +3 -3
  96. package/services/query-resolver/query-resolver.service.d.ts +2 -2
  97. package/services/snack-bar/snack-bar.module.d.ts +3 -3
  98. package/services/snack-bar/snack-bar.service.d.ts +2 -2
  99. package/store/entity.page.store.d.ts +1 -1
  100. package/utils/date-utils/date-utils.d.ts +1 -1
  101. package/utils/mat-dayjs-date/dayjs-date.module.d.ts +6 -6
  102. package/utils/smart-exp-transformer/smart-exp-transformer.d.ts +1 -1
  103. package/bundles/ng-atomic-common-directives-ios-safari-scroll-buggyfill.umd.min.js +0 -2
  104. package/bundles/ng-atomic-common-directives-ios-safari-scroll-buggyfill.umd.min.js.map +0 -1
  105. package/bundles/ng-atomic-common-directives.umd.min.js +0 -2
  106. package/bundles/ng-atomic-common-directives.umd.min.js.map +0 -1
  107. package/bundles/ng-atomic-common-models.umd.min.js +0 -2
  108. package/bundles/ng-atomic-common-models.umd.min.js.map +0 -1
  109. package/bundles/ng-atomic-common-pipes.umd.min.js +0 -2
  110. package/bundles/ng-atomic-common-pipes.umd.min.js.map +0 -1
  111. package/bundles/ng-atomic-common-services.umd.min.js +0 -16
  112. package/bundles/ng-atomic-common-services.umd.min.js.map +0 -1
  113. package/bundles/ng-atomic-common-store.umd.min.js +0 -16
  114. package/bundles/ng-atomic-common-store.umd.min.js.map +0 -1
  115. package/bundles/ng-atomic-common-utils.umd.min.js +0 -17
  116. package/bundles/ng-atomic-common-utils.umd.min.js.map +0 -1
  117. package/bundles/ng-atomic-common.umd.min.js +0 -2
  118. package/bundles/ng-atomic-common.umd.min.js.map +0 -1
@@ -1,32 +1,35 @@
1
- import { isIsoString, toObject, smartExpTransformer, filterByQuery, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';
2
- import * as dayjs from 'dayjs';
3
- import { isDayjs } from 'dayjs';
1
+ import { isIsoString, toObject, smartExpTransformer, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';
2
+ import dayjs from 'dayjs';
4
3
  import { unflatten, flatten } from 'flat';
5
4
  import { omit, pick } from 'lodash';
6
- import { ɵɵdefineInjectable, ɵsetClassMetadata, Injectable, ɵɵinject, Optional, Inject, ɵɵdefineNgModule, ɵɵdefineInjector, ɵɵsetNgModuleScope, NgModule } from '@angular/core';
5
+ import * as i0 from '@angular/core';
6
+ import { Injectable, Optional, Inject, NgModule } from '@angular/core';
7
7
  import { Subject } from 'rxjs';
8
8
  import { scan, map, distinctUntilChanged, delay } from 'rxjs/operators';
9
- import { MatSnackBar, MatSnackBarModule } from '@angular/material/snack-bar';
9
+ import * as i1 from '@angular/material/snack-bar';
10
+ import { MatSnackBarModule } from '@angular/material/snack-bar';
10
11
  import { CommonModule } from '@angular/common';
11
12
 
12
13
  const isNumeric = (v) => !isNaN(Number(v));
13
- const parseQuery = (v, k) => k.match(/id$/i)
14
+ const parseQueryString = (v, key) => key.match(/id$/i)
14
15
  ? v
15
16
  : typeof v === 'string' && isIsoString(v)
16
17
  ? dayjs(v)
17
- : isNumeric(v)
18
- ? Number(v)
19
- : v;
18
+ : v === ''
19
+ ? v
20
+ : isNumeric(v)
21
+ ? Number(v)
22
+ : v;
20
23
  class BaseFormService {
21
24
  static fromQueryParams(obj) {
22
25
  var _a, _b;
23
- return Object.entries((_b = (_a = unflatten(obj)) === null || _a === void 0 ? void 0 : _a.form) !== null && _b !== void 0 ? _b : {}).reduce((m, [k, v]) => (Object.assign(Object.assign({}, m), { [k]: parseQuery(v, k) })), {});
26
+ return Object.entries((_b = (_a = unflatten(obj)) === null || _a === void 0 ? void 0 : _a.form) !== null && _b !== void 0 ? _b : {}).reduce((m, [k, v]) => (Object.assign(Object.assign({}, m), { [k]: parseQueryString(v, k) })), {});
24
27
  }
25
28
  static toQueryParams(obj) {
26
- return flatten({ form: Object.entries(obj).reduce((m, [k, v]) => (Object.assign(Object.assign({}, m), { [k]: isDayjs(v) ? v.isValid() ? v.toISOString() : null : v })), {}) });
29
+ return flatten({ form: Object.entries(obj).reduce((m, [k, v]) => (Object.assign(Object.assign({}, m), { [k]: dayjs.isDayjs(v) ? v.isValid() ? v.toISOString() : null : v })), {}) });
27
30
  }
28
31
  static dayjsKeys(object) {
29
- return Object.entries(object).filter(([_, v]) => isDayjs(v)).map(([k]) => k);
32
+ return Object.entries(object).filter(([_, v]) => dayjs.isDayjs(v)).map(([k]) => k);
30
33
  }
31
34
  static toValue(object) {
32
35
  const keys = this.dayjsKeys(object);
@@ -57,14 +60,14 @@ class LoadingService {
57
60
  this.loadingEntries$.next([key, false]);
58
61
  }
59
62
  }
60
- LoadingService.ɵfac = function LoadingService_Factory(t) { return new (t || LoadingService)(); };
61
- LoadingService.ɵprov = ɵɵdefineInjectable({ token: LoadingService, factory: LoadingService.ɵfac, providedIn: 'root' });
62
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(LoadingService, [{
63
- type: Injectable,
64
- args: [{
65
- providedIn: 'root',
66
- }]
67
- }], function () { return []; }, null); })();
63
+ LoadingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
64
+ LoadingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoadingService, providedIn: 'root' });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LoadingService, decorators: [{
66
+ type: Injectable,
67
+ args: [{
68
+ providedIn: 'root',
69
+ }]
70
+ }], ctorParameters: function () { return []; } });
68
71
 
69
72
  class QueryResolverService {
70
73
  constructor(transformer) {
@@ -73,22 +76,26 @@ class QueryResolverService {
73
76
  (_a = this.transformer) !== null && _a !== void 0 ? _a : (this.transformer = smartExpTransformer);
74
77
  }
75
78
  resolve(items, queryString, dlm = {}) {
76
- return filterByQuery(items, queryString, dlm, this.transformer);
79
+ // console.debug('queryString:', queryString);
80
+ // const resolved = filterByQuery(items, queryString, dlm, this.transformer);
81
+ // console.debug('resolved:', resolved);
82
+ // return resolved;
83
+ return items;
77
84
  }
78
85
  }
79
- QueryResolverService.ɵfac = function QueryResolverService_Factory(t) { return new (t || QueryResolverService)(ɵɵinject(SMART_EXP_TRANSFORMER, 8)); };
80
- QueryResolverService.ɵprov = ɵɵdefineInjectable({ token: QueryResolverService, factory: QueryResolverService.ɵfac, providedIn: 'root' });
81
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(QueryResolverService, [{
82
- type: Injectable,
83
- args: [{
84
- providedIn: 'root'
85
- }]
86
- }], function () { return [{ type: undefined, decorators: [{
87
- type: Optional
88
- }, {
89
- type: Inject,
90
- args: [SMART_EXP_TRANSFORMER]
91
- }] }]; }, null); })();
86
+ QueryResolverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: QueryResolverService, deps: [{ token: SMART_EXP_TRANSFORMER, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
87
+ QueryResolverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: QueryResolverService, providedIn: 'root' });
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: QueryResolverService, decorators: [{
89
+ type: Injectable,
90
+ args: [{
91
+ providedIn: 'root'
92
+ }]
93
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
94
+ type: Optional
95
+ }, {
96
+ type: Inject,
97
+ args: [SMART_EXP_TRANSFORMER]
98
+ }] }]; } });
92
99
 
93
100
  class SnackBarService {
94
101
  constructor(snackBar) {
@@ -100,35 +107,34 @@ class SnackBarService {
100
107
  });
101
108
  }
102
109
  }
103
- SnackBarService.ɵfac = function SnackBarService_Factory(t) { return new (t || SnackBarService)(ɵɵinject(MatSnackBar)); };
104
- SnackBarService.ɵprov = ɵɵdefineInjectable({ token: SnackBarService, factory: SnackBarService.ɵfac, providedIn: 'root' });
105
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(SnackBarService, [{
106
- type: Injectable,
107
- args: [{
108
- providedIn: 'root'
109
- }]
110
- }], function () { return [{ type: MatSnackBar }]; }, null); })();
110
+ SnackBarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarService, deps: [{ token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable });
111
+ SnackBarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarService, providedIn: 'root' });
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarService, decorators: [{
113
+ type: Injectable,
114
+ args: [{
115
+ providedIn: 'root'
116
+ }]
117
+ }], ctorParameters: function () { return [{ type: i1.MatSnackBar }]; } });
111
118
 
112
119
  class SnackBarModule {
113
120
  }
114
- SnackBarModule.ɵfac = function SnackBarModule_Factory(t) { return new (t || SnackBarModule)(); };
115
- SnackBarModule.ɵmod = ɵɵdefineNgModule({ type: SnackBarModule });
116
- SnackBarModule.ɵinj = ɵɵdefineInjector({ imports: [[
121
+ SnackBarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
122
+ SnackBarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarModule, imports: [CommonModule,
123
+ MatSnackBarModule] });
124
+ SnackBarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarModule, imports: [[
117
125
  CommonModule,
118
126
  MatSnackBarModule
119
127
  ]] });
120
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵɵsetNgModuleScope(SnackBarModule, { imports: [CommonModule,
121
- MatSnackBarModule] }); })();
122
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(SnackBarModule, [{
123
- type: NgModule,
124
- args: [{
125
- declarations: [],
126
- imports: [
127
- CommonModule,
128
- MatSnackBarModule
129
- ]
130
- }]
131
- }], null, null); })();
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SnackBarModule, decorators: [{
129
+ type: NgModule,
130
+ args: [{
131
+ declarations: [],
132
+ imports: [
133
+ CommonModule,
134
+ MatSnackBarModule
135
+ ]
136
+ }]
137
+ }] });
132
138
 
133
139
  /**
134
140
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-services.js","sources":["../../../../libs/common/services/form/form.service.ts","../../../../libs/common/services/loading/loading.service.ts","../../../../libs/common/services/query-resolver/query-resolver.service.ts","../../../../libs/common/services/snack-bar/snack-bar.service.ts","../../../../libs/common/services/snack-bar/snack-bar.module.ts","../../../../libs/common/services/ng-atomic-common-services.ts"],"sourcesContent":["import { toObject, isIsoString } from '@ng-atomic/common/utils';\nimport * as dayjs from 'dayjs';\nimport { unflatten, flatten } from 'flat';\nimport { omit, pick } from 'lodash';\n\nconst isNumeric = (v: string): boolean => !isNaN(Number(v)) \n\nconst parseQuery = (v: string, k: string): any => k.match(/id$/i) \n ? v\n : typeof v === 'string' && isIsoString(v) \n ? dayjs(v) \n : isNumeric(v)\n ? Number(v)\n : v;\n\nexport class BaseFormService {\n static fromQueryParams<T>(obj: T): object {\n return Object.entries((unflatten(obj) as any)?.form ?? {}).reduce((m, [k, v]: [string, string]) => ({\n ...m, [k]: parseQuery(v, k),\n }), {});\n }\n\n static toQueryParams<T>(obj: object): T { \n return flatten({form: Object.entries(obj).reduce((m, [k, v]) => ({\n ...m, [k]: dayjs.isDayjs(v) ? v.isValid() ? v.toISOString() : null : v,\n }), {})});\n }\n\n static dayjsKeys(object: object): string[] {\n return Object.entries(object).filter(([_, v]) => dayjs.isDayjs(v)).map(([k]) => k);\n }\n\n static toValue(object: object): object {\n const keys = this.dayjsKeys(object);\n return {...flatten(omit(toObject(object), keys)), ...pick(toObject(object), keys)};\n }\n\n static fromValue(value: object): object {\n const keys = this.dayjsKeys(value);\n return {...unflatten(omit(value, keys)), ...pick(value, keys)};\n }\n}","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","import { Inject, Injectable, Optional } from \"@angular/core\";\nimport { filterByQuery } from \"@ng-atomic/common/utils\";\nimport { SmartExpTransformer, smartExpTransformer, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QueryResolverService {\n constructor(\n @Optional() @Inject(SMART_EXP_TRANSFORMER) private transformer?: SmartExpTransformer,\n ) {\n this.transformer ??= smartExpTransformer;\n }\n\n resolve<T>(items: T[], queryString: string, dlm: Record<string, string> = {}): T[] {\n return filterByQuery(items, queryString, dlm, this.transformer);\n }\n}","import { Injectable } from '@angular/core';\n\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SnackBarService {\n\n constructor(private snackBar: MatSnackBar) {}\n\n openSnackBar(message: string, action?: string) {\n this.snackBar.open(message, action, {\n duration: 2000,\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule,\n MatSnackBarModule\n ]\n})\nexport class SnackBarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["dayjs.isDayjs"],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-common-services.js","sources":["../../../../libs/common/services/form/form.service.ts","../../../../libs/common/services/loading/loading.service.ts","../../../../libs/common/services/query-resolver/query-resolver.service.ts","../../../../libs/common/services/snack-bar/snack-bar.service.ts","../../../../libs/common/services/snack-bar/snack-bar.module.ts","../../../../libs/common/services/ng-atomic-common-services.ts"],"sourcesContent":["import { toObject, isIsoString } from '@ng-atomic/common/utils';\nimport dayjs from 'dayjs';\nimport { unflatten, flatten } from 'flat';\nimport { omit, pick } from 'lodash';\n\nconst isNumeric = (v: string): boolean => !isNaN(Number(v)) \n\nconst parseQueryString = (v: string, key: string): any => key.match(/id$/i) \n ? v\n : typeof v === 'string' && isIsoString(v) \n ? dayjs(v) \n : v === ''\n ? v\n : isNumeric(v)\n ? Number(v)\n : v;\n\nexport class BaseFormService {\n static fromQueryParams<T>(obj: T): object {\n return Object.entries((unflatten(obj) as any)?.form ?? {}).reduce((m, [k, v]: [string, string]) => ({\n ...m, [k]: parseQueryString(v, k),\n }), {});\n }\n\n static toQueryParams<T>(obj: object): T { \n return flatten({form: Object.entries(obj).reduce((m, [k, v]) => ({\n ...m, [k]: dayjs.isDayjs(v) ? v.isValid() ? v.toISOString() : null : v,\n }), {})});\n }\n\n static dayjsKeys(object: object): string[] {\n return Object.entries(object).filter(([_, v]) => dayjs.isDayjs(v)).map(([k]) => k);\n }\n\n static toValue(object: object): object {\n const keys = this.dayjsKeys(object);\n return {...flatten(omit(toObject(object), keys)), ...pick(toObject(object), keys)};\n }\n\n static fromValue(value: object): object {\n const keys = this.dayjsKeys(value);\n return {...unflatten(omit(value, keys)), ...pick(value, keys)};\n }\n}","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","import { Inject, Injectable, Optional } from \"@angular/core\";\nimport { filterByQuery } from \"@ng-atomic/common/utils\";\nimport { SmartExpTransformer, smartExpTransformer, SMART_EXP_TRANSFORMER } from '@ng-atomic/common/utils';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QueryResolverService {\n constructor(\n @Optional() @Inject(SMART_EXP_TRANSFORMER) private transformer?: SmartExpTransformer,\n ) {\n this.transformer ??= smartExpTransformer;\n }\n\n resolve<T>(items: T[], queryString: string, dlm: Record<string, string> = {}): T[] {\n // console.debug('queryString:', queryString);\n // const resolved = filterByQuery(items, queryString, dlm, this.transformer);\n // console.debug('resolved:', resolved);\n // return resolved;\n return items;\n }\n}","import { Injectable } from '@angular/core';\n\nimport { MatSnackBar } from '@angular/material/snack-bar';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SnackBarService {\n\n constructor(private snackBar: MatSnackBar) {}\n\n openSnackBar(message: string, action?: string) {\n this.snackBar.open(message, action, {\n duration: 2000,\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule,\n MatSnackBarModule\n ]\n})\nexport class SnackBarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;AAKA,MAAM,SAAS,GAAG,CAAC,CAAS,KAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;AAE3D,MAAM,gBAAgB,GAAG,CAAC,CAAS,EAAE,GAAW,KAAU,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;AACzE,MAAE,CAAC;MACD,OAAO,CAAC,KAAK,QAAQ,IAAI,WAAW,CAAC,CAAC,CAAC;AACzC,UAAE,KAAK,CAAC,CAAC,CAAC;UACR,CAAC,KAAK,EAAE;AACV,cAAE,CAAC;AACH,cAAE,SAAS,CAAC,CAAC,CAAC;AACd,kBAAE,MAAM,CAAC,CAAC,CAAC;kBACT,CAAC,CAAC;MAEO,eAAe,CAAA;IAC1B,OAAO,eAAe,CAAI,GAAM,EAAA;;QAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,MAAA,CAAC,EAAA,GAAA,SAAS,CAAC,GAAG,CAAS,0CAAE,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAmB,sCACzF,CAAC,CAAA,EAAA,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EACjC,CAAA,CAAA,EAAE,EAAE,CAAC,CAAC;KACT;IAED,OAAO,aAAa,CAAI,GAAW,EAAA;AACjC,QAAA,OAAO,OAAO,CAAC,EAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAK,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAC3D,CAAC,CAAA,EAAA,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,GAAG,CAAC,EAAA,CAAA,CACtE,EAAE,EAAE,CAAC,EAAC,CAAC,CAAC;KACX;IAED,OAAO,SAAS,CAAC,MAAc,EAAA;AAC7B,QAAA,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;KACpF;IAED,OAAO,OAAO,CAAC,MAAc,EAAA;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpC,OAAW,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAK,EAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAE,CAAA;KACpF;IAED,OAAO,SAAS,CAAC,KAAa,EAAA;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACnC,QAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAW,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA,EAAK,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAE,CAAA;KAChE;AACF;;MClCY,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,MAAW,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,GAAG,KAAE,CAAC,GAAG,GAAG,KAAK,IAAG,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,MAAW,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,CAAC,CAAE,EAAA,EAAA,CAAC,CAAC,GAAG,CAAC,EAAA,CAAA,CAAG,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;;4GA7BU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA,CAAA;4FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCAY,oBAAoB,CAAA;AAC/B,IAAA,WAAA,CACqD,WAAiC,EAAA;;QAAjC,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;QAEpF,CAAA,EAAA,GAAA,IAAI,CAAC,WAAW,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,IAAhB,IAAI,CAAC,WAAW,GAAK,mBAAmB,CAAC,CAAA;KAC1C;AAED,IAAA,OAAO,CAAI,KAAU,EAAE,WAAmB,EAAE,MAA8B,EAAE,EAAA;;;;;AAK1E,QAAA,OAAO,KAAK,CAAC;KACd;;AAbU,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAET,qBAAqB,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAFhC,oBAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;4FAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;0BAGI,QAAQ;;0BAAI,MAAM;2BAAC,qBAAqB,CAAA;;;MCHhC,eAAe,CAAA;AAE1B,IAAA,WAAA,CAAoB,QAAqB,EAAA;QAArB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAa;KAAI;IAE7C,YAAY,CAAC,OAAe,EAAE,MAAe,EAAA;QAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;AAClC,YAAA,QAAQ,EAAE,IAAI;AACf,SAAA,CAAC,CAAC;KACJ;;6GARU,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,eAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;4FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA,CAAA;;;MCMY,cAAc,CAAA;;4GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAd,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAJvB,YAAY;QACZ,iBAAiB,CAAA,EAAA,CAAA,CAAA;AAGR,cAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EALhB,OAAA,EAAA,CAAA;YACP,YAAY;YACZ,iBAAiB;AAClB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,iBAAiB;AAClB,qBAAA;AACF,iBAAA,CAAA;;;ACXD;;AAEG;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-common-store.js","sources":["../../../../libs/common/store/entity.page.store.ts","../../../../libs/common/store/entities.page.store.ts","../../../../libs/common/store/ng-atomic-common-store.ts"],"sourcesContent":["import { ComponentStore } from '@ngrx/component-store';\nimport { LoadingService, SnackBarService } from '@ng-atomic/common/services';\nimport { Observable } from 'rxjs';\nimport { filter, switchMap, tap } from 'rxjs/operators';\n\nexport type Mode = 'create' | 'update'\n\nexport interface EntityPageState<Entity> {\n mode: Mode;\n entityId: string;\n entity: Entity;\n}\n\nexport const tryCatch = (promise: Promise<any>) => new Promise(async (resolve, reject) => {\n try { resolve(await promise); } catch (error) { reject(error); }\n});\n\nexport abstract class EntityPageStore<S extends EntityPageState<Entity>, Entity> extends ComponentStore<S> {\n get entity() { return this.get().entity}\n\n mode$ = this.select(state => state.mode);\n entityId$ = this.select(state => state.entityId).pipe(filter(id => !!id));\n entity$ = this.select(state => state.entity);\n\n setMode = this.updater((state, mode: Mode) => ({...state, mode}));\n setEntityId = this.updater((state, entityId: string) => ({...state, entityId}));\n setEntity = this.updater((state, entity: Entity) => ({...state, entity}));\n\n constructor(initialState?: S) {\n super(initialState);\n this.getEntity(this.entityId$);\n }\n\n getEntityIdAndMode = this.effect((entityId$: Observable<string>) => entityId$.pipe(\n tap(id => this.setMode(id === 'new' ? 'create' : 'update')),\n filter(id => id !== 'new'),\n tap((id: string) => this.setEntityId(id)),\n ));\n\n getEntity = this.effect((entityId$: Observable<string>) => entityId$.pipe(\n switchMap(id => this._getEntity(id)),\n tap((entity: Entity) => this.setEntity(entity)),\n ));\n\n createEntity(value: Partial<Entity>) {\n const entity: Entity = ({...this.entity, ...value});\n\n this.loading.setKey('[pages/stores/pages/store] Create Store');\n\n return tryCatch(this._createEntity(entity))\n .catch(error => (console.error(error), this.snackBar.openSnackBar('作成に失敗しました。')))\n .finally(() => this.loading.removeKey('[pages/stores/pages/store] Create Store'));\n }\n\n updateEntity(value: Partial<Entity>) {\n const entity: Entity = ({...this.entity, ...value});\n\n this.loading.setKey('[pages/stores/pages/store] Create Store');\n return this._updateEntity(entity)\n .catch(error => (console.error(error), this.snackBar.openSnackBar('更新に失敗しました。')))\n .finally(() => this.loading.removeKey('[pages/stores/pages/store] Create Store'));\n }\n\n abstract _getEntity(idOrParams: string): Observable<Entity>;\n abstract _createEntity(entity: Entity): Promise<Entity>;\n abstract _updateEntity(entity: Entity): Promise<void>;\n\n abstract get loading(): LoadingService;\n abstract get snackBar(): SnackBarService;\n\n}\n","import { ComponentStore } from '@ngrx/component-store';\nimport { LoadingService, QueryResolverService } from '@ng-atomic/common/services';\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 EntitiesPageState<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 EntitiesPageStore<S extends EntitiesPageState<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 tap(() => this.loading.setKey('[/entities] Get Entities')),\n switchMap((userId) => this._getEntities({userId})),\n tap((entities: E[]) => this.setEntities(entities)),\n tap(() => this.loading.removeKey('[/entities] Get 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 abstract loading: LoadingService;\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-store.js","sources":["../../../../libs/common/store/entity.page.store.ts","../../../../libs/common/store/entities.page.store.ts","../../../../libs/common/store/ng-atomic-common-store.ts"],"sourcesContent":["import { ComponentStore } from '@ngrx/component-store';\nimport { LoadingService, SnackBarService } from '@ng-atomic/common/services';\nimport { Observable } from 'rxjs';\nimport { filter, switchMap, tap } from 'rxjs/operators';\n\nexport type Mode = 'create' | 'update'\n\nexport interface EntityPageState<Entity> {\n mode: Mode;\n entityId: string;\n entity: Entity;\n}\n\nexport const tryCatch = (promise: Promise<any>) => new Promise(async (resolve, reject) => {\n try { resolve(await promise); } catch (error) { reject(error); }\n});\n\nexport abstract class EntityPageStore<S extends EntityPageState<Entity>, Entity> extends ComponentStore<S> {\n get entity() { return this.get().entity}\n\n mode$ = this.select(state => state.mode);\n entityId$ = this.select(state => state.entityId).pipe(filter(id => !!id));\n entity$ = this.select(state => state.entity);\n\n setMode = this.updater((state, mode: Mode) => ({...state, mode}));\n setEntityId = this.updater((state, entityId: string) => ({...state, entityId}));\n setEntity = this.updater((state, entity: Entity) => ({...state, entity}));\n\n constructor(initialState?: S) {\n super(initialState);\n this.getEntity(this.entityId$);\n }\n\n getEntityIdAndMode = this.effect((entityId$: Observable<string>) => entityId$.pipe(\n tap(id => this.setMode(id === 'new' ? 'create' : 'update')),\n filter(id => id !== 'new'),\n tap((id: string) => this.setEntityId(id)),\n ));\n\n getEntity = this.effect((entityId$: Observable<string>) => entityId$.pipe(\n switchMap(id => this._getEntity(id)),\n tap((entity: Entity) => this.setEntity(entity)),\n ));\n\n createEntity(value: Partial<Entity>) {\n const entity: Entity = ({...this.entity, ...value});\n\n this.loading.setKey('[pages/stores/pages/store] Create Store');\n\n return tryCatch(this._createEntity(entity))\n .catch(error => (console.error(error), this.snackBar.openSnackBar('作成に失敗しました。')))\n .finally(() => this.loading.removeKey('[pages/stores/pages/store] Create Store'));\n }\n\n updateEntity(value: Partial<Entity>) {\n const entity: Entity = ({...this.entity, ...value});\n\n this.loading.setKey('[pages/stores/pages/store] Create Store');\n return this._updateEntity(entity)\n .catch(error => (console.error(error), this.snackBar.openSnackBar('更新に失敗しました。')))\n .finally(() => this.loading.removeKey('[pages/stores/pages/store] Create Store'));\n }\n\n abstract _getEntity(idOrParams: string): Observable<Entity>;\n abstract _createEntity(entity: Entity): Promise<Entity>;\n abstract _updateEntity(entity: Entity): Promise<void>;\n\n abstract get loading(): LoadingService;\n abstract get snackBar(): SnackBarService;\n\n}\n","import { ComponentStore } from '@ngrx/component-store';\nimport { LoadingService, QueryResolverService } from '@ng-atomic/common/services';\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 EntitiesPageState<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 EntitiesPageStore<S extends EntitiesPageState<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 tap(() => this.loading.setKey('[/entities] Get Entities')),\n switchMap((userId) => this._getEntities({userId})),\n tap((entities: E[]) => this.setEntities(entities)),\n tap(() => this.loading.removeKey('[/entities] Get 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 abstract loading: LoadingService;\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import * as dayjs from 'dayjs';
2
- import { isDayjs, extend, locale } from 'dayjs';
1
+ import dayjs from 'dayjs';
3
2
  import { __decorate, __param, __metadata } from 'tslib';
4
- import { InjectionToken, Optional, Inject, ɵɵdefineNgModule, ɵɵdefineInjector, ɵsetClassMetadata, NgModule, ɵɵsetNgModuleScope } from '@angular/core';
3
+ import * as i0 from '@angular/core';
4
+ import { InjectionToken, Optional, Inject, NgModule } from '@angular/core';
5
5
  import { DateAdapter, MAT_DATE_LOCALE, MAT_DATE_FORMATS } from '@angular/material/core';
6
- import * as utc from 'dayjs/plugin/utc';
7
- import * as localeData from 'dayjs/plugin/localeData';
8
- import * as LocalizedFormat from 'dayjs/plugin/localizedFormat';
9
- import * as customParseFormat from 'dayjs/plugin/customParseFormat';
6
+ import utc from 'dayjs/plugin/utc';
7
+ import localeData from 'dayjs/plugin/localeData';
8
+ import LocalizedFormat from 'dayjs/plugin/localizedFormat';
9
+ import customParseFormat from 'dayjs/plugin/customParseFormat';
10
10
  import 'dayjs/locale/ja';
11
11
  import { flatten } from 'flat';
12
12
 
@@ -174,7 +174,7 @@ let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
174
174
  return super.deserialize(value);
175
175
  }
176
176
  isDateInstance(obj) {
177
- return isDayjs(obj);
177
+ return dayjs.isDayjs(obj);
178
178
  }
179
179
  isValid(date) {
180
180
  return this.dayJs(date).isValid();
@@ -194,17 +194,19 @@ let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
194
194
  }
195
195
  initializeParser(dateLocale) {
196
196
  if (this.shouldUseUtc) {
197
- extend(utc);
197
+ dayjs.extend(utc);
198
198
  }
199
- extend(LocalizedFormat);
200
- extend(customParseFormat);
201
- extend(localeData);
199
+ dayjs.extend(LocalizedFormat);
200
+ dayjs.extend(customParseFormat);
201
+ dayjs.extend(localeData);
202
202
  this.setLocale(dateLocale);
203
203
  }
204
204
  };
205
205
  DayjsDateAdapter = __decorate([
206
- __param(0, Optional()), __param(0, Inject(MAT_DATE_LOCALE)),
207
- __param(1, Optional()), __param(1, Inject(MAT_DAYJS_DATE_ADAPTER_OPTIONS)),
206
+ __param(0, Optional()),
207
+ __param(0, Inject(MAT_DATE_LOCALE)),
208
+ __param(1, Optional()),
209
+ __param(1, Inject(MAT_DAYJS_DATE_ADAPTER_OPTIONS)),
208
210
  __metadata("design:paramtypes", [String, Object])
209
211
  ], DayjsDateAdapter);
210
212
 
@@ -223,7 +225,7 @@ const MAT_DAYJS_DATE_FORMATS = {
223
225
  }
224
226
  };
225
227
 
226
- locale('ja');
228
+ dayjs.locale('ja');
227
229
  const MAT_DAYJS_DATE_FORMATS_FOR_JP = {
228
230
  parse: {
229
231
  dateInput: 'YYYY/MM/DD',
@@ -242,40 +244,39 @@ const MAT_DAYJS_JP_PROVIDERS = [
242
244
 
243
245
  class DayjsDateModule {
244
246
  }
245
- DayjsDateModule.ɵfac = function DayjsDateModule_Factory(t) { return new (t || DayjsDateModule)(); };
246
- DayjsDateModule.ɵmod = ɵɵdefineNgModule({ type: DayjsDateModule });
247
- DayjsDateModule.ɵinj = ɵɵdefineInjector({ providers: [
247
+ DayjsDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayjsDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
248
+ DayjsDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayjsDateModule });
249
+ DayjsDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayjsDateModule, providers: [
248
250
  {
249
251
  provide: DateAdapter,
250
252
  useClass: DayjsDateAdapter,
251
253
  deps: [MAT_DATE_LOCALE, MAT_DAYJS_DATE_ADAPTER_OPTIONS]
252
254
  },
253
255
  ] });
254
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(DayjsDateModule, [{
255
- type: NgModule,
256
- args: [{
257
- providers: [
258
- {
259
- provide: DateAdapter,
260
- useClass: DayjsDateAdapter,
261
- deps: [MAT_DATE_LOCALE, MAT_DAYJS_DATE_ADAPTER_OPTIONS]
262
- },
263
- ],
264
- }]
265
- }], null, null); })();
256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DayjsDateModule, decorators: [{
257
+ type: NgModule,
258
+ args: [{
259
+ providers: [
260
+ {
261
+ provide: DateAdapter,
262
+ useClass: DayjsDateAdapter,
263
+ deps: [MAT_DATE_LOCALE, MAT_DAYJS_DATE_ADAPTER_OPTIONS]
264
+ },
265
+ ],
266
+ }]
267
+ }] });
266
268
  class MatDayjsDateModule {
267
269
  }
268
- MatDayjsDateModule.ɵfac = function MatDayjsDateModule_Factory(t) { return new (t || MatDayjsDateModule)(); };
269
- MatDayjsDateModule.ɵmod = ɵɵdefineNgModule({ type: MatDayjsDateModule });
270
- MatDayjsDateModule.ɵinj = ɵɵdefineInjector({ providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }], imports: [[DayjsDateModule]] });
271
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵɵsetNgModuleScope(MatDayjsDateModule, { imports: [DayjsDateModule] }); })();
272
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(MatDayjsDateModule, [{
273
- type: NgModule,
274
- args: [{
275
- imports: [DayjsDateModule],
276
- providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }],
277
- }]
278
- }], null, null); })();
270
+ MatDayjsDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MatDayjsDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
271
+ MatDayjsDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MatDayjsDateModule, imports: [DayjsDateModule] });
272
+ MatDayjsDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MatDayjsDateModule, providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }], imports: [[DayjsDateModule]] });
273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: MatDayjsDateModule, decorators: [{
274
+ type: NgModule,
275
+ args: [{
276
+ imports: [DayjsDateModule],
277
+ providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }],
278
+ }]
279
+ }] });
279
280
 
280
281
  const SMART_EXP_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Transformer');
281
282
  // export const yenTransform = (value: number, _unit?: string): string => {
@@ -284,7 +285,7 @@ const SMART_EXP_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Tran
284
285
  const yenTransform = (value, _unit) => {
285
286
  return `${comma(value)}円`;
286
287
  };
287
- const smartExpTransformer = input => isDayjs(input)
288
+ const smartExpTransformer = input => dayjs.isDayjs(input)
288
289
  ? input.format('YY/MM/DD')
289
290
  : Array.isArray(input)
290
291
  ? `${input.length}個のアイテム`
@@ -318,7 +319,23 @@ class QueryResolver {
318
319
  var _a, _b;
319
320
  const [_key, value] = query.split('>');
320
321
  const key = (_b = (_a = this.REVERSED_MAP) === null || _a === void 0 ? void 0 : _a[_key]) !== null && _b !== void 0 ? _b : _key;
321
- return items.filter(item => { var _a; return this.gt(key, (_a = flatten(toObject(item))) === null || _a === void 0 ? void 0 : _a[key], value); });
322
+ return items.filter(item => {
323
+ var _a, _b, _c;
324
+ // TODO(nontangent): flattenしたときにdayjsが壊れる
325
+ const v = (_b = (_a = flatten(toObject(item))) === null || _a === void 0 ? void 0 : _a[key]) !== null && _b !== void 0 ? _b : (_c = toObject(item)) === null || _c === void 0 ? void 0 : _c[key];
326
+ return this.gt(key, v, value);
327
+ });
328
+ };
329
+ this.ltQueryByKey = (items, query) => {
330
+ var _a, _b;
331
+ const [_key, value] = query.split('<');
332
+ const key = (_b = (_a = this.REVERSED_MAP) === null || _a === void 0 ? void 0 : _a[_key]) !== null && _b !== void 0 ? _b : _key;
333
+ return items.filter(item => {
334
+ var _a, _b, _c;
335
+ // TODO(nontangent): flattenしたときにdayjsが壊れる
336
+ const v = (_b = (_a = flatten(toObject(item))) === null || _a === void 0 ? void 0 : _a[key]) !== null && _b !== void 0 ? _b : (_c = toObject(item)) === null || _c === void 0 ? void 0 : _c[key];
337
+ return this.lt(key, v, value);
338
+ });
322
339
  };
323
340
  this.inQuery = (items, q) => {
324
341
  return items.filter(item => Object.entries(flatten(toObject(item))).some(([k, v]) => this.in(k, v, q)));
@@ -337,7 +354,7 @@ class QueryResolver {
337
354
  if (query.includes('>'))
338
355
  return this.gtQueryByKey(_items, query);
339
356
  if (query.includes('<'))
340
- return this.inQueryByKey(_items, query);
357
+ return this.ltQueryByKey(_items, query);
341
358
  return this.inQuery(_items, query);
342
359
  }, items);
343
360
  }
@@ -349,7 +366,12 @@ class QueryResolver {
349
366
  return _in(this.transformer(v, k), q);
350
367
  }
351
368
  gt(k, v, q) {
352
- return _gt(this.transformer(v, k), q);
369
+ // const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);
370
+ return _gt(v, q);
371
+ }
372
+ lt(k, v, q) {
373
+ // const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);
374
+ return _lt(v, q);
353
375
  }
354
376
  }
355
377
  const _not = (bool, not) => {
@@ -363,7 +385,18 @@ const _gt = (value, query) => {
363
385
  ? parseFloat(value) > parseFloat(query)
364
386
  : typeof value === 'number'
365
387
  ? value > parseFloat(query)
366
- : false;
388
+ : dayjs.isDayjs(value)
389
+ ? dayjs(query).isBefore(value)
390
+ : false;
391
+ };
392
+ const _lt = (value, query) => {
393
+ return typeof value === 'string'
394
+ ? parseFloat(value) < parseFloat(query)
395
+ : typeof value === 'number'
396
+ ? value < parseFloat(query)
397
+ : dayjs.isDayjs(value)
398
+ ? dayjs(query).isAfter(value)
399
+ : false;
367
400
  };
368
401
 
369
402
  // export * from './define-element';