@ng-atomic/common 0.0.0-PLACEHOLDER
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/directives/ios-safari-scroll-buggyfill/index.d.ts +2 -0
- package/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.d.ts +8 -0
- package/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.d.ts +8 -0
- package/esm2020/directives/ios-safari-scroll-buggyfill/index.mjs +3 -0
- package/esm2020/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.directive.mjs +24 -0
- package/esm2020/directives/ios-safari-scroll-buggyfill/ios-safari-scroll-buggyfill.module.mjs +24 -0
- package/esm2020/directives/ios-safari-scroll-buggyfill/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +5 -0
- package/esm2020/index.mjs +2 -0
- package/esm2020/models/action-item.mjs +2 -0
- package/esm2020/models/action.mjs +2 -0
- package/esm2020/models/index.mjs +2 -0
- package/esm2020/models/menu-item.mjs +2 -0
- package/esm2020/models/ng-atomic-common-models.mjs +5 -0
- package/esm2020/models/public_api.mjs +4 -0
- package/esm2020/ng-atomic-common.mjs +5 -0
- package/esm2020/pipes/data-accessor/data-accessor.pipe.mjs +30 -0
- package/esm2020/pipes/data-accessor/index.mjs +2 -0
- package/esm2020/pipes/data-accessor/ng-atomic-common-pipes-data-accessor.mjs +5 -0
- package/esm2020/pipes/domain/domain.module.mjs +24 -0
- package/esm2020/pipes/domain/domain.pipe.mjs +27 -0
- package/esm2020/pipes/domain/index.mjs +3 -0
- package/esm2020/pipes/domain/ng-atomic-common-pipes-domain.mjs +5 -0
- package/esm2020/pipes/pagination/index.mjs +4 -0
- package/esm2020/pipes/pagination/ng-atomic-common-pipes-pagination.mjs +5 -0
- package/esm2020/pipes/pagination/pagination.module.mjs +24 -0
- package/esm2020/pipes/pagination/pagination.pipe.mjs +28 -0
- package/esm2020/pipes/pagination/pagination.transformer.mjs +5 -0
- package/esm2020/pipes/smart-exp/index.mjs +3 -0
- package/esm2020/pipes/smart-exp/ng-atomic-common-pipes-smart-exp.mjs +5 -0
- package/esm2020/pipes/smart-exp/smart-exp.module.mjs +16 -0
- package/esm2020/pipes/smart-exp/smart-exp.pipe.mjs +27 -0
- package/esm2020/pipes/smart-field/index.mjs +3 -0
- package/esm2020/pipes/smart-field/ng-atomic-common-pipes-smart-field.mjs +5 -0
- package/esm2020/pipes/smart-field/smart-field.module.mjs +24 -0
- package/esm2020/pipes/smart-field/smart-field.pipe.mjs +31 -0
- package/esm2020/pipes/smart-sort-by/index.mjs +4 -0
- package/esm2020/pipes/smart-sort-by/ng-atomic-common-pipes-smart-sort-by.mjs +5 -0
- package/esm2020/pipes/smart-sort-by/smart-sort-by.module.mjs +24 -0
- package/esm2020/pipes/smart-sort-by/smart-sort-by.pipe.mjs +28 -0
- package/esm2020/pipes/smart-sort-by/smart-sort-by.transformer.mjs +5 -0
- package/esm2020/pipes/yen/index.mjs +3 -0
- package/esm2020/pipes/yen/ng-atomic-common-pipes-yen.mjs +5 -0
- package/esm2020/pipes/yen/yen.module.mjs +24 -0
- package/esm2020/pipes/yen/yen.pipe.mjs +17 -0
- package/esm2020/services/chips-manager/chips.manager.mjs +29 -0
- package/esm2020/services/chips-manager/index.mjs +2 -0
- package/esm2020/services/chips-manager/ng-atomic-common-services-chips-manager.mjs +5 -0
- package/esm2020/services/form/form.service.mjs +38 -0
- package/esm2020/services/form/index.mjs +2 -0
- package/esm2020/services/form/ng-atomic-common-services-form.mjs +5 -0
- package/esm2020/services/loading/index.mjs +2 -0
- package/esm2020/services/loading/loading.service.mjs +39 -0
- package/esm2020/services/loading/ng-atomic-common-services-loading.mjs +5 -0
- package/esm2020/services/query-resolver/index.mjs +2 -0
- package/esm2020/services/query-resolver/ng-atomic-common-services-query-resolver.mjs +5 -0
- package/esm2020/services/query-resolver/query-resolver.service.mjs +26 -0
- package/esm2020/services/snack-bar/index.mjs +3 -0
- package/esm2020/services/snack-bar/ng-atomic-common-services-snack-bar.mjs +5 -0
- package/esm2020/services/snack-bar/snack-bar.module.mjs +22 -0
- package/esm2020/services/snack-bar/snack-bar.service.mjs +23 -0
- package/esm2020/stores/entities/entities.store.mjs +21 -0
- package/esm2020/stores/entities/index.mjs +2 -0
- package/esm2020/stores/entities/ng-atomic-common-stores-entities.mjs +5 -0
- package/esm2020/stores/entity/entity.store.mjs +34 -0
- package/esm2020/stores/entity/index.mjs +2 -0
- package/esm2020/stores/entity/ng-atomic-common-stores-entity.mjs +5 -0
- package/esm2020/stores/pagination/index.mjs +2 -0
- package/esm2020/stores/pagination/ng-atomic-common-stores-pagination.mjs +5 -0
- package/esm2020/stores/pagination/pagination.store.mjs +23 -0
- package/esm2020/stores/query/index.mjs +2 -0
- package/esm2020/stores/query/ng-atomic-common-stores-query.mjs +5 -0
- package/esm2020/stores/query/query.store.mjs +31 -0
- package/esm2020/stores/selection/index.mjs +2 -0
- package/esm2020/stores/selection/ng-atomic-common-stores-selection.mjs +5 -0
- package/esm2020/stores/selection/selection.store.mjs +29 -0
- package/esm2020/stores/sort/index.mjs +2 -0
- package/esm2020/stores/sort/ng-atomic-common-stores-sort.mjs +5 -0
- package/esm2020/stores/sort/sort.store.mjs +28 -0
- package/esm2020/utils/comma/comma.mjs +4 -0
- package/esm2020/utils/comma/index.mjs +2 -0
- package/esm2020/utils/compare-by-id/compare-by-id.mjs +2 -0
- package/esm2020/utils/compare-by-id/index.mjs +2 -0
- package/esm2020/utils/date-utils/date-utils.mjs +13 -0
- package/esm2020/utils/date-utils/index.mjs +2 -0
- package/esm2020/utils/index.mjs +9 -0
- package/esm2020/utils/mat-dayjs-date/dayjs-date.adapter.mjs +191 -0
- package/esm2020/utils/mat-dayjs-date/dayjs-date.formats.mjs +15 -0
- package/esm2020/utils/mat-dayjs-date/dayjs-date.module.mjs +41 -0
- package/esm2020/utils/mat-dayjs-date/dayjs-jp-providers.mjs +20 -0
- package/esm2020/utils/mat-dayjs-date/index.mjs +5 -0
- package/esm2020/utils/ng-atomic-common-utils.mjs +5 -0
- package/esm2020/utils/page/index.mjs +2 -0
- package/esm2020/utils/page/ng-atomic-common-utils-page.mjs +5 -0
- package/esm2020/utils/page/page.mjs +20 -0
- package/esm2020/utils/query/index.mjs +2 -0
- package/esm2020/utils/query/query.resolver.mjs +97 -0
- package/esm2020/utils/smart-exp-transformer/index.mjs +2 -0
- package/esm2020/utils/smart-exp-transformer/smart-exp-transformer.mjs +18 -0
- package/esm2020/utils/to-object/index.mjs +2 -0
- package/esm2020/utils/to-object/to-object.mjs +10 -0
- package/fesm2015/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +52 -0
- package/fesm2015/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-models.mjs +4 -0
- package/fesm2015/ng-atomic-common-models.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-data-accessor.mjs +40 -0
- package/fesm2015/ng-atomic-common-pipes-data-accessor.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-domain.mjs +59 -0
- package/fesm2015/ng-atomic-common-pipes-domain.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-pagination.mjs +63 -0
- package/fesm2015/ng-atomic-common-pipes-pagination.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-smart-exp.mjs +50 -0
- package/fesm2015/ng-atomic-common-pipes-smart-exp.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-smart-field.mjs +63 -0
- package/fesm2015/ng-atomic-common-pipes-smart-field.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-smart-sort-by.mjs +63 -0
- package/fesm2015/ng-atomic-common-pipes-smart-sort-by.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-pipes-yen.mjs +45 -0
- package/fesm2015/ng-atomic-common-pipes-yen.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-services-chips-manager.mjs +36 -0
- package/fesm2015/ng-atomic-common-services-chips-manager.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-services-form.mjs +42 -0
- package/fesm2015/ng-atomic-common-services-form.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-services-loading.mjs +46 -0
- package/fesm2015/ng-atomic-common-services-loading.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-services-query-resolver.mjs +36 -0
- package/fesm2015/ng-atomic-common-services-query-resolver.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-services-snack-bar.mjs +49 -0
- package/fesm2015/ng-atomic-common-services-snack-bar.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-entities.mjs +28 -0
- package/fesm2015/ng-atomic-common-stores-entities.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-entity.mjs +42 -0
- package/fesm2015/ng-atomic-common-stores-entity.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-pagination.mjs +30 -0
- package/fesm2015/ng-atomic-common-stores-pagination.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-query.mjs +40 -0
- package/fesm2015/ng-atomic-common-stores-query.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-selection.mjs +36 -0
- package/fesm2015/ng-atomic-common-stores-selection.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-stores-sort.mjs +35 -0
- package/fesm2015/ng-atomic-common-stores-sort.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-utils-page.mjs +21 -0
- package/fesm2015/ng-atomic-common-utils-page.mjs.map +1 -0
- package/fesm2015/ng-atomic-common-utils.mjs +409 -0
- package/fesm2015/ng-atomic-common-utils.mjs.map +1 -0
- package/fesm2015/ng-atomic-common.mjs +4 -0
- package/fesm2015/ng-atomic-common.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +52 -0
- package/fesm2020/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-models.mjs +4 -0
- package/fesm2020/ng-atomic-common-models.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-data-accessor.mjs +37 -0
- package/fesm2020/ng-atomic-common-pipes-data-accessor.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-domain.mjs +55 -0
- package/fesm2020/ng-atomic-common-pipes-domain.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-pagination.mjs +60 -0
- package/fesm2020/ng-atomic-common-pipes-pagination.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-smart-exp.mjs +47 -0
- package/fesm2020/ng-atomic-common-pipes-smart-exp.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-smart-field.mjs +59 -0
- package/fesm2020/ng-atomic-common-pipes-smart-field.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-smart-sort-by.mjs +60 -0
- package/fesm2020/ng-atomic-common-pipes-smart-sort-by.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-pipes-yen.mjs +45 -0
- package/fesm2020/ng-atomic-common-pipes-yen.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-services-chips-manager.mjs +36 -0
- package/fesm2020/ng-atomic-common-services-chips-manager.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-services-form.mjs +45 -0
- package/fesm2020/ng-atomic-common-services-form.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-services-loading.mjs +46 -0
- package/fesm2020/ng-atomic-common-services-loading.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-services-query-resolver.mjs +33 -0
- package/fesm2020/ng-atomic-common-services-query-resolver.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-services-snack-bar.mjs +49 -0
- package/fesm2020/ng-atomic-common-services-snack-bar.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-entities.mjs +28 -0
- package/fesm2020/ng-atomic-common-stores-entities.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-entity.mjs +41 -0
- package/fesm2020/ng-atomic-common-stores-entity.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-pagination.mjs +30 -0
- package/fesm2020/ng-atomic-common-stores-pagination.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-query.mjs +37 -0
- package/fesm2020/ng-atomic-common-stores-query.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-selection.mjs +36 -0
- package/fesm2020/ng-atomic-common-stores-selection.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-stores-sort.mjs +35 -0
- package/fesm2020/ng-atomic-common-stores-sort.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-utils-page.mjs +26 -0
- package/fesm2020/ng-atomic-common-utils-page.mjs.map +1 -0
- package/fesm2020/ng-atomic-common-utils.mjs +406 -0
- package/fesm2020/ng-atomic-common-utils.mjs.map +1 -0
- package/fesm2020/ng-atomic-common.mjs +4 -0
- package/fesm2020/ng-atomic-common.mjs.map +1 -0
- package/index.d.ts +1 -0
- package/models/action-item.d.ts +6 -0
- package/models/action.d.ts +8 -0
- package/models/index.d.ts +1 -0
- package/models/menu-item.d.ts +4 -0
- package/models/public_api.d.ts +3 -0
- package/package.json +210 -0
- package/pipes/data-accessor/data-accessor.pipe.d.ts +12 -0
- package/pipes/data-accessor/index.d.ts +1 -0
- package/pipes/domain/domain.module.d.ts +8 -0
- package/pipes/domain/domain.pipe.d.ts +11 -0
- package/pipes/domain/index.d.ts +2 -0
- package/pipes/pagination/index.d.ts +3 -0
- package/pipes/pagination/pagination.module.d.ts +8 -0
- package/pipes/pagination/pagination.pipe.d.ts +16 -0
- package/pipes/pagination/pagination.transformer.d.ts +9 -0
- package/pipes/smart-exp/index.d.ts +2 -0
- package/pipes/smart-exp/smart-exp.module.d.ts +7 -0
- package/pipes/smart-exp/smart-exp.pipe.d.ts +10 -0
- package/pipes/smart-field/index.d.ts +2 -0
- package/pipes/smart-field/smart-field.module.d.ts +8 -0
- package/pipes/smart-field/smart-field.pipe.d.ts +31 -0
- package/pipes/smart-sort-by/index.d.ts +3 -0
- package/pipes/smart-sort-by/smart-sort-by.module.d.ts +8 -0
- package/pipes/smart-sort-by/smart-sort-by.pipe.d.ts +11 -0
- package/pipes/smart-sort-by/smart-sort-by.transformer.d.ts +2 -0
- package/pipes/yen/index.d.ts +2 -0
- package/pipes/yen/yen.module.d.ts +8 -0
- package/pipes/yen/yen.pipe.d.ts +7 -0
- package/services/chips-manager/chips.manager.d.ts +11 -0
- package/services/chips-manager/index.d.ts +1 -0
- package/services/form/form.service.d.ts +7 -0
- package/services/form/index.d.ts +1 -0
- package/services/loading/index.d.ts +1 -0
- package/services/loading/loading.service.d.ts +16 -0
- package/services/query-resolver/index.d.ts +1 -0
- package/services/query-resolver/query-resolver.service.d.ts +9 -0
- package/services/snack-bar/index.d.ts +2 -0
- package/services/snack-bar/snack-bar.module.d.ts +8 -0
- package/services/snack-bar/snack-bar.service.d.ts +9 -0
- package/stores/entities/entities.store.d.ts +17 -0
- package/stores/entities/index.d.ts +1 -0
- package/stores/entity/entity.store.d.ts +26 -0
- package/stores/entity/index.d.ts +1 -0
- package/stores/pagination/index.d.ts +1 -0
- package/stores/pagination/pagination.store.d.ts +19 -0
- package/stores/query/index.d.ts +1 -0
- package/stores/query/query.store.d.ts +17 -0
- package/stores/selection/index.d.ts +1 -0
- package/stores/selection/selection.store.d.ts +23 -0
- package/stores/sort/index.d.ts +1 -0
- package/stores/sort/sort.store.d.ts +21 -0
- package/utils/comma/comma.d.ts +3 -0
- package/utils/comma/index.d.ts +1 -0
- package/utils/compare-by-id/compare-by-id.d.ts +4 -0
- package/utils/compare-by-id/index.d.ts +1 -0
- package/utils/date-utils/date-utils.d.ts +10 -0
- package/utils/date-utils/index.d.ts +1 -0
- package/utils/index.d.ts +7 -0
- package/utils/mat-dayjs-date/dayjs-date.adapter.d.ts +60 -0
- package/utils/mat-dayjs-date/dayjs-date.formats.d.ts +5 -0
- package/utils/mat-dayjs-date/dayjs-date.module.d.ts +11 -0
- package/utils/mat-dayjs-date/dayjs-jp-providers.d.ts +10 -0
- package/utils/mat-dayjs-date/index.d.ts +4 -0
- package/utils/page/index.d.ts +1 -0
- package/utils/page/page.d.ts +11 -0
- package/utils/query/index.d.ts +1 -0
- package/utils/query/query.resolver.d.ts +2 -0
- package/utils/smart-exp-transformer/index.d.ts +1 -0
- package/utils/smart-exp-transformer/smart-exp-transformer.d.ts +6 -0
- package/utils/to-object/index.d.ts +1 -0
- package/utils/to-object/to-object.d.ts +1 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { ComponentStore } from "@ngrx/component-store";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class SortStore extends ComponentStore {
|
|
5
|
+
constructor() {
|
|
6
|
+
super({ key: null, order: 'asc' });
|
|
7
|
+
this.state$ = this.select(state => state);
|
|
8
|
+
this.key$ = this.select(state => state.key);
|
|
9
|
+
this.order$ = this.select(state => state.order);
|
|
10
|
+
this.setKey = this.updater((state, key) => ({ ...state, key }));
|
|
11
|
+
this.setOrder = this.updater((state, order) => ({ ...state, order }));
|
|
12
|
+
}
|
|
13
|
+
get state() { return this.get(); }
|
|
14
|
+
get key() { return this.get().key; }
|
|
15
|
+
get order() { return this.get().order; }
|
|
16
|
+
changeSortFromEvent(key, state = this.state) {
|
|
17
|
+
const reverse = (order) => order === 'asc' ? 'desc' : 'asc';
|
|
18
|
+
const order = key === state.key ? reverse(state.order) : 'asc';
|
|
19
|
+
this.setKey(key);
|
|
20
|
+
this.setOrder(order);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
SortStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
24
|
+
SortStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortStore });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: SortStore, decorators: [{
|
|
26
|
+
type: Injectable
|
|
27
|
+
}], ctorParameters: function () { return []; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9zdG9yZXMvc29ydC9zb3J0LnN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQVN2RCxNQUFNLE9BQU8sU0FBVSxTQUFRLGNBQXlCO0lBQ3REO1FBQWUsS0FBSyxDQUFDLEVBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQTtRQU0vQyxXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLFNBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLFdBQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTNDLFdBQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFDLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUMsQ0FBQztRQUNqRSxhQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFxQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsR0FBRyxLQUFLLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxDQUFDO0lBWGhDLENBQUM7SUFFaEQsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xDLElBQUksR0FBRyxLQUFLLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDcEMsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQVN4QyxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsUUFBbUIsSUFBSSxDQUFDLEtBQUs7UUFDNUQsTUFBTSxPQUFPLEdBQUcsQ0FBQyxLQUFxQixFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUM1RSxNQUFNLEtBQUssR0FBRyxHQUFHLEtBQUssS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQy9ELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDOztzR0FuQlUsU0FBUzswR0FBVCxTQUFTOzJGQUFULFNBQVM7a0JBRHJCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbXBvbmVudFN0b3JlIH0gZnJvbSBcIkBuZ3J4L2NvbXBvbmVudC1zdG9yZVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29ydFN0YXRlIHtcbiAga2V5OiBzdHJpbmc7XG4gIG9yZGVyOiAnYXNjJyB8ICdkZXNjJztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNvcnRTdG9yZSBleHRlbmRzIENvbXBvbmVudFN0b3JlPFNvcnRTdGF0ZT4ge1xuICBjb25zdHJ1Y3RvcigpIHtzdXBlcih7a2V5OiBudWxsLCBvcmRlcjogJ2FzYyd9KX1cblxuICBnZXQgc3RhdGUoKSB7IHJldHVybiB0aGlzLmdldCgpOyB9XG4gIGdldCBrZXkoKSB7IHJldHVybiB0aGlzLmdldCgpLmtleTsgfVxuICBnZXQgb3JkZXIoKSB7IHJldHVybiB0aGlzLmdldCgpLm9yZGVyOyB9XG5cbiAgc3RhdGUkID0gdGhpcy5zZWxlY3Qoc3RhdGUgPT4gc3RhdGUpO1xuICBrZXkkID0gdGhpcy5zZWxlY3Qoc3RhdGUgPT4gc3RhdGUua2V5KTtcbiAgb3JkZXIkID0gdGhpcy5zZWxlY3Qoc3RhdGUgPT4gc3RhdGUub3JkZXIpO1xuXG4gIHNldEtleSA9IHRoaXMudXBkYXRlcigoc3RhdGUsIGtleTogc3RyaW5nKSA9PiAoey4uLnN0YXRlLCBrZXl9KSk7XG4gIHNldE9yZGVyID0gdGhpcy51cGRhdGVyKChzdGF0ZSwgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnKSA9PiAoey4uLnN0YXRlLCBvcmRlcn0pKTtcbiBcbiAgY2hhbmdlU29ydEZyb21FdmVudChrZXk6IHN0cmluZywgc3RhdGU6IFNvcnRTdGF0ZSA9IHRoaXMuc3RhdGUpIHtcbiAgICBjb25zdCByZXZlcnNlID0gKG9yZGVyOiAnYXNjJyB8ICdkZXNjJykgPT4gb3JkZXIgPT09ICdhc2MnID8gJ2Rlc2MnIDogJ2FzYyc7XG4gICAgY29uc3Qgb3JkZXIgPSBrZXkgPT09IHN0YXRlLmtleSA/IHJldmVyc2Uoc3RhdGUub3JkZXIpIDogJ2FzYyc7XG4gICAgdGhpcy5zZXRLZXkoa2V5KTtcbiAgICB0aGlzLnNldE9yZGVyKG9yZGVyKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export const comma = (n) => n === null ? '0' : n.toLocaleString();
|
|
2
|
+
export const commaStr = (n, unit = '円') => n < 0 ? `-${comma(abs(n))}${unit}` : `${comma(n)}${unit}`;
|
|
3
|
+
export const abs = (n) => Math.abs(n);
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvY29tbWEvY29tbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBZ0IsRUFBVSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7QUFDekYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBUyxFQUFFLE9BQWUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUM7QUFDckgsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGNvbW1hID0gKG46IG51bWJlciB8IG51bGwpOiBzdHJpbmcgPT4gbiA9PT0gbnVsbCA/ICcwJyA6IG4udG9Mb2NhbGVTdHJpbmcoKTtcbmV4cG9ydCBjb25zdCBjb21tYVN0ciA9IChuOiBudW1iZXIsIHVuaXQ6IHN0cmluZyA9ICflhoYnKSA9PiBuIDwgMCA/IGAtJHtjb21tYShhYnMobikpfSR7dW5pdH1gIDogYCR7Y29tbWEobil9JHt1bml0fWA7XG5leHBvcnQgY29uc3QgYWJzID0gKG46IG51bWJlcikgPT4gTWF0aC5hYnMobik7Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './comma';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvY29tbWEvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbW1hJztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const compareById = (a, b) => parseInt(a.id, 10) - parseInt(b.id, 10);
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFyZS1ieS1pZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy91dGlscy9jb21wYXJlLWJ5LWlkL2NvbXBhcmUtYnktaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBUSxFQUFFLENBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBIYXNJZCA9IHsgaWQ6IHN0cmluZyB9O1xuZXhwb3J0IGNvbnN0IGNvbXBhcmVCeUlkID0gKGE6IEhhc0lkLCBiOiBIYXNJZCkgPT4gcGFyc2VJbnQoYS5pZCwgMTApIC0gcGFyc2VJbnQoYi5pZCwgMTApO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './compare-by-id';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvY29tcGFyZS1ieS1pZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wYXJlLWJ5LWlkJztcbiJdfQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import dayjs from 'dayjs';
|
|
2
|
+
export const removeComma = (str) => str.replace(/\,/g, '');
|
|
3
|
+
export const DATE_FORMAT = 'YYYY-MM-DDTHH:mm:ss';
|
|
4
|
+
const DATE_REGEX = /^[0-9]{4}\/(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])$/;
|
|
5
|
+
const DATETIME_REGEX = /^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\+([+-][0-2]\d:[0-5]\d)$/;
|
|
6
|
+
export const isDateStr = (str) => str && !!str.match(DATE_REGEX);
|
|
7
|
+
export const isDateTimeStr = (str) => str && !!str.match(DATE_REGEX);
|
|
8
|
+
const ISO_REGEX = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
|
|
9
|
+
export const isIsoString = (str) => str && !!str.match(ISO_REGEX);
|
|
10
|
+
export function timestampToDayjs(timestamp) {
|
|
11
|
+
return timestamp ? dayjs(timestamp.toDate()) : null;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy91dGlscy9kYXRlLXV0aWxzL2RhdGUtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFbkUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLHFCQUFxQixDQUFDO0FBQ2pELE1BQU0sVUFBVSxHQUFHLHVEQUF1RCxDQUFDO0FBQzNFLE1BQU0sY0FBYyxHQUFHLHVFQUF1RSxDQUFDO0FBQy9GLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQWtCLEVBQWlCLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDL0YsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQUMsR0FBa0IsRUFBaUIsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUVuRyxNQUFNLFNBQVMsR0FBRywwRUFBMEUsQ0FBQztBQUM3RixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxHQUFrQixFQUFpQixFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBT2hHLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxTQUEyQjtJQUMxRCxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDdEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5cbmV4cG9ydCBjb25zdCByZW1vdmVDb21tYSA9IChzdHI6IHN0cmluZykgPT4gc3RyLnJlcGxhY2UoL1xcLC9nLCAnJyk7XG5cbmV4cG9ydCBjb25zdCBEQVRFX0ZPUk1BVCA9ICdZWVlZLU1NLUREVEhIOm1tOnNzJztcbmNvbnN0IERBVEVfUkVHRVggPSAvXlswLTldezR9XFwvKDBbMS05XXwxWzAtMl0pXFwvKDBbMS05XXxbMTJdWzAtOV18M1swMV0pJC87XG5jb25zdCBEQVRFVElNRV9SRUdFWCA9IC9eXFxkezR9LVswMV1cXGQtWzAtM11cXGRUWzAtMl1cXGQ6WzAtNV1cXGQ6WzAtNV1cXGRcXCsoWystXVswLTJdXFxkOlswLTVdXFxkKSQvO1xuZXhwb3J0IGNvbnN0IGlzRGF0ZVN0ciA9IChzdHI6IHN0cmluZyB8IG51bGwpOiBzdHIgaXMgc3RyaW5nID0+IHN0ciAmJiAhIXN0ci5tYXRjaChEQVRFX1JFR0VYKTtcbmV4cG9ydCBjb25zdCBpc0RhdGVUaW1lU3RyID0gKHN0cjogc3RyaW5nIHwgbnVsbCk6IHN0ciBpcyBzdHJpbmcgPT4gc3RyICYmICEhc3RyLm1hdGNoKERBVEVfUkVHRVgpO1xuXG5jb25zdCBJU09fUkVHRVggPSAvXFxkezR9LVswMV1cXGQtWzAtM11cXGRUWzAtMl1cXGQ6WzAtNV1cXGQ6WzAtNV1cXGRcXC5cXGQrKFsrLV1bMC0yXVxcZDpbMC01XVxcZHxaKS87XG5leHBvcnQgY29uc3QgaXNJc29TdHJpbmcgPSAoc3RyOiBzdHJpbmcgfCBudWxsKTogc3RyIGlzIHN0cmluZyA9PiBzdHIgJiYgISFzdHIubWF0Y2goSVNPX1JFR0VYKTtcblxuXG5leHBvcnQgaW50ZXJmYWNlIFRpbWVzdGFtcCB7XG4gIHRvRGF0ZTogKCkgPT4gRGF0ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVzdGFtcFRvRGF5anModGltZXN0YW1wOiBUaW1lc3RhbXAgfCBudWxsKTogZGF5anMuRGF5anMgfCBudWxsIHtcbiAgcmV0dXJuIHRpbWVzdGFtcCA/IGRheWpzKHRpbWVzdGFtcC50b0RhdGUoKSkgOiBudWxsO1xufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './date-utils';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvZGF0ZS11dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGF0ZS11dGlscyc7Il19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './comma';
|
|
2
|
+
export * from './compare-by-id';
|
|
3
|
+
export * from './date-utils';
|
|
4
|
+
export * from './mat-dayjs-date';
|
|
5
|
+
export * from './smart-exp-transformer';
|
|
6
|
+
export * from './to-object';
|
|
7
|
+
export * from './query';
|
|
8
|
+
// export * from './define-element';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsb0NBQW9DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21tYSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBhcmUtYnktaWQnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRlLXV0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbWF0LWRheWpzLWRhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zbWFydC1leHAtdHJhbnNmb3JtZXInO1xuZXhwb3J0ICogZnJvbSAnLi90by1vYmplY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9xdWVyeSc7XG4vLyBleHBvcnQgKiBmcm9tICcuL2RlZmluZS1lbGVtZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { __decorate, __metadata, __param } from "tslib";
|
|
2
|
+
import { Optional, Inject, InjectionToken } from '@angular/core';
|
|
3
|
+
import { DateAdapter, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
4
|
+
import dayjs from 'dayjs';
|
|
5
|
+
import utc from 'dayjs/plugin/utc';
|
|
6
|
+
import localeData from 'dayjs/plugin/localeData';
|
|
7
|
+
import LocalizedFormat from 'dayjs/plugin/localizedFormat';
|
|
8
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat';
|
|
9
|
+
/** InjectionToken for Dayjs date adapter to configure options. */
|
|
10
|
+
export const MAT_DAYJS_DATE_ADAPTER_OPTIONS = new InjectionToken('MAT_DAYJS_DATE_ADAPTER_OPTIONS', {
|
|
11
|
+
providedIn: 'root',
|
|
12
|
+
factory: MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY
|
|
13
|
+
});
|
|
14
|
+
export function MAT_DAYJS_DATE_ADAPTER_OPTIONS_FACTORY() {
|
|
15
|
+
return {
|
|
16
|
+
useUtc: false
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/** Creates an array and fills it with values. */
|
|
20
|
+
function range(length, valueFunction) {
|
|
21
|
+
const valuesArray = Array(length);
|
|
22
|
+
for (let i = 0; i < length; i++) {
|
|
23
|
+
valuesArray[i] = valueFunction(i);
|
|
24
|
+
}
|
|
25
|
+
return valuesArray;
|
|
26
|
+
}
|
|
27
|
+
/** Adapts Dayjs Dates for use with Angular Material. */
|
|
28
|
+
let DayjsDateAdapter = class DayjsDateAdapter extends DateAdapter {
|
|
29
|
+
constructor(dateLocale, options) {
|
|
30
|
+
super();
|
|
31
|
+
this.dateLocale = dateLocale;
|
|
32
|
+
this.options = options;
|
|
33
|
+
this.initializeParser(dateLocale);
|
|
34
|
+
}
|
|
35
|
+
// TODO: Implement
|
|
36
|
+
setLocale(locale) {
|
|
37
|
+
super.setLocale(locale);
|
|
38
|
+
const dayJsLocaleData = this.dayJs().localeData();
|
|
39
|
+
this.localeData = {
|
|
40
|
+
firstDayOfWeek: dayJsLocaleData.firstDayOfWeek(),
|
|
41
|
+
longMonths: dayJsLocaleData.months(),
|
|
42
|
+
shortMonths: dayJsLocaleData.monthsShort(),
|
|
43
|
+
dates: range(31, (i) => this.createDate(2017, 0, i + 1).format('D')),
|
|
44
|
+
longDaysOfWeek: range(7, (i) => this.dayJs().set('day', i).format('dddd')),
|
|
45
|
+
shortDaysOfWeek: dayJsLocaleData.weekdaysShort(),
|
|
46
|
+
narrowDaysOfWeek: dayJsLocaleData.weekdaysMin(),
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
getYear(date) {
|
|
50
|
+
return this.dayJs(date).year();
|
|
51
|
+
}
|
|
52
|
+
getMonth(date) {
|
|
53
|
+
return this.dayJs(date).month();
|
|
54
|
+
}
|
|
55
|
+
getDate(date) {
|
|
56
|
+
return this.dayJs(date).date();
|
|
57
|
+
}
|
|
58
|
+
getDayOfWeek(date) {
|
|
59
|
+
return this.dayJs(date).day();
|
|
60
|
+
}
|
|
61
|
+
getMonthNames(style) {
|
|
62
|
+
return style === 'long' ? this.localeData.longMonths : this.localeData.shortMonths;
|
|
63
|
+
}
|
|
64
|
+
getDateNames() {
|
|
65
|
+
return this.localeData.dates;
|
|
66
|
+
}
|
|
67
|
+
getDayOfWeekNames(style) {
|
|
68
|
+
if (style === 'long') {
|
|
69
|
+
return this.localeData.longDaysOfWeek;
|
|
70
|
+
}
|
|
71
|
+
if (style === 'short') {
|
|
72
|
+
return this.localeData.shortDaysOfWeek;
|
|
73
|
+
}
|
|
74
|
+
return this.localeData.narrowDaysOfWeek;
|
|
75
|
+
}
|
|
76
|
+
getYearName(date) {
|
|
77
|
+
return this.dayJs(date).format('YYYY');
|
|
78
|
+
}
|
|
79
|
+
getFirstDayOfWeek() {
|
|
80
|
+
return this.localeData.firstDayOfWeek;
|
|
81
|
+
}
|
|
82
|
+
getNumDaysInMonth(date) {
|
|
83
|
+
return this.dayJs(date).daysInMonth();
|
|
84
|
+
}
|
|
85
|
+
clone(date) {
|
|
86
|
+
return date.clone();
|
|
87
|
+
}
|
|
88
|
+
createDate(year, month, date) {
|
|
89
|
+
const returnDayjs = this.dayJs()
|
|
90
|
+
.set('year', year)
|
|
91
|
+
.set('month', month)
|
|
92
|
+
.set('date', date);
|
|
93
|
+
return returnDayjs;
|
|
94
|
+
}
|
|
95
|
+
today() {
|
|
96
|
+
return this.dayJs();
|
|
97
|
+
}
|
|
98
|
+
parse(value, parseFormat) {
|
|
99
|
+
if (value && typeof value === 'string') {
|
|
100
|
+
return this.dayJs(value, dayjs().localeData().longDateFormat(parseFormat), this.locale);
|
|
101
|
+
}
|
|
102
|
+
return value ? this.dayJs(value).locale(this.locale) : null;
|
|
103
|
+
}
|
|
104
|
+
format(date, displayFormat) {
|
|
105
|
+
if (!this.isValid(date)) {
|
|
106
|
+
throw Error('DayjsDateAdapter: Cannot format invalid date.');
|
|
107
|
+
}
|
|
108
|
+
return date.locale(this.locale).format(displayFormat);
|
|
109
|
+
}
|
|
110
|
+
addCalendarYears(date, years) {
|
|
111
|
+
return date.add(years, 'year');
|
|
112
|
+
}
|
|
113
|
+
addCalendarMonths(date, months) {
|
|
114
|
+
return date.add(months, 'month');
|
|
115
|
+
}
|
|
116
|
+
addCalendarDays(date, days) {
|
|
117
|
+
return date.add(days, 'day');
|
|
118
|
+
}
|
|
119
|
+
toIso8601(date) {
|
|
120
|
+
return date.toISOString();
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Attempts to deserialize a value to a valid date object. This is different from parsing in that
|
|
124
|
+
* deserialize should only accept non-ambiguous, locale-independent formats (e.g. a ISO 8601
|
|
125
|
+
* string). The default implementation does not allow any deserialization, it simply checks that
|
|
126
|
+
* the given value is already a valid date object or null. The `<mat-datepicker>` will call this
|
|
127
|
+
* method on all of it's `@Input()` properties that accept dates. It is therefore possible to
|
|
128
|
+
* support passing values from your backend directly to these properties by overriding this method
|
|
129
|
+
* to also deserialize the format used by your backend.
|
|
130
|
+
* @param value The value to be deserialized into a date object.
|
|
131
|
+
* @returns The deserialized date object, either a valid date, null if the value can be
|
|
132
|
+
* deserialized into a null date (e.g. the empty string), or an invalid date.
|
|
133
|
+
*/
|
|
134
|
+
deserialize(value) {
|
|
135
|
+
let date;
|
|
136
|
+
if (value instanceof Date) {
|
|
137
|
+
date = this.dayJs(value);
|
|
138
|
+
}
|
|
139
|
+
else if (this.isDateInstance(value)) {
|
|
140
|
+
// NOTE: assumes that cloning also sets the correct locale.
|
|
141
|
+
return this.clone(value);
|
|
142
|
+
}
|
|
143
|
+
if (typeof value === 'string') {
|
|
144
|
+
if (!value) {
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
147
|
+
date = this.dayJs(value).toISOString();
|
|
148
|
+
}
|
|
149
|
+
if (date && this.isValid(date)) {
|
|
150
|
+
return this.dayJs(date); // NOTE: Is this necessary since Dayjs is immutable and Moment was not?
|
|
151
|
+
}
|
|
152
|
+
return super.deserialize(value);
|
|
153
|
+
}
|
|
154
|
+
isDateInstance(obj) {
|
|
155
|
+
return dayjs.isDayjs(obj);
|
|
156
|
+
}
|
|
157
|
+
isValid(date) {
|
|
158
|
+
return this.dayJs(date).isValid();
|
|
159
|
+
}
|
|
160
|
+
invalid() {
|
|
161
|
+
return this.dayJs(null);
|
|
162
|
+
}
|
|
163
|
+
dayJs(input, format, locale) {
|
|
164
|
+
if (!this.shouldUseUtc) {
|
|
165
|
+
return dayjs(input, { format, locale }, locale);
|
|
166
|
+
}
|
|
167
|
+
return dayjs(input, { format, locale, utc: this.shouldUseUtc }, locale).utc();
|
|
168
|
+
}
|
|
169
|
+
get shouldUseUtc() {
|
|
170
|
+
const { useUtc } = this.options || {};
|
|
171
|
+
return !!useUtc;
|
|
172
|
+
}
|
|
173
|
+
initializeParser(dateLocale) {
|
|
174
|
+
if (this.shouldUseUtc) {
|
|
175
|
+
dayjs.extend(utc);
|
|
176
|
+
}
|
|
177
|
+
dayjs.extend(LocalizedFormat);
|
|
178
|
+
dayjs.extend(customParseFormat);
|
|
179
|
+
dayjs.extend(localeData);
|
|
180
|
+
this.setLocale(dateLocale);
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
DayjsDateAdapter = __decorate([
|
|
184
|
+
__param(0, Optional()),
|
|
185
|
+
__param(0, Inject(MAT_DATE_LOCALE)),
|
|
186
|
+
__param(1, Optional()),
|
|
187
|
+
__param(1, Inject(MAT_DAYJS_DATE_ADAPTER_OPTIONS)),
|
|
188
|
+
__metadata("design:paramtypes", [String, Object])
|
|
189
|
+
], DayjsDateAdapter);
|
|
190
|
+
export { DayjsDateAdapter };
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5anMtZGF0ZS5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL3V0aWxzL21hdC1kYXlqcy1kYXRlL2RheWpzLWRhdGUuYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE9BQU8sR0FBRyxNQUFNLGtCQUFrQixDQUFDO0FBQ25DLE9BQU8sVUFBVSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pELE9BQU8sZUFBZSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8saUJBQWlCLE1BQU0sZ0NBQWdDLENBQUM7QUFZL0Qsa0VBQWtFO0FBQ2xFLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLElBQUksY0FBYyxDQUM5RCxnQ0FBZ0MsRUFBRTtJQUNsQyxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsc0NBQXNDO0NBQ2hELENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSxzQ0FBc0M7SUFDcEQsT0FBTztRQUNMLE1BQU0sRUFBRSxLQUFLO0tBQ2QsQ0FBQztBQUNKLENBQUM7QUFFRCxpREFBaUQ7QUFDakQsU0FBUyxLQUFLLENBQUksTUFBYyxFQUFFLGFBQW1DO0lBQ25FLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQy9CLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7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QUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNuQjtRQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDOUIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3QixDQUFDO0NBQ0YsQ0FBQTtBQWxNWSxnQkFBZ0I7SUFZeEIsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUFFLFdBQUEsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQ25DLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFBRSxXQUFBLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBOztHQWIxQyxnQkFBZ0IsQ0FrTTVCO1NBbE1ZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgT3B0aW9uYWwsIEluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGVBZGFwdGVyLCBNQVRfREFURV9MT0NBTEUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBEYXlqcyB9IGZyb20gJ2RheWpzJztcbmltcG9ydCB1dGMgZnJvbSAnZGF5anMvcGx1Z2luL3V0Yyc7XG5pbXBvcnQgbG9jYWxlRGF0YSBmcm9tICdkYXlqcy9wbHVnaW4vbG9jYWxlRGF0YSc7XG5pbXBvcnQgTG9jYWxpemVkRm9ybWF0IGZyb20gJ2RheWpzL3BsdWdpbi9sb2NhbGl6ZWRGb3JtYXQnO1xuaW1wb3J0IGN1c3RvbVBhcnNlRm9ybWF0IGZyb20gJ2RheWpzL3BsdWdpbi9jdXN0b21QYXJzZUZvcm1hdCc7XG5cblxuZXhwb3J0IGludGVyZmFjZSBEYXlKc0RhdGVBZGFwdGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUdXJucyB0aGUgdXNlIG9mIHV0YyBkYXRlcyBvbiBvciBvZmYuXG4gICAqIENoYW5naW5nIHRoaXMgd2lsbCBjaGFuZ2UgaG93IEFuZ3VsYXIgTWF0ZXJpYWwgY29tcG9uZW50cyBsaWtlIERhdGVQaWNrZXIgb3V0cHV0IGRhdGVzLlxuICAgKiB7QGRlZmF1bHQgZmFsc2V9XG4gICAqL1xuICB1c2VVdGM/OiBib29sZWFuO1xufVxuXG4vKiogSW5qZWN0aW9uVG9rZW4gZm9yIERheWpzIGRhdGUgYWRhcHRlciB0byBjb25maWd1cmUgb3B0aW9ucy4gKi9cbmV4cG9ydCBjb25zdCBNQVRfREFZSlNfREFURV9BREFQVEVSX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48RGF5SnNEYXRlQWRhcHRlck9wdGlvbnM+KFxuICAnTUFUX0RBWUpTX0RBVEVfQURBUFRFUl9PUFRJT05TJywge1xuICBwcm92aWRlZEluOiAncm9vdCcsXG4gIGZhY3Rvcnk6IE1BVF9EQVlKU19EQVRFX0FEQVBURVJfT1BUSU9OU19GQUNUT1JZXG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIE1BVF9EQVlKU19EQVRFX0FEQVBURVJfT1BUSU9OU19GQUNUT1JZKCk6IERheUpzRGF0ZUFkYXB0ZXJPcHRpb25zIHtcbiAgcmV0dXJuIHtcbiAgICB1c2VVdGM6IGZhbHNlXG4gIH07XG59XG5cbi8qKiBDcmVhdGVzIGFuIGFycmF5IGFuZCBmaWxscyBpdCB3aXRoIHZhbHVlcy4gKi9cbmZ1bmN0aW9uIHJhbmdlPFQ+KGxlbmd0aDogbnVtYmVyLCB2YWx1ZUZ1bmN0aW9uOiAoaW5kZXg6IG51bWJlcikgPT4gVCk6IFRbXSB7XG4gIGNvbnN0IHZhbHVlc0FycmF5ID0gQXJyYXkobGVuZ3RoKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgIHZhbHVlc0FycmF5W2ldID0gdmFsdWVGdW5jdGlvbihpKTtcbiAgfVxuICByZXR1cm4gdmFsdWVzQXJyYXk7XG59XG5cbi8qKiBBZGFwdHMgRGF5anMgRGF0ZXMgZm9yIHVzZSB3aXRoIEFuZ3VsYXIgTWF0ZXJpYWwuICovXG5leHBvcnQgY2xhc3MgRGF5anNEYXRlQWRhcHRlciBleHRlbmRzIERhdGVBZGFwdGVyPERheWpzPiB7XG4gIHByaXZhdGUgbG9jYWxlRGF0YSE6IHtcbiAgICBmaXJzdERheU9mV2VlazogbnVtYmVyLFxuICAgIGxvbmdNb250aHM6IHN0cmluZ1tdLFxuICAgIHNob3J0TW9udGhzOiBzdHJpbmdbXSxcbiAgICBkYXRlczogc3RyaW5nW10sXG4gICAgbG9uZ0RheXNPZldlZWs6IHN0cmluZ1tdLFxuICAgIHNob3J0RGF5c09mV2Vlazogc3RyaW5nW10sXG4gICAgbmFycm93RGF5c09mV2Vlazogc3RyaW5nW11cbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9EQVRFX0xPQ0FMRSkgcHVibGljIGRhdGVMb2NhbGU6IHN0cmluZyxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9EQVlKU19EQVRFX0FEQVBURVJfT1BUSU9OUykgcHJpdmF0ZSBvcHRpb25zPzogRGF5SnNEYXRlQWRhcHRlck9wdGlvbnNcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmluaXRpYWxpemVQYXJzZXIoZGF0ZUxvY2FsZSk7XG4gIH1cblxuICAvLyBUT0RPOiBJbXBsZW1lbnRcbiAgb3ZlcnJpZGUgc2V0TG9jYWxlKGxvY2FsZTogc3RyaW5nKSB7XG4gICAgc3VwZXIuc2V0TG9jYWxlKGxvY2FsZSk7XG5cbiAgICBjb25zdCBkYXlKc0xvY2FsZURhdGEgPSB0aGlzLmRheUpzKCkubG9jYWxlRGF0YSgpO1xuICAgIHRoaXMubG9jYWxlRGF0YSA9IHtcbiAgICAgIGZpcnN0RGF5T2ZXZWVrOiBkYXlKc0xvY2FsZURhdGEuZmlyc3REYXlPZldlZWsoKSxcbiAgICAgIGxvbmdNb250aHM6IGRheUpzTG9jYWxlRGF0YS5tb250aHMoKSxcbiAgICAgIHNob3J0TW9udGhzOiBkYXlKc0xvY2FsZURhdGEubW9udGhzU2hvcnQoKSxcbiAgICAgIGRhdGVzOiByYW5nZSgzMSwgKGkpID0+IHRoaXMuY3JlYXRlRGF0ZSgyMDE3LCAwLCBpICsgMSkuZm9ybWF0KCdEJykpLFxuICAgICAgbG9uZ0RheXNPZldlZWs6IHJhbmdlKDcsIChpKSA9PiB0aGlzLmRheUpzKCkuc2V0KCdkYXknLCBpKS5mb3JtYXQoJ2RkZGQnKSksXG4gICAgICBzaG9ydERheXNPZldlZWs6IGRheUpzTG9jYWxlRGF0YS53ZWVrZGF5c1Nob3J0KCksXG4gICAgICBuYXJyb3dEYXlzT2ZXZWVrOiBkYXlKc0xvY2FsZURhdGEud2Vla2RheXNNaW4oKSxcbiAgICB9O1xuICB9XG5cbiAgZ2V0WWVhcihkYXRlOiBEYXlqcyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZGF5SnMoZGF0ZSkueWVhcigpO1xuICB9XG5cbiAgZ2V0TW9udGgoZGF0ZTogRGF5anMpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRheUpzKGRhdGUpLm1vbnRoKCk7XG4gIH1cblxuICBnZXREYXRlKGRhdGU6IERheWpzKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kYXlKcyhkYXRlKS5kYXRlKCk7XG4gIH1cblxuICBnZXREYXlPZldlZWsoZGF0ZTogRGF5anMpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRheUpzKGRhdGUpLmRheSgpO1xuICB9XG5cbiAgZ2V0TW9udGhOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBzdHlsZSA9PT0gJ2xvbmcnID8gdGhpcy5sb2NhbGVEYXRhLmxvbmdNb250aHMgOiB0aGlzLmxvY2FsZURhdGEuc2hvcnRNb250aHM7XG4gIH1cblxuICBnZXREYXRlTmFtZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEuZGF0ZXM7XG4gIH1cblxuICBnZXREYXlPZldlZWtOYW1lcyhzdHlsZTogJ2xvbmcnIHwgJ3Nob3J0JyB8ICduYXJyb3cnKTogc3RyaW5nW10ge1xuICAgIGlmIChzdHlsZSA9PT0gJ2xvbmcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhLmxvbmdEYXlzT2ZXZWVrO1xuICAgIH1cbiAgICBpZiAoc3R5bGUgPT09ICdzaG9ydCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEuc2hvcnREYXlzT2ZXZWVrO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhLm5hcnJvd0RheXNPZldlZWs7XG4gIH1cblxuICBnZXRZZWFyTmFtZShkYXRlOiBEYXlqcyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZGF5SnMoZGF0ZSkuZm9ybWF0KCdZWVlZJyk7XG4gIH1cblxuICBnZXRGaXJzdERheU9mV2VlaygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEuZmlyc3REYXlPZldlZWs7XG4gIH1cblxuICBnZXROdW1EYXlzSW5Nb250aChkYXRlOiBEYXlqcyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZGF5SnMoZGF0ZSkuZGF5c0luTW9udGgoKTtcbiAgfVxuXG4gIGNsb25lKGRhdGU6IERheWpzKTogRGF5anMge1xuICAgIHJldHVybiBkYXRlLmNsb25lKCk7XG4gIH1cblxuICBjcmVhdGVEYXRlKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF0ZTogbnVtYmVyKTogRGF5anMge1xuICAgIGNvbnN0IHJldHVybkRheWpzID0gdGhpcy5kYXlKcygpXG4gICAgICAuc2V0KCd5ZWFyJywgeWVhcilcbiAgICAgIC5zZXQoJ21vbnRoJywgbW9udGgpXG4gICAgICAuc2V0KCdkYXRlJywgZGF0ZSk7XG4gICAgcmV0dXJuIHJldHVybkRheWpzO1xuICB9XG5cbiAgdG9kYXkoKTogRGF5anMge1xuICAgIHJldHVybiB0aGlzLmRheUpzKCk7XG4gIH1cblxuICBwYXJzZSh2YWx1ZTogYW55LCBwYXJzZUZvcm1hdDogc3RyaW5nKTogRGF5anMgfCBudWxsIHtcbiAgICBpZiAodmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHRoaXMuZGF5SnModmFsdWUsIGRheWpzKCkubG9jYWxlRGF0YSgpLmxvbmdEYXRlRm9ybWF0KHBhcnNlRm9ybWF0KSwgdGhpcy5sb2NhbGUpO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPyB0aGlzLmRheUpzKHZhbHVlKS5sb2NhbGUodGhpcy5sb2NhbGUpIDogbnVsbDtcbiAgfVxuXG4gIGZvcm1hdChkYXRlOiBEYXlqcywgZGlzcGxheUZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuaXNWYWxpZChkYXRlKSkge1xuICAgICAgdGhyb3cgRXJyb3IoJ0RheWpzRGF0ZUFkYXB0ZXI6IENhbm5vdCBmb3JtYXQgaW52YWxpZCBkYXRlLicpO1xuICAgIH1cbiAgICByZXR1cm4gZGF0ZS5sb2NhbGUodGhpcy5sb2NhbGUpLmZvcm1hdChkaXNwbGF5Rm9ybWF0KTtcbiAgfVxuXG4gIGFkZENhbGVuZGFyWWVhcnMoZGF0ZTogRGF5anMsIHllYXJzOiBudW1iZXIpOiBEYXlqcyB7XG4gICAgcmV0dXJuIGRhdGUuYWRkKHllYXJzLCAneWVhcicpO1xuICB9XG5cbiAgYWRkQ2FsZW5kYXJNb250aHMoZGF0ZTogRGF5anMsIG1vbnRoczogbnVtYmVyKTogRGF5anMge1xuICAgIHJldHVybiBkYXRlLmFkZChtb250aHMsICdtb250aCcpO1xuICB9XG5cbiAgYWRkQ2FsZW5kYXJEYXlzKGRhdGU6IERheWpzLCBkYXlzOiBudW1iZXIpOiBEYXlqcyB7XG4gICAgcmV0dXJuIGRhdGUuYWRkKGRheXMsICdkYXknKTtcbiAgfVxuXG4gIHRvSXNvODYwMShkYXRlOiBEYXlqcyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRhdGUudG9JU09TdHJpbmcoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRlbXB0cyB0byBkZXNlcmlhbGl6ZSBhIHZhbHVlIHRvIGEgdmFsaWQgZGF0ZSBvYmplY3QuIFRoaXMgaXMgZGlmZmVyZW50IGZyb20gcGFyc2luZyBpbiB0aGF0XG4gICAqIGRlc2VyaWFsaXplIHNob3VsZCBvbmx5IGFjY2VwdCBub24tYW1iaWd1b3VzLCBsb2NhbGUtaW5kZXBlbmRlbnQgZm9ybWF0cyAoZS5nLiBhIElTTyA4NjAxXG4gICAqIHN0cmluZykuIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIGRvZXMgbm90IGFsbG93IGFueSBkZXNlcmlhbGl6YXRpb24sIGl0IHNpbXBseSBjaGVja3MgdGhhdFxuICAgKiB0aGUgZ2l2ZW4gdmFsdWUgaXMgYWxyZWFkeSBhIHZhbGlkIGRhdGUgb2JqZWN0IG9yIG51bGwuIFRoZSBgPG1hdC1kYXRlcGlja2VyPmAgd2lsbCBjYWxsIHRoaXNcbiAgICogbWV0aG9kIG9uIGFsbCBvZiBpdCdzIGBASW5wdXQoKWAgcHJvcGVydGllcyB0aGF0IGFjY2VwdCBkYXRlcy4gSXQgaXMgdGhlcmVmb3JlIHBvc3NpYmxlIHRvXG4gICAqIHN1cHBvcnQgcGFzc2luZyB2YWx1ZXMgZnJvbSB5b3VyIGJhY2tlbmQgZGlyZWN0bHkgdG8gdGhlc2UgcHJvcGVydGllcyBieSBvdmVycmlkaW5nIHRoaXMgbWV0aG9kXG4gICAqIHRvIGFsc28gZGVzZXJpYWxpemUgdGhlIGZvcm1hdCB1c2VkIGJ5IHlvdXIgYmFja2VuZC5cbiAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byBiZSBkZXNlcmlhbGl6ZWQgaW50byBhIGRhdGUgb2JqZWN0LlxuICAgKiBAcmV0dXJucyBUaGUgZGVzZXJpYWxpemVkIGRhdGUgb2JqZWN0LCBlaXRoZXIgYSB2YWxpZCBkYXRlLCBudWxsIGlmIHRoZSB2YWx1ZSBjYW4gYmVcbiAgICogICAgIGRlc2VyaWFsaXplZCBpbnRvIGEgbnVsbCBkYXRlIChlLmcuIHRoZSBlbXB0eSBzdHJpbmcpLCBvciBhbiBpbnZhbGlkIGRhdGUuXG4gICAqL1xuICAgb3ZlcnJpZGUgZGVzZXJpYWxpemUodmFsdWU6IGFueSk6IERheWpzIHwgbnVsbCB7XG4gICAgbGV0IGRhdGU7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgZGF0ZSA9IHRoaXMuZGF5SnModmFsdWUpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc0RhdGVJbnN0YW5jZSh2YWx1ZSkpIHtcbiAgICAgIC8vIE5PVEU6IGFzc3VtZXMgdGhhdCBjbG9uaW5nIGFsc28gc2V0cyB0aGUgY29ycmVjdCBsb2NhbGUuXG4gICAgICByZXR1cm4gdGhpcy5jbG9uZSh2YWx1ZSk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgZGF0ZSA9IHRoaXMuZGF5SnModmFsdWUpLnRvSVNPU3RyaW5nKCk7XG4gICAgfVxuICAgIGlmIChkYXRlICYmIHRoaXMuaXNWYWxpZChkYXRlIGFzIERheWpzKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZGF5SnMoZGF0ZSk7IC8vIE5PVEU6IElzIHRoaXMgbmVjZXNzYXJ5IHNpbmNlIERheWpzIGlzIGltbXV0YWJsZSBhbmQgTW9tZW50IHdhcyBub3Q/XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5kZXNlcmlhbGl6ZSh2YWx1ZSk7XG4gIH1cblxuICBpc0RhdGVJbnN0YW5jZShvYmo6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBkYXlqcy5pc0RheWpzKG9iaik7XG4gIH1cblxuICBpc1ZhbGlkKGRhdGU6IERheWpzKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGF5SnMoZGF0ZSkuaXNWYWxpZCgpO1xuICB9XG5cbiAgaW52YWxpZCgpOiBEYXlqcyB7XG4gICAgcmV0dXJuIHRoaXMuZGF5SnMobnVsbCk7XG4gIH1cblxuICBwcml2YXRlIGRheUpzKGlucHV0PzogYW55LCBmb3JtYXQ/OiBzdHJpbmcsIGxvY2FsZT86IHN0cmluZyk6IERheWpzIHtcbiAgICBpZiAoIXRoaXMuc2hvdWxkVXNlVXRjKSB7XG4gICAgICByZXR1cm4gZGF5anMoaW5wdXQsIHsgZm9ybWF0LCBsb2NhbGUgfSwgbG9jYWxlKTtcbiAgICB9XG4gICAgcmV0dXJuIGRheWpzKGlucHV0LCB7IGZvcm1hdCwgbG9jYWxlLCB1dGM6IHRoaXMuc2hvdWxkVXNlVXRjIH0sIGxvY2FsZSkudXRjKCk7XG4gIH1cblxuICBwcml2YXRlIGdldCBzaG91bGRVc2VVdGMoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgeyB1c2VVdGMgfTogRGF5SnNEYXRlQWRhcHRlck9wdGlvbnMgPSB0aGlzLm9wdGlvbnMgfHwge307XG4gICAgcmV0dXJuICEhdXNlVXRjO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplUGFyc2VyKGRhdGVMb2NhbGU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLnNob3VsZFVzZVV0Yykge1xuICAgICAgZGF5anMuZXh0ZW5kKHV0Yyk7XG4gICAgfVxuXG4gICAgZGF5anMuZXh0ZW5kKExvY2FsaXplZEZvcm1hdCk7XG4gICAgZGF5anMuZXh0ZW5kKGN1c3RvbVBhcnNlRm9ybWF0KTtcbiAgICBkYXlqcy5leHRlbmQobG9jYWxlRGF0YSk7XG5cbiAgICB0aGlzLnNldExvY2FsZShkYXRlTG9jYWxlKTtcbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom Date-Formats and Adapter (using https://github.com/iamkun/dayjs)
|
|
3
|
+
*/
|
|
4
|
+
export const MAT_DAYJS_DATE_FORMATS = {
|
|
5
|
+
parse: {
|
|
6
|
+
dateInput: 'MM/DD/YYYY',
|
|
7
|
+
},
|
|
8
|
+
display: {
|
|
9
|
+
dateInput: 'MM/DD/YYYY',
|
|
10
|
+
monthYearLabel: 'MMM YYYY',
|
|
11
|
+
dateA11yLabel: 'LL',
|
|
12
|
+
monthYearA11yLabel: 'MMMM YYYY',
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5anMtZGF0ZS5mb3JtYXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL3V0aWxzL21hdC1kYXlqcy1kYXRlL2RheWpzLWRhdGUuZm9ybWF0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFtQjtJQUNwRCxLQUFLLEVBQUU7UUFDTCxTQUFTLEVBQUUsWUFBWTtLQUN4QjtJQUNELE9BQU8sRUFBRTtRQUNQLFNBQVMsRUFBRSxZQUFZO1FBQ3ZCLGNBQWMsRUFBRSxVQUFVO1FBQzFCLGFBQWEsRUFBRSxJQUFJO1FBQ25CLGtCQUFrQixFQUFFLFdBQVc7S0FDaEM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0RGF0ZUZvcm1hdHMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuLyoqXG4gKiBDdXN0b20gRGF0ZS1Gb3JtYXRzIGFuZCBBZGFwdGVyICh1c2luZyBodHRwczovL2dpdGh1Yi5jb20vaWFta3VuL2RheWpzKVxuICovXG5leHBvcnQgY29uc3QgTUFUX0RBWUpTX0RBVEVfRk9STUFUUzogTWF0RGF0ZUZvcm1hdHMgPSB7XG4gIHBhcnNlOiB7XG4gICAgZGF0ZUlucHV0OiAnTU0vREQvWVlZWScsXG4gIH0sXG4gIGRpc3BsYXk6IHtcbiAgICBkYXRlSW5wdXQ6ICdNTS9ERC9ZWVlZJyxcbiAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcbiAgICBkYXRlQTExeUxhYmVsOiAnTEwnLFxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXG4gIH1cbn07Il19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
3
|
+
import { DayjsDateAdapter, MAT_DAYJS_DATE_ADAPTER_OPTIONS } from './dayjs-date.adapter';
|
|
4
|
+
import { MAT_DAYJS_DATE_FORMATS } from './dayjs-date.formats';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class DayjsDateModule {
|
|
7
|
+
}
|
|
8
|
+
DayjsDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DayjsDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
DayjsDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: DayjsDateModule });
|
|
10
|
+
DayjsDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DayjsDateModule, providers: [
|
|
11
|
+
{
|
|
12
|
+
provide: DateAdapter,
|
|
13
|
+
useClass: DayjsDateAdapter,
|
|
14
|
+
deps: [MAT_DATE_LOCALE, MAT_DAYJS_DATE_ADAPTER_OPTIONS]
|
|
15
|
+
},
|
|
16
|
+
] });
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: DayjsDateModule, decorators: [{
|
|
18
|
+
type: NgModule,
|
|
19
|
+
args: [{
|
|
20
|
+
providers: [
|
|
21
|
+
{
|
|
22
|
+
provide: DateAdapter,
|
|
23
|
+
useClass: DayjsDateAdapter,
|
|
24
|
+
deps: [MAT_DATE_LOCALE, MAT_DAYJS_DATE_ADAPTER_OPTIONS]
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
}]
|
|
28
|
+
}] });
|
|
29
|
+
export class MatDayjsDateModule {
|
|
30
|
+
}
|
|
31
|
+
MatDayjsDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: MatDayjsDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
32
|
+
MatDayjsDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.9", ngImport: i0, type: MatDayjsDateModule, imports: [DayjsDateModule] });
|
|
33
|
+
MatDayjsDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: MatDayjsDateModule, providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }], imports: [DayjsDateModule] });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: MatDayjsDateModule, decorators: [{
|
|
35
|
+
type: NgModule,
|
|
36
|
+
args: [{
|
|
37
|
+
imports: [DayjsDateModule],
|
|
38
|
+
providers: [{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS }],
|
|
39
|
+
}]
|
|
40
|
+
}] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5anMtZGF0ZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvbWF0LWRheWpzLWRhdGUvZGF5anMtZGF0ZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVc5RCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlOzZHQUFmLGVBQWUsYUFSZjtRQUNUO1lBQ0UsT0FBTyxFQUFFLFdBQVc7WUFDcEIsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLEVBQUUsOEJBQThCLENBQUM7U0FDeEQ7S0FDRjsyRkFFVSxlQUFlO2tCQVQzQixRQUFRO21CQUFDO29CQUNSLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsUUFBUSxFQUFFLGdCQUFnQjs0QkFDMUIsSUFBSSxFQUFFLENBQUMsZUFBZSxFQUFFLDhCQUE4QixDQUFDO3lCQUN4RDtxQkFDRjtpQkFDRjs7QUFPRCxNQUFNLE9BQU8sa0JBQWtCOzsrR0FBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0IsWUFObEIsZUFBZTtnSEFNZixrQkFBa0IsYUFGbEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxZQURsRSxlQUFlOzJGQUdkLGtCQUFrQjtrQkFKOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7b0JBQzFCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO2lCQUM3RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfRk9STUFUUywgTUFUX0RBVEVfTE9DQUxFIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBEYXlqc0RhdGVBZGFwdGVyLCBNQVRfREFZSlNfREFURV9BREFQVEVSX09QVElPTlMgfSBmcm9tICcuL2RheWpzLWRhdGUuYWRhcHRlcic7XG5pbXBvcnQgeyBNQVRfREFZSlNfREFURV9GT1JNQVRTIH0gZnJvbSAnLi9kYXlqcy1kYXRlLmZvcm1hdHMnO1xuXG5ATmdNb2R1bGUoe1xuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBEYXRlQWRhcHRlcixcbiAgICAgIHVzZUNsYXNzOiBEYXlqc0RhdGVBZGFwdGVyLFxuICAgICAgZGVwczogW01BVF9EQVRFX0xPQ0FMRSwgTUFUX0RBWUpTX0RBVEVfQURBUFRFUl9PUFRJT05TXVxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERheWpzRGF0ZU1vZHVsZSB7IH1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0RheWpzRGF0ZU1vZHVsZV0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IE1BVF9EQVlKU19EQVRFX0ZPUk1BVFMgfV0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdERheWpzRGF0ZU1vZHVsZSB7IH0iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import 'dayjs/locale/ja';
|
|
4
|
+
dayjs.locale('ja');
|
|
5
|
+
export const MAT_DAYJS_DATE_FORMATS_FOR_JP = {
|
|
6
|
+
parse: {
|
|
7
|
+
dateInput: 'YYYY/MM/DD',
|
|
8
|
+
},
|
|
9
|
+
display: {
|
|
10
|
+
dateInput: 'YYYY/MM/DD',
|
|
11
|
+
monthYearLabel: 'MMM YYYY',
|
|
12
|
+
dateA11yLabel: 'LL',
|
|
13
|
+
monthYearA11yLabel: 'MMMM YYYY',
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
export const MAT_DAYJS_JP_PROVIDERS = [
|
|
17
|
+
{ provide: MAT_DATE_LOCALE, useValue: 'ja' },
|
|
18
|
+
{ provide: MAT_DATE_FORMATS, useValue: MAT_DAYJS_DATE_FORMATS_FOR_JP },
|
|
19
|
+
];
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF5anMtanAtcHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL3V0aWxzL21hdC1kYXlqcy1kYXRlL2RheWpzLWpwLXByb3ZpZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNGLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLGlCQUFpQixDQUFBO0FBQ3hCLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFFbkIsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQW1CO0lBQzNELEtBQUssRUFBRTtRQUNMLFNBQVMsRUFBRSxZQUFZO0tBQ3hCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUyxFQUFFLFlBQVk7UUFDdkIsY0FBYyxFQUFFLFVBQVU7UUFDMUIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsV0FBVztLQUNoQztDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRztJQUNwQyxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtJQUM1QyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsNkJBQTZCLEVBQUU7Q0FDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdERhdGVGb3JtYXRzLCBNQVRfREFURV9GT1JNQVRTLCBNQVRfREFURV9MT0NBTEUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgJ2RheWpzL2xvY2FsZS9qYSdcbmRheWpzLmxvY2FsZSgnamEnKTtcblxuZXhwb3J0IGNvbnN0IE1BVF9EQVlKU19EQVRFX0ZPUk1BVFNfRk9SX0pQOiBNYXREYXRlRm9ybWF0cyA9IHtcbiAgcGFyc2U6IHtcbiAgICBkYXRlSW5wdXQ6ICdZWVlZL01NL0REJyxcbiAgfSxcbiAgZGlzcGxheToge1xuICAgIGRhdGVJbnB1dDogJ1lZWVkvTU0vREQnLFxuICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxuICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IE1BVF9EQVlKU19KUF9QUk9WSURFUlMgPSBbXG4gIHsgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLCB1c2VWYWx1ZTogJ2phJyB9LFxuICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBNQVRfREFZSlNfREFURV9GT1JNQVRTX0ZPUl9KUCB9LFxuXTtcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './dayjs-date.adapter';
|
|
2
|
+
export * from './dayjs-date.formats';
|
|
3
|
+
export * from './dayjs-jp-providers';
|
|
4
|
+
export * from './dayjs-date.module';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvbWF0LWRheWpzLWRhdGUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGF5anMtZGF0ZS5hZGFwdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vZGF5anMtZGF0ZS5mb3JtYXRzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF5anMtanAtcHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vZGF5anMtZGF0ZS5tb2R1bGUnOyJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbW1vbi11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy91dGlscy9uZy1hdG9taWMtY29tbW9uLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './page';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvcGFnZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcGFnZSc7XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbW1vbi11dGlscy1wYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL3V0aWxzL3BhZ2UvbmctYXRvbWljLWNvbW1vbi11dGlscy1wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export class Page {
|
|
2
|
+
static from(event = {}) {
|
|
3
|
+
return Object.assign(new Page(), {
|
|
4
|
+
pageSize: 50,
|
|
5
|
+
pageIndex: 0,
|
|
6
|
+
length: 100,
|
|
7
|
+
...event
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
get start() {
|
|
11
|
+
return this.pageIndex * this.pageSize;
|
|
12
|
+
}
|
|
13
|
+
get end() {
|
|
14
|
+
return Math.min((this.pageIndex + 1) * this.pageSize, this.length);
|
|
15
|
+
}
|
|
16
|
+
patch(obj) {
|
|
17
|
+
return Page.from({ ...this, ...obj });
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy91dGlscy9wYWdlL3BhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxPQUFPLElBQUk7SUFDZixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQXVCLEVBQUU7UUFDbkMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDL0IsUUFBUSxFQUFFLEVBQUU7WUFDWixTQUFTLEVBQUUsQ0FBQztZQUNaLE1BQU0sRUFBRSxHQUFHO1lBQ1gsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBa0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhZ2VFdmVudCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZSBleHRlbmRzIFBhZ2VFdmVudCB7XG4gIHNvcnRLZXk6IHN0cmluZztcbiAgc29ydE9yZGVyOiAnYXNjJyB8ICdkZXNjJztcbn1cblxuZXhwb3J0IGNsYXNzIFBhZ2Uge1xuICBzdGF0aWMgZnJvbShldmVudDogUGFydGlhbDxQYWdlPiA9IHt9KTogUGFnZSB7XG4gICAgcmV0dXJuIE9iamVjdC5hc3NpZ24obmV3IFBhZ2UoKSwge1xuICAgICAgcGFnZVNpemU6IDUwLFxuICAgICAgcGFnZUluZGV4OiAwLFxuICAgICAgbGVuZ3RoOiAxMDAsXG4gICAgICAuLi5ldmVudFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHN0YXJ0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGFnZUluZGV4ICogdGhpcy5wYWdlU2l6ZTtcbiAgfVxuXG4gIGdldCBlbmQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5taW4oKHRoaXMucGFnZUluZGV4ICsgMSkgKiB0aGlzLnBhZ2VTaXplLCB0aGlzLmxlbmd0aCk7XG4gIH1cblxuICBwYXRjaChvYmo6IFBhcnRpYWw8UGFnZT4pOiBQYWdlIHtcbiAgICByZXR1cm4gUGFnZS5mcm9tKHsuLi50aGlzLCAuLi5vYmp9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './query.resolver';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvcXVlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcXVlcnkucmVzb2x2ZXInO1xuIl19
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { flatten } from 'flat';
|
|
2
|
+
import { smartExpTransformer } from '../smart-exp-transformer';
|
|
3
|
+
import { toObject } from '../to-object';
|
|
4
|
+
import dayjs from 'dayjs';
|
|
5
|
+
export const filterByQuery = (items, queryString, dlm = {}, transformer = smartExpTransformer) => {
|
|
6
|
+
return new QueryResolver(dlm, transformer).resolve(items, queryString);
|
|
7
|
+
};
|
|
8
|
+
class QueryResolver {
|
|
9
|
+
constructor(map, transformer) {
|
|
10
|
+
this.transformer = transformer;
|
|
11
|
+
this.inQueryByKey = (items, query) => {
|
|
12
|
+
const [not, _key, value] = this.parseQuery(query);
|
|
13
|
+
const key = this.REVERSED_MAP?.[_key] ?? _key;
|
|
14
|
+
return items.filter(item => _not(this.in(key, flatten(toObject(item))?.[key], value), not));
|
|
15
|
+
};
|
|
16
|
+
this.gtQueryByKey = (items, query) => {
|
|
17
|
+
const [_key, value] = query.split('>');
|
|
18
|
+
const key = this.REVERSED_MAP?.[_key] ?? _key;
|
|
19
|
+
return items.filter(item => {
|
|
20
|
+
// TODO(nontangent): flattenしたときにdayjsが壊れる
|
|
21
|
+
const v = flatten(toObject(item))?.[key] ?? toObject(item)?.[key];
|
|
22
|
+
return this.gt(key, v, value);
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
this.ltQueryByKey = (items, query) => {
|
|
26
|
+
const [_key, value] = query.split('<');
|
|
27
|
+
const key = this.REVERSED_MAP?.[_key] ?? _key;
|
|
28
|
+
return items.filter(item => {
|
|
29
|
+
// TODO(nontangent): flattenしたときにdayjsが壊れる
|
|
30
|
+
const v = flatten(toObject(item))?.[key] ?? toObject(item)?.[key];
|
|
31
|
+
return this.lt(key, v, value);
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
this.inQuery = (items, q) => {
|
|
35
|
+
return items.filter(item => Object.entries(flatten(toObject(item))).some(([k, v]) => this.in(k, v, q)));
|
|
36
|
+
};
|
|
37
|
+
this.REVERSED_MAP = Object.entries(map).reduce((p, [k, v]) => ({
|
|
38
|
+
...p, [v]: k
|
|
39
|
+
}), {});
|
|
40
|
+
}
|
|
41
|
+
resolve(items, queryString) {
|
|
42
|
+
return this.resolveQueries(items, queryString.split(' ').filter(q => q.length));
|
|
43
|
+
}
|
|
44
|
+
resolveQueries(items, queries) {
|
|
45
|
+
return queries.reduce((_items, query) => {
|
|
46
|
+
if (query.includes(':'))
|
|
47
|
+
return this.inQueryByKey(_items, query);
|
|
48
|
+
if (query.includes('='))
|
|
49
|
+
return this.inQueryByKey(_items, query);
|
|
50
|
+
if (query.includes('>'))
|
|
51
|
+
return this.gtQueryByKey(_items, query);
|
|
52
|
+
if (query.includes('<'))
|
|
53
|
+
return this.ltQueryByKey(_items, query);
|
|
54
|
+
return this.inQuery(_items, query);
|
|
55
|
+
}, items);
|
|
56
|
+
}
|
|
57
|
+
parseQuery(query) {
|
|
58
|
+
const [_key, value] = query.split(':');
|
|
59
|
+
return [_key.startsWith('-'), _key.startsWith('-') ? _key.slice(1) : _key, value];
|
|
60
|
+
}
|
|
61
|
+
in(k, v, q) {
|
|
62
|
+
return _in(this.transformer(v, k), q);
|
|
63
|
+
}
|
|
64
|
+
gt(k, v, q) {
|
|
65
|
+
// const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);
|
|
66
|
+
return _gt(v, q);
|
|
67
|
+
}
|
|
68
|
+
lt(k, v, q) {
|
|
69
|
+
// const value = dayjs.isDayjs(v) ? v : this.transformer(v, k);
|
|
70
|
+
return _lt(v, q);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
const _not = (bool, not) => {
|
|
74
|
+
return not ? !bool : bool;
|
|
75
|
+
};
|
|
76
|
+
const _in = (value, query) => {
|
|
77
|
+
return typeof value === 'string' ? value?.includes(query) : false;
|
|
78
|
+
};
|
|
79
|
+
const _gt = (value, query) => {
|
|
80
|
+
return typeof value === 'string'
|
|
81
|
+
? parseFloat(value) > parseFloat(query)
|
|
82
|
+
: typeof value === 'number'
|
|
83
|
+
? value > parseFloat(query)
|
|
84
|
+
: dayjs.isDayjs(value)
|
|
85
|
+
? dayjs(query).isBefore(value)
|
|
86
|
+
: false;
|
|
87
|
+
};
|
|
88
|
+
const _lt = (value, query) => {
|
|
89
|
+
return typeof value === 'string'
|
|
90
|
+
? parseFloat(value) < parseFloat(query)
|
|
91
|
+
: typeof value === 'number'
|
|
92
|
+
? value < parseFloat(query)
|
|
93
|
+
: dayjs.isDayjs(value)
|
|
94
|
+
? dayjs(query).isAfter(value)
|
|
95
|
+
: false;
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkucmVzb2x2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvcXVlcnkvcXVlcnkucmVzb2x2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsbUJBQW1CLEVBQXVCLE1BQU0sMEJBQTBCLENBQUM7QUFDcEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLENBQzNCLEtBQVUsRUFDVixXQUFtQixFQUNuQixNQUE4QixFQUFFLEVBQ2hDLGNBQW1DLG1CQUFtQixFQUNqRCxFQUFFO0lBQ1AsT0FBTyxJQUFJLGFBQWEsQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztBQUN6RSxDQUFDLENBQUE7QUFJRCxNQUFNLGFBQWE7SUFHakIsWUFDRSxHQUEyQixFQUNuQixXQUFnQztRQUFoQyxnQkFBVyxHQUFYLFdBQVcsQ0FBcUI7UUEwQmxDLGlCQUFZLEdBQXdCLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQzNELE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQztZQUM5QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVB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LENBQUMsS0FBSyxDQUFDO2dCQUM5QixDQUFDLENBQUMsS0FBSyxDQUFDO0FBQ1osQ0FBQyxDQUFBO0FBRUQsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFVLEVBQUUsS0FBYSxFQUFXLEVBQUU7SUFDakQsT0FBTyxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQzlCLENBQUMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztRQUN2QyxDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUTtZQUMzQixDQUFDLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFDM0IsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN0QixDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxLQUFLLENBQUM7QUFDWixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmbGF0dGVuIH0gZnJvbSAnZmxhdCc7XG5pbXBvcnQgeyBzbWFydEV4cFRyYW5zZm9ybWVyLCBTbWFydEV4cFRyYW5zZm9ybWVyIH0gZnJvbSAnLi4vc21hcnQtZXhwLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IHRvT2JqZWN0IH0gZnJvbSAnLi4vdG8tb2JqZWN0JztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJCeVF1ZXJ5ID0gPFQ+KFxuICBpdGVtczogVFtdLCBcbiAgcXVlcnlTdHJpbmc6IHN0cmluZywgXG4gIGRsbTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9LFxuICB0cmFuc2Zvcm1lcjogU21hcnRFeHBUcmFuc2Zvcm1lciA9IHNtYXJ0RXhwVHJhbnNmb3JtZXIsXG4pOiBUW10gPT4ge1xuICByZXR1cm4gbmV3IFF1ZXJ5UmVzb2x2ZXIoZGxtLCB0cmFuc2Zvcm1lcikucmVzb2x2ZShpdGVtcywgcXVlcnlTdHJpbmcpO1xufVxuXG50eXBlIFF1ZXJ5UmVzb2x2ZUZ1bmM8VD4gPSAoaXRlbXM6IFRbXSwgcXVlcnk6IHN0cmluZykgPT4gVFtdO1xuXG5jbGFzcyBRdWVyeVJlc29sdmVyPFQgZXh0ZW5kcyBvYmplY3QgPSBhbnk+IHtcbiAgUkVWRVJTRURfTUFQOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgICBwcml2YXRlIHRyYW5zZm9ybWVyOiBTbWFydEV4cFRyYW5zZm9ybWVyLFxuICApIHtcbiAgICB0aGlzLlJFVkVSU0VEX01BUCA9IE9iamVjdC5lbnRyaWVzKG1hcCkucmVkdWNlKChwLCBbaywgdl0pID0+ICh7XG4gICAgICAuLi5wLCBbdl06IGtcbiAgICB9KSwge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPik7XG4gIH1cblxuICByZXNvbHZlKGl0ZW1zOiBUW10sIHF1ZXJ5U3RyaW5nOiBzdHJpbmcpOiBUW10ge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVRdWVyaWVzKGl0ZW1zLCBxdWVyeVN0cmluZy5zcGxpdCgnICcpLmZpbHRlcihxID0+IHEubGVuZ3RoKSk7XG4gIH1cblxuICByZXNvbHZlUXVlcmllcyhpdGVtczogVFtdLCBxdWVyaWVzOiBzdHJpbmdbXSk6IFRbXSB7XG4gICAgcmV0dXJuIHF1ZXJpZXMucmVkdWNlKChfaXRlbXMsIHF1ZXJ5OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmIChxdWVyeS5pbmNsdWRlcygnOicpKSByZXR1cm4gdGhpcy5pblF1ZXJ5QnlLZXkoX2l0ZW1zLCBxdWVyeSk7XG4gICAgICBpZiAocXVlcnkuaW5jbHVkZXMoJz0nKSkgcmV0dXJuIHRoaXMuaW5RdWVyeUJ5S2V5KF9pdGVtcywgcXVlcnkpO1xuICAgICAgaWYgKHF1ZXJ5LmluY2x1ZGVzKCc+JykpIHJldHVybiB0aGlzLmd0UXVlcnlCeUtleShfaXRlbXMsIHF1ZXJ5KTtcbiAgICAgIGlmIChxdWVyeS5pbmNsdWRlcygnPCcpKSByZXR1cm4gdGhpcy5sdFF1ZXJ5QnlLZXkoX2l0ZW1zLCBxdWVyeSk7XG4gICAgICByZXR1cm4gdGhpcy5pblF1ZXJ5KF9pdGVtcywgcXVlcnkpO1xuICAgIH0sIGl0ZW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VRdWVyeShxdWVyeTogc3RyaW5nKTogW2Jvb2xlYW4sIHN0cmluZywgc3RyaW5nXSB7XG4gICAgY29uc3QgW19rZXksIHZhbHVlXSA9IHF1ZXJ5LnNwbGl0KCc6Jyk7XG4gICAgcmV0dXJuIFtfa2V5LnN0YXJ0c1dpdGgoJy0nKSwgX2tleS5zdGFydHNXaXRoKCctJykgPyBfa2V5LnNsaWNlKDEpIDogX2tleSwgdmFsdWVdO1xuICB9XG5cbiAgcHJpdmF0ZSBpblF1ZXJ5QnlLZXk6IFF1ZXJ5UmVzb2x2ZUZ1bmM8VD4gPSAoaXRlbXMsIHF1ZXJ5KSA9PiB7XG4gICAgY29uc3QgW25vdCwgX2tleSwgdmFsdWVdID0gdGhpcy5wYXJzZVF1ZXJ5KHF1ZXJ5KTtcbiAgICBjb25zdCBrZXkgPSB0aGlzLlJFVkVSU0VEX01BUD8uW19rZXldID8/IF9rZXk7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+IF9ub3QodGhpcy5pbihrZXksIGZsYXR0ZW4odG9PYmplY3QoaXRlbSBhcyBhbnkpKT8uW2tleV0sIHZhbHVlKSwgbm90KSk7XG4gIH1cblxuICBwcml2YXRlIGd0UXVlcnlCeUtleTogUXVlcnlSZXNvbHZlRnVuYzxUPiA9IChpdGVtcywgcXVlcnkpID0+IHtcbiAgICBjb25zdCBbX2tleSwgdmFsdWVdID0gcXVlcnkuc3BsaXQoJz4nKTtcbiAgICBjb25zdCBrZXkgPSB0aGlzLlJFVkVSU0VEX01BUD8uW19rZXldID8/IF9rZXk7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+IHtcbiAgICAgIC8vIFRPRE8obm9udGFuZ2VudCk6IGZsYXR0ZW7jgZfjgZ/jgajjgY3jgatkYXlqc+OBjOWjiuOCjOOCi1xuICAgICAgY29uc3QgdiA9IGZsYXR0ZW4odG9PYmplY3QoaXRlbSBhcyBhbnkpKT8uW2tleV0gPz8gdG9PYmplY3QoaXRlbSBhcyBhbnkpPy5ba2V5XTtcbiAgICAgIHJldHVybiB0aGlzLmd0KGtleSwgdiwgdmFsdWUpXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGx0UXVlcnlCeUtleTogUXVlcnlSZXNvbHZlRnVuYzxUPiA9IChpdGVtcywgcXVlcnkpID0+IHtcbiAgICBjb25zdCBbX2tleSwgdmFsdWVdID0gcXVlcnkuc3BsaXQoJzwnKTtcbiAgICBjb25zdCBrZXkgPSB0aGlzLlJFVkVSU0VEX01BUD8uW19rZXldID8/IF9rZXk7XG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+IHtcbiAgICAgIC8vIFRPRE8obm9udGFuZ2VudCk6IGZsYXR0ZW7jgZfjgZ/jgajjgY3jgatkYXlqc+OBjOWjiuOCjOOCi1xuICAgICAgY29uc3QgdiA9IGZsYXR0ZW4odG9PYmplY3QoaXRlbSBhcyBhbnkpKT8uW2tleV0gPz8gdG9PYmplY3QoaXRlbSBhcyBhbnkpPy5ba2V5XTtcbiAgICAgIHJldHVybiB0aGlzLmx0KGtleSwgdiwgdmFsdWUpXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGluUXVlcnk6IFF1ZXJ5UmVzb2x2ZUZ1bmM8VD4gPSAoaXRlbXMsIHEpID0+IHtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gT2JqZWN0LmVudHJpZXMoZmxhdHRlbih0b09iamVjdChpdGVtIGFzIFQpKSkuc29tZSgoW2ssIHZdKSA9PiB0aGlzLmluKGssIHYsIHEpKSk7XG4gIH1cblxuICBwcml2YXRlIGluKGs6IHN0cmluZywgdjogYW55LCBxOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gX2luKHRoaXMudHJhbnNmb3JtZXIodiwgayksIHEpO1xuICB9XG5cbiAgcHJpdmF0ZSBndChrOiBzdHJpbmcsIHY6IGFueSwgcTogc3RyaW5nKSB7XG4gICAgLy8gY29uc3QgdmFsdWUgPSBkYXlqcy5pc0RheWpzKHYpID8gdiA6IHRoaXMudHJhbnNmb3JtZXIodiwgayk7XG4gICAgcmV0dXJuIF9ndCh2LCBxKTtcbiAgfVxuXG4gIHByaXZhdGUgbHQoazogc3RyaW5nLCB2OiBhbnksIHE6IHN0cmluZykge1xuICAgIC8vIGNvbnN0IHZhbHVlID0gZGF5anMuaXNEYXlqcyh2KSA/IHYgOiB0aGlzLnRyYW5zZm9ybWVyKHYsIGspO1xuICAgIHJldHVybiBfbHQodiwgcSk7XG4gIH1cbn1cblxuY29uc3QgX25vdCA9IChib29sOiBib29sZWFuLCBub3Q6IGJvb2xlYW4pOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIG5vdCA/ICFib29sIDogYm9vbDtcbn1cblxuY29uc3QgX2luID0gKHZhbHVlOiBhbnksIHF1ZXJ5OiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZT8uaW5jbHVkZXMocXVlcnkpIDogZmFsc2U7XG59XG5cbmNvbnN0IF9ndCA9ICh2YWx1ZTogYW55LCBxdWVyeTogc3RyaW5nKTogYm9vbGVhbiA9PiB7XG4gIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnIFxuICAgID8gcGFyc2VGbG9hdCh2YWx1ZSkgPiBwYXJzZUZsb2F0KHF1ZXJ5KSBcbiAgICA6IHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcidcbiAgICA/IHZhbHVlID4gcGFyc2VGbG9hdChxdWVyeSlcbiAgICA6IGRheWpzLmlzRGF5anModmFsdWUpXG4gICAgPyBkYXlqcyhxdWVyeSkuaXNCZWZvcmUodmFsdWUpXG4gICAgOiBmYWxzZTtcbn1cblxuY29uc3QgX2x0ID0gKHZhbHVlOiBhbnksIHF1ZXJ5OiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgXG4gICAgPyBwYXJzZUZsb2F0KHZhbHVlKSA8IHBhcnNlRmxvYXQocXVlcnkpIFxuICAgIDogdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJ1xuICAgID8gdmFsdWUgPCBwYXJzZUZsb2F0KHF1ZXJ5KVxuICAgIDogZGF5anMuaXNEYXlqcyh2YWx1ZSlcbiAgICA/IGRheWpzKHF1ZXJ5KS5pc0FmdGVyKHZhbHVlKVxuICAgIDogZmFsc2U7XG59Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './smart-exp-transformer';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvc21hcnQtZXhwLXRyYW5zZm9ybWVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NtYXJ0LWV4cC10cmFuc2Zvcm1lcic7Il19
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { comma } from '../comma';
|
|
4
|
+
export const SMART_EXP_TRANSFORMER = new InjectionToken('[@ng-atomic/common] Smart Transformer');
|
|
5
|
+
// export const yenTransform = (value: number, _unit?: string): string => {
|
|
6
|
+
// return value < 1 ? `${comma(value * 100)}%` : `${comma(value)}円`;
|
|
7
|
+
// }
|
|
8
|
+
export const yenTransform = (value, _unit) => {
|
|
9
|
+
return `${comma(value)}円`;
|
|
10
|
+
};
|
|
11
|
+
export const smartExpTransformer = input => dayjs.isDayjs(input)
|
|
12
|
+
? input.format('YY/MM/DD')
|
|
13
|
+
: Array.isArray(input)
|
|
14
|
+
? `${input.length}個のアイテム`
|
|
15
|
+
: typeof input === 'number'
|
|
16
|
+
? yenTransform(input)
|
|
17
|
+
: input;
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZXhwLXRyYW5zZm9ybWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL3V0aWxzL3NtYXJ0LWV4cC10cmFuc2Zvcm1lci9zbWFydC1leHAtdHJhbnNmb3JtZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVqQyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLGNBQWMsQ0FBc0IsdUNBQXVDLENBQUMsQ0FBQztBQUl0SCwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLElBQUk7QUFFSixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFhLEVBQUUsS0FBYyxFQUFVLEVBQUU7SUFDcEUsT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0FBQzVCLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF3QixLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ25GLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUMxQixDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDdEIsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLE1BQU0sUUFBUTtRQUN6QixDQUFDLENBQUMsT0FBTyxLQUFLLEtBQUssUUFBUTtZQUMzQixDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztZQUNyQixDQUFDLENBQUMsS0FBSyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBkYXlqcyBmcm9tICdkYXlqcyc7XG5pbXBvcnQgeyBjb21tYSB9IGZyb20gJy4uL2NvbW1hJztcblxuZXhwb3J0IGNvbnN0IFNNQVJUX0VYUF9UUkFOU0ZPUk1FUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTbWFydEV4cFRyYW5zZm9ybWVyPignW0BuZy1hdG9taWMvY29tbW9uXSBTbWFydCBUcmFuc2Zvcm1lcicpO1xuXG5leHBvcnQgdHlwZSBTbWFydEV4cFRyYW5zZm9ybWVyID0gKGlucHV0OiBzdHJpbmcgfCBudW1iZXIgfCBkYXlqcy5EYXlqcyB8IGFueSwga2V5Pzogc3RyaW5nKSA9PiBzdHJpbmc7XG5cbi8vIGV4cG9ydCBjb25zdCB5ZW5UcmFuc2Zvcm0gPSAodmFsdWU6IG51bWJlciwgX3VuaXQ/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuLy8gICByZXR1cm4gdmFsdWUgPCAxID8gYCR7Y29tbWEodmFsdWUgKiAxMDApfSVgIDogYCR7Y29tbWEodmFsdWUpfeWGhmA7XG4vLyB9XG5cbmV4cG9ydCBjb25zdCB5ZW5UcmFuc2Zvcm0gPSAodmFsdWU6IG51bWJlciwgX3VuaXQ/OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gYCR7Y29tbWEodmFsdWUpfeWGhmA7XG59XG5cbmV4cG9ydCBjb25zdCBzbWFydEV4cFRyYW5zZm9ybWVyOiBTbWFydEV4cFRyYW5zZm9ybWVyID0gaW5wdXQgPT4gZGF5anMuaXNEYXlqcyhpbnB1dClcbiAgPyBpbnB1dC5mb3JtYXQoJ1lZL01NL0REJylcbiAgOiBBcnJheS5pc0FycmF5KGlucHV0KSBcbiAgPyBgJHtpbnB1dC5sZW5ndGh95YCL44Gu44Ki44Kk44OG44OgYFxuICA6IHR5cGVvZiBpbnB1dCA9PT0gJ251bWJlcidcbiAgPyB5ZW5UcmFuc2Zvcm0oaW5wdXQpXG4gIDogaW5wdXQ7Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './to-object';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvdXRpbHMvdG8tb2JqZWN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90by1vYmplY3QnOyJdfQ==
|