@skyux/popovers 7.5.0 → 7.6.1

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 (38) hide show
  1. package/documentation.json +38 -38
  2. package/esm2020/lib/modules/dropdown/dropdown-item.component.mjs +2 -2
  3. package/esm2020/lib/modules/dropdown/dropdown-menu.component.mjs +3 -3
  4. package/esm2020/lib/modules/dropdown/dropdown.component.mjs +8 -8
  5. package/esm2020/lib/modules/dropdown/types/dropdown-horizontal-alignment.mjs +1 -1
  6. package/esm2020/lib/modules/dropdown/types/dropdown-menu-change.mjs +1 -1
  7. package/esm2020/lib/modules/dropdown/types/dropdown-message-type.mjs +2 -2
  8. package/esm2020/lib/modules/dropdown/types/dropdown-message.mjs +1 -1
  9. package/esm2020/lib/modules/dropdown/types/dropdown-trigger-type.mjs +1 -1
  10. package/esm2020/lib/modules/popover/popover.component.mjs +6 -6
  11. package/esm2020/lib/modules/popover/popover.directive.mjs +3 -3
  12. package/esm2020/lib/modules/popover/types/popover-message-type.mjs +2 -2
  13. package/esm2020/lib/modules/popover/types/popover-trigger.mjs +1 -1
  14. package/esm2020/testing/dropdown/dropdown-fixture.mjs +2 -2
  15. package/esm2020/testing/popover/popover-fixture.mjs +2 -2
  16. package/fesm2015/skyux-popovers-testing.mjs +2 -2
  17. package/fesm2015/skyux-popovers-testing.mjs.map +1 -1
  18. package/fesm2015/skyux-popovers.mjs +19 -19
  19. package/fesm2015/skyux-popovers.mjs.map +1 -1
  20. package/fesm2020/skyux-popovers-testing.mjs +2 -2
  21. package/fesm2020/skyux-popovers-testing.mjs.map +1 -1
  22. package/fesm2020/skyux-popovers.mjs +19 -19
  23. package/fesm2020/skyux-popovers.mjs.map +1 -1
  24. package/lib/modules/dropdown/dropdown-item.component.d.ts +1 -1
  25. package/lib/modules/dropdown/dropdown-menu.component.d.ts +3 -3
  26. package/lib/modules/dropdown/dropdown.component.d.ts +9 -9
  27. package/lib/modules/dropdown/types/dropdown-horizontal-alignment.d.ts +1 -1
  28. package/lib/modules/dropdown/types/dropdown-menu-change.d.ts +3 -3
  29. package/lib/modules/dropdown/types/dropdown-message-type.d.ts +1 -1
  30. package/lib/modules/dropdown/types/dropdown-message.d.ts +1 -1
  31. package/lib/modules/dropdown/types/dropdown-trigger-type.d.ts +1 -1
  32. package/lib/modules/popover/popover.component.d.ts +6 -6
  33. package/lib/modules/popover/popover.directive.d.ts +5 -5
  34. package/lib/modules/popover/types/popover-message-type.d.ts +1 -1
  35. package/lib/modules/popover/types/popover-trigger.d.ts +1 -1
  36. package/package.json +6 -6
  37. package/testing/dropdown/dropdown-fixture.d.ts +1 -1
  38. package/testing/popover/popover-fixture.d.ts +1 -1
@@ -20,12 +20,12 @@ export class SkyDropdownComponent {
20
20
  constructor(changeDetector, affixService, overlayService, logService, themeSvc) {
21
21
  _SkyDropdownComponent_instances.add(this);
22
22
  /**
23
- * Indicates whether to disable the dropdown button.
23
+ * Whether to disable the dropdown button.
24
24
  * @default false
25
25
  */
26
26
  this.disabled = false;
27
27
  /**
28
- * Provides an observable to send commands to the dropdown. The commands should respect
28
+ * The observable that sends commands to the dropdown. The commands should respect
29
29
  * the [[SkyDropdownMessage]] type.
30
30
  * @internal
31
31
  */
@@ -55,7 +55,7 @@ export class SkyDropdownComponent {
55
55
  __classPrivateFieldSet(this, _SkyDropdownComponent_themeSvc, themeSvc, "f");
56
56
  }
57
57
  /**
58
- * Specifies a background color for the dropdown button. Available values are `default`,
58
+ * The background color for the dropdown button. Available values are `default`,
59
59
  * `primary`, and `link`. These values set the background color and hover behavior from the
60
60
  * [secondary and primary button classes](https://developer.blackbaud.com/skyux/components/button) respectively.
61
61
  * @default "default"
@@ -67,7 +67,7 @@ export class SkyDropdownComponent {
67
67
  return __classPrivateFieldGet(this, _SkyDropdownComponent__buttonStyle, "f");
68
68
  }
69
69
  /**
70
- * Specifies the type of button to render as the dropdown's trigger element. To display a button
70
+ * The type of button to render as the dropdown's trigger element. To display a button
71
71
  * with a caret, specify `'select'` and render the button text or icon in a
72
72
  * `sky-dropdown-button` element. To display a round button with an ellipsis, specify
73
73
  * `'context-menu'`.
@@ -86,7 +86,7 @@ export class SkyDropdownComponent {
86
86
  return __classPrivateFieldGet(this, _SkyDropdownComponent__buttonType, "f");
87
87
  }
88
88
  /**
89
- * Indicates whether to close the dropdown when users click away from the menu.
89
+ * Whether to close the dropdown when users click away from the menu.
90
90
  * @default true
91
91
  */
92
92
  set dismissOnBlur(value) {
@@ -96,7 +96,7 @@ export class SkyDropdownComponent {
96
96
  return __classPrivateFieldGet(this, _SkyDropdownComponent__dismissOnBlur, "f");
97
97
  }
98
98
  /**
99
- * Specifies the horizontal alignment of the dropdown menu in relation to the dropdown button.
99
+ * The horizontal alignment of the dropdown menu in relation to the dropdown button.
100
100
  * @default "left"
101
101
  */
102
102
  set horizontalAlignment(value) {
@@ -106,7 +106,7 @@ export class SkyDropdownComponent {
106
106
  return __classPrivateFieldGet(this, _SkyDropdownComponent__horizontalAlignment, "f");
107
107
  }
108
108
  /**
109
- * Specifies how users interact with the dropdown button to expose the dropdown menu.
109
+ * How users interact with the dropdown button to expose the dropdown menu.
110
110
  * We recommend the default `click` value because the `hover` value can pose
111
111
  * [accessibility](https://developer.blackbaud.com/skyux/learn/accessibility) issues
112
112
  * for users on touch devices such as phones and tablets.
@@ -375,4 +375,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImpo
375
375
  static: true,
376
376
  }]
377
377
  }] } });
378
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxRQUFRLEVBQ1IsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsc0JBQXNCLEdBTXZCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUl0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7OztBQUd2RSxNQUFNLG1CQUFtQixHQUFHLFFBQVEsQ0FBQztBQUVyQzs7R0FFRztBQU9ILE1BQU0sT0FBTyxvQkFBb0I7SUFrTS9CLFlBQ0UsY0FBaUMsRUFDakMsWUFBNkIsRUFDN0IsY0FBaUMsRUFDakMsVUFBeUIsRUFDYixRQUEwQjs7UUE1SnhDOzs7V0FHRztRQUVJLGFBQVEsR0FBd0IsS0FBSyxDQUFDO1FBcUM3Qzs7OztXQUlHO1FBRUksa0JBQWEsR0FDbEIsSUFBSSxPQUFPLEVBQXNCLENBQUM7UUErQzdCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FB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LEtBQUs7Z0JBY0MsS0FBSztzQkFEWCxLQUFLO2dCQVFLLG1CQUFtQjtzQkFEN0IsS0FBSztnQkFpQkMsYUFBYTtzQkFEbkIsS0FBSztnQkFRQyxLQUFLO3NCQURYLEtBQUs7Z0JBY0ssT0FBTztzQkFEakIsS0FBSztnQkFxQkssdUJBQXVCO3NCQUhqQyxTQUFTO3VCQUFDLHlCQUF5QixFQUFFO3dCQUNwQyxJQUFJLEVBQUUsVUFBVTtxQkFDakI7Z0JBcUJNLHdCQUF3QjtzQkFKOUIsU0FBUzt1QkFBQywwQkFBMEIsRUFBRTt3QkFDckMsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO2dCQU9VLGFBQWE7c0JBSnZCLFNBQVM7dUJBQUMsZUFBZSxFQUFFO3dCQUMxQixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lBZmZpeEF1dG9GaXRDb250ZXh0LFxuICBTa3lBZmZpeFNlcnZpY2UsXG4gIFNreUFmZml4ZXIsXG4gIFNreUxvZ1NlcnZpY2UsXG4gIFNreU92ZXJsYXlJbnN0YW5jZSxcbiAgU2t5T3ZlcmxheVNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcbmltcG9ydCB7IFNreVRoZW1lU2VydmljZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IFN1YmplY3QsIGZyb21FdmVudCBhcyBvYnNlcnZhYmxlRnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IHBhcnNlQWZmaXhIb3Jpem9udGFsQWxpZ25tZW50IH0gZnJvbSAnLi9kcm9wZG93bi1leHRlbnNpb25zJztcbmltcG9ydCB7IFNreURyb3Bkb3duQnV0dG9uVHlwZSB9IGZyb20gJy4vdHlwZXMvZHJvcGRvd24tYnV0dG9uLXR5cGUnO1xuaW1wb3J0IHsgU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9kcm9wZG93bi1ob3Jpem9udGFsLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lEcm9wZG93bk1lc3NhZ2UgfSBmcm9tICcuL3R5cGVzL2Ryb3Bkb3duLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5RHJvcGRvd25NZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvZHJvcGRvd24tbWVzc2FnZS10eXBlJztcbmltcG9ydCB7IFNreURyb3Bkb3duVHJpZ2dlclR5cGUgfSBmcm9tICcuL3R5cGVzL2Ryb3Bkb3duLXRyaWdnZXItdHlwZSc7XG5cbmNvbnN0IERFRkFVTFRfQlVUVE9OX1RZUEUgPSAnc2VsZWN0JztcblxuLyoqXG4gKiBDcmVhdGVzIGEgZHJvcGRvd24gbWVudSB0aGF0IGRpc3BsYXlzIG1lbnUgaXRlbXMgdGhhdCB1c2VycyBtYXkgc2VsZWN0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgZHJvcGRvd24gYnV0dG9uLiBBdmFpbGFibGUgdmFsdWVzIGFyZSBgZGVmYXVsdGAsXG4gICAqIGBwcmltYXJ5YCwgYW5kIGBsaW5rYC4gVGhlc2UgdmFsdWVzIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBhbmQgaG92ZXIgYmVoYXZpb3IgZnJvbSB0aGVcbiAgICogW3NlY29uZGFyeSBhbmQgcHJpbWFyeSBidXR0b24gY2xhc3Nlc10oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9jb21wb25lbnRzL2J1dHRvbikgcmVzcGVjdGl2ZWx5LlxuICAgKiBAZGVmYXVsdCBcImRlZmF1bHRcIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBidXR0b25TdHlsZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2J1dHRvblN0eWxlID0gdmFsdWUgPz8gJ2RlZmF1bHQnO1xuICB9XG5cbiAgcHVibGljIGdldCBidXR0b25TdHlsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfYnV0dG9uU3R5bGU7XG4gIH1cblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIGJ1dHRvbiB0byByZW5kZXIgYXMgdGhlIGRyb3Bkb3duJ3MgdHJpZ2dlciBlbGVtZW50LiBUbyBkaXNwbGF5IGEgYnV0dG9uXG4gICAqIHdpdGggYSBjYXJldCwgc3BlY2lmeSBgJ3NlbGVjdCdgIGFuZCByZW5kZXIgdGhlIGJ1dHRvbiB0ZXh0IG9yIGljb24gaW4gYVxuICAgKiBgc2t5LWRyb3Bkb3duLWJ1dHRvbmAgZWxlbWVudC4gVG8gZGlzcGxheSBhIHJvdW5kIGJ1dHRvbiB3aXRoIGFuIGVsbGlwc2lzLCBzcGVjaWZ5XG4gICAqIGAnY29udGV4dC1tZW51J2AuXG4gICAqIEBkZWZhdWx0IFwic2VsZWN0XCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYnV0dG9uVHlwZSh2YWx1ZTogU2t5RHJvcGRvd25CdXR0b25UeXBlIHwgc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2J1dHRvblR5cGUgPSB2YWx1ZSA/PyBERUZBVUxUX0JVVFRPTl9UWVBFO1xuXG4gICAgaWYgKHZhbHVlICYmICFbJ3NlbGVjdCcsICdjb250ZXh0LW1lbnUnLCAndGFiJ10uaW5jbHVkZXModmFsdWUpKSB7XG4gICAgICB0aGlzLiNsb2dTZXJ2aWNlLmRlcHJlY2F0ZWQoXG4gICAgICAgICdTa3lEcm9wZG93bkNvbXBvbmVudC5idXR0b25UeXBlIEZvbnQgQXdlc29tZSBpY29uIGNsYXNzIG9wdGlvbicsXG4gICAgICAgIHtcbiAgICAgICAgICBkZXByZWNhdGlvbk1ham9yVmVyc2lvbjogNyxcbiAgICAgICAgICByZXBsYWNlbWVudFJlY29tbWVuZGF0aW9uOlxuICAgICAgICAgICAgJ1NldCBgYnV0dG9uVHlwZWAgdG8gYHNlbGVjdGAgYW5kIHJlbmRlciBhIGA8c2t5LWljb24+YCBlbGVtZW50IHdpdGhpbiB0aGUgYDxza3ktZHJvcGRvd24tYnV0dG9uPmAgZWxlbWVudC4nLFxuICAgICAgICB9XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgYnV0dG9uVHlwZSgpOiBTa3lEcm9wZG93bkJ1dHRvblR5cGUgfCBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfYnV0dG9uVHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBkaXNhYmxlIHRoZSBkcm9wZG93biBidXR0b24uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gY2xvc2UgdGhlIGRyb3Bkb3duIHdoZW4gdXNlcnMgY2xpY2sgYXdheSBmcm9tIHRoZSBtZW51LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NPbkJsdXIodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZGlzbWlzc09uQmx1ciA9IHZhbHVlID8/IHRydWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc21pc3NPbkJsdXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19kaXNtaXNzT25CbHVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyBhbiBBUklBIGxhYmVsIGZvciB0aGUgZHJvcGRvd24uIFRoaXMgc2V0cyB0aGUgZHJvcGRvd24ncyBgYXJpYS1sYWJlbGAgYXR0cmlidXRlXG4gICAqIFt0byBzdXBwb3J0IGFjY2Vzc2liaWxpdHldKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvbGVhcm4vYWNjZXNzaWJpbGl0eSkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd24gbWVudSBpbiByZWxhdGlvbiB0byB0aGUgZHJvcGRvd24gYnV0dG9uLlxuICAgKiBAZGVmYXVsdCBcImxlZnRcIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBob3Jpem9udGFsQWxpZ25tZW50KFxuICAgIHZhbHVlOiBTa3lEcm9wZG93bkhvcml6b250YWxBbGlnbm1lbnQgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy4jX2hvcml6b250YWxBbGlnbm1lbnQgPSB2YWx1ZSA/PyAnbGVmdCc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhvcml6b250YWxBbGlnbm1lbnQoKTogU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50IHtcbiAgICByZXR1cm4gdGhpcy4jX2hvcml6b250YWxBbGlnbm1lbnQ7XG4gIH1cblxuICAvKipcbiAgICogUHJvdmlkZXMgYW4gb2JzZXJ2YWJsZSB0byBzZW5kIGNvbW1hbmRzIHRvIHRoZSBkcm9wZG93bi4gVGhlIGNvbW1hbmRzIHNob3VsZCByZXNwZWN0XG4gICAqIHRoZSBbW1NreURyb3Bkb3duTWVzc2FnZV1dIHR5cGUuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG1lc3NhZ2VTdHJlYW06IFN1YmplY3Q8U2t5RHJvcGRvd25NZXNzYWdlPiB8IHVuZGVmaW5lZCA9XG4gICAgbmV3IFN1YmplY3Q8U2t5RHJvcGRvd25NZXNzYWdlPigpO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSB0aXRsZSB0byBkaXNwbGF5IGluIGEgdG9vbHRpcCB3aGVuIHVzZXJzIGhvdmVyIHRoZSBtb3VzZSBvdmVyIHRoZSBkcm9wZG93biBidXR0b24uXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgdGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGhvdyB1c2VycyBpbnRlcmFjdCB3aXRoIHRoZSBkcm9wZG93biBidXR0b24gdG8gZXhwb3NlIHRoZSBkcm9wZG93biBtZW51LlxuICAgKiBXZSByZWNvbW1lbmQgdGhlIGRlZmF1bHQgYGNsaWNrYCB2YWx1ZSBiZWNhdXNlIHRoZSBgaG92ZXJgIHZhbHVlIGNhbiBwb3NlXG4gICAqIFthY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpIGlzc3Vlc1xuICAgKiBmb3IgdXNlcnMgb24gdG91Y2ggZGV2aWNlcyBzdWNoIGFzIHBob25lcyBhbmQgdGFibGV0cy5cbiAgICogQGRlcHJlY2F0ZWQgV2UgcmVjb21tZW5kIGFnYWluc3QgdXNpbmcgdGhpcyBwcm9wZXJ0eS4gSWYgeW91IGNob29zZSB0byB1c2UgdGhlIGRlcHJlY2F0ZWRcbiAgICogYGhvdmVyYCB2YWx1ZSBhbnl3YXksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBub3QgdXNlIGl0IGluIGNvbWJpbmF0aW9uIHdpdGggdGhlIGB0aXRsZWBcbiAgICogcHJvcGVydHkuXG4gICAqIEBkZWZhdWx0IFwiY2xpY2tcIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB0cmlnZ2VyKHZhbHVlOiBTa3lEcm9wZG93blRyaWdnZXJUeXBlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RyaWdnZXIgPSB2YWx1ZSA/PyAnY2xpY2snO1xuICB9XG5cbiAgcHVibGljIGdldCB0cmlnZ2VyKCk6IFNreURyb3Bkb3duVHJpZ2dlclR5cGUge1xuICAgIHJldHVybiB0aGlzLiNfdHJpZ2dlcjtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgaXNPcGVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy4jX2lzT3BlbiA9IHZhbHVlO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19pc09wZW47XG4gIH1cblxuICBAVmlld0NoaWxkKCdtZW51Q29udGFpbmVyRWxlbWVudFJlZicsIHtcbiAgICByZWFkOiBFbGVtZW50UmVmLFxuICB9KVxuICBwdWJsaWMgc2V0IG1lbnVDb250YWluZXJFbGVtZW50UmVmKHZhbHVlOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLiNkZXN0cm95QWZmaXhlcigpO1xuICAgICAgdGhpcy4jY3JlYXRlQWZmaXhlcih2YWx1ZSk7XG4gICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNNb3VzZUVudGVyID0gZmFsc2U7XG5cbiAgcHVibGljIGlzVmlzaWJsZSA9IGZhbHNlO1xuXG4gIHB1YmxpYyBtZW51SWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgbWVudUFyaWFSb2xlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQFZpZXdDaGlsZCgnbWVudUNvbnRhaW5lclRlbXBsYXRlUmVmJywge1xuICAgIHJlYWQ6IFRlbXBsYXRlUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIG1lbnVDb250YWluZXJUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQ7XG5cbiAgQFZpZXdDaGlsZCgndHJpZ2dlckJ1dHRvbicsIHtcbiAgICByZWFkOiBFbGVtZW50UmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIHNldCB0cmlnZ2VyQnV0dG9uKHZhbHVlOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RyaWdnZXJCdXR0b24gPSB2YWx1ZTtcbiAgICB0aGlzLiNhZGRFdmVudExpc3RlbmVycygpO1xuICB9XG5cbiAgcHVibGljIGdldCB0cmlnZ2VyQnV0dG9uKCk6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfdHJpZ2dlckJ1dHRvbjtcbiAgfVxuXG4gICNhZmZpeGVyOiBTa3lBZmZpeGVyIHwgdW5kZWZpbmVkO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjb3ZlcmxheTogU2t5T3ZlcmxheUluc3RhbmNlIHwgdW5kZWZpbmVkO1xuXG4gICNfYnV0dG9uU3R5bGUgPSAnZGVmYXVsdCc7XG5cbiAgI19idXR0b25UeXBlOiBTa3lEcm9wZG93bkJ1dHRvblR5cGUgfCBzdHJpbmcgPSBERUZBVUxUX0JVVFRPTl9UWVBFO1xuXG4gICNfZGlzbWlzc09uQmx1ciA9IHRydWU7XG5cbiAgI19ob3Jpem9udGFsQWxpZ25tZW50OiBTa3lEcm9wZG93bkhvcml6b250YWxBbGlnbm1lbnQgPSAnbGVmdCc7XG5cbiAgI19pc09wZW4gPSBmYWxzZTtcblxuICAjX3RyaWdnZXI6IFNreURyb3Bkb3duVHJpZ2dlclR5cGUgPSAnY2xpY2snO1xuXG4gICNfdHJpZ2dlckJ1dHRvbjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICAjcG9zaXRpb25UaW1lb3V0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgI2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgI2FmZml4U2VydmljZTogU2t5QWZmaXhTZXJ2aWNlO1xuICAjb3ZlcmxheVNlcnZpY2U6IFNreU92ZXJsYXlTZXJ2aWNlO1xuICAjbG9nU2VydmljZTogU2t5TG9nU2VydmljZTtcbiAgI3RoZW1lU3ZjOiBTa3lUaGVtZVNlcnZpY2UgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIGFmZml4U2VydmljZTogU2t5QWZmaXhTZXJ2aWNlLFxuICAgIG92ZXJsYXlTZXJ2aWNlOiBTa3lPdmVybGF5U2VydmljZSxcbiAgICBsb2dTZXJ2aWNlOiBTa3lMb2dTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHRoZW1lU3ZjPzogU2t5VGhlbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yID0gY2hhbmdlRGV0ZWN0b3I7XG4gICAgdGhpcy4jYWZmaXhTZXJ2aWNlID0gYWZmaXhTZXJ2aWNlO1xuICAgIHRoaXMuI292ZXJsYXlTZXJ2aWNlID0gb3ZlcmxheVNlcnZpY2U7XG4gICAgdGhpcy4jbG9nU2VydmljZSA9IGxvZ1NlcnZpY2U7XG4gICAgdGhpcy4jdGhlbWVTdmMgPSB0aGVtZVN2YztcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2VTdHJlYW1cbiAgICAgID8ucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChtZXNzYWdlOiBTa3lEcm9wZG93bk1lc3NhZ2UpID0+IHtcbiAgICAgICAgdGhpcy4jaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlKTtcbiAgICAgIH0pO1xuXG4gICAgLy8gTG9hZCBwcm9wZXIgaWNvbnMgb24gdGhlbWUgY2hhbmdlLlxuICAgIHRoaXMuI3RoZW1lU3ZjPy5zZXR0aW5nc0NoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jZGVzdHJveUFmZml4ZXIoKTtcbiAgICB0aGlzLiNkZXN0cm95T3ZlcmxheSgpO1xuICAgIGNsZWFyVGltZW91dCh0aGlzLiNwb3NpdGlvblRpbWVvdXQpO1xuXG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2FkZEV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBjb25zdCBidXR0b25FbGVtZW50ID0gdGhpcy50cmlnZ2VyQnV0dG9uPy5uYXRpdmVFbGVtZW50O1xuICAgIGlmIChidXR0b25FbGVtZW50KSB7XG4gICAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGJ1dHRvbkVsZW1lbnQsICdjbGljaycpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5PcGVuKTtcbiAgICAgICAgICAgIC8vIFdhaXQgZm9yIGRyb3Bkb3duIHRvIG9wZW4sIHRoZW4gc2V0IGZvY3VzIG9uIGZpcnN0IGl0ZW0uXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5Gb2N1c0ZpcnN0SXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBvYnNlcnZhYmxlRnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGJ1dHRvbkVsZW1lbnQsICdrZXlkb3duJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICAgIGNhc2UgJ2VzY2FwZSc6XG4gICAgICAgICAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgICAgICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkZvY3VzVHJpZ2dlckJ1dHRvbik7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ3RhYic6XG4gICAgICAgICAgICAgIGlmICh0aGlzLmlzT3BlbiAmJiB0aGlzLmRpc21pc3NPbkJsdXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAnYXJyb3d1cCc6XG4gICAgICAgICAgICBjYXNlICd1cCc6XG4gICAgICAgICAgICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLk9wZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuRm9jdXNMYXN0SXRlbSk7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSAnZW50ZXInOlxuICAgICAgICAgICAgY2FzZSAnYXJyb3dkb3duJzpcbiAgICAgICAgICAgIGNhc2UgJ2Rvd24nOlxuICAgICAgICAgICAgY2FzZSAnICc6IC8vIFNwYWNlYmFyLlxuICAgICAgICAgICAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlKi9cbiAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuT3Blbik7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5Gb2N1c0ZpcnN0SXRlbSk7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGJ1dHRvbkVsZW1lbnQsICdtb3VzZWVudGVyJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmlzTW91c2VFbnRlciA9IHRydWU7XG4gICAgICAgICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5PcGVuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGJ1dHRvbkVsZW1lbnQsICdtb3VzZWxlYXZlJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmlzTW91c2VFbnRlciA9IGZhbHNlO1xuICAgICAgICAgIGlmICh0aGlzLnRyaWdnZXIgPT09ICdob3ZlcicpIHtcbiAgICAgICAgICAgIC8vIEFsbG93IHRoZSBkcm9wZG93biBtZW51IHRvIHNldCBpc01vdXNlRW50ZXIgYmVmb3JlIGNoZWNraW5nIGlmIHRoZSBjbG9zZSBhY3Rpb25cbiAgICAgICAgICAgIC8vIHNob3VsZCBiZSB0YWtlbi5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNNb3VzZUVudGVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgI2NyZWF0ZU92ZXJsYXkoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI292ZXJsYXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tZW51Q29udGFpbmVyVGVtcGxhdGVSZWYpIHtcbiAgICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLiNvdmVybGF5U2VydmljZS5jcmVhdGUoe1xuICAgICAgICBlbmFibGVTY3JvbGw6IHRydWUsXG4gICAgICAgIGVuYWJsZVBvaW50ZXJFdmVudHM6IHRydWUsXG4gICAgICB9KTtcblxuICAgICAgb3ZlcmxheS5hdHRhY2hUZW1wbGF0ZSh0aGlzLm1lbnVDb250YWluZXJUZW1wbGF0ZVJlZik7XG5cbiAgICAgIG92ZXJsYXkuYmFja2Ryb3BDbGlja1xuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmRpc21pc3NPbkJsdXIpIHtcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIHRoaXMuI292ZXJsYXkgPSBvdmVybGF5O1xuICAgIH1cbiAgfVxuXG4gICNkZXN0cm95QWZmaXhlcigpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlKi9cbiAgICBpZiAodGhpcy4jYWZmaXhlcikge1xuICAgICAgdGhpcy4jYWZmaXhlci5kZXN0cm95KCk7XG4gICAgICB0aGlzLiNhZmZpeGVyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gICNkZXN0cm95T3ZlcmxheSgpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlKi9cbiAgICBpZiAodGhpcy4jb3ZlcmxheSkge1xuICAgICAgdGhpcy4jb3ZlcmxheVNlcnZpY2UuY2xvc2UodGhpcy4jb3ZlcmxheSk7XG4gICAgICB0aGlzLiNvdmVybGF5ID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gICNjcmVhdGVBZmZpeGVyKG1lbnVDb250YWluZXJFbGVtZW50UmVmOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgY29uc3QgYWZmaXhlciA9IHRoaXMuI2FmZml4U2VydmljZS5jcmVhdGVBZmZpeGVyKG1lbnVDb250YWluZXJFbGVtZW50UmVmKTtcblxuICAgIGFmZml4ZXIucGxhY2VtZW50Q2hhbmdlXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHtcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSBjaGFuZ2UucGxhY2VtZW50ICE9PSBudWxsO1xuICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy4jYWZmaXhlciA9IGFmZml4ZXI7XG4gIH1cblxuICAjaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlOiBTa3lEcm9wZG93bk1lc3NhZ2UpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICAgIGNhc2UgU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5PcGVuOlxuICAgICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLiNwb3NpdGlvbkRyb3Bkb3duTWVudSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZTpcbiAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMuI2Rlc3Ryb3lPdmVybGF5KCk7XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLlJlcG9zaXRpb246XG4gICAgICAgICAgLy8gT25seSByZXBvc2l0aW9uIHRoZSBkcm9wZG93biBpZiBpdCBpcyBhbHJlYWR5IG9wZW4uXG4gICAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgdGhpcy4jYWZmaXhlcikge1xuICAgICAgICAgICAgdGhpcy4jYWZmaXhlci5yZWFmZml4KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5Gb2N1c1RyaWdnZXJCdXR0b246XG4gICAgICAgICAgdGhpcy50cmlnZ2VyQnV0dG9uPy5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3NlbmRNZXNzYWdlKHR5cGU6IFNreURyb3Bkb3duTWVzc2FnZVR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2VTdHJlYW0/Lm5leHQoeyB0eXBlIH0pO1xuICB9XG5cbiAgI3Bvc2l0aW9uRHJvcGRvd25NZW51KCk6IHZvaWQge1xuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgdGhpcy4jY3JlYXRlT3ZlcmxheSgpO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuXG4gICAgLy8gRXhwbGljaXRseSBkZWNsYXJlIHRoZSBgc2V0VGltZW91dGAgZnJvbSB0aGUgYHdpbmRvd2Agb2JqZWN0IGluIG9yZGVyIHRvIHVzZSB0aGUgRE9NIHR5cGluZ3NcbiAgICAvLyBkdXJpbmcgYSB1bml0IHRlc3QgKGluc3RlYWQgb2YgY29uZnVzaW5nIHRoaXMgd2l0aCBOb2RlJ3MgYHNldFRpbWVvdXRgKS5cbiAgICB0aGlzLiNwb3NpdGlvblRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy4jYWZmaXhlcikge1xuICAgICAgICB0aGlzLiNhZmZpeGVyLmFmZml4VG8odGhpcy50cmlnZ2VyQnV0dG9uPy5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgICAgYXV0b0ZpdENvbnRleHQ6IFNreUFmZml4QXV0b0ZpdENvbnRleHQuVmlld3BvcnQsXG4gICAgICAgICAgZW5hYmxlQXV0b0ZpdDogdHJ1ZSxcbiAgICAgICAgICBob3Jpem9udGFsQWxpZ25tZW50OiBwYXJzZUFmZml4SG9yaXpvbnRhbEFsaWdubWVudChcbiAgICAgICAgICAgIHRoaXMuaG9yaXpvbnRhbEFsaWdubWVudFxuICAgICAgICAgICksXG4gICAgICAgICAgaXNTdGlja3k6IHRydWUsXG4gICAgICAgICAgcGxhY2VtZW50OiAnYmVsb3cnLFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LWRyb3Bkb3duXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cInNreS1idG4gc2t5LWRyb3Bkb3duLWJ1dHRvblwiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc09wZW5cIlxuICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiaXNPcGVuID8gbWVudUlkIDogbnVsbFwiXG4gICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJtZW51QXJpYVJvbGVcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiXG4gICAgICBsYWJlbCB8fCAoJ3NreXV4X2Ryb3Bkb3duX2NvbnRleHRfbWVudV9kZWZhdWx0X2xhYmVsJyB8IHNreUxpYlJlc291cmNlcylcbiAgICBcIlxuICAgIFthdHRyLnRpdGxlXT1cInRpdGxlXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtuZ0NsYXNzXT1cIltcbiAgICAgICdza3ktZHJvcGRvd24tYnV0dG9uLXR5cGUtJyArIGJ1dHRvblR5cGUsXG4gICAgICAnc2t5LWJ0bi0nICsgYnV0dG9uU3R5bGVcbiAgICBdXCJcbiAgICAjdHJpZ2dlckJ1dHRvblxuICA+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiYnV0dG9uVHlwZVwiPlxuICAgICAgPG5nLXRlbXBsYXRlIG5nU3dpdGNoQ2FzZT1cImNvbnRleHQtbWVudVwiPlxuICAgICAgICA8c2t5LWljb24gKnNreVRoZW1lSWY9XCInZGVmYXVsdCdcIiBpY29uPVwiZWxsaXBzaXMtaFwiPjwvc2t5LWljb24+XG4gICAgICAgIDxza3ktaWNvblxuICAgICAgICAgICpza3lUaGVtZUlmPVwiJ21vZGVybidcIlxuICAgICAgICAgIGljb249XCJlbGxpcHNpc1wiXG4gICAgICAgICAgaWNvblR5cGU9XCJza3l1eFwiXG4gICAgICAgID48L3NreS1pY29uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgPG5nLXRlbXBsYXRlIG5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICpuZ0lmPVwiYnV0dG9uVHlwZSA9PT0gJ3NlbGVjdCcgfHwgYnV0dG9uVHlwZSA9PT0gJ3RhYicgfHwgIWJ1dHRvblR5cGVcIlxuICAgICAgICAgIGNsYXNzPVwic2t5LWRyb3Bkb3duLWJ1dHRvbi1jb250YWluZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNreS1kcm9wZG93bi1idXR0b24tY29udGVudC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kcm9wZG93bi1idXR0b25cIj4gPC9uZy1jb250ZW50PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJza3ktZHJvcGRvd24tYnV0dG9uLWljb24tY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8c2t5LWljb25cbiAgICAgICAgICAgICAgKnNreVRoZW1lSWY9XCInZGVmYXVsdCdcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNreS1kcm9wZG93bi1jYXJldFwiXG4gICAgICAgICAgICAgIGljb249XCJjYXJldC1kb3duXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvc2t5LWljb24+XG4gICAgICAgICAgICA8c2t5LWljb25cbiAgICAgICAgICAgICAgKnNreVRoZW1lSWY9XCInbW9kZXJuJ1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwic2t5LWRyb3Bkb3duLWNhcmV0XCJcbiAgICAgICAgICAgICAgaWNvbj1cImNoZXZyb24tZG93blwiXG4gICAgICAgICAgICAgIGljb25UeXBlPVwic2t5dXhcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9za3ktaWNvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdJZj1cImJ1dHRvblR5cGUgIT09ICdzZWxlY3QnICYmIGJ1dHRvblR5cGUgIT09ICd0YWInICYmIGJ1dHRvblR5cGVcIlxuICAgICAgICA+XG4gICAgICAgICAgPHNreS1pY29uIFtpY29uXT1cImJ1dHRvblR5cGVcIiBzaXplPVwibGdcIj48L3NreS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbWVudUNvbnRhaW5lclRlbXBsYXRlUmVmPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJza3ktZHJvcGRvd24tbWVudS1jb250YWluZXJcIlxuICAgIFtjbGFzcy5oaWRkZW5dPVwiIWlzVmlzaWJsZVwiXG4gICAgI21lbnVDb250YWluZXJFbGVtZW50UmVmXG4gID5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZHJvcGRvd24tbWVudVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
378
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLEtBQUssRUFHTCxRQUFRLEVBQ1IsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsc0JBQXNCLEdBTXZCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUl0RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7OztBQUd2RSxNQUFNLG1CQUFtQixHQUFHLFFBQVEsQ0FBQztBQUVyQzs7R0FFRztBQU9ILE1BQU0sT0FBTyxvQkFBb0I7SUFrTS9CLFlBQ0UsY0FBaUMsRUFDakMsWUFBNkIsRUFDN0IsY0FBaUMsRUFDakMsVUFBeUIsRUFDYixRQUEwQjs7UUE1SnhDOzs7V0FHRztRQUVJLGFBQVEsR0FBd0IsS0FBSyxDQUFDO1FBcUM3Qzs7OztXQUlHO1FBRUksa0JBQWEsR0FDbEIsSUFBSSxPQUFPLEVBQXNCLENBQUM7UUErQzdCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FB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LEtBQUs7Z0JBY0MsS0FBSztzQkFEWCxLQUFLO2dCQVFLLG1CQUFtQjtzQkFEN0IsS0FBSztnQkFpQkMsYUFBYTtzQkFEbkIsS0FBSztnQkFRQyxLQUFLO3NCQURYLEtBQUs7Z0JBY0ssT0FBTztzQkFEakIsS0FBSztnQkFxQkssdUJBQXVCO3NCQUhqQyxTQUFTO3VCQUFDLHlCQUF5QixFQUFFO3dCQUNwQyxJQUFJLEVBQUUsVUFBVTtxQkFDakI7Z0JBcUJNLHdCQUF3QjtzQkFKOUIsU0FBUzt1QkFBQywwQkFBMEIsRUFBRTt3QkFDckMsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE1BQU0sRUFBRSxJQUFJO3FCQUNiO2dCQU9VLGFBQWE7c0JBSnZCLFNBQVM7dUJBQUMsZUFBZSxFQUFFO3dCQUMxQixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTa3lBZmZpeEF1dG9GaXRDb250ZXh0LFxuICBTa3lBZmZpeFNlcnZpY2UsXG4gIFNreUFmZml4ZXIsXG4gIFNreUxvZ1NlcnZpY2UsXG4gIFNreU92ZXJsYXlJbnN0YW5jZSxcbiAgU2t5T3ZlcmxheVNlcnZpY2UsXG59IGZyb20gJ0Bza3l1eC9jb3JlJztcbmltcG9ydCB7IFNreVRoZW1lU2VydmljZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IFN1YmplY3QsIGZyb21FdmVudCBhcyBvYnNlcnZhYmxlRnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IHBhcnNlQWZmaXhIb3Jpem9udGFsQWxpZ25tZW50IH0gZnJvbSAnLi9kcm9wZG93bi1leHRlbnNpb25zJztcbmltcG9ydCB7IFNreURyb3Bkb3duQnV0dG9uVHlwZSB9IGZyb20gJy4vdHlwZXMvZHJvcGRvd24tYnV0dG9uLXR5cGUnO1xuaW1wb3J0IHsgU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9kcm9wZG93bi1ob3Jpem9udGFsLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lEcm9wZG93bk1lc3NhZ2UgfSBmcm9tICcuL3R5cGVzL2Ryb3Bkb3duLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2t5RHJvcGRvd25NZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvZHJvcGRvd24tbWVzc2FnZS10eXBlJztcbmltcG9ydCB7IFNreURyb3Bkb3duVHJpZ2dlclR5cGUgfSBmcm9tICcuL3R5cGVzL2Ryb3Bkb3duLXRyaWdnZXItdHlwZSc7XG5cbmNvbnN0IERFRkFVTFRfQlVUVE9OX1RZUEUgPSAnc2VsZWN0JztcblxuLyoqXG4gKiBDcmVhdGVzIGEgZHJvcGRvd24gbWVudSB0aGF0IGRpc3BsYXlzIG1lbnUgaXRlbXMgdGhhdCB1c2VycyBtYXkgc2VsZWN0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGRyb3Bkb3duIGJ1dHRvbi4gQXZhaWxhYmxlIHZhbHVlcyBhcmUgYGRlZmF1bHRgLFxuICAgKiBgcHJpbWFyeWAsIGFuZCBgbGlua2AuIFRoZXNlIHZhbHVlcyBzZXQgdGhlIGJhY2tncm91bmQgY29sb3IgYW5kIGhvdmVyIGJlaGF2aW9yIGZyb20gdGhlXG4gICAqIFtzZWNvbmRhcnkgYW5kIHByaW1hcnkgYnV0dG9uIGNsYXNzZXNdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9idXR0b24pIHJlc3BlY3RpdmVseS5cbiAgICogQGRlZmF1bHQgXCJkZWZhdWx0XCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYnV0dG9uU3R5bGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19idXR0b25TdHlsZSA9IHZhbHVlID8/ICdkZWZhdWx0JztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYnV0dG9uU3R5bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jX2J1dHRvblN0eWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIGJ1dHRvbiB0byByZW5kZXIgYXMgdGhlIGRyb3Bkb3duJ3MgdHJpZ2dlciBlbGVtZW50LiBUbyBkaXNwbGF5IGEgYnV0dG9uXG4gICAqIHdpdGggYSBjYXJldCwgc3BlY2lmeSBgJ3NlbGVjdCdgIGFuZCByZW5kZXIgdGhlIGJ1dHRvbiB0ZXh0IG9yIGljb24gaW4gYVxuICAgKiBgc2t5LWRyb3Bkb3duLWJ1dHRvbmAgZWxlbWVudC4gVG8gZGlzcGxheSBhIHJvdW5kIGJ1dHRvbiB3aXRoIGFuIGVsbGlwc2lzLCBzcGVjaWZ5XG4gICAqIGAnY29udGV4dC1tZW51J2AuXG4gICAqIEBkZWZhdWx0IFwic2VsZWN0XCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgYnV0dG9uVHlwZSh2YWx1ZTogU2t5RHJvcGRvd25CdXR0b25UeXBlIHwgc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2J1dHRvblR5cGUgPSB2YWx1ZSA/PyBERUZBVUxUX0JVVFRPTl9UWVBFO1xuXG4gICAgaWYgKHZhbHVlICYmICFbJ3NlbGVjdCcsICdjb250ZXh0LW1lbnUnLCAndGFiJ10uaW5jbHVkZXModmFsdWUpKSB7XG4gICAgICB0aGlzLiNsb2dTZXJ2aWNlLmRlcHJlY2F0ZWQoXG4gICAgICAgICdTa3lEcm9wZG93bkNvbXBvbmVudC5idXR0b25UeXBlIEZvbnQgQXdlc29tZSBpY29uIGNsYXNzIG9wdGlvbicsXG4gICAgICAgIHtcbiAgICAgICAgICBkZXByZWNhdGlvbk1ham9yVmVyc2lvbjogNyxcbiAgICAgICAgICByZXBsYWNlbWVudFJlY29tbWVuZGF0aW9uOlxuICAgICAgICAgICAgJ1NldCBgYnV0dG9uVHlwZWAgdG8gYHNlbGVjdGAgYW5kIHJlbmRlciBhIGA8c2t5LWljb24+YCBlbGVtZW50IHdpdGhpbiB0aGUgYDxza3ktZHJvcGRvd24tYnV0dG9uPmAgZWxlbWVudC4nLFxuICAgICAgICB9XG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgYnV0dG9uVHlwZSgpOiBTa3lEcm9wZG93bkJ1dHRvblR5cGUgfCBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfYnV0dG9uVHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGRpc2FibGUgdGhlIGRyb3Bkb3duIGJ1dHRvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNsb3NlIHRoZSBkcm9wZG93biB3aGVuIHVzZXJzIGNsaWNrIGF3YXkgZnJvbSB0aGUgbWVudS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNtaXNzT25CbHVyKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc21pc3NPbkJsdXIgPSB2YWx1ZSA/PyB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNtaXNzT25CbHVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZGlzbWlzc09uQmx1cjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJJQSBsYWJlbCBmb3IgdGhlIGRyb3Bkb3duLiBUaGlzIHNldHMgdGhlIGRyb3Bkb3duJ3MgYGFyaWEtbGFiZWxgIGF0dHJpYnV0ZVxuICAgKiBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGxhYmVsOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd24gbWVudSBpbiByZWxhdGlvbiB0byB0aGUgZHJvcGRvd24gYnV0dG9uLlxuICAgKiBAZGVmYXVsdCBcImxlZnRcIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBob3Jpem9udGFsQWxpZ25tZW50KFxuICAgIHZhbHVlOiBTa3lEcm9wZG93bkhvcml6b250YWxBbGlnbm1lbnQgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy4jX2hvcml6b250YWxBbGlnbm1lbnQgPSB2YWx1ZSA/PyAnbGVmdCc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhvcml6b250YWxBbGlnbm1lbnQoKTogU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50IHtcbiAgICByZXR1cm4gdGhpcy4jX2hvcml6b250YWxBbGlnbm1lbnQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG9ic2VydmFibGUgdGhhdCBzZW5kcyBjb21tYW5kcyB0byB0aGUgZHJvcGRvd24uIFRoZSBjb21tYW5kcyBzaG91bGQgcmVzcGVjdFxuICAgKiB0aGUgW1tTa3lEcm9wZG93bk1lc3NhZ2VdXSB0eXBlLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtZXNzYWdlU3RyZWFtOiBTdWJqZWN0PFNreURyb3Bkb3duTWVzc2FnZT4gfCB1bmRlZmluZWQgPVxuICAgIG5ldyBTdWJqZWN0PFNreURyb3Bkb3duTWVzc2FnZT4oKTtcblxuICAvKipcbiAgICogVGhlIHRpdGxlIHRvIGRpc3BsYXkgaW4gYSB0b29sdGlwIHdoZW4gdXNlcnMgaG92ZXIgdGhlIG1vdXNlIG92ZXIgdGhlIGRyb3Bkb3duIGJ1dHRvbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0aXRsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBIb3cgdXNlcnMgaW50ZXJhY3Qgd2l0aCB0aGUgZHJvcGRvd24gYnV0dG9uIHRvIGV4cG9zZSB0aGUgZHJvcGRvd24gbWVudS5cbiAgICogV2UgcmVjb21tZW5kIHRoZSBkZWZhdWx0IGBjbGlja2AgdmFsdWUgYmVjYXVzZSB0aGUgYGhvdmVyYCB2YWx1ZSBjYW4gcG9zZVxuICAgKiBbYWNjZXNzaWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9sZWFybi9hY2Nlc3NpYmlsaXR5KSBpc3N1ZXNcbiAgICogZm9yIHVzZXJzIG9uIHRvdWNoIGRldmljZXMgc3VjaCBhcyBwaG9uZXMgYW5kIHRhYmxldHMuXG4gICAqIEBkZXByZWNhdGVkIFdlIHJlY29tbWVuZCBhZ2FpbnN0IHVzaW5nIHRoaXMgcHJvcGVydHkuIElmIHlvdSBjaG9vc2UgdG8gdXNlIHRoZSBkZXByZWNhdGVkXG4gICAqIGBob3ZlcmAgdmFsdWUgYW55d2F5LCB3ZSByZWNvbW1lbmQgdGhhdCB5b3Ugbm90IHVzZSBpdCBpbiBjb21iaW5hdGlvbiB3aXRoIHRoZSBgdGl0bGVgXG4gICAqIHByb3BlcnR5LlxuICAgKiBAZGVmYXVsdCBcImNsaWNrXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdHJpZ2dlcih2YWx1ZTogU2t5RHJvcGRvd25UcmlnZ2VyVHlwZSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI190cmlnZ2VyID0gdmFsdWUgPz8gJ2NsaWNrJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdHJpZ2dlcigpOiBTa3lEcm9wZG93blRyaWdnZXJUeXBlIHtcbiAgICByZXR1cm4gdGhpcy4jX3RyaWdnZXI7XG4gIH1cblxuICBwdWJsaWMgc2V0IGlzT3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuI19pc09wZW4gPSB2YWx1ZTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfaXNPcGVuO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnbWVudUNvbnRhaW5lckVsZW1lbnRSZWYnLCB7XG4gICAgcmVhZDogRWxlbWVudFJlZixcbiAgfSlcbiAgcHVibGljIHNldCBtZW51Q29udGFpbmVyRWxlbWVudFJlZih2YWx1ZTogRWxlbWVudFJlZiB8IHVuZGVmaW5lZCkge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy4jZGVzdHJveUFmZml4ZXIoKTtcbiAgICAgIHRoaXMuI2NyZWF0ZUFmZml4ZXIodmFsdWUpO1xuICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlzTW91c2VFbnRlciA9IGZhbHNlO1xuXG4gIHB1YmxpYyBpc1Zpc2libGUgPSBmYWxzZTtcblxuICBwdWJsaWMgbWVudUlkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIG1lbnVBcmlhUm9sZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ21lbnVDb250YWluZXJUZW1wbGF0ZVJlZicsIHtcbiAgICByZWFkOiBUZW1wbGF0ZVJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyBtZW51Q29udGFpbmVyVGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgdW5kZWZpbmVkO1xuXG4gIEBWaWV3Q2hpbGQoJ3RyaWdnZXJCdXR0b24nLCB7XG4gICAgcmVhZDogRWxlbWVudFJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyBzZXQgdHJpZ2dlckJ1dHRvbih2YWx1ZTogRWxlbWVudFJlZiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI190cmlnZ2VyQnV0dG9uID0gdmFsdWU7XG4gICAgdGhpcy4jYWRkRXZlbnRMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdHJpZ2dlckJ1dHRvbigpOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3RyaWdnZXJCdXR0b247XG4gIH1cblxuICAjYWZmaXhlcjogU2t5QWZmaXhlciB8IHVuZGVmaW5lZDtcblxuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgI292ZXJsYXk6IFNreU92ZXJsYXlJbnN0YW5jZSB8IHVuZGVmaW5lZDtcblxuICAjX2J1dHRvblN0eWxlID0gJ2RlZmF1bHQnO1xuXG4gICNfYnV0dG9uVHlwZTogU2t5RHJvcGRvd25CdXR0b25UeXBlIHwgc3RyaW5nID0gREVGQVVMVF9CVVRUT05fVFlQRTtcblxuICAjX2Rpc21pc3NPbkJsdXIgPSB0cnVlO1xuXG4gICNfaG9yaXpvbnRhbEFsaWdubWVudDogU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50ID0gJ2xlZnQnO1xuXG4gICNfaXNPcGVuID0gZmFsc2U7XG5cbiAgI190cmlnZ2VyOiBTa3lEcm9wZG93blRyaWdnZXJUeXBlID0gJ2NsaWNrJztcblxuICAjX3RyaWdnZXJCdXR0b246IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgI3Bvc2l0aW9uVGltZW91dDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG4gICNhZmZpeFNlcnZpY2U6IFNreUFmZml4U2VydmljZTtcbiAgI292ZXJsYXlTZXJ2aWNlOiBTa3lPdmVybGF5U2VydmljZTtcbiAgI2xvZ1NlcnZpY2U6IFNreUxvZ1NlcnZpY2U7XG4gICN0aGVtZVN2YzogU2t5VGhlbWVTZXJ2aWNlIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBhZmZpeFNlcnZpY2U6IFNreUFmZml4U2VydmljZSxcbiAgICBvdmVybGF5U2VydmljZTogU2t5T3ZlcmxheVNlcnZpY2UsXG4gICAgbG9nU2VydmljZTogU2t5TG9nU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSB0aGVtZVN2Yz86IFNreVRoZW1lU2VydmljZVxuICApIHtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvciA9IGNoYW5nZURldGVjdG9yO1xuICAgIHRoaXMuI2FmZml4U2VydmljZSA9IGFmZml4U2VydmljZTtcbiAgICB0aGlzLiNvdmVybGF5U2VydmljZSA9IG92ZXJsYXlTZXJ2aWNlO1xuICAgIHRoaXMuI2xvZ1NlcnZpY2UgPSBsb2dTZXJ2aWNlO1xuICAgIHRoaXMuI3RoZW1lU3ZjID0gdGhlbWVTdmM7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtXG4gICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgobWVzc2FnZTogU2t5RHJvcGRvd25NZXNzYWdlKSA9PiB7XG4gICAgICAgIHRoaXMuI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZSk7XG4gICAgICB9KTtcblxuICAgIC8vIExvYWQgcHJvcGVyIGljb25zIG9uIHRoZW1lIGNoYW5nZS5cbiAgICB0aGlzLiN0aGVtZVN2Yz8uc2V0dGluZ3NDaGFuZ2VcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI2Rlc3Ryb3lBZmZpeGVyKCk7XG4gICAgdGhpcy4jZGVzdHJveU92ZXJsYXkoKTtcbiAgICBjbGVhclRpbWVvdXQodGhpcy4jcG9zaXRpb25UaW1lb3V0KTtcblxuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gICNhZGRFdmVudExpc3RlbmVycygpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY29uc3QgYnV0dG9uRWxlbWVudCA9IHRoaXMudHJpZ2dlckJ1dHRvbj8ubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoYnV0dG9uRWxlbWVudCkge1xuICAgICAgb2JzZXJ2YWJsZUZyb21FdmVudChidXR0b25FbGVtZW50LCAnY2xpY2snKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuT3Blbik7XG4gICAgICAgICAgICAvLyBXYWl0IGZvciBkcm9wZG93biB0byBvcGVuLCB0aGVuIHNldCBmb2N1cyBvbiBmaXJzdCBpdGVtLlxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuRm9jdXNGaXJzdEl0ZW0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgb2JzZXJ2YWJsZUZyb21FdmVudDxLZXlib2FyZEV2ZW50PihidXR0b25FbGVtZW50LCAna2V5ZG93bicpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICBjb25zdCBrZXkgPSBldmVudC5rZXkudG9Mb3dlckNhc2UoKTtcblxuICAgICAgICAgIHN3aXRjaCAoa2V5KSB7XG4gICAgICAgICAgICBjYXNlICdlc2NhcGUnOlxuICAgICAgICAgICAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlKi9cbiAgICAgICAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5Gb2N1c1RyaWdnZXJCdXR0b24pO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICBjYXNlICd0YWInOlxuICAgICAgICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgdGhpcy5kaXNtaXNzT25CbHVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ2Fycm93dXAnOlxuICAgICAgICAgICAgY2FzZSAndXAnOlxuICAgICAgICAgICAgICBpZiAoIXRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5PcGVuKTtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkZvY3VzTGFzdEl0ZW0pO1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgJ2VudGVyJzpcbiAgICAgICAgICAgIGNhc2UgJ2Fycm93ZG93bic6XG4gICAgICAgICAgICBjYXNlICdkb3duJzpcbiAgICAgICAgICAgIGNhc2UgJyAnOiAvLyBTcGFjZWJhci5cbiAgICAgICAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICAgICAgICAgIGlmICghdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLk9wZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuRm9jdXNGaXJzdEl0ZW0pO1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgb2JzZXJ2YWJsZUZyb21FdmVudChidXR0b25FbGVtZW50LCAnbW91c2VlbnRlcicpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5pc01vdXNlRW50ZXIgPSB0cnVlO1xuICAgICAgICAgIGlmICh0aGlzLnRyaWdnZXIgPT09ICdob3ZlcicpIHtcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuT3Blbik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgb2JzZXJ2YWJsZUZyb21FdmVudChidXR0b25FbGVtZW50LCAnbW91c2VsZWF2ZScpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5pc01vdXNlRW50ZXIgPSBmYWxzZTtcbiAgICAgICAgICBpZiAodGhpcy50cmlnZ2VyID09PSAnaG92ZXInKSB7XG4gICAgICAgICAgICAvLyBBbGxvdyB0aGUgZHJvcGRvd24gbWVudSB0byBzZXQgaXNNb3VzZUVudGVyIGJlZm9yZSBjaGVja2luZyBpZiB0aGUgY2xvc2UgYWN0aW9uXG4gICAgICAgICAgICAvLyBzaG91bGQgYmUgdGFrZW4uXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCF0aGlzLmlzTW91c2VFbnRlcikge1xuICAgICAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreURyb3Bkb3duTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gICNjcmVhdGVPdmVybGF5KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLiNvdmVybGF5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubWVudUNvbnRhaW5lclRlbXBsYXRlUmVmKSB7XG4gICAgICBjb25zdCBvdmVybGF5ID0gdGhpcy4jb3ZlcmxheVNlcnZpY2UuY3JlYXRlKHtcbiAgICAgICAgZW5hYmxlU2Nyb2xsOiB0cnVlLFxuICAgICAgICBlbmFibGVQb2ludGVyRXZlbnRzOiB0cnVlLFxuICAgICAgfSk7XG5cbiAgICAgIG92ZXJsYXkuYXR0YWNoVGVtcGxhdGUodGhpcy5tZW51Q29udGFpbmVyVGVtcGxhdGVSZWYpO1xuXG4gICAgICBvdmVybGF5LmJhY2tkcm9wQ2xpY2tcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5kaXNtaXNzT25CbHVyKSB7XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lEcm9wZG93bk1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICB0aGlzLiNvdmVybGF5ID0gb3ZlcmxheTtcbiAgICB9XG4gIH1cblxuICAjZGVzdHJveUFmZml4ZXIoKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgaWYgKHRoaXMuI2FmZml4ZXIpIHtcbiAgICAgIHRoaXMuI2FmZml4ZXIuZGVzdHJveSgpO1xuICAgICAgdGhpcy4jYWZmaXhlciA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAjZGVzdHJveU92ZXJsYXkoKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgaWYgKHRoaXMuI292ZXJsYXkpIHtcbiAgICAgIHRoaXMuI292ZXJsYXlTZXJ2aWNlLmNsb3NlKHRoaXMuI292ZXJsYXkpO1xuICAgICAgdGhpcy4jb3ZlcmxheSA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAjY3JlYXRlQWZmaXhlcihtZW51Q29udGFpbmVyRWxlbWVudFJlZjogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIGNvbnN0IGFmZml4ZXIgPSB0aGlzLiNhZmZpeFNlcnZpY2UuY3JlYXRlQWZmaXhlcihtZW51Q29udGFpbmVyRWxlbWVudFJlZik7XG5cbiAgICBhZmZpeGVyLnBsYWNlbWVudENoYW5nZVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoY2hhbmdlKSA9PiB7XG4gICAgICAgIHRoaXMuaXNWaXNpYmxlID0gY2hhbmdlLnBsYWNlbWVudCAhPT0gbnVsbDtcbiAgICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuI2FmZml4ZXIgPSBhZmZpeGVyO1xuICB9XG5cbiAgI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZTogU2t5RHJvcGRvd25NZXNzYWdlKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgICBjYXNlIFNreURyb3Bkb3duTWVzc2FnZVR5cGUuT3BlbjpcbiAgICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gICAgICAgICAgdGhpcy4jcG9zaXRpb25Ecm9wZG93bk1lbnUoKTtcbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIFNreURyb3Bkb3duTWVzc2FnZVR5cGUuQ2xvc2U6XG4gICAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLiNkZXN0cm95T3ZlcmxheSgpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgU2t5RHJvcGRvd25NZXNzYWdlVHlwZS5SZXBvc2l0aW9uOlxuICAgICAgICAgIC8vIE9ubHkgcmVwb3NpdGlvbiB0aGUgZHJvcGRvd24gaWYgaXQgaXMgYWxyZWFkeSBvcGVuLlxuICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgICAgaWYgKHRoaXMuaXNPcGVuICYmIHRoaXMuI2FmZml4ZXIpIHtcbiAgICAgICAgICAgIHRoaXMuI2FmZml4ZXIucmVhZmZpeCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlIFNreURyb3Bkb3duTWVzc2FnZVR5cGUuRm9jdXNUcmlnZ2VyQnV0dG9uOlxuICAgICAgICAgIHRoaXMudHJpZ2dlckJ1dHRvbj8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNzZW5kTWVzc2FnZSh0eXBlOiBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlU3RyZWFtPy5uZXh0KHsgdHlwZSB9KTtcbiAgfVxuXG4gICNwb3NpdGlvbkRyb3Bkb3duTWVudSgpOiB2b2lkIHtcbiAgICB0aGlzLmlzVmlzaWJsZSA9IGZhbHNlO1xuICAgIHRoaXMuI2NyZWF0ZU92ZXJsYXkoKTtcbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcblxuICAgIC8vIEV4cGxpY2l0bHkgZGVjbGFyZSB0aGUgYHNldFRpbWVvdXRgIGZyb20gdGhlIGB3aW5kb3dgIG9iamVjdCBpbiBvcmRlciB0byB1c2UgdGhlIERPTSB0eXBpbmdzXG4gICAgLy8gZHVyaW5nIGEgdW5pdCB0ZXN0IChpbnN0ZWFkIG9mIGNvbmZ1c2luZyB0aGlzIHdpdGggTm9kZSdzIGBzZXRUaW1lb3V0YCkuXG4gICAgdGhpcy4jcG9zaXRpb25UaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuI2FmZml4ZXIpIHtcbiAgICAgICAgdGhpcy4jYWZmaXhlci5hZmZpeFRvKHRoaXMudHJpZ2dlckJ1dHRvbj8ubmF0aXZlRWxlbWVudCwge1xuICAgICAgICAgIGF1dG9GaXRDb250ZXh0OiBTa3lBZmZpeEF1dG9GaXRDb250ZXh0LlZpZXdwb3J0LFxuICAgICAgICAgIGVuYWJsZUF1dG9GaXQ6IHRydWUsXG4gICAgICAgICAgaG9yaXpvbnRhbEFsaWdubWVudDogcGFyc2VBZmZpeEhvcml6b250YWxBbGlnbm1lbnQoXG4gICAgICAgICAgICB0aGlzLmhvcml6b250YWxBbGlnbm1lbnRcbiAgICAgICAgICApLFxuICAgICAgICAgIGlzU3RpY2t5OiB0cnVlLFxuICAgICAgICAgIHBsYWNlbWVudDogJ2JlbG93JyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSB0cnVlO1xuICAgICAgICB0aGlzLiNjaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNreS1kcm9wZG93blwiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJza3ktYnRuIHNreS1kcm9wZG93bi1idXR0b25cIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNPcGVuXCJcbiAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImlzT3BlbiA/IG1lbnVJZCA6IG51bGxcIlxuICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwibWVudUFyaWFSb2xlXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgbGFiZWwgfHwgKCdza3l1eF9kcm9wZG93bl9jb250ZXh0X21lbnVfZGVmYXVsdF9sYWJlbCcgfCBza3lMaWJSZXNvdXJjZXMpXG4gICAgXCJcbiAgICBbYXR0ci50aXRsZV09XCJ0aXRsZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbbmdDbGFzc109XCJbXG4gICAgICAnc2t5LWRyb3Bkb3duLWJ1dHRvbi10eXBlLScgKyBidXR0b25UeXBlLFxuICAgICAgJ3NreS1idG4tJyArIGJ1dHRvblN0eWxlXG4gICAgXVwiXG4gICAgI3RyaWdnZXJCdXR0b25cbiAgPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImJ1dHRvblR5cGVcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBuZ1N3aXRjaENhc2U9XCJjb250ZXh0LW1lbnVcIj5cbiAgICAgICAgPHNreS1pY29uICpza3lUaGVtZUlmPVwiJ2RlZmF1bHQnXCIgaWNvbj1cImVsbGlwc2lzLWhcIj48L3NreS1pY29uPlxuICAgICAgICA8c2t5LWljb25cbiAgICAgICAgICAqc2t5VGhlbWVJZj1cIidtb2Rlcm4nXCJcbiAgICAgICAgICBpY29uPVwiZWxsaXBzaXNcIlxuICAgICAgICAgIGljb25UeXBlPVwic2t5dXhcIlxuICAgICAgICA+PC9za3ktaWNvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSBuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAqbmdJZj1cImJ1dHRvblR5cGUgPT09ICdzZWxlY3QnIHx8IGJ1dHRvblR5cGUgPT09ICd0YWInIHx8ICFidXR0b25UeXBlXCJcbiAgICAgICAgICBjbGFzcz1cInNreS1kcm9wZG93bi1idXR0b24tY29udGFpbmVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJza3ktZHJvcGRvd24tYnV0dG9uLWNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZHJvcGRvd24tYnV0dG9uXCI+IDwvbmctY29udGVudD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2t5LWRyb3Bkb3duLWJ1dHRvbi1pY29uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPHNreS1pY29uXG4gICAgICAgICAgICAgICpza3lUaGVtZUlmPVwiJ2RlZmF1bHQnXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJza3ktZHJvcGRvd24tY2FyZXRcIlxuICAgICAgICAgICAgICBpY29uPVwiY2FyZXQtZG93blwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8L3NreS1pY29uPlxuICAgICAgICAgICAgPHNreS1pY29uXG4gICAgICAgICAgICAgICpza3lUaGVtZUlmPVwiJ21vZGVybidcIlxuICAgICAgICAgICAgICBjbGFzcz1cInNreS1kcm9wZG93bi1jYXJldFwiXG4gICAgICAgICAgICAgIGljb249XCJjaGV2cm9uLWRvd25cIlxuICAgICAgICAgICAgICBpY29uVHlwZT1cInNreXV4XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvc2t5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgKm5nSWY9XCJidXR0b25UeXBlICE9PSAnc2VsZWN0JyAmJiBidXR0b25UeXBlICE9PSAndGFiJyAmJiBidXR0b25UeXBlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBbaWNvbl09XCJidXR0b25UeXBlXCIgc2l6ZT1cImxnXCI+PC9za3ktaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI21lbnVDb250YWluZXJUZW1wbGF0ZVJlZj5cbiAgPGRpdlxuICAgIGNsYXNzPVwic2t5LWRyb3Bkb3duLW1lbnUtY29udGFpbmVyXCJcbiAgICBbY2xhc3MuaGlkZGVuXT1cIiFpc1Zpc2libGVcIlxuICAgICNtZW51Q29udGFpbmVyRWxlbWVudFJlZlxuICA+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRyb3Bkb3duLW1lbnVcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taG9yaXpvbnRhbC1hbGlnbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL3R5cGVzL2Ryb3Bkb3duLWhvcml6b250YWwtYWxpZ25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNwZWNpZmllcyB0aGUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgZm9yIHRoZSBkcm9wZG93bi5cbiAqL1xuZXhwb3J0IHR5cGUgU2t5RHJvcGRvd25Ib3Jpem9udGFsQWxpZ25tZW50ID0gJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnO1xuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taG9yaXpvbnRhbC1hbGlnbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL3R5cGVzL2Ryb3Bkb3duLWhvcml6b250YWwtYWxpZ25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSBob3Jpem9udGFsIGFsaWdubWVudCBmb3IgdGhlIGRyb3Bkb3duLlxuICovXG5leHBvcnQgdHlwZSBTa3lEcm9wZG93bkhvcml6b250YWxBbGlnbm1lbnQgPSAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1jaGFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL3R5cGVzL2Ryb3Bkb3duLW1lbnUtY2hhbmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEcm9wZG93bkl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9kcm9wZG93bi1pdGVtLmNvbXBvbmVudCc7XG5cbi8qKlxuICogU3BlY2lmaWVzIG1lbnUgaXRlbXMsIGluY2x1ZGluZyB0aGUgc2VsZWN0ZWQgb25lLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5RHJvcGRvd25NZW51Q2hhbmdlIHtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGUgYWN0aXZlIG1lbnUgaW5kZXguXG4gICAqL1xuICBhY3RpdmVJbmRleD86IG51bWJlcjtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSBpdGVtcyBpbiB0aGUgbWVudS5cbiAgICovXG4gIGl0ZW1zPzogU2t5RHJvcGRvd25JdGVtQ29tcG9uZW50W107XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgbWVudS5cbiAgICovXG4gIHNlbGVjdGVkSXRlbT86IFNreURyb3Bkb3duSXRlbUNvbXBvbmVudDtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS1jaGFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL2Ryb3Bkb3duL3R5cGVzL2Ryb3Bkb3duLW1lbnUtY2hhbmdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEcm9wZG93bkl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9kcm9wZG93bi1pdGVtLmNvbXBvbmVudCc7XG5cbi8qKlxuICogU3BlY2lmaWVzIG1lbnUgaXRlbXMsIGluY2x1ZGluZyB0aGUgc2VsZWN0ZWQgb25lLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5RHJvcGRvd25NZW51Q2hhbmdlIHtcbiAgLyoqXG4gICAqIFRoZSBhY3RpdmUgbWVudSBpbmRleC5cbiAgICovXG4gIGFjdGl2ZUluZGV4PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgaXRlbXMgaW4gdGhlIG1lbnUuXG4gICAqL1xuICBpdGVtcz86IFNreURyb3Bkb3duSXRlbUNvbXBvbmVudFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgc2VsZWN0ZWQgaXRlbSBpbiB0aGUgbWVudS5cbiAgICovXG4gIHNlbGVjdGVkSXRlbT86IFNreURyb3Bkb3duSXRlbUNvbXBvbmVudDtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Specifies the type of message to send.
2
+ * The type of message to send.
3
3
  * @internal
4
4
  */
5
5
  export var SkyDropdownMessageType;
@@ -38,4 +38,4 @@ export var SkyDropdownMessageType;
38
38
  */
39
39
  SkyDropdownMessageType[SkyDropdownMessageType["FocusLastItem"] = 7] = "FocusLastItem";
40
40
  })(SkyDropdownMessageType || (SkyDropdownMessageType = {}));
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVzc2FnZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi90eXBlcy9kcm9wZG93bi1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxDQUFOLElBQVksc0JBeUNYO0FBekNELFdBQVksc0JBQXNCO0lBQ2hDOztPQUVHO0lBQ0gsbUVBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gscUVBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsK0ZBQXNCLENBQUE7SUFFdEI7O09BRUc7SUFDSCxxRkFBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILDZGQUFxQixDQUFBO0lBRXJCOzs7T0FHRztJQUNILCtFQUFjLENBQUE7SUFFZDs7T0FFRztJQUNILHVGQUFrQixDQUFBO0lBRWxCOztPQUVHO0lBQ0gscUZBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQXpDVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBeUNqQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU3BlY2lmaWVzIHRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gc2VuZC5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZW51bSBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlIHtcbiAgLyoqXG4gICAqIE9wZW5zIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgT3BlbiA9IDAsXG5cbiAgLyoqXG4gICAqICBDbG9zZXMgdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBDbG9zZSA9IDEsXG5cbiAgLyoqXG4gICAqIFB1dHMgZm9jdXMgb24gdGhlIGRyb3Bkb3duIGJ1dHRvbi5cbiAgICovXG4gIEZvY3VzVHJpZ2dlckJ1dHRvbiA9IDIsXG5cbiAgLyoqXG4gICAqIFB1dHMgZm9jdXMgb24gdGhlIG5leHQgaXRlbSBpbiB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIEZvY3VzTmV4dEl0ZW0gPSAzLFxuXG4gIC8qKlxuICAgKiBQdXRzIGZvY3VzIG9uIHRoZSBwcmV2aW91cyBpdGVtIGluIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgRm9jdXNQcmV2aW91c0l0ZW0gPSA0LFxuXG4gIC8qKlxuICAgKiBSZXBvc2l0aW9ucyB0aGUgZHJvcGRvd24gbWVudSBuZXh0IHRvIHRoZSBkcm9wZG93biBidXR0b24uIFRoaXMgaXMgdXNlZnVsIGZvciB3aGVuIHRoZVxuICAgKiBkcm9wZG93biBtZW51J3Mgd2lkdGggYW5kIGhlaWdodCBjaGFuZ2Ugd2hpbGUgaXQgaXMgb3Blbi5cbiAgICovXG4gIFJlcG9zaXRpb24gPSA1LFxuXG4gIC8qKlxuICAgKiBQdXRzIGZvY3VzIG9uIHRoZSBmaXJzdCBpdGVtIGluIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgRm9jdXNGaXJzdEl0ZW0gPSA2LFxuXG4gIC8qKlxuICAgKiBQdXRzIGZvY3VzIG9uIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBGb2N1c0xhc3RJdGVtID0gNyxcbn1cbiJdfQ==
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVzc2FnZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi90eXBlcy9kcm9wZG93bi1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsTUFBTSxDQUFOLElBQVksc0JBeUNYO0FBekNELFdBQVksc0JBQXNCO0lBQ2hDOztPQUVHO0lBQ0gsbUVBQVEsQ0FBQTtJQUVSOztPQUVHO0lBQ0gscUVBQVMsQ0FBQTtJQUVUOztPQUVHO0lBQ0gsK0ZBQXNCLENBQUE7SUFFdEI7O09BRUc7SUFDSCxxRkFBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILDZGQUFxQixDQUFBO0lBRXJCOzs7T0FHRztJQUNILCtFQUFjLENBQUE7SUFFZDs7T0FFRztJQUNILHVGQUFrQixDQUFBO0lBRWxCOztPQUVHO0lBQ0gscUZBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQXpDVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBeUNqQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhlIHR5cGUgb2YgbWVzc2FnZSB0byBzZW5kLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBlbnVtIFNreURyb3Bkb3duTWVzc2FnZVR5cGUge1xuICAvKipcbiAgICogT3BlbnMgdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBPcGVuID0gMCxcblxuICAvKipcbiAgICogIENsb3NlcyB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIENsb3NlID0gMSxcblxuICAvKipcbiAgICogUHV0cyBmb2N1cyBvbiB0aGUgZHJvcGRvd24gYnV0dG9uLlxuICAgKi9cbiAgRm9jdXNUcmlnZ2VyQnV0dG9uID0gMixcblxuICAvKipcbiAgICogUHV0cyBmb2N1cyBvbiB0aGUgbmV4dCBpdGVtIGluIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgRm9jdXNOZXh0SXRlbSA9IDMsXG5cbiAgLyoqXG4gICAqIFB1dHMgZm9jdXMgb24gdGhlIHByZXZpb3VzIGl0ZW0gaW4gdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBGb2N1c1ByZXZpb3VzSXRlbSA9IDQsXG5cbiAgLyoqXG4gICAqIFJlcG9zaXRpb25zIHRoZSBkcm9wZG93biBtZW51IG5leHQgdG8gdGhlIGRyb3Bkb3duIGJ1dHRvbi4gVGhpcyBpcyB1c2VmdWwgZm9yIHdoZW4gdGhlXG4gICAqIGRyb3Bkb3duIG1lbnUncyB3aWR0aCBhbmQgaGVpZ2h0IGNoYW5nZSB3aGlsZSBpdCBpcyBvcGVuLlxuICAgKi9cbiAgUmVwb3NpdGlvbiA9IDUsXG5cbiAgLyoqXG4gICAqIFB1dHMgZm9jdXMgb24gdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBGb2N1c0ZpcnN0SXRlbSA9IDYsXG5cbiAgLyoqXG4gICAqIFB1dHMgZm9jdXMgb24gdGhlIGxhc3QgaXRlbSBpbiB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIEZvY3VzTGFzdEl0ZW0gPSA3LFxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9wb3BvdmVycy9zcmMvbGliL21vZHVsZXMvZHJvcGRvd24vdHlwZXMvZHJvcGRvd24tbWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5RHJvcGRvd25NZXNzYWdlVHlwZSB9IGZyb20gJy4vZHJvcGRvd24tbWVzc2FnZS10eXBlJztcblxuLyoqXG4gKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgbWVzc2FnZSB0byBzZW5kIHRvIHRoZSBkcm9wZG93biBjb21wb25lbnQuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lEcm9wZG93bk1lc3NhZ2Uge1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gc2VuZC5cbiAgICovXG4gIHR5cGU/OiBTa3lEcm9wZG93bk1lc3NhZ2VUeXBlO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9wb3BvdmVycy9zcmMvbGliL21vZHVsZXMvZHJvcGRvd24vdHlwZXMvZHJvcGRvd24tbWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5RHJvcGRvd25NZXNzYWdlVHlwZSB9IGZyb20gJy4vZHJvcGRvd24tbWVzc2FnZS10eXBlJztcblxuLyoqXG4gKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgbWVzc2FnZSB0byBzZW5kIHRvIHRoZSBkcm9wZG93biBjb21wb25lbnQuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTa3lEcm9wZG93bk1lc3NhZ2Uge1xuICAvKipcbiAgICogVGhlIHR5cGUgb2YgbWVzc2FnZSB0byBzZW5kLlxuICAgKi9cbiAgdHlwZT86IFNreURyb3Bkb3duTWVzc2FnZVR5cGU7XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJpZ2dlci10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi90eXBlcy9kcm9wZG93bi10cmlnZ2VyLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU3BlY2lmaWVzIGhvdyB1c2VycyBpbnRlcmFjdCB3aXRoIHRoZSBkcm9wZG93biBidXR0b24gdG8gZXhwb3NlIHRoZSBkcm9wZG93biBtZW51LlxuICovXG5leHBvcnQgdHlwZSBTa3lEcm9wZG93blRyaWdnZXJUeXBlID0gJ2NsaWNrJyB8ICdob3Zlcic7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tdHJpZ2dlci10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9kcm9wZG93bi90eXBlcy9kcm9wZG93bi10cmlnZ2VyLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSG93IHVzZXJzIGludGVyYWN0IHdpdGggdGhlIGRyb3Bkb3duIGJ1dHRvbiB0byBleHBvc2UgdGhlIGRyb3Bkb3duIG1lbnUuXG4gKi9cbmV4cG9ydCB0eXBlIFNreURyb3Bkb3duVHJpZ2dlclR5cGUgPSAnY2xpY2snIHwgJ2hvdmVyJztcbiJdfQ==
@@ -19,7 +19,7 @@ export class SkyPopoverComponent {
19
19
  */
20
20
  this.popoverOpened = new EventEmitter();
21
21
  /**
22
- * Indicates that the popover is in the process of being opened or closed.
22
+ * Whether the popover is in the process of being opened or closed.
23
23
  * @internal
24
24
  */
25
25
  this.isActive = false;
@@ -42,7 +42,7 @@ export class SkyPopoverComponent {
42
42
  __classPrivateFieldSet(this, _SkyPopoverComponent_overlayService, overlayService, "f");
43
43
  }
44
44
  /**
45
- * Specifies the horizontal alignment of the popover in relation to the trigger element.
45
+ * The horizontal alignment of the popover in relation to the trigger element.
46
46
  * The `skyPopoverAlignment` property on the popover directive takes precedence over this property when specified.
47
47
  * @default "center"
48
48
  */
@@ -53,7 +53,7 @@ export class SkyPopoverComponent {
53
53
  return __classPrivateFieldGet(this, _SkyPopoverComponent__alignment, "f");
54
54
  }
55
55
  /**
56
- * Indicates whether to close the popover when it loses focus.
56
+ * Whether to close the popover when it loses focus.
57
57
  * To require users to click a trigger button to close the popover, set this input to false.
58
58
  * @default true
59
59
  */
@@ -64,7 +64,7 @@ export class SkyPopoverComponent {
64
64
  return __classPrivateFieldGet(this, _SkyPopoverComponent__dismissOnBlur, "f");
65
65
  }
66
66
  /**
67
- * Specifies the placement of the popover in relation to the trigger element.
67
+ * The placement of the popover in relation to the trigger element.
68
68
  * The `skyPopoverPlacement` property on the popover directive takes precedence over this property when specified.
69
69
  * @default "above"
70
70
  */
@@ -75,7 +75,7 @@ export class SkyPopoverComponent {
75
75
  return __classPrivateFieldGet(this, _SkyPopoverComponent__placement, "f");
76
76
  }
77
77
  /**
78
- * Specifies the type of popover.
78
+ * The type of popover.
79
79
  * @default "info"
80
80
  */
81
81
  set popoverType(value) {
@@ -212,4 +212,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImpo
212
212
  static: true,
213
213
  }]
214
214
  }] } });
215
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBU3RELE1BQU0sT0FBTyxtQkFBbUI7SUFpSDlCLFlBQVksY0FBaUM7O1FBbkQ3Qzs7V0FFRztRQUVJLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFFL0Q7O1dBRUc7UUFFSSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUF1QixDQUFDO1FBRS9EOzs7V0FHRztRQUNJLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFeEI7Ozs7V0FJRztRQUNJLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUV4QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQVE1QixrREFBeUM7UUFFekMsNERBQWdDLEtBQUssRUFBQztRQUV0Qyw2Q0FBaUIsSUFBSSxPQUFPLEVBQVEsRUFBQztRQUVyQywrQ0FBeUM7UUFFekMsMENBQW1DLFFB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Vzt3QkFDakIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU92ZXJsYXlJbnN0YW5jZSwgU2t5T3ZlcmxheVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5UG9wb3ZlckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXItY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlckNvbnRleHQgfSBmcm9tICcuL3BvcG92ZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyUGxhY2VtZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLXBsYWNlbWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyVHlwZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci10eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreVBvcG92ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgcG9wb3ZlciBpbiByZWxhdGlvbiB0byB0aGUgdHJpZ2dlciBlbGVtZW50LlxuICAgKiBUaGUgYHNreVBvcG92ZXJBbGlnbm1lbnRgIHByb3BlcnR5IG9uIHRoZSBwb3BvdmVyIGRpcmVjdGl2ZSB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdGhpcyBwcm9wZXJ0eSB3aGVuIHNwZWNpZmllZC5cbiAgICogQGRlZmF1bHQgXCJjZW50ZXJcIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBhbGlnbm1lbnQodmFsdWU6IFNreVBvcG92ZXJBbGlnbm1lbnQgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfYWxpZ25tZW50ID0gdmFsdWUgPz8gJ2NlbnRlcic7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFsaWdubWVudCgpOiBTa3lQb3BvdmVyQWxpZ25tZW50IHtcbiAgICByZXR1cm4gdGhpcy4jX2FsaWdubWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byBjbG9zZSB0aGUgcG9wb3ZlciB3aGVuIGl0IGxvc2VzIGZvY3VzLlxuICAgKiBUbyByZXF1aXJlIHVzZXJzIHRvIGNsaWNrIGEgdHJpZ2dlciBidXR0b24gdG8gY2xvc2UgdGhlIHBvcG92ZXIsIHNldCB0aGlzIGlucHV0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc21pc3NPbkJsdXIodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfZGlzbWlzc09uQmx1ciA9IHZhbHVlID8/IHRydWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc21pc3NPbkJsdXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19kaXNtaXNzT25CbHVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgcGxhY2VtZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqIFRoZSBgc2t5UG9wb3ZlclBsYWNlbWVudGAgcHJvcGVydHkgb24gdGhlIHBvcG92ZXIgZGlyZWN0aXZlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGlzIHByb3BlcnR5IHdoZW4gc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCBcImFib3ZlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGxhY2VtZW50KHZhbHVlOiBTa3lQb3BvdmVyUGxhY2VtZW50IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3BsYWNlbWVudCA9IHZhbHVlID8/ICdhYm92ZSc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBsYWNlbWVudCgpOiBTa3lQb3BvdmVyUGxhY2VtZW50IHtcbiAgICByZXR1cm4gdGhpcy4jX3BsYWNlbWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSB0aXRsZSBmb3IgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcG9wb3ZlclRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdHlwZSBvZiBwb3BvdmVyLlxuICAgKiBAZGVmYXVsdCBcImluZm9cIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwb3BvdmVyVHlwZSh2YWx1ZTogU2t5UG9wb3ZlclR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfcG9wb3ZlclR5cGUgPSB2YWx1ZSA/PyAnaW5mbyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBvcG92ZXJUeXBlKCk6IFNreVBvcG92ZXJUeXBlIHtcbiAgICByZXR1cm4gdGhpcy4jX3BvcG92ZXJUeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgY2xvc2UgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHBvcG92ZXJDbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVBvcG92ZXJDb21wb25lbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgb3BlbiB0aGUgcG9wb3Zlci5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcG9wb3Zlck9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8U2t5UG9wb3ZlckNvbXBvbmVudD4oKTtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIHBvcG92ZXIgaXMgaW4gdGhlIHByb2Nlc3Mgb2YgYmVpbmcgb3BlbmVkIG9yIGNsb3NlZC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgaXNBY3RpdmUgPSBmYWxzZTtcblxuICAvKipcbiAgICogVXNlZCBieSB1bml0IHRlc3RzIHRvIGRpc2FibGUgYW5pbWF0aW9ucyBzaW5jZSB0aGUgY29tcG9uZW50IGlzIGluamVjdGVkIGF0IHRoZSBib3R0b20gb2YgdGhlXG4gICAqIGRvY3VtZW50IGJvZHkuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGVuYWJsZUFuaW1hdGlvbnMgPSB0cnVlO1xuXG4gIHB1YmxpYyBpc01vdXNlRW50ZXIgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkKCd0ZW1wbGF0ZVJlZicsIHtcbiAgICByZWFkOiBUZW1wbGF0ZVJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCB1bmRlZmluZWQ7XG5cbiAgI2NvbnRlbnRSZWYhOiBTa3lQb3BvdmVyQ29udGVudENvbXBvbmVudDtcblxuICAjaXNNYXJrZWRGb3JDbG9zZU9uTW91c2VMZWF2ZSA9IGZhbHNlO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjb3ZlcmxheTogU2t5T3ZlcmxheUluc3RhbmNlIHwgdW5kZWZpbmVkO1xuXG4gICNfYWxpZ25tZW50OiBTa3lQb3BvdmVyQWxpZ25tZW50ID0gJ2NlbnRlcic7XG5cbiAgI19kaXNtaXNzT25CbHVyID0gdHJ1ZTtcblxuICAjX3BsYWNlbWVudDogU2t5UG9wb3ZlclBsYWNlbWVudCA9ICdhYm92ZSc7XG5cbiAgI19wb3BvdmVyVHlwZTogU2t5UG9wb3ZlclR5cGUgPSAnaW5mbyc7XG5cbiAgI292ZXJsYXlTZXJ2aWNlOiBTa3lPdmVybGF5U2VydmljZTtcblxuICBjb25zdHJ1Y3RvcihvdmVybGF5U2VydmljZTogU2t5T3ZlcmxheVNlcnZpY2UpIHtcbiAgICB0aGlzLiNvdmVybGF5U2VydmljZSA9IG92ZXJsYXlTZXJ2aWNlO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcblxuICAgIGlmICh0aGlzLiNvdmVybGF5KSB7XG4gICAgICB0aGlzLiNvdmVybGF5U2VydmljZS5jbG9zZSh0aGlzLiNvdmVybGF5KTtcbiAgICAgIHRoaXMuI292ZXJsYXkgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBvc2l0aW9ucyB0aGUgcG9wb3ZlciBuZXh0IHRvIGEgZ2l2ZW4gY2FsbGVyIGVsZW1lbnQuXG4gICAqIEBwYXJhbSBjYWxsZXIgVGhlIGVsZW1lbnQgdGhhdCBvcGVuZWQgdGhlIHBvcG92ZXIuXG4gICAqIEBwYXJhbSBwbGFjZW1lbnQgVGhlIHBsYWNlbWVudCBvZiB0aGUgcG9wb3Zlci5cbiAgICogQHBhcmFtIGFsaWdubWVudCBUaGUgaG9yaXpvbnRhbCBhbGlnbm1lbnQgb2YgdGhlIHBvcG92ZXIuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHBvc2l0aW9uTmV4dFRvKFxuICAgIGNhbGxlcjogRWxlbWVudFJlZixcbiAgICBwbGFjZW1lbnQ/OiBTa3lQb3BvdmVyUGxhY2VtZW50LFxuICAgIGFsaWdubWVudD86IFNreVBvcG92ZXJBbGlnbm1lbnRcbiAgKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLiNvdmVybGF5KSB7XG4gICAgICB0aGlzLiNzZXR1cE92ZXJsYXkoKTtcbiAgICB9XG5cbiAgICB0aGlzLnBsYWNlbWVudCA9IHBsYWNlbWVudCA/PyB0aGlzLnBsYWNlbWVudDtcbiAgICB0aGlzLmFsaWdubWVudCA9IGFsaWdubWVudCA/PyB0aGlzLmFsaWdubWVudDtcbiAgICB0aGlzLmlzQWN0aXZlID0gdHJ1ZTtcblxuICAgIHRoaXMuI2NvbnRlbnRSZWYub3BlbihjYWxsZXIsIHtcbiAgICAgIGRpc21pc3NPbkJsdXI6IHRoaXMuZGlzbWlzc09uQmx1cixcbiAgICAgIGVuYWJsZUFuaW1hdGlvbnM6IHRoaXMuZW5hYmxlQW5pbWF0aW9ucyxcbiAgICAgIGhvcml6b250YWxBbGlnbm1lbnQ6IHRoaXMuYWxpZ25tZW50LFxuICAgICAgaXNTdGF0aWM6IGZhbHNlLFxuICAgICAgcGxhY2VtZW50OiB0aGlzLnBsYWNlbWVudCxcbiAgICAgIHBvcG92ZXJUaXRsZTogdGhpcy5wb3BvdmVyVGl0bGUsXG4gICAgICBwb3BvdmVyVHlwZTogdGhpcy5wb3BvdmVyVHlwZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIHBvcG92ZXIuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIC8qaXN0YW5idWwgaWdub3JlIG5leHQqL1xuICAgIHRoaXMuI2NvbnRlbnRSZWY/LmNsb3NlKCk7XG4gIH1cblxuICAvKipcbiAgICogQnJpbmdzIGZvY3VzIHRvIHRoZSBwb3BvdmVyIGVsZW1lbnQgaWYgaXRzIG9wZW4uXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGFwcGx5Rm9jdXMoKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgbmV4dCovXG4gICAgdGhpcy4jY29udGVudFJlZj8uYXBwbHlGb2N1cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBmbGFnIHRvIHRoZSBwb3BvdmVyIHRvIGNsb3NlIHdoZW4gdGhlIG1vdXNlIGxlYXZlcyB0aGUgcG9wb3ZlcidzIGJvdW5kcy5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgbWFya0ZvckNsb3NlT25Nb3VzZUxlYXZlKCk6IHZvaWQge1xuICAgIHRoaXMuI2lzTWFya2VkRm9yQ2xvc2VPbk1vdXNlTGVhdmUgPSB0cnVlO1xuICB9XG5cbiAgI3NldHVwT3ZlcmxheSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50ZW1wbGF0ZVJlZikge1xuICAgICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMuI292ZXJsYXlTZXJ2aWNlLmNyZWF0ZSh7XG4gICAgICAgIGVuYWJsZVNjcm9sbDogdHJ1ZSxcbiAgICAgICAgZW5hYmxlUG9pbnRlckV2ZW50czogdHJ1ZSxcbiAgICAgIH0pO1xuXG4gICAgICBvdmVybGF5LmJhY2tkcm9wQ2xpY2tcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5kaXNtaXNzT25CbHVyKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgY29uc3QgY29udGVudFJlZiA9IG92ZXJsYXkuYXR0YWNoQ29tcG9uZW50KFNreVBvcG92ZXJDb250ZW50Q29tcG9uZW50LCBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBTa3lQb3BvdmVyQ29udGV4dCxcbiAgICAgICAgICB1c2VWYWx1ZTogbmV3IFNreVBvcG92ZXJDb250ZXh0KHtcbiAgICAgICAgICAgIGNvbnRlbnRUZW1wbGF0ZVJlZjogdGhpcy50ZW1wbGF0ZVJlZixcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSxcbiAgICAgIF0pO1xuXG4gICAgICBjb250ZW50UmVmLm9wZW5lZC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5wb3BvdmVyT3BlbmVkLmVtaXQodGhpcyk7XG4gICAgICB9KTtcblxuICAgICAgY29udGVudFJlZi5jbG9zZWQucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgICAgICBpZiAodGhpcy5pc0FjdGl2ZSAmJiB0aGlzLiNvdmVybGF5KSB7XG4gICAgICAgICAgdGhpcy4jb3ZlcmxheVNlcnZpY2UuY2xvc2UodGhpcy4jb3ZlcmxheSk7XG4gICAgICAgICAgdGhpcy4jb3ZlcmxheSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB0aGlzLmlzQWN0aXZlID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2VkLmVtaXQodGhpcyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBjb250ZW50UmVmLmlzTW91c2VFbnRlclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGlzTW91c2VFbnRlcikgPT4ge1xuICAgICAgICAgIHRoaXMuaXNNb3VzZUVudGVyID0gaXNNb3VzZUVudGVyO1xuICAgICAgICAgIGlmICh0aGlzLiNpc01hcmtlZEZvckNsb3NlT25Nb3VzZUxlYXZlKSB7XG4gICAgICAgICAgICB0aGlzLiNpc01hcmtlZEZvckNsb3NlT25Nb3VzZUxlYXZlID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgdGhpcy4jb3ZlcmxheSA9IG92ZXJsYXk7XG4gICAgICB0aGlzLiNjb250ZW50UmVmID0gY29udGVudFJlZjtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGVSZWY+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBU3RELE1BQU0sT0FBTyxtQkFBbUI7SUFpSDlCLFlBQVksY0FBaUM7O1FBbkQ3Qzs7V0FFRztRQUVJLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFFL0Q7O1dBRUc7UUFFSSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUF1QixDQUFDO1FBRS9EOzs7V0FHRztRQUNJLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFeEI7Ozs7V0FJRztRQUNJLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUV4QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQVE1QixrREFBeUM7UUFFekMsNERBQWdDLEtBQUssRUFBQztRQUV0Qyw2Q0FBaUIsSUFBSSxPQUFPLEVBQVEsRUFBQztRQUVyQywrQ0FBeUM7UUFFekMsMENBQW1DLFFB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Vzt3QkFDakIsTUFBTSxFQUFFLElBQUk7cUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU92ZXJsYXlJbnN0YW5jZSwgU2t5T3ZlcmxheVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5UG9wb3ZlckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXItY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlckNvbnRleHQgfSBmcm9tICcuL3BvcG92ZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyUGxhY2VtZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLXBsYWNlbWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyVHlwZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci10eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreVBvcG92ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogVGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqIFRoZSBgc2t5UG9wb3ZlckFsaWdubWVudGAgcHJvcGVydHkgb24gdGhlIHBvcG92ZXIgZGlyZWN0aXZlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGlzIHByb3BlcnR5IHdoZW4gc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCBcImNlbnRlclwiXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFsaWdubWVudCh2YWx1ZTogU2t5UG9wb3ZlckFsaWdubWVudCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19hbGlnbm1lbnQgPSB2YWx1ZSA/PyAnY2VudGVyJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWxpZ25tZW50KCk6IFNreVBvcG92ZXJBbGlnbm1lbnQge1xuICAgIHJldHVybiB0aGlzLiNfYWxpZ25tZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY2xvc2UgdGhlIHBvcG92ZXIgd2hlbiBpdCBsb3NlcyBmb2N1cy5cbiAgICogVG8gcmVxdWlyZSB1c2VycyB0byBjbGljayBhIHRyaWdnZXIgYnV0dG9uIHRvIGNsb3NlIHRoZSBwb3BvdmVyLCBzZXQgdGhpcyBpbnB1dCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNtaXNzT25CbHVyKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc21pc3NPbkJsdXIgPSB2YWx1ZSA/PyB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNtaXNzT25CbHVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZGlzbWlzc09uQmx1cjtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcGxhY2VtZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqIFRoZSBgc2t5UG9wb3ZlclBsYWNlbWVudGAgcHJvcGVydHkgb24gdGhlIHBvcG92ZXIgZGlyZWN0aXZlIHRha2VzIHByZWNlZGVuY2Ugb3ZlciB0aGlzIHByb3BlcnR5IHdoZW4gc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCBcImFib3ZlXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgcGxhY2VtZW50KHZhbHVlOiBTa3lQb3BvdmVyUGxhY2VtZW50IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3BsYWNlbWVudCA9IHZhbHVlID8/ICdhYm92ZSc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBsYWNlbWVudCgpOiBTa3lQb3BvdmVyUGxhY2VtZW50IHtcbiAgICByZXR1cm4gdGhpcy4jX3BsYWNlbWVudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgZm9yIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBvcG92ZXJUaXRsZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBwb3BvdmVyLlxuICAgKiBAZGVmYXVsdCBcImluZm9cIlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBwb3BvdmVyVHlwZSh2YWx1ZTogU2t5UG9wb3ZlclR5cGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfcG9wb3ZlclR5cGUgPSB2YWx1ZSA/PyAnaW5mbyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHBvcG92ZXJUeXBlKCk6IFNreVBvcG92ZXJUeXBlIHtcbiAgICByZXR1cm4gdGhpcy4jX3BvcG92ZXJUeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgY2xvc2UgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHBvcG92ZXJDbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNreVBvcG92ZXJDb21wb25lbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEZpcmVzIHdoZW4gdXNlcnMgb3BlbiB0aGUgcG9wb3Zlci5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcG9wb3Zlck9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8U2t5UG9wb3ZlckNvbXBvbmVudD4oKTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgcG9wb3ZlciBpcyBpbiB0aGUgcHJvY2VzcyBvZiBiZWluZyBvcGVuZWQgb3IgY2xvc2VkLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBpc0FjdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBVc2VkIGJ5IHVuaXQgdGVzdHMgdG8gZGlzYWJsZSBhbmltYXRpb25zIHNpbmNlIHRoZSBjb21wb25lbnQgaXMgaW5qZWN0ZWQgYXQgdGhlIGJvdHRvbSBvZiB0aGVcbiAgICogZG9jdW1lbnQgYm9keS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZW5hYmxlQW5pbWF0aW9ucyA9IHRydWU7XG5cbiAgcHVibGljIGlzTW91c2VFbnRlciA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ3RlbXBsYXRlUmVmJywge1xuICAgIHJlYWQ6IFRlbXBsYXRlUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHVuZGVmaW5lZDtcblxuICAjY29udGVudFJlZiE6IFNreVBvcG92ZXJDb250ZW50Q29tcG9uZW50O1xuXG4gICNpc01hcmtlZEZvckNsb3NlT25Nb3VzZUxlYXZlID0gZmFsc2U7XG5cbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICNvdmVybGF5OiBTa3lPdmVybGF5SW5zdGFuY2UgfCB1bmRlZmluZWQ7XG5cbiAgI19hbGlnbm1lbnQ6IFNreVBvcG92ZXJBbGlnbm1lbnQgPSAnY2VudGVyJztcblxuICAjX2Rpc21pc3NPbkJsdXIgPSB0cnVlO1xuXG4gICNfcGxhY2VtZW50OiBTa3lQb3BvdmVyUGxhY2VtZW50ID0gJ2Fib3ZlJztcblxuICAjX3BvcG92ZXJUeXBlOiBTa3lQb3BvdmVyVHlwZSA9ICdpbmZvJztcblxuICAjb3ZlcmxheVNlcnZpY2U6IFNreU92ZXJsYXlTZXJ2aWNlO1xuXG4gIGNvbnN0cnVjdG9yKG92ZXJsYXlTZXJ2aWNlOiBTa3lPdmVybGF5U2VydmljZSkge1xuICAgIHRoaXMuI292ZXJsYXlTZXJ2aWNlID0gb3ZlcmxheVNlcnZpY2U7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuXG4gICAgaWYgKHRoaXMuI292ZXJsYXkpIHtcbiAgICAgIHRoaXMuI292ZXJsYXlTZXJ2aWNlLmNsb3NlKHRoaXMuI292ZXJsYXkpO1xuICAgICAgdGhpcy4jb3ZlcmxheSA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUG9zaXRpb25zIHRoZSBwb3BvdmVyIG5leHQgdG8gYSBnaXZlbiBjYWxsZXIgZWxlbWVudC5cbiAgICogQHBhcmFtIGNhbGxlciBUaGUgZWxlbWVudCB0aGF0IG9wZW5lZCB0aGUgcG9wb3Zlci5cbiAgICogQHBhcmFtIHBsYWNlbWVudCBUaGUgcGxhY2VtZW50IG9mIHRoZSBwb3BvdmVyLlxuICAgKiBAcGFyYW0gYWxpZ25tZW50IFRoZSBob3Jpem9udGFsIGFsaWdubWVudCBvZiB0aGUgcG9wb3Zlci5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgcG9zaXRpb25OZXh0VG8oXG4gICAgY2FsbGVyOiBFbGVtZW50UmVmLFxuICAgIHBsYWNlbWVudD86IFNreVBvcG92ZXJQbGFjZW1lbnQsXG4gICAgYWxpZ25tZW50PzogU2t5UG9wb3ZlckFsaWdubWVudFxuICApOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuI292ZXJsYXkpIHtcbiAgICAgIHRoaXMuI3NldHVwT3ZlcmxheSgpO1xuICAgIH1cblxuICAgIHRoaXMucGxhY2VtZW50ID0gcGxhY2VtZW50ID8/IHRoaXMucGxhY2VtZW50O1xuICAgIHRoaXMuYWxpZ25tZW50ID0gYWxpZ25tZW50ID8/IHRoaXMuYWxpZ25tZW50O1xuICAgIHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuXG4gICAgdGhpcy4jY29udGVudFJlZi5vcGVuKGNhbGxlciwge1xuICAgICAgZGlzbWlzc09uQmx1cjogdGhpcy5kaXNtaXNzT25CbHVyLFxuICAgICAgZW5hYmxlQW5pbWF0aW9uczogdGhpcy5lbmFibGVBbmltYXRpb25zLFxuICAgICAgaG9yaXpvbnRhbEFsaWdubWVudDogdGhpcy5hbGlnbm1lbnQsXG4gICAgICBpc1N0YXRpYzogZmFsc2UsXG4gICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50LFxuICAgICAgcG9wb3ZlclRpdGxlOiB0aGlzLnBvcG92ZXJUaXRsZSxcbiAgICAgIHBvcG92ZXJUeXBlOiB0aGlzLnBvcG92ZXJUeXBlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgcG9wb3Zlci5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgLyppc3RhbmJ1bCBpZ25vcmUgbmV4dCovXG4gICAgdGhpcy4jY29udGVudFJlZj8uY2xvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCcmluZ3MgZm9jdXMgdG8gdGhlIHBvcG92ZXIgZWxlbWVudCBpZiBpdHMgb3Blbi5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgYXBwbHlGb2N1cygpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBuZXh0Ki9cbiAgICB0aGlzLiNjb250ZW50UmVmPy5hcHBseUZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGZsYWcgdG8gdGhlIHBvcG92ZXIgdG8gY2xvc2Ugd2hlbiB0aGUgbW91c2UgbGVhdmVzIHRoZSBwb3BvdmVyJ3MgYm91bmRzLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBtYXJrRm9yQ2xvc2VPbk1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgdGhpcy4jaXNNYXJrZWRGb3JDbG9zZU9uTW91c2VMZWF2ZSA9IHRydWU7XG4gIH1cblxuICAjc2V0dXBPdmVybGF5KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRlbXBsYXRlUmVmKSB7XG4gICAgICBjb25zdCBvdmVybGF5ID0gdGhpcy4jb3ZlcmxheVNlcnZpY2UuY3JlYXRlKHtcbiAgICAgICAgZW5hYmxlU2Nyb2xsOiB0cnVlLFxuICAgICAgICBlbmFibGVQb2ludGVyRXZlbnRzOiB0cnVlLFxuICAgICAgfSk7XG5cbiAgICAgIG92ZXJsYXkuYmFja2Ryb3BDbGlja1xuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmRpc21pc3NPbkJsdXIpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBjb25zdCBjb250ZW50UmVmID0gb3ZlcmxheS5hdHRhY2hDb21wb25lbnQoU2t5UG9wb3ZlckNvbnRlbnRDb21wb25lbnQsIFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFNreVBvcG92ZXJDb250ZXh0LFxuICAgICAgICAgIHVzZVZhbHVlOiBuZXcgU2t5UG9wb3ZlckNvbnRleHQoe1xuICAgICAgICAgICAgY29udGVudFRlbXBsYXRlUmVmOiB0aGlzLnRlbXBsYXRlUmVmLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9LFxuICAgICAgXSk7XG5cbiAgICAgIGNvbnRlbnRSZWYub3BlbmVkLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnBvcG92ZXJPcGVuZWQuZW1pdCh0aGlzKTtcbiAgICAgIH0pO1xuXG4gICAgICBjb250ZW50UmVmLmNsb3NlZC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICAgIGlmICh0aGlzLmlzQWN0aXZlICYmIHRoaXMuI292ZXJsYXkpIHtcbiAgICAgICAgICB0aGlzLiNvdmVybGF5U2VydmljZS5jbG9zZSh0aGlzLiNvdmVybGF5KTtcbiAgICAgICAgICB0aGlzLiNvdmVybGF5ID0gdW5kZWZpbmVkO1xuICAgICAgICAgIHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnBvcG92ZXJDbG9zZWQuZW1pdCh0aGlzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGNvbnRlbnRSZWYuaXNNb3VzZUVudGVyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgLnN1YnNjcmliZSgoaXNNb3VzZUVudGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5pc01vdXNlRW50ZXIgPSBpc01vdXNlRW50ZXI7XG4gICAgICAgICAgaWYgKHRoaXMuI2lzTWFya2VkRm9yQ2xvc2VPbk1vdXNlTGVhdmUpIHtcbiAgICAgICAgICAgIHRoaXMuI2lzTWFya2VkRm9yQ2xvc2VPbk1vdXNlTGVhdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICB0aGlzLiNvdmVybGF5ID0gb3ZlcmxheTtcbiAgICAgIHRoaXMuI2NvbnRlbnRSZWYgPSBjb250ZW50UmVmO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZVJlZj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -17,7 +17,7 @@ export class SkyPopoverDirective {
17
17
  __classPrivateFieldGet(this, _SkyPopoverDirective_instances, "m", _SkyPopoverDirective_subscribeMessageStream).call(this);
18
18
  }
19
19
  /**
20
- * Provides an RxJS `Subject` to send commands to the popover that respect the `SkyPopoverMessage` type.
20
+ * The RxJS `Subject` to send commands to the popover that respect the `SkyPopoverMessage` type.
21
21
  */
22
22
  set skyPopoverMessageStream(value) {
23
23
  __classPrivateFieldSet(this, _SkyPopoverDirective__skyPopoverMessageStream, value ?? new Subject(), "f");
@@ -27,7 +27,7 @@ export class SkyPopoverDirective {
27
27
  return __classPrivateFieldGet(this, _SkyPopoverDirective__skyPopoverMessageStream, "f");
28
28
  }
29
29
  /**
30
- * Specifies the user action that displays the popover.
30
+ * The user action that displays the popover.
31
31
  */
32
32
  set skyPopoverTrigger(value) {
33
33
  __classPrivateFieldSet(this, _SkyPopoverDirective__trigger, value ?? 'click', "f");
@@ -183,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.11", ngImpo
183
183
  }], skyPopoverTrigger: [{
184
184
  type: Input
185
185
  }] } });
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUszQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFPckUsTUFBTSxPQUFPLG1CQUFtQjtJQXlEOUIsWUFBWSxVQUFzQjs7UUE1QmxDLHdEQUE0QixJQUFJLE9BQU8sRUFBcUIsRUFBQztRQUU3RCx3REFBNEM7UUFvQjVDLDZDQUFpQixJQUFJLE9BQU8sRUFBUSxFQUFDO1FBRXJDLHdDQUErQixPQUFPLEVBQUM7UUFFdkMsa0RBQXdCO1FBR3RCLHVCQUFBLElBQUksbUNBQWUsVUFBVSxNQUFBLENBQUM7UUFDOUIsdUJBQUEsSUFBSSxtRkFBd0IsTUFBNUIsSUFBSSxDQUEwQixDQUFDO0lBQ2pDLENBQUM7SUE5Q0Q7O09BRUc7SUFDSCxJQUNXLHVCQUF1QixDQUNoQyxLQUE2QztRQUU3Qyx1QkFBQSxJQUFJLGlEQUE2QixLQUFLLElBQUksSUFBSSxPQUFPLEVBQXFCLE1BQUEsQ0FBQztRQUMzRSx1QkFBQSxJQUFJLG1GQUF3QixNQUE1QixJQUFJLENBQTBCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQVcsdUJBQXVCO1FBQ2hDLE9BQU8sdUJBQUEsSUFBSSxxREFBMEIsQ0FBQztJQUN4QyxDQUFDO0lBWUQ7O09BRUc7SUFDSCxJQUNXLGlCQUFpQixD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QUMsU0FBUyxDQUM3RCxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ1YsdUJBQUEsSUFBSSxtRkFBd0IsTUFBNUIsSUFBSSxFQUF5QixPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQ0YsTUFBQSxDQUFDO0FBQ0osQ0FBQztJQUdDLElBQUksdUJBQUEsSUFBSSw2Q0FBa0IsRUFBRTtRQUMxQix1QkFBQSxJQUFJLDZDQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLHVCQUFBLElBQUkseUNBQXFCLFNBQVMsTUFBQSxDQUFDO0tBQ3BDO0FBQ0gsQ0FBQztpSEF2T1UsbUJBQW1CO3FHQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztpQkFDekI7aUdBT1EsVUFBVTtzQkFEaEIsS0FBSztnQkFPQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssdUJBQXVCO3NCQURqQyxLQUFLO2dCQW9CQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssaUJBQWlCO3NCQUQzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmcm9tRXZlbnQgYXMgb2JzZXJ2YWJsZUZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyTWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlJztcbmltcG9ydCB7IFNreVBvcG92ZXJNZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclBsYWNlbWVudCB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1wbGFjZW1lbnQnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3R5cGVzL3BvcG92ZXItdHJpZ2dlcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lQb3BvdmVyXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBSZWZlcmVuY2VzIHRoZSBwb3BvdmVyIGNvbXBvbmVudCB0byBkaXNwbGF5LiBBZGQgdGhpcyBkaXJlY3RpdmUgdG8gdGhlIHRyaWdnZXIgZWxlbWVudCB0aGF0IG9wZW5zIHRoZSBwb3BvdmVyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza3lQb3BvdmVyOiBTa3lQb3BvdmVyQ29tcG9uZW50IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2t5UG9wb3ZlckFsaWdubWVudDogU2t5UG9wb3ZlckFsaWdubWVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogUHJvdmlkZXMgYW4gUnhKUyBgU3ViamVjdGAgdG8gc2VuZCBjb21tYW5kcyB0byB0aGUgcG9wb3ZlciB0aGF0IHJlc3BlY3QgdGhlIGBTa3lQb3BvdmVyTWVzc2FnZWAgdHlwZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0oXG4gICAgdmFsdWU6IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+IHwgdW5kZWZpbmVkXG4gICkge1xuICAgIHRoaXMuI19za3lQb3BvdmVyTWVzc2FnZVN0cmVhbSA9IHZhbHVlID8/IG5ldyBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPigpO1xuICAgIHRoaXMuI3N1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0oKTogU3ViamVjdDxTa3lQb3BvdmVyTWVzc2FnZT4ge1xuICAgIHJldHVybiB0aGlzLiNfc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW07XG4gIH1cblxuICAjX3NreVBvcG92ZXJNZXNzYWdlU3RyZWFtID0gbmV3IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+KCk7XG5cbiAgI21lc3NhZ2VTdHJlYW1TdWI6IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBwbGFjZW1lbnQgb2YgdGhlIHBvcG92ZXIgaW4gcmVsYXRpb24gdG8gdGhlIHRyaWdnZXIgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza3lQb3BvdmVyUGxhY2VtZW50OiBTa3lQb3BvdmVyUGxhY2VtZW50IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHVzZXIgYWN0aW9uIHRoYXQgZGlzcGxheXMgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVBvcG92ZXJUcmlnZ2VyKHZhbHVlOiBTa3lQb3BvdmVyVHJpZ2dlciB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI190cmlnZ2VyID0gdmFsdWUgPz8gJ2NsaWNrJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2t5UG9wb3ZlclRyaWdnZXIoKTogU2t5UG9wb3ZlclRyaWdnZXIge1xuICAgIHJldHVybiB0aGlzLiNfdHJpZ2dlcjtcbiAgfVxuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjX3RyaWdnZXI6IFNreVBvcG92ZXJUcmlnZ2VyID0gJ2NsaWNrJztcblxuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcihlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy4jc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI2FkZEV2ZW50TGlzdGVuZXJzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLiN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVQb3BvdmVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5PcGVuKTtcbiAgfVxuXG4gICNwb3NpdGlvblBvcG92ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5za3lQb3BvdmVyPy5wb3NpdGlvbk5leHRUbyhcbiAgICAgIHRoaXMuI2VsZW1lbnRSZWYsXG4gICAgICB0aGlzLnNreVBvcG92ZXJQbGFjZW1lbnQsXG4gICAgICB0aGlzLnNreVBvcG92ZXJBbGlnbm1lbnRcbiAgICApO1xuICB9XG5cbiAgI2Nsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICB0aGlzLnNreVBvcG92ZXI/LmNsb3NlKCk7XG4gIH1cblxuICAjY2xvc2VQb3BvdmVyT3JNYXJrRm9yQ2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2t5UG9wb3Zlcj8uaXNNb3VzZUVudGVyKSB7XG4gICAgICB0aGlzLnNreVBvcG92ZXIubWFya0ZvckNsb3NlT25Nb3VzZUxlYXZlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgfVxuICB9XG5cbiAgI2FkZEV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGVsZW1lbnQsICdrZXlkb3duJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5za3lQb3BvdmVyPy5pc0FjdGl2ZSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAgIHN3aXRjaCAoa2V5KSB7XG4gICAgICAgICAgY2FzZSAnZXNjYXBlJzpcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgIGNhc2UgJ3RhYic6XG4gICAgICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyLmRpc21pc3NPbkJsdXIpIHtcbiAgICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAnYXJyb3dkb3duJzpcbiAgICAgICAgICBjYXNlICdhcnJvd2xlZnQnOlxuICAgICAgICAgIGNhc2UgJ2Fycm93cmlnaHQnOlxuICAgICAgICAgIGNhc2UgJ2Fycm93dXAnOlxuICAgICAgICAgIGNhc2UgJ2Rvd24nOlxuICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICBjYXNlICd1cCc6XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuRm9jdXMpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnY2xpY2snKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIpIHtcbiAgICAgICAgICB0aGlzLnRvZ2dsZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdtb3VzZWVudGVyJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLiNuZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyKSB7XG4gICAgICAgICAgdGhpcy5za3lQb3BvdmVyLmlzTW91c2VFbnRlciA9IHRydWU7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuc2t5UG9wb3Zlci5pc0FjdGl2ZSAmJlxuICAgICAgICAgICAgdGhpcy5za3lQb3BvdmVyVHJpZ2dlciA9PT0gJ21vdXNlZW50ZXInXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuT3Blbik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ21vdXNlbGVhdmUnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIpIHtcbiAgICAgICAgICB0aGlzLnNreVBvcG92ZXIuaXNNb3VzZUVudGVyID0gZmFsc2U7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5za3lQb3BvdmVyLmlzQWN0aXZlICYmXG4gICAgICAgICAgICB0aGlzLnNreVBvcG92ZXJUcmlnZ2VyID09PSAnbW91c2VlbnRlcidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIC8vIEdpdmUgdGhlIHBvcG92ZXIgYSBjaGFuY2UgdG8gc2V0IGl0cyBpc01vdXNlRW50ZXIgZmxhZyBiZWZvcmUgY2hlY2tpbmcgdG8gc2VlXG4gICAgICAgICAgICAvLyBpZiBpdCBzaG91bGQgYmUgY2xvc2VkLlxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuI2Nsb3NlUG9wb3Zlck9yTWFya0ZvckNsb3NlKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgI3JlbW92ZUV2ZW50TGlzdGVuZXJzKCk6IHZvaWQge1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuI25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gICNoYW5kbGVJbmNvbWluZ01lc3NhZ2VzKG1lc3NhZ2U6IFNreVBvcG92ZXJNZXNzYWdlKTogdm9pZCB7XG4gICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLk9wZW46XG4gICAgICAgIHRoaXMuI3Bvc2l0aW9uUG9wb3ZlcigpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSBTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2U6XG4gICAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UqL1xuICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyPy5pc0FjdGl2ZSkge1xuICAgICAgICAgIHRoaXMuI2Nsb3NlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVBvcG92ZXJNZXNzYWdlVHlwZS5SZXBvc2l0aW9uOlxuICAgICAgICAvLyBPbmx5IHJlcG9zaXRpb24gdGhlIHBvcG92ZXIgaWYgaXQgaXMgYWxyZWFkeSBvcGVuLlxuICAgICAgICBpZiAodGhpcy5za3lQb3BvdmVyPy5pc0FjdGl2ZSkge1xuICAgICAgICAgIHRoaXMuI3Bvc2l0aW9uUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVBvcG92ZXJNZXNzYWdlVHlwZS5Gb2N1czpcbiAgICAgICAgdGhpcy5za3lQb3BvdmVyPy5hcHBseUZvY3VzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gICNzZW5kTWVzc2FnZShtZXNzYWdlVHlwZTogU2t5UG9wb3Zlck1lc3NhZ2VUeXBlKTogdm9pZCB7XG4gICAgdGhpcy5za3lQb3BvdmVyTWVzc2FnZVN0cmVhbS5uZXh0KHsgdHlwZTogbWVzc2FnZVR5cGUgfSk7XG4gIH1cblxuICAjc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpOiB2b2lkIHtcbiAgICB0aGlzLiN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTtcblxuICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIgPSB0aGlzLnNreVBvcG92ZXJNZXNzYWdlU3RyZWFtLnN1YnNjcmliZShcbiAgICAgIChtZXNzYWdlKSA9PiB7XG4gICAgICAgIHRoaXMuI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZSk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gICN1bnN1YnNjcmliZU1lc3NhZ2VTdHJlYW0oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIpIHtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuI21lc3NhZ2VTdHJlYW1TdWIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG4iXX0=
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvcG9wb3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxJQUFJLG1CQUFtQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUszQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFPckUsTUFBTSxPQUFPLG1CQUFtQjtJQXlEOUIsWUFBWSxVQUFzQjs7UUE1QmxDLHdEQUE0QixJQUFJLE9BQU8sRUFBcUIsRUFBQztRQUU3RCx3REFBNEM7UUFvQjVDLDZDQUFpQixJQUFJLE9BQU8sRUFBUSxFQUFDO1FBRXJDLHdDQUErQixPQUFPLEVBQUM7UUFFdkMsa0RBQXdCO1FBR3RCLHVCQUFBLElBQUksbUNBQWUsVUFBVSxNQUFBLENBQUM7UUFDOUIsdUJBQUEsSUFBSSxtRkFBd0IsTUFBNUIsSUFBSSxDQUEwQixDQUFDO0lBQ2pDLENBQUM7SUE5Q0Q7O09BRUc7SUFDSCxJQUNXLHVCQUF1QixDQUNoQyxLQUE2QztRQUU3Qyx1QkFBQSxJQUFJLGlEQUE2QixLQUFLLElBQUksSUFBSSxPQUFPLEVBQXFCLE1BQUEsQ0FBQztRQUMzRSx1QkFBQSxJQUFJLG1GQUF3QixNQUE1QixJQUFJLENBQTBCLENBQUM7SUFDakMsQ0FBQztJQUVELElBQVcsdUJBQXVCO1FBQ2hDLE9BQU8sdUJBQUEsSUFBSSxxREFBMEIsQ0FBQztJQUN4QyxDQUFDO0lBWUQ7O09BRUc7SUFDSCxJQUNXLGlCQUFpQixD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QUMsU0FBUyxDQUM3RCxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ1YsdUJBQUEsSUFBSSxtRkFBd0IsTUFBNUIsSUFBSSxFQUF5QixPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQ0YsTUFBQSxDQUFDO0FBQ0osQ0FBQztJQUdDLElBQUksdUJBQUEsSUFBSSw2Q0FBa0IsRUFBRTtRQUMxQix1QkFBQSxJQUFJLDZDQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLHVCQUFBLElBQUkseUNBQXFCLFNBQVMsTUFBQSxDQUFDO0tBQ3BDO0FBQ0gsQ0FBQztpSEF2T1UsbUJBQW1CO3FHQUFuQixtQkFBbUI7NEZBQW5CLG1CQUFtQjtrQkFIL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztpQkFDekI7aUdBT1EsVUFBVTtzQkFEaEIsS0FBSztnQkFPQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssdUJBQXVCO3NCQURqQyxLQUFLO2dCQW9CQyxtQkFBbUI7c0JBRHpCLEtBQUs7Z0JBT0ssaUJBQWlCO3NCQUQzQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBmcm9tRXZlbnQgYXMgb2JzZXJ2YWJsZUZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyQWxpZ25tZW50IH0gZnJvbSAnLi90eXBlcy9wb3BvdmVyLWFsaWdubWVudCc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyTWVzc2FnZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlJztcbmltcG9ydCB7IFNreVBvcG92ZXJNZXNzYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1tZXNzYWdlLXR5cGUnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclBsYWNlbWVudCB9IGZyb20gJy4vdHlwZXMvcG9wb3Zlci1wbGFjZW1lbnQnO1xuaW1wb3J0IHsgU2t5UG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3R5cGVzL3BvcG92ZXItdHJpZ2dlcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tza3lQb3BvdmVyXScsXG59KVxuZXhwb3J0IGNsYXNzIFNreVBvcG92ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBUaGUgcG9wb3ZlciBjb21wb25lbnQgdG8gZGlzcGxheS4gQWRkIHRoaXMgZGlyZWN0aXZlIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQgdGhhdCBvcGVucyB0aGUgcG9wb3Zlci5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2t5UG9wb3ZlcjogU2t5UG9wb3ZlckNvbXBvbmVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBwb3BvdmVyIGluIHJlbGF0aW9uIHRvIHRoZSB0cmlnZ2VyIGVsZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2t5UG9wb3ZlckFsaWdubWVudDogU2t5UG9wb3ZlckFsaWdubWVudCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIFJ4SlMgYFN1YmplY3RgIHRvIHNlbmQgY29tbWFuZHMgdG8gdGhlIHBvcG92ZXIgdGhhdCByZXNwZWN0IHRoZSBgU2t5UG9wb3Zlck1lc3NhZ2VgIHR5cGUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNreVBvcG92ZXJNZXNzYWdlU3RyZWFtKFxuICAgIHZhbHVlOiBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPiB8IHVuZGVmaW5lZFxuICApIHtcbiAgICB0aGlzLiNfc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0gPSB2YWx1ZSA/PyBuZXcgU3ViamVjdDxTa3lQb3BvdmVyTWVzc2FnZT4oKTtcbiAgICB0aGlzLiNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNreVBvcG92ZXJNZXNzYWdlU3RyZWFtKCk6IFN1YmplY3Q8U2t5UG9wb3Zlck1lc3NhZ2U+IHtcbiAgICByZXR1cm4gdGhpcy4jX3NreVBvcG92ZXJNZXNzYWdlU3RyZWFtO1xuICB9XG5cbiAgI19za3lQb3BvdmVyTWVzc2FnZVN0cmVhbSA9IG5ldyBTdWJqZWN0PFNreVBvcG92ZXJNZXNzYWdlPigpO1xuXG4gICNtZXNzYWdlU3RyZWFtU3ViOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGFjZW1lbnQgb2YgdGhlIHBvcG92ZXIgaW4gcmVsYXRpb24gdG8gdGhlIHRyaWdnZXIgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBza3lQb3BvdmVyUGxhY2VtZW50OiBTa3lQb3BvdmVyUGxhY2VtZW50IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlciBhY3Rpb24gdGhhdCBkaXNwbGF5cyB0aGUgcG9wb3Zlci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2t5UG9wb3ZlclRyaWdnZXIodmFsdWU6IFNreVBvcG92ZXJUcmlnZ2VyIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RyaWdnZXIgPSB2YWx1ZSA/PyAnY2xpY2snO1xuICB9XG5cbiAgcHVibGljIGdldCBza3lQb3BvdmVyVHJpZ2dlcigpOiBTa3lQb3BvdmVyVHJpZ2dlciB7XG4gICAgcmV0dXJuIHRoaXMuI190cmlnZ2VyO1xuICB9XG5cbiAgI25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICNfdHJpZ2dlcjogU2t5UG9wb3ZlclRyaWdnZXIgPSAnY2xpY2snO1xuXG4gICNlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICB0aGlzLiNlbGVtZW50UmVmID0gZWxlbWVudFJlZjtcbiAgICB0aGlzLiNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy4jYWRkRXZlbnRMaXN0ZW5lcnMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNyZW1vdmVFdmVudExpc3RlbmVycygpO1xuICAgIHRoaXMuI3Vuc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2t5UG9wb3Zlcj8uaXNBY3RpdmUpIHtcbiAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLk9wZW4pO1xuICB9XG5cbiAgI3Bvc2l0aW9uUG9wb3ZlcigpOiB2b2lkIHtcbiAgICB0aGlzLnNreVBvcG92ZXI/LnBvc2l0aW9uTmV4dFRvKFxuICAgICAgdGhpcy4jZWxlbWVudFJlZixcbiAgICAgIHRoaXMuc2t5UG9wb3ZlclBsYWNlbWVudCxcbiAgICAgIHRoaXMuc2t5UG9wb3ZlckFsaWdubWVudFxuICAgICk7XG4gIH1cblxuICAjY2xvc2VQb3BvdmVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2t5UG9wb3Zlcj8uY2xvc2UoKTtcbiAgfVxuXG4gICNjbG9zZVBvcG92ZXJPck1hcmtGb3JDbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5za3lQb3BvdmVyPy5pc01vdXNlRW50ZXIpIHtcbiAgICAgIHRoaXMuc2t5UG9wb3Zlci5tYXJrRm9yQ2xvc2VPbk1vdXNlTGVhdmUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICB9XG4gIH1cblxuICAjYWRkRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4oZWxlbWVudCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5ID0gZXZlbnQua2V5LnRvTG93ZXJDYXNlKCk7XG5cbiAgICAgICAgc3dpdGNoIChrZXkpIHtcbiAgICAgICAgICBjYXNlICdlc2NhcGUnOlxuICAgICAgICAgICAgdGhpcy4jc2VuZE1lc3NhZ2UoU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkNsb3NlKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgY2FzZSAndGFiJzpcbiAgICAgICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIuZGlzbWlzc09uQmx1cikge1xuICAgICAgICAgICAgICB0aGlzLiNzZW5kTWVzc2FnZShTa3lQb3BvdmVyTWVzc2FnZVR5cGUuQ2xvc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICBjYXNlICdhcnJvd2Rvd24nOlxuICAgICAgICAgIGNhc2UgJ2Fycm93bGVmdCc6XG4gICAgICAgICAgY2FzZSAnYXJyb3dyaWdodCc6XG4gICAgICAgICAgY2FzZSAnYXJyb3d1cCc6XG4gICAgICAgICAgY2FzZSAnZG93bic6XG4gICAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICAgIGNhc2UgJ3VwJzpcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5Gb2N1cyk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBvYnNlcnZhYmxlRnJvbUV2ZW50KGVsZW1lbnQsICdjbGljaycpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIHRoaXMudG9nZ2xlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIG9ic2VydmFibGVGcm9tRXZlbnQoZWxlbWVudCwgJ21vdXNlZW50ZXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXIpIHtcbiAgICAgICAgICB0aGlzLnNreVBvcG92ZXIuaXNNb3VzZUVudGVyID0gdHJ1ZTtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdGhpcy5za3lQb3BvdmVyLmlzQWN0aXZlICYmXG4gICAgICAgICAgICB0aGlzLnNreVBvcG92ZXJUcmlnZ2VyID09PSAnbW91c2VlbnRlcidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuI3NlbmRNZXNzYWdlKFNreVBvcG92ZXJNZXNzYWdlVHlwZS5PcGVuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgb2JzZXJ2YWJsZUZyb21FdmVudChlbGVtZW50LCAnbW91c2VsZWF2ZScpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuc2t5UG9wb3Zlcikge1xuICAgICAgICAgIHRoaXMuc2t5UG9wb3Zlci5pc01vdXNlRW50ZXIgPSBmYWxzZTtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLnNreVBvcG92ZXIuaXNBY3RpdmUgJiZcbiAgICAgICAgICAgIHRoaXMuc2t5UG9wb3ZlclRyaWdnZXIgPT09ICdtb3VzZWVudGVyJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgLy8gR2l2ZSB0aGUgcG9wb3ZlciBhIGNoYW5jZSB0byBzZXQgaXRzIGlzTW91c2VFbnRlciBmbGFnIGJlZm9yZSBjaGVja2luZyB0byBzZWVcbiAgICAgICAgICAgIC8vIGlmIGl0IHNob3VsZCBiZSBjbG9zZWQuXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy4jY2xvc2VQb3BvdmVyT3JNYXJrRm9yQ2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAjcmVtb3ZlRXZlbnRMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgI2hhbmRsZUluY29taW5nTWVzc2FnZXMobWVzc2FnZTogU2t5UG9wb3Zlck1lc3NhZ2UpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSBTa3lQb3BvdmVyTWVzc2FnZVR5cGUuT3BlbjpcbiAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFNreVBvcG92ZXJNZXNzYWdlVHlwZS5DbG9zZTpcbiAgICAgICAgLyppc3RhbmJ1bCBpZ25vcmUgZWxzZSovXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLlJlcG9zaXRpb246XG4gICAgICAgIC8vIE9ubHkgcmVwb3NpdGlvbiB0aGUgcG9wb3ZlciBpZiBpdCBpcyBhbHJlYWR5IG9wZW4uXG4gICAgICAgIGlmICh0aGlzLnNreVBvcG92ZXI/LmlzQWN0aXZlKSB7XG4gICAgICAgICAgdGhpcy4jcG9zaXRpb25Qb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG5cbiAgICAgIGNhc2UgU2t5UG9wb3Zlck1lc3NhZ2VUeXBlLkZvY3VzOlxuICAgICAgICB0aGlzLnNreVBvcG92ZXI/LmFwcGx5Rm9jdXMoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgI3NlbmRNZXNzYWdlKG1lc3NhZ2VUeXBlOiBTa3lQb3BvdmVyTWVzc2FnZVR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLnNreVBvcG92ZXJNZXNzYWdlU3RyZWFtLm5leHQoeyB0eXBlOiBtZXNzYWdlVHlwZSB9KTtcbiAgfVxuXG4gICNzdWJzY3JpYmVNZXNzYWdlU3RyZWFtKCk6IHZvaWQge1xuICAgIHRoaXMuI3Vuc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpO1xuXG4gICAgdGhpcy4jbWVzc2FnZVN0cmVhbVN1YiA9IHRoaXMuc2t5UG9wb3Zlck1lc3NhZ2VTdHJlYW0uc3Vic2NyaWJlKFxuICAgICAgKG1lc3NhZ2UpID0+IHtcbiAgICAgICAgdGhpcy4jaGFuZGxlSW5jb21pbmdNZXNzYWdlcyhtZXNzYWdlKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgI3Vuc3Vic2NyaWJlTWVzc2FnZVN0cmVhbSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy4jbWVzc2FnZVN0cmVhbVN1Yikge1xuICAgICAgdGhpcy4jbWVzc2FnZVN0cmVhbVN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy4jbWVzc2FnZVN0cmVhbVN1YiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Specifies the type of message to send to the popover component.
2
+ * The type of message to send to the popover component.
3
3
  */
4
4
  export var SkyPopoverMessageType;
5
5
  (function (SkyPopoverMessageType) {
@@ -21,4 +21,4 @@ export var SkyPopoverMessageType;
21
21
  */
22
22
  SkyPopoverMessageType[SkyPopoverMessageType["Focus"] = 3] = "Focus";
23
23
  })(SkyPopoverMessageType || (SkyPopoverMessageType = {}));
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1tZXNzYWdlLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvdHlwZXMvcG9wb3Zlci1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxxQkFxQlg7QUFyQkQsV0FBWSxxQkFBcUI7SUFDL0I7O09BRUc7SUFDSCxpRUFBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCxtRUFBUyxDQUFBO0lBRVQ7OztPQUdHO0lBQ0gsNkVBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsbUVBQVMsQ0FBQTtBQUNYLENBQUMsRUFyQlcscUJBQXFCLEtBQXJCLHFCQUFxQixRQXFCaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNwZWNpZmllcyB0aGUgdHlwZSBvZiBtZXNzYWdlIHRvIHNlbmQgdG8gdGhlIHBvcG92ZXIgY29tcG9uZW50LlxuICovXG5leHBvcnQgZW51bSBTa3lQb3BvdmVyTWVzc2FnZVR5cGUge1xuICAvKipcbiAgICogT3BlbnMgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBPcGVuID0gMCxcblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBwb3BvdmVyLlxuICAgKi9cbiAgQ2xvc2UgPSAxLFxuXG4gIC8qKlxuICAgKiBSZXBvc2l0aW9ucyB0aGUgcG9wb3ZlciB0byB0aGUgYXBwcm9wcmlhdGUgcG9zaXRpb24uXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciB3aGVuIHRoZSBwb3BvdmVyJ3Mgd2lkdGggYW5kIGhlaWdodCBjaGFuZ2Ugd2hpbGUgaXQgaXMgb3Blbi5cbiAgICovXG4gIFJlcG9zaXRpb24gPSAyLFxuXG4gIC8qKlxuICAgKiBCcmluZ3MgZm9jdXMgdG8gdGhlIHBvcG92ZXIgZWxlbWVudC5cbiAgICovXG4gIEZvY3VzID0gMyxcbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1tZXNzYWdlLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcG9wb3ZlcnMvc3JjL2xpYi9tb2R1bGVzL3BvcG92ZXIvdHlwZXMvcG9wb3Zlci1tZXNzYWdlLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxxQkFxQlg7QUFyQkQsV0FBWSxxQkFBcUI7SUFDL0I7O09BRUc7SUFDSCxpRUFBUSxDQUFBO0lBRVI7O09BRUc7SUFDSCxtRUFBUyxDQUFBO0lBRVQ7OztPQUdHO0lBQ0gsNkVBQWMsQ0FBQTtJQUVkOztPQUVHO0lBQ0gsbUVBQVMsQ0FBQTtBQUNYLENBQUMsRUFyQlcscUJBQXFCLEtBQXJCLHFCQUFxQixRQXFCaEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gc2VuZCB0byB0aGUgcG9wb3ZlciBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIFNreVBvcG92ZXJNZXNzYWdlVHlwZSB7XG4gIC8qKlxuICAgKiBPcGVucyB0aGUgcG9wb3Zlci5cbiAgICovXG4gIE9wZW4gPSAwLFxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIHBvcG92ZXIuXG4gICAqL1xuICBDbG9zZSA9IDEsXG5cbiAgLyoqXG4gICAqIFJlcG9zaXRpb25zIHRoZSBwb3BvdmVyIHRvIHRoZSBhcHByb3ByaWF0ZSBwb3NpdGlvbi5cbiAgICogVGhpcyBpcyB1c2VmdWwgZm9yIHdoZW4gdGhlIHBvcG92ZXIncyB3aWR0aCBhbmQgaGVpZ2h0IGNoYW5nZSB3aGlsZSBpdCBpcyBvcGVuLlxuICAgKi9cbiAgUmVwb3NpdGlvbiA9IDIsXG5cbiAgLyoqXG4gICAqIEJyaW5ncyBmb2N1cyB0byB0aGUgcG9wb3ZlciBlbGVtZW50LlxuICAgKi9cbiAgRm9jdXMgPSAzLFxufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10cmlnZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9wb3BvdmVyL3R5cGVzL3BvcG92ZXItdHJpZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTcGVjaWZpZXMgdGhlIHVzZXIgYWN0aW9uIHRoYXQgZGlzcGxheXMgdGhlIHBvcG92ZXIuXG4gKi9cbmV4cG9ydCB0eXBlIFNreVBvcG92ZXJUcmlnZ2VyID0gJ2NsaWNrJyB8ICdtb3VzZWVudGVyJztcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10cmlnZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3BvcG92ZXJzL3NyYy9saWIvbW9kdWxlcy9wb3BvdmVyL3R5cGVzL3BvcG92ZXItdHJpZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGUgdXNlciBhY3Rpb24gdGhhdCBkaXNwbGF5cyB0aGUgcG9wb3Zlci5cbiAqL1xuZXhwb3J0IHR5cGUgU2t5UG9wb3ZlclRyaWdnZXIgPSAnY2xpY2snIHwgJ21vdXNlZW50ZXInO1xuIl19
@@ -49,7 +49,7 @@ export class SkyDropdownFixture {
49
49
  };
50
50
  }
51
51
  /**
52
- * Indicates if the dropdown menu is open and visible.
52
+ * Whether the dropdown menu is open and visible.
53
53
  */
54
54
  get dropdownMenuIsVisible() {
55
55
  return this.getDropdownMenuContent() !== undefined;
@@ -134,4 +134,4 @@ _SkyDropdownFixture_debugEl = new WeakMap(), _SkyDropdownFixture_fixture = new W
134
134
  }
135
135
  return found;
136
136
  };
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tZml4dHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9wb3BvdmVycy90ZXN0aW5nL3NyYy9kcm9wZG93bi9kcm9wZG93bi1maXh0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBTXZEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQW9EN0IsWUFBWSxPQUFrQyxFQUFFLFNBQWlCOztRQUpqRSw4Q0FBdUI7UUFFdkIsOENBQW9DO1FBR2xDLHVCQUFBLElBQUksK0JBQVksT0FBTyxNQUFBLENBQUM7UUFDeEIsdUJBQUEsSUFBSSwrQkFBWSxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FDdkQsT0FBTyxFQUNQLFNBQVMsRUFDVCxjQUFjLENBQ2YsTUFBQSxDQUFDO0lBQ0osQ0FBQztJQTFERDs7T0FFRztJQUNILElBQVcsUUFBUTtRQUNqQixNQUFNLE1BQU0sR0FBRyx1QkFBQSxJQUFJLGlGQUFvQixDQUFDO1FBQ3hDLE9BQU87WUFDTCxXQUFXLEVBQUUsdUJBQUEsSUFBSSx5RUFBZ0IsTUFBcEIsSUFBSSxFQUFpQixNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2pELFVBQVUsRUFBRSx1QkFBQSxJQUFJLHdFQUFlLE1BQW5CLElBQUksRUFBZ0IsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUMvQyxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRO1lBQ3ZDLEtBQUssRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUM7WUFDdEQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztTQUNsRCxDQUFDO0lBQ0osQ0FBQztJQUVE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Z0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0FBQ3hELENBQUM7SUFHQyxPQUFPLFFBQVEsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDL0MsQ0FBQyxtRkFFZSxVQUFzQztJQUNwRCxJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO1FBQ2pDLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsSUFBSSxVQUFVLENBQUMsaUJBQWlCLENBQUMsRUFBRTtRQUNqQyxPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE9BQU87QUFDVCxDQUFDLGlGQUVjLFVBQXNDO0lBQ25ELE1BQU0sTUFBTSxHQUFHLDJCQUEyQixDQUFDO0lBRTNDLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNmLEtBQUssTUFBTSxDQUFDLElBQUksVUFBVSxFQUFFO1FBQzFCLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDMUIsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQy9CO1NBQ0Y7S0FDRjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlYnVnRWxlbWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgeyBCeSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgU2t5QXBwVGVzdFV0aWxpdHkgfSBmcm9tICdAc2t5dXgtc2RrL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93biB9IGZyb20gJy4vcG9wb3ZlcnMtZml4dHVyZS1kcm9wZG93bic7XG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93bkl0ZW0gfSBmcm9tICcuL3BvcG92ZXJzLWZpeHR1cmUtZHJvcGRvd24taXRlbSc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93bk1lbnUgfSBmcm9tICcuL3BvcG92ZXJzLWZpeHR1cmUtZHJvcGRvd24tbWVudSc7XG5cbi8qKlxuICogUHJvdmlkZXMgaW5mb3JtYXRpb24gZm9yIGFuZCBpbnRlcmFjdGlvbiB3aXRoIGEgU0tZIFVYIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAqIEJ5IHVzaW5nIHRoZSBmaXh0dXJlIEFQSSwgYSB0ZXN0IGluc3VsYXRlcyBpdHNlbGYgYWdhaW5zdCB1cGRhdGVzIHRvIHRoZSBpbnRlcm5hbHNcbiAqIG9mIGEgY29tcG9uZW50LCBzdWNoIGFzIGNoYW5naW5nIGl0cyBET00gc3RydWN0dXJlLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEcm9wZG93bkZpeHR1cmUge1xuICAvKipcbiAgICogUmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBkcm9wZG93bigpOiBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93biB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgYnV0dG9uID0gdGhpcy4jYnV0dG9uRGVidWdFbGVtZW50O1xuICAgIHJldHVybiB7XG4gICAgICBidXR0b25TdHlsZTogdGhpcy4jZ2V0QnV0dG9uU3R5bGUoYnV0dG9uLmNsYXNzZXMpLFxuICAgICAgYnV0dG9uVHlwZTogdGhpcy4jZ2V0QnV0dG9uVHlwZShidXR0b24uY2xhc3NlcyksXG4gICAgICBkaXNhYmxlZDogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQsXG4gICAgICBsYWJlbDogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJyksXG4gICAgICB0aXRsZTogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0aXRsZScpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZHJvcGRvd24gYnV0dG9uJ3MgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZHJvcGRvd25CdXR0b25UZXh0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIFNreUFwcFRlc3RVdGlsaXR5LmdldFRleHQodGhpcy4jYnV0dG9uRGVidWdFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGRyb3Bkb3duIG1lbnUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBkcm9wZG93bk1lbnUoKTogU2t5UG9wb3ZlcnNGaXh0dXJlRHJvcGRvd25NZW51IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBtZW51ID0gdGhpcy5nZXREcm9wZG93bk1lbnVDb250ZW50KCk7XG4gICAgaWYgKCFtZW51KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFyaWFMYWJlbGxlZEJ5OiBtZW51LmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbGxlZGJ5JyksXG4gICAgICBhcmlhUm9sZTogbWVudS5nZXRBdHRyaWJ1dGUoJ3JvbGUnKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgZHJvcGRvd24gbWVudSBpcyBvcGVuIGFuZCB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGdldCBkcm9wZG93bk1lbnVJc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RHJvcGRvd25NZW51Q29udGVudCgpICE9PSB1bmRlZmluZWQ7XG4gIH1cblxuICBnZXQgI2J1dHRvbkRlYnVnRWxlbWVudCgpOiBEZWJ1Z0VsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLiNkZWJ1Z0VsLnF1ZXJ5KEJ5LmNzcygnLnNreS1kcm9wZG93bi1idXR0b24nKSk7XG4gIH1cblxuICAjZGVidWdFbDogRGVidWdFbGVtZW50O1xuXG4gICNmaXh0dXJlOiBDb21wb25lbnRGaXh0dXJlPHVua25vd24+O1xuXG4gIGNvbnN0cnVjdG9yKGZpeHR1cmU6IENvbXBvbmVudEZpeHR1cmU8dW5rbm93bj4sIHNreVRlc3RJZDogc3RyaW5nKSB7XG4gICAgdGhpcy4jZml4dHVyZSA9IGZpeHR1cmU7XG4gICAgdGhpcy4jZGVidWdFbCA9IFNreUFwcFRlc3RVdGlsaXR5LmdldERlYnVnRWxlbWVudEJ5VGVzdElkKFxuICAgICAgZml4dHVyZSxcbiAgICAgIHNreVRlc3RJZCxcbiAgICAgICdza3ktZHJvcGRvd24nXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGljayB0aGUgZHJvcGRvd24gYnV0dG9uIHRvIG9wZW4gb3IgY2xvc2UgdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tEcm9wZG93bkJ1dHRvbigpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICB0aGlzLiNidXR0b25EZWJ1Z0VsZW1lbnQubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICAgIHRoaXMuI2ZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiB0aGlzLiNmaXh0dXJlLndoZW5TdGFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGljayB0aGUgZHJvcGRvd24gaXRlbSBhdCB0aGUgcHJvdmlkZWQgaW5kZXguXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tEcm9wZG93bkl0ZW0oaW5kZXg6IG51bWJlcik6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIGNvbnN0IGl0ZW1FbHMgPSB0aGlzLiNnZXREcm9wZG93bkl0ZW1FbHMoKTtcblxuICAgIGlmICghaXRlbUVscykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpbmRleCA+PSBpdGVtRWxzLmxlbmd0aCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGVyZSBpcyBubyBkcm9wZG93biBpdGVtIGF0IGluZGV4ICR7aW5kZXh9LmApO1xuICAgIH1cblxuICAgIGl0ZW1FbHNbaW5kZXhdLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbixhJykuY2xpY2soKTtcblxuICAgIHRoaXMuI2ZpeHR1cmUuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiB0aGlzLiNmaXh0dXJlLndoZW5TdGFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBkcm9wZG93biBpdGVtIGF0IHRoZSBwcm92aWRlZCBpbmRleC5cbiAgICovXG4gIHB1YmxpYyBnZXREcm9wZG93bkl0ZW0oXG4gICAgaW5kZXg6IG51bWJlclxuICApOiBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93bkl0ZW0gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGl0ZW1FbHMgPSB0aGlzLiNnZXREcm9wZG93bkl0ZW1FbHMoKTtcblxuICAgIGlmICghaXRlbUVscykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghaXRlbUVsc1tpbmRleF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlcmUgaXMgbm8gZHJvcGRvd24gaXRlbSBhdCBpbmRleCAke2luZGV4fS5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBpdGVtID0gaXRlbUVsc1tpbmRleF07XG5cbiAgICByZXR1cm4ge1xuICAgICAgYXJpYVJvbGU6IGl0ZW0uZ2V0QXR0cmlidXRlKCdyb2xlJyksXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBvZiB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIHB1YmxpYyBnZXREcm9wZG93bk1lbnVDb250ZW50KCk6IGFueSB7XG4gICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMuI2dldE92ZXJsYXkoKTtcbiAgICBpZiAoIW92ZXJsYXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZXR1cm4gb3ZlcmxheS5xdWVyeVNlbGVjdG9yKCcuc2t5LWRyb3Bkb3duLW1lbnUnKTtcbiAgfVxuXG4gICNnZXREcm9wZG93bkl0ZW1FbHMoKTogTm9kZUxpc3RPZjxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBvdmVybGF5ID0gdGhpcy4jZ2V0T3ZlcmxheSgpO1xuXG4gICAgaWYgKCFvdmVybGF5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIG92ZXJsYXkucXVlcnlTZWxlY3RvckFsbCgnLnNreS1kcm9wZG93bi1pdGVtJyk7XG4gIH1cblxuICAjZ2V0T3ZlcmxheSgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdza3ktb3ZlcmxheScpO1xuICB9XG5cbiAgI2dldEJ1dHRvblN0eWxlKGNsYXNzTmFtZXM6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9KTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoY2xhc3NOYW1lc1snc2t5LWJ0bi1wcmltYXJ5J10pIHtcbiAgICAgIHJldHVybiAncHJpbWFyeSc7XG4gICAgfVxuICAgIGlmIChjbGFzc05hbWVzWydza3ktYnRuLWRlZmF1bHQnXSkge1xuICAgICAgcmV0dXJuICdkZWZhdWx0JztcbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgI2dldEJ1dHRvblR5cGUoY2xhc3NOYW1lczogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0pOiBzdHJpbmcge1xuICAgIGNvbnN0IHByZWZpeCA9ICdza3ktZHJvcGRvd24tYnV0dG9uLXR5cGUtJztcblxuICAgIGxldCBmb3VuZCA9ICcnO1xuICAgIGZvciAoY29uc3QgaSBpbiBjbGFzc05hbWVzKSB7XG4gICAgICBpZiAoY2xhc3NOYW1lc1tpXSkge1xuICAgICAgICBpZiAoaS5pbmRleE9mKHByZWZpeCkgPiAtMSkge1xuICAgICAgICAgIGZvdW5kID0gaS5yZXBsYWNlKHByZWZpeCwgJycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kO1xuICB9XG59XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tZml4dHVyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9wb3BvdmVycy90ZXN0aW5nL3NyYy9kcm9wZG93bi9kcm9wZG93bi1maXh0dXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBTXZEOzs7OztHQUtHO0FBQ0gsTUFBTSxPQUFPLGtCQUFrQjtJQW9EN0IsWUFBWSxPQUFrQyxFQUFFLFNBQWlCOztRQUpqRSw4Q0FBdUI7UUFFdkIsOENBQW9DO1FBR2xDLHVCQUFBLElBQUksK0JBQVksT0FBTyxNQUFBLENBQUM7UUFDeEIsdUJBQUEsSUFBSSwrQkFBWSxpQkFBaUIsQ0FBQyx1QkFBdUIsQ0FDdkQsT0FBTyxFQUNQLFNBQVMsRUFDVCxjQUFjLENBQ2YsTUFBQSxDQUFDO0lBQ0osQ0FBQztJQTFERDs7T0FFRztJQUNILElBQVcsUUFBUTtRQUNqQixNQUFNLE1BQU0sR0FBRyx1QkFBQSxJQUFJLGlGQUFvQixDQUFDO1FBQ3hDLE9BQU87WUFDTCxXQUFXLEVBQUUsdUJBQUEsSUFBSSx5RUFBZ0IsTUFBcEIsSUFBSSxFQUFpQixNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2pELFVBQVUsRUFBRSx1QkFBQSxJQUFJLHdFQUFlLE1BQW5CLElBQUksRUFBZ0IsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUMvQyxRQUFRLEVBQUUsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRO1lBQ3ZDLEtBQUssRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUM7WUFDdEQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztTQUNsRCxDQUFDO0lBQ0osQ0FBQztJQUVE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Z0IsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0FBQ3hELENBQUM7SUFHQyxPQUFPLFFBQVEsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUM7QUFDL0MsQ0FBQyxtRkFFZSxVQUFzQztJQUNwRCxJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFO1FBQ2pDLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsSUFBSSxVQUFVLENBQUMsaUJBQWlCLENBQUMsRUFBRTtRQUNqQyxPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE9BQU87QUFDVCxDQUFDLGlGQUVjLFVBQXNDO0lBQ25ELE1BQU0sTUFBTSxHQUFHLDJCQUEyQixDQUFDO0lBRTNDLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNmLEtBQUssTUFBTSxDQUFDLElBQUksVUFBVSxFQUFFO1FBQzFCLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtnQkFDMUIsS0FBSyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2FBQy9CO1NBQ0Y7S0FDRjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlYnVnRWxlbWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgeyBCeSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgU2t5QXBwVGVzdFV0aWxpdHkgfSBmcm9tICdAc2t5dXgtc2RrL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93biB9IGZyb20gJy4vcG9wb3ZlcnMtZml4dHVyZS1kcm9wZG93bic7XG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93bkl0ZW0gfSBmcm9tICcuL3BvcG92ZXJzLWZpeHR1cmUtZHJvcGRvd24taXRlbSc7XG5pbXBvcnQgeyBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93bk1lbnUgfSBmcm9tICcuL3BvcG92ZXJzLWZpeHR1cmUtZHJvcGRvd24tbWVudSc7XG5cbi8qKlxuICogUHJvdmlkZXMgaW5mb3JtYXRpb24gZm9yIGFuZCBpbnRlcmFjdGlvbiB3aXRoIGEgU0tZIFVYIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAqIEJ5IHVzaW5nIHRoZSBmaXh0dXJlIEFQSSwgYSB0ZXN0IGluc3VsYXRlcyBpdHNlbGYgYWdhaW5zdCB1cGRhdGVzIHRvIHRoZSBpbnRlcm5hbHNcbiAqIG9mIGEgY29tcG9uZW50LCBzdWNoIGFzIGNoYW5naW5nIGl0cyBET00gc3RydWN0dXJlLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEcm9wZG93bkZpeHR1cmUge1xuICAvKipcbiAgICogUmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBkcm9wZG93bigpOiBTa3lQb3BvdmVyc0ZpeHR1cmVEcm9wZG93biB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgYnV0dG9uID0gdGhpcy4jYnV0dG9uRGVidWdFbGVtZW50O1xuICAgIHJldHVybiB7XG4gICAgICBidXR0b25TdHlsZTogdGhpcy4jZ2V0QnV0dG9uU3R5bGUoYnV0dG9uLmNsYXNzZXMpLFxuICAgICAgYnV0dG9uVHlwZTogdGhpcy4jZ2V0QnV0dG9uVHlwZShidXR0b24uY2xhc3NlcyksXG4gICAgICBkaXNhYmxlZDogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQsXG4gICAgICBsYWJlbDogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJyksXG4gICAgICB0aXRsZTogYnV0dG9uLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0aXRsZScpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgZHJvcGRvd24gYnV0dG9uJ3MgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBnZXQgZHJvcGRvd25CdXR0b25UZXh0KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIFNreUFwcFRlc3RVdGlsaXR5LmdldFRleHQodGhpcy4jYnV0dG9uRGVidWdFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGRyb3Bkb3duIG1lbnUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBkcm9wZG93bk1lbnUoKTogU2t5UG9wb3ZlcnNGaXh0dXJlRHJvcGRvd25NZW51IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBtZW51ID0gdGhpcy5nZXREcm9wZG93bk1lbnVDb250ZW50KCk7XG4gICAgaWYgKCFtZW51KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFyaWFMYWJlbGxlZEJ5OiBtZW51LmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbGxlZGJ5JyksXG4gICAgICBhcmlhUm9sZTogbWVudS5nZXRBdHRyaWJ1dGUoJ3JvbGUnKSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRyb3Bkb3duIG1lbnUgaXMgb3BlbiBhbmQgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBnZXQgZHJvcGRvd25NZW51SXNWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldERyb3Bkb3duTWVudUNvbnRlbnQoKSAhPT0gdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0ICNidXR0b25EZWJ1Z0VsZW1lbnQoKTogRGVidWdFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy4jZGVidWdFbC5xdWVyeShCeS5jc3MoJy5za3ktZHJvcGRvd24tYnV0dG9uJykpO1xuICB9XG5cbiAgI2RlYnVnRWw6IERlYnVnRWxlbWVudDtcblxuICAjZml4dHVyZTogQ29tcG9uZW50Rml4dHVyZTx1bmtub3duPjtcblxuICBjb25zdHJ1Y3RvcihmaXh0dXJlOiBDb21wb25lbnRGaXh0dXJlPHVua25vd24+LCBza3lUZXN0SWQ6IHN0cmluZykge1xuICAgIHRoaXMuI2ZpeHR1cmUgPSBmaXh0dXJlO1xuICAgIHRoaXMuI2RlYnVnRWwgPSBTa3lBcHBUZXN0VXRpbGl0eS5nZXREZWJ1Z0VsZW1lbnRCeVRlc3RJZChcbiAgICAgIGZpeHR1cmUsXG4gICAgICBza3lUZXN0SWQsXG4gICAgICAnc2t5LWRyb3Bkb3duJ1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2sgdGhlIGRyb3Bkb3duIGJ1dHRvbiB0byBvcGVuIG9yIGNsb3NlIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrRHJvcGRvd25CdXR0b24oKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgdGhpcy4jYnV0dG9uRGVidWdFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB0aGlzLiNmaXh0dXJlLmRldGVjdENoYW5nZXMoKTtcbiAgICByZXR1cm4gdGhpcy4jZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2sgdGhlIGRyb3Bkb3duIGl0ZW0gYXQgdGhlIHByb3ZpZGVkIGluZGV4LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrRHJvcGRvd25JdGVtKGluZGV4OiBudW1iZXIpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICBjb25zdCBpdGVtRWxzID0gdGhpcy4jZ2V0RHJvcGRvd25JdGVtRWxzKCk7XG5cbiAgICBpZiAoIWl0ZW1FbHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPj0gaXRlbUVscy5sZW5ndGgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlcmUgaXMgbm8gZHJvcGRvd24gaXRlbSBhdCBpbmRleCAke2luZGV4fS5gKTtcbiAgICB9XG5cbiAgICBpdGVtRWxzW2luZGV4XS5xdWVyeVNlbGVjdG9yKCdidXR0b24sYScpLmNsaWNrKCk7XG5cbiAgICB0aGlzLiNmaXh0dXJlLmRldGVjdENoYW5nZXMoKTtcbiAgICByZXR1cm4gdGhpcy4jZml4dHVyZS53aGVuU3RhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgZHJvcGRvd24gaXRlbSBhdCB0aGUgcHJvdmlkZWQgaW5kZXguXG4gICAqL1xuICBwdWJsaWMgZ2V0RHJvcGRvd25JdGVtKFxuICAgIGluZGV4OiBudW1iZXJcbiAgKTogU2t5UG9wb3ZlcnNGaXh0dXJlRHJvcGRvd25JdGVtIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBpdGVtRWxzID0gdGhpcy4jZ2V0RHJvcGRvd25JdGVtRWxzKCk7XG5cbiAgICBpZiAoIWl0ZW1FbHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIWl0ZW1FbHNbaW5kZXhdKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZXJlIGlzIG5vIGRyb3Bkb3duIGl0ZW0gYXQgaW5kZXggJHtpbmRleH0uYCk7XG4gICAgfVxuXG4gICAgY29uc3QgaXRlbSA9IGl0ZW1FbHNbaW5kZXhdO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFyaWFSb2xlOiBpdGVtLmdldEF0dHJpYnV0ZSgncm9sZScpLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY29udGVudHMgb2YgdGhlIGRyb3Bkb3duIG1lbnUuXG4gICAqL1xuICBwdWJsaWMgZ2V0RHJvcGRvd25NZW51Q29udGVudCgpOiBhbnkge1xuICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLiNnZXRPdmVybGF5KCk7XG4gICAgaWYgKCFvdmVybGF5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIG92ZXJsYXkucXVlcnlTZWxlY3RvcignLnNreS1kcm9wZG93bi1tZW51Jyk7XG4gIH1cblxuICAjZ2V0RHJvcGRvd25JdGVtRWxzKCk6IE5vZGVMaXN0T2Y8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMuI2dldE92ZXJsYXkoKTtcblxuICAgIGlmICghb3ZlcmxheSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiBvdmVybGF5LnF1ZXJ5U2VsZWN0b3JBbGwoJy5za3ktZHJvcGRvd24taXRlbScpO1xuICB9XG5cbiAgI2dldE92ZXJsYXkoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc2t5LW92ZXJsYXknKTtcbiAgfVxuXG4gICNnZXRCdXR0b25TdHlsZShjbGFzc05hbWVzOiB7IFtrZXk6IHN0cmluZ106IGJvb2xlYW4gfSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGNsYXNzTmFtZXNbJ3NreS1idG4tcHJpbWFyeSddKSB7XG4gICAgICByZXR1cm4gJ3ByaW1hcnknO1xuICAgIH1cbiAgICBpZiAoY2xhc3NOYW1lc1snc2t5LWJ0bi1kZWZhdWx0J10pIHtcbiAgICAgIHJldHVybiAnZGVmYXVsdCc7XG4gICAgfVxuICAgIHJldHVybjtcbiAgfVxuXG4gICNnZXRCdXR0b25UeXBlKGNsYXNzTmFtZXM6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9KTogc3RyaW5nIHtcbiAgICBjb25zdCBwcmVmaXggPSAnc2t5LWRyb3Bkb3duLWJ1dHRvbi10eXBlLSc7XG5cbiAgICBsZXQgZm91bmQgPSAnJztcbiAgICBmb3IgKGNvbnN0IGkgaW4gY2xhc3NOYW1lcykge1xuICAgICAgaWYgKGNsYXNzTmFtZXNbaV0pIHtcbiAgICAgICAgaWYgKGkuaW5kZXhPZihwcmVmaXgpID4gLTEpIHtcbiAgICAgICAgICBmb3VuZCA9IGkucmVwbGFjZShwcmVmaXgsICcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmb3VuZDtcbiAgfVxufVxuIl19