@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.
Files changed (50) hide show
  1. package/assets/css/carbon.scss +43 -65
  2. package/esm2020/lib/components/confirmation-modal/confirmation-modal.component.mjs +5 -4
  3. package/esm2020/lib/components/confirmation-modal/confirmation-modal.module.mjs +19 -4
  4. package/esm2020/lib/components/left-sidebar/left-sidebar.component.mjs +24 -12
  5. package/esm2020/lib/components/list/list.component.mjs +5 -8
  6. package/esm2020/lib/components/multi-input/carbon-multi-input.component.mjs +9 -3
  7. package/esm2020/lib/components/page-title/page-title.component.mjs +8 -2
  8. package/esm2020/lib/components/right-sidebar/right-sidebar.component.mjs +49 -8
  9. package/esm2020/lib/components/search-fields/search-fields.component.mjs +14 -2
  10. package/esm2020/lib/components/topbar/topbar.component.mjs +4 -3
  11. package/esm2020/lib/components/view-content/type-converters/booleanTypeConverter.mjs +4 -6
  12. package/esm2020/lib/components/view-content/type-converters/relatedFilesTypeConverter.mjs +2 -2
  13. package/esm2020/lib/directives/index.mjs +18 -0
  14. package/esm2020/lib/directives/valtimo-ibm-modal-directive.module.mjs +33 -0
  15. package/esm2020/lib/directives/valtimo-ibm-modal.directive.mjs +68 -0
  16. package/esm2020/lib/models/list.model.mjs +1 -1
  17. package/esm2020/lib/services/shell.service.mjs +20 -3
  18. package/esm2020/public_api.mjs +2 -1
  19. package/fesm2015/valtimo-components.mjs +264 -48
  20. package/fesm2015/valtimo-components.mjs.map +1 -1
  21. package/fesm2020/valtimo-components.mjs +261 -47
  22. package/fesm2020/valtimo-components.mjs.map +1 -1
  23. package/lib/components/confirmation-modal/confirmation-modal.module.d.ts +2 -1
  24. package/lib/components/confirmation-modal/confirmation-modal.module.d.ts.map +1 -1
  25. package/lib/components/left-sidebar/left-sidebar.component.d.ts.map +1 -1
  26. package/lib/components/list/list.component.d.ts.map +1 -1
  27. package/lib/components/multi-input/carbon-multi-input.component.d.ts +3 -1
  28. package/lib/components/multi-input/carbon-multi-input.component.d.ts.map +1 -1
  29. package/lib/components/page-title/page-title.component.d.ts +1 -0
  30. package/lib/components/page-title/page-title.component.d.ts.map +1 -1
  31. package/lib/components/right-sidebar/right-sidebar.component.d.ts +10 -3
  32. package/lib/components/right-sidebar/right-sidebar.component.d.ts.map +1 -1
  33. package/lib/components/search-fields/search-fields.component.d.ts +3 -1
  34. package/lib/components/search-fields/search-fields.component.d.ts.map +1 -1
  35. package/lib/components/topbar/topbar.component.d.ts +1 -0
  36. package/lib/components/topbar/topbar.component.d.ts.map +1 -1
  37. package/lib/components/view-content/type-converters/booleanTypeConverter.d.ts.map +1 -1
  38. package/lib/directives/index.d.ts +3 -0
  39. package/lib/directives/index.d.ts.map +1 -0
  40. package/lib/directives/valtimo-ibm-modal-directive.module.d.ts +9 -0
  41. package/lib/directives/valtimo-ibm-modal-directive.module.d.ts.map +1 -0
  42. package/lib/directives/valtimo-ibm-modal.directive.d.ts +17 -0
  43. package/lib/directives/valtimo-ibm-modal.directive.d.ts.map +1 -0
  44. package/lib/models/list.model.d.ts +1 -0
  45. package/lib/models/list.model.d.ts.map +1 -1
  46. package/lib/services/shell.service.d.ts +4 -0
  47. package/lib/services/shell.service.d.ts.map +1 -1
  48. package/package.json +4 -3
  49. package/public_api.d.ts +1 -0
  50. package/public_api.d.ts.map +1 -1
@@ -14,16 +14,16 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- $ritense-blue-100: #002547;
18
- $ritense-blue-90: #002c54;
19
- $ritense-blue-80: #003361;
20
- $ritense-blue-70: #224f76;
21
- $ritense-blue-60: #456a8c;
22
- $ritense-blue-50: #6786a1;
23
- $ritense-blue-40: #8aa1b6;
24
- $ritense-blue-30: #acbdcc;
25
- $ritense-blue-20: #cfd8e1;
26
- $ritense-blue-10: #f1f4f6;
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: $ritense-blue-80,
38
- active-tertiary: $ritense-blue-80,
37
+ active-primary: $valtimo-blue-80,
38
+ active-tertiary: $valtimo-blue-80,
39
39
  // Blue 70
