@acorex/core 21.0.0-next.32 → 21.0.0-next.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/fesm2022/acorex-core-components.mjs +3 -3
  2. package/fesm2022/acorex-core-components.mjs.map +1 -1
  3. package/fesm2022/acorex-core-config.mjs +3 -3
  4. package/fesm2022/acorex-core-config.mjs.map +1 -1
  5. package/fesm2022/acorex-core-constants.mjs.map +1 -1
  6. package/fesm2022/acorex-core-date-time.mjs +25 -25
  7. package/fesm2022/acorex-core-date-time.mjs.map +1 -1
  8. package/fesm2022/acorex-core-events.mjs +3 -3
  9. package/fesm2022/acorex-core-events.mjs.map +1 -1
  10. package/fesm2022/acorex-core-file.mjs +10 -10
  11. package/fesm2022/acorex-core-file.mjs.map +1 -1
  12. package/fesm2022/acorex-core-format.mjs +19 -19
  13. package/fesm2022/acorex-core-format.mjs.map +1 -1
  14. package/fesm2022/acorex-core-icon.mjs +3 -3
  15. package/fesm2022/acorex-core-icon.mjs.map +1 -1
  16. package/fesm2022/acorex-core-image.mjs +3 -3
  17. package/fesm2022/acorex-core-image.mjs.map +1 -1
  18. package/fesm2022/acorex-core-locale.mjs +10 -10
  19. package/fesm2022/acorex-core-locale.mjs.map +1 -1
  20. package/fesm2022/acorex-core-memoize.mjs.map +1 -1
  21. package/fesm2022/acorex-core-network.mjs +3 -3
  22. package/fesm2022/acorex-core-network.mjs.map +1 -1
  23. package/fesm2022/acorex-core-pipes.mjs +3 -3
  24. package/fesm2022/acorex-core-pipes.mjs.map +1 -1
  25. package/fesm2022/acorex-core-platform.mjs +10 -10
  26. package/fesm2022/acorex-core-platform.mjs.map +1 -1
  27. package/fesm2022/acorex-core-storage.mjs +12 -12
  28. package/fesm2022/acorex-core-storage.mjs.map +1 -1
  29. package/fesm2022/acorex-core-translation.mjs +16 -16
  30. package/fesm2022/acorex-core-translation.mjs.map +1 -1
  31. package/fesm2022/acorex-core-utils.mjs +4 -4
  32. package/fesm2022/acorex-core-utils.mjs.map +1 -1
  33. package/fesm2022/acorex-core-validation.mjs +40 -40
  34. package/fesm2022/acorex-core-validation.mjs.map +1 -1
  35. package/fesm2022/acorex-core.mjs.map +1 -1
  36. package/package.json +5 -5
@@ -44,10 +44,10 @@ class AXEventService {
44
44
  d.events = [];
45
45
  }
