@sebgroup/green-angular 5.5.2 → 5.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/esm2022/src/v-angular/datepicker/components/date-input/date-input.component.mjs +3 -3
  2. package/esm2022/src/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +3 -4
  3. package/esm2022/src/v-angular/dropdown/dropdown.component.mjs +3 -3
  4. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +25 -7
  5. package/esm2022/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +2 -2
  6. package/esm2022/src/v-angular/input/input.component.mjs +8 -7
  7. package/esm2022/src/v-angular/modal/fold-out/fold-out.component.mjs +2 -2
  8. package/esm2022/src/v-angular/modal/slide-out/slide-out.component.mjs +3 -3
  9. package/esm2022/src/v-angular/textarea/textarea.component.mjs +3 -3
  10. package/esm2022/v-angular/datepicker/components/date-input/date-input.component.mjs +3 -3
  11. package/esm2022/v-angular/dropdown/dropdown-list/dropdown-list.component.mjs +3 -4
  12. package/esm2022/v-angular/dropdown/dropdown.component.mjs +3 -3
  13. package/esm2022/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.mjs +25 -7
  14. package/esm2022/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.mjs +2 -2
  15. package/esm2022/v-angular/input/input.component.mjs +8 -7
  16. package/esm2022/v-angular/modal/fold-out/fold-out.component.mjs +2 -2
  17. package/esm2022/v-angular/modal/slide-out/slide-out.component.mjs +3 -3
  18. package/esm2022/v-angular/textarea/textarea.component.mjs +3 -3
  19. package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs +2 -2
  20. package/fesm2022/sebgroup-green-angular-src-v-angular-datepicker.mjs.map +1 -1
  21. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs +28 -11
  22. package/fesm2022/sebgroup-green-angular-src-v-angular-dropdown.mjs.map +1 -1
  23. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs +6 -5
  24. package/fesm2022/sebgroup-green-angular-src-v-angular-input.mjs.map +1 -1
  25. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs +4 -4
  26. package/fesm2022/sebgroup-green-angular-src-v-angular-modal.mjs.map +1 -1
  27. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs +2 -2
  28. package/fesm2022/sebgroup-green-angular-src-v-angular-textarea.mjs.map +1 -1
  29. package/fesm2022/sebgroup-green-angular-v-angular.mjs +42 -24
  30. package/fesm2022/sebgroup-green-angular-v-angular.mjs.map +1 -1
  31. package/package.json +20 -20
  32. package/src/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +9 -3
  33. package/src/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +1 -1
  34. package/src/v-angular/input/input.component.d.ts +4 -3
  35. package/v-angular/dropdown/typeahead/typeahead-dropdown-list/typeahead-dropdown-list.component.d.ts +9 -3
  36. package/v-angular/dropdown/typeahead/typeahead-input/typeahead-input.component.d.ts +1 -1
  37. package/v-angular/input/input.component.d.ts +4 -3
@@ -154,7 +154,7 @@ export class NggvSlideOutComponent {
154
154
  this.renderer.removeStyle(document.body, 'overflow');
155
155
  }
156
156
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvSlideOutComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
157
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvSlideOutComponent, selector: "nggv-slideout-modal", inputs: { side: "side", shown: "shown", initiallyShown: "initiallyShown", heading: "heading", title: "title", content: "content", closable: "closable", autoWidth: "autoWidth", thook: "thook", closeButtonAriaLabel: "closeButtonAriaLabel", buttons: "buttons" }, outputs: { nggvCloseEvent: "nggvCloseEvent", nggvPositiveEvent: "nggvPositiveEvent", nggvNeutralEvent: "nggvNeutralEvent", nggvNegativeEvent: "nggvNegativeEvent" }, host: { listeners: { "click": "close($event,\"host\")", "document:keydown.escape": "close($event)", "keydown": "focusTrap($event)" } }, viewQueries: [{ propertyName: "slideOutRef", first: true, predicate: ["slideOut"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-ref-pallet-base200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], animations: [
157
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvSlideOutComponent, selector: "nggv-slideout-modal", inputs: { side: "side", shown: "shown", initiallyShown: "initiallyShown", heading: "heading", title: "title", content: "content", closable: "closable", autoWidth: "autoWidth", thook: "thook", closeButtonAriaLabel: "closeButtonAriaLabel", buttons: "buttons" }, outputs: { nggvCloseEvent: "nggvCloseEvent", nggvPositiveEvent: "nggvPositiveEvent", nggvNeutralEvent: "nggvNeutralEvent", nggvNegativeEvent: "nggvNegativeEvent" }, host: { listeners: { "click": "close($event,\"host\")", "document:keydown.escape": "close($event)", "keydown": "focusTrap($event)" } }, viewQueries: [{ propertyName: "slideOutRef", first: true, predicate: ["slideOut"], descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%;overflow:unset}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-ref-pallet-base200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], animations: [
158
158
  trigger('modalAnimation', [
159
159
  transition(':enter', [
160
160
  query('.gds-slide-out', style({ transform: 'translateX(100%)' }), {
@@ -206,7 +206,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
206
206
  ]),
207
207
  ]),
208
208
  ]),
209
- ], template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-ref-pallet-base200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"] }]
209
+ ], template: "<ng-container *ngIf=\"shown\">\n <div\n [ngClass]=\"{\n 'gds-slide-out--left': fromLeft,\n 'gds-slide-out--right': !fromLeft,\n }\"\n *transloco=\"let t\"\n [class.-active]=\"shown\"\n [attr.data-thook]=\"thook\"\n [attr.aria-hidden]=\"!shown\"\n [@modalAnimation]\n >\n <div\n #slideOut\n class=\"gds-slide-out\"\n [class.auto-width]=\"autoWidth\"\n [class.entered]=\"shown\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"gds-modal-title\"\n aria-describedby=\"gds-modal-body\"\n >\n <header class=\"gds-slide-out__header\">\n <h3 id=\"gds-modal-title\">\n {{ heading || title || '' }}\n </h3>\n <button\n data-testid=\"modal-close-button\"\n class=\"nggv-modal-slideout__close\"\n (click)=\"this.close()\"\n [attr.aria-label]=\"closeButtonAriaLabel\"\n >\n <i></i>\n </button>\n </header>\n\n <section id=\"modal-body\">\n <div class=\"gds-slide-out__content hide-if-empty\">\n <div *ngIf=\"content\" [innerHtml]=\"content\"></div>\n <ng-content></ng-content>\n </div>\n <ng-content select=\"[slot='outside-content']\"></ng-content>\n </section>\n\n <footer class=\"modal-dialog__actions\">\n <button\n class=\"danger\"\n type=\"reset\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.negative || 'negative')\"\n (click)=\"onAction($event, 'negative')\"\n (keydown.enter)=\"onAction($event, 'negative')\"\n *ngIf=\"_buttons && _buttons.negative\"\n >\n {{ t(_buttons.negative) }}\n </button>\n\n <button\n class=\"secondary\"\n type=\"button\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.neutral || 'neutral')\"\n (click)=\"onAction($event, 'neutral')\"\n (keydown.enter)=\"onAction($event, 'neutral')\"\n *ngIf=\"_buttons && _buttons.neutral\"\n >\n {{ t(_buttons.neutral) }}\n </button>\n\n <button\n class=\"primary\"\n type=\"submit\"\n [attr.data-thook]=\"'dialog-' + (_buttons?.positive || 'positive')\"\n (click)=\"onAction($event, 'positive')\"\n (keydown.enter)=\"onAction($event, 'positive')\"\n *ngIf=\"_buttons && _buttons.positive\"\n >\n {{ t(_buttons.positive) }}\n </button>\n </footer>\n </div>\n\n <div\n class=\"nggv-backdrop\"\n data-thook=\"slideout-backdrop\"\n (click)=\"close()\"\n ></div>\n </div>\n</ng-container>\n", styles: [":host{--background-hsl: 0deg, 0%, 0%;--gds-ref-pallet-base200: hsl(0, 0%, 91%);--gds-sys-color-base: hsl(0, 0%, 20%);--gds-sys-color-font: hsl(0, 0%, 20%);--gds-sys-shape-corner-round: 50%;--grey-500: rgb(222, 222, 222);--sg-border-color: hsl(0, 0%, 53%);--sg-border-radius: .25rem;--sg-border-width: 1px;--sg-hsl-contrast: 0deg, 0%, 0%;--sg-modal-backdrop-background: rgba(0, 0, 0, .5);--sg-modal-background: #fff;--sg-modal-box-shadow: 0 .125rem .375rem rgba(0, 0, 0, .15);--sg-z-index-modal-backdrop: 1040;--sg-z-index-modal: 1050;--text-primary-color: rgb(51, 51, 51)}:host .gds-slide-out{background:var(--sg-modal-background);display:flex;flex-direction:column;box-shadow:var(--sg-modal-box-shadow);position:absolute;width:100%;z-index:var(--sg-z-index-modal);position:fixed;height:100dvh;max-width:512px;min-height:-webkit-fill-available;min-height:-moz-available;min-height:stretch;right:0;top:0;transition:transform .35s cubic-bezier(.33,1,.68,1);transform:translate(100%);z-index:1050;overflow-y:auto}:host .gds-slide-out>.header,:host .gds-slide-out>header{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .gds-slide-out>.header h3,:host .gds-slide-out>.header .h3,:host .gds-slide-out>header h3,:host .gds-slide-out>header .h3{margin-bottom:0;margin-top:0}:host .gds-slide-out>.header h3+.close,:host .gds-slide-out>.header .h3+.close,:host .gds-slide-out>header h3+.close,:host .gds-slide-out>header .h3+.close{margin:-7px;min-width:2rem}:host .gds-slide-out>.body{padding:1rem;overflow:auto;width:100%}:host .gds-slide-out>.body p{margin-bottom:0;margin-top:0}:host .gds-slide-out>.footer,:host .gds-slide-out>footer{padding:1rem;width:100%}@media (min-width: 36em){:host .gds-slide-out>.footer,:host .gds-slide-out>footer{display:flex;justify-content:flex-end}}@media (max-width: 35.98em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-top:.75rem}}@media (min-width: 36em){:host .gds-slide-out>.footer button+button,:host .gds-slide-out>.footer button+.button,:host .gds-slide-out>.footer .button+button,:host .gds-slide-out>.footer .button+.button,:host .gds-slide-out>footer button+button,:host .gds-slide-out>footer button+.button,:host .gds-slide-out>footer .button+button,:host .gds-slide-out>footer .button+.button{margin-left:.75rem}}:host .gds-slide-out.is-entering,:host .gds-slide-out.entered{transform:translate(0)}:host .gds-slide-out.is-exiting{transform:translate(100%)}:host .gds-slide-out.large{max-width:720px}:host .gds-slide-out>.body{flex:1 0}:host .gds-slide-out.left{left:0}:host .gds-slide-out.gds-slide-out--768{max-width:48rem}:host .gds-slide-out.gds-slide-out--960{max-width:60rem}:host .gds-slide-out.gds-slide-out--768 header,:host .gds-slide-out.gds-slide-out--960 header{padding:1.5rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 .body,:host .gds-slide-out.gds-slide-out--960 .body{padding:2rem 2rem 1rem}:host .gds-slide-out.gds-slide-out--768 footer,:host .gds-slide-out.gds-slide-out--960 footer{padding:1rem 2rem 2rem}:host .gds-slide-out.auto-width{width:auto;max-width:initial}:host .hide-if-empty:empty{display:none}:host .nggv-backdrop{background:var(--sg-modal-backdrop-background);inset:0;position:fixed;z-index:var(--sg-z-index-modal-backdrop);display:block;transition:opacity .5s cubic-bezier(.33,1,.68,1)}:host .nggv-backdrop--transparent{opacity:0}:host .nggv-backdrop--transparent.entered,:host .nggv-backdrop--transparent.is-entering{opacity:1}:host .nggv-backdrop--transparent.is-exiting{opacity:0}:host .gds-slide-out__content{padding:1rem;overflow:auto;width:100%;overflow:unset}:host .gds-slide-out__content p{margin-bottom:0;margin-top:0}:host .modal-dialog__actions,:host .gds-slide-out__header,:host .modal-body,:host .gds-slide-out__content{box-sizing:border-box}:host .modal-slide-out__heading{padding:1rem;border-bottom:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);display:inline-flex;justify-content:space-between;align-items:center;width:100%}:host .modal-slide-out__heading h3,:host .modal-slide-out__heading .h3{margin-bottom:0;margin-top:0}:host .modal-slide-out__heading h3+.close,:host .modal-slide-out__heading .h3+.close{margin:-7px;min-width:2rem}:host .nggv-modal-slideout__close{background-color:transparent;padding:0;font-size:0;background:var(--gds-sys-color-surface);border:0;border-radius:50%;content:\"\";cursor:pointer;display:flex;font-family:inherit;height:2rem;position:relative;width:2rem}@media (hover: none) and (pointer: coarse){:host .nggv-modal-slideout__close:not(:disabled):not(.disabled){padding:.375rem;height:2.75rem;width:2.75rem}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>i{background:var(--gds-ref-pallet-base200);height:2rem;width:2rem;border-radius:50%;position:relative;--color: var(--gds-sys-color-base)}:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:after,:host .nggv-modal-slideout__close:not(:disabled):not(.disabled)>div:before{height:.789375rem;width:.130625rem;top:.625rem}}:host .nggv-modal-slideout__close:focus:not(:focus-visible){box-shadow:none;outline:0}:host .nggv-modal-slideout__close:focus,:host .nggv-modal-slideout__close:focus-visible i{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .nggv-modal-slideout__close>i{border-radius:var(--gds-sys-shape-corner-round);display:block;width:100%;height:100%}:host .nggv-modal-slideout__close>i:after,:host .nggv-modal-slideout__close>i:before{background:var(--gds-sys-color-font);content:\"\";display:block;height:.789375rem;width:.130625rem;border-radius:.5px;left:calc(50% - .0625rem);position:absolute;top:.625rem}:host .nggv-modal-slideout__close>i:after{transform:rotate(45deg)}:host .nggv-modal-slideout__close>i:before{transform:rotate(-45deg)}:host .nggv-modal-slideout__close>svg path{fill:var(--gds-sys-color-font)}@media (min-width: 48em){:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover>i{background:color-mix(in srgb,var(--gds-sys-color-font) 10%,transparent)}:host .nggv-modal-slideout__close:not(:disabled,.disabled):hover:active>i{background:color-mix(in srgb,var(--gds-sys-color-font) 20%,transparent)}}:host .modal-dialog__actions button{background-color:transparent;border:0;cursor:pointer;padding:0;padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);font-weight:500;min-height:2.75rem;align-items:center;display:inline-flex;justify-content:center;font-size:1rem;font-family:inherit}:host .modal-dialog__actions button:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions button:focus,:host .modal-dialog__actions button:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media (max-width: 35.98em){:host .modal-dialog__actions button{min-width:100%}}@media screen and (-ms-high-contrast: active){:host .modal-dialog__actions button{border:2px solid currentcolor}}:host .modal-dialog__actions button.small{min-height:2rem;padding:.4375rem .75rem;line-height:1rem}:host .modal-dialog__actions button.large{min-height:4rem;padding:1rem 1.5rem;font-size:1.5rem;line-height:2rem}:host .modal-dialog__actions .primary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:#007ac7;border-color:#007ac7;color:#fff;--color: #fff}:host .modal-dialog__actions .primary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .primary[aria-selected=true],:host .modal-dialog__actions .primary:active,:host .modal-dialog__actions .primary.active,:host .modal-dialog__actions .primary.active:hover,:host .modal-dialog__actions .primary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .primary:focus-visible{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3!important}:host .modal-dialog__actions .primary:disabled,:host .modal-dialog__actions .primary.disabled,:host .modal-dialog__actions .primary[aria-disabled=true]{background:var(--form-control-primary-bg-disabled)!important;color:var(--text-primary-disabled-color)!important;border-color:var(--border-primary-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .primary:disabled::placeholder,:host .modal-dialog__actions .primary.disabled::placeholder,:host .modal-dialog__actions .primary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .secondary{transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s;background:transparent;border-color:#007ac7;color:#007ac7;--color: rgb(0, 122, 199)}:host .modal-dialog__actions .secondary:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .secondary:focus,:host .modal-dialog__actions .secondary:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host .modal-dialog__actions .secondary:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#199be3;color:#fff;--background: rgb(25.4035777564, 154.8940067842, 227.221994169);--color: rgb(255, 255, 255);border-color:#199be3}:host .modal-dialog__actions .secondary[aria-selected=true],:host .modal-dialog__actions .secondary:active,:host .modal-dialog__actions .secondary.active,:host .modal-dialog__actions .secondary.active:hover,:host .modal-dialog__actions .secondary:active:hover{background-color:#007ac7;color:#fff;--background: rgb(0, 122, 199);--color: rgb(255, 255, 255);border-color:#007ac7}:host .modal-dialog__actions .secondary:disabled,:host .modal-dialog__actions .secondary.disabled,:host .modal-dialog__actions .secondary[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host .modal-dialog__actions .secondary:disabled::placeholder,:host .modal-dialog__actions .secondary.disabled::placeholder,:host .modal-dialog__actions .secondary[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host .modal-dialog__actions .danger{color:#bb000c;--color: rgb(187, 0, 12);border-color:transparent;transition:all .3s cubic-bezier(.23,1,.32,1),outline-offset 0s,outline-width 0s}:host .modal-dialog__actions .danger:not(:disabled,.disabled,[aria-disabled]):hover{background-color:#d81a1a;color:#fff;--background: rgb(216, 26, 26);--color: rgb(255, 255, 255);border-color:#d81a1a}:host .modal-dialog__actions .danger[aria-selected=true],:host .modal-dialog__actions .danger:active,:host .modal-dialog__actions .danger.active,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{background-color:#bb000c;color:#fff;--background: rgb(187, 0, 12);--color: rgb(255, 255, 255);border-color:#bb000c}:host .modal-dialog__actions .danger[aria-selected]:hover,:host .modal-dialog__actions .danger.active:hover,:host .modal-dialog__actions .danger:active:hover{opacity:.9}:host .modal-dialog__actions .danger:focus:not(:focus-visible){box-shadow:none;outline:0}:host .modal-dialog__actions .danger:focus,:host .modal-dialog__actions .danger:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}:host #sdv-modal-body{flex:1}\n"] }]
210
210
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { slideOutRef: [{
211
211
  type: ViewChild,
212
212
  args: ['slideOut']
@@ -250,4 +250,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
250
250
  type: HostListener,
251
251
  args: ['keydown', ['$event']]
252
252
  }] } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUtb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL21vZGFsL3NsaWRlLW91dC9zbGlkZS1vdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvbW9kYWwvc2xpZGUtb3V0L3NsaWRlLW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsT0FBTyxFQUNQLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQTtBQUM1QixPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTs7OztBQUl0Qjs7Ozs7Ozs7Ozs7R0FXRztBQTJESCxNQUFNLE9BQU8scUJBQXFCO0lBUWhDLElBQWEsS0FBSyxDQUFDLEtBQWM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7UUFDbkIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBdUJELGdCQUFnQjtJQUNoQixJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFBO0lBQzdCLENBQUM7SUFNRCw2SEFBNkg7SUFDN0gsSUFBYSxPQUFPLENBQUMsT0FBc0I7UUFD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QVM7c0JBQWpCLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFZTyxPQUFPO3NCQUFuQixLQUFLO2dCQUtJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBMERQLEtBQUs7c0JBRkosWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDOztzQkFDMUMsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1Qm5ELFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBncm91cCxcbiAgcXVlcnksXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJ1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgRGlhbG9nQnV0dG9ucyB9IGZyb20gJy4uL21vZGFsLnR5cGVzJ1xuXG4vKiogTW9kYWwgc2xpZGUtb3V0IGNvbXBvbmVudCBiYXNlZCBvbiB2YW5pbGxhIHBhdHRlcm4gbGlicmFyeSBkZXNpZ24uXG4gKiBUaGUgbW9kYWwgdGl0bGUgY2FuIGJlIHNldCB1c2luZyB0aGUgQElucHV0IGhlYWRpbmcsIGFuZCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgdHJhbnNsYXRlZCBpZlxuICogdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS5cbiAqIENvbnRlbnQgY2FuIGJlIGluamVjdGVkIGludG8gdGhlIGJvZHkgb2YgdGhlIHNsaWRlLW91dCBieSBlaXRoZXIgc2V0dGluZyB0aGUgQElucHV0IGNvbnRlbnQgdG8gYW55IHR5cGUgb2ZcbiAqIG1hcmtkb3duLCBvciB1c2luZyBjb250ZW50IHByb2plY3Rpb24gKGFkZGluZyBjb250ZW50IGJldHdlZW4gdGhlIGBuZ2d2LXNsaWRlb3V0LW1vZGFsYC1zdGFydCBhbmQgZW5kIHRhZykuXG4gKiBJZiB0aGUgY29udGVudCBuZWVkcyB0byBzdHJldGNoIG91dHNpZGUgdGhlIG5vcm1hbCBwYWRkZWQgYXJlYSwgYWRkIHRoZSBhdHRyaWJ1dGUgYHNsb3Q9XCJvdXRzaWRlLWNvbnRlbnRcImAgdG8gdGhlXG4gKiBwcm9qZWN0ZWQgY29udGVudCBtYWluIGVsZW1lbnQuXG4gKiBUZXN0IGhvb2tzOlxuICogVGhlIG1vZGFsIGhvb2sgZGVmYXVsdHMgdG8gJ3NsaWRlb3V0JyBidXQgaXMgY3VzdG9taXplYWJsZS5cbiAqIFRoZSBjbG9zaW5nIGJ1dHRvbiBjYW4gYmUgc2VsZWN0ZWQgdXNpbmcgJ3NsaWRlb3V0LWNsb3NlJy5cbiAqIFRoZSBiYWNrZHJvcCBpcyBzZWxlY3RhYmxlIHVzaW5nICdzbGlkZW91dC1iYWNrZHJvcCcuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nZ3Ytc2xpZGVvdXQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdtb2RhbEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgcXVlcnkoJy5nZHMtc2xpZGUtb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgcXVlcnkoJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLCBzdHlsZSh7IG9wYWNpdHk6ICcwJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtc2xpZGUtb3V0JyxcbiAgICAgICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgICAgICczNTBtcyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSknLFxuICAgICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzEnIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICBdKSxcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBxdWVyeSgnLmdkcy1zbGlkZS1vdXQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLCB7XG4gICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cChbXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1zbGlkZS1vdXQnLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1iYWNrZHJvcCwgW3JvbGU9ZGlhbG9nXScsXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAnMzUwbXMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpJyxcbiAgICAgICAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgIF0pLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZTbGlkZU91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZCgnc2xpZGVPdXQnKSBzbGlkZU91dFJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxuXG4gIC8qKiBTZXRzIGZyb20gd2hpY2ggc2lkZSB0aGUgbW9kYWwgc2hvdWxkIG9wZW4uICovXG4gIEBJbnB1dCgpIHNpZGU6ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnXG4gIC8qKiBEZWZpbmVzIHRoZSBkZWZhdWx0IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIHNsaWRlLW91dC4gKi9cbiAgcHJpdmF0ZSBfc2hvd24gPSBmYWxzZVxuICBASW5wdXQoKSBzZXQgc2hvd24odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zaG93biA9IHZhbHVlXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmhpZGVPdmVyZmxvdygpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXRPdmVyZmxvdygpXG4gICAgfVxuICB9XG4gIGdldCBzaG93bigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvd25cbiAgfVxuICAvKiogRGVmaW5lcyB0aGUgZGVmYXVsdCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtb2RhbC4gKi9cbiAgQElucHV0KCkgaW5pdGlhbGx5U2hvd24gPSBmYWxzZVxuICAvKiogU2V0cyBtb2RhbCBoZWFkaW5nLiBXaWxsIGJlIHRyYW5zbGF0ZWQgKHVzaW5nIHRyYW5zbG9jbykgaWYgdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS4gKi9cbiAgQElucHV0KCkgaGVhZGluZyE6IHN0cmluZ1xuICAvKipcbiAgICogU2V0cyBtb2RhbCB0aXRsZS4gV2lsbCBiZSB0cmFuc2xhdGVkICh1c2luZyB0cmFuc2xvY28pIGlmIHRoZSBzdHJpbmcgbWF0Y2hlcyBhIGNtcyBrZXkuXG4gICAqIEBkZXByZWNhdGVkIC0gdXNlIEBJbnB1dCgpIGhlYWRpbmcgaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlITogc3RyaW5nXG4gIC8qKiBTZXRzIGNvbnRlbnQgYm9keSBvZiB0aGUgbW9kYWwgYW5kIGNhbiBjb250YWluIGh0bWwgY29kZS4gVGhlIGNvbnRlbnQgYm9keSBjYW4gYWxzbyBiZSBzZXQgYnkgbmVzdGluZyBjaGlsZHJlbiB0byB0aGUgbW9kYWwgdGFnLiAqL1xuICBASW5wdXQoKSBjb250ZW50Pzogc3RyaW5nXG4gIC8qKiBTZXRzIHdoZXRoZXIgaXQgaXMgcG9zc2libGUgdG8gY2xvc2UgdGhlIG1vZGFsIGZyb20gdGhlIHRvcCByaWdodCBjb3JuZXIuICovXG4gIEBJbnB1dCgpIGNsb3NhYmxlID0gdHJ1ZVxuICAvKiogQWxsb3dzIHRoZSBtb2RhbCBjb250ZW50IHRvIGRlY2lkZSB0aGUgd2lkdGggb2YgdGhlIG1vZGFsLiAqL1xuICBASW5wdXQoKSBhdXRvV2lkdGggPSBmYWxzZVxuXG4gIC8qKiBTcGVjaWFsIHByb3BlcnR5IHVzZWQgZm9yIHNlbGVjdGluZyBET00gZWxlbWVudHMgZHVyaW5nIGF1dG9tYXRlZCBVSSB0ZXN0aW5nLiAqL1xuICBASW5wdXQoKSB0aG9vayA9ICdzbGlkZW91dCdcblxuICAvKiogQXJpYSBsYWJlbCBmb3IgdGhlIENsb3NlIGJ1dHRvbiB3aXRoIFwiWFwiIGljb24sIGluIHRoZSBoZWFkZXIgKi9cbiAgQElucHV0KCkgY2xvc2VCdXR0b25BcmlhTGFiZWw/OiBzdHJpbmdcblxuICAvKiogQGludGVybmFsICovXG4gIGdldCBmcm9tTGVmdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaWRlID09PSAnbGVmdCdcbiAgfVxuXG4gIC8vIC8qKiBAaW50ZXJuYWwgKi9cbiAgLy8gY2xvc2VJY29uID0gZmFUaW1lcztcblxuICBfYnV0dG9uczogRGlhbG9nQnV0dG9ucyB8IHVuZGVmaW5lZFxuICAvKiogQnV0dG9ucyBhcmUgZGVmaW5lZCBhcyBhIGtleS12YWx1ZSBwYWlyIHdoZXJlIGtleSBpcyBvbmUgb2YgXCJwb3NpdGl2ZXxuZXV0cmFsfG5lZ2F0aXZlXCIgYW5kIHZhbHVlIGlzIHRoZSBidXR0b24gbGFiZWwuICovXG4gIEBJbnB1dCgpIHNldCBidXR0b25zKGJ1dHRvbnM6IERpYWxvZ0J1dHRvbnMpIHtcbiAgICB0aGlzLl9idXR0b25zID0gYnV0dG9uc1xuICB9XG5cbiAgLyoqIFdpbGwgZW1pdCB0cnVlIG9uIGNsb3NpbmcgZXZlbnQuICovXG4gIEBPdXRwdXQoKSBuZ2d2Q2xvc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICBAT3V0cHV0KCkgbmdndlBvc2l0aXZlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZXV0cmFsRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZWdhdGl2ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgcHJpdmF0ZSBwcmV2aW91czogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBmaXJzdEZvY3VzYWJsZTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBsYXN0Rm9jdXNhYmxlOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaG9zdDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICkge1xuICAgIC8vIGFwcGVuZHMgbWV0aG9kcyBmb3Igb3BlbmluZyBhbmQgY2xvc2luZyBtb2RhbCB0byBuYXRpdmUgZWxlbWVudFxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50Lm9wZW4gPSB0aGlzLm9wZW4uYmluZCh0aGlzKVxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmNsb3NlID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zaG93biA9IHRoaXMuaW5pdGlhbGx5U2hvd25cbiAgICBpZiAodGhpcy5zaG93bikgdGhpcy5saW1pdEZvY3VzYWJsZSgpXG4gIH1cblxuICBwdWJsaWMgb25BY3Rpb24oZXZlbnQ6IEV2ZW50LCBhY3Rpb246IHN0cmluZykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xuICAgICAgY2FzZSAncG9zaXRpdmUnOlxuICAgICAgICB0aGlzLm5nZ3ZQb3NpdGl2ZUV2ZW50LmVtaXQoKVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbmV1dHJhbCc6XG4gICAgICAgIHRoaXMubmdndk5ldXRyYWxFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ25lZ2F0aXZlJzpcbiAgICAgICAgdGhpcy5uZ2d2TmVnYXRpdmVFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gICAgdGhpcy5jbG9zZShldmVudCwgJ2FjdGlvbicpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIG9uIGEgbW9kYWwgZWxlbWVudC4gT3BlbnMgdGhlIG1vZGFsIGFuZCBzZXRzIGZvY3VzIHRvIHRoZSBsYXN0IGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSBtb2RhbC5cbiAgICpcbiAgICogQHBhcmFtIG9wZW5lciAtIHJlZmVyZW5jZSB0byBsYXN0IGZvY3VzZWQgZWxlbWVudCBiZWZvcmUgb3BlbmluZyBtb2RhbFxuICAgKiBAcmV0dXJucyAtIHRydWVcbiAgICovXG4gIG9wZW4ob3BlbmVyPzogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLl9zaG93biA9IHRydWVcbiAgICB0aGlzLnByZXZpb3VzID0gb3BlbmVyIHx8IChkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KVxuICAgIHRoaXMuaGlkZU92ZXJmbG93KClcbiAgICB0aGlzLmxpbWl0Rm9jdXNhYmxlKClcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbiBhIG1vZGFsIGVsZW1lbnQuIENsb3NlcyB0aGUgbW9kYWwgYW5kIGVtaXRzIGEgYG5nZ3ZDbG9zZUV2ZW50YC4gU2V0cyBmb2N1cyB0byB0aGUgbGF0cyBmb2N1c2VkIGVsZW1lbnQgaWYgYW4gZWxlbWVudCB3YXMgc2VudCBpbiB0byBvcGVuIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnRcbiAgICogQHBhcmFtIGluaXRpYXRvclxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCcsICdcImhvc3RcIiddKVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pXG4gIGNsb3NlKGV2ZW50PzogRXZlbnQsIGluaXRpYXRvcj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIGluaXRpYXRvciA9PT0gJ2hvc3QnICYmXG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgJiZcbiAgICAgIGV2ZW50LnRhcmdldCAhPT0gZXZlbnQuY3VycmVudFRhcmdldFxuICAgIClcbiAgICAgIHJldHVyblxuXG4gICAgdGhpcy5yZXNldE92ZXJmbG93KClcblxuICAgIGlmICh0aGlzLnNob3duICYmIHRoaXMuY2xvc2FibGUpIHtcbiAgICAgIHRoaXMubmdndkNsb3NlRXZlbnQuZW1pdCh0aGlzLnNob3duKVxuICAgICAgdGhpcy5zaG93biA9IGZhbHNlXG4gICAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnByZXZpb3VzKSB0aGlzLnByZXZpb3VzLmZvY3VzKClcbiAgICAgICAgdGhpcy5wcmV2aW91cyA9IHVuZGVmaW5lZFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICBmb2N1c1RyYXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnVGFiJykgcmV0dXJuXG4gICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAvLyBzaGlmdCArIHRhYlxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmxhc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5maXJzdEZvY3VzYWJsZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubGFzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGFiXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5sYXN0Rm9jdXNhYmxlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5maXJzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpbWl0Rm9jdXNhYmxlKCkge1xuICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5zbGlkZU91dFJlZikgcmV0dXJuXG4gICAgICBjb25zdCBmb2N1c2FibGUgPSB0aGlzLnNsaWRlT3V0UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgJ2J1dHRvbiwgW2hyZWZdLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PVwiLTFcIl0pJyxcbiAgICAgIClcbiAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgPSBmb2N1c2FibGVbMF1cbiAgICAgIHRoaXMubGFzdEZvY3VzYWJsZSA9IGZvY3VzYWJsZVtmb2N1c2FibGUubGVuZ3RoIC0gMV1cbiAgICAgIGlmICh0aGlzLmxhc3RGb2N1c2FibGUpIHRoaXMubGFzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgaGlkZU92ZXJmbG93KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZG9jdW1lbnQuYm9keSwgJ292ZXJmbG93JywgJ2hpZGRlbicpXG4gIH1cblxuICBwcml2YXRlIHJlc2V0T3ZlcmZsb3coKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnKVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd25cIj5cbiAgPGRpdlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdnZHMtc2xpZGUtb3V0LS1sZWZ0JzogZnJvbUxlZnQsXG4gICAgICAnZ2RzLXNsaWRlLW91dC0tcmlnaHQnOiAhZnJvbUxlZnQsXG4gICAgfVwiXG4gICAgKnRyYW5zbG9jbz1cImxldCB0XCJcbiAgICBbY2xhc3MuLWFjdGl2ZV09XCJzaG93blwiXG4gICAgW2F0dHIuZGF0YS10aG9va109XCJ0aG9va1wiXG4gICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiIXNob3duXCJcbiAgICBbQG1vZGFsQW5pbWF0aW9uXVxuICA+XG4gICAgPGRpdlxuICAgICAgI3NsaWRlT3V0XG4gICAgICBjbGFzcz1cImdkcy1zbGlkZS1vdXRcIlxuICAgICAgW2NsYXNzLmF1dG8td2lkdGhdPVwiYXV0b1dpZHRoXCJcbiAgICAgIFtjbGFzcy5lbnRlcmVkXT1cInNob3duXCJcbiAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgYXJpYS1tb2RhbD1cInRydWVcIlxuICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwiZ2RzLW1vZGFsLXRpdGxlXCJcbiAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJnZHMtbW9kYWwtYm9keVwiXG4gICAgPlxuICAgICAgPGhlYWRlciBjbGFzcz1cImdkcy1zbGlkZS1vdXRfX2hlYWRlclwiPlxuICAgICAgICA8aDMgaWQ9XCJnZHMtbW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICB7eyBoZWFkaW5nIHx8IHRpdGxlIHx8ICcnIH19XG4gICAgICAgIDwvaDM+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBkYXRhLXRlc3RpZD1cIm1vZGFsLWNsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJuZ2d2LW1vZGFsLXNsaWRlb3V0X19jbG9zZVwiXG4gICAgICAgICAgKGNsaWNrKT1cInRoaXMuY2xvc2UoKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJjbG9zZUJ1dHRvbkFyaWFMYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgICA8aT48L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9oZWFkZXI+XG5cbiAgICAgIDxzZWN0aW9uIGlkPVwibW9kYWwtYm9keVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2RzLXNsaWRlLW91dF9fY29udGVudCBoaWRlLWlmLWVtcHR5XCI+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnRcIiBbaW5uZXJIdG1sXT1cImNvbnRlbnRcIj48L2Rpdj5cbiAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD0nb3V0c2lkZS1jb250ZW50J11cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NlY3Rpb24+XG5cbiAgICAgIDxmb290ZXIgY2xhc3M9XCJtb2RhbC1kaWFsb2dfX2FjdGlvbnNcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGFuZ2VyXCJcbiAgICAgICAgICB0eXBlPVwicmVzZXRcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwiJ2RpYWxvZy0nICsgKF9idXR0b25zPy5uZWdhdGl2ZSB8fCAnbmVnYXRpdmUnKVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ25lZ2F0aXZlJylcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uQWN0aW9uKCRldmVudCwgJ25lZ2F0aXZlJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMubmVnYXRpdmVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdChfYnV0dG9ucy5uZWdhdGl2ZSkgfX1cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLXRob29rXT1cIidkaWFsb2ctJyArIChfYnV0dG9ucz8ubmV1dHJhbCB8fCAnbmV1dHJhbCcpXCJcbiAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb24oJGV2ZW50LCAnbmV1dHJhbCcpXCJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkFjdGlvbigkZXZlbnQsICduZXV0cmFsJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMubmV1dHJhbFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0KF9idXR0b25zLm5ldXRyYWwpIH19XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInByaW1hcnlcIlxuICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwiJ2RpYWxvZy0nICsgKF9idXR0b25zPy5wb3NpdGl2ZSB8fCAncG9zaXRpdmUnKVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ3Bvc2l0aXZlJylcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uQWN0aW9uKCRldmVudCwgJ3Bvc2l0aXZlJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMucG9zaXRpdmVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdChfYnV0dG9ucy5wb3NpdGl2ZSkgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Zvb3Rlcj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibmdndi1iYWNrZHJvcFwiXG4gICAgICBkYXRhLXRob29rPVwic2xpZGVvdXQtYmFja2Ryb3BcIlxuICAgICAgKGNsaWNrKT1cImNsb3NlKClcIlxuICAgID48L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGUtb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvdi1hbmd1bGFyL21vZGFsL3NsaWRlLW91dC9zbGlkZS1vdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvbW9kYWwvc2xpZGUtb3V0L3NsaWRlLW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsT0FBTyxFQUNQLEtBQUssRUFDTCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQTtBQUM1QixPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQTs7OztBQUl0Qjs7Ozs7Ozs7Ozs7R0FXRztBQTJESCxNQUFNLE9BQU8scUJBQXFCO0lBUWhDLElBQWEsS0FBSyxDQUFDLEtBQWM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7UUFDbkIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtRQUNyQixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN0QixDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUNwQixDQUFDO0lBdUJELGdCQUFnQjtJQUNoQixJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFBO0lBQzdCLENBQUM7SUFNRCw2SEFBNkg7SUFDN0gsSUFBYSxPQUFPLENBQUMsT0FBc0I7UUFD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QVM7c0JBQWpCLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUdHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFZTyxPQUFPO3NCQUFuQixLQUFLO2dCQUtJLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csaUJBQWlCO3NCQUExQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBMERQLEtBQUs7c0JBRkosWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDOztzQkFDMUMsWUFBWTt1QkFBQyx5QkFBeUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1Qm5ELFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBncm91cCxcbiAgcXVlcnksXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxufSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJ1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgRGlhbG9nQnV0dG9ucyB9IGZyb20gJy4uL21vZGFsLnR5cGVzJ1xuXG4vKiogTW9kYWwgc2xpZGUtb3V0IGNvbXBvbmVudCBiYXNlZCBvbiB2YW5pbGxhIHBhdHRlcm4gbGlicmFyeSBkZXNpZ24uXG4gKiBUaGUgbW9kYWwgdGl0bGUgY2FuIGJlIHNldCB1c2luZyB0aGUgQElucHV0IGhlYWRpbmcsIGFuZCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgdHJhbnNsYXRlZCBpZlxuICogdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS5cbiAqIENvbnRlbnQgY2FuIGJlIGluamVjdGVkIGludG8gdGhlIGJvZHkgb2YgdGhlIHNsaWRlLW91dCBieSBlaXRoZXIgc2V0dGluZyB0aGUgQElucHV0IGNvbnRlbnQgdG8gYW55IHR5cGUgb2ZcbiAqIG1hcmtkb3duLCBvciB1c2luZyBjb250ZW50IHByb2plY3Rpb24gKGFkZGluZyBjb250ZW50IGJldHdlZW4gdGhlIGBuZ2d2LXNsaWRlb3V0LW1vZGFsYC1zdGFydCBhbmQgZW5kIHRhZykuXG4gKiBJZiB0aGUgY29udGVudCBuZWVkcyB0byBzdHJldGNoIG91dHNpZGUgdGhlIG5vcm1hbCBwYWRkZWQgYXJlYSwgYWRkIHRoZSBhdHRyaWJ1dGUgYHNsb3Q9XCJvdXRzaWRlLWNvbnRlbnRcImAgdG8gdGhlXG4gKiBwcm9qZWN0ZWQgY29udGVudCBtYWluIGVsZW1lbnQuXG4gKiBUZXN0IGhvb2tzOlxuICogVGhlIG1vZGFsIGhvb2sgZGVmYXVsdHMgdG8gJ3NsaWRlb3V0JyBidXQgaXMgY3VzdG9taXplYWJsZS5cbiAqIFRoZSBjbG9zaW5nIGJ1dHRvbiBjYW4gYmUgc2VsZWN0ZWQgdXNpbmcgJ3NsaWRlb3V0LWNsb3NlJy5cbiAqIFRoZSBiYWNrZHJvcCBpcyBzZWxlY3RhYmxlIHVzaW5nICdzbGlkZW91dC1iYWNrZHJvcCcuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nZ3Ytc2xpZGVvdXQtbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2xpZGUtb3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdtb2RhbEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgcXVlcnkoJy5nZHMtc2xpZGUtb3V0Jywgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDEwMCUpJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgcXVlcnkoJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLCBzdHlsZSh7IG9wYWNpdHk6ICcwJyB9KSwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSxcbiAgICAgICAgZ3JvdXAoW1xuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtc2xpZGUtb3V0JyxcbiAgICAgICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgICAgICczNTBtcyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSknLFxuICAgICAgICAgICAgICBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICAgIHF1ZXJ5KFxuICAgICAgICAgICAgJy5nZHMtYmFja2Ryb3AsIFtyb2xlPWRpYWxvZ10nLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzEnIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHsgb3B0aW9uYWw6IHRydWUgfSxcbiAgICAgICAgICApLFxuICAgICAgICBdKSxcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBxdWVyeSgnLmdkcy1zbGlkZS1vdXQnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pLCB7XG4gICAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgIH0pLFxuICAgICAgICBncm91cChbXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1zbGlkZS1vdXQnLFxuICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgJzM1MG1zIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKScsXG4gICAgICAgICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgICAgcXVlcnkoXG4gICAgICAgICAgICAnLmdkcy1iYWNrZHJvcCwgW3JvbGU9ZGlhbG9nXScsXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAnMzUwbXMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpJyxcbiAgICAgICAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAnMCcgfSksXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgeyBvcHRpb25hbDogdHJ1ZSB9LFxuICAgICAgICAgICksXG4gICAgICAgIF0pLFxuICAgICAgXSksXG4gICAgXSksXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZTbGlkZU91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgQFZpZXdDaGlsZCgnc2xpZGVPdXQnKSBzbGlkZU91dFJlZjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxuXG4gIC8qKiBTZXRzIGZyb20gd2hpY2ggc2lkZSB0aGUgbW9kYWwgc2hvdWxkIG9wZW4uICovXG4gIEBJbnB1dCgpIHNpZGU6ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnXG4gIC8qKiBEZWZpbmVzIHRoZSBkZWZhdWx0IHZpc2liaWxpdHkgc3RhdGUgb2YgdGhlIHNsaWRlLW91dC4gKi9cbiAgcHJpdmF0ZSBfc2hvd24gPSBmYWxzZVxuICBASW5wdXQoKSBzZXQgc2hvd24odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zaG93biA9IHZhbHVlXG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLmhpZGVPdmVyZmxvdygpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVzZXRPdmVyZmxvdygpXG4gICAgfVxuICB9XG4gIGdldCBzaG93bigpIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvd25cbiAgfVxuICAvKiogRGVmaW5lcyB0aGUgZGVmYXVsdCB2aXNpYmlsaXR5IHN0YXRlIG9mIHRoZSBtb2RhbC4gKi9cbiAgQElucHV0KCkgaW5pdGlhbGx5U2hvd24gPSBmYWxzZVxuICAvKiogU2V0cyBtb2RhbCBoZWFkaW5nLiBXaWxsIGJlIHRyYW5zbGF0ZWQgKHVzaW5nIHRyYW5zbG9jbykgaWYgdGhlIHN0cmluZyBtYXRjaGVzIGEgY21zIGtleS4gKi9cbiAgQElucHV0KCkgaGVhZGluZyE6IHN0cmluZ1xuICAvKipcbiAgICogU2V0cyBtb2RhbCB0aXRsZS4gV2lsbCBiZSB0cmFuc2xhdGVkICh1c2luZyB0cmFuc2xvY28pIGlmIHRoZSBzdHJpbmcgbWF0Y2hlcyBhIGNtcyBrZXkuXG4gICAqIEBkZXByZWNhdGVkIC0gdXNlIEBJbnB1dCgpIGhlYWRpbmcgaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlITogc3RyaW5nXG4gIC8qKiBTZXRzIGNvbnRlbnQgYm9keSBvZiB0aGUgbW9kYWwgYW5kIGNhbiBjb250YWluIGh0bWwgY29kZS4gVGhlIGNvbnRlbnQgYm9keSBjYW4gYWxzbyBiZSBzZXQgYnkgbmVzdGluZyBjaGlsZHJlbiB0byB0aGUgbW9kYWwgdGFnLiAqL1xuICBASW5wdXQoKSBjb250ZW50Pzogc3RyaW5nXG4gIC8qKiBTZXRzIHdoZXRoZXIgaXQgaXMgcG9zc2libGUgdG8gY2xvc2UgdGhlIG1vZGFsIGZyb20gdGhlIHRvcCByaWdodCBjb3JuZXIuICovXG4gIEBJbnB1dCgpIGNsb3NhYmxlID0gdHJ1ZVxuICAvKiogQWxsb3dzIHRoZSBtb2RhbCBjb250ZW50IHRvIGRlY2lkZSB0aGUgd2lkdGggb2YgdGhlIG1vZGFsLiAqL1xuICBASW5wdXQoKSBhdXRvV2lkdGggPSBmYWxzZVxuXG4gIC8qKiBTcGVjaWFsIHByb3BlcnR5IHVzZWQgZm9yIHNlbGVjdGluZyBET00gZWxlbWVudHMgZHVyaW5nIGF1dG9tYXRlZCBVSSB0ZXN0aW5nLiAqL1xuICBASW5wdXQoKSB0aG9vayA9ICdzbGlkZW91dCdcblxuICAvKiogQXJpYSBsYWJlbCBmb3IgdGhlIENsb3NlIGJ1dHRvbiB3aXRoIFwiWFwiIGljb24sIGluIHRoZSBoZWFkZXIgKi9cbiAgQElucHV0KCkgY2xvc2VCdXR0b25BcmlhTGFiZWw/OiBzdHJpbmdcblxuICAvKiogQGludGVybmFsICovXG4gIGdldCBmcm9tTGVmdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaWRlID09PSAnbGVmdCdcbiAgfVxuXG4gIC8vIC8qKiBAaW50ZXJuYWwgKi9cbiAgLy8gY2xvc2VJY29uID0gZmFUaW1lcztcblxuICBfYnV0dG9uczogRGlhbG9nQnV0dG9ucyB8IHVuZGVmaW5lZFxuICAvKiogQnV0dG9ucyBhcmUgZGVmaW5lZCBhcyBhIGtleS12YWx1ZSBwYWlyIHdoZXJlIGtleSBpcyBvbmUgb2YgXCJwb3NpdGl2ZXxuZXV0cmFsfG5lZ2F0aXZlXCIgYW5kIHZhbHVlIGlzIHRoZSBidXR0b24gbGFiZWwuICovXG4gIEBJbnB1dCgpIHNldCBidXR0b25zKGJ1dHRvbnM6IERpYWxvZ0J1dHRvbnMpIHtcbiAgICB0aGlzLl9idXR0b25zID0gYnV0dG9uc1xuICB9XG5cbiAgLyoqIFdpbGwgZW1pdCB0cnVlIG9uIGNsb3NpbmcgZXZlbnQuICovXG4gIEBPdXRwdXQoKSBuZ2d2Q2xvc2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKVxuICBAT3V0cHV0KCkgbmdndlBvc2l0aXZlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZXV0cmFsRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KClcbiAgQE91dHB1dCgpIG5nZ3ZOZWdhdGl2ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpXG5cbiAgcHJpdmF0ZSBwcmV2aW91czogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBmaXJzdEZvY3VzYWJsZTogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWRcbiAgcHJpdmF0ZSBsYXN0Rm9jdXNhYmxlOiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaG9zdDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICkge1xuICAgIC8vIGFwcGVuZHMgbWV0aG9kcyBmb3Igb3BlbmluZyBhbmQgY2xvc2luZyBtb2RhbCB0byBuYXRpdmUgZWxlbWVudFxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50Lm9wZW4gPSB0aGlzLm9wZW4uYmluZCh0aGlzKVxuICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmNsb3NlID0gdGhpcy5jbG9zZS5iaW5kKHRoaXMpXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLl9zaG93biA9IHRoaXMuaW5pdGlhbGx5U2hvd25cbiAgICBpZiAodGhpcy5zaG93bikgdGhpcy5saW1pdEZvY3VzYWJsZSgpXG4gIH1cblxuICBwdWJsaWMgb25BY3Rpb24oZXZlbnQ6IEV2ZW50LCBhY3Rpb246IHN0cmluZykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBzd2l0Y2ggKGFjdGlvbikge1xuICAgICAgY2FzZSAncG9zaXRpdmUnOlxuICAgICAgICB0aGlzLm5nZ3ZQb3NpdGl2ZUV2ZW50LmVtaXQoKVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbmV1dHJhbCc6XG4gICAgICAgIHRoaXMubmdndk5ldXRyYWxFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ25lZ2F0aXZlJzpcbiAgICAgICAgdGhpcy5uZ2d2TmVnYXRpdmVFdmVudC5lbWl0KClcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gICAgdGhpcy5jbG9zZShldmVudCwgJ2FjdGlvbicpXG4gIH1cblxuICAvKipcbiAgICogQ2FsbGVkIG9uIGEgbW9kYWwgZWxlbWVudC4gT3BlbnMgdGhlIG1vZGFsIGFuZCBzZXRzIGZvY3VzIHRvIHRoZSBsYXN0IGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSBtb2RhbC5cbiAgICpcbiAgICogQHBhcmFtIG9wZW5lciAtIHJlZmVyZW5jZSB0byBsYXN0IGZvY3VzZWQgZWxlbWVudCBiZWZvcmUgb3BlbmluZyBtb2RhbFxuICAgKiBAcmV0dXJucyAtIHRydWVcbiAgICovXG4gIG9wZW4ob3BlbmVyPzogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLl9zaG93biA9IHRydWVcbiAgICB0aGlzLnByZXZpb3VzID0gb3BlbmVyIHx8IChkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KVxuICAgIHRoaXMuaGlkZU92ZXJmbG93KClcbiAgICB0aGlzLmxpbWl0Rm9jdXNhYmxlKClcbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbiBhIG1vZGFsIGVsZW1lbnQuIENsb3NlcyB0aGUgbW9kYWwgYW5kIGVtaXRzIGEgYG5nZ3ZDbG9zZUV2ZW50YC4gU2V0cyBmb2N1cyB0byB0aGUgbGF0cyBmb2N1c2VkIGVsZW1lbnQgaWYgYW4gZWxlbWVudCB3YXMgc2VudCBpbiB0byBvcGVuIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnRcbiAgICogQHBhcmFtIGluaXRpYXRvclxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCcsICdcImhvc3RcIiddKVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pXG4gIGNsb3NlKGV2ZW50PzogRXZlbnQsIGluaXRpYXRvcj86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIGluaXRpYXRvciA9PT0gJ2hvc3QnICYmXG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgJiZcbiAgICAgIGV2ZW50LnRhcmdldCAhPT0gZXZlbnQuY3VycmVudFRhcmdldFxuICAgIClcbiAgICAgIHJldHVyblxuXG4gICAgdGhpcy5yZXNldE92ZXJmbG93KClcblxuICAgIGlmICh0aGlzLnNob3duICYmIHRoaXMuY2xvc2FibGUpIHtcbiAgICAgIHRoaXMubmdndkNsb3NlRXZlbnQuZW1pdCh0aGlzLnNob3duKVxuICAgICAgdGhpcy5zaG93biA9IGZhbHNlXG4gICAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnByZXZpb3VzKSB0aGlzLnByZXZpb3VzLmZvY3VzKClcbiAgICAgICAgdGhpcy5wcmV2aW91cyA9IHVuZGVmaW5lZFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICAvKiogQGludGVybmFsICovXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICBmb2N1c1RyYXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSAnVGFiJykgcmV0dXJuXG4gICAgaWYgKGV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAvLyBzaGlmdCArIHRhYlxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmxhc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5maXJzdEZvY3VzYWJsZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMubGFzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGFiXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgJiZcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gdGhpcy5sYXN0Rm9jdXNhYmxlXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5maXJzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpbWl0Rm9jdXNhYmxlKCkge1xuICAgIHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5zbGlkZU91dFJlZikgcmV0dXJuXG4gICAgICBjb25zdCBmb2N1c2FibGUgPSB0aGlzLnNsaWRlT3V0UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgJ2J1dHRvbiwgW2hyZWZdLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PVwiLTFcIl0pJyxcbiAgICAgIClcbiAgICAgIHRoaXMuZmlyc3RGb2N1c2FibGUgPSBmb2N1c2FibGVbMF1cbiAgICAgIHRoaXMubGFzdEZvY3VzYWJsZSA9IGZvY3VzYWJsZVtmb2N1c2FibGUubGVuZ3RoIC0gMV1cbiAgICAgIGlmICh0aGlzLmxhc3RGb2N1c2FibGUpIHRoaXMubGFzdEZvY3VzYWJsZS5mb2N1cygpXG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgaGlkZU92ZXJmbG93KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoZG9jdW1lbnQuYm9keSwgJ292ZXJmbG93JywgJ2hpZGRlbicpXG4gIH1cblxuICBwcml2YXRlIHJlc2V0T3ZlcmZsb3coKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnKVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd25cIj5cbiAgPGRpdlxuICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICdnZHMtc2xpZGUtb3V0LS1sZWZ0JzogZnJvbUxlZnQsXG4gICAgICAnZ2RzLXNsaWRlLW91dC0tcmlnaHQnOiAhZnJvbUxlZnQsXG4gICAgfVwiXG4gICAgKnRyYW5zbG9jbz1cImxldCB0XCJcbiAgICBbY2xhc3MuLWFjdGl2ZV09XCJzaG93blwiXG4gICAgW2F0dHIuZGF0YS10aG9va109XCJ0aG9va1wiXG4gICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiIXNob3duXCJcbiAgICBbQG1vZGFsQW5pbWF0aW9uXVxuICA+XG4gICAgPGRpdlxuICAgICAgI3NsaWRlT3V0XG4gICAgICBjbGFzcz1cImdkcy1zbGlkZS1vdXRcIlxuICAgICAgW2NsYXNzLmF1dG8td2lkdGhdPVwiYXV0b1dpZHRoXCJcbiAgICAgIFtjbGFzcy5lbnRlcmVkXT1cInNob3duXCJcbiAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgYXJpYS1tb2RhbD1cInRydWVcIlxuICAgICAgYXJpYS1sYWJlbGxlZGJ5PVwiZ2RzLW1vZGFsLXRpdGxlXCJcbiAgICAgIGFyaWEtZGVzY3JpYmVkYnk9XCJnZHMtbW9kYWwtYm9keVwiXG4gICAgPlxuICAgICAgPGhlYWRlciBjbGFzcz1cImdkcy1zbGlkZS1vdXRfX2hlYWRlclwiPlxuICAgICAgICA8aDMgaWQ9XCJnZHMtbW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICB7eyBoZWFkaW5nIHx8IHRpdGxlIHx8ICcnIH19XG4gICAgICAgIDwvaDM+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBkYXRhLXRlc3RpZD1cIm1vZGFsLWNsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJuZ2d2LW1vZGFsLXNsaWRlb3V0X19jbG9zZVwiXG4gICAgICAgICAgKGNsaWNrKT1cInRoaXMuY2xvc2UoKVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJjbG9zZUJ1dHRvbkFyaWFMYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgICA8aT48L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9oZWFkZXI+XG5cbiAgICAgIDxzZWN0aW9uIGlkPVwibW9kYWwtYm9keVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2RzLXNsaWRlLW91dF9fY29udGVudCBoaWRlLWlmLWVtcHR5XCI+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnRcIiBbaW5uZXJIdG1sXT1cImNvbnRlbnRcIj48L2Rpdj5cbiAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbc2xvdD0nb3V0c2lkZS1jb250ZW50J11cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NlY3Rpb24+XG5cbiAgICAgIDxmb290ZXIgY2xhc3M9XCJtb2RhbC1kaWFsb2dfX2FjdGlvbnNcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGFuZ2VyXCJcbiAgICAgICAgICB0eXBlPVwicmVzZXRcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwiJ2RpYWxvZy0nICsgKF9idXR0b25zPy5uZWdhdGl2ZSB8fCAnbmVnYXRpdmUnKVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ25lZ2F0aXZlJylcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uQWN0aW9uKCRldmVudCwgJ25lZ2F0aXZlJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMubmVnYXRpdmVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdChfYnV0dG9ucy5uZWdhdGl2ZSkgfX1cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwic2Vjb25kYXJ5XCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLXRob29rXT1cIidkaWFsb2ctJyArIChfYnV0dG9ucz8ubmV1dHJhbCB8fCAnbmV1dHJhbCcpXCJcbiAgICAgICAgICAoY2xpY2spPVwib25BY3Rpb24oJGV2ZW50LCAnbmV1dHJhbCcpXCJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkFjdGlvbigkZXZlbnQsICduZXV0cmFsJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMubmV1dHJhbFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyB0KF9idXR0b25zLm5ldXRyYWwpIH19XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInByaW1hcnlcIlxuICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwiJ2RpYWxvZy0nICsgKF9idXR0b25zPy5wb3NpdGl2ZSB8fCAncG9zaXRpdmUnKVwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQWN0aW9uKCRldmVudCwgJ3Bvc2l0aXZlJylcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uQWN0aW9uKCRldmVudCwgJ3Bvc2l0aXZlJylcIlxuICAgICAgICAgICpuZ0lmPVwiX2J1dHRvbnMgJiYgX2J1dHRvbnMucG9zaXRpdmVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgdChfYnV0dG9ucy5wb3NpdGl2ZSkgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Zvb3Rlcj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibmdndi1iYWNrZHJvcFwiXG4gICAgICBkYXRhLXRob29rPVwic2xpZGVvdXQtYmFja2Ryb3BcIlxuICAgICAgKGNsaWNrKT1cImNsb3NlKClcIlxuICAgID48L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -68,11 +68,11 @@ export class NggvTextareaComponent extends NggvBaseControlValueAccessorComponent
