@acorex/core 7.17.14 → 7.17.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dateTime/lib/datetime-formatter.d.ts +15 -0
  2. package/dateTime/lib/datetime.module.d.ts +4 -1
  3. package/esm2022/config/lib/configs.service.mjs +3 -3
  4. package/esm2022/dateTime/lib/calendar.service.mjs +3 -3
  5. package/esm2022/dateTime/lib/datetime-formatter.mjs +109 -0
  6. package/esm2022/dateTime/lib/datetime.module.mjs +13 -27
  7. package/esm2022/dateTime/lib/datetime.pipe.mjs +3 -3
  8. package/esm2022/events/lib/event.service.mjs +3 -3
  9. package/esm2022/file/index.mjs +3 -1
  10. package/esm2022/file/lib/file-size-formatter.mjs +24 -0
  11. package/esm2022/file/lib/file.module.mjs +22 -0
  12. package/esm2022/file/lib/file.service.mjs +8 -5
  13. package/esm2022/format/index.mjs +2 -2
  14. package/esm2022/format/lib/format.config.mjs +2 -3
  15. package/esm2022/format/lib/format.module.mjs +30 -33
  16. package/esm2022/format/lib/format.pipe.mjs +3 -3
  17. package/esm2022/format/lib/format.service.mjs +30 -14
  18. package/esm2022/format/lib/number-formatter.mjs +16 -0
  19. package/esm2022/format/lib/string-formatter.mjs +26 -0
  20. package/esm2022/image/lib/image.service.mjs +3 -3
  21. package/esm2022/pipes/lib/safe/safe.pipe.mjs +3 -3
  22. package/esm2022/platform/lib/platform.service.mjs +3 -3
  23. package/esm2022/storage/cookie-storage.service.mjs +3 -3
  24. package/esm2022/storage/local-storage.service.mjs +3 -3
  25. package/esm2022/storage/session-storage.service.mjs +3 -3
  26. package/esm2022/translation/lib/translation.module.mjs +4 -4
  27. package/esm2022/translation/lib/translator.pipe.mjs +3 -3
  28. package/esm2022/utils/lib/auto-unsubscribe.mjs +3 -3
  29. package/fesm2022/acorex-core-config.mjs +3 -3
  30. package/fesm2022/acorex-core-dateTime.mjs +109 -35
  31. package/fesm2022/acorex-core-dateTime.mjs.map +1 -1
  32. package/fesm2022/acorex-core-events.mjs +3 -3
  33. package/fesm2022/acorex-core-file.mjs +50 -7
  34. package/fesm2022/acorex-core-file.mjs.map +1 -1
  35. package/fesm2022/acorex-core-format.mjs +59 -48
  36. package/fesm2022/acorex-core-format.mjs.map +1 -1
  37. package/fesm2022/acorex-core-image.mjs +3 -3
  38. package/fesm2022/acorex-core-pipes.mjs +3 -3
  39. package/fesm2022/acorex-core-platform.mjs +3 -3
  40. package/fesm2022/acorex-core-storage.mjs +9 -9
  41. package/fesm2022/acorex-core-translation.mjs +7 -7
  42. package/fesm2022/acorex-core-utils.mjs +3 -3
  43. package/file/index.d.ts +2 -0
  44. package/file/lib/file-size-formatter.d.ts +8 -0
  45. package/file/lib/file.module.d.ts +8 -0
  46. package/format/index.d.ts +1 -1
  47. package/format/lib/format.config.d.ts +1 -3
  48. package/format/lib/format.module.d.ts +7 -0
  49. package/format/lib/format.service.d.ts +10 -3
  50. package/format/lib/number-formatter.d.ts +5 -0
  51. package/format/lib/string-formatter.d.ts +5 -0
  52. package/package.json +3 -3
  53. package/dateTime/lib/datetime-format.plugin.d.ts +0 -9
  54. package/esm2022/dateTime/lib/datetime-format.plugin.mjs +0 -21
  55. package/esm2022/format/lib/number-format.plugin.mjs +0 -16
  56. package/esm2022/format/lib/string-format.plugin.mjs +0 -26
  57. package/format/lib/number-format.plugin.d.ts +0 -5
  58. package/format/lib/string-format.plugin.d.ts +0 -5
@@ -1,28 +1,43 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, Injectable, Inject, inject, Pipe, NgModule } from '@angular/core';
3
-
4
- const AX_FORMAT_PLUGING = new InjectionToken('format.plugin');
2
+ import { Injectable, inject, Pipe, APP_INITIALIZER, NgModule } from '@angular/core';
5
3
 
