@acorex/core 7.17.26 → 7.17.27
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/dateTime/index.d.ts +2 -0
- package/dateTime/lib/calendar.service.d.ts +6 -1
- package/dateTime/lib/datetime.class.d.ts +6 -5
- package/dateTime/lib/datetime.module.d.ts +0 -2
- package/dateTime/lib/datetime.pipe.d.ts +3 -0
- package/dateTime/lib/formatters/datetime-formatter.d.ts +19 -0
- package/dateTime/lib/formatters/timeleft-formatter.d.ts +16 -0
- package/esm2022/dateTime/index.mjs +3 -1
- package/esm2022/dateTime/lib/calendar.service.mjs +17 -9
- package/esm2022/dateTime/lib/dateTime.config.mjs +5 -28
- package/esm2022/dateTime/lib/datetime.class.mjs +66 -14
- package/esm2022/dateTime/lib/datetime.module.mjs +9 -11
- package/esm2022/dateTime/lib/datetime.pipe.mjs +5 -7
- package/esm2022/dateTime/lib/formatters/datetime-formatter.mjs +30 -0
- package/esm2022/dateTime/lib/formatters/timeleft-formatter.mjs +91 -0
- package/esm2022/file/lib/file-size-formatter.mjs +2 -2
- package/esm2022/file/lib/file.module.mjs +8 -10
- package/esm2022/format/index.mjs +3 -2
- package/esm2022/format/lib/format.config.mjs +3 -2
- package/esm2022/format/lib/format.module.mjs +22 -9
- package/esm2022/format/lib/format.pipe.mjs +5 -6
- package/esm2022/format/lib/format.service.mjs +57 -12
- package/esm2022/format/lib/format.types.mjs +2 -0
- package/esm2022/format/lib/formatters/number-formatter.mjs +75 -0
- package/esm2022/translation/index.mjs +7 -2
- package/esm2022/translation/lib/translation-scope.resolver.mjs +11 -0
- package/esm2022/translation/lib/translation.config.mjs +20 -0
- package/esm2022/translation/lib/translation.loader.mjs +14 -0
- package/esm2022/translation/lib/translation.module.mjs +29 -7
- package/esm2022/translation/lib/translation.service.mjs +105 -0
- package/esm2022/translation/lib/translation.types.mjs +2 -0
- package/esm2022/translation/lib/translator.directive.mjs +28 -0
- package/esm2022/translation/lib/translator.pipe.mjs +33 -7
- package/esm2022/validation/index.mjs +2 -2
- package/esm2022/validation/lib/rules/between-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/callback-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/equal-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/greater-than.mjs +8 -1
- package/esm2022/validation/lib/rules/length-rule.mjs +9 -1
- package/esm2022/validation/lib/rules/less-than-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/maxlength-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/minlength-rule.mjs +8 -1
- package/esm2022/validation/lib/rules/regex-rule.mjs +13 -2
- package/esm2022/validation/lib/rules/required-rule.mjs +13 -3
- package/esm2022/validation/lib/validation.config.mjs +3 -4
- package/esm2022/validation/lib/validation.module.mjs +38 -12
- package/esm2022/validation/lib/validation.service.mjs +30 -16
- package/esm2022/validation/lib/validation.types.mjs +3 -0
- package/fesm2022/acorex-core-dateTime.mjs +110 -68
- package/fesm2022/acorex-core-dateTime.mjs.map +1 -1
- package/fesm2022/acorex-core-file.mjs +8 -9
- package/fesm2022/acorex-core-file.mjs.map +1 -1
- package/fesm2022/acorex-core-format.mjs +147 -55
- package/fesm2022/acorex-core-format.mjs.map +1 -1
- package/fesm2022/acorex-core-translation.mjs +212 -45
- package/fesm2022/acorex-core-translation.mjs.map +1 -1
- package/fesm2022/acorex-core-validation.mjs +131 -32
- package/fesm2022/acorex-core-validation.mjs.map +1 -1
- package/file/lib/file-size-formatter.d.ts +10 -2
- package/file/lib/file.module.d.ts +2 -3
- package/format/index.d.ts +2 -1
- package/format/lib/format.config.d.ts +4 -3
- package/format/lib/format.module.d.ts +9 -3
- package/format/lib/format.pipe.d.ts +2 -1
- package/format/lib/format.service.d.ts +26 -2
- package/format/lib/format.types.d.ts +4 -0
- package/format/lib/formatters/number-formatter.d.ts +23 -0
- package/package.json +1 -7
- package/translation/index.d.ts +6 -1
- package/translation/lib/translation-scope.resolver.d.ts +2 -0
- package/translation/lib/translation.config.d.ts +14 -0
- package/translation/lib/translation.loader.d.ts +14 -0
- package/translation/lib/translation.module.d.ts +2 -1
- package/translation/lib/translation.service.d.ts +26 -0
- package/translation/lib/translation.types.d.ts +10 -0
- package/translation/lib/translator.directive.d.ts +12 -0
- package/translation/lib/translator.pipe.d.ts +12 -4
- package/validation/index.d.ts +1 -1
- package/validation/lib/rules/between-rule.d.ts +5 -2
- package/validation/lib/rules/callback-rule.d.ts +5 -2
- package/validation/lib/rules/equal-rule.d.ts +5 -2
- package/validation/lib/rules/greater-than.d.ts +5 -2
- package/validation/lib/rules/length-rule.d.ts +5 -2
- package/validation/lib/rules/less-than-rule.d.ts +5 -2
- package/validation/lib/rules/maxlength-rule.d.ts +5 -2
- package/validation/lib/rules/minlength-rule.d.ts +5 -2
- package/validation/lib/rules/regex-rule.d.ts +6 -2
- package/validation/lib/rules/required-rule.d.ts +6 -2
- package/validation/lib/validation.config.d.ts +3 -3
- package/validation/lib/validation.module.d.ts +10 -4
- package/validation/lib/validation.service.d.ts +8 -3
- package/validation/lib/{validation.d.ts → validation.types.d.ts} +3 -3
- package/dateTime/lib/datetime-formatter.d.ts +0 -15
- package/esm2022/dateTime/lib/datetime-formatter.mjs +0 -109
- package/esm2022/format/lib/number-formatter.mjs +0 -16
- package/esm2022/format/lib/string-formatter.mjs +0 -26
- package/esm2022/intl/acorex-core-intl.mjs +0 -5
- package/esm2022/intl/index.mjs +0 -3
- package/esm2022/intl/lib/numbers/number-format-options.mjs +0 -10
- package/esm2022/intl/lib/numbers/numbers-utils.mjs +0 -39
- package/esm2022/translation/lib/translator.mjs +0 -42
- package/esm2022/validation/lib/validation.mjs +0 -2
- package/fesm2022/acorex-core-intl.mjs +0 -54
- package/fesm2022/acorex-core-intl.mjs.map +0 -1
- package/format/lib/number-formatter.d.ts +0 -5
- package/format/lib/string-formatter.d.ts +0 -5
- package/intl/README.md +0 -3
- package/intl/index.d.ts +0 -2
- package/intl/lib/numbers/number-format-options.d.ts +0 -7
- package/intl/lib/numbers/numbers-utils.d.ts +0 -3
- package/translation/lib/translator.d.ts +0 -11
@@ -1,23 +1,21 @@
|
|
1
|
-
import { AXFormatModule
|
1
|
+
import { AXFormatModule } from '@acorex/core/format';
|
2
2
|
import { NgModule } from '@angular/core';
|
3
|
-
import { AXDateTimeFormatter
|
3
|
+
import { AXDateTimeFormatter } from './formatters/datetime-formatter';
|
4
|
+
import { AXTimeLeftFormatter } from './formatters/timeleft-formatter';
|
4
5
|
import { AXDateTimePipe } from './datetime.pipe';
|
5
6
|
import * as i0 from "@angular/core";
|
6
7
|
import * as i1 from "@acorex/core/format";
|
7
8
|
export class AXDateTimeModule {
|
8
|
-
|
9
|
-
|
10
|
-
}
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, deps: [{ token: i1.AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, declarations: [AXDateTimePipe], imports: [AXFormatModule], exports: [AXDateTimePipe] }); }
|
13
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, imports: [AXFormatModule] }); }
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, declarations: [AXDateTimePipe], imports: [i1.AXFormatModule], exports: [AXDateTimePipe] }); }
|
11
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, imports: [AXFormatModule.forChild({ formatters: [AXDateTimeFormatter, AXTimeLeftFormatter] })] }); }
|
14
12
|
}
|
15
13
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeModule, decorators: [{
|
16
14
|
type: NgModule,
|
17
15
|
args: [{
|
18
|
-
imports: [AXFormatModule],
|
16
|
+
imports: [AXFormatModule.forChild({ formatters: [AXDateTimeFormatter, AXTimeLeftFormatter] })],
|
19
17
|
exports: [AXDateTimePipe],
|
20
18
|
declarations: [AXDateTimePipe],
|
21
19
|
}]
|
22
|
-
}]
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
20
|
+
}] });
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2RhdGVUaW1lL3NyYy9saWIvZGF0ZXRpbWUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBT2pELE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUZaLGNBQWMsMkNBRG5CLGNBQWM7K0dBR2IsZ0JBQWdCLFlBSmpCLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7OzJGQUlsRixnQkFBZ0I7a0JBTDVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUM5RixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQ3pCLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRGF0ZVRpbWVGb3JtYXR0ZXIgfSBmcm9tICcuL2Zvcm1hdHRlcnMvZGF0ZXRpbWUtZm9ybWF0dGVyJztcbmltcG9ydCB7IEFYVGltZUxlZnRGb3JtYXR0ZXIgfSBmcm9tICcuL2Zvcm1hdHRlcnMvdGltZWxlZnQtZm9ybWF0dGVyJztcbmltcG9ydCB7IEFYRGF0ZVRpbWVQaXBlIH0gZnJvbSAnLi9kYXRldGltZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0FYRm9ybWF0TW9kdWxlLmZvckNoaWxkKHsgZm9ybWF0dGVyczogW0FYRGF0ZVRpbWVGb3JtYXR0ZXIsIEFYVGltZUxlZnRGb3JtYXR0ZXJdIH0pXSxcbiAgZXhwb3J0czogW0FYRGF0ZVRpbWVQaXBlXSxcbiAgZGVjbGFyYXRpb25zOiBbQVhEYXRlVGltZVBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWERhdGVUaW1lTW9kdWxlIHt9XG4iXX0=
|
@@ -1,6 +1,9 @@
|
|
1
1
|
import { Pipe, inject } from '@angular/core';
|
2
2
|
import { AXCalendarService } from './calendar.service';
|
3
3
|
import * as i0 from "@angular/core";
|
4
|
+
/**
|
5
|
+
* @deprecated The pipe should not be used, use format instead
|
6
|
+
*/
|
4
7
|
export class AXDateTimePipe {
|
5
8
|
constructor() {
|
6
9
|
this._calendarService = inject(AXCalendarService);
|
@@ -14,12 +17,7 @@ export class AXDateTimePipe {
|
|
14
17
|
calendar = this._calendarService.resolveCalendar(calendarName);
|
15
18
|
}
|
16
19
|
const val = this._calendarService.convert(value, calendar.name());
|
17
|
-
|
18
|
-
return val.format(calendar.formats.dateDisplay);
|
19
|
-
}
|
20
|
-
else {
|
21
|
-
return val.format(format);
|
22
|
-
}
|
20
|
+
return val.format(format);
|
23
21
|
}
|
24
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
25
23
|
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimePipe, name: "axDate" }); }
|
@@ -28,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
28
26
|
type: Pipe,
|
29
27
|
args: [{ name: 'axDate' }]
|
30
28
|
}] });
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9kYXRlVGltZS9zcmMvbGliL2RhdGV0aW1lLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUd2RDs7R0FFRztBQUVILE1BQU0sT0FBTyxjQUFjO0lBRDNCO1FBRVUscUJBQWdCLEdBQXNCLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0tBYXpFO0lBWEMsU0FBUyxDQUFDLEtBQWlDLEVBQUUsTUFBZSxFQUFFLFlBQXFCO1FBQ2pGLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUNqQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztRQUM5QyxJQUFJLFlBQVksRUFBRTtZQUNoQixRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNoRTtRQUNELE1BQU0sR0FBRyxHQUFlLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzlFLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QixDQUFDOzhHQWJVLGNBQWM7NEdBQWQsY0FBYzs7MkZBQWQsY0FBYztrQkFEMUIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ2FsZW5kYXJTZXJ2aWNlIH0gZnJvbSAnLi9jYWxlbmRhci5zZXJ2aWNlJztcbmltcG9ydCB7IEFYRGF0ZVRpbWUgfSBmcm9tICcuL2RhdGV0aW1lLmNsYXNzJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBUaGUgcGlwZSBzaG91bGQgbm90IGJlIHVzZWQsIHVzZSBmb3JtYXQgaW5zdGVhZFxuICovXG5AUGlwZSh7IG5hbWU6ICdheERhdGUnIH0pXG5leHBvcnQgY2xhc3MgQVhEYXRlVGltZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSBfY2FsZW5kYXJTZXJ2aWNlOiBBWENhbGVuZGFyU2VydmljZSA9IGluamVjdChBWENhbGVuZGFyU2VydmljZSk7XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBEYXRlIHwgQVhEYXRlVGltZSB8IHN0cmluZywgZm9ybWF0Pzogc3RyaW5nLCBjYWxlbmRhck5hbWU/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIGxldCBjYWxlbmRhciA9IHRoaXMuX2NhbGVuZGFyU2VydmljZS5jYWxlbmRhcjtcbiAgICBpZiAoY2FsZW5kYXJOYW1lKSB7XG4gICAgICBjYWxlbmRhciA9IHRoaXMuX2NhbGVuZGFyU2VydmljZS5yZXNvbHZlQ2FsZW5kYXIoY2FsZW5kYXJOYW1lKTtcbiAgICB9XG4gICAgY29uc3QgdmFsOiBBWERhdGVUaW1lID0gdGhpcy5fY2FsZW5kYXJTZXJ2aWNlLmNvbnZlcnQodmFsdWUsIGNhbGVuZGFyLm5hbWUoKSk7XG4gICAgcmV0dXJuIHZhbC5mb3JtYXQoZm9ybWF0KTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { Injectable, inject } from '@angular/core';
|
2
|
+
import { AXCalendarService } from '../calendar.service';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class AXDateTimeFormatter {
|
5
|
+
constructor() {
|
6
|
+
this.calendarService = inject(AXCalendarService);
|
7
|
+
}
|
8
|
+
get name() {
|
9
|
+
return 'datetime';
|
10
|
+
}
|
11
|
+
format(value, options) {
|
12
|
+
const effectiveOptions = typeof options == 'object' ? {
|
13
|
+
format: options.format ?? 'date',
|
14
|
+
locale: options.locale,
|
15
|
+
calendar: options.calendar ?? this.calendarService.calendar.name()
|
16
|
+
} : {
|
17
|
+
format: options,
|
18
|
+
calendar: this.calendarService.calendar.name()
|
19
|
+
};
|
20
|
+
return this.calendarService
|
21
|
+
.create(value, effectiveOptions.calendar)
|
22
|
+
.format(effectiveOptions.format, { locale: effectiveOptions.locale });
|
23
|
+
}
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
25
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeFormatter }); }
|
26
|
+
}
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXDateTimeFormatter, decorators: [{
|
28
|
+
type: Injectable
|
29
|
+
}] });
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2RhdGVUaW1lL3NyYy9saWIvZm9ybWF0dGVycy9kYXRldGltZS1mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBaUJ4RCxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRVUsb0JBQWUsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztLQW9CckQ7SUFsQkMsSUFBSSxJQUFJO1FBQ04sT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFjLEVBQUUsT0FBNkM7UUFDbEUsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLE9BQU8sSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLE1BQU07WUFDaEMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3RCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtTQUNuRSxDQUFDLENBQUMsQ0FBQztZQUNGLE1BQU0sRUFBRSxPQUFPO1lBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRTtTQUMvQyxDQUFBO1FBRUQsT0FBTyxJQUFJLENBQUMsZUFBZTthQUN4QixNQUFNLENBQUMsS0FBYSxFQUFFLGdCQUFnQixDQUFDLFFBQWtCLENBQUM7YUFDMUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7OEdBcEJVLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zLCBBWEZvcm1hdHRlciB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENhbGVuZGFyU2VydmljZSB9IGZyb20gJy4uL2NhbGVuZGFyLnNlcnZpY2UnO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhEYXRlVGltZUZvcm1hdHRlck9wdGlvbnMgZXh0ZW5kcyBBWEZvcm1hdE9wdGlvbnMge1xuICBmb3JtYXQ/OiBzdHJpbmc7XG4gIGNhbGVuZGFyPzogc3RyaW5nO1xuICBsb2NhbGU/OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L2NvcmUvZm9ybWF0JyB7XG4gIGludGVyZmFjZSBBWEZvcm1hdE9wdGlvbnNNYXAge1xuICAgICdkYXRldGltZSc6IEFYRGF0ZVRpbWVGb3JtYXR0ZXJPcHRpb25zO1xuICB9XG59XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYRGF0ZVRpbWVGb3JtYXR0ZXIgaW1wbGVtZW50cyBBWEZvcm1hdHRlciB7XG4gIHByaXZhdGUgY2FsZW5kYXJTZXJ2aWNlID0gaW5qZWN0KEFYQ2FsZW5kYXJTZXJ2aWNlKTtcblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZGF0ZXRpbWUnO1xuICB9XG5cbiAgZm9ybWF0KHZhbHVlOiB1bmtub3duLCBvcHRpb25zPzogQVhEYXRlVGltZUZvcm1hdHRlck9wdGlvbnMgfCBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGVmZmVjdGl2ZU9wdGlvbnMgPSB0eXBlb2Ygb3B0aW9ucyA9PSAnb2JqZWN0JyA/IHtcbiAgICAgIGZvcm1hdDogb3B0aW9ucy5mb3JtYXQgPz8gJ2RhdGUnLFxuICAgICAgbG9jYWxlOiBvcHRpb25zLmxvY2FsZSxcbiAgICAgIGNhbGVuZGFyOiBvcHRpb25zLmNhbGVuZGFyID8/IHRoaXMuY2FsZW5kYXJTZXJ2aWNlLmNhbGVuZGFyLm5hbWUoKVxuICAgIH0gOiB7XG4gICAgICBmb3JtYXQ6IG9wdGlvbnMsXG4gICAgICBjYWxlbmRhcjogdGhpcy5jYWxlbmRhclNlcnZpY2UuY2FsZW5kYXIubmFtZSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY2FsZW5kYXJTZXJ2aWNlXG4gICAgICAuY3JlYXRlKHZhbHVlIGFzIERhdGUsIGVmZmVjdGl2ZU9wdGlvbnMuY2FsZW5kYXIgYXMgc3RyaW5nKVxuICAgICAgLmZvcm1hdChlZmZlY3RpdmVPcHRpb25zLmZvcm1hdCwgeyBsb2NhbGU6IGVmZmVjdGl2ZU9wdGlvbnMubG9jYWxlIH0pO1xuICB9XG59XG5cblxuIl19
|
@@ -0,0 +1,91 @@
|
|
1
|
+
import { Injectable } from "@angular/core";
|
2
|
+
import { isNil } from "lodash-es";
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export class AXTimeLeftFormatter {
|
5
|
+
get name() {
|
6
|
+
return 'timeleft';
|
7
|
+
}
|
8
|
+
format(value, options) {
|
9
|
+
const milliseconds = Number(value);
|
10
|
+
if (milliseconds === null || isNaN(milliseconds)) {
|
11
|
+
return "Calculating...";
|
12
|
+
}
|
13
|
+
const durationInSeconds = Math.round(milliseconds / 1000);
|
14
|
+
let format = options?.format;
|
15
|
+
// Determine the best format if format is null
|
16
|
+
if (isNil(format)) {
|
17
|
+
if (durationInSeconds < 45)
|
18
|
+
format = 's';
|
19
|
+
else if (durationInSeconds < 60 * 45)
|
20
|
+
format = 'm';
|
21
|
+
else if (durationInSeconds < 60 * 60 * 22)
|
22
|
+
format = 'h';
|
23
|
+
else if (durationInSeconds < 60 * 60 * 24 * 26)
|
24
|
+
format = 'd';
|
25
|
+
else if (durationInSeconds < 60 * 60 * 24 * 320)
|
26
|
+
format = 'M';
|
27
|
+
else
|
28
|
+
format = 'y';
|
29
|
+
}
|
30
|
+
// Helper function for zero-padding
|
31
|
+
const pad = (num) => num.toString().padStart(2, '0');
|
32
|
+
switch (format) {
|
33
|
+
case 's':
|
34
|
+
return `${durationInSeconds} seconds left`;
|
35
|
+
case 'ss':
|
36
|
+
return `${pad(durationInSeconds)} seconds left`;
|
37
|
+
case 'm':
|
38
|
+
return `${Math.round(durationInSeconds / 60)} minute${durationInSeconds >= 120 ? 's' : ''} left`;
|
39
|
+
case 'mm':
|
40
|
+
return `${pad(Math.round(durationInSeconds / 60))} minutes left`;
|
41
|
+
case 'h':
|
42
|
+
case 'H':
|
43
|
+
if (durationInSeconds < 60 * 89)
|
44
|
+
return 'an hour left';
|
45
|
+
return `${Math.round(durationInSeconds / 3600)} hour${durationInSeconds >= 60 * 180 ? 's' : ''} left`;
|
46
|
+
case 'hh':
|
47
|
+
case 'HH':
|
48
|
+
if (durationInSeconds < 60 * 89)
|
49
|
+
return '01 hour left';
|
50
|
+
return `${pad(Math.round(durationInSeconds / 3600))} hours left`;
|
51
|
+
case 'd':
|
52
|
+
case 'D':
|
53
|
+
if (durationInSeconds < 60 * 60 * 35)
|
54
|
+
return 'a day left';
|
55
|
+
return `${Math.round(durationInSeconds / (3600 * 24))} day${durationInSeconds >= 60 * 60 * 70 ? 's' : ''} left`;
|
56
|
+
case 'dd':
|
57
|
+
case 'DD':
|
58
|
+
if (durationInSeconds < 60 * 60 * 35)
|
59
|
+
return '01 day left';
|
60
|
+
return `${pad(Math.round(durationInSeconds / (3600 * 24)))} days left`;
|
61
|
+
case 'M':
|
62
|
+
if (durationInSeconds < 60 * 60 * 24 * 45)
|
63
|
+
return 'a month left';
|
64
|
+
return `${Math.round(durationInSeconds / (3600 * 24 * 30))} month${durationInSeconds >= 60 * 60 * 24 * 90 ? 's' : ''} left`;
|
65
|
+
case 'MM':
|
66
|
+
if (durationInSeconds < 60 * 60 * 24 * 45)
|
67
|
+
return '01 month left';
|
68
|
+
return `${pad(Math.round(durationInSeconds / (3600 * 24 * 30)))} months left`;
|
69
|
+
case 'y':
|
70
|
+
case 'Y':
|
71
|
+
if (durationInSeconds < 60 * 60 * 24 * 547)
|
72
|
+
return 'a year left';
|
73
|
+
return `${Math.round(durationInSeconds / (3600 * 24 * 365))} year${durationInSeconds >= 60 * 60 * 24 * 730 ? 's' : ''} left`;
|
74
|
+
case 'yy':
|
75
|
+
case 'YY':
|
76
|
+
case 'yyyy':
|
77
|
+
case 'YYYY':
|
78
|
+
if (durationInSeconds < 60 * 60 * 24 * 547)
|
79
|
+
return '01 year left';
|
80
|
+
return `${pad(Math.round(durationInSeconds / (3600 * 24 * 365)))} years left`;
|
81
|
+
default:
|
82
|
+
return 'Invalid format';
|
83
|
+
}
|
84
|
+
}
|
85
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXTimeLeftFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
86
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXTimeLeftFormatter }); }
|
87
|
+
}
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXTimeLeftFormatter, decorators: [{
|
89
|
+
type: Injectable
|
90
|
+
}] });
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxlZnQtZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2RhdGVUaW1lL3NyYy9saWIvZm9ybWF0dGVycy90aW1lbGVmdC1mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDOztBQWVsQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTVCLElBQUksSUFBSTtRQUNKLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBc0IsRUFBRSxPQUFvQztRQUMvRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbEMsSUFBSSxZQUFZLEtBQUssSUFBSSxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM5QyxPQUFPLGdCQUFnQixDQUFDO1NBQzNCO1FBQ0QsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsQ0FBQztRQUMxRCxJQUFJLE1BQU0sR0FBRyxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQzdCLDhDQUE4QztRQUM5QyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNmLElBQUksaUJBQWlCLEdBQUcsRUFBRTtnQkFBRSxNQUFNLEdBQUcsR0FBRyxDQUFDO2lCQUNwQyxJQUFJLGlCQUFpQixHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUFFLE1BQU0sR0FBRyxHQUFHLENBQUM7aUJBQzlDLElBQUksaUJBQWlCLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUFFLE1BQU0sR0FBRyxHQUFHLENBQUM7aUJBQ25ELElBQUksaUJBQWlCLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFB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O2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBpc05pbCB9IGZyb20gXCJsb2Rhc2gtZXNcIjtcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9ucywgQVhGb3JtYXR0ZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvZm9ybWF0JztcblxuZXhwb3J0IGludGVyZmFjZSBBWFRpbWVMZWZ0Rm9ybWF0dGVyT3B0aW9ucyBleHRlbmRzIEFYRm9ybWF0T3B0aW9ucyB7XG4gICAgZm9ybWF0OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L2NvcmUvZm9ybWF0JyB7XG4gICAgaW50ZXJmYWNlIEFYRm9ybWF0T3B0aW9uc01hcCB7XG4gICAgICAgICd0aW1lbGVmdCc6IEFYVGltZUxlZnRGb3JtYXR0ZXJPcHRpb25zO1xuICAgIH1cbn1cblxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhUaW1lTGVmdEZvcm1hdHRlciBpbXBsZW1lbnRzIEFYRm9ybWF0dGVyIHtcblxuICAgIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAndGltZWxlZnQnO1xuICAgIH1cblxuICAgIGZvcm1hdCh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nLCBvcHRpb25zPzogQVhUaW1lTGVmdEZvcm1hdHRlck9wdGlvbnMpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBtaWxsaXNlY29uZHMgPSBOdW1iZXIodmFsdWUpXG4gICAgICAgIGlmIChtaWxsaXNlY29uZHMgPT09IG51bGwgfHwgaXNOYU4obWlsbGlzZWNvbmRzKSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiQ2FsY3VsYXRpbmcuLi5cIjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBkdXJhdGlvbkluU2Vjb25kcyA9IE1hdGgucm91bmQobWlsbGlzZWNvbmRzIC8gMTAwMCk7XG4gICAgICAgIGxldCBmb3JtYXQgPSBvcHRpb25zPy5mb3JtYXQ7XG4gICAgICAgIC8vIERldGVybWluZSB0aGUgYmVzdCBmb3JtYXQgaWYgZm9ybWF0IGlzIG51bGxcbiAgICAgICAgaWYgKGlzTmlsKGZvcm1hdCkpIHtcbiAgICAgICAgICAgIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDQ1KSBmb3JtYXQgPSAncyc7XG4gICAgICAgICAgICBlbHNlIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDYwICogNDUpIGZvcm1hdCA9ICdtJztcbiAgICAgICAgICAgIGVsc2UgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA2MCAqIDIyKSBmb3JtYXQgPSAnaCc7XG4gICAgICAgICAgICBlbHNlIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDYwICogNjAgKiAyNCAqIDI2KSBmb3JtYXQgPSAnZCc7XG4gICAgICAgICAgICBlbHNlIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDYwICogNjAgKiAyNCAqIDMyMCkgZm9ybWF0ID0gJ00nO1xuICAgICAgICAgICAgZWxzZSBmb3JtYXQgPSAneSc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHplcm8tcGFkZGluZ1xuICAgICAgICBjb25zdCBwYWQgPSAobnVtOiBudW1iZXIpID0+IG51bS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XG5cbiAgICAgICAgc3dpdGNoIChmb3JtYXQpIHtcbiAgICAgICAgICAgIGNhc2UgJ3MnOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtkdXJhdGlvbkluU2Vjb25kc30gc2Vjb25kcyBsZWZ0YDtcbiAgICAgICAgICAgIGNhc2UgJ3NzJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7cGFkKGR1cmF0aW9uSW5TZWNvbmRzKX0gc2Vjb25kcyBsZWZ0YDtcbiAgICAgICAgICAgIGNhc2UgJ20nOlxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKGR1cmF0aW9uSW5TZWNvbmRzIC8gNjApfSBtaW51dGUke2R1cmF0aW9uSW5TZWNvbmRzID49IDEyMCA/ICdzJyA6ICcnfSBsZWZ0YDtcbiAgICAgICAgICAgIGNhc2UgJ21tJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7cGFkKE1hdGgucm91bmQoZHVyYXRpb25JblNlY29uZHMgLyA2MCkpfSBtaW51dGVzIGxlZnRgO1xuICAgICAgICAgICAgY2FzZSAnaCc6XG4gICAgICAgICAgICBjYXNlICdIJzpcbiAgICAgICAgICAgICAgICBpZiAoZHVyYXRpb25JblNlY29uZHMgPCA2MCAqIDg5KSByZXR1cm4gJ2FuIGhvdXIgbGVmdCc7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZHVyYXRpb25JblNlY29uZHMgLyAzNjAwKX0gaG91ciR7ZHVyYXRpb25JblNlY29uZHMgPj0gNjAgKiAxODAgPyAncycgOiAnJ30gbGVmdGA7XG4gICAgICAgICAgICBjYXNlICdoaCc6XG4gICAgICAgICAgICBjYXNlICdISCc6XG4gICAgICAgICAgICAgICAgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA4OSkgcmV0dXJuICcwMSBob3VyIGxlZnQnO1xuICAgICAgICAgICAgICAgIHJldHVybiBgJHtwYWQoTWF0aC5yb3VuZChkdXJhdGlvbkluU2Vjb25kcyAvIDM2MDApKX0gaG91cnMgbGVmdGA7XG4gICAgICAgICAgICBjYXNlICdkJzpcbiAgICAgICAgICAgIGNhc2UgJ0QnOlxuICAgICAgICAgICAgICAgIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDYwICogNjAgKiAzNSkgcmV0dXJuICdhIGRheSBsZWZ0JztcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChkdXJhdGlvbkluU2Vjb25kcyAvICgzNjAwICogMjQpKX0gZGF5JHtkdXJhdGlvbkluU2Vjb25kcyA+PSA2MCAqIDYwICogNzAgPyAncycgOiAnJ30gbGVmdGA7XG4gICAgICAgICAgICBjYXNlICdkZCc6XG4gICAgICAgICAgICBjYXNlICdERCc6XG4gICAgICAgICAgICAgICAgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA2MCAqIDM1KSByZXR1cm4gJzAxIGRheSBsZWZ0JztcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7cGFkKE1hdGgucm91bmQoZHVyYXRpb25JblNlY29uZHMgLyAoMzYwMCAqIDI0KSkpfSBkYXlzIGxlZnRgO1xuICAgICAgICAgICAgY2FzZSAnTSc6XG4gICAgICAgICAgICAgICAgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA2MCAqIDI0ICogNDUpIHJldHVybiAnYSBtb250aCBsZWZ0JztcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7TWF0aC5yb3VuZChkdXJhdGlvbkluU2Vjb25kcyAvICgzNjAwICogMjQgKiAzMCkpfSBtb250aCR7ZHVyYXRpb25JblNlY29uZHMgPj0gNjAgKiA2MCAqIDI0ICogOTAgPyAncycgOiAnJ30gbGVmdGA7XG4gICAgICAgICAgICBjYXNlICdNTSc6XG4gICAgICAgICAgICAgICAgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA2MCAqIDI0ICogNDUpIHJldHVybiAnMDEgbW9udGggbGVmdCc7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3BhZChNYXRoLnJvdW5kKGR1cmF0aW9uSW5TZWNvbmRzIC8gKDM2MDAgKiAyNCAqIDMwKSkpfSBtb250aHMgbGVmdGA7XG4gICAgICAgICAgICBjYXNlICd5JzpcbiAgICAgICAgICAgIGNhc2UgJ1knOlxuICAgICAgICAgICAgICAgIGlmIChkdXJhdGlvbkluU2Vjb25kcyA8IDYwICogNjAgKiAyNCAqIDU0NykgcmV0dXJuICdhIHllYXIgbGVmdCc7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke01hdGgucm91bmQoZHVyYXRpb25JblNlY29uZHMgLyAoMzYwMCAqIDI0ICogMzY1KSl9IHllYXIke2R1cmF0aW9uSW5TZWNvbmRzID49IDYwICogNjAgKiAyNCAqIDczMCA/ICdzJyA6ICcnfSBsZWZ0YDtcbiAgICAgICAgICAgIGNhc2UgJ3l5JzpcbiAgICAgICAgICAgIGNhc2UgJ1lZJzpcbiAgICAgICAgICAgIGNhc2UgJ3l5eXknOlxuICAgICAgICAgICAgY2FzZSAnWVlZWSc6XG4gICAgICAgICAgICAgICAgaWYgKGR1cmF0aW9uSW5TZWNvbmRzIDwgNjAgKiA2MCAqIDI0ICogNTQ3KSByZXR1cm4gJzAxIHllYXIgbGVmdCc7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3BhZChNYXRoLnJvdW5kKGR1cmF0aW9uSW5TZWNvbmRzIC8gKDM2MDAgKiAyNCAqIDM2NSkpKX0geWVhcnMgbGVmdGA7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiAnSW52YWxpZCBmb3JtYXQnO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -4,7 +4,7 @@ export class AXFileSizeFormatter {
|
|
4
4
|
get name() {
|
5
5
|
return 'filesize';
|
6
6
|
}
|
7
|
-
format(value
|
7
|
+
format(value) {
|
8
8
|
const size = Number(value);
|
9
9
|
if (size === 0)
|
10
10
|
return '0 Bytes';
|
@@ -21,4 +21,4 @@ export class AXFileSizeFormatter {
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileSizeFormatter, decorators: [{
|
22
22
|
type: Injectable
|
23
23
|
}] });
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaXplLWZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9maWxlL3NyYy9saWIvZmlsZS1zaXplLWZvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWEzQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLElBQUksSUFBSTtRQUNOLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBYTtRQUNsQixNQUFNLElBQUksR0FBVyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbkMsSUFBSSxJQUFJLEtBQUssQ0FBQztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQ2pDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUV6QyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDZixNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVuRCxPQUFPLFVBQVUsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQzs4R0FqQlUsbUJBQW1CO2tIQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdE9wdGlvbnMsIEFYRm9ybWF0dGVyIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhGaWxlU2l6ZUZvcm1hdHRlck9wdGlvbnMgZXh0ZW5kcyBBWEZvcm1hdE9wdGlvbnMge1xuICBmb3JtYXQ6IHN0cmluZztcbn1cblxuZGVjbGFyZSBtb2R1bGUgJ0BhY29yZXgvY29yZS9mb3JtYXQnIHtcbiAgaW50ZXJmYWNlIEFYRm9ybWF0T3B0aW9uc01hcCB7XG4gICAgJ2ZpbGVzaXplJzogQVhGaWxlU2l6ZUZvcm1hdHRlck9wdGlvbnM7XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYRmlsZVNpemVGb3JtYXR0ZXIgaW1wbGVtZW50cyBBWEZvcm1hdHRlciB7XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2ZpbGVzaXplJztcbiAgfVxuXG4gIGZvcm1hdCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBzaXplOiBudW1iZXIgPSBOdW1iZXIodmFsdWUpO1xuXG4gICAgaWYgKHNpemUgPT09IDApIHJldHVybiAnMCBCeXRlcyc7XG4gICAgaWYgKE51bWJlci5pc05hTihzaXplKSkgcmV0dXJuICdVbmtub3duJztcblxuICAgIGNvbnN0IGsgPSAxMDI0O1xuICAgIGNvbnN0IHNpemVzID0gWydCeXRlcycsICdLQicsICdNQicsICdHQicsICdUQicsICdQQicsICdFQicsICdaQicsICdZQiddO1xuICAgIGNvbnN0IGkgPSBNYXRoLmZsb29yKE1hdGgubG9nKHNpemUpIC8gTWF0aC5sb2coaykpO1xuXG4gICAgcmV0dXJuIHBhcnNlRmxvYXQoKHNpemUgLyBNYXRoLnBvdyhrLCBpKSkudG9GaXhlZCgyKSkgKyAnICcgKyBzaXplc1tpXTtcbiAgfVxufVxuIl19
|
@@ -1,22 +1,20 @@
|
|
1
|
-
import {
|
1
|
+
import { AXFormatModule } from '@acorex/core/format';
|
2
2
|
import { NgModule } from '@angular/core';
|
3
3
|
import { AXFileSizeFormatter } from './file-size-formatter';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
import * as i1 from "@acorex/core/format";
|
6
6
|
export class AXFileModule {
|
7
|
-
|
8
|
-
|
9
|
-
}
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule, deps: [{ token: i1.AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
11
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule }); }
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule }); }
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule, imports: [i1.AXFormatModule] }); }
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule, providers: [AXFileSizeFormatter], imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })] }); }
|
13
10
|
}
|
14
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFileModule, decorators: [{
|
15
12
|
type: NgModule,
|
16
13
|
args: [{
|
17
|
-
imports: [],
|
14
|
+
imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })],
|
18
15
|
exports: [],
|
19
16
|
declarations: [],
|
17
|
+
providers: [AXFileSizeFormatter]
|
20
18
|
}]
|
21
|
-
}]
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
19
|
+
}] });
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZmlsZS9zcmMvbGliL2ZpbGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFRNUQsTUFBTSxPQUFPLFlBQVk7OEdBQVosWUFBWTsrR0FBWixZQUFZOytHQUFaLFlBQVksYUFGVixDQUFDLG1CQUFtQixDQUFDLFlBSHRCLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7OzJGQUsvRCxZQUFZO2tCQU54QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDekUsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRm9ybWF0TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2Zvcm1hdCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhGaWxlU2l6ZUZvcm1hdHRlciB9IGZyb20gJy4vZmlsZS1zaXplLWZvcm1hdHRlcic7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0FYRm9ybWF0TW9kdWxlLmZvckNoaWxkKHsgZm9ybWF0dGVyczogW0FYRmlsZVNpemVGb3JtYXR0ZXJdIH0pXSxcbiAgICBleHBvcnRzOiBbXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIHByb3ZpZGVyczogW0FYRmlsZVNpemVGb3JtYXR0ZXJdXG59KVxuZXhwb3J0IGNsYXNzIEFYRmlsZU1vZHVsZSB7XG5cbn1cbiJdfQ==
|
package/esm2022/format/index.mjs
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
+
export * from './lib/format.types';
|
1
2
|
export * from './lib/format.config';
|
2
3
|
export * from './lib/format.module';
|
3
4
|
export * from './lib/format.pipe';
|
4
5
|
export * from './lib/format.service';
|
5
|
-
export * from './lib/number-formatter';
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
6
|
+
export * from './lib/formatters/number-formatter';
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZm9ybWF0L3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxtQ0FBbUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm1hdC50eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtYXQuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm1hdC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybWF0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybWF0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZm9ybWF0dGVycy9udW1iZXItZm9ybWF0dGVyJztcbiJdfQ==
|
@@ -1,2 +1,3 @@
|
|
1
|
-
export {
|
2
|
-
|
1
|
+
export class AXFormatter {
|
2
|
+
}
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9mb3JtYXQvc3JjL2xpYi9mb3JtYXQuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBZ0IsV0FBVztDQUdoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRm9ybWF0T3B0aW9ucyB9IGZyb20gXCIuL2Zvcm1hdC50eXBlc1wiO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhGb3JtYXR0ZXIge1xuICBhYnN0cmFjdCBnZXQgbmFtZSgpOiBzdHJpbmc7XG4gIGFic3RyYWN0IGZvcm1hdCh2YWx1ZTogdW5rbm93biwgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9ucyB8IHN0cmluZyk6IHN0cmluZztcbn1cbiJdfQ==
|
@@ -1,29 +1,42 @@
|
|
1
1
|
import { APP_INITIALIZER, NgModule } from '@angular/core';
|
2
2
|
import { AXFormatPipe } from './format.pipe';
|
3
|
-
import { AXNumberFormatter } from './number-formatter';
|
4
|
-
import { AXStringFormatter } from './string-formatter';
|
3
|
+
import { AXNumberFormatter } from './formatters/number-formatter';
|
5
4
|
import { AXFormatterRegistryService } from './format.service';
|
6
5
|
import * as i0 from "@angular/core";
|
7
6
|
import * as i1 from "./format.service";
|
7
|
+
const BUILT_IN_RULES = [
|
8
|
+
AXNumberFormatter,
|
9
|
+
];
|
8
10
|
export class AXFormatModule {
|
9
|
-
static forRoot(
|
11
|
+
static forRoot(configs) {
|
10
12
|
return {
|
11
13
|
ngModule: AXFormatModule,
|
12
14
|
providers: [
|
15
|
+
...(configs?.formatters || []),
|
13
16
|
{
|
14
17
|
provide: APP_INITIALIZER,
|
15
|
-
useFactory: (pluginRegistry) => () =>
|
16
|
-
if (config?.formatters?.length)
|
17
|
-
pluginRegistry.register(...config.formatters);
|
18
|
-
},
|
18
|
+
useFactory: (pluginRegistry) => () => pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]),
|
19
19
|
deps: [AXFormatterRegistryService],
|
20
20
|
multi: true
|
21
21
|
}
|
22
22
|
]
|
23
23
|
};
|
24
24
|
}
|
25
|
+
static forChild(configs) {
|
26
|
+
AXFormatModule.registry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);
|
27
|
+
return {
|
28
|
+
ngModule: AXFormatModule,
|
29
|
+
providers: [
|
30
|
+
...(configs?.formatters || [])
|
31
|
+
]
|
32
|
+
};
|
33
|
+
}
|
34
|
+
/**
|
35
|
+
* @ignore
|
36
|
+
*/
|
25
37
|
constructor(pluginRegistry) {
|
26
|
-
|
38
|
+
AXFormatModule.registry = pluginRegistry;
|
39
|
+
AXFormatModule.registry.register(...BUILT_IN_RULES);
|
27
40
|
}
|
28
41
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatModule, deps: [{ token: i1.AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
29
42
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXFormatModule, declarations: [AXFormatPipe], exports: [AXFormatPipe] }); }
|
@@ -37,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
37
50
|
declarations: [AXFormatPipe],
|
38
51
|
}]
|
39
52
|
}], ctorParameters: () => [{ type: i1.AXFormatterRegistryService }] });
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9mb3JtYXQvc3JjL2xpYi9mb3JtYXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7QUFJOUQsTUFBTSxjQUFjLEdBQUc7SUFDckIsaUJBQWlCO0NBQ2xCLENBQUE7QUFXRCxNQUFNLE9BQU8sY0FBYztJQUl6QixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQStCO1FBQzVDLE9BQU87WUFDTCxRQUFRLEVBQUUsY0FBYztZQUN4QixTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxDQUFDLE9BQU8sRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDO2dCQUM5QjtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLENBQUMsY0FBMEMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQy9ELGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsY0FBYyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ2pGLElBQUksRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUNsQyxLQUFLLEVBQUUsSUFBSTtpQkFDWjthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQStCO1FBQzdDLGNBQWMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekYsT0FBTztZQUNMLFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUM7YUFDL0I7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxjQUEwQztRQUNwRCxjQUFjLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQztRQUN6QyxjQUFjLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLGNBQWMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7OEdBcENVLGNBQWM7K0dBQWQsY0FBYyxpQkFGVixZQUFZLGFBRGpCLFlBQVk7K0dBR1gsY0FBYzs7MkZBQWQsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEZvcm1hdFBpcGUgfSBmcm9tICcuL2Zvcm1hdC5waXBlJztcbmltcG9ydCB7IEFYTnVtYmVyRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXJzL251bWJlci1mb3JtYXR0ZXInO1xuaW1wb3J0IHsgQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL2Zvcm1hdC5zZXJ2aWNlJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXQuY29uZmlnJztcblxuXG5jb25zdCBCVUlMVF9JTl9SVUxFUyA9IFtcbiAgQVhOdW1iZXJGb3JtYXR0ZXIsXG5dXG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhGb3JtYXRNb2R1bGVDb25maWdzIHtcbiAgZm9ybWF0dGVyczogKG5ldyAoKSA9PiBBWEZvcm1hdHRlcilbXVxufVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXSxcbiAgZXhwb3J0czogW0FYRm9ybWF0UGlwZV0sXG4gIGRlY2xhcmF0aW9uczogW0FYRm9ybWF0UGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybWF0TW9kdWxlIHtcblxuICBwcml2YXRlIHN0YXRpYyByZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2U7XG5cbiAgc3RhdGljIGZvclJvb3QoY29uZmlncz86IEFYRm9ybWF0TW9kdWxlQ29uZmlncyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhGb3JtYXRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYRm9ybWF0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICB1c2VGYWN0b3J5OiAocGx1Z2luUmVnaXN0cnk6IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlKSA9PiAoKSA9PlxuICAgICAgICAgICAgcGx1Z2luUmVnaXN0cnkucmVnaXN0ZXIoLi4uWy4uLkJVSUxUX0lOX1JVTEVTLCAuLi4oY29uZmlncz8uZm9ybWF0dGVycyB8fCBbXSldKSxcbiAgICAgICAgICBkZXBzOiBbQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGZvckNoaWxkKGNvbmZpZ3M/OiBBWEZvcm1hdE1vZHVsZUNvbmZpZ3MpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYRm9ybWF0TW9kdWxlPiB7XG4gICAgQVhGb3JtYXRNb2R1bGUucmVnaXN0cnkucmVnaXN0ZXIoLi4uWy4uLkJVSUxUX0lOX1JVTEVTLCAuLi4oY29uZmlncz8uZm9ybWF0dGVycyB8fCBbXSldKTtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYRm9ybWF0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKVxuICAgICAgXVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IocGx1Z2luUmVnaXN0cnk6IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlKSB7XG4gICAgQVhGb3JtYXRNb2R1bGUucmVnaXN0cnkgPSBwbHVnaW5SZWdpc3RyeTtcbiAgICBBWEZvcm1hdE1vZHVsZS5yZWdpc3RyeS5yZWdpc3RlciguLi5CVUlMVF9JTl9SVUxFUyk7XG4gIH1cbn1cbiJdfQ==
|
@@ -5,18 +5,17 @@ export class AXFormatPipe {
|
|
5
5
|
constructor() {
|
6
6
|
this.formatService = inject(AXFormatService);
|
7
7
|
}
|
8
|
-
transform(value,
|
9
|
-
|
10
|
-
return this.formatService.format(value, name, ...args.slice(1));
|
8
|
+
transform(value, name, options) {
|
9
|
+
return this.formatService.format(value, name, options);
|
11
10
|
}
|
12
11
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
13
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXFormatPipe, name: "format" }); }
|
12
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: AXFormatPipe, name: "format", pure: false }); }
|
14
13
|
}
|
15
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatPipe, decorators: [{
|
16
15
|
type: Pipe,
|
17
16
|
args: [{
|
18
17
|
name: 'format',
|
19
|
-
pure:
|
18
|
+
pure: false,
|
20
19
|
}]
|
21
20
|
}] });
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPbkQsTUFBTSxPQUFPLFlBQVk7SUFKekI7UUFLVSxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztLQUtqRDtJQUhDLFNBQVMsQ0FBQyxLQUFjLEVBQUUsSUFBWSxFQUFFLE9BQWtDO1FBQ3hFLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLElBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDOzhHQUxVLFlBQVk7NEdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFKeEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhGb3JtYXRTZXJ2aWNlIH0gZnJvbSAnLi9mb3JtYXQuc2VydmljZSc7XG5pbXBvcnQgeyBBWEZvcm1hdE9wdGlvbnMgfSBmcm9tICcuL2Zvcm1hdC50eXBlcyc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ2Zvcm1hdCcsXG4gIHB1cmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBBWEZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlID0gaW5qZWN0KEFYRm9ybWF0U2VydmljZSk7XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiB1bmtub3duLCBuYW1lOiBzdHJpbmcsIG9wdGlvbnM/OiBBWEZvcm1hdE9wdGlvbnMgfCBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHZhbHVlLCBuYW1lIGFzIGFueSwgb3B0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,16 +1,23 @@
|
|
1
|
-
import { Injectable } from '@angular/core';
|
1
|
+
import { Injectable, Injector } from '@angular/core';
|
2
2
|
import * as i0 from "@angular/core";
|
3
3
|
export class AXFormatterRegistryService {
|
4
|
-
constructor() {
|
4
|
+
constructor(injector) {
|
5
5
|
this.plugins = [];
|
6
|
+
this.injector = injector;
|
6
7
|
}
|
7
|
-
register(...
|
8
|
-
|
8
|
+
register(...plugins) {
|
9
|
+
plugins.forEach(t => {
|
10
|
+
const childInjector = Injector.create({ providers: [{ provide: t, useClass: t, deps: [] }], parent: this.injector });
|
11
|
+
const v = childInjector.get(t);
|
12
|
+
if (v && !this.plugins.some(p => p.name == v.name)) {
|
13
|
+
this.plugins.push(v);
|
14
|
+
}
|
15
|
+
});
|
9
16
|
}
|
10
17
|
get formatters() {
|
11
18
|
return this.plugins;
|
12
19
|
}
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatterRegistryService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
14
21
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }
|
15
22
|
}
|
16
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatterRegistryService, decorators: [{
|
@@ -18,17 +25,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
18
25
|
args: [{
|
19
26
|
providedIn: 'root'
|
20
27
|
}]
|
21
|
-
}] });
|
28
|
+
}], ctorParameters: () => [{ type: i0.Injector }] });
|
22
29
|
export class AXFormatService {
|
23
30
|
constructor(pluginRegistry) {
|
24
31
|
this.pluginRegistry = pluginRegistry;
|
25
32
|
}
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
33
|
+
/**
|
34
|
+
* Resolves a formatter by its name.
|
35
|
+
* @param name The name of the formatter.
|
36
|
+
* @returns The formatter if found, otherwise throws an error.
|
37
|
+
*/
|
38
|
+
resolveFormatter(name) {
|
39
|
+
const formatter = this.pluginRegistry.formatters.find((c) => c.name == name);
|
40
|
+
if (!formatter) {
|
41
|
+
throw new Error(`Formatter not found: ${name}`);
|
42
|
+
}
|
43
|
+
return formatter;
|
44
|
+
}
|
45
|
+
// Implementation of the format method
|
46
|
+
format(value, formatter, options) {
|
47
|
+
if (typeof formatter === 'string') {
|
48
|
+
const formatterRef = this.resolveFormatter(formatter);
|
49
|
+
return formatterRef.format(value, options);
|
50
|
+
}
|
51
|
+
else {
|
52
|
+
return new AXFormatFluent(this, value);
|
30
53
|
}
|
31
|
-
return format.format(value, ...args);
|
32
54
|
}
|
33
55
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatService, deps: [{ token: AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
34
56
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }
|
@@ -37,4 +59,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
37
59
|
type: Injectable,
|
38
60
|
args: [{ providedIn: 'root' }]
|
39
61
|
}], ctorParameters: () => [{ type: AXFormatterRegistryService }] });
|
40
|
-
|
62
|
+
class AXFormatFluent {
|
63
|
+
constructor(formatService, initialValue) {
|
64
|
+
this.formatService = formatService;
|
65
|
+
this.initialValue = initialValue;
|
66
|
+
}
|
67
|
+
/**
|
68
|
+
* Formats the value using the specified formatter and options.
|
69
|
+
* @param formatter The name of the formatter to use.
|
70
|
+
* @param options The options to pass to the formatter.
|
71
|
+
* @returns The formatted string.
|
72
|
+
*/
|
73
|
+
to(formatter, options) {
|
74
|
+
try {
|
75
|
+
const formatterRef = this.formatService.resolveFormatter(formatter);
|
76
|
+
return formatterRef.format(this.initialValue, options);
|
77
|
+
}
|
78
|
+
catch (error) {
|
79
|
+
// Handle or log the error as needed
|
80
|
+
console.error(error);
|
81
|
+
return String(this.initialValue);
|
82
|
+
}
|
83
|
+
}
|
84
|
+
}
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT3JELE1BQU0sT0FBTywwQkFBMEI7SUFLckMsWUFBWSxRQUFrQjtRQUp0QixZQUFPLEdBQWtCLEVBQUUsQ0FBQztRQUtsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQUcsT0FBa0M7UUFDNUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNsQixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3JILE1BQU0sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNsRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN0QjtRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDOzhHQXRCVSwwQkFBMEI7a0hBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COztBQTJCRCxNQUFNLE9BQU8sZUFBZTtJQUMxQixZQUNVLGNBQTBDO1FBQTFDLG1CQUFjLEdBQWQsY0FBYyxDQUE0QjtJQUNoRCxDQUFDO0lBRUw7Ozs7T0FJRztJQUNILGdCQUFnQixDQUFDLElBQVk7UUFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQVlELHNDQUFzQztJQUN0QyxNQUFNLENBQ0osS0FBYyxFQUNkLFNBQWEsRUFDYixPQUErQjtRQUUvQixJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtZQUNqQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztTQUM1QzthQUFNO1lBQ0wsT0FBTyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDeEM7SUFDSCxDQUFDOzhHQXhDVSxlQUFlO2tIQUFmLGVBQWUsY0FERixNQUFNOzsyRkFDbkIsZUFBZTtrQkFEM0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O0FBNkNsQyxNQUFNLGNBQWM7SUFFbEIsWUFBb0IsYUFBOEIsRUFBVSxZQUFxQjtRQUE3RCxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBUztJQUFJLENBQUM7SUFFdEY7Ozs7O1FBS0k7SUFDSixFQUFFLENBQXFDLFNBQVksRUFBRSxPQUErQjtRQUNsRixJQUFJO1lBQ0YsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwRSxPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQztTQUN4RDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2Qsb0NBQW9DO1lBQ3BDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXQuY29uZmlnJztcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9uc01hcCB9IGZyb20gJy4vZm9ybWF0LnR5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2Uge1xuICBwcml2YXRlIHBsdWdpbnM6IEFYRm9ybWF0dGVyW10gPSBbXTtcblxuICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcjtcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICB0aGlzLmluamVjdG9yID0gaW5qZWN0b3I7XG4gIH1cblxuICByZWdpc3RlciguLi5wbHVnaW5zOiAobmV3ICgpID0+IEFYRm9ybWF0dGVyKVtdKSB7XG4gICAgcGx1Z2lucy5mb3JFYWNoKHQgPT4ge1xuICAgICAgY29uc3QgY2hpbGRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7IHByb3ZpZGVyczogW3sgcHJvdmlkZTogdCwgdXNlQ2xhc3M6IHQsIGRlcHM6IFtdIH1dLCBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IgfSk7XG4gICAgICBjb25zdCB2ID0gY2hpbGRJbmplY3Rvci5nZXQodCk7XG5cbiAgICAgIGlmICh2ICYmICF0aGlzLnBsdWdpbnMuc29tZShwID0+IHAubmFtZSA9PSB2Lm5hbWUpKSB7XG4gICAgICAgIHRoaXMucGx1Z2lucy5wdXNoKHYpO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBnZXQgZm9ybWF0dGVycygpOiBBWEZvcm1hdHRlcltdIHtcbiAgICByZXR1cm4gdGhpcy5wbHVnaW5zO1xuICB9XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhGb3JtYXRTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwbHVnaW5SZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2VcbiAgKSB7IH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBmb3JtYXR0ZXIgYnkgaXRzIG5hbWUuXG4gICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBmb3JtYXR0ZXIuXG4gICAqIEByZXR1cm5zIFRoZSBmb3JtYXR0ZXIgaWYgZm91bmQsIG90aGVyd2lzZSB0aHJvd3MgYW4gZXJyb3IuXG4gICAqL1xuICByZXNvbHZlRm9ybWF0dGVyKG5hbWU6IHN0cmluZyk6IEFYRm9ybWF0dGVyIHtcbiAgICBjb25zdCBmb3JtYXR0ZXIgPSB0aGlzLnBsdWdpblJlZ2lzdHJ5LmZvcm1hdHRlcnMuZmluZCgoYykgPT4gYy5uYW1lID09IG5hbWUpO1xuICAgIGlmICghZm9ybWF0dGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZvcm1hdHRlciBub3QgZm91bmQ6ICR7bmFtZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIGZvcm1hdHRlcjtcbiAgfVxuXG4gIC8vIE92ZXJsb2FkIGZvciB0cmFkaXRpb25hbCBmb3JtYXR0aW5nXG4gIGZvcm1hdDxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICBuYW1lOiBLLFxuICAgIG9wdGlvbnM/OiBBWEZvcm1hdE9wdGlvbnNNYXBbS11cbiAgKTogc3RyaW5nO1xuXG4gIC8vIE92ZXJsb2FkIGZvciBzdGFydGluZyBmbHVlbnQgQVBJIGNoYWluXG4gIGZvcm1hdCh2YWx1ZTogdW5rbm93bik6IEFYRm9ybWF0Rmx1ZW50O1xuXG4gIC8vIEltcGxlbWVudGF0aW9uIG9mIHRoZSBmb3JtYXQgbWV0aG9kXG4gIGZvcm1hdDxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICBmb3JtYXR0ZXI/OiBLLFxuICAgIG9wdGlvbnM/OiBBWEZvcm1hdE9wdGlvbnNNYXBbS11cbiAgKTogc3RyaW5nIHwgQVhGb3JtYXRGbHVlbnQge1xuICAgIGlmICh0eXBlb2YgZm9ybWF0dGVyID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgZm9ybWF0dGVyUmVmID0gdGhpcy5yZXNvbHZlRm9ybWF0dGVyKGZvcm1hdHRlcik7XG4gICAgICByZXR1cm4gZm9ybWF0dGVyUmVmLmZvcm1hdCh2YWx1ZSwgb3B0aW9ucyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuZXcgQVhGb3JtYXRGbHVlbnQodGhpcywgdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5cbmNsYXNzIEFYRm9ybWF0Rmx1ZW50IHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1hdFNlcnZpY2U6IEFYRm9ybWF0U2VydmljZSwgcHJpdmF0ZSBpbml0aWFsVmFsdWU6IHVua25vd24pIHsgfVxuXG4gIC8qKlxuICAgICogRm9ybWF0cyB0aGUgdmFsdWUgdXNpbmcgdGhlIHNwZWNpZmllZCBmb3JtYXR0ZXIgYW5kIG9wdGlvbnMuXG4gICAgKiBAcGFyYW0gZm9ybWF0dGVyIFRoZSBuYW1lIG9mIHRoZSBmb3JtYXR0ZXIgdG8gdXNlLlxuICAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgdG8gcGFzcyB0byB0aGUgZm9ybWF0dGVyLlxuICAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAgKi9cbiAgdG88SyBleHRlbmRzIGtleW9mIEFYRm9ybWF0T3B0aW9uc01hcD4oZm9ybWF0dGVyOiBLLCBvcHRpb25zPzogQVhGb3JtYXRPcHRpb25zTWFwW0tdKTogc3RyaW5nIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZm9ybWF0dGVyUmVmID0gdGhpcy5mb3JtYXRTZXJ2aWNlLnJlc29sdmVGb3JtYXR0ZXIoZm9ybWF0dGVyKTtcbiAgICAgIHJldHVybiBmb3JtYXR0ZXJSZWYuZm9ybWF0KHRoaXMuaW5pdGlhbFZhbHVlLCBvcHRpb25zKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gSGFuZGxlIG9yIGxvZyB0aGUgZXJyb3IgYXMgbmVlZGVkXG4gICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIHJldHVybiBTdHJpbmcodGhpcy5pbml0aWFsVmFsdWUpO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2Zvcm1hdC9zcmMvbGliL2Zvcm1hdC50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBBWEZvcm1hdE9wdGlvbnMge1xuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhGb3JtYXRPcHRpb25zTWFwIHtcbiAgICAvLyBpbml0aWFsbHkgZW1wdHksIGJ1dCB3aWxsIGJlIGV4dGVuZGVkIGJ5IG90aGVyIG1vZHVsZXNcbn0iXX0=
|