@taiga-ui/addon-commerce 4.100.0 → 4.102.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.
@@ -1,4 +1,5 @@
1
1
  import { inject, Pipe } from '@angular/core';
2
+ import { TUI_CURRENCY_SYMBOLS } from '@taiga-ui/addon-commerce/tokens';
2
3
  import { tuiFormatCurrency } from '@taiga-ui/addon-commerce/utils';
3
4
  import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
4
5
  import { TUI_NUMBER_FORMAT } from '@taiga-ui/core/tokens';
@@ -11,11 +12,12 @@ const DEFAULT_PRECISION = 2;
11
12
  class TuiAmountPipe {
12
13
  constructor() {
13
14
  this.options = inject(TUI_AMOUNT_OPTIONS);
15
+ this.currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);
14
16
  this.format = inject(TUI_NUMBER_FORMAT);
15
17
  }
16
18
  transform(value, currency = this.options.currency, currencyAlign = this.options.currencyAlign) {
17
19
  return this.format.pipe(map((format) => {
18
- const currencySymbol = tuiFormatCurrency(currency);
20
+ const currencySymbol = this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);
19
21
  const formatted = tuiFormatNumber(Math.abs(value), {
20
22
  ...format,
21
23
  precision: Number.isNaN(format.precision)
@@ -42,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
42
44
  type: Pipe,
43
45
  args: [{ standalone: true, name: 'tuiAmount' }]
44
46
  }] });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1vdW50LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9waXBlcy9hbW91bnQvYW1vdW50LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRS9ELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXhELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsR0FBRyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUUxQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbkQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUM7QUFFNUIsTUFDYSxhQUFhO0lBRDFCO1FBRXFCLFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNyQyxXQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FnQ3ZEO0lBOUJVLFNBQVMsQ0FDWixLQUFhLEVBQ2IsV0FBZ0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQ3JELGdCQUF3QyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWE7UUFFbEUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDWCxNQUFNLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNuRCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDL0MsR0FBRyxNQUFNO2dCQUNULFNBQVMsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7b0JBQ3JDLENBQUMsQ0FBQyxpQkFBaUI7b0JBQ25CLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUzthQUN6QixDQUFDLENBQUM7WUFDSCxNQUFNLElBQUksR0FDTixTQUFTLEtBQUssR0FBRztnQkFDYixDQUFDLENBQUMsRUFBRTtnQkFDSixDQUFDLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEQsTUFBTSxLQUFLLEdBQ1AsY0FBYztnQkFDZCxDQUFDLGNBQWMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxJQUFJLGFBQWEsS0FBSyxPQUFPLENBQUM7Z0JBQ3JELENBQUMsQ0FBQyxtQkFBbUI7Z0JBQ3JCLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFFYixPQUFPLGFBQWEsS0FBSyxPQUFPO2dCQUM1QixDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsU0FBUyxHQUFHLEtBQUssR0FBRyxjQUFjLEVBQUU7Z0JBQ2hELENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxjQUFjLEdBQUcsS0FBSyxHQUFHLFNBQVMsRUFBRSxDQUFDO1FBQ3pELENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDOytHQWpDUSxhQUFhOzZHQUFiLGFBQWE7O1NBQWIsYUFBYTs0RkFBYixhQUFhO2tCQUR6QixJQUFJO21CQUFDLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIFBpcGUsIHR5cGUgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3R5cGUgVHVpQ3VycmVuY3lWYXJpYW50c30gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3R5cGVzJztcbmltcG9ydCB7dHVpRm9ybWF0Q3VycmVuY3l9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS91dGlscyc7XG5pbXBvcnQge0NIQVJfTk9fQlJFQUtfU1BBQ0V9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7VFVJX05VTUJFUl9GT1JNQVR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R5cGUgVHVpSG9yaXpvbnRhbERpcmVjdGlvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuaW1wb3J0IHt0dWlGb3JtYXROdW1iZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL2Zvcm1hdCc7XG5pbXBvcnQge21hcCwgdHlwZSBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtUVUlfQU1PVU5UX09QVElPTlN9IGZyb20gJy4vYW1vdW50Lm9wdGlvbnMnO1xuaW1wb3J0IHt0dWlGb3JtYXRTaWduU3ltYm9sfSBmcm9tICcuL2Ftb3VudC51dGlscyc7XG5cbmNvbnN0IERFRkFVTFRfUFJFQ0lTSU9OID0gMjtcblxuQFBpcGUoe3N0YW5kYWxvbmU6IHRydWUsIG5hbWU6ICd0dWlBbW91bnQnfSlcbmV4cG9ydCBjbGFzcyBUdWlBbW91bnRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zID0gaW5qZWN0KFRVSV9BTU9VTlRfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmb3JtYXQgPSBpbmplY3QoVFVJX05VTUJFUl9GT1JNQVQpO1xuXG4gICAgcHVibGljIHRyYW5zZm9ybShcbiAgICAgICAgdmFsdWU6IG51bWJlcixcbiAgICAgICAgY3VycmVuY3k6IFR1aUN1cnJlbmN5VmFyaWFudHMgPSB0aGlzLm9wdGlvbnMuY3VycmVuY3ksXG4gICAgICAgIGN1cnJlbmN5QWxpZ246IFR1aUhvcml6b250YWxEaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuY3VycmVuY3lBbGlnbixcbiAgICApOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtYXQucGlwZShcbiAgICAgICAgICAgIG1hcCgoZm9ybWF0KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVuY3lTeW1ib2wgPSB0dWlGb3JtYXRDdXJyZW5jeShjdXJyZW5jeSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gdHVpRm9ybWF0TnVtYmVyKE1hdGguYWJzKHZhbHVlKSwge1xuICAgICAgICAgICAgICAgICAgICAuLi5mb3JtYXQsXG4gICAgICAgICAgICAgICAgICAgIHByZWNpc2lvbjogTnVtYmVyLmlzTmFOKGZvcm1hdC5wcmVjaXNpb24pXG4gICAgICAgICAgICAgICAgICAgICAgICA/IERFRkFVTFRfUFJFQ0lTSU9OXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGZvcm1hdC5wcmVjaXNpb24sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2lnbiA9XG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdHRlZCA9PT0gJzAnXG4gICAgICAgICAgICAgICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHR1aUZvcm1hdFNpZ25TeW1ib2wodmFsdWUsIHRoaXMub3B0aW9ucy5zaWduKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzcGFjZSA9XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbmN5U3ltYm9sICYmXG4gICAgICAgICAgICAgICAgICAgIChjdXJyZW5jeVN5bWJvbD8ubGVuZ3RoID4gMSB8fCBjdXJyZW5jeUFsaWduID09PSAncmlnaHQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBDSEFSX05PX0JSRUFLX1NQQUNFXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbmN5QWxpZ24gPT09ICdyaWdodCdcbiAgICAgICAgICAgICAgICAgICAgPyBgJHtzaWdufSR7Zm9ybWF0dGVkfSR7c3BhY2V9JHtjdXJyZW5jeVN5bWJvbH1gXG4gICAgICAgICAgICAgICAgICAgIDogYCR7c2lnbn0ke2N1cnJlbmN5U3ltYm9sfSR7c3BhY2V9JHtmb3JtYXR0ZWR9YDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1vdW50LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS9waXBlcy9hbW91bnQvYW1vdW50LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBRXhELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsR0FBRyxFQUFrQixNQUFNLE1BQU0sQ0FBQztBQUUxQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbkQsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLENBQUM7QUFFNUIsTUFDYSxhQUFhO0lBRDFCO1FBRXFCLFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNyQywwQkFBcUIsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNyRCxXQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0FpQ3ZEO0lBL0JVLFNBQVMsQ0FDWixLQUFhLEVBQ2IsV0FBZ0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQ3JELGdCQUF3QyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWE7UUFFbEUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDWCxNQUFNLGNBQWMsR0FDaEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3hFLE1BQU0sU0FBUyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMvQyxHQUFHLE1BQU07Z0JBQ1QsU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztvQkFDckMsQ0FBQyxDQUFDLGlCQUFpQjtvQkFDbkIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTO2FBQ3pCLENBQUMsQ0FBQztZQUNILE1BQU0sSUFBSSxHQUNOLFNBQVMsS0FBSyxHQUFHO2dCQUNiLENBQUMsQ0FBQyxFQUFFO2dCQUNKLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4RCxNQUFNLEtBQUssR0FDUCxjQUFjO2dCQUNkLENBQUMsY0FBYyxFQUFFLE1BQU0sR0FBRyxDQUFDLElBQUksYUFBYSxLQUFLLE9BQU8sQ0FBQztnQkFDckQsQ0FBQyxDQUFDLG1CQUFtQjtnQkFDckIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUViLE9BQU8sYUFBYSxLQUFLLE9BQU87Z0JBQzVCLENBQUMsQ0FBQyxHQUFHLElBQUksR0FBRyxTQUFTLEdBQUcsS0FBSyxHQUFHLGNBQWMsRUFBRTtnQkFDaEQsQ0FBQyxDQUFDLEdBQUcsSUFBSSxHQUFHLGNBQWMsR0FBRyxLQUFLLEdBQUcsU0FBUyxFQUFFLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7K0dBbkNRLGFBQWE7NkdBQWIsYUFBYTs7U0FBYixhQUFhOzRGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgUGlwZSwgdHlwZSBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX0NVUlJFTkNZX1NZTUJPTFN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90b2tlbnMnO1xuaW1wb3J0IHt0eXBlIFR1aUN1cnJlbmN5VmFyaWFudHN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90eXBlcyc7XG5pbXBvcnQge3R1aUZvcm1hdEN1cnJlbmN5fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdXRpbHMnO1xuaW1wb3J0IHtDSEFSX05PX0JSRUFLX1NQQUNFfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1RVSV9OVU1CRVJfRk9STUFUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0eXBlIFR1aUhvcml6b250YWxEaXJlY3Rpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpRm9ybWF0TnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9mb3JtYXQnO1xuaW1wb3J0IHttYXAsIHR5cGUgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0FNT1VOVF9PUFRJT05TfSBmcm9tICcuL2Ftb3VudC5vcHRpb25zJztcbmltcG9ydCB7dHVpRm9ybWF0U2lnblN5bWJvbH0gZnJvbSAnLi9hbW91bnQudXRpbHMnO1xuXG5jb25zdCBERUZBVUxUX1BSRUNJU0lPTiA9IDI7XG5cbkBQaXBlKHtzdGFuZGFsb25lOiB0cnVlLCBuYW1lOiAndHVpQW1vdW50J30pXG5leHBvcnQgY2xhc3MgVHVpQW1vdW50UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9ucyA9IGluamVjdChUVUlfQU1PVU5UX09QVElPTlMpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY3VycmVuY3lTeW1ib2xIYW5kbGVyID0gaW5qZWN0KFRVSV9DVVJSRU5DWV9TWU1CT0xTKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1hdCA9IGluamVjdChUVUlfTlVNQkVSX0ZPUk1BVCk7XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKFxuICAgICAgICB2YWx1ZTogbnVtYmVyLFxuICAgICAgICBjdXJyZW5jeTogVHVpQ3VycmVuY3lWYXJpYW50cyA9IHRoaXMub3B0aW9ucy5jdXJyZW5jeSxcbiAgICAgICAgY3VycmVuY3lBbGlnbjogVHVpSG9yaXpvbnRhbERpcmVjdGlvbiA9IHRoaXMub3B0aW9ucy5jdXJyZW5jeUFsaWduLFxuICAgICk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdC5waXBlKFxuICAgICAgICAgICAgbWFwKChmb3JtYXQpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjdXJyZW5jeVN5bWJvbCA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVuY3lTeW1ib2xIYW5kbGVyKGN1cnJlbmN5KSA/PyB0dWlGb3JtYXRDdXJyZW5jeShjdXJyZW5jeSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gdHVpRm9ybWF0TnVtYmVyKE1hdGguYWJzKHZhbHVlKSwge1xuICAgICAgICAgICAgICAgICAgICAuLi5mb3JtYXQsXG4gICAgICAgICAgICAgICAgICAgIHByZWNpc2lvbjogTnVtYmVyLmlzTmFOKGZvcm1hdC5wcmVjaXNpb24pXG4gICAgICAgICAgICAgICAgICAgICAgICA/IERFRkFVTFRfUFJFQ0lTSU9OXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGZvcm1hdC5wcmVjaXNpb24sXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2lnbiA9XG4gICAgICAgICAgICAgICAgICAgIGZvcm1hdHRlZCA9PT0gJzAnXG4gICAgICAgICAgICAgICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHR1aUZvcm1hdFNpZ25TeW1ib2wodmFsdWUsIHRoaXMub3B0aW9ucy5zaWduKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzcGFjZSA9XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbmN5U3ltYm9sICYmXG4gICAgICAgICAgICAgICAgICAgIChjdXJyZW5jeVN5bWJvbD8ubGVuZ3RoID4gMSB8fCBjdXJyZW5jeUFsaWduID09PSAncmlnaHQnKVxuICAgICAgICAgICAgICAgICAgICAgICAgPyBDSEFSX05PX0JSRUFLX1NQQUNFXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGN1cnJlbmN5QWxpZ24gPT09ICdyaWdodCdcbiAgICAgICAgICAgICAgICAgICAgPyBgJHtzaWdufSR7Zm9ybWF0dGVkfSR7c3BhY2V9JHtjdXJyZW5jeVN5bWJvbH1gXG4gICAgICAgICAgICAgICAgICAgIDogYCR7c2lnbn0ke2N1cnJlbmN5U3ltYm9sfSR7c3BhY2V9JHtmb3JtYXR0ZWR9YDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,9 +1,13 @@
1
- import { Pipe } from '@angular/core';
1
+ import { inject, Pipe } from '@angular/core';
2
+ import { TUI_CURRENCY_SYMBOLS } from '@taiga-ui/addon-commerce/tokens';
2
3
  import { tuiFormatCurrency } from '@taiga-ui/addon-commerce/utils';
3
4
  import * as i0 from "@angular/core";
4
5
  class TuiCurrencyPipe {
6
+ constructor() {
7
+ this.currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);
8
+ }
5
9
  transform(currency) {
6
- return tuiFormatCurrency(currency);
10
+ return this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);
7
11
  }