4
+ class AXFormatterRegistryService {
5
+ constructor() {
6
+ this.plugins = [];
7
+ }
8
+ register(...plugin) {
9
+ this.plugins.push(...plugin.filter(p => !this.plugins.some(c => c.name == p.name)));
10
+ }
11
+ get formatters() {
12
+ return this.plugins;
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatterRegistryService, decorators: [{
18
+ type: Injectable,
19
+ args: [{
20
+ providedIn: 'root'
21
+ }]
22
+ }] });
6
23
  class AXFormatService {
7
- constructor(plugins) {
8
- this.plugins = plugins;
24
+ constructor(pluginRegistry) {
25
+ this.pluginRegistry = pluginRegistry;
9
26
  }
10
27
  format(value, name, ...args) {
11
- const format = this.plugins.find((c) => c.name == name);
12
- if (!name || !format)
28
+ const format = this.pluginRegistry.formatters.find((c) => c.name == name);
29
+ if (!format) {
13
30
  return String(value);
31
+ }
14
32
  return format.format(value, ...args);
15
33
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatService, deps: [{ token: AX_FORMAT_PLUGING }], target: i0.ɵɵFactoryTarget.Injectable }); }
17
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatService, deps: [{ token: AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.Injectable }); }
35
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }
18
36
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatService, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatService, decorators: [{
20
38
  type: Injectable,
21
39
  args: [{ providedIn: 'root' }]
22
- }], ctorParameters: () => [{ type: undefined, decorators: [{
23
- type: Inject,
24
- args: [AX_FORMAT_PLUGING]
25
- }] }] });
40
+ }], ctorParameters: () => [{ type: AXFormatterRegistryService }] });
26
41
 
27
42
  class AXFormatPipe {
28
43
  constructor() {
@@ -32,10 +47,10 @@ class AXFormatPipe {
32
47
  const name = args[0];
33
48
  return this.formatService.format(value, name, ...args.slice(1));
34
49
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
36
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: AXFormatPipe, name: "format" }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
51
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: AXFormatPipe, name: "format" }); }
37
52
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatPipe, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatPipe, decorators: [{
39
54
  type: Pipe,
40
55
  args: [{
41
56
  name: 'format',
@@ -43,7 +58,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
43
58
  }]
44
59
  }] });
45
60
 
46
- class AXNumberFormatPlugin {
61
+ class AXNumberFormatter {
47
62
  get name() {
48
63
  return 'number';
49
64
  }
@@ -59,7 +74,7 @@ class AXNumberFormatPlugin {
59
74
  }
60
75
  }
61
76
 
62
- class AXStringFormatPlugin {
77
+ class AXStringFormatter {
63
78
  get name() {
64
79
  return 'string';
65
80
  }
@@ -86,45 +101,41 @@ class AXStringFormatPlugin {
86
101
  }
87
102
 
88
103
  class AXFormatModule {
89
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
90
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: AXFormatModule, declarations: [AXFormatPipe], exports: [AXFormatPipe] }); }
91
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatModule, providers: [
92
- {
93
- provide: AX_FORMAT_PLUGING,
94
- multi: true,
95
- useClass: AXNumberFormatPlugin,
96
- },
97
- {
98
- provide: AX_FORMAT_PLUGING,
99
- multi: true,
100
- useClass: AXStringFormatPlugin,
101
- },
102
- ] }); }
104
+ static forRoot(config) {
105
+ return {
106
+ ngModule: AXFormatModule,
107
+ providers: [
108
+ {
109
+ provide: APP_INITIALIZER,
110
+ useFactory: (pluginRegistry) => () => {
111
+ if (config?.formatters?.length)
112
+ pluginRegistry.register(...config.formatters);
113
+ },
114
+ deps: [AXFormatterRegistryService],
115
+ multi: true
116
+ }
117
+ ]
118
+ };
119
+ }
120
+ constructor(pluginRegistry) {
121
+ pluginRegistry.register(new AXNumberFormatter(), new AXStringFormatter());
122
+ }
123
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatModule, deps: [{ token: AXFormatterRegistryService }], target: i0.ɵɵFactoryTarget.NgModule }); }
124
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: AXFormatModule, declarations: [AXFormatPipe], exports: [AXFormatPipe] }); }
125
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatModule }); }
103
126
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXFormatModule, decorators: [{
127
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXFormatModule, decorators: [{
105
128
  type: NgModule,
106
129
  args: [{
107
130
  imports: [],
108
131
  exports: [AXFormatPipe],
109
132
  declarations: [AXFormatPipe],
110
- providers: [
111
- {
112
- provide: AX_FORMAT_PLUGING,
113
- multi: true,
114
- useClass: AXNumberFormatPlugin,
115
- },
116
- {
117
- provide: AX_FORMAT_PLUGING,
118
- multi: true,
119
- useClass: AXStringFormatPlugin,
120
- },
121
- ],
122
133
  }]
123
- }] });
134
+ }], ctorParameters: () => [{ type: AXFormatterRegistryService }] });
124
135
 