68
68
  this.onChange(this.state);
69
69
  }
70
70
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTextareaComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: TRANSLOCO_SCOPE, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
71
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTextareaComponent, selector: "nggv-textarea", inputs: { thook: "thook", placeholder: "placeholder", readonly: "readonly", minLength: "minLength", minlength: "minlength", maxLength: "maxLength", maxlength: "maxlength", rows: "rows" }, host: { properties: { "attr.data-thook": "this.thook" } }, usesInheritance: true, ngImport: i0, template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-textarea'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\" *ngIf=\"description\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-textarea'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n {{ state }}\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT FIELD -->\n<ng-container *ngIf=\"!locked\">\n <textarea\n #input\n [id]=\"id + '-textarea'\"\n class=\"gds-field\"\n [ngClass]=\"{ 'no-resize': !!rows }\"\n [class.nggv-field--error]=\"invalid\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.role]=\"role\"\n [attr.rows]=\"rows\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n title=\"\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-textarea'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n solid=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"hasMaxLength\">\n <span\n *nggvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--sg-text-primary: #333;--sg-form-control-bg: #fff;--gds-ref-pallet-base100: hsl(0, 0%, 97%);--sg-border-radius: 4px;--sg-border-width: 1px;--sg-border-color: #868686}:host textarea{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);align-items:center;background-color:var(--sg-form-control-bg);color:var(--text-primary-color);display:flex;justify-content:center;resize:vertical}:host textarea:focus:not(:focus-visible){box-shadow:none;outline:0}:host textarea:focus,:host textarea:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media screen and (-ms-high-contrast: active){:host textarea{border:2px solid currentcolor}}:host textarea:hover{background-color:var(--gds-ref-pallet-base100)}:host textarea:disabled,:host textarea.disabled,:host textarea[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host textarea:disabled::placeholder,:host textarea.disabled::placeholder,:host textarea[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host label:not(.gds-field-notice){margin-bottom:.5rem}:host label:not(.gds-field-notice):is(label){margin-bottom:0}:host label:not(.gds-field-notice).form-control{width:fit-content}@supports (-moz-appearance: none){:host label:not(.gds-field-notice).form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label:not(.gds-field-notice).form-control:focus,:host label:not(.gds-field-notice).form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.gds-field-notice):not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label:not(.gds-field-notice)+input,:host label:not(.gds-field-notice)+textarea,fieldset :host label:not(.gds-field-notice)+div,:host label:not(.gds-field-notice)+button,:host label:not(.gds-field-notice)+.group-stepper,:host label:not(.gds-field-notice)+.stepper-wrapper,:host label:not(.gds-field-notice)+.group{margin-top:.5rem}:host label:not(.gds-field-notice)+.form-info{margin-bottom:.5rem}:host label:is(.gds-field-label){margin-bottom:.5rem}:host .hide-if-empty:empty{display:none}:host .unset-state{padding-left:.5rem}:host .gds-field-label--optional{font-weight:400}:host textarea{width:100%;max-width:100%;box-sizing:border-box;font-family:inherit;font-size:1rem}:host textarea.nggv-field--error{border-bottom:.125rem solid #9f000a!important}:host .description{margin-bottom:.5rem}:host .error-wrapper{margin-top:.5rem;display:flex}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{margin-top:.128rem;align-items:center}:host .no-resize{resize:none}:host .no-resize::-webkit-scrollbar{-webkit-appearance:none}:host .no-resize::-webkit-scrollbar-thumb{border-radius:.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i4.CharacterCountdownDirective, selector: "[nggvCharacterCountdown]", inputs: ["nggvCharacterCountdown", "nggvCharacterCountdownCurrentLength"] }, { kind: "directive", type: i5.NggCoreElementDirective, selector: "[nggCoreElement]" }] }); }
71
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NggvTextareaComponent, selector: "nggv-textarea", inputs: { thook: "thook", placeholder: "placeholder", readonly: "readonly", minLength: "minLength", minlength: "minlength", maxLength: "maxLength", maxlength: "maxlength", rows: "rows" }, host: { properties: { "attr.data-thook": "this.thook" } }, usesInheritance: true, ngImport: i0, template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-textarea'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\" *ngIf=\"description\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-textarea'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n {{ state }}\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT FIELD -->\n<ng-container *ngIf=\"!locked\">\n <textarea\n #input\n [id]=\"id + '-textarea'\"\n class=\"gds-field\"\n [ngClass]=\"{ 'no-resize': !!rows }\"\n [class.nggv-field--error]=\"invalid\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.role]=\"role\"\n [attr.rows]=\"rows\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n title=\"\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-textarea'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n solid=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"hasMaxLength\">\n <span\n *nggvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info form-info--countdown\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--sg-text-primary: #333;--sg-form-control-bg: #fff;--gds-ref-pallet-base100: hsl(0, 0%, 97%);--sg-border-radius: 4px;--sg-border-width: 1px;--sg-border-color: #868686}:host textarea{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);align-items:center;background-color:var(--sg-form-control-bg);color:var(--text-primary-color);display:flex;justify-content:center;resize:vertical}:host textarea:focus:not(:focus-visible){box-shadow:none;outline:0}:host textarea:focus,:host textarea:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media screen and (-ms-high-contrast: active){:host textarea{border:2px solid currentcolor}}:host textarea:hover{background-color:var(--gds-ref-pallet-base100)}:host textarea:disabled,:host textarea.disabled,:host textarea[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host textarea:disabled::placeholder,:host textarea.disabled::placeholder,:host textarea[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host label:not(.gds-field-notice):is(label){margin-bottom:0}:host label:not(.gds-field-notice).form-control{width:fit-content}@supports (-moz-appearance: none){:host label:not(.gds-field-notice).form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label:not(.gds-field-notice).form-control:focus,:host label:not(.gds-field-notice).form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.gds-field-notice):not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label:not(.gds-field-notice)+input,:host label:not(.gds-field-notice)+textarea,fieldset :host label:not(.gds-field-notice)+div,:host label:not(.gds-field-notice)+button,:host label:not(.gds-field-notice)+.group-stepper,:host label:not(.gds-field-notice)+.stepper-wrapper,:host label:not(.gds-field-notice)+.group{margin-top:.5rem}:host label:not(.gds-field-notice)+.form-info{margin-bottom:.5rem}:host label+.gds-field,:host label+.nggv-field--locked{margin-top:.5rem}:host .hide-if-empty:empty{display:none}:host .unset-state{padding-left:.5rem}:host .gds-field-label--optional{font-weight:400}:host textarea{width:100%;max-width:100%;box-sizing:border-box;font-family:inherit;font-size:1rem}:host textarea.nggv-field--error{border-bottom:.125rem solid #9f000a!important}:host .description{margin-bottom:.5rem}:host .error-wrapper{margin-top:.5rem;display:flex}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{margin-top:.128rem;align-items:center}:host .gds-form-item__footer>.form-info--countdown{font-weight:400}:host .no-resize{resize:none}:host .no-resize::-webkit-scrollbar{-webkit-appearance:none}:host .no-resize::-webkit-scrollbar-thumb{border-radius:.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: i4.CharacterCountdownDirective, selector: "[nggvCharacterCountdown]", inputs: ["nggvCharacterCountdown", "nggvCharacterCountdownCurrentLength"] }, { kind: "directive", type: i5.NggCoreElementDirective, selector: "[nggCoreElement]" }] }); }
72
72
  }
73
73
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NggvTextareaComponent, decorators: [{
74
74
  type: Component,
75
- args: [{ selector: 'nggv-textarea', template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-textarea'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\" *ngIf=\"description\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-textarea'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n {{ state }}\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT FIELD -->\n<ng-container *ngIf=\"!locked\">\n <textarea\n #input\n [id]=\"id + '-textarea'\"\n class=\"gds-field\"\n [ngClass]=\"{ 'no-resize': !!rows }\"\n [class.nggv-field--error]=\"invalid\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.role]=\"role\"\n [attr.rows]=\"rows\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n title=\"\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-textarea'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n solid=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"hasMaxLength\">\n <span\n *nggvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--sg-text-primary: #333;--sg-form-control-bg: #fff;--gds-ref-pallet-base100: hsl(0, 0%, 97%);--sg-border-radius: 4px;--sg-border-width: 1px;--sg-border-color: #868686}:host textarea{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);align-items:center;background-color:var(--sg-form-control-bg);color:var(--text-primary-color);display:flex;justify-content:center;resize:vertical}:host textarea:focus:not(:focus-visible){box-shadow:none;outline:0}:host textarea:focus,:host textarea:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media screen and (-ms-high-contrast: active){:host textarea{border:2px solid currentcolor}}:host textarea:hover{background-color:var(--gds-ref-pallet-base100)}:host textarea:disabled,:host textarea.disabled,:host textarea[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host textarea:disabled::placeholder,:host textarea.disabled::placeholder,:host textarea[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host label:not(.gds-field-notice){margin-bottom:.5rem}:host label:not(.gds-field-notice):is(label){margin-bottom:0}:host label:not(.gds-field-notice).form-control{width:fit-content}@supports (-moz-appearance: none){:host label:not(.gds-field-notice).form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label:not(.gds-field-notice).form-control:focus,:host label:not(.gds-field-notice).form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.gds-field-notice):not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label:not(.gds-field-notice)+input,:host label:not(.gds-field-notice)+textarea,fieldset :host label:not(.gds-field-notice)+div,:host label:not(.gds-field-notice)+button,:host label:not(.gds-field-notice)+.group-stepper,:host label:not(.gds-field-notice)+.stepper-wrapper,:host label:not(.gds-field-notice)+.group{margin-top:.5rem}:host label:not(.gds-field-notice)+.form-info{margin-bottom:.5rem}:host label:is(.gds-field-label){margin-bottom:.5rem}:host .hide-if-empty:empty{display:none}:host .unset-state{padding-left:.5rem}:host .gds-field-label--optional{font-weight:400}:host textarea{width:100%;max-width:100%;box-sizing:border-box;font-family:inherit;font-size:1rem}:host textarea.nggv-field--error{border-bottom:.125rem solid #9f000a!important}:host .description{margin-bottom:.5rem}:host .error-wrapper{margin-top:.5rem;display:flex}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{margin-top:.128rem;align-items:center}:host .no-resize{resize:none}:host .no-resize::-webkit-scrollbar{-webkit-appearance:none}:host .no-resize::-webkit-scrollbar-thumb{border-radius:.5rem}\n"] }]
75
+ args: [{ selector: 'nggv-textarea', template: "<!-- LABEL -->\n<label\n [id]=\"id + '-label'\"\n class=\"gds-field-label hide-if-empty\"\n [attr.for]=\"id + '-textarea'\"\n *transloco=\"let t; read: scope\"\n>\n <ng-template\n *ngTemplateOutlet=\"labelContentTpl || basicLabelContentTpl\"\n ></ng-template>\n <ng-template #basicLabelContentTpl>\n <!-- to trigger css:empty if no label was added -->\n <ng-container *ngIf=\"label\">\n {{ label }}\n <span\n *ngIf=\"optional === true || (required !== true && optional !== false)\"\n class=\"gds-field-label--optional\"\n >\n ({{ t('label.optional') }})\n </span>\n </ng-container>\n </ng-template>\n</label>\n\n<!-- DESCRIPTION -->\n<div class=\"form-info description hide-if-empty\" *ngIf=\"description\">\n {{ description }}\n</div>\n\n<!-- LOCKED INPUT -->\n<ng-container *ngIf=\"locked\">\n <div\n [id]=\"id + '-textarea'\"\n class=\"nggv-field--locked\"\n [attr.name]=\"name\"\n [attr.value]=\"state\"\n [attr.role]=\"role\"\n >\n <span *ngIf=\"!state\" class=\"unset-state\">-</span>\n <ng-container *ngIf=\"state\">\n {{ state }}\n </ng-container>\n </div>\n</ng-container>\n\n<!-- INPUT FIELD -->\n<ng-container *ngIf=\"!locked\">\n <textarea\n #input\n [id]=\"id + '-textarea'\"\n class=\"gds-field\"\n [ngClass]=\"{ 'no-resize': !!rows }\"\n [class.nggv-field--error]=\"invalid\"\n [attr.name]=\"name\"\n [attr.required]=\"required\"\n [disabled]=\"disabled\"\n [autofocus]=\"autofocus\"\n [readOnly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [attr.role]=\"role\"\n [attr.rows]=\"rows\"\n [attr.placeholder]=\"placeholder\"\n [attr.aria-label]=\"description\"\n [value]=\"state\"\n title=\"\"\n (input)=\"onInput($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n ></textarea>\n\n <!-- ERRORS -->\n <div\n class=\"gds-form-item__footer error-wrapper\"\n *transloco=\"let t; read: scope\"\n >\n <span\n class=\"form-info form-info--error\"\n [attr.for]=\"id + '-textarea'\"\n *ngIf=\"invalid && (error || ngControl?.invalid)\"\n >\n <span class=\"error-icon\">\n <gds-icon-triangle-exclamation\n width=\"16\"\n height=\"16\"\n solid=\"true\"\n *nggCoreElement\n ></gds-icon-triangle-exclamation>\n </span>\n\n <span\n *ngIf=\"error; else errorsRef\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >{{ error }}</span\n >\n <ng-template #errorsRef>\n <span\n *ngIf=\"firstError as error\"\n [attr.data-thook]=\"thook + '-errorlabel'\"\n >\n {{ t('error.field' + error?.code, error?.params) }}\n </span>\n </ng-template>\n </span>\n\n <ng-container *ngIf=\"hasMaxLength\">\n <span\n *nggvCharacterCountdown=\"\n maxlength;\n currentLength: (inputRef?.nativeElement?.value ?? '').length;\n charactersLeft as charactersLeft\n \"\n class=\"form-info form-info--countdown\"\n style=\"text-align: right\"\n >\n {{ charactersLeft }} {{ t('label.maxlength') }}\n </span>\n </ng-container>\n </div>\n\n <!-- CHILDREN -->\n <ng-content></ng-content>\n</ng-container>\n", styles: [":host{--sg-text-primary: #333;--sg-form-control-bg: #fff;--gds-ref-pallet-base100: hsl(0, 0%, 97%);--sg-border-radius: 4px;--sg-border-width: 1px;--sg-border-color: #868686}:host textarea{padding:.75rem 1rem;border-radius:var(--sg-border-radius);border:solid var(--sg-border-width) var(--sg-border-color);--border-color: var(--sg-border-color);align-items:center;background-color:var(--sg-form-control-bg);color:var(--text-primary-color);display:flex;justify-content:center;resize:vertical}:host textarea:focus:not(:focus-visible){box-shadow:none;outline:0}:host textarea:focus,:host textarea:focus-visible{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}@media screen and (-ms-high-contrast: active){:host textarea{border:2px solid currentcolor}}:host textarea:hover{background-color:var(--gds-ref-pallet-base100)}:host textarea:disabled,:host textarea.disabled,:host textarea[aria-disabled=true]{background:var(--sg-form-control-bg-disabled)!important;color:var(--text-disabled-color)!important;border-color:var(--border-disabled-color)!important;cursor:not-allowed}:host textarea:disabled::placeholder,:host textarea.disabled::placeholder,:host textarea[aria-disabled=true]::placeholder{color:var(--text-disabled-color)}:host label:not(.gds-field-notice):is(label){margin-bottom:0}:host label:not(.gds-field-notice).form-control{width:fit-content}@supports (-moz-appearance: none){:host label:not(.gds-field-notice).form-control:focus:not(:focus-visible){box-shadow:none;outline:0}:host label:not(.gds-field-notice).form-control:focus,:host label:not(.gds-field-notice).form-control:focus-within{outline-color:var(--gds-sys-color-focus-outline);outline-style:solid;outline-width:.125rem;outline-offset:.125rem}}:host label:not(.gds-field-notice):not(.form-control){font-weight:500;width:100%;line-height:1.25rem}:host label:not(.gds-field-notice)+input,:host label:not(.gds-field-notice)+textarea,fieldset :host label:not(.gds-field-notice)+div,:host label:not(.gds-field-notice)+button,:host label:not(.gds-field-notice)+.group-stepper,:host label:not(.gds-field-notice)+.stepper-wrapper,:host label:not(.gds-field-notice)+.group{margin-top:.5rem}:host label:not(.gds-field-notice)+.form-info{margin-bottom:.5rem}:host label+.gds-field,:host label+.nggv-field--locked{margin-top:.5rem}:host .hide-if-empty:empty{display:none}:host .unset-state{padding-left:.5rem}:host .gds-field-label--optional{font-weight:400}:host textarea{width:100%;max-width:100%;box-sizing:border-box;font-family:inherit;font-size:1rem}:host textarea.nggv-field--error{border-bottom:.125rem solid #9f000a!important}:host .description{margin-bottom:.5rem}:host .error-wrapper{margin-top:.5rem;display:flex}:host .form-info{font-size:.875rem;line-height:1.25rem;width:100%}:host .gds-form-item__footer .form-info{font-weight:500}:host .gds-form-item__footer .form-info--error{display:flex;align-items:flex-start;gap:.5em;color:#9f000a}:host .gds-form-item__footer .form-info--error .error-icon{margin-top:.128rem;align-items:center}:host .gds-form-item__footer>.form-info--countdown{font-weight:400}:host .no-resize{resize:none}:host .no-resize::-webkit-scrollbar{-webkit-appearance:none}:host .no-resize::-webkit-scrollbar-thumb{border-radius:.5rem}\n"] }]
76
76
  }], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
77
77
  type: Self
78
78
  }, {
@@ -102,4 +102,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
102
102
  }], rows: [{
103
103
  type: Input
104
104
  }] } });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxvRUFBb0UsQ0FBQTtBQUUzRSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLG9CQUFvQixDQUFBO0FBRXBFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLG1FQUFtRSxDQUFBOzs7Ozs7O0FBRXpILGdGQUFnRjtBQU1oRixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUNBQXFDO0lBUTlFLHNEQUFzRDtJQUN0RCxJQUFhLFNBQVMsQ0FBQyxNQUFjO1FBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDMUIsQ0FBQztJQUNELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN4QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYSxTQUFTLENBQUMsTUFBYztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQTtRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFDRCxzREFBc0Q7SUFDdEQsSUFBYSxTQUFTLENBQUMsTUFBYztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQTtRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFDRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUNEOzs7T0FHRztJQUNILElBQWEsU0FBUyxDQUFDLE1BQWM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUE7UUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLElBQUksWUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsZ0JBQWdCLENBQUE7SUFDdkUsQ0FBQztJQVNELFlBQzZCLFNBQW9CLEVBR3JDLGNBQThCLEVBQzlCLEdBQXNCO1FBRWhDLEtBQUssQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBTlYsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUdyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUExRGxDLG9GQUFvRjtRQUMzQyxVQUFLLEdBQzVDLFVBQVUsQ0FBQTtRQUdaLHNEQUFzRDtRQUM3QyxhQUFRLEdBQUcsS0FBSyxDQUFBO1FBd0NqQixlQUFVLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFBO1FBRXBDLGVBQVUsR0FBRyxDQUFDLENBQUE7SUFhdEIsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixPQUFPLENBQUMsS0FBWTtRQUNsQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU07UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBSSxLQUFLLENBQUMsTUFBOEIsQ0FBQyxLQUFLLENBQUE7UUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0IsQ0FBQzsrR0F0RVUscUJBQXFCLHVFQXlEdEIsZUFBZTttR0F6RGQscUJBQXFCLG1VQ3RCbEMscXdHQTJIQTs7NEZEckdhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxlQUFlOzswQkEyRHRCLElBQUk7OzBCQUFJLFFBQVE7OzBCQUNoQixRQUFROzswQkFDUixNQUFNOzJCQUFDLGVBQWU7eUVBdkRnQixLQUFLO3NCQUE3QyxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQUcsS0FBSztnQkFHN0IsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBWU8sU0FBUztzQkFBckIsS0FBSztnQkFLTyxTQUFTO3NCQUFyQixLQUFLO2dCQVdPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBZUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAc2ViZ3JvdXAvZ3JlZW4tY29yZS9jb21wb25lbnRzL2ljb24vaWNvbnMvdHJpYW5nbGUtZXhjbGFtYXRpb24uanMnXG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbiAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgVFJBTlNMT0NPX1NDT1BFLCBUcmFuc2xvY29TY29wZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbydcblxuaW1wb3J0IHsgTmdndkJhc2VDb250cm9sVmFsdWVBY2Nlc3NvckNvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvYmFzZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yJ1xuXG4vKiogVGV4dGFyZWEgZmllbGRzIGFsbG93IHVzZXJzIHRvIGFkZCBhbmQgZWRpdCBsb25nZXIgb3IgbXVsdGlwbGUgbGluZSB0ZXh0LiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi10ZXh0YXJlYScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0YXJlYS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHRhcmVhLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZUZXh0YXJlYUNvbXBvbmVudCBleHRlbmRzIE5nZ3ZCYXNlQ29udHJvbFZhbHVlQWNjZXNzb3JDb21wb25lbnQge1xuICAvKiogU3BlY2lhbCBwcm9wZXJ0eSB1c2VkIGZvciBzZWxlY3RpbmcgRE9NIGVsZW1lbnRzIGR1cmluZyBhdXRvbWF0ZWQgVUkgdGVzdGluZy4gKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdGhvb2snKSBASW5wdXQoKSB0aG9vazogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9XG4gICAgJ3RleHRhcmVhJ1xuICAvKiogVGV4dCBzaG93biBiZWZvcmUgaW5wdXQgaGFzIGEgd3JpdHRlbiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqIElmIHNldCB0byB0cnVlLCB0aGUgdmFsdWUgd2lsbCBub3QgYmUgZWRpdGFibGUuICovXG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2VcbiAgLyoqIE1pbmltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuICovXG4gIEBJbnB1dCgpIHNldCBtaW5MZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9taW5sZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICBnZXQgbWlubGVuZ3RoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21pbmxlbmd0aFxuICB9XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIG1pbmxlbmd0aCB0cmlnZ2VycyBhbmd1bGFyLXRlbXBsYXRlLXZhbGlkYXRpb24uIFVzZSBASW5wdXQoKSBtaW5MZW5ndGggaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtaW5sZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9taW5sZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICAvKiogTWF4aW11bSBsZW5ndGggKG51bWJlciBvZiBjaGFyYWN0ZXJzKSBvZiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgc2V0IG1heExlbmd0aChsZW5ndGg6IG51bWJlcikge1xuICAgIHRoaXMuX21heGxlbmd0aCA9IGxlbmd0aFxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG4gIGdldCBtYXhsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4bGVuZ3RoXG4gIH1cbiAgLyoqXG4gICAqIE1heGltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIG1heGxlbmd0aCB0cmlnZ2VycyBhbmd1bGFyLXRlbXBsYXRlLXZhbGlkYXRpb24uIFVzZSBASW5wdXQoKSBtYXhMZW5ndGggaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtYXhsZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhsZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIGlmIG1heGxlbmd0aCBpcyB1c2VkICovXG4gIGdldCBoYXNNYXhMZW5ndGgoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5tYXhsZW5ndGggJiYgdGhpcy5tYXhsZW5ndGggIT09IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG4gIH1cblxuICBwcml2YXRlIF9tYXhsZW5ndGggPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gIHByaXZhdGUgX21pbmxlbmd0aCA9IDBcblxuICAvKiogU2V0cyB0aGUgaGVpZ2h0IG9mIHRoZSB0ZXh0YXJlYSBhbmQgZGlzYWJsZXMgcmVzaXplLiBBIHNjcm9sbGJhciB3aWxsIGFwcGVhciBpZiBuZWNlc3NhcnkuICovXG4gIEBJbnB1dCgpIHJvd3M/OiBudW1iZXJcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMT0NPX1NDT1BFKVxuICAgIHByb3RlY3RlZCB0cmFuc2xvY29TY29wZTogVHJhbnNsb2NvU2NvcGUsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKG5nQ29udHJvbCwgdHJhbnNsb2NvU2NvcGUsIGNkcilcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm5cbiAgICB0aGlzLnN0YXRlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS52YWx1ZVxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5zdGF0ZSlcbiAgfVxufVxuIiwiPCEtLSBMQUJFTCAtLT5cbjxsYWJlbFxuICBbaWRdPVwiaWQgKyAnLWxhYmVsJ1wiXG4gIGNsYXNzPVwiZ2RzLWZpZWxkLWxhYmVsIGhpZGUtaWYtZW1wdHlcIlxuICBbYXR0ci5mb3JdPVwiaWQgKyAnLXRleHRhcmVhJ1wiXG4gICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogc2NvcGVcIlxuPlxuICA8bmctdGVtcGxhdGVcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsQ29udGVudFRwbCB8fCBiYXNpY0xhYmVsQ29udGVudFRwbFwiXG4gID48L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI2Jhc2ljTGFiZWxDb250ZW50VHBsPlxuICAgIDwhLS0gdG8gdHJpZ2dlciBjc3M6ZW1wdHkgaWYgbm8gbGFiZWwgd2FzIGFkZGVkIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxuICAgICAge3sgbGFiZWwgfX1cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwib3B0aW9uYWwgPT09IHRydWUgfHwgKHJlcXVpcmVkICE9PSB0cnVlICYmIG9wdGlvbmFsICE9PSBmYWxzZSlcIlxuICAgICAgICBjbGFzcz1cImdkcy1maWVsZC1sYWJlbC0tb3B0aW9uYWxcIlxuICAgICAgPlxuICAgICAgICAoe3sgdCgnbGFiZWwub3B0aW9uYWwnKSB9fSlcbiAgICAgIDwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbGFiZWw+XG5cbjwhLS0gREVTQ1JJUFRJT04gLS0+XG48ZGl2IGNsYXNzPVwiZm9ybS1pbmZvIGRlc2NyaXB0aW9uIGhpZGUtaWYtZW1wdHlcIiAqbmdJZj1cImRlc2NyaXB0aW9uXCI+XG4gIHt7IGRlc2NyaXB0aW9uIH19XG48L2Rpdj5cblxuPCEtLSBMT0NLRUQgSU5QVVQgLS0+XG48bmctY29udGFpbmVyICpuZ0lmPVwibG9ja2VkXCI+XG4gIDxkaXZcbiAgICBbaWRdPVwiaWQgKyAnLXRleHRhcmVhJ1wiXG4gICAgY2xhc3M9XCJuZ2d2LWZpZWxkLS1sb2NrZWRcIlxuICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgW2F0dHIudmFsdWVdPVwic3RhdGVcIlxuICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gID5cbiAgICA8c3BhbiAqbmdJZj1cIiFzdGF0ZVwiIGNsYXNzPVwidW5zZXQtc3RhdGVcIj4tPC9zcGFuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdGF0ZVwiPlxuICAgICAge3sgc3RhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPCEtLSBJTlBVVCBGSUVMRCAtLT5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9ja2VkXCI+XG4gIDx0ZXh0YXJlYVxuICAgICNpbnB1dFxuICAgIFtpZF09XCJpZCArICctdGV4dGFyZWEnXCJcbiAgICBjbGFzcz1cImdkcy1maWVsZFwiXG4gICAgW25nQ2xhc3NdPVwieyAnbm8tcmVzaXplJzogISFyb3dzIH1cIlxuICAgIFtjbGFzcy5uZ2d2LWZpZWxkLS1lcnJvcl09XCJpbnZhbGlkXCJcbiAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxuICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gICAgW2F0dHIucm93c109XCJyb3dzXCJcbiAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZXNjcmlwdGlvblwiXG4gICAgW3ZhbHVlXT1cInN0YXRlXCJcbiAgICB0aXRsZT1cIlwiXG4gICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICA+PC90ZXh0YXJlYT5cblxuICA8IS0tIEVSUk9SUyAtLT5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZ2RzLWZvcm0taXRlbV9fZm9vdGVyIGVycm9yLXdyYXBwZXJcIlxuICAgICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogc2NvcGVcIlxuICA+XG4gICAgPHNwYW5cbiAgICAgIGNsYXNzPVwiZm9ybS1pbmZvIGZvcm0taW5mby0tZXJyb3JcIlxuICAgICAgW2F0dHIuZm9yXT1cImlkICsgJy10ZXh0YXJlYSdcIlxuICAgICAgKm5nSWY9XCJpbnZhbGlkICYmIChlcnJvciB8fCBuZ0NvbnRyb2w/LmludmFsaWQpXCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cImVycm9yLWljb25cIj5cbiAgICAgICAgPGdkcy1pY29uLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uXG4gICAgICAgICAgd2lkdGg9XCIxNlwiXG4gICAgICAgICAgaGVpZ2h0PVwiMTZcIlxuICAgICAgICAgIHNvbGlkPVwidHJ1ZVwiXG4gICAgICAgICAgKm5nZ0NvcmVFbGVtZW50XG4gICAgICAgID48L2dkcy1pY29uLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uPlxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8c3BhblxuICAgICAgICAqbmdJZj1cImVycm9yOyBlbHNlIGVycm9yc1JlZlwiXG4gICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgPnt7IGVycm9yIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vycm9yc1JlZj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAqbmdJZj1cImZpcnN0RXJyb3IgYXMgZXJyb3JcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHQoJ2Vycm9yLmZpZWxkJyArIGVycm9yPy5jb2RlLCBlcnJvcj8ucGFyYW1zKSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvc3Bhbj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNNYXhMZW5ndGhcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ2d2Q2hhcmFjdGVyQ291bnRkb3duPVwiXG4gICAgICAgICAgbWF4bGVuZ3RoO1xuICAgICAgICAgIGN1cnJlbnRMZW5ndGg6IChpbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8udmFsdWUgPz8gJycpLmxlbmd0aDtcbiAgICAgICAgICBjaGFyYWN0ZXJzTGVmdCBhcyBjaGFyYWN0ZXJzTGVmdFxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImZvcm0taW5mb1wiXG4gICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIlxuICAgICAgPlxuICAgICAgICB7eyBjaGFyYWN0ZXJzTGVmdCB9fSB7eyB0KCdsYWJlbC5tYXhsZW5ndGgnKSB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cblxuICA8IS0tIENISUxEUkVOIC0tPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy92LWFuZ3VsYXIvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxvRUFBb0UsQ0FBQTtBQUUzRSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFrQixNQUFNLG9CQUFvQixDQUFBO0FBRXBFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLG1FQUFtRSxDQUFBOzs7Ozs7O0FBRXpILGdGQUFnRjtBQU1oRixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUNBQXFDO0lBUTlFLHNEQUFzRDtJQUN0RCxJQUFhLFNBQVMsQ0FBQyxNQUFjO1FBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDMUIsQ0FBQztJQUNELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN4QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYSxTQUFTLENBQUMsTUFBYztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQTtRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFDRCxzREFBc0Q7SUFDdEQsSUFBYSxTQUFTLENBQUMsTUFBYztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQTtRQUN4QixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFDRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUNEOzs7T0FHRztJQUNILElBQWEsU0FBUyxDQUFDLE1BQWM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUE7UUFDeEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsbUNBQW1DO0lBQ25DLElBQUksWUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsZ0JBQWdCLENBQUE7SUFDdkUsQ0FBQztJQVNELFlBQzZCLFNBQW9CLEVBR3JDLGNBQThCLEVBQzlCLEdBQXNCO1FBRWhDLEtBQUssQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBTlYsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUdyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUExRGxDLG9GQUFvRjtRQUMzQyxVQUFLLEdBQzVDLFVBQVUsQ0FBQTtRQUdaLHNEQUFzRDtRQUM3QyxhQUFRLEdBQUcsS0FBSyxDQUFBO1FBd0NqQixlQUFVLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFBO1FBRXBDLGVBQVUsR0FBRyxDQUFDLENBQUE7SUFhdEIsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixPQUFPLENBQUMsS0FBWTtRQUNsQixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU07UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBSSxLQUFLLENBQUMsTUFBOEIsQ0FBQyxLQUFLLENBQUE7UUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0IsQ0FBQzsrR0F0RVUscUJBQXFCLHVFQXlEdEIsZUFBZTttR0F6RGQscUJBQXFCLG1VQ3RCbEMsMHhHQTJIQTs7NEZEckdhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxlQUFlOzswQkEyRHRCLElBQUk7OzBCQUFJLFFBQVE7OzBCQUNoQixRQUFROzswQkFDUixNQUFNOzJCQUFDLGVBQWU7eUVBdkRnQixLQUFLO3NCQUE3QyxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQUcsS0FBSztnQkFHN0IsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBWU8sU0FBUztzQkFBckIsS0FBSztnQkFLTyxTQUFTO3NCQUFyQixLQUFLO2dCQVdPLFNBQVM7c0JBQXJCLEtBQUs7Z0JBZUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAc2ViZ3JvdXAvZ3JlZW4tY29yZS9jb21wb25lbnRzL2ljb24vaWNvbnMvdHJpYW5nbGUtZXhjbGFtYXRpb24uanMnXG5cbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbiAgU2VsZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgVFJBTlNMT0NPX1NDT1BFLCBUcmFuc2xvY29TY29wZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbydcblxuaW1wb3J0IHsgTmdndkJhc2VDb250cm9sVmFsdWVBY2Nlc3NvckNvbXBvbmVudCB9IGZyb20gJ0BzZWJncm91cC9ncmVlbi1hbmd1bGFyL3NyYy92LWFuZ3VsYXIvYmFzZS1jb250cm9sLXZhbHVlLWFjY2Vzc29yJ1xuXG4vKiogVGV4dGFyZWEgZmllbGRzIGFsbG93IHVzZXJzIHRvIGFkZCBhbmQgZWRpdCBsb25nZXIgb3IgbXVsdGlwbGUgbGluZSB0ZXh0LiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdndi10ZXh0YXJlYScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0YXJlYS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHRhcmVhLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5nZ3ZUZXh0YXJlYUNvbXBvbmVudCBleHRlbmRzIE5nZ3ZCYXNlQ29udHJvbFZhbHVlQWNjZXNzb3JDb21wb25lbnQge1xuICAvKiogU3BlY2lhbCBwcm9wZXJ0eSB1c2VkIGZvciBzZWxlY3RpbmcgRE9NIGVsZW1lbnRzIGR1cmluZyBhdXRvbWF0ZWQgVUkgdGVzdGluZy4gKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdGhvb2snKSBASW5wdXQoKSB0aG9vazogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCA9XG4gICAgJ3RleHRhcmVhJ1xuICAvKiogVGV4dCBzaG93biBiZWZvcmUgaW5wdXQgaGFzIGEgd3JpdHRlbiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqIElmIHNldCB0byB0cnVlLCB0aGUgdmFsdWUgd2lsbCBub3QgYmUgZWRpdGFibGUuICovXG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2VcbiAgLyoqIE1pbmltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuICovXG4gIEBJbnB1dCgpIHNldCBtaW5MZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9taW5sZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICBnZXQgbWlubGVuZ3RoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21pbmxlbmd0aFxuICB9XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIG1pbmxlbmd0aCB0cmlnZ2VycyBhbmd1bGFyLXRlbXBsYXRlLXZhbGlkYXRpb24uIFVzZSBASW5wdXQoKSBtaW5MZW5ndGggaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtaW5sZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9taW5sZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICAvKiogTWF4aW11bSBsZW5ndGggKG51bWJlciBvZiBjaGFyYWN0ZXJzKSBvZiB2YWx1ZS4gKi9cbiAgQElucHV0KCkgc2V0IG1heExlbmd0aChsZW5ndGg6IG51bWJlcikge1xuICAgIHRoaXMuX21heGxlbmd0aCA9IGxlbmd0aFxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG4gIGdldCBtYXhsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbWF4bGVuZ3RoXG4gIH1cbiAgLyoqXG4gICAqIE1heGltdW0gbGVuZ3RoIChudW1iZXIgb2YgY2hhcmFjdGVycykgb2YgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIG1heGxlbmd0aCB0cmlnZ2VycyBhbmd1bGFyLXRlbXBsYXRlLXZhbGlkYXRpb24uIFVzZSBASW5wdXQoKSBtYXhMZW5ndGggaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpIHNldCBtYXhsZW5ndGgobGVuZ3RoOiBudW1iZXIpIHtcbiAgICB0aGlzLl9tYXhsZW5ndGggPSBsZW5ndGhcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIGlmIG1heGxlbmd0aCBpcyB1c2VkICovXG4gIGdldCBoYXNNYXhMZW5ndGgoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5tYXhsZW5ndGggJiYgdGhpcy5tYXhsZW5ndGggIT09IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXG4gIH1cblxuICBwcml2YXRlIF9tYXhsZW5ndGggPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxuXG4gIHByaXZhdGUgX21pbmxlbmd0aCA9IDBcblxuICAvKiogU2V0cyB0aGUgaGVpZ2h0IG9mIHRoZSB0ZXh0YXJlYSBhbmQgZGlzYWJsZXMgcmVzaXplLiBBIHNjcm9sbGJhciB3aWxsIGFwcGVhciBpZiBuZWNlc3NhcnkuICovXG4gIEBJbnB1dCgpIHJvd3M/OiBudW1iZXJcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCxcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoVFJBTlNMT0NPX1NDT1BFKVxuICAgIHByb3RlY3RlZCB0cmFuc2xvY29TY29wZTogVHJhbnNsb2NvU2NvcGUsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHN1cGVyKG5nQ29udHJvbCwgdHJhbnNsb2NvU2NvcGUsIGNkcilcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb25JbnB1dChldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm5cbiAgICB0aGlzLnN0YXRlID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MVGV4dEFyZWFFbGVtZW50KS52YWx1ZVxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5zdGF0ZSlcbiAgfVxufVxuIiwiPCEtLSBMQUJFTCAtLT5cbjxsYWJlbFxuICBbaWRdPVwiaWQgKyAnLWxhYmVsJ1wiXG4gIGNsYXNzPVwiZ2RzLWZpZWxkLWxhYmVsIGhpZGUtaWYtZW1wdHlcIlxuICBbYXR0ci5mb3JdPVwiaWQgKyAnLXRleHRhcmVhJ1wiXG4gICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogc2NvcGVcIlxuPlxuICA8bmctdGVtcGxhdGVcbiAgICAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsQ29udGVudFRwbCB8fCBiYXNpY0xhYmVsQ29udGVudFRwbFwiXG4gID48L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI2Jhc2ljTGFiZWxDb250ZW50VHBsPlxuICAgIDwhLS0gdG8gdHJpZ2dlciBjc3M6ZW1wdHkgaWYgbm8gbGFiZWwgd2FzIGFkZGVkIC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxuICAgICAge3sgbGFiZWwgfX1cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwib3B0aW9uYWwgPT09IHRydWUgfHwgKHJlcXVpcmVkICE9PSB0cnVlICYmIG9wdGlvbmFsICE9PSBmYWxzZSlcIlxuICAgICAgICBjbGFzcz1cImdkcy1maWVsZC1sYWJlbC0tb3B0aW9uYWxcIlxuICAgICAgPlxuICAgICAgICAoe3sgdCgnbGFiZWwub3B0aW9uYWwnKSB9fSlcbiAgICAgIDwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbGFiZWw+XG5cbjwhLS0gREVTQ1JJUFRJT04gLS0+XG48ZGl2IGNsYXNzPVwiZm9ybS1pbmZvIGRlc2NyaXB0aW9uIGhpZGUtaWYtZW1wdHlcIiAqbmdJZj1cImRlc2NyaXB0aW9uXCI+XG4gIHt7IGRlc2NyaXB0aW9uIH19XG48L2Rpdj5cblxuPCEtLSBMT0NLRUQgSU5QVVQgLS0+XG48bmctY29udGFpbmVyICpuZ0lmPVwibG9ja2VkXCI+XG4gIDxkaXZcbiAgICBbaWRdPVwiaWQgKyAnLXRleHRhcmVhJ1wiXG4gICAgY2xhc3M9XCJuZ2d2LWZpZWxkLS1sb2NrZWRcIlxuICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgW2F0dHIudmFsdWVdPVwic3RhdGVcIlxuICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gID5cbiAgICA8c3BhbiAqbmdJZj1cIiFzdGF0ZVwiIGNsYXNzPVwidW5zZXQtc3RhdGVcIj4tPC9zcGFuPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdGF0ZVwiPlxuICAgICAge3sgc3RhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPCEtLSBJTlBVVCBGSUVMRCAtLT5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9ja2VkXCI+XG4gIDx0ZXh0YXJlYVxuICAgICNpbnB1dFxuICAgIFtpZF09XCJpZCArICctdGV4dGFyZWEnXCJcbiAgICBjbGFzcz1cImdkcy1maWVsZFwiXG4gICAgW25nQ2xhc3NdPVwieyAnbm8tcmVzaXplJzogISFyb3dzIH1cIlxuICAgIFtjbGFzcy5uZ2d2LWZpZWxkLS1lcnJvcl09XCJpbnZhbGlkXCJcbiAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCJcbiAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIlxuICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxuICAgIFthdHRyLnJvbGVdPVwicm9sZVwiXG4gICAgW2F0dHIucm93c109XCJyb3dzXCJcbiAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJkZXNjcmlwdGlvblwiXG4gICAgW3ZhbHVlXT1cInN0YXRlXCJcbiAgICB0aXRsZT1cIlwiXG4gICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICA+PC90ZXh0YXJlYT5cblxuICA8IS0tIEVSUk9SUyAtLT5cbiAgPGRpdlxuICAgIGNsYXNzPVwiZ2RzLWZvcm0taXRlbV9fZm9vdGVyIGVycm9yLXdyYXBwZXJcIlxuICAgICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogc2NvcGVcIlxuICA+XG4gICAgPHNwYW5cbiAgICAgIGNsYXNzPVwiZm9ybS1pbmZvIGZvcm0taW5mby0tZXJyb3JcIlxuICAgICAgW2F0dHIuZm9yXT1cImlkICsgJy10ZXh0YXJlYSdcIlxuICAgICAgKm5nSWY9XCJpbnZhbGlkICYmIChlcnJvciB8fCBuZ0NvbnRyb2w/LmludmFsaWQpXCJcbiAgICA+XG4gICAgICA8c3BhbiBjbGFzcz1cImVycm9yLWljb25cIj5cbiAgICAgICAgPGdkcy1pY29uLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uXG4gICAgICAgICAgd2lkdGg9XCIxNlwiXG4gICAgICAgICAgaGVpZ2h0PVwiMTZcIlxuICAgICAgICAgIHNvbGlkPVwidHJ1ZVwiXG4gICAgICAgICAgKm5nZ0NvcmVFbGVtZW50XG4gICAgICAgID48L2dkcy1pY29uLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uPlxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8c3BhblxuICAgICAgICAqbmdJZj1cImVycm9yOyBlbHNlIGVycm9yc1JlZlwiXG4gICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgPnt7IGVycm9yIH19PC9zcGFuXG4gICAgICA+XG4gICAgICA8bmctdGVtcGxhdGUgI2Vycm9yc1JlZj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAqbmdJZj1cImZpcnN0RXJyb3IgYXMgZXJyb3JcIlxuICAgICAgICAgIFthdHRyLmRhdGEtdGhvb2tdPVwidGhvb2sgKyAnLWVycm9ybGFiZWwnXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IHQoJ2Vycm9yLmZpZWxkJyArIGVycm9yPy5jb2RlLCBlcnJvcj8ucGFyYW1zKSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvc3Bhbj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoYXNNYXhMZW5ndGhcIj5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ2d2Q2hhcmFjdGVyQ291bnRkb3duPVwiXG4gICAgICAgICAgbWF4bGVuZ3RoO1xuICAgICAgICAgIGN1cnJlbnRMZW5ndGg6IChpbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8udmFsdWUgPz8gJycpLmxlbmd0aDtcbiAgICAgICAgICBjaGFyYWN0ZXJzTGVmdCBhcyBjaGFyYWN0ZXJzTGVmdFxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImZvcm0taW5mbyBmb3JtLWluZm8tLWNvdW50ZG93blwiXG4gICAgICAgIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIlxuICAgICAgPlxuICAgICAgICB7eyBjaGFyYWN0ZXJzTGVmdCB9fSB7eyB0KCdsYWJlbC5tYXhsZW5ndGgnKSB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cblxuICA8IS0tIENISUxEUkVOIC0tPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==