@valtimo/components 10.5.1 → 10.6.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/assets/css/carbon.scss +43 -65
- package/esm2020/lib/components/confirmation-modal/confirmation-modal.component.mjs +5 -4
- package/esm2020/lib/components/confirmation-modal/confirmation-modal.module.mjs +19 -4
- package/esm2020/lib/components/left-sidebar/left-sidebar.component.mjs +24 -12
- package/esm2020/lib/components/list/list.component.mjs +5 -8
- package/esm2020/lib/components/multi-input/carbon-multi-input.component.mjs +9 -3
- package/esm2020/lib/components/page-title/page-title.component.mjs +8 -2
- package/esm2020/lib/components/right-sidebar/right-sidebar.component.mjs +49 -8
- package/esm2020/lib/components/search-fields/search-fields.component.mjs +14 -2
- package/esm2020/lib/components/topbar/topbar.component.mjs +4 -3
- package/esm2020/lib/components/view-content/type-converters/booleanTypeConverter.mjs +4 -6
- package/esm2020/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +2 -2
- package/esm2020/lib/directives/index.mjs +18 -0
- package/esm2020/lib/directives/valtimo-ibm-modal-directive.module.mjs +33 -0
- package/esm2020/lib/directives/valtimo-ibm-modal.directive.mjs +68 -0
- package/esm2020/lib/models/list.model.mjs +1 -1
- package/esm2020/lib/services/shell.service.mjs +20 -3
- package/esm2020/public_api.mjs +2 -1
- package/fesm2015/valtimo-components.mjs +264 -48
- package/fesm2015/valtimo-components.mjs.map +1 -1
- package/fesm2020/valtimo-components.mjs +261 -47
- package/fesm2020/valtimo-components.mjs.map +1 -1
- package/lib/components/confirmation-modal/confirmation-modal.module.d.ts +2 -1
- package/lib/components/confirmation-modal/confirmation-modal.module.d.ts.map +1 -1
- package/lib/components/left-sidebar/left-sidebar.component.d.ts.map +1 -1
- package/lib/components/list/list.component.d.ts.map +1 -1
- package/lib/components/multi-input/carbon-multi-input.component.d.ts +3 -1
- package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
- package/lib/components/page-title/page-title.component.d.ts +1 -0
- package/lib/components/page-title/page-title.component.d.ts.map +1 -1
- package/lib/components/right-sidebar/right-sidebar.component.d.ts +10 -3
- package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
- package/lib/components/search-fields/search-fields.component.d.ts +3 -1
- package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
- package/lib/components/topbar/topbar.component.d.ts +1 -0
- package/lib/components/topbar/topbar.component.d.ts.map +1 -1
- package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts.map +1 -1
- package/lib/directives/index.d.ts +3 -0
- package/lib/directives/index.d.ts.map +1 -0
- package/lib/directives/valtimo-ibm-modal-directive.module.d.ts +9 -0
- package/lib/directives/valtimo-ibm-modal-directive.module.d.ts.map +1 -0
- package/lib/directives/valtimo-ibm-modal.directive.d.ts +17 -0
- package/lib/directives/valtimo-ibm-modal.directive.d.ts.map +1 -0
- package/lib/models/list.model.d.ts +1 -0
- package/lib/models/list.model.d.ts.map +1 -1
- package/lib/services/shell.service.d.ts +4 -0
- package/lib/services/shell.service.d.ts.map +1 -1
- package/package.json +4 -3
- package/public_api.d.ts +1 -0
- package/public_api.d.ts.map +1 -1
package/assets/css/carbon.scss
CHANGED
|
@@ -14,16 +14,16 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
$
|
|
18
|
-
$
|
|
19
|
-
$
|
|
20
|
-
$
|
|
21
|
-
$
|
|
22
|
-
$
|
|
23
|
-
$
|
|
24
|
-
$
|
|
25
|
-
$
|
|
26
|
-
$
|
|
17
|
+
$valtimo-blue-100: #002547;
|
|
18
|
+
$valtimo-blue-90: #002c54;
|
|
19
|
+
$valtimo-blue-80: #003361;
|
|
20
|
+
$valtimo-blue-70: #286198;
|
|
21
|
+
$valtimo-blue-60: #2b79bd;
|
|
22
|
+
$valtimo-blue-50: #61aedf;
|
|
23
|
+
$valtimo-blue-40: #8acff2;
|
|
24
|
+
$valtimo-blue-30: #aadcf6;
|
|
25
|
+
$valtimo-blue-20: #c9e9f9;
|
|
26
|
+
$valtimo-blue-10: #e9f6fd;
|
|
27
27
|
|
|
28
28
|
@use '@carbon/styles/scss/themes';
|
|
29
29
|
@use '@carbon/colors';
|
|
@@ -34,55 +34,55 @@ $ritense-blue-10: #f1f4f6;
|
|
|
34
34
|
themes.$white,
|
|
35
35
|
(
|
|
36
36
|
// Blue 80
|
|
37
|
-
active-primary: $
|
|
38
|
-
active-tertiary: $
|
|
37
|
+
active-primary: $valtimo-blue-80,
|
|
38
|
+
active-tertiary: $valtimo-blue-80,
|
|
39
39
|
// Blue 70
|
|
40
|
-
link-02: $
|
|
41
|
-
support-04: $
|
|
42
|
-
hover-primary-text: $
|
|
43
|
-
link-secondary: $
|
|
44
|
-
support-info: $
|
|
45
|
-
link-primary-hover: $
|
|
40
|
+
link-02: $valtimo-blue-70,
|
|
41
|
+
support-04: $valtimo-blue-70,
|
|
42
|
+
hover-primary-text: $valtimo-blue-70,
|
|
43
|
+
link-secondary: $valtimo-blue-70,
|
|
44
|
+
support-info: $valtimo-blue-70,
|
|
45
|
+
link-primary-hover: $valtimo-blue-70,
|
|
46
46
|
// Blue 60
|
|
47
|
-
interactive-01: $
|
|
48
|
-
interactive-03: $
|
|
49
|
-
interactive-04: $
|
|
50
|
-
link-01: $
|
|
51
|
-
focus: $
|
|
52
|
-
background-brand: $
|
|
53
|
-
interactive: $
|
|
54
|
-
border-interactive: $
|
|
55
|
-
link-primary: $
|
|
56
|
-
brand-01: $
|
|
57
|
-
brand-03: $
|
|
47
|
+
interactive-01: $valtimo-blue-60,
|
|
48
|
+
interactive-03: $valtimo-blue-60,
|
|
49
|
+
interactive-04: $valtimo-blue-60,
|
|
50
|
+
link-01: $valtimo-blue-60,
|
|
51
|
+
focus: $valtimo-blue-60,
|
|
52
|
+
background-brand: $valtimo-blue-60,
|
|
53
|
+
interactive: $valtimo-blue-60,
|
|
54
|
+
border-interactive: $valtimo-blue-60,
|
|
55
|
+
link-primary: $valtimo-blue-60,
|
|
56
|
+
brand-01: $valtimo-blue-60,
|
|
57
|
+
brand-03: $valtimo-blue-60,
|
|
58
58
|
// Blue 50
|
|
59
|
-
inverse-support-04: $
|
|
60
|
-
support-info-inverse: $
|
|
59
|
+
inverse-support-04: $valtimo-blue-50,
|
|
60
|
+
support-info-inverse: $valtimo-blue-50,
|
|
61
61
|
// Blue 40
|
|
62
|
-
inverse-link: $
|
|
63
|
-
link-inverse: $
|
|
62
|
+
inverse-link: $valtimo-blue-40,
|
|
63
|
+
link-inverse: $valtimo-blue-40,
|
|
64
64
|
// Blue 20
|
|
65
|
-
highlight: $
|
|
65
|
+
highlight: $valtimo-blue-20
|
|
66
66
|
)
|
|
67
67
|
)
|
|
68
68
|
);
|
|
69
69
|
|
|
70
70
|
@use '@carbon/styles/scss/components/button/tokens' as button-tokens with (
|
|
71
|
-
$button-primary-active: $
|
|
72
|
-
$button-tertiary-active: $
|
|
73
|
-
$button-primary-hover: $
|
|
74
|
-
$button-tertiary-hover: $
|
|
75
|
-
$button-primary: $
|
|
76
|
-
$button-tertiary: $
|
|
71
|
+
$button-primary-active: $valtimo-blue-80,
|
|
72
|
+
$button-tertiary-active: $valtimo-blue-80,
|
|
73
|
+
$button-primary-hover: $valtimo-blue-70,
|
|
74
|
+
$button-tertiary-hover: $valtimo-blue-70,
|
|
75
|
+
$button-primary: $valtimo-blue-60,
|
|
76
|
+
$button-tertiary: $valtimo-blue-60
|
|
77
77
|
);
|
|
78
78
|
|
|
79
79
|
@use '@carbon/styles/scss/components/tag/tokens' as tag-tokens with (
|
|
80
|
-
$tag-color-blue: $
|
|
81
|
-
$tag-background-blue: $
|
|
80
|
+
$tag-color-blue: $valtimo-blue-80,
|
|
81
|
+
$tag-background-blue: $valtimo-blue-20
|
|
82
82
|
);
|
|
83
83
|
|
|
84
84
|
@use '@carbon/styles/scss/components/notification/tokens' as notification-tokens with (
|
|
85
|
-
$notification-background-info: $
|
|
85
|
+
$notification-background-info: $valtimo-blue-10
|
|
86
86
|
);
|
|
87
87
|
|
|
88
88
|
@use '@carbon/styles';
|
|
@@ -96,25 +96,3 @@ body {
|
|
|
96
96
|
.cds--link--disabled {
|
|
97
97
|
pointer-events: none;
|
|
98
98
|
}
|
|
99
|
-
|
|
100
|
-
/*
|
|
101
|
-
- Appendix
|
|
102
|
-
|
|
103
|
-
-- Palettes
|
|
104
|
-
|
|
105
|
-
Ritense Blue palette:
|
|
106
|
-
/ Generated by matching #003361 to IBM Blue 80 from https://www.ibm.com/design/language/color/.
|
|
107
|
-
/ Then, https://noeldelgado.github.io/shadowlord was used to generate shades in steps of 13.5 percent.
|
|
108
|
-
|
|
109
|
-
Blue 100: #002547 (IBM #001141)
|
|
110
|
-
Blue 90: #002c54 (IBM #001d6c)
|
|
111
|
-
Blue 80: #003361 (IBM #002d9c)
|
|
112
|
-
Blue 70: #224f76 (IBM #0043ce)
|
|
113
|
-
Blue 60: #456a8c (IBM #0f62fe)
|
|
114
|
-
Blue 50: #6786a1 (IBM #4589ff)
|
|
115
|
-
Blue 40: #8aa1b6 (IBM #78a9ff)
|
|
116
|
-
Blue 30: #acbdcc (IBM #a6c8ff)
|
|
117
|
-
Blue 20: #cfd8e1 (IBM #d0e2ff)
|
|
118
|
-
Blue 10: #f1f4f6 (IBM #edf5ff)
|
|
119
|
-
|
|
120
|
-
*/
|
|
@@ -18,7 +18,8 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
18
18
|
import * as i0 from "@angular/core";
|
|
19
19
|
import * as i1 from "@angular/common";
|
|
20
20
|
import * as i2 from "carbon-components-angular";
|
|
21
|
-
import * as i3 from "
|
|
21
|
+
import * as i3 from "../../directives/valtimo-ibm-modal.directive";
|
|
22
|
+
import * as i4 from "@ngx-translate/core";
|
|
22
23
|
export class ConfirmationModalComponent {
|
|
23
24
|
constructor() {
|
|
24
25
|
this.titleTranslationKey = '';
|
|
@@ -52,10 +53,10 @@ export class ConfirmationModalComponent {
|
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
ConfirmationModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
55
|
-
ConfirmationModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: { titleTranslationKey: "titleTranslationKey", title: "title", content: "content", contentTranslationKey: "contentTranslationKey", confirmButtonText: "confirmButtonText", confirmButtonTextTranslationKey: "confirmButtonTextTranslationKey", cancelButtonText: "cancelButtonText", cancelButtonTextTranslationKey: "cancelButtonTextTranslationKey", showModalSubject$: "showModalSubject$", outputOnConfirm: "outputOnConfirm" }, outputs: { confirmEvent: "confirmEvent" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ibm-modal\n [open]=\"modalOpen$ | async\"\n *ngIf=\"{\n deleteTranslation: 'interface.delete' | translate,\n deleteConfirmationTranslation: 'interface.deleteConfirmation' | translate,\n cancelTranslation: 'interface.cancel' | translate,\n titleTranslation: titleTranslationKey | translate,\n contentTranslation: contentTranslationKey | translate,\n confirmButtonTranslation: confirmButtonTextTranslationKey | translate,\n cancelButtonTranslation: cancelButtonTextTranslationKey | translate\n } as obs\"\n>\n <ibm-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 ibmModalHeaderHeading>\n {{\n (titleTranslationKey !== obs.titleTranslation ? obs.titleTranslation : '') ||\n title ||\n obs.deleteTranslation\n }}\n </h3>\n </ibm-modal-header>\n <section ibmModalContent>\n {{\n (contentTranslationKey !== obs.contentTranslation ? obs.contentTranslation : '') ||\n content ||\n obs.deleteConfirmationTranslation\n }}\n </section>\n <ibm-modal-footer>\n <ng-container>\n <button ibmButton=\"secondary\" [attr.modal-primary-focus]=\"true\" (click)=\"closeModal()\">\n {{\n (cancelButtonTextTranslationKey !== obs.cancelButtonTranslation\n ? obs.cancelButtonTranslation\n : '') ||\n cancelButtonText ||\n obs.cancelTranslation\n }}\n </button>\n <button ibmButton=\"primary\" [attr.modal-primary-focus]=\"true\" (click)=\"confirm()\">\n {{\n (confirmButtonTextTranslationKey !== obs.confirmButtonTranslation\n ? obs.confirmButtonTranslation\n : '') ||\n confirmButtonText ||\n obs.deleteTranslation\n }}\n </button>\n </ng-container>\n </ibm-modal-footer>\n</ibm-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Modal, selector: "ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[ibmModalHeaderHeading]" }, { kind: "directive", type: i2.Button, selector: "[ibmButton]", inputs: ["ibmButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type:
|
|
56
|
+
ConfirmationModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ConfirmationModalComponent, selector: "valtimo-confirmation-modal", inputs: { titleTranslationKey: "titleTranslationKey", title: "title", content: "content", contentTranslationKey: "contentTranslationKey", confirmButtonText: "confirmButtonText", confirmButtonTextTranslationKey: "confirmButtonTextTranslationKey", cancelButtonText: "cancelButtonText", cancelButtonTextTranslationKey: "cancelButtonTextTranslationKey", showModalSubject$: "showModalSubject$", outputOnConfirm: "outputOnConfirm" }, outputs: { confirmEvent: "confirmEvent" }, ngImport: i0, template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ibm-modal\n valtimoIbmModal\n [open]=\"modalOpen$ | async\"\n *ngIf=\"{\n deleteTranslation: 'interface.delete' | translate,\n deleteConfirmationTranslation: 'interface.deleteConfirmation' | translate,\n cancelTranslation: 'interface.cancel' | translate,\n titleTranslation: titleTranslationKey | translate,\n contentTranslation: contentTranslationKey | translate,\n confirmButtonTranslation: confirmButtonTextTranslationKey | translate,\n cancelButtonTranslation: cancelButtonTextTranslationKey | translate\n } as obs\"\n>\n <ibm-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 ibmModalHeaderHeading>\n {{\n (titleTranslationKey !== obs.titleTranslation ? obs.titleTranslation : '') ||\n title ||\n obs.deleteTranslation\n }}\n </h3>\n </ibm-modal-header>\n <section ibmModalContent>\n {{\n (contentTranslationKey !== obs.contentTranslation ? obs.contentTranslation : '') ||\n content ||\n obs.deleteConfirmationTranslation\n }}\n </section>\n <ibm-modal-footer>\n <ng-container>\n <button ibmButton=\"secondary\" [attr.modal-primary-focus]=\"true\" (click)=\"closeModal()\">\n {{\n (cancelButtonTextTranslationKey !== obs.cancelButtonTranslation\n ? obs.cancelButtonTranslation\n : '') ||\n cancelButtonText ||\n obs.cancelTranslation\n }}\n </button>\n <button ibmButton=\"primary\" [attr.modal-primary-focus]=\"true\" (click)=\"confirm()\">\n {{\n (confirmButtonTextTranslationKey !== obs.confirmButtonTranslation\n ? obs.confirmButtonTranslation\n : '') ||\n confirmButtonText ||\n obs.deleteTranslation\n }}\n </button>\n </ng-container>\n </ibm-modal-footer>\n</ibm-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.Modal, selector: "ibm-modal", inputs: ["size", "theme", "ariaLabel", "open", "trigger", "hasScrollingContent"], outputs: ["overlaySelected", "close"] }, { kind: "component", type: i2.ModalHeader, selector: "ibm-modal-header", inputs: ["theme", "closeLabel", "showCloseButton"], outputs: ["closeSelect"] }, { kind: "component", type: i2.ModalFooter, selector: "ibm-modal-footer" }, { kind: "directive", type: i2.ModalContent, selector: "[ibmModalContent]", inputs: ["hasForm"] }, { kind: "directive", type: i2.ModalHeaderHeading, selector: "[ibmModalHeaderHeading]" }, { kind: "directive", type: i2.Button, selector: "[ibmButton]", inputs: ["ibmButton", "size", "skeleton", "iconOnly", "isExpressive"] }, { kind: "directive", type: i3.ValtimoIbmModalDirective, selector: "[valtimoIbmModal]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
|
|
56
57
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalComponent, decorators: [{
|
|
57
58
|
type: Component,
|
|
58
|
-
args: [{ selector: 'valtimo-confirmation-modal', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ibm-modal\n [open]=\"modalOpen$ | async\"\n *ngIf=\"{\n deleteTranslation: 'interface.delete' | translate,\n deleteConfirmationTranslation: 'interface.deleteConfirmation' | translate,\n cancelTranslation: 'interface.cancel' | translate,\n titleTranslation: titleTranslationKey | translate,\n contentTranslation: contentTranslationKey | translate,\n confirmButtonTranslation: confirmButtonTextTranslationKey | translate,\n cancelButtonTranslation: cancelButtonTextTranslationKey | translate\n } as obs\"\n>\n <ibm-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 ibmModalHeaderHeading>\n {{\n (titleTranslationKey !== obs.titleTranslation ? obs.titleTranslation : '') ||\n title ||\n obs.deleteTranslation\n }}\n </h3>\n </ibm-modal-header>\n <section ibmModalContent>\n {{\n (contentTranslationKey !== obs.contentTranslation ? obs.contentTranslation : '') ||\n content ||\n obs.deleteConfirmationTranslation\n }}\n </section>\n <ibm-modal-footer>\n <ng-container>\n <button ibmButton=\"secondary\" [attr.modal-primary-focus]=\"true\" (click)=\"closeModal()\">\n {{\n (cancelButtonTextTranslationKey !== obs.cancelButtonTranslation\n ? obs.cancelButtonTranslation\n : '') ||\n cancelButtonText ||\n obs.cancelTranslation\n }}\n </button>\n <button ibmButton=\"primary\" [attr.modal-primary-focus]=\"true\" (click)=\"confirm()\">\n {{\n (confirmButtonTextTranslationKey !== obs.confirmButtonTranslation\n ? obs.confirmButtonTranslation\n : '') ||\n confirmButtonText ||\n obs.deleteTranslation\n }}\n </button>\n </ng-container>\n </ibm-modal-footer>\n</ibm-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
59
|
+
args: [{ selector: 'valtimo-confirmation-modal', template: "<!--\n ~ Copyright 2015-2023 Ritense BV, the Netherlands.\n ~\n ~ Licensed under EUPL, Version 1.2 (the \"License\");\n ~ you may not use this file except in compliance with the License.\n ~ You may obtain a copy of the License at\n ~\n ~ https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n ~\n ~ Unless required by applicable law or agreed to in writing, software\n ~ distributed under the License is distributed on an \"AS IS\" basis,\n ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n ~ See the License for the specific language governing permissions and\n ~ limitations under the License.\n -->\n\n<ibm-modal\n valtimoIbmModal\n [open]=\"modalOpen$ | async\"\n *ngIf=\"{\n deleteTranslation: 'interface.delete' | translate,\n deleteConfirmationTranslation: 'interface.deleteConfirmation' | translate,\n cancelTranslation: 'interface.cancel' | translate,\n titleTranslation: titleTranslationKey | translate,\n contentTranslation: contentTranslationKey | translate,\n confirmButtonTranslation: confirmButtonTextTranslationKey | translate,\n cancelButtonTranslation: cancelButtonTextTranslationKey | translate\n } as obs\"\n>\n <ibm-modal-header [showCloseButton]=\"true\" (closeSelect)=\"closeModal()\">\n <h3 ibmModalHeaderHeading>\n {{\n (titleTranslationKey !== obs.titleTranslation ? obs.titleTranslation : '') ||\n title ||\n obs.deleteTranslation\n }}\n </h3>\n </ibm-modal-header>\n <section ibmModalContent>\n {{\n (contentTranslationKey !== obs.contentTranslation ? obs.contentTranslation : '') ||\n content ||\n obs.deleteConfirmationTranslation\n }}\n </section>\n <ibm-modal-footer>\n <ng-container>\n <button ibmButton=\"secondary\" [attr.modal-primary-focus]=\"true\" (click)=\"closeModal()\">\n {{\n (cancelButtonTextTranslationKey !== obs.cancelButtonTranslation\n ? obs.cancelButtonTranslation\n : '') ||\n cancelButtonText ||\n obs.cancelTranslation\n }}\n </button>\n <button ibmButton=\"primary\" [attr.modal-primary-focus]=\"true\" (click)=\"confirm()\">\n {{\n (confirmButtonTextTranslationKey !== obs.confirmButtonTranslation\n ? obs.confirmButtonTranslation\n : '') ||\n confirmButtonText ||\n obs.deleteTranslation\n }}\n </button>\n </ng-container>\n </ibm-modal-footer>\n</ibm-modal>\n", styles: ["/*!\n * Copyright 2015-2023 Ritense BV, the Netherlands.\n *\n * Licensed under EUPL, Version 1.2 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" basis,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n"] }]
|
|
59
60
|
}], propDecorators: { titleTranslationKey: [{
|
|
60
61
|
type: Input
|
|
61
62
|
}], title: [{
|
|
@@ -79,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
79
80
|
}], confirmEvent: [{
|
|
80
81
|
type: Output
|
|
81
82
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsZUFBZSxFQUEyQixNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBTy9ELE1BQU0sT0FBTywwQkFBMEI7SUFMdkM7UUFNVyx3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDekIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYiwwQkFBcUIsR0FBRyxFQUFFLENBQUM7UUFDM0Isc0JBQWlCLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLG9DQUErQixHQUFHLEVBQUUsQ0FBQztRQUNyQyxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIsbUNBQThCLEdBQUcsRUFBRSxDQUFDO1FBRXBDLG9CQUFlLEdBQVEsRUFBRSxDQUFDO1FBRXpCLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFdEQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0tBd0IzRDtJQXBCQyxVQUFVO1FBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDeEUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQzVDLENBQUM7O3dIQXJDVSwwQkFBMEI7NEdBQTFCLDBCQUEwQix5aEJDeEJ2QywrOUVBb0VBOzRGRDVDYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsNEJBQTRCOzhCQUs3QixtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLCtCQUErQjtzQkFBdkMsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csOEJBQThCO3NCQUF0QyxLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsdGltby1jb25maXJtYXRpb24tbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbk1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB0aXRsZVRyYW5zbGF0aW9uS2V5ID0gJyc7XG4gIEBJbnB1dCgpIHRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIGNvbnRlbnQgPSAnJztcbiAgQElucHV0KCkgY29udGVudFRyYW5zbGF0aW9uS2V5ID0gJyc7XG4gIEBJbnB1dCgpIGNvbmZpcm1CdXR0b25UZXh0ID0gJyc7XG4gIEBJbnB1dCgpIGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgY2FuY2VsQnV0dG9uVGV4dCA9ICcnO1xuICBASW5wdXQoKSBjYW5jZWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgc2hvd01vZGFsU3ViamVjdCQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIEBJbnB1dCgpIG91dHB1dE9uQ29uZmlybTogYW55ID0ge307XG5cbiAgQE91dHB1dCgpIGNvbmZpcm1FdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcmVhZG9ubHkgbW9kYWxPcGVuJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgc2hvd01vZGFsU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNsb3NlTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbE9wZW4kLm5leHQoZmFsc2UpO1xuICB9XG5cbiAgY29uZmlybSgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsT3BlbiQubmV4dChmYWxzZSk7XG4gICAgdGhpcy5jb25maXJtRXZlbnQuZW1pdCh0aGlzLm91dHB1dE9uQ29uZmlybSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zaG93TW9kYWxTdWJqZWN0JCkge1xuICAgICAgdGhpcy5zaG93TW9kYWxTdWJzY3JpcHRpb24gPSB0aGlzLnNob3dNb2RhbFN1YmplY3QkLnN1YnNjcmliZShzaG93TW9kYWwgPT4ge1xuICAgICAgICB0aGlzLm1vZGFsT3BlbiQubmV4dChzaG93TW9kYWwpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zaG93TW9kYWxTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGlibS1tb2RhbFxuICB2YWx0aW1vSWJtTW9kYWxcbiAgW29wZW5dPVwibW9kYWxPcGVuJCB8IGFzeW5jXCJcbiAgKm5nSWY9XCJ7XG4gICAgZGVsZXRlVHJhbnNsYXRpb246ICdpbnRlcmZhY2UuZGVsZXRlJyB8IHRyYW5zbGF0ZSxcbiAgICBkZWxldGVDb25maXJtYXRpb25UcmFuc2xhdGlvbjogJ2ludGVyZmFjZS5kZWxldGVDb25maXJtYXRpb24nIHwgdHJhbnNsYXRlLFxuICAgIGNhbmNlbFRyYW5zbGF0aW9uOiAnaW50ZXJmYWNlLmNhbmNlbCcgfCB0cmFuc2xhdGUsXG4gICAgdGl0bGVUcmFuc2xhdGlvbjogdGl0bGVUcmFuc2xhdGlvbktleSB8IHRyYW5zbGF0ZSxcbiAgICBjb250ZW50VHJhbnNsYXRpb246IGNvbnRlbnRUcmFuc2xhdGlvbktleSB8IHRyYW5zbGF0ZSxcbiAgICBjb25maXJtQnV0dG9uVHJhbnNsYXRpb246IGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXkgfCB0cmFuc2xhdGUsXG4gICAgY2FuY2VsQnV0dG9uVHJhbnNsYXRpb246IGNhbmNlbEJ1dHRvblRleHRUcmFuc2xhdGlvbktleSB8IHRyYW5zbGF0ZVxuICB9IGFzIG9ic1wiXG4+XG4gIDxpYm0tbW9kYWwtaGVhZGVyIFtzaG93Q2xvc2VCdXR0b25dPVwidHJ1ZVwiIChjbG9zZVNlbGVjdCk9XCJjbG9zZU1vZGFsKClcIj5cbiAgICA8aDMgaWJtTW9kYWxIZWFkZXJIZWFkaW5nPlxuICAgICAge3tcbiAgICAgICAgKHRpdGxlVHJhbnNsYXRpb25LZXkgIT09IG9icy50aXRsZVRyYW5zbGF0aW9uID8gb2JzLnRpdGxlVHJhbnNsYXRpb24gOiAnJykgfHxcbiAgICAgICAgICB0aXRsZSB8fFxuICAgICAgICAgIG9icy5kZWxldGVUcmFuc2xhdGlvblxuICAgICAgfX1cbiAgICA8L2gzPlxuICA8L2libS1tb2RhbC1oZWFkZXI+XG4gIDxzZWN0aW9uIGlibU1vZGFsQ29udGVudD5cbiAgICB7e1xuICAgICAgKGNvbnRlbnRUcmFuc2xhdGlvbktleSAhPT0gb2JzLmNvbnRlbnRUcmFuc2xhdGlvbiA/IG9icy5jb250ZW50VHJhbnNsYXRpb24gOiAnJykgfHxcbiAgICAgICAgY29udGVudCB8fFxuICAgICAgICBvYnMuZGVsZXRlQ29uZmlybWF0aW9uVHJhbnNsYXRpb25cbiAgICB9fVxuICA8L3NlY3Rpb24+XG4gIDxpYm0tbW9kYWwtZm9vdGVyPlxuICAgIDxuZy1jb250YWluZXI+XG4gICAgICA8YnV0dG9uIGlibUJ1dHRvbj1cInNlY29uZGFyeVwiIFthdHRyLm1vZGFsLXByaW1hcnktZm9jdXNdPVwidHJ1ZVwiIChjbGljayk9XCJjbG9zZU1vZGFsKClcIj5cbiAgICAgICAge3tcbiAgICAgICAgICAoY2FuY2VsQnV0dG9uVGV4dFRyYW5zbGF0aW9uS2V5ICE9PSBvYnMuY2FuY2VsQnV0dG9uVHJhbnNsYXRpb25cbiAgICAgICAgICAgID8gb2JzLmNhbmNlbEJ1dHRvblRyYW5zbGF0aW9uXG4gICAgICAgICAgICA6ICcnKSB8fFxuICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dCB8fFxuICAgICAgICAgICAgb2JzLmNhbmNlbFRyYW5zbGF0aW9uXG4gICAgICAgIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gaWJtQnV0dG9uPVwicHJpbWFyeVwiIFthdHRyLm1vZGFsLXByaW1hcnktZm9jdXNdPVwidHJ1ZVwiIChjbGljayk9XCJjb25maXJtKClcIj5cbiAgICAgICAge3tcbiAgICAgICAgICAoY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleSAhPT0gb2JzLmNvbmZpcm1CdXR0b25UcmFuc2xhdGlvblxuICAgICAgICAgICAgPyBvYnMuY29uZmlybUJ1dHRvblRyYW5zbGF0aW9uXG4gICAgICAgICAgICA6ICcnKSB8fFxuICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQgfHxcbiAgICAgICAgICAgIG9icy5kZWxldGVUcmFuc2xhdGlvblxuICAgICAgICB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvaWJtLW1vZGFsLWZvb3Rlcj5cbjwvaWJtLW1vZGFsPlxuIl19
|
|
@@ -18,18 +18,33 @@ import { CommonModule } from '@angular/common';
|
|
|
18
18
|
import { ConfirmationModalComponent } from './confirmation-modal.component';
|
|
19
19
|
import { ButtonModule, ModalModule } from 'carbon-components-angular';
|
|
20
20
|
import { TranslateModule } from '@ngx-translate/core';
|
|
21
|
+
import { ValtimoIbmModalDirectiveModule } from '../../directives';
|
|
21
22
|
import * as i0 from "@angular/core";
|
|
22
23
|
export class ConfirmationModalModule {
|
|
23
24
|
}
|
|
24
25
|
ConfirmationModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
25
|
-
ConfirmationModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, declarations: [ConfirmationModalComponent], imports: [CommonModule,
|
|
26
|
-
|
|
26
|
+
ConfirmationModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, declarations: [ConfirmationModalComponent], imports: [CommonModule,
|
|
27
|
+
ModalModule,
|
|
28
|
+
TranslateModule,
|
|
29
|
+
ButtonModule,
|
|
30
|
+
ValtimoIbmModalDirectiveModule], exports: [ConfirmationModalComponent] });
|
|
31
|
+
ConfirmationModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, imports: [CommonModule,
|
|
32
|
+
ModalModule,
|
|
33
|
+
TranslateModule,
|
|
34
|
+
ButtonModule,
|
|
35
|
+
ValtimoIbmModalDirectiveModule] });
|
|
27
36
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, decorators: [{
|
|
28
37
|
type: NgModule,
|
|
29
38
|
args: [{
|
|
30
39
|
declarations: [ConfirmationModalComponent],
|
|
31
|
-
imports: [
|
|
40
|
+
imports: [
|
|
41
|
+
CommonModule,
|
|
42
|
+
ModalModule,
|
|
43
|
+
TranslateModule,
|
|
44
|
+
ButtonModule,
|
|
45
|
+
ValtimoIbmModalDirectiveModule,
|
|
46
|
+
],
|
|
32
47
|
exports: [ConfirmationModalComponent],
|
|
33
48
|
}]
|
|
34
49
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLW1vZGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFhaEUsTUFBTSxPQUFPLHVCQUF1Qjs7cUhBQXZCLHVCQUF1QjtzSEFBdkIsdUJBQXVCLGlCQVZuQiwwQkFBMEIsYUFFdkMsWUFBWTtRQUNaLFdBQVc7UUFDWCxlQUFlO1FBQ2YsWUFBWTtRQUNaLDhCQUE4QixhQUV0QiwwQkFBMEI7c0hBRXpCLHVCQUF1QixZQVJoQyxZQUFZO1FBQ1osV0FBVztRQUNYLGVBQWU7UUFDZixZQUFZO1FBQ1osOEJBQThCOzRGQUlyQix1QkFBdUI7a0JBWG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixZQUFZO3dCQUNaLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnR9IGZyb20gJy4vY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQge0J1dHRvbk1vZHVsZSwgTW9kYWxNb2R1bGV9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtWYWx0aW1vSWJtTW9kYWxEaXJlY3RpdmVNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTW9kYWxNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBWYWx0aW1vSWJtTW9kYWxEaXJlY3RpdmVNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlIHt9XG4iXX0=
|
|
@@ -49,11 +49,12 @@ export class LeftSidebarComponent {
|
|
|
49
49
|
this.shellService.sideBarExpanded$,
|
|
50
50
|
this.shellService.mouseOnTopBar$,
|
|
51
51
|
this.shellService.largeScreen$,
|
|
52
|
+
this.shellService.collapsibleWidescreenMenu$,
|
|
52
53
|
])
|
|
53
54
|
.pipe(take(1))
|
|
54
|
-
.subscribe(([sideBarExpanded, mouseOnTopBar, largeScreen]) => {
|
|
55
|
+
.subscribe(([sideBarExpanded, mouseOnTopBar, largeScreen, collapsibleWidescreenMenu]) => {
|
|
55
56
|
const clickedInside = this.elementRef.nativeElement.contains(targetElement) || mouseOnTopBar;
|
|
56
|
-
if (!clickedInside && !largeScreen && sideBarExpanded) {
|
|
57
|
+
if (!clickedInside && (!largeScreen || collapsibleWidescreenMenu) && sideBarExpanded) {
|
|
57
58
|
this.shellService.setSideBarExpanded(false);
|
|
58
59
|
}
|
|
59
60
|
});
|
|
@@ -68,10 +69,14 @@ export class LeftSidebarComponent {
|
|
|
68
69
|
navigateToRoute(route, event) {
|
|
69
70
|
event.preventDefault();
|
|
70
71
|
this.router.navigate(route);
|
|
71
|
-
combineLatest([
|
|
72
|
+
combineLatest([
|
|
73
|
+
this.shellService.sideBarExpanded$,
|
|
74
|
+
this.shellService.largeScreen$,
|
|
75
|
+
this.shellService.collapsibleWidescreenMenu$,
|
|
76
|
+
])
|
|
72
77
|
.pipe(take(1))
|
|
73
|
-
.subscribe(([sideBarExpanded, largeScreen]) => {
|
|
74
|
-
if (!largeScreen && sideBarExpanded) {
|
|
78
|
+
.subscribe(([sideBarExpanded, largeScreen, collapsibleWidescreenMenu]) => {
|
|
79
|
+
if ((!largeScreen || collapsibleWidescreenMenu) && sideBarExpanded) {
|
|
75
80
|
this.shellService.setSideBarExpanded(false);
|
|
76
81
|
}
|
|
77
82
|
});
|
|
@@ -80,20 +85,27 @@ export class LeftSidebarComponent {
|
|
|
80
85
|
this.breakpointObserver
|
|
81
86
|
.observe(['(max-width: 1055px)', '(min-width: 1056px)'])
|
|
82
87
|
.subscribe(state => {
|
|
83
|
-
|
|
88
|
+
combineLatest([
|
|
89
|
+
this.shellService.sideBarExpanded$,
|
|
90
|
+
this.shellService.collapsibleWidescreenMenu$,
|
|
91
|
+
])
|
|
92
|
+
.pipe(take(1))
|
|
93
|
+
.subscribe(([sideBarExpanded, collapsibleWidescreenMenu]) => {
|
|
84
94
|
const breakpoints = state.breakpoints;
|
|
85
95
|
const breakpointKeys = Object.keys(breakpoints);
|
|
86
96
|
const smallScreen = breakpoints[breakpointKeys[0]];
|
|
87
97
|
const largeScreen = breakpoints[breakpointKeys[1]];
|
|
88
98
|
if (!this.breakpointsInitialized) {
|
|
89
|
-
if (smallScreen) {
|
|
90
|
-
this.shellService.
|
|
99
|
+
if (smallScreen || collapsibleWidescreenMenu) {
|
|
100
|
+
this.shellService.collapseSideBar();
|
|
91
101
|
}
|
|
92
102
|
this.breakpointsInitialized = true;
|
|
93
103
|
}
|
|
94
|
-
if (
|
|
95
|
-
(this.
|
|
96
|
-
|
|
104
|
+
if (!collapsibleWidescreenMenu) {
|
|
105
|
+
if ((this.lastSmallScreen && largeScreen && !sideBarExpanded) ||
|
|
106
|
+
(this.lastLargeScreen && smallScreen && sideBarExpanded)) {
|
|
107
|
+
this.shellService.toggleSideBar();
|
|
108
|
+
}
|
|
97
109
|
}
|
|
98
110
|
this.lastSmallScreen = smallScreen;
|
|
99
111
|
this.lastLargeScreen = largeScreen;
|
|
@@ -114,4 +126,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
114
126
|
type: HostListener,
|
|
115
127
|
args: ['document:click', ['$event.target']]
|
|
116
128
|
}] } });
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVmdC1zaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbGVmdC1zaWRlYmFyL2xlZnQtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2xlZnQtc2lkZWJhci9sZWZ0LXNpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFFWixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLGFBQWEsRUFBMkIsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBWXBDLE1BQU0sT0FBTyxvQkFBb0I7SUFtQy9CLFlBQ21CLGdCQUFrQyxFQUNsQyxVQUFzQixFQUN0QixhQUE0QixFQUM1QixXQUF3QixFQUN4QixZQUEwQixFQUMxQixrQkFBc0MsRUFDdEMsTUFBYztRQU5kLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFyQjFCLCtCQUEwQixHQUF5QyxFQUFFLENBQUM7UUFJcEUsZUFBVSxHQUFnQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQztRQUV0RSxxQkFBZ0Is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VyxFQUFFO3dCQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7cUJBQ25DO29CQUNELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUM7aUJBQ3BDO2dCQUVELElBQ0UsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLFdBQVcsSUFBSSxDQUFDLGVBQWUsQ0FBQztvQkFDekQsQ0FBQyxJQUFJLENBQUMsZUFBZSxJQUFJLFdBQVcsSUFBSSxlQUFlLENBQUMsRUFDeEQ7b0JBQ0EsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLEVBQUUsQ0FBQztpQkFDbkM7Z0JBRUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxXQUFXLENBQUM7Z0JBQ25DLElBQUksQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNoRCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7a0hBckdVLG9CQUFvQjtzR0FBcEIsb0JBQW9CLHNQQ3RDakMsKzZIQXFHQTs0RkQvRGEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLHNCQUFzQjt1UUFLTCxlQUFlO3NCQUF6QyxTQUFTO3VCQUFDLGNBQWM7Z0JBR2xCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlLCBNZW51SXRlbX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7TWVudVNlcnZpY2V9IGZyb20gJy4uL21lbnUvbWVudS5zZXJ2aWNlJztcbmltcG9ydCB7U2hlbGxTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaGVsbC5zZXJ2aWNlJztcbmltcG9ydCB7QnJlYWtwb2ludE9ic2VydmVyfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWxlZnQtc2lkZWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sZWZ0LXNpZGViYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWZ0LXNpZGViYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGVmdFNpZGViYXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCd0b2dnbGVCdXR0b24nKSB0b2dnbGVCdXR0b25SZWY6IEVsZW1lbnRSZWY7XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgcHVibGljIG9uUGFnZUNsaWNrKHRhcmdldEVsZW1lbnQpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnNpZGVCYXJFeHBhbmRlZCQsXG4gICAgICB0aGlzLnNoZWxsU2VydmljZS5tb3VzZU9uVG9wQmFyJCxcbiAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLmxhcmdlU2NyZWVuJCxcbiAgICBdKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtzaWRlQmFyRXhwYW5kZWQsIG1vdXNlT25Ub3BCYXIsIGxhcmdlU2NyZWVuXSkgPT4ge1xuICAgICAgICBjb25zdCBjbGlja2VkSW5zaWRlID1cbiAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KSB8fCBtb3VzZU9uVG9wQmFyO1xuXG4gICAgICAgIGlmICghY2xpY2tlZEluc2lkZSAmJiAhbGFyZ2VTY3JlZW4gJiYgc2lkZUJhckV4cGFuZGVkKSB7XG4gICAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2V0U2lkZUJhckV4cGFuZGVkKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgaW5jbHVkZUZ1bmN0aW9uT2JzZXJ2YWJsZXM6IHtba2V5OiBzdHJpbmddOiBPYnNlcnZhYmxlPGJvb2xlYW4+fSA9IHt9O1xuXG4gIHByaXZhdGUgYnJlYWtwb2ludFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICByZWFkb25seSBtZW51SXRlbXMkOiBPYnNlcnZhYmxlPEFycmF5PE1lbnVJdGVtPj4gPSB0aGlzLm1lbnVTZXJ2aWNlLm1lbnVJdGVtcyQ7XG5cbiAgcmVhZG9ubHkgc2lkZUJhckV4cGFuZGVkJCA9IHRoaXMuc2hlbGxTZXJ2aWNlLnNpZGVCYXJFeHBhbmRlZCQ7XG5cbiAgcHJpdmF0ZSBicmVha3BvaW50c0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgbGFzdFNtYWxsU2NyZWVuITogYm9vbGVhbjtcbiAgcHJpdmF0ZSBsYXN0TGFyZ2VTY3JlZW4hOiBib29sZWFuO1xuXG4gIHJlYWRvbmx5IGNsb3Nlc3RTZXF1ZW5jZSQ6IE9ic2VydmFibGU8c3RyaW5nPiA9IHRoaXMubWVudVNlcnZpY2UuY2xvc2VzdFNlcXVlbmNlJDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lbnVTZXJ2aWNlOiBNZW51U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNoZWxsU2VydmljZTogU2hlbGxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlclxuICApIHtcbiAgICB0aGlzLmluY2x1ZGVGdW5jdGlvbk9ic2VydmFibGVzID0gdGhpcy5tZW51U2VydmljZS5pbmNsdWRlRnVuY3Rpb25PYnNlcnZhYmxlcztcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5CcmVha3BvaW50U3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2V0U2lkZW5hdkVsZW1lbnQoXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY2RzLS1zaWRlLW5hdicpXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYnJlYWtwb2ludFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9Sb3V0ZShyb3V0ZTogQXJyYXk8c3RyaW5nPiwgZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUocm91dGUpO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5zaGVsbFNlcnZpY2Uuc2lkZUJhckV4cGFuZGVkJCwgdGhpcy5zaGVsbFNlcnZpY2UubGFyZ2VTY3JlZW4kXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbc2lkZUJhckV4cGFuZGVkLCBsYXJnZVNjcmVlbl0pID0+IHtcbiAgICAgICAgaWYgKCFsYXJnZVNjcmVlbiAmJiBzaWRlQmFyRXhwYW5kZWQpIHtcbiAgICAgICAgICB0aGlzLnNoZWxsU2VydmljZS5zZXRTaWRlQmFyRXhwYW5kZWQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb3BlbkJyZWFrcG9pbnRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXJcbiAgICAgIC5vYnNlcnZlKFsnKG1heC13aWR0aDogMTA1NXB4KScsICcobWluLXdpZHRoOiAxMDU2cHgpJ10pXG4gICAgICAuc3Vic2NyaWJlKHN0YXRlID0+IHtcbiAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2lkZUJhckV4cGFuZGVkJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShzaWRlQmFyRXhwYW5kZWQgPT4ge1xuICAgICAgICAgIGNvbnN0IGJyZWFrcG9pbnRzID0gc3RhdGUuYnJlYWtwb2ludHM7XG4gICAgICAgICAgY29uc3QgYnJlYWtwb2ludEtleXMgPSBPYmplY3Qua2V5cyhicmVha3BvaW50cyk7XG4gICAgICAgICAgY29uc3Qgc21hbGxTY3JlZW4gPSBicmVha3BvaW50c1ticmVha3BvaW50S2V5c1swXV07XG4gICAgICAgICAgY29uc3QgbGFyZ2VTY3JlZW4gPSBicmVha3BvaW50c1ticmVha3BvaW50S2V5c1sxXV07XG5cbiAgICAgICAgICBpZiAoIXRoaXMuYnJlYWtwb2ludHNJbml0aWFsaXplZCkge1xuICAgICAgICAgICAgaWYgKHNtYWxsU2NyZWVuKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnRvZ2dsZVNpZGVCYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuYnJlYWtwb2ludHNJbml0aWFsaXplZCA9IHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgKHRoaXMubGFzdFNtYWxsU2NyZWVuICYmIGxhcmdlU2NyZWVuICYmICFzaWRlQmFyRXhwYW5kZWQpIHx8XG4gICAgICAgICAgICAodGhpcy5sYXN0TGFyZ2VTY3JlZW4gJiYgc21hbGxTY3JlZW4gJiYgc2lkZUJhckV4cGFuZGVkKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2UudG9nZ2xlU2lkZUJhcigpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMubGFzdFNtYWxsU2NyZWVuID0gc21hbGxTY3JlZW47XG4gICAgICAgICAgdGhpcy5sYXN0TGFyZ2VTY3JlZW4gPSBsYXJnZVNjcmVlbjtcbiAgICAgICAgICB0aGlzLnNoZWxsU2VydmljZS5zZXRMYXJnZVNjcmVlbihsYXJnZVNjcmVlbik7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cbn1cbiIsIjwhLS1cbiAgfiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAgflxuICB+IExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICB+IHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgfiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAgflxuICB+IGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAgflxuICB+IFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgfiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gIH4gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gIH4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICB+IGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICAtLT5cblxuPGlibS1zaWRlbmF2XG4gICpuZ0lmPVwie1xuICAgIHNpZGVCYXJFeHBhbmRlZDogc2lkZUJhckV4cGFuZGVkJCB8IGFzeW5jLFxuICAgIGNsb3Nlc3RTZXF1ZW5jZTogY2xvc2VzdFNlcXVlbmNlJCB8IGFzeW5jXG4gIH0gYXMgb2JzXCJcbiAgW2FsbG93RXhwYW5zaW9uXT1cImZhbHNlXCJcbiAgW2V4cGFuZGVkXT1cIm9icy5zaWRlQmFyRXhwYW5kZWRcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBtZW51SXRlbSBvZiBtZW51SXRlbXMkIHwgYXN5bmNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW1lbnVJdGVtLmNoaWxkcmVuXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgdG9wTWVudUl0ZW07XG4gICAgICAgICAgY29udGV4dDoge21lbnVJdGVtOiBtZW51SXRlbSwgY2xvc2VzdFNlcXVlbmNlOiBvYnMuY2xvc2VzdFNlcXVlbmNlfVxuICAgICAgICBcIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtZW51SXRlbS5jaGlsZHJlblwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgIHRvcE1lbnVJdGVtO1xuICAgICAgICAgIGNvbnRleHQ6IHttZW51SXRlbTogbWVudUl0ZW0sIGNsb3Nlc3RTZXF1ZW5jZTogb2JzLmNsb3Nlc3RTZXF1ZW5jZX1cbiAgICAgICAgXCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzdWJNZW51SWNvbjsgY29udGV4dDoge21lbnVJdGVtOiBtZW51SXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDxpYm0tc2lkZW5hdi1tZW51IFt0aXRsZV09XCJtZW51SXRlbSB8IG1lbnVJdGVtVHJhbnNsYXRlIHwgYXN5bmNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY2hpbGRNZW51SXRlbSBvZiBtZW51SXRlbS5jaGlsZHJlblwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0lmPVwie2NvdW50OiBjaGlsZE1lbnVJdGVtPy5jb3VudCQgJiYgKGNoaWxkTWVudUl0ZW0/LmNvdW50JCB8IGFzeW5jKX0gYXMgdmFyc1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGlibS1zaWRlbmF2LWl0ZW1cbiAgICAgICAgICAgICAgW2hyZWZdPVwidmFycz8uY291bnQgPyAnamF2YXNjcmlwdDpyZXR1cm4gZmFsc2U7JyA6ICdqYXZhc2NyaXB0OnZvaWQoMCk7J1wiXG4gICAgICAgICAgICAgIChjbGljayk9XCJuYXZpZ2F0ZVRvUm91dGUoY2hpbGRNZW51SXRlbS5saW5rLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgW2FjdGl2ZV09XCInJyArIG1lbnVJdGVtLnNlcXVlbmNlICsgY2hpbGRNZW51SXRlbS5zZXF1ZW5jZSA9PT0gb2JzLmNsb3Nlc3RTZXF1ZW5jZVwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAnY2RzLS1zaWRlLW5hdl9faXRlbS0tZW1wdHknOiAhY2hpbGRNZW51SXRlbS5saW5rLFxuICAgICAgICAgICAgICAgICdtZW51LWl0ZW0tLWhpZGRlbic6IGNoaWxkTWVudUl0ZW0uaW5jbHVkZUZ1bmN0aW9uICE9PSB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgJ21lbnUtaXRlbS0tdmlzaWJsZSc6XG4gICAgICAgICAgICAgICAgICBjaGlsZE1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAoaW5jbHVkZUZ1bmN0aW9uT2JzZXJ2YWJsZXNbY2hpbGRNZW51SXRlbS50aXRsZV0gfCBhc3luYylcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDx2YWx0aW1vLW1lbnUtaXRlbS10ZXh0XG4gICAgICAgICAgICAgICAgW21lbnVJdGVtXT1cImNoaWxkTWVudUl0ZW1cIlxuICAgICAgICAgICAgICAgIFthY2NlbnRdPVwiIWNoaWxkTWVudUl0ZW0ubGlua1wiXG4gICAgICAgICAgICAgID48L3ZhbHRpbW8tbWVudS1pdGVtLXRleHQ+XG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImNvdW50VGVtcGxhdGU7IGNvbnRleHQ6IHtjb3VudDogdmFycy5jb3VudH1cIlxuICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2libS1zaWRlbmF2LWl0ZW0+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9pYm0tc2lkZW5hdi1tZW51PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvaWJtLXNpZGVuYXY+XG5cbjxuZy10ZW1wbGF0ZSAjc3ViTWVudUljb24gbGV0LW1lbnVJdGVtPVwibWVudUl0ZW1cIj5cbiAgPGRpdiBjbGFzcz1cIm1lbnUtaXRlbS1pY29uLWNvbnRhaW5lclwiPjxpIGNsYXNzPVwie3sgbWVudUl0ZW0uaWNvbkNsYXNzIH19XCI+PC9pPjwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0b3BNZW51SXRlbSBsZXQtbWVudUl0ZW09XCJtZW51SXRlbVwiIGxldC1jbG9zZXN0U2VxdWVuY2U9XCJjbG9zZXN0U2VxdWVuY2VcIj5cbiAgPGlibS1zaWRlbmF2LWl0ZW1cbiAgICBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcbiAgICAoY2xpY2spPVwibmF2aWdhdGVUb1JvdXRlKG1lbnVJdGVtLmxpbmssICRldmVudClcIlxuICAgICpuZ0lmPVwiIW1lbnVJdGVtLmNoaWxkcmVuXCJcbiAgICBbYWN0aXZlXT1cIicnICsgbWVudUl0ZW0uc2VxdWVuY2UgPT09IGNsb3Nlc3RTZXF1ZW5jZVwiXG4gICAgW25nQ2xhc3NdPVwie1xuICAgICAgJ21lbnUtaXRlbS0taGlkZGVuJzogbWVudUl0ZW0uaW5jbHVkZUZ1bmN0aW9uICE9PSB1bmRlZmluZWQsXG4gICAgICAnbWVudS1pdGVtLS12aXNpYmxlJzpcbiAgICAgICAgbWVudUl0ZW0uaW5jbHVkZUZ1bmN0aW9uICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgKGluY2x1ZGVGdW5jdGlvbk9ic2VydmFibGVzW21lbnVJdGVtLnRpdGxlXSB8IGFzeW5jKVxuICAgIH1cIlxuICA+XG4gICAgPHZhbHRpbW8tbWVudS1pdGVtLXRleHQgW21lbnVJdGVtXT1cIm1lbnVJdGVtXCI+PC92YWx0aW1vLW1lbnUtaXRlbS10ZXh0PlxuICA8L2libS1zaWRlbmF2LWl0ZW0+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NvdW50VGVtcGxhdGUgbGV0LWNvdW50PVwiY291bnRcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvdW50XCI+XG4gICAgPHNwYW4gY2xhc3M9XCJjYXNlLWNvdW50XCI+XG4gICAgICB7eyBjb3VudCB8IGNhc2VDb3VudCB9fVxuICAgIDwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVmdC1zaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvbGVmdC1zaWRlYmFyL2xlZnQtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2xlZnQtc2lkZWJhci9sZWZ0LXNpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFFWixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLGFBQWEsRUFBMkIsTUFBTSxNQUFNLENBQUM7QUFDN0QsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBWXBDLE1BQU0sT0FBTyxvQkFBb0I7SUFvQy9CLFlBQ21CLGdCQUFrQyxFQUNsQyxVQUFzQixFQUN0QixhQUE0QixFQUM1QixXQUF3QixFQUN4QixZQUEwQixFQUMxQixrQkFBc0MsRUFDdEMsTUFBYztRQU5kLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFyQjFCLCtCQUEwQixHQUF5QyxFQUFFLENBQUM7UUFJcEUsZUFBVSxHQUFnQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQztRQUV0RSxxQkFBZ0Is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Q29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT25EZXN0cm95LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7Y29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDb25maWdTZXJ2aWNlLCBNZW51SXRlbX0gZnJvbSAnQHZhbHRpbW8vY29uZmlnJztcbmltcG9ydCB7TWVudVNlcnZpY2V9IGZyb20gJy4uL21lbnUvbWVudS5zZXJ2aWNlJztcbmltcG9ydCB7U2hlbGxTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zaGVsbC5zZXJ2aWNlJztcbmltcG9ydCB7QnJlYWtwb2ludE9ic2VydmVyfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7Um91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWxlZnQtc2lkZWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sZWZ0LXNpZGViYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWZ0LXNpZGViYXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGVmdFNpZGViYXJDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCd0b2dnbGVCdXR0b24nKSB0b2dnbGVCdXR0b25SZWY6IEVsZW1lbnRSZWY7XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgcHVibGljIG9uUGFnZUNsaWNrKHRhcmdldEVsZW1lbnQpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnNpZGVCYXJFeHBhbmRlZCQsXG4gICAgICB0aGlzLnNoZWxsU2VydmljZS5tb3VzZU9uVG9wQmFyJCxcbiAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLmxhcmdlU2NyZWVuJCxcbiAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLmNvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnUkLFxuICAgIF0pXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoW3NpZGVCYXJFeHBhbmRlZCwgbW91c2VPblRvcEJhciwgbGFyZ2VTY3JlZW4sIGNvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGNsaWNrZWRJbnNpZGUgPVxuICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpIHx8IG1vdXNlT25Ub3BCYXI7XG5cbiAgICAgICAgaWYgKCFjbGlja2VkSW5zaWRlICYmICghbGFyZ2VTY3JlZW4gfHwgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSkgJiYgc2lkZUJhckV4cGFuZGVkKSB7XG4gICAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2V0U2lkZUJhckV4cGFuZGVkKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgaW5jbHVkZUZ1bmN0aW9uT2JzZXJ2YWJsZXM6IHtba2V5OiBzdHJpbmddOiBPYnNlcnZhYmxlPGJvb2xlYW4+fSA9IHt9O1xuXG4gIHByaXZhdGUgYnJlYWtwb2ludFN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICByZWFkb25seSBtZW51SXRlbXMkOiBPYnNlcnZhYmxlPEFycmF5PE1lbnVJdGVtPj4gPSB0aGlzLm1lbnVTZXJ2aWNlLm1lbnVJdGVtcyQ7XG5cbiAgcmVhZG9ubHkgc2lkZUJhckV4cGFuZGVkJCA9IHRoaXMuc2hlbGxTZXJ2aWNlLnNpZGVCYXJFeHBhbmRlZCQ7XG5cbiAgcHJpdmF0ZSBicmVha3BvaW50c0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgbGFzdFNtYWxsU2NyZWVuITogYm9vbGVhbjtcbiAgcHJpdmF0ZSBsYXN0TGFyZ2VTY3JlZW4hOiBib29sZWFuO1xuXG4gIHJlYWRvbmx5IGNsb3Nlc3RTZXF1ZW5jZSQ6IE9ic2VydmFibGU8c3RyaW5nPiA9IHRoaXMubWVudVNlcnZpY2UuY2xvc2VzdFNlcXVlbmNlJDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lbnVTZXJ2aWNlOiBNZW51U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNoZWxsU2VydmljZTogU2hlbGxTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlclxuICApIHtcbiAgICB0aGlzLmluY2x1ZGVGdW5jdGlvbk9ic2VydmFibGVzID0gdGhpcy5tZW51U2VydmljZS5pbmNsdWRlRnVuY3Rpb25PYnNlcnZhYmxlcztcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5CcmVha3BvaW50U3Vic2NyaXB0aW9uKCk7XG4gICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2V0U2lkZW5hdkVsZW1lbnQoXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY2RzLS1zaWRlLW5hdicpXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuYnJlYWtwb2ludFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5hdmlnYXRlVG9Sb3V0ZShyb3V0ZTogQXJyYXk8c3RyaW5nPiwgZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUocm91dGUpO1xuXG4gICAgY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnNoZWxsU2VydmljZS5zaWRlQmFyRXhwYW5kZWQkLFxuICAgICAgdGhpcy5zaGVsbFNlcnZpY2UubGFyZ2VTY3JlZW4kLFxuICAgICAgdGhpcy5zaGVsbFNlcnZpY2UuY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSQsXG4gICAgXSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChbc2lkZUJhckV4cGFuZGVkLCBsYXJnZVNjcmVlbiwgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudV0pID0+IHtcbiAgICAgICAgaWYgKCghbGFyZ2VTY3JlZW4gfHwgY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSkgJiYgc2lkZUJhckV4cGFuZGVkKSB7XG4gICAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2Uuc2V0U2lkZUJhckV4cGFuZGVkKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9wZW5CcmVha3BvaW50U3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuYnJlYWtwb2ludE9ic2VydmVyXG4gICAgICAub2JzZXJ2ZShbJyhtYXgtd2lkdGg6IDEwNTVweCknLCAnKG1pbi13aWR0aDogMTA1NnB4KSddKVxuICAgICAgLnN1YnNjcmliZShzdGF0ZSA9PiB7XG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnNpZGVCYXJFeHBhbmRlZCQsXG4gICAgICAgICAgdGhpcy5zaGVsbFNlcnZpY2UuY29sbGFwc2libGVXaWRlc2NyZWVuTWVudSQsXG4gICAgICAgIF0pXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKChbc2lkZUJhckV4cGFuZGVkLCBjb2xsYXBzaWJsZVdpZGVzY3JlZW5NZW51XSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYnJlYWtwb2ludHMgPSBzdGF0ZS5icmVha3BvaW50cztcbiAgICAgICAgICAgIGNvbnN0IGJyZWFrcG9pbnRLZXlzID0gT2JqZWN0LmtleXMoYnJlYWtwb2ludHMpO1xuICAgICAgICAgICAgY29uc3Qgc21hbGxTY3JlZW4gPSBicmVha3BvaW50c1ticmVha3BvaW50S2V5c1swXV07XG4gICAgICAgICAgICBjb25zdCBsYXJnZVNjcmVlbiA9IGJyZWFrcG9pbnRzW2JyZWFrcG9pbnRLZXlzWzFdXTtcblxuICAgICAgICAgICAgaWYgKCF0aGlzLmJyZWFrcG9pbnRzSW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgICAgaWYgKHNtYWxsU2NyZWVuIHx8IGNvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNoZWxsU2VydmljZS5jb2xsYXBzZVNpZGVCYXIoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB0aGlzLmJyZWFrcG9pbnRzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWNvbGxhcHNpYmxlV2lkZXNjcmVlbk1lbnUpIHtcbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICh0aGlzLmxhc3RTbWFsbFNjcmVlbiAmJiBsYXJnZVNjcmVlbiAmJiAhc2lkZUJhckV4cGFuZGVkKSB8fFxuICAgICAgICAgICAgICAgICh0aGlzLmxhc3RMYXJnZVNjcmVlbiAmJiBzbWFsbFNjcmVlbiAmJiBzaWRlQmFyRXhwYW5kZWQpXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnRvZ2dsZVNpZGVCYXIoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmxhc3RTbWFsbFNjcmVlbiA9IHNtYWxsU2NyZWVuO1xuICAgICAgICAgICAgdGhpcy5sYXN0TGFyZ2VTY3JlZW4gPSBsYXJnZVNjcmVlbjtcbiAgICAgICAgICAgIHRoaXMuc2hlbGxTZXJ2aWNlLnNldExhcmdlU2NyZWVuKGxhcmdlU2NyZWVuKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG59XG4iLCI8IS0tXG4gIH4gQ29weXJpZ2h0IDIwMTUtMjAyMyBSaXRlbnNlIEJWLCB0aGUgTmV0aGVybGFuZHMuXG4gIH5cbiAgfiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAgfiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gIH4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gIH5cbiAgfiBodHRwczovL2pvaW51cC5lYy5ldXJvcGEuZXUvY29sbGVjdGlvbi9ldXBsL2V1cGwtdGV4dC1ldXBsLTEyXG4gIH5cbiAgfiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gIH4gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIGJhc2lzLFxuICB+IFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICB+IFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgfiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAgLS0+XG5cbjxpYm0tc2lkZW5hdlxuICAqbmdJZj1cIntcbiAgICBzaWRlQmFyRXhwYW5kZWQ6IHNpZGVCYXJFeHBhbmRlZCQgfCBhc3luYyxcbiAgICBjbG9zZXN0U2VxdWVuY2U6IGNsb3Nlc3RTZXF1ZW5jZSQgfCBhc3luY1xuICB9IGFzIG9ic1wiXG4gIFthbGxvd0V4cGFuc2lvbl09XCJmYWxzZVwiXG4gIFtleHBhbmRlZF09XCJvYnMuc2lkZUJhckV4cGFuZGVkXCJcbj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudUl0ZW0gb2YgbWVudUl0ZW1zJCB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtZW51SXRlbS5jaGlsZHJlblwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgIHRvcE1lbnVJdGVtO1xuICAgICAgICAgIGNvbnRleHQ6IHttZW51SXRlbTogbWVudUl0ZW0sIGNsb3Nlc3RTZXF1ZW5jZTogb2JzLmNsb3Nlc3RTZXF1ZW5jZX1cbiAgICAgICAgXCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibWVudUl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICB0b3BNZW51SXRlbTtcbiAgICAgICAgICBjb250ZXh0OiB7bWVudUl0ZW06IG1lbnVJdGVtLCBjbG9zZXN0U2VxdWVuY2U6IG9icy5jbG9zZXN0U2VxdWVuY2V9XG4gICAgICAgIFwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic3ViTWVudUljb247IGNvbnRleHQ6IHttZW51SXRlbTogbWVudUl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8aWJtLXNpZGVuYXYtbWVudSBbdGl0bGVdPVwibWVudUl0ZW0gfCBtZW51SXRlbVRyYW5zbGF0ZSB8IGFzeW5jXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNoaWxkTWVudUl0ZW0gb2YgbWVudUl0ZW0uY2hpbGRyZW5cIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdJZj1cIntjb3VudDogY2hpbGRNZW51SXRlbT8uY291bnQkICYmIChjaGlsZE1lbnVJdGVtPy5jb3VudCQgfCBhc3luYyl9IGFzIHZhcnNcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpYm0tc2lkZW5hdi1pdGVtXG4gICAgICAgICAgICAgIFtocmVmXT1cInZhcnM/LmNvdW50ID8gJ2phdmFzY3JpcHQ6cmV0dXJuIGZhbHNlOycgOiAnamF2YXNjcmlwdDp2b2lkKDApOydcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwibmF2aWdhdGVUb1JvdXRlKGNoaWxkTWVudUl0ZW0ubGluaywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgIFthY3RpdmVdPVwiJycgKyBtZW51SXRlbS5zZXF1ZW5jZSArIGNoaWxkTWVudUl0ZW0uc2VxdWVuY2UgPT09IG9icy5jbG9zZXN0U2VxdWVuY2VcIlxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgJ2Nkcy0tc2lkZS1uYXZfX2l0ZW0tLWVtcHR5JzogIWNoaWxkTWVudUl0ZW0ubGluayxcbiAgICAgICAgICAgICAgICAnbWVudS1pdGVtLS1oaWRkZW4nOiBjaGlsZE1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICdtZW51LWl0ZW0tLXZpc2libGUnOlxuICAgICAgICAgICAgICAgICAgY2hpbGRNZW51SXRlbS5pbmNsdWRlRnVuY3Rpb24gIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgKGluY2x1ZGVGdW5jdGlvbk9ic2VydmFibGVzW2NoaWxkTWVudUl0ZW0udGl0bGVdIHwgYXN5bmMpXG4gICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8dmFsdGltby1tZW51LWl0ZW0tdGV4dFxuICAgICAgICAgICAgICAgIFttZW51SXRlbV09XCJjaGlsZE1lbnVJdGVtXCJcbiAgICAgICAgICAgICAgICBbYWNjZW50XT1cIiFjaGlsZE1lbnVJdGVtLmxpbmtcIlxuICAgICAgICAgICAgICA+PC92YWx0aW1vLW1lbnUtaXRlbS10ZXh0PlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb3VudFRlbXBsYXRlOyBjb250ZXh0OiB7Y291bnQ6IHZhcnMuY291bnR9XCJcbiAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9pYm0tc2lkZW5hdi1pdGVtPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvaWJtLXNpZGVuYXYtbWVudT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L2libS1zaWRlbmF2PlxuXG48bmctdGVtcGxhdGUgI3N1Yk1lbnVJY29uIGxldC1tZW51SXRlbT1cIm1lbnVJdGVtXCI+XG4gIDxkaXYgY2xhc3M9XCJtZW51LWl0ZW0taWNvbi1jb250YWluZXJcIj48aSBjbGFzcz1cInt7IG1lbnVJdGVtLmljb25DbGFzcyB9fVwiPjwvaT48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdG9wTWVudUl0ZW0gbGV0LW1lbnVJdGVtPVwibWVudUl0ZW1cIiBsZXQtY2xvc2VzdFNlcXVlbmNlPVwiY2xvc2VzdFNlcXVlbmNlXCI+XG4gIDxpYm0tc2lkZW5hdi1pdGVtXG4gICAgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXG4gICAgKGNsaWNrKT1cIm5hdmlnYXRlVG9Sb3V0ZShtZW51SXRlbS5saW5rLCAkZXZlbnQpXCJcbiAgICAqbmdJZj1cIiFtZW51SXRlbS5jaGlsZHJlblwiXG4gICAgW2FjdGl2ZV09XCInJyArIG1lbnVJdGVtLnNlcXVlbmNlID09PSBjbG9zZXN0U2VxdWVuY2VcIlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdtZW51LWl0ZW0tLWhpZGRlbic6IG1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkLFxuICAgICAgJ21lbnUtaXRlbS0tdmlzaWJsZSc6XG4gICAgICAgIG1lbnVJdGVtLmluY2x1ZGVGdW5jdGlvbiAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgIChpbmNsdWRlRnVuY3Rpb25PYnNlcnZhYmxlc1ttZW51SXRlbS50aXRsZV0gfCBhc3luYylcbiAgICB9XCJcbiAgPlxuICAgIDx2YWx0aW1vLW1lbnUtaXRlbS10ZXh0IFttZW51SXRlbV09XCJtZW51SXRlbVwiPjwvdmFsdGltby1tZW51LWl0ZW0tdGV4dD5cbiAgPC9pYm0tc2lkZW5hdi1pdGVtPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNjb3VudFRlbXBsYXRlIGxldC1jb3VudD1cImNvdW50XCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb3VudFwiPlxuICAgIDxzcGFuIGNsYXNzPVwiY2FzZS1jb3VudFwiPlxuICAgICAge3sgY291bnQgfCBjYXNlQ291bnQgfX1cbiAgICA8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|