@energycap/components 0.30.3 → 0.30.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/energycap-components.umd.js +8 -2
- package/bundles/energycap-components.umd.js.map +1 -1
- package/bundles/energycap-components.umd.min.js +1 -1
- package/bundles/energycap-components.umd.min.js.map +1 -1
- package/energycap-components.metadata.json +1 -1
- package/energycap-components.min.css +1 -1
- package/esm2015/lib/display/dialog/dialog-group/dialog-group.component.js +1 -1
- package/esm2015/lib/display/dialog/dialog-types.js +1 -1
- package/esm2015/lib/display/dialog/dialog.component.js +8 -2
- package/fesm2015/energycap-components.js +8 -2
- package/fesm2015/energycap-components.js.map +1 -1
- package/lib/display/dialog/dialog-types.d.ts +2 -0
- package/lib/display/dialog/dialog.component.d.ts +1 -0
- package/package.json +1 -1
- package/src/styles/_global-variables.scss +1 -0
- package/src/styles/mixins/_dialog-base.scss +2 -4
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
|
|
7
7
|
*/@import'@angular/cdk/overlay-prebuilt.css';*,*::before,*::after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0 !important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]):not(.text-link){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):not(.text-link):hover,a:not([href]):not([tabindex]):not(.text-link):focus{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none !important}/*!
|
|
8
8
|
* EnergyCAP Components - Base Styles
|
|
9
|
-
*/:root{--ec-color-primary-dark: rgb(26, 26, 35);--ec-color-primary-light: rgb(255, 255, 255);--ec-color-secondary-dark: rgba(26, 26, 35, .66);--ec-color-secondary-light: rgba(255, 255, 255, .6);--ec-color-hint-dark: rgba(26, 26, 35, .38);--ec-color-hint-light: rgba(255, 255, 255, .38);--ec-color-disabled-dark: var(--ec-color-hint-dark);--ec-color-shadow: rgba(26, 26, 35, .1);--ec-color-shadow-overlay: rgba(26, 26, 35, .2);--ec-color-interactive: rgb(0, 132, 169);--ec-color-info: rgba(0, 132, 169, .5);--ec-color-good: rgb(97, 153, 16);--ec-color-success: rgb(60, 118, 61);--ec-color-caution: rgb(255, 228, 51);--ec-color-bad: rgb(250, 123, 46);--ec-color-danger: rgb(227, 52, 54);--ec-color-accent: rgb(111, 28, 138);--ec-background-color: rgb(255, 255, 255);--ec-background-color-overlay: rgba(255, 255, 255, .7);--ec-background-color-body: rgb(241, 243, 244);--ec-background-color-body-overlay: rgba(241, 243, 244, .7);--ec-background-color-dark: rgb(26, 26, 35);--ec-background-color-dialog: rgba(26, 26, 35, .5);--ec-background-color-splash: radial-gradient(circle, rgb(73, 89, 99) 0%, rgb(22, 47, 59) 100%);--ec-background-color-detail: rgba(26, 26, 35, .03);--ec-background-color-disabled: rgba(26,26,35, .1);--ec-background-color-hover: rgb(191, 224, 233);--ec-background-color-selected: rgb(217, 237, 242);--ec-background-color-info: rgb(218, 228, 233);--ec-background-color-success: rgb(222, 239, 215);--ec-background-color-caution: rgb(255, 248, 204);--ec-background-color-danger: rgb(236, 196, 197);--ec-box-shadow: 0px .125rem .5rem var(--ec-color-shadow);--ec-box-shadow-overlay: 0px .0625rem .5rem var(--ec-color-shadow-overlay);--ec-border-color: rgba(26, 26, 35, .18);--ec-border-color-dark: rgba(26, 26, 35, .87);--ec-border-color-hint: rgba(26,26,35, .1);--ec-border-color-legacy: rgb(210, 215, 217);--ec-border-radius: .25rem;--ec-border-radius-card: .375rem;--ec-border-radius-dialog: .5rem;--ec-border-color-focus: var(--ec-color-interactive);--ec-border-width: 1px;--ec-font-family: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--ec-font-family-monospace: "Consolas", "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Monaco", "Courier New", Courier, monospace;--ec-font-size: .875rem;--ec-font-size-body: 1rem;--ec-font-size-label: .75rem;--ec-font-size-action: .875rem;--ec-font-size-title: 1.25rem;--ec-font-size-icon: 1rem;--ec-font-size-tiny: .625rem;--ec-font-weight-bold: bold;--ec-font-weight-normal: normal;--ec-z-index-tooltip: 10;--ec-z-index-overlay: 20;--ec-z-index-splitter: 30;--ec-z-index-navbar: 40;--ec-z-index-popup: 50;--ec-z-index-dialog: 60;--ec-z-index-toast: 70}@-webkit-keyframes spin{from{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(1turn)}}/*!
|
|
9
|
+
*/:root{--ec-color-primary-dark: rgb(26, 26, 35);--ec-color-primary-light: rgb(255, 255, 255);--ec-color-secondary-dark: rgba(26, 26, 35, .66);--ec-color-secondary-light: rgba(255, 255, 255, .6);--ec-color-hint-dark: rgba(26, 26, 35, .38);--ec-color-hint-light: rgba(255, 255, 255, .38);--ec-color-disabled-dark: var(--ec-color-hint-dark);--ec-color-shadow: rgba(26, 26, 35, .1);--ec-color-shadow-overlay: rgba(26, 26, 35, .2);--ec-color-interactive: rgb(0, 132, 169);--ec-color-info: rgba(0, 132, 169, .5);--ec-color-good: rgb(97, 153, 16);--ec-color-success: rgb(60, 118, 61);--ec-color-caution: rgb(255, 228, 51);--ec-color-bad: rgb(250, 123, 46);--ec-color-danger: rgb(227, 52, 54);--ec-color-accent: rgb(111, 28, 138);--ec-background-color: rgb(255, 255, 255);--ec-background-color-overlay: rgba(255, 255, 255, .7);--ec-background-color-body: rgb(241, 243, 244);--ec-background-color-body-overlay: rgba(241, 243, 244, .7);--ec-background-color-dark: rgb(26, 26, 35);--ec-background-color-dialog: rgba(26, 26, 35, .5);--ec-background-color-dialog-stacked: rgba(26, 26, 35, .25);--ec-background-color-splash: radial-gradient(circle, rgb(73, 89, 99) 0%, rgb(22, 47, 59) 100%);--ec-background-color-detail: rgba(26, 26, 35, .03);--ec-background-color-disabled: rgba(26,26,35, .1);--ec-background-color-hover: rgb(191, 224, 233);--ec-background-color-selected: rgb(217, 237, 242);--ec-background-color-info: rgb(218, 228, 233);--ec-background-color-success: rgb(222, 239, 215);--ec-background-color-caution: rgb(255, 248, 204);--ec-background-color-danger: rgb(236, 196, 197);--ec-box-shadow: 0px .125rem .5rem var(--ec-color-shadow);--ec-box-shadow-overlay: 0px .0625rem .5rem var(--ec-color-shadow-overlay);--ec-border-color: rgba(26, 26, 35, .18);--ec-border-color-dark: rgba(26, 26, 35, .87);--ec-border-color-hint: rgba(26,26,35, .1);--ec-border-color-legacy: rgb(210, 215, 217);--ec-border-radius: .25rem;--ec-border-radius-card: .375rem;--ec-border-radius-dialog: .5rem;--ec-border-color-focus: var(--ec-color-interactive);--ec-border-width: 1px;--ec-font-family: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--ec-font-family-monospace: "Consolas", "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Monaco", "Courier New", Courier, monospace;--ec-font-size: .875rem;--ec-font-size-body: 1rem;--ec-font-size-label: .75rem;--ec-font-size-action: .875rem;--ec-font-size-title: 1.25rem;--ec-font-size-icon: 1rem;--ec-font-size-tiny: .625rem;--ec-font-weight-bold: bold;--ec-font-weight-normal: normal;--ec-z-index-tooltip: 10;--ec-z-index-overlay: 20;--ec-z-index-splitter: 30;--ec-z-index-navbar: 40;--ec-z-index-popup: 50;--ec-z-index-dialog: 60;--ec-z-index-toast: 70}@-webkit-keyframes spin{from{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(1turn)}}/*!
|
|
10
10
|
* Font Awesome Pro 5.14.0 by @fontawesome - https://fontawesome.com
|
|
11
11
|
* License - https://fontawesome.com/license (Commercial License)
|
|
12
12
|
*/@font-face{font-family:"Font Awesome 5 Pro";font-style:normal;font-weight:900;font-display:block;src:url("/assets/webfonts/fa-solid-900.eot");src:url("/assets/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),url("/assets/webfonts/fa-solid-900.woff2") format("woff2"),url("/assets/webfonts/fa-solid-900.woff") format("woff"),url("/assets/webfonts/fa-solid-900.ttf") format("truetype"),url("/assets/webfonts/fa-solid-900.svg#fontawesome") format("svg")}.fa,.fas,a[target=_blank]::after{font-family:"Font Awesome 5 Pro";font-weight:900}html,body{height:100%;overflow:hidden}body{font-family:var(--ec-font-family);font-size:var(--ec-font-size);color:var(--ec-color-primary-dark)}a{color:var(--ec-color-interactive)}a:hover{color:var(--ec-color-interactive);text-decoration:underline}a:focus{outline:none;text-decoration:underline}a[target=_blank]::after{content:"\f08e";margin-left:.125rem;opacity:.5}a[target=_blank].is-map-link::after{content:"\f3c5"}a[target=_blank].is-file-link::after{content:"\f56d"}a[target=_blank].is-image-link::after{content:"\f1c5"}a[disabled]{color:var(--ec-color-disabled-dark);cursor:default}.hide-external-link-icon[target=_blank]::after,.hide-external-link-icon [target=_blank]::after{content:"" !important}p{line-height:1.25}table{background-color:transparent}/*!
|
|
@@ -56,7 +56,7 @@ DialogGroupComponent.decorators = [
|
|
|
56
56
|
{ type: Component, args: [{
|
|
57
57
|
selector: 'ec-dialog-group',
|
|
58
58
|
template: "<ec-dialog *ngFor=\"let dialog of activeDialogEvents\"\r\n [dialogOpenStartEventId]=\"dialog.eventId\"\r\n [size]=\"dialog.options?.size\"\r\n [content]=\"dialog.content\"\r\n [context]=\"dialog.context\"\r\n [options]=\"dialog.options\"\r\n (opened)=\"dialogOpened(dialog, $event)\"\r\n (closed)=\"dialogClosed(dialog)\">\r\n</ec-dialog>",
|
|
59
|
-
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){background-color:
|
|
59
|
+
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){--ec-dialog-background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){--ec-dialog-background-color:var(--ec-background-color-dialog-stacked)}"]
|
|
60
60
|
},] }
|
|
61
61
|
];
|
|
62
62
|
DialogGroupComponent.ctorParameters = () => [
|
|
@@ -74,4 +74,4 @@ export class DialogResult {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvZGlhbG9nL2RpYWxvZy10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR2xDOztHQUVHO0FBQ0YsTUFBTSxPQUFPLFdBQVc7SUFDdkI7SUFDRSxxSEFBcUg7SUFDOUcsT0FBZ0I7SUFFdkI7O01BRUU7SUFDSyxXQUFtQixFQUFFO0lBRTVCOztPQUVHO0lBQ0ksZUFBOEQsV0FBVztRQVZ6RSxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBS2hCLGFBQVEsR0FBUixRQUFRLENBQWE7UUFLckIsaUJBQVksR0FBWixZQUFZLENBQTZEO0lBQy9FLENBQUM7Q0FDTDtBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLG9CQUF3QixTQUFRLFdBQVc7SUFDdEQsWUFBbUIsT0FBa0QsRUFBUyxPQUFXLEVBQVMsT0FBdUI7UUFDdkgsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFERCxZQUFPLEdBQVAsT0FBTyxDQUEyQztRQUFTLFlBQU8sR0FBUCxPQUFPLENBQUk7UUFBUyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtJQUV6SCxDQUFDO0NBQ0Y7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQVc7SUFDakQsWUFBWSxPQUFnQixFQUFFLFFBQWlCO1FBQzdDLEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7Q0FDRjtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQkFBb0IsU0FBUSxXQUFXO0lBR2xELFlBQVksT0FBZ0IsRUFBRSxRQUFpQixFQUFFLElBQUksR0FBQyxLQUFLLEVBQUUsT0FBVztRQUN0RSxLQUFLLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0Y7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sc0JBQTBCLFNBQVEsV0FBVztJQUl4RCxZQUFZLE1BQXVCO1FBQ2pDLEtBQUssQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDO0lBQzdCLENBQUM7Q0FDRjtBQStDRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUFtQixJQUFhLEVBQVMsT0FBVztRQUFqQyxTQUFJLEdBQUosSUFBSSxDQUFTO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBSTtJQUFJLENBQUM7Q0FDMUQ7QUFBQSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdW5pcXVlSWQgfSBmcm9tICdsb2Rhc2gnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250ZW50IH0gZnJvbSAnLi9kaWFsb2ctY29udGVudCc7XHJcblxyXG4vKipBIGJhc2UgY2xhc3MgZnJvbSB3aGljaCBhbGwgZGlhbG9nIGV2ZW50cyBleHRlbmQuIFRoaXMgY2xhc3MgbW9kZWxzIHRoZSBkaWFsb2cgYWN0aW9ucyB2ZXJ5IG11Y2hcclxuICogbGlrZSB0aGUgQW5ndWxhciBSb3V0ZXJFdmVudHMuXHJcbiAqL1xyXG4gZXhwb3J0IGNsYXNzIERpYWxvZ0V2ZW50IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8qKkEgdW5pcXVlIHZhbHVlIHJlcHJlc2VudGluZyB0aGlzIHBhcnRpY3VsYXIgaW5zdGFuY2Ugb2YgdGhlIGV2ZW50LCB1c2VkIHRvIG1hdGNoIG9wZW4gYW5kIGNsb3NlIGV2ZW50cyB0b2dldGhlciAqL1xyXG4gICAgcHVibGljIGV2ZW50SWQ/OiBzdHJpbmcsIFxyXG5cclxuICAgIC8qKlRoZSBJRCBvZiB0aGUgZGlhbG9nIGl0c2VsZiwgdHlwaWNhbGx5IG1hdGNoaW5nIHRoZSBEaWFsb2dDb250ZW50LiBTb21ldGhpbmcgbGlrZSBcIkRlbGV0ZUNvbmZpcm1hdGlvblwiIG9yIFwiRWRpdFJlYWRpbmdcIiBldGMuIFxyXG4gICAgICogVXNlZnVsIGZvciB0ZWxlbWV0cnkgbG9nZ2luZyB0byB0cmFjayB1c2VycyBvcGVuaW5nIGFuZCBjbG9zaW5nIGRpYWxvZ3NcclxuICAgICovXHJcbiAgICBwdWJsaWMgZGlhbG9nSWQ6IHN0cmluZyA9ICcnLFxyXG5cclxuICAgIC8qKiBUaGUgYWN0aW9uIHRoZSBkaWFsb2cgZXZlbnQgcmVwcmVzZW50cy4gQ2FuIGFsc28gYmUgZGV0ZXJtaW5lZCBieSB1c2luZyB0aGUgY2xhc3Mgb2YgdGhlIGV2ZW50IHdpdGggdGhlXHJcbiAgICAgKiBpbnN0YW5jZW9mIG9wZXJhdG9yLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZGlhbG9nQWN0aW9uOiAnb3BlblN0YXJ0JyB8J29wZW4nIHwgJ2Nsb3NlJyB8ICdjbG9zZUxhdGVzdCcgPSAnb3BlblN0YXJ0JyxcclxuICApIHt9XHJcbn1cclxuXHJcbi8qKkVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIG9wZW4gaGFzIGJlZW4gdHJpZ2dlcmVkLCBidXQgdGhlIGRpYWxvZyBpdHNlbGYgaGFzbid0IGluaXRpYWxpemVkIHlldC5cclxuICogVGhpcyBldmVudCBjcmVhdGVzIGl0cyBvd24gdW5pcXVlIGlkZW50aWZpZXIgc28gdGhhdCB0aGF0IHBhcnRpY3VsYXIgaW5zdGFuY2Ugb2YgdGhlIGRpYWxvZyBjYW4gYmUgZm91bmRcclxuICogd2hlbiBjbG9zZWQgbGF0ZXIgb24uIFRoZSBjb250ZXh0IGlzIHVzZWQgdG8gZmlsbCB0aGUgZGlhbG9nIGl0c2VsZiwgYW5kIG1heSBpbmNsdWRlIHN0YXRlIG9yIGNhbGxiYWNrcy5cclxuICogVmFyaW91cyBvcHRpb25zIGFyZSBhdmFpbGFibGUgdG8gY2hhbmdlIHRoZSBkaWFsb2cgYXBwZWFyYW5jZS4gVGhlc2UgZXZlbnRzIGFyZSBnZW5lcmFsbHkgY3JlYXRlZFxyXG4gKiBieSB0aGUgQHNlZSBEaWFsb2dTZXJ2aWNlLm9wZW4oKSBjYWxsXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGlhbG9nT3BlblN0YXJ0RXZlbnQ8VD4gZXh0ZW5kcyBEaWFsb2dFdmVudCB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGNvbnRlbnQ6IFR5cGU8RGlhbG9nQ29udGVudDxUPj4gfCBUZW1wbGF0ZVJlZjxhbnk+LCBwdWJsaWMgY29udGV4dD86IFQsIHB1YmxpYyBvcHRpb25zPzogRGlhbG9nT3B0aW9ucykge1xyXG4gICAgc3VwZXIodW5pcXVlSWQoKSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipFbWl0dGVkIHdoZW4gdGhlIGRpYWxvZyBoYXMgZmluaXNoZWQgb3BlbmluZyBhbmQgYmVlbiBwcm9wZXJseSBpbml0aWFsaXplZC4gSXQgaW5jbHVkZXNcclxuICogdGhlIGV2ZW50SWQsIHdoaWNoIHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIHBhcnRpY3VsYXIgaW5zdGFuY2Ugb2YgdGhlIGRpYWxvZyBvcGVuIGV2ZW50IHNvIHRoYXQgd2UgY2FuIFxyXG4gKiBjbG9zZSB0aGF0IHNwZWNpZmljIGRpYWxvZyBsYXRlciBvbi4gVGhlIGRpYWxvZ0lkIGNhbiBiZSB1c2VkIGZvciB0ZWxlbWV0cnksIGFuZCBtYXkgYmUgc2V0IHRvIHNvbWV0aGluZyBcclxuICogbGlrZSBcIkNvbmZpcm0gRGVsZXRlXCIgb3IgXCJFZGl0IFJlYWRpbmdcIiBldGMuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGlhbG9nT3BlbkVuZEV2ZW50IGV4dGVuZHMgRGlhbG9nRXZlbnQge1xyXG4gIGNvbnN0cnVjdG9yKGV2ZW50SWQ/OiBzdHJpbmcsIGRpYWxvZ0lkPzogc3RyaW5nKSB7XHJcbiAgICBzdXBlcihldmVudElkLCBkaWFsb2dJZCwgJ29wZW4nKTtcclxuICB9XHJcbn1cclxuXHJcbi8qKkVtaXR0ZWQgd2hlbiB0aGUgZGlhbG9nIGNsb3NlIGhhcyBjb21wbGV0ZWQgYW5kIGEgcmVzdWx0IGlzIGF2YWlsYWJsZS4gQ2hlY2sgcmVzdWx0LnNhdmUgdG8ga25vdyBpZiB0aGUgZGlhbG9nIGNoYW5nZVxyXG4gKiB3YXMgY29tbWl0dGVkICh0cnVlKSBvciBjYW5jZWxsZWQgKGZhbHNlKS4gQ2FuY2VsIGNhbiBiZSBzZXQgaWYgdGhlIGRpYWxvZyB3YXMgYXV0b21hdGljYWxseSBjbG9zZWQgYnkgY2xpY2tpbmcgaW4gdGhlIFxyXG4gKiBiYWNrZ3JvdW5kIG9yIHJlc2l6aW5nIHRoZSB3aW5kb3cgd2hlbiB1c2luZyB0aGUgcGFuZWwgdmlldyBvciBjbG9zZU9uUmVzaXplLlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIERpYWxvZ0Nsb3NlRXZlbnQ8VD4gZXh0ZW5kcyBEaWFsb2dFdmVudCB7XHJcbiAgLyoqVGhlIHJlc3VsdCBvZiB0aGUgZGlhbG9nIGV2ZW50LCBpbmNsdWRpbmcgd2VhdGhlciBpdCB3YXMgc2F2ZWQgb3IgY2FuY2VsbGVkIGFuZCB0aGUgY29udGV4dCdzIGZpbmFsIHN0YXRlKi9cclxuICBwdWJsaWMgZGlhbG9nUmVzdWx0OiBEaWFsb2dSZXN1bHQ8YW55PjtcclxuICBjb25zdHJ1Y3RvcihldmVudElkPzogc3RyaW5nLCBkaWFsb2dJZD86IHN0cmluZywgc2F2ZT1mYWxzZSwgY29udGV4dD86IFQpIHtcclxuICAgIHN1cGVyKGV2ZW50SWQsIGRpYWxvZ0lkLCAnY2xvc2UnKTtcclxuICAgIHRoaXMuZGlhbG9nUmVzdWx0ID0gbmV3IERpYWxvZ1Jlc3VsdChzYXZlLCBjb250ZXh0KTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlVzZWQgdG8gdGVsbCB0aGUgZGlhbG9nIGdyb3VwIHRvIGNsb3NlIHdoYXRldmVyIGRpYWxvZyB3YXMgb3BlbmVkIG1vc3QgcmVjZW50bHkgd2l0aCB0aGUgZ2l2ZW4gcmVzdWx0XHJcbiAqIFRoaXMgYWxsb3dzIGEgVGVtcGxhdGVSZWYgYmFzZWQgcGFuZWwgKHRoYXQncyBub3QgY29taW5nIGZyb20gRGlhbG9nQ29tcG9uZW50KSB0byBjbG9zZSBpdHNlbGYgb3IgXHJcbiAqIGFuIGV4dGVybmFsIHByb2Nlc3MgdG8gY2xvc2UgYSBkaWFsb2cgdGhhdCBpcyBvcGVuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGlhbG9nQ2xvc2VMYXRlc3RFdmVudDxUPiBleHRlbmRzIERpYWxvZ0V2ZW50IHtcclxuICAvKipUaGUgcmVzdWx0IG9mIHRoZSBkaWFsb2cgZXZlbnQsIGluY2x1ZGluZyB3ZWF0aGVyIGl0IHdhcyBzYXZlZCBvciBjYW5jZWxsZWQgYW5kIHRoZSBjb250ZXh0J3MgZmluYWwgc3RhdGUqL1xyXG4gIHB1YmxpYyBkaWFsb2dSZXN1bHQ6IERpYWxvZ1Jlc3VsdDxhbnk+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihyZXN1bHQ6IERpYWxvZ1Jlc3VsdDxUPikge1xyXG4gICAgc3VwZXIoJ2xhdGVzdCcsICdsYXRlc3QnLCAnY2xvc2VMYXRlc3QnKTtcclxuICAgIHRoaXMuZGlhbG9nUmVzdWx0ID0gcmVzdWx0O1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRoaXMgaW50ZXJmYWNlIHNwZWNpZmllcyBleHRyYSBvcHRpb25zIHRvIGNvbmZpZ3VyZSBiZWhhdmlvciBvZiB0aGUgRGlhbG9nIENvbXBvbmVudFxyXG4gKi9cclxuIGV4cG9ydCBpbnRlcmZhY2UgRGlhbG9nT3B0aW9ucyB7XHJcbiAgLyoqXHJcbiAgICogRnVuY3Rpb24gdG8gZXhlY3V0ZSBiZWZvcmUgZGlhbG9nIG9wZW5zLiAgTGVhdmUgYHVuZGVmaW5lZGAgb3IgcmV0dXJuIHRydWUgdG8gYWxsb3dcclxuICAgKiBkaWFsb2cgdG8gb3Blbi5cclxuICAgKlxyXG4gICAqIENhbiBiZSB1c2VkIHRvIGNoZWNrIGZvciB1bnNhdmVkIGNoYW5nZXMgb24gdGhlIHVuZGVybHlpbmcgcGFnZSBiZWZvcmUgb3BlbmluZy5cclxuICAgKlxyXG4gICAqIEBleGFtcGxlXHJcbiAgICAgY29uc3RydWN0b3IoIHByaXZhdGUgdW5zYXZlZENoYW5nZXNHdWFyZDogQ2FuRGVhY3RpdmF0ZVVuc2F2ZWRDaGFuZ2VzR3VhcmQgKXt9O1xyXG4gICAgIC8vLi4uXHJcbiAgICAgY29uc3Qgb3B0aW9uczogRGlhbG9nT3B0aW9ucyA9IHsgY2FuT3BlbkRpYWxvZzogdGhpcy51bnNhdmVkQ2hhbmdlc0d1YXJkLmNhbkRlYWN0aXZhdGUgfTtcclxuICAgKi9cclxuICBjYW5PcGVuRGlhbG9nPzogKCkgPT4gUHJvbWlzZTxib29sZWFuPjtcclxuXHJcbiAgLyoqIENvbmZpZ3VyZXMgd2hlbiB0aGUgZGlhbG9nIGVtaXRzIGl0cyByZXN1bHQgaW4gcmVsYXRpb24gdG8gYSBjbG9zaW5nIGFuaW1hdGlvbiBldmVudCAqL1xyXG4gIGVtaXRSZXN1bHRPbj86IERpYWxvZ0FuaW1hdGlvbkV2ZW50O1xyXG5cclxuICAvKiogRGlzcGxheSB0aGUgZGlhbG9nIGFzIGEgc2lkZSBwYW5lbCB0aGF0IHNsaWRlcyBpbiAqL1xyXG4gIGRpc3BsYXlBc1BhbmVsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIFNldCB0aGUgZGlhbG9nIG1hc2sgY29sb3IgdG8gdHJhbnNwYXJlbnQuIERlZmF1bHRzIHRvIHRydWUgd2hlbiBkaWFsb2cgaXMgZGlzcGxheWVkIGFzIGEgcGFuZWwgKi9cclxuICB0cmFuc3BhcmVudE1hc2s/OiBib29sZWFuO1xyXG5cclxuICAvKiogQWxpZ24gdGhlIGRpYWxvZyB3aW5kb3cgdG8gdGhlIHRvcCBpbnN0ZWFkIG9mIGNlbnRlcmVkLiAqL1xyXG4gIGFsaWduVG9Ub3A/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgdG8gdHJ1ZSBpZiB0aGUgZGlhbG9nIHNob3VsZCBhdXRvbWF0aWNhbGx5IGNsb3NlIHdoZW4gdGhlIHdpbmRvdyBpcyByZXNpemVkLlxyXG4gICAqIFRoaXMgaXMgdXNlZnVsIGlmIHlvdSBhcmUgY29uZGl0aW9uYWxseSBzaG93aW5nL2hpZGluZyB0aGUgZGlhbG9nIGNvbnRlbnQgYXMgYSBzdGF0aWMgcGFydCBvZiB0aGUgcGFnZVxyXG4gICAqIHdoZW4gdGhlIHNjcmVlbiBnZXRzIHdpZGUgZW5vdWdoXHJcbiAgICovXHJcbiAgY2xvc2VPblJlc2l6ZT86IGJvb2xlYW47XHJcblxyXG4gIHNpemU/OiBEaWFsb2dTaXplO1xyXG5cclxuICAvKipcclxuICAgKiBVc2VkIHRvIHNwZWNpZnkgYSBjdXN0b20gbWluLXdpZHRoIG9mIHRoZSBkaWFsb2cuIE9ubHkgdGFrZXMgZWZmZWN0IGlmIHNpemUgaXMgc2V0IHRvIGR5bmFtaWMuXHJcbiAgICogTXVzdCBpbmNsdWRlIHVuaXRzLCBpLmUuIFwiMzJyZW1cIiBvciBcIjY0MHB4XCJcclxuICAgKi9cclxuICBtaW5XaWR0aD86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybmVkIHdoZW4gYSBkaWFsb2cgaXMgY2xvc2VkLlxyXG4gKiBTcGVjaWZpZXMgaWYgdGhlIGRpYWxvZyB3YXMgc2F2ZWQgYW5kIGNvbnRhaW5zIGFuIG9wdGlvbmFsIGNvbnRleHQuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGlhbG9nUmVzdWx0PFQ+IHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2F2ZTogYm9vbGVhbiwgcHVibGljIGNvbnRleHQ/OiBUKSB7IH1cclxufTtcclxuXHJcblxyXG4vKiogT3B0aW9ucyBmb3Igc2l6ZSBvZiBkaWFsb2cgKi9cclxuZXhwb3J0IHR5cGUgRGlhbG9nU2l6ZSA9IG51bWJlciB8ICd4c21hbGwnIHwgJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyB8ICd4bGFyZ2UnIHwgJ2Z1bGwnIHwgJ2R5bmFtaWMnO1xyXG5cclxuLyoqXHJcbiAqIERpYWxvZyBBbmltYXRpb24gRXZlbnRzOlxyXG4gKiAtIEJlZ2luQ2xvc2U6IFdoZW4gdGhlIGNsb3NlIGFuaW1hdGlvbiBzdGFydHMuXHJcbiAqIC0gRW5kQ2xvc2U6IFdoZW4gdGhlIGNsb3NlIGFuaW1hdGlvbiBmaW5pc2hlc1xyXG4gKi9cclxuZXhwb3J0IHR5cGUgRGlhbG9nQW5pbWF0aW9uRXZlbnQgPSAnQmVnaW5DbG9zZScgfCAnRW5kQ2xvc2UnXHJcbiJdfQ==
|
|
@@ -34,6 +34,7 @@ export class DialogComponent {
|
|
|
34
34
|
this.fadeOut = false;
|
|
35
35
|
this.displayAsPanel = false;
|
|
36
36
|
this.alignToTop = false;
|
|
37
|
+
this.transparentMask = false;
|
|
37
38
|
/**
|
|
38
39
|
* Defines the width of the dialog (height is auto). Can be a number that will be converted to pixels, or xsmall(320px), small(480px), medium(640px), or large(1024px)
|
|
39
40
|
*/
|
|
@@ -88,6 +89,10 @@ export class DialogComponent {
|
|
|
88
89
|
}
|
|
89
90
|
if (options.displayAsPanel) {
|
|
90
91
|
this.displayAsPanel = true;
|
|
92
|
+
this.transparentMask = true;
|
|
93
|
+
}
|
|
94
|
+
if (options.transparentMask !== undefined) {
|
|
95
|
+
this.transparentMask = options.transparentMask;
|
|
91
96
|
}
|
|
92
97
|
if (options.canOpenDialog !== undefined) {
|
|
93
98
|
const canOpen = yield options.canOpenDialog();
|
|
@@ -195,7 +200,7 @@ DialogComponent.decorators = [
|
|
|
195
200
|
{ type: Component, args: [{
|
|
196
201
|
selector: 'ec-dialog',
|
|
197
202
|
template: '<article [style.width.px]="width" [style.min-width]="minWidth" class="dialog-{{size}}" cdkTrapFocus cdkTrapFocusAutoCapture><ng-template #content></ng-template></article>',
|
|
198
|
-
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}:host{align-items:center;background-color:var(--ec-background-color
|
|
203
|
+
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@-webkit-keyframes panelMaskFadeIn{0%{background-color:transparent}to{background-color:var(--ec-dialog-background-color)}}@keyframes panelMaskFadeIn{0%{background-color:transparent}to{background-color:var(--ec-dialog-background-color)}}:host{--ec-dialog-background-color:var(--ec-background-color-dialog);align-items:center;background-color:var(--ec-dialog-background-color);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--ec-z-index-dialog)}:host.is-open{display:flex}:host.fade-in{-webkit-animation-duration:125ms;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-duration:125ms;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.fade-in,:host.fade-out{-webkit-animation-name:fadeIn;animation-name:fadeIn}:host.fade-out{-webkit-animation-duration:.1s;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-direction:reverse;animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.is-panel article{border-bottom:0;border-radius:0;border-right:0;border-top:0;bottom:0;box-shadow:0 0 .5rem var(--ec-color-shadow);max-height:none;position:absolute;right:0;top:0}:host.is-panel.fade-in{-webkit-animation-fill-mode:forwards;-webkit-animation-name:panelMaskFadeIn;animation-fill-mode:forwards;animation-name:panelMaskFadeIn}:host.is-panel.fade-in,:host.is-panel.fade-in article{-webkit-animation-duration:.25s;animation-duration:.25s}:host.is-panel.fade-in article{-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-out;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-out}:host.is-panel.fade-out{-webkit-animation-fill-mode:forwards;-webkit-animation-name:panelMaskFadeIn;animation-direction:reverse;animation-fill-mode:forwards;animation-name:panelMaskFadeIn}:host.is-panel.fade-out article{-webkit-animation-duration:225ms;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-in;animation-direction:reverse;animation-duration:225ms;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-in}:host.is-top-aligned{align-items:flex-start}:host.is-top-aligned article{margin-top:20vh;min-height:auto}:host.is-transparent{--ec-dialog-background-color:transparent}article{background-clip:padding-box;background-color:var(--ec-background-color-body);border-radius:var(--ec-border-radius-dialog);box-shadow:0 0 .625rem rgba(26,26,35,.2);display:flex;flex:none;max-height:90vh;max-width:90vw;min-height:9rem;overflow:hidden}.dialog-xsmall{width:20rem}.dialog-small{width:30rem}.dialog-medium{width:40rem}.dialog-large{width:50rem}.dialog-xlarge{width:60rem}.dialog-full{width:90vw}"]
|
|
199
204
|
},] }
|
|
200
205
|
];
|
|
201
206
|
DialogComponent.ctorParameters = () => [
|
|
@@ -210,6 +215,7 @@ DialogComponent.propDecorators = {
|
|
|
210
215
|
fadeOut: [{ type: HostBinding, args: ['class.fade-out',] }],
|
|
211
216
|
displayAsPanel: [{ type: HostBinding, args: ['class.is-panel',] }],
|
|
212
217
|
alignToTop: [{ type: HostBinding, args: ['class.is-top-aligned',] }],
|
|
218
|
+
transparentMask: [{ type: HostBinding, args: ['class.is-transparent',] }],
|
|
213
219
|
onOverlayClick: [{ type: HostListener, args: ['click', ['$event'],] }],
|
|
214
220
|
size: [{ type: Input }],
|
|
215
221
|
content: [{ type: Input }],
|
|
@@ -220,4 +226,4 @@ DialogComponent.propDecorators = {
|
|
|
220
226
|
closed: [{ type: Output }],
|
|
221
227
|
contentContainer: [{ type: ViewChild, args: ['content', { read: ViewContainerRef, static: true },] }]
|
|
222
228
|
};
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBZ0IsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBUSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsTSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQTZCLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxpRUFBaUU7QUFDakUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFXLEdBQUcsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBVyxHQUFHLENBQUM7QUFDN0MsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQVcsR0FBRyxDQUFDO0FBTzlDLE1BQU0sT0FBTyxlQUFlO0lBK0UxQixZQUNVLHdCQUFrRCxFQUNsRCxhQUE0QixFQUM1QixhQUE0QixFQUNWLFdBQXFCO1FBSHZDLDZCQUF3QixHQUF4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LDBDQUFFLFFBQVEsQ0FBQyxRQUFRLEtBQUksRUFBRSxDQUFDO0lBQ3BELENBQUM7OztZQXJQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRSw0S0FBNEs7O2FBRXZMOzs7WUFsQm1CLHdCQUF3QjtZQUduQyxhQUFhO1lBR2IsYUFBYTtZQWdHcUIsUUFBUSx1QkFBOUMsTUFBTSxTQUFDLFFBQVE7OztxQkE5RWpCLFdBQVcsU0FBQyxlQUFlO3FCQU0zQixXQUFXLFNBQUMsZUFBZTtzQkFNM0IsV0FBVyxTQUFDLGdCQUFnQjs2QkFFNUIsV0FBVyxTQUFDLGdCQUFnQjt5QkFFNUIsV0FBVyxTQUFDLHNCQUFzQjs2QkFFbEMsWUFBWSxTQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzttQkFTaEMsS0FBSztzQkFFTCxLQUFLO3NCQUNMLEtBQUs7c0JBQ0wsS0FBSztxQ0FPTCxLQUFLO3FCQUtMLE1BQU07cUJBS04sTUFBTTsrQkFLTixTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVHlwZSwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBUZW1wbGF0ZVJlZiwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBXaW5kb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS93aW5kb3cuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ0NvbnRlbnQgfSBmcm9tICcuL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgRGlhbG9nT3BlbkVuZEV2ZW50LCBEaWFsb2dDbG9zZUV2ZW50LCBEaWFsb2dTaXplLCBEaWFsb2dPcHRpb25zLCBEaWFsb2dSZXN1bHQgfSBmcm9tICcuL2RpYWxvZy10eXBlcyc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuL2RpYWxvZy5zZXJ2aWNlJztcclxuXHJcbi8qKiBUaGVzZSB2YWx1ZXMgbmVlZCB0byBiZSBrZXB0IGluIHN5bmMgd2l0aCBkaWFsb2ctYmFzZS5zY3NzICovXHJcbmV4cG9ydCBjb25zdCBEaWFsb2dPcGVuRHVyYXRpb246IG51bWJlciA9IDEyNTtcclxuZXhwb3J0IGNvbnN0IERpYWxvZ0Nsb3NlRHVyYXRpb246IG51bWJlciA9IDEwMDtcclxuZXhwb3J0IGNvbnN0IFBhbmVsT3BlbkR1cmF0aW9uOiBudW1iZXIgPSAyNTA7XHJcbmV4cG9ydCBjb25zdCBQYW5lbENsb3NlRHVyYXRpb246IG51bWJlciA9IDIyNTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtZGlhbG9nJyxcclxuICB0ZW1wbGF0ZTogJzxhcnRpY2xlIFtzdHlsZS53aWR0aC5weF09XCJ3aWR0aFwiIFtzdHlsZS5taW4td2lkdGhdPVwibWluV2lkdGhcIiBjbGFzcz1cImRpYWxvZy17e3NpemV9fVwiIGNka1RyYXBGb2N1cyBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZT48bmctdGVtcGxhdGUgI2NvbnRlbnQ+PC9uZy10ZW1wbGF0ZT48L2FydGljbGU+JyxcclxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29tcG9uZW50IHtcclxuICAvKipcclxuICAgKiBBZGQvcmVtb3ZlIHRoZSBpcy1vcGVuIGNzcyBjbGFzcyB0byB0aGUgaG9zdCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBvcGVuZWQvY2xvc2VkLlxyXG4gICAqIFN0eWxlcyB1c2UgdGhlIGlzLW9wZW4gY2xhc3MgdG8gc2hvdy9oaWRlIHRoZSBkaWFsb2cuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1vcGVuJykgcHVibGljIGlzT3BlbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBBZGQgdGhlIGZhZGUtaW4gY3NzIGNsYXNzIHRvIHRoZSBob3N0IGVsZW1lbnQgd2hlbiB0aGUgZGlhbG9nIGlzIG9wZW5pbmcuIFJlbW92ZSB3aGVuIHRyYW5zaXRpb24gaXMgY29tcGxldGUuXHJcbiAgICogU3R5bGVzIHVzZSB0aGUgZmFkZS1pbiBjbGFzcyB0byBhcHBseSBhIGZhZGUtaW4gdHJhbnNpdGlvbiB3aGlsZSB0aGUgZGlhbG9nIGlzIG9wZW5pbmcuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mYWRlLWluJykgcHVibGljIGZhZGVJbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBBZGQgdGhlIGZhZGUtb3V0IGNzcyBjbGFzcyB0byB0aGUgaG9zdCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBjbG9zaW5nLiBSZW1vdmUgd2hlbiB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlLlxyXG4gICAqIFN0eWxlcyB1c2UgdGhlIGZhZGUtb3V0IGNsYXNzIHRvIGFwcGx5IGEgZmFkZS1vdXQgdHJhbnNpdGlvbiB3aGlsZSB0aGUgZGlhbG9nIGlzIGNsb3NpbmcuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mYWRlLW91dCcpIHB1YmxpYyBmYWRlT3V0ID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcGFuZWwnKSBwdWJsaWMgZGlzcGxheUFzUGFuZWwgPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy10b3AtYWxpZ25lZCcpIHB1YmxpYyBhbGlnblRvVG9wID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSkgcHVibGljIG9uT3ZlcmxheUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBpZiAoKDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLnRhZ05hbWUgPT09ICdFQy1ESUFMT0cnICYmIHRoaXMuZGlzcGxheUFzUGFuZWwpIHtcclxuICAgICAgdGhpcy5jbG9zZShuZXcgRGlhbG9nUmVzdWx0KGZhbHNlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmVzIHRoZSB3aWR0aCBvZiB0aGUgZGlhbG9nIChoZWlnaHQgaXMgYXV0bykuIENhbiBiZSBhIG51bWJlciB0aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIHBpeGVscywgb3IgeHNtYWxsKDMyMHB4KSwgc21hbGwoNDgwcHgpLCBtZWRpdW0oNjQwcHgpLCBvciBsYXJnZSgxMDI0cHgpXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IERpYWxvZ1NpemUgPSBcInNtYWxsXCI7XHJcblxyXG4gIEBJbnB1dCgpIGNvbnRlbnQ/OiBUeXBlPERpYWxvZ0NvbnRlbnQ8YW55Pj4gfCBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIGNvbnRleHQ/OiBhbnk7XHJcbiAgQElucHV0KCkgb3B0aW9ucz86IERpYWxvZ09wdGlvbnM7XHJcblxyXG4gIC8qKk9ubHkgc2V0IGlmIHRoaXMgcGFydGljdWxhciBpbnN0YW5jZSBvZiBhIGRpYWxvZyBzaG91bGQgYmUgaWRlbnRpZmllZCBzZXBhcmF0ZWx5IGZyb20gb3RoZXJzLlxyXG4gICAqIElmIHByb3ZpZGVkLCB0aGlzIGlzIGVtaXR0ZWQgdG8gdGhlIGRpYWxvZyBzZXJ2aWNlIHdpdGggT3BlbkVuZCBhbmQgQ2xvc2UgZXZlbnRzLiBEaXJlY3QgdXNhZ2VcclxuICAgKiBvZiB0aGUgRGlhbG9nQ29tcG9uZW50IGZyb20gb3V0c2lkZSBhIERpYWxvZ0dyb3VwIGRvZXMgbm90IHVzdWFsbHkgcmVxdWlyZSB1c2luZyB0aGlzIHBhcmFtZXRlciBhc1xyXG4gICAqIHRoZSBkaWFsb2cgcmVmZXJlbmNlIGl0c2VsZiBmdW5jdGlvbnMgYXMgdGhlIGlkZW50aWZpZXJcclxuICAgKi9cclxuICBASW5wdXQoKSBkaWFsb2dPcGVuU3RhcnRFdmVudElkPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBkaWFsb2cgaXMgb3BlbmVkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvcGVuZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBkaWFsb2cgaXMgY2xvc2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjbG9zZWQ6IEV2ZW50RW1pdHRlcjxEaWFsb2dSZXN1bHQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBjb250YWluZXIgd2hlcmUgdGhlIGNvbXBvbmVudCB3aWxsIGJlIGxvYWRlZFxyXG4gICAqL1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgY29udGVudENvbnRhaW5lciE6IFZpZXdDb250YWluZXJSZWY7XHJcblxyXG4gIC8qKlxyXG4gICAqIEN1c3RvbSB3aWR0aCBvZiB0aGUgZGlhbG9nIGluIHBpeGVscy4gU2V0IGJ5IGRlZmluaW5nIHRoZSBzaXplIHByb3BlcnR5XHJcbiAgICogYXMgYSBudW1iZXIgdmFsdWUuXHJcbiAgICovXHJcbiAgcHVibGljIHdpZHRoPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBDdXN0b20gbWluLXdpZHRoIG9mIHRoZSBkaWFsb2cuIE9ubHkgdGFrZXMgZWZmZWN0IGlmIHNpemUgaXMgc2V0IHRvIGR5bmFtaWMuXHJcbiAgICogTXVzdCBpbmNsdWRlIHVuaXRzLCBpLmUuIFwiMzJyZW1cIiBvciBcIjY0MHB4XCJcclxuICAgKi9cclxuICBwdWJsaWMgbWluV2lkdGg/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEEgcmVmZXJlbmNlIG9mIHRoZSBjb21wb25lbnQgb25jZSBpdCBoYXMgYmVlbiBsb2FkZWRcclxuICAgKi9cclxuICBwdWJsaWMgY29tcG9uZW50UmVmPzogQ29tcG9uZW50UmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBwcml2YXRlIHdpbmRvd1NlcnZpY2U6IFdpbmRvd1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50UmVmOiBEb2N1bWVudFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29udGVudCkge1xyXG4gICAgICB0aGlzLm9wZW4odGhpcy5jb250ZW50LCB0aGlzLmNvbnRleHQsIHRoaXMub3B0aW9ucyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIC8vIFJlc3RvcmUgZm9jdXMgdG8gdGhlIHByZXZpb3VzbHkgZm9jdXNlZCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBkZXN0cm95ZWQuXHJcbiAgICAvLyBOZWVkIHRvIGRvIHRoaXMgaGVyZSBhbmQgbm90IGluIGNsb3NlKCkgYmVjYXVzZSBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZSdzIHJlLWZvY3VzIGhhcHBlbnMgaW4gbmdPbkRlc3Ryb3kuXHJcbiAgICAvLyBUaGlzIGRvZXNuJ3Qgd29yayBmb3IgZGlhbG9nIGltcGxlbWVudGF0aW9ucyBvdXRzaWRlIG9mIHRoZSBkaWFsb2cgc2VydmljZSBiZWNhdXNlIG5nT25EZXN0cm95IGlzbid0IGNhbGxlZCB3aGVuXHJcbiAgICAvLyB0aGUgZGlhbG9nIGlzIGNsb3NlZCBpbiB0aG9zZSBjYXNlcy5cclxuICAgIGlmICh0aGlzLnByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCkge1xyXG4gICAgICB0aGlzLnByZXZpb3VzbHlGb2N1c2VkRWxlbWVudC5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgYW5kIHByZXZpb3VzbHkgbG9hZGVkIGNvbnRlbnRcclxuICAgKiBMb2FkIHRoZSBjb21wb25lbnRcclxuICAgKiBTYXZlIGEgcmVmZXJlbmNlIG9mIHRoZSBsb2FkZWQgY29tcG9uZW50XHJcbiAgICogU2hvdyB0aGUgZGlhbG9nIGFuZCBmYWRlIGluXHJcbiAgICovXHJcbiAgcHVibGljIGFzeW5jIG9wZW48VD4oY29tcG9uZW50OiBUeXBlPERpYWxvZ0NvbnRlbnQ8VD4+IHwgVGVtcGxhdGVSZWY8YW55PiwgY29udGV4dD86IFQsIG9wdGlvbnM/OiBEaWFsb2dPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIFxyXG4gICAgICAvLyBDYXB0dXJlIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBlbGVtZW50LCBhbHNvIGxvb2tpbmcgaW4gdGhlIHNoYWRvdyBkb20uIEZvY3VzIGlzIHJlc3RvcmVkIHRvIHRoaXMgZWxlbWVudCBvbmNlIHRoZSBkaWFsb2cgaXNcclxuICAgICAgLy8gZGVzdHJveWVkLiBTZWUgbmdPbkRlc3Ryb3koKS4gV2UgbmVlZCB0byBkbyB0aGlzIGhlcmUgaW4gYWRkaXRpb24gdG8gdGhlIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlIGJlY2F1c2Ugc29tZXRpbWVzIHRoZSBkaWFsb2cnc1xyXG4gICAgICAvLyBjb250ZW50IGlzIGRyYXduIGFuZCBncmFicyBmb2N1cyBiZWZvcmUgdGhlIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlIGlzIGFibGUgdG8gcmVhZCB0aGUgcHJldmlvdXNseSBmb2N1c2VkIGVsZW1lbnQuXHJcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSA8SFRNTEVsZW1lbnQgfCBudWxsPnRoaXMuZG9jdW1lbnRSZWY/LmFjdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIHRoaXMucHJldmlvdXNseUZvY3VzZWRFbGVtZW50ID0gPEhUTUxFbGVtZW50PmFjdGl2ZUVsZW1lbnQ/LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQgfHwgYWN0aXZlRWxlbWVudDtcclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgaWYgKG9wdGlvbnMuYWxpZ25Ub1RvcCkge1xyXG4gICAgICAgICAgdGhpcy5hbGlnblRvVG9wID0gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChvcHRpb25zLmRpc3BsYXlBc1BhbmVsKSB7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlBc1BhbmVsID0gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChvcHRpb25zLmNhbk9wZW5EaWFsb2cgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgY29uc3QgY2FuT3BlbiA9IGF3YWl0IG9wdGlvbnMuY2FuT3BlbkRpYWxvZygpO1xyXG4gICAgICAgICAgaWYgKCFjYW5PcGVuKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2UobmV3IERpYWxvZ1Jlc3VsdChmYWxzZSkpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBzZXQgdGhlIHNpemUgYmVmb3JlIG9wZW5pbmdcclxuICAgICAgaWYgKHR5cGVvZiB0aGlzLnNpemUgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgdGhpcy53aWR0aCA9IHRoaXMuc2l6ZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBSZXNldCB0aGUgd2lkdGggaWYgdGhlIHNpemUgaXMgbm90IGEgbnVtYmVyLiBUaGlzIGlzIHRvIHByZXZlbnQgdGhlIHdpZHRoIHByb3BlcnR5IGNvbmZsaWN0aW5nIHdpdGggdGhlIHNpemUuXHJcbiAgICAgICAgdGhpcy53aWR0aCA9IHVuZGVmaW5lZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5taW5XaWR0aCA9IG9wdGlvbnM/Lm1pbldpZHRoO1xyXG5cclxuICAgICAgdGhpcy5mYWRlSW4gPSB0cnVlO1xyXG4gICAgICBpZiAoY29tcG9uZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcclxuICAgICAgICB0aGlzLmNvbnRlbnRDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KGNvbXBvbmVudCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbGV0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShjb21wb25lbnQpO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy5jb250ZW50Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgdGhpcy5vcGVuRGlhbG9nQ29tcG9uZW50PFQ+KGNvbnRleHQpO1xyXG5cclxuICAgICAgLy8gT25jZSB0aGUgYW5pbWF0aW9uIGlzIGNvbXBsZXRlIHdlIGNhbiByZW1vdmUgdGhlIGFuaW1hdGlvbiBjbGFzcyBhbmRcclxuICAgICAgLy8gZW1pdCB0aGUgb3BlbmVkIGV2ZW50LCBib3RoIHRvIHRoZSBob3N0aW5nIGNvbXBvbmVudCBhbmQgdmlhIERpYWxvZ1NlcnZpY2VcclxuICAgICAgYXdhaXQgdGltZXIodGhpcy5kaXNwbGF5QXNQYW5lbCA/IFBhbmVsT3BlbkR1cmF0aW9uIDogRGlhbG9nT3BlbkR1cmF0aW9uKS5waXBlKFxyXG4gICAgICAgIHRha2UoMSksXHJcbiAgICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGRpYWxvZ0lkID0gdGhpcy5nZXREaWFsb2dJZCgpO1xyXG4gICAgICAgICAgdGhpcy5mYWRlSW4gPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMub3BlbmVkLmVtaXQoZGlhbG9nSWQpO1xyXG4gICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRyaWdnZXJFdmVudChuZXcgRGlhbG9nT3BlbkVuZEV2ZW50KHRoaXMuZGlhbG9nT3BlblN0YXJ0RXZlbnRJZCwgZGlhbG9nSWQpKTtcclxuICAgICAgICB9KVxyXG4gICAgICApLnRvUHJvbWlzZSgpO1xyXG5cclxuICAgICAgdGhpcy5oYW5kbGVDbG9zZU9uUmVzaXplKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGYWRlIHRoZSBkaWFsb2cgb3V0IGFuZCBoaWRlXHJcbiAgICovXHJcbiAgcHVibGljIGNsb3NlPFQ+KHJlc3VsdD86IERpYWxvZ1Jlc3VsdDxUPik6IHZvaWQge1xyXG4gICAgdGhpcy5mYWRlT3V0ID0gdHJ1ZTtcclxuICAgIGNvbnN0IGRpYWxvZ0lkID0gdGhpcy5nZXREaWFsb2dJZCgpOyAgLy9jYWxsIGJlZm9yZSB3aXBpbmcgb3V0IHRoZSBjb250ZW50XHJcblxyXG4gICAgLy8gV2hlbiB0aGUgZmFkZSBvdXQgYW5pbWF0aW9uIGlzIGNvbXBsZXRlIHdlIHdpbGwgaGlkZSB0aGUgZGlhbG9nXHJcbiAgICAvLyBhbmQgcmVtb3ZlIHRoZSBhbmltYXRpb24gY2xhc3MgYXMgd2VsbCBhcyBsZXQgdGhlIHdvcmxkIGtub3cgdGhhdFxyXG4gICAgLy8gd2UncmUgY2xvc2VkIHNvIHRoZXkgY2FuIGNvbXBsZXRlIGFueSBvdGhlciBjbGVhbnVwXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcclxuICAgICAgdGhpcy5mYWRlT3V0ID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuY29udGVudENvbnRhaW5lcj8uY2xlYXIoKTtcclxuICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB1bmRlZmluZWQ7XHJcbiAgICAgIHRoaXMuY2xvc2VkLmVtaXQocmVzdWx0KTtcclxuICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlLnRyaWdnZXJFdmVudChuZXcgRGlhbG9nQ2xvc2VFdmVudCh0aGlzLmRpYWxvZ09wZW5TdGFydEV2ZW50SWQsIGRpYWxvZ0lkLCByZXN1bHQ/LnNhdmUsIHJlc3VsdD8uY29udGV4dCkpO1xyXG4gICAgICB0aGlzLnJlc2V0T3B0aW9ucygpO1xyXG4gICAgfSwgdGhpcy5kaXNwbGF5QXNQYW5lbCA/IFBhbmVsQ2xvc2VEdXJhdGlvbiA6IERpYWxvZ0Nsb3NlRHVyYXRpb24pXHJcbiAgfVxyXG5cclxuICAvKipPcGVuIHRoZSBkaWFsb2cgYW5kIGF0dGFjaCBoYW5kbGVycyB0byB0aGUgY2FuY2VsIGFuZCBzYXZlIGV2ZW50cyB0byBjbG9zZSBpdCBhbmQgbm90aWZ5IHRoZSBob3N0aW5nIHBhZ2UgKi9cclxuICBwcml2YXRlIG9wZW5EaWFsb2dDb21wb25lbnQ8VD4oY29udGV4dD86IFQpIHtcclxuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZiAmJiB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSkge1xyXG4gICAgICBjb25zdCBkaWFsb2dDb250ZW50ID0gdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UgYXMgRGlhbG9nQ29udGVudDxUPjtcclxuXHJcbiAgICAgIC8vIE9uT3BlbiBpcyBvcHRpb25hbCAtIGNyZWF0ZSBkaWFsb2dzIGRvbid0IG5lY2Vzc2FyaWx5IGRlZmluZSBpdFxyXG4gICAgICBpZiAoZGlhbG9nQ29udGVudC5vbk9wZW4pIHtcclxuICAgICAgICBkaWFsb2dDb250ZW50Lm9uT3Blbihjb250ZXh0KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZGlhbG9nQ29udGVudC5vbkRpYWxvZ0NhbmNlbC5waXBlKHRha2VVbnRpbCh0aGlzLmNsb3NlZCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jbG9zZTxUPihuZXcgRGlhbG9nUmVzdWx0PFQ+KGZhbHNlKSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgZGlhbG9nQ29udGVudC5vbkRpYWxvZ1NhdmUucGlwZSh0YWtlVW50aWwodGhpcy5jbG9zZWQpKS5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICB0aGlzLmNsb3NlPFQ+KG5ldyBEaWFsb2dSZXN1bHQ8VD4odHJ1ZSwgdmFsKSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzZXQgb3B0aW9ucyBzbyB0aGV5IGRvbid0IHBlcnNpc3QgbmV4dCB0aW1lIHRoZVxyXG4gICAqIHJvb3QgZGlhbG9nIGlzIG9wZW5lZFxyXG4gICAqIEBkZXByZWNhdGVkXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZXNldE9wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmFsaWduVG9Ub3AgPSBmYWxzZTtcclxuICAgIHRoaXMuZGlzcGxheUFzUGFuZWwgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIC8qKiBJZiB0aGV5IHR1cm5lZCBvbiBjbG9zZU9uUmVzaXplLCBhdXRvbWF0aWNhbGx5IGNsb3NlIHRoZSBkaWFsb2cgYW55IHRpbWUgc29tZWJvZHkgcmVzaXplcyB0aGUgd2luZG93LlxyXG4gICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3IgcmVzcG9uc2l2ZSBsYXlvdXRzIHRvIHByZXZlbnQgaGF2aW5nIHRoZSBkaWFsb2dDb250ZW50IG9uIHRoZSBzY3JlZW4gdHdpY2UgKi9cclxuICBwcml2YXRlIGhhbmRsZUNsb3NlT25SZXNpemUoKSB7XHJcbiAgICBpZih0aGlzLm9wdGlvbnMgJiYgdGhpcy5vcHRpb25zLmNsb3NlT25SZXNpemUpe1xyXG4gICAgICB0aGlzLndpbmRvd1NlcnZpY2UucmVzaXplZCEucGlwZSh0YWtlVW50aWwodGhpcy5jbG9zZWQpLCB0YWtlKDEpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xvc2UobmV3IERpYWxvZ1Jlc3VsdChmYWxzZSkpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKkV4dHJhY3QgdGhlIGRpYWxvZ0lkIGZyb20gdGhlIGRpYWxvZyBjb250ZW50LCBpZiBpdCBoYXMgb25lLiBUZW1wbGF0ZS1iYXNlZCBkaWFsb2dzIGdlbmVyYWxseSBkb24ndC5cclxuICAgKiBXZSBmYWxsIGJhY2sgdG8gZW1wdHkgc3RyaW5nIHRvIGFsbG93IGFueWJvZHkgbGlzdGVuaW5nIGZvciBkaWFsb2dFdmVudHMgdG8gc3RpbGwgcmVjb3JkIHRoZSBvcGVuL2Nsb3NlIGV2ZW4gaWZcclxuICAgKiB0aGUgZGlhbG9nIGl0c2VsZiBkb2VzIG5vdCBzYXkgd2hhdCB0aGUgbmFtZSBpcy4gXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXREaWFsb2dJZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFJlZj8uaW5zdGFuY2UuZGlhbG9nSWQgfHwgJyc7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9kaXNwbGF5L2RpYWxvZy9kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBZ0IsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBUSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsTSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQTZCLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxpRUFBaUU7QUFDakUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQVcsR0FBRyxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFXLEdBQUcsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBVyxHQUFHLENBQUM7QUFDN0MsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQVcsR0FBRyxDQUFDO0FBTzlDLE1BQU0sT0FBTyxlQUFlO0lBaUYxQixZQUNVLHdCQUFrRCxFQUNsRCxhQUE0QixFQUM1QixhQUE0QixFQUNWLFdBQXFCO1FBSHZDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDVixnQkFBVyxHQUFYLFdBQVcsQ0FBVTtRQXBGakQ7OztXQUdHO1FBQ2tDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFcEQ7OztXQUdHO1FBQ2tDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFFcEQ7OztXQUdHO1FBQ21DLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFakIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUVuQixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQVFwRTs7V0FFRztRQUNhLFNBQUksR0FBZSxPQUFPLENBQUM7UUFhM0M7O1dBRUc7UUFDYyxXQUFNLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFbkU7O1dBRUc7UUFDYyxXQUFNLEdBQW9DLElBQUksWUFBWSxFQUFFLENBQUM7UUF3QnRFLDZCQUF3QixHQUF1QixJQUFJLENBQUM7SUFPeEQsQ0FBQztJQTdEcUMsY0FBYyxDQUFDLEtBQWlCO1FBQ3hFLElBQWtCLEtBQUssQ0FBQyxNQUFPLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7SUEyREQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckQ7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULGdGQUFnRjtRQUNoRiw2R0FBNkc7UUFDN0csbUhBQW1IO1FBQ25ILHVDQUF1QztRQUN2QyxJQUFJLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUNqQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDdkM7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDVSxJQUFJLENBQUksU0FBb0QsRUFBRSxPQUFXLEVBQUUsT0FBdUI7OztZQUM3RyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFFaEIsOEhBQThIO2dCQUM5SCxrSUFBa0k7Z0JBQ2xJLHNIQUFzSDtnQkFDdEgsTUFBTSxhQUFhLEdBQUcsTUFBb0IsSUFBSSxDQUFDLFdBQVcsMENBQUUsYUFBYSxDQUFDO2dCQUMxRSxJQUFJLENBQUMsd0JBQXdCLEdBQUcsQ0FBQSxNQUFhLGFBQWEsYUFBYixhQUFhLHVCQUFiLGFBQWEsQ0FBRSxVQUFVLDBDQUFFLGFBQWEsS0FBSSxhQUFhLENBQUM7Z0JBRXZHLElBQUksT0FBTyxFQUFFO29CQUNYLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRTt3QkFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7cUJBQ3hCO29CQUVELElBQUksT0FBTyxDQUFDLGNBQWMsRUFBRTt3QkFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7d0JBQzNCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO3FCQUM3QjtvQkFFRCxJQUFJLE9BQU8sQ0FBQyxlQUFlLEtBQUssU0FBUyxFQUFFO3dCQUN6QyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUM7cUJBQ2hEO29CQUVELElBQUksT0FBTyxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUU7d0JBQ3ZDLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDO3dCQUM5QyxJQUFJLENBQUMsT0FBTyxFQUFFOzRCQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzs0QkFDcEMsT0FBTzt5QkFDUjtxQkFDRjtpQkFDRjtnQkFFRCw4QkFBOEI7Z0JBQzlCLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtvQkFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2lCQUN4QjtxQkFBTTtvQkFDTCxnSEFBZ0g7b0JBQ2hILElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO2lCQUN4QjtnQkFFRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxRQUFRLENBQUM7Z0JBRWxDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUNuQixJQUFJLFNBQVMsWUFBWSxXQUFXLEVBQUU7b0JBQ3BDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDckQ7cUJBQU07b0JBQ0wsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ3hGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2lCQUM3RTtnQkFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztnQkFFbkIsSUFBSSxDQUFDLG1CQUFtQixDQUFJLE9BQU8sQ0FBQyxDQUFDO2dCQUVyQyx1RUFBdUU7Z0JBQ3ZFLDZFQUE2RTtnQkFDN0UsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUM1RSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDUCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO29CQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDM0IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDakcsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFFZCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM1Qjs7S0FDRjtJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFJLE1BQXdCO1FBQ3RDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFFLG9DQUFvQztRQUUxRSxrRUFBa0U7UUFDbEUsb0VBQW9FO1FBQ3BFLHNEQUFzRDtRQUN0RCxVQUFVLENBQUMsR0FBRyxFQUFFOztZQUNkLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLE1BQUEsSUFBSSxDQUFDLGdCQUFnQiwwQ0FBRSxLQUFLLEdBQUc7WUFDL0IsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7WUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxJQUFJLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7WUFDNUgsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUMsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtJQUNwRSxDQUFDO0lBRUQsK0dBQStHO0lBQ3ZHLG1CQUFtQixDQUFJLE9BQVc7UUFDeEMsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQ25ELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBNEIsQ0FBQztZQUVyRSxrRUFBa0U7WUFDbEUsSUFBSSxhQUFhLENBQUMsTUFBTSxFQUFFO2dCQUN4QixhQUFhLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQy9CO1lBRUQsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3ZFLElBQUksQ0FBQyxLQUFLLENBQUksSUFBSSxZQUFZLENBQUksS0FBSyxDQUFDLENBQUMsQ0FBQztZQUM1QyxDQUFDLENBQUMsQ0FBQztZQUVILGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RFLElBQUksQ0FBQyxLQUFLLENBQUksSUFBSSxZQUFZLENBQUksSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDaEQsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssWUFBWTtRQUNsQixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRUQ7d0dBQ29HO0lBQzVGLG1CQUFtQjtRQUN6QixJQUFHLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUM7WUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDL0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssV0FBVzs7UUFDakIsT0FBTyxPQUFBLElBQUksQ0FBQyxZQUFZLDBDQUFFLFFBQVEsQ0FBQyxRQUFRLEtBQUksRUFBRSxDQUFDO0lBQ3BELENBQUM7OztZQTVQRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLFFBQVEsRUFBRSw0S0FBNEs7O2FBRXZMOzs7WUFsQm1CLHdCQUF3QjtZQUduQyxhQUFhO1lBR2IsYUFBYTtZQWtHcUIsUUFBUSx1QkFBOUMsTUFBTSxTQUFDLFFBQVE7OztxQkFoRmpCLFdBQVcsU0FBQyxlQUFlO3FCQU0zQixXQUFXLFNBQUMsZUFBZTtzQkFNM0IsV0FBVyxTQUFDLGdCQUFnQjs2QkFFNUIsV0FBVyxTQUFDLGdCQUFnQjt5QkFFNUIsV0FBVyxTQUFDLHNCQUFzQjs4QkFFbEMsV0FBVyxTQUFDLHNCQUFzQjs2QkFFbEMsWUFBWSxTQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQzttQkFTaEMsS0FBSztzQkFFTCxLQUFLO3NCQUNMLEtBQUs7c0JBQ0wsS0FBSztxQ0FPTCxLQUFLO3FCQUtMLE1BQU07cUJBS04sTUFBTTsrQkFLTixTQUFTLFNBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVHlwZSwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBUZW1wbGF0ZVJlZiwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRpbWVyIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBXaW5kb3dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS93aW5kb3cuc2VydmljZSc7XHJcbmltcG9ydCB7IERpYWxvZ0NvbnRlbnQgfSBmcm9tICcuL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgRGlhbG9nT3BlbkVuZEV2ZW50LCBEaWFsb2dDbG9zZUV2ZW50LCBEaWFsb2dTaXplLCBEaWFsb2dPcHRpb25zLCBEaWFsb2dSZXN1bHQgfSBmcm9tICcuL2RpYWxvZy10eXBlcyc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuL2RpYWxvZy5zZXJ2aWNlJztcclxuXHJcbi8qKiBUaGVzZSB2YWx1ZXMgbmVlZCB0byBiZSBrZXB0IGluIHN5bmMgd2l0aCBkaWFsb2ctYmFzZS5zY3NzICovXHJcbmV4cG9ydCBjb25zdCBEaWFsb2dPcGVuRHVyYXRpb246IG51bWJlciA9IDEyNTtcclxuZXhwb3J0IGNvbnN0IERpYWxvZ0Nsb3NlRHVyYXRpb246IG51bWJlciA9IDEwMDtcclxuZXhwb3J0IGNvbnN0IFBhbmVsT3BlbkR1cmF0aW9uOiBudW1iZXIgPSAyNTA7XHJcbmV4cG9ydCBjb25zdCBQYW5lbENsb3NlRHVyYXRpb246IG51bWJlciA9IDIyNTtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtZGlhbG9nJyxcclxuICB0ZW1wbGF0ZTogJzxhcnRpY2xlIFtzdHlsZS53aWR0aC5weF09XCJ3aWR0aFwiIFtzdHlsZS5taW4td2lkdGhdPVwibWluV2lkdGhcIiBjbGFzcz1cImRpYWxvZy17e3NpemV9fVwiIGNka1RyYXBGb2N1cyBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZT48bmctdGVtcGxhdGUgI2NvbnRlbnQ+PC9uZy10ZW1wbGF0ZT48L2FydGljbGU+JyxcclxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2cuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nQ29tcG9uZW50IHtcclxuICAvKipcclxuICAgKiBBZGQvcmVtb3ZlIHRoZSBpcy1vcGVuIGNzcyBjbGFzcyB0byB0aGUgaG9zdCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBvcGVuZWQvY2xvc2VkLlxyXG4gICAqIFN0eWxlcyB1c2UgdGhlIGlzLW9wZW4gY2xhc3MgdG8gc2hvdy9oaWRlIHRoZSBkaWFsb2cuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1vcGVuJykgcHVibGljIGlzT3BlbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBBZGQgdGhlIGZhZGUtaW4gY3NzIGNsYXNzIHRvIHRoZSBob3N0IGVsZW1lbnQgd2hlbiB0aGUgZGlhbG9nIGlzIG9wZW5pbmcuIFJlbW92ZSB3aGVuIHRyYW5zaXRpb24gaXMgY29tcGxldGUuXHJcbiAgICogU3R5bGVzIHVzZSB0aGUgZmFkZS1pbiBjbGFzcyB0byBhcHBseSBhIGZhZGUtaW4gdHJhbnNpdGlvbiB3aGlsZSB0aGUgZGlhbG9nIGlzIG9wZW5pbmcuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mYWRlLWluJykgcHVibGljIGZhZGVJbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBBZGQgdGhlIGZhZGUtb3V0IGNzcyBjbGFzcyB0byB0aGUgaG9zdCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBjbG9zaW5nLiBSZW1vdmUgd2hlbiB0cmFuc2l0aW9uIGlzIGNvbXBsZXRlLlxyXG4gICAqIFN0eWxlcyB1c2UgdGhlIGZhZGUtb3V0IGNsYXNzIHRvIGFwcGx5IGEgZmFkZS1vdXQgdHJhbnNpdGlvbiB3aGlsZSB0aGUgZGlhbG9nIGlzIGNsb3NpbmcuXHJcbiAgICovXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mYWRlLW91dCcpIHB1YmxpYyBmYWRlT3V0ID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcGFuZWwnKSBwdWJsaWMgZGlzcGxheUFzUGFuZWwgPSBmYWxzZTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy10b3AtYWxpZ25lZCcpIHB1YmxpYyBhbGlnblRvVG9wID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtdHJhbnNwYXJlbnQnKSBwdWJsaWMgdHJhbnNwYXJlbnRNYXNrID0gZmFsc2U7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSkgcHVibGljIG9uT3ZlcmxheUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBpZiAoKDxIVE1MRWxlbWVudD5ldmVudC50YXJnZXQpLnRhZ05hbWUgPT09ICdFQy1ESUFMT0cnICYmIHRoaXMuZGlzcGxheUFzUGFuZWwpIHtcclxuICAgICAgdGhpcy5jbG9zZShuZXcgRGlhbG9nUmVzdWx0KGZhbHNlKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmVzIHRoZSB3aWR0aCBvZiB0aGUgZGlhbG9nIChoZWlnaHQgaXMgYXV0bykuIENhbiBiZSBhIG51bWJlciB0aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIHBpeGVscywgb3IgeHNtYWxsKDMyMHB4KSwgc21hbGwoNDgwcHgpLCBtZWRpdW0oNjQwcHgpLCBvciBsYXJnZSgxMDI0cHgpXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IERpYWxvZ1NpemUgPSBcInNtYWxsXCI7XHJcblxyXG4gIEBJbnB1dCgpIGNvbnRlbnQ/OiBUeXBlPERpYWxvZ0NvbnRlbnQ8YW55Pj4gfCBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBJbnB1dCgpIGNvbnRleHQ/OiBhbnk7XHJcbiAgQElucHV0KCkgb3B0aW9ucz86IERpYWxvZ09wdGlvbnM7XHJcblxyXG4gIC8qKk9ubHkgc2V0IGlmIHRoaXMgcGFydGljdWxhciBpbnN0YW5jZSBvZiBhIGRpYWxvZyBzaG91bGQgYmUgaWRlbnRpZmllZCBzZXBhcmF0ZWx5IGZyb20gb3RoZXJzLlxyXG4gICAqIElmIHByb3ZpZGVkLCB0aGlzIGlzIGVtaXR0ZWQgdG8gdGhlIGRpYWxvZyBzZXJ2aWNlIHdpdGggT3BlbkVuZCBhbmQgQ2xvc2UgZXZlbnRzLiBEaXJlY3QgdXNhZ2VcclxuICAgKiBvZiB0aGUgRGlhbG9nQ29tcG9uZW50IGZyb20gb3V0c2lkZSBhIERpYWxvZ0dyb3VwIGRvZXMgbm90IHVzdWFsbHkgcmVxdWlyZSB1c2luZyB0aGlzIHBhcmFtZXRlciBhc1xyXG4gICAqIHRoZSBkaWFsb2cgcmVmZXJlbmNlIGl0c2VsZiBmdW5jdGlvbnMgYXMgdGhlIGlkZW50aWZpZXJcclxuICAgKi9cclxuICBASW5wdXQoKSBkaWFsb2dPcGVuU3RhcnRFdmVudElkPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBkaWFsb2cgaXMgb3BlbmVkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvcGVuZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSBkaWFsb2cgaXMgY2xvc2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjbG9zZWQ6IEV2ZW50RW1pdHRlcjxEaWFsb2dSZXN1bHQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBjb250YWluZXIgd2hlcmUgdGhlIGNvbXBvbmVudCB3aWxsIGJlIGxvYWRlZFxyXG4gICAqL1xyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgY29udGVudENvbnRhaW5lciE6IFZpZXdDb250YWluZXJSZWY7XHJcblxyXG4gIC8qKlxyXG4gICAqIEN1c3RvbSB3aWR0aCBvZiB0aGUgZGlhbG9nIGluIHBpeGVscy4gU2V0IGJ5IGRlZmluaW5nIHRoZSBzaXplIHByb3BlcnR5XHJcbiAgICogYXMgYSBudW1iZXIgdmFsdWUuXHJcbiAgICovXHJcbiAgcHVibGljIHdpZHRoPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBDdXN0b20gbWluLXdpZHRoIG9mIHRoZSBkaWFsb2cuIE9ubHkgdGFrZXMgZWZmZWN0IGlmIHNpemUgaXMgc2V0IHRvIGR5bmFtaWMuXHJcbiAgICogTXVzdCBpbmNsdWRlIHVuaXRzLCBpLmUuIFwiMzJyZW1cIiBvciBcIjY0MHB4XCJcclxuICAgKi9cclxuICBwdWJsaWMgbWluV2lkdGg/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEEgcmVmZXJlbmNlIG9mIHRoZSBjb21wb25lbnQgb25jZSBpdCBoYXMgYmVlbiBsb2FkZWRcclxuICAgKi9cclxuICBwdWJsaWMgY29tcG9uZW50UmVmPzogQ29tcG9uZW50UmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgcHJldmlvdXNseUZvY3VzZWRFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBwcml2YXRlIHdpbmRvd1NlcnZpY2U6IFdpbmRvd1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50UmVmOiBEb2N1bWVudFxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29udGVudCkge1xyXG4gICAgICB0aGlzLm9wZW4odGhpcy5jb250ZW50LCB0aGlzLmNvbnRleHQsIHRoaXMub3B0aW9ucyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIC8vIFJlc3RvcmUgZm9jdXMgdG8gdGhlIHByZXZpb3VzbHkgZm9jdXNlZCBlbGVtZW50IHdoZW4gdGhlIGRpYWxvZyBpcyBkZXN0cm95ZWQuXHJcbiAgICAvLyBOZWVkIHRvIGRvIHRoaXMgaGVyZSBhbmQgbm90IGluIGNsb3NlKCkgYmVjYXVzZSBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZSdzIHJlLWZvY3VzIGhhcHBlbnMgaW4gbmdPbkRlc3Ryb3kuXHJcbiAgICAvLyBUaGlzIGRvZXNuJ3Qgd29yayBmb3IgZGlhbG9nIGltcGxlbWVudGF0aW9ucyBvdXRzaWRlIG9mIHRoZSBkaWFsb2cgc2VydmljZSBiZWNhdXNlIG5nT25EZXN0cm95IGlzbid0IGNhbGxlZCB3aGVuXHJcbiAgICAvLyB0aGUgZGlhbG9nIGlzIGNsb3NlZCBpbiB0aG9zZSBjYXNlcy5cclxuICAgIGlmICh0aGlzLnByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCkge1xyXG4gICAgICB0aGlzLnByZXZpb3VzbHlGb2N1c2VkRWxlbWVudC5mb2N1cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xlYXIgYW5kIHByZXZpb3VzbHkgbG9hZGVkIGNvbnRlbnRcclxuICAgKiBMb2FkIHRoZSBjb21wb25lbnRcclxuICAgKiBTYXZlIGEgcmVmZXJlbmNlIG9mIHRoZSBsb2FkZWQgY29tcG9uZW50XHJcbiAgICogU2hvdyB0aGUgZGlhbG9nIGFuZCBmYWRlIGluXHJcbiAgICovXHJcbiAgcHVibGljIGFzeW5jIG9wZW48VD4oY29tcG9uZW50OiBUeXBlPERpYWxvZ0NvbnRlbnQ8VD4+IHwgVGVtcGxhdGVSZWY8YW55PiwgY29udGV4dD86IFQsIG9wdGlvbnM/OiBEaWFsb2dPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoIXRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIFxyXG4gICAgICAvLyBDYXB0dXJlIHRoZSBjdXJyZW50bHkgZm9jdXNlZCBlbGVtZW50LCBhbHNvIGxvb2tpbmcgaW4gdGhlIHNoYWRvdyBkb20uIEZvY3VzIGlzIHJlc3RvcmVkIHRvIHRoaXMgZWxlbWVudCBvbmNlIHRoZSBkaWFsb2cgaXNcclxuICAgICAgLy8gZGVzdHJveWVkLiBTZWUgbmdPbkRlc3Ryb3koKS4gV2UgbmVlZCB0byBkbyB0aGlzIGhlcmUgaW4gYWRkaXRpb24gdG8gdGhlIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlIGJlY2F1c2Ugc29tZXRpbWVzIHRoZSBkaWFsb2cnc1xyXG4gICAgICAvLyBjb250ZW50IGlzIGRyYXduIGFuZCBncmFicyBmb2N1cyBiZWZvcmUgdGhlIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlIGlzIGFibGUgdG8gcmVhZCB0aGUgcHJldmlvdXNseSBmb2N1c2VkIGVsZW1lbnQuXHJcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSA8SFRNTEVsZW1lbnQgfCBudWxsPnRoaXMuZG9jdW1lbnRSZWY/LmFjdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIHRoaXMucHJldmlvdXNseUZvY3VzZWRFbGVtZW50ID0gPEhUTUxFbGVtZW50PmFjdGl2ZUVsZW1lbnQ/LnNoYWRvd1Jvb3Q/LmFjdGl2ZUVsZW1lbnQgfHwgYWN0aXZlRWxlbWVudDtcclxuXHJcbiAgICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgICAgaWYgKG9wdGlvbnMuYWxpZ25Ub1RvcCkge1xyXG4gICAgICAgICAgdGhpcy5hbGlnblRvVG9wID0gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChvcHRpb25zLmRpc3BsYXlBc1BhbmVsKSB7XHJcbiAgICAgICAgICB0aGlzLmRpc3BsYXlBc1BhbmVsID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMudHJhbnNwYXJlbnRNYXNrID0gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChvcHRpb25zLnRyYW5zcGFyZW50TWFzayAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICB0aGlzLnRyYW5zcGFyZW50TWFzayA9IG9wdGlvbnMudHJhbnNwYXJlbnRNYXNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKG9wdGlvbnMuY2FuT3BlbkRpYWxvZyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICBjb25zdCBjYW5PcGVuID0gYXdhaXQgb3B0aW9ucy5jYW5PcGVuRGlhbG9nKCk7XHJcbiAgICAgICAgICBpZiAoIWNhbk9wZW4pIHtcclxuICAgICAgICAgICAgdGhpcy5jbG9zZShuZXcgRGlhbG9nUmVzdWx0KGZhbHNlKSk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIHNldCB0aGUgc2l6ZSBiZWZvcmUgb3BlbmluZ1xyXG4gICAgICBpZiAodHlwZW9mIHRoaXMuc2l6ZSA9PT0gJ251bWJlcicpIHtcclxuICAgICAgICB0aGlzLndpZHRoID0gdGhpcy5zaXplO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIFJlc2V0IHRoZSB3aWR0aCBpZiB0aGUgc2l6ZSBpcyBub3QgYSBudW1iZXIuIFRoaXMgaXMgdG8gcHJldmVudCB0aGUgd2lkdGggcHJvcGVydHkgY29uZmxpY3Rpbmcgd2l0aCB0aGUgc2l6ZS5cclxuICAgICAgICB0aGlzLndpZHRoID0gdW5kZWZpbmVkO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLm1pbldpZHRoID0gb3B0aW9ucz8ubWluV2lkdGg7XHJcblxyXG4gICAgICB0aGlzLmZhZGVJbiA9IHRydWU7XHJcbiAgICAgIGlmIChjb21wb25lbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xyXG4gICAgICAgIHRoaXMuY29udGVudENvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcoY29tcG9uZW50KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsZXQgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbnRlbnRDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudEZhY3RvcnkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XHJcblxyXG4gICAgICB0aGlzLm9wZW5EaWFsb2dDb21wb25lbnQ8VD4oY29udGV4dCk7XHJcblxyXG4gICAgICAvLyBPbmNlIHRoZSBhbmltYXRpb24gaXMgY29tcGxldGUgd2UgY2FuIHJlbW92ZSB0aGUgYW5pbWF0aW9uIGNsYXNzIGFuZFxyXG4gICAgICAvLyBlbWl0IHRoZSBvcGVuZWQgZXZlbnQsIGJvdGggdG8gdGhlIGhvc3RpbmcgY29tcG9uZW50IGFuZCB2aWEgRGlhbG9nU2VydmljZVxyXG4gICAgICBhd2FpdCB0aW1lcih0aGlzLmRpc3BsYXlBc1BhbmVsID8gUGFuZWxPcGVuRHVyYXRpb24gOiBEaWFsb2dPcGVuRHVyYXRpb24pLnBpcGUoXHJcbiAgICAgICAgdGFrZSgxKSxcclxuICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgZGlhbG9nSWQgPSB0aGlzLmdldERpYWxvZ0lkKCk7XHJcbiAgICAgICAgICB0aGlzLmZhZGVJbiA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5vcGVuZWQuZW1pdChkaWFsb2dJZCk7XHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UudHJpZ2dlckV2ZW50KG5ldyBEaWFsb2dPcGVuRW5kRXZlbnQodGhpcy5kaWFsb2dPcGVuU3RhcnRFdmVudElkLCBkaWFsb2dJZCkpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICkudG9Qcm9taXNlKCk7XHJcblxyXG4gICAgICB0aGlzLmhhbmRsZUNsb3NlT25SZXNpemUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZhZGUgdGhlIGRpYWxvZyBvdXQgYW5kIGhpZGVcclxuICAgKi9cclxuICBwdWJsaWMgY2xvc2U8VD4ocmVzdWx0PzogRGlhbG9nUmVzdWx0PFQ+KTogdm9pZCB7XHJcbiAgICB0aGlzLmZhZGVPdXQgPSB0cnVlO1xyXG4gICAgY29uc3QgZGlhbG9nSWQgPSB0aGlzLmdldERpYWxvZ0lkKCk7ICAvL2NhbGwgYmVmb3JlIHdpcGluZyBvdXQgdGhlIGNvbnRlbnRcclxuXHJcbiAgICAvLyBXaGVuIHRoZSBmYWRlIG91dCBhbmltYXRpb24gaXMgY29tcGxldGUgd2Ugd2lsbCBoaWRlIHRoZSBkaWFsb2dcclxuICAgIC8vIGFuZCByZW1vdmUgdGhlIGFuaW1hdGlvbiBjbGFzcyBhcyB3ZWxsIGFzIGxldCB0aGUgd29ybGQga25vdyB0aGF0XHJcbiAgICAvLyB3ZSdyZSBjbG9zZWQgc28gdGhleSBjYW4gY29tcGxldGUgYW55IG90aGVyIGNsZWFudXBcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmZhZGVPdXQgPSBmYWxzZTtcclxuICAgICAgdGhpcy5jb250ZW50Q29udGFpbmVyPy5jbGVhcigpO1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHVuZGVmaW5lZDtcclxuICAgICAgdGhpcy5jbG9zZWQuZW1pdChyZXN1bHQpO1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UudHJpZ2dlckV2ZW50KG5ldyBEaWFsb2dDbG9zZUV2ZW50KHRoaXMuZGlhbG9nT3BlblN0YXJ0RXZlbnRJZCwgZGlhbG9nSWQsIHJlc3VsdD8uc2F2ZSwgcmVzdWx0Py5jb250ZXh0KSk7XHJcbiAgICAgIHRoaXMucmVzZXRPcHRpb25zKCk7XHJcbiAgICB9LCB0aGlzLmRpc3BsYXlBc1BhbmVsID8gUGFuZWxDbG9zZUR1cmF0aW9uIDogRGlhbG9nQ2xvc2VEdXJhdGlvbilcclxuICB9XHJcblxyXG4gIC8qKk9wZW4gdGhlIGRpYWxvZyBhbmQgYXR0YWNoIGhhbmRsZXJzIHRvIHRoZSBjYW5jZWwgYW5kIHNhdmUgZXZlbnRzIHRvIGNsb3NlIGl0IGFuZCBub3RpZnkgdGhlIGhvc3RpbmcgcGFnZSAqL1xyXG4gIHByaXZhdGUgb3BlbkRpYWxvZ0NvbXBvbmVudDxUPihjb250ZXh0PzogVCkge1xyXG4gICAgaWYgKHRoaXMuY29tcG9uZW50UmVmICYmIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlKSB7XHJcbiAgICAgIGNvbnN0IGRpYWxvZ0NvbnRlbnQgPSB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBEaWFsb2dDb250ZW50PFQ+O1xyXG5cclxuICAgICAgLy8gT25PcGVuIGlzIG9wdGlvbmFsIC0gY3JlYXRlIGRpYWxvZ3MgZG9uJ3QgbmVjZXNzYXJpbHkgZGVmaW5lIGl0XHJcbiAgICAgIGlmIChkaWFsb2dDb250ZW50Lm9uT3Blbikge1xyXG4gICAgICAgIGRpYWxvZ0NvbnRlbnQub25PcGVuKGNvbnRleHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBkaWFsb2dDb250ZW50Lm9uRGlhbG9nQ2FuY2VsLnBpcGUodGFrZVVudGlsKHRoaXMuY2xvc2VkKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmNsb3NlPFQ+KG5ldyBEaWFsb2dSZXN1bHQ8VD4oZmFsc2UpKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBkaWFsb2dDb250ZW50Lm9uRGlhbG9nU2F2ZS5waXBlKHRha2VVbnRpbCh0aGlzLmNsb3NlZCkpLnN1YnNjcmliZSh2YWwgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xvc2U8VD4obmV3IERpYWxvZ1Jlc3VsdDxUPih0cnVlLCB2YWwpKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXNldCBvcHRpb25zIHNvIHRoZXkgZG9uJ3QgcGVyc2lzdCBuZXh0IHRpbWUgdGhlXHJcbiAgICogcm9vdCBkaWFsb2cgaXMgb3BlbmVkXHJcbiAgICogQGRlcHJlY2F0ZWRcclxuICAgKi9cclxuICBwcml2YXRlIHJlc2V0T3B0aW9ucygpIHtcclxuICAgIHRoaXMuYWxpZ25Ub1RvcCA9IGZhbHNlO1xyXG4gICAgdGhpcy5kaXNwbGF5QXNQYW5lbCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLyoqIElmIHRoZXkgdHVybmVkIG9uIGNsb3NlT25SZXNpemUsIGF1dG9tYXRpY2FsbHkgY2xvc2UgdGhlIGRpYWxvZyBhbnkgdGltZSBzb21lYm9keSByZXNpemVzIHRoZSB3aW5kb3cuXHJcbiAgICAqIFRoaXMgaXMgdXNlZnVsIGZvciByZXNwb25zaXZlIGxheW91dHMgdG8gcHJldmVudCBoYXZpbmcgdGhlIGRpYWxvZ0NvbnRlbnQgb24gdGhlIHNjcmVlbiB0d2ljZSAqL1xyXG4gIHByaXZhdGUgaGFuZGxlQ2xvc2VPblJlc2l6ZSgpIHtcclxuICAgIGlmKHRoaXMub3B0aW9ucyAmJiB0aGlzLm9wdGlvbnMuY2xvc2VPblJlc2l6ZSl7XHJcbiAgICAgIHRoaXMud2luZG93U2VydmljZS5yZXNpemVkIS5waXBlKHRha2VVbnRpbCh0aGlzLmNsb3NlZCksIHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jbG9zZShuZXcgRGlhbG9nUmVzdWx0KGZhbHNlKSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqRXh0cmFjdCB0aGUgZGlhbG9nSWQgZnJvbSB0aGUgZGlhbG9nIGNvbnRlbnQsIGlmIGl0IGhhcyBvbmUuIFRlbXBsYXRlLWJhc2VkIGRpYWxvZ3MgZ2VuZXJhbGx5IGRvbid0LlxyXG4gICAqIFdlIGZhbGwgYmFjayB0byBlbXB0eSBzdHJpbmcgdG8gYWxsb3cgYW55Ym9keSBsaXN0ZW5pbmcgZm9yIGRpYWxvZ0V2ZW50cyB0byBzdGlsbCByZWNvcmQgdGhlIG9wZW4vY2xvc2UgZXZlbiBpZlxyXG4gICAqIHRoZSBkaWFsb2cgaXRzZWxmIGRvZXMgbm90IHNheSB3aGF0IHRoZSBuYW1lIGlzLiBcclxuICAgKi9cclxuICBwcml2YXRlIGdldERpYWxvZ0lkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UmVmPy5pbnN0YW5jZS5kaWFsb2dJZCB8fCAnJztcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -4897,7 +4897,7 @@ DialogGroupComponent.decorators = [
|
|
|
4897
4897
|
{ type: Component, args: [{
|
|
4898
4898
|
selector: 'ec-dialog-group',
|
|
4899
4899
|
template: "<ec-dialog *ngFor=\"let dialog of activeDialogEvents\"\r\n [dialogOpenStartEventId]=\"dialog.eventId\"\r\n [size]=\"dialog.options?.size\"\r\n [content]=\"dialog.content\"\r\n [context]=\"dialog.context\"\r\n [options]=\"dialog.options\"\r\n (opened)=\"dialogOpened(dialog, $event)\"\r\n (closed)=\"dialogClosed(dialog)\">\r\n</ec-dialog>",
|
|
4900
|
-
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){background-color:
|
|
4900
|
+
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}ec-dialog:not(:only-child){--ec-dialog-background-color:transparent}ec-dialog:not(:only-child):last-child,ec-dialog:not(:only-child):nth-last-child(2){--ec-dialog-background-color:var(--ec-background-color-dialog-stacked)}"]
|
|
4901
4901
|
},] }
|
|
4902
4902
|
];
|
|
4903
4903
|
DialogGroupComponent.ctorParameters = () => [
|
|
@@ -4932,6 +4932,7 @@ class DialogComponent {
|
|
|
4932
4932
|
this.fadeOut = false;
|
|
4933
4933
|
this.displayAsPanel = false;
|
|
4934
4934
|
this.alignToTop = false;
|
|
4935
|
+
this.transparentMask = false;
|
|
4935
4936
|
/**
|
|
4936
4937
|
* Defines the width of the dialog (height is auto). Can be a number that will be converted to pixels, or xsmall(320px), small(480px), medium(640px), or large(1024px)
|
|
4937
4938
|
*/
|
|
@@ -4986,6 +4987,10 @@ class DialogComponent {
|
|
|
4986
4987
|
}
|
|
4987
4988
|
if (options.displayAsPanel) {
|
|
4988
4989
|
this.displayAsPanel = true;
|
|
4990
|
+
this.transparentMask = true;
|
|
4991
|
+
}
|
|
4992
|
+
if (options.transparentMask !== undefined) {
|
|
4993
|
+
this.transparentMask = options.transparentMask;
|
|
4989
4994
|
}
|
|
4990
4995
|
if (options.canOpenDialog !== undefined) {
|
|
4991
4996
|
const canOpen = yield options.canOpenDialog();
|
|
@@ -5093,7 +5098,7 @@ DialogComponent.decorators = [
|
|
|
5093
5098
|
{ type: Component, args: [{
|
|
5094
5099
|
selector: 'ec-dialog',
|
|
5095
5100
|
template: '<article [style.width.px]="width" [style.min-width]="minWidth" class="dialog-{{size}}" cdkTrapFocus cdkTrapFocusAutoCapture><ng-template #content></ng-template></article>',
|
|
5096
|
-
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}:host{align-items:center;background-color:var(--ec-background-color
|
|
5101
|
+
styles: ["@-webkit-keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@-webkit-keyframes panelMaskFadeIn{0%{background-color:transparent}to{background-color:var(--ec-dialog-background-color)}}@keyframes panelMaskFadeIn{0%{background-color:transparent}to{background-color:var(--ec-dialog-background-color)}}:host{--ec-dialog-background-color:var(--ec-background-color-dialog);align-items:center;background-color:var(--ec-dialog-background-color);bottom:0;display:none;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--ec-z-index-dialog)}:host.is-open{display:flex}:host.fade-in{-webkit-animation-duration:125ms;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-duration:125ms;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.fade-in,:host.fade-out{-webkit-animation-name:fadeIn;animation-name:fadeIn}:host.fade-out{-webkit-animation-duration:.1s;-webkit-animation-fill-mode:forwards;-webkit-animation-timing-function:ease-in-out;animation-direction:reverse;animation-duration:.1s;animation-fill-mode:forwards;animation-timing-function:ease-in-out}:host.is-panel article{border-bottom:0;border-radius:0;border-right:0;border-top:0;bottom:0;box-shadow:0 0 .5rem var(--ec-color-shadow);max-height:none;position:absolute;right:0;top:0}:host.is-panel.fade-in{-webkit-animation-fill-mode:forwards;-webkit-animation-name:panelMaskFadeIn;animation-fill-mode:forwards;animation-name:panelMaskFadeIn}:host.is-panel.fade-in,:host.is-panel.fade-in article{-webkit-animation-duration:.25s;animation-duration:.25s}:host.is-panel.fade-in article{-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-out;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-out}:host.is-panel.fade-out{-webkit-animation-fill-mode:forwards;-webkit-animation-name:panelMaskFadeIn;animation-direction:reverse;animation-fill-mode:forwards;animation-name:panelMaskFadeIn}:host.is-panel.fade-out article{-webkit-animation-duration:225ms;-webkit-animation-fill-mode:forwards;-webkit-animation-name:slideIn;-webkit-animation-timing-function:ease-in;animation-direction:reverse;animation-duration:225ms;animation-fill-mode:forwards;animation-name:slideIn;animation-timing-function:ease-in}:host.is-top-aligned{align-items:flex-start}:host.is-top-aligned article{margin-top:20vh;min-height:auto}:host.is-transparent{--ec-dialog-background-color:transparent}article{background-clip:padding-box;background-color:var(--ec-background-color-body);border-radius:var(--ec-border-radius-dialog);box-shadow:0 0 .625rem rgba(26,26,35,.2);display:flex;flex:none;max-height:90vh;max-width:90vw;min-height:9rem;overflow:hidden}.dialog-xsmall{width:20rem}.dialog-small{width:30rem}.dialog-medium{width:40rem}.dialog-large{width:50rem}.dialog-xlarge{width:60rem}.dialog-full{width:90vw}"]
|
|
5097
5102
|
},] }
|
|
5098
5103
|
];
|
|
5099
5104
|
DialogComponent.ctorParameters = () => [
|
|
@@ -5108,6 +5113,7 @@ DialogComponent.propDecorators = {
|
|
|
5108
5113
|
fadeOut: [{ type: HostBinding, args: ['class.fade-out',] }],
|
|
5109
5114
|
displayAsPanel: [{ type: HostBinding, args: ['class.is-panel',] }],
|
|
5110
5115
|
alignToTop: [{ type: HostBinding, args: ['class.is-top-aligned',] }],
|
|
5116
|
+
transparentMask: [{ type: HostBinding, args: ['class.is-transparent',] }],
|
|
5111
5117
|
onOverlayClick: [{ type: HostListener, args: ['click', ['$event'],] }],
|
|
5112
5118
|
size: [{ type: Input }],
|
|
5113
5119
|
content: [{ type: Input }],
|