@taiga-ui/addon-commerce
Version:
Extension package for Taiga UI related to commerce, payment systems, currencies etc.
28 lines • 4.7 kB
JavaScript
import { inject, INJECTOR, Injector, Pipe } from '@angular/core';
import { TuiAmountPipe } from '@taiga-ui/addon-commerce/pipes/amount';
import { TUI_NUMBER_FORMAT } from '@taiga-ui/core/tokens';
import { map, switchMap } from 'rxjs';
import * as i0 from "@angular/core";
class TuiDecimalPipe {
constructor() {
this.format = inject(TUI_NUMBER_FORMAT);
this.amountPipe = Injector.create({
providers: [{ provide: TuiAmountPipe }],
parent: inject(INJECTOR),
}).get(TuiAmountPipe);
}
transform(value, currency = '') {
return this.format.pipe(switchMap((format) => this.amountPipe.transform(value, currency).pipe(map((value) => {
const [, decimal] = value.split(format.decimalSeparator);
return decimal ? `${format.decimalSeparator}${decimal}` : '';
}))));
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDecimalPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: TuiDecimalPipe, isStandalone: true, name: "tuiDecimal" }); }
}
export { TuiDecimalPipe };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDecimalPipe, decorators: [{
type: Pipe,
args: [{ standalone: true, name: 'tuiDecimal' }]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjaW1hbC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWRkb24tY29tbWVyY2UvcGlwZXMvZGVjaW1hbC9kZWNpbWFsLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBRXBFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQW1CLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7QUFFckQsTUFDYSxjQUFjO0lBRDNCO1FBRXFCLFdBQU0sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNuQyxlQUFVLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUMxQyxTQUFTLEVBQUUsQ0FBQyxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUMsQ0FBQztZQUNyQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQztTQUMzQixDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBa0J6QjtJQWhCVSxTQUFTLENBQ1osS0FBYSxFQUNiLFdBQWdDLEVBQUU7UUFFbEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDbkIsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDM0MsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDVixNQUFNLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBRXpELE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2pFLENBQUMsQ0FBQyxDQUNMLENBQ0osQ0FDSixDQUFDO0lBQ04sQ0FBQzsrR0F0QlEsY0FBYzs2R0FBZCxjQUFjOztTQUFkLGNBQWM7NEZBQWQsY0FBYztrQkFEMUIsSUFBSTttQkFBQyxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aW5qZWN0LCBJTkpFQ1RPUiwgSW5qZWN0b3IsIFBpcGUsIHR5cGUgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUFtb3VudFBpcGV9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS9waXBlcy9hbW91bnQnO1xuaW1wb3J0IHt0eXBlIFR1aUN1cnJlbmN5VmFyaWFudHN9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jb21tZXJjZS90eXBlcyc7XG5pbXBvcnQge1RVSV9OVU1CRVJfRk9STUFUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHttYXAsIHR5cGUgT2JzZXJ2YWJsZSwgc3dpdGNoTWFwfSBmcm9tICdyeGpzJztcblxuQFBpcGUoe3N0YW5kYWxvbmU6IHRydWUsIG5hbWU6ICd0dWlEZWNpbWFsJ30pXG5leHBvcnQgY2xhc3MgVHVpRGVjaW1hbFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1hdCA9IGluamVjdChUVUlfTlVNQkVSX0ZPUk1BVCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBhbW91bnRQaXBlID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgICAgcHJvdmlkZXJzOiBbe3Byb3ZpZGU6IFR1aUFtb3VudFBpcGV9XSxcbiAgICAgICAgcGFyZW50OiBpbmplY3QoSU5KRUNUT1IpLFxuICAgIH0pLmdldChUdWlBbW91bnRQaXBlKTtcblxuICAgIHB1YmxpYyB0cmFuc2Zvcm0oXG4gICAgICAgIHZhbHVlOiBudW1iZXIsXG4gICAgICAgIGN1cnJlbmN5OiBUdWlDdXJyZW5jeVZhcmlhbnRzID0gJycsXG4gICAgKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0LnBpcGUoXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKGZvcm1hdCkgPT5cbiAgICAgICAgICAgICAgICB0aGlzLmFtb3VudFBpcGUudHJhbnNmb3JtKHZhbHVlLCBjdXJyZW5jeSkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgWywgZGVjaW1hbF0gPSB2YWx1ZS5zcGxpdChmb3JtYXQuZGVjaW1hbFNlcGFyYXRvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBkZWNpbWFsID8gYCR7Zm9ybWF0LmRlY2ltYWxTZXBhcmF0b3J9JHtkZWNpbWFsfWAgOiAnJztcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgfVxufVxuIl19