@ndwnu/design-system 1.0.3 → 1.0.4
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/components/alert/alert.component.d.ts +13 -0
- package/components/alert/alert.model.d.ts +6 -0
- package/components/alert/index.d.ts +2 -0
- package/components/breadcrumb/breadcrumb.component.d.ts +8 -0
- package/components/breadcrumb/index.d.ts +1 -0
- package/components/breadcrumb-group/breadcrumb-group.component.d.ts +7 -0
- package/components/breadcrumb-group/index.d.ts +1 -0
- package/components/dropdown/dropdown.component.d.ts +1 -1
- package/components/form-field/checkbox/checkbox.component.d.ts +1 -2
- package/components/form-field/input/input.directive.d.ts +6 -0
- package/components/form-field/radio-button/radio-button.component.d.ts +7 -4
- package/components/form-field/radio-group/radio-group.component.d.ts +9 -1
- package/components/icon/icon.component.d.ts +9 -6
- package/components/icon/index.d.ts +0 -2
- package/components/index.d.ts +5 -2
- package/components/main-navigation/main-navigation.model.d.ts +1 -0
- package/components/main-navigation-menu/main-navigation-menu.component.d.ts +1 -3
- package/components/router-breadcrumbs/index.d.ts +1 -0
- package/components/router-breadcrumbs/router-breadcrumbs.component.d.ts +15 -0
- package/core/styles/ndw-styles.scss +154 -102
- package/core/styles/nwb-styles.scss +116 -96
- package/esm2022/components/alert/alert.component.mjs +34 -0
- package/esm2022/components/alert/alert.model.mjs +8 -0
- package/esm2022/components/alert/index.mjs +3 -0
- package/esm2022/components/badge/badge.component.mjs +2 -2
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +15 -0
- package/esm2022/components/breadcrumb/index.mjs +2 -0
- package/esm2022/components/breadcrumb-group/breadcrumb-group.component.mjs +21 -0
- package/esm2022/components/breadcrumb-group/index.mjs +2 -0
- package/esm2022/components/collapsible/collapsible.component.mjs +3 -3
- package/esm2022/components/dropdown/dropdown.component.mjs +4 -4
- package/esm2022/components/form-field/checkbox/checkbox.component.mjs +4 -11
- package/esm2022/components/form-field/error/error.component.mjs +3 -3
- package/esm2022/components/form-field/form-field.component.mjs +5 -5
- package/esm2022/components/form-field/info/info.component.mjs +2 -2
- package/esm2022/components/form-field/input/input.directive.mjs +33 -2
- package/esm2022/components/form-field/radio-button/radio-button.component.mjs +28 -10
- package/esm2022/components/form-field/radio-group/radio-group.component.mjs +45 -5
- package/esm2022/components/icon/icon.component.mjs +31 -16
- package/esm2022/components/icon/index.mjs +1 -3
- package/esm2022/components/index.mjs +6 -3
- package/esm2022/components/main-navigation/main-navigation.component.mjs +3 -3
- package/esm2022/components/main-navigation/main-navigation.model.mjs +1 -1
- package/esm2022/components/main-navigation-menu/main-navigation-menu.component.mjs +4 -8
- package/esm2022/components/router-breadcrumbs/index.mjs +2 -0
- package/esm2022/components/router-breadcrumbs/router-breadcrumbs.component.mjs +37 -0
- package/esm2022/components/tab/tab.component.mjs +2 -2
- package/esm2022/components/tooltip/tooltip.component.mjs +2 -2
- package/fesm2022/ndwnu-design-system.mjs +326 -160
- package/fesm2022/ndwnu-design-system.mjs.map +1 -1
- package/package.json +4 -7
- package/assets/icons/icons.json +0 -878
- package/components/icon/icon.model.d.ts +0 -5
- package/components/icon/icon.service.d.ts +0 -9
- package/esm2022/components/icon/icon.model.mjs +0 -2
- package/esm2022/components/icon/icon.service.mjs +0 -26
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { NgClass } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, HostBinding, HostListener, input, model,
|
|
2
|
+
import { ChangeDetectionStrategy, Component, HostBinding, HostListener, input, model, } from '@angular/core';
|
|
3
3
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
4
|
import { IconComponent } from '../../icon';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class RadioButtonComponent {
|
|
7
7
|
constructor() {
|
|
8
8
|
this.checked = model(false);
|
|
9
|
-
this.disabled =
|
|
9
|
+
this.disabled = model(false);
|
|
10
10
|
this.error = input(false);
|
|
11
11
|
this.name = model('');
|
|
12
12
|
this.required = input(false);
|
|
13
|
-
this.
|
|
13
|
+
this.value = model();
|
|
14
14
|
this.uuid = crypto.randomUUID();
|
|
15
15
|
}
|
|
16
16
|
get checkedClass() {
|
|
@@ -22,6 +22,15 @@ export class RadioButtonComponent {
|
|
|
22
22
|
get tabindexAttr() {
|
|
23
23
|
return this.disabled() ? -1 : 0;
|
|
24
24
|
}
|
|
25
|
+
get roleAttr() {
|
|
26
|
+
return 'radio';
|
|
27
|
+
}
|
|
28
|
+
get ariaCheckedAttr() {
|
|
29
|
+
return this.checked();
|
|
30
|
+
}
|
|
31
|
+
get ariaDisabledAttr() {
|
|
32
|
+
return this.disabled();
|
|
33
|
+
}
|
|
25
34
|
onClick() {
|
|
26
35
|
this.checked.set(true);
|
|
27
36
|
}
|
|
@@ -32,9 +41,6 @@ export class RadioButtonComponent {
|
|
|
32
41
|
this.checked.set(true);
|
|
33
42
|
event.preventDefault();
|
|
34
43
|
}
|
|
35
|
-
get input() {
|
|
36
|
-
return this.inputElement();
|
|
37
|
-
}
|
|
38
44
|
writeValue(value) {
|
|
39
45
|
this.checked.set(value);
|
|
40
46
|
}
|
|
@@ -44,14 +50,17 @@ export class RadioButtonComponent {
|
|
|
44
50
|
registerOnTouched() {
|
|
45
51
|
// noop
|
|
46
52
|
}
|
|
53
|
+
setDisabledState(isDisabled) {
|
|
54
|
+
this.disabled.set(isDisabled);
|
|
55
|
+
}
|
|
47
56
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: RadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
48
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: RadioButtonComponent, isStandalone: true, selector: "ndw-radio-button", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", name: "nameChange" }, host: { listeners: { "click": "onClick()", "keydown": "onKeyDown($event)" }, properties: { "class.checked": "this.checkedClass", "class.disabled": "this.disabledClass", "attr.tabindex": "this.tabindexAttr" } }, providers: [
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.3", type: RadioButtonComponent, isStandalone: true, selector: "ndw-radio-button", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", disabled: "disabledChange", name: "nameChange", value: "valueChange" }, host: { listeners: { "click": "onClick()", "keydown": "onKeyDown($event)" }, properties: { "class.checked": "this.checkedClass", "class.disabled": "this.disabledClass", "attr.tabindex": "this.tabindexAttr", "attr.role": "this.roleAttr", "attr.aria-checked": "this.ariaCheckedAttr", "attr.aria-disabled": "this.ariaDisabledAttr" } }, providers: [
|
|
49
58
|
{
|
|
50
59
|
provide: NG_VALUE_ACCESSOR,
|
|
51
60
|
useExisting: RadioButtonComponent,
|
|
52
61
|
multi: true,
|
|
53
62
|
},
|
|
54
|
-
],
|
|
63
|
+
], ngImport: i0, template: "<input\n type=\"radio\"\n [id]=\"'radio-button-' + uuid\"\n [name]=\"name()\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n aria-hidden=\"true\"\n/>\n<div class=\"radio-button\" [ngClass]=\"{ error: error() }\">\n @if (checked()) {\n <div class=\"check\"></div>\n }\n</div>\n<label\n tabindex=\"-1\"\n [for]=\"'radio-button-' + uuid\"\n (click)=\"onClick()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <ng-content />\n</label>\n", styles: [":host{align-items:center;cursor:pointer;display:inline-flex;gap:var(--ndw-spacing-xs);height:1.375rem;width:fit-content}input{display:none}.radio-button{background-color:var(--ndw-color-white);border:var(--ndw-border-size-sm) solid var(--ndw-color-grey-300);border-radius:50%;color:var(--ndw-color-white);display:flex;height:1.25rem;transition:background-color var(--ndw-animation-speed-fast) ease-in-out,border-color var(--ndw-animation-speed-fast) ease-in-out,box-shadow var(--ndw-animation-speed-fast) ease-in-out;width:1.25rem}.radio-button .check{background-color:var(--ndw-color-white);border-radius:inherit;height:.5rem;margin:auto;width:.5rem}.radio-button.error{background-color:var(--ndw-color-critical-100);border-color:var(--ndw-color-critical-500)}label{font-family:var(--ndw-font-family-body);font-size:.8125rem;font-weight:var(--ndw-font-weight-regular);line-height:150%;align-items:center;color:var(--ndw-color-grey-600);cursor:pointer;display:flex;margin-top:var(--ndw-spacing-2xs);width:fit-content}label:focus{outline:none}:host(.checked) .radio-button{background-color:var(--ndw-color-primary-500);border-color:var(--ndw-color-primary-500)}:host(.checked) .radio-button.error{background-color:var(--ndw-color-critical-500);border-color:var(--ndw-color-critical-500)}:host(:hover) .radio-button{background-color:var(--ndw-color-primary-600);border-color:var(--ndw-color-primary-600)}:host(:not(.checked):hover) .radio-button{background-color:var(--ndw-color-white);border-color:var(--ndw-color-primary-500)}:host(:focus){outline:none}:host(:focus) .radio-button{box-shadow:var(--ndw-elevation-info)}:host(:active) .radio-button,:host(:focus) .radio-button,:host(:not(.checked):active) .radio-button{border-color:var(--ndw-color-secondary-500)}:host(.checked:focus) .radio-button{background-color:var(--ndw-color-primary-700)}:host(.disabled){pointer-events:none;-webkit-user-select:none;user-select:none}:host(.disabled) .radio-button{background-color:var(--ndw-color-grey-100);border-color:var(--ndw-color-grey-200)}:host(.disabled) label{color:var(--ndw-color-grey-400)}:host(.checked.disabled) .radio-button{background-color:var(--ndw-color-grey-200);border-color:var(--ndw-color-grey-200)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
55
64
|
}
|
|
56
65
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: RadioButtonComponent, decorators: [{
|
|
57
66
|
type: Component,
|
|
@@ -61,7 +70,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
61
70
|
useExisting: RadioButtonComponent,
|
|
62
71
|
multi: true,
|
|
63
72
|
},
|
|
64
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<input
|
|
73
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<input\n type=\"radio\"\n [id]=\"'radio-button-' + uuid\"\n [name]=\"name()\"\n [checked]=\"checked()\"\n [disabled]=\"disabled()\"\n [required]=\"required()\"\n aria-hidden=\"true\"\n/>\n<div class=\"radio-button\" [ngClass]=\"{ error: error() }\">\n @if (checked()) {\n <div class=\"check\"></div>\n }\n</div>\n<label\n tabindex=\"-1\"\n [for]=\"'radio-button-' + uuid\"\n (click)=\"onClick()\"\n (keydown)=\"onKeyDown($event)\"\n>\n <ng-content />\n</label>\n", styles: [":host{align-items:center;cursor:pointer;display:inline-flex;gap:var(--ndw-spacing-xs);height:1.375rem;width:fit-content}input{display:none}.radio-button{background-color:var(--ndw-color-white);border:var(--ndw-border-size-sm) solid var(--ndw-color-grey-300);border-radius:50%;color:var(--ndw-color-white);display:flex;height:1.25rem;transition:background-color var(--ndw-animation-speed-fast) ease-in-out,border-color var(--ndw-animation-speed-fast) ease-in-out,box-shadow var(--ndw-animation-speed-fast) ease-in-out;width:1.25rem}.radio-button .check{background-color:var(--ndw-color-white);border-radius:inherit;height:.5rem;margin:auto;width:.5rem}.radio-button.error{background-color:var(--ndw-color-critical-100);border-color:var(--ndw-color-critical-500)}label{font-family:var(--ndw-font-family-body);font-size:.8125rem;font-weight:var(--ndw-font-weight-regular);line-height:150%;align-items:center;color:var(--ndw-color-grey-600);cursor:pointer;display:flex;margin-top:var(--ndw-spacing-2xs);width:fit-content}label:focus{outline:none}:host(.checked) .radio-button{background-color:var(--ndw-color-primary-500);border-color:var(--ndw-color-primary-500)}:host(.checked) .radio-button.error{background-color:var(--ndw-color-critical-500);border-color:var(--ndw-color-critical-500)}:host(:hover) .radio-button{background-color:var(--ndw-color-primary-600);border-color:var(--ndw-color-primary-600)}:host(:not(.checked):hover) .radio-button{background-color:var(--ndw-color-white);border-color:var(--ndw-color-primary-500)}:host(:focus){outline:none}:host(:focus) .radio-button{box-shadow:var(--ndw-elevation-info)}:host(:active) .radio-button,:host(:focus) .radio-button,:host(:not(.checked):active) .radio-button{border-color:var(--ndw-color-secondary-500)}:host(.checked:focus) .radio-button{background-color:var(--ndw-color-primary-700)}:host(.disabled){pointer-events:none;-webkit-user-select:none;user-select:none}:host(.disabled) .radio-button{background-color:var(--ndw-color-grey-100);border-color:var(--ndw-color-grey-200)}:host(.disabled) label{color:var(--ndw-color-grey-400)}:host(.checked.disabled) .radio-button{background-color:var(--ndw-color-grey-200);border-color:var(--ndw-color-grey-200)}\n"] }]
|
|
65
74
|
}], propDecorators: { checkedClass: [{
|
|
66
75
|
type: HostBinding,
|
|
67
76
|
args: ['class.checked']
|
|
@@ -71,6 +80,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
71
80
|
}], tabindexAttr: [{
|
|
72
81
|
type: HostBinding,
|
|
73
82
|
args: ['attr.tabindex']
|
|
83
|
+
}], roleAttr: [{
|
|
84
|
+
type: HostBinding,
|
|
85
|
+
args: ['attr.role']
|
|
86
|
+
}], ariaCheckedAttr: [{
|
|
87
|
+
type: HostBinding,
|
|
88
|
+
args: ['attr.aria-checked']
|
|
89
|
+
}], ariaDisabledAttr: [{
|
|
90
|
+
type: HostBinding,
|
|
91
|
+
args: ['attr.aria-disabled']
|
|
74
92
|
}], onClick: [{
|
|
75
93
|
type: HostListener,
|
|
76
94
|
args: ['click']
|
|
@@ -78,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImpor
|
|
|
78
96
|
type: HostListener,
|
|
79
97
|
args: ['keydown', ['$event']]
|
|
80
98
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25kdy9zcmMvY29tcG9uZW50cy9mb3JtLWZpZWxkL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmR3L3NyYy9jb21wb25lbnRzL2Zvcm0tZmllbGQvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDOztBQWlCM0MsTUFBTSxPQUFPLG9CQUFvQjtJQWZqQztRQWdCUyxZQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLGFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsVUFBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQixTQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEIsVUFBSyxHQUFHLEtBQUssRUFBRSxDQUFDO1FBRWhCLFNBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7S0E4RG5DO0lBNURDLElBQ1csWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFDVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUNXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQ1csUUFBUTtRQUNqQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsSUFDVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUNXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBR00sT0FBTztRQUNaLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFHTSxTQUFTLENBQUMsS0FBb0I7UUFDbkMsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUM3QyxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQWM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQTRCO1FBQ2xELElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTztJQUNULENBQUM7SUFFTSxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoQyxDQUFDOzhHQXJFVSxvQkFBb0I7a0dBQXBCLG9CQUFvQiwwdUNBWHBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLG9CQUFvQjtnQkFDakMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLDBCQ3ZCSCxpZUFzQkEsZ3VFRE4yQixPQUFPOzsyRkFZckIsb0JBQW9CO2tCQWZoQyxTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFdBQ1AsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQ3RCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsc0JBQXNCOzRCQUNqQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFhcEMsWUFBWTtzQkFEdEIsV0FBVzt1QkFBQyxlQUFlO2dCQU1qQixhQUFhO3NCQUR2QixXQUFXO3VCQUFDLGdCQUFnQjtnQkFNbEIsWUFBWTtzQkFEdEIsV0FBVzt1QkFBQyxlQUFlO2dCQU1qQixRQUFRO3NCQURsQixXQUFXO3VCQUFDLFdBQVc7Z0JBTWIsZUFBZTtzQkFEekIsV0FBVzt1QkFBQyxtQkFBbUI7Z0JBTXJCLGdCQUFnQjtzQkFEMUIsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBTTFCLE9BQU87c0JBRGIsWUFBWTt1QkFBQyxPQUFPO2dCQU1kLFNBQVM7c0JBRGYsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIGlucHV0LFxuICBtb2RlbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmR3LXJhZGlvLWJ1dHRvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJY29uQ29tcG9uZW50LCBOZ0NsYXNzXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogUmFkaW9CdXR0b25Db21wb25lbnQsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0J1dHRvbkNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHVibGljIGNoZWNrZWQgPSBtb2RlbChmYWxzZSk7XG4gIHB1YmxpYyBkaXNhYmxlZCA9IG1vZGVsKGZhbHNlKTtcbiAgcHVibGljIGVycm9yID0gaW5wdXQoZmFsc2UpO1xuICBwdWJsaWMgbmFtZSA9IG1vZGVsKCcnKTtcbiAgcHVibGljIHJlcXVpcmVkID0gaW5wdXQoZmFsc2UpO1xuICBwdWJsaWMgdmFsdWUgPSBtb2RlbCgpO1xuXG4gIHB1YmxpYyB1dWlkID0gY3J5cHRvLnJhbmRvbVVVSUQoKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNoZWNrZWQnKVxuICBwdWJsaWMgZ2V0IGNoZWNrZWRDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkKCk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmRpc2FibGVkJylcbiAgcHVibGljIGdldCBkaXNhYmxlZENsYXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkKCk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKVxuICBwdWJsaWMgZ2V0IHRhYmluZGV4QXR0cigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkKCkgPyAtMSA6IDA7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gIHB1YmxpYyBnZXQgcm9sZUF0dHIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3JhZGlvJztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWNoZWNrZWQnKVxuICBwdWJsaWMgZ2V0IGFyaWFDaGVja2VkQXR0cigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkKCk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1kaXNhYmxlZCcpXG4gIHB1YmxpYyBnZXQgYXJpYURpc2FibGVkQXR0cigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQuc2V0KHRydWUpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnRW50ZXInIHx8IHRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuY2hlY2tlZC5zZXQodHJ1ZSk7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja2VkLnNldCh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBib29sZWFuKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5jaGVja2VkLnN1YnNjcmliZShmbik7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoKTogdm9pZCB7XG4gICAgLy8gbm9vcFxuICB9XG5cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkLnNldChpc0Rpc2FibGVkKTtcbiAgfVxufVxuIiwiPGlucHV0XG4gIHR5cGU9XCJyYWRpb1wiXG4gIFtpZF09XCIncmFkaW8tYnV0dG9uLScgKyB1dWlkXCJcbiAgW25hbWVdPVwibmFtZSgpXCJcbiAgW2NoZWNrZWRdPVwiY2hlY2tlZCgpXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICBbcmVxdWlyZWRdPVwicmVxdWlyZWQoKVwiXG4gIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4vPlxuPGRpdiBjbGFzcz1cInJhZGlvLWJ1dHRvblwiIFtuZ0NsYXNzXT1cInsgZXJyb3I6IGVycm9yKCkgfVwiPlxuICBAaWYgKGNoZWNrZWQoKSkge1xuICAgIDxkaXYgY2xhc3M9XCJjaGVja1wiPjwvZGl2PlxuICB9XG48L2Rpdj5cbjxsYWJlbFxuICB0YWJpbmRleD1cIi0xXCJcbiAgW2Zvcl09XCIncmFkaW8tYnV0dG9uLScgKyB1dWlkXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbj5cbiAgPG5nLWNvbnRlbnQgLz5cbjwvbGFiZWw+XG4iXX0=
|
|
@@ -1,17 +1,41 @@
|
|
|
1
|
-
import { Component, contentChildren } from '@angular/core';
|
|
1
|
+
import { Component, contentChildren, HostBinding } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
2
3
|
import { RadioButtonComponent } from '../radio-button';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export class RadioGroupComponent {
|
|
5
6
|
constructor() {
|
|
6
7
|
this.radioButtons = contentChildren(RadioButtonComponent);
|
|
7
8
|
this.uuid = crypto.randomUUID();
|
|
9
|
+
this.onChange = () => { };
|
|
10
|
+
}
|
|
11
|
+
get role() {
|
|
12
|
+
return 'radiogroup';
|
|
8
13
|
}
|
|
9
14
|
ngAfterContentInit() {
|
|
10
15
|
this.setRadioButtonsName();
|
|
16
|
+
this.handleCheckedChange();
|
|
17
|
+
}
|
|
18
|
+
writeValue(value) {
|
|
19
|
+
this.radioButtons().forEach((radio) => {
|
|
20
|
+
radio.checked.set(radio.value() === value);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
registerOnChange(fn) {
|
|
24
|
+
this.onChange = fn;
|
|
25
|
+
}
|
|
26
|
+
registerOnTouched() {
|
|
27
|
+
// Not implemented
|
|
28
|
+
}
|
|
29
|
+
setDisabledState(isDisabled) {
|
|
30
|
+
this.radioButtons().forEach((radio) => radio.disabled.set(isDisabled));
|
|
11
31
|
}
|
|
12
32
|
setRadioButtonsName() {
|
|
13
33
|
this.radioButtons().forEach((radio) => {
|
|
14
34
|
radio.name.set(this.uuid);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
handleCheckedChange() {
|
|
38
|
+
this.radioButtons().forEach((radio) => {
|
|
15
39
|
radio.checked.subscribe((checked) => {
|
|
16
40
|
if (!checked) {
|
|
17
41
|
return;
|
|
@@ -21,14 +45,30 @@ export class RadioGroupComponent {
|
|
|
21
45
|
otherRadio.checked.set(false);
|
|
22
46
|
}
|
|
23
47
|
});
|
|
48
|
+
this.onChange(radio.value());
|
|
24
49
|
});
|
|
25
50
|
});
|
|
26
51
|
}
|
|
27
52
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: RadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.0.3", type: RadioGroupComponent, isStandalone: true, selector: "ndw-radio-group",
|
|
53
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.0.3", type: RadioGroupComponent, isStandalone: true, selector: "ndw-radio-group", host: { properties: { "attr.role": "this.role" } }, providers: [
|
|
54
|
+
{
|
|
55
|
+
provide: NG_VALUE_ACCESSOR,
|
|
56
|
+
useExisting: RadioGroupComponent,
|
|
57
|
+
multi: true,
|
|
58
|
+
},
|
|
59
|
+
], queries: [{ propertyName: "radioButtons", predicate: RadioButtonComponent, isSignal: true }], ngImport: i0, template: "<ng-content />\n", styles: [":host{display:grid;gap:var(--ndw-spacing-2xs)}\n"] }); }
|
|
29
60
|
}
|
|
30
61
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: RadioGroupComponent, decorators: [{
|
|
31
62
|
type: Component,
|
|
32
|
-
args: [{ selector: 'ndw-radio-group', standalone: true, imports: [],
|
|
33
|
-
|
|
34
|
-
|
|
63
|
+
args: [{ selector: 'ndw-radio-group', standalone: true, imports: [], providers: [
|
|
64
|
+
{
|
|
65
|
+
provide: NG_VALUE_ACCESSOR,
|
|
66
|
+
useExisting: RadioGroupComponent,
|
|
67
|
+
multi: true,
|
|
68
|
+
},
|
|
69
|
+
], template: "<ng-content />\n", styles: [":host{display:grid;gap:var(--ndw-spacing-2xs)}\n"] }]
|
|
70
|
+
}], propDecorators: { role: [{
|
|
71
|
+
type: HostBinding,
|
|
72
|
+
args: ['attr.role']
|
|
73
|
+
}] } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmR3L3NyYy9jb21wb25lbnRzL2Zvcm0tZmllbGQvcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmR3L3NyYy9jb21wb25lbnRzL2Zvcm0tZmllbGQvcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFvQixTQUFTLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBZ0J2RCxNQUFNLE9BQU8sbUJBQW1CO0lBZGhDO1FBZVMsaUJBQVksR0FBRyxlQUFlLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUVwRCxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzNCLGFBQVEsR0FBNkIsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0tBcUR2RDtJQW5EQyxJQUNXLElBQUk7UUFDYixPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYztRQUM5QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDcEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGdCQUFnQixDQUFDLEVBQTRCO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxpQkFBaUI7UUFDdEIsa0JBQWtCO0lBQ3BCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBRSxVQUFtQjtRQUMxQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDYixPQUFPO2dCQUNULENBQUM7Z0JBRUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO29CQUN6QyxJQUFJLFVBQVUsS0FBSyxLQUFLLEVBQUUsQ0FBQzt3QkFDekIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2hDLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7Z0JBRUgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0F4RFUsbUJBQW1CO2tHQUFuQixtQkFBbUIsa0hBUm5CO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLG1CQUFtQjtnQkFDaEMsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLHVEQUdxQyxvQkFBb0IsNkNDcEI1RCxrQkFDQTs7MkZEa0JhLG1CQUFtQjtrQkFkL0IsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsRUFBRSxhQUdBO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcscUJBQXFCOzRCQUNoQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkFTVSxJQUFJO3NCQURkLFdBQVc7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgY29udGVudENoaWxkcmVuLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL3JhZGlvLWJ1dHRvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25kdy1yYWRpby1ncm91cCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtdLFxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50LnNjc3MnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBSYWRpb0dyb3VwQ29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUmFkaW9Hcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHVibGljIHJhZGlvQnV0dG9ucyA9IGNvbnRlbnRDaGlsZHJlbihSYWRpb0J1dHRvbkNvbXBvbmVudCk7XG5cbiAgcHJpdmF0ZSB1dWlkID0gY3J5cHRvLnJhbmRvbVVVSUQoKTtcbiAgcHJpdmF0ZSBvbkNoYW5nZTogKHZhbHVlOiB1bmtub3duKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICBwdWJsaWMgZ2V0IHJvbGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3JhZGlvZ3JvdXAnO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFJhZGlvQnV0dG9uc05hbWUoKTtcbiAgICB0aGlzLmhhbmRsZUNoZWNrZWRDaGFuZ2UoKTtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb0J1dHRvbnMoKS5mb3JFYWNoKChyYWRpbykgPT4ge1xuICAgICAgcmFkaW8uY2hlY2tlZC5zZXQocmFkaW8udmFsdWUoKSA9PT0gdmFsdWUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogdW5rbm93bikgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZCgpOiB2b2lkIHtcbiAgICAvLyBOb3QgaW1wbGVtZW50ZWRcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5yYWRpb0J1dHRvbnMoKS5mb3JFYWNoKChyYWRpbykgPT4gcmFkaW8uZGlzYWJsZWQuc2V0KGlzRGlzYWJsZWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UmFkaW9CdXR0b25zTmFtZSgpOiB2b2lkIHtcbiAgICB0aGlzLnJhZGlvQnV0dG9ucygpLmZvckVhY2goKHJhZGlvKSA9PiB7XG4gICAgICByYWRpby5uYW1lLnNldCh0aGlzLnV1aWQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDaGVja2VkQ2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMucmFkaW9CdXR0b25zKCkuZm9yRWFjaCgocmFkaW8pID0+IHtcbiAgICAgIHJhZGlvLmNoZWNrZWQuc3Vic2NyaWJlKChjaGVja2VkKSA9PiB7XG4gICAgICAgIGlmICghY2hlY2tlZCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmFkaW9CdXR0b25zKCkuZm9yRWFjaCgob3RoZXJSYWRpbykgPT4ge1xuICAgICAgICAgIGlmIChvdGhlclJhZGlvICE9PSByYWRpbykge1xuICAgICAgICAgICAgb3RoZXJSYWRpby5jaGVja2VkLnNldChmYWxzZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHJhZGlvLnZhbHVlKCkpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IC8+XG4iXX0=
|
|
@@ -1,29 +1,44 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, effect, inject, input, } from '@angular/core';
|
|
3
|
-
import { IconService } from './icon.service';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, inject, input, Renderer2, } from '@angular/core';
|
|
4
2
|
import * as i0 from "@angular/core";
|
|
5
3
|
export class IconComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.elementRef = inject(ElementRef);
|
|
6
|
+
this.renderer = inject(Renderer2);
|
|
7
|
+
this.interactive = input(false);
|
|
8
|
+
this.iconClass = 'material-symbols-rounded';
|
|
9
|
+
}
|
|
6
10
|
get interactiveClass() {
|
|
7
11
|
return this.interactive();
|
|
8
12
|
}
|
|
9
|
-
|
|
10
|
-
this.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
this.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
get role() {
|
|
14
|
+
return this.interactive() ? 'button' : 'img';
|
|
15
|
+
}
|
|
16
|
+
get tabIndex() {
|
|
17
|
+
return this.interactive() ? 0 : -1;
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
const height = getComputedStyle(this.elementRef.nativeElement).fontSize;
|
|
21
|
+
this.renderer.setStyle(this.elementRef.nativeElement, 'width', height);
|
|
18
22
|
}
|
|
19
23
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.3", type: IconComponent, isStandalone: true, selector: "ndw-icon", inputs: {
|
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.3", type: IconComponent, isStandalone: true, selector: "ndw-icon", inputs: { interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "aria-label": "NDW icon" }, properties: { "class": "this.iconClass", "class.interactive": "this.interactiveClass", "attr.role": "this.role", "attr.tabindex": "this.tabIndex" } }, ngImport: i0, template: "<ng-content />\n", styles: [":host{display:inline-block;font-size:var(--ndw-spacing-lg);position:relative;-webkit-user-select:none;user-select:none}:host.interactive{border-radius:var(--ndw-border-radius-md);box-sizing:border-box;cursor:pointer;padding:var(--ndw-spacing-2xs);transition:background-color .15s ease-in-out}:host.interactive:hover{background-color:var(--ndw-alpha-black-007)}:host.interactive:active,:host.interactive:focus,:host.interactive:focus-visible{background-color:var(--ndw-alpha-black-015)}:host.interactive:focus-visible{color:var(--ndw-color-primary);outline-color:var(--ndw-color-secondary-500)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
21
25
|
}
|
|
22
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: IconComponent, decorators: [{
|
|
23
27
|
type: Component,
|
|
24
|
-
args: [{ selector: 'ndw-icon', standalone: true, imports: [
|
|
25
|
-
|
|
28
|
+
args: [{ selector: 'ndw-icon', standalone: true, imports: [], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
29
|
+
'aria-label': 'NDW icon',
|
|
30
|
+
}, template: "<ng-content />\n", styles: [":host{display:inline-block;font-size:var(--ndw-spacing-lg);position:relative;-webkit-user-select:none;user-select:none}:host.interactive{border-radius:var(--ndw-border-radius-md);box-sizing:border-box;cursor:pointer;padding:var(--ndw-spacing-2xs);transition:background-color .15s ease-in-out}:host.interactive:hover{background-color:var(--ndw-alpha-black-007)}:host.interactive:active,:host.interactive:focus,:host.interactive:focus-visible{background-color:var(--ndw-alpha-black-015)}:host.interactive:focus-visible{color:var(--ndw-color-primary);outline-color:var(--ndw-color-secondary-500)}\n"] }]
|
|
31
|
+
}], propDecorators: { iconClass: [{
|
|
32
|
+
type: HostBinding,
|
|
33
|
+
args: ['class']
|
|
34
|
+
}], interactiveClass: [{
|
|
26
35
|
type: HostBinding,
|
|
27
36
|
args: ['class.interactive']
|
|
37
|
+
}], role: [{
|
|
38
|
+
type: HostBinding,
|
|
39
|
+
args: ['attr.role']
|
|
40
|
+
}], tabIndex: [{
|
|
41
|
+
type: HostBinding,
|
|
42
|
+
args: ['attr.tabindex']
|
|
28
43
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25kdy9zcmMvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUVMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQzs7QUFhdkIsTUFBTSxPQUFPLGFBQWE7SUFYMUI7UUFZbUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXZDLGdCQUFXLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBR3hCLGNBQVMsR0FBRywwQkFBMEIsQ0FBQztLQXFCbEQ7SUFuQkMsSUFDYyxnQkFBZ0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQ2MsSUFBSTtRQUNoQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQ2MsUUFBUTtRQUNwQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQ3hFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6RSxDQUFDOzhHQTNCVSxhQUFhO2tHQUFiLGFBQWEsbWFDdEIxQixrQkFDQTs7MkZEcUJhLGFBQWE7a0JBWHpCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUCxFQUFFLG1CQUdNLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osWUFBWSxFQUFFLFVBQVU7cUJBQ3pCOzhCQVNTLFNBQVM7c0JBRGxCLFdBQVc7dUJBQUMsT0FBTztnQkFJTixnQkFBZ0I7c0JBRDdCLFdBQVc7dUJBQUMsbUJBQW1CO2dCQU1sQixJQUFJO3NCQURqQixXQUFXO3VCQUFDLFdBQVc7Z0JBTVYsUUFBUTtzQkFEckIsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmR3LWljb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vaWNvbi5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgJ2FyaWEtbGFiZWwnOiAnTkRXIGljb24nLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBJY29uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG5cbiAgcHVibGljIGludGVyYWN0aXZlID0gaW5wdXQoZmFsc2UpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcm90ZWN0ZWQgaWNvbkNsYXNzID0gJ21hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pbnRlcmFjdGl2ZScpXG4gIHByb3RlY3RlZCBnZXQgaW50ZXJhY3RpdmVDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSgpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICBwcm90ZWN0ZWQgZ2V0IHJvbGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSgpID8gJ2J1dHRvbicgOiAnaW1nJztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gIHByb3RlY3RlZCBnZXQgdGFiSW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pbnRlcmFjdGl2ZSgpID8gMCA6IC0xO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGhlaWdodCA9IGdldENvbXB1dGVkU3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpLmZvbnRTaXplO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsIGhlaWdodCk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IC8+XG4iXX0=
|
|
@@ -1,4 +1,2 @@
|
|
|
1
1
|
export * from './icon.component';
|
|
2
|
-
|
|
3
|
-
export * from './icon.service';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvaWNvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2ljb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaWNvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2ljb24uc2VydmljZSc7XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvaWNvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pY29uLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export * from './accordion';
|
|
2
|
+
export * from './alert';
|
|
2
3
|
export * from './badge';
|
|
4
|
+
export * from './breadcrumb';
|
|
5
|
+
export * from './breadcrumb-group';
|
|
3
6
|
export * from './button';
|
|
4
7
|
export * from './card';
|
|
5
8
|
export * from './collapsible';
|
|
@@ -7,10 +10,10 @@ export * from './dropdown';
|
|
|
7
10
|
export * from './form-field';
|
|
8
11
|
export * from './icon';
|
|
9
12
|
export * from './main-navigation';
|
|
13
|
+
export * from './modal';
|
|
10
14
|
export * from './pill';
|
|
15
|
+
export * from './router-breadcrumbs';
|
|
11
16
|
export * from './tab';
|
|
12
17
|
export * from './tab-group';
|
|
13
18
|
export * from './tooltip';
|
|
14
|
-
|
|
15
|
-
export * from './modal';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWNjb3JkaW9uJztcbmV4cG9ydCAqIGZyb20gJy4vYmFkZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9jYXJkJztcbmV4cG9ydCAqIGZyb20gJy4vY29sbGFwc2libGUnO1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bic7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9pY29uJztcbmV4cG9ydCAqIGZyb20gJy4vbWFpbi1uYXZpZ2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcGlsbCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYic7XG5leHBvcnQgKiBmcm9tICcuL3RhYi1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL3Rvb2x0aXAnO1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bic7XG5leHBvcnQgKiBmcm9tICcuL21vZGFsJztcbiJdfQ==
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZHcvc3JjL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjY29yZGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FsZXJ0JztcbmV4cG9ydCAqIGZyb20gJy4vYmFkZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYi1ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL2NhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2xsYXBzaWJsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2ljb24nO1xuZXhwb3J0ICogZnJvbSAnLi9tYWluLW5hdmlnYXRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbCc7XG5leHBvcnQgKiBmcm9tICcuL3BpbGwnO1xuZXhwb3J0ICogZnJvbSAnLi9yb3V0ZXItYnJlYWRjcnVtYnMnO1xuZXhwb3J0ICogZnJvbSAnLi90YWInO1xuZXhwb3J0ICogZnJvbSAnLi90YWItZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi90b29sdGlwJztcbiJdfQ==
|