trm-tmpl 3.3.3 → 3.4.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.
- package/esm2022/lib/app/pages/components/constructor-form/components/constructor-preparation/constructor-preparation.component.mjs +4 -5
- package/esm2022/lib/app/pages/components/constructor-form/components/method-amount-hint/method-amount-hint.component.mjs +5 -6
- package/esm2022/lib/app/pipes/index.mjs +1 -3
- package/esm2022/lib/app/shared/components/constructor-status/constructor-status.component.mjs +3 -3
- package/esm2022/lib/app/shared/components/index.mjs +2 -1
- package/esm2022/lib/app/shared/components/trm-amount/trm-amount.component.mjs +50 -0
- package/esm2022/lib/app/shared/shared.module.mjs +1 -5
- package/fesm2022/trm-tmpl.mjs +57 -68
- package/fesm2022/trm-tmpl.mjs.map +1 -1
- package/lib/app/pipes/index.d.ts +0 -2
- package/lib/app/shared/components/index.d.ts +1 -0
- package/lib/app/shared/components/trm-amount/trm-amount.component.d.ts +19 -0
- package/lib/app/shared/shared.module.d.ts +4 -5
- package/package.json +4 -5
- package/esm2022/lib/app/pipes/currency.pipe.mjs +0 -40
- package/esm2022/lib/app/pipes/html-sanitizer.pipe.mjs +0 -21
- package/lib/app/pipes/currency.pipe.d.ts +0 -9
- package/lib/app/pipes/html-sanitizer.pipe.d.ts +0 -9
package/lib/app/pipes/index.d.ts
CHANGED
|
@@ -4,3 +4,4 @@ export * from './terminal-layout-tpl/terminal-layout-tpl.component';
|
|
|
4
4
|
export * from './trm-select/trm-select.component';
|
|
5
5
|
export * from './trm-select/scrollbar-select-height.directive';
|
|
6
6
|
export * from './trm-select/trm-select-label-template.directive';
|
|
7
|
+
export * from './trm-amount/trm-amount.component';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
export declare class TrmAmountComponent {
|
|
3
|
+
private currencyPipe;
|
|
4
|
+
private _thousandSeparator;
|
|
5
|
+
private _format;
|
|
6
|
+
separator: string;
|
|
7
|
+
value: import("@angular/core").InputSignal<string | number>;
|
|
8
|
+
code: import("@angular/core").InputSignal<string>;
|
|
9
|
+
symbol: import("@angular/core").Signal<string>;
|
|
10
|
+
symbolWide: import("@angular/core").Signal<string>;
|
|
11
|
+
private _amount;
|
|
12
|
+
resultSymbol: import("@angular/core").Signal<string>;
|
|
13
|
+
amountSplitted: import("@angular/core").Signal<{
|
|
14
|
+
int: string;
|
|
15
|
+
fract: string;
|
|
16
|
+
}>;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TrmAmountComponent, never>;
|
|
18
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TrmAmountComponent, "trm-amount", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "code": { "alias": "code"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
19
|
+
}
|
|
@@ -8,12 +8,11 @@ import * as i6 from "./components/terminal-lang-switcher/terminal-lang-switcher.
|
|
|
8
8
|
import * as i7 from "./components/constructor-status/constructor-status.component";
|
|
9
9
|
import * as i8 from "./components/trm-select/trm-select.component";
|
|
10
10
|
import * as i9 from "./components/trm-select/scrollbar-select-height.directive";
|
|
11
|
-
import * as i10 from "./pipes/
|
|
12
|
-
import * as i11 from "./
|
|
13
|
-
import * as i12 from "./
|
|
14
|
-
import * as i13 from "./components/trm-select/trm-select-label-template.directive";
|
|
11
|
+
import * as i10 from "./pipes/translate-by-key.pipe";
|
|
12
|
+
import * as i11 from "./directives/ng-var.directive";
|
|
13
|
+
import * as i12 from "./components/trm-select/trm-select-label-template.directive";
|
|
15
14
|
export declare class SharedModule {
|
|
16
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<SharedModule, never>;
|
|
17
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, never, [typeof i1.CommonModule, typeof i2.NgScrollbar, typeof i3.TranslateModule, typeof i4.FormsModule, typeof i4.ReactiveFormsModule, typeof i5.TerminalLayoutTplComponent, typeof i6.TerminalLangSwitcherComponent, typeof i7.ConstructorStatusComponent, typeof i8.TrmSelectComponent, typeof i9.ScrollbarSelectHeightDirective, typeof i10.
|
|
16
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, never, [typeof i1.CommonModule, typeof i2.NgScrollbar, typeof i3.TranslateModule, typeof i4.FormsModule, typeof i4.ReactiveFormsModule, typeof i5.TerminalLayoutTplComponent, typeof i6.TerminalLangSwitcherComponent, typeof i7.ConstructorStatusComponent, typeof i8.TrmSelectComponent, typeof i9.ScrollbarSelectHeightDirective, typeof i10.TranslateByKeyPipe, typeof i11.NgVarDirective, typeof i12.TrmSelectLabelTemplateDirective], [typeof i5.TerminalLayoutTplComponent, typeof i6.TerminalLangSwitcherComponent, typeof i7.ConstructorStatusComponent, typeof i8.TrmSelectComponent, typeof i9.ScrollbarSelectHeightDirective, typeof i10.TranslateByKeyPipe, typeof i11.NgVarDirective, typeof i12.TrmSelectLabelTemplateDirective]>;
|
|
18
17
|
static ɵinj: i0.ɵɵInjectorDeclaration<SharedModule>;
|
|
19
18
|
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "trm-tmpl",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "
|
|
6
|
-
"@angular/core": "
|
|
5
|
+
"@angular/common": ">= 16.0.0",
|
|
6
|
+
"@angular/core": ">= 16.0.0",
|
|
7
7
|
"@gmmoney/gm-ui-kit": "^3.0.0",
|
|
8
|
-
"ngx-scrollbar": "
|
|
9
|
-
"rxjs": "^7.4.0"
|
|
8
|
+
"ngx-scrollbar": ">=15.1.3"
|
|
10
9
|
},
|
|
11
10
|
"dependencies": {
|
|
12
11
|
"tslib": "^2.3.0"
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { inject, Pipe } from '@angular/core';
|
|
2
|
-
import { CurrencyPipe, getCurrencySymbol } from '@angular/common';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TrmCurrencyPipe {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.currency$ = inject(CurrencyPipe);
|
|
7
|
-
}
|
|
8
|
-
transform(value, code) {
|
|
9
|
-
const symbol = getCurrencySymbol(code, 'narrow', 'en');
|
|
10
|
-
const symbolWide = getCurrencySymbol(code, 'wide', 'en');
|
|
11
|
-
const thousandSeparator = ' ';
|
|
12
|
-
const separator = '.';
|
|
13
|
-
const format = '1.2-8';
|
|
14
|
-
const amount = this.currency$
|
|
15
|
-
.transform(value, code, 'symbol-narrow', format, 'en')
|
|
16
|
-
.replace(/,/g, thousandSeparator)
|
|
17
|
-
.replace(symbol, '')
|
|
18
|
-
.trim();
|
|
19
|
-
const resultSymbol = symbol === '$' ? symbolWide : symbol;
|
|
20
|
-
const [int, fract] = amount.split('.');
|
|
21
|
-
return '<span class="trm-amount">' +
|
|
22
|
-
'<span class="trm-amount__value">' +
|
|
23
|
-
`<span class="trm-amount__int">${int}</span>` +
|
|
24
|
-
(fract ? `<span class="trm-amount__fract">${separator + fract}</span>` : '') +
|
|
25
|
-
'</span>' +
|
|
26
|
-
`<span class="trm-currency">${resultSymbol}</span>` +
|
|
27
|
-
'</span>';
|
|
28
|
-
}
|
|
29
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TrmCurrencyPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
30
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: TrmCurrencyPipe, isStandalone: true, name: "trm_currency" }); }
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: TrmCurrencyPipe, decorators: [{
|
|
33
|
-
type: Pipe,
|
|
34
|
-
args: [{
|
|
35
|
-
name: 'trm_currency',
|
|
36
|
-
pure: true,
|
|
37
|
-
standalone: true
|
|
38
|
-
}]
|
|
39
|
-
}], ctorParameters: () => [] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY3kucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rlcm1pbmFsLXRlbXBsYXRlL3NyYy9saWIvYXBwL3BpcGVzL2N1cnJlbmN5LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFPbEUsTUFBTSxPQUFPLGVBQWU7SUFHeEI7UUFGUSxjQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBR3pDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBc0IsRUFBRSxJQUFZO1FBQzFDLE1BQU0sTUFBTSxHQUFHLGlCQUFpQixDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkQsTUFBTSxVQUFVLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RCxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQztRQUM5QixNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUM7UUFDdEIsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTO2FBQ3hCLFNBQVMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDO2FBQ3JELE9BQU8sQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLENBQUM7YUFDaEMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7YUFDbkIsSUFBSSxFQUFFLENBQUM7UUFDWixNQUFNLFlBQVksR0FBRyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUMxRCxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsT0FBTywyQkFBMkI7WUFDdEIsa0NBQWtDO1lBQzlCLGlDQUFpQyxHQUFHLFNBQVM7WUFDN0MsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLG1DQUFtQyxTQUFTLEdBQUcsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNoRixTQUFTO1lBQ1QsOEJBQThCLFlBQVksU0FBUztZQUN4RCxTQUFTLENBQUM7SUFDckIsQ0FBQzs4R0ExQlEsZUFBZTs0R0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUwzQixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxjQUFjO29CQUNwQixJQUFJLEVBQUUsSUFBSTtvQkFDVixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEN1cnJlbmN5UGlwZSwgZ2V0Q3VycmVuY3lTeW1ib2wgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3RybV9jdXJyZW5jeScsXG4gICAgcHVyZTogdHJ1ZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFRybUN1cnJlbmN5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHByaXZhdGUgY3VycmVuY3kkID0gaW5qZWN0KEN1cnJlbmN5UGlwZSk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICB9XG5cbiAgICB0cmFuc2Zvcm0odmFsdWU6IG51bWJlciB8IHN0cmluZywgY29kZTogc3RyaW5nKTogYW55IHtcbiAgICAgICAgY29uc3Qgc3ltYm9sID0gZ2V0Q3VycmVuY3lTeW1ib2woY29kZSwgJ25hcnJvdycsICdlbicpO1xuICAgICAgICBjb25zdCBzeW1ib2xXaWRlID0gZ2V0Q3VycmVuY3lTeW1ib2woY29kZSwgJ3dpZGUnLCAnZW4nKTtcbiAgICAgICAgY29uc3QgdGhvdXNhbmRTZXBhcmF0b3IgPSAnICc7XG4gICAgICAgIGNvbnN0IHNlcGFyYXRvciA9ICcuJztcbiAgICAgICAgY29uc3QgZm9ybWF0ID0gJzEuMi04JztcbiAgICAgICAgY29uc3QgYW1vdW50ID0gdGhpcy5jdXJyZW5jeSRcbiAgICAgICAgICAgIC50cmFuc2Zvcm0odmFsdWUsIGNvZGUsICdzeW1ib2wtbmFycm93JywgZm9ybWF0LCAnZW4nKVxuICAgICAgICAgICAgLnJlcGxhY2UoLywvZywgdGhvdXNhbmRTZXBhcmF0b3IpXG4gICAgICAgICAgICAucmVwbGFjZShzeW1ib2wsICcnKVxuICAgICAgICAgICAgLnRyaW0oKTtcbiAgICAgICAgY29uc3QgcmVzdWx0U3ltYm9sID0gc3ltYm9sID09PSAnJCcgPyBzeW1ib2xXaWRlIDogc3ltYm9sO1xuICAgICAgICBjb25zdCBbaW50LCBmcmFjdF0gPSBhbW91bnQuc3BsaXQoJy4nKTtcbiAgICAgICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cInRybS1hbW91bnRcIj4nICtcbiAgICAgICAgICAgICAgICAgICAgJzxzcGFuIGNsYXNzPVwidHJtLWFtb3VudF9fdmFsdWVcIj4nICtcbiAgICAgICAgICAgICAgICAgICAgICAgIGA8c3BhbiBjbGFzcz1cInRybS1hbW91bnRfX2ludFwiPiR7aW50fTwvc3Bhbj5gICtcbiAgICAgICAgICAgICAgICAgICAgICAgIChmcmFjdCA/IGA8c3BhbiBjbGFzcz1cInRybS1hbW91bnRfX2ZyYWN0XCI+JHtzZXBhcmF0b3IgKyBmcmFjdH08L3NwYW4+YCA6ICcnKSArXG4gICAgICAgICAgICAgICAgICAgICc8L3NwYW4+JyArXG4gICAgICAgICAgICAgICAgICAgIGA8c3BhbiBjbGFzcz1cInRybS1jdXJyZW5jeVwiPiR7cmVzdWx0U3ltYm9sfTwvc3Bhbj5gICtcbiAgICAgICAgICAgICAgICc8L3NwYW4+JztcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { inject, Pipe, SecurityContext } from '@angular/core';
|
|
2
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class HtmlSanitizerPipe {
|
|
5
|
-
constructor() {
|
|
6
|
-
this._sanitizer = inject(DomSanitizer);
|
|
7
|
-
}
|
|
8
|
-
transform(value) {
|
|
9
|
-
return this._sanitizer.sanitize(SecurityContext.HTML, value);
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: HtmlSanitizerPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
12
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: HtmlSanitizerPipe, isStandalone: true, name: "sanitizeHtml" }); }
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: HtmlSanitizerPipe, decorators: [{
|
|
15
|
-
type: Pipe,
|
|
16
|
-
args: [{
|
|
17
|
-
name: 'sanitizeHtml',
|
|
18
|
-
standalone: true
|
|
19
|
-
}]
|
|
20
|
-
}], ctorParameters: () => [] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1zYW5pdGl6ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rlcm1pbmFsLXRlbXBsYXRlL3NyYy9saWIvYXBwL3BpcGVzL2h0bWwtc2FuaXRpemVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTXpELE1BQU0sT0FBTyxpQkFBaUI7SUFHN0I7UUFGUSxlQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRzFDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs4R0FSVyxpQkFBaUI7NEdBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFKN0IsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsY0FBYztvQkFDcEIsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBTZWN1cml0eUNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AUGlwZSh7XG4gICAgbmFtZTogJ3Nhbml0aXplSHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBIdG1sU2FuaXRpemVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXHRwcml2YXRlIF9zYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0fVxuXG5cdHRyYW5zZm9ybSh2YWx1ZTogYW55KTogYW55IHtcblx0XHRyZXR1cm4gdGhpcy5fc2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCB2YWx1ZSk7XG5cdH1cblxufVxuIl19
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class TrmCurrencyPipe implements PipeTransform {
|
|
4
|
-
private currency$;
|
|
5
|
-
constructor();
|
|
6
|
-
transform(value: number | string, code: string): any;
|
|
7
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TrmCurrencyPipe, never>;
|
|
8
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<TrmCurrencyPipe, "trm_currency", true>;
|
|
9
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class HtmlSanitizerPipe implements PipeTransform {
|
|
4
|
-
private _sanitizer;
|
|
5
|
-
constructor();
|
|
6
|
-
transform(value: any): any;
|
|
7
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<HtmlSanitizerPipe, never>;
|
|
8
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<HtmlSanitizerPipe, "sanitizeHtml", true>;
|
|
9
|
-
}
|