46
46
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
48
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXEventService, providedIn: 'root' }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
48
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXEventService, providedIn: 'root' }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXEventService, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXEventService, decorators: [{
51
51
  type: Injectable,
52
52
  args: [{ providedIn: 'root' }]
53
53
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core-events.mjs","sources":["../../../../packages/core/events/src/lib/event.service.ts","../../../../packages/core/events/src/acorex-core-events.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport enum AXSystemEvents {\n AXLocaleChanged = 'AX_LOCALE_CHANGED',\n AXLocaleLoaded = 'AX_LOCALE_LOADED',\n //\n AXCalendarChanged = 'AX_CALENDAR_CHANGED',\n //\n AXLanguageChanged = 'AX_LANGUAGE_CHANGED',\n AXLanguageLoaded = 'AX_LANGUAGE_LOADED',\n}\n\n\nexport interface AXEventData {\n type: string;\n payload?: any;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class AXEventService {\n private eventSubject = new Subject<AXEventData>();\n // Observable property\n public onEvent: Observable<AXEventData> = this.eventSubject.asObservable();\n\n emitEvent(event: AXEventData): void {\n this.eventSubject.next(event);\n }\n\n private list: any[] = [];\n\n public broadcast(key: string, options?: any): void {\n const d = this.list.find((c) => c.key === key);\n if (d) {\n d.events.forEach((c: any) => {\n c(options);\n });\n }\n }\n\n public on(key: string, callback: (options?: any) => void) {\n let d = this.list.find((c) => c.key === key);\n if (!d) {\n d = { key, events: [] };\n this.list.push(d);\n }\n d.events.push(callback);\n }\n\n public destroy(key: string, callback: (options?: any) => void): void {\n const d = this.list.find((c) => c.key === key);\n if (d) {\n d.events = [];\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;IAGY;AAAZ,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,iBAAA,CAAA,GAAA,mBAAqC;AACrC,IAAA,cAAA,CAAA,gBAAA,CAAA,GAAA,kBAAmC;;AAEnC,IAAA,cAAA,CAAA,mBAAA,CAAA,GAAA,qBAAyC;;AAEzC,IAAA,cAAA,CAAA,mBAAA,CAAA,GAAA,qBAAyC;AACzC,IAAA,cAAA,CAAA,kBAAA,CAAA,GAAA,oBAAuC;AACzC,CAAC,EARW,cAAc,KAAd,cAAc,GAAA,EAAA,CAAA,CAAA;MAiBb,cAAc,CAAA;AAD3B,IAAA,WAAA,GAAA;AAEU,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,OAAO,EAAe;;AAE1C,QAAA,IAAA,CAAA,OAAO,GAA4B,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;QAMlE,IAAA,CAAA,IAAI,GAAU,EAAE;AA0BzB,IAAA;AA9BC,IAAA,SAAS,CAAC,KAAkB,EAAA;AAC1B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/B;IAIO,SAAS,CAAC,GAAW,EAAE,OAAa,EAAA;AACzC,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;QAC9C,IAAI,CAAC,EAAE;YACL,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAM,KAAI;gBAC1B,CAAC,CAAC,OAAO,CAAC;AACZ,YAAA,CAAC,CAAC;QACJ;IACF;IAEO,EAAE,CAAC,GAAW,EAAE,QAAiC,EAAA;AACtD,QAAA,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;QAC5C,IAAI,CAAC,CAAC,EAAE;YACN,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;AACvB,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnB;AACA,QAAA,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;IACzB;IAEO,OAAO,CAAC,GAAW,EAAE,QAAiC,EAAA;AAC3D,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;QAC9C,IAAI,CAAC,EAAE;AACL,YAAA,CAAC,CAAC,MAAM,GAAG,EAAE;QACf;IACF;+GAlCW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA,CAAA;;4FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACnBlC;;AAEG;;;;"}
1
+ {"version":3,"file":"acorex-core-events.mjs","sources":["../tmp-esm2022/events/lib/event.service.js","../tmp-esm2022/events/acorex-core-events.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport var AXSystemEvents;\n(function (AXSystemEvents) {\n AXSystemEvents[\"AXLocaleChanged\"] = \"AX_LOCALE_CHANGED\";\n AXSystemEvents[\"AXLocaleLoaded\"] = \"AX_LOCALE_LOADED\";\n //\n AXSystemEvents[\"AXCalendarChanged\"] = \"AX_CALENDAR_CHANGED\";\n //\n AXSystemEvents[\"AXLanguageChanged\"] = \"AX_LANGUAGE_CHANGED\";\n AXSystemEvents[\"AXLanguageLoaded\"] = \"AX_LANGUAGE_LOADED\";\n})(AXSystemEvents || (AXSystemEvents = {}));\nexport class AXEventService {\n constructor() {\n this.eventSubject = new Subject();\n // Observable property\n this.onEvent = this.eventSubject.asObservable();\n this.list = [];\n }\n emitEvent(event) {\n this.eventSubject.next(event);\n }\n broadcast(key, options) {\n const d = this.list.find((c) => c.key === key);\n if (d) {\n d.events.forEach((c) => {\n c(options);\n });\n }\n }\n on(key, callback) {\n let d = this.list.find((c) => c.key === key);\n if (!d) {\n d = { key, events: [] };\n this.list.push(d);\n }\n d.events.push(callback);\n }\n destroy(key, callback) {\n const d = this.list.find((c) => c.key === key);\n if (d) {\n d.events = [];\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXEventService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXEventService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZXZlbnRzL3NyYy9saWIvZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBRTNDLE1BQU0sQ0FBTixJQUFZLGNBUVg7QUFSRCxXQUFZLGNBQWM7SUFDeEIsdURBQXFDLENBQUE7SUFDckMscURBQW1DLENBQUE7SUFDbkMsRUFBRTtJQUNGLDJEQUF5QyxDQUFBO0lBQ3pDLEVBQUU7SUFDRiwyREFBeUMsQ0FBQTtJQUN6Qyx5REFBdUMsQ0FBQTtBQUN6QyxDQUFDLEVBUlcsY0FBYyxLQUFkLGNBQWMsUUFRekI7QUFTRCxNQUFNLE9BQU8sY0FBYztJQUQzQjtRQUVVLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQWUsQ0FBQztRQUNsRCxzQkFBc0I7UUFDZixZQUFPLEdBQTRCLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7UUFNbkUsU0FBSSxHQUFVLEVBQUUsQ0FBQztLQTBCMUI7SUE5QkMsU0FBUyxDQUFDLEtBQWtCO1FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFJTSxTQUFTLENBQUMsR0FBVyxFQUFFLE9BQWE7UUFDekMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNOLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUU7Z0JBQzFCLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNiLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFTSxFQUFFLENBQUMsR0FBVyxFQUFFLFFBQWlDO1FBQ3RELElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNQLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEIsQ0FBQztRQUNELENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTSxPQUFPLENBQUMsR0FBVyxFQUFFLFFBQWlDO1FBQzNELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDTixDQUFDLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQzs4R0FsQ1UsY0FBYztrSEFBZCxjQUFjLGNBREQsTUFBTTs7MkZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZW51bSBBWFN5c3RlbUV2ZW50cyB7XG4gIEFYTG9jYWxlQ2hhbmdlZCA9ICdBWF9MT0NBTEVfQ0hBTkdFRCcsXG4gIEFYTG9jYWxlTG9hZGVkID0gJ0FYX0xPQ0FMRV9MT0FERUQnLFxuICAvL1xuICBBWENhbGVuZGFyQ2hhbmdlZCA9ICdBWF9DQUxFTkRBUl9DSEFOR0VEJyxcbiAgLy9cbiAgQVhMYW5ndWFnZUNoYW5nZWQgPSAnQVhfTEFOR1VBR0VfQ0hBTkdFRCcsXG4gIEFYTGFuZ3VhZ2VMb2FkZWQgPSAnQVhfTEFOR1VBR0VfTE9BREVEJyxcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIEFYRXZlbnREYXRhIHtcbiAgdHlwZTogc3RyaW5nO1xuICBwYXlsb2FkPzogYW55O1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYRXZlbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBldmVudFN1YmplY3QgPSBuZXcgU3ViamVjdDxBWEV2ZW50RGF0YT4oKTtcbiAgLy8gT2JzZXJ2YWJsZSBwcm9wZXJ0eVxuICBwdWJsaWMgb25FdmVudDogT2JzZXJ2YWJsZTxBWEV2ZW50RGF0YT4gPSB0aGlzLmV2ZW50U3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBlbWl0RXZlbnQoZXZlbnQ6IEFYRXZlbnREYXRhKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudFN1YmplY3QubmV4dChldmVudCk7XG4gIH1cblxuICBwcml2YXRlIGxpc3Q6IGFueVtdID0gW107XG5cbiAgcHVibGljIGJyb2FkY2FzdChrZXk6IHN0cmluZywgb3B0aW9ucz86IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IGQgPSB0aGlzLmxpc3QuZmluZCgoYykgPT4gYy5rZXkgPT09IGtleSk7XG4gICAgaWYgKGQpIHtcbiAgICAgIGQuZXZlbnRzLmZvckVhY2goKGM6IGFueSkgPT4ge1xuICAgICAgICBjKG9wdGlvbnMpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uKGtleTogc3RyaW5nLCBjYWxsYmFjazogKG9wdGlvbnM/OiBhbnkpID0+IHZvaWQpIHtcbiAgICBsZXQgZCA9IHRoaXMubGlzdC5maW5kKChjKSA9PiBjLmtleSA9PT0ga2V5KTtcbiAgICBpZiAoIWQpIHtcbiAgICAgIGQgPSB7IGtleSwgZXZlbnRzOiBbXSB9O1xuICAgICAgdGhpcy5saXN0LnB1c2goZCk7XG4gICAgfVxuICAgIGQuZXZlbnRzLnB1c2goY2FsbGJhY2spO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koa2V5OiBzdHJpbmcsIGNhbGxiYWNrOiAob3B0aW9ucz86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIGNvbnN0IGQgPSB0aGlzLmxpc3QuZmluZCgoYykgPT4gYy5rZXkgPT09IGtleSk7XG4gICAgaWYgKGQpIHtcbiAgICAgIGQuZXZlbnRzID0gW107XG4gICAgfVxuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9ldmVudHMvc3JjL2Fjb3JleC1jb3JlLWV2ZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;AAGU,IAAC;AACX,CAAC,UAAU,cAAc,EAAE;AAC3B,IAAI,cAAc,CAAC,iBAAiB,CAAC,GAAG,mBAAmB;AAC3D,IAAI,cAAc,CAAC,gBAAgB,CAAC,GAAG,kBAAkB;AACzD;AACA,IAAI,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;AAC/D;AACA,IAAI,cAAc,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;AAC/D,IAAI,cAAc,CAAC,kBAAkB,CAAC,GAAG,oBAAoB;AAC7D,CAAC,EAAE,cAAc,KAAK,cAAc,GAAG,EAAE,CAAC,CAAC;AACpC,MAAM,cAAc,CAAC;AAC5B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAE;AACzC;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;AACvD,QAAQ,IAAI,CAAC,IAAI,GAAG,EAAE;AACtB,IAAI;AACJ,IAAI,SAAS,CAAC,KAAK,EAAE;AACrB,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AACrC,IAAI;AACJ,IAAI,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE;AAC5B,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AACtD,QAAQ,IAAI,CAAC,EAAE;AACf,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;AACpC,gBAAgB,CAAC,CAAC,OAAO,CAAC;AAC1B,YAAY,CAAC,CAAC;AACd,QAAQ;AACR,IAAI;AACJ,IAAI,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE;AACtB,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AACpD,QAAQ,IAAI,CAAC,CAAC,EAAE;AAChB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;AACnC,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7B,QAAQ;AACR,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC/B,IAAI;AACJ,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE;AAC3B,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AACtD,QAAQ,IAAI,CAAC,EAAE;AACf,YAAY,CAAC,CAAC,MAAM,GAAG,EAAE;AACzB,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,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACjL,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,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AACxJ;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,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;;ACnDb;AACA;AACA;;;;"}
@@ -29,19 +29,19 @@ class AXFileSizeFormatter {
29
29
  const i = Math.floor(Math.log(size) / Math.log(k));
30
30
  return parseFloat((size / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];
31
31
  }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileSizeFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
33
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileSizeFormatter }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileSizeFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
33
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileSizeFormatter }); }
34
34
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileSizeFormatter, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileSizeFormatter, decorators: [{
36
36
  type: Injectable
37
37
  }] });
38
38
 
39
39
  class AXFileModule {
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
41
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.12", ngImport: i0, type: AXFileModule, imports: [i1.AXFormatModule] }); }
42
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileModule, providers: [AXFileSizeFormatter], imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
41
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: AXFileModule, imports: [i1.AXFormatModule] }); }
42
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileModule, providers: [AXFileSizeFormatter], imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })] }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileModule, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileModule, decorators: [{
45
45
  type: NgModule,
46
46
  args: [{
47
47
  imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })],
@@ -147,10 +147,10 @@ class AXFileService {
147
147
  getBase64Size(base64) {
148
148
  return atob(base64.substring(base64.indexOf(',') + 1)).length;
149
149
  }
150
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
151
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileService, providedIn: 'root' }); }
150
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
151
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileService, providedIn: 'root' }); }
152
152
  }
153
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFileService, decorators: [{
153
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFileService, decorators: [{
154
154
  type: Injectable,
155
155
  args: [{
156
156
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core-file.mjs","sources":["../../../../packages/core/file/src/lib/file-size-formatter.ts","../../../../packages/core/file/src/lib/file.module.ts","../../../../packages/core/file/src/lib/file.service.ts","../../../../packages/core/file/src/acorex-core-file.ts"],"sourcesContent":["import { AXFormatOptions, AXFormatter } from '@acorex/core/format';\nimport { Injectable } from '@angular/core';\n\nexport interface AXFileSizeFormatterOptions extends AXFormatOptions {\n format: string;\n}\n\ndeclare module '@acorex/core/format' {\n interface AXFormatOptionsMap {\n filesize: AXFileSizeFormatterOptions;\n }\n}\n\n@Injectable()\nexport class AXFileSizeFormatter implements AXFormatter {\n /**\n * Gets the name of the formatter.\n *\n * @returns string - The formatter name 'filesize'\n */\n\n get name(): string {\n return 'filesize';\n }\n\n /**\n * Formats a file size value to human-readable format.\n *\n * @param value - The file size in bytes\n * @returns string - The formatted file size string (e.g., '1.5 MB')\n */\n\n format(value: number): string {\n const size = Number(value);\n\n if (size === 0) return '0 Bytes';\n if (Number.isNaN(size)) return 'Unknown';\n\n const k = 1024;\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n const i = Math.floor(Math.log(size) / Math.log(k));\n\n return parseFloat((size / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];\n }\n}\n","import { AXFormatModule } from '@acorex/core/format';\nimport { NgModule } from '@angular/core';\nimport { AXFileSizeFormatter } from './file-size-formatter';\n\n@NgModule({\n imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })],\n exports: [],\n declarations: [],\n providers: [AXFileSizeFormatter],\n})\nexport class AXFileModule {}\n","import { DOCUMENT, inject, Injectable, PLATFORM_ID } from '@angular/core';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXFileService {\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n\n /**\n * Opens a file selection dialog and returns the selected files.\n *\n * @param options - Optional configuration for file selection\n * @param options.accept - File types to accept (e.g., 'image/*', '.pdf')\n * @param options.multiple - Whether to allow multiple file selection\n * @returns Promise<File[]> - Promise that resolves with the selected files\n */\n\n public choose(options?: { accept?: string; multiple?: boolean }): Promise<File[]> {\n return new Promise<File[]>((resolve, reject) => {\n options = Object.assign({ multiple: false }, options);\n const input: HTMLInputElement = this.document.createElement('input');\n input.style.display = 'none';\n this.document.body.appendChild(input);\n input.type = 'file';\n input.accept = options.accept || '';\n input.multiple = options.multiple || false;\n //\n const onError = (e) => {\n reject(e);\n this.document.body.removeChild(input);\n input.remove();\n input.removeEventListener('change', onChange);\n input.removeEventListener('error', onError);\n };\n //\n const onChange = () => {\n resolve(Array.from(input.files || []));\n this.document.body.removeChild(input);\n input.remove();\n input.removeEventListener('change', onChange);\n input.removeEventListener('error', onError);\n };\n //\n input.addEventListener('change', onChange);\n input.addEventListener('error', onError);\n input.click();\n });\n }\n\n /**\n * Gets the size of a file, blob, or base64 string.\n *\n * @param file - The file, blob, or base64 string to get size for\n * @returns number | false - The size in bytes or false if not a base64 string\n */\n\n public blobToBase64 = (blob: Blob) => {\n if (blob instanceof Blob) {\n return new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.onerror = reject;\n reader.onload = () => {\n resolve(reader.result as string);\n };\n reader.readAsDataURL(blob);\n });\n } else {\n return Promise.reject('input is not blob');\n }\n };\n\n /**\n * Gets the size of a file, blob, or base64 string.\n *\n * @param file - The file, blob, or base64 string to get size for\n * @returns number | false - The size in bytes or false if not a base64 string\n */\n\n public getSize(file: File | Blob | string) {\n if (this.isBase64(file as string)) {\n return this.getBase64Size(file as string);\n }\n return false;\n }\n\n /**\n * Checks if a string is a valid base64 string.\n *\n * @param base64 - The string to check\n * @returns boolean - True if the string is a valid base64 string\n */\n\n public isBase64(base64: string) {\n const regx = /[^:]\\w+\\/[\\w-+\\d.]+(?=;|,)/;\n return regx.test(base64);\n }\n\n /**\n * Gets the size of a base64 string in bytes.\n *\n * @param base64 - The base64 string to get size for\n * @returns number - The size in bytes\n */\n\n public getBase64Size(base64: string) {\n return atob(base64.substring(base64.indexOf(',') + 1)).length;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-core-file.mjs","sources":["../tmp-esm2022/file/lib/file-size-formatter.js","../tmp-esm2022/file/lib/file.module.js","../tmp-esm2022/file/lib/file.service.js","../tmp-esm2022/file/acorex-core-file.js"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXFileSizeFormatter {\n /**\n * Gets the name of the formatter.\n *\n * @returns string - The formatter name 'filesize'\n */\n get name() {\n return 'filesize';\n }\n /**\n * Formats a file size value to human-readable format.\n *\n * @param value - The file size in bytes\n * @returns string - The formatted file size string (e.g., '1.5 MB')\n */\n format(value) {\n const size = Number(value);\n if (size === 0)\n return '0 Bytes';\n if (Number.isNaN(size))\n return 'Unknown';\n const k = 1024;\n const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];\n const i = Math.floor(Math.log(size) / Math.log(k));\n return parseFloat((size / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileSizeFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileSizeFormatter }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileSizeFormatter, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zaXplLWZvcm1hdHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZmlsZS9zcmMvbGliL2ZpbGUtc2l6ZS1mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUM5Qjs7OztPQUlHO0lBRUgsSUFBSSxJQUFJO1FBQ04sT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVEOzs7OztPQUtHO0lBRUgsTUFBTSxDQUFDLEtBQWE7UUFDbEIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTNCLElBQUksSUFBSSxLQUFLLENBQUM7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUNqQyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFFekMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQ2YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbkQsT0FBTyxVQUFVLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7OEdBN0JVLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhGb3JtYXRPcHRpb25zLCBBWEZvcm1hdHRlciB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRmlsZVNpemVGb3JtYXR0ZXJPcHRpb25zIGV4dGVuZHMgQVhGb3JtYXRPcHRpb25zIHtcbiAgZm9ybWF0OiBzdHJpbmc7XG59XG5cbmRlY2xhcmUgbW9kdWxlICdAYWNvcmV4L2NvcmUvZm9ybWF0JyB7XG4gIGludGVyZmFjZSBBWEZvcm1hdE9wdGlvbnNNYXAge1xuICAgIGZpbGVzaXplOiBBWEZpbGVTaXplRm9ybWF0dGVyT3B0aW9ucztcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhGaWxlU2l6ZUZvcm1hdHRlciBpbXBsZW1lbnRzIEFYRm9ybWF0dGVyIHtcbiAgLyoqXG4gICAqIEdldHMgdGhlIG5hbWUgb2YgdGhlIGZvcm1hdHRlci5cbiAgICpcbiAgICogQHJldHVybnMgc3RyaW5nIC0gVGhlIGZvcm1hdHRlciBuYW1lICdmaWxlc2l6ZSdcbiAgICovXG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2ZpbGVzaXplJztcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JtYXRzIGEgZmlsZSBzaXplIHZhbHVlIHRvIGh1bWFuLXJlYWRhYmxlIGZvcm1hdC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGZpbGUgc2l6ZSBpbiBieXRlc1xuICAgKiBAcmV0dXJucyBzdHJpbmcgLSBUaGUgZm9ybWF0dGVkIGZpbGUgc2l6ZSBzdHJpbmcgKGUuZy4sICcxLjUgTUInKVxuICAgKi9cblxuICBmb3JtYXQodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3Qgc2l6ZSA9IE51bWJlcih2YWx1ZSk7XG5cbiAgICBpZiAoc2l6ZSA9PT0gMCkgcmV0dXJuICcwIEJ5dGVzJztcbiAgICBpZiAoTnVtYmVyLmlzTmFOKHNpemUpKSByZXR1cm4gJ1Vua25vd24nO1xuXG4gICAgY29uc3QgayA9IDEwMjQ7XG4gICAgY29uc3Qgc2l6ZXMgPSBbJ0J5dGVzJywgJ0tCJywgJ01CJywgJ0dCJywgJ1RCJywgJ1BCJywgJ0VCJywgJ1pCJywgJ1lCJ107XG4gICAgY29uc3QgaSA9IE1hdGguZmxvb3IoTWF0aC5sb2coc2l6ZSkgLyBNYXRoLmxvZyhrKSk7XG5cbiAgICByZXR1cm4gcGFyc2VGbG9hdCgoc2l6ZSAvIE1hdGgucG93KGssIGkpKS50b0ZpeGVkKDIpKSArICcgJyArIHNpemVzW2ldO1xuICB9XG59XG4iXX0=","import { AXFormatModule } from '@acorex/core/format';\nimport { NgModule } from '@angular/core';\nimport { AXFileSizeFormatter } from './file-size-formatter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/core/format\";\nexport class AXFileModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileModule, imports: [i1.AXFormatModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileModule, providers: [AXFileSizeFormatter], imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXFormatModule.forChild({ formatters: [AXFileSizeFormatter] })],\n exports: [],\n declarations: [],\n providers: [AXFileSizeFormatter],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL2ZpbGUvc3JjL2xpYi9maWxlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBUTVELE1BQU0sT0FBTyxZQUFZOzhHQUFaLFlBQVk7K0dBQVosWUFBWTsrR0FBWixZQUFZLGFBRlosQ0FBQyxtQkFBbUIsQ0FBQyxZQUh0QixjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDOzsyRkFLN0QsWUFBWTtrQkFOeEIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYRmlsZVNpemVGb3JtYXR0ZXIgfSBmcm9tICcuL2ZpbGUtc2l6ZS1mb3JtYXR0ZXInO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQVhGb3JtYXRNb2R1bGUuZm9yQ2hpbGQoeyBmb3JtYXR0ZXJzOiBbQVhGaWxlU2l6ZUZvcm1hdHRlcl0gfSldLFxuICBleHBvcnRzOiBbXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgcHJvdmlkZXJzOiBbQVhGaWxlU2l6ZUZvcm1hdHRlcl0sXG59KVxuZXhwb3J0IGNsYXNzIEFYRmlsZU1vZHVsZSB7fVxuIl19","import { DOCUMENT, inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXFileService {\n constructor() {\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n /**\n * Gets the size of a file, blob, or base64 string.\n *\n * @param file - The file, blob, or base64 string to get size for\n * @returns number | false - The size in bytes or false if not a base64 string\n */\n this.blobToBase64 = (blob) => {\n if (blob instanceof Blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onerror = reject;\n reader.onload = () => {\n resolve(reader.result);\n };\n reader.readAsDataURL(blob);\n });\n }\n else {\n return Promise.reject('input is not blob');\n }\n };\n }\n /**\n * Opens a file selection dialog and returns the selected files.\n *\n * @param options - Optional configuration for file selection\n * @param options.accept - File types to accept (e.g., 'image/*', '.pdf')\n * @param options.multiple - Whether to allow multiple file selection\n * @returns Promise<File[]> - Promise that resolves with the selected files\n */\n choose(options) {\n return new Promise((resolve, reject) => {\n options = Object.assign({ multiple: false }, options);\n const input = this.document.createElement('input');\n input.style.display = 'none';\n this.document.body.appendChild(input);\n input.type = 'file';\n input.accept = options.accept || '';\n input.multiple = options.multiple || false;\n //\n const onError = (e) => {\n reject(e);\n this.document.body.removeChild(input);\n input.remove();\n input.removeEventListener('change', onChange);\n input.removeEventListener('error', onError);\n };\n //\n const onChange = () => {\n resolve(Array.from(input.files || []));\n this.document.body.removeChild(input);\n input.remove();\n input.removeEventListener('change', onChange);\n input.removeEventListener('error', onError);\n };\n //\n input.addEventListener('change', onChange);\n input.addEventListener('error', onError);\n input.click();\n });\n }\n /**\n * Gets the size of a file, blob, or base64 string.\n *\n * @param file - The file, blob, or base64 string to get size for\n * @returns number | false - The size in bytes or false if not a base64 string\n */\n getSize(file) {\n if (this.isBase64(file)) {\n return this.getBase64Size(file);\n }\n return false;\n }\n /**\n * Checks if a string is a valid base64 string.\n *\n * @param base64 - The string to check\n * @returns boolean - True if the string is a valid base64 string\n */\n isBase64(base64) {\n const regx = /[^:]\\w+\\/[\\w-+\\d.]+(?=;|,)/;\n return regx.test(base64);\n }\n /**\n * Gets the size of a base64 string in bytes.\n *\n * @param base64 - The base64 string to get size for\n * @returns number - The size in bytes\n */\n getBase64Size(base64) {\n return atob(base64.substring(base64.indexOf(',') + 1)).length;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXFileService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9maWxlL3NyYy9saWIvZmlsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzFFLE1BQU0sT0FBTyxhQUFhO0lBSDFCO1FBSVUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBMkN6Qzs7Ozs7V0FLRztRQUVJLGlCQUFZLEdBQUcsQ0FBQyxJQUFVLEVBQUUsRUFBRTtZQUNuQyxJQUFJLElBQUksWUFBWSxJQUFJLEVBQUUsQ0FBQztnQkFDekIsT0FBTyxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtvQkFDN0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDaEMsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7b0JBQ3hCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFO3dCQUNuQixPQUFPLENBQUMsTUFBTSxDQUFDLE1BQWdCLENBQUMsQ0FBQztvQkFDbkMsQ0FBQyxDQUFDO29CQUNGLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQzdDLENBQUM7UUFDSCxDQUFDLENBQUM7S0FzQ0g7SUFuR0M7Ozs7Ozs7T0FPRztJQUVJLE1BQU0sQ0FBQyxPQUFpRDtRQUM3RCxPQUFPLElBQUksT0FBTyxDQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0s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LCBpbmplY3QsIEluamVjdGFibGUsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBWEZpbGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcGxhdGZvcm1JRCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgZmlsZSBzZWxlY3Rpb24gZGlhbG9nIGFuZCByZXR1cm5zIHRoZSBzZWxlY3RlZCBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIGZvciBmaWxlIHNlbGVjdGlvblxuICAgKiBAcGFyYW0gb3B0aW9ucy5hY2NlcHQgLSBGaWxlIHR5cGVzIHRvIGFjY2VwdCAoZS5nLiwgJ2ltYWdlLyonLCAnLnBkZicpXG4gICAqIEBwYXJhbSBvcHRpb25zLm11bHRpcGxlIC0gV2hldGhlciB0byBhbGxvdyBtdWx0aXBsZSBmaWxlIHNlbGVjdGlvblxuICAgKiBAcmV0dXJucyBQcm9taXNlPEZpbGVbXT4gLSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgc2VsZWN0ZWQgZmlsZXNcbiAgICovXG5cbiAgcHVibGljIGNob29zZShvcHRpb25zPzogeyBhY2NlcHQ/OiBzdHJpbmc7IG11bHRpcGxlPzogYm9vbGVhbiB9KTogUHJvbWlzZTxGaWxlW10+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8RmlsZVtdPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7IG11bHRpcGxlOiBmYWxzZSB9LCBvcHRpb25zKTtcbiAgICAgIGNvbnN0IGlucHV0OiBIVE1MSW5wdXRFbGVtZW50ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgICAgaW5wdXQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgIHRoaXMuZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbnB1dCk7XG4gICAgICBpbnB1dC50eXBlID0gJ2ZpbGUnO1xuICAgICAgaW5wdXQuYWNjZXB0ID0gb3B0aW9ucy5hY2NlcHQgfHwgJyc7XG4gICAgICBpbnB1dC5tdWx0aXBsZSA9IG9wdGlvbnMubXVsdGlwbGUgfHwgZmFsc2U7XG4gICAgICAvL1xuICAgICAgY29uc3Qgb25FcnJvciA9IChlKSA9PiB7XG4gICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlucHV0KTtcbiAgICAgICAgaW5wdXQucmVtb3ZlKCk7XG4gICAgICAgIGlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIG9uQ2hhbmdlKTtcbiAgICAgICAgaW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcignZXJyb3InLCBvbkVycm9yKTtcbiAgICAgIH07XG4gICAgICAvL1xuICAgICAgY29uc3Qgb25DaGFuZ2UgPSAoKSA9PiB7XG4gICAgICAgIHJlc29sdmUoQXJyYXkuZnJvbShpbnB1dC5maWxlcyB8fCBbXSkpO1xuICAgICAgICB0aGlzLmRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoaW5wdXQpO1xuICAgICAgICBpbnB1dC5yZW1vdmUoKTtcbiAgICAgICAgaW5wdXQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgb25DaGFuZ2UpO1xuICAgICAgICBpbnB1dC5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgfTtcbiAgICAgIC8vXG4gICAgICBpbnB1dC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBvbkNoYW5nZSk7XG4gICAgICBpbnB1dC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIG9uRXJyb3IpO1xuICAgICAgaW5wdXQuY2xpY2soKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzaXplIG9mIGEgZmlsZSwgYmxvYiwgb3IgYmFzZTY0IHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSwgYmxvYiwgb3IgYmFzZTY0IHN0cmluZyB0byBnZXQgc2l6ZSBmb3JcbiAgICogQHJldHVybnMgbnVtYmVyIHwgZmFsc2UgLSBUaGUgc2l6ZSBpbiBieXRlcyBvciBmYWxzZSBpZiBub3QgYSBiYXNlNjQgc3RyaW5nXG4gICAqL1xuXG4gIHB1YmxpYyBibG9iVG9CYXNlNjQgPSAoYmxvYjogQmxvYikgPT4ge1xuICAgIGlmIChibG9iIGluc3RhbmNlb2YgQmxvYikge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICByZWFkZXIub25lcnJvciA9IHJlamVjdDtcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nKTtcbiAgICAgICAgfTtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoYmxvYik7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KCdpbnB1dCBpcyBub3QgYmxvYicpO1xuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogR2V0cyB0aGUgc2l6ZSBvZiBhIGZpbGUsIGJsb2IsIG9yIGJhc2U2NCBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUsIGJsb2IsIG9yIGJhc2U2NCBzdHJpbmcgdG8gZ2V0IHNpemUgZm9yXG4gICAqIEByZXR1cm5zIG51bWJlciB8IGZhbHNlIC0gVGhlIHNpemUgaW4gYnl0ZXMgb3IgZmFsc2UgaWYgbm90IGEgYmFzZTY0IHN0cmluZ1xuICAgKi9cblxuICBwdWJsaWMgZ2V0U2l6ZShmaWxlOiBGaWxlIHwgQmxvYiB8IHN0cmluZykge1xuICAgIGlmICh0aGlzLmlzQmFzZTY0KGZpbGUgYXMgc3RyaW5nKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QmFzZTY0U2l6ZShmaWxlIGFzIHN0cmluZyk7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgYSBzdHJpbmcgaXMgYSB2YWxpZCBiYXNlNjQgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gYmFzZTY0IC0gVGhlIHN0cmluZyB0byBjaGVja1xuICAgKiBAcmV0dXJucyBib29sZWFuIC0gVHJ1ZSBpZiB0aGUgc3RyaW5nIGlzIGEgdmFsaWQgYmFzZTY0IHN0cmluZ1xuICAgKi9cblxuICBwdWJsaWMgaXNCYXNlNjQoYmFzZTY0OiBzdHJpbmcpIHtcbiAgICBjb25zdCByZWd4ID0gL1teOl1cXHcrXFwvW1xcdy0rXFxkLl0rKD89O3wsKS87XG4gICAgcmV0dXJuIHJlZ3gudGVzdChiYXNlNjQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHNpemUgb2YgYSBiYXNlNjQgc3RyaW5nIGluIGJ5dGVzLlxuICAgKlxuICAgKiBAcGFyYW0gYmFzZTY0IC0gVGhlIGJhc2U2NCBzdHJpbmcgdG8gZ2V0IHNpemUgZm9yXG4gICAqIEByZXR1cm5zIG51bWJlciAtIFRoZSBzaXplIGluIGJ5dGVzXG4gICAqL1xuXG4gIHB1YmxpYyBnZXRCYXNlNjRTaXplKGJhc2U2NDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGF0b2IoYmFzZTY0LnN1YnN0cmluZyhiYXNlNjQuaW5kZXhPZignLCcpICsgMSkpLmxlbmd0aDtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtZmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvZmlsZS9zcmMvYWNvcmV4LWNvcmUtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
@@ -41,10 +41,10 @@ class AXFormatterRegistryService {
41
41
  }
42
42
  return formatter;
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
45
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatterRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
45
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatterRegistryService, providedIn: 'root' }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatterRegistryService, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatterRegistryService, decorators: [{
48
48
  type: Injectable,
49
49
  args: [{
50
50
  providedIn: 'root',
@@ -82,10 +82,10 @@ class AXFormatService {
82
82
  return new AXFormatFluent(this, this.pluginRegistry, value);
83
83
  }
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
86
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
86
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatService, providedIn: 'root' }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatService, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatService, decorators: [{
89
89
  type: Injectable,
90
90
  args: [{ providedIn: 'root' }]
91
91
  }] });
@@ -126,10 +126,10 @@ class AXFormatterDirective {
126
126
  },
127
127
  });
128
128
  }
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
130
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.12", type: AXFormatterDirective, isStandalone: true, selector: "[formatter]", ngImport: i0 }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
130
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.9", type: AXFormatterDirective, isStandalone: true, selector: "[formatter]", ngImport: i0 }); }
131
131
  }
132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatterDirective, decorators: [{
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatterDirective, decorators: [{
133
133
  type: Directive,
134
134
  args: [{
135
135
  selector: '[formatter]',
@@ -177,10 +177,10 @@ class AXFormatPipe {
177
177
  // For non-periodic formatters, use the original behavior
178
178
  return systemEvents$.pipe(startWith(null), map(() => this.formatService.format(value, name, options)));
179
179
  }
180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
181
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.12", ngImport: i0, type: AXFormatPipe, isStandalone: true, name: "format" }); }
180
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
181
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: AXFormatPipe, isStandalone: true, name: "format" }); }
182
182
  }
183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatPipe, decorators: [{
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatPipe, decorators: [{
184
184
  type: Pipe,
185
185
  args: [{
186
186
  name: 'format',
@@ -252,10 +252,10 @@ class AXNumberFormatter {
252
252
  this.separatorsCache[locale] = { thousandSeparator, decimalSeparator };
253
253
  return this.separatorsCache[locale];
254
254
  }
255
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXNumberFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
256
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXNumberFormatter }); }
255
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXNumberFormatter, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
256
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXNumberFormatter }); }
257
257
  }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXNumberFormatter, decorators: [{
258
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXNumberFormatter, decorators: [{
259
259
  type: Injectable
260
260
  }] });
261
261
 
@@ -330,11 +330,11 @@ class AXFormatModule {
330
330
  f();
331
331
  });
332
332
  }
333
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
334
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.12", ngImport: i0, type: AXFormatModule, imports: [AXFormatterDirective, AXFormatPipe], exports: [AXFormatterDirective, AXFormatPipe] }); }
335
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatModule }); }
333
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
334
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.9", ngImport: i0, type: AXFormatModule, imports: [AXFormatterDirective, AXFormatPipe], exports: [AXFormatterDirective, AXFormatPipe] }); }
335
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatModule }); }
336
336
  }
337
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXFormatModule, decorators: [{
337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXFormatModule, decorators: [{
338
338
  type: NgModule,
339
339
  args: [{
340
340
  imports: [AXFormatterDirective, AXFormatPipe],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core-format.mjs","sources":["../../../../packages/core/format/src/lib/format.config.ts","../../../../packages/core/format/src/lib/format.service.ts","../../../../packages/core/format/src/lib/format.directive.ts","../../../../packages/core/format/src/lib/format.pipe.ts","../../../../packages/core/format/src/lib/formatters/number.formatter.ts","../../../../packages/core/format/src/lib/formatters/string.formatter.ts","../../../../packages/core/format/src/lib/format.module.ts","../../../../packages/core/format/src/acorex-core-format.ts"],"sourcesContent":["import { AXFormatOptions } from './format.types';\n\nexport abstract class AXFormatter {\n abstract get name(): string;\n\n /**\n * Formats a value with optional options.\n * @returns The formatted value.\n */\n abstract format(value: unknown, options?: AXFormatOptions | string): string;\n /**\n * Optional update interval in milliseconds for formatters that need periodic updates.\n * If specified, the format pipe will automatically refresh the formatted value at this interval.\n */\n updateInterval?: number;\n}\n","import { inject, Injectable, Injector } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { AXFormatter } from './format.config';\nimport { AXFormatOptionsMap } from './format.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXFormatterRegistryService {\n private plugins: AXFormatter[] = [];\n\n private injector = inject(Injector);\n\n register(...plugins: (new () => AXFormatter)[]) {\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\n if (v && !this.plugins.some((p) => p.name == v.name)) {\n this.plugins.push(v);\n }\n });\n }\n\n get formatters(): AXFormatter[] {\n return this.plugins;\n }\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: string): AXFormatter {\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}\n\n@Injectable({ providedIn: 'root' })\nexport class AXFormatService {\n private pluginRegistry = inject(AXFormatterRegistryService);\n\n private renderSubject = new Subject<void>();\n\n // Observable that other services/components can subscribe to\n 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\n render() {\n this.renderSubject.next();\n }\n\n //TODO\n // Overload for traditional formatting\n\n /**\n * Formats a value using the specified formatter name.\n *\n * @param value - The input value to format.\n * @param formatter - The formatter name to use (e.g., 'number', 'string').\n * @param options - Optional options specific to the formatter.\n * @returns string - The formatted string.\n */\n\n format(value: unknown, formatter: string, options?: any): string;\n\n // Overload for starting fluent API chain\n\n /**\n * Starts a fluent formatting chain.\n *\n * @param value - The input value to format.\n * @returns AXFormatFluent - A fluent API object for chaining.\n */\n format(value: unknown): AXFormatFluent;\n\n // Implementation of the format method\n\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: unknown, formatter?: string, options?: any): string | AXFormatFluent {\n if (typeof formatter === 'string') {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(value, options);\n } else {\n return new AXFormatFluent(this, this.pluginRegistry, value);\n }\n }\n}\n\nclass AXFormatFluent {\n constructor(\n private formatService: AXFormatService,\n private pluginRegistry: AXFormatterRegistryService,\n private initialValue: unknown,\n ) {}\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<K extends keyof AXFormatOptionsMap>(formatter: K, options?: AXFormatOptionsMap[K]): string {\n try {\n const formatterRef = this.pluginRegistry.get(formatter);\n return formatterRef.format(this.initialValue, options);\n } catch (error) {\n return String(this.initialValue);\n }\n }\n}\n","import { Directive, OnInit, TemplateRef, ViewContainerRef, inject } from '@angular/core';\nimport { AXFormatService } from './format.service';\nimport { AXFormatOptionsMap } from './format.types';\n\n@Directive({\n selector: '[formatter]',\n})\nexport class AXFormatterDirective implements OnInit {\n private templateRef = inject<TemplateRef<any>>(TemplateRef);\n private viewContainer = inject(ViewContainerRef);\n private formatService = inject(AXFormatService);\n\n ngOnInit() {\n this.viewContainer.clear();\n this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: <K extends keyof AXFormatOptionsMap>(\n value: unknown,\n formatter: K,\n options?: AXFormatOptionsMap[K],\n ) => {\n return this.formatService.format(value, formatter, options);\n },\n });\n }\n}\n","import { AXEventData, AXEventService, AXSystemEvents } from '@acorex/core/events';\nimport { Pipe, PipeTransform, inject } from '@angular/core';\nimport { Observable, filter, interval, map, merge, shareReplay, startWith } from 'rxjs';\nimport { AXFormatService, AXFormatterRegistryService } from './format.service';\nimport { AXFormatOptions } from './format.types';\n\n// Shared interval streams cache to avoid creating multiple intervals for the same duration\nconst intervalCache = new Map<number, Observable<number>>();\n\nfunction getSharedInterval(ms: number): Observable<number> {\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}\n\n@Pipe({\n name: 'format',\n pure: true,\n})\nexport class AXFormatPipe implements PipeTransform {\n private formatService = inject(AXFormatService);\n private eventService = inject(AXEventService);\n private formatterRegistry = inject(AXFormatterRegistryService);\n\n private triggers = [...Object.values(AXSystemEvents).map((event) => event as string)];\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\n transform(value: unknown, name: string, options?: AXFormatOptions | string): Observable<string> {\n // Get the formatter to check if it needs periodic updates\n const formatter = this.formatterRegistry.get(name);\n\n // System events stream (language changes, etc.)\n const systemEvents$ = this.eventService.onEvent.pipe(\n filter((event: AXEventData) => this.triggers.includes(event.type as AXSystemEvents)),\n );\n\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\n // Merge system events and periodic updates\n return merge(systemEvents$, periodicUpdates$).pipe(\n startWith(null), // Emit initial value immediately\n map(() => this.formatService.format(value, name as any, options)),\n );\n }\n\n // For non-periodic formatters, use the original behavior\n return systemEvents$.pipe(\n startWith(null),\n map(() => this.formatService.format(value, name as any, options)),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { defaults, isInteger, padStart } from 'lodash-es';\nimport { AXFormatter } from '../format.config';\nimport { AXFormatOptions } from '../format.types';\n\nexport interface AXNumberFormatterOptions extends AXFormatOptions {\n decimalPlaces?: number;\n thousandSeparator?: string;\n decimalSeparator?: string;\n zeroPadLength?: number; // New option for zero padding,\n locale?: string;\n}\n\ndeclare module '../format.types' {\n interface AXFormatOptionsMap {\n number: AXNumberFormatterOptions;\n }\n}\n\n@Injectable()\nexport class AXNumberFormatter implements AXFormatter {\n private separatorsCache: any = {};\n\n get name(): string {\n return 'number';\n }\n\n format(value: number, options: AXNumberFormatterOptions): string {\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\n const sign = value < 0 ? '-' : '';\n const absoluteValue = Math.abs(value);\n\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\n // Applying thousand separator to integer part\n if (effectiveOptions.thousandSeparator) {\n integerPart = integerPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, effectiveOptions.thousandSeparator);\n }\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 } 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\n return formattedValue;\n }\n\n private getLocaleSeparators(locale = navigator.language): {\n thousandSeparator: string;\n decimalSeparator: string;\n } {\n // Use cache if available\n if (this.separatorsCache[locale]) {\n return this.separatorsCache[locale];\n }\n\n const numberFormat = new Intl.NumberFormat(locale);\n const parts = numberFormat.formatToParts(1234567.89);\n let thousandSeparator = '';\n let decimalSeparator = '';\n\n for (const part of parts) {\n if (part.type === 'group') {\n thousandSeparator = part.value;\n } else if (part.type === 'decimal') {\n decimalSeparator = part.value;\n }\n }\n\n // Cache the result\n this.separatorsCache[locale] = { thousandSeparator, decimalSeparator };\n return this.separatorsCache[locale];\n }\n}\n","import { get } from 'lodash-es';\nimport { AXFormatter } from '../format.config';\nimport { AXFormatOptions } from '../format.types';\n\nexport interface AXStringFormatterOptions extends AXFormatOptions {\n [key: string]: any;\n}\n\ndeclare module '../format.types' {\n interface AXFormatOptionsMap {\n string: AXStringFormatterOptions;\n }\n}\n\nexport class AXStringFormatter implements AXFormatter {\n get name(): string {\n return 'string';\n }\n\n format(value: unknown, options: AXStringFormatterOptions): string {\n if (typeof value != 'string') return String(value);\n const result = get(options, value)\n ? get(options, value)\n : value.replace(/{{\\s*([^}]+)\\s*}}/g, (match, path: string) => {\n return (get(options, path.trim()) as string) ?? match;\n });\n\n return result;\n }\n}\n","import { ModuleWithProviders, NgModule, inject } from '@angular/core';\nimport { AXFormatter } from './format.config';\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';\n\nconst BUILT_IN_RULES = [AXNumberFormatter, AXStringFormatter];\n\nexport interface AXFormatModuleConfigs {\n formatters: (new () => AXFormatter)[];\n}\n\n@NgModule({\n imports: [AXFormatterDirective, AXFormatPipe],\n exports: [AXFormatterDirective, AXFormatPipe],\n})\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\n static forRoot(configs?: AXFormatModuleConfigs): ModuleWithProviders<AXFormatModule> {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry: AXFormatterRegistryService) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\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\n static forChild(configs?: AXFormatModuleConfigs): ModuleWithProviders<AXFormatModule> {\n return {\n ngModule: AXFormatModule,\n providers: [\n ...(configs?.formatters || []),\n {\n provide: 'AXFormatModuleFactory',\n useFactory: (pluginRegistry: AXFormatterRegistryService) => () => {\n pluginRegistry.register(...[...BUILT_IN_RULES, ...(configs?.formatters || [])]);\n },\n deps: [AXFormatterRegistryService],\n multi: true,\n },\n ],\n };\n }\n\n /**\n * @ignore\n */\n constructor() {\n const instances = inject<any[]>('AXFormatModuleFactory' as any);\n\n instances.forEach((f) => {\n f();\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-core-format.mjs","sources":["../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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"}
@@ -35,10 +35,10 @@ class AXIconResolverService {
35
35
  }
36
36
  throw new Error(`AXIconResolverService: Could not resolve icon "${icon}"`);
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXIconResolverService, providedIn: 'root' }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXIconResolverService, providedIn: 'root' }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXIconResolverService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXIconResolverService, decorators: [{
42
42
  type: Injectable,
43
43
  args: [{ providedIn: 'root' }]
44
44
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-core-icon.mjs","sources":["../../../../packages/core/icon/src/lib/icon.types.ts","../../../../packages/core/icon/src/lib/icon-resolver.service.ts","../../../../packages/core/icon/src/acorex-core-icon.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport abstract class AXIconResolver {\n abstract resolve(icon: string): Promise<string | null>;\n}\n\nexport const AX_ICON_RESOLVER = new InjectionToken<AXIconResolver | AXIconResolver[]>('AX_ICON_RESOLVER');\n\n// Optional default fallback\nexport class AXIconResolverDefault extends AXIconResolver {\n async resolve(icon: string): Promise<string | null> {\n return icon;\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { AX_ICON_RESOLVER } from './icon.types';\n\n@Injectable({ providedIn: 'root' })\nexport class AXIconResolverService {\n private resolvers = (() => {\n const injected = inject(AX_ICON_RESOLVER, { optional: true });\n if (!injected) {\n return [];\n }\n return Array.isArray(injected) ? injected : [injected];\n })();\n\n private cache = new Map<string, string>();\n\n async resolve(icon: string): Promise<string> {\n if (this.cache.has(icon)) {\n return this.cache.get(icon);\n }\n\n for (const resolver of this.resolvers) {\n const result = await resolver.resolve(icon);\n if (result != null) {\n this.cache.set(icon, result);\n return result;\n }\n }\n\n throw new Error(`AXIconResolverService: Could not resolve icon \"${icon}\"`);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAEsB,cAAc,CAAA;AAEnC;MAEY,gBAAgB,GAAG,IAAI,cAAc,CAAoC,kBAAkB;AAExG;AACM,MAAO,qBAAsB,SAAQ,cAAc,CAAA;IACvD,MAAM,OAAO,CAAC,IAAY,EAAA;AACxB,QAAA,OAAO,IAAI;IACb;AACD;;MCTY,qBAAqB,CAAA;AADlC,IAAA,WAAA,GAAA;QAEU,IAAA,CAAA,SAAS,GAAG,CAAC,MAAK;AACxB,YAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7D,IAAI,CAAC,QAAQ,EAAE;AACb,gBAAA,OAAO,EAAE;YACX;AACA,YAAA,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,CAAC,QAAQ,CAAC;QACxD,CAAC,GAAG;AAEI,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,GAAG,EAAkB;AAiB1C,IAAA;IAfC,MAAM,OAAO,CAAC,IAAY,EAAA;QACxB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACxB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7B;AAEA,QAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YACrC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;AAC3C,YAAA,IAAI,MAAM,IAAI,IAAI,EAAE;gBAClB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;AAC5B,gBAAA,OAAO,MAAM;YACf;QACF;AAEA,QAAA,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,CAAA,CAAA,CAAG,CAAC;IAC5E;+GAzBW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,cADR,MAAM,EAAA,CAAA,CAAA;;4FACnB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACHlC;;AAEG;;;;"}
1
+ {"version":3,"file":"acorex-core-icon.mjs","sources":["../tmp-esm2022/icon/lib/icon.types.js","../tmp-esm2022/icon/lib/icon-resolver.service.js","../tmp-esm2022/icon/acorex-core-icon.js"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nexport class AXIconResolver {\n}\nexport const AX_ICON_RESOLVER = new InjectionToken('AX_ICON_RESOLVER');\n// Optional default fallback\nexport class AXIconResolverDefault extends AXIconResolver {\n async resolve(icon) {\n return icon;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvaWNvbi9zcmMvbGliL2ljb24udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLE9BQWdCLGNBQWM7Q0FFbkM7QUFFRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBb0Msa0JBQWtCLENBQUMsQ0FBQztBQUUxRyw0QkFBNEI7QUFDNUIsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGNBQWM7SUFDdkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFZO1FBQ3hCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYSWNvblJlc29sdmVyIHtcbiAgYWJzdHJhY3QgcmVzb2x2ZShpY29uOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+O1xufVxuXG5leHBvcnQgY29uc3QgQVhfSUNPTl9SRVNPTFZFUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBWEljb25SZXNvbHZlciB8IEFYSWNvblJlc29sdmVyW10+KCdBWF9JQ09OX1JFU09MVkVSJyk7XG5cbi8vIE9wdGlvbmFsIGRlZmF1bHQgZmFsbGJhY2tcbmV4cG9ydCBjbGFzcyBBWEljb25SZXNvbHZlckRlZmF1bHQgZXh0ZW5kcyBBWEljb25SZXNvbHZlciB7XG4gIGFzeW5jIHJlc29sdmUoaWNvbjogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGljb247XG4gIH1cbn1cbiJdfQ==","import { inject, Injectable } from '@angular/core';\nimport { AX_ICON_RESOLVER } from './icon.types';\nimport * as i0 from \"@angular/core\";\nexport class AXIconResolverService {\n constructor() {\n this.resolvers = (() => {\n const injected = inject(AX_ICON_RESOLVER, { optional: true });\n if (!injected) {\n return [];\n }\n return Array.isArray(injected) ? injected : [injected];\n })();\n this.cache = new Map();\n }\n async resolve(icon) {\n if (this.cache.has(icon)) {\n return this.cache.get(icon);\n }\n for (const resolver of this.resolvers) {\n const result = await resolver.resolve(icon);\n if (result != null) {\n this.cache.set(icon, result);\n return result;\n }\n }\n throw new Error(`AXIconResolverService: Could not resolve icon \"${icon}\"`);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXIconResolverService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.9\", ngImport: i0, type: AXIconResolverService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1yZXNvbHZlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9pY29uL3NyYy9saWIvaWNvbi1yZXNvbHZlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLHFCQUFxQjtJQURsQztRQUVVLGNBQVMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUN4QixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2QsT0FBTyxFQUFFLENBQUM7WUFDWixDQUFDO1lBQ0QsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUVHLFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztLQWlCM0M7SUFmQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQVk7UUFDeEIsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsQ0FBQztRQUVELEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sTUFBTSxHQUFHLE1BQU0sUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUM3QixPQUFPLE1BQU0sQ0FBQztZQUNoQixDQUFDO1FBQ0gsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELElBQUksR0FBRyxDQUFDLENBQUM7SUFDN0UsQ0FBQzs4R0F6QlUscUJBQXFCO2tIQUFyQixxQkFBcUIsY0FEUixNQUFNOzsyRkFDbkIscUJBQXFCO2tCQURqQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhfSUNPTl9SRVNPTFZFUiB9IGZyb20gJy4vaWNvbi50eXBlcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhJY29uUmVzb2x2ZXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZXNvbHZlcnMgPSAoKCkgPT4ge1xuICAgIGNvbnN0IGluamVjdGVkID0gaW5qZWN0KEFYX0lDT05fUkVTT0xWRVIsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgaWYgKCFpbmplY3RlZCkge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShpbmplY3RlZCkgPyBpbmplY3RlZCA6IFtpbmplY3RlZF07XG4gIH0pKCk7XG5cbiAgcHJpdmF0ZSBjYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG5cbiAgYXN5bmMgcmVzb2x2ZShpY29uOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGlmICh0aGlzLmNhY2hlLmhhcyhpY29uKSkge1xuICAgICAgcmV0dXJuIHRoaXMuY2FjaGUuZ2V0KGljb24pO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcmVzb2x2ZXIgb2YgdGhpcy5yZXNvbHZlcnMpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHJlc29sdmVyLnJlc29sdmUoaWNvbik7XG4gICAgICBpZiAocmVzdWx0ICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy5jYWNoZS5zZXQoaWNvbiwgcmVzdWx0KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoYEFYSWNvblJlc29sdmVyU2VydmljZTogQ291bGQgbm90IHJlc29sdmUgaWNvbiBcIiR7aWNvbn1cImApO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvcmUtaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvaWNvbi9zcmMvYWNvcmV4LWNvcmUtaWNvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;AACO,MAAM,cAAc,CAAC;AAC5B;AACY,MAAC,gBAAgB,GAAG,IAAI,cAAc,CAAC,kBAAkB;AACrE;AACO,MAAM,qBAAqB,SAAS,cAAc,CAAC;AAC1D,IAAI,MAAM,OAAO,CAAC,IAAI,EAAE;AACxB,QAAQ,OAAO,IAAI;AACnB,IAAI;AACJ;;ACNO,MAAM,qBAAqB,CAAC;AACnC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,SAAS,GAAG,CAAC,MAAM;AAChC,YAAY,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACzE,YAAY,IAAI,CAAC,QAAQ,EAAE;AAC3B,gBAAgB,OAAO,EAAE;AACzB,YAAY;AACZ,YAAY,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,CAAC,QAAQ,CAAC;AAClE,QAAQ,CAAC,GAAG;AACZ,QAAQ,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE;AAC9B,IAAI;AACJ,IAAI,MAAM,OAAO,CAAC,IAAI,EAAE;AACxB,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AAClC,YAAY,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;AACvC,QAAQ;AACR,QAAQ,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AAC/C,YAAY,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;AACvD,YAAY,IAAI,MAAM,IAAI,IAAI,EAAE;AAChC,gBAAgB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;AAC5C,gBAAgB,OAAO,MAAM;AAC7B,YAAY;AACZ,QAAQ;AACR,QAAQ,MAAM,IAAI,KAAK,CAAC,CAAC,+CAA+C,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAClF,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,qBAAqB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC;AACxL,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,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC/J;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAC/H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;;ACjCb;AACA;AACA;;;;"}
@@ -47,10 +47,10 @@ class AXImageService {
47
47
  canvas.getContext('2d').drawImage(image, 0, 0, width, height);
48
48
  return new Promise((resolve) => canvas.toBlob(resolve, options.type, options.quality));
49
49
  }
50
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
51
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXImageService }); }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXImageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
51
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXImageService }); }
52
52
  }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.12", ngImport: i0, type: AXImageService, decorators: [{
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.9", ngImport: i0, type: AXImageService, decorators: [{
54
54
  type: Injectable
55
55
  }] });
56
56