125
136
  /**
126
137
  * Generated bundle index. Do not edit.
127
138
  */
128
139
 
129
- export { AXFormatModule, AXFormatPipe, AXFormatService, AXNumberFormatPlugin, AX_FORMAT_PLUGING };
140
+ export { AXFormatModule, AXFormatPipe, AXFormatService, AXFormatterRegistryService, AXNumberFormatter };
130
141
  //# sourceMappingURL=acorex-core-format.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core-format.mjs","sources":["../../../../libs/core/format/src/lib/format.config.ts","../../../../libs/core/format/src/lib/format.service.ts","../../../../libs/core/format/src/lib/format.pipe.ts","../../../../libs/core/format/src/lib/number-format.plugin.ts","../../../../libs/core/format/src/lib/string-format.plugin.ts","../../../../libs/core/format/src/lib/format.module.ts","../../../../libs/core/format/src/acorex-core-format.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport interface AXFormatPlugin {\n get name(): string;\n format(value: unknown, ...args: unknown[]): string;\n}\n\nexport const AX_FORMAT_PLUGING = new InjectionToken<AXFormatPlugin>('format.plugin');\n","import { Inject, Injectable } from '@angular/core';\nimport { AXFormatPlugin, AX_FORMAT_PLUGING } from './format.config';\n\n@Injectable({ providedIn: 'root' })\nexport class AXFormatService {\n constructor(\n @Inject(AX_FORMAT_PLUGING)\n private plugins: AXFormatPlugin[],\n ) {}\n\n format(value: unknown, name: string, ...args: unknown[]): string {\n const format = this.plugins.find((c) => c.name == name);\n if (!name || !format) return String(value);\n return format.format(value, ...args);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport { AXFormatService } from './format.service';\n\n@Pipe({\n name: 'format',\n pure: true,\n})\nexport class AXFormatPipe implements PipeTransform {\n private formatService = inject(AXFormatService);\n\n transform(value: unknown, ...args: unknown[]): string {\n const name = args[0] as string;\n return this.formatService.format(value, name, ...args.slice(1));\n }\n}\n","import { AXFormatPlugin } from './format.config';\n\nexport class AXNumberFormatPlugin implements AXFormatPlugin {\n get name(): string {\n return 'number';\n }\n\n format(value: unknown, ...args: unknown[]): string {\n const formatStr: string = (args.length ? args[0] : null) as string;\n if (formatStr?.match(/^.{2}-.{2}$/)) {\n return Number(value).toLocaleString(formatStr);\n }\n if (formatStr?.match(/^D\\d+$/)) {\n return String(value).padStart(Number(formatStr.slice(1)), '0');\n }\n return String(value);\n }\n}\n","import { AXFormatPlugin } from './format.config';\n\nexport class AXStringFormatPlugin implements AXFormatPlugin {\n get name(): string {\n return 'string';\n }\n\n format(value: unknown, ...args: unknown[]): string {\n if (typeof value != 'string') return String(value);\n const data: string = (args.length ? args[0] : null) as string;\n const result = value.replace(/{{\\s*([^}]+)\\s*}}/g, (match, variable) => {\n // if (variable?.match(/^\\w+:\\w+:\\w+$/g)) {\n //\n // const formatData = data[variable[0]];\n // const formatType = data[variable[1]];\n // const formatArg = data[variable[2]];\n // const value = this.formatService.format(formatData, formatType, formatArg);\n // return value ?? match;\n // }\n // else {\n const value = data[variable] as string;\n return value ?? match;\n // }\n });\n return result;\n }\n\n // private format(inputString: string, data: { [key: string]: string }): string {\n // return inputString.replace(/{{\\s*([^}]+)\\s*}}/g, (match, variable) => {\n // const value = data[variable];\n // return value !== undefined ? value : match;\n // });\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { AX_FORMAT_PLUGING } from './format.config';\nimport { AXFormatPipe } from './format.pipe';\nimport { AXNumberFormatPlugin } from './number-format.plugin';\nimport { AXStringFormatPlugin } from './string-format.plugin';\n\n@NgModule({\n imports: [],\n exports: [AXFormatPipe],\n declarations: [AXFormatPipe],\n providers: [\n {\n provide: AX_FORMAT_PLUGING,\n multi: true,\n useClass: AXNumberFormatPlugin,\n },\n {\n provide: AX_FORMAT_PLUGING,\n multi: true,\n useClass: AXStringFormatPlugin,\n },\n ],\n})\nexport class AXFormatModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-core-format.mjs","sources":["../../../../libs/core/format/src/lib/format.service.ts","../../../../libs/core/format/src/lib/format.pipe.ts","../../../../libs/core/format/src/lib/number-formatter.ts","../../../../libs/core/format/src/lib/string-formatter.ts","../../../../libs/core/format/src/lib/format.module.ts","../../../../libs/core/format/src/acorex-core-format.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { AXFormatter } from './format.config';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AXFormatterRegistryService {\n private plugins: AXFormatter[] = [];\n\n\n register(...plugin: AXFormatter[]) {\n this.plugins.push(...plugin.filter(p => !this.plugins.some(c => c.name == p.name)));\n }\n\n get formatters(): AXFormatter[] {\n return this.plugins;\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXFormatService {\n constructor(\n private pluginRegistry: AXFormatterRegistryService\n ) { }\n\n format(value: unknown, name: string, ...args: unknown[]): string {\n const format = this.pluginRegistry.formatters.find((c) => c.name == name);\n if (!format) {\n return String(value);\n }\n return format.format(value, ...args);\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport { AXFormatService } from './format.service';\n\n@Pipe({\n name: 'format',\n pure: true,\n})\nexport class AXFormatPipe implements PipeTransform {\n private formatService = inject(AXFormatService);\n\n transform(value: unknown, ...args: unknown[]): string {\n const name = args[0] as string;\n return this.formatService.format(value, name, ...args.slice(1));\n }\n}\n","import { AXFormatter } from './format.config';\n\nexport class AXNumberFormatter implements AXFormatter {\n get name(): string {\n return 'number';\n }\n\n format(value: unknown, ...args: unknown[]): string {\n const formatStr: string = (args.length ? args[0] : null) as string;\n if (formatStr?.match(/^.{2}-.{2}$/)) {\n return Number(value).toLocaleString(formatStr);\n }\n if (formatStr?.match(/^D\\d+$/)) {\n return String(value).padStart(Number(formatStr.slice(1)), '0');\n }\n return String(value);\n }\n}\n","import { AXFormatter } from './format.config';\n\nexport class AXStringFormatter implements AXFormatter {\n get name(): string {\n return 'string';\n }\n\n format(value: unknown, ...args: unknown[]): string {\n if (typeof value != 'string') return String(value);\n const data: string = (args.length ? args[0] : null) as string;\n const result = value.replace(/{{\\s*([^}]+)\\s*}}/g, (match, variable) => {\n // if (variable?.match(/^\\w+:\\w+:\\w+$/g)) {\n //\n // const formatData = data[variable[0]];\n // const formatType = data[variable[1]];\n // const formatArg = data[variable[2]];\n // const value = this.formatService.format(formatData, formatType, formatArg);\n // return value ?? match;\n // }\n // else {\n const value = data[variable] as string;\n return value ?? match;\n // }\n });\n return result;\n }\n\n // private format(inputString: string, data: { [key: string]: string }): string {\n // return inputString.replace(/{{\\s*([^}]+)\\s*}}/g, (match, variable) => {\n // const value = data[variable];\n // return value !== undefined ? value : match;\n // });\n // }\n}\n","import { APP_INITIALIZER, ModuleWithProviders, NgModule } from '@angular/core';\nimport { AXFormatPipe } from './format.pipe';\nimport { AXNumberFormatter } from './number-formatter';\nimport { AXStringFormatter } from './string-formatter';\nimport { AXFormatterRegistryService } from './format.service';\nimport { AXFormatter } from './format.config';\n\n\n@NgModule({\n imports: [],\n exports: [AXFormatPipe],\n declarations: [AXFormatPipe],\n})\nexport class AXFormatModule {\n\n static forRoot(config?: { formatters?: AXFormatter[] }): ModuleWithProviders<AXFormatModule> {\n return {\n ngModule: AXFormatModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n useFactory: (pluginRegistry: AXFormatterRegistryService) => () => {\n if (config?.formatters?.length)\n pluginRegistry.register(...config.formatters);\n },\n deps: [AXFormatterRegistryService],\n multi: true\n }\n ]\n };\n }\n\n constructor(pluginRegistry: AXFormatterRegistryService) {\n pluginRegistry.register(new AXNumberFormatter(), new AXStringFormatter())\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AXFormatterRegistryService"],"mappings":"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"}
@@ -35,10 +35,10 @@ class AXImageService {
35
35
  canvas.getContext('2d').drawImage(image, 0, 0, width, height);
36
36
  return new Promise((resolve) => canvas.toBlob(resolve, options.type, options.quality));
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXImageService }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXImageService }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXImageService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXImageService, decorators: [{
42
42
  type: Injectable
43
43
  }] });
44
44
 
@@ -24,10 +24,10 @@ class AXSafePipe {
24
24
  throw new Error(`Invalid safe type specified: ${type}`);
25
25
  }
26
26
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXSafePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
28
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: AXSafePipe, isStandalone: true, name: "safe" }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXSafePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
28
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: AXSafePipe, isStandalone: true, name: "safe" }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXSafePipe, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXSafePipe, decorators: [{
31
31
  type: Pipe,
32
32
  args: [{
33
33
  name: 'safe',
@@ -209,10 +209,10 @@ class AXPlatform {
209
209
  // init functions
210
210
  this._setFullHeightRatio();
211
211
  }
212
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXPlatform, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
213
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXPlatform, providedIn: 'root' }); }
212
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXPlatform, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
213
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXPlatform, providedIn: 'root' }); }
214
214
  }
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXPlatform, decorators: [{
215
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXPlatform, decorators: [{
216
216
  type: Injectable,
217
217
  args: [{
218
218
  providedIn: 'root',
@@ -181,10 +181,10 @@ class AXCookieStorageService {
181
181
  }
182
182
  }
183
183
  }
184
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXCookieStorageService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXCookieStorageService }); }
184
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXCookieStorageService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXCookieStorageService }); }
186
186
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXCookieStorageService, decorators: [{
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXCookieStorageService, decorators: [{
188
188
  type: Injectable
189
189
  }], ctorParameters: () => [{ type: Document, decorators: [{
190
190
  type: Inject,
@@ -207,10 +207,10 @@ class AXLocalStorageService {
207
207
  removeItem(key) {
208
208
  return localStorage.removeItem(key);
209
209
  }
210
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXLocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
211
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXLocalStorageService }); }
210
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXLocalStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
211
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXLocalStorageService }); }
212
212
  }
