@softheon/armature 17.29.0 → 17.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ag-grid-components/package.json +3 -0
- package/assets/styles/material-override/_radio-button.scss +106 -73
- package/esm2022/lib/core/client-generated/model/themePaletteColorsModel.mjs +1 -1
- package/esm2022/lib/theming/services/theme.service.mjs +11 -1
- package/fesm2022/softheon-armature.mjs +10 -0
- package/fesm2022/softheon-armature.mjs.map +1 -1
- package/lib/core/client-generated/model/themePaletteColorsModel.d.ts +35 -15
- package/package.json +1 -1
|
@@ -1,96 +1,129 @@
|
|
|
1
|
-
@use "@angular/material" as mat;
|
|
2
1
|
@use "../arm-theme" as theme;
|
|
2
|
+
@use "../variables" as vars;
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
--mdc-radio-selected-focus-icon-color: #{mat.get-color-from-palette(theme.$arm-primary, 500)};
|
|
8
|
-
--mdc-radio-selected-hover-icon-color: #{mat.get-color-from-palette(theme.$arm-primary, 500)};
|
|
9
|
-
--mdc-radio-selected-icon-color: #{mat.get-color-from-palette(theme.$arm-primary, 500)};
|
|
10
|
-
--mdc-radio-selected-pressed-icon-color: #{mat.get-color-from-palette(theme.$arm-primary, 500)};
|
|
11
|
-
--mat-mdc-radio-checked-ripple-color: #{mat.get-color-from-palette(theme.$arm-primary, 500)};
|
|
12
|
-
}
|
|
4
|
+
.sof-radio-button {
|
|
5
|
+
display: flex !important;
|
|
6
|
+
width: fit-content !important;
|
|
13
7
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
--mdc-radio-selected-focus-icon-color: #{mat.get-color-from-palette(theme.$arm-accent, 500)};
|
|
17
|
-
--mdc-radio-selected-hover-icon-color: #{mat.get-color-from-palette(theme.$arm-accent, 500)};
|
|
18
|
-
--mdc-radio-selected-icon-color: #{mat.get-color-from-palette(theme.$arm-accent, 500)};
|
|
19
|
-
--mdc-radio-selected-pressed-icon-color: #{mat.get-color-from-palette(theme.$arm-accent, 500)};
|
|
20
|
-
--mat-mdc-radio-checked-ripple-color: #{mat.get-color-from-palette(theme.$arm-accent, 500)};
|
|
8
|
+
* {
|
|
9
|
+
box-sizing: border-box !important;
|
|
21
10
|
}
|
|
22
11
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
12
|
+
$sof-radio-size: 20px;
|
|
13
|
+
|
|
14
|
+
--mdc-radio-disabled-selected-icon-color: #{map-get(theme.$arm-neutral, 300)} !important;
|
|
15
|
+
--mdc-radio-disabled-unselected-icon-color: #{map-get(theme.$arm-neutral, 300)} !important;
|
|
16
|
+
--mdc-radio-disabled-selected-icon-opacity: 1 !important;
|
|
17
|
+
--mdc-radio-disabled-unselected-icon-opacity: 1 !important;
|
|
18
|
+
|
|
19
|
+
--mdc-radio-unselected-icon-color: #{map-get(theme.$arm-neutral, 500)} !important;
|
|
20
|
+
--mdc-radio-unselected-hover-icon-color: #{map-get(theme.$arm-neutral, 700)} !important;
|
|
21
|
+
--mdc-radio-unselected-pressed-icon-color: #{map-get(theme.$arm-neutral, 800)} !important;
|
|
31
22
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
23
|
+
--mdc-radio-selected-icon-color: #{map-get(theme.$arm-primary, 500)} !important;
|
|
24
|
+
--mdc-radio-selected-hover-icon-color: #{map-get(theme.$arm-primary, 700)} !important;
|
|
25
|
+
--mdc-radio-selected-focus-icon-color: #{map-get(theme.$arm-primary, 800)} !important;
|
|
26
|
+
--mdc-radio-selected-pressed-icon-color: #{map-get(theme.$arm-primary, 800)} !important;
|
|
27
|
+
|
|
28
|
+
--mat-radio-ripple-color: transparent !important;
|
|
29
|
+
--mat-radio-checked-ripple-color: transparent !important;
|
|
30
|
+
|
|
31
|
+
&:hover {
|
|
32
|
+
.mdc-radio:not(.mdc-radio--disabled) {
|
|
33
|
+
.mat-mdc-radio-touch-target {
|
|
34
|
+
background: map-get(theme.$arm-primary, A100) !important;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
39
37
|
}
|
|
40
38
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
--mat-mdc-radio-checked-ripple-color: #{mat.get-color-from-palette(theme.$arm-info, 500)};
|
|
39
|
+
&:hover:not(.mat-mdc-radio-checked) {
|
|
40
|
+
.mdc-radio__background {
|
|
41
|
+
.mdc-radio__outer-circle {
|
|
42
|
+
border-color: map-get(theme.$arm-neutral, 700) !important;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
48
45
|
}
|
|
49
46
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
--mat-mdc-radio-checked-ripple-color: #{mat.get-color-from-palette(theme.$arm-error, 500)};
|
|
47
|
+
&:active {
|
|
48
|
+
.mdc-radio:not(.mdc-radio--disabled) {
|
|
49
|
+
.mat-mdc-radio-touch-target {
|
|
50
|
+
background: map-get(theme.$arm-primary, A200) !important;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
57
53
|
}
|
|
58
54
|
|
|
59
|
-
&.mat-neutral,
|
|
60
55
|
&[color="neutral"] {
|
|
61
|
-
--mdc-radio-selected-
|
|
62
|
-
--mdc-radio-selected-hover-icon-color: #{
|
|
63
|
-
--mdc-radio-selected-icon-color: #{
|
|
64
|
-
--mdc-radio-selected-pressed-icon-color: #{
|
|
65
|
-
--mat-mdc-radio-checked-ripple-color: #{mat.get-color-from-palette(theme.$arm-neutral, 500)};
|
|
66
|
-
}
|
|
67
|
-
}
|
|
56
|
+
--mdc-radio-selected-icon-color: #{map-get(theme.$arm-neutral, 500)} !important;
|
|
57
|
+
--mdc-radio-selected-hover-icon-color: #{map-get(theme.$arm-neutral, 700)} !important;
|
|
58
|
+
--mdc-radio-selected-focus-icon-color: #{map-get(theme.$arm-neutral, 800)} !important;
|
|
59
|
+
--mdc-radio-selected-pressed-icon-color: #{map-get(theme.$arm-neutral, 800)} !important;
|
|
68
60
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
61
|
+
&:hover {
|
|
62
|
+
.mdc-radio:not(.mdc-radio--disabled) {
|
|
63
|
+
.mat-mdc-radio-touch-target {
|
|
64
|
+
background: map-get(theme.$arm-neutral, A100) !important;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
&:active {
|
|
70
|
+
.mdc-radio:not(.mdc-radio--disabled) {
|
|
71
|
+
.mat-mdc-radio-touch-target {
|
|
72
|
+
background: map-get(theme.$arm-neutral, A200) !important;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
72
76
|
}
|
|
73
77
|
|
|
74
|
-
.mdc-radio__background,
|
|
75
78
|
.mdc-radio {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
+
--mdc-radio-state-layer-size: #{$sof-radio-size};
|
|
80
|
+
margin: 0 !important;
|
|
81
|
+
padding: 0 !important;
|
|
82
|
+
width: calc($sof-radio-size) !important;
|
|
83
|
+
height: calc($sof-radio-size) !important;
|
|
84
|
+
flex: none !important;
|
|
79
85
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
86
|
+
.mat-mdc-radio-touch-target {
|
|
87
|
+
width: calc($sof-radio-size + 4px) !important;
|
|
88
|
+
height: calc($sof-radio-size + 4px) !important;
|
|
89
|
+
border-radius: 50% !important;
|
|
90
|
+
background: transparent !important;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.mdc-radio__native-control {
|
|
94
|
+
width: $sof-radio-size !important;
|
|
95
|
+
height: $sof-radio-size !important;
|
|
96
|
+
}
|
|
85
97
|
|
|
86
|
-
|
|
87
|
-
|
|
98
|
+
.mdc-radio__native-control:focus ~ .mdc-radio__background {
|
|
99
|
+
outline: 3px solid !important;
|
|
100
|
+
outline-offset: 2px !important;
|
|
101
|
+
outline-color: map-get(theme.$arm-primary, 300) !important;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.mdc-radio__background {
|
|
105
|
+
border-radius: 50% !important;
|
|
106
|
+
width: $sof-radio-size !important;
|
|
107
|
+
height: $sof-radio-size !important;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.mat-radio-ripple,
|
|
111
|
+
.mdc-radio:hover .mdc-radio__native-control:not([disabled])~.mdc-radio-ripple {
|
|
112
|
+
display: none !important;
|
|
113
|
+
}
|
|
88
114
|
}
|
|
89
115
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
116
|
+
label {
|
|
117
|
+
padding: 0 0 0 8px !important;
|
|
118
|
+
font-family: "Poppins", sans-serif !important;
|
|
119
|
+
letter-spacing: 0px !important;
|
|
120
|
+
font-size: 16px !important;
|
|
121
|
+
line-height: $sof-radio-size !important;
|
|
122
|
+
cursor: pointer !important;
|
|
95
123
|
}
|
|
96
124
|
}
|
|
125
|
+
|
|
126
|
+
.mat-mdc-radio-button .mdc-radio--disabled+label {
|
|
127
|
+
color: vars.$text-low-emphasis !important;
|
|
128
|
+
cursor: default !important;
|
|
129
|
+
}
|
|
@@ -10,4 +10,4 @@
|
|
|
10
10
|
* Do not edit the class manually.
|
|
11
11
|
*/
|
|
12
12
|
export {};
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWVQYWxldHRlQ29sb3JzTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcm1hdHVyZS9zcmMvbGliL2NvcmUvY2xpZW50LWdlbmVyYXRlZC9tb2RlbC90aGVtZVBhbGV0dGVDb2xvcnNNb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIERpc3RyaWJ1dGVkIENhY2hlIEFQSVxyXG4gKiBObyBkZXNjcmlwdGlvbiBwcm92aWRlZCAoZ2VuZXJhdGVkIGJ5IFN3YWdnZXIgQ29kZWdlbiBodHRwczovL2dpdGh1Yi5jb20vc3dhZ2dlci1hcGkvc3dhZ2dlci1jb2RlZ2VuKVxyXG4gKlxyXG4gKiBPcGVuQVBJIHNwZWMgdmVyc2lvbjogMVxyXG4gKiBcclxuICpcclxuICogTk9URTogVGhpcyBjbGFzcyBpcyBhdXRvIGdlbmVyYXRlZCBieSB0aGUgc3dhZ2dlciBjb2RlIGdlbmVyYXRvciBwcm9ncmFtLlxyXG4gKiBodHRwczovL2dpdGh1Yi5jb20vc3dhZ2dlci1hcGkvc3dhZ2dlci1jb2RlZ2VuLmdpdFxyXG4gKiBEbyBub3QgZWRpdCB0aGUgY2xhc3MgbWFudWFsbHkuXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIFRoZSB0aGVtZSBwYWxldHRlXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFRoZW1lUGFsZXR0ZUNvbG9yc01vZGVsIHsgXHJcbiAgICAvKipcclxuICAgICAqIFRoZSA1MCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGZpZnR5Pzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgMTAwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgb25lSHVuZHJlZD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIDIwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIHR3b0h1bmRyZWQ/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSAzMDAgcGFsZXR0ZSBjb2xvclxyXG4gICAgICovXHJcbiAgICB0aHJlZUh1bmRyZWQ/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSA0MDAgcGFsZXR0ZSBjb2xvclxyXG4gICAgICovXHJcbiAgICBmb3VySHVuZHJlZD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIDUwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGZpdmVIdW5kcmVkPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgNjAwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgc2l4SHVuZHJlZD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIDcwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIHNldmVuSHVuZHJlZD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIDgwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGVpZ2h0SHVuZHJlZD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIDkwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIG5pbmVIdW5kcmVkPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgQTUwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgYTUwPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgQTEwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGExMDA/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBBMjAwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgYTIwMD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIEEzMDAgcGFsZXR0ZSBjb2xvclxyXG4gICAgICovXHJcbiAgICBhMzAwPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgQTQwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGE0MDA/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBBNTAwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgYTUwMD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIEE2MDAgcGFsZXR0ZSBjb2xvclxyXG4gICAgICovXHJcbiAgICBhNjAwPzogc3RyaW5nO1xyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgQTcwMCBwYWxldHRlIGNvbG9yXHJcbiAgICAgKi9cclxuICAgIGE3MDA/OiBzdHJpbmc7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBBODAwIHBhbGV0dGUgY29sb3JcclxuICAgICAqL1xyXG4gICAgYTgwMD86IHN0cmluZztcclxuICAgIC8qKlxyXG4gICAgICogVGhlIEE5MDAgcGFsZXR0ZSBjb2xvclxyXG4gICAgICovXHJcbiAgICBhOTAwPzogc3RyaW5nO1xyXG59Il19
|
|
@@ -64,11 +64,16 @@ export class ThemeService {
|
|
|
64
64
|
this.updateColor(paletteName, '700', palette.sevenHundred);
|
|
65
65
|
this.updateColor(paletteName, '800', palette.eightHundred);
|
|
66
66
|
this.updateColor(paletteName, '900', palette.nineHundred);
|
|
67
|
+
this.updateColor(paletteName, 'A50', palette.a50);
|
|
67
68
|
this.updateColor(paletteName, 'A100', palette.a100);
|
|
68
69
|
this.updateColor(paletteName, 'A200', palette.a200);
|
|
69
70
|
this.updateColor(paletteName, 'A300', palette.a300);
|
|
70
71
|
this.updateColor(paletteName, 'A400', palette.a400);
|
|
71
72
|
this.updateColor(paletteName, 'A500', palette.a500);
|
|
73
|
+
this.updateColor(paletteName, 'A600', palette.a600);
|
|
74
|
+
this.updateColor(paletteName, 'A700', palette.a700);
|
|
75
|
+
this.updateColor(paletteName, 'A800', palette.a800);
|
|
76
|
+
this.updateColor(paletteName, 'A900', palette.a900);
|
|
72
77
|
}
|
|
73
78
|
else if (paletteType == CONTRAST_PALETTE) {
|
|
74
79
|
this.updateContrast(paletteName, '50', palette.fifty);
|
|
@@ -81,11 +86,16 @@ export class ThemeService {
|
|
|
81
86
|
this.updateContrast(paletteName, '700', palette.sevenHundred);
|
|
82
87
|
this.updateContrast(paletteName, '800', palette.eightHundred);
|
|
83
88
|
this.updateContrast(paletteName, '900', palette.nineHundred);
|
|
89
|
+
this.updateContrast(paletteName, 'A50', palette.a50);
|
|
84
90
|
this.updateContrast(paletteName, 'A100', palette.a100);
|
|
85
91
|
this.updateContrast(paletteName, 'A200', palette.a200);
|
|
86
92
|
this.updateContrast(paletteName, 'A300', palette.a300);
|
|
87
93
|
this.updateContrast(paletteName, 'A400', palette.a400);
|
|
88
94
|
this.updateContrast(paletteName, 'A500', palette.a500);
|
|
95
|
+
this.updateContrast(paletteName, 'A600', palette.a600);
|
|
96
|
+
this.updateContrast(paletteName, 'A700', palette.a700);
|
|
97
|
+
this.updateContrast(paletteName, 'A800', palette.a800);
|
|
98
|
+
this.updateContrast(paletteName, 'A900', palette.a900);
|
|
89
99
|
}
|
|
90
100
|
}
|
|
91
101
|
/**
|
|
@@ -174,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
|
174
184
|
providedIn: 'root'
|
|
175
185
|
}]
|
|
176
186
|
}] });
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvdGhlbWluZy9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHM0MsaUNBQWlDO0FBQ2pDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQztBQUU5QixvQ0FBb0M7QUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUM7QUFFcEMsd0JBQXdCO0FBSXhCLE1BQU0sT0FBTyxZQUFZO0lBSHpCO1FBS21CLGFBQVEsR0FBYSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0FrS3hEO0lBaEtDOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxXQUE4QjtRQUMvQyxJQUFJLFdBQVcsRUFBRTtZQUNmLCtDQUErQztZQUMvQyxNQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDO1lBQzlDLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxlQUFlLENBQUM7WUFDcEQsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ3pELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQzthQUM1RDtZQUNELElBQUksZUFBZSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxFQUFFO2dCQUMvRCxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsQ0FBQzthQUNsRTtZQUNELDhDQUE4QztZQUM5QyxNQUFNLFdBQVcsR0FBRyxXQUFX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aW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVGhlbWVQYWxldHRlQ29sb3JzTW9kZWwsIFRoZW1lUGFsZXR0ZU1vZGVsIH0gZnJvbSAnLi4vLi4vY29yZS9jbGllbnQtZ2VuZXJhdGVkL21vZGVsL21vZGVscyc7XHJcblxyXG4vKiogVGhlIGNvbG9yIHBhbGV0dGUgY29uc3RhbnQgKi9cclxuY29uc3QgQ09MT1JfUEFMRVRURSA9ICdjb2xvcic7XHJcblxyXG4vKiogVGhlIGNvbnRyYXN0IHBhbGV0dGUgY29uc3RhbnQgKi9cclxuY29uc3QgQ09OVFJBU1RfUEFMRVRURSA9ICdjb250cmFzdCc7XHJcblxyXG4vKiogVGhlIFRoZW1lIFNlcnZpY2UgKi9cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGhlbWVTZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplcyB0aGUgcGFsZXR0ZVxyXG4gICAqIEBwYXJhbSB0aGVtZUNvbmZpZyBUaGUgdGhlbWUgY29uZmlndXJhdGlvbnNcclxuICAgKi9cclxuICBwdWJsaWMgaW5pdFBhbGV0dGUodGhlbWVDb25maWc6IFRoZW1lUGFsZXR0ZU1vZGVsKTogdm9pZCB7XHJcbiAgICBpZiAodGhlbWVDb25maWcpIHtcclxuICAgICAgLy8gU2V0dGluZyB1cCBwcmltYXJ5IGNvbG9yICYgY29udHJhc3QgcGFsZXR0ZXNcclxuICAgICAgY29uc3QgcHJpbWFyeUNvbG9yID0gdGhlbWVDb25maWcucHJpbWFyeUNvbG9yO1xyXG4gICAgICBjb25zdCBwcmltYXJ5Q29udHJhc3QgPSB0aGVtZUNvbmZpZy5wcmltYXJ5Q29udHJhc3Q7XHJcbiAgICAgIGlmIChwcmltYXJ5Q29sb3IgJiYgSlNPTi5zdHJpbmdpZnkocHJpbWFyeUNvbG9yKSAhPT0gJ3t9Jykge1xyXG4gICAgICAgIHRoaXMudXBkYXRlUGFsZXR0ZSgncHJpbWFyeScsIENPTE9SX1BBTEVUVEUsIHByaW1hcnlDb2xvcik7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHByaW1hcnlDb250cmFzdCAmJiBKU09OLnN0cmluZ2lmeShwcmltYXJ5Q29udHJhc3QpICE9PSAne30nKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdwcmltYXJ5JywgQ09OVFJBU1RfUEFMRVRURSwgcHJpbWFyeUNvbnRyYXN0KTtcclxuICAgICAgfVxyXG4gICAgICAvLyBTZXR0aW5nIHVwIGFjY2VudCBjb2xvciAmIGNvbnRyYXN0IHBhbGV0dGVzXHJcbiAgICAgIGNvbnN0IGFjY2VudENvbG9yID0gdGhlbWVDb25maWcuYWNjZW50Q29sb3I7XHJcbiAgICAgIGNvbnN0IGFjY2VudENvbnRyYXN0ID0gdGhlbWVDb25maWcuYWNjZW50Q29udHJhc3Q7XHJcbiAgICAgIGlmIChhY2NlbnRDb2xvciAmJiBKU09OLnN0cmluZ2lmeShhY2NlbnRDb2xvcikgIT09ICd7fScpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2FjY2VudCcsIENPTE9SX1BBTEVUVEUsIGFjY2VudENvbG9yKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoYWNjZW50Q29udHJhc3QgJiYgSlNPTi5zdHJpbmdpZnkoYWNjZW50Q29udHJhc3QpICE9PSAne30nKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdhY2NlbnQnLCBDT05UUkFTVF9QQUxFVFRFLCBhY2NlbnRDb250cmFzdCk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gU2V0dGluZyB1cCB3YXJuaW5nIGNvbG9yICYgY29udHJhc3QgcGFsZXR0ZXNcclxuICAgICAgY29uc3Qgd2FybmluZ0NvbG9yID0gdGhlbWVDb25maWcud2FybmluZ0NvbG9yO1xyXG4gICAgICBjb25zdCB3YXJuaW5nQ29udHJhc3QgPSB0aGVtZUNvbmZpZy53YXJuaW5nQ29udHJhc3Q7XHJcbiAgICAgIGlmICh3YXJuaW5nQ29sb3IgJiYgSlNPTi5zdHJpbmdpZnkod2FybmluZ0NvbG9yKSAhPT0gJ3t9Jykge1xyXG4gICAgICAgIHRoaXMudXBkYXRlUGFsZXR0ZSgnd2FybicsIENPTE9SX1BBTEVUVEUsIHdhcm5pbmdDb2xvcik7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHdhcm5pbmdDb250cmFzdCAmJiBKU09OLnN0cmluZ2lmeSh3YXJuaW5nQ29udHJhc3QpICE9PSAne30nKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCd3YXJuJywgQ09OVFJBU1RfUEFMRVRURSwgd2FybmluZ0NvbnRyYXN0KTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmluaXRFeHRlbmRlZFBhbGV0dGVzKHRoZW1lQ29uZmlnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIHRoZW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGVOYW1lIFBhbGV0dGUgbmFtZVxyXG4gICAqIEBwYXJhbSBwYWxldHRlVHlwZSBQYWxldHRlIHR5cGVcclxuICAgKiBAcGFyYW0gcGFsZXR0ZSBQYWxldHRlIHZhbHVlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyB1cGRhdGVQYWxldHRlKHBhbGV0dGVOYW1lOiBzdHJpbmcsIHBhbGV0dGVUeXBlOiBzdHJpbmcsIHBhbGV0dGU6IFRoZW1lUGFsZXR0ZUNvbG9yc01vZGVsKTogdm9pZCB7XHJcbiAgICBpZiAocGFsZXR0ZVR5cGUgPT0gQ09MT1JfUEFMRVRURSkge1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnNTAnLCBwYWxldHRlLmZpZnR5KTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzEwMCcsIHBhbGV0dGUub25lSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICcyMDAnLCBwYWxldHRlLnR3b0h1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnMzAwJywgcGFsZXR0ZS50aHJlZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnNDAwJywgcGFsZXR0ZS5mb3VySHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc1MDAnLCBwYWxldHRlLmZpdmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzYwMCcsIHBhbGV0dGUuc2l4SHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc3MDAnLCBwYWxldHRlLnNldmVuSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc4MDAnLCBwYWxldHRlLmVpZ2h0SHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc5MDAnLCBwYWxldHRlLm5pbmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJ0ExMDAnLCBwYWxldHRlLmExMDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTIwMCcsIHBhbGV0dGUuYTIwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICdBMzAwJywgcGFsZXR0ZS5hMzAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJ0E0MDAnLCBwYWxldHRlLmE0MDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTUwMCcsIHBhbGV0dGUuYTUwMCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChwYWxldHRlVHlwZSA9PSBDT05UUkFTVF9QQUxFVFRFKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc1MCcsIHBhbGV0dGUuZmlmdHkpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnMTAwJywgcGFsZXR0ZS5vbmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzIwMCcsIHBhbGV0dGUudHdvSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICczMDAnLCBwYWxldHRlLnRocmVlSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc0MDAnLCBwYWxldHRlLmZvdXJIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzUwMCcsIHBhbGV0dGUuZml2ZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnNjAwJywgcGFsZXR0ZS5zaXhIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzcwMCcsIHBhbGV0dGUuc2V2ZW5IdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzgwMCcsIHBhbGV0dGUuZWlnaHRIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzkwMCcsIHBhbGV0dGUubmluZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnQTEwMCcsIHBhbGV0dGUuYTEwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICdBMjAwJywgcGFsZXR0ZS5hMjAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJ0EzMDAnLCBwYWxldHRlLmEzMDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnQTQwMCcsIHBhbGV0dGUuYTQwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICdBNTAwJywgcGFsZXR0ZS5hNTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIGNvbG9yIENTUyB2YXJpYWJsZSBmb3IgdGhlIGdpdmVuIHRoZW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGUgUGFsZXR0ZSB0byB1cGRhdGVcclxuICAgKiBAcGFyYW0gcGFydCBQYXJ0IG51bWJlclxyXG4gICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byByZXBsYWNlIHdpdGhcclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlQ29sb3IocGFsZXR0ZTogc3RyaW5nLCBwYXJ0OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgY3NzVmFyID0gYC0tJHtwYWxldHRlfS1jb2xvci0ke3BhcnR9LXBhcnRzYDtcclxuICAgIGlmICh2YWx1ZS5pbmNsdWRlcygnIycpKSB7XHJcbiAgICAgIGNvbnN0IHJnYiA9IHRoaXMuaGV4VG9SZ2IodmFsdWUpO1xyXG4gICAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgJHtjc3NWYXJ9LXJnYmAsIGAke3JnYi5yfSwgJHtyZ2IuZ30sICR7cmdiLmJ9YCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShjc3NWYXIsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIGNvbG9yIGNvbnRyYXN0IENTUyB2YXJpYWJsZSBmb3IgdGhlIGdpdmVuIHRoZW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGUgUGFsZXR0ZSB0byB1cGRhdGVcclxuICAgKiBAcGFyYW0gcGFydCBQYXJ0IG51bWJlclxyXG4gICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byByZXBsYWNlIHdpdGhcclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlQ29udHJhc3QocGFsZXR0ZTogc3RyaW5nLCBwYXJ0OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlID09PSAnIzAwMDAwMCcgfHwgdmFsdWUgPT09ICcjMDAwJykgdmFsdWUgPSAnIzAwMDAwMGRlJzsgLy8gdXBkYXRlcyB0byBibGFjayB3aXRoIDg3JSBvcGFjaXR5IHBlciBkZXNpZ24gYmVzdCBwcmFjdGljZXMgLi4uXHJcbiAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgLS0ke3BhbGV0dGV9LWNvbG9yLWNvbnRyYXN0LSR7cGFydH0tcGFydHNgLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBpbml0aWFsaXplcyB0aGUgZXh0ZW5kZWQgcGFsZXR0ZXNcclxuICAgKiBAcGFyYW0gdGhlbWVDb25maWcgVGhlIHRoZW1lIGNvbmZpZ1xyXG4gICAqL1xyXG4gIHByaXZhdGUgaW5pdEV4dGVuZGVkUGFsZXR0ZXModGhlbWVDb25maWc6IFRoZW1lUGFsZXR0ZU1vZGVsKTogdm9pZCB7XHJcbiAgICAvLyBTZXR0aW5nIHVwIGVycm9yIGNvbG9yICYgY29udHJhc3QgcGFsZXR0ZXNcclxuICAgIGNvbnN0IGVycm9yQ29sb3IgPSB0aGVtZUNvbmZpZy5lcnJvckNvbG9yO1xyXG4gICAgY29uc3QgZXJyb3JDb250cmFzdCA9IHRoZW1lQ29uZmlnLmVycm9yQ29udHJhc3Q7XHJcbiAgICBpZiAoZXJyb3JDb2xvciAmJiBKU09OLnN0cmluZ2lmeShlcnJvckNvbG9yKSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2Vycm9yJywgQ09MT1JfUEFMRVRURSwgZXJyb3JDb2xvcik7XHJcbiAgICB9XHJcbiAgICBpZiAoZXJyb3JDb250cmFzdCAmJiBKU09OLnN0cmluZ2lmeShlcnJvckNvbnRyYXN0KSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2Vycm9yJywgQ09OVFJBU1RfUEFMRVRURSwgZXJyb3JDb250cmFzdCk7XHJcbiAgICB9XHJcbiAgICAvLyBTZXR0aW5nIHVwIGluZm8gY29sb3IgJiBjb250cmFzdCBwYWxldHRlc1xyXG4gICAgY29uc3QgaW5mb0NvbG9yID0gdGhlbWVDb25maWcuaW5mb0NvbG9yO1xyXG4gICAgY29uc3QgaW5mb0NvbnRyYXN0ID0gdGhlbWVDb25maWcuaW5mb0NvbnRyYXN0O1xyXG4gICAgaWYgKGluZm9Db2xvciAmJiBKU09OLnN0cmluZ2lmeShpbmZvQ29sb3IpICE9PSAne30nKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlUGFsZXR0ZSgnaW5mbycsIENPTE9SX1BBTEVUVEUsIGluZm9Db2xvcik7XHJcbiAgICB9XHJcbiAgICBpZiAoaW5mb0NvbnRyYXN0ICYmIEpTT04uc3RyaW5naWZ5KGluZm9Db250cmFzdCkgIT09ICd7fScpIHtcclxuICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdpbmZvJywgQ09OVFJBU1RfUEFMRVRURSwgaW5mb0NvbnRyYXN0KTtcclxuICAgIH1cclxuICAgIC8vIFNldHRpbmcgdXAgc3VjY2VzcyBjb2xvciAmIGNvbnRyYXN0IHBhbGV0dGVzXHJcbiAgICBjb25zdCBzdWNjZXNzQ29sb3IgPSB0aGVtZUNvbmZpZy5zdWNjZXNzQ29sb3I7XHJcbiAgICBjb25zdCBzdWNjZXNzQ29udHJhc3QgPSB0aGVtZUNvbmZpZy5zdWNjZXNzQ29udHJhc3Q7XHJcbiAgICBpZiAoc3VjY2Vzc0NvbG9yICYmIEpTT04uc3RyaW5naWZ5KHN1Y2Nlc3NDb2xvcikgIT09ICd7fScpIHtcclxuICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdzdWNjZXNzJywgQ09MT1JfUEFMRVRURSwgc3VjY2Vzc0NvbG9yKTtcclxuICAgIH1cclxuICAgIGlmIChzdWNjZXNzQ29udHJhc3QgJiYgSlNPTi5zdHJpbmdpZnkoc3VjY2Vzc0NvbnRyYXN0KSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ3N1Y2Nlc3MnLCBDT05UUkFTVF9QQUxFVFRFLCBzdWNjZXNzQ29udHJhc3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgdGhlIGhleCBjb2RlIHRvIFJHQlxyXG4gICAqIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzU2MjM4MzgvcmdiLXRvLWhleC1hbmQtaGV4LXRvLXJnYlxyXG4gICAqIEBwYXJhbSBoZXggVGhlIGhleCBjb2RlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBoZXhUb1JnYihoZXg6IHN0cmluZyk6IHtyOiBudW1iZXIsIGc6IG51bWJlciwgYjogbnVtYmVyfSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSAvXiM/KFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pJC9pLmV4ZWMoaGV4KTtcclxuXHJcbiAgICByZXR1cm4gcmVzdWx0ID8ge1xyXG4gICAgICByOiBwYXJzZUludChyZXN1bHRbMV0sIDE2KSxcclxuICAgICAgZzogcGFyc2VJbnQocmVzdWx0WzJdLCAxNiksXHJcbiAgICAgIGI6IHBhcnNlSW50KHJlc3VsdFszXSwgMTYpXHJcbiAgICB9IDogdW5kZWZpbmVkO1xyXG4gIH1cclxufVxyXG5cclxuIl19
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FybWF0dXJlL3NyYy9saWIvdGhlbWluZy9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHM0MsaUNBQWlDO0FBQ2pDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQztBQUU5QixvQ0FBb0M7QUFDcEMsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUM7QUFFcEMsd0JBQXdCO0FBSXhCLE1BQU0sT0FBTyxZQUFZO0lBSHpCO1FBS21CLGFBQVEsR0FBYSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0EyS3hEO0lBektDOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxXQUE4QjtRQUMvQyxJQUFJLFdBQVcsRUFBRTtZQUNmLCtDQUErQztZQUMvQyxNQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsWUFBWSxDQUFDO1lBQzlDLE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxlQUFlLENBQUM7WUFDcEQsSUFBSSxZQUFZLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7Z0JBQ3pELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQzthQUM1RDtZQUNELElBQUksZUFBZSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLEtBQUssSUFBSSxFQUFFO2dCQUMvRCxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsQ0FBQzthQUNsRTtZQUNELDhDQUE4QztZQUM5QyxNQUFNLFdBQVcsR0FBRyxXQUFX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QVMsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDekQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDO1NBQzVEO1FBQ0QsSUFBSSxlQUFlLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDL0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7U0FDbEU7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFFBQVEsQ0FBQyxHQUFXO1FBQzFCLE1BQU0sTUFBTSxHQUFHLDJDQUEyQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyRSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDZCxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUIsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFCLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztTQUMzQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEIsQ0FBQzs4R0E1S1UsWUFBWTtrSEFBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUaGVtZVBhbGV0dGVDb2xvcnNNb2RlbCwgVGhlbWVQYWxldHRlTW9kZWwgfSBmcm9tICcuLi8uLi9jb3JlL2NsaWVudC1nZW5lcmF0ZWQvbW9kZWwvbW9kZWxzJztcclxuXHJcbi8qKiBUaGUgY29sb3IgcGFsZXR0ZSBjb25zdGFudCAqL1xyXG5jb25zdCBDT0xPUl9QQUxFVFRFID0gJ2NvbG9yJztcclxuXHJcbi8qKiBUaGUgY29udHJhc3QgcGFsZXR0ZSBjb25zdGFudCAqL1xyXG5jb25zdCBDT05UUkFTVF9QQUxFVFRFID0gJ2NvbnRyYXN0JztcclxuXHJcbi8qKiBUaGUgVGhlbWUgU2VydmljZSAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUaGVtZVNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemVzIHRoZSBwYWxldHRlXHJcbiAgICogQHBhcmFtIHRoZW1lQ29uZmlnIFRoZSB0aGVtZSBjb25maWd1cmF0aW9uc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBpbml0UGFsZXR0ZSh0aGVtZUNvbmZpZzogVGhlbWVQYWxldHRlTW9kZWwpOiB2b2lkIHtcclxuICAgIGlmICh0aGVtZUNvbmZpZykge1xyXG4gICAgICAvLyBTZXR0aW5nIHVwIHByaW1hcnkgY29sb3IgJiBjb250cmFzdCBwYWxldHRlc1xyXG4gICAgICBjb25zdCBwcmltYXJ5Q29sb3IgPSB0aGVtZUNvbmZpZy5wcmltYXJ5Q29sb3I7XHJcbiAgICAgIGNvbnN0IHByaW1hcnlDb250cmFzdCA9IHRoZW1lQ29uZmlnLnByaW1hcnlDb250cmFzdDtcclxuICAgICAgaWYgKHByaW1hcnlDb2xvciAmJiBKU09OLnN0cmluZ2lmeShwcmltYXJ5Q29sb3IpICE9PSAne30nKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdwcmltYXJ5JywgQ09MT1JfUEFMRVRURSwgcHJpbWFyeUNvbG9yKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAocHJpbWFyeUNvbnRyYXN0ICYmIEpTT04uc3RyaW5naWZ5KHByaW1hcnlDb250cmFzdCkgIT09ICd7fScpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ3ByaW1hcnknLCBDT05UUkFTVF9QQUxFVFRFLCBwcmltYXJ5Q29udHJhc3QpO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIFNldHRpbmcgdXAgYWNjZW50IGNvbG9yICYgY29udHJhc3QgcGFsZXR0ZXNcclxuICAgICAgY29uc3QgYWNjZW50Q29sb3IgPSB0aGVtZUNvbmZpZy5hY2NlbnRDb2xvcjtcclxuICAgICAgY29uc3QgYWNjZW50Q29udHJhc3QgPSB0aGVtZUNvbmZpZy5hY2NlbnRDb250cmFzdDtcclxuICAgICAgaWYgKGFjY2VudENvbG9yICYmIEpTT04uc3RyaW5naWZ5KGFjY2VudENvbG9yKSAhPT0gJ3t9Jykge1xyXG4gICAgICAgIHRoaXMudXBkYXRlUGFsZXR0ZSgnYWNjZW50JywgQ09MT1JfUEFMRVRURSwgYWNjZW50Q29sb3IpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChhY2NlbnRDb250cmFzdCAmJiBKU09OLnN0cmluZ2lmeShhY2NlbnRDb250cmFzdCkgIT09ICd7fScpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2FjY2VudCcsIENPTlRSQVNUX1BBTEVUVEUsIGFjY2VudENvbnRyYXN0KTtcclxuICAgICAgfVxyXG4gICAgICAvLyBTZXR0aW5nIHVwIHdhcm5pbmcgY29sb3IgJiBjb250cmFzdCBwYWxldHRlc1xyXG4gICAgICBjb25zdCB3YXJuaW5nQ29sb3IgPSB0aGVtZUNvbmZpZy53YXJuaW5nQ29sb3I7XHJcbiAgICAgIGNvbnN0IHdhcm5pbmdDb250cmFzdCA9IHRoZW1lQ29uZmlnLndhcm5pbmdDb250cmFzdDtcclxuICAgICAgaWYgKHdhcm5pbmdDb2xvciAmJiBKU09OLnN0cmluZ2lmeSh3YXJuaW5nQ29sb3IpICE9PSAne30nKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCd3YXJuJywgQ09MT1JfUEFMRVRURSwgd2FybmluZ0NvbG9yKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAod2FybmluZ0NvbnRyYXN0ICYmIEpTT04uc3RyaW5naWZ5KHdhcm5pbmdDb250cmFzdCkgIT09ICd7fScpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ3dhcm4nLCBDT05UUkFTVF9QQUxFVFRFLCB3YXJuaW5nQ29udHJhc3QpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaW5pdEV4dGVuZGVkUGFsZXR0ZXModGhlbWVDb25maWcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlcyB0aGUgdGhlbWVcclxuICAgKiBAcGFyYW0gcGFsZXR0ZU5hbWUgUGFsZXR0ZSBuYW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGVUeXBlIFBhbGV0dGUgdHlwZVxyXG4gICAqIEBwYXJhbSBwYWxldHRlIFBhbGV0dGUgdmFsdWVzXHJcbiAgICovXHJcbiAgcHVibGljIHVwZGF0ZVBhbGV0dGUocGFsZXR0ZU5hbWU6IHN0cmluZywgcGFsZXR0ZVR5cGU6IHN0cmluZywgcGFsZXR0ZTogVGhlbWVQYWxldHRlQ29sb3JzTW9kZWwpOiB2b2lkIHtcclxuICAgIGlmIChwYWxldHRlVHlwZSA9PSBDT0xPUl9QQUxFVFRFKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc1MCcsIHBhbGV0dGUuZmlmdHkpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnMTAwJywgcGFsZXR0ZS5vbmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzIwMCcsIHBhbGV0dGUudHdvSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICczMDAnLCBwYWxldHRlLnRocmVlSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICc0MDAnLCBwYWxldHRlLmZvdXJIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzUwMCcsIHBhbGV0dGUuZml2ZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnNjAwJywgcGFsZXR0ZS5zaXhIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzcwMCcsIHBhbGV0dGUuc2V2ZW5IdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzgwMCcsIHBhbGV0dGUuZWlnaHRIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJzkwMCcsIHBhbGV0dGUubmluZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTUwJywgcGFsZXR0ZS5hNTApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTEwMCcsIHBhbGV0dGUuYTEwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICdBMjAwJywgcGFsZXR0ZS5hMjAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJ0EzMDAnLCBwYWxldHRlLmEzMDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTQwMCcsIHBhbGV0dGUuYTQwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICdBNTAwJywgcGFsZXR0ZS5hNTAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJ0E2MDAnLCBwYWxldHRlLmE2MDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKHBhbGV0dGVOYW1lLCAnQTcwMCcsIHBhbGV0dGUuYTcwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IocGFsZXR0ZU5hbWUsICdBODAwJywgcGFsZXR0ZS5hODAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb2xvcihwYWxldHRlTmFtZSwgJ0E5MDAnLCBwYWxldHRlLmE5MDApO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAocGFsZXR0ZVR5cGUgPT0gQ09OVFJBU1RfUEFMRVRURSkge1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnNTAnLCBwYWxldHRlLmZpZnR5KTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzEwMCcsIHBhbGV0dGUub25lSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICcyMDAnLCBwYWxldHRlLnR3b0h1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnMzAwJywgcGFsZXR0ZS50aHJlZUh1bmRyZWQpO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnNDAwJywgcGFsZXR0ZS5mb3VySHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc1MDAnLCBwYWxldHRlLmZpdmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJzYwMCcsIHBhbGV0dGUuc2l4SHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc3MDAnLCBwYWxldHRlLnNldmVuSHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc4MDAnLCBwYWxldHRlLmVpZ2h0SHVuZHJlZCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICc5MDAnLCBwYWxldHRlLm5pbmVIdW5kcmVkKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJ0E1MCcsIHBhbGV0dGUuYTUwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJ0ExMDAnLCBwYWxldHRlLmExMDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnQTIwMCcsIHBhbGV0dGUuYTIwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICdBMzAwJywgcGFsZXR0ZS5hMzAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJ0E0MDAnLCBwYWxldHRlLmE0MDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnQTUwMCcsIHBhbGV0dGUuYTUwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICdBNjAwJywgcGFsZXR0ZS5hNjAwKTtcclxuICAgICAgdGhpcy51cGRhdGVDb250cmFzdChwYWxldHRlTmFtZSwgJ0E3MDAnLCBwYWxldHRlLmE3MDApO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyYXN0KHBhbGV0dGVOYW1lLCAnQTgwMCcsIHBhbGV0dGUuYTgwMCk7XHJcbiAgICAgIHRoaXMudXBkYXRlQ29udHJhc3QocGFsZXR0ZU5hbWUsICdBOTAwJywgcGFsZXR0ZS5hOTAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIGNvbG9yIENTUyB2YXJpYWJsZSBmb3IgdGhlIGdpdmVuIHRoZW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGUgUGFsZXR0ZSB0byB1cGRhdGVcclxuICAgKiBAcGFyYW0gcGFydCBQYXJ0IG51bWJlclxyXG4gICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byByZXBsYWNlIHdpdGhcclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlQ29sb3IocGFsZXR0ZTogc3RyaW5nLCBwYXJ0OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgY3NzVmFyID0gYC0tJHtwYWxldHRlfS1jb2xvci0ke3BhcnR9LXBhcnRzYDtcclxuICAgIGlmICh2YWx1ZS5pbmNsdWRlcygnIycpKSB7XHJcbiAgICAgIGNvbnN0IHJnYiA9IHRoaXMuaGV4VG9SZ2IodmFsdWUpO1xyXG4gICAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgJHtjc3NWYXJ9LXJnYmAsIGAke3JnYi5yfSwgJHtyZ2IuZ30sICR7cmdiLmJ9YCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShjc3NWYXIsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIGNvbG9yIGNvbnRyYXN0IENTUyB2YXJpYWJsZSBmb3IgdGhlIGdpdmVuIHRoZW1lXHJcbiAgICogQHBhcmFtIHBhbGV0dGUgUGFsZXR0ZSB0byB1cGRhdGVcclxuICAgKiBAcGFyYW0gcGFydCBQYXJ0IG51bWJlclxyXG4gICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byByZXBsYWNlIHdpdGhcclxuICAgKi9cclxuICBwdWJsaWMgdXBkYXRlQ29udHJhc3QocGFsZXR0ZTogc3RyaW5nLCBwYXJ0OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlID09PSAnIzAwMDAwMCcgfHwgdmFsdWUgPT09ICcjMDAwJykgdmFsdWUgPSAnIzAwMDAwMGRlJzsgLy8gdXBkYXRlcyB0byBibGFjayB3aXRoIDg3JSBvcGFjaXR5IHBlciBkZXNpZ24gYmVzdCBwcmFjdGljZXMgLi4uXHJcbiAgICB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShgLS0ke3BhbGV0dGV9LWNvbG9yLWNvbnRyYXN0LSR7cGFydH0tcGFydHNgLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBpbml0aWFsaXplcyB0aGUgZXh0ZW5kZWQgcGFsZXR0ZXNcclxuICAgKiBAcGFyYW0gdGhlbWVDb25maWcgVGhlIHRoZW1lIGNvbmZpZ1xyXG4gICAqL1xyXG4gIHByaXZhdGUgaW5pdEV4dGVuZGVkUGFsZXR0ZXModGhlbWVDb25maWc6IFRoZW1lUGFsZXR0ZU1vZGVsKTogdm9pZCB7XHJcbiAgICAvLyBTZXR0aW5nIHVwIGVycm9yIGNvbG9yICYgY29udHJhc3QgcGFsZXR0ZXNcclxuICAgIGNvbnN0IGVycm9yQ29sb3IgPSB0aGVtZUNvbmZpZy5lcnJvckNvbG9yO1xyXG4gICAgY29uc3QgZXJyb3JDb250cmFzdCA9IHRoZW1lQ29uZmlnLmVycm9yQ29udHJhc3Q7XHJcbiAgICBpZiAoZXJyb3JDb2xvciAmJiBKU09OLnN0cmluZ2lmeShlcnJvckNvbG9yKSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2Vycm9yJywgQ09MT1JfUEFMRVRURSwgZXJyb3JDb2xvcik7XHJcbiAgICB9XHJcbiAgICBpZiAoZXJyb3JDb250cmFzdCAmJiBKU09OLnN0cmluZ2lmeShlcnJvckNvbnRyYXN0KSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ2Vycm9yJywgQ09OVFJBU1RfUEFMRVRURSwgZXJyb3JDb250cmFzdCk7XHJcbiAgICB9XHJcbiAgICAvLyBTZXR0aW5nIHVwIGluZm8gY29sb3IgJiBjb250cmFzdCBwYWxldHRlc1xyXG4gICAgY29uc3QgaW5mb0NvbG9yID0gdGhlbWVDb25maWcuaW5mb0NvbG9yO1xyXG4gICAgY29uc3QgaW5mb0NvbnRyYXN0ID0gdGhlbWVDb25maWcuaW5mb0NvbnRyYXN0O1xyXG4gICAgaWYgKGluZm9Db2xvciAmJiBKU09OLnN0cmluZ2lmeShpbmZvQ29sb3IpICE9PSAne30nKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlUGFsZXR0ZSgnaW5mbycsIENPTE9SX1BBTEVUVEUsIGluZm9Db2xvcik7XHJcbiAgICB9XHJcbiAgICBpZiAoaW5mb0NvbnRyYXN0ICYmIEpTT04uc3RyaW5naWZ5KGluZm9Db250cmFzdCkgIT09ICd7fScpIHtcclxuICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdpbmZvJywgQ09OVFJBU1RfUEFMRVRURSwgaW5mb0NvbnRyYXN0KTtcclxuICAgIH1cclxuICAgIC8vIFNldHRpbmcgdXAgc3VjY2VzcyBjb2xvciAmIGNvbnRyYXN0IHBhbGV0dGVzXHJcbiAgICBjb25zdCBzdWNjZXNzQ29sb3IgPSB0aGVtZUNvbmZpZy5zdWNjZXNzQ29sb3I7XHJcbiAgICBjb25zdCBzdWNjZXNzQ29udHJhc3QgPSB0aGVtZUNvbmZpZy5zdWNjZXNzQ29udHJhc3Q7XHJcbiAgICBpZiAoc3VjY2Vzc0NvbG9yICYmIEpTT04uc3RyaW5naWZ5KHN1Y2Nlc3NDb2xvcikgIT09ICd7fScpIHtcclxuICAgICAgdGhpcy51cGRhdGVQYWxldHRlKCdzdWNjZXNzJywgQ09MT1JfUEFMRVRURSwgc3VjY2Vzc0NvbG9yKTtcclxuICAgIH1cclxuICAgIGlmIChzdWNjZXNzQ29udHJhc3QgJiYgSlNPTi5zdHJpbmdpZnkoc3VjY2Vzc0NvbnRyYXN0KSAhPT0gJ3t9Jykge1xyXG4gICAgICB0aGlzLnVwZGF0ZVBhbGV0dGUoJ3N1Y2Nlc3MnLCBDT05UUkFTVF9QQUxFVFRFLCBzdWNjZXNzQ29udHJhc3QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udmVydHMgdGhlIGhleCBjb2RlIHRvIFJHQlxyXG4gICAqIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzU2MjM4MzgvcmdiLXRvLWhleC1hbmQtaGV4LXRvLXJnYlxyXG4gICAqIEBwYXJhbSBoZXggVGhlIGhleCBjb2RlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBoZXhUb1JnYihoZXg6IHN0cmluZyk6IHtyOiBudW1iZXIsIGc6IG51bWJlciwgYjogbnVtYmVyfSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSAvXiM/KFthLWZcXGRdezJ9KShbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pJC9pLmV4ZWMoaGV4KTtcclxuICAgIHJldHVybiByZXN1bHQgPyB7XHJcbiAgICAgIHI6IHBhcnNlSW50KHJlc3VsdFsxXSwgMTYpLFxyXG4gICAgICBnOiBwYXJzZUludChyZXN1bHRbMl0sIDE2KSxcclxuICAgICAgYjogcGFyc2VJbnQocmVzdWx0WzNdLCAxNilcclxuICAgIH0gOiB1bmRlZmluZWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -2485,11 +2485,16 @@ class ThemeService {
|
|
|
2485
2485
|
this.updateColor(paletteName, '700', palette.sevenHundred);
|
|
2486
2486
|
this.updateColor(paletteName, '800', palette.eightHundred);
|
|
2487
2487
|
this.updateColor(paletteName, '900', palette.nineHundred);
|
|
2488
|
+
this.updateColor(paletteName, 'A50', palette.a50);
|
|
2488
2489
|
this.updateColor(paletteName, 'A100', palette.a100);
|
|
2489
2490
|
this.updateColor(paletteName, 'A200', palette.a200);
|
|
2490
2491
|
this.updateColor(paletteName, 'A300', palette.a300);
|
|
2491
2492
|
this.updateColor(paletteName, 'A400', palette.a400);
|
|
2492
2493
|
this.updateColor(paletteName, 'A500', palette.a500);
|
|
2494
|
+
this.updateColor(paletteName, 'A600', palette.a600);
|
|
2495
|
+
this.updateColor(paletteName, 'A700', palette.a700);
|
|
2496
|
+
this.updateColor(paletteName, 'A800', palette.a800);
|
|
2497
|
+
this.updateColor(paletteName, 'A900', palette.a900);
|
|
2493
2498
|
}
|
|
2494
2499
|
else if (paletteType == CONTRAST_PALETTE) {
|
|
2495
2500
|
this.updateContrast(paletteName, '50', palette.fifty);
|
|
@@ -2502,11 +2507,16 @@ class ThemeService {
|
|
|
2502
2507
|
this.updateContrast(paletteName, '700', palette.sevenHundred);
|
|
2503
2508
|
this.updateContrast(paletteName, '800', palette.eightHundred);
|
|
2504
2509
|
this.updateContrast(paletteName, '900', palette.nineHundred);
|
|
2510
|
+
this.updateContrast(paletteName, 'A50', palette.a50);
|
|
2505
2511
|
this.updateContrast(paletteName, 'A100', palette.a100);
|
|
2506
2512
|
this.updateContrast(paletteName, 'A200', palette.a200);
|
|
2507
2513
|
this.updateContrast(paletteName, 'A300', palette.a300);
|
|
2508
2514
|
this.updateContrast(paletteName, 'A400', palette.a400);
|
|
2509
2515
|
this.updateContrast(paletteName, 'A500', palette.a500);
|
|
2516
|
+
this.updateContrast(paletteName, 'A600', palette.a600);
|
|
2517
|
+
this.updateContrast(paletteName, 'A700', palette.a700);
|
|
2518
|
+
this.updateContrast(paletteName, 'A800', palette.a800);
|
|
2519
|
+
this.updateContrast(paletteName, 'A900', palette.a900);
|
|
2510
2520
|
}
|
|
2511
2521
|
}
|
|
2512
2522
|
/**
|