@acorex/core 20.2.38 → 20.2.39
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { inject, Injector, Injectable, TemplateRef, ViewContainerRef, Directive, Pipe, NgModule } from '@angular/core';
|
|
3
|
-
import { Subject, filter,
|
|
3
|
+
import { Subject, interval, shareReplay, filter, merge, startWith, map } from 'rxjs';
|
|
4
4
|
import { AXEventService, AXSystemEvents } from '@acorex/core/events';
|
|
5
5
|
import { defaults, padStart, isInteger, get } from 'lodash-es';
|
|
6
6
|
|
|
@@ -136,10 +136,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImpor
|
|
|
136
136
|
}]
|
|
137
137
|
}] });
|
|
138
138
|
|
|
139
|
+
// Shared interval streams cache to avoid creating multiple intervals for the same duration
|
|
140
|
+
const intervalCache = new Map();
|
|
141
|
+
function getSharedInterval(ms) {
|
|
142
|
+
let cached = intervalCache.get(ms);
|
|
143
|
+
if (!cached) {
|
|
144
|
+
cached = interval(ms).pipe(shareReplay({ bufferSize: 1, refCount: true }));
|
|
145
|
+
intervalCache.set(ms, cached);
|
|
146
|
+
}
|
|
147
|
+
return cached;
|
|
148
|
+
}
|
|
139
149
|
class AXFormatPipe {
|
|
140
150
|
constructor() {
|
|
141
151
|
this.formatService = inject(AXFormatService);
|
|
142
152
|
this.eventService = inject(AXEventService);
|
|
153
|
+
this.formatterRegistry = inject(AXFormatterRegistryService);
|
|
143
154
|
this.triggers = [...Object.values(AXSystemEvents).map((event) => event)];
|
|
144
155
|
}
|
|
145
156
|
/**
|
|
@@ -151,15 +162,20 @@ class AXFormatPipe {
|
|
|
151
162
|
* @returns Observable<string> - Emits the formatted string and updates on system events.
|
|
152
163
|
*/
|
|
153
164
|
transform(value, name, options) {
|
|
154
|
-
//
|
|
155
|
-
const
|
|
156
|
-
//
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
165
|
+
// Get the formatter to check if it needs periodic updates
|
|
166
|
+
const formatter = this.formatterRegistry.get(name);
|
|
167
|
+
// System events stream (language changes, etc.)
|
|
168
|
+
const systemEvents$ = this.eventService.onEvent.pipe(filter((event) => this.triggers.includes(event.type)));
|
|
169
|
+
// If formatter has updateInterval, create a periodic update stream
|
|
170
|
+
if (formatter.updateInterval) {
|
|
171
|
+
// Use shared interval to optimize performance when multiple instances exist
|
|
172
|
+
const periodicUpdates$ = getSharedInterval(formatter.updateInterval);
|
|
173
|
+
// Merge system events and periodic updates
|
|
174
|
+
return merge(systemEvents$, periodicUpdates$).pipe(startWith(null), // Emit initial value immediately
|
|
175
|
+
map(() => this.formatService.format(value, name, options)));
|
|
176
|
+
}
|
|
177
|
+
// For non-periodic formatters, use the original behavior
|
|
178
|
+
return systemEvents$.pipe(startWith(null), map(() => this.formatService.format(value, name, options)));
|
|
163
179
|
}
|
|
164
180
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
165
181
|
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: AXFormatPipe, isStandalone: true, name: "format" }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-core-format.mjs","sources":["../tmp-esm2022/format/lib/format.config.js","../tmp-esm2022/format/lib/format.service.js","../tmp-esm2022/format/lib/format.directive.js","../tmp-esm2022/format/lib/format.pipe.js","../tmp-esm2022/format/lib/formatters/number.formatter.js","../tmp-esm2022/format/lib/formatters/string.formatter.js","../tmp-esm2022/format/lib/format.module.js","../tmp-esm2022/format/acorex-core-format.js"],"sourcesContent":["export class AXFormatter {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQWdCLFdBQVc7Q0FRaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdE9wdGlvbnMgfSBmcm9tICcuL2Zvcm1hdC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWEZvcm1hdHRlciB7XG4gIGFic3RyYWN0IGdldCBuYW1lKCk6IHN0cmluZztcblxuICAvKipcbiAgICogRm9ybWF0cyBhIHZhbHVlIHdpdGggb3B0aW9uYWwgb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCB2YWx1ZS5cbiAgICovXG4gIGFic3RyYWN0IGZvcm1hdCh2YWx1ZTogdW5rbm93biwgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9ucyB8IHN0cmluZyk6IHN0cmluZztcbn1cbiJdfQ==","import { inject, Injectable, Injector } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXFormatterRegistryService {\n constructor() {\n this.plugins = [];\n this.injector = inject(Injector);\n }\n register(...plugins) {\n plugins.forEach((t) => {\n const childInjector = Injector.create({\n providers: [{ provide: t, useClass: t, deps: [] }],\n parent: this.injector,\n });\n const v = childInjector.get(t);\n if (v && !this.plugins.some((p) => p.name == v.name)) {\n this.plugins.push(v);\n }\n });\n }\n get formatters() {\n return this.plugins;\n }\n /**\n * Resolves a formatter instance by its name.\n *\n * @param name - The formatter name.\n * @returns AXFormatter - The resolved formatter instance.\n * @throws Error when no formatter with the given name exists.\n */\n get(name) {\n const formatter = this.formatters.find((c) => c.name == name);\n if (!formatter) {\n throw new Error(`Formatter not found: ${name}`);\n }\n return formatter;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\nexport class AXFormatService {\n constructor() {\n this.pluginRegistry = inject(AXFormatterRegistryService);\n this.renderSubject = new Subject();\n // Observable that other services/components can subscribe to\n this.onRender = this.renderSubject.asObservable();\n }\n /**\n * Triggers a render event for listeners that care about formatting updates.\n *\n * @returns void - Emits on the onRender observable.\n */\n render() {\n this.renderSubject.next();\n }\n // Implementation of the format method\n /**\n * Formats a value according to the formatter's rules.\n *\n * @param value - The value to format.\n * @param options - Optional options bag or string, depending on the formatter.\n * @returns string - The formatted result.\n */\n format(value, formatter, options) {\n if (typeof formatter === 'string') {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(value, options);\n }\n else {\n return new AXFormatFluent(this, this.pluginRegistry, value);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\nclass AXFormatFluent {\n constructor(formatService, pluginRegistry, initialValue) {\n this.formatService = formatService;\n this.pluginRegistry = pluginRegistry;\n this.initialValue = initialValue;\n }\n /**\n * Formats the value using the specified formatter and options.\n * @param formatter The name of the formatter to use.\n * @param options The options to pass to the formatter.\n * @returns The formatted string.\n */\n to(formatter, options) {\n try {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(this.initialValue, options);\n }\n catch (error) {\n return String(this.initialValue);\n }\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL2Zvcm1hdC9zcmMvbGliL2Zvcm1hdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU8vQixNQUFNLE9BQU8sMEJBQTBCO0lBSHZDO1FBSVUsWUFBTyxHQUFrQixFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztLQWtDckM7SUFoQ0MsUUFBUSxDQUFDLEdBQUcsT0FBa0M7UUFDNUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3BDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQ3RCLENBQUMsQ0FBQztZQUNILE1BQU0sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsR0FBRyxDQUFDLElBQVk7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOzhHQXBDVSwwQkFBMEI7a0hBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COztBQXlDRCxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQUVVLG1CQUFjLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFFcEQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTVDLDZEQUE2RDtRQUM3RCxhQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztLQXFEOUM7SUFuREM7Ozs7T0FJRztJQUVILE1BQU07UUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUEwQkQsc0NBQXNDO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxLQUFjLEVBQUUsU0FBa0IsRUFBRSxPQUFhO1FBQ3RELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNILENBQUM7OEdBMURVLGVBQWU7a0hBQWYsZUFBZSxjQURGLE1BQU07OzJGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7QUE4RGxDLE1BQU0sY0FBYztJQUNsQixZQUNVLGFBQThCLEVBQzlCLGNBQTBDLEVBQzFDLFlBQXFCO1FBRnJCLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBNEI7UUFDMUMsaUJBQVksR0FBWixZQUFZLENBQVM7SUFDNUIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsRUFBRSxDQUFxQyxTQUFZLEVBQUUsT0FBK0I7UUFDbEYsSUFBSSxDQUFDO1lBQ0gsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXQuY29uZmlnJztcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9uc01hcCB9IGZyb20gJy4vZm9ybWF0LnR5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwbHVnaW5zOiBBWEZvcm1hdHRlcltdID0gW107XG5cbiAgcHJpdmF0ZSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcmVnaXN0ZXIoLi4ucGx1Z2luczogKG5ldyAoKSA9PiBBWEZvcm1hdHRlcilbXSkge1xuICAgIHBsdWdpbnMuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgY29uc3QgY2hpbGRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogdCwgdXNlQ2xhc3M6IHQsIGRlcHM6IFtdIH1dLFxuICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHYgPSBjaGlsZEluamVjdG9yLmdldCh0KTtcblxuICAgICAgaWYgKHYgJiYgIXRoaXMucGx1Z2lucy5zb21lKChwKSA9PiBwLm5hbWUgPT0gdi5uYW1lKSkge1xuICAgICAgICB0aGlzLnBsdWdpbnMucHVzaCh2KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCBmb3JtYXR0ZXJzKCk6IEFYRm9ybWF0dGVyW10ge1xuICAgIHJldHVybiB0aGlzLnBsdWdpbnM7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBmb3JtYXR0ZXIgaW5zdGFuY2UgYnkgaXRzIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIGZvcm1hdHRlciBuYW1lLlxuICAgKiBAcmV0dXJucyBBWEZvcm1hdHRlciAtIFRoZSByZXNvbHZlZCBmb3JtYXR0ZXIgaW5zdGFuY2UuXG4gICAqIEB0aHJvd3MgRXJyb3Igd2hlbiBubyBmb3JtYXR0ZXIgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMuXG4gICAqL1xuICBnZXQobmFtZTogc3RyaW5nKTogQVhGb3JtYXR0ZXIge1xuICAgIGNvbnN0IGZvcm1hdHRlciA9IHRoaXMuZm9ybWF0dGVycy5maW5kKChjKSA9PiBjLm5hbWUgPT0gbmFtZSk7XG4gICAgaWYgKCFmb3JtYXR0ZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRm9ybWF0dGVyIG5vdCBmb3VuZDogJHtuYW1lfWApO1xuICAgIH1cbiAgICByZXR1cm4gZm9ybWF0dGVyO1xuICB9XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhGb3JtYXRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwbHVnaW5SZWdpc3RyeSA9IGluamVjdChBWEZvcm1hdHRlclJlZ2lzdHJ5U2VydmljZSk7XG5cbiAgcHJpdmF0ZSByZW5kZXJTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvLyBPYnNlcnZhYmxlIHRoYXQgb3RoZXIgc2VydmljZXMvY29tcG9uZW50cyBjYW4gc3Vic2NyaWJlIHRvXG4gIG9uUmVuZGVyID0gdGhpcy5yZW5kZXJTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIC8qKlxuICAgKiBUcmlnZ2VycyBhIHJlbmRlciBldmVudCBmb3IgbGlzdGVuZXJzIHRoYXQgY2FyZSBhYm91dCBmb3JtYXR0aW5nIHVwZGF0ZXMuXG4gICAqXG4gICAqIEByZXR1cm5zIHZvaWQgLSBFbWl0cyBvbiB0aGUgb25SZW5kZXIgb2JzZXJ2YWJsZS5cbiAgICovXG5cbiAgcmVuZGVyKCkge1xuICAgIHRoaXMucmVuZGVyU3ViamVjdC5uZXh0KCk7XG4gIH1cblxuICAvL1RPRE9cbiAgLy8gT3ZlcmxvYWQgZm9yIHRyYWRpdGlvbmFsIGZvcm1hdHRpbmdcblxuICAvKipcbiAgICogRm9ybWF0cyBhIHZhbHVlIHVzaW5nIHRoZSBzcGVjaWZpZWQgZm9ybWF0dGVyIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byBmb3JtYXQuXG4gICAqIEBwYXJhbSBmb3JtYXR0ZXIgLSBUaGUgZm9ybWF0dGVyIG5hbWUgdG8gdXNlIChlLmcuLCAnbnVtYmVyJywgJ3N0cmluZycpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbmFsIG9wdGlvbnMgc3BlY2lmaWMgdG8gdGhlIGZvcm1hdHRlci5cbiAgICogQHJldHVybnMgc3RyaW5nIC0gVGhlIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAqL1xuXG4gIGZvcm1hdCh2YWx1ZTogdW5rbm93biwgZm9ybWF0dGVyOiBzdHJpbmcsIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmc7XG5cbiAgLy8gT3ZlcmxvYWQgZm9yIHN0YXJ0aW5nIGZsdWVudCBBUEkgY2hhaW5cblxuICAvKipcbiAgICogU3RhcnRzIGEgZmx1ZW50IGZvcm1hdHRpbmcgY2hhaW4uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byBmb3JtYXQuXG4gICAqIEByZXR1cm5zIEFYRm9ybWF0Rmx1ZW50IC0gQSBmbHVlbnQgQVBJIG9iamVjdCBmb3IgY2hhaW5pbmcuXG4gICAqL1xuICBmb3JtYXQodmFsdWU6IHVua25vd24pOiBBWEZvcm1hdEZsdWVudDtcblxuICAvLyBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgZm9ybWF0IG1ldGhvZFxuXG4gIC8qKlxuICAgKiBGb3JtYXRzIGEgdmFsdWUgYWNjb3JkaW5nIHRvIHRoZSBmb3JtYXR0ZXIncyBydWxlcy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGZvcm1hdC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBvcHRpb25zIGJhZyBvciBzdHJpbmcsIGRlcGVuZGluZyBvbiB0aGUgZm9ybWF0dGVyLlxuICAgKiBAcmV0dXJucyBzdHJpbmcgLSBUaGUgZm9ybWF0dGVkIHJlc3VsdC5cbiAgICovXG4gIGZvcm1hdCh2YWx1ZTogdW5rbm93biwgZm9ybWF0dGVyPzogc3RyaW5nLCBvcHRpb25zPzogYW55KTogc3RyaW5nIHwgQVhGb3JtYXRGbHVlbnQge1xuICAgIGlmICh0eXBlb2YgZm9ybWF0dGVyID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgZm9ybWF0dGVyUmVmID0gdGhpcy5wbHVnaW5SZWdpc3RyeS5nZXQoZm9ybWF0dGVyKTtcbiAgICAgIHJldHVybiBmb3JtYXR0ZXJSZWYuZm9ybWF0KHZhbHVlLCBvcHRpb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ldyBBWEZvcm1hdEZsdWVudCh0aGlzLCB0aGlzLnBsdWdpblJlZ2lzdHJ5LCB2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbmNsYXNzIEFYRm9ybWF0Rmx1ZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlOiBBWEZvcm1hdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwbHVnaW5SZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbml0aWFsVmFsdWU6IHVua25vd24sXG4gICkge31cblxuICAvKipcbiAgICogRm9ybWF0cyB0aGUgdmFsdWUgdXNpbmcgdGhlIHNwZWNpZmllZCBmb3JtYXR0ZXIgYW5kIG9wdGlvbnMuXG4gICAqIEBwYXJhbSBmb3JtYXR0ZXIgVGhlIG5hbWUgb2YgdGhlIGZvcm1hdHRlciB0byB1c2UuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHBhc3MgdG8gdGhlIGZvcm1hdHRlci5cbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAqL1xuICB0bzxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihmb3JtYXR0ZXI6IEssIG9wdGlvbnM/OiBBWEZvcm1hdE9wdGlvbnNNYXBbS10pOiBzdHJpbmcge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBmb3JtYXR0ZXJSZWYgPSB0aGlzLnBsdWdpblJlZ2lzdHJ5LmdldChmb3JtYXR0ZXIpO1xuICAgICAgcmV0dXJuIGZvcm1hdHRlclJlZi5mb3JtYXQodGhpcy5pbml0aWFsVmFsdWUsIG9wdGlvbnMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHRoaXMuaW5pdGlhbFZhbHVlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { Directive, TemplateRef, ViewContainerRef, inject } from '@angular/core';\nimport { AXFormatService } from './format.service';\nimport * as i0 from \"@angular/core\";\nexport class AXFormatterDirective {\n constructor() {\n this.templateRef = inject(TemplateRef);\n this.viewContainer = inject(ViewContainerRef);\n this.formatService = inject(AXFormatService);\n }\n ngOnInit() {\n this.viewContainer.clear();\n this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: (value, formatter, options) => {\n return this.formatService.format(value, formatter, options);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.9\", type: AXFormatterDirective, isStandalone: true, selector: \"[formatter]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[formatter]',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU1uRCxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBSVUsZ0JBQVcsR0FBRyxNQUFNLENBQW1CLFdBQVcsQ0FBQyxDQUFDO1FBQ3BELGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDekMsa0JBQWEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7S0FjakQ7SUFaQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDdEQsU0FBUyxFQUFFLENBQ1QsS0FBYyxFQUNkLFNBQVksRUFDWixPQUErQixFQUMvQixFQUFFO2dCQUNGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM5RCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FoQlUsb0JBQW9CO2tHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRm9ybWF0U2VydmljZSB9IGZyb20gJy4vZm9ybWF0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zTWFwIH0gZnJvbSAnLi9mb3JtYXQudHlwZXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZm9ybWF0dGVyXScsXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybWF0dGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZiA9IGluamVjdDxUZW1wbGF0ZVJlZjxhbnk+PihUZW1wbGF0ZVJlZik7XG4gIHByaXZhdGUgdmlld0NvbnRhaW5lciA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlID0gaW5qZWN0KEFYRm9ybWF0U2VydmljZSk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyLmNsZWFyKCk7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmLCB7XG4gICAgICAkaW1wbGljaXQ6IDxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihcbiAgICAgICAgdmFsdWU6IHVua25vd24sXG4gICAgICAgIGZvcm1hdHRlcjogSyxcbiAgICAgICAgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9uc01hcFtLXSxcbiAgICAgICkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh2YWx1ZSwgZm9ybWF0dGVyLCBvcHRpb25zKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { AXEventService, AXSystemEvents } from '@acorex/core/events';\nimport { Pipe, inject } from '@angular/core';\nimport { filter, of, startWith, switchMap } from 'rxjs';\nimport { AXFormatService } from './format.service';\nimport * as i0 from \"@angular/core\";\nexport class AXFormatPipe {\n constructor() {\n this.formatService = inject(AXFormatService);\n this.eventService = inject(AXEventService);\n this.triggers = [...Object.values(AXSystemEvents).map((event) => event)];\n }\n /**\n * Angular pipe for formatting values reactively. Re-evaluates when system events (such as language change) occur.\n *\n * @param value - The input value to format.\n * @param name - The formatter name.\n * @param options - Optional options specific to the formatter.\n * @returns Observable<string> - Emits the formatted string and updates on system events.\n */\n transform(value, name, options) {\n // Initial formatted value\n const initialFormattedValue = this.formatService.format(value, name, options);\n // React to language changes and re-format the value\n return this.eventService.onEvent.pipe(filter((event) => this.triggers.includes(event.type)), startWith(initialFormattedValue), // Emit the initial formatted value immediately\n switchMap((event) => {\n // Re-call format method on every language change\n const formattedValue = this.formatService.format(value, name, options);\n return of(formattedValue);\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }\n static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"14.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, isStandalone: true, name: \"format\" }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, decorators: [{\n type: Pipe,\n args: [{\n name: 'format',\n pure: true,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL2Zvcm1hdC9zcmMvbGliL2Zvcm1hdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBYyxNQUFNLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU9uRCxNQUFNLE9BQU8sWUFBWTtJQUp6QjtRQUtVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRXRDLGFBQVEsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQWUsQ0FBQyxDQUFDLENBQUM7S0EwQnZGO0lBeEJDOzs7Ozs7O09BT0c7SUFFSCxTQUFTLENBQUMsS0FBYyxFQUFFLElBQVksRUFBRSxPQUFrQztRQUN4RSwwQkFBMEI7UUFDMUIsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXJGLG9EQUFvRDtRQUNwRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDbkMsTUFBTSxDQUFDLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQXNCLENBQUMsQ0FBQyxFQUNwRixTQUFTLENBQUMscUJBQXFCLENBQUMsRUFBRSwrQ0FBK0M7UUFDakYsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbEIsaURBQWlEO1lBQ2pELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDOUUsT0FBTyxFQUFFLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OEdBN0JVLFlBQVk7NEdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFKeEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsSUFBSTtpQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRXZlbnREYXRhLCBBWEV2ZW50U2VydmljZSwgQVhTeXN0ZW1FdmVudHMgfSBmcm9tICdAYWNvcmV4L2NvcmUvZXZlbnRzJztcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZmlsdGVyLCBvZiwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYRm9ybWF0U2VydmljZSB9IGZyb20gJy4vZm9ybWF0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zIH0gZnJvbSAnLi9mb3JtYXQudHlwZXMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtYXQnLFxuICBwdXJlOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBBWEZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlID0gaW5qZWN0KEFYRm9ybWF0U2VydmljZSk7XG4gIHByaXZhdGUgZXZlbnRTZXJ2aWNlID0gaW5qZWN0KEFYRXZlbnRTZXJ2aWNlKTtcblxuICBwcml2YXRlIHRyaWdnZXJzID0gWy4uLk9iamVjdC52YWx1ZXMoQVhTeXN0ZW1FdmVudHMpLm1hcCgoZXZlbnQpID0+IGV2ZW50IGFzIHN0cmluZyldO1xuXG4gIC8qKlxuICAgKiBBbmd1bGFyIHBpcGUgZm9yIGZvcm1hdHRpbmcgdmFsdWVzIHJlYWN0aXZlbHkuIFJlLWV2YWx1YXRlcyB3aGVuIHN5c3RlbSBldmVudHMgKHN1Y2ggYXMgbGFuZ3VhZ2UgY2hhbmdlKSBvY2N1ci5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGlucHV0IHZhbHVlIHRvIGZvcm1hdC5cbiAgICogQHBhcmFtIG5hbWUgLSBUaGUgZm9ybWF0dGVyIG5hbWUuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9uYWwgb3B0aW9ucyBzcGVjaWZpYyB0byB0aGUgZm9ybWF0dGVyLlxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPHN0cmluZz4gLSBFbWl0cyB0aGUgZm9ybWF0dGVkIHN0cmluZyBhbmQgdXBkYXRlcyBvbiBzeXN0ZW0gZXZlbnRzLlxuICAgKi9cblxuICB0cmFuc2Zvcm0odmFsdWU6IHVua25vd24sIG5hbWU6IHN0cmluZywgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9ucyB8IHN0cmluZyk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgLy8gSW5pdGlhbCBmb3JtYXR0ZWQgdmFsdWVcbiAgICBjb25zdCBpbml0aWFsRm9ybWF0dGVkVmFsdWUgPSB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHZhbHVlLCBuYW1lIGFzIGFueSwgb3B0aW9ucyk7XG5cbiAgICAvLyBSZWFjdCB0byBsYW5ndWFnZSBjaGFuZ2VzIGFuZCByZS1mb3JtYXQgdGhlIHZhbHVlXG4gICAgcmV0dXJuIHRoaXMuZXZlbnRTZXJ2aWNlLm9uRXZlbnQucGlwZShcbiAgICAgIGZpbHRlcigoZXZlbnQ6IEFYRXZlbnREYXRhKSA9PiB0aGlzLnRyaWdnZXJzLmluY2x1ZGVzKGV2ZW50LnR5cGUgYXMgQVhTeXN0ZW1FdmVudHMpKSxcbiAgICAgIHN0YXJ0V2l0aChpbml0aWFsRm9ybWF0dGVkVmFsdWUpLCAvLyBFbWl0IHRoZSBpbml0aWFsIGZvcm1hdHRlZCB2YWx1ZSBpbW1lZGlhdGVseVxuICAgICAgc3dpdGNoTWFwKChldmVudCkgPT4ge1xuICAgICAgICAvLyBSZS1jYWxsIGZvcm1hdCBtZXRob2Qgb24gZXZlcnkgbGFuZ3VhZ2UgY2hhbmdlXG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZFZhbHVlID0gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh2YWx1ZSwgbmFtZSBhcyBhbnksIG9wdGlvbnMpO1xuICAgICAgICByZXR1cm4gb2YoZm9ybWF0dGVkVmFsdWUpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIl19","import { Injectable } from '@angular/core';\nimport { defaults, isInteger, padStart } from 'lodash-es';\nimport * as i0 from \"@angular/core\";\nexport class AXNumberFormatter {\n constructor() {\n this.separatorsCache = {};\n }\n get name() {\n return 'number';\n }\n format(value, options) {\n const { thousandSeparator, decimalSeparator } = this.getLocaleSeparators(options?.locale);\n // Merge user options with default options\n const effectiveOptions = defaults({}, options, {\n thousandSeparator,\n decimalSeparator,\n zeroPadLength: 0,\n locale: navigator.language,\n });\n const sign = value < 0 ? '-' : '';\n const absoluteValue = Math.abs(value);\n // Handling zero padding for integer part\n let integerPart = Math.floor(absoluteValue).toString();\n if (effectiveOptions.zeroPadLength && effectiveOptions.zeroPadLength > integerPart.length) {\n integerPart = padStart(integerPart, effectiveOptions.zeroPadLength, '0');\n }\n // Applying thousand separator to integer part\n if (effectiveOptions.thousandSeparator) {\n integerPart = integerPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, effectiveOptions.thousandSeparator);\n }\n // Constructing the final formatted value\n let formattedValue = sign + integerPart;\n if (effectiveOptions.decimalPlaces !== undefined) {\n // Limiting decimal places if specified\n const decimalPart = absoluteValue.toFixed(effectiveOptions.decimalPlaces).split('.')[1];\n formattedValue += effectiveOptions.decimalSeparator + decimalPart;\n }\n else if (!isInteger(value)) {\n // Showing full decimal part if decimalPlaces is not specified\n const decimalPart = absoluteValue.toString().split('.')[1] || '';\n if (decimalPart.length > 0) {\n formattedValue += effectiveOptions.decimalSeparator + decimalPart;\n }\n }\n return formattedValue;\n }\n getLocaleSeparators(locale = navigator.language) {\n // Use cache if available\n if (this.separatorsCache[locale]) {\n return this.separatorsCache[locale];\n }\n const numberFormat = new Intl.NumberFormat(locale);\n const parts = numberFormat.formatToParts(1234567.89);\n let thousandSeparator = '';\n let decimalSeparator = '';\n for (const part of parts) {\n if (part.type === 'group') {\n thousandSeparator = part.value;\n }\n else if (part.type === 'decimal') {\n decimalSeparator = part.value;\n }\n }\n // Cache the result\n this.separatorsCache[locale] = { thousandSeparator, decimalSeparator };\n return this.separatorsCache[locale];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0dGVycy9udW1iZXIuZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDOztBQW1CMUQsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVVLG9CQUFlLEdBQVEsRUFBRSxDQUFDO0tBeUVuQztJQXZFQyxJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWEsRUFBRSxPQUFpQztRQUNyRCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFGLDBDQUEwQztRQUMxQyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO1lBQzdDLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsYUFBYSxFQUFFLENBQUM7WUFDaEIsTUFBTSxFQUFFLFNBQVMsQ0FBQyxRQUFRO1NBQzNCLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMseUNBQXlDO1FBQ3pDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkQsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLElBQUksZ0JBQWdCLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxRixXQUFXLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUVELDhDQUE4QztRQUM5QyxJQUFJLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNqRyxDQUFDO1FBRUQseUNBQXlDO1FBQ3pDLElBQUksY0FBYyxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7UUFDeEMsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakQsdUNBQXVDO1lBQ3ZDLE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLGNBQWMsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyxXQUFXLENBQUM7UUFDcEUsQ0FBQzthQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3Qiw4REFBOEQ7WUFDOUQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakUsSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMzQixjQUFjLElBQUksZ0JBQWdCLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDO1lBQ3BFLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUVPLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsUUFBUTtRQUlyRCx5QkFBeUI7UUFDekIsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFFRCxNQUFNLFlBQVksR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRCxJQUFJLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUUxQixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNqQyxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDbkMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQztRQUVELG1CQUFtQjtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztRQUN2RSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs4R0F6RVUsaUJBQWlCO2tIQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkZWZhdWx0cywgaXNJbnRlZ2VyLCBwYWRTdGFydCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlciB9IGZyb20gJy4uL2Zvcm1hdC5jb25maWcnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zIH0gZnJvbSAnLi4vZm9ybWF0LnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBWE51bWJlckZvcm1hdHRlck9wdGlvbnMgZXh0ZW5kcyBBWEZvcm1hdE9wdGlvbnMge1xuICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICB0aG91c2FuZFNlcGFyYXRvcj86IHN0cmluZztcbiAgZGVjaW1hbFNlcGFyYXRvcj86IHN0cmluZztcbiAgemVyb1BhZExlbmd0aD86IG51bWJlcjsgLy8gTmV3IG9wdGlvbiBmb3IgemVybyBwYWRkaW5nLFxuICBsb2NhbGU/OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgbW9kdWxlICcuLi9mb3JtYXQudHlwZXMnIHtcbiAgaW50ZXJmYWNlIEFYRm9ybWF0T3B0aW9uc01hcCB7XG4gICAgbnVtYmVyOiBBWE51bWJlckZvcm1hdHRlck9wdGlvbnM7XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTnVtYmVyRm9ybWF0dGVyIGltcGxlbWVudHMgQVhGb3JtYXR0ZXIge1xuICBwcml2YXRlIHNlcGFyYXRvcnNDYWNoZTogYW55ID0ge307XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ251bWJlcic7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IG51bWJlciwgb3B0aW9uczogQVhOdW1iZXJGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHRob3VzYW5kU2VwYXJhdG9yLCBkZWNpbWFsU2VwYXJhdG9yIH0gPSB0aGlzLmdldExvY2FsZVNlcGFyYXRvcnMob3B0aW9ucz8ubG9jYWxlKTtcbiAgICAvLyBNZXJnZSB1c2VyIG9wdGlvbnMgd2l0aCBkZWZhdWx0IG9wdGlvbnNcbiAgICBjb25zdCBlZmZlY3RpdmVPcHRpb25zID0gZGVmYXVsdHMoe30sIG9wdGlvbnMsIHtcbiAgICAgIHRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgIHplcm9QYWRMZW5ndGg6IDAsXG4gICAgICBsb2NhbGU6IG5hdmlnYXRvci5sYW5ndWFnZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNpZ24gPSB2YWx1ZSA8IDAgPyAnLScgOiAnJztcbiAgICBjb25zdCBhYnNvbHV0ZVZhbHVlID0gTWF0aC5hYnModmFsdWUpO1xuXG4gICAgLy8gSGFuZGxpbmcgemVybyBwYWRkaW5nIGZvciBpbnRlZ2VyIHBhcnRcbiAgICBsZXQgaW50ZWdlclBhcnQgPSBNYXRoLmZsb29yKGFic29sdXRlVmFsdWUpLnRvU3RyaW5nKCk7XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMuemVyb1BhZExlbmd0aCAmJiBlZmZlY3RpdmVPcHRpb25zLnplcm9QYWRMZW5ndGggPiBpbnRlZ2VyUGFydC5sZW5ndGgpIHtcbiAgICAgIGludGVnZXJQYXJ0ID0gcGFkU3RhcnQoaW50ZWdlclBhcnQsIGVmZmVjdGl2ZU9wdGlvbnMuemVyb1BhZExlbmd0aCwgJzAnKTtcbiAgICB9XG5cbiAgICAvLyBBcHBseWluZyB0aG91c2FuZCBzZXBhcmF0b3IgdG8gaW50ZWdlciBwYXJ0XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMudGhvdXNhbmRTZXBhcmF0b3IpIHtcbiAgICAgIGludGVnZXJQYXJ0ID0gaW50ZWdlclBhcnQucmVwbGFjZSgvXFxCKD89KFxcZHszfSkrKD8hXFxkKSkvZywgZWZmZWN0aXZlT3B0aW9ucy50aG91c2FuZFNlcGFyYXRvcik7XG4gICAgfVxuXG4gICAgLy8gQ29uc3RydWN0aW5nIHRoZSBmaW5hbCBmb3JtYXR0ZWQgdmFsdWVcbiAgICBsZXQgZm9ybWF0dGVkVmFsdWUgPSBzaWduICsgaW50ZWdlclBhcnQ7XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFBsYWNlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBMaW1pdGluZyBkZWNpbWFsIHBsYWNlcyBpZiBzcGVjaWZpZWRcbiAgICAgIGNvbnN0IGRlY2ltYWxQYXJ0ID0gYWJzb2x1dGVWYWx1ZS50b0ZpeGVkKGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFBsYWNlcykuc3BsaXQoJy4nKVsxXTtcbiAgICAgIGZvcm1hdHRlZFZhbHVlICs9IGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFNlcGFyYXRvciArIGRlY2ltYWxQYXJ0O1xuICAgIH0gZWxzZSBpZiAoIWlzSW50ZWdlcih2YWx1ZSkpIHtcbiAgICAgIC8vIFNob3dpbmcgZnVsbCBkZWNpbWFsIHBhcnQgaWYgZGVjaW1hbFBsYWNlcyBpcyBub3Qgc3BlY2lmaWVkXG4gICAgICBjb25zdCBkZWNpbWFsUGFydCA9IGFic29sdXRlVmFsdWUudG9TdHJpbmcoKS5zcGxpdCgnLicpWzFdIHx8ICcnO1xuICAgICAgaWYgKGRlY2ltYWxQYXJ0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9ybWF0dGVkVmFsdWUgKz0gZWZmZWN0aXZlT3B0aW9ucy5kZWNpbWFsU2VwYXJhdG9yICsgZGVjaW1hbFBhcnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdHRlZFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbGVTZXBhcmF0b3JzKGxvY2FsZSA9IG5hdmlnYXRvci5sYW5ndWFnZSk6IHtcbiAgICB0aG91c2FuZFNlcGFyYXRvcjogc3RyaW5nO1xuICAgIGRlY2ltYWxTZXBhcmF0b3I6IHN0cmluZztcbiAgfSB7XG4gICAgLy8gVXNlIGNhY2hlIGlmIGF2YWlsYWJsZVxuICAgIGlmICh0aGlzLnNlcGFyYXRvcnNDYWNoZVtsb2NhbGVdKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXTtcbiAgICB9XG5cbiAgICBjb25zdCBudW1iZXJGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlKTtcbiAgICBjb25zdCBwYXJ0cyA9IG51bWJlckZvcm1hdC5mb3JtYXRUb1BhcnRzKDEyMzQ1NjcuODkpO1xuICAgIGxldCB0aG91c2FuZFNlcGFyYXRvciA9ICcnO1xuICAgIGxldCBkZWNpbWFsU2VwYXJhdG9yID0gJyc7XG5cbiAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFydHMpIHtcbiAgICAgIGlmIChwYXJ0LnR5cGUgPT09ICdncm91cCcpIHtcbiAgICAgICAgdGhvdXNhbmRTZXBhcmF0b3IgPSBwYXJ0LnZhbHVlO1xuICAgICAgfSBlbHNlIGlmIChwYXJ0LnR5cGUgPT09ICdkZWNpbWFsJykge1xuICAgICAgICBkZWNpbWFsU2VwYXJhdG9yID0gcGFydC52YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDYWNoZSB0aGUgcmVzdWx0XG4gICAgdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXSA9IHsgdGhvdXNhbmRTZXBhcmF0b3IsIGRlY2ltYWxTZXBhcmF0b3IgfTtcbiAgICByZXR1cm4gdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXTtcbiAgfVxufVxuIl19","import { get } from 'lodash-es';\nexport class AXStringFormatter {\n get name() {\n return 'string';\n }\n format(value, options) {\n if (typeof value != 'string')\n return String(value);\n const result = get(options, value)\n ? get(options, value)\n : value.replace(/{{\\s*([^}]+)\\s*}}/g, (match, path) => {\n return get(options, path.trim()) ?? match;\n });\n return result;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0dGVycy9zdHJpbmcuZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFjaEMsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWMsRUFBRSxPQUFpQztRQUN0RCxJQUFJLE9BQU8sS0FBSyxJQUFJLFFBQVE7WUFBRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztZQUNoQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDckIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUU7Z0JBQzFELE9BQVEsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQVksSUFBSSxLQUFLLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7UUFFUCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQVhGb3JtYXR0ZXIgfSBmcm9tICcuLi9mb3JtYXQuY29uZmlnJztcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9ucyB9IGZyb20gJy4uL2Zvcm1hdC50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhTdHJpbmdGb3JtYXR0ZXJPcHRpb25zIGV4dGVuZHMgQVhGb3JtYXRPcHRpb25zIHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5kZWNsYXJlIG1vZHVsZSAnLi4vZm9ybWF0LnR5cGVzJyB7XG4gIGludGVyZmFjZSBBWEZvcm1hdE9wdGlvbnNNYXAge1xuICAgIHN0cmluZzogQVhTdHJpbmdGb3JtYXR0ZXJPcHRpb25zO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBWFN0cmluZ0Zvcm1hdHRlciBpbXBsZW1lbnRzIEFYRm9ybWF0dGVyIHtcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3N0cmluZyc7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IHVua25vd24sIG9wdGlvbnM6IEFYU3RyaW5nRm9ybWF0dGVyT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgY29uc3QgcmVzdWx0ID0gZ2V0KG9wdGlvbnMsIHZhbHVlKVxuICAgICAgPyBnZXQob3B0aW9ucywgdmFsdWUpXG4gICAgICA6IHZhbHVlLnJlcGxhY2UoL3t7XFxzKihbXn1dKylcXHMqfX0vZywgKG1hdGNoLCBwYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gKGdldChvcHRpb25zLCBwYXRoLnRyaW0oKSkgYXMgc3RyaW5nKSA/PyBtYXRjaDtcbiAgICAgICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=","import { NgModule, inject } from '@angular/core';\nimport { AXFormatterDirective } from './format.directive';\nimport { AXFormatPipe } from './format.pipe';\nimport { AXFormatterRegistryService } from './format.service';\nimport { AXNumberFormatter } from './formatters/number.formatter';\nimport { AXStringFormatter } from './formatters/string.formatter';\nimport * as i0 from \"@angular/core\";\nconst BUILT_IN_RULES = [AXNumberFormatter, AXStringFormatter];\nexport class AXFormatModule {\n /**\n * Configures the module for the root injector, optionally registering custom formatters.\n *\n * @param configs - Optional configuration containing custom formatter classes.\n * @returns ModuleWithProviders<AXFormatModule>\n */\n static forRoot(configs) {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\n ],\n };\n }\n /**\n * Configures the module for a feature injector, optionally registering custom formatters.\n *\n * @param configs - Optional configuration containing custom formatter classes.\n * @returns ModuleWithProviders<AXFormatModule>\n */\n static forChild(configs) {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\n ],\n };\n }\n /**\n * @ignore\n */\n constructor() {\n const instances = inject('AXFormatModuleFactory');\n instances.forEach((f) => {\n f();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, imports: [AXFormatterDirective, AXFormatPipe], exports: [AXFormatterDirective, AXFormatPipe] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXFormatterDirective, AXFormatPipe],\n exports: [AXFormatterDirective, AXFormatPipe],\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFbEUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBVTlELE1BQU0sT0FBTyxjQUFjO0lBQ3pCOzs7OztPQUtHO0lBRUgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUErQjtRQUM1QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztnQkFDOUI7b0JBQ0UsT0FBTyxFQUFFLHVCQUF1QjtvQkFDaEMsVUFBVSxFQUFFLENBQUMsY0FBMEMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO3dCQUMvRCxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2xGLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ2xDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBRUgsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUErQjtRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztnQkFDOUI7b0JBQ0UsT0FBTyxFQUFFLHVCQUF1QjtvQkFDaEMsVUFBVSxFQUFFLENBQUMsY0FBMEMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO3dCQUMvRCxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2xGLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ2xDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0g7UUFDRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQVEsdUJBQThCLENBQUMsQ0FBQztRQUVoRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEIsQ0FBQyxFQUFFLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBMURVLGNBQWM7K0dBQWQsY0FBYyxZQUhmLG9CQUFvQixFQUFFLFlBQVksYUFDbEMsb0JBQW9CLEVBQUUsWUFBWTsrR0FFakMsY0FBYzs7MkZBQWQsY0FBYztrQkFKMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxZQUFZLENBQUM7b0JBQzdDLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLFlBQVksQ0FBQztpQkFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0LmNvbmZpZyc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZm9ybWF0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEZvcm1hdFBpcGUgfSBmcm9tICcuL2Zvcm1hdC5waXBlJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi9mb3JtYXQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE51bWJlckZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0dGVycy9udW1iZXIuZm9ybWF0dGVyJztcbmltcG9ydCB7IEFYU3RyaW5nRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXJzL3N0cmluZy5mb3JtYXR0ZXInO1xuXG5jb25zdCBCVUlMVF9JTl9SVUxFUyA9IFtBWE51bWJlckZvcm1hdHRlciwgQVhTdHJpbmdGb3JtYXR0ZXJdO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRm9ybWF0TW9kdWxlQ29uZmlncyB7XG4gIGZvcm1hdHRlcnM6IChuZXcgKCkgPT4gQVhGb3JtYXR0ZXIpW107XG59XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBWEZvcm1hdHRlckRpcmVjdGl2ZSwgQVhGb3JtYXRQaXBlXSxcbiAgZXhwb3J0czogW0FYRm9ybWF0dGVyRGlyZWN0aXZlLCBBWEZvcm1hdFBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWEZvcm1hdE1vZHVsZSB7XG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBtb2R1bGUgZm9yIHRoZSByb290IGluamVjdG9yLCBvcHRpb25hbGx5IHJlZ2lzdGVyaW5nIGN1c3RvbSBmb3JtYXR0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlncyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gY29udGFpbmluZyBjdXN0b20gZm9ybWF0dGVyIGNsYXNzZXMuXG4gICAqIEByZXR1cm5zIE1vZHVsZVdpdGhQcm92aWRlcnM8QVhGb3JtYXRNb2R1bGU+XG4gICAqL1xuXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZ3M/OiBBWEZvcm1hdE1vZHVsZUNvbmZpZ3MpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYRm9ybWF0TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBWEZvcm1hdE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAuLi4oY29uZmlncz8uZm9ybWF0dGVycyB8fCBbXSksXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQVhGb3JtYXRNb2R1bGVGYWN0b3J5JyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiAocGx1Z2luUmVnaXN0cnk6IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICBwbHVnaW5SZWdpc3RyeS5yZWdpc3RlciguLi5bLi4uQlVJTFRfSU5fUlVMRVMsIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKV0pO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZGVwczogW0FYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBtb2R1bGUgZm9yIGEgZmVhdHVyZSBpbmplY3Rvciwgb3B0aW9uYWxseSByZWdpc3RlcmluZyBjdXN0b20gZm9ybWF0dGVycy5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ3MgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIGNvbnRhaW5pbmcgY3VzdG9tIGZvcm1hdHRlciBjbGFzc2VzLlxuICAgKiBAcmV0dXJucyBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYRm9ybWF0TW9kdWxlPlxuICAgKi9cblxuICBzdGF0aWMgZm9yQ2hpbGQoY29uZmlncz86IEFYRm9ybWF0TW9kdWxlQ29uZmlncyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhGb3JtYXRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYRm9ybWF0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6ICdBWEZvcm1hdE1vZHVsZUZhY3RvcnknLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChwbHVnaW5SZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgIHBsdWdpblJlZ2lzdHJ5LnJlZ2lzdGVyKC4uLlsuLi5CVUlMVF9JTl9SVUxFUywgLi4uKGNvbmZpZ3M/LmZvcm1hdHRlcnMgfHwgW10pXSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBkZXBzOiBbQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGluc3RhbmNlcyA9IGluamVjdDxhbnlbXT4oJ0FYRm9ybWF0TW9kdWxlRmFjdG9yeScgYXMgYW55KTtcblxuICAgIGluc3RhbmNlcy5mb3JFYWNoKChmKSA9PiB7XG4gICAgICBmKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtZm9ybWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9mb3JtYXQvc3JjL2Fjb3JleC1jb3JlLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;;AAAO,MAAM,WAAW,CAAC;AACzB;;ACEO,MAAM,0BAA0B,CAAC;AACxC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,OAAO,GAAG,EAAE;AACzB,QAAQ,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACxC,IAAI;AACJ,IAAI,QAAQ,CAAC,GAAG,OAAO,EAAE;AACzB,QAAQ,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AAC/B,YAAY,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;AAClD,gBAAgB,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AAClE,gBAAgB,MAAM,EAAE,IAAI,CAAC,QAAQ;AACrC,aAAa,CAAC;AACd,YAAY,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;AAClE,gBAAgB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACpC,YAAY;AACZ,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,IAAI,UAAU,GAAG;AACrB,QAAQ,OAAO,IAAI,CAAC,OAAO;AAC3B,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,GAAG,CAAC,IAAI,EAAE;AACd,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC;AACrE,QAAQ,IAAI,CAAC,SAAS,EAAE;AACxB,YAAY,MAAM,IAAI,KAAK,CAAC,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC,CAAC;AAC3D,QAAQ;AACR,QAAQ,OAAO,SAAS;AACxB,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AAC7L,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACpK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,UAAU,EAAE,CAAC;AACpI,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;AACN,MAAM,eAAe,CAAC;AAC7B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,0BAA0B,CAAC;AAChE,QAAQ,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,EAAE;AAC1C;AACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;AACzD,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;AACjC,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE;AACtC,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;AAC3C,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;AACnE,YAAY,OAAO,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;AACtD,QAAQ;AACR,aAAa;AACb,YAAY,OAAO,IAAI,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC;AACvE,QAAQ;AACR,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AAClL,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACzJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;AACb,MAAM,cAAc,CAAC;AACrB,IAAI,WAAW,CAAC,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE;AAC7D,QAAQ,IAAI,CAAC,aAAa,GAAG,aAAa;AAC1C,QAAQ,IAAI,CAAC,cAAc,GAAG,cAAc;AAC5C,QAAQ,IAAI,CAAC,YAAY,GAAG,YAAY;AACxC,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE;AAC3B,QAAQ,IAAI;AACZ,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;AACnE,YAAY,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC;AAClE,QAAQ;AACR,QAAQ,OAAO,KAAK,EAAE;AACtB,YAAY,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;AAC5C,QAAQ;AACR,IAAI;AACJ;;ACvGO,MAAM,oBAAoB,CAAC;AAClC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACrD,QAAQ,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC;AACpD,IAAI;AACJ,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;AAClC,QAAQ,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE;AAChE,YAAY,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,KAAK;AACtD,gBAAgB,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC;AAC3E,YAAY,CAAC;AACb,SAAS,CAAC;AACV,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACtL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AACrL;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC9H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,aAAa;AAC3C,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACpBN,MAAM,YAAY,CAAC;AAC1B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC;AACpD,QAAQ,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC;AAClD,QAAQ,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;AAChF,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;AACpC;AACA,QAAQ,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC;AACrF;AACA,QAAQ,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,qBAAqB,CAAC;AACrI,QAAQ,SAAS,CAAC,CAAC,KAAK,KAAK;AAC7B;AACA,YAAY,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC;AAClF,YAAY,OAAO,EAAE,CAAC,cAAc,CAAC;AACrC,QAAQ,CAAC,CAAC,CAAC;AACX,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;AACzK,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AAChK;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;AACtH,YAAY,IAAI,EAAE,IAAI;AACtB,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,IAAI,EAAE,QAAQ;AAClC,oBAAoB,IAAI,EAAE,IAAI;AAC9B,iBAAiB;AACjB,SAAS,CAAC,EAAE,CAAC;;ACpCN,MAAM,iBAAiB,CAAC;AAC/B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,eAAe,GAAG,EAAE;AACjC,IAAI;AACJ,IAAI,IAAI,IAAI,GAAG;AACf,QAAQ,OAAO,QAAQ;AACvB,IAAI;AACJ,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE;AAC3B,QAAQ,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC;AACjG;AACA,QAAQ,MAAM,gBAAgB,GAAG,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE;AACvD,YAAY,iBAAiB;AAC7B,YAAY,gBAAgB;AAC5B,YAAY,aAAa,EAAE,CAAC;AAC5B,YAAY,MAAM,EAAE,SAAS,CAAC,QAAQ;AACtC,SAAS,CAAC;AACV,QAAQ,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE;AACzC,QAAQ,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AAC7C;AACA,QAAQ,IAAI,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE;AAC9D,QAAQ,IAAI,gBAAgB,CAAC,aAAa,IAAI,gBAAgB,CAAC,aAAa,GAAG,WAAW,CAAC,MAAM,EAAE;AACnG,YAAY,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,aAAa,EAAE,GAAG,CAAC;AACpF,QAAQ;AACR;AACA,QAAQ,IAAI,gBAAgB,CAAC,iBAAiB,EAAE;AAChD,YAAY,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,uBAAuB,EAAE,gBAAgB,CAAC,iBAAiB,CAAC;AAC1G,QAAQ;AACR;AACA,QAAQ,IAAI,cAAc,GAAG,IAAI,GAAG,WAAW;AAC/C,QAAQ,IAAI,gBAAgB,CAAC,aAAa,KAAK,SAAS,EAAE;AAC1D;AACA,YAAY,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACnG,YAAY,cAAc,IAAI,gBAAgB,CAAC,gBAAgB,GAAG,WAAW;AAC7E,QAAQ;AACR,aAAa,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;AACpC;AACA,YAAY,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC5E,YAAY,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;AACxC,gBAAgB,cAAc,IAAI,gBAAgB,CAAC,gBAAgB,GAAG,WAAW;AACjF,YAAY;AACZ,QAAQ;AACR,QAAQ,OAAO,cAAc;AAC7B,IAAI;AACJ,IAAI,mBAAmB,CAAC,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE;AACrD;AACA,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE;AAC1C,YAAY,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;AAC/C,QAAQ;AACR,QAAQ,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;AAC1D,QAAQ,MAAM,KAAK,GAAG,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC;AAC5D,QAAQ,IAAI,iBAAiB,GAAG,EAAE;AAClC,QAAQ,IAAI,gBAAgB,GAAG,EAAE;AACjC,QAAQ,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;AAClC,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AACvC,gBAAgB,iBAAiB,GAAG,IAAI,CAAC,KAAK;AAC9C,YAAY;AACZ,iBAAiB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;AAC9C,gBAAgB,gBAAgB,GAAG,IAAI,CAAC,KAAK;AAC7C,YAAY;AACZ,QAAQ;AACR;AACA,QAAQ,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE;AAC9E,QAAQ,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;AAC3C,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACpL,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;AACvI;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAC3H,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,CAAC;;ACvEN,MAAM,iBAAiB,CAAC;AAC/B,IAAI,IAAI,IAAI,GAAG;AACf,QAAQ,OAAO,QAAQ;AACvB,IAAI;AACJ,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE;AAC3B,QAAQ,IAAI,OAAO,KAAK,IAAI,QAAQ;AACpC,YAAY,OAAO,MAAM,CAAC,KAAK,CAAC;AAChC,QAAQ,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK;AACzC,cAAc,GAAG,CAAC,OAAO,EAAE,KAAK;AAChC,cAAc,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK;AACnE,gBAAgB,OAAO,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK;AACzD,YAAY,CAAC,CAAC;AACd,QAAQ,OAAO,MAAM;AACrB,IAAI;AACJ;;ACRA,MAAM,cAAc,GAAG,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;AACtD,MAAM,cAAc,CAAC;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,OAAO,OAAO,CAAC,OAAO,EAAE;AAC5B,QAAQ,OAAO;AACf,YAAY,QAAQ,EAAE,cAAc;AACpC,YAAY,SAAS,EAAE;AACvB,gBAAgB,IAAI,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;AAC9C,gBAAgB;AAChB,oBAAoB,OAAO,EAAE,uBAAuB;AACpD,oBAAoB,UAAU,EAAE,CAAC,cAAc,KAAK,MAAM;AAC1D,wBAAwB,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,cAAc,EAAE,IAAI,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC;AACvG,oBAAoB,CAAC;AACrB,oBAAoB,IAAI,EAAE,CAAC,0BAA0B,CAAC;AACtD,oBAAoB,KAAK,EAAE,IAAI;AAC/B,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,OAAO,QAAQ,CAAC,OAAO,EAAE;AAC7B,QAAQ,OAAO;AACf,YAAY,QAAQ,EAAE,cAAc;AACpC,YAAY,SAAS,EAAE;AACvB,gBAAgB,IAAI,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;AAC9C,gBAAgB;AAChB,oBAAoB,OAAO,EAAE,uBAAuB;AACpD,oBAAoB,UAAU,EAAE,CAAC,cAAc,KAAK,MAAM;AAC1D,wBAAwB,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,cAAc,EAAE,IAAI,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC;AACvG,oBAAoB,CAAC;AACrB,oBAAoB,IAAI,EAAE,CAAC,0BAA0B,CAAC;AACtD,oBAAoB,KAAK,EAAE,IAAI;AAC/B,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT,IAAI;AACJ;AACA;AACA;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,SAAS,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACzD,QAAQ,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACjC,YAAY,CAAC,EAAE;AACf,QAAQ,CAAC,CAAC;AACV,IAAI;AACJ,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC/K,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;AAC/N,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;AACjI;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxH,YAAY,IAAI,EAAE,QAAQ;AAC1B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;AACjE,oBAAoB,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;AACjE,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACxEvC;AACA;AACA;;;;"}
|
|
1
|
+
{"version":3,"file":"acorex-core-format.mjs","sources":["../tmp-esm2022/format/lib/format.config.js","../tmp-esm2022/format/lib/format.service.js","../tmp-esm2022/format/lib/format.directive.js","../tmp-esm2022/format/lib/format.pipe.js","../tmp-esm2022/format/lib/formatters/number.formatter.js","../tmp-esm2022/format/lib/formatters/string.formatter.js","../tmp-esm2022/format/lib/format.module.js","../tmp-esm2022/format/acorex-core-format.js"],"sourcesContent":["export class AXFormatter {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQWdCLFdBQVc7Q0FhaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdE9wdGlvbnMgfSBmcm9tICcuL2Zvcm1hdC50eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWEZvcm1hdHRlciB7XG4gIGFic3RyYWN0IGdldCBuYW1lKCk6IHN0cmluZztcblxuICAvKipcbiAgICogRm9ybWF0cyBhIHZhbHVlIHdpdGggb3B0aW9uYWwgb3B0aW9ucy5cbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCB2YWx1ZS5cbiAgICovXG4gIGFic3RyYWN0IGZvcm1hdCh2YWx1ZTogdW5rbm93biwgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9ucyB8IHN0cmluZyk6IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHVwZGF0ZSBpbnRlcnZhbCBpbiBtaWxsaXNlY29uZHMgZm9yIGZvcm1hdHRlcnMgdGhhdCBuZWVkIHBlcmlvZGljIHVwZGF0ZXMuXG4gICAqIElmIHNwZWNpZmllZCwgdGhlIGZvcm1hdCBwaXBlIHdpbGwgYXV0b21hdGljYWxseSByZWZyZXNoIHRoZSBmb3JtYXR0ZWQgdmFsdWUgYXQgdGhpcyBpbnRlcnZhbC5cbiAgICovXG4gIHVwZGF0ZUludGVydmFsPzogbnVtYmVyO1xufVxuIl19","import { inject, Injectable, Injector } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXFormatterRegistryService {\n constructor() {\n this.plugins = [];\n this.injector = inject(Injector);\n }\n register(...plugins) {\n plugins.forEach((t) => {\n const childInjector = Injector.create({\n providers: [{ provide: t, useClass: t, deps: [] }],\n parent: this.injector,\n });\n const v = childInjector.get(t);\n if (v && !this.plugins.some((p) => p.name == v.name)) {\n this.plugins.push(v);\n }\n });\n }\n get formatters() {\n return this.plugins;\n }\n /**\n * Resolves a formatter instance by its name.\n *\n * @param name - The formatter name.\n * @returns AXFormatter - The resolved formatter instance.\n * @throws Error when no formatter with the given name exists.\n */\n get(name) {\n const formatter = this.formatters.find((c) => c.name == name);\n if (!formatter) {\n throw new Error(`Formatter not found: ${name}`);\n }\n return formatter;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterRegistryService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\nexport class AXFormatService {\n constructor() {\n this.pluginRegistry = inject(AXFormatterRegistryService);\n this.renderSubject = new Subject();\n // Observable that other services/components can subscribe to\n this.onRender = this.renderSubject.asObservable();\n }\n /**\n * Triggers a render event for listeners that care about formatting updates.\n *\n * @returns void - Emits on the onRender observable.\n */\n render() {\n this.renderSubject.next();\n }\n // Implementation of the format method\n /**\n * Formats a value according to the formatter's rules.\n *\n * @param value - The value to format.\n * @param options - Optional options bag or string, depending on the formatter.\n * @returns string - The formatted result.\n */\n format(value, formatter, options) {\n if (typeof formatter === 'string') {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(value, options);\n }\n else {\n return new AXFormatFluent(this, this.pluginRegistry, value);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\nclass AXFormatFluent {\n constructor(formatService, pluginRegistry, initialValue) {\n this.formatService = formatService;\n this.pluginRegistry = pluginRegistry;\n this.initialValue = initialValue;\n }\n /**\n * Formats the value using the specified formatter and options.\n * @param formatter The name of the formatter to use.\n * @param options The options to pass to the formatter.\n * @returns The formatted string.\n */\n to(formatter, options) {\n try {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(this.initialValue, options);\n }\n catch (error) {\n return String(this.initialValue);\n }\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL2Zvcm1hdC9zcmMvbGliL2Zvcm1hdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU8vQixNQUFNLE9BQU8sMEJBQTBCO0lBSHZDO1FBSVUsWUFBTyxHQUFrQixFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztLQWtDckM7SUFoQ0MsUUFBUSxDQUFDLEdBQUcsT0FBa0M7UUFDNUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7Z0JBQ3BDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztnQkFDbEQsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRO2FBQ3RCLENBQUMsQ0FBQztZQUNILE1BQU0sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDckQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsR0FBRyxDQUFDLElBQVk7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOzhHQXBDVSwwQkFBMEI7a0hBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COztBQXlDRCxNQUFNLE9BQU8sZUFBZTtJQUQ1QjtRQUVVLG1CQUFjLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFFcEQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTVDLDZEQUE2RDtRQUM3RCxhQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztLQXFEOUM7SUFuREM7Ozs7T0FJRztJQUVILE1BQU07UUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUEwQkQsc0NBQXNDO0lBRXRDOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxLQUFjLEVBQUUsU0FBa0IsRUFBRSxPQUFhO1FBQ3RELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM3QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUQsQ0FBQztJQUNILENBQUM7OEdBMURVLGVBQWU7a0hBQWYsZUFBZSxjQURGLE1BQU07OzJGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7QUE4RGxDLE1BQU0sY0FBYztJQUNsQixZQUNVLGFBQThCLEVBQzlCLGNBQTBDLEVBQzFDLFlBQXFCO1FBRnJCLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBNEI7UUFDMUMsaUJBQVksR0FBWixZQUFZLENBQVM7SUFDNUIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsRUFBRSxDQUFxQyxTQUFZLEVBQUUsT0FBK0I7UUFDbEYsSUFBSSxDQUFDO1lBQ0gsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXQuY29uZmlnJztcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9uc01hcCB9IGZyb20gJy4vZm9ybWF0LnR5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwbHVnaW5zOiBBWEZvcm1hdHRlcltdID0gW107XG5cbiAgcHJpdmF0ZSBpbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG5cbiAgcmVnaXN0ZXIoLi4ucGx1Z2luczogKG5ldyAoKSA9PiBBWEZvcm1hdHRlcilbXSkge1xuICAgIHBsdWdpbnMuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgY29uc3QgY2hpbGRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogdCwgdXNlQ2xhc3M6IHQsIGRlcHM6IFtdIH1dLFxuICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IHYgPSBjaGlsZEluamVjdG9yLmdldCh0KTtcblxuICAgICAgaWYgKHYgJiYgIXRoaXMucGx1Z2lucy5zb21lKChwKSA9PiBwLm5hbWUgPT0gdi5uYW1lKSkge1xuICAgICAgICB0aGlzLnBsdWdpbnMucHVzaCh2KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCBmb3JtYXR0ZXJzKCk6IEFYRm9ybWF0dGVyW10ge1xuICAgIHJldHVybiB0aGlzLnBsdWdpbnM7XG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgYSBmb3JtYXR0ZXIgaW5zdGFuY2UgYnkgaXRzIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIC0gVGhlIGZvcm1hdHRlciBuYW1lLlxuICAgKiBAcmV0dXJucyBBWEZvcm1hdHRlciAtIFRoZSByZXNvbHZlZCBmb3JtYXR0ZXIgaW5zdGFuY2UuXG4gICAqIEB0aHJvd3MgRXJyb3Igd2hlbiBubyBmb3JtYXR0ZXIgd2l0aCB0aGUgZ2l2ZW4gbmFtZSBleGlzdHMuXG4gICAqL1xuICBnZXQobmFtZTogc3RyaW5nKTogQVhGb3JtYXR0ZXIge1xuICAgIGNvbnN0IGZvcm1hdHRlciA9IHRoaXMuZm9ybWF0dGVycy5maW5kKChjKSA9PiBjLm5hbWUgPT0gbmFtZSk7XG4gICAgaWYgKCFmb3JtYXR0ZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRm9ybWF0dGVyIG5vdCBmb3VuZDogJHtuYW1lfWApO1xuICAgIH1cbiAgICByZXR1cm4gZm9ybWF0dGVyO1xuICB9XG59XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhGb3JtYXRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBwbHVnaW5SZWdpc3RyeSA9IGluamVjdChBWEZvcm1hdHRlclJlZ2lzdHJ5U2VydmljZSk7XG5cbiAgcHJpdmF0ZSByZW5kZXJTdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvLyBPYnNlcnZhYmxlIHRoYXQgb3RoZXIgc2VydmljZXMvY29tcG9uZW50cyBjYW4gc3Vic2NyaWJlIHRvXG4gIG9uUmVuZGVyID0gdGhpcy5yZW5kZXJTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIC8qKlxuICAgKiBUcmlnZ2VycyBhIHJlbmRlciBldmVudCBmb3IgbGlzdGVuZXJzIHRoYXQgY2FyZSBhYm91dCBmb3JtYXR0aW5nIHVwZGF0ZXMuXG4gICAqXG4gICAqIEByZXR1cm5zIHZvaWQgLSBFbWl0cyBvbiB0aGUgb25SZW5kZXIgb2JzZXJ2YWJsZS5cbiAgICovXG5cbiAgcmVuZGVyKCkge1xuICAgIHRoaXMucmVuZGVyU3ViamVjdC5uZXh0KCk7XG4gIH1cblxuICAvL1RPRE9cbiAgLy8gT3ZlcmxvYWQgZm9yIHRyYWRpdGlvbmFsIGZvcm1hdHRpbmdcblxuICAvKipcbiAgICogRm9ybWF0cyBhIHZhbHVlIHVzaW5nIHRoZSBzcGVjaWZpZWQgZm9ybWF0dGVyIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byBmb3JtYXQuXG4gICAqIEBwYXJhbSBmb3JtYXR0ZXIgLSBUaGUgZm9ybWF0dGVyIG5hbWUgdG8gdXNlIChlLmcuLCAnbnVtYmVyJywgJ3N0cmluZycpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbmFsIG9wdGlvbnMgc3BlY2lmaWMgdG8gdGhlIGZvcm1hdHRlci5cbiAgICogQHJldHVybnMgc3RyaW5nIC0gVGhlIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAqL1xuXG4gIGZvcm1hdCh2YWx1ZTogdW5rbm93biwgZm9ybWF0dGVyOiBzdHJpbmcsIG9wdGlvbnM/OiBhbnkpOiBzdHJpbmc7XG5cbiAgLy8gT3ZlcmxvYWQgZm9yIHN0YXJ0aW5nIGZsdWVudCBBUEkgY2hhaW5cblxuICAvKipcbiAgICogU3RhcnRzIGEgZmx1ZW50IGZvcm1hdHRpbmcgY2hhaW4uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBpbnB1dCB2YWx1ZSB0byBmb3JtYXQuXG4gICAqIEByZXR1cm5zIEFYRm9ybWF0Rmx1ZW50IC0gQSBmbHVlbnQgQVBJIG9iamVjdCBmb3IgY2hhaW5pbmcuXG4gICAqL1xuICBmb3JtYXQodmFsdWU6IHVua25vd24pOiBBWEZvcm1hdEZsdWVudDtcblxuICAvLyBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgZm9ybWF0IG1ldGhvZFxuXG4gIC8qKlxuICAgKiBGb3JtYXRzIGEgdmFsdWUgYWNjb3JkaW5nIHRvIHRoZSBmb3JtYXR0ZXIncyBydWxlcy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGZvcm1hdC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBvcHRpb25zIGJhZyBvciBzdHJpbmcsIGRlcGVuZGluZyBvbiB0aGUgZm9ybWF0dGVyLlxuICAgKiBAcmV0dXJucyBzdHJpbmcgLSBUaGUgZm9ybWF0dGVkIHJlc3VsdC5cbiAgICovXG4gIGZvcm1hdCh2YWx1ZTogdW5rbm93biwgZm9ybWF0dGVyPzogc3RyaW5nLCBvcHRpb25zPzogYW55KTogc3RyaW5nIHwgQVhGb3JtYXRGbHVlbnQge1xuICAgIGlmICh0eXBlb2YgZm9ybWF0dGVyID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgZm9ybWF0dGVyUmVmID0gdGhpcy5wbHVnaW5SZWdpc3RyeS5nZXQoZm9ybWF0dGVyKTtcbiAgICAgIHJldHVybiBmb3JtYXR0ZXJSZWYuZm9ybWF0KHZhbHVlLCBvcHRpb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG5ldyBBWEZvcm1hdEZsdWVudCh0aGlzLCB0aGlzLnBsdWdpblJlZ2lzdHJ5LCB2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbmNsYXNzIEFYRm9ybWF0Rmx1ZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlOiBBWEZvcm1hdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwbHVnaW5SZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBpbml0aWFsVmFsdWU6IHVua25vd24sXG4gICkge31cblxuICAvKipcbiAgICogRm9ybWF0cyB0aGUgdmFsdWUgdXNpbmcgdGhlIHNwZWNpZmllZCBmb3JtYXR0ZXIgYW5kIG9wdGlvbnMuXG4gICAqIEBwYXJhbSBmb3JtYXR0ZXIgVGhlIG5hbWUgb2YgdGhlIGZvcm1hdHRlciB0byB1c2UuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIHRvIHBhc3MgdG8gdGhlIGZvcm1hdHRlci5cbiAgICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAqL1xuICB0bzxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihmb3JtYXR0ZXI6IEssIG9wdGlvbnM/OiBBWEZvcm1hdE9wdGlvbnNNYXBbS10pOiBzdHJpbmcge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBmb3JtYXR0ZXJSZWYgPSB0aGlzLnBsdWdpblJlZ2lzdHJ5LmdldChmb3JtYXR0ZXIpO1xuICAgICAgcmV0dXJuIGZvcm1hdHRlclJlZi5mb3JtYXQodGhpcy5pbml0aWFsVmFsdWUsIG9wdGlvbnMpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHRoaXMuaW5pdGlhbFZhbHVlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { Directive, TemplateRef, ViewContainerRef, inject } from '@angular/core';\nimport { AXFormatService } from './format.service';\nimport * as i0 from \"@angular/core\";\nexport class AXFormatterDirective {\n constructor() {\n this.templateRef = inject(TemplateRef);\n this.viewContainer = inject(ViewContainerRef);\n this.formatService = inject(AXFormatService);\n }\n ngOnInit() {\n this.viewContainer.clear();\n this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: (value, formatter, options) => {\n return this.formatService.format(value, formatter, options);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.9\", type: AXFormatterDirective, isStandalone: true, selector: \"[formatter]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatterDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[formatter]',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU1uRCxNQUFNLE9BQU8sb0JBQW9CO0lBSGpDO1FBSVUsZ0JBQVcsR0FBRyxNQUFNLENBQW1CLFdBQVcsQ0FBQyxDQUFDO1FBQ3BELGtCQUFhLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDekMsa0JBQWEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7S0FjakQ7SUFaQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDdEQsU0FBUyxFQUFFLENBQ1QsS0FBYyxFQUNkLFNBQVksRUFDWixPQUErQixFQUMvQixFQUFFO2dCQUNGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM5RCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FoQlUsb0JBQW9CO2tHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRm9ybWF0U2VydmljZSB9IGZyb20gJy4vZm9ybWF0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zTWFwIH0gZnJvbSAnLi9mb3JtYXQudHlwZXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZm9ybWF0dGVyXScsXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybWF0dGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSB0ZW1wbGF0ZVJlZiA9IGluamVjdDxUZW1wbGF0ZVJlZjxhbnk+PihUZW1wbGF0ZVJlZik7XG4gIHByaXZhdGUgdmlld0NvbnRhaW5lciA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBmb3JtYXRTZXJ2aWNlID0gaW5qZWN0KEFYRm9ybWF0U2VydmljZSk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyLmNsZWFyKCk7XG4gICAgdGhpcy52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmLCB7XG4gICAgICAkaW1wbGljaXQ6IDxLIGV4dGVuZHMga2V5b2YgQVhGb3JtYXRPcHRpb25zTWFwPihcbiAgICAgICAgdmFsdWU6IHVua25vd24sXG4gICAgICAgIGZvcm1hdHRlcjogSyxcbiAgICAgICAgb3B0aW9ucz86IEFYRm9ybWF0T3B0aW9uc01hcFtLXSxcbiAgICAgICkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh2YWx1ZSwgZm9ybWF0dGVyLCBvcHRpb25zKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { AXEventService, AXSystemEvents } from '@acorex/core/events';\nimport { Pipe, inject } from '@angular/core';\nimport { filter, interval, map, merge, shareReplay, startWith } from 'rxjs';\nimport { AXFormatService, AXFormatterRegistryService } from './format.service';\nimport * as i0 from \"@angular/core\";\n// Shared interval streams cache to avoid creating multiple intervals for the same duration\nconst intervalCache = new Map();\nfunction getSharedInterval(ms) {\n let cached = intervalCache.get(ms);\n if (!cached) {\n cached = interval(ms).pipe(shareReplay({ bufferSize: 1, refCount: true }));\n intervalCache.set(ms, cached);\n }\n return cached;\n}\nexport class AXFormatPipe {\n constructor() {\n this.formatService = inject(AXFormatService);\n this.eventService = inject(AXEventService);\n this.formatterRegistry = inject(AXFormatterRegistryService);\n this.triggers = [...Object.values(AXSystemEvents).map((event) => event)];\n }\n /**\n * Angular pipe for formatting values reactively. Re-evaluates when system events (such as language change) occur.\n *\n * @param value - The input value to format.\n * @param name - The formatter name.\n * @param options - Optional options specific to the formatter.\n * @returns Observable<string> - Emits the formatted string and updates on system events.\n */\n transform(value, name, options) {\n // Get the formatter to check if it needs periodic updates\n const formatter = this.formatterRegistry.get(name);\n // System events stream (language changes, etc.)\n const systemEvents$ = this.eventService.onEvent.pipe(filter((event) => this.triggers.includes(event.type)));\n // If formatter has updateInterval, create a periodic update stream\n if (formatter.updateInterval) {\n // Use shared interval to optimize performance when multiple instances exist\n const periodicUpdates$ = getSharedInterval(formatter.updateInterval);\n // Merge system events and periodic updates\n return merge(systemEvents$, periodicUpdates$).pipe(startWith(null), // Emit initial value immediately\n map(() => this.formatService.format(value, name, options)));\n }\n // For non-periodic formatters, use the original behavior\n return systemEvents$.pipe(startWith(null), map(() => this.formatService.format(value, name, options)));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }\n static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"14.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, isStandalone: true, name: \"format\" }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatPipe, decorators: [{\n type: Pipe,\n args: [{\n name: 'format',\n pure: true,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL2Zvcm1hdC9zcmMvbGliL2Zvcm1hdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEYsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBYyxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRy9FLDJGQUEyRjtBQUMzRixNQUFNLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBOEIsQ0FBQztBQUU1RCxTQUFTLGlCQUFpQixDQUFDLEVBQVU7SUFDbkMsSUFBSSxNQUFNLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNuQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixNQUFNLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0UsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFNRCxNQUFNLE9BQU8sWUFBWTtJQUp6QjtRQUtVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLGlCQUFZLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLHNCQUFpQixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRXZELGFBQVEsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQWUsQ0FBQyxDQUFDLENBQUM7S0FzQ3ZGO0lBcENDOzs7Ozs7O09BT0c7SUFFSCxTQUFTLENBQUMsS0FBYyxFQUFFLElBQVksRUFBRSxPQUFrQztRQUN4RSwwREFBMEQ7UUFDMUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuRCxnREFBZ0Q7UUFDaEQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNsRCxNQUFNLENBQUMsQ0FBQyxLQUFrQixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBc0IsQ0FBQyxDQUFDLENBQ3JGLENBQUM7UUFFRixtRUFBbUU7UUFDbkUsSUFBSSxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDN0IsNEVBQTRFO1lBQzVFLE1BQU0sZ0JBQWdCLEdBQUcsaUJBQWlCLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBRXJFLDJDQUEyQztZQUMzQyxPQUFPLEtBQUssQ0FBQyxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxJQUFJLENBQ2hELFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxpQ0FBaUM7WUFDbEQsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFXLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FDbEUsQ0FBQztRQUNKLENBQUM7UUFFRCx5REFBeUQ7UUFDekQsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUN2QixTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxJQUFXLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FDbEUsQ0FBQztJQUNKLENBQUM7OEdBMUNVLFlBQVk7NEdBQVosWUFBWTs7MkZBQVosWUFBWTtrQkFKeEIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsUUFBUTtvQkFDZCxJQUFJLEVBQUUsSUFBSTtpQkFDWCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRXZlbnREYXRhLCBBWEV2ZW50U2VydmljZSwgQVhTeXN0ZW1FdmVudHMgfSBmcm9tICdAYWNvcmV4L2NvcmUvZXZlbnRzJztcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZmlsdGVyLCBpbnRlcnZhbCwgbWFwLCBtZXJnZSwgc2hhcmVSZXBsYXksIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhGb3JtYXRTZXJ2aWNlLCBBWEZvcm1hdHRlclJlZ2lzdHJ5U2VydmljZSB9IGZyb20gJy4vZm9ybWF0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zIH0gZnJvbSAnLi9mb3JtYXQudHlwZXMnO1xuXG4vLyBTaGFyZWQgaW50ZXJ2YWwgc3RyZWFtcyBjYWNoZSB0byBhdm9pZCBjcmVhdGluZyBtdWx0aXBsZSBpbnRlcnZhbHMgZm9yIHRoZSBzYW1lIGR1cmF0aW9uXG5jb25zdCBpbnRlcnZhbENhY2hlID0gbmV3IE1hcDxudW1iZXIsIE9ic2VydmFibGU8bnVtYmVyPj4oKTtcblxuZnVuY3Rpb24gZ2V0U2hhcmVkSW50ZXJ2YWwobXM6IG51bWJlcik6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gIGxldCBjYWNoZWQgPSBpbnRlcnZhbENhY2hlLmdldChtcyk7XG4gIGlmICghY2FjaGVkKSB7XG4gICAgY2FjaGVkID0gaW50ZXJ2YWwobXMpLnBpcGUoc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSk7XG4gICAgaW50ZXJ2YWxDYWNoZS5zZXQobXMsIGNhY2hlZCk7XG4gIH1cbiAgcmV0dXJuIGNhY2hlZDtcbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnZm9ybWF0JyxcbiAgcHVyZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhGb3JtYXRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIHByaXZhdGUgZm9ybWF0U2VydmljZSA9IGluamVjdChBWEZvcm1hdFNlcnZpY2UpO1xuICBwcml2YXRlIGV2ZW50U2VydmljZSA9IGluamVjdChBWEV2ZW50U2VydmljZSk7XG4gIHByaXZhdGUgZm9ybWF0dGVyUmVnaXN0cnkgPSBpbmplY3QoQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgdHJpZ2dlcnMgPSBbLi4uT2JqZWN0LnZhbHVlcyhBWFN5c3RlbUV2ZW50cykubWFwKChldmVudCkgPT4gZXZlbnQgYXMgc3RyaW5nKV07XG5cbiAgLyoqXG4gICAqIEFuZ3VsYXIgcGlwZSBmb3IgZm9ybWF0dGluZyB2YWx1ZXMgcmVhY3RpdmVseS4gUmUtZXZhbHVhdGVzIHdoZW4gc3lzdGVtIGV2ZW50cyAoc3VjaCBhcyBsYW5ndWFnZSBjaGFuZ2UpIG9jY3VyLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgaW5wdXQgdmFsdWUgdG8gZm9ybWF0LlxuICAgKiBAcGFyYW0gbmFtZSAtIFRoZSBmb3JtYXR0ZXIgbmFtZS5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBvcHRpb25zIHNwZWNpZmljIHRvIHRoZSBmb3JtYXR0ZXIuXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8c3RyaW5nPiAtIEVtaXRzIHRoZSBmb3JtYXR0ZWQgc3RyaW5nIGFuZCB1cGRhdGVzIG9uIHN5c3RlbSBldmVudHMuXG4gICAqL1xuXG4gIHRyYW5zZm9ybSh2YWx1ZTogdW5rbm93biwgbmFtZTogc3RyaW5nLCBvcHRpb25zPzogQVhGb3JtYXRPcHRpb25zIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAvLyBHZXQgdGhlIGZvcm1hdHRlciB0byBjaGVjayBpZiBpdCBuZWVkcyBwZXJpb2RpYyB1cGRhdGVzXG4gICAgY29uc3QgZm9ybWF0dGVyID0gdGhpcy5mb3JtYXR0ZXJSZWdpc3RyeS5nZXQobmFtZSk7XG5cbiAgICAvLyBTeXN0ZW0gZXZlbnRzIHN0cmVhbSAobGFuZ3VhZ2UgY2hhbmdlcywgZXRjLilcbiAgICBjb25zdCBzeXN0ZW1FdmVudHMkID0gdGhpcy5ldmVudFNlcnZpY2Uub25FdmVudC5waXBlKFxuICAgICAgZmlsdGVyKChldmVudDogQVhFdmVudERhdGEpID0+IHRoaXMudHJpZ2dlcnMuaW5jbHVkZXMoZXZlbnQudHlwZSBhcyBBWFN5c3RlbUV2ZW50cykpLFxuICAgICk7XG5cbiAgICAvLyBJZiBmb3JtYXR0ZXIgaGFzIHVwZGF0ZUludGVydmFsLCBjcmVhdGUgYSBwZXJpb2RpYyB1cGRhdGUgc3RyZWFtXG4gICAgaWYgKGZvcm1hdHRlci51cGRhdGVJbnRlcnZhbCkge1xuICAgICAgLy8gVXNlIHNoYXJlZCBpbnRlcnZhbCB0byBvcHRpbWl6ZSBwZXJmb3JtYW5jZSB3aGVuIG11bHRpcGxlIGluc3RhbmNlcyBleGlzdFxuICAgICAgY29uc3QgcGVyaW9kaWNVcGRhdGVzJCA9IGdldFNoYXJlZEludGVydmFsKGZvcm1hdHRlci51cGRhdGVJbnRlcnZhbCk7XG5cbiAgICAgIC8vIE1lcmdlIHN5c3RlbSBldmVudHMgYW5kIHBlcmlvZGljIHVwZGF0ZXNcbiAgICAgIHJldHVybiBtZXJnZShzeXN0ZW1FdmVudHMkLCBwZXJpb2RpY1VwZGF0ZXMkKS5waXBlKFxuICAgICAgICBzdGFydFdpdGgobnVsbCksIC8vIEVtaXQgaW5pdGlhbCB2YWx1ZSBpbW1lZGlhdGVseVxuICAgICAgICBtYXAoKCkgPT4gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh2YWx1ZSwgbmFtZSBhcyBhbnksIG9wdGlvbnMpKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gRm9yIG5vbi1wZXJpb2RpYyBmb3JtYXR0ZXJzLCB1c2UgdGhlIG9yaWdpbmFsIGJlaGF2aW9yXG4gICAgcmV0dXJuIHN5c3RlbUV2ZW50cyQucGlwZShcbiAgICAgIHN0YXJ0V2l0aChudWxsKSxcbiAgICAgIG1hcCgoKSA9PiB0aGlzLmZvcm1hdFNlcnZpY2UuZm9ybWF0KHZhbHVlLCBuYW1lIGFzIGFueSwgb3B0aW9ucykpLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","import { Injectable } from '@angular/core';\nimport { defaults, isInteger, padStart } from 'lodash-es';\nimport * as i0 from \"@angular/core\";\nexport class AXNumberFormatter {\n constructor() {\n this.separatorsCache = {};\n }\n get name() {\n return 'number';\n }\n format(value, options) {\n const { thousandSeparator, decimalSeparator } = this.getLocaleSeparators(options?.locale);\n // Merge user options with default options\n const effectiveOptions = defaults({}, options, {\n thousandSeparator,\n decimalSeparator,\n zeroPadLength: 0,\n locale: navigator.language,\n });\n const sign = value < 0 ? '-' : '';\n const absoluteValue = Math.abs(value);\n // Handling zero padding for integer part\n let integerPart = Math.floor(absoluteValue).toString();\n if (effectiveOptions.zeroPadLength && effectiveOptions.zeroPadLength > integerPart.length) {\n integerPart = padStart(integerPart, effectiveOptions.zeroPadLength, '0');\n }\n // Applying thousand separator to integer part\n if (effectiveOptions.thousandSeparator) {\n integerPart = integerPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, effectiveOptions.thousandSeparator);\n }\n // Constructing the final formatted value\n let formattedValue = sign + integerPart;\n if (effectiveOptions.decimalPlaces !== undefined) {\n // Limiting decimal places if specified\n const decimalPart = absoluteValue.toFixed(effectiveOptions.decimalPlaces).split('.')[1];\n formattedValue += effectiveOptions.decimalSeparator + decimalPart;\n }\n else if (!isInteger(value)) {\n // Showing full decimal part if decimalPlaces is not specified\n const decimalPart = absoluteValue.toString().split('.')[1] || '';\n if (decimalPart.length > 0) {\n formattedValue += effectiveOptions.decimalSeparator + decimalPart;\n }\n }\n return formattedValue;\n }\n getLocaleSeparators(locale = navigator.language) {\n // Use cache if available\n if (this.separatorsCache[locale]) {\n return this.separatorsCache[locale];\n }\n const numberFormat = new Intl.NumberFormat(locale);\n const parts = numberFormat.formatToParts(1234567.89);\n let thousandSeparator = '';\n let decimalSeparator = '';\n for (const part of parts) {\n if (part.type === 'group') {\n thousandSeparator = part.value;\n }\n else if (part.type === 'decimal') {\n decimalSeparator = part.value;\n }\n }\n // Cache the result\n this.separatorsCache[locale] = { thousandSeparator, decimalSeparator };\n return this.separatorsCache[locale];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXNumberFormatter, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0dGVycy9udW1iZXIuZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDOztBQW1CMUQsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVVLG9CQUFlLEdBQVEsRUFBRSxDQUFDO0tBeUVuQztJQXZFQyxJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWEsRUFBRSxPQUFpQztRQUNyRCxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFGLDBDQUEwQztRQUMxQyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFO1lBQzdDLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsYUFBYSxFQUFFLENBQUM7WUFDaEIsTUFBTSxFQUFFLFNBQVMsQ0FBQyxRQUFRO1NBQzNCLENBQUMsQ0FBQztRQUVILE1BQU0sSUFBSSxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2xDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMseUNBQXlDO1FBQ3pDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkQsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLElBQUksZ0JBQWdCLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxRixXQUFXLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUVELDhDQUE4QztRQUM5QyxJQUFJLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNqRyxDQUFDO1FBRUQseUNBQXlDO1FBQ3pDLElBQUksY0FBYyxHQUFHLElBQUksR0FBRyxXQUFXLENBQUM7UUFDeEMsSUFBSSxnQkFBZ0IsQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakQsdUNBQXVDO1lBQ3ZDLE1BQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hGLGNBQWMsSUFBSSxnQkFBZ0IsQ0FBQyxnQkFBZ0IsR0FBRyxXQUFXLENBQUM7UUFDcEUsQ0FBQzthQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3Qiw4REFBOEQ7WUFDOUQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakUsSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMzQixjQUFjLElBQUksZ0JBQWdCLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDO1lBQ3BFLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUVPLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsUUFBUTtRQUlyRCx5QkFBeUI7UUFDekIsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7UUFFRCxNQUFNLFlBQVksR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNyRCxJQUFJLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUUxQixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ3pCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDMUIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNqQyxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDbkMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQztRQUVELG1CQUFtQjtRQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQztRQUN2RSxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEMsQ0FBQzs4R0F6RVUsaUJBQWlCO2tIQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkZWZhdWx0cywgaXNJbnRlZ2VyLCBwYWRTdGFydCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlciB9IGZyb20gJy4uL2Zvcm1hdC5jb25maWcnO1xuaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zIH0gZnJvbSAnLi4vZm9ybWF0LnR5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBBWE51bWJlckZvcm1hdHRlck9wdGlvbnMgZXh0ZW5kcyBBWEZvcm1hdE9wdGlvbnMge1xuICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICB0aG91c2FuZFNlcGFyYXRvcj86IHN0cmluZztcbiAgZGVjaW1hbFNlcGFyYXRvcj86IHN0cmluZztcbiAgemVyb1BhZExlbmd0aD86IG51bWJlcjsgLy8gTmV3IG9wdGlvbiBmb3IgemVybyBwYWRkaW5nLFxuICBsb2NhbGU/OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgbW9kdWxlICcuLi9mb3JtYXQudHlwZXMnIHtcbiAgaW50ZXJmYWNlIEFYRm9ybWF0T3B0aW9uc01hcCB7XG4gICAgbnVtYmVyOiBBWE51bWJlckZvcm1hdHRlck9wdGlvbnM7XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTnVtYmVyRm9ybWF0dGVyIGltcGxlbWVudHMgQVhGb3JtYXR0ZXIge1xuICBwcml2YXRlIHNlcGFyYXRvcnNDYWNoZTogYW55ID0ge307XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ251bWJlcic7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IG51bWJlciwgb3B0aW9uczogQVhOdW1iZXJGb3JtYXR0ZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHRob3VzYW5kU2VwYXJhdG9yLCBkZWNpbWFsU2VwYXJhdG9yIH0gPSB0aGlzLmdldExvY2FsZVNlcGFyYXRvcnMob3B0aW9ucz8ubG9jYWxlKTtcbiAgICAvLyBNZXJnZSB1c2VyIG9wdGlvbnMgd2l0aCBkZWZhdWx0IG9wdGlvbnNcbiAgICBjb25zdCBlZmZlY3RpdmVPcHRpb25zID0gZGVmYXVsdHMoe30sIG9wdGlvbnMsIHtcbiAgICAgIHRob3VzYW5kU2VwYXJhdG9yLFxuICAgICAgZGVjaW1hbFNlcGFyYXRvcixcbiAgICAgIHplcm9QYWRMZW5ndGg6IDAsXG4gICAgICBsb2NhbGU6IG5hdmlnYXRvci5sYW5ndWFnZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNpZ24gPSB2YWx1ZSA8IDAgPyAnLScgOiAnJztcbiAgICBjb25zdCBhYnNvbHV0ZVZhbHVlID0gTWF0aC5hYnModmFsdWUpO1xuXG4gICAgLy8gSGFuZGxpbmcgemVybyBwYWRkaW5nIGZvciBpbnRlZ2VyIHBhcnRcbiAgICBsZXQgaW50ZWdlclBhcnQgPSBNYXRoLmZsb29yKGFic29sdXRlVmFsdWUpLnRvU3RyaW5nKCk7XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMuemVyb1BhZExlbmd0aCAmJiBlZmZlY3RpdmVPcHRpb25zLnplcm9QYWRMZW5ndGggPiBpbnRlZ2VyUGFydC5sZW5ndGgpIHtcbiAgICAgIGludGVnZXJQYXJ0ID0gcGFkU3RhcnQoaW50ZWdlclBhcnQsIGVmZmVjdGl2ZU9wdGlvbnMuemVyb1BhZExlbmd0aCwgJzAnKTtcbiAgICB9XG5cbiAgICAvLyBBcHBseWluZyB0aG91c2FuZCBzZXBhcmF0b3IgdG8gaW50ZWdlciBwYXJ0XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMudGhvdXNhbmRTZXBhcmF0b3IpIHtcbiAgICAgIGludGVnZXJQYXJ0ID0gaW50ZWdlclBhcnQucmVwbGFjZSgvXFxCKD89KFxcZHszfSkrKD8hXFxkKSkvZywgZWZmZWN0aXZlT3B0aW9ucy50aG91c2FuZFNlcGFyYXRvcik7XG4gICAgfVxuXG4gICAgLy8gQ29uc3RydWN0aW5nIHRoZSBmaW5hbCBmb3JtYXR0ZWQgdmFsdWVcbiAgICBsZXQgZm9ybWF0dGVkVmFsdWUgPSBzaWduICsgaW50ZWdlclBhcnQ7XG4gICAgaWYgKGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFBsYWNlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBMaW1pdGluZyBkZWNpbWFsIHBsYWNlcyBpZiBzcGVjaWZpZWRcbiAgICAgIGNvbnN0IGRlY2ltYWxQYXJ0ID0gYWJzb2x1dGVWYWx1ZS50b0ZpeGVkKGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFBsYWNlcykuc3BsaXQoJy4nKVsxXTtcbiAgICAgIGZvcm1hdHRlZFZhbHVlICs9IGVmZmVjdGl2ZU9wdGlvbnMuZGVjaW1hbFNlcGFyYXRvciArIGRlY2ltYWxQYXJ0O1xuICAgIH0gZWxzZSBpZiAoIWlzSW50ZWdlcih2YWx1ZSkpIHtcbiAgICAgIC8vIFNob3dpbmcgZnVsbCBkZWNpbWFsIHBhcnQgaWYgZGVjaW1hbFBsYWNlcyBpcyBub3Qgc3BlY2lmaWVkXG4gICAgICBjb25zdCBkZWNpbWFsUGFydCA9IGFic29sdXRlVmFsdWUudG9TdHJpbmcoKS5zcGxpdCgnLicpWzFdIHx8ICcnO1xuICAgICAgaWYgKGRlY2ltYWxQYXJ0Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9ybWF0dGVkVmFsdWUgKz0gZWZmZWN0aXZlT3B0aW9ucy5kZWNpbWFsU2VwYXJhdG9yICsgZGVjaW1hbFBhcnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdHRlZFZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbGVTZXBhcmF0b3JzKGxvY2FsZSA9IG5hdmlnYXRvci5sYW5ndWFnZSk6IHtcbiAgICB0aG91c2FuZFNlcGFyYXRvcjogc3RyaW5nO1xuICAgIGRlY2ltYWxTZXBhcmF0b3I6IHN0cmluZztcbiAgfSB7XG4gICAgLy8gVXNlIGNhY2hlIGlmIGF2YWlsYWJsZVxuICAgIGlmICh0aGlzLnNlcGFyYXRvcnNDYWNoZVtsb2NhbGVdKSB7XG4gICAgICByZXR1cm4gdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXTtcbiAgICB9XG5cbiAgICBjb25zdCBudW1iZXJGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlKTtcbiAgICBjb25zdCBwYXJ0cyA9IG51bWJlckZvcm1hdC5mb3JtYXRUb1BhcnRzKDEyMzQ1NjcuODkpO1xuICAgIGxldCB0aG91c2FuZFNlcGFyYXRvciA9ICcnO1xuICAgIGxldCBkZWNpbWFsU2VwYXJhdG9yID0gJyc7XG5cbiAgICBmb3IgKGNvbnN0IHBhcnQgb2YgcGFydHMpIHtcbiAgICAgIGlmIChwYXJ0LnR5cGUgPT09ICdncm91cCcpIHtcbiAgICAgICAgdGhvdXNhbmRTZXBhcmF0b3IgPSBwYXJ0LnZhbHVlO1xuICAgICAgfSBlbHNlIGlmIChwYXJ0LnR5cGUgPT09ICdkZWNpbWFsJykge1xuICAgICAgICBkZWNpbWFsU2VwYXJhdG9yID0gcGFydC52YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDYWNoZSB0aGUgcmVzdWx0XG4gICAgdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXSA9IHsgdGhvdXNhbmRTZXBhcmF0b3IsIGRlY2ltYWxTZXBhcmF0b3IgfTtcbiAgICByZXR1cm4gdGhpcy5zZXBhcmF0b3JzQ2FjaGVbbG9jYWxlXTtcbiAgfVxufVxuIl19","import { get } from 'lodash-es';\nexport class AXStringFormatter {\n get name() {\n return 'string';\n }\n format(value, options) {\n if (typeof value != 'string')\n return String(value);\n const result = get(options, value)\n ? get(options, value)\n : value.replace(/{{\\s*([^}]+)\\s*}}/g, (match, path) => {\n return get(options, path.trim()) ?? match;\n });\n return result;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0dGVycy9zdHJpbmcuZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFjaEMsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixJQUFJLElBQUk7UUFDTixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWMsRUFBRSxPQUFpQztRQUN0RCxJQUFJLE9BQU8sS0FBSyxJQUFJLFFBQVE7WUFBRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztZQUNoQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDckIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUU7Z0JBQzFELE9BQVEsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQVksSUFBSSxLQUFLLENBQUM7WUFDeEQsQ0FBQyxDQUFDLENBQUM7UUFFUCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQVhGb3JtYXR0ZXIgfSBmcm9tICcuLi9mb3JtYXQuY29uZmlnJztcbmltcG9ydCB7IEFYRm9ybWF0T3B0aW9ucyB9IGZyb20gJy4uL2Zvcm1hdC50eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhTdHJpbmdGb3JtYXR0ZXJPcHRpb25zIGV4dGVuZHMgQVhGb3JtYXRPcHRpb25zIHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5kZWNsYXJlIG1vZHVsZSAnLi4vZm9ybWF0LnR5cGVzJyB7XG4gIGludGVyZmFjZSBBWEZvcm1hdE9wdGlvbnNNYXAge1xuICAgIHN0cmluZzogQVhTdHJpbmdGb3JtYXR0ZXJPcHRpb25zO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBWFN0cmluZ0Zvcm1hdHRlciBpbXBsZW1lbnRzIEFYRm9ybWF0dGVyIHtcbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3N0cmluZyc7XG4gIH1cblxuICBmb3JtYXQodmFsdWU6IHVua25vd24sIG9wdGlvbnM6IEFYU3RyaW5nRm9ybWF0dGVyT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPSAnc3RyaW5nJykgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gICAgY29uc3QgcmVzdWx0ID0gZ2V0KG9wdGlvbnMsIHZhbHVlKVxuICAgICAgPyBnZXQob3B0aW9ucywgdmFsdWUpXG4gICAgICA6IHZhbHVlLnJlcGxhY2UoL3t7XFxzKihbXn1dKylcXHMqfX0vZywgKG1hdGNoLCBwYXRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICByZXR1cm4gKGdldChvcHRpb25zLCBwYXRoLnRyaW0oKSkgYXMgc3RyaW5nKSA/PyBtYXRjaDtcbiAgICAgICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG59XG4iXX0=","import { NgModule, inject } from '@angular/core';\nimport { AXFormatterDirective } from './format.directive';\nimport { AXFormatPipe } from './format.pipe';\nimport { AXFormatterRegistryService } from './format.service';\nimport { AXNumberFormatter } from './formatters/number.formatter';\nimport { AXStringFormatter } from './formatters/string.formatter';\nimport * as i0 from \"@angular/core\";\nconst BUILT_IN_RULES = [AXNumberFormatter, AXStringFormatter];\nexport class AXFormatModule {\n /**\n * Configures the module for the root injector, optionally registering custom formatters.\n *\n * @param configs - Optional configuration containing custom formatter classes.\n * @returns ModuleWithProviders<AXFormatModule>\n */\n static forRoot(configs) {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\n ],\n };\n }\n /**\n * Configures the module for a feature injector, optionally registering custom formatters.\n *\n * @param configs - Optional configuration containing custom formatter classes.\n * @returns ModuleWithProviders<AXFormatModule>\n */\n static forChild(configs) {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\n ],\n };\n }\n /**\n * @ignore\n */\n constructor() {\n const instances = inject('AXFormatModuleFactory');\n instances.forEach((f) => {\n f();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, imports: [AXFormatterDirective, AXFormatPipe], exports: [AXFormatterDirective, AXFormatPipe] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFormatModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXFormatterDirective, AXFormatPipe],\n exports: [AXFormatterDirective, AXFormatPipe],\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZm9ybWF0L3NyYy9saWIvZm9ybWF0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFbEUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBVTlELE1BQU0sT0FBTyxjQUFjO0lBQ3pCOzs7OztPQUtHO0lBRUgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUErQjtRQUM1QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztnQkFDOUI7b0JBQ0UsT0FBTyxFQUFFLHVCQUF1QjtvQkFDaEMsVUFBVSxFQUFFLENBQUMsY0FBMEMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO3dCQUMvRCxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2xGLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ2xDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBRUgsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUErQjtRQUM3QyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEdBQUcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztnQkFDOUI7b0JBQ0UsT0FBTyxFQUFFLHVCQUF1QjtvQkFDaEMsVUFBVSxFQUFFLENBQUMsY0FBMEMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO3dCQUMvRCxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLGNBQWMsRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ2xGLENBQUM7b0JBQ0QsSUFBSSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ2xDLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0g7UUFDRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQVEsdUJBQThCLENBQUMsQ0FBQztRQUVoRSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdEIsQ0FBQyxFQUFFLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBMURVLGNBQWM7K0dBQWQsY0FBYyxZQUhmLG9CQUFvQixFQUFFLFlBQVksYUFDbEMsb0JBQW9CLEVBQUUsWUFBWTsrR0FFakMsY0FBYzs7MkZBQWQsY0FBYztrQkFKMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxZQUFZLENBQUM7b0JBQzdDLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixFQUFFLFlBQVksQ0FBQztpQkFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0LmNvbmZpZyc7XG5pbXBvcnQgeyBBWEZvcm1hdHRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZm9ybWF0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEZvcm1hdFBpcGUgfSBmcm9tICcuL2Zvcm1hdC5waXBlJztcbmltcG9ydCB7IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi9mb3JtYXQuc2VydmljZSc7XG5pbXBvcnQgeyBBWE51bWJlckZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0dGVycy9udW1iZXIuZm9ybWF0dGVyJztcbmltcG9ydCB7IEFYU3RyaW5nRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXJzL3N0cmluZy5mb3JtYXR0ZXInO1xuXG5jb25zdCBCVUlMVF9JTl9SVUxFUyA9IFtBWE51bWJlckZvcm1hdHRlciwgQVhTdHJpbmdGb3JtYXR0ZXJdO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRm9ybWF0TW9kdWxlQ29uZmlncyB7XG4gIGZvcm1hdHRlcnM6IChuZXcgKCkgPT4gQVhGb3JtYXR0ZXIpW107XG59XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBWEZvcm1hdHRlckRpcmVjdGl2ZSwgQVhGb3JtYXRQaXBlXSxcbiAgZXhwb3J0czogW0FYRm9ybWF0dGVyRGlyZWN0aXZlLCBBWEZvcm1hdFBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBBWEZvcm1hdE1vZHVsZSB7XG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBtb2R1bGUgZm9yIHRoZSByb290IGluamVjdG9yLCBvcHRpb25hbGx5IHJlZ2lzdGVyaW5nIGN1c3RvbSBmb3JtYXR0ZXJzLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlncyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gY29udGFpbmluZyBjdXN0b20gZm9ybWF0dGVyIGNsYXNzZXMuXG4gICAqIEByZXR1cm5zIE1vZHVsZVdpdGhQcm92aWRlcnM8QVhGb3JtYXRNb2R1bGU+XG4gICAqL1xuXG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZ3M/OiBBWEZvcm1hdE1vZHVsZUNvbmZpZ3MpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYRm9ybWF0TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBWEZvcm1hdE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAuLi4oY29uZmlncz8uZm9ybWF0dGVycyB8fCBbXSksXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQVhGb3JtYXRNb2R1bGVGYWN0b3J5JyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiAocGx1Z2luUmVnaXN0cnk6IEFYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICBwbHVnaW5SZWdpc3RyeS5yZWdpc3RlciguLi5bLi4uQlVJTFRfSU5fUlVMRVMsIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKV0pO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgZGVwczogW0FYRm9ybWF0dGVyUmVnaXN0cnlTZXJ2aWNlXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmVzIHRoZSBtb2R1bGUgZm9yIGEgZmVhdHVyZSBpbmplY3Rvciwgb3B0aW9uYWxseSByZWdpc3RlcmluZyBjdXN0b20gZm9ybWF0dGVycy5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZ3MgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIGNvbnRhaW5pbmcgY3VzdG9tIGZvcm1hdHRlciBjbGFzc2VzLlxuICAgKiBAcmV0dXJucyBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYRm9ybWF0TW9kdWxlPlxuICAgKi9cblxuICBzdGF0aWMgZm9yQ2hpbGQoY29uZmlncz86IEFYRm9ybWF0TW9kdWxlQ29uZmlncyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhGb3JtYXRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYRm9ybWF0TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC4uLihjb25maWdzPy5mb3JtYXR0ZXJzIHx8IFtdKSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6ICdBWEZvcm1hdE1vZHVsZUZhY3RvcnknLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChwbHVnaW5SZWdpc3RyeTogQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgIHBsdWdpblJlZ2lzdHJ5LnJlZ2lzdGVyKC4uLlsuLi5CVUlMVF9JTl9SVUxFUywgLi4uKGNvbmZpZ3M/LmZvcm1hdHRlcnMgfHwgW10pXSk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBkZXBzOiBbQVhGb3JtYXR0ZXJSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGluc3RhbmNlcyA9IGluamVjdDxhbnlbXT4oJ0FYRm9ybWF0TW9kdWxlRmFjdG9yeScgYXMgYW55KTtcblxuICAgIGluc3RhbmNlcy5mb3JFYWNoKChmKSA9PiB7XG4gICAgICBmKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtZm9ybWF0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9mb3JtYXQvc3JjL2Fjb3JleC1jb3JlLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
package/format/index.d.ts
CHANGED
|
@@ -15,6 +15,11 @@ declare abstract class AXFormatter {
|
|
|
15
15
|
* @returns The formatted value.
|
|
16
16
|
*/
|
|
17
17
|
abstract format(value: unknown, options?: AXFormatOptions | string): string;
|
|
18
|
+
/**
|
|
19
|
+
* Optional update interval in milliseconds for formatters that need periodic updates.
|
|
20
|
+
* If specified, the format pipe will automatically refresh the formatted value at this interval.
|
|
21
|
+
*/
|
|
22
|
+
updateInterval?: number;
|
|
18
23
|
}
|
|
19
24
|
|
|
20
25
|
declare class AXFormatterDirective implements OnInit {
|
|
@@ -29,6 +34,7 @@ declare class AXFormatterDirective implements OnInit {
|
|
|
29
34
|
declare class AXFormatPipe implements PipeTransform {
|
|
30
35
|
private formatService;
|
|
31
36
|
private eventService;
|
|
37
|
+
private formatterRegistry;
|
|
32
38
|
private triggers;
|
|
33
39
|
/**
|
|
34
40
|
* Angular pipe for formatting values reactively. Re-evaluates when system events (such as language change) occur.
|