213
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXLocalStorageService, decorators: [{
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXLocalStorageService, decorators: [{
214
214
  type: Injectable
215
215
  }] });
216
216
 
@@ -227,10 +227,10 @@ class AXSessionStorageService {
227
227
  removeItem(key) {
228
228
  return sessionStorage.removeItem(key);
229
229
  }
230
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXSessionStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
231
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXSessionStorageService }); }
230
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXSessionStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
231
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXSessionStorageService }); }
232
232
  }
233
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXSessionStorageService, decorators: [{
233
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXSessionStorageService, decorators: [{
234
234
  type: Injectable
235
235
  }] });
236
236
 
@@ -47,20 +47,20 @@ class AXTranslatorPipe {
47
47
  transform(value, arg1, arg2) {
48
48
  return AXTranslator.get(value, arg1, arg2);
49
49
  }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
51
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: AXTranslatorPipe, name: "trans" }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
51
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: AXTranslatorPipe, name: "trans" }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXTranslatorPipe, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXTranslatorPipe, decorators: [{
54
54
  type: Pipe,
55
55
  args: [{ name: 'trans', pure: true }]
56
56
  }] });
57
57
 
58
58
  class AXTranslationModule {
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXTranslationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: AXTranslationModule, declarations: [AXTranslatorPipe], exports: [AXTranslatorPipe] }); }
61
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXTranslationModule }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXTranslationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.6", ngImport: i0, type: AXTranslationModule, declarations: [AXTranslatorPipe], exports: [AXTranslatorPipe] }); }
61
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXTranslationModule }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXTranslationModule, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXTranslationModule, decorators: [{
64
64
  type: NgModule,
65
65
  args: [{
66
66
  imports: [],
@@ -30,10 +30,10 @@ class AXUnsubscriber {
30
30
  ngOnDestroy() {
31
31
  this.unsubscribe();
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXUnsubscriber, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
34
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXUnsubscriber }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXUnsubscriber, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
34
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXUnsubscriber }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXUnsubscriber, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: AXUnsubscriber, decorators: [{
37
37
  type: Injectable
38
38
  }] });
39
39
 
package/file/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
+ export * from './lib/file-size-formatter';
1
2
  export * from './lib/file-download-ref.class';
2
3
  export * from './lib/file-download-result.class';
3
4
  export * from './lib/file-upload-ref.class';
4
5
  export * from './lib/file.service';
6
+ export * from './lib/file.module';
@@ -0,0 +1,8 @@
1
+ import { AXFormatter } from '@acorex/core/format';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXFileSizeFormatter implements AXFormatter {
4
+ get name(): string;
5
+ format(value: unknown, ...args: unknown[]): string;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFileSizeFormatter, never>;
7
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXFileSizeFormatter>;
8
+ }
@@ -0,0 +1,8 @@
1
+ import { AXFormatterRegistryService } from '@acorex/core/format';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXFileModule {
4
+ constructor(service: AXFormatterRegistryService);
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFileModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXFileModule, never, never, never>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXFileModule>;
8
+ }
package/format/index.d.ts CHANGED
@@ -2,4 +2,4 @@ export * from './lib/format.config';
2
2
  export * from './lib/format.module';
3
3
  export * from './lib/format.pipe';
4
4
  export * from './lib/format.service';
5
- export * from './lib/number-format.plugin';
5
+ export * from './lib/number-formatter';
@@ -1,6 +1,4 @@
1
- import { InjectionToken } from '@angular/core';
2
- export interface AXFormatPlugin {
1
+ export interface AXFormatter {
3
2
  get name(): string;
4
3
  format(value: unknown, ...args: unknown[]): string;
5
4
  }
6
- export declare const AX_FORMAT_PLUGING: InjectionToken<AXFormatPlugin>;
@@ -1,6 +1,13 @@
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import { AXFormatterRegistryService } from './format.service';
3
+ import { AXFormatter } from './format.config';
1
4
  import * as i0 from "@angular/core";
2
5
  import * as i1 from "./format.pipe";
3
6
  export declare class AXFormatModule {
7
+ static forRoot(config?: {
8
+ formatters?: AXFormatter[];
9
+ }): ModuleWithProviders<AXFormatModule>;
10
+ constructor(pluginRegistry: AXFormatterRegistryService);
4
11
  static ɵfac: i0.ɵɵFactoryDeclaration<AXFormatModule, never>;
5
12
  static ɵmod: i0.ɵɵNgModuleDeclaration<AXFormatModule, [typeof i1.AXFormatPipe], never, [typeof i1.AXFormatPipe]>;
6
13
  static ɵinj: i0.ɵɵInjectorDeclaration<AXFormatModule>;
@@ -1,8 +1,15 @@
1
- import { AXFormatPlugin } from './format.config';
1
+ import { AXFormatter } from './format.config';
2
2
  import * as i0 from "@angular/core";
3
- export declare class AXFormatService {
3
+ export declare class AXFormatterRegistryService {
4
4
  private plugins;
5
- constructor(plugins: AXFormatPlugin[]);
5
+ register(...plugin: AXFormatter[]): void;
6
+ get formatters(): AXFormatter[];
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXFormatterRegistryService, never>;
8
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXFormatterRegistryService>;
9
+ }
10
+ export declare class AXFormatService {
11
+ private pluginRegistry;
12
+ constructor(pluginRegistry: AXFormatterRegistryService);
6
13
  format(value: unknown, name: string, ...args: unknown[]): string;
7
14
  static ɵfac: i0.ɵɵFactoryDeclaration<AXFormatService, never>;
8
15
  static ɵprov: i0.ɵɵInjectableDeclaration<AXFormatService>;
@@ -0,0 +1,5 @@
1
+ import { AXFormatter } from './format.config';
2
+ export declare class AXNumberFormatter implements AXFormatter {
3
+ get name(): string;
4
+ format(value: unknown, ...args: unknown[]): string;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { AXFormatter } from './format.config';
2
+ export declare class AXStringFormatter implements AXFormatter {
3
+ get name(): string;
4
+ format(value: unknown, ...args: unknown[]): string;
5
+ }
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@acorex/core",
3
- "version": "7.17.14",
3
+ "version": "7.17.16",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
- "@angular/common": ">=17.0.2",
7
- "@angular/core": ">=17.0.2",
6
+ "@angular/common": ">=17.0.3",
7
+ "@angular/core": ">=17.0.3",
8
8
  "lodash-es": ">=4.17.21",
9
9
  "tinycolor2": ">=1.6.0",
10
10
  "tinygradient-es": ">=1.0.0"
@@ -1,9 +0,0 @@
1
- import { AXFormatPlugin } from '@acorex/core/format';
2
- import * as i0 from "@angular/core";
3
- export declare class AXDateTimeFormatPlugin implements AXFormatPlugin {
4
- private calendarService;
5
- get name(): string;
6
- format(value: unknown, ...args: unknown[]): string;
7
- static ɵfac: i0.ɵɵFactoryDeclaration<AXDateTimeFormatPlugin, never>;
8
- static ɵprov: i0.ɵɵInjectableDeclaration<AXDateTimeFormatPlugin>;
9
- }
@@ -1,21 +0,0 @@
1
- import { Injectable, inject } from '@angular/core';
2
- import { AXCalendarService } from './calendar.service';
3
- import * as i0 from "@angular/core";
4
- export class AXDateTimeFormatPlugin {
5
- constructor() {
6
- this.calendarService = inject(AXCalendarService);
7
- }
8
- get name() {
9
- return 'datetime';
10
- }
11
- format(value, ...args) {
12
- const formatStr = (args.length ? args[0] : null);
13
- return this.calendarService.create(value).format(formatStr);
14
- }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXDateTimeFormatPlugin, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXDateTimeFormatPlugin }); }
17
- }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: AXDateTimeFormatPlugin, decorators: [{
19
- type: Injectable
20
- }] });
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUtZm9ybWF0LnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9kYXRlVGltZS9zcmMvbGliL2RhdGV0aW1lLWZvcm1hdC5wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBR3ZELE1BQU0sT0FBTyxzQkFBc0I7SUFEbkM7UUFFVSxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0tBVXJEO0lBUkMsSUFBSSxJQUFJO1FBQ04sT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFjLEVBQUUsR0FBRyxJQUFlO1FBQ3ZDLE1BQU0sU0FBUyxHQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQVcsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLEtBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0RSxDQUFDOzhHQVZVLHNCQUFzQjtrSEFBdEIsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQURsQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhGb3JtYXRQbHVnaW4gfSBmcm9tICdAYWNvcmV4L2NvcmUvZm9ybWF0JztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDYWxlbmRhclNlcnZpY2UgfSBmcm9tICcuL2NhbGVuZGFyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhEYXRlVGltZUZvcm1hdFBsdWdpbiBpbXBsZW1lbnRzIEFYRm9ybWF0UGx1Z2luIHtcbiAgcHJpdmF0ZSBjYWxlbmRhclNlcnZpY2UgPSBpbmplY3QoQVhDYWxlbmRhclNlcnZpY2UpO1xuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkYXRldGltZSc7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IHVua25vd24sIC4uLmFyZ3M6IHVua25vd25bXSk6IHN0cmluZyB7XG4gICAgY29uc3QgZm9ybWF0U3RyOiBzdHJpbmcgPSAoYXJncy5sZW5ndGggPyBhcmdzWzBdIDogbnVsbCkgYXMgc3RyaW5nO1xuICAgIHJldHVybiB0aGlzLmNhbGVuZGFyU2VydmljZS5jcmVhdGUodmFsdWUgYXMgRGF0ZSkuZm9ybWF0KGZvcm1hdFN0cik7XG4gIH1cbn1cbiJdfQ==
@@ -1,16 +0,0 @@
1
- export class AXNumberFormatPlugin {
2
- get name() {
3
- return 'number';
4
- }
5
- format(value, ...args) {
6
- const formatStr = (args.length ? args[0] : null);
7
- if (formatStr?.match(/^.{2}-.{2}$/)) {
8
- return Number(value).toLocaleString(formatStr);
9
- }
10
- if (formatStr?.match(/^D\d+$/)) {
11
- return String(value).padStart(Number(formatStr.slice(1)), '0');
12
- }
13
- return String(value);
14
- }
15
- }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZvcm1hdC5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZm9ybWF0L3NyYy9saWIvbnVtYmVyLWZvcm1hdC5wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWMsRUFBRSxHQUFHLElBQWU7UUFDdkMsTUFBTSxTQUFTLEdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBVyxDQUFDO1FBQ25FLElBQUksU0FBUyxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNuQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDaEQ7UUFDRCxJQUFJLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDOUIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDaEU7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdFBsdWdpbiB9IGZyb20gJy4vZm9ybWF0LmNvbmZpZyc7XG5cbmV4cG9ydCBjbGFzcyBBWE51bWJlckZvcm1hdFBsdWdpbiBpbXBsZW1lbnRzIEFYRm9ybWF0UGx1Z2luIHtcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ251bWJlcic7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IHVua25vd24sIC4uLmFyZ3M6IHVua25vd25bXSk6IHN0cmluZyB7XG4gICAgY29uc3QgZm9ybWF0U3RyOiBzdHJpbmcgPSAoYXJncy5sZW5ndGggPyBhcmdzWzBdIDogbnVsbCkgYXMgc3RyaW5nO1xuICAgIGlmIChmb3JtYXRTdHI/Lm1hdGNoKC9eLnsyfS0uezJ9JC8pKSB7XG4gICAgICByZXR1cm4gTnVtYmVyKHZhbHVlKS50b0xvY2FsZVN0cmluZyhmb3JtYXRTdHIpO1xuICAgIH1cbiAgICBpZiAoZm9ybWF0U3RyPy5tYXRjaCgvXkRcXGQrJC8pKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKS5wYWRTdGFydChOdW1iZXIoZm9ybWF0U3RyLnNsaWNlKDEpKSwgJzAnKTtcbiAgICB9XG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,26 +0,0 @@
1
- export class AXStringFormatPlugin {
2
- get name() {
3
- return 'string';
4
- }
5
- format(value, ...args) {
6
- if (typeof value != 'string')
7
- return String(value);
8
- const data = (args.length ? args[0] : null);
9
- const result = value.replace(/{{\s*([^}]+)\s*}}/g, (match, variable) => {
10
- // if (variable?.match(/^\w+:\w+:\w+$/g)) {
11
- //
12
- // const formatData = data[variable[0]];
13
- // const formatType = data[variable[1]];
14
- // const formatArg = data[variable[2]];
15
- // const value = this.formatService.format(formatData, formatType, formatArg);
16
- // return value ?? match;
17
- // }
18
- // else {
19
- const value = data[variable];
20
- return value ?? match;
21
- // }
22
- });
23
- return result;
24
- }
25
- }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWZvcm1hdC5wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZm9ybWF0L3NyYy9saWIvc3RyaW5nLWZvcm1hdC5wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWMsRUFBRSxHQUFHLElBQWU7UUFDdkMsSUFBSSxPQUFPLEtBQUssSUFBSSxRQUFRO1lBQUUsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsTUFBTSxJQUFJLEdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBVyxDQUFDO1FBQzlELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDckUsMkNBQTJDO1lBQzNDLEVBQUU7WUFDRiw0Q0FBNEM7WUFDNUMsNENBQTRDO1lBQzVDLDJDQUEyQztZQUMzQyxrRkFBa0Y7WUFDbEYsNkJBQTZCO1lBQzdCLElBQUk7WUFDSixTQUFTO1lBQ1QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBVyxDQUFDO1lBQ3ZDLE9BQU8sS0FBSyxJQUFJLEtBQUssQ0FBQztZQUN0QixJQUFJO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBUUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdFBsdWdpbiB9IGZyb20gJy4vZm9ybWF0LmNvbmZpZyc7XG5cbmV4cG9ydCBjbGFzcyBBWFN0cmluZ0Zvcm1hdFBsdWdpbiBpbXBsZW1lbnRzIEFYRm9ybWF0UGx1Z2luIHtcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3N0cmluZyc7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IHVua25vd24sIC4uLmFyZ3M6IHVua25vd25bXSk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgY29uc3QgZGF0YTogc3RyaW5nID0gKGFyZ3MubGVuZ3RoID8gYXJnc1swXSA6IG51bGwpIGFzIHN0cmluZztcbiAgICBjb25zdCByZXN1bHQgPSB2YWx1ZS5yZXBsYWNlKC97e1xccyooW159XSspXFxzKn19L2csIChtYXRjaCwgdmFyaWFibGUpID0+IHtcbiAgICAgIC8vIGlmICh2YXJpYWJsZT8ubWF0Y2goL15cXHcrOlxcdys6XFx3KyQvZykpIHtcbiAgICAgIC8vXG4gICAgICAvLyAgICAgY29uc3QgZm9ybWF0RGF0YSA9IGRhdGFbdmFyaWFibGVbMF1dO1xuICAgICAgLy8gICAgIGNvbnN0IGZvcm1hdFR5cGUgPSBkYXRhW3ZhcmlhYmxlWzFdXTtcbiAgICAgIC8vICAgICBjb25zdCBmb3JtYXRBcmcgPSBkYXRhW3ZhcmlhYmxlWzJdXTtcbiAgICAgIC8vICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZm9ybWF0U2VydmljZS5mb3JtYXQoZm9ybWF0RGF0YSwgZm9ybWF0VHlwZSwgZm9ybWF0QXJnKTtcbiAgICAgIC8vICAgICByZXR1cm4gdmFsdWUgPz8gbWF0Y2g7XG4gICAgICAvLyB9XG4gICAgICAvLyBlbHNlIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gZGF0YVt2YXJpYWJsZV0gYXMgc3RyaW5nO1xuICAgICAgcmV0dXJuIHZhbHVlID8/IG1hdGNoO1xuICAgICAgLy8gfVxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvLyBwcml2YXRlIGZvcm1hdChpbnB1dFN0cmluZzogc3RyaW5nLCBkYXRhOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KTogc3RyaW5nIHtcbiAgLy8gICAgIHJldHVybiBpbnB1dFN0cmluZy5yZXBsYWNlKC97e1xccyooW159XSspXFxzKn19L2csIChtYXRjaCwgdmFyaWFibGUpID0+IHtcbiAgLy8gICAgICAgY29uc3QgdmFsdWUgPSBkYXRhW3ZhcmlhYmxlXTtcbiAgLy8gICAgICAgcmV0dXJuIHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IG1hdGNoO1xuICAvLyAgICAgfSk7XG4gIC8vICAgfVxufVxuIl19
@@ -1,5 +0,0 @@
1
- import { AXFormatPlugin } from './format.config';
2
- export declare class AXNumberFormatPlugin implements AXFormatPlugin {
3
- get name(): string;
4
- format(value: unknown, ...args: unknown[]): string;
5
- }
@@ -1,5 +0,0 @@
1
- import { AXFormatPlugin } from './format.config';
2
- export declare class AXStringFormatPlugin implements AXFormatPlugin {
3
- get name(): string;
4
- format(value: unknown, ...args: unknown[]): string;
5
- }