40
- link-02: $ritense-blue-70,
41
- support-04: $ritense-blue-70,
42
- hover-primary-text: $ritense-blue-70,
43
- link-secondary: $ritense-blue-70,
44
- support-info: $ritense-blue-70,
45
- link-primary-hover: $ritense-blue-70,
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: $ritense-blue-60,
48
- interactive-03: $ritense-blue-60,
49
- interactive-04: $ritense-blue-60,
50
- link-01: $ritense-blue-60,
51
- focus: $ritense-blue-60,
52
- background-brand: $ritense-blue-60,
53
- interactive: $ritense-blue-60,
54
- border-interactive: $ritense-blue-60,
55
- link-primary: $ritense-blue-60,
56
- brand-01: $ritense-blue-60,
57
- brand-03: $ritense-blue-60,
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: $ritense-blue-50,
60
- support-info-inverse: $ritense-blue-50,
59
+ inverse-support-04: $valtimo-blue-50,
60
+ support-info-inverse: $valtimo-blue-50,
61
61
  // Blue 40
62
- inverse-link: $ritense-blue-40,
63
- link-inverse: $ritense-blue-40,
62
+ inverse-link: $valtimo-blue-40,
63
+ link-inverse: $valtimo-blue-40,
64
64
  // Blue 20
65
- highlight: $ritense-blue-20
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: $ritense-blue-80,
72
- $button-tertiary-active: $ritense-blue-80,
73
- $button-primary-hover: $ritense-blue-70,
74
- $button-tertiary-hover: $ritense-blue-70,
75
- $button-primary: $ritense-blue-60,
76
- $button-tertiary: $ritense-blue-60
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: $ritense-blue-80,
81
- $tag-background-blue: $ritense-blue-20
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: $ritense-blue-10
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 "@ngx-translate/core";
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: i3.TranslatePipe, name: "translate" }] });
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92YWx0aW1vL2NvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi1tb2RhbC9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsZUFBZSxFQUEyQixNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFPL0QsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU1XLHdCQUFtQixHQUFHLEVBQUUsQ0FBQztRQUN6QixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLDBCQUFxQixHQUFHLEVBQUUsQ0FBQztRQUMzQixzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFDdkIsb0NBQStCLEdBQUcsRUFBRSxDQUFDO1FBQ3JDLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixtQ0FBOEIsR0FBRyxFQUFFLENBQUM7UUFFcEMsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFFekIsaUJBQVksR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV0RCxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0F3QjNEO0lBcEJDLFVBQVU7UUFDUixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUN4RSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsQyxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMscUJBQXFCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDNUMsQ0FBQzs7d0hBckNVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLHloQkN4QnZDLDQ4RUFtRUE7NEZEM0NhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSw0QkFBNEI7OEJBSzdCLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csK0JBQStCO3NCQUF2QyxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyw4QkFBOEI7c0JBQXRDLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgMjAxNS0yMDIzIFJpdGVuc2UgQlYsIHRoZSBOZXRoZXJsYW5kcy5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciBFVVBMLCBWZXJzaW9uIDEuMiAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHBzOi8vam9pbnVwLmVjLmV1cm9wYS5ldS9jb2xsZWN0aW9uL2V1cGwvZXVwbC10ZXh0LWV1cGwtMTJcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgYmFzaXMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWx0aW1vLWNvbmZpcm1hdGlvbi1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb25maXJtYXRpb24tbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHRpdGxlVHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgdGl0bGUgPSAnJztcbiAgQElucHV0KCkgY29udGVudCA9ICcnO1xuICBASW5wdXQoKSBjb250ZW50VHJhbnNsYXRpb25LZXkgPSAnJztcbiAgQElucHV0KCkgY29uZmlybUJ1dHRvblRleHQgPSAnJztcbiAgQElucHV0KCkgY29uZmlybUJ1dHRvblRleHRUcmFuc2xhdGlvbktleSA9ICcnO1xuICBASW5wdXQoKSBjYW5jZWxCdXR0b25UZXh0ID0gJyc7XG4gIEBJbnB1dCgpIGNhbmNlbEJ1dHRvblRleHRUcmFuc2xhdGlvbktleSA9ICcnO1xuICBASW5wdXQoKSBzaG93TW9kYWxTdWJqZWN0JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgQElucHV0KCkgb3V0cHV0T25Db25maXJtOiBhbnkgPSB7fTtcblxuICBAT3V0cHV0KCkgY29uZmlybUV2ZW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICByZWFkb25seSBtb2RhbE9wZW4kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG5cbiAgcHJpdmF0ZSBzaG93TW9kYWxTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG5cbiAgY2xvc2VNb2RhbCgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGFsT3BlbiQubmV4dChmYWxzZSk7XG4gIH1cblxuICBjb25maXJtKCk6IHZvaWQge1xuICAgIHRoaXMubW9kYWxPcGVuJC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLmNvbmZpcm1FdmVudC5lbWl0KHRoaXMub3V0cHV0T25Db25maXJtKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNob3dNb2RhbFN1YmplY3QkKSB7XG4gICAgICB0aGlzLnNob3dNb2RhbFN1YnNjcmlwdGlvbiA9IHRoaXMuc2hvd01vZGFsU3ViamVjdCQuc3Vic2NyaWJlKHNob3dNb2RhbCA9PiB7XG4gICAgICAgIHRoaXMubW9kYWxPcGVuJC5uZXh0KHNob3dNb2RhbCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dNb2RhbFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPCEtLVxuICB+IENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICB+XG4gIH4gTGljZW5zZWQgdW5kZXIgRVVQTCwgVmVyc2lvbiAxLjIgKHRoZSBcIkxpY2Vuc2VcIik7XG4gIH4geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICB+IFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICB+XG4gIH4gaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICB+XG4gIH4gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICB+IGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAgfiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgfiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gIH4gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gIC0tPlxuXG48aWJtLW1vZGFsXG4gIFtvcGVuXT1cIm1vZGFsT3BlbiQgfCBhc3luY1wiXG4gICpuZ0lmPVwie1xuICAgIGRlbGV0ZVRyYW5zbGF0aW9uOiAnaW50ZXJmYWNlLmRlbGV0ZScgfCB0cmFuc2xhdGUsXG4gICAgZGVsZXRlQ29uZmlybWF0aW9uVHJhbnNsYXRpb246ICdpbnRlcmZhY2UuZGVsZXRlQ29uZmlybWF0aW9uJyB8IHRyYW5zbGF0ZSxcbiAgICBjYW5jZWxUcmFuc2xhdGlvbjogJ2ludGVyZmFjZS5jYW5jZWwnIHwgdHJhbnNsYXRlLFxuICAgIHRpdGxlVHJhbnNsYXRpb246IHRpdGxlVHJhbnNsYXRpb25LZXkgfCB0cmFuc2xhdGUsXG4gICAgY29udGVudFRyYW5zbGF0aW9uOiBjb250ZW50VHJhbnNsYXRpb25LZXkgfCB0cmFuc2xhdGUsXG4gICAgY29uZmlybUJ1dHRvblRyYW5zbGF0aW9uOiBjb25maXJtQnV0dG9uVGV4dFRyYW5zbGF0aW9uS2V5IHwgdHJhbnNsYXRlLFxuICAgIGNhbmNlbEJ1dHRvblRyYW5zbGF0aW9uOiBjYW5jZWxCdXR0b25UZXh0VHJhbnNsYXRpb25LZXkgfCB0cmFuc2xhdGVcbiAgfSBhcyBvYnNcIlxuPlxuICA8aWJtLW1vZGFsLWhlYWRlciBbc2hvd0Nsb3NlQnV0dG9uXT1cInRydWVcIiAoY2xvc2VTZWxlY3QpPVwiY2xvc2VNb2RhbCgpXCI+XG4gICAgPGgzIGlibU1vZGFsSGVhZGVySGVhZGluZz5cbiAgICAgIHt7XG4gICAgICAgICh0aXRsZVRyYW5zbGF0aW9uS2V5ICE9PSBvYnMudGl0bGVUcmFuc2xhdGlvbiA/IG9icy50aXRsZVRyYW5zbGF0aW9uIDogJycpIHx8XG4gICAgICAgICAgdGl0bGUgfHxcbiAgICAgICAgICBvYnMuZGVsZXRlVHJhbnNsYXRpb25cbiAgICAgIH19XG4gICAgPC9oMz5cbiAgPC9pYm0tbW9kYWwtaGVhZGVyPlxuICA8c2VjdGlvbiBpYm1Nb2RhbENvbnRlbnQ+XG4gICAge3tcbiAgICAgIChjb250ZW50VHJhbnNsYXRpb25LZXkgIT09IG9icy5jb250ZW50VHJhbnNsYXRpb24gPyBvYnMuY29udGVudFRyYW5zbGF0aW9uIDogJycpIHx8XG4gICAgICAgIGNvbnRlbnQgfHxcbiAgICAgICAgb2JzLmRlbGV0ZUNvbmZpcm1hdGlvblRyYW5zbGF0aW9uXG4gICAgfX1cbiAgPC9zZWN0aW9uPlxuICA8aWJtLW1vZGFsLWZvb3Rlcj5cbiAgICA8bmctY29udGFpbmVyPlxuICAgICAgPGJ1dHRvbiBpYm1CdXR0b249XCJzZWNvbmRhcnlcIiBbYXR0ci5tb2RhbC1wcmltYXJ5LWZvY3VzXT1cInRydWVcIiAoY2xpY2spPVwiY2xvc2VNb2RhbCgpXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgKGNhbmNlbEJ1dHRvblRleHRUcmFuc2xhdGlvbktleSAhPT0gb2JzLmNhbmNlbEJ1dHRvblRyYW5zbGF0aW9uXG4gICAgICAgICAgICA/IG9icy5jYW5jZWxCdXR0b25UcmFuc2xhdGlvblxuICAgICAgICAgICAgOiAnJykgfHxcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQgfHxcbiAgICAgICAgICAgIG9icy5jYW5jZWxUcmFuc2xhdGlvblxuICAgICAgICB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uIGlibUJ1dHRvbj1cInByaW1hcnlcIiBbYXR0ci5tb2RhbC1wcmltYXJ5LWZvY3VzXT1cInRydWVcIiAoY2xpY2spPVwiY29uZmlybSgpXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgKGNvbmZpcm1CdXR0b25UZXh0VHJhbnNsYXRpb25LZXkgIT09IG9icy5jb25maXJtQnV0dG9uVHJhbnNsYXRpb25cbiAgICAgICAgICAgID8gb2JzLmNvbmZpcm1CdXR0b25UcmFuc2xhdGlvblxuICAgICAgICAgICAgOiAnJykgfHxcbiAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0IHx8XG4gICAgICAgICAgICBvYnMuZGVsZXRlVHJhbnNsYXRpb25cbiAgICAgICAgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2libS1tb2RhbC1mb290ZXI+XG48L2libS1tb2RhbD5cbiJdfQ==
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, ModalModule, TranslateModule, ButtonModule], exports: [ConfirmationModalComponent] });
26
- ConfirmationModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ConfirmationModalModule, imports: [CommonModule, ModalModule, TranslateModule, ButtonModule] });
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: [CommonModule, ModalModule, TranslateModule, ButtonModule],
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLW1vZGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZhbHRpbW8vY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLW1vZGFsL2NvbmZpcm1hdGlvbi1tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLHVCQUF1Qjs7cUhBQXZCLHVCQUF1QjtzSEFBdkIsdUJBQXVCLGlCQUpuQiwwQkFBMEIsYUFDL0IsWUFBWSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsWUFBWSxhQUN4RCwwQkFBMEI7c0hBRXpCLHVCQUF1QixZQUh4QixZQUFZLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxZQUFZOzRGQUd2RCx1QkFBdUI7a0JBTG5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQzFDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQztvQkFDbkUsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3RDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDE1LTIwMjMgUml0ZW5zZSBCViwgdGhlIE5ldGhlcmxhbmRzLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIEVVUEwsIFZlcnNpb24gMS4yICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cHM6Ly9qb2ludXAuZWMuZXVyb3BhLmV1L2NvbGxlY3Rpb24vZXVwbC9ldXBsLXRleHQtZXVwbC0xMlxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBiYXNpcyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q29uZmlybWF0aW9uTW9kYWxDb21wb25lbnR9IGZyb20gJy4vY29uZmlybWF0aW9uLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQge0J1dHRvbk1vZHVsZSwgTW9kYWxNb2R1bGV9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuaW1wb3J0IHtUcmFuc2xhdGVNb2R1bGV9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1vZGFsTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEJ1dHRvbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtDb25maXJtYXRpb25Nb2RhbENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbk1vZGFsTW9kdWxlIHt9XG4iXX0=
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([this.shellService.sideBarExpanded$, this.shellService.largeScreen$])
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
- this.shellService.sideBarExpanded$.pipe(take(1)).subscribe(sideBarExpanded => {
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.toggleSideBar();
99
+ if (smallScreen || collapsibleWidescreenMenu) {
100
+ this.shellService.collapseSideBar();
91
101
  }
92
102
  this.breakpointsInitialized = true;
93
103
  }
94
- if ((this.lastSmallScreen && largeScreen && !sideBarExpanded) ||
95
- (this.lastLargeScreen && smallScreen && sideBarExpanded)) {
96
- this.shellService.toggleSideBar();
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==