8
12
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
9
13
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiCurrencyPipe, isStandalone: true, name: "tuiCurrency" }); }
@@ -16,4 +20,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
16
20
  name: 'tuiCurrency',
17
21
  }]
18
22
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL3BpcGVzL2N1cnJlbmN5L2N1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLElBQUksRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFdkQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBRWpFLE1BSWEsZUFBZTtJQUNqQixTQUFTLENBQUMsUUFBNkI7UUFDMUMsT0FBTyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxDQUFDOytHQUhRLGVBQWU7NkdBQWYsZUFBZTs7U0FBZixlQUFlOzRGQUFmLGVBQWU7a0JBSjNCLElBQUk7bUJBQUM7b0JBQ0YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRSxhQUFhO2lCQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGlwZSwgdHlwZSBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHlwZSBUdWlDdXJyZW5jeVZhcmlhbnRzfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHt0dWlGb3JtYXRDdXJyZW5jeX0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3V0aWxzJztcblxuQFBpcGUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgbmFtZTogJ3R1aUN1cnJlbmN5Jyxcbn0pXG5leHBvcnQgY2xhc3MgVHVpQ3VycmVuY3lQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgcHVibGljIHRyYW5zZm9ybShjdXJyZW5jeTogVHVpQ3VycmVuY3lWYXJpYW50cyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0dWlGb3JtYXRDdXJyZW5jeShjdXJyZW5jeSk7XG4gICAgfVxufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL3BpcGVzL2N1cnJlbmN5L2N1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBRXJFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDOztBQUVqRSxNQUlhLGVBQWU7SUFKNUI7UUFLcUIsMEJBQXFCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0FLekU7SUFIVSxTQUFTLENBQUMsUUFBNkI7UUFDMUMsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0UsQ0FBQzsrR0FMUSxlQUFlOzZHQUFmLGVBQWU7O1NBQWYsZUFBZTs0RkFBZixlQUFlO2tCQUozQixJQUFJO21CQUFDO29CQUNGLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUUsYUFBYTtpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgUGlwZSwgdHlwZSBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VFVJX0NVUlJFTkNZX1NZTUJPTFN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90b2tlbnMnO1xuaW1wb3J0IHt0eXBlIFR1aUN1cnJlbmN5VmFyaWFudHN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90eXBlcyc7XG5pbXBvcnQge3R1aUZvcm1hdEN1cnJlbmN5fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdXRpbHMnO1xuXG5AUGlwZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBuYW1lOiAndHVpQ3VycmVuY3knLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlDdXJyZW5jeVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbmN5U3ltYm9sSGFuZGxlciA9IGluamVjdChUVUlfQ1VSUkVOQ1lfU1lNQk9MUyk7XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKGN1cnJlbmN5OiBUdWlDdXJyZW5jeVZhcmlhbnRzKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVuY3lTeW1ib2xIYW5kbGVyKGN1cnJlbmN5KSA/PyB0dWlGb3JtYXRDdXJyZW5jeShjdXJyZW5jeSk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { tuiGetCurrencySymbol } from '@taiga-ui/addon-commerce/utils';
3
+ export const TUI_CURRENCY_SYMBOLS = new InjectionToken(ngDevMode ? 'TUI_CURRENCY_SYMBOLS' : '', { factory: () => tuiGetCurrencySymbol });
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3ktc3ltYm9scy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWNvbW1lcmNlL3Rva2Vucy9jdXJyZW5jeS1zeW1ib2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0MsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFHcEUsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBRXBELFNBQVMsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsRUFBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dHlwZSBUdWlDdXJyZW5jeVZhcmlhbnRzfSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY29tbWVyY2UvdHlwZXMnO1xuaW1wb3J0IHt0dWlHZXRDdXJyZW5jeVN5bWJvbH0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNvbW1lcmNlL3V0aWxzJztcbmltcG9ydCB7dHlwZSBUdWlIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IFRVSV9DVVJSRU5DWV9TWU1CT0xTID0gbmV3IEluamVjdGlvblRva2VuPFxuICAgIFR1aUhhbmRsZXI8VHVpQ3VycmVuY3lWYXJpYW50cywgc3RyaW5nIHwgbnVsbD5cbj4obmdEZXZNb2RlID8gJ1RVSV9DVVJSRU5DWV9TWU1CT0xTJyA6ICcnLCB7ZmFjdG9yeTogKCkgPT4gdHVpR2V0Q3VycmVuY3lTeW1ib2x9KTtcbiJdfQ==
@@ -1,3 +1,4 @@
1
+ export * from './currency-symbols';
1
2
  export * from './i18n';
2
3
  export * from './payment-system-icons';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS90b2tlbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaTE4bic7XG5leHBvcnQgKiBmcm9tICcuL3BheW1lbnQtc3lzdGVtLWljb25zJztcbiJdfQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hZGRvbi1jb21tZXJjZS90b2tlbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jdXJyZW5jeS1zeW1ib2xzJztcbmV4cG9ydCAqIGZyb20gJy4vaTE4bic7XG5leHBvcnQgKiBmcm9tICcuL3BheW1lbnQtc3lzdGVtLWljb25zJztcbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, inject, Pipe } from '@angular/core';
3
3
  import { tuiProvideOptions } from '@taiga-ui/cdk/utils/miscellaneous';
4
+ import { TUI_CURRENCY_SYMBOLS } from '@taiga-ui/addon-commerce/tokens';
4
5
  import { tuiFormatCurrency } from '@taiga-ui/addon-commerce/utils';
5
6
  import { CHAR_MINUS, CHAR_PLUS, CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
6
7
  import { TUI_NUMBER_FORMAT } from '@taiga-ui/core/tokens';
@@ -33,11 +34,12 @@ const DEFAULT_PRECISION = 2;
33
34
  class TuiAmountPipe {
34
35
  constructor() {
35
36
  this.options = inject(TUI_AMOUNT_OPTIONS);
37
+ this.currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);
36
38
  this.format = inject(TUI_NUMBER_FORMAT);
37
39
  }
38
40
  transform(value, currency = this.options.currency, currencyAlign = this.options.currencyAlign) {
39
41
  return this.format.pipe(map((format) => {
40
- const currencySymbol = tuiFormatCurrency(currency);
42
+ const currencySymbol = this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);
41
43
  const formatted = tuiFormatNumber(Math.abs(value), {
42
44
  ...format,
43
45
  precision: Number.isNaN(format.precision)
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-pipes-amount.mjs","sources":["../../../projects/addon-commerce/pipes/amount/amount.options.ts","../../../projects/addon-commerce/pipes/amount/amount.utils.ts","../../../projects/addon-commerce/pipes/amount/amount.pipe.ts","../../../projects/addon-commerce/pipes/amount/taiga-ui-addon-commerce-pipes-amount.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\nimport {type TuiAmountSign} from './amount.types';\n\nexport interface TuiAmountOptions {\n readonly currency: TuiCurrencyVariants;\n readonly currencyAlign: TuiHorizontalDirection;\n readonly sign: TuiAmountSign;\n}\n\nexport const TUI_AMOUNT_DEFAULT_OPTIONS: TuiAmountOptions = {\n currency: null,\n currencyAlign: 'left',\n sign: 'negative-only',\n};\n\nexport const TUI_AMOUNT_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_AMOUNT_OPTIONS' : '',\n {\n factory: () => TUI_AMOUNT_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiAmountOptionsProvider(options: Partial<TuiAmountOptions>): Provider {\n return tuiProvideOptions(TUI_AMOUNT_OPTIONS, options, TUI_AMOUNT_DEFAULT_OPTIONS);\n}\n","import {CHAR_MINUS, CHAR_PLUS} from '@taiga-ui/cdk/constants';\n\nimport {type TuiAmountSign, type TuiAmountSignSymbol} from './amount.types';\n\nexport function tuiFormatSignSymbol(\n value: number,\n sign: TuiAmountSign,\n): TuiAmountSignSymbol {\n if (sign === 'never' || !value || (sign === 'negative-only' && value > 0)) {\n return '';\n }\n\n if (sign === 'force-negative' || (value < 0 && sign !== 'force-positive')) {\n return CHAR_MINUS;\n }\n\n return CHAR_PLUS;\n}\n","import {inject, Pipe, type PipeTransform} from '@angular/core';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiFormatCurrency} from '@taiga-ui/addon-commerce/utils';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {TUI_NUMBER_FORMAT} from '@taiga-ui/core/tokens';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\nimport {tuiFormatNumber} from '@taiga-ui/core/utils/format';\nimport {map, type Observable} from 'rxjs';\n\nimport {TUI_AMOUNT_OPTIONS} from './amount.options';\nimport {tuiFormatSignSymbol} from './amount.utils';\n\nconst DEFAULT_PRECISION = 2;\n\n@Pipe({standalone: true, name: 'tuiAmount'})\nexport class TuiAmountPipe implements PipeTransform {\n private readonly options = inject(TUI_AMOUNT_OPTIONS);\n private readonly format = inject(TUI_NUMBER_FORMAT);\n\n public transform(\n value: number,\n currency: TuiCurrencyVariants = this.options.currency,\n currencyAlign: TuiHorizontalDirection = this.options.currencyAlign,\n ): Observable<string> {\n return this.format.pipe(\n map((format) => {\n const currencySymbol = tuiFormatCurrency(currency);\n const formatted = tuiFormatNumber(Math.abs(value), {\n ...format,\n precision: Number.isNaN(format.precision)\n ? DEFAULT_PRECISION\n : format.precision,\n });\n const sign =\n formatted === '0'\n ? ''\n : tuiFormatSignSymbol(value, this.options.sign);\n const space =\n currencySymbol &&\n (currencySymbol?.length > 1 || currencyAlign === 'right')\n ? CHAR_NO_BREAK_SPACE\n : '';\n\n return currencyAlign === 'right'\n ? `${sign}${formatted}${space}${currencySymbol}`\n : `${sign}${currencySymbol}${space}${formatted}`;\n }),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-pipes-amount.mjs","sources":["../../../projects/addon-commerce/pipes/amount/amount.options.ts","../../../projects/addon-commerce/pipes/amount/amount.utils.ts","../../../projects/addon-commerce/pipes/amount/amount.pipe.ts","../../../projects/addon-commerce/pipes/amount/taiga-ui-addon-commerce-pipes-amount.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\nimport {type TuiAmountSign} from './amount.types';\n\nexport interface TuiAmountOptions {\n readonly currency: TuiCurrencyVariants;\n readonly currencyAlign: TuiHorizontalDirection;\n readonly sign: TuiAmountSign;\n}\n\nexport const TUI_AMOUNT_DEFAULT_OPTIONS: TuiAmountOptions = {\n currency: null,\n currencyAlign: 'left',\n sign: 'negative-only',\n};\n\nexport const TUI_AMOUNT_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_AMOUNT_OPTIONS' : '',\n {\n factory: () => TUI_AMOUNT_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiAmountOptionsProvider(options: Partial<TuiAmountOptions>): Provider {\n return tuiProvideOptions(TUI_AMOUNT_OPTIONS, options, TUI_AMOUNT_DEFAULT_OPTIONS);\n}\n","import {CHAR_MINUS, CHAR_PLUS} from '@taiga-ui/cdk/constants';\n\nimport {type TuiAmountSign, type TuiAmountSignSymbol} from './amount.types';\n\nexport function tuiFormatSignSymbol(\n value: number,\n sign: TuiAmountSign,\n): TuiAmountSignSymbol {\n if (sign === 'never' || !value || (sign === 'negative-only' && value > 0)) {\n return '';\n }\n\n if (sign === 'force-negative' || (value < 0 && sign !== 'force-positive')) {\n return CHAR_MINUS;\n }\n\n return CHAR_PLUS;\n}\n","import {inject, Pipe, type PipeTransform} from '@angular/core';\nimport {TUI_CURRENCY_SYMBOLS} from '@taiga-ui/addon-commerce/tokens';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiFormatCurrency} from '@taiga-ui/addon-commerce/utils';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {TUI_NUMBER_FORMAT} from '@taiga-ui/core/tokens';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\nimport {tuiFormatNumber} from '@taiga-ui/core/utils/format';\nimport {map, type Observable} from 'rxjs';\n\nimport {TUI_AMOUNT_OPTIONS} from './amount.options';\nimport {tuiFormatSignSymbol} from './amount.utils';\n\nconst DEFAULT_PRECISION = 2;\n\n@Pipe({standalone: true, name: 'tuiAmount'})\nexport class TuiAmountPipe implements PipeTransform {\n private readonly options = inject(TUI_AMOUNT_OPTIONS);\n private readonly currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);\n private readonly format = inject(TUI_NUMBER_FORMAT);\n\n public transform(\n value: number,\n currency: TuiCurrencyVariants = this.options.currency,\n currencyAlign: TuiHorizontalDirection = this.options.currencyAlign,\n ): Observable<string> {\n return this.format.pipe(\n map((format) => {\n const currencySymbol =\n this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);\n const formatted = tuiFormatNumber(Math.abs(value), {\n ...format,\n precision: Number.isNaN(format.precision)\n ? DEFAULT_PRECISION\n : format.precision,\n });\n const sign =\n formatted === '0'\n ? ''\n : tuiFormatSignSymbol(value, this.options.sign);\n const space =\n currencySymbol &&\n (currencySymbol?.length > 1 || currencyAlign === 'right')\n ? CHAR_NO_BREAK_SPACE\n : '';\n\n return currencyAlign === 'right'\n ? `${sign}${formatted}${space}${currencySymbol}`\n : `${sign}${currencySymbol}${space}${formatted}`;\n }),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Pipe } from '@angular/core';
2
+ import { inject, Pipe } from '@angular/core';
3
+ import { TUI_CURRENCY_SYMBOLS } from '@taiga-ui/addon-commerce/tokens';
3
4
  import { tuiFormatCurrency } from '@taiga-ui/addon-commerce/utils';
4
5
 
5
6
  class TuiCurrencyPipe {
7
+ constructor() {
8
+ this.currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);
9
+ }
6
10
  transform(currency) {
7
- return tuiFormatCurrency(currency);
11
+ return this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);
8
12
  }
9
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
10
14
  static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiCurrencyPipe, isStandalone: true, name: "tuiCurrency" }); }
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-pipes-currency.mjs","sources":["../../../projects/addon-commerce/pipes/currency/currency.pipe.ts","../../../projects/addon-commerce/pipes/currency/taiga-ui-addon-commerce-pipes-currency.ts"],"sourcesContent":["import {Pipe, type PipeTransform} from '@angular/core';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiFormatCurrency} from '@taiga-ui/addon-commerce/utils';\n\n@Pipe({\n standalone: true,\n name: 'tuiCurrency',\n})\nexport class TuiCurrencyPipe implements PipeTransform {\n public transform(currency: TuiCurrencyVariants): string {\n return tuiFormatCurrency(currency);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA,MAIa,eAAe,CAAA;AACjB,IAAA,SAAS,CAAC,QAA6B,EAAA;AAC1C,QAAA,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;KACtC;+GAHQ,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;6GAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,CAAA,EAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,aAAa;AACtB,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-pipes-currency.mjs","sources":["../../../projects/addon-commerce/pipes/currency/currency.pipe.ts","../../../projects/addon-commerce/pipes/currency/taiga-ui-addon-commerce-pipes-currency.ts"],"sourcesContent":["import {inject, Pipe, type PipeTransform} from '@angular/core';\nimport {TUI_CURRENCY_SYMBOLS} from '@taiga-ui/addon-commerce/tokens';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiFormatCurrency} from '@taiga-ui/addon-commerce/utils';\n\n@Pipe({\n standalone: true,\n name: 'tuiCurrency',\n})\nexport class TuiCurrencyPipe implements PipeTransform {\n private readonly currencySymbolHandler = inject(TUI_CURRENCY_SYMBOLS);\n\n public transform(currency: TuiCurrencyVariants): string {\n return this.currencySymbolHandler(currency) ?? tuiFormatCurrency(currency);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAKA,MAIa,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAKqB,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAKzE,KAAA;AAHU,IAAA,SAAS,CAAC,QAA6B,EAAA;QAC1C,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,CAAC;KAC9E;+GALQ,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;6GAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,CAAA,EAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,aAAa;AACtB,iBAAA,CAAA;;;ACRD;;AAEG;;;;"}
@@ -1,7 +1,10 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ import { tuiGetCurrencySymbol } from '@taiga-ui/addon-commerce/utils';
2
3
  import { tuiExtractI18n } from '@taiga-ui/i18n/utils';
3
4
  import { of } from 'rxjs';
4
5
 
6
+ const TUI_CURRENCY_SYMBOLS = new InjectionToken(ngDevMode ? 'TUI_CURRENCY_SYMBOLS' : '', { factory: () => tuiGetCurrencySymbol });
7
+
5
8
  /**
6
9
  * Number and card number i18n
7
10
  */
@@ -44,5 +47,5 @@ const TUI_PAYMENT_SYSTEM_ICONS = new InjectionToken(ngDevMode ? 'TUI_PAYMENT_SYS
44
47
  * Generated bundle index. Do not edit.
45
48
  */
46
49
 
47
- export { TUI_CARD_CVC_TEXTS, TUI_CARD_EXPIRY_TEXTS, TUI_CARD_NUMBER_TEXTS, TUI_PAYMENT_SYSTEM_ICONS };
50
+ export { TUI_CARD_CVC_TEXTS, TUI_CARD_EXPIRY_TEXTS, TUI_CARD_NUMBER_TEXTS, TUI_CURRENCY_SYMBOLS, TUI_PAYMENT_SYSTEM_ICONS };
48
51
  //# sourceMappingURL=taiga-ui-addon-commerce-tokens.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-addon-commerce-tokens.mjs","sources":["../../../projects/addon-commerce/tokens/i18n.ts","../../../projects/addon-commerce/tokens/payment-system-icons.ts","../../../projects/addon-commerce/tokens/taiga-ui-addon-commerce-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\nimport {type Observable, of} from 'rxjs';\n\n/**\n * Number and card number i18n\n */\nexport const TUI_CARD_NUMBER_TEXTS = new InjectionToken(\n ngDevMode ? 'TUI_CARD_NUMBER_TEXTS' : '',\n {\n factory: tuiExtractI18n('cardNumber'),\n },\n);\n\n/**\n * Expiry and card expiry i18n\n */\nexport const TUI_CARD_EXPIRY_TEXTS = new InjectionToken(\n ngDevMode ? 'TUI_CARD_EXPIRY_TEXTS' : '',\n {\n factory: tuiExtractI18n('cardExpiry'),\n },\n);\n\n/**\n * Card CVC number text [mobile, desktop]\n */\nexport const TUI_CARD_CVC_TEXTS = new InjectionToken<Observable<[string, string]>>(\n ngDevMode ? 'TUI_CARD_CVC_TEXTS' : '',\n {\n factory: () => of(['CVC', 'CVC/CVV']),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {type TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport const TUI_PAYMENT_SYSTEM_ICONS = new InjectionToken<\n Record<TuiPaymentSystem, string>\n>(ngDevMode ? 'TUI_PAYMENT_SYSTEM_ICONS' : '', {\n factory: () => ({\n mir: '@tui.mir',\n visa: '@tui.visa',\n electron: '@tui.electron',\n mastercard: '@tui.mastercard',\n maestro: '@tui.maestro',\n amex: '@tui.amex',\n dinersclub: '@tui.diners-club',\n discover: '@tui.discover',\n humo: '@tui.humo',\n jcb: '@tui.jcb',\n rupay: '@tui.ru-pay',\n unionpay: '@tui.union-pay',\n uzcard: '@tui.uzcard',\n verve: '@tui.verve',\n }),\n});\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA;;AAEG;AACU,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EACxC;AACI,IAAA,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC;AACxC,CAAA,EACH;AAEF;;AAEG;AACU,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EACxC;AACI,IAAA,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC;AACxC,CAAA,EACH;AAEF;;AAEG;AACU,MAAA,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;IACI,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACxC,CAAA;;AC5BQ,MAAA,wBAAwB,GAAG,IAAI,cAAc,CAExD,SAAS,GAAG,0BAA0B,GAAG,EAAE,EAAE;AAC3C,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,GAAG,EAAE,UAAU;AACf,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,UAAU,EAAE,iBAAiB;AAC7B,QAAA,OAAO,EAAE,cAAc;AACvB,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,UAAU,EAAE,kBAAkB;AAC9B,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,GAAG,EAAE,UAAU;AACf,QAAA,KAAK,EAAE,aAAa;AACpB,QAAA,QAAQ,EAAE,gBAAgB;AAC1B,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,KAAK,EAAE,YAAY;KACtB,CAAC;AACL,CAAA;;ACtBD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-addon-commerce-tokens.mjs","sources":["../../../projects/addon-commerce/tokens/currency-symbols.ts","../../../projects/addon-commerce/tokens/i18n.ts","../../../projects/addon-commerce/tokens/payment-system-icons.ts","../../../projects/addon-commerce/tokens/taiga-ui-addon-commerce-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\nimport {type TuiCurrencyVariants} from '@taiga-ui/addon-commerce/types';\nimport {tuiGetCurrencySymbol} from '@taiga-ui/addon-commerce/utils';\nimport {type TuiHandler} from '@taiga-ui/cdk/types';\n\nexport const TUI_CURRENCY_SYMBOLS = new InjectionToken<\n TuiHandler<TuiCurrencyVariants, string | null>\n>(ngDevMode ? 'TUI_CURRENCY_SYMBOLS' : '', {factory: () => tuiGetCurrencySymbol});\n","import {InjectionToken} from '@angular/core';\nimport {tuiExtractI18n} from '@taiga-ui/i18n/utils';\nimport {type Observable, of} from 'rxjs';\n\n/**\n * Number and card number i18n\n */\nexport const TUI_CARD_NUMBER_TEXTS = new InjectionToken(\n ngDevMode ? 'TUI_CARD_NUMBER_TEXTS' : '',\n {\n factory: tuiExtractI18n('cardNumber'),\n },\n);\n\n/**\n * Expiry and card expiry i18n\n */\nexport const TUI_CARD_EXPIRY_TEXTS = new InjectionToken(\n ngDevMode ? 'TUI_CARD_EXPIRY_TEXTS' : '',\n {\n factory: tuiExtractI18n('cardExpiry'),\n },\n);\n\n/**\n * Card CVC number text [mobile, desktop]\n */\nexport const TUI_CARD_CVC_TEXTS = new InjectionToken<Observable<[string, string]>>(\n ngDevMode ? 'TUI_CARD_CVC_TEXTS' : '',\n {\n factory: () => of(['CVC', 'CVC/CVV']),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {type TuiPaymentSystem} from '@taiga-ui/addon-commerce/types';\n\nexport const TUI_PAYMENT_SYSTEM_ICONS = new InjectionToken<\n Record<TuiPaymentSystem, string>\n>(ngDevMode ? 'TUI_PAYMENT_SYSTEM_ICONS' : '', {\n factory: () => ({\n mir: '@tui.mir',\n visa: '@tui.visa',\n electron: '@tui.electron',\n mastercard: '@tui.mastercard',\n maestro: '@tui.maestro',\n amex: '@tui.amex',\n dinersclub: '@tui.diners-club',\n discover: '@tui.discover',\n humo: '@tui.humo',\n jcb: '@tui.jcb',\n rupay: '@tui.ru-pay',\n unionpay: '@tui.union-pay',\n uzcard: '@tui.uzcard',\n verve: '@tui.verve',\n }),\n});\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAKa,MAAA,oBAAoB,GAAG,IAAI,cAAc,CAEpD,SAAS,GAAG,sBAAsB,GAAG,EAAE,EAAE,EAAC,OAAO,EAAE,MAAM,oBAAoB,EAAC;;ACHhF;;AAEG;AACU,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EACxC;AACI,IAAA,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC;AACxC,CAAA,EACH;AAEF;;AAEG;AACU,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EACxC;AACI,IAAA,OAAO,EAAE,cAAc,CAAC,YAAY,CAAC;AACxC,CAAA,EACH;AAEF;;AAEG;AACU,MAAA,kBAAkB,GAAG,IAAI,cAAc,CAChD,SAAS,GAAG,oBAAoB,GAAG,EAAE,EACrC;IACI,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACxC,CAAA;;AC5BQ,MAAA,wBAAwB,GAAG,IAAI,cAAc,CAExD,SAAS,GAAG,0BAA0B,GAAG,EAAE,EAAE;AAC3C,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,GAAG,EAAE,UAAU;AACf,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,UAAU,EAAE,iBAAiB;AAC7B,QAAA,OAAO,EAAE,cAAc;AACvB,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,UAAU,EAAE,kBAAkB;AAC9B,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,GAAG,EAAE,UAAU;AACf,QAAA,KAAK,EAAE,aAAa;AACpB,QAAA,QAAQ,EAAE,gBAAgB;AAC1B,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,KAAK,EAAE,YAAY;KACtB,CAAC;AACL,CAAA;;ACtBD;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/addon-commerce",
3
- "version": "4.100.0",
3
+ "version": "4.102.0",
4
4
  "description": "Extension package for Taiga UI related to commerce, payment systems, currencies etc.",
5
5
  "keywords": [
6
6
  "angular",
@@ -21,10 +21,10 @@
21
21
  "@maskito/core": "^3.11.1",
22
22
  "@maskito/kit": "^3.11.1",
23
23
  "@ng-web-apis/common": "^4.14.0",
24
- "@taiga-ui/cdk": "4.100.0",
25
- "@taiga-ui/core": "4.100.0",
26
- "@taiga-ui/i18n": "4.100.0",
27
- "@taiga-ui/kit": "4.100.0",
24
+ "@taiga-ui/cdk": "4.102.0",
25
+ "@taiga-ui/core": "4.102.0",
26
+ "@taiga-ui/i18n": "4.102.0",
27
+ "@taiga-ui/kit": "4.102.0",
28
28
  "@taiga-ui/polymorpheus": "^4.10.0",
29
29
  "rxjs": ">=7.0.0"
30
30
  },
@@ -46,6 +46,12 @@
46
46
  "esm": "./esm2022/components/taiga-ui-addon-commerce-components.mjs",
47
47
  "default": "./fesm2022/taiga-ui-addon-commerce-components.mjs"
48
48
  },
49
+ "./constants": {
50
+ "types": "./constants/index.d.ts",
51
+ "esm2022": "./esm2022/constants/taiga-ui-addon-commerce-constants.mjs",
52
+ "esm": "./esm2022/constants/taiga-ui-addon-commerce-constants.mjs",
53
+ "default": "./fesm2022/taiga-ui-addon-commerce-constants.mjs"
54
+ },
49
55
  "./pipes": {
50
56
  "types": "./pipes/index.d.ts",
51
57
  "esm2022": "./esm2022/pipes/taiga-ui-addon-commerce-pipes.mjs",
@@ -58,12 +64,6 @@
58
64
  "esm": "./esm2022/tokens/taiga-ui-addon-commerce-tokens.mjs",
59
65
  "default": "./fesm2022/taiga-ui-addon-commerce-tokens.mjs"
60
66
  },
61
- "./constants": {
62
- "types": "./constants/index.d.ts",
63
- "esm2022": "./esm2022/constants/taiga-ui-addon-commerce-constants.mjs",
64
- "esm": "./esm2022/constants/taiga-ui-addon-commerce-constants.mjs",
65
- "default": "./fesm2022/taiga-ui-addon-commerce-constants.mjs"
66
- },
67
67
  "./types": {
68
68
  "types": "./types/index.d.ts",
69
69
  "esm2022": "./esm2022/types/taiga-ui-addon-commerce-types.mjs",
@@ -106,35 +106,35 @@
106
106
  "esm": "./esm2022/components/input-expire/taiga-ui-addon-commerce-components-input-expire.mjs",
107
107
  "default": "./fesm2022/taiga-ui-addon-commerce-components-input-expire.mjs"
108
108
  },
109
- "./pipes/amount": {
110
- "types": "./pipes/amount/index.d.ts",
111
- "esm2022": "./esm2022/pipes/amount/taiga-ui-addon-commerce-pipes-amount.mjs",
112
- "esm": "./esm2022/pipes/amount/taiga-ui-addon-commerce-pipes-amount.mjs",
113
- "default": "./fesm2022/taiga-ui-addon-commerce-pipes-amount.mjs"
114
- },
115
109
  "./components/thumbnail-card": {
116
110
  "types": "./components/thumbnail-card/index.d.ts",
117
111
  "esm2022": "./esm2022/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.mjs",
118
112
  "esm": "./esm2022/components/thumbnail-card/taiga-ui-addon-commerce-components-thumbnail-card.mjs",
119
113
  "default": "./fesm2022/taiga-ui-addon-commerce-components-thumbnail-card.mjs"
120
114
  },
115
+ "./pipes/amount": {
116
+ "types": "./pipes/amount/index.d.ts",
117
+ "esm2022": "./esm2022/pipes/amount/taiga-ui-addon-commerce-pipes-amount.mjs",
118
+ "esm": "./esm2022/pipes/amount/taiga-ui-addon-commerce-pipes-amount.mjs",
119
+ "default": "./fesm2022/taiga-ui-addon-commerce-pipes-amount.mjs"
120
+ },
121
121
  "./pipes/currency": {
122
122
  "types": "./pipes/currency/index.d.ts",
123
123
  "esm2022": "./esm2022/pipes/currency/taiga-ui-addon-commerce-pipes-currency.mjs",
124
124
  "esm": "./esm2022/pipes/currency/taiga-ui-addon-commerce-pipes-currency.mjs",
125
125
  "default": "./fesm2022/taiga-ui-addon-commerce-pipes-currency.mjs"
126
126
  },
127
- "./pipes/format-card": {
128
- "types": "./pipes/format-card/index.d.ts",
129
- "esm2022": "./esm2022/pipes/format-card/taiga-ui-addon-commerce-pipes-format-card.mjs",
130
- "esm": "./esm2022/pipes/format-card/taiga-ui-addon-commerce-pipes-format-card.mjs",
131
- "default": "./fesm2022/taiga-ui-addon-commerce-pipes-format-card.mjs"
132
- },
133
127
  "./pipes/decimal": {
134
128
  "types": "./pipes/decimal/index.d.ts",
135
129
  "esm2022": "./esm2022/pipes/decimal/taiga-ui-addon-commerce-pipes-decimal.mjs",
136
130
  "esm": "./esm2022/pipes/decimal/taiga-ui-addon-commerce-pipes-decimal.mjs",
137
131
  "default": "./fesm2022/taiga-ui-addon-commerce-pipes-decimal.mjs"
132
+ },
133
+ "./pipes/format-card": {
134
+ "types": "./pipes/format-card/index.d.ts",
135
+ "esm2022": "./esm2022/pipes/format-card/taiga-ui-addon-commerce-pipes-format-card.mjs",
136
+ "esm": "./esm2022/pipes/format-card/taiga-ui-addon-commerce-pipes-format-card.mjs",
137
+ "default": "./fesm2022/taiga-ui-addon-commerce-pipes-format-card.mjs"
138
138
  }
139
139
  },
140
140
  "sideEffects": false,
@@ -5,6 +5,7 @@ import { type Observable } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class TuiAmountPipe implements PipeTransform {
7
7
  private readonly options;
8
+ private readonly currencySymbolHandler;
8
9
  private readonly format;
9
10
  transform(value: number, currency?: TuiCurrencyVariants, currencyAlign?: TuiHorizontalDirection): Observable<string>;
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiAmountPipe, never>;
@@ -2,6 +2,7 @@ import { type PipeTransform } from '@angular/core';
2
2
  import { type TuiCurrencyVariants } from '@taiga-ui/addon-commerce/types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class TuiCurrencyPipe implements PipeTransform {
5
+ private readonly currencySymbolHandler;
5
6
  transform(currency: TuiCurrencyVariants): string;
6
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiCurrencyPipe, never>;
7
8
  static ɵpipe: i0.ɵɵPipeDeclaration<TuiCurrencyPipe, "tuiCurrency", true>;
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { type TuiCurrencyVariants } from '@taiga-ui/addon-commerce/types';
3
+ import { type TuiHandler } from '@taiga-ui/cdk/types';
4
+ export declare const TUI_CURRENCY_SYMBOLS: InjectionToken<TuiHandler<TuiCurrencyVariants, string | null>>;
package/tokens/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
+ export * from './currency-symbols';
1
2
  export * from './i18n';
2
3
  export * from './payment-system-icons';