mis-crystal-design-system 18.0.15 → 18.0.16-test-1
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/radio-button/radio-button.component.mjs +102 -23
- package/esm2022/table/actions-cell/actions-cell.component.mjs +284 -0
- package/esm2022/table/public_api.mjs +2 -1
- package/esm2022/table/table.component.mjs +195 -109
- package/esm2022/table/table.module.mjs +17 -5
- package/esm2022/toast/public_api.mjs +3 -1
- package/esm2022/toast/toast.component.mjs +73 -16
- package/esm2022/toast/toast.constants.mjs +7 -0
- package/esm2022/toast/toast.data.service.mjs +1 -1
- package/esm2022/toast/toast.interface.mjs +2 -0
- package/esm2022/toast/toast.service.mjs +14 -7
- package/fesm2022/mis-crystal-design-system-radio-button.mjs +101 -22
- package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-table.mjs +845 -465
- package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-toast.mjs +93 -22
- package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -1
- package/package.json +7 -7
- package/radio-button/radio-button.component.d.ts +18 -17
- package/styles/mis-old-icon-styles.scss +498 -498
- package/table/actions-cell/actions-cell.component.d.ts +32 -0
- package/table/public_api.d.ts +1 -0
- package/table/table.component.d.ts +37 -10
- package/table/table.module.d.ts +5 -4
- package/toast/public_api.d.ts +2 -0
- package/toast/toast.component.d.ts +13 -1
- package/toast/toast.constants.d.ts +5 -0
- package/toast/toast.data.service.d.ts +3 -2
- package/toast/toast.interface.d.ts +6 -0
- package/toast/toast.service.d.ts +2 -1
|
@@ -7,7 +7,10 @@ import { TableFilterComponent } from "./filter/filter.component";
|
|
|
7
7
|
import { CheckboxModule } from "mis-crystal-design-system/checkbox";
|
|
8
8
|
import { ScrollingModule } from "@angular/cdk/scrolling";
|
|
9
9
|
import { SortIconsDirective } from "./sort-icons.directive";
|
|
10
|
+
import { ActionsCellComponent } from "./actions-cell/actions-cell.component";
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/common";
|
|
13
|
+
import * as i2 from "mis-crystal-design-system/checkbox";
|
|
11
14
|
export class TableModule {
|
|
12
15
|
static forRoot() {
|
|
13
16
|
return { ngModule: TableModule, providers: [] };
|
|
@@ -24,7 +27,8 @@ export class TableModule {
|
|
|
24
27
|
SubTableComponent,
|
|
25
28
|
TableFilterComponent,
|
|
26
29
|
CustomTableCellDirective,
|
|
27
|
-
SortIconsDirective
|
|
30
|
+
SortIconsDirective,
|
|
31
|
+
ActionsCellComponent
|
|
28
32
|
],
|
|
29
33
|
imports: [CommonModule, CheckboxModule, ScrollingModule],
|
|
30
34
|
exports: [
|
|
@@ -32,7 +36,8 @@ export class TableModule {
|
|
|
32
36
|
SubTableComponent,
|
|
33
37
|
TableFilterComponent,
|
|
34
38
|
CustomTableCellDirective,
|
|
35
|
-
SortIconsDirective
|
|
39
|
+
SortIconsDirective,
|
|
40
|
+
ActionsCellComponent
|
|
36
41
|
]
|
|
37
42
|
}]
|
|
38
43
|
}], null, null); })();
|
|
@@ -40,9 +45,16 @@ export class TableModule {
|
|
|
40
45
|
SubTableComponent,
|
|
41
46
|
TableFilterComponent,
|
|
42
47
|
CustomTableCellDirective,
|
|
43
|
-
SortIconsDirective
|
|
48
|
+
SortIconsDirective,
|
|
49
|
+
ActionsCellComponent], imports: [CommonModule, CheckboxModule, ScrollingModule], exports: [TableComponent,
|
|
44
50
|
SubTableComponent,
|
|
45
51
|
TableFilterComponent,
|
|
46
52
|
CustomTableCellDirective,
|
|
47
|
-
SortIconsDirective
|
|
48
|
-
|
|
53
|
+
SortIconsDirective,
|
|
54
|
+
ActionsCellComponent] }); })();
|
|
55
|
+
i0.ɵɵsetComponentScope(TableComponent, [i1.NgClass, i1.NgForOf, i1.NgIf, i1.NgStyle, i2.CheckboxComponent, SubTableComponent,
|
|
56
|
+
TableFilterComponent,
|
|
57
|
+
CustomTableCellDirective,
|
|
58
|
+
SortIconsDirective,
|
|
59
|
+
ActionsCellComponent], []);
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdGFibGUvdGFibGUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7OztBQXFCN0UsTUFBTSxPQUFPLFdBQVc7SUFDdEIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDbEQsQ0FBQzs0R0FIVSxXQUFXO21FQUFYLFdBQVc7dUVBVlosWUFBWSxFQUFFLGNBQWMsRUFBRSxlQUFlOztpRkFVNUMsV0FBVztjQW5CdkIsUUFBUTtlQUFDO2dCQUNSLFlBQVksRUFBRTtvQkFDWixjQUFjO29CQUNkLGlCQUFpQjtvQkFDakIsb0JBQW9CO29CQUNwQix3QkFBd0I7b0JBQ3hCLGtCQUFrQjtvQkFDbEIsb0JBQW9CO2lCQUNyQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQztnQkFDeEQsT0FBTyxFQUFFO29CQUNQLGNBQWM7b0JBQ2QsaUJBQWlCO29CQUNqQixvQkFBb0I7b0JBQ3BCLHdCQUF3QjtvQkFDeEIsa0JBQWtCO29CQUNsQixvQkFBb0I7aUJBQ3JCO2FBQ0Y7O3dGQUNZLFdBQVcsbUJBakJwQixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIsa0JBQWtCO1FBQ2xCLG9CQUFvQixhQUVaLFlBQVksRUFBRSxjQUFjLEVBQUUsZUFBZSxhQUVyRCxjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIsa0JBQWtCO1FBQ2xCLG9CQUFvQjt1QkFkcEIsY0FBYyxzRUFDZCxpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLHdCQUF3QjtJQUN4QixrQkFBa0I7SUFDbEIsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tIFwiLi90YWJsZS5jb21wb25lbnRcIjtcbmltcG9ydCB7IEN1c3RvbVRhYmxlQ2VsbERpcmVjdGl2ZSB9IGZyb20gXCIuL2N1c3RvbS10YWJsZS1jZWxsLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgU3ViVGFibGVDb21wb25lbnQgfSBmcm9tIFwiLi9zdWItdGFibGUvc3ViLXRhYmxlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgVGFibGVGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgQ2hlY2tib3hNb2R1bGUgfSBmcm9tIFwibWlzLWNyeXN0YWwtZGVzaWduLXN5c3RlbS9jaGVja2JveFwiO1xuaW1wb3J0IHsgU2Nyb2xsaW5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9zY3JvbGxpbmdcIjtcbmltcG9ydCB7IFNvcnRJY29uc0RpcmVjdGl2ZSB9IGZyb20gXCIuL3NvcnQtaWNvbnMuZGlyZWN0aXZlXCI7XG5pbXBvcnQgeyBBY3Rpb25zQ2VsbENvbXBvbmVudCB9IGZyb20gXCIuL2FjdGlvbnMtY2VsbC9hY3Rpb25zLWNlbGwuY29tcG9uZW50XCI7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRhYmxlQ29tcG9uZW50LCBcbiAgICBTdWJUYWJsZUNvbXBvbmVudCwgXG4gICAgVGFibGVGaWx0ZXJDb21wb25lbnQsIFxuICAgIEN1c3RvbVRhYmxlQ2VsbERpcmVjdGl2ZSxcbiAgICBTb3J0SWNvbnNEaXJlY3RpdmUsXG4gICAgQWN0aW9uc0NlbGxDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgQ2hlY2tib3hNb2R1bGUsIFNjcm9sbGluZ01vZHVsZV0sXG4gIGV4cG9ydHM6IFtcbiAgICBUYWJsZUNvbXBvbmVudCwgXG4gICAgU3ViVGFibGVDb21wb25lbnQsIFxuICAgIFRhYmxlRmlsdGVyQ29tcG9uZW50LCBcbiAgICBDdXN0b21UYWJsZUNlbGxEaXJlY3RpdmUsXG4gICAgU29ydEljb25zRGlyZWN0aXZlLFxuICAgIEFjdGlvbnNDZWxsQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFRhYmxlTW9kdWxlPiB7XG4gICAgcmV0dXJuIHsgbmdNb2R1bGU6IFRhYmxlTW9kdWxlLCBwcm92aWRlcnM6IFtdIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -2,4 +2,6 @@ export * from "./toast.service";
|
|
|
2
2
|
export * from "./toast.module";
|
|
3
3
|
export * from "./toast.data.service";
|
|
4
4
|
export { ToastComponent } from "./toast.component";
|
|
5
|
-
|
|
5
|
+
export * from "./toast.interface";
|
|
6
|
+
export * from "./toast.constants";
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3RvYXN0L3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3RvYXN0LnNlcnZpY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3RvYXN0Lm1vZHVsZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdG9hc3QuZGF0YS5zZXJ2aWNlXCI7XG5leHBvcnQgeyBUb2FzdENvbXBvbmVudCB9IGZyb20gXCIuL3RvYXN0LmNvbXBvbmVudFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vdG9hc3QuaW50ZXJmYWNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90b2FzdC5jb25zdGFudHNcIjtcbiJdfQ==
|
|
@@ -2,36 +2,91 @@ import { animate, style, transition, trigger } from "@angular/animations";
|
|
|
2
2
|
import { Component } from "@angular/core";
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "./toast.data.service";
|
|
5
|
-
import * as i2 from "@angular/
|
|
5
|
+
import * as i2 from "@angular/platform-browser";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
function ToastComponent_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
8
|
+
i0.ɵɵelement(0, "div", 5);
|
|
9
|
+
} if (rf & 2) {
|
|
10
|
+
const toast_r1 = i0.ɵɵnextContext().$implicit;
|
|
11
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
12
|
+
i0.ɵɵproperty("innerHTML", ctx_r1.getStateIcon(toast_r1 == null ? null : toast_r1.state), i0.ɵɵsanitizeHtml);
|
|
13
|
+
} }
|
|
6
14
|
function ToastComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
7
|
-
i0.ɵɵelementStart(0, "div")(1, "div", 2)
|
|
8
|
-
i0.ɵɵ
|
|
15
|
+
i0.ɵɵelementStart(0, "div")(1, "div", 2);
|
|
16
|
+
i0.ɵɵtemplate(2, ToastComponent_div_1_div_2_Template, 1, 1, "div", 3);
|
|
17
|
+
i0.ɵɵelementStart(3, "div", 4);
|
|
18
|
+
i0.ɵɵtext(4);
|
|
9
19
|
i0.ɵɵelementEnd()()();
|
|
10
20
|
} if (rf & 2) {
|
|
11
|
-
const
|
|
21
|
+
const toast_r1 = ctx.$implicit;
|
|
22
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
12
23
|
i0.ɵɵproperty("@fadeInOut", undefined);
|
|
13
|
-
i0.ɵɵadvance(
|
|
14
|
-
i0.ɵɵ
|
|
24
|
+
i0.ɵɵadvance();
|
|
25
|
+
i0.ɵɵproperty("ngClass", toast_r1 == null ? null : toast_r1.state);
|
|
26
|
+
i0.ɵɵadvance();
|
|
27
|
+
i0.ɵɵproperty("ngIf", toast_r1 == null ? null : toast_r1.state);
|
|
28
|
+
i0.ɵɵadvance(2);
|
|
29
|
+
i0.ɵɵtextInterpolate(ctx_r1.getMessage(toast_r1));
|
|
15
30
|
} }
|
|
16
31
|
export class ToastComponent {
|
|
17
|
-
constructor(data) {
|
|
32
|
+
constructor(data, sanitizer) {
|
|
18
33
|
this.data = data;
|
|
34
|
+
this.sanitizer = sanitizer;
|
|
35
|
+
console.log("Data:", data);
|
|
36
|
+
}
|
|
37
|
+
getMessage(toast) {
|
|
38
|
+
return typeof toast === "string" ? toast : toast.text;
|
|
39
|
+
}
|
|
40
|
+
shouldShowIcon(toast) {
|
|
41
|
+
return !this.isStringToast(toast) && !!toast.state;
|
|
19
42
|
}
|
|
20
|
-
|
|
21
|
-
|
|
43
|
+
getStateIcon(state) {
|
|
44
|
+
if (!state)
|
|
45
|
+
return "";
|
|
46
|
+
const icons = {
|
|
47
|
+
success: `
|
|
48
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
49
|
+
<circle cx="10" cy="10" r="10" fill="#4CAF50"/>
|
|
50
|
+
<path d="M8.6 13.4L5.2 10L4 11.2L8.6 15.8L16.6 7.8L15.4 6.6L8.6 13.4Z" fill="white"/>
|
|
51
|
+
</svg>
|
|
52
|
+
`,
|
|
53
|
+
warning: `
|
|
54
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
55
|
+
<path d="M10 0L20 17.3205H0L10 0Z" fill="#FF9800"/>
|
|
56
|
+
<path d="M9 6H11V12H9V6Z" fill="white"/>
|
|
57
|
+
<path d="M9 13H11V15H9V13Z" fill="white"/>
|
|
58
|
+
</svg>
|
|
59
|
+
`,
|
|
60
|
+
error: `
|
|
61
|
+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
62
|
+
<circle cx="10" cy="10" r="10" fill="#D32F2F"/>
|
|
63
|
+
<path d="M9 5H11V11H9V5Z" fill="white"/>
|
|
64
|
+
<path d="M9 13H11V15H9V13Z" fill="white"/>
|
|
65
|
+
</svg>
|
|
66
|
+
`
|
|
67
|
+
};
|
|
68
|
+
return this.sanitizer.bypassSecurityTrustHtml(icons[state] || "");
|
|
69
|
+
}
|
|
70
|
+
isStringToast(toast) {
|
|
71
|
+
return typeof toast === "string";
|
|
72
|
+
}
|
|
73
|
+
static { this.ɵfac = function ToastComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastComponent)(i0.ɵɵdirectiveInject(i1.ToastDataService), i0.ɵɵdirectiveInject(i2.DomSanitizer)); }; }
|
|
74
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastComponent, selectors: [["mis-teams-toast"]], decls: 2, vars: 1, consts: [[1, "toast-container"], [4, "ngFor", "ngForOf"], [1, "toast-wrapper", 3, "ngClass"], ["class", "icon", 3, "innerHTML", 4, "ngIf"], [1, "msg"], [1, "icon", 3, "innerHTML"]], template: function ToastComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22
75
|
i0.ɵɵelementStart(0, "div", 0);
|
|
23
|
-
i0.ɵɵtemplate(1, ToastComponent_div_1_Template,
|
|
76
|
+
i0.ɵɵtemplate(1, ToastComponent_div_1_Template, 5, 4, "div", 1);
|
|
24
77
|
i0.ɵɵelementEnd();
|
|
25
78
|
} if (rf & 2) {
|
|
26
79
|
i0.ɵɵadvance();
|
|
27
80
|
i0.ɵɵproperty("ngForOf", ctx.data.messages);
|
|
28
|
-
} }, dependencies: [
|
|
81
|
+
} }, dependencies: [i3.NgClass, i3.NgForOf, i3.NgIf], styles: [".toast-container[_ngcontent-%COMP%]{transition:max-height .3s ease-in}.toast-container[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{position:relative;display:flex;justify-content:center}.toast-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;gap:16px;padding:14px 12px;background:#181f33;box-shadow:0 12px 17px #00000024,0 5px 22px #0000001f,0 7px 8px #0003;border-radius:4px;transition:all .3s ease-in;min-height:44px;transform-origin:top}.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{color:#fff;max-width:314px;flex:1 1 314px;font-size:14px;line-height:20px;letter-spacing:.2px}@media screen and (max-width: 360px){.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{max-width:90vw;flex:1 1 90vw}}.toast-wrapper[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}"], data: { animation: [
|
|
29
82
|
trigger("fadeInOut", [
|
|
30
83
|
transition(":enter", [
|
|
31
84
|
style({ opacity: "0", transform: "translateY(-50%)", height: "0" }),
|
|
32
85
|
animate("300ms ease-in", style({ opacity: "1", transform: "translateY(0)", height: "*" }))
|
|
33
86
|
]),
|
|
34
|
-
transition(":leave", [
|
|
87
|
+
transition(":leave", [
|
|
88
|
+
animate("300ms ease-in", style({ opacity: "0", transform: "translateY(50%)" }))
|
|
89
|
+
])
|
|
35
90
|
])
|
|
36
91
|
] } }); }
|
|
37
92
|
}
|
|
@@ -43,9 +98,11 @@ export class ToastComponent {
|
|
|
43
98
|
style({ opacity: "0", transform: "translateY(-50%)", height: "0" }),
|
|
44
99
|
animate("300ms ease-in", style({ opacity: "1", transform: "translateY(0)", height: "*" }))
|
|
45
100
|
]),
|
|
46
|
-
transition(":leave", [
|
|
101
|
+
transition(":leave", [
|
|
102
|
+
animate("300ms ease-in", style({ opacity: "0", transform: "translateY(50%)" }))
|
|
103
|
+
])
|
|
47
104
|
])
|
|
48
|
-
], template: "<div class=\"toast-container\">\n <div *ngFor=\"let
|
|
49
|
-
}], () => [{ type: i1.ToastDataService }], null); })();
|
|
105
|
+
], template: "<div class=\"toast-container\">\n <div *ngFor=\"let toast of data.messages\" @fadeInOut>\n <div class=\"toast-wrapper\" [ngClass]=\"toast?.state\">\n <div class=\"icon\" *ngIf=\"toast?.state\" [innerHTML]=\"getStateIcon(toast?.state)\"></div>\n <div class=\"msg\">{{ getMessage(toast) }}</div>\n </div>\n </div>\n</div>\n", styles: [".toast-container{transition:max-height .3s ease-in}.toast-container>div{position:relative;display:flex;justify-content:center}.toast-wrapper{display:flex;flex-direction:row;align-items:center;gap:16px;padding:14px 12px;background:#181f33;box-shadow:0 12px 17px #00000024,0 5px 22px #0000001f,0 7px 8px #0003;border-radius:4px;transition:all .3s ease-in;min-height:44px;transform-origin:top}.toast-wrapper .msg{color:#fff;max-width:314px;flex:1 1 314px;font-size:14px;line-height:20px;letter-spacing:.2px}@media screen and (max-width: 360px){.toast-wrapper .msg{max-width:90vw;flex:1 1 90vw}}.toast-wrapper .icon{display:flex;justify-content:center;align-items:center}\n"] }]
|
|
106
|
+
}], () => [{ type: i1.ToastDataService }, { type: i2.DomSanitizer }], null); })();
|
|
50
107
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastComponent, { className: "ToastComponent" }); })();
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ0VwQyx5QkFBc0Y7Ozs7SUFBL0MsNEdBQXdDOzs7SUFEakYsQUFERiwyQkFBb0QsYUFDRTtJQUNsRCxxRUFBZ0Y7SUFDaEYsOEJBQWlCO0lBQUEsWUFBdUI7SUFFNUMsQUFERSxBQUQwQyxpQkFBTSxFQUMxQyxFQUNGOzs7O0lBTG1DLHNDQUFVO0lBQ3RCLGNBQXdCO0lBQXhCLGtFQUF3QjtJQUM5QixjQUFrQjtJQUFsQiwrREFBa0I7SUFDcEIsZUFBdUI7SUFBdkIsaURBQXVCOztBRG9COUMsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFDUyxJQUFzQixFQUNyQixTQUF1QjtRQUR4QixTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRS9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBWTtRQUNyQixPQUFPLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFFRCxjQUFjLENBQUMsS0FBWTtRQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztJQUNyRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWtCO1FBQzdCLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFdEIsTUFBTSxLQUFLLEdBQStCO1lBQ3hDLE9BQU8sRUFBRTs7Ozs7T0FLUjtZQUNELE9BQU8sRUFBRTs7Ozs7O09BTVI7WUFDRCxLQUFLLEVBQUU7Ozs7OztPQU1OO1NBQ0YsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFZO1FBQ2hDLE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxDQUFDO0lBQ25DLENBQUM7K0dBL0NVLGNBQWM7b0VBQWQsY0FBYztZQ3hCM0IsOEJBQTZCO1lBQzNCLCtEQUFvRDtZQU10RCxpQkFBTTs7WUFObUIsY0FBZ0I7WUFBaEIsMkNBQWdCO2c4QkRXM0I7Z0JBQ1YsT0FBTyxDQUFDLFdBQVcsRUFBRTtvQkFDbkIsVUFBVSxDQUFDLFFBQVEsRUFBRTt3QkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDO3dCQUNuRSxPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztxQkFDM0YsQ0FBQztvQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO3dCQUNuQixPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztxQkFDaEYsQ0FBQztpQkFDSCxDQUFDO2FBQ0g7O2lGQUVVLGNBQWM7Y0FoQjFCLFNBQVM7MkJBQ0UsaUJBQWlCLGNBR2Y7b0JBQ1YsT0FBTyxDQUFDLFdBQVcsRUFBRTt3QkFDbkIsVUFBVSxDQUFDLFFBQVEsRUFBRTs0QkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDOzRCQUNuRSxPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQzt5QkFDM0YsQ0FBQzt3QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFOzRCQUNuQixPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQzt5QkFDaEYsQ0FBQztxQkFDSCxDQUFDO2lCQUNIOztrRkFFVSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tIFwiQGFuZ3VsYXIvYW5pbWF0aW9uc1wiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xuaW1wb3J0IHsgVG9hc3REYXRhU2VydmljZSB9IGZyb20gXCIuL3RvYXN0LmRhdGEuc2VydmljZVwiO1xuaW1wb3J0IHsgVG9hc3RTdGF0ZSB9IGZyb20gXCIuL3RvYXN0LmludGVyZmFjZVwiO1xuXG50eXBlIFRvYXN0ID0gc3RyaW5nIHwgeyB0ZXh0OiBzdHJpbmc7IHN0YXRlPzogVG9hc3RTdGF0ZSB9O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWlzLXRlYW1zLXRvYXN0XCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vdG9hc3QuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3RvYXN0LmNvbXBvbmVudC5zY3NzXCJdLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcihcImZhZGVJbk91dFwiLCBbXG4gICAgICB0cmFuc2l0aW9uKFwiOmVudGVyXCIsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiBcIjBcIiwgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZVkoLTUwJSlcIiwgaGVpZ2h0OiBcIjBcIiB9KSxcbiAgICAgICAgYW5pbWF0ZShcIjMwMG1zIGVhc2UtaW5cIiwgc3R5bGUoeyBvcGFjaXR5OiBcIjFcIiwgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZVkoMClcIiwgaGVpZ2h0OiBcIipcIiB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbihcIjpsZWF2ZVwiLCBbXG4gICAgICAgIGFuaW1hdGUoXCIzMDBtcyBlYXNlLWluXCIsIHN0eWxlKHsgb3BhY2l0eTogXCIwXCIsIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGVZKDUwJSlcIiB9KSlcbiAgICAgIF0pXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBkYXRhOiBUb2FzdERhdGFTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXJcbiAgKSB7XG4gICAgY29uc29sZS5sb2coXCJEYXRhOlwiLGRhdGEpO1xuICB9XG5cbiAgZ2V0TWVzc2FnZSh0b2FzdDogVG9hc3QpOiBzdHJpbmcge1xuICAgIHJldHVybiB0eXBlb2YgdG9hc3QgPT09IFwic3RyaW5nXCIgPyB0b2FzdCA6IHRvYXN0LnRleHQ7XG4gIH1cblxuICBzaG91bGRTaG93SWNvbih0b2FzdDogVG9hc3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaXNTdHJpbmdUb2FzdCh0b2FzdCkgJiYgISF0b2FzdC5zdGF0ZTtcbiAgfVxuXG4gIGdldFN0YXRlSWNvbihzdGF0ZT86IFRvYXN0U3RhdGUpOiBTYWZlSHRtbCB7XG4gICAgaWYgKCFzdGF0ZSkgcmV0dXJuIFwiXCI7XG5cbiAgICBjb25zdCBpY29uczogUmVjb3JkPFRvYXN0U3RhdGUsIHN0cmluZz4gPSB7XG4gICAgICBzdWNjZXNzOiBgXG4gICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgIDxjaXJjbGUgY3g9XCIxMFwiIGN5PVwiMTBcIiByPVwiMTBcIiBmaWxsPVwiIzRDQUY1MFwiLz5cbiAgICAgICAgICA8cGF0aCBkPVwiTTguNiAxMy40TDUuMiAxMEw0IDExLjJMOC42IDE1LjhMMTYuNiA3LjhMMTUuNCA2LjZMOC42IDEzLjRaXCIgZmlsbD1cIndoaXRlXCIvPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIGAsXG4gICAgICB3YXJuaW5nOiBgXG4gICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgIDxwYXRoIGQ9XCJNMTAgMEwyMCAxNy4zMjA1SDBMMTAgMFpcIiBmaWxsPVwiI0ZGOTgwMFwiLz5cbiAgICAgICAgICA8cGF0aCBkPVwiTTkgNkgxMVYxMkg5VjZaXCIgZmlsbD1cIndoaXRlXCIvPlxuICAgICAgICAgIDxwYXRoIGQ9XCJNOSAxM0gxMVYxNUg5VjEzWlwiIGZpbGw9XCJ3aGl0ZVwiLz5cbiAgICAgICAgPC9zdmc+XG4gICAgICBgLFxuICAgICAgZXJyb3I6IGBcbiAgICAgICAgPHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgPGNpcmNsZSBjeD1cIjEwXCIgY3k9XCIxMFwiIHI9XCIxMFwiIGZpbGw9XCIjRDMyRjJGXCIvPlxuICAgICAgICAgIDxwYXRoIGQ9XCJNOSA1SDExVjExSDlWNVpcIiBmaWxsPVwid2hpdGVcIi8+XG4gICAgICAgICAgPHBhdGggZD1cIk05IDEzSDExVjE1SDlWMTNaXCIgZmlsbD1cIndoaXRlXCIvPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIGBcbiAgICB9O1xuXG4gICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGljb25zW3N0YXRlXSB8fCBcIlwiKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTdHJpbmdUb2FzdCh0b2FzdDogVG9hc3QpOiB0b2FzdCBpcyBzdHJpbmcge1xuICAgIHJldHVybiB0eXBlb2YgdG9hc3QgPT09IFwic3RyaW5nXCI7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0b2FzdC1jb250YWluZXJcIj5cbiAgPGRpdiAqbmdGb3I9XCJsZXQgdG9hc3Qgb2YgZGF0YS5tZXNzYWdlc1wiIEBmYWRlSW5PdXQ+XG4gICAgPGRpdiBjbGFzcz1cInRvYXN0LXdyYXBwZXJcIiBbbmdDbGFzc109XCJ0b2FzdD8uc3RhdGVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpY29uXCIgKm5nSWY9XCJ0b2FzdD8uc3RhdGVcIiBbaW5uZXJIVE1MXT1cImdldFN0YXRlSWNvbih0b2FzdD8uc3RhdGUpXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwibXNnXCI+e3sgZ2V0TWVzc2FnZSh0b2FzdCkgfX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// toast.constants.ts
|
|
2
|
+
export const TOAST_STATES = {
|
|
3
|
+
SUCCESS: 'success',
|
|
4
|
+
WARNING: 'warning',
|
|
5
|
+
ERROR: 'error',
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFCQUFxQjtBQUNyQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsS0FBSyxFQUFFLE9BQU87Q0FDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdG9hc3QuY29uc3RhbnRzLnRzXG5leHBvcnQgY29uc3QgVE9BU1RfU1RBVEVTID0ge1xuICBTVUNDRVNTOiAnc3VjY2VzcycsXG4gIFdBUk5JTkc6ICd3YXJuaW5nJyxcbiAgRVJST1I6ICdlcnJvcicsXG59IGFzIGNvbnN0O1xuIl19
|
|
@@ -27,4 +27,4 @@ export class ToastDataService {
|
|
|
27
27
|
providedIn: "root"
|
|
28
28
|
}]
|
|
29
29
|
}], () => [], null); })();
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdG9hc3QvdG9hc3QuZGF0YS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFHM0IsSUFBSSxRQUFRO1FBQ1YsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7UUFOUSxlQUFVLEdBQXVDLElBQUksR0FBRyxFQUFFLENBQUM7SUFNcEQsQ0FBQztJQUVoQixhQUFhLENBQUMsR0FBMEI7UUFDdEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDN0IsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsYUFBYSxDQUFDLEVBQVU7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNsQyxDQUFDO2lIQXJCVSxnQkFBZ0I7dUVBQWhCLGdCQUFnQixXQUFoQixnQkFBZ0IsbUJBRmYsTUFBTTs7aUZBRVAsZ0JBQWdCO2NBSDVCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVG9hc3RNZXNzYWdlIH0gZnJvbSBcIi4vdG9hc3QuaW50ZXJmYWNlXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCJcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3REYXRhU2VydmljZSB7XG4gIHByaXZhdGUgbWVzc2FnZU1hcDogTWFwPG51bWJlciwgVG9hc3RNZXNzYWdlIHwgc3RyaW5nPiA9IG5ldyBNYXAoKTtcbiAgXG4gIGdldCBtZXNzYWdlcygpOiAoVG9hc3RNZXNzYWdlIHwgc3RyaW5nKVtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLm1lc3NhZ2VNYXAudmFsdWVzKCkpLnJldmVyc2UoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICB1cGRhdGVNZXNzYWdlKG1zZzogVG9hc3RNZXNzYWdlIHwgc3RyaW5nKTogbnVtYmVyIHtcbiAgICBjb25zdCBpZCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgIHRoaXMubWVzc2FnZU1hcC5zZXQoaWQsIG1zZyk7XG4gICAgcmV0dXJuIGlkO1xuICB9XG5cbiAgcmVtb3ZlTWVzc2FnZShpZDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlTWFwLmRlbGV0ZShpZCk7XG4gIH1cblxuICBoYXNNZXNzYWdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1lc3NhZ2VNYXAuc2l6ZSA+IDA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWlzLWNvbXBvbmVudHMvdG9hc3QvdG9hc3QuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBUb2FzdFN0YXRlID0gJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2Vycm9yJztcblxuZXhwb3J0IGludGVyZmFjZSBUb2FzdE1lc3NhZ2Uge1xuICB0ZXh0OiBzdHJpbmc7XG4gIHN0YXRlPzogVG9hc3RTdGF0ZTtcbiAgdGltZW91dD86IG51bWJlcjtcbn0gIl19
|
|
@@ -43,7 +43,17 @@ export class ToastService {
|
|
|
43
43
|
};
|
|
44
44
|
this.userProfilePortal = new ComponentPortal(ToastComponent);
|
|
45
45
|
}
|
|
46
|
-
displayMsg(
|
|
46
|
+
displayMsg(message, timeout = 3000, state) {
|
|
47
|
+
let finalMessage;
|
|
48
|
+
// Handle different parameter combinations
|
|
49
|
+
if (state) {
|
|
50
|
+
// New format with state
|
|
51
|
+
finalMessage = { text: message, state };
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// Basic format: just message
|
|
55
|
+
finalMessage = message;
|
|
56
|
+
}
|
|
47
57
|
const positionStrategy = this.overlay.position().global().centerHorizontally();
|
|
48
58
|
if (window?.innerWidth < 600) {
|
|
49
59
|
positionStrategy.bottom("48px");
|
|
@@ -59,24 +69,21 @@ export class ToastService {
|
|
|
59
69
|
this.toastWrapperRef = this.overlay.create(config);
|
|
60
70
|
this.toastWrapperRef.attach(this.userProfilePortal);
|
|
61
71
|
}
|
|
62
|
-
const messageId = this.data.updateMessage(
|
|
63
|
-
this.messagePromises.push(new Promise((resolve
|
|
72
|
+
const messageId = this.data.updateMessage(finalMessage);
|
|
73
|
+
this.messagePromises.push(new Promise((resolve) => {
|
|
64
74
|
setTimeout(() => {
|
|
65
75
|
resolve(this.data.removeMessage(messageId));
|
|
66
76
|
if (!this.data.hasMessage()) {
|
|
67
77
|
this.closeToastOverlay();
|
|
68
78
|
}
|
|
69
|
-
// adding 300ms for entry animation
|
|
70
79
|
}, timeout + 300);
|
|
71
80
|
}));
|
|
72
81
|
Promise.race(this.messagePromises).then(() => { });
|
|
73
82
|
}
|
|
74
|
-
// tslint:disable-next-line
|
|
75
83
|
closeToastOverlay() {
|
|
76
84
|
return setTimeout(() => {
|
|
77
85
|
this.messagePromises = [];
|
|
78
86
|
this.toastWrapperRef?.detach();
|
|
79
|
-
// adding 300ms for exit animation
|
|
80
87
|
}, 300);
|
|
81
88
|
}
|
|
82
89
|
static { this.ɵfac = function ToastService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastService)(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(i2.ToastDataService)); }; }
|
|
@@ -88,4 +95,4 @@ export class ToastService {
|
|
|
88
95
|
providedIn: "root"
|
|
89
96
|
}]
|
|
90
97
|
}], () => [{ type: i1.Overlay }, { type: i2.ToastDataService }], null); })();
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3RvYXN0L3RvYXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFXLGFBQWEsRUFBYyxNQUFNLHNCQUFzQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQVNuRCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUFvQixPQUFnQixFQUFVLElBQXNCO1FBQWhELFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFrQjtRQUk1RCxvQkFBZSxHQUFvQixFQUFFLENBQUM7UUFHOUMsbUJBQWMsR0FBRztZQUNmLEtBQUssRUFBRTtnQkFDTCxNQUFNLEVBQUUsK0NBQStDO2dCQUN2RCxHQUFHLEVBQUUsMENBQTBDO2dCQUMvQyxHQUFHLEVBQUUsY0FBYztnQkFDbkIsR0FBRyxFQUFFLHFHQUFxRztnQkFDMUcsR0FBRyxFQUFFLGlEQUFpRDthQUN2RDtZQUNELElBQUksRUFBRSxDQUFDLElBQVksRUFBRSxFQUFFO2dCQUNyQixPQUFPO29CQUNMLE1BQU0sRUFBRSxDQUFDLE1BQWtCLFNBQVMsRUFBRSxFQUFFO3dCQUN0QyxNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsR0FBRyxJQUFJLElBQUksR0FBRyxDQUFDO3dCQUMvQyxNQUFNLE9BQU8sR0FBRyxhQUFhLEdBQUcsSUFBSSxJQUFJLEdBQUcsQ0FBQzt3QkFDNUMsT0FBTzs0QkFDTCxPQUFPOzRCQUNQLE9BQU87eUJBQ1IsQ0FBQztvQkFDSixDQUFDO2lCQUNGLENBQUM7WUFDSixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMs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QUFaLFlBQVksV0FBWixZQUFZLG1CQUZYLE1BQU07O2lGQUVQLFlBQVk7Y0FIeEIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZywgT3ZlcmxheVJlZiB9IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgVG9hc3RDb21wb25lbnQgfSBmcm9tIFwiLi90b2FzdC5jb21wb25lbnRcIjtcbmltcG9ydCB7IFRvYXN0RGF0YVNlcnZpY2UgfSBmcm9tIFwiLi90b2FzdC5kYXRhLnNlcnZpY2VcIjtcbmltcG9ydCB7IFRvYXN0U3RhdGUgfSBmcm9tIFwiLi90b2FzdC5pbnRlcmZhY2VcIjtcblxudHlwZSBPcGVyYXRpb25zID0gXCJjcmVhdGVkXCIgfCBcInVwZGF0ZWRcIiB8IFwiZGVsZXRlZFwiIHwgXCJjcmVhdGVcIiB8IFwidXBkYXRlXCIgfCBcImRlbGV0ZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46IFwicm9vdFwiXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0U2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSwgcHJpdmF0ZSBkYXRhOiBUb2FzdERhdGFTZXJ2aWNlKSB7XG4gICAgdGhpcy51c2VyUHJvZmlsZVBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoVG9hc3RDb21wb25lbnQpO1xuICB9XG4gIHByaXZhdGUgdG9hc3RXcmFwcGVyUmVmOiBPdmVybGF5UmVmO1xuICBwcml2YXRlIG1lc3NhZ2VQcm9taXNlczogUHJvbWlzZTx2b2lkPltdID0gW107XG4gIHByaXZhdGUgdXNlclByb2ZpbGVQb3J0YWw6IENvbXBvbmVudFBvcnRhbDxUb2FzdENvbXBvbmVudD47XG5cbiAgbWVzc2FnZUJ1aWxkZXIgPSB7XG4gICAgZXJyb3I6IHtcbiAgICAgIHNpbXBsZTogXCJTb21ldGhpbmcgd2VudCB3cm9uZy4gUGxlYXNlIHRyeSBhZ2FpbiBsYXRlci5cIixcbiAgICAgIDQwMDogXCJCYWQgUmVxdWVzdCEgV2UgYXJlIHdvcmtpbmcgdG8gZml4IHRoaXMuXCIsXG4gICAgICA0MDE6IFwiVU5BVVRIT1JJU0VEXCIsXG4gICAgICA0MDM6IFwiU29ycnkgZm9yIHRoZSBpbnRlcnJ1cHRpb24gYnV0IHNlZW1zIGxpa2UgeW91ciBzZXNzaW9uIGhhcyBleHBpcmVkLiBQbGVhc2UgbG9naW4gYWdhaW4gYW5kIGNvbnRpbnVlXCIsXG4gICAgICA0MDQ6IFwiVW5hYmxlIHRvIGZpbmQgcmVzb3VyY2UuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXJcIlxuICAgIH0sXG4gICAgaXRlbTogKGl0ZW06IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYWN0aW9uOiAoYWN0OiBPcGVyYXRpb25zID0gXCJ1cGRhdGVkXCIpID0+IHtcbiAgICAgICAgICBjb25zdCBzdWNjZXNzID0gYFN1Y2Nlc3NmdWxseSAke2FjdH0gJHtpdGVtfS5gO1xuICAgICAgICAgIGNvbnN0IGZhaWx1cmUgPSBgRmFpbGVkIHRvICR7YWN0fSAke2l0ZW19LmA7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHN1Y2Nlc3MsXG4gICAgICAgICAgICBmYWlsdXJlXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICB9LFxuICAgIHNob3J0OiAoYWN0OiBPcGVyYXRpb25zID0gXCJ1cGRhdGVkXCIpID0+IHtcbiAgICAgIGNvbnN0IHN1Y2Nlc3MgPSBgU3VjY2Vzc2Z1bGx5ICR7YWN0fS5gO1xuICAgICAgY29uc3QgZmFpbHVyZSA9IGBGYWlsZWQgdG8gJHthY3R9LmA7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdWNjZXNzLFxuICAgICAgICBmYWlsdXJlXG4gICAgICB9O1xuICAgIH0sXG4gICAgc2ltcGxlOiAoLi4uYXJnczogc3RyaW5nW10pID0+IGFyZ3Muam9pbihcIiBcIiksXG4gICAgc2ltcGxlc3Q6IFwiRG9uZSFcIlxuICB9O1xuXG4gIGRpc3BsYXlNc2cobWVzc2FnZTogc3RyaW5nLCB0aW1lb3V0ID0gMzAwMCwgc3RhdGU/OiBUb2FzdFN0YXRlKTogdm9pZCB7XG4gICAgbGV0IGZpbmFsTWVzc2FnZTogc3RyaW5nIHwgeyB0ZXh0OiBzdHJpbmc7IHN0YXRlPzogVG9hc3RTdGF0ZSB9O1xuICAgIFxuICAgIC8vIEhhbmRsZSBkaWZmZXJlbnQgcGFyYW1ldGVyIGNvbWJpbmF0aW9uc1xuICAgIGlmIChzdGF0ZSkge1xuICAgICAgLy8gTmV3IGZvcm1hdCB3aXRoIHN0YXRlXG4gICAgICBmaW5hbE1lc3NhZ2UgPSB7IHRleHQ6IG1lc3NhZ2UsIHN0YXRlIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEJhc2ljIGZvcm1hdDoganVzdCBtZXNzYWdlXG4gICAgICBmaW5hbE1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIH1cblxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcblxuICAgIGlmICh3aW5kb3c/LmlubmVyV2lkdGggPCA2MDApIHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3kuYm90dG9tKFwiNDhweFwiKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcG9zaXRpb25TdHJhdGVneS50b3AoXCI4MHB4XCIpO1xuICAgIH1cbiAgICBcbiAgICBjb25zdCBjb25maWcgPSBuZXcgT3ZlcmxheUNvbmZpZyh7XG4gICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5XG4gICAgfSk7XG5cbiAgICBpZiAoIXRoaXMudG9hc3RXcmFwcGVyUmVmPy5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICB0aGlzLnRvYXN0V3JhcHBlclJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICAgIHRoaXMudG9hc3RXcmFwcGVyUmVmLmF0dGFjaCh0aGlzLnVzZXJQcm9maWxlUG9ydGFsKTtcbiAgICB9XG5cbiAgICBjb25zdCBtZXNzYWdlSWQgPSB0aGlzLmRhdGEudXBkYXRlTWVzc2FnZShmaW5hbE1lc3NhZ2UpO1xuICAgIHRoaXMubWVzc2FnZVByb21pc2VzLnB1c2goXG4gICAgICBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICByZXNvbHZlKHRoaXMuZGF0YS5yZW1vdmVNZXNzYWdlKG1lc3NhZ2VJZCkpO1xuICAgICAgICAgIGlmICghdGhpcy5kYXRhLmhhc01lc3NhZ2UoKSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVRvYXN0T3ZlcmxheSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSwgdGltZW91dCArIDMwMCk7XG4gICAgICB9KVxuICAgICk7XG4gICAgUHJvbWlzZS5yYWNlKHRoaXMubWVzc2FnZVByb21pc2VzKS50aGVuKCgpID0+IHt9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VUb2FzdE92ZXJsYXkoKTogYW55IHtcbiAgICByZXR1cm4gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLm1lc3NhZ2VQcm9taXNlcyA9IFtdO1xuICAgICAgdGhpcy50b2FzdFdyYXBwZXJSZWY/LmRldGFjaCgpO1xuICAgIH0sIDMwMCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,47 +1,126 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Input, Output, NgModule } from '@angular/core';
|
|
2
|
+
import { EventEmitter, forwardRef, Component, Input, Output, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/forms';
|
|
4
|
-
import { UntypedFormControl, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { AbstractControl, UntypedFormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';
|
|
5
5
|
import { CommonModule } from '@angular/common';
|
|
6
6
|
|
|
7
7
|
class RadioButtonComponent {
|
|
8
|
+
set disabled(value) {
|
|
9
|
+
if (this._disabled !== value) {
|
|
10
|
+
this._disabled = value;
|
|
11
|
+
if (this._formControl && this._formControl.disabled !== value) {
|
|
12
|
+
if (value) {
|
|
13
|
+
this._formControl.disable({ emitEvent: false });
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
this._formControl.enable({ emitEvent: false });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
get disabled() {
|
|
22
|
+
return this._formControl ? this._formControl.disabled : this._disabled;
|
|
23
|
+
}
|
|
24
|
+
set formControl(control) {
|
|
25
|
+
if (control instanceof AbstractControl) {
|
|
26
|
+
this._formControl = control;
|
|
27
|
+
if (control.value !== null && control.value !== undefined) {
|
|
28
|
+
this._value = control.value;
|
|
29
|
+
}
|
|
30
|
+
if (this._disabled !== undefined && this._disabled !== control.disabled) {
|
|
31
|
+
if (this._disabled) {
|
|
32
|
+
control.disable({ emitEvent: false });
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
control.enable({ emitEvent: false });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this._formControl = new UntypedFormControl(control);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
get formControl() {
|
|
44
|
+
return this._formControl;
|
|
45
|
+
}
|
|
8
46
|
constructor() {
|
|
9
|
-
/** When multiple radio input fields are used
|
|
10
|
-
* an "id" can be given to keep track of them */
|
|
11
47
|
this.id = "";
|
|
12
|
-
/** Name of the attribute for which the radio
|
|
13
|
-
* selection is provided */
|
|
14
48
|
this.name = "";
|
|
15
|
-
/** Value of the attribute which is to be emitted
|
|
16
|
-
* when selected */
|
|
17
49
|
this.value = "";
|
|
18
|
-
|
|
19
|
-
this.disabled = false;
|
|
20
|
-
/** Can be used to attach the radio input field
|
|
21
|
-
* to a reactive form by passing in a
|
|
22
|
-
* “FormControl“ Object. It can also be
|
|
23
|
-
* used to set the default attribute value */
|
|
24
|
-
this.formControl = new UntypedFormControl(null);
|
|
25
|
-
/** Emits "value" of the radio button on selection */
|
|
50
|
+
this._formControl = new UntypedFormControl(null);
|
|
26
51
|
this.valueChange = new EventEmitter();
|
|
52
|
+
// ControlValueAccessor properties
|
|
53
|
+
this._value = null;
|
|
54
|
+
this._disabled = false;
|
|
55
|
+
this.onChange = (value) => { };
|
|
56
|
+
this.onTouched = () => { };
|
|
27
57
|
}
|
|
28
58
|
ngOnInit() { }
|
|
29
|
-
|
|
30
|
-
|
|
59
|
+
// ControlValueAccessor implementation
|
|
60
|
+
writeValue(value) {
|
|
61
|
+
if (this._value !== value) {
|
|
62
|
+
this._value = value;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
registerOnChange(fn) {
|
|
66
|
+
this.onChange = fn;
|
|
67
|
+
}
|
|
68
|
+
registerOnTouched(fn) {
|
|
69
|
+
this.onTouched = fn;
|
|
70
|
+
}
|
|
71
|
+
setDisabledState(isDisabled) {
|
|
72
|
+
if (this._disabled !== isDisabled) {
|
|
73
|
+
this._disabled = isDisabled;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Legacy onChange method - maintains backward compatibility
|
|
77
|
+
onInputChange(event) {
|
|
78
|
+
const newValue = event.target.checked ? this.value : this._value;
|
|
79
|
+
if (this._value !== newValue) {
|
|
80
|
+
this._value = newValue;
|
|
81
|
+
this.onChange(newValue);
|
|
82
|
+
this.onTouched();
|
|
83
|
+
if (this._formControl && this._formControl.value !== newValue) {
|
|
84
|
+
this._formControl.setValue(newValue, { emitEvent: false });
|
|
85
|
+
}
|
|
86
|
+
this.valueChange.emit(newValue);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
get currentValue() {
|
|
90
|
+
return this._formControl ? this._formControl.value : this._value;
|
|
91
|
+
}
|
|
92
|
+
markAsTouched() {
|
|
93
|
+
this.onTouched();
|
|
94
|
+
if (this._formControl) {
|
|
95
|
+
this._formControl.markAsTouched();
|
|
96
|
+
this._formControl.updateValueAndValidity();
|
|
97
|
+
}
|
|
31
98
|
}
|
|
32
99
|
static { this.ɵfac = function RadioButtonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RadioButtonComponent)(); }; }
|
|
33
|
-
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RadioButtonComponent, selectors: [["mis-radio"]], inputs: { id: "id", name: "name", value: "value", disabled: "disabled", formControl: "formControl" }, outputs: { valueChange: "valueChange" },
|
|
100
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RadioButtonComponent, selectors: [["mis-radio"]], inputs: { id: "id", name: "name", value: "value", disabled: "disabled", formControl: "formControl" }, outputs: { valueChange: "valueChange" }, features: [i0.ɵɵProvidersFeature([
|
|
101
|
+
{
|
|
102
|
+
provide: NG_VALUE_ACCESSOR,
|
|
103
|
+
useExisting: forwardRef(() => RadioButtonComponent),
|
|
104
|
+
multi: true
|
|
105
|
+
}
|
|
106
|
+
])], decls: 1, vars: 5, consts: [["tabindex", "-1", "type", "radio", 3, "change", "keyup.enter", "blur", "id", "name", "value", "formControl", "checked"]], template: function RadioButtonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
34
107
|
i0.ɵɵelementStart(0, "input", 0);
|
|
35
|
-
i0.ɵɵlistener("change", function RadioButtonComponent_Template_input_change_0_listener($event) { return ctx.
|
|
108
|
+
i0.ɵɵlistener("change", function RadioButtonComponent_Template_input_change_0_listener($event) { return ctx.onInputChange($event); })("keyup.enter", function RadioButtonComponent_Template_input_keyup_enter_0_listener($event) { return ctx.onInputChange($event); })("blur", function RadioButtonComponent_Template_input_blur_0_listener() { return ctx.markAsTouched(); });
|
|
36
109
|
i0.ɵɵelementEnd();
|
|
37
110
|
} if (rf & 2) {
|
|
38
111
|
i0.ɵɵpropertyInterpolate("id", ctx.id);
|
|
39
|
-
i0.ɵɵproperty("name", ctx.name)("
|
|
112
|
+
i0.ɵɵproperty("name", ctx.name)("value", ctx.value)("formControl", ctx.formControl)("checked", ctx.currentValue === ctx.value);
|
|
40
113
|
} }, dependencies: [i1.DefaultValueAccessor, i1.RadioControlValueAccessor, i1.NgControlStatus, i1.FormControlDirective], styles: ["input[type=radio][_ngcontent-%COMP%]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin:0;padding:3px;background-clip:content-box;border:2px solid #6a737d;background-color:#fff;border-radius:50%;cursor:pointer}input[type=radio][_ngcontent-%COMP%]:checked{background-color:#0937b2;border:2px solid #0937b2}input[type=radio][_ngcontent-%COMP%]:hover{border:2px solid #929dab}input[type=radio][_ngcontent-%COMP%]:checked:hover{border:2px solid #0937b2}input[type=radio][_ngcontent-%COMP%]:disabled{border:2px solid #c8cdd3}input[type=radio][_ngcontent-%COMP%]:checked:disabled{border:2px solid #c8cdd3;background-color:#c8cdd3}"] }); }
|
|
41
114
|
}
|
|
42
115
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RadioButtonComponent, [{
|
|
43
116
|
type: Component,
|
|
44
|
-
args: [{ selector: "mis-radio",
|
|
117
|
+
args: [{ selector: "mis-radio", providers: [
|
|
118
|
+
{
|
|
119
|
+
provide: NG_VALUE_ACCESSOR,
|
|
120
|
+
useExisting: forwardRef(() => RadioButtonComponent),
|
|
121
|
+
multi: true
|
|
122
|
+
}
|
|
123
|
+
], template: "<input \n (change)=\"onInputChange($event)\" \n (keyup.enter)=\"onInputChange($event)\"\n (blur)=\"markAsTouched()\"\n tabindex=\"-1\"\n id=\"{{ id }}\" type=\"radio\" \n [name]=\"name\"\n [value]=\"value\"\n [formControl]=\"formControl\" \n [checked]=\"currentValue === value\"\n/>", styles: ["input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin:0;padding:3px;background-clip:content-box;border:2px solid #6a737d;background-color:#fff;border-radius:50%;cursor:pointer}input[type=radio]:checked{background-color:#0937b2;border:2px solid #0937b2}input[type=radio]:hover{border:2px solid #929dab}input[type=radio]:checked:hover{border:2px solid #0937b2}input[type=radio]:disabled{border:2px solid #c8cdd3}input[type=radio]:checked:disabled{border:2px solid #c8cdd3;background-color:#c8cdd3}\n"] }]
|
|
45
124
|
}], () => [], { id: [{
|
|
46
125
|
type: Input
|
|
47
126
|
}], name: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mis-crystal-design-system-radio-button.mjs","sources":["../../../projects/mis-components/radio-button/radio-button.component.ts","../../../projects/mis-components/radio-button/radio-button.component.html","../../../projects/mis-components/radio-button/radio-button.module.ts","../../../projects/mis-components/radio-button/mis-crystal-design-system-radio-button.ts"],"sourcesContent":["import { Component, Input, OnInit, Output, EventEmitter } from \"@angular/core\";\nimport { AbstractControl, UntypedFormControl } from \"@angular/forms\";\n\n@Component({\n selector: \"mis-radio\",\n templateUrl: \"./radio-button.component.html\",\n styleUrls: [\"./radio-button.component.scss\"]\n})\nexport class RadioButtonComponent implements OnInit {\n /** When multiple radio input fields are used\n * an \"id\" can be given to keep track of them */\n @Input() id: string | number = \"\";\n /** Name of the attribute for which the radio\n * selection is provided */\n @Input() name: string | number = \"\";\n /** Value of the attribute which is to be emitted\n * when selected */\n @Input() value: string | number = \"\";\n /** Controls the state of the radio button */\n @Input() disabled: boolean = false;\n\n /** Can be used to attach the radio input field\n * to a reactive form by passing in a\n * “FormControl“ Object. It can also be\n * used to set the default attribute value */\n @Input() formControl: AbstractControl = new UntypedFormControl(null);\n\n /** Emits \"value\" of the radio button on selection */\n @Output() valueChange = new EventEmitter<any>();\n\n constructor() {}\n ngOnInit() {}\n onChange(event) {\n this.valueChange.emit(this.formControl.value);\n }\n}\n","<input \n (change)=\"onChange($event)\" \n (keup.enter)=\"onChange($event)\"\n tabindex=\"-1\"\n id=\"{{ id }}\" type=\"radio\" \n [name]=\"name\" [disabled]=\"disabled\" \n [value]=\"value\"\n [formControl]=\"formControl\" \n/>\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { RadioButtonComponent } from \"./radio-button.component\";\nimport { ReactiveFormsModule } from \"@angular/forms\";\n\n@NgModule({\n declarations: [RadioButtonComponent],\n imports: [CommonModule, ReactiveFormsModule],\n exports: [RadioButtonComponent]\n})\nexport class RadioButtonModule {\n static forRoot(): ModuleWithProviders<RadioButtonModule> {\n return { ngModule: RadioButtonModule, providers: [] };\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":"mis-crystal-design-system-radio-button.mjs","sources":["../../../projects/mis-components/radio-button/radio-button.component.ts","../../../projects/mis-components/radio-button/radio-button.component.html","../../../projects/mis-components/radio-button/radio-button.module.ts","../../../projects/mis-components/radio-button/mis-crystal-design-system-radio-button.ts"],"sourcesContent":["import { Component, Input, OnInit, Output, EventEmitter, forwardRef } from \"@angular/core\";\nimport { AbstractControl, UntypedFormControl, ControlValueAccessor, NG_VALUE_ACCESSOR } from \"@angular/forms\";\n\n@Component({\n selector: \"mis-radio\",\n templateUrl: \"./radio-button.component.html\",\n styleUrls: [\"./radio-button.component.scss\"],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RadioButtonComponent),\n multi: true\n }\n ]\n})\nexport class RadioButtonComponent implements OnInit, ControlValueAccessor {\n @Input() id: string | number = \"\";\n @Input() name: string | number = \"\";\n @Input() value: string | number = \"\";\n \n @Input() set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n if (this._formControl && this._formControl.disabled !== value) {\n if (value) {\n this._formControl.disable({ emitEvent: false });\n } else {\n this._formControl.enable({ emitEvent: false });\n }\n }\n }\n }\n get disabled(): boolean {\n return this._formControl ? this._formControl.disabled : this._disabled;\n }\n\n @Input() set formControl(control: AbstractControl | null) {\n if (control instanceof AbstractControl) {\n this._formControl = control;\n if (control.value !== null && control.value !== undefined) {\n this._value = control.value;\n }\n if (this._disabled !== undefined && this._disabled !== control.disabled) {\n if (this._disabled) {\n control.disable({ emitEvent: false });\n } else {\n control.enable({ emitEvent: false });\n }\n }\n } else {\n this._formControl = new UntypedFormControl(control);\n }\n }\n get formControl(): AbstractControl {\n return this._formControl;\n }\n private _formControl: AbstractControl = new UntypedFormControl(null);\n\n @Output() valueChange = new EventEmitter<any>();\n\n // ControlValueAccessor properties\n private _value: any = null;\n private _disabled: boolean = false;\n private onChange = (value: any) => {};\n public onTouched = () => {};\n\n constructor() {}\n \n ngOnInit() {}\n\n // ControlValueAccessor implementation\n writeValue(value: any): void {\n if (this._value !== value) {\n this._value = value;\n }\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n if (this._disabled !== isDisabled) {\n this._disabled = isDisabled;\n }\n }\n\n // Legacy onChange method - maintains backward compatibility\n onInputChange(event: any) {\n const newValue = event.target.checked ? this.value : this._value;\n \n if (this._value !== newValue) {\n this._value = newValue;\n \n this.onChange(newValue);\n this.onTouched();\n \n if (this._formControl && this._formControl.value !== newValue) {\n this._formControl.setValue(newValue, { emitEvent: false });\n }\n \n this.valueChange.emit(newValue);\n }\n }\n\n get currentValue(): any {\n return this._formControl ? this._formControl.value : this._value;\n }\n\n public markAsTouched(): void {\n this.onTouched();\n if (this._formControl) {\n this._formControl.markAsTouched();\n this._formControl.updateValueAndValidity();\n }\n }\n}","<input \n (change)=\"onInputChange($event)\" \n (keyup.enter)=\"onInputChange($event)\"\n (blur)=\"markAsTouched()\"\n tabindex=\"-1\"\n id=\"{{ id }}\" type=\"radio\" \n [name]=\"name\"\n [value]=\"value\"\n [formControl]=\"formControl\" \n [checked]=\"currentValue === value\"\n/>","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { RadioButtonComponent } from \"./radio-button.component\";\nimport { ReactiveFormsModule } from \"@angular/forms\";\n\n@NgModule({\n declarations: [RadioButtonComponent],\n imports: [CommonModule, ReactiveFormsModule],\n exports: [RadioButtonComponent]\n})\nexport class RadioButtonModule {\n static forRoot(): ModuleWithProviders<RadioButtonModule> {\n return { ngModule: RadioButtonModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAea,oBAAoB,CAAA;IAK/B,IAAa,QAAQ,CAAC,KAAc,EAAA;AAClC,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE;AAC5B,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACvB,YAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,KAAK,KAAK,EAAE;gBAC7D,IAAI,KAAK,EAAE;oBACT,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;iBACjD;qBAAM;oBACL,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;iBAChD;aACF;SACF;KACF;AACD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;KACxE;IAED,IAAa,WAAW,CAAC,OAA+B,EAAA;AACtD,QAAA,IAAI,OAAO,YAAY,eAAe,EAAE;AACtC,YAAA,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;AAC5B,YAAA,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;AACzD,gBAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;aAC7B;AACD,YAAA,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,QAAQ,EAAE;AACvE,gBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;oBAClB,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;iBACvC;qBAAM;oBACL,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;iBACtC;aACF;SACF;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;SACrD;KACF;AACD,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAWD,IAAA,WAAA,GAAA;QAlDS,IAAE,CAAA,EAAA,GAAoB,EAAE,CAAC;QACzB,IAAI,CAAA,IAAA,GAAoB,EAAE,CAAC;QAC3B,IAAK,CAAA,KAAA,GAAoB,EAAE,CAAC;AAsC7B,QAAA,IAAA,CAAA,YAAY,GAAoB,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAE3D,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAO,CAAC;;QAGxC,IAAM,CAAA,MAAA,GAAQ,IAAI,CAAC;QACnB,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;AAC3B,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAC,KAAU,KAAI,GAAG,CAAC;AAC/B,QAAA,IAAA,CAAA,SAAS,GAAG,MAAK,GAAG,CAAC;KAEZ;AAEhB,IAAA,QAAQ,MAAK;;AAGb,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE;AACzB,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;SACrB;KACF;AAED,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;AAED,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;AACjC,YAAA,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;SAC7B;KACF;;AAGD,IAAA,aAAa,CAAC,KAAU,EAAA;AACtB,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;AAEjE,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;AAC5B,YAAA,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;AAEvB,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxB,IAAI,CAAC,SAAS,EAAE,CAAC;AAEjB,YAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,KAAK,QAAQ,EAAE;AAC7D,gBAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;aAC5D;AAED,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACjC;KACF;AAED,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;KAClE;IAEM,aAAa,GAAA;QAClB,IAAI,CAAC,SAAS,EAAE,CAAC;AACjB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;AAClC,YAAA,IAAI,CAAC,YAAY,CAAC,sBAAsB,EAAE,CAAC;SAC5C;KACF;qHAxGU,oBAAoB,GAAA,CAAA,EAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,IAAA,EAAA,oBAAoB,EARpB,SAAA,EAAA,CAAA,CAAA,WAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;AACT,gBAAA;AACE,oBAAA,OAAO,EAAE,iBAAiB;AAC1B,oBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACnD,oBAAA,KAAK,EAAE,IAAI;AACZ,iBAAA;AACF,aAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,aAAA,EAAA,SAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,6BAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;YCbH,EAUE,CAAA,cAAA,CAAA,CAAA,EAAA,OAAA,EAAA,CAAA,CAAA,CAAA;YATE,wGAAU,GAAqB,CAAA,aAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CAAC,qGACjB,GAAqB,CAAA,aAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CAAC,CAC7B,MAAA,EAAA,SAAA,mDAAA,GAAA,EAAA,OAAA,GAAA,CAAA,aAAA,EAAe,CAAC,EAAA,CAAA,CAAA;YAH5B,EAUE,CAAA,YAAA,EAAA,CAAA;;YALE,EAAa,CAAA,qBAAA,CAAA,IAAA,EAAA,GAAA,CAAA,EAAA,CAAA,CAAA;AAIb,YAHA,EAAa,CAAA,UAAA,CAAA,MAAA,EAAA,GAAA,CAAA,IAAA,CAAA,CAAA,OAAA,EAAA,GAAA,CAAA,KAAA,CACE,gCACY,CACO,SAAA,EAAA,GAAA,CAAA,YAAA,KAAA,GAAA,CAAA,KAAA,CAAA,CAAA;;;iFDMzB,oBAAoB,EAAA,CAAA;cAZhC,SAAS;AACE,QAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAGV,SAAA,EAAA;AACT,oBAAA;AACE,wBAAA,OAAO,EAAE,iBAAiB;AAC1B,wBAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACnD,wBAAA,KAAK,EAAE,IAAI;AACZ,qBAAA;AACF,iBAAA,EAAA,QAAA,EAAA,uTAAA,EAAA,MAAA,EAAA,CAAA,0iBAAA,CAAA,EAAA,CAAA;oBAGQ,EAAE,EAAA,CAAA;kBAAV,KAAK;YACG,IAAI,EAAA,CAAA;kBAAZ,KAAK;YACG,KAAK,EAAA,CAAA;kBAAb,KAAK;YAEO,QAAQ,EAAA,CAAA;kBAApB,KAAK;YAgBO,WAAW,EAAA,CAAA;kBAAvB,KAAK;YAsBI,WAAW,EAAA,CAAA;kBAApB,MAAM;;kFA3CI,oBAAoB,EAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;MEJpB,iBAAiB,CAAA;AAC5B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;KACvD;kHAHU,iBAAiB,GAAA,CAAA,EAAA,CAAA,EAAA;mEAAjB,iBAAiB,EAAA,CAAA,CAAA,EAAA;AAHlB,IAAA,SAAA,IAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;;iFAGhC,iBAAiB,EAAA,CAAA;cAL7B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;gBACR,YAAY,EAAE,CAAC,oBAAoB,CAAC;AACpC,gBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,mBAAmB,CAAC;gBAC5C,OAAO,EAAE,CAAC,oBAAoB,CAAC;AAChC,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,iBAAiB,mBAJb,oBAAoB,CAAA,EAAA,OAAA,EAAA,CACzB,YAAY,EAAE,mBAAmB,aACjC,oBAAoB,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACThC;;AAEG;;;;"}
|