@jsverse/transloco-locale 8.0.2 → 8.2.0

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.
@@ -29,6 +29,9 @@ export class TranslocoLocaleService {
29
29
  .pipe(map((lang) => this.toLocale(lang)), filter(Boolean))
30
30
  .subscribe((locale) => this.setLocale(locale));
31
31
  }
32
+ getDefaultLocale() {
33
+ return this.defaultLocale;
34
+ }
32
35
  getLocale() {
33
36
  return this._locale;
34
37
  }
@@ -145,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
145
148
  providedIn: 'root',
146
149
  }]
147
150
  }], ctorParameters: () => [] });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsb2NvLWxvY2FsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy90cmFuc2xvY28tbG9jYWxlL3NyYy9saWIvdHJhbnNsb2NvLWxvY2FsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLGlDQUFpQyxFQUNqQywrQkFBK0IsRUFDL0IsNkJBQTZCLEdBQzlCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQiw0QkFBNEIsR0FDN0IsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFZekMsTUFBTSxPQUFPLHNCQUFzQjtJQUN6QixnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUMxRCxhQUFhLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDeEQsZUFBZSxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQzVELHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ2xFLGlCQUFpQixH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QUcsQ0FBQztRQUNiLENBQUM7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRDs7Ozs7T0FLRztJQUVLLGdCQUFnQjtRQUN0QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN4RCxJQUFJLGFBQWE7WUFBRSxPQUFPLGFBQWEsQ0FBQztRQUV4QyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekQsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDekMsSUFBSSxNQUFNO2dCQUFFLE9BQU8sTUFBTSxDQUFDO1FBQzVCLENBQUM7UUFFRCxNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2hFLElBQUkscUJBQXFCO1lBQUUsT0FBTyxxQkFBcUIsQ0FBQztRQUV4RCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQywrQkFBK0I7SUFDNUQsQ0FBQzt1R0FwS1Usc0JBQXNCOzJHQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBnZXRCcm93c2VyQ3VsdHVyZUxhbmcsIFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgaXNMb2NhbGVGb3JtYXQsIHRvRGF0ZSB9IGZyb20gJy4vaGVscGVycyc7XG5pbXBvcnQgeyBnZXREZWZhdWx0T3B0aW9ucyB9IGZyb20gJy4vc2hhcmVkJztcbmltcG9ydCB7XG4gIFRSQU5TTE9DT19MT0NBTEVfQ09ORklHLFxuICBUUkFOU0xPQ09fTE9DQUxFX0NVUlJFTkNZX01BUFBJTkcsXG4gIFRSQU5TTE9DT19MT0NBTEVfREVGQVVMVF9DVVJSRU5DWSxcbiAgVFJBTlNMT0NPX0xPQ0FMRV9ERUZBVUxUX0xPQ0FMRSxcbiAgVFJBTlNMT0NPX0xPQ0FMRV9MQU5HX01BUFBJTkcsXG59IGZyb20gJy4vdHJhbnNsb2NvLWxvY2FsZS5jb25maWcnO1xuaW1wb3J0IHtcbiAgVFJBTlNMT0NPX0RBVEVfVFJBTlNGT1JNRVIsXG4gIFRSQU5TTE9DT19OVU1CRVJfVFJBTlNGT1JNRVIsXG59IGZyb20gJy4vdHJhbnNsb2NvLWxvY2FsZS50cmFuc2Zvcm1lcnMnO1xuaW1wb3J0IHtcbiAgRGF0ZUZvcm1hdE9wdGlvbnMsXG4gIExvY2FsZSxcbiAgTG9jYWxlQ29uZmlnLFxuICBOdW1iZXJTdHlsZXMsXG4gIFZhbGlkRGF0ZSxcbn0gZnJvbSAnLi90cmFuc2xvY28tbG9jYWxlLnR5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zbG9jb0xvY2FsZVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHRyYW5zbG9jb1NlcnZpY2UgPSBpbmplY3QoVHJhbnNsb2NvU2VydmljZSk7XG4gIHByaXZhdGUgbGFuZ0xvY2FsZU1hcHBpbmcgPSBpbmplY3QoVFJBTlNMT0NPX0xPQ0FMRV9MQU5HX01BUFBJTkcpO1xuICBwcml2YXRlIGRlZmF1bHRMb2NhbGUgPSBpbmplY3QoVFJBTlNMT0NPX0xPQ0FMRV9ERUZBVUxUX0xPQ0FMRSk7XG4gIHByaXZhdGUgZGVmYXVsdEN1cnJlbmN5ID0gaW5qZWN0KFRSQU5TTE9DT19MT0NBTEVfREVGQVVMVF9DVVJSRU5DWSk7XG4gIHByaXZhdGUgbG9jYWxlQ3VycmVuY3lNYXBwaW5nID0gaW5qZWN0KFRSQU5TTE9DT19MT0NBTEVfQ1VSUkVOQ1lfTUFQUElORyk7XG4gIHByaXZhdGUgbnVtYmVyVHJhbnNmb3JtZXIgPSBpbmplY3QoVFJBTlNMT0NPX05VTUJFUl9UUkFOU0ZPUk1FUik7XG4gIHByaXZhdGUgZGF0ZVRyYW5zZm9ybWVyID0gaW5qZWN0KFRSQU5TTE9DT19EQVRFX1RSQU5TRk9STUVSKTtcbiAgcHJpdmF0ZSBsb2NhbGVDb25maWc6IExvY2FsZUNvbmZpZyA9IGluamVjdChUUkFOU0xPQ09fTE9DQUxFX0NPTkZJRyk7XG4gIHByaXZhdGUgYnJvd3NlckxvY2FsZSA9IGdldEJyb3dzZXJDdWx0dXJlTGFuZygpIHx8IHRoaXMuZGVmYXVsdExvY2FsZTtcblxuICBwcml2YXRlIF9sb2NhbGUgPSAnJztcbiAgcHJpdmF0ZSBsb2NhbGU6IEJlaGF2aW9yU3ViamVjdDxMb2NhbGU+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0aGlzLl9sb2NhbGUpO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgbG9jYWxlQ2hhbmdlcyQgPSB0aGlzLmxvY2FsZS5hc09ic2VydmFibGUoKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIEluaXRpYWxpemUgbG9jYWxlIHdpdGggZmFsbGJhY2sgY2hhaW5cbiAgICB0aGlzLnNldExvY2FsZSh0aGlzLmluaXRpYWxpemVMb2NhbGUoKSk7XG5cbiAgICAvLyBTdWJzY3JpYmUgdG8gbGFuZ3VhZ2UgY2hhbmdlc1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy50cmFuc2xvY29TZXJ2aWNlLmxhbmdDaGFuZ2VzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobGFuZykgPT4gdGhpcy50b0xvY2FsZShsYW5nKSksXG4gICAgICAgIGZpbHRlcihCb29sZWFuKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZTogTG9jYWxlKSA9PiB0aGlzLnNldExvY2FsZShsb2NhbGUpKTtcbiAgfVxuXG4gIGdldExvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9jYWxlO1xuICB9XG5cbiAgc2V0TG9jYWxlKGxvY2FsZTogTG9jYWxlKSB7XG4gICAgaWYgKCFpc0xvY2FsZUZvcm1hdChsb2NhbGUpKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGAke2xvY2FsZX0gaXNuJ3QgYSB2YWxpZCBsb2NhbGUgZm9ybWF0YCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2NhbGUubmV4dChsb2NhbGUpO1xuICAgIHRoaXMuX2xvY2FsZSA9IGxvY2FsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGN1cnJlbmN5IHN5bWJvbCBmb3IgdGhlIGN1cnJlbnRseSBzZXQgbG9jYWxlLlxuICAgKi9cbiAgZ2V0Q3VycmVuY3lTeW1ib2wobG9jYWxlID0gdGhpcy5nZXRMb2NhbGUoKSkge1xuICAgIGNvbnN0IGN1cnJlbmN5ID0gdGhpcy5sb2NhbGVDdXJyZW5jeU1hcHBpbmdbbG9jYWxlXTtcbiAgICBjb25zdCBudW1iZXJGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlLCB7XG4gICAgICBzdHlsZTogJ2N1cnJlbmN5JyxcbiAgICAgIGN1cnJlbmN5RGlzcGxheTogJ3N5bWJvbCcsXG4gICAgICBjdXJyZW5jeSxcbiAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogMCxcbiAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMCxcbiAgICB9KTtcblxuICAgIGNvbnN0IHBpdm90ID0gMDtcblxuICAgIHJldHVybiBudW1iZXJGb3JtYXRcbiAgICAgIC5mb3JtYXQocGl2b3QpXG4gICAgICAuc3BsaXQocGl2b3QudG9TdHJpbmcoKSlcbiAgICAgIC5tYXAoKGVsZW1lbnQpID0+IGVsZW1lbnQudHJpbSgpKVxuICAgICAgLmZpbmQoKGVsZW1lbnQpID0+ICEhZWxlbWVudCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtIGEgZGF0ZSBpbnRvIHRoZSBsb2NhbGUncyBkYXRlIGZvcm1hdC5cbiAgICpcbiAgICogVGhlIGRhdGUgZXhwcmVzc2lvbjogYSBgRGF0ZWAgb2JqZWN0LCBhIG51bWJlclxuICAgKiAobWlsbGlzZWNvbmRzIHNpbmNlIFVUQyBlcG9jaCksIG9yIGFuIElTTyBzdHJpbmcgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9OT1RFLWRhdGV0aW1lKS5cbiAgICpcbiAgICogQGV4YW1wbGVcbiAgICpcbiAgICogbG9jYWxpemVEYXRlKG5ldyBEYXRlKDIwMTksIDksIDcsIDEyLCAwLCAwKSkgLy8gMTAvNy8yMDE5XG4gICAqIGxvY2FsaXplRGF0ZShkYXRlLCAnZW4tVVMnLCB7IGRhdGVTdHlsZTogJ21lZGl1bScsIHRpbWVTdHlsZTogJ21lZGl1bScgfSkgLy8gU2VwIDEwLCAyMDE5LCAxMDo0NjoxMiBQTVxuICAgKiBsb2NhbGl6ZURhdGUoZGF0ZSkgJ2VuLVVTJywgeyB0aW1lWm9uZTogJ1VUQycsIHRpbWVTdHlsZTogJ2Z1bGwnIH0gLy8gNzo0MDozMiBQTSBDb29yZGluYXRlZCBVbml2ZXJzYWwgVGltZVxuICAgKiBsb2NhbGl6ZURhdGUoMSwgJ2VuLVVTJywgeyBkYXRlU3R5bGU6ICdtZWRpdW0nIH0pIC8vIEphbiAxLCAxOTcwXG4gICAqIGxvY2FsaXplRGF0ZSgnMjAxOS0wMi0wOCcsICdlbi1VUycsIHsgZGF0ZVN0eWxlOiAnbWVkaXVtJyB9KSAvLyBGZWIgOCwgMjAxOVxuICAgKi9cbiAgbG9jYWxpemVEYXRlKFxuICAgIGRhdGU6IFZhbGlkRGF0ZSxcbiAgICBsb2NhbGU6IExvY2FsZSA9IHRoaXMuZ2V0TG9jYWxlKCksXG4gICAgb3B0aW9uczogRGF0ZUZvcm1hdE9wdGlvbnMgPSB7fSxcbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXNvbHZlZCA9XG4gICAgICBvcHRpb25zID8/IGdldERlZmF1bHRPcHRpb25zKGxvY2FsZSwgJ2RhdGUnLCB0aGlzLmxvY2FsZUNvbmZpZyk7XG5cbiAgICByZXR1cm4gdGhpcy5kYXRlVHJhbnNmb3JtZXIudHJhbnNmb3JtKHRvRGF0ZShkYXRlKSwgbG9jYWxlLCByZXNvbHZlZCk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtIGEgbnVtYmVyIGludG8gdGhlIGxvY2FsZSdzIG51bWJlciBmb3JtYXQgYWNjb3JkaW5nIHRvIHRoZSBudW1iZXIgdHlwZS5cbiAgICpcbiAgICogbG9jYWxpemVOdW1iZXIoMTIzNDU2Nzg5MCwgJ2RlY2ltYWwnKSAvLyAxLDIzNCw1NjcsODkwXG4gICAqIGxvY2FsaXplTnVtYmVyKDAuNSwgJ3BlcmNlbnQnKSAvLyA1MCVcbiAgICogbG9jYWxpemVOdW1iZXIoMTAwMCwgJ2N1cnJlbmN5JykgLy8gJDEsMDAwLjAwXG4gICAqL1xuICBsb2NhbGl6ZU51bWJlcihcbiAgICB2YWx1ZTogbnVtYmVyIHwgc3RyaW5nLFxuICAgIHN0eWxlOiBOdW1iZXJTdHlsZXMsXG4gICAgbG9jYWxlOiBMb2NhbGUgPSB0aGlzLmdldExvY2FsZSgpLFxuICAgIG9wdGlvbnM/OiBJbnRsLk51bWJlckZvcm1hdE9wdGlvbnMsXG4gICk6IHN0cmluZyB7XG4gICAgbGV0IHJlc29sdmVkID1cbiAgICAgIG9wdGlvbnMgPz8gZ2V0RGVmYXVsdE9wdGlvbnMobG9jYWxlLCBzdHlsZSwgdGhpcy5sb2NhbGVDb25maWcpO1xuXG4gICAgaWYgKHN0eWxlID09PSAnY3VycmVuY3knKSB7XG4gICAgICByZXNvbHZlZCA9IHtcbiAgICAgICAgLi4ucmVzb2x2ZWQsXG4gICAgICAgIGN1cnJlbmN5OiByZXNvbHZlZC5jdXJyZW5jeSB8fCB0aGlzLl9yZXNvbHZlQ3VycmVuY3lDb2RlKGxvY2FsZSksXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLm51bWJlclRyYW5zZm9ybWVyLnRyYW5zZm9ybSh2YWx1ZSwgc3R5bGUsIGxvY2FsZSwgcmVzb2x2ZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3Jlc29sdmVDdXJyZW5jeUNvZGUobG9jYWxlOiBMb2NhbGUgPSB0aGlzLmdldExvY2FsZSgpKSB7XG4gICAgcmV0dXJuIHRoaXMubG9jYWxlQ3VycmVuY3lNYXBwaW5nW2xvY2FsZV0gfHwgdGhpcy5kZWZhdWx0Q3VycmVuY3k7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAvLyBDYXJldGFrZXIgbm90ZTogaXQncyBpbXBvcnRhbnQgdG8gY2xlYW4gdXAgcmVmZXJlbmNlcyB0byBzdWJzY3JpcHRpb25zIHNpbmNlIHRoZXkgc2F2ZSB0aGUgYG5leHRgXG4gICAgLy8gY2FsbGJhY2sgd2l0aGluIGl0cyBgZGVzdGluYXRpb25gIHByb3BlcnR5LCBwcmV2ZW50aW5nIGNsYXNzZXMgZnJvbSBiZWluZyBHQydkLlxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgdG9Mb2NhbGUodmFsOiBzdHJpbmcgfCBMb2NhbGUpOiBMb2NhbGUge1xuICAgIGlmICh0aGlzLmxhbmdMb2NhbGVNYXBwaW5nW3ZhbF0pIHtcbiAgICAgIHJldHVybiB0aGlzLmxhbmdMb2NhbGVNYXBwaW5nW3ZhbF07XG4gICAgfVxuXG4gICAgaWYgKGlzTG9jYWxlRm9ybWF0KHZhbCkpIHtcbiAgICAgIHJldHVybiB2YWw7XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgLypcbiAgICogR2V0IHRoZSBicm93c2VyJ3MgbGFuZ3VhZ2UgYW5kIHZhbGlkYXRlLlxuICAgKiBJZiB0aGUgYnJvd3NlcidzIGxhbmd1YWdlIGlzIG5vdCBzZXQsIGl0IHdpbGwgZmFsbCBiYWNrIHRvIHRoZSBhY3RpdmUgbGFuZ3VhZ2UgZnJvbSBUcmFuc2xvY29TZXJ2aWNlLlxuICAgKiBJZiBhY3RpdmUgbGFuZ3VhZ2UgZnJvbSBUcmFuc2xvY29TZXJ2aWNlIGlzIG5vdCB2YWxpZCwgaXQgd2lsbCBmYWxsIGJhY2sgdG8gdGhlIGRlZmF1bHQgbG9jYWxlLlxuICAgKiBJZiB0aGUgZGVmYXVsdCBsb2NhbGUgaXMgbm90IHZhbGlkLCBpdCB3aWxsIHJldHVybiB0aGUgZGVmYXVsdCBsb2NhbGUgYXMgYSBzdHJpbmdcbiAgICovXG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplTG9jYWxlKCk6IExvY2FsZSB7XG4gICAgY29uc3QgYnJvd3NlckxvY2FsZSA9IHRoaXMudG9Mb2NhbGUodGhpcy5icm93c2VyTG9jYWxlKTtcbiAgICBpZiAoYnJvd3NlckxvY2FsZSkgcmV0dXJuIGJyb3dzZXJMb2NhbGU7XG5cbiAgICBjb25zdCBhY3RpdmVMYW5nID0gdGhpcy50cmFuc2xvY29TZXJ2aWNlLmdldEFjdGl2ZUxhbmcoKTtcbiAgICBpZiAoYWN0aXZlTGFuZykge1xuICAgICAgY29uc3QgbG9jYWxlID0gdGhpcy50b0xvY2FsZShhY3RpdmVMYW5nKTtcbiAgICAgIGlmIChsb2NhbGUpIHJldHVybiBsb2NhbGU7XG4gICAgfVxuXG4gICAgY29uc3QgZGVmYXVsdExvY2FsZVJlc29sdmVkID0gdGhpcy50b0xvY2FsZSh0aGlzLmRlZmF1bHRMb2NhbGUpO1xuICAgIGlmIChkZWZhdWx0TG9jYWxlUmVzb2x2ZWQpIHJldHVybiBkZWZhdWx0TG9jYWxlUmVzb2x2ZWQ7XG5cbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0TG9jYWxlOyAvLyBGYWxsYmFjayB0byBhIGRlZmF1bHQgbG9jYWxlXG4gIH1cbn1cbiJdfQ==
151
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsb2NvLWxvY2FsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy90cmFuc2xvY28tbG9jYWxlL3NyYy9saWIvdHJhbnNsb2NvLWxvY2FsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzdDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLGlDQUFpQyxFQUNqQywrQkFBK0IsRUFDL0IsNkJBQTZCLEdBQzlCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUNMLDBCQUEwQixFQUMxQiw0QkFBNEIsR0FDN0IsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFZekMsTUFBTSxPQUFPLHNCQUFzQjtJQUN6QixnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM1QyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUMxRCxhQUFhLEdBQUcsTUFBTSxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDeEQsZUFBZSxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQzVELHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ2xFLGlCQUFpQixH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UUFFRCxJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztRQUVELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVEOzs7OztPQUtHO0lBRUssZ0JBQWdCO1FBQ3RCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3hELElBQUksYUFBYTtZQUFFLE9BQU8sYUFBYSxDQUFDO1FBRXhDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6RCxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN6QyxJQUFJLE1BQU07Z0JBQUUsT0FBTyxNQUFNLENBQUM7UUFDNUIsQ0FBQztRQUVELE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEUsSUFBSSxxQkFBcUI7WUFBRSxPQUFPLHFCQUFxQixDQUFDO1FBRXhELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLCtCQUErQjtJQUM1RCxDQUFDO3VHQXhLVSxzQkFBc0I7MkdBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldEJyb3dzZXJDdWx0dXJlTGFuZywgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBpc0xvY2FsZUZvcm1hdCwgdG9EYXRlIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IGdldERlZmF1bHRPcHRpb25zIH0gZnJvbSAnLi9zaGFyZWQnO1xuaW1wb3J0IHtcbiAgVFJBTlNMT0NPX0xPQ0FMRV9DT05GSUcsXG4gIFRSQU5TTE9DT19MT0NBTEVfQ1VSUkVOQ1lfTUFQUElORyxcbiAgVFJBTlNMT0NPX0xPQ0FMRV9ERUZBVUxUX0NVUlJFTkNZLFxuICBUUkFOU0xPQ09fTE9DQUxFX0RFRkFVTFRfTE9DQUxFLFxuICBUUkFOU0xPQ09fTE9DQUxFX0xBTkdfTUFQUElORyxcbn0gZnJvbSAnLi90cmFuc2xvY28tbG9jYWxlLmNvbmZpZyc7XG5pbXBvcnQge1xuICBUUkFOU0xPQ09fREFURV9UUkFOU0ZPUk1FUixcbiAgVFJBTlNMT0NPX05VTUJFUl9UUkFOU0ZPUk1FUixcbn0gZnJvbSAnLi90cmFuc2xvY28tbG9jYWxlLnRyYW5zZm9ybWVycyc7XG5pbXBvcnQge1xuICBEYXRlRm9ybWF0T3B0aW9ucyxcbiAgTG9jYWxlLFxuICBMb2NhbGVDb25maWcsXG4gIE51bWJlclN0eWxlcyxcbiAgVmFsaWREYXRlLFxufSBmcm9tICcuL3RyYW5zbG9jby1sb2NhbGUudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgVHJhbnNsb2NvTG9jYWxlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgdHJhbnNsb2NvU2VydmljZSA9IGluamVjdChUcmFuc2xvY29TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBsYW5nTG9jYWxlTWFwcGluZyA9IGluamVjdChUUkFOU0xPQ09fTE9DQUxFX0xBTkdfTUFQUElORyk7XG4gIHByaXZhdGUgZGVmYXVsdExvY2FsZSA9IGluamVjdChUUkFOU0xPQ09fTE9DQUxFX0RFRkFVTFRfTE9DQUxFKTtcbiAgcHJpdmF0ZSBkZWZhdWx0Q3VycmVuY3kgPSBpbmplY3QoVFJBTlNMT0NPX0xPQ0FMRV9ERUZBVUxUX0NVUlJFTkNZKTtcbiAgcHJpdmF0ZSBsb2NhbGVDdXJyZW5jeU1hcHBpbmcgPSBpbmplY3QoVFJBTlNMT0NPX0xPQ0FMRV9DVVJSRU5DWV9NQVBQSU5HKTtcbiAgcHJpdmF0ZSBudW1iZXJUcmFuc2Zvcm1lciA9IGluamVjdChUUkFOU0xPQ09fTlVNQkVSX1RSQU5TRk9STUVSKTtcbiAgcHJpdmF0ZSBkYXRlVHJhbnNmb3JtZXIgPSBpbmplY3QoVFJBTlNMT0NPX0RBVEVfVFJBTlNGT1JNRVIpO1xuICBwcml2YXRlIGxvY2FsZUNvbmZpZzogTG9jYWxlQ29uZmlnID0gaW5qZWN0KFRSQU5TTE9DT19MT0NBTEVfQ09ORklHKTtcbiAgcHJpdmF0ZSBicm93c2VyTG9jYWxlID0gZ2V0QnJvd3NlckN1bHR1cmVMYW5nKCkgfHwgdGhpcy5kZWZhdWx0TG9jYWxlO1xuXG4gIHByaXZhdGUgX2xvY2FsZSA9ICcnO1xuICBwcml2YXRlIGxvY2FsZTogQmVoYXZpb3JTdWJqZWN0PExvY2FsZT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuX2xvY2FsZSk7XG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcblxuICBsb2NhbGVDaGFuZ2VzJCA9IHRoaXMubG9jYWxlLmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gSW5pdGlhbGl6ZSBsb2NhbGUgd2l0aCBmYWxsYmFjayBjaGFpblxuICAgIHRoaXMuc2V0TG9jYWxlKHRoaXMuaW5pdGlhbGl6ZUxvY2FsZSgpKTtcblxuICAgIC8vIFN1YnNjcmliZSB0byBsYW5ndWFnZSBjaGFuZ2VzXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLnRyYW5zbG9jb1NlcnZpY2UubGFuZ0NoYW5nZXMkXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChsYW5nKSA9PiB0aGlzLnRvTG9jYWxlKGxhbmcpKSxcbiAgICAgICAgZmlsdGVyKEJvb2xlYW4pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgobG9jYWxlOiBMb2NhbGUpID0+IHRoaXMuc2V0TG9jYWxlKGxvY2FsZSkpO1xuICB9XG5cbiAgZ2V0RGVmYXVsdExvY2FsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0TG9jYWxlO1xuICB9XG5cbiAgZ2V0TG9jYWxlKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2NhbGU7XG4gIH1cblxuICBzZXRMb2NhbGUobG9jYWxlOiBMb2NhbGUpIHtcbiAgICBpZiAoIWlzTG9jYWxlRm9ybWF0KGxvY2FsZSkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYCR7bG9jYWxlfSBpc24ndCBhIHZhbGlkIGxvY2FsZSBmb3JtYXRgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmxvY2FsZS5uZXh0KGxvY2FsZSk7XG4gICAgdGhpcy5fbG9jYWxlID0gbG9jYWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgY3VycmVuY3kgc3ltYm9sIGZvciB0aGUgY3VycmVudGx5IHNldCBsb2NhbGUuXG4gICAqL1xuICBnZXRDdXJyZW5jeVN5bWJvbChsb2NhbGUgPSB0aGlzLmdldExvY2FsZSgpKSB7XG4gICAgY29uc3QgY3VycmVuY3kgPSB0aGlzLmxvY2FsZUN1cnJlbmN5TWFwcGluZ1tsb2NhbGVdO1xuICAgIGNvbnN0IG51bWJlckZvcm1hdCA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUsIHtcbiAgICAgIHN0eWxlOiAnY3VycmVuY3knLFxuICAgICAgY3VycmVuY3lEaXNwbGF5OiAnc3ltYm9sJyxcbiAgICAgIGN1cnJlbmN5LFxuICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiAwLFxuICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAwLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcGl2b3QgPSAwO1xuXG4gICAgcmV0dXJuIG51bWJlckZvcm1hdFxuICAgICAgLmZvcm1hdChwaXZvdClcbiAgICAgIC5zcGxpdChwaXZvdC50b1N0cmluZygpKVxuICAgICAgLm1hcCgoZWxlbWVudCkgPT4gZWxlbWVudC50cmltKCkpXG4gICAgICAuZmluZCgoZWxlbWVudCkgPT4gISFlbGVtZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gYSBkYXRlIGludG8gdGhlIGxvY2FsZSdzIGRhdGUgZm9ybWF0LlxuICAgKlxuICAgKiBUaGUgZGF0ZSBleHByZXNzaW9uOiBhIGBEYXRlYCBvYmplY3QsIGEgbnVtYmVyXG4gICAqIChtaWxsaXNlY29uZHMgc2luY2UgVVRDIGVwb2NoKSwgb3IgYW4gSVNPIHN0cmluZyAoaHR0cHM6Ly93d3cudzMub3JnL1RSL05PVEUtZGF0ZXRpbWUpLlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiBsb2NhbGl6ZURhdGUobmV3IERhdGUoMjAxOSwgOSwgNywgMTIsIDAsIDApKSAvLyAxMC83LzIwMTlcbiAgICogbG9jYWxpemVEYXRlKGRhdGUsICdlbi1VUycsIHsgZGF0ZVN0eWxlOiAnbWVkaXVtJywgdGltZVN0eWxlOiAnbWVkaXVtJyB9KSAvLyBTZXAgMTAsIDIwMTksIDEwOjQ2OjEyIFBNXG4gICAqIGxvY2FsaXplRGF0ZShkYXRlKSAnZW4tVVMnLCB7IHRpbWVab25lOiAnVVRDJywgdGltZVN0eWxlOiAnZnVsbCcgfSAvLyA3OjQwOjMyIFBNIENvb3JkaW5hdGVkIFVuaXZlcnNhbCBUaW1lXG4gICAqIGxvY2FsaXplRGF0ZSgxLCAnZW4tVVMnLCB7IGRhdGVTdHlsZTogJ21lZGl1bScgfSkgLy8gSmFuIDEsIDE5NzBcbiAgICogbG9jYWxpemVEYXRlKCcyMDE5LTAyLTA4JywgJ2VuLVVTJywgeyBkYXRlU3R5bGU6ICdtZWRpdW0nIH0pIC8vIEZlYiA4LCAyMDE5XG4gICAqL1xuICBsb2NhbGl6ZURhdGUoXG4gICAgZGF0ZTogVmFsaWREYXRlLFxuICAgIGxvY2FsZTogTG9jYWxlID0gdGhpcy5nZXRMb2NhbGUoKSxcbiAgICBvcHRpb25zOiBEYXRlRm9ybWF0T3B0aW9ucyA9IHt9LFxuICApOiBzdHJpbmcge1xuICAgIGNvbnN0IHJlc29sdmVkID1cbiAgICAgIG9wdGlvbnMgPz8gZ2V0RGVmYXVsdE9wdGlvbnMobG9jYWxlLCAnZGF0ZScsIHRoaXMubG9jYWxlQ29uZmlnKTtcblxuICAgIHJldHVybiB0aGlzLmRhdGVUcmFuc2Zvcm1lci50cmFuc2Zvcm0odG9EYXRlKGRhdGUpLCBsb2NhbGUsIHJlc29sdmVkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gYSBudW1iZXIgaW50byB0aGUgbG9jYWxlJ3MgbnVtYmVyIGZvcm1hdCBhY2NvcmRpbmcgdG8gdGhlIG51bWJlciB0eXBlLlxuICAgKlxuICAgKiBsb2NhbGl6ZU51bWJlcigxMjM0NTY3ODkwLCAnZGVjaW1hbCcpIC8vIDEsMjM0LDU2Nyw4OTBcbiAgICogbG9jYWxpemVOdW1iZXIoMC41LCAncGVyY2VudCcpIC8vIDUwJVxuICAgKiBsb2NhbGl6ZU51bWJlcigxMDAwLCAnY3VycmVuY3knKSAvLyAkMSwwMDAuMDBcbiAgICovXG4gIGxvY2FsaXplTnVtYmVyKFxuICAgIHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsXG4gICAgc3R5bGU6IE51bWJlclN0eWxlcyxcbiAgICBsb2NhbGU6IExvY2FsZSA9IHRoaXMuZ2V0TG9jYWxlKCksXG4gICAgb3B0aW9ucz86IEludGwuTnVtYmVyRm9ybWF0T3B0aW9ucyxcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgcmVzb2x2ZWQgPVxuICAgICAgb3B0aW9ucyA/PyBnZXREZWZhdWx0T3B0aW9ucyhsb2NhbGUsIHN0eWxlLCB0aGlzLmxvY2FsZUNvbmZpZyk7XG5cbiAgICBpZiAoc3R5bGUgPT09ICdjdXJyZW5jeScpIHtcbiAgICAgIHJlc29sdmVkID0ge1xuICAgICAgICAuLi5yZXNvbHZlZCxcbiAgICAgICAgY3VycmVuY3k6IHJlc29sdmVkLmN1cnJlbmN5IHx8IHRoaXMuX3Jlc29sdmVDdXJyZW5jeUNvZGUobG9jYWxlKSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMubnVtYmVyVHJhbnNmb3JtZXIudHJhbnNmb3JtKHZhbHVlLCBzdHlsZSwgbG9jYWxlLCByZXNvbHZlZCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBfcmVzb2x2ZUN1cnJlbmN5Q29kZShsb2NhbGU6IExvY2FsZSA9IHRoaXMuZ2V0TG9jYWxlKCkpIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbGVDdXJyZW5jeU1hcHBpbmdbbG9jYWxlXSB8fCB0aGlzLmRlZmF1bHRDdXJyZW5jeTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIC8vIENhcmV0YWtlciBub3RlOiBpdCdzIGltcG9ydGFudCB0byBjbGVhbiB1cCByZWZlcmVuY2VzIHRvIHN1YnNjcmlwdGlvbnMgc2luY2UgdGhleSBzYXZlIHRoZSBgbmV4dGBcbiAgICAvLyBjYWxsYmFjayB3aXRoaW4gaXRzIGBkZXN0aW5hdGlvbmAgcHJvcGVydHksIHByZXZlbnRpbmcgY2xhc3NlcyBmcm9tIGJlaW5nIEdDJ2QuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSB0b0xvY2FsZSh2YWw6IHN0cmluZyB8IExvY2FsZSk6IExvY2FsZSB7XG4gICAgaWYgKHRoaXMubGFuZ0xvY2FsZU1hcHBpbmdbdmFsXSkge1xuICAgICAgcmV0dXJuIHRoaXMubGFuZ0xvY2FsZU1hcHBpbmdbdmFsXTtcbiAgICB9XG5cbiAgICBpZiAoaXNMb2NhbGVGb3JtYXQodmFsKSkge1xuICAgICAgcmV0dXJuIHZhbDtcbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICAvKlxuICAgKiBHZXQgdGhlIGJyb3dzZXIncyBsYW5ndWFnZSBhbmQgdmFsaWRhdGUuXG4gICAqIElmIHRoZSBicm93c2VyJ3MgbGFuZ3VhZ2UgaXMgbm90IHNldCwgaXQgd2lsbCBmYWxsIGJhY2sgdG8gdGhlIGFjdGl2ZSBsYW5ndWFnZSBmcm9tIFRyYW5zbG9jb1NlcnZpY2UuXG4gICAqIElmIGFjdGl2ZSBsYW5ndWFnZSBmcm9tIFRyYW5zbG9jb1NlcnZpY2UgaXMgbm90IHZhbGlkLCBpdCB3aWxsIGZhbGwgYmFjayB0byB0aGUgZGVmYXVsdCBsb2NhbGUuXG4gICAqIElmIHRoZSBkZWZhdWx0IGxvY2FsZSBpcyBub3QgdmFsaWQsIGl0IHdpbGwgcmV0dXJuIHRoZSBkZWZhdWx0IGxvY2FsZSBhcyBhIHN0cmluZ1xuICAgKi9cblxuICBwcml2YXRlIGluaXRpYWxpemVMb2NhbGUoKTogTG9jYWxlIHtcbiAgICBjb25zdCBicm93c2VyTG9jYWxlID0gdGhpcy50b0xvY2FsZSh0aGlzLmJyb3dzZXJMb2NhbGUpO1xuICAgIGlmIChicm93c2VyTG9jYWxlKSByZXR1cm4gYnJvd3NlckxvY2FsZTtcblxuICAgIGNvbnN0IGFjdGl2ZUxhbmcgPSB0aGlzLnRyYW5zbG9jb1NlcnZpY2UuZ2V0QWN0aXZlTGFuZygpO1xuICAgIGlmIChhY3RpdmVMYW5nKSB7XG4gICAgICBjb25zdCBsb2NhbGUgPSB0aGlzLnRvTG9jYWxlKGFjdGl2ZUxhbmcpO1xuICAgICAgaWYgKGxvY2FsZSkgcmV0dXJuIGxvY2FsZTtcbiAgICB9XG5cbiAgICBjb25zdCBkZWZhdWx0TG9jYWxlUmVzb2x2ZWQgPSB0aGlzLnRvTG9jYWxlKHRoaXMuZGVmYXVsdExvY2FsZSk7XG4gICAgaWYgKGRlZmF1bHRMb2NhbGVSZXNvbHZlZCkgcmV0dXJuIGRlZmF1bHRMb2NhbGVSZXNvbHZlZDtcblxuICAgIHJldHVybiB0aGlzLmRlZmF1bHRMb2NhbGU7IC8vIEZhbGxiYWNrIHRvIGEgZGVmYXVsdCBsb2NhbGVcbiAgfVxufVxuIl19
@@ -785,6 +785,9 @@ class TranslocoLocaleService {
785
785
  .pipe(map((lang) => this.toLocale(lang)), filter(Boolean))
786
786
  .subscribe((locale) => this.setLocale(locale));
787
787
  }
788
+ getDefaultLocale() {
789
+ return this.defaultLocale;
790
+ }
788
791
  getLocale() {
789
792
  return this._locale;
790
793
  }
@@ -1 +1 @@
1
- {"version":3,"file":"jsverse-transloco-locale.mjs","sources":["../../../../libs/transloco-locale/src/lib/helpers.ts","../../../../libs/transloco-locale/src/lib/shared.ts","../../../../libs/transloco-locale/src/lib/locale-currency.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.config.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.transformers.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.service.ts","../../../../libs/transloco-locale/src/lib/pipes/base-locale.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-currency.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-date.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-decimal.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-percent.pipe.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.module.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.providers.ts","../../../../libs/transloco-locale/src/jsverse-transloco-locale.ts"],"sourcesContent":["import { toNumber } from '@jsverse/utils';\n\nimport { DateFormatOptions, Locale } from './transloco-locale.types';\n\nexport const ISO8601_DATE_REGEX =\n /^(\\d{4})-?(\\d\\d)-?(\\d\\d)(?:T(\\d\\d)(?::?(\\d\\d)(?::?(\\d\\d)(?:\\.(\\d+))?)?)?(Z|([+-])(\\d\\d):?(\\d\\d))?)?$/;\n/**\n * check if a given value is in BCP 47 language tag.\n *\n * isLocaleFormat('en') // false,\n * isLocaleFormat('En-us') // false\n * isLocaleFormat('en-US') // true\n */\nexport function isLocaleFormat(val: any): val is Locale {\n const irregulars = `en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE|art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang|es-419`;\n const BCPFormat = `[a-z]{2}-[A-Z]{2}`;\n const scriptFormat = `[a-z]{2}-[A-Za-z]{4}`;\n return (\n typeof val === 'string' &&\n !!val.match(RegExp(`(${irregulars})|(${BCPFormat})|(${scriptFormat})`))\n );\n}\n\nexport function localizeNumber(\n value: number | string,\n locale: Locale,\n options: Intl.NumberFormatOptions,\n): string {\n const number = toNumber(value);\n return number !== null\n ? new Intl.NumberFormat(locale, options).format(number)\n : '';\n}\n\nexport function localizeDate(\n date: Date,\n locale: Locale,\n options: DateFormatOptions,\n): string {\n if (isDate(date)) {\n return new Intl.DateTimeFormat(locale, options as any).format(date);\n }\n return '';\n}\n\nexport function isDate(value: any): boolean {\n return value instanceof Date && !isNaN(<any>value);\n}\n\nexport function toDate(value: any): Date {\n let match: RegExpMatchArray | null;\n\n if (typeof value === 'string') {\n value = value.trim();\n }\n\n if (isDate(value)) {\n return value;\n }\n\n if (!isNaN(value - parseFloat(value))) {\n return new Date(parseFloat(value));\n }\n\n if (typeof value === 'string' && /^(\\d{4}-\\d{1,2}-\\d{1,2})$/.test(value)) {\n const [y, m, d] = value.split('-').map((val: string) => parseInt(val, 10));\n return new Date(y, m - 1, d);\n }\n\n if (typeof value === 'string' && (match = value.match(ISO8601_DATE_REGEX))) {\n return isoStringToDate(match);\n }\n\n return new Date(value);\n}\n\nexport function isoStringToDate(match: RegExpMatchArray): Date {\n const date: Date = new Date(0);\n let tzHour = 0;\n let tzMin = 0;\n const dateSetter = match[8] ? date.setUTCFullYear : date.setFullYear;\n const timeSetter = match[8] ? date.setUTCHours : date.setHours;\n if (match[9]) {\n tzHour = +(match[9] + match[10]);\n tzMin = +(match[9] + match[11]);\n }\n dateSetter.call(date, +match[1], +match[2] - 1, +match[3]);\n const h: number = +(match[4] || '0') - tzHour;\n const m: number = +(match[5] || '0') - tzMin;\n const s: number = +(match[6] || '0');\n const ms: number = Math.round(parseFloat('0.' + (match[7] || 0)) * 1000);\n timeSetter.call(date, h, m, s, ms);\n return date;\n}\n","import {\n Locale,\n LocaleFormatOptions,\n LocaleConfig,\n} from './transloco-locale.types';\n\nexport function getDefaultOptions<T extends keyof LocaleFormatOptions>(\n locale: Locale,\n style: T,\n localeConfig: LocaleConfig,\n) {\n const defaultConfig = (localeConfig.global?.[style] ?? {}) as NonNullable<\n LocaleFormatOptions[T]\n >;\n const settings = (localeConfig.localeBased?.[locale] ??\n {}) as LocaleFormatOptions;\n\n return Reflect.has(settings, style)\n ? { ...defaultConfig, ...settings[style] }\n : defaultConfig;\n}\n","export default {\n 'aa-DJ': 'DJF',\n 'aa-ER': 'ERN',\n 'aa-ET': 'ETB',\n 'ab-GE': 'ETB',\n 'ab-TR': 'ETB',\n 'af-BW': 'ETB',\n 'af-NA': 'ETB',\n 'af-ZA': 'ZAR',\n 'ak-GH': 'ZAR',\n 'am-ET': 'ETB',\n 'am-IL': 'ETB',\n 'ar-AE': 'AED',\n 'ar-AR': 'AED',\n 'ar-BH': 'BHD',\n 'ar-CM': 'BHD',\n 'ar-CY': 'BHD',\n 'ar-DJ': 'BHD',\n 'ar-DZ': 'DZD',\n 'ar-EG': 'EGP',\n 'ar-EH': 'EGP',\n 'ar-ER': 'EGP',\n 'ar-IL': 'EGP',\n 'ar-IQ': 'IQD',\n 'ar-IR': 'IQD',\n 'ar-JO': 'JOD',\n 'ar-KE': 'JOD',\n 'ar-KM': 'JOD',\n 'ar-KW': 'KWD',\n 'ar-LB': 'LBP',\n 'ar-LY': 'LYD',\n 'ar-MA': 'MAD',\n 'ar-ML': 'MAD',\n 'ar-MR': 'MAD',\n 'ar-NE': 'MAD',\n 'ar-NG': 'MAD',\n 'ar-OM': 'OMR',\n 'ar-PS': 'OMR',\n 'ar-QA': 'QAR',\n 'ar-SA': 'SAR',\n 'ar-SD': 'SDD',\n 'ar-SS': 'SDD',\n 'ar-SY': 'SYP',\n 'ar-TD': 'SYP',\n 'ar-TJ': 'SYP',\n 'ar-TN': 'TND',\n 'ar-TR': 'TND',\n 'ar-YE': 'YER',\n 'as-IN': 'INR',\n 'av-RU': 'INR',\n 'ay-BO': 'INR',\n 'ay-PE': 'INR',\n 'az-AZ': 'AZM',\n 'ba-RU': 'AZM',\n 'be-BY': 'BYR',\n 'be-PL': 'BYR',\n 'be-UA': 'BYR',\n 'bg-BG': 'BGN',\n 'bg-GR': 'BGN',\n 'bg-MD': 'BGN',\n 'bg-RO': 'BGN',\n 'bg-TR': 'BGN',\n 'bg-UA': 'BGN',\n 'bi-VU': 'BGN',\n 'bm-ML': 'BGN',\n 'bn-BD': 'BDT',\n 'bn-GB': 'BDT',\n 'bn-IN': 'INR',\n 'bn-NP': 'INR',\n 'bo-CN': 'CNY',\n 'bo-IN': 'INR',\n 'bo-NP': 'INR',\n 'br-FR': 'EUR',\n 'bs-BA': 'BAM',\n 'ca-AD': 'EUR',\n 'ca-ES': 'EUR',\n 'ca-FR': 'EUR',\n 'ca-IT': 'EUR',\n 'ce-RU': 'EUR',\n 'ch-GU': 'EUR',\n 'ch-MP': 'EUR',\n 'co-FR': 'EUR',\n 'cs-CZ': 'CZK',\n 'cv-RU': 'RUB',\n 'cy-AR': 'RUB',\n 'cy-GB': 'GBP',\n 'da-DE': 'GBP',\n 'da-DK': 'DKK',\n 'da-GL': 'DKK',\n 'da-IS': 'DKK',\n 'de-AT': 'EUR',\n 'de-BE': 'EUR',\n 'de-BR': 'EUR',\n 'de-CA': 'EUR',\n 'de-CH': 'CHF',\n 'de-CZ': 'CHF',\n 'de-DE': 'EUR',\n 'de-DK': 'EUR',\n 'de-HU': 'EUR',\n 'de-IT': 'EUR',\n 'de-KZ': 'EUR',\n 'de-LI': 'EUR',\n 'de-LU': 'EUR',\n 'de-NA': 'EUR',\n 'de-PL': 'EUR',\n 'de-PY': 'EUR',\n 'de-RO': 'EUR',\n 'de-SK': 'EUR',\n 'de-US': 'EUR',\n 'dv-IN': 'EUR',\n 'dv-MV': 'MVR',\n 'dz-BT': 'BTN',\n 'dz-IN': 'BTN',\n 'ee-GH': 'BTN',\n 'ee-TG': 'BTN',\n 'el-AL': 'BTN',\n 'el-CY': 'EUR',\n 'el-DE': 'EUR',\n 'el-EG': 'EUR',\n 'el-GB': 'EUR',\n 'el-GR': 'EUR',\n 'el-IT': 'EUR',\n 'el-RO': 'EUR',\n 'el-TR': 'EUR',\n 'el-UA': 'EUR',\n 'en-AC': 'EUR',\n 'en-AG': 'XCD',\n 'en-AI': 'XCD',\n 'en-AS': 'XCD',\n 'en-AU': 'AUD',\n 'en-AW': 'AUD',\n 'en-BB': 'AUD',\n 'en-BE': 'AUD',\n 'en-BM': 'AUD',\n 'en-BN': 'AUD',\n 'en-BS': 'AUD',\n 'en-BW': 'BWP',\n 'en-BZ': 'BWP',\n 'en-CA': 'CAD',\n 'en-CC': 'CAD',\n 'en-CK': 'CAD',\n 'en-CM': 'CAD',\n 'en-CN': 'CAD',\n 'en-CX': 'CAD',\n 'en-DE': 'CAD',\n 'en-DG': 'CAD',\n 'en-DM': 'CAD',\n 'en-DO': 'CAD',\n 'en-ES': 'CAD',\n 'en-ET': 'CAD',\n 'en-FI': 'CAD',\n 'en-FJ': 'CAD',\n 'en-FK': 'CAD',\n 'en-FM': 'CAD',\n 'en-FR': 'CAD',\n 'en-GB': 'GBP',\n 'en-GD': 'GBP',\n 'en-GG': 'GBP',\n 'en-GH': 'GBP',\n 'en-GI': 'GBP',\n 'en-GM': 'GBP',\n 'en-GU': 'GBP',\n 'en-GY': 'GBP',\n 'en-HK': 'HKD',\n 'en-HN': 'HKD',\n 'en-IE': 'EUR',\n 'en-IL': 'EUR',\n 'en-IM': 'EUR',\n 'en-IN': 'INR',\n 'en-IO': 'INR',\n 'en-IT': 'INR',\n 'en-JE': 'INR',\n 'en-JM': 'INR',\n 'en-KE': 'INR',\n 'en-KI': 'INR',\n 'en-KN': 'INR',\n 'en-KY': 'INR',\n 'en-LB': 'INR',\n 'en-LC': 'INR',\n 'en-LK': 'INR',\n 'en-LR': 'INR',\n 'en-LS': 'INR',\n 'en-MG': 'INR',\n 'en-MH': 'INR',\n 'en-MP': 'INR',\n 'en-MS': 'INR',\n 'en-MT': 'INR',\n 'en-MU': 'INR',\n 'en-MW': 'INR',\n 'en-MY': 'INR',\n 'en-NA': 'INR',\n 'en-NF': 'INR',\n 'en-NG': 'NGN',\n 'en-NL': 'NGN',\n 'en-NR': 'NGN',\n 'en-NU': 'NGN',\n 'en-NZ': 'NZD',\n 'en-PA': 'NZD',\n 'en-PG': 'NZD',\n 'en-PH': 'PHP',\n 'en-PI': 'PHP',\n 'en-PK': 'PHP',\n 'en-PM': 'PHP',\n 'en-PN': 'PHP',\n 'en-PR': 'PHP',\n 'en-PW': 'PHP',\n 'en-RW': 'PHP',\n 'en-SB': 'PHP',\n 'en-SC': 'PHP',\n 'en-SG': 'SGD',\n 'en-SH': 'SGD',\n 'en-SL': 'SGD',\n 'en-SS': 'SGD',\n 'en-SZ': 'SGD',\n 'en-TA': 'SGD',\n 'en-TC': 'SGD',\n 'en-TK': 'SGD',\n 'en-TO': 'SGD',\n 'en-TT': 'SGD',\n 'en-TV': 'SGD',\n 'en-TZ': 'SGD',\n 'en-UD': 'SGD',\n 'en-UG': 'SGD',\n 'en-UM': 'SGD',\n 'en-US': 'USD',\n 'en-VC': 'USD',\n 'en-VG': 'USD',\n 'en-VI': 'USD',\n 'en-VU': 'USD',\n 'en-WS': 'USD',\n 'en-ZA': 'ZAR',\n 'en-ZM': 'ZAR',\n 'en-ZW': 'ZWD',\n 'eo-EO': 'ZWD',\n 'eo-SM': 'ZWD',\n 'es-AD': 'ZWD',\n 'es-AR': 'ARS',\n 'es-BO': 'BOB',\n 'es-BZ': 'BOB',\n 'es-CL': 'CLP',\n 'es-CO': 'COP',\n 'es-CR': 'CRC',\n 'es-CU': 'CRC',\n 'es-DE': 'CRC',\n 'es-DO': 'DOP',\n 'es-EA': 'DOP',\n 'es-EC': 'USD',\n 'es-ES': 'EUR',\n 'es-GQ': 'EUR',\n 'es-GT': 'GTQ',\n 'es-HN': 'HNL',\n 'es-IC': 'HNL',\n 'es-LA': 'HNL',\n 'es-MA': 'HNL',\n 'es-MX': 'MXN',\n 'es-NI': 'NIO',\n 'es-PA': 'PAB',\n 'es-PE': 'PEN',\n 'es-PH': 'PEN',\n 'es-PR': 'USD',\n 'es-PY': 'PYG',\n 'es-SV': 'SVC',\n 'es-TT': 'SVC',\n 'es-US': 'USD',\n 'es-UY': 'UYU',\n 'es-VE': 'VEB',\n 'et-EE': 'EEK',\n 'et-FI': 'EEK',\n 'eu-ES': 'EUR',\n 'eu-FR': 'EUR',\n 'fa-AE': 'EUR',\n 'fa-AF': 'EUR',\n 'fa-IQ': 'EUR',\n 'fa-IR': 'IRR',\n 'fa-OM': 'IRR',\n 'fa-PK': 'IRR',\n 'fa-QA': 'IRR',\n 'fa-TJ': 'IRR',\n 'fb-LT': 'IRR',\n 'ff-GN': 'IRR',\n 'ff-MR': 'IRR',\n 'ff-SN': 'IRR',\n 'fi-FI': 'EUR',\n 'fi-RU': 'EUR',\n 'fi-SE': 'EUR',\n 'fj-FJ': 'EUR',\n 'fo-FO': 'DKK',\n 'fr-AD': 'DKK',\n 'fr-BE': 'EUR',\n 'fr-BF': 'EUR',\n 'fr-BI': 'EUR',\n 'fr-BJ': 'EUR',\n 'fr-BL': 'EUR',\n 'fr-CA': 'CAD',\n 'fr-CD': 'CAD',\n 'fr-CF': 'CAD',\n 'fr-CG': 'CAD',\n 'fr-CH': 'CHF',\n 'fr-CI': 'CHF',\n 'fr-CM': 'CHF',\n 'fr-CP': 'CHF',\n 'fr-DJ': 'CHF',\n 'fr-DZ': 'CHF',\n 'fr-FR': 'EUR',\n 'fr-GA': 'EUR',\n 'fr-GB': 'EUR',\n 'fr-GF': 'EUR',\n 'fr-GN': 'EUR',\n 'fr-GP': 'EUR',\n 'fr-GQ': 'EUR',\n 'fr-HT': 'EUR',\n 'fr-IT': 'EUR',\n 'fr-KM': 'EUR',\n 'fr-LB': 'EUR',\n 'fr-LU': 'EUR',\n 'fr-MA': 'EUR',\n 'fr-MC': 'EUR',\n 'fr-MF': 'EUR',\n 'fr-MG': 'EUR',\n 'fr-ML': 'EUR',\n 'fr-MQ': 'EUR',\n 'fr-MR': 'EUR',\n 'fr-MU': 'EUR',\n 'fr-NC': 'EUR',\n 'fr-NE': 'EUR',\n 'fr-PF': 'EUR',\n 'fr-PM': 'EUR',\n 'fr-RE': 'EUR',\n 'fr-RW': 'EUR',\n 'fr-SC': 'EUR',\n 'fr-SN': 'EUR',\n 'fr-SY': 'EUR',\n 'fr-TD': 'EUR',\n 'fr-TF': 'EUR',\n 'fr-TG': 'EUR',\n 'fr-TN': 'EUR',\n 'fr-US': 'EUR',\n 'fr-VU': 'EUR',\n 'fr-WF': 'EUR',\n 'fr-YT': 'EUR',\n 'fy-NL': 'EUR',\n 'ga-GB': 'EUR',\n 'ga-IE': 'EUR',\n 'gd-GB': 'GBP',\n 'gl-ES': 'EUR',\n 'gl-PT': 'EUR',\n 'gn-AR': 'EUR',\n 'gn-BO': 'EUR',\n 'gn-PY': 'EUR',\n 'gu-IN': 'INR',\n 'gu-KE': 'INR',\n 'gv-IM': 'INR',\n 'he-IL': 'ILS',\n 'hi-FJ': 'ILS',\n 'hi-IN': 'INR',\n 'hi-NP': 'INR',\n 'hi-UG': 'INR',\n 'hi-ZA': 'INR',\n 'ho-PG': 'INR',\n 'hr-AT': 'INR',\n 'hr-BA': 'INR',\n 'hr-DE': 'INR',\n 'hr-HR': 'HRK',\n 'hr-HU': 'HRK',\n 'hr-IT': 'HRK',\n 'ht-HT': 'HTG',\n 'hu-AT': 'HTG',\n 'hu-HU': 'HUF',\n 'hu-IL': 'HUF',\n 'hu-RO': 'HUF',\n 'hu-RS': 'HUF',\n 'hu-SI': 'HUF',\n 'hu-SK': 'HUF',\n 'hu-UA': 'HUF',\n 'hy-AM': 'AMD',\n 'hy-CY': 'AMD',\n 'hy-GE': 'AMD',\n 'hy-IR': 'AMD',\n 'hy-LB': 'AMD',\n 'hy-SY': 'AMD',\n 'hy-TR': 'AMD',\n 'ia-SE': 'AMD',\n 'id-ID': 'IDR',\n 'id-NL': 'IDR',\n 'ig-NG': 'NGN',\n 'ii-CN': 'NGN',\n 'ik-US': 'NGN',\n 'is-IS': 'ISK',\n 'it-AU': 'ISK',\n 'it-BR': 'ISK',\n 'it-CA': 'ISK',\n 'it-CH': 'CHF',\n 'it-DE': 'CHF',\n 'it-FR': 'CHF',\n 'it-GB': 'CHF',\n 'it-HR': 'CHF',\n 'it-IT': 'EUR',\n 'it-SI': 'EUR',\n 'it-SM': 'EUR',\n 'it-US': 'EUR',\n 'it-VA': 'EUR',\n 'iu-GL': 'EUR',\n 'ja-BR': 'EUR',\n 'ja-JP': 'JPY',\n 'jv-ID': 'JPY',\n 'jv-MY': 'JPY',\n 'ka-GE': 'GEL',\n 'ka-IR': 'GEL',\n 'ka-TR': 'GEL',\n 'kg-CD': 'GEL',\n 'ki-KE': 'GEL',\n 'kj-NA': 'GEL',\n 'kl-DK': 'GEL',\n 'kl-GL': 'DKK',\n 'km-KH': 'KHR',\n 'kn-IN': 'INR',\n 'ko-BR': 'INR',\n 'ko-CN': 'INR',\n 'ko-JP': 'INR',\n 'ko-KP': 'INR',\n 'ko-KR': 'KRW',\n 'ko-US': 'KRW',\n 'ks-GB': 'KRW',\n 'ks-IN': 'INR',\n 'ks-PK': 'INR',\n 'ku-TR': 'TRY',\n 'kw-GB': 'GBP',\n 'la-VA': 'GBP',\n 'lb-LU': 'GBP',\n 'lg-UG': 'UGX',\n 'li-NL': 'EUR',\n 'ln-CD': 'EUR',\n 'ln-CG': 'EUR',\n 'lo-LA': 'LAK',\n 'lt-LT': 'LTL',\n 'lu-CD': 'LTL',\n 'lv-LV': 'LVL',\n 'mg-MG': 'MGA',\n 'mh-MH': 'MGA',\n 'mi-NZ': 'NZD',\n 'mk-AL': 'NZD',\n 'mk-GR': 'NZD',\n 'mk-MK': 'MKD',\n 'ml-AE': 'MKD',\n 'ml-BH': 'MKD',\n 'ml-GB': 'MKD',\n 'ml-IL': 'MKD',\n 'ml-IN': 'INR',\n 'ml-MY': 'INR',\n 'ml-QA': 'INR',\n 'ml-SG': 'INR',\n 'mr-IN': 'INR',\n 'ms-BN': 'INR',\n 'ms-CC': 'INR',\n 'ms-ID': 'INR',\n 'ms-MY': 'MYR',\n 'ms-SG': 'MYR',\n 'mt-MT': 'EUR',\n 'my-BD': 'EUR',\n 'my-MM': 'MMK',\n 'na-NR': 'MMK',\n 'nb-NO': 'NOK',\n 'nb-SJ': 'NOK',\n 'nd-ZW': 'NOK',\n 'ne-BT': 'NOK',\n 'ne-IN': 'NOK',\n 'ne-NP': 'INR',\n 'ng-NA': 'INR',\n 'nl-AW': 'AWG',\n 'nl-BE': 'EUR',\n 'nl-DE': 'EUR',\n 'nl-FR': 'EUR',\n 'nl-NL': 'EUR',\n 'nl-SR': 'EUR',\n 'nn-NO': 'NOK',\n 'nr-ZA': 'ZAR',\n 'nv-US': 'ZAR',\n 'ny-MW': 'ZAR',\n 'ny-MZ': 'ZAR',\n 'ny-ZM': 'ZAR',\n 'ny-ZW': 'ZAR',\n 'oc-FR': 'EUR',\n 'om-ET': 'ETB',\n 'om-KE': 'KES',\n 'om-SO': 'KES',\n 'or-IN': 'INR',\n 'os-GE': 'INR',\n 'pa-IN': 'INR',\n 'pl-CZ': 'INR',\n 'pl-DE': 'INR',\n 'pl-IL': 'INR',\n 'pl-PL': 'PLN',\n 'pl-RO': 'PLN',\n 'pl-SK': 'PLN',\n 'pl-UA': 'PLN',\n 'ps-AE': 'PLN',\n 'ps-AF': 'AFN',\n 'ps-IR': 'AFN',\n 'ps-PK': 'AFN',\n 'pt-AG': 'AFN',\n 'pt-AO': 'AFN',\n 'pt-BR': 'BRL',\n 'pt-CV': 'BRL',\n 'pt-FR': 'BRL',\n 'pt-GW': 'BRL',\n 'pt-MO': 'BRL',\n 'pt-MZ': 'BRL',\n 'pt-PT': 'EUR',\n 'pt-ST': 'EUR',\n 'pt-TL': 'EUR',\n 'qu-BO': 'EUR',\n 'qu-PE': 'EUR',\n 'rm-CH': 'EUR',\n 'rn-BI': 'EUR',\n 'ro-HU': 'EUR',\n 'ro-IL': 'EUR',\n 'ro-MD': 'EUR',\n 'ro-RO': 'RON',\n 'ro-RS': 'RON',\n 'ro-UA': 'RON',\n 'ru-BY': 'RON',\n 'ru-CN': 'RON',\n 'ru-DE': 'RON',\n 'ru-EE': 'RON',\n 'ru-FI': 'RON',\n 'ru-GE': 'RON',\n 'ru-IL': 'RON',\n 'ru-KG': 'RON',\n 'ru-KZ': 'RON',\n 'ru-LT': 'RON',\n 'ru-LV': 'RON',\n 'ru-MD': 'RON',\n 'ru-MN': 'RON',\n 'ru-RU': 'RUB',\n 'ru-SJ': 'RUB',\n 'ru-TM': 'RUB',\n 'ru-UA': 'UAH',\n 'ru-US': 'UAH',\n 'ru-UZ': 'UAH',\n 'rw-CD': 'UAH',\n 'rw-RW': 'RWF',\n 'rw-UG': 'RWF',\n 'sa-IN': 'INR',\n 'se-FI': 'INR',\n 'se-NO': 'NOK',\n 'se-SE': 'NOK',\n 'sg-CF': 'NOK',\n 'si-LK': 'LKR',\n 'sk-HU': 'LKR',\n 'sk-RS': 'LKR',\n 'sk-SK': 'EUR',\n 'sl-AT': 'EUR',\n 'sl-HU': 'EUR',\n 'sl-IT': 'EUR',\n 'sl-SI': 'EUR',\n 'sm-AS': 'EUR',\n 'sm-WS': 'EUR',\n 'sn-ZW': 'EUR',\n 'so-DJ': 'DJF',\n 'so-ET': 'ETB',\n 'so-KE': 'ETB',\n 'so-SO': 'SOS',\n 'sq-AL': 'ALL',\n 'sq-GR': 'ALL',\n 'sq-ME': 'ALL',\n 'sq-MK': 'MKD',\n 'sq-RS': 'MKD',\n 'sq-TR': 'MKD',\n 'sr-RS': 'RSD',\n 'ss-LS': 'RSD',\n 'ss-SZ': 'RSD',\n 'ss-ZA': 'ZAR',\n 'st-LS': 'ZAR',\n 'st-ZA': 'ZAR',\n 'su-ID': 'ZAR',\n 'sv-AX': 'ZAR',\n 'sv-FI': 'EUR',\n 'sv-SE': 'SEK',\n 'sw-BI': 'SEK',\n 'sw-CD': 'SEK',\n 'sw-KE': 'SEK',\n 'sw-MZ': 'SEK',\n 'sw-SO': 'SEK',\n 'sw-TZ': 'SEK',\n 'sw-UG': 'SEK',\n 'sw-YT': 'SEK',\n 'sw-ZA': 'SEK',\n 'ta-IN': 'INR',\n 'ta-LK': 'INR',\n 'ta-MU': 'INR',\n 'ta-MY': 'INR',\n 'ta-RE': 'INR',\n 'ta-SG': 'INR',\n 'te-IN': 'INR',\n 'th-TH': 'THB',\n 'ti-ER': 'ERN',\n 'ti-ET': 'ETB',\n 'ti-IL': 'ETB',\n 'tk-AF': 'ETB',\n 'tk-IR': 'ETB',\n 'tk-TM': 'TMM',\n 'tl-PH': 'PHP',\n 'tl-US': 'PHP',\n 'tn-BW': 'PHP',\n 'tn-NA': 'PHP',\n 'tn-ZA': 'ZAR',\n 'tn-ZW': 'ZAR',\n 'to-TO': 'ZAR',\n 'tr-BG': 'ZAR',\n 'tr-CY': 'TRY',\n 'tr-DE': 'TRY',\n 'tr-GR': 'TRY',\n 'tr-MK': 'TRY',\n 'tr-NL': 'TRY',\n 'tr-RO': 'TRY',\n 'tr-TR': 'TRY',\n 'tr-UA': 'TRY',\n 'tr-UZ': 'TRY',\n 'ts-MZ': 'TRY',\n 'ts-SZ': 'TRY',\n 'ts-ZA': 'ZAR',\n 'tt-RU': 'RUB',\n 'ty-PF': 'RUB',\n 'uk-PL': 'RUB',\n 'uk-SK': 'RUB',\n 'uk-UA': 'UAH',\n 'ur-IN': 'UAH',\n 'ur-MU': 'UAH',\n 'ur-PK': 'PKR',\n 've-ZA': 'ZAR',\n 've-ZW': 'ZAR',\n 'vi-CN': 'ZAR',\n 'vi-US': 'ZAR',\n 'vi-VN': 'VND',\n 'wa-BE': 'EUR',\n 'xh-LS': 'EUR',\n 'xh-ZA': 'ZAR',\n 'yi-UA': 'ZAR',\n 'yo-BJ': 'ZAR',\n 'yo-NG': 'NGN',\n 'za-CN': 'NGN',\n 'zh-CN': 'CNY',\n 'zh-HK': 'HKD',\n 'zh-TW': 'TWD',\n 'zu-LS': 'TWD',\n 'zu-MW': 'TWD',\n 'zu-MZ': 'TWD',\n 'zu-SZ': 'TWD',\n 'zu-ZA': 'ZAR',\n};\n","import { InjectionToken } from '@angular/core';\n\nimport LOCALE_CURRENCY from './locale-currency';\nimport {\n TranslocoLocaleConfig,\n LocaleConfigMapping,\n LangToLocaleMapping,\n LocaleToCurrencyMapping,\n Locale,\n Currency,\n} from './transloco-locale.types';\n\nexport const defaultConfig: Required<TranslocoLocaleConfig> = {\n localeConfig: {\n global: {},\n localeBased: {},\n },\n defaultLocale: 'en-US',\n defaultCurrency: 'USD',\n localeToCurrencyMapping: LOCALE_CURRENCY,\n langToLocaleMapping: {},\n};\n\nexport const TRANSLOCO_LOCALE_DEFAULT_LOCALE = new InjectionToken<Locale>(\n 'TRANSLOCO_LOCALE_DEFAULT_LOCALE',\n);\nexport const TRANSLOCO_LOCALE_DEFAULT_CURRENCY = new InjectionToken<Currency>(\n 'TRANSLOCO_LOCALE_DEFAULT_CURRENCY',\n);\nexport const TRANSLOCO_LOCALE_LANG_MAPPING =\n new InjectionToken<LangToLocaleMapping>('TRANSLOCO_LOCALE_LANG_MAPPING');\nexport const TRANSLOCO_LOCALE_CONFIG = new InjectionToken<LocaleConfigMapping>(\n 'TRANSLOCO_LOCALE_CONFIG',\n);\nexport const TRANSLOCO_LOCALE_CURRENCY_MAPPING =\n new InjectionToken<LocaleToCurrencyMapping>(\n 'TRANSLOCO_LOCALE_CURRENCY_MAPPING',\n );\n","import { InjectionToken } from '@angular/core';\n\nimport { localizeNumber, localizeDate } from './helpers';\nimport {\n Locale,\n DateFormatOptions,\n NumberStyles,\n} from './transloco-locale.types';\n\nexport interface TranslocoDateTransformer {\n transform(date: Date, locale: Locale, options: DateFormatOptions): string;\n}\nexport interface TranslocoNumberTransformer {\n transform(\n value: number | string,\n type: NumberStyles,\n locale: Locale,\n options: Intl.NumberFormatOptions,\n ): string;\n}\n\nexport const TRANSLOCO_DATE_TRANSFORMER =\n new InjectionToken<TranslocoDateTransformer>('TRANSLOCO_DATE_TRANSFORMER');\nexport const TRANSLOCO_NUMBER_TRANSFORMER =\n new InjectionToken<TranslocoNumberTransformer>(\n 'TRANSLOCO_NUMBER_TRANSFORMER',\n );\n\nexport class DefaultDateTransformer implements TranslocoDateTransformer {\n public transform(\n date: Date,\n locale: Locale,\n options: DateFormatOptions,\n ): string {\n return localizeDate(date, locale, options);\n }\n}\nexport class DefaultNumberTransformer implements TranslocoNumberTransformer {\n public transform(\n value: number | string,\n type: NumberStyles,\n locale: string,\n options: Intl.NumberFormatOptions,\n ): string {\n return localizeNumber(value, locale, { ...options, style: type });\n }\n}\n","import { inject, Injectable, OnDestroy } from '@angular/core';\nimport { getBrowserCultureLang, TranslocoService } from '@jsverse/transloco';\nimport { BehaviorSubject, Subscription } from 'rxjs';\nimport { distinctUntilChanged, filter, map } from 'rxjs/operators';\n\nimport { isLocaleFormat, toDate } from './helpers';\nimport { getDefaultOptions } from './shared';\nimport {\n TRANSLOCO_LOCALE_CONFIG,\n TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n TRANSLOCO_LOCALE_LANG_MAPPING,\n} from './transloco-locale.config';\nimport {\n TRANSLOCO_DATE_TRANSFORMER,\n TRANSLOCO_NUMBER_TRANSFORMER,\n} from './transloco-locale.transformers';\nimport {\n DateFormatOptions,\n Locale,\n LocaleConfig,\n NumberStyles,\n ValidDate,\n} from './transloco-locale.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TranslocoLocaleService implements OnDestroy {\n private translocoService = inject(TranslocoService);\n private langLocaleMapping = inject(TRANSLOCO_LOCALE_LANG_MAPPING);\n private defaultLocale = inject(TRANSLOCO_LOCALE_DEFAULT_LOCALE);\n private defaultCurrency = inject(TRANSLOCO_LOCALE_DEFAULT_CURRENCY);\n private localeCurrencyMapping = inject(TRANSLOCO_LOCALE_CURRENCY_MAPPING);\n private numberTransformer = inject(TRANSLOCO_NUMBER_TRANSFORMER);\n private dateTransformer = inject(TRANSLOCO_DATE_TRANSFORMER);\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n private browserLocale = getBrowserCultureLang() || this.defaultLocale;\n\n private _locale = '';\n private locale: BehaviorSubject<Locale> = new BehaviorSubject(this._locale);\n private subscription: Subscription | null = null;\n\n localeChanges$ = this.locale.asObservable().pipe(distinctUntilChanged());\n\n constructor() {\n // Initialize locale with fallback chain\n this.setLocale(this.initializeLocale());\n\n // Subscribe to language changes\n this.subscription = this.translocoService.langChanges$\n .pipe(\n map((lang) => this.toLocale(lang)),\n filter(Boolean),\n )\n .subscribe((locale: Locale) => this.setLocale(locale));\n }\n\n getLocale() {\n return this._locale;\n }\n\n setLocale(locale: Locale) {\n if (!isLocaleFormat(locale)) {\n console.error(`${locale} isn't a valid locale format`);\n return;\n }\n\n this.locale.next(locale);\n this._locale = locale;\n }\n\n /**\n * Get the currency symbol for the currently set locale.\n */\n getCurrencySymbol(locale = this.getLocale()) {\n const currency = this.localeCurrencyMapping[locale];\n const numberFormat = new Intl.NumberFormat(locale, {\n style: 'currency',\n currencyDisplay: 'symbol',\n currency,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n });\n\n const pivot = 0;\n\n return numberFormat\n .format(pivot)\n .split(pivot.toString())\n .map((element) => element.trim())\n .find((element) => !!element);\n }\n\n /**\n * Transform a date into the locale's date format.\n *\n * The date expression: a `Date` object, a number\n * (milliseconds since UTC epoch), or an ISO string (https://www.w3.org/TR/NOTE-datetime).\n *\n * @example\n *\n * localizeDate(new Date(2019, 9, 7, 12, 0, 0)) // 10/7/2019\n * localizeDate(date, 'en-US', { dateStyle: 'medium', timeStyle: 'medium' }) // Sep 10, 2019, 10:46:12 PM\n * localizeDate(date) 'en-US', { timeZone: 'UTC', timeStyle: 'full' } // 7:40:32 PM Coordinated Universal Time\n * localizeDate(1, 'en-US', { dateStyle: 'medium' }) // Jan 1, 1970\n * localizeDate('2019-02-08', 'en-US', { dateStyle: 'medium' }) // Feb 8, 2019\n */\n localizeDate(\n date: ValidDate,\n locale: Locale = this.getLocale(),\n options: DateFormatOptions = {},\n ): string {\n const resolved =\n options ?? getDefaultOptions(locale, 'date', this.localeConfig);\n\n return this.dateTransformer.transform(toDate(date), locale, resolved);\n }\n\n /**\n * Transform a number into the locale's number format according to the number type.\n *\n * localizeNumber(1234567890, 'decimal') // 1,234,567,890\n * localizeNumber(0.5, 'percent') // 50%\n * localizeNumber(1000, 'currency') // $1,000.00\n */\n localizeNumber(\n value: number | string,\n style: NumberStyles,\n locale: Locale = this.getLocale(),\n options?: Intl.NumberFormatOptions,\n ): string {\n let resolved =\n options ?? getDefaultOptions(locale, style, this.localeConfig);\n\n if (style === 'currency') {\n resolved = {\n ...resolved,\n currency: resolved.currency || this._resolveCurrencyCode(locale),\n };\n }\n\n return this.numberTransformer.transform(value, style, locale, resolved);\n }\n\n /**\n * @internal\n */\n _resolveCurrencyCode(locale: Locale = this.getLocale()) {\n return this.localeCurrencyMapping[locale] || this.defaultCurrency;\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n // Caretaker note: it's important to clean up references to subscriptions since they save the `next`\n // callback within its `destination` property, preventing classes from being GC'd.\n this.subscription = null;\n }\n\n private toLocale(val: string | Locale): Locale {\n if (this.langLocaleMapping[val]) {\n return this.langLocaleMapping[val];\n }\n\n if (isLocaleFormat(val)) {\n return val;\n }\n\n return '';\n }\n\n /*\n * Get the browser's language and validate.\n * If the browser's language is not set, it will fall back to the active language from TranslocoService.\n * If active language from TranslocoService is not valid, it will fall back to the default locale.\n * If the default locale is not valid, it will return the default locale as a string\n */\n\n private initializeLocale(): Locale {\n const browserLocale = this.toLocale(this.browserLocale);\n if (browserLocale) return browserLocale;\n\n const activeLang = this.translocoService.getActiveLang();\n if (activeLang) {\n const locale = this.toLocale(activeLang);\n if (locale) return locale;\n }\n\n const defaultLocaleResolved = this.toLocale(this.defaultLocale);\n if (defaultLocaleResolved) return defaultLocaleResolved;\n\n return this.defaultLocale; // Fallback to a default locale\n }\n}\n","import {\n ChangeDetectorRef,\n inject,\n Injectable,\n OnDestroy,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { Locale } from '../../lib/transloco-locale.types';\nimport { TranslocoLocaleService } from '../transloco-locale.service';\n\n@Injectable()\nexport abstract class BaseLocalePipe implements OnDestroy {\n protected localeService = inject(TranslocoLocaleService);\n protected cdr = inject(ChangeDetectorRef);\n\n private localeChangeSub: Subscription | null =\n this.localeService.localeChanges$.subscribe(() => this.cdr.markForCheck());\n\n protected getLocale(locale?: Locale): Locale {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return locale || this.localeService.getLocale()!;\n }\n\n ngOnDestroy(): void {\n this.localeChangeSub?.unsubscribe();\n // Caretaker note: it's important to clean up references to subscriptions since they save the `next`\n // callback within its `destination` property, preventing classes from being GC'd.\n this.localeChangeSub = null;\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Currency,\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoCurrency',\n pure: false,\n standalone: true,\n})\nexport class TranslocoCurrencyPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1000000 | translocoCurrency: 'symbol' : {} : USD // $1,000,000.00\n * 1000000 | translocoCurrency: 'name' : {} : USD // 1,000,000.00 US dollars\n * 1000000 | translocoCurrency: 'symbol' : {minimumFractionDigits: 0 } : USD // $1,000,000\n * 1000000 | translocoCurrency: 'symbol' : {minimumFractionDigits: 0 } : CAD // CA$1,000,000\n * 1000000 | translocoCurrency: 'narrowSymbol' : {minimumFractionDigits: 0 } : CAD // $1,000,000\n *\n */\n transform(\n value: number | string,\n display: 'code' | 'symbol' | 'narrowSymbol' | 'name' = 'symbol',\n numberFormatOptions: NumberFormatOptions = {},\n currencyCode?: Currency,\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'currency', this.localeConfig),\n ...numberFormatOptions,\n currencyDisplay: display,\n currency: currencyCode || this.localeService._resolveCurrencyCode(),\n };\n\n return this.localeService.localizeNumber(\n value,\n 'currency',\n locale,\n options,\n );\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n DateFormatOptions,\n Locale,\n LocaleConfig,\n ValidDate,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoDate',\n pure: false,\n standalone: true,\n})\nexport class TranslocoDatePipe extends BaseLocalePipe implements PipeTransform {\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a date into the locale's date format.\n *\n * The date expression: a `Date` object, a number\n * (milliseconds since UTC epoch), or an ISO string (https://www.w3.org/TR/NOTE-datetime).\n *\n * @example\n *\n * date | translocoDate: {} : en-US // 9/10/2019\n * date | translocoDate: { dateStyle: 'medium', timeStyle: 'medium' } : en-US // Sep 10, 2019, 10:46:12 PM\n * date | translocoDate: { timeZone: 'UTC', timeStyle: 'full' } : en-US // 7:40:32 PM Coordinated Universal Time\n * 1 | translocoDate: { dateStyle: 'medium' } // Jan 1, 1970\n * '2019-02-08' | translocoDate: { dateStyle: 'medium' } // Feb 8, 2019\n */\n transform(date: ValidDate, options: DateFormatOptions = {}, locale?: Locale) {\n if (isNil(date)) return '';\n locale = this.getLocale(locale);\n\n return this.localeService.localizeDate(date, locale, {\n ...getDefaultOptions(locale, 'date', this.localeConfig),\n ...options,\n });\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoDecimal',\n pure: false,\n standalone: true,\n})\nexport class TranslocoDecimalPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1234567890 | translocoDecimal: {} : en-US // 1,234,567,890\n * 1234567890 | translocoDecimal: {useGrouping: false}: en-US // 1234567890\n *\n */\n transform(\n value: string | number,\n numberFormatOptions: NumberFormatOptions = {},\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'decimal', this.localeConfig),\n ...numberFormatOptions,\n };\n\n return this.localeService.localizeNumber(value, 'decimal', locale, options);\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoPercent',\n pure: false,\n standalone: true,\n})\nexport class TranslocoPercentPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1 | translocoPercent : {} : en-US // 100%\n * \"1\" | translocoPercent : {} : en-US // 100%\n *\n */\n transform(\n value: number | string,\n numberFormatOptions: NumberFormatOptions = {},\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'percent', this.localeConfig),\n ...numberFormatOptions,\n };\n\n return this.localeService.localizeNumber(value, 'percent', locale, options);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport {\n TranslocoCurrencyPipe,\n TranslocoDatePipe,\n TranslocoDecimalPipe,\n TranslocoPercentPipe,\n} from './pipes';\n\nconst decl = [\n TranslocoCurrencyPipe,\n TranslocoDatePipe,\n TranslocoDecimalPipe,\n TranslocoPercentPipe,\n];\n\n@NgModule({\n imports: decl,\n exports: decl,\n})\nexport class TranslocoLocaleModule {}\n","import { makeEnvironmentProviders, Type } from '@angular/core';\n\nimport {\n Currency,\n LangToLocaleMapping,\n Locale,\n LocaleConfig,\n LocaleToCurrencyMapping,\n TranslocoLocaleConfig,\n} from './transloco-locale.types';\nimport {\n defaultConfig,\n TRANSLOCO_LOCALE_CONFIG,\n TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n TRANSLOCO_LOCALE_LANG_MAPPING,\n} from './transloco-locale.config';\nimport {\n DefaultDateTransformer,\n DefaultNumberTransformer,\n TRANSLOCO_DATE_TRANSFORMER,\n TRANSLOCO_NUMBER_TRANSFORMER,\n TranslocoDateTransformer,\n TranslocoNumberTransformer,\n} from './transloco-locale.transformers';\n\nexport function provideTranslocoLocale(config?: TranslocoLocaleConfig) {\n const merged = {\n ...defaultConfig,\n ...config,\n };\n\n return [\n provideTranslocoLocaleConfig(merged.localeConfig),\n provideTranslocoDefaultLocale(merged.defaultLocale),\n provideTranslocoDefaultCurrency(merged.defaultCurrency),\n provideTranslocoLocaleLangMapping(merged.langToLocaleMapping),\n provideTranslocoLocaleCurrencyMapping(merged.localeToCurrencyMapping),\n provideTranslocoDateTransformer(DefaultDateTransformer),\n provideTranslocoNumberTransformer(DefaultNumberTransformer),\n ];\n}\n\nexport function provideTranslocoLocaleConfig(config: LocaleConfig) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_CONFIG,\n useValue: config,\n },\n ]);\n}\n\nexport function provideTranslocoLocaleLangMapping(\n langToLocale: LangToLocaleMapping,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_LANG_MAPPING,\n useValue: langToLocale,\n },\n ]);\n}\n\nexport function provideTranslocoLocaleCurrencyMapping(\n localeToCurrency: LocaleToCurrencyMapping,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n useValue: localeToCurrency,\n },\n ]);\n}\n\nexport function provideTranslocoDefaultLocale(defaultLocale: Locale) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n useValue: defaultLocale,\n },\n ]);\n}\n\nexport function provideTranslocoDefaultCurrency(defaultCurrency: Currency) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n useValue: defaultCurrency,\n },\n ]);\n}\n\nexport function provideTranslocoDateTransformer(\n transformer: Type<TranslocoDateTransformer>,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_DATE_TRANSFORMER,\n useClass: transformer,\n },\n ]);\n}\n\nexport function provideTranslocoNumberTransformer(\n transformer: Type<TranslocoNumberTransformer>,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_NUMBER_TRANSFORMER,\n useClass: transformer,\n },\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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AK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;CACf;;AC7nBM,MAAM,aAAa,GAAoC;AAC5D,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,WAAW,EAAE,EAAE;AAChB,KAAA;AACD,IAAA,aAAa,EAAE,OAAO;AACtB,IAAA,eAAe,EAAE,KAAK;AACtB,IAAA,uBAAuB,EAAE,eAAe;AACxC,IAAA,mBAAmB,EAAE,EAAE;CACxB;MAEY,+BAA+B,GAAG,IAAI,cAAc,CAC/D,iCAAiC;MAEtB,iCAAiC,GAAG,IAAI,cAAc,CACjE,mCAAmC;MAExB,6BAA6B,GACxC,IAAI,cAAc,CAAsB,+BAA+B;MAC5D,uBAAuB,GAAG,IAAI,cAAc,CACvD,yBAAyB;MAEd,iCAAiC,GAC5C,IAAI,cAAc,CAChB,mCAAmC;;MCf1B,0BAA0B,GACrC,IAAI,cAAc,CAA2B,4BAA4B;MAC9D,4BAA4B,GACvC,IAAI,cAAc,CAChB,8BAA8B;MAGrB,sBAAsB,CAAA;AAC1B,IAAA,SAAS,CACd,IAAU,EACV,MAAc,EACd,OAA0B,EAAA;QAE1B,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;;AAE7C;MACY,wBAAwB,CAAA;AAC5B,IAAA,SAAS,CACd,KAAsB,EACtB,IAAkB,EAClB,MAAc,EACd,OAAiC,EAAA;AAEjC,QAAA,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;AAEpE;;MCjBY,sBAAsB,CAAA;AACzB,IAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC3C,IAAA,iBAAiB,GAAG,MAAM,CAAC,6BAA6B,CAAC;AACzD,IAAA,aAAa,GAAG,MAAM,CAAC,+BAA+B,CAAC;AACvD,IAAA,eAAe,GAAG,MAAM,CAAC,iCAAiC,CAAC;AAC3D,IAAA,qBAAqB,GAAG,MAAM,CAAC,iCAAiC,CAAC;AACjE,IAAA,iBAAiB,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACxD,IAAA,eAAe,GAAG,MAAM,CAAC,0BAA0B,CAAC;AACpD,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAC5D,IAAA,aAAa,GAAG,qBAAqB,EAAE,IAAI,IAAI,CAAC,aAAa;IAE7D,OAAO,GAAG,EAAE;IACZ,MAAM,GAA4B,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;IACnE,YAAY,GAAwB,IAAI;AAEhD,IAAA,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAExE,IAAA,WAAA,GAAA;;QAEE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;;AAGvC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;aACvC,IAAI,CACH,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAClC,MAAM,CAAC,OAAO,CAAC;AAEhB,aAAA,SAAS,CAAC,CAAC,MAAc,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;;IAG1D,SAAS,GAAA;QACP,OAAO,IAAI,CAAC,OAAO;;AAGrB,IAAA,SAAS,CAAC,MAAc,EAAA;AACtB,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;AAC3B,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAA,4BAAA,CAA8B,CAAC;YACtD;;AAGF,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;AACxB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;;AAGvB;;AAEG;AACH,IAAA,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAA;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AACjD,YAAA,KAAK,EAAE,UAAU;AACjB,YAAA,eAAe,EAAE,QAAQ;YACzB,QAAQ;AACR,YAAA,qBAAqB,EAAE,CAAC;AACxB,YAAA,qBAAqB,EAAE,CAAC;AACzB,SAAA,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC;AAEf,QAAA,OAAO;aACJ,MAAM,CAAC,KAAK;AACZ,aAAA,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;aACtB,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE;aAC/B,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC;;AAGjC;;;;;;;;;;;;;AAaG;IACH,YAAY,CACV,IAAe,EACf,MAAiB,GAAA,IAAI,CAAC,SAAS,EAAE,EACjC,OAAA,GAA6B,EAAE,EAAA;AAE/B,QAAA,MAAM,QAAQ,GACZ,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC;AAEjE,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC;;AAGvE;;;;;;AAMG;IACH,cAAc,CACZ,KAAsB,EACtB,KAAmB,EACnB,MAAiB,GAAA,IAAI,CAAC,SAAS,EAAE,EACjC,OAAkC,EAAA;AAElC,QAAA,IAAI,QAAQ,GACV,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;AAEhE,QAAA,IAAI,KAAK,KAAK,UAAU,EAAE;AACxB,YAAA,QAAQ,GAAG;AACT,gBAAA,GAAG,QAAQ;gBACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;aACjE;;AAGH,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC;;AAGzE;;AAEG;AACH,IAAA,oBAAoB,CAAC,MAAA,GAAiB,IAAI,CAAC,SAAS,EAAE,EAAA;QACpD,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe;;IAGnE,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE;;;AAGhC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;AAGlB,IAAA,QAAQ,CAAC,GAAoB,EAAA;AACnC,QAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;AAC/B,YAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;;AAGpC,QAAA,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;AACvB,YAAA,OAAO,GAAG;;AAGZ,QAAA,OAAO,EAAE;;AAGX;;;;;AAKG;IAEK,gBAAgB,GAAA;QACtB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;AACvD,QAAA,IAAI,aAAa;AAAE,YAAA,OAAO,aAAa;QAEvC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE;QACxD,IAAI,UAAU,EAAE;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AACxC,YAAA,IAAI,MAAM;AAAE,gBAAA,OAAO,MAAM;;QAG3B,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;AAC/D,QAAA,IAAI,qBAAqB;AAAE,YAAA,OAAO,qBAAqB;AAEvD,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC;;uGAnKjB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFrB,MAAM,EAAA,CAAA;;2FAEP,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MChBqB,cAAc,CAAA;AACxB,IAAA,aAAa,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAC9C,IAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAEjC,IAAA,eAAe,GACrB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAElE,IAAA,SAAS,CAAC,MAAe,EAAA;;QAEjC,OAAO,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAG;;IAGlD,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE;;;AAGnC,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;;uGAhBT,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAd,cAAc,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBADnC;;;ACQK,MAAO,qBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;;;;AAWG;IACH,SAAS,CACP,KAAsB,EACtB,OAAuD,GAAA,QAAQ,EAC/D,mBAAA,GAA2C,EAAE,EAC7C,YAAuB,EACvB,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;AAC3D,YAAA,GAAG,mBAAmB;AACtB,YAAA,eAAe,EAAE,OAAO;YACxB,QAAQ,EAAE,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE;SACpE;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CACtC,KAAK,EACL,UAAU,EACV,MAAM,EACN,OAAO,CACR;;uGAxCQ,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,mBAAmB;AACzB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACCK,MAAO,iBAAkB,SAAQ,cAAc,CAAA;AAC3C,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;;;;;;AAaG;AACH,IAAA,SAAS,CAAC,IAAe,EAAE,OAA6B,GAAA,EAAE,EAAE,MAAe,EAAA;QACzE,IAAI,KAAK,CAAC,IAAI,CAAC;AAAE,YAAA,OAAO,EAAE;AAC1B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAE/B,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE;YACnD,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC;AACvD,YAAA,GAAG,OAAO;AACX,SAAA,CAAC;;uGAxBO,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,eAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,eAAe;AACrB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACAK,MAAO,oBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;AAQG;AACH,IAAA,SAAS,CACP,KAAsB,EACtB,mBAA2C,GAAA,EAAE,EAC7C,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;AAC1D,YAAA,GAAG,mBAAmB;SACvB;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;;uGA5BlE,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACCK,MAAO,oBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;AAQG;AACH,IAAA,SAAS,CACP,KAAsB,EACtB,mBAA2C,GAAA,EAAE,EAC7C,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;AAC1D,YAAA,GAAG,mBAAmB;SACvB;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;;uGA5BlE,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACRD,MAAM,IAAI,GAAG;IACX,qBAAqB;IACrB,iBAAiB;IACjB,oBAAoB;IACpB,oBAAoB;CACrB;MAMY,qBAAqB,CAAA;uGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAVhC,qBAAqB;YACrB,iBAAiB;YACjB,oBAAoB;AACpB,YAAA,oBAAoB,aAHpB,qBAAqB;YACrB,iBAAiB;YACjB,oBAAoB;YACpB,oBAAoB,CAAA,EAAA,CAAA;wGAOT,qBAAqB,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,IAAI;AACb,oBAAA,OAAO,EAAE,IAAI;AACd,iBAAA;;;ACQK,SAAU,sBAAsB,CAAC,MAA8B,EAAA;AACnE,IAAA,MAAM,MAAM,GAAG;AACb,QAAA,GAAG,aAAa;AAChB,QAAA,GAAG,MAAM;KACV;IAED,OAAO;AACL,QAAA,4BAA4B,CAAC,MAAM,CAAC,YAAY,CAAC;AACjD,QAAA,6BAA6B,CAAC,MAAM,CAAC,aAAa,CAAC;AACnD,QAAA,+BAA+B,CAAC,MAAM,CAAC,eAAe,CAAC;AACvD,QAAA,iCAAiC,CAAC,MAAM,CAAC,mBAAmB,CAAC;AAC7D,QAAA,qCAAqC,CAAC,MAAM,CAAC,uBAAuB,CAAC;QACrE,+BAA+B,CAAC,sBAAsB,CAAC;QACvD,iCAAiC,CAAC,wBAAwB,CAAC;KAC5D;AACH;AAEM,SAAU,4BAA4B,CAAC,MAAoB,EAAA;AAC/D,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,QAAQ,EAAE,MAAM;AACjB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,iCAAiC,CAC/C,YAAiC,EAAA;AAEjC,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,6BAA6B;AACtC,YAAA,QAAQ,EAAE,YAAY;AACvB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,qCAAqC,CACnD,gBAAyC,EAAA;AAEzC,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,gBAAgB;AAC3B,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,6BAA6B,CAAC,aAAqB,EAAA;AACjE,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,+BAA+B;AACxC,YAAA,QAAQ,EAAE,aAAa;AACxB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,+BAA+B,CAAC,eAAyB,EAAA;AACvE,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,eAAe;AAC1B,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,+BAA+B,CAC7C,WAA2C,EAAA;AAE3C,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,0BAA0B;AACnC,YAAA,QAAQ,EAAE,WAAW;AACtB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,iCAAiC,CAC/C,WAA6C,EAAA;AAE7C,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,4BAA4B;AACrC,YAAA,QAAQ,EAAE,WAAW;AACtB,SAAA;AACF,KAAA,CAAC;AACJ;;ACjHA;;AAEG;;;;"}
1
+ {"version":3,"file":"jsverse-transloco-locale.mjs","sources":["../../../../libs/transloco-locale/src/lib/helpers.ts","../../../../libs/transloco-locale/src/lib/shared.ts","../../../../libs/transloco-locale/src/lib/locale-currency.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.config.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.transformers.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.service.ts","../../../../libs/transloco-locale/src/lib/pipes/base-locale.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-currency.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-date.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-decimal.pipe.ts","../../../../libs/transloco-locale/src/lib/pipes/transloco-percent.pipe.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.module.ts","../../../../libs/transloco-locale/src/lib/transloco-locale.providers.ts","../../../../libs/transloco-locale/src/jsverse-transloco-locale.ts"],"sourcesContent":["import { toNumber } from '@jsverse/utils';\n\nimport { DateFormatOptions, Locale } from './transloco-locale.types';\n\nexport const ISO8601_DATE_REGEX =\n /^(\\d{4})-?(\\d\\d)-?(\\d\\d)(?:T(\\d\\d)(?::?(\\d\\d)(?::?(\\d\\d)(?:\\.(\\d+))?)?)?(Z|([+-])(\\d\\d):?(\\d\\d))?)?$/;\n/**\n * check if a given value is in BCP 47 language tag.\n *\n * isLocaleFormat('en') // false,\n * isLocaleFormat('En-us') // false\n * isLocaleFormat('en-US') // true\n */\nexport function isLocaleFormat(val: any): val is Locale {\n const irregulars = `en-GB-oed|i-ami|i-bnn|i-default|i-enochian|i-hak|i-klingon|i-lux|i-mingo|i-navajo|i-pwn|i-tao|i-tay|i-tsu|sgn-BE-FR|sgn-BE-NL|sgn-CH-DE|art-lojban|cel-gaulish|no-bok|no-nyn|zh-guoyu|zh-hakka|zh-min|zh-min-nan|zh-xiang|es-419`;\n const BCPFormat = `[a-z]{2}-[A-Z]{2}`;\n const scriptFormat = `[a-z]{2}-[A-Za-z]{4}`;\n return (\n typeof val === 'string' &&\n !!val.match(RegExp(`(${irregulars})|(${BCPFormat})|(${scriptFormat})`))\n );\n}\n\nexport function localizeNumber(\n value: number | string,\n locale: Locale,\n options: Intl.NumberFormatOptions,\n): string {\n const number = toNumber(value);\n return number !== null\n ? new Intl.NumberFormat(locale, options).format(number)\n : '';\n}\n\nexport function localizeDate(\n date: Date,\n locale: Locale,\n options: DateFormatOptions,\n): string {\n if (isDate(date)) {\n return new Intl.DateTimeFormat(locale, options as any).format(date);\n }\n return '';\n}\n\nexport function isDate(value: any): boolean {\n return value instanceof Date && !isNaN(<any>value);\n}\n\nexport function toDate(value: any): Date {\n let match: RegExpMatchArray | null;\n\n if (typeof value === 'string') {\n value = value.trim();\n }\n\n if (isDate(value)) {\n return value;\n }\n\n if (!isNaN(value - parseFloat(value))) {\n return new Date(parseFloat(value));\n }\n\n if (typeof value === 'string' && /^(\\d{4}-\\d{1,2}-\\d{1,2})$/.test(value)) {\n const [y, m, d] = value.split('-').map((val: string) => parseInt(val, 10));\n return new Date(y, m - 1, d);\n }\n\n if (typeof value === 'string' && (match = value.match(ISO8601_DATE_REGEX))) {\n return isoStringToDate(match);\n }\n\n return new Date(value);\n}\n\nexport function isoStringToDate(match: RegExpMatchArray): Date {\n const date: Date = new Date(0);\n let tzHour = 0;\n let tzMin = 0;\n const dateSetter = match[8] ? date.setUTCFullYear : date.setFullYear;\n const timeSetter = match[8] ? date.setUTCHours : date.setHours;\n if (match[9]) {\n tzHour = +(match[9] + match[10]);\n tzMin = +(match[9] + match[11]);\n }\n dateSetter.call(date, +match[1], +match[2] - 1, +match[3]);\n const h: number = +(match[4] || '0') - tzHour;\n const m: number = +(match[5] || '0') - tzMin;\n const s: number = +(match[6] || '0');\n const ms: number = Math.round(parseFloat('0.' + (match[7] || 0)) * 1000);\n timeSetter.call(date, h, m, s, ms);\n return date;\n}\n","import {\n Locale,\n LocaleFormatOptions,\n LocaleConfig,\n} from './transloco-locale.types';\n\nexport function getDefaultOptions<T extends keyof LocaleFormatOptions>(\n locale: Locale,\n style: T,\n localeConfig: LocaleConfig,\n) {\n const defaultConfig = (localeConfig.global?.[style] ?? {}) as NonNullable<\n LocaleFormatOptions[T]\n >;\n const settings = (localeConfig.localeBased?.[locale] ??\n {}) as LocaleFormatOptions;\n\n return Reflect.has(settings, style)\n ? { ...defaultConfig, ...settings[style] }\n : defaultConfig;\n}\n","export default {\n 'aa-DJ': 'DJF',\n 'aa-ER': 'ERN',\n 'aa-ET': 'ETB',\n 'ab-GE': 'ETB',\n 'ab-TR': 'ETB',\n 'af-BW': 'ETB',\n 'af-NA': 'ETB',\n 'af-ZA': 'ZAR',\n 'ak-GH': 'ZAR',\n 'am-ET': 'ETB',\n 'am-IL': 'ETB',\n 'ar-AE': 'AED',\n 'ar-AR': 'AED',\n 'ar-BH': 'BHD',\n 'ar-CM': 'BHD',\n 'ar-CY': 'BHD',\n 'ar-DJ': 'BHD',\n 'ar-DZ': 'DZD',\n 'ar-EG': 'EGP',\n 'ar-EH': 'EGP',\n 'ar-ER': 'EGP',\n 'ar-IL': 'EGP',\n 'ar-IQ': 'IQD',\n 'ar-IR': 'IQD',\n 'ar-JO': 'JOD',\n 'ar-KE': 'JOD',\n 'ar-KM': 'JOD',\n 'ar-KW': 'KWD',\n 'ar-LB': 'LBP',\n 'ar-LY': 'LYD',\n 'ar-MA': 'MAD',\n 'ar-ML': 'MAD',\n 'ar-MR': 'MAD',\n 'ar-NE': 'MAD',\n 'ar-NG': 'MAD',\n 'ar-OM': 'OMR',\n 'ar-PS': 'OMR',\n 'ar-QA': 'QAR',\n 'ar-SA': 'SAR',\n 'ar-SD': 'SDD',\n 'ar-SS': 'SDD',\n 'ar-SY': 'SYP',\n 'ar-TD': 'SYP',\n 'ar-TJ': 'SYP',\n 'ar-TN': 'TND',\n 'ar-TR': 'TND',\n 'ar-YE': 'YER',\n 'as-IN': 'INR',\n 'av-RU': 'INR',\n 'ay-BO': 'INR',\n 'ay-PE': 'INR',\n 'az-AZ': 'AZM',\n 'ba-RU': 'AZM',\n 'be-BY': 'BYR',\n 'be-PL': 'BYR',\n 'be-UA': 'BYR',\n 'bg-BG': 'BGN',\n 'bg-GR': 'BGN',\n 'bg-MD': 'BGN',\n 'bg-RO': 'BGN',\n 'bg-TR': 'BGN',\n 'bg-UA': 'BGN',\n 'bi-VU': 'BGN',\n 'bm-ML': 'BGN',\n 'bn-BD': 'BDT',\n 'bn-GB': 'BDT',\n 'bn-IN': 'INR',\n 'bn-NP': 'INR',\n 'bo-CN': 'CNY',\n 'bo-IN': 'INR',\n 'bo-NP': 'INR',\n 'br-FR': 'EUR',\n 'bs-BA': 'BAM',\n 'ca-AD': 'EUR',\n 'ca-ES': 'EUR',\n 'ca-FR': 'EUR',\n 'ca-IT': 'EUR',\n 'ce-RU': 'EUR',\n 'ch-GU': 'EUR',\n 'ch-MP': 'EUR',\n 'co-FR': 'EUR',\n 'cs-CZ': 'CZK',\n 'cv-RU': 'RUB',\n 'cy-AR': 'RUB',\n 'cy-GB': 'GBP',\n 'da-DE': 'GBP',\n 'da-DK': 'DKK',\n 'da-GL': 'DKK',\n 'da-IS': 'DKK',\n 'de-AT': 'EUR',\n 'de-BE': 'EUR',\n 'de-BR': 'EUR',\n 'de-CA': 'EUR',\n 'de-CH': 'CHF',\n 'de-CZ': 'CHF',\n 'de-DE': 'EUR',\n 'de-DK': 'EUR',\n 'de-HU': 'EUR',\n 'de-IT': 'EUR',\n 'de-KZ': 'EUR',\n 'de-LI': 'EUR',\n 'de-LU': 'EUR',\n 'de-NA': 'EUR',\n 'de-PL': 'EUR',\n 'de-PY': 'EUR',\n 'de-RO': 'EUR',\n 'de-SK': 'EUR',\n 'de-US': 'EUR',\n 'dv-IN': 'EUR',\n 'dv-MV': 'MVR',\n 'dz-BT': 'BTN',\n 'dz-IN': 'BTN',\n 'ee-GH': 'BTN',\n 'ee-TG': 'BTN',\n 'el-AL': 'BTN',\n 'el-CY': 'EUR',\n 'el-DE': 'EUR',\n 'el-EG': 'EUR',\n 'el-GB': 'EUR',\n 'el-GR': 'EUR',\n 'el-IT': 'EUR',\n 'el-RO': 'EUR',\n 'el-TR': 'EUR',\n 'el-UA': 'EUR',\n 'en-AC': 'EUR',\n 'en-AG': 'XCD',\n 'en-AI': 'XCD',\n 'en-AS': 'XCD',\n 'en-AU': 'AUD',\n 'en-AW': 'AUD',\n 'en-BB': 'AUD',\n 'en-BE': 'AUD',\n 'en-BM': 'AUD',\n 'en-BN': 'AUD',\n 'en-BS': 'AUD',\n 'en-BW': 'BWP',\n 'en-BZ': 'BWP',\n 'en-CA': 'CAD',\n 'en-CC': 'CAD',\n 'en-CK': 'CAD',\n 'en-CM': 'CAD',\n 'en-CN': 'CAD',\n 'en-CX': 'CAD',\n 'en-DE': 'CAD',\n 'en-DG': 'CAD',\n 'en-DM': 'CAD',\n 'en-DO': 'CAD',\n 'en-ES': 'CAD',\n 'en-ET': 'CAD',\n 'en-FI': 'CAD',\n 'en-FJ': 'CAD',\n 'en-FK': 'CAD',\n 'en-FM': 'CAD',\n 'en-FR': 'CAD',\n 'en-GB': 'GBP',\n 'en-GD': 'GBP',\n 'en-GG': 'GBP',\n 'en-GH': 'GBP',\n 'en-GI': 'GBP',\n 'en-GM': 'GBP',\n 'en-GU': 'GBP',\n 'en-GY': 'GBP',\n 'en-HK': 'HKD',\n 'en-HN': 'HKD',\n 'en-IE': 'EUR',\n 'en-IL': 'EUR',\n 'en-IM': 'EUR',\n 'en-IN': 'INR',\n 'en-IO': 'INR',\n 'en-IT': 'INR',\n 'en-JE': 'INR',\n 'en-JM': 'INR',\n 'en-KE': 'INR',\n 'en-KI': 'INR',\n 'en-KN': 'INR',\n 'en-KY': 'INR',\n 'en-LB': 'INR',\n 'en-LC': 'INR',\n 'en-LK': 'INR',\n 'en-LR': 'INR',\n 'en-LS': 'INR',\n 'en-MG': 'INR',\n 'en-MH': 'INR',\n 'en-MP': 'INR',\n 'en-MS': 'INR',\n 'en-MT': 'INR',\n 'en-MU': 'INR',\n 'en-MW': 'INR',\n 'en-MY': 'INR',\n 'en-NA': 'INR',\n 'en-NF': 'INR',\n 'en-NG': 'NGN',\n 'en-NL': 'NGN',\n 'en-NR': 'NGN',\n 'en-NU': 'NGN',\n 'en-NZ': 'NZD',\n 'en-PA': 'NZD',\n 'en-PG': 'NZD',\n 'en-PH': 'PHP',\n 'en-PI': 'PHP',\n 'en-PK': 'PHP',\n 'en-PM': 'PHP',\n 'en-PN': 'PHP',\n 'en-PR': 'PHP',\n 'en-PW': 'PHP',\n 'en-RW': 'PHP',\n 'en-SB': 'PHP',\n 'en-SC': 'PHP',\n 'en-SG': 'SGD',\n 'en-SH': 'SGD',\n 'en-SL': 'SGD',\n 'en-SS': 'SGD',\n 'en-SZ': 'SGD',\n 'en-TA': 'SGD',\n 'en-TC': 'SGD',\n 'en-TK': 'SGD',\n 'en-TO': 'SGD',\n 'en-TT': 'SGD',\n 'en-TV': 'SGD',\n 'en-TZ': 'SGD',\n 'en-UD': 'SGD',\n 'en-UG': 'SGD',\n 'en-UM': 'SGD',\n 'en-US': 'USD',\n 'en-VC': 'USD',\n 'en-VG': 'USD',\n 'en-VI': 'USD',\n 'en-VU': 'USD',\n 'en-WS': 'USD',\n 'en-ZA': 'ZAR',\n 'en-ZM': 'ZAR',\n 'en-ZW': 'ZWD',\n 'eo-EO': 'ZWD',\n 'eo-SM': 'ZWD',\n 'es-AD': 'ZWD',\n 'es-AR': 'ARS',\n 'es-BO': 'BOB',\n 'es-BZ': 'BOB',\n 'es-CL': 'CLP',\n 'es-CO': 'COP',\n 'es-CR': 'CRC',\n 'es-CU': 'CRC',\n 'es-DE': 'CRC',\n 'es-DO': 'DOP',\n 'es-EA': 'DOP',\n 'es-EC': 'USD',\n 'es-ES': 'EUR',\n 'es-GQ': 'EUR',\n 'es-GT': 'GTQ',\n 'es-HN': 'HNL',\n 'es-IC': 'HNL',\n 'es-LA': 'HNL',\n 'es-MA': 'HNL',\n 'es-MX': 'MXN',\n 'es-NI': 'NIO',\n 'es-PA': 'PAB',\n 'es-PE': 'PEN',\n 'es-PH': 'PEN',\n 'es-PR': 'USD',\n 'es-PY': 'PYG',\n 'es-SV': 'SVC',\n 'es-TT': 'SVC',\n 'es-US': 'USD',\n 'es-UY': 'UYU',\n 'es-VE': 'VEB',\n 'et-EE': 'EEK',\n 'et-FI': 'EEK',\n 'eu-ES': 'EUR',\n 'eu-FR': 'EUR',\n 'fa-AE': 'EUR',\n 'fa-AF': 'EUR',\n 'fa-IQ': 'EUR',\n 'fa-IR': 'IRR',\n 'fa-OM': 'IRR',\n 'fa-PK': 'IRR',\n 'fa-QA': 'IRR',\n 'fa-TJ': 'IRR',\n 'fb-LT': 'IRR',\n 'ff-GN': 'IRR',\n 'ff-MR': 'IRR',\n 'ff-SN': 'IRR',\n 'fi-FI': 'EUR',\n 'fi-RU': 'EUR',\n 'fi-SE': 'EUR',\n 'fj-FJ': 'EUR',\n 'fo-FO': 'DKK',\n 'fr-AD': 'DKK',\n 'fr-BE': 'EUR',\n 'fr-BF': 'EUR',\n 'fr-BI': 'EUR',\n 'fr-BJ': 'EUR',\n 'fr-BL': 'EUR',\n 'fr-CA': 'CAD',\n 'fr-CD': 'CAD',\n 'fr-CF': 'CAD',\n 'fr-CG': 'CAD',\n 'fr-CH': 'CHF',\n 'fr-CI': 'CHF',\n 'fr-CM': 'CHF',\n 'fr-CP': 'CHF',\n 'fr-DJ': 'CHF',\n 'fr-DZ': 'CHF',\n 'fr-FR': 'EUR',\n 'fr-GA': 'EUR',\n 'fr-GB': 'EUR',\n 'fr-GF': 'EUR',\n 'fr-GN': 'EUR',\n 'fr-GP': 'EUR',\n 'fr-GQ': 'EUR',\n 'fr-HT': 'EUR',\n 'fr-IT': 'EUR',\n 'fr-KM': 'EUR',\n 'fr-LB': 'EUR',\n 'fr-LU': 'EUR',\n 'fr-MA': 'EUR',\n 'fr-MC': 'EUR',\n 'fr-MF': 'EUR',\n 'fr-MG': 'EUR',\n 'fr-ML': 'EUR',\n 'fr-MQ': 'EUR',\n 'fr-MR': 'EUR',\n 'fr-MU': 'EUR',\n 'fr-NC': 'EUR',\n 'fr-NE': 'EUR',\n 'fr-PF': 'EUR',\n 'fr-PM': 'EUR',\n 'fr-RE': 'EUR',\n 'fr-RW': 'EUR',\n 'fr-SC': 'EUR',\n 'fr-SN': 'EUR',\n 'fr-SY': 'EUR',\n 'fr-TD': 'EUR',\n 'fr-TF': 'EUR',\n 'fr-TG': 'EUR',\n 'fr-TN': 'EUR',\n 'fr-US': 'EUR',\n 'fr-VU': 'EUR',\n 'fr-WF': 'EUR',\n 'fr-YT': 'EUR',\n 'fy-NL': 'EUR',\n 'ga-GB': 'EUR',\n 'ga-IE': 'EUR',\n 'gd-GB': 'GBP',\n 'gl-ES': 'EUR',\n 'gl-PT': 'EUR',\n 'gn-AR': 'EUR',\n 'gn-BO': 'EUR',\n 'gn-PY': 'EUR',\n 'gu-IN': 'INR',\n 'gu-KE': 'INR',\n 'gv-IM': 'INR',\n 'he-IL': 'ILS',\n 'hi-FJ': 'ILS',\n 'hi-IN': 'INR',\n 'hi-NP': 'INR',\n 'hi-UG': 'INR',\n 'hi-ZA': 'INR',\n 'ho-PG': 'INR',\n 'hr-AT': 'INR',\n 'hr-BA': 'INR',\n 'hr-DE': 'INR',\n 'hr-HR': 'HRK',\n 'hr-HU': 'HRK',\n 'hr-IT': 'HRK',\n 'ht-HT': 'HTG',\n 'hu-AT': 'HTG',\n 'hu-HU': 'HUF',\n 'hu-IL': 'HUF',\n 'hu-RO': 'HUF',\n 'hu-RS': 'HUF',\n 'hu-SI': 'HUF',\n 'hu-SK': 'HUF',\n 'hu-UA': 'HUF',\n 'hy-AM': 'AMD',\n 'hy-CY': 'AMD',\n 'hy-GE': 'AMD',\n 'hy-IR': 'AMD',\n 'hy-LB': 'AMD',\n 'hy-SY': 'AMD',\n 'hy-TR': 'AMD',\n 'ia-SE': 'AMD',\n 'id-ID': 'IDR',\n 'id-NL': 'IDR',\n 'ig-NG': 'NGN',\n 'ii-CN': 'NGN',\n 'ik-US': 'NGN',\n 'is-IS': 'ISK',\n 'it-AU': 'ISK',\n 'it-BR': 'ISK',\n 'it-CA': 'ISK',\n 'it-CH': 'CHF',\n 'it-DE': 'CHF',\n 'it-FR': 'CHF',\n 'it-GB': 'CHF',\n 'it-HR': 'CHF',\n 'it-IT': 'EUR',\n 'it-SI': 'EUR',\n 'it-SM': 'EUR',\n 'it-US': 'EUR',\n 'it-VA': 'EUR',\n 'iu-GL': 'EUR',\n 'ja-BR': 'EUR',\n 'ja-JP': 'JPY',\n 'jv-ID': 'JPY',\n 'jv-MY': 'JPY',\n 'ka-GE': 'GEL',\n 'ka-IR': 'GEL',\n 'ka-TR': 'GEL',\n 'kg-CD': 'GEL',\n 'ki-KE': 'GEL',\n 'kj-NA': 'GEL',\n 'kl-DK': 'GEL',\n 'kl-GL': 'DKK',\n 'km-KH': 'KHR',\n 'kn-IN': 'INR',\n 'ko-BR': 'INR',\n 'ko-CN': 'INR',\n 'ko-JP': 'INR',\n 'ko-KP': 'INR',\n 'ko-KR': 'KRW',\n 'ko-US': 'KRW',\n 'ks-GB': 'KRW',\n 'ks-IN': 'INR',\n 'ks-PK': 'INR',\n 'ku-TR': 'TRY',\n 'kw-GB': 'GBP',\n 'la-VA': 'GBP',\n 'lb-LU': 'GBP',\n 'lg-UG': 'UGX',\n 'li-NL': 'EUR',\n 'ln-CD': 'EUR',\n 'ln-CG': 'EUR',\n 'lo-LA': 'LAK',\n 'lt-LT': 'LTL',\n 'lu-CD': 'LTL',\n 'lv-LV': 'LVL',\n 'mg-MG': 'MGA',\n 'mh-MH': 'MGA',\n 'mi-NZ': 'NZD',\n 'mk-AL': 'NZD',\n 'mk-GR': 'NZD',\n 'mk-MK': 'MKD',\n 'ml-AE': 'MKD',\n 'ml-BH': 'MKD',\n 'ml-GB': 'MKD',\n 'ml-IL': 'MKD',\n 'ml-IN': 'INR',\n 'ml-MY': 'INR',\n 'ml-QA': 'INR',\n 'ml-SG': 'INR',\n 'mr-IN': 'INR',\n 'ms-BN': 'INR',\n 'ms-CC': 'INR',\n 'ms-ID': 'INR',\n 'ms-MY': 'MYR',\n 'ms-SG': 'MYR',\n 'mt-MT': 'EUR',\n 'my-BD': 'EUR',\n 'my-MM': 'MMK',\n 'na-NR': 'MMK',\n 'nb-NO': 'NOK',\n 'nb-SJ': 'NOK',\n 'nd-ZW': 'NOK',\n 'ne-BT': 'NOK',\n 'ne-IN': 'NOK',\n 'ne-NP': 'INR',\n 'ng-NA': 'INR',\n 'nl-AW': 'AWG',\n 'nl-BE': 'EUR',\n 'nl-DE': 'EUR',\n 'nl-FR': 'EUR',\n 'nl-NL': 'EUR',\n 'nl-SR': 'EUR',\n 'nn-NO': 'NOK',\n 'nr-ZA': 'ZAR',\n 'nv-US': 'ZAR',\n 'ny-MW': 'ZAR',\n 'ny-MZ': 'ZAR',\n 'ny-ZM': 'ZAR',\n 'ny-ZW': 'ZAR',\n 'oc-FR': 'EUR',\n 'om-ET': 'ETB',\n 'om-KE': 'KES',\n 'om-SO': 'KES',\n 'or-IN': 'INR',\n 'os-GE': 'INR',\n 'pa-IN': 'INR',\n 'pl-CZ': 'INR',\n 'pl-DE': 'INR',\n 'pl-IL': 'INR',\n 'pl-PL': 'PLN',\n 'pl-RO': 'PLN',\n 'pl-SK': 'PLN',\n 'pl-UA': 'PLN',\n 'ps-AE': 'PLN',\n 'ps-AF': 'AFN',\n 'ps-IR': 'AFN',\n 'ps-PK': 'AFN',\n 'pt-AG': 'AFN',\n 'pt-AO': 'AFN',\n 'pt-BR': 'BRL',\n 'pt-CV': 'BRL',\n 'pt-FR': 'BRL',\n 'pt-GW': 'BRL',\n 'pt-MO': 'BRL',\n 'pt-MZ': 'BRL',\n 'pt-PT': 'EUR',\n 'pt-ST': 'EUR',\n 'pt-TL': 'EUR',\n 'qu-BO': 'EUR',\n 'qu-PE': 'EUR',\n 'rm-CH': 'EUR',\n 'rn-BI': 'EUR',\n 'ro-HU': 'EUR',\n 'ro-IL': 'EUR',\n 'ro-MD': 'EUR',\n 'ro-RO': 'RON',\n 'ro-RS': 'RON',\n 'ro-UA': 'RON',\n 'ru-BY': 'RON',\n 'ru-CN': 'RON',\n 'ru-DE': 'RON',\n 'ru-EE': 'RON',\n 'ru-FI': 'RON',\n 'ru-GE': 'RON',\n 'ru-IL': 'RON',\n 'ru-KG': 'RON',\n 'ru-KZ': 'RON',\n 'ru-LT': 'RON',\n 'ru-LV': 'RON',\n 'ru-MD': 'RON',\n 'ru-MN': 'RON',\n 'ru-RU': 'RUB',\n 'ru-SJ': 'RUB',\n 'ru-TM': 'RUB',\n 'ru-UA': 'UAH',\n 'ru-US': 'UAH',\n 'ru-UZ': 'UAH',\n 'rw-CD': 'UAH',\n 'rw-RW': 'RWF',\n 'rw-UG': 'RWF',\n 'sa-IN': 'INR',\n 'se-FI': 'INR',\n 'se-NO': 'NOK',\n 'se-SE': 'NOK',\n 'sg-CF': 'NOK',\n 'si-LK': 'LKR',\n 'sk-HU': 'LKR',\n 'sk-RS': 'LKR',\n 'sk-SK': 'EUR',\n 'sl-AT': 'EUR',\n 'sl-HU': 'EUR',\n 'sl-IT': 'EUR',\n 'sl-SI': 'EUR',\n 'sm-AS': 'EUR',\n 'sm-WS': 'EUR',\n 'sn-ZW': 'EUR',\n 'so-DJ': 'DJF',\n 'so-ET': 'ETB',\n 'so-KE': 'ETB',\n 'so-SO': 'SOS',\n 'sq-AL': 'ALL',\n 'sq-GR': 'ALL',\n 'sq-ME': 'ALL',\n 'sq-MK': 'MKD',\n 'sq-RS': 'MKD',\n 'sq-TR': 'MKD',\n 'sr-RS': 'RSD',\n 'ss-LS': 'RSD',\n 'ss-SZ': 'RSD',\n 'ss-ZA': 'ZAR',\n 'st-LS': 'ZAR',\n 'st-ZA': 'ZAR',\n 'su-ID': 'ZAR',\n 'sv-AX': 'ZAR',\n 'sv-FI': 'EUR',\n 'sv-SE': 'SEK',\n 'sw-BI': 'SEK',\n 'sw-CD': 'SEK',\n 'sw-KE': 'SEK',\n 'sw-MZ': 'SEK',\n 'sw-SO': 'SEK',\n 'sw-TZ': 'SEK',\n 'sw-UG': 'SEK',\n 'sw-YT': 'SEK',\n 'sw-ZA': 'SEK',\n 'ta-IN': 'INR',\n 'ta-LK': 'INR',\n 'ta-MU': 'INR',\n 'ta-MY': 'INR',\n 'ta-RE': 'INR',\n 'ta-SG': 'INR',\n 'te-IN': 'INR',\n 'th-TH': 'THB',\n 'ti-ER': 'ERN',\n 'ti-ET': 'ETB',\n 'ti-IL': 'ETB',\n 'tk-AF': 'ETB',\n 'tk-IR': 'ETB',\n 'tk-TM': 'TMM',\n 'tl-PH': 'PHP',\n 'tl-US': 'PHP',\n 'tn-BW': 'PHP',\n 'tn-NA': 'PHP',\n 'tn-ZA': 'ZAR',\n 'tn-ZW': 'ZAR',\n 'to-TO': 'ZAR',\n 'tr-BG': 'ZAR',\n 'tr-CY': 'TRY',\n 'tr-DE': 'TRY',\n 'tr-GR': 'TRY',\n 'tr-MK': 'TRY',\n 'tr-NL': 'TRY',\n 'tr-RO': 'TRY',\n 'tr-TR': 'TRY',\n 'tr-UA': 'TRY',\n 'tr-UZ': 'TRY',\n 'ts-MZ': 'TRY',\n 'ts-SZ': 'TRY',\n 'ts-ZA': 'ZAR',\n 'tt-RU': 'RUB',\n 'ty-PF': 'RUB',\n 'uk-PL': 'RUB',\n 'uk-SK': 'RUB',\n 'uk-UA': 'UAH',\n 'ur-IN': 'UAH',\n 'ur-MU': 'UAH',\n 'ur-PK': 'PKR',\n 've-ZA': 'ZAR',\n 've-ZW': 'ZAR',\n 'vi-CN': 'ZAR',\n 'vi-US': 'ZAR',\n 'vi-VN': 'VND',\n 'wa-BE': 'EUR',\n 'xh-LS': 'EUR',\n 'xh-ZA': 'ZAR',\n 'yi-UA': 'ZAR',\n 'yo-BJ': 'ZAR',\n 'yo-NG': 'NGN',\n 'za-CN': 'NGN',\n 'zh-CN': 'CNY',\n 'zh-HK': 'HKD',\n 'zh-TW': 'TWD',\n 'zu-LS': 'TWD',\n 'zu-MW': 'TWD',\n 'zu-MZ': 'TWD',\n 'zu-SZ': 'TWD',\n 'zu-ZA': 'ZAR',\n};\n","import { InjectionToken } from '@angular/core';\n\nimport LOCALE_CURRENCY from './locale-currency';\nimport {\n TranslocoLocaleConfig,\n LocaleConfigMapping,\n LangToLocaleMapping,\n LocaleToCurrencyMapping,\n Locale,\n Currency,\n} from './transloco-locale.types';\n\nexport const defaultConfig: Required<TranslocoLocaleConfig> = {\n localeConfig: {\n global: {},\n localeBased: {},\n },\n defaultLocale: 'en-US',\n defaultCurrency: 'USD',\n localeToCurrencyMapping: LOCALE_CURRENCY,\n langToLocaleMapping: {},\n};\n\nexport const TRANSLOCO_LOCALE_DEFAULT_LOCALE = new InjectionToken<Locale>(\n 'TRANSLOCO_LOCALE_DEFAULT_LOCALE',\n);\nexport const TRANSLOCO_LOCALE_DEFAULT_CURRENCY = new InjectionToken<Currency>(\n 'TRANSLOCO_LOCALE_DEFAULT_CURRENCY',\n);\nexport const TRANSLOCO_LOCALE_LANG_MAPPING =\n new InjectionToken<LangToLocaleMapping>('TRANSLOCO_LOCALE_LANG_MAPPING');\nexport const TRANSLOCO_LOCALE_CONFIG = new InjectionToken<LocaleConfigMapping>(\n 'TRANSLOCO_LOCALE_CONFIG',\n);\nexport const TRANSLOCO_LOCALE_CURRENCY_MAPPING =\n new InjectionToken<LocaleToCurrencyMapping>(\n 'TRANSLOCO_LOCALE_CURRENCY_MAPPING',\n );\n","import { InjectionToken } from '@angular/core';\n\nimport { localizeNumber, localizeDate } from './helpers';\nimport {\n Locale,\n DateFormatOptions,\n NumberStyles,\n} from './transloco-locale.types';\n\nexport interface TranslocoDateTransformer {\n transform(date: Date, locale: Locale, options: DateFormatOptions): string;\n}\nexport interface TranslocoNumberTransformer {\n transform(\n value: number | string,\n type: NumberStyles,\n locale: Locale,\n options: Intl.NumberFormatOptions,\n ): string;\n}\n\nexport const TRANSLOCO_DATE_TRANSFORMER =\n new InjectionToken<TranslocoDateTransformer>('TRANSLOCO_DATE_TRANSFORMER');\nexport const TRANSLOCO_NUMBER_TRANSFORMER =\n new InjectionToken<TranslocoNumberTransformer>(\n 'TRANSLOCO_NUMBER_TRANSFORMER',\n );\n\nexport class DefaultDateTransformer implements TranslocoDateTransformer {\n public transform(\n date: Date,\n locale: Locale,\n options: DateFormatOptions,\n ): string {\n return localizeDate(date, locale, options);\n }\n}\nexport class DefaultNumberTransformer implements TranslocoNumberTransformer {\n public transform(\n value: number | string,\n type: NumberStyles,\n locale: string,\n options: Intl.NumberFormatOptions,\n ): string {\n return localizeNumber(value, locale, { ...options, style: type });\n }\n}\n","import { inject, Injectable, OnDestroy } from '@angular/core';\nimport { getBrowserCultureLang, TranslocoService } from '@jsverse/transloco';\nimport { BehaviorSubject, Subscription } from 'rxjs';\nimport { distinctUntilChanged, filter, map } from 'rxjs/operators';\n\nimport { isLocaleFormat, toDate } from './helpers';\nimport { getDefaultOptions } from './shared';\nimport {\n TRANSLOCO_LOCALE_CONFIG,\n TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n TRANSLOCO_LOCALE_LANG_MAPPING,\n} from './transloco-locale.config';\nimport {\n TRANSLOCO_DATE_TRANSFORMER,\n TRANSLOCO_NUMBER_TRANSFORMER,\n} from './transloco-locale.transformers';\nimport {\n DateFormatOptions,\n Locale,\n LocaleConfig,\n NumberStyles,\n ValidDate,\n} from './transloco-locale.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TranslocoLocaleService implements OnDestroy {\n private translocoService = inject(TranslocoService);\n private langLocaleMapping = inject(TRANSLOCO_LOCALE_LANG_MAPPING);\n private defaultLocale = inject(TRANSLOCO_LOCALE_DEFAULT_LOCALE);\n private defaultCurrency = inject(TRANSLOCO_LOCALE_DEFAULT_CURRENCY);\n private localeCurrencyMapping = inject(TRANSLOCO_LOCALE_CURRENCY_MAPPING);\n private numberTransformer = inject(TRANSLOCO_NUMBER_TRANSFORMER);\n private dateTransformer = inject(TRANSLOCO_DATE_TRANSFORMER);\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n private browserLocale = getBrowserCultureLang() || this.defaultLocale;\n\n private _locale = '';\n private locale: BehaviorSubject<Locale> = new BehaviorSubject(this._locale);\n private subscription: Subscription | null = null;\n\n localeChanges$ = this.locale.asObservable().pipe(distinctUntilChanged());\n\n constructor() {\n // Initialize locale with fallback chain\n this.setLocale(this.initializeLocale());\n\n // Subscribe to language changes\n this.subscription = this.translocoService.langChanges$\n .pipe(\n map((lang) => this.toLocale(lang)),\n filter(Boolean),\n )\n .subscribe((locale: Locale) => this.setLocale(locale));\n }\n\n getDefaultLocale() {\n return this.defaultLocale;\n }\n\n getLocale() {\n return this._locale;\n }\n\n setLocale(locale: Locale) {\n if (!isLocaleFormat(locale)) {\n console.error(`${locale} isn't a valid locale format`);\n return;\n }\n\n this.locale.next(locale);\n this._locale = locale;\n }\n\n /**\n * Get the currency symbol for the currently set locale.\n */\n getCurrencySymbol(locale = this.getLocale()) {\n const currency = this.localeCurrencyMapping[locale];\n const numberFormat = new Intl.NumberFormat(locale, {\n style: 'currency',\n currencyDisplay: 'symbol',\n currency,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n });\n\n const pivot = 0;\n\n return numberFormat\n .format(pivot)\n .split(pivot.toString())\n .map((element) => element.trim())\n .find((element) => !!element);\n }\n\n /**\n * Transform a date into the locale's date format.\n *\n * The date expression: a `Date` object, a number\n * (milliseconds since UTC epoch), or an ISO string (https://www.w3.org/TR/NOTE-datetime).\n *\n * @example\n *\n * localizeDate(new Date(2019, 9, 7, 12, 0, 0)) // 10/7/2019\n * localizeDate(date, 'en-US', { dateStyle: 'medium', timeStyle: 'medium' }) // Sep 10, 2019, 10:46:12 PM\n * localizeDate(date) 'en-US', { timeZone: 'UTC', timeStyle: 'full' } // 7:40:32 PM Coordinated Universal Time\n * localizeDate(1, 'en-US', { dateStyle: 'medium' }) // Jan 1, 1970\n * localizeDate('2019-02-08', 'en-US', { dateStyle: 'medium' }) // Feb 8, 2019\n */\n localizeDate(\n date: ValidDate,\n locale: Locale = this.getLocale(),\n options: DateFormatOptions = {},\n ): string {\n const resolved =\n options ?? getDefaultOptions(locale, 'date', this.localeConfig);\n\n return this.dateTransformer.transform(toDate(date), locale, resolved);\n }\n\n /**\n * Transform a number into the locale's number format according to the number type.\n *\n * localizeNumber(1234567890, 'decimal') // 1,234,567,890\n * localizeNumber(0.5, 'percent') // 50%\n * localizeNumber(1000, 'currency') // $1,000.00\n */\n localizeNumber(\n value: number | string,\n style: NumberStyles,\n locale: Locale = this.getLocale(),\n options?: Intl.NumberFormatOptions,\n ): string {\n let resolved =\n options ?? getDefaultOptions(locale, style, this.localeConfig);\n\n if (style === 'currency') {\n resolved = {\n ...resolved,\n currency: resolved.currency || this._resolveCurrencyCode(locale),\n };\n }\n\n return this.numberTransformer.transform(value, style, locale, resolved);\n }\n\n /**\n * @internal\n */\n _resolveCurrencyCode(locale: Locale = this.getLocale()) {\n return this.localeCurrencyMapping[locale] || this.defaultCurrency;\n }\n\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n // Caretaker note: it's important to clean up references to subscriptions since they save the `next`\n // callback within its `destination` property, preventing classes from being GC'd.\n this.subscription = null;\n }\n\n private toLocale(val: string | Locale): Locale {\n if (this.langLocaleMapping[val]) {\n return this.langLocaleMapping[val];\n }\n\n if (isLocaleFormat(val)) {\n return val;\n }\n\n return '';\n }\n\n /*\n * Get the browser's language and validate.\n * If the browser's language is not set, it will fall back to the active language from TranslocoService.\n * If active language from TranslocoService is not valid, it will fall back to the default locale.\n * If the default locale is not valid, it will return the default locale as a string\n */\n\n private initializeLocale(): Locale {\n const browserLocale = this.toLocale(this.browserLocale);\n if (browserLocale) return browserLocale;\n\n const activeLang = this.translocoService.getActiveLang();\n if (activeLang) {\n const locale = this.toLocale(activeLang);\n if (locale) return locale;\n }\n\n const defaultLocaleResolved = this.toLocale(this.defaultLocale);\n if (defaultLocaleResolved) return defaultLocaleResolved;\n\n return this.defaultLocale; // Fallback to a default locale\n }\n}\n","import {\n ChangeDetectorRef,\n inject,\n Injectable,\n OnDestroy,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { Locale } from '../../lib/transloco-locale.types';\nimport { TranslocoLocaleService } from '../transloco-locale.service';\n\n@Injectable()\nexport abstract class BaseLocalePipe implements OnDestroy {\n protected localeService = inject(TranslocoLocaleService);\n protected cdr = inject(ChangeDetectorRef);\n\n private localeChangeSub: Subscription | null =\n this.localeService.localeChanges$.subscribe(() => this.cdr.markForCheck());\n\n protected getLocale(locale?: Locale): Locale {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return locale || this.localeService.getLocale()!;\n }\n\n ngOnDestroy(): void {\n this.localeChangeSub?.unsubscribe();\n // Caretaker note: it's important to clean up references to subscriptions since they save the `next`\n // callback within its `destination` property, preventing classes from being GC'd.\n this.localeChangeSub = null;\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Currency,\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoCurrency',\n pure: false,\n standalone: true,\n})\nexport class TranslocoCurrencyPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1000000 | translocoCurrency: 'symbol' : {} : USD // $1,000,000.00\n * 1000000 | translocoCurrency: 'name' : {} : USD // 1,000,000.00 US dollars\n * 1000000 | translocoCurrency: 'symbol' : {minimumFractionDigits: 0 } : USD // $1,000,000\n * 1000000 | translocoCurrency: 'symbol' : {minimumFractionDigits: 0 } : CAD // CA$1,000,000\n * 1000000 | translocoCurrency: 'narrowSymbol' : {minimumFractionDigits: 0 } : CAD // $1,000,000\n *\n */\n transform(\n value: number | string,\n display: 'code' | 'symbol' | 'narrowSymbol' | 'name' = 'symbol',\n numberFormatOptions: NumberFormatOptions = {},\n currencyCode?: Currency,\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'currency', this.localeConfig),\n ...numberFormatOptions,\n currencyDisplay: display,\n currency: currencyCode || this.localeService._resolveCurrencyCode(),\n };\n\n return this.localeService.localizeNumber(\n value,\n 'currency',\n locale,\n options,\n );\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n DateFormatOptions,\n Locale,\n LocaleConfig,\n ValidDate,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoDate',\n pure: false,\n standalone: true,\n})\nexport class TranslocoDatePipe extends BaseLocalePipe implements PipeTransform {\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a date into the locale's date format.\n *\n * The date expression: a `Date` object, a number\n * (milliseconds since UTC epoch), or an ISO string (https://www.w3.org/TR/NOTE-datetime).\n *\n * @example\n *\n * date | translocoDate: {} : en-US // 9/10/2019\n * date | translocoDate: { dateStyle: 'medium', timeStyle: 'medium' } : en-US // Sep 10, 2019, 10:46:12 PM\n * date | translocoDate: { timeZone: 'UTC', timeStyle: 'full' } : en-US // 7:40:32 PM Coordinated Universal Time\n * 1 | translocoDate: { dateStyle: 'medium' } // Jan 1, 1970\n * '2019-02-08' | translocoDate: { dateStyle: 'medium' } // Feb 8, 2019\n */\n transform(date: ValidDate, options: DateFormatOptions = {}, locale?: Locale) {\n if (isNil(date)) return '';\n locale = this.getLocale(locale);\n\n return this.localeService.localizeDate(date, locale, {\n ...getDefaultOptions(locale, 'date', this.localeConfig),\n ...options,\n });\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoDecimal',\n pure: false,\n standalone: true,\n})\nexport class TranslocoDecimalPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1234567890 | translocoDecimal: {} : en-US // 1,234,567,890\n * 1234567890 | translocoDecimal: {useGrouping: false}: en-US // 1234567890\n *\n */\n transform(\n value: string | number,\n numberFormatOptions: NumberFormatOptions = {},\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'decimal', this.localeConfig),\n ...numberFormatOptions,\n };\n\n return this.localeService.localizeNumber(value, 'decimal', locale, options);\n }\n}\n","import { inject, Pipe, PipeTransform } from '@angular/core';\nimport { isNil } from '@jsverse/utils';\n\nimport { getDefaultOptions } from '../shared';\nimport { TRANSLOCO_LOCALE_CONFIG } from '../transloco-locale.config';\nimport {\n Locale,\n LocaleConfig,\n NumberFormatOptions,\n} from '../transloco-locale.types';\n\nimport { BaseLocalePipe } from './base-locale.pipe';\n\n@Pipe({\n name: 'translocoPercent',\n pure: false,\n standalone: true,\n})\nexport class TranslocoPercentPipe\n extends BaseLocalePipe\n implements PipeTransform\n{\n private localeConfig: LocaleConfig = inject(TRANSLOCO_LOCALE_CONFIG);\n\n /**\n * Transform a given number into the locale's currency format.\n *\n * @example\n *\n * 1 | translocoPercent : {} : en-US // 100%\n * \"1\" | translocoPercent : {} : en-US // 100%\n *\n */\n transform(\n value: number | string,\n numberFormatOptions: NumberFormatOptions = {},\n locale?: Locale,\n ): string {\n if (isNil(value)) return '';\n locale = this.getLocale(locale);\n\n const options = {\n ...getDefaultOptions(locale, 'percent', this.localeConfig),\n ...numberFormatOptions,\n };\n\n return this.localeService.localizeNumber(value, 'percent', locale, options);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport {\n TranslocoCurrencyPipe,\n TranslocoDatePipe,\n TranslocoDecimalPipe,\n TranslocoPercentPipe,\n} from './pipes';\n\nconst decl = [\n TranslocoCurrencyPipe,\n TranslocoDatePipe,\n TranslocoDecimalPipe,\n TranslocoPercentPipe,\n];\n\n@NgModule({\n imports: decl,\n exports: decl,\n})\nexport class TranslocoLocaleModule {}\n","import { makeEnvironmentProviders, Type } from '@angular/core';\n\nimport {\n Currency,\n LangToLocaleMapping,\n Locale,\n LocaleConfig,\n LocaleToCurrencyMapping,\n TranslocoLocaleConfig,\n} from './transloco-locale.types';\nimport {\n defaultConfig,\n TRANSLOCO_LOCALE_CONFIG,\n TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n TRANSLOCO_LOCALE_LANG_MAPPING,\n} from './transloco-locale.config';\nimport {\n DefaultDateTransformer,\n DefaultNumberTransformer,\n TRANSLOCO_DATE_TRANSFORMER,\n TRANSLOCO_NUMBER_TRANSFORMER,\n TranslocoDateTransformer,\n TranslocoNumberTransformer,\n} from './transloco-locale.transformers';\n\nexport function provideTranslocoLocale(config?: TranslocoLocaleConfig) {\n const merged = {\n ...defaultConfig,\n ...config,\n };\n\n return [\n provideTranslocoLocaleConfig(merged.localeConfig),\n provideTranslocoDefaultLocale(merged.defaultLocale),\n provideTranslocoDefaultCurrency(merged.defaultCurrency),\n provideTranslocoLocaleLangMapping(merged.langToLocaleMapping),\n provideTranslocoLocaleCurrencyMapping(merged.localeToCurrencyMapping),\n provideTranslocoDateTransformer(DefaultDateTransformer),\n provideTranslocoNumberTransformer(DefaultNumberTransformer),\n ];\n}\n\nexport function provideTranslocoLocaleConfig(config: LocaleConfig) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_CONFIG,\n useValue: config,\n },\n ]);\n}\n\nexport function provideTranslocoLocaleLangMapping(\n langToLocale: LangToLocaleMapping,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_LANG_MAPPING,\n useValue: langToLocale,\n },\n ]);\n}\n\nexport function provideTranslocoLocaleCurrencyMapping(\n localeToCurrency: LocaleToCurrencyMapping,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_CURRENCY_MAPPING,\n useValue: localeToCurrency,\n },\n ]);\n}\n\nexport function provideTranslocoDefaultLocale(defaultLocale: Locale) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_DEFAULT_LOCALE,\n useValue: defaultLocale,\n },\n ]);\n}\n\nexport function provideTranslocoDefaultCurrency(defaultCurrency: Currency) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_LOCALE_DEFAULT_CURRENCY,\n useValue: defaultCurrency,\n },\n ]);\n}\n\nexport function provideTranslocoDateTransformer(\n transformer: Type<TranslocoDateTransformer>,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_DATE_TRANSFORMER,\n useClass: transformer,\n },\n ]);\n}\n\nexport function provideTranslocoNumberTransformer(\n transformer: Type<TranslocoNumberTransformer>,\n) {\n return makeEnvironmentProviders([\n {\n provide: TRANSLOCO_NUMBER_TRANSFORMER,\n useClass: transformer,\n },\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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AK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,OAAO,EAAE,KAAK;CACf;;AC7nBM,MAAM,aAAa,GAAoC;AAC5D,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,WAAW,EAAE,EAAE;AAChB,KAAA;AACD,IAAA,aAAa,EAAE,OAAO;AACtB,IAAA,eAAe,EAAE,KAAK;AACtB,IAAA,uBAAuB,EAAE,eAAe;AACxC,IAAA,mBAAmB,EAAE,EAAE;CACxB;MAEY,+BAA+B,GAAG,IAAI,cAAc,CAC/D,iCAAiC;MAEtB,iCAAiC,GAAG,IAAI,cAAc,CACjE,mCAAmC;MAExB,6BAA6B,GACxC,IAAI,cAAc,CAAsB,+BAA+B;MAC5D,uBAAuB,GAAG,IAAI,cAAc,CACvD,yBAAyB;MAEd,iCAAiC,GAC5C,IAAI,cAAc,CAChB,mCAAmC;;MCf1B,0BAA0B,GACrC,IAAI,cAAc,CAA2B,4BAA4B;MAC9D,4BAA4B,GACvC,IAAI,cAAc,CAChB,8BAA8B;MAGrB,sBAAsB,CAAA;AAC1B,IAAA,SAAS,CACd,IAAU,EACV,MAAc,EACd,OAA0B,EAAA;QAE1B,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;;AAE7C;MACY,wBAAwB,CAAA;AAC5B,IAAA,SAAS,CACd,KAAsB,EACtB,IAAkB,EAClB,MAAc,EACd,OAAiC,EAAA;AAEjC,QAAA,OAAO,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;AAEpE;;MCjBY,sBAAsB,CAAA;AACzB,IAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC3C,IAAA,iBAAiB,GAAG,MAAM,CAAC,6BAA6B,CAAC;AACzD,IAAA,aAAa,GAAG,MAAM,CAAC,+BAA+B,CAAC;AACvD,IAAA,eAAe,GAAG,MAAM,CAAC,iCAAiC,CAAC;AAC3D,IAAA,qBAAqB,GAAG,MAAM,CAAC,iCAAiC,CAAC;AACjE,IAAA,iBAAiB,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACxD,IAAA,eAAe,GAAG,MAAM,CAAC,0BAA0B,CAAC;AACpD,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAC5D,IAAA,aAAa,GAAG,qBAAqB,EAAE,IAAI,IAAI,CAAC,aAAa;IAE7D,OAAO,GAAG,EAAE;IACZ,MAAM,GAA4B,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;IACnE,YAAY,GAAwB,IAAI;AAEhD,IAAA,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;AAExE,IAAA,WAAA,GAAA;;QAEE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;;AAGvC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC;aACvC,IAAI,CACH,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAClC,MAAM,CAAC,OAAO,CAAC;AAEhB,aAAA,SAAS,CAAC,CAAC,MAAc,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;;IAG1D,gBAAgB,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;;IAG3B,SAAS,GAAA;QACP,OAAO,IAAI,CAAC,OAAO;;AAGrB,IAAA,SAAS,CAAC,MAAc,EAAA;AACtB,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;AAC3B,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,CAAA,4BAAA,CAA8B,CAAC;YACtD;;AAGF,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;AACxB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;;AAGvB;;AAEG;AACH,IAAA,iBAAiB,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAA;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AACjD,YAAA,KAAK,EAAE,UAAU;AACjB,YAAA,eAAe,EAAE,QAAQ;YACzB,QAAQ;AACR,YAAA,qBAAqB,EAAE,CAAC;AACxB,YAAA,qBAAqB,EAAE,CAAC;AACzB,SAAA,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC;AAEf,QAAA,OAAO;aACJ,MAAM,CAAC,KAAK;AACZ,aAAA,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;aACtB,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE;aAC/B,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC;;AAGjC;;;;;;;;;;;;;AAaG;IACH,YAAY,CACV,IAAe,EACf,MAAiB,GAAA,IAAI,CAAC,SAAS,EAAE,EACjC,OAAA,GAA6B,EAAE,EAAA;AAE/B,QAAA,MAAM,QAAQ,GACZ,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC;AAEjE,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC;;AAGvE;;;;;;AAMG;IACH,cAAc,CACZ,KAAsB,EACtB,KAAmB,EACnB,MAAiB,GAAA,IAAI,CAAC,SAAS,EAAE,EACjC,OAAkC,EAAA;AAElC,QAAA,IAAI,QAAQ,GACV,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;AAEhE,QAAA,IAAI,KAAK,KAAK,UAAU,EAAE;AACxB,YAAA,QAAQ,GAAG;AACT,gBAAA,GAAG,QAAQ;gBACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC;aACjE;;AAGH,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC;;AAGzE;;AAEG;AACH,IAAA,oBAAoB,CAAC,MAAA,GAAiB,IAAI,CAAC,SAAS,EAAE,EAAA;QACpD,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe;;IAGnE,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE;;;AAGhC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;AAGlB,IAAA,QAAQ,CAAC,GAAoB,EAAA;AACnC,QAAA,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE;AAC/B,YAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;;AAGpC,QAAA,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE;AACvB,YAAA,OAAO,GAAG;;AAGZ,QAAA,OAAO,EAAE;;AAGX;;;;;AAKG;IAEK,gBAAgB,GAAA;QACtB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;AACvD,QAAA,IAAI,aAAa;AAAE,YAAA,OAAO,aAAa;QAEvC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE;QACxD,IAAI,UAAU,EAAE;YACd,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AACxC,YAAA,IAAI,MAAM;AAAE,gBAAA,OAAO,MAAM;;QAG3B,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;AAC/D,QAAA,IAAI,qBAAqB;AAAE,YAAA,OAAO,qBAAqB;AAEvD,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC;;uGAvKjB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFrB,MAAM,EAAA,CAAA;;2FAEP,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MChBqB,cAAc,CAAA;AACxB,IAAA,aAAa,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAC9C,IAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAEjC,IAAA,eAAe,GACrB,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAElE,IAAA,SAAS,CAAC,MAAe,EAAA;;QAEjC,OAAO,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,EAAG;;IAGlD,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE;;;AAGnC,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;;uGAhBT,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAd,cAAc,EAAA,CAAA;;2FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBADnC;;;ACQK,MAAO,qBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;;;;AAWG;IACH,SAAS,CACP,KAAsB,EACtB,OAAuD,GAAA,QAAQ,EAC/D,mBAAA,GAA2C,EAAE,EAC7C,YAAuB,EACvB,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;AAC3D,YAAA,GAAG,mBAAmB;AACtB,YAAA,eAAe,EAAE,OAAO;YACxB,QAAQ,EAAE,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE;SACpE;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CACtC,KAAK,EACL,UAAU,EACV,MAAM,EACN,OAAO,CACR;;uGAxCQ,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,mBAAmB;AACzB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACCK,MAAO,iBAAkB,SAAQ,cAAc,CAAA;AAC3C,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;;;;;;AAaG;AACH,IAAA,SAAS,CAAC,IAAe,EAAE,OAA6B,GAAA,EAAE,EAAE,MAAe,EAAA;QACzE,IAAI,KAAK,CAAC,IAAI,CAAC;AAAE,YAAA,OAAO,EAAE;AAC1B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAE/B,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE;YACnD,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC;AACvD,YAAA,GAAG,OAAO;AACX,SAAA,CAAC;;uGAxBO,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,eAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,eAAe;AACrB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACAK,MAAO,oBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;AAQG;AACH,IAAA,SAAS,CACP,KAAsB,EACtB,mBAA2C,GAAA,EAAE,EAC7C,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;AAC1D,YAAA,GAAG,mBAAmB;SACvB;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;;uGA5BlE,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACCK,MAAO,oBACX,SAAQ,cAAc,CAAA;AAGd,IAAA,YAAY,GAAiB,MAAM,CAAC,uBAAuB,CAAC;AAEpE;;;;;;;;AAQG;AACH,IAAA,SAAS,CACP,KAAsB,EACtB,mBAA2C,GAAA,EAAE,EAC7C,MAAe,EAAA;QAEf,IAAI,KAAK,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE;AAC3B,QAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AAE/B,QAAA,MAAM,OAAO,GAAG;YACd,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;AAC1D,YAAA,GAAG,mBAAmB;SACvB;AAED,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;;uGA5BlE,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA;qGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,KAAA,EAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,IAAI,EAAE,KAAK;AACX,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;ACRD,MAAM,IAAI,GAAG;IACX,qBAAqB;IACrB,iBAAiB;IACjB,oBAAoB;IACpB,oBAAoB;CACrB;MAMY,qBAAqB,CAAA;uGAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,YAVhC,qBAAqB;YACrB,iBAAiB;YACjB,oBAAoB;AACpB,YAAA,oBAAoB,aAHpB,qBAAqB;YACrB,iBAAiB;YACjB,oBAAoB;YACpB,oBAAoB,CAAA,EAAA,CAAA;wGAOT,qBAAqB,EAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,IAAI;AACb,oBAAA,OAAO,EAAE,IAAI;AACd,iBAAA;;;ACQK,SAAU,sBAAsB,CAAC,MAA8B,EAAA;AACnE,IAAA,MAAM,MAAM,GAAG;AACb,QAAA,GAAG,aAAa;AAChB,QAAA,GAAG,MAAM;KACV;IAED,OAAO;AACL,QAAA,4BAA4B,CAAC,MAAM,CAAC,YAAY,CAAC;AACjD,QAAA,6BAA6B,CAAC,MAAM,CAAC,aAAa,CAAC;AACnD,QAAA,+BAA+B,CAAC,MAAM,CAAC,eAAe,CAAC;AACvD,QAAA,iCAAiC,CAAC,MAAM,CAAC,mBAAmB,CAAC;AAC7D,QAAA,qCAAqC,CAAC,MAAM,CAAC,uBAAuB,CAAC;QACrE,+BAA+B,CAAC,sBAAsB,CAAC;QACvD,iCAAiC,CAAC,wBAAwB,CAAC;KAC5D;AACH;AAEM,SAAU,4BAA4B,CAAC,MAAoB,EAAA;AAC/D,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,QAAQ,EAAE,MAAM;AACjB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,iCAAiC,CAC/C,YAAiC,EAAA;AAEjC,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,6BAA6B;AACtC,YAAA,QAAQ,EAAE,YAAY;AACvB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,qCAAqC,CACnD,gBAAyC,EAAA;AAEzC,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,gBAAgB;AAC3B,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,6BAA6B,CAAC,aAAqB,EAAA;AACjE,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,+BAA+B;AACxC,YAAA,QAAQ,EAAE,aAAa;AACxB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,+BAA+B,CAAC,eAAyB,EAAA;AACvE,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,iCAAiC;AAC1C,YAAA,QAAQ,EAAE,eAAe;AAC1B,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,+BAA+B,CAC7C,WAA2C,EAAA;AAE3C,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,0BAA0B;AACnC,YAAA,QAAQ,EAAE,WAAW;AACtB,SAAA;AACF,KAAA,CAAC;AACJ;AAEM,SAAU,iCAAiC,CAC/C,WAA6C,EAAA;AAE7C,IAAA,OAAO,wBAAwB,CAAC;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,4BAA4B;AACrC,YAAA,QAAQ,EAAE,WAAW;AACtB,SAAA;AACF,KAAA,CAAC;AACJ;;ACjHA;;AAEG;;;;"}
@@ -16,6 +16,7 @@ export declare class TranslocoLocaleService implements OnDestroy {
16
16
  private subscription;
17
17
  localeChanges$: import("rxjs").Observable<string>;
18
18
  constructor();
19
+ getDefaultLocale(): string;
19
20
  getLocale(): string;
20
21
  setLocale(locale: Locale): void;
21
22
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsverse/transloco-locale",
3
- "version": "8.0.2",
3
+ "version": "8.2.0",
4
4
  "description": "The localization (l10n) library plugin for Transloco",
5
5
  "publishConfig": {
6
6
  "access": "public"