@koobiq/components 18.22.0 → 18.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/alert/_alert-theme.scss +4 -0
  2. package/alert/alert-tokens.scss +1 -1
  3. package/alert/alert.component.d.ts +8 -2
  4. package/checkbox/checkbox.d.ts +6 -6
  5. package/core/animation/animation.d.ts +5 -2
  6. package/core/common-behaviors/checkbox.d.ts +5 -0
  7. package/core/common-behaviors/index.d.ts +1 -0
  8. package/core/pop-up/pop-up-trigger.d.ts +9 -1
  9. package/core/utils/utils.d.ts +2 -0
  10. package/esm2022/actions-panel/actions-panel-container.mjs +1 -1
  11. package/esm2022/actions-panel/actions-panel.mjs +1 -1
  12. package/esm2022/alert/alert.component.mjs +11 -5
  13. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +1 -1
  14. package/esm2022/breadcrumbs/breadcrumbs.mjs +1 -1
  15. package/esm2022/button-toggle/button-toggle.component.mjs +1 -1
  16. package/esm2022/checkbox/checkbox.mjs +5 -5
  17. package/esm2022/code-block/code-block-highlight.mjs +1 -1
  18. package/esm2022/code-block/code-block.mjs +1 -1
  19. package/esm2022/core/animation/animation.mjs +4 -1
  20. package/esm2022/core/common-behaviors/checkbox.mjs +2 -0
  21. package/esm2022/core/common-behaviors/color.mjs +1 -1
  22. package/esm2022/core/common-behaviors/index.mjs +2 -1
  23. package/esm2022/core/formatters/number/formatter.mjs +1 -1
  24. package/esm2022/core/forms/validators.mjs +1 -1
  25. package/esm2022/core/line/line.mjs +1 -1
  26. package/esm2022/core/overlay/overlay-position-map.mjs +1 -1
  27. package/esm2022/core/pop-up/pop-up-trigger.mjs +26 -11
  28. package/esm2022/core/pop-up/pop-up.mjs +1 -4
  29. package/esm2022/core/select/common.mjs +1 -1
  30. package/esm2022/core/services/measure-scrollbar.service.mjs +1 -1
  31. package/esm2022/core/utils/utils.mjs +5 -1
  32. package/esm2022/core/version.mjs +2 -2
  33. package/esm2022/datepicker/calendar-header.component.mjs +1 -1
  34. package/esm2022/datepicker/datepicker-input.directive.mjs +1 -1
  35. package/esm2022/datepicker/datepicker.component.mjs +1 -1
  36. package/esm2022/datepicker/month-view.component.mjs +1 -1
  37. package/esm2022/dropdown/dropdown-item.component.mjs +1 -1
  38. package/esm2022/dropdown/dropdown-trigger.directive.mjs +1 -1
  39. package/esm2022/dropdown/dropdown.component.mjs +1 -1
  40. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +1 -1
  41. package/esm2022/file-upload/file-drop.mjs +1 -1
  42. package/esm2022/file-upload/file-upload.mjs +1 -1
  43. package/esm2022/file-upload/single-file-upload.component.mjs +1 -1
  44. package/esm2022/filter-bar/filter-bar-button.mjs +2 -1
  45. package/esm2022/filter-bar/filter-bar.mjs +14 -1
  46. package/esm2022/filter-bar/filter-bar.module.mjs +5 -3
  47. package/esm2022/filter-bar/filter-bar.types.mjs +27 -2
  48. package/esm2022/filter-bar/filter-reset.mjs +15 -5
  49. package/esm2022/filter-bar/filter-search.mjs +18 -5
  50. package/esm2022/filter-bar/filters.mjs +22 -6
  51. package/esm2022/filter-bar/pipe-add.mjs +10 -1
  52. package/esm2022/filter-bar/pipe.directive.mjs +7 -25
  53. package/esm2022/filter-bar/pipes/base-pipe.mjs +23 -3
  54. package/esm2022/filter-bar/pipes/pipe-button.mjs +12 -6
  55. package/esm2022/filter-bar/pipes/pipe-date.mjs +26 -8
  56. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +27 -8
  57. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +6 -1
  58. package/esm2022/filter-bar/pipes/pipe-select.mjs +6 -1
  59. package/esm2022/filter-bar/pipes/pipe-state.mjs +2 -1
  60. package/esm2022/filter-bar/pipes/pipe-text.mjs +7 -3
  61. package/esm2022/filter-bar/pipes/pipe-title.mjs +2 -1
  62. package/esm2022/form-field/form-field.mjs +1 -1
  63. package/esm2022/form-field/validate.directive.mjs +1 -1
  64. package/esm2022/input/input-number.mjs +1 -1
  65. package/esm2022/list/list-selection.component.mjs +1 -1
  66. package/esm2022/markdown/markdown.component.mjs +2 -2
  67. package/esm2022/modal/modal.component.mjs +1 -1
  68. package/esm2022/modal/modal.service.mjs +1 -1
  69. package/esm2022/navbar/navbar.component.mjs +9 -12
  70. package/esm2022/navbar/vertical-navbar.component.mjs +9 -13
  71. package/esm2022/overflow-items/overflow-items.mjs +1 -1
  72. package/esm2022/popover/popover-confirm.component.mjs +1 -1
  73. package/esm2022/radio/radio.component.mjs +3 -3
  74. package/esm2022/scrollbar/scrollbar.component.mjs +1 -1
  75. package/esm2022/scrollbar/scrollbar.directive.mjs +1 -1
  76. package/esm2022/select/select.component.mjs +1 -1
  77. package/esm2022/sidepanel/sidepanel.service.mjs +1 -1
  78. package/esm2022/splitter/splitter.component.mjs +1 -1
  79. package/esm2022/tabs/paginated-tab-header.mjs +1 -1
  80. package/esm2022/tabs/tab-body.component.mjs +1 -1
  81. package/esm2022/tabs/tab-group.component.mjs +1 -1
  82. package/esm2022/tags/tag-input.mjs +1 -1
  83. package/esm2022/tags/tag-list.component.mjs +1 -1
  84. package/esm2022/tags/tag.component.mjs +1 -1
  85. package/esm2022/textarea/textarea.component.mjs +1 -1
  86. package/esm2022/timepicker/timepicker.directive.mjs +1 -1
  87. package/esm2022/toggle/toggle.component.mjs +95 -16
  88. package/esm2022/tree/control/base-tree-control.mjs +1 -1
  89. package/esm2022/tree/control/flat-tree-control.filters.mjs +1 -1
  90. package/esm2022/tree/control/nested-tree-control.mjs +1 -1
  91. package/esm2022/tree/data-source/flat-data-source.mjs +1 -1
  92. package/esm2022/tree/padding.directive.mjs +1 -1
  93. package/esm2022/tree/tree-base.mjs +1 -1
  94. package/esm2022/tree/tree-selection.component.mjs +1 -1
  95. package/esm2022/tree-select/tree-select.component.mjs +1 -1
  96. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  97. package/fesm2022/koobiq-components-alert.mjs +10 -4
  98. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  99. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  101. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-checkbox.mjs +4 -4
  103. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  105. package/fesm2022/koobiq-components-core.mjs +33 -15
  106. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  107. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  109. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  111. package/fesm2022/koobiq-components-filter-bar.mjs +1470 -1322
  112. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  113. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  115. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  117. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  119. package/fesm2022/koobiq-components-navbar.mjs +15 -22
  120. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  121. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  123. package/fesm2022/koobiq-components-radio.mjs +2 -2
  124. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  125. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  126. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  127. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  128. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  129. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  130. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  131. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  132. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  133. package/fesm2022/koobiq-components-toggle.mjs +94 -15
  134. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  135. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  137. package/filter-bar/filter-bar-button.d.ts +1 -0
  138. package/filter-bar/filter-bar.d.ts +14 -0
  139. package/filter-bar/filter-bar.types.d.ts +13 -3
  140. package/filter-bar/filter-reset.d.ts +6 -2
  141. package/filter-bar/filter-search.d.ts +17 -10
  142. package/filter-bar/filters.d.ts +26 -11
  143. package/filter-bar/pipe-add.d.ts +10 -0
  144. package/filter-bar/pipe.directive.d.ts +5 -5
  145. package/filter-bar/pipes/base-pipe.d.ts +28 -2
  146. package/filter-bar/pipes/pipe-button.d.ts +6 -1
  147. package/filter-bar/pipes/pipe-date.d.ts +30 -10
  148. package/filter-bar/pipes/pipe-date.scss +29 -27
  149. package/filter-bar/pipes/pipe-datetime.d.ts +31 -10
  150. package/filter-bar/pipes/pipe-multi-select.d.ts +7 -0
  151. package/filter-bar/pipes/pipe-select.d.ts +7 -0
  152. package/filter-bar/pipes/pipe-state.d.ts +1 -0
  153. package/filter-bar/pipes/pipe-text.d.ts +5 -0
  154. package/link/_link-theme.scss +14 -0
  155. package/markdown/markdown.scss +0 -4
  156. package/navbar/navbar.component.d.ts +2 -2
  157. package/navbar/vertical-navbar.component.d.ts +3 -3
  158. package/package.json +5 -5
  159. package/prebuilt-themes/dark-theme.css +1 -1
  160. package/prebuilt-themes/light-theme.css +1 -1
  161. package/prebuilt-themes/theme.css +1 -1
  162. package/radio/radio.scss +0 -1
  163. package/schematics/ng-add/index.js +3 -3
  164. package/toggle/_toggle-theme.scss +12 -3
  165. package/toggle/toggle-tokens.scss +2 -2
  166. package/toggle/toggle.component.d.ts +22 -4
  167. package/toggle/toggle.scss +37 -0
@@ -19,6 +19,7 @@ export class KbqPipeState {
19
19
  }
20
20
  };
21
21
  }
22
+ /** calculates and updates styles of button from pipe state */
22
23
  set state(pipe) {
23
24
  this._state = pipe;
24
25
  this.updateState();
@@ -42,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
42
43
  type: Input,
43
44
  args: [{ alias: 'kbqPipeState' }]
44
45
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU0xQyxNQUFNLE9BQU8sWUFBWTtJQUp6QjtRQUtxQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLFdBQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQWFwQyxXQUFNLEdBQWEsSUFBSSxDQUFDO1FBTXhCLGdCQUFXLEdBQUcsR0FBRyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUM7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUMsWUFBWSxDQUFDO1lBRXBELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDO2dCQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7WUFDeEQsQ0FBQztRQUNMLENBQUMsQ0FBQztLQUNMO0lBMUJHLElBQ0ksS0FBSyxDQUFDLElBQWM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFFbkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUlELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqRyxDQUFDO2lJQXBCUSxZQUFZO3FIQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBSnhCLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOzhCQU9PLEtBQUs7c0JBRFIsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgS2JxQnV0dG9uLCBLYnFCdXR0b25TdHlsZXMgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEticUNvbXBvbmVudENvbG9ycyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticUJhc2VQaXBlIH0gZnJvbSAnLi9iYXNlLXBpcGUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2ticVBpcGVTdGF0ZV0nXG59KVxuZXhwb3J0IGNsYXNzIEticVBpcGVTdGF0ZTxUPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgYnV0dG9uID0gaW5qZWN0KEticUJ1dHRvbik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwaXBlID0gaW5qZWN0KEticUJhc2VQaXBlKTtcblxuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUGlwZVN0YXRlJyB9KVxuICAgIHNldCBzdGF0ZShwaXBlOiBUIHwgbnVsbCkge1xuICAgICAgICB0aGlzLl9zdGF0ZSA9IHBpcGU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVTdGF0ZSgpO1xuICAgIH1cblxuICAgIGdldCBzdGF0ZSgpOiBUIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdGF0ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGlwZS5zdGF0ZUNoYW5nZXMucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKHRoaXMudXBkYXRlU3RhdGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU3RhdGUgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuYnV0dG9uLmticVN0eWxlID0gS2JxQnV0dG9uU3R5bGVzLk91dGxpbmU7XG4gICAgICAgIHRoaXMuYnV0dG9uLmNvbG9yID0gS2JxQ29tcG9uZW50Q29sb3JzLkNvbnRyYXN0RmFkZTtcblxuICAgICAgICBpZiAoIXRoaXMucGlwZS5pc0VtcHR5KSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5rYnFTdHlsZSA9IEticUJ1dHRvblN0eWxlcy5GaWxsZWQ7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5jb2xvciA9IEticUNvbXBvbmVudENvbG9ycy5Db250cmFzdEZhZGU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQU0xQyxNQUFNLE9BQU8sWUFBWTtJQUp6QjtRQUtxQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLFdBQU0sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQWNwQyxXQUFNLEdBQWEsSUFBSSxDQUFDO1FBTXhCLGdCQUFXLEdBQUcsR0FBRyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxPQUFPLENBQUM7WUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUMsWUFBWSxDQUFDO1lBRXBELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDO2dCQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7WUFDeEQsQ0FBQztRQUNMLENBQUMsQ0FBQztLQUNMO0lBM0JHLDhEQUE4RDtJQUM5RCxJQUNJLEtBQUssQ0FBQyxJQUFjO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBRW5CLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFJRCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakcsQ0FBQztpSUFyQlEsWUFBWTtxSEFBWixZQUFZOzsyRkFBWixZQUFZO2tCQUp4QixTQUFTO21CQUFDO29CQUNQLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZ0JBQWdCO2lCQUM3Qjs4QkFRTyxLQUFLO3NCQURSLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEticUJ1dHRvbiwgS2JxQnV0dG9uU3R5bGVzIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBLYnFDb21wb25lbnRDb2xvcnMgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFCYXNlUGlwZSB9IGZyb20gJy4vYmFzZS1waXBlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1trYnFQaXBlU3RhdGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBLYnFQaXBlU3RhdGU8VD4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJ1dHRvbiA9IGluamVjdChLYnFCdXR0b24pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcGlwZSA9IGluamVjdChLYnFCYXNlUGlwZSk7XG5cbiAgICAvKiogY2FsY3VsYXRlcyBhbmQgdXBkYXRlcyBzdHlsZXMgb2YgYnV0dG9uIGZyb20gcGlwZSBzdGF0ZSAqL1xuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUGlwZVN0YXRlJyB9KVxuICAgIHNldCBzdGF0ZShwaXBlOiBUIHwgbnVsbCkge1xuICAgICAgICB0aGlzLl9zdGF0ZSA9IHBpcGU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVTdGF0ZSgpO1xuICAgIH1cblxuICAgIGdldCBzdGF0ZSgpOiBUIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zdGF0ZTogVCB8IG51bGwgPSBudWxsO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGlwZS5zdGF0ZUNoYW5nZXMucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKHRoaXMudXBkYXRlU3RhdGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU3RhdGUgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuYnV0dG9uLmticVN0eWxlID0gS2JxQnV0dG9uU3R5bGVzLk91dGxpbmU7XG4gICAgICAgIHRoaXMuYnV0dG9uLmNvbG9yID0gS2JxQ29tcG9uZW50Q29sb3JzLkNvbnRyYXN0RmFkZTtcblxuICAgICAgICBpZiAoIXRoaXMucGlwZS5pc0VtcHR5KSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5rYnFTdHlsZSA9IEticUJ1dHRvblN0eWxlcy5GaWxsZWQ7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5jb2xvciA9IEticUNvbXBvbmVudENvbG9ycy5Db250cmFzdEZhZGU7XG4gICAgICAgIH1cbiAgICB9O1xufVxuIl19
@@ -24,8 +24,10 @@ export class KbqPipeTextComponent extends KbqBasePipe {
24
24
  constructor() {
25
25
  super(...arguments);
26
26
  this.placements = PopUpPlacements;
27
+ /** textarea control */
27
28
  this.control = new FormControl('');
28
29
  }
30
+ /** Whether the current pipe is disabled. */
29
31
  get disabled() {
30
32
  return !this.control.value;
31
33
  }
@@ -43,11 +45,13 @@ export class KbqPipeTextComponent extends KbqBasePipe {
43
45
  this.popover.hide();
44
46
  this.filterBar?.onChangePipe.next(this.data);
45
47
  }
48
+ /** @docs-private */
46
49
  onKeydown($event) {
47
50
  if (!this.disabled && ($event.ctrlKey || $event.metaKey) && $event.keyCode === ENTER) {
48
51
  this.onApply();
49
52
  }
50
53
  }
54
+ /** opens popover */
51
55
  open() {
52
56
  this.popover.show();
53
57
  }
@@ -57,7 +61,7 @@ export class KbqPipeTextComponent extends KbqBasePipe {
57
61
  provide: KbqBasePipe,
58
62
  useExisting: this
59
63
  }
60
- ], viewQueries: [{ propertyName: "popover", first: true, predicate: KbqPopoverTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<button\n kbq-button\n kbqPopover\n [disabled]=\"data.disabled\"\n [kbqPipeState]=\"data\"\n [kbqPipeTitle]=\"pipeTooltip\"\n [kbqPopoverArrow]=\"false\"\n [kbqPopoverClass]=\"'kbq-pipe__popover'\"\n [kbqPopoverContent]=\"content\"\n [kbqPopoverFooter]=\"footer\"\n [kbqPopoverPlacement]=\"placements.BottomLeft\"\n [ngClass]=\"{ 'kbq-active': popover?.isOpen }\"\n>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__name\">{{ data.name }}</span>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__value\" [class.kbq-pipe__value_empty]=\"!data.value\">\n {{ data.value }}\n </span>\n</button>\n\n@if (showRemoveButton) {\n <kbq-pipe-button />\n}\n\n<ng-template #content>\n <kbq-form-field (keydown)=\"onKeydown($event)\">\n <textarea kbqTextarea rows=\"1\" [formControl]=\"control\" [freeRowsHeight]=\"0\" [maxRows]=\"5\"></textarea>\n </kbq-form-field>\n</ng-template>\n\n<ng-template #footer>\n <button kbq-button [color]=\"'theme'\" [disabled]=\"disabled\" [kbqStyle]=\"'transparent'\" (click)=\"onApply()\">\n <span>{{ localeData.pipe.applyButton }}</span>\n &nbsp;\n <span class=\"kbq-button_hot-key\">{{ isMac ? '\u2318' : 'Ctrl+' }}Enter</span>\n </button>\n</ng-template>\n\n<ng-template #pipeTooltip>\n <div class=\"kbq-pipe-tooltip__name kbq-text-compact\">{{ data.name }}</div>\n <div class=\"kbq-pipe-tooltip__value kbq-text-compact\">{{ data.value }}</div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-pipe{display:flex;flex-direction:row;max-height:32px}.kbq-pipe .kbq-select .kbq-select__trigger{height:unset}.kbq-pipe .kbq-button-wrapper{max-width:320px}.kbq-pipe .kbq-pipe__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;color:var(--kbq-foreground-contrast-secondary)}.kbq-pipe .kbq-pipe__value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.kbq-pipe .kbq-pipe__value:not(.kbq-pipe__value_empty){margin-left:4px}.kbq-pipe .kbq-pipe__separator{z-index:1;margin-left:-1px;margin-right:0;height:12px;align-self:center;color:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-select:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after,.kbq-pipe .kbq-button:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after{content:\"\";position:absolute;left:0;top:10px;width:1px;height:12px;background:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-button.cdk-keyboard-focused{z-index:1}.kbq-pipe.kbq-pipe_disabled .kbq-pipe__name,.kbq-pipe.kbq-pipe_disabled .kbq-pipe__value{color:var(--kbq-states-foreground-disabled)}.kbq-pipe.kbq-pipe_removable .kbq-button,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button{border-bottom-right-radius:unset;border-top-right-radius:unset;border-right:none}.kbq-pipe.kbq-pipe_removable .kbq-button.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button.cdk-keyboard-focused:after{content:\"\";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe.kbq-pipe_removable .kbq-button-icon,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon{border-bottom-left-radius:unset;border-top-left-radius:unset;border-left:none}.kbq-pipe.kbq-pipe_removable .kbq-button-icon.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon.cdk-keyboard-focused:after{content:\"\";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe-tooltip__name{color:var(--kbq-foreground-white-secondary)}.kbq-pipe-tooltip__value{color:var(--kbq-foreground-white)}\n"], dependencies: [{ kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "ngmodule", type: KbqFormFieldModule }, { kind: "component", type: i2.KbqFormField, selector: "kbq-form-field", exportAs: ["kbqFormField"] }, { kind: "directive", type: i2.KbqValidateDirective, selector: " input[kbqInput], input[kbqNumberInput], input[kbqInputPassword], input[kbqTimepicker], input[kbqDatepicker], textarea[kbqTextarea], kbq-select, kbq-tree-select, kbq-tag-list ", exportAs: ["KbqValidate"] }, { kind: "directive", type: i2.KbqTrim, selector: "[kbqInput], [kbqTextarea]", exportAs: ["KbqTrim"] }, { kind: "ngmodule", type: KbqPopoverModule }, { kind: "directive", type: i3.KbqPopoverTrigger, selector: "[kbqPopover]", inputs: ["kbqPopoverVisible", "kbqPopoverPlacement", "kbqPopoverPlacementPriority", "hasBackdrop", "kbqPopoverHeader", "kbqPopoverContent", "kbqPopoverFooter", "kbqPopoverDisabled", "kbqTrigger", "kbqPopoverSize", "kbqPopoverClass", "hasCloseButton", "closeOnScroll", "backdropClass", "kbqPopoverArrow", "kbqPopoverOffset"], outputs: ["kbqPopoverPlacementChange", "kbqPopoverVisibleChange"], exportAs: ["kbqPopover"] }, { kind: "ngmodule", type: KbqInputModule }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: KbqTextareaModule }, { kind: "directive", type: i5.KbqTextarea, selector: "textarea[kbqTextarea]", inputs: ["canGrow", "maxRows", "errorStateMatcher", "disabled", "id", "placeholder", "freeRowsHeight", "required", "value"], exportAs: ["kbqTextarea"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: KbqPipeButton, selector: "kbq-pipe-button" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: KbqTitleModule }, { kind: "directive", type: KbqPipeState, selector: "[kbqPipeState]", inputs: ["kbqPipeState"] }, { kind: "directive", type: KbqPipeTitleDirective, selector: "[kbqPipeTitle]", inputs: ["kbqPipeTitle"], exportAs: ["kbqPipeTitle"] }, { kind: "directive", type: KbqPipeMinWidth, selector: "[kbqPipeMinWidth]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
64
+ ], viewQueries: [{ propertyName: "popover", first: true, predicate: KbqPopoverTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<button\n kbq-button\n kbqPopover\n [disabled]=\"data.disabled\"\n [kbqPipeState]=\"data\"\n [kbqPipeTitle]=\"pipeTooltip\"\n [kbqPopoverArrow]=\"false\"\n [kbqPopoverClass]=\"'kbq-pipe__popover'\"\n [kbqPopoverContent]=\"content\"\n [kbqPopoverFooter]=\"footer\"\n [kbqPopoverOffset]=\"4\"\n [kbqPopoverPlacement]=\"placements.BottomLeft\"\n [ngClass]=\"{ 'kbq-active': popover?.isOpen }\"\n>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__name\">{{ data.name }}</span>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__value\" [class.kbq-pipe__value_empty]=\"!data.value\">\n {{ data.value }}\n </span>\n</button>\n\n@if (showRemoveButton) {\n <kbq-pipe-button />\n}\n\n<ng-template #content>\n <kbq-form-field (keydown)=\"onKeydown($event)\">\n <textarea kbqTextarea rows=\"1\" [formControl]=\"control\" [freeRowsHeight]=\"0\" [maxRows]=\"5\"></textarea>\n </kbq-form-field>\n</ng-template>\n\n<ng-template #footer>\n <button kbq-button [color]=\"'theme'\" [disabled]=\"disabled\" [kbqStyle]=\"'transparent'\" (click)=\"onApply()\">\n <span>{{ localeData.pipe.applyButton }}</span>\n &nbsp;\n <span class=\"kbq-button_hot-key\">{{ isMac ? '\u2318' : 'Ctrl+' }}Enter</span>\n </button>\n</ng-template>\n\n<ng-template #pipeTooltip>\n <div class=\"kbq-pipe-tooltip__name kbq-text-compact\">{{ data.name }}</div>\n <div class=\"kbq-pipe-tooltip__value kbq-text-compact\">{{ data.value }}</div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-pipe{display:flex;flex-direction:row;max-height:32px}.kbq-pipe .kbq-select .kbq-select__trigger{height:unset}.kbq-pipe .kbq-button-wrapper{max-width:320px}.kbq-pipe .kbq-pipe__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;color:var(--kbq-foreground-contrast-secondary)}.kbq-pipe .kbq-pipe__value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.kbq-pipe .kbq-pipe__value:not(.kbq-pipe__value_empty){margin-left:4px}.kbq-pipe .kbq-pipe__separator{z-index:1;margin-left:-1px;margin-right:0;height:12px;align-self:center;color:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-select:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after,.kbq-pipe .kbq-button:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after{content:\"\";position:absolute;left:0;top:10px;width:1px;height:12px;background:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-button.cdk-keyboard-focused{z-index:1}.kbq-pipe.kbq-pipe_disabled .kbq-pipe__name,.kbq-pipe.kbq-pipe_disabled .kbq-pipe__value{color:var(--kbq-states-foreground-disabled)}.kbq-pipe.kbq-pipe_removable .kbq-button,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button{border-bottom-right-radius:unset;border-top-right-radius:unset;border-right:none}.kbq-pipe.kbq-pipe_removable .kbq-button.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button.cdk-keyboard-focused:after{content:\"\";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe.kbq-pipe_removable .kbq-button-icon,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon{border-bottom-left-radius:unset;border-top-left-radius:unset;border-left:none}.kbq-pipe.kbq-pipe_removable .kbq-button-icon.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon.cdk-keyboard-focused:after{content:\"\";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe-tooltip__name{color:var(--kbq-foreground-white-secondary)}.kbq-pipe-tooltip__value{color:var(--kbq-foreground-white)}\n"], dependencies: [{ kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "ngmodule", type: KbqFormFieldModule }, { kind: "component", type: i2.KbqFormField, selector: "kbq-form-field", exportAs: ["kbqFormField"] }, { kind: "directive", type: i2.KbqValidateDirective, selector: " input[kbqInput], input[kbqNumberInput], input[kbqInputPassword], input[kbqTimepicker], input[kbqDatepicker], textarea[kbqTextarea], kbq-select, kbq-tree-select, kbq-tag-list ", exportAs: ["KbqValidate"] }, { kind: "directive", type: i2.KbqTrim, selector: "[kbqInput], [kbqTextarea]", exportAs: ["KbqTrim"] }, { kind: "ngmodule", type: KbqPopoverModule }, { kind: "directive", type: i3.KbqPopoverTrigger, selector: "[kbqPopover]", inputs: ["kbqPopoverVisible", "kbqPopoverPlacement", "kbqPopoverPlacementPriority", "hasBackdrop", "kbqPopoverHeader", "kbqPopoverContent", "kbqPopoverFooter", "kbqPopoverDisabled", "kbqTrigger", "kbqPopoverSize", "kbqPopoverClass", "hasCloseButton", "closeOnScroll", "backdropClass", "kbqPopoverArrow", "kbqPopoverOffset"], outputs: ["kbqPopoverPlacementChange", "kbqPopoverVisibleChange"], exportAs: ["kbqPopover"] }, { kind: "ngmodule", type: KbqInputModule }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "ngmodule", type: KbqTextareaModule }, { kind: "directive", type: i5.KbqTextarea, selector: "textarea[kbqTextarea]", inputs: ["canGrow", "maxRows", "errorStateMatcher", "disabled", "id", "placeholder", "freeRowsHeight", "required", "value"], exportAs: ["kbqTextarea"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: KbqPipeButton, selector: "kbq-pipe-button" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: KbqTitleModule }, { kind: "directive", type: KbqPipeState, selector: "[kbqPipeState]", inputs: ["kbqPipeState"] }, { kind: "directive", type: KbqPipeTitleDirective, selector: "[kbqPipeTitle]", inputs: ["kbqPipeTitle"], exportAs: ["kbqPipeTitle"] }, { kind: "directive", type: KbqPipeMinWidth, selector: "[kbqPipeMinWidth]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
65
  }
62
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPipeTextComponent, decorators: [{
63
67
  type: Component,
@@ -81,9 +85,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
81
85
  KbqPipeState,
82
86
  KbqPipeTitleDirective,
83
87
  KbqPipeMinWidth
84
- ], template: "<button\n kbq-button\n kbqPopover\n [disabled]=\"data.disabled\"\n [kbqPipeState]=\"data\"\n [kbqPipeTitle]=\"pipeTooltip\"\n [kbqPopoverArrow]=\"false\"\n [kbqPopoverClass]=\"'kbq-pipe__popover'\"\n [kbqPopoverContent]=\"content\"\n [kbqPopoverFooter]=\"footer\"\n [kbqPopoverPlacement]=\"placements.BottomLeft\"\n [ngClass]=\"{ 'kbq-active': popover?.isOpen }\"\n>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__name\">{{ data.name }}</span>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__value\" [class.kbq-pipe__value_empty]=\"!data.value\">\n {{ data.value }}\n </span>\n</button>\n\n@if (showRemoveButton) {\n <kbq-pipe-button />\n}\n\n<ng-template #content>\n <kbq-form-field (keydown)=\"onKeydown($event)\">\n <textarea kbqTextarea rows=\"1\" [formControl]=\"control\" [freeRowsHeight]=\"0\" [maxRows]=\"5\"></textarea>\n </kbq-form-field>\n</ng-template>\n\n<ng-template #footer>\n <button kbq-button [color]=\"'theme'\" [disabled]=\"disabled\" [kbqStyle]=\"'transparent'\" (click)=\"onApply()\">\n <span>{{ localeData.pipe.applyButton }}</span>\n &nbsp;\n <span class=\"kbq-button_hot-key\">{{ isMac ? '\u2318' : 'Ctrl+' }}Enter</span>\n </button>\n</ng-template>\n\n<ng-template #pipeTooltip>\n <div class=\"kbq-pipe-tooltip__name kbq-text-compact\">{{ data.name }}</div>\n <div class=\"kbq-pipe-tooltip__value kbq-text-compact\">{{ data.value }}</div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-pipe{display:flex;flex-direction:row;max-height:32px}.kbq-pipe .kbq-select .kbq-select__trigger{height:unset}.kbq-pipe .kbq-button-wrapper{max-width:320px}.kbq-pipe .kbq-pipe__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;color:var(--kbq-foreground-contrast-secondary)}.kbq-pipe .kbq-pipe__value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.kbq-pipe .kbq-pipe__value:not(.kbq-pipe__value_empty){margin-left:4px}.kbq-pipe .kbq-pipe__separator{z-index:1;margin-left:-1px;margin-right:0;height:12px;align-self:center;color:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-select:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after,.kbq-pipe .kbq-button:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after{content:\"\";position:absolute;left:0;top:10px;width:1px;height:12px;background:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-button.cdk-keyboard-focused{z-index:1}.kbq-pipe.kbq-pipe_disabled .kbq-pipe__name,.kbq-pipe.kbq-pipe_disabled .kbq-pipe__value{color:var(--kbq-states-foreground-disabled)}.kbq-pipe.kbq-pipe_removable .kbq-button,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button{border-bottom-right-radius:unset;border-top-right-radius:unset;border-right:none}.kbq-pipe.kbq-pipe_removable .kbq-button.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button.cdk-keyboard-focused:after{content:\"\";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe.kbq-pipe_removable .kbq-button-icon,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon{border-bottom-left-radius:unset;border-top-left-radius:unset;border-left:none}.kbq-pipe.kbq-pipe_removable .kbq-button-icon.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon.cdk-keyboard-focused:after{content:\"\";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe-tooltip__name{color:var(--kbq-foreground-white-secondary)}.kbq-pipe-tooltip__value{color:var(--kbq-foreground-white)}\n"] }]
88
+ ], template: "<button\n kbq-button\n kbqPopover\n [disabled]=\"data.disabled\"\n [kbqPipeState]=\"data\"\n [kbqPipeTitle]=\"pipeTooltip\"\n [kbqPopoverArrow]=\"false\"\n [kbqPopoverClass]=\"'kbq-pipe__popover'\"\n [kbqPopoverContent]=\"content\"\n [kbqPopoverFooter]=\"footer\"\n [kbqPopoverOffset]=\"4\"\n [kbqPopoverPlacement]=\"placements.BottomLeft\"\n [ngClass]=\"{ 'kbq-active': popover?.isOpen }\"\n>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__name\">{{ data.name }}</span>\n <span #kbqTitleText kbqPipeMinWidth class=\"kbq-pipe__value\" [class.kbq-pipe__value_empty]=\"!data.value\">\n {{ data.value }}\n </span>\n</button>\n\n@if (showRemoveButton) {\n <kbq-pipe-button />\n}\n\n<ng-template #content>\n <kbq-form-field (keydown)=\"onKeydown($event)\">\n <textarea kbqTextarea rows=\"1\" [formControl]=\"control\" [freeRowsHeight]=\"0\" [maxRows]=\"5\"></textarea>\n </kbq-form-field>\n</ng-template>\n\n<ng-template #footer>\n <button kbq-button [color]=\"'theme'\" [disabled]=\"disabled\" [kbqStyle]=\"'transparent'\" (click)=\"onApply()\">\n <span>{{ localeData.pipe.applyButton }}</span>\n &nbsp;\n <span class=\"kbq-button_hot-key\">{{ isMac ? '\u2318' : 'Ctrl+' }}Enter</span>\n </button>\n</ng-template>\n\n<ng-template #pipeTooltip>\n <div class=\"kbq-pipe-tooltip__name kbq-text-compact\">{{ data.name }}</div>\n <div class=\"kbq-pipe-tooltip__value kbq-text-compact\">{{ data.value }}</div>\n</ng-template>\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-pipe{display:flex;flex-direction:row;max-height:32px}.kbq-pipe .kbq-select .kbq-select__trigger{height:unset}.kbq-pipe .kbq-button-wrapper{max-width:320px}.kbq-pipe .kbq-pipe__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;color:var(--kbq-foreground-contrast-secondary)}.kbq-pipe .kbq-pipe__value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto}.kbq-pipe .kbq-pipe__value:not(.kbq-pipe__value_empty){margin-left:4px}.kbq-pipe .kbq-pipe__separator{z-index:1;margin-left:-1px;margin-right:0;height:12px;align-self:center;color:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-select:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after,.kbq-pipe .kbq-button:not(:hover,.kbq-active)+.kbq-pipe-button:not(:hover,.kbq-active):after{content:\"\";position:absolute;left:0;top:10px;width:1px;height:12px;background:var(--kbq-line-contrast-less)}.kbq-pipe .kbq-button.cdk-keyboard-focused{z-index:1}.kbq-pipe.kbq-pipe_disabled .kbq-pipe__name,.kbq-pipe.kbq-pipe_disabled .kbq-pipe__value{color:var(--kbq-states-foreground-disabled)}.kbq-pipe.kbq-pipe_removable .kbq-button,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button{border-bottom-right-radius:unset;border-top-right-radius:unset;border-right:none}.kbq-pipe.kbq-pipe_removable .kbq-button.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button.cdk-keyboard-focused:after{content:\"\";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe.kbq-pipe_removable .kbq-button-icon,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon{border-bottom-left-radius:unset;border-top-left-radius:unset;border-left:none}.kbq-pipe.kbq-pipe_removable .kbq-button-icon.cdk-keyboard-focused:after,.kbq-pipe.kbq-pipe_cleanable:not(.kbq-pipe_empty) .kbq-button-icon.cdk-keyboard-focused:after{content:\"\";position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--kbq-states-line-focus-theme)}.kbq-pipe-tooltip__name{color:var(--kbq-foreground-white-secondary)}.kbq-pipe-tooltip__value{color:var(--kbq-foreground-white)}\n"] }]
85
89
  }], propDecorators: { popover: [{
86
90
  type: ViewChild,
87
91
  args: [KbqPopoverTrigger]
88
92
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9maWx0ZXItYmFyL3BpcGVzL3BpcGUtdGV4dC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXRleHQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxD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dWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFTlRFUiB9IGZyb20gJ0Brb29iaXEvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IEticUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgUG9wVXBQbGFjZW1lbnRzIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgS2JxRGl2aWRlck1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9kaXZpZGVyJztcbmltcG9ydCB7IEticUZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9mb3JtLWZpZWxkJztcbmltcG9ydCB7IEticUlucHV0TW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2lucHV0JztcbmltcG9ydCB7IEticVBvcG92ZXJNb2R1bGUsIEticVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgS2JxVGV4dGFyZWFNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGV4dGFyZWEnO1xuaW1wb3J0IHsgS2JxVGl0bGVNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGl0bGUnO1xuaW1wb3J0IHsgS2JxQmFzZVBpcGUsIEticVBpcGVNaW5XaWR0aCB9IGZyb20gJy4vYmFzZS1waXBlJztcbmltcG9ydCB7IEticVBpcGVCdXR0b24gfSBmcm9tICcuL3BpcGUtYnV0dG9uJztcbmltcG9ydCB7IEticVBpcGVTdGF0ZSB9IGZyb20gJy4vcGlwZS1zdGF0ZSc7XG5pbXBvcnQgeyBLYnFQaXBlVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL3BpcGUtdGl0bGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLXBpcGUtdGV4dCcsXG4gICAgdGVtcGxhdGVVcmw6ICdwaXBlLXRleHQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2Jhc2UtcGlwZS5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogS2JxQmFzZVBpcGUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogdGhpc1xuICAgICAgICB9XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEticUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgS2JxRm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBLYnFQb3BvdmVyTW9kdWxlLFxuICAgICAgICBLYnFJbnB1dE1vZHVsZSxcbiAgICAgICAgS2JxRGl2aWRlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEticVRleHRhcmVhTW9kdWxlLFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBLYnFQaXBlQnV0dG9uLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBLYnFUaXRsZU1vZHVsZSxcbiAgICAgICAgS2JxUGlwZVN0YXRlLFxuICAgICAgICBLYnFQaXBlVGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIEticVBpcGVNaW5XaWR0aFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUGlwZVRleHRDb21wb25lbnQgZXh0ZW5kcyBLYnFCYXNlUGlwZTxzdHJpbmcgfCBudWxsPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gICAgcmVhZG9ubHkgcGxhY2VtZW50cyA9IFBvcFVwUGxhY2VtZW50cztcblxuICAgIEBWaWV3Q2hpbGQoS2JxUG9wb3ZlclRyaWdnZXIpIHBvcG92ZXI6IEticVBvcG92ZXJUcmlnZ2VyO1xuXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuY29udHJvbC52YWx1ZTtcbiAgICB9XG5cbiAgICBjb250cm9sID0gbmV3IEZvcm1Db250cm9sPHR5cGVvZiB0aGlzLmRhdGEudmFsdWU+KCcnKTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUodGhpcy5kYXRhLnZhbHVlKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuXG4gICAgICAgIHRoaXMucG9wb3Zlci52aXNpYmxlQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCkpO1xuICAgIH1cblxuICAgIG9uQXBwbHkoKSB7XG4gICAgICAgIHRoaXMuZGF0YS52YWx1ZSA9IHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuXG4gICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNQcmlzdGluZSgpO1xuICAgICAgICB0aGlzLnBvcG92ZXIuaGlkZSgpO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyQmFyPy5vbkNoYW5nZVBpcGUubmV4dCh0aGlzLmRhdGEpO1xuICAgIH1cblxuICAgIG9uS2V5ZG93bigkZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkICYmICgkZXZlbnQuY3RybEtleSB8fCAkZXZlbnQubWV0YUtleSkgJiYgJGV2ZW50LmtleUNvZGUgPT09IEVOVEVSKSB7XG4gICAgICAgICAgICB0aGlzLm9uQXBwbHkoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIG9wZW4oKSB7XG4gICAgICAgIHRoaXMucG9wb3Zlci5zaG93KCk7XG4gICAgfVxufVxuIiwiPGJ1dHRvblxuICAgIGticS1idXR0b25cbiAgICBrYnFQb3BvdmVyXG4gICAgW2Rpc2FibGVkXT1cImRhdGEuZGlzYWJsZWRcIlxuICAgIFtrYnFQaXBlU3RhdGVdPVwiZGF0YVwiXG4gICAgW2ticVBpcGVUaXRsZV09XCJwaXBlVG9vbHRpcFwiXG4gICAgW2ticVBvcG92ZXJBcnJvd109XCJmYWxzZVwiXG4gICAgW2ticVBvcG92ZXJDbGFzc109XCIna2JxLXBpcGVfX3BvcG92ZXInXCJcbiAgICBba2JxUG9wb3ZlckNvbnRlbnRdPVwiY29udGVudFwiXG4gICAgW2ticVBvcG92ZXJGb290ZXJdPVwiZm9vdGVyXCJcbiAgICBba2JxUG9wb3ZlclBsYWNlbWVudF09XCJwbGFjZW1lbnRzLkJvdHRvbUxlZnRcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ2ticS1hY3RpdmUnOiBwb3BvdmVyPy5pc09wZW4gfVwiXG4+XG4gICAgPHNwYW4gI2ticVRpdGxlVGV4dCBrYnFQaXBlTWluV2lkdGggY2xhc3M9XCJrYnEtcGlwZV9fbmFtZVwiPnt7IGRhdGEubmFtZSB9fTwvc3Bhbj5cbiAgICA8c3BhbiAja2JxVGl0bGVUZXh0IGticVBpcGVNaW5XaWR0aCBjbGFzcz1cImticS1waXBlX192YWx1ZVwiIFtjbGFzcy5rYnEtcGlwZV9fdmFsdWVfZW1wdHldPVwiIWRhdGEudmFsdWVcIj5cbiAgICAgICAge3sgZGF0YS52YWx1ZSB9fVxuICAgIDwvc3Bhbj5cbjwvYnV0dG9uPlxuXG5AaWYgKHNob3dSZW1vdmVCdXR0b24pIHtcbiAgICA8a2JxLXBpcGUtYnV0dG9uIC8+XG59XG5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgICA8a2JxLWZvcm0tZmllbGQgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIj5cbiAgICAgICAgPHRleHRhcmVhIGticVRleHRhcmVhIHJvd3M9XCIxXCIgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIiBbZnJlZVJvd3NIZWlnaHRdPVwiMFwiIFttYXhSb3dzXT1cIjVcIj48L3RleHRhcmVhPlxuICAgIDwva2JxLWZvcm0tZmllbGQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2Zvb3Rlcj5cbiAgICA8YnV0dG9uIGticS1idXR0b24gW2NvbG9yXT1cIid0aGVtZSdcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiIChjbGljayk9XCJvbkFwcGx5KClcIj5cbiAgICAgICAgPHNwYW4+e3sgbG9jYWxlRGF0YS5waXBlLmFwcGx5QnV0dG9uIH19PC9zcGFuPlxuICAgICAgICAmbmJzcDtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJrYnEtYnV0dG9uX2hvdC1rZXlcIj57eyBpc01hYyA/ICfijJgnIDogJ0N0cmwrJyB9fUVudGVyPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNwaXBlVG9vbHRpcD5cbiAgICA8ZGl2IGNsYXNzPVwia2JxLXBpcGUtdG9vbHRpcF9fbmFtZSBrYnEtdGV4dC1jb21wYWN0XCI+e3sgZGF0YS5uYW1lIH19PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImticS1waXBlLXRvb2x0aXBfX3ZhbHVlIGticS10ZXh0LWNvbXBhY3RcIj57eyBkYXRhLnZhbHVlIH19PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9maWx0ZXItYmFyL3BpcGVzL3BpcGUtdGV4dC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXRleHQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxD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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFTlRFUiB9IGZyb20gJ0Brb29iaXEvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IEticUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgUG9wVXBQbGFjZW1lbnRzIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgS2JxRGl2aWRlck1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9kaXZpZGVyJztcbmltcG9ydCB7IEticUZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9mb3JtLWZpZWxkJztcbmltcG9ydCB7IEticUlucHV0TW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2lucHV0JztcbmltcG9ydCB7IEticVBvcG92ZXJNb2R1bGUsIEticVBvcG92ZXJUcmlnZ2VyIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgS2JxVGV4dGFyZWFNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGV4dGFyZWEnO1xuaW1wb3J0IHsgS2JxVGl0bGVNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGl0bGUnO1xuaW1wb3J0IHsgS2JxQmFzZVBpcGUsIEticVBpcGVNaW5XaWR0aCB9IGZyb20gJy4vYmFzZS1waXBlJztcbmltcG9ydCB7IEticVBpcGVCdXR0b24gfSBmcm9tICcuL3BpcGUtYnV0dG9uJztcbmltcG9ydCB7IEticVBpcGVTdGF0ZSB9IGZyb20gJy4vcGlwZS1zdGF0ZSc7XG5pbXBvcnQgeyBLYnFQaXBlVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL3BpcGUtdGl0bGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLXBpcGUtdGV4dCcsXG4gICAgdGVtcGxhdGVVcmw6ICdwaXBlLXRleHQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2Jhc2UtcGlwZS5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogS2JxQmFzZVBpcGUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogdGhpc1xuICAgICAgICB9XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEticUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgS2JxRm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBLYnFQb3BvdmVyTW9kdWxlLFxuICAgICAgICBLYnFJbnB1dE1vZHVsZSxcbiAgICAgICAgS2JxRGl2aWRlck1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEticVRleHRhcmVhTW9kdWxlLFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBLYnFQaXBlQnV0dG9uLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBLYnFUaXRsZU1vZHVsZSxcbiAgICAgICAgS2JxUGlwZVN0YXRlLFxuICAgICAgICBLYnFQaXBlVGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIEticVBpcGVNaW5XaWR0aFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUGlwZVRleHRDb21wb25lbnQgZXh0ZW5kcyBLYnFCYXNlUGlwZTxzdHJpbmcgfCBudWxsPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gICAgcmVhZG9ubHkgcGxhY2VtZW50cyA9IFBvcFVwUGxhY2VtZW50cztcblxuICAgIC8qKiBAZG9jcy1wcml2YXRlICovXG4gICAgQFZpZXdDaGlsZChLYnFQb3BvdmVyVHJpZ2dlcikgcG9wb3ZlcjogS2JxUG9wb3ZlclRyaWdnZXI7XG5cbiAgICAvKiogV2hldGhlciB0aGUgY3VycmVudCBwaXBlIGlzIGRpc2FibGVkLiAqL1xuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLmNvbnRyb2wudmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIHRleHRhcmVhIGNvbnRyb2wgKi9cbiAgICBjb250cm9sID0gbmV3IEZvcm1Db250cm9sPHR5cGVvZiB0aGlzLmRhdGEudmFsdWU+KCcnKTtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUodGhpcy5kYXRhLnZhbHVlKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuXG4gICAgICAgIHRoaXMucG9wb3Zlci52aXNpYmxlQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB0aGlzLnN0YXRlQ2hhbmdlcy5uZXh0KCkpO1xuICAgIH1cblxuICAgIG9uQXBwbHkoKSB7XG4gICAgICAgIHRoaXMuZGF0YS52YWx1ZSA9IHRoaXMuY29udHJvbC52YWx1ZTtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZXMubmV4dCgpO1xuXG4gICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNQcmlzdGluZSgpO1xuICAgICAgICB0aGlzLnBvcG92ZXIuaGlkZSgpO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyQmFyPy5vbkNoYW5nZVBpcGUubmV4dCh0aGlzLmRhdGEpO1xuICAgIH1cblxuICAgIC8qKiBAZG9jcy1wcml2YXRlICovXG4gICAgb25LZXlkb3duKCRldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQgJiYgKCRldmVudC5jdHJsS2V5IHx8ICRldmVudC5tZXRhS2V5KSAmJiAkZXZlbnQua2V5Q29kZSA9PT0gRU5URVIpIHtcbiAgICAgICAgICAgIHRoaXMub25BcHBseSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIG9wZW5zIHBvcG92ZXIgKi9cbiAgICBvdmVycmlkZSBvcGVuKCkge1xuICAgICAgICB0aGlzLnBvcG92ZXIuc2hvdygpO1xuICAgIH1cbn1cbiIsIjxidXR0b25cbiAgICBrYnEtYnV0dG9uXG4gICAga2JxUG9wb3ZlclxuICAgIFtkaXNhYmxlZF09XCJkYXRhLmRpc2FibGVkXCJcbiAgICBba2JxUGlwZVN0YXRlXT1cImRhdGFcIlxuICAgIFtrYnFQaXBlVGl0bGVdPVwicGlwZVRvb2x0aXBcIlxuICAgIFtrYnFQb3BvdmVyQXJyb3ddPVwiZmFsc2VcIlxuICAgIFtrYnFQb3BvdmVyQ2xhc3NdPVwiJ2ticS1waXBlX19wb3BvdmVyJ1wiXG4gICAgW2ticVBvcG92ZXJDb250ZW50XT1cImNvbnRlbnRcIlxuICAgIFtrYnFQb3BvdmVyRm9vdGVyXT1cImZvb3RlclwiXG4gICAgW2ticVBvcG92ZXJPZmZzZXRdPVwiNFwiXG4gICAgW2ticVBvcG92ZXJQbGFjZW1lbnRdPVwicGxhY2VtZW50cy5Cb3R0b21MZWZ0XCJcbiAgICBbbmdDbGFzc109XCJ7ICdrYnEtYWN0aXZlJzogcG9wb3Zlcj8uaXNPcGVuIH1cIlxuPlxuICAgIDxzcGFuICNrYnFUaXRsZVRleHQga2JxUGlwZU1pbldpZHRoIGNsYXNzPVwia2JxLXBpcGVfX25hbWVcIj57eyBkYXRhLm5hbWUgfX08L3NwYW4+XG4gICAgPHNwYW4gI2ticVRpdGxlVGV4dCBrYnFQaXBlTWluV2lkdGggY2xhc3M9XCJrYnEtcGlwZV9fdmFsdWVcIiBbY2xhc3Mua2JxLXBpcGVfX3ZhbHVlX2VtcHR5XT1cIiFkYXRhLnZhbHVlXCI+XG4gICAgICAgIHt7IGRhdGEudmFsdWUgfX1cbiAgICA8L3NwYW4+XG48L2J1dHRvbj5cblxuQGlmIChzaG93UmVtb3ZlQnV0dG9uKSB7XG4gICAgPGticS1waXBlLWJ1dHRvbiAvPlxufVxuXG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gICAgPGticS1mb3JtLWZpZWxkIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCI+XG4gICAgICAgIDx0ZXh0YXJlYSBrYnFUZXh0YXJlYSByb3dzPVwiMVwiIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCIgW2ZyZWVSb3dzSGVpZ2h0XT1cIjBcIiBbbWF4Um93c109XCI1XCI+PC90ZXh0YXJlYT5cbiAgICA8L2ticS1mb3JtLWZpZWxkPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNmb290ZXI+XG4gICAgPGJ1dHRvbiBrYnEtYnV0dG9uIFtjb2xvcl09XCIndGhlbWUnXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIiAoY2xpY2spPVwib25BcHBseSgpXCI+XG4gICAgICAgIDxzcGFuPnt7IGxvY2FsZURhdGEucGlwZS5hcHBseUJ1dHRvbiB9fTwvc3Bhbj5cbiAgICAgICAgJm5ic3A7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwia2JxLWJ1dHRvbl9ob3Qta2V5XCI+e3sgaXNNYWMgPyAn4oyYJyA6ICdDdHJsKycgfX1FbnRlcjwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjcGlwZVRvb2x0aXA+XG4gICAgPGRpdiBjbGFzcz1cImticS1waXBlLXRvb2x0aXBfX25hbWUga2JxLXRleHQtY29tcGFjdFwiPnt7IGRhdGEubmFtZSB9fTwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJrYnEtcGlwZS10b29sdGlwX192YWx1ZSBrYnEtdGV4dC1jb21wYWN0XCI+e3sgZGF0YS52YWx1ZSB9fTwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -4,6 +4,7 @@ import { KbqTooltipTrigger } from '@koobiq/components/tooltip';
4
4
  import { Observable, Subject, Subscription, throttleTime } from 'rxjs';
5
5
  import { debounceTime } from 'rxjs/operators';
6
6
  import * as i0 from "@angular/core";
7
+ // todo DS-3672
7
8
  export class KbqPipeTitleDirective extends KbqTooltipTrigger {
8
9
  constructor() {
9
10
  super(...arguments);
@@ -93,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
93
94
  type: ContentChild,
94
95
  args: ['kbqTitleContainer']
95
96
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS10aXRsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXRpdGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxZQUFZLEVBQ1osZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxTQUFTLEVBQ1QsV0FBVyxFQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFZOUMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGlCQUFpQjtJQVY1RDs7UUFXWSxzQkFBaUIsR0FBRyxNQUFNLENBQWtCLGtCQUFrQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQXFCL0YsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUyxDQUFDO1FBRTVCLHFCQUFnQixHQUFXLEdBQUcsQ0FBQztRQUV4Qyx1QkFBa0IsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQ3hDLHlCQUFvQixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFDMUMsNkJBQXdCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztLQTJEekQ7SUFwRkcsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRTtZQUNsRCxPQUFPLENBQ0gsSUFB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QyxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNsQyxhQUFhLEVBQUUsSUFBSTtnQkFDbkIsVUFBVSxFQUFFLEtBQUs7Z0JBQ2pCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLE9BQU8sRUFBRSxJQUFJO2FBQ2hCLENBQUMsQ0FBQztZQUVILE9BQU8sR0FBRyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO2lJQXRGUSxxQkFBcUI7cUhBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFWakMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLElBQUksRUFBRTt3QkFDRixjQUFjLEVBQUUsc0JBQXNCO3dCQUN0QyxjQUFjLEVBQUUsZUFBZTt3QkFDL0IsaUJBQWlCLEVBQUUsMkJBQTJCO3FCQUNqRDtpQkFDSjs4QkFhcUMsU0FBUztzQkFBMUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUU7Z0JBbUJ4QixjQUFjO3NCQURyQixlQUFlO3VCQUFDLGNBQWMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSTlDLGVBQWU7c0JBRHRCLFlBQVk7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBRdWVyeUxpc3QsXG4gICAgVGVtcGxhdGVSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLQlFfVElUTEVfVEVYVF9SRUYsIEticVRpdGxlVGV4dFJlZiB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticVRvb2x0aXBUcmlnZ2VyIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL3Rvb2x0aXAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0aHJvdHRsZVRpbWUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1trYnFQaXBlVGl0bGVdJyxcbiAgICBleHBvcnRBczogJ2ticVBpcGVUaXRsZScsXG4gICAgaG9zdDoge1xuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ2hhbmRsZUVsZW1lbnRFbnRlcigpJyxcbiAgICAgICAgJyhtb3VzZWxlYXZlKSc6ICdoaWRlVG9vbHRpcCgpJyxcbiAgICAgICAgJyh3aW5kb3c6cmVzaXplKSc6ICdyZXNpemVTdHJlYW0ubmV4dCgkZXZlbnQpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUGlwZVRpdGxlRGlyZWN0aXZlIGV4dGVuZHMgS2JxVG9vbHRpcFRyaWdnZXIgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2UgPSBpbmplY3Q8S2JxVGl0bGVUZXh0UmVmPihLQlFfVElUTEVfVEVYVF9SRUYsIHsgb3B0aW9uYWw6IHRydWUsIGhvc3Q6IHRydWUgfSk7XG5cbiAgICBnZXQgaXNPdmVyZmxvd24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoaWxkQ29udGFpbmVyLnNvbWUoKHsgbmF0aXZlRWxlbWVudCB9KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIHRoaXMucGFyZW50Py5vZmZzZXRXaWR0aCA8IG5hdGl2ZUVsZW1lbnQuc2Nyb2xsV2lkdGggfHxcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmVudD8ub2Zmc2V0SGVpZ2h0IDwgbmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUGlwZVRpdGxlJyB9KSB2aWV3VmFsdWU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBnZXQgcGFyZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Q29udGFpbmVyPy5uYXRpdmVFbGVtZW50IHx8IHRoaXMucGFyZW50Q29udGFpbmVyO1xuICAgIH1cblxuICAgIGdldCBjaGlsZCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoaWxkQ29udGFpbmVyLmZpcnN0Lm5hdGl2ZUVsZW1lbnQgfHwgdGhpcy5jaGlsZENvbnRhaW5lcjtcbiAgICB9XG5cbiAgICByZWFkb25seSByZXNpemVTdHJlYW0gPSBuZXcgU3ViamVjdDxFdmVudD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVib3VuY2VJbnRlcnZhbDogbnVtYmVyID0gMTAwO1xuXG4gICAgcHJpdmF0ZSByZXNpemVTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG4gICAgcHJpdmF0ZSBtdXRhdGlvblN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgICBwcml2YXRlIGZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oJ2ticVRpdGxlVGV4dCcsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBwcml2YXRlIGNoaWxkQ29udGFpbmVyOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj47XG5cbiAgICBAQ29udGVudENoaWxkKCdrYnFUaXRsZUNvbnRhaW5lcicpXG4gICAgcHJpdmF0ZSBwYXJlbnRDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMucGFyZW50Q29udGFpbmVyID0gdGhpcy5wYXJlbnRDb250YWluZXIgfHwgdGhpcy5jb21wb25lbnRJbnN0YW5jZT8ucGFyZW50VGV4dEVsZW1lbnQgfHwgdGhpcy5lbGVtZW50UmVmO1xuICAgICAgICB0aGlzLmNoaWxkQ29udGFpbmVyID0gdGhpcy5jaGlsZENvbnRhaW5lciB8fCB0aGlzLmNvbXBvbmVudEluc3RhbmNlPy50ZXh0RWxlbWVudCB8fCB0aGlzLmVsZW1lbnRSZWY7XG4gICAgICAgIHRoaXMuY29udGVudCA9IHRoaXMudmlld1ZhbHVlO1xuXG4gICAgICAgIHRoaXMucmVzaXplU3Vic2NyaXB0aW9uID0gdGhpcy5yZXNpemVTdHJlYW1cbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlSW50ZXJ2YWwpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiAodGhpcy5kaXNhYmxlZCA9ICF0aGlzLmlzT3ZlcmZsb3duKSk7XG5cbiAgICAgICAgdGhpcy5tdXRhdGlvblN1YnNjcmlwdGlvbiA9IHRoaXMuY3JlYXRlTXV0YXRpb25PYnNlcnZlcigpXG4gICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUodGhpcy5kZWJvdW5jZUludGVydmFsKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSAhdGhpcy5pc092ZXJmbG93bjtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLnZpZXdWYWx1ZTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uID0gdGhpcy5mb2N1c01vbml0b3JcbiAgICAgICAgICAgIC5tb25pdG9yKHRoaXMuZWxlbWVudFJlZilcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gKG9yaWdpbiA9PT0gJ2tleWJvYXJkJyA/IHRoaXMuaGFuZGxlRWxlbWVudEVudGVyKCkgOiB0aGlzLmhpZGVUb29sdGlwKCkpKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcblxuICAgICAgICB0aGlzLnJlc2l6ZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm11dGF0aW9uU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuZWxlbWVudFJlZik7XG4gICAgfVxuXG4gICAgaGFuZGxlRWxlbWVudEVudGVyKCkge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gIXRoaXMuaXNPdmVyZmxvd247XG4gICAgfVxuXG4gICAgaGlkZVRvb2x0aXAoKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlTXV0YXRpb25PYnNlcnZlcigpOiBPYnNlcnZhYmxlPE11dGF0aW9uUmVjb3JkW10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbXV0YXRpb25PYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKChtdXRhdGlvbnMpID0+IG9ic2VydmVyLm5leHQobXV0YXRpb25zKSk7XG4gICAgICAgICAgICBtdXRhdGlvbk9ic2VydmVyLm9ic2VydmUodGhpcy5wYXJlbnQsIHtcbiAgICAgICAgICAgICAgICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBzdWJ0cmVlOiB0cnVlXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgcmV0dXJuICgpID0+IG11dGF0aW9uT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZS10aXRsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZmlsdGVyLWJhci9waXBlcy9waXBlLXRpdGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxZQUFZLEVBQ1osZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFFTCxTQUFTLEVBQ1QsV0FBVyxFQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBbUIsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFOUMsZUFBZTtBQVdmLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxpQkFBaUI7SUFWNUQ7O1FBV1ksc0JBQWlCLEdBQUcsTUFBTSxDQUFrQixrQkFBa0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFxQi9GLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVMsQ0FBQztRQUU1QixxQkFBZ0IsR0FBVyxHQUFHLENBQUM7UUFFeEMsdUJBQWtCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQztRQUN4Qyx5QkFBb0IsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBQzFDLDZCQUF3QixHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7S0E0RHpEO0lBckZHLElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUU7WUFDbEQsT0FB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QyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDbEMsYUFBYSxFQUFFLElBQUk7Z0JBQ25CLFVBQVUsRUFBRSxLQUFLO2dCQUNqQixTQUFTLEVBQUUsSUFBSTtnQkFDZixPQUFPLEVBQUUsSUFBSTthQUNoQixDQUFDLENBQUM7WUFFSCxPQUFPLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztpSUF2RlEscUJBQXFCO3FIQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBVmpDLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO29CQUN4QixJQUFJLEVBQUU7d0JBQ0YsY0FBYyxFQUFFLHNCQUFzQjt3QkFDdEMsY0FBYyxFQUFFLGVBQWU7d0JBQy9CLGlCQUFpQixFQUFFLDJCQUEyQjtxQkFDakQ7aUJBQ0o7OEJBYXFDLFNBQVM7c0JBQTFDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFO2dCQW1CeEIsY0FBYztzQkFEckIsZUFBZTt1QkFBQyxjQUFjLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFO2dCQUk5QyxlQUFlO3NCQUR0QixZQUFZO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgUXVlcnlMaXN0LFxuICAgIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS0JRX1RJVExFX1RFWFRfUkVGLCBLYnFUaXRsZVRleHRSZWYgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFUb29sdGlwVHJpZ2dlciB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIHRvZG8gRFMtMzY3MlxuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1trYnFQaXBlVGl0bGVdJyxcbiAgICBleHBvcnRBczogJ2ticVBpcGVUaXRsZScsXG4gICAgaG9zdDoge1xuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ2hhbmRsZUVsZW1lbnRFbnRlcigpJyxcbiAgICAgICAgJyhtb3VzZWxlYXZlKSc6ICdoaWRlVG9vbHRpcCgpJyxcbiAgICAgICAgJyh3aW5kb3c6cmVzaXplKSc6ICdyZXNpemVTdHJlYW0ubmV4dCgkZXZlbnQpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUGlwZVRpdGxlRGlyZWN0aXZlIGV4dGVuZHMgS2JxVG9vbHRpcFRyaWdnZXIgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgY29tcG9uZW50SW5zdGFuY2UgPSBpbmplY3Q8S2JxVGl0bGVUZXh0UmVmPihLQlFfVElUTEVfVEVYVF9SRUYsIHsgb3B0aW9uYWw6IHRydWUsIGhvc3Q6IHRydWUgfSk7XG5cbiAgICBnZXQgaXNPdmVyZmxvd24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoaWxkQ29udGFpbmVyLnNvbWUoKHsgbmF0aXZlRWxlbWVudCB9KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIHRoaXMucGFyZW50Py5vZmZzZXRXaWR0aCA8IG5hdGl2ZUVsZW1lbnQuc2Nyb2xsV2lkdGggfHxcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmVudD8ub2Zmc2V0SGVpZ2h0IDwgbmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUGlwZVRpdGxlJyB9KSB2aWV3VmFsdWU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBnZXQgcGFyZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Q29udGFpbmVyPy5uYXRpdmVFbGVtZW50IHx8IHRoaXMucGFyZW50Q29udGFpbmVyO1xuICAgIH1cblxuICAgIGdldCBjaGlsZCgpOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoaWxkQ29udGFpbmVyLmZpcnN0Lm5hdGl2ZUVsZW1lbnQgfHwgdGhpcy5jaGlsZENvbnRhaW5lcjtcbiAgICB9XG5cbiAgICByZWFkb25seSByZXNpemVTdHJlYW0gPSBuZXcgU3ViamVjdDxFdmVudD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVib3VuY2VJbnRlcnZhbDogbnVtYmVyID0gMTAwO1xuXG4gICAgcHJpdmF0ZSByZXNpemVTdWJzY3JpcHRpb24gPSBTdWJzY3JpcHRpb24uRU1QVFk7XG4gICAgcHJpdmF0ZSBtdXRhdGlvblN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcbiAgICBwcml2YXRlIGZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbiA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oJ2ticVRpdGxlVGV4dCcsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBwcml2YXRlIGNoaWxkQ29udGFpbmVyOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj47XG5cbiAgICBAQ29udGVudENoaWxkKCdrYnFUaXRsZUNvbnRhaW5lcicpXG4gICAgcHJpdmF0ZSBwYXJlbnRDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMucGFyZW50Q29udGFpbmVyID0gdGhpcy5wYXJlbnRDb250YWluZXIgfHwgdGhpcy5jb21wb25lbnRJbnN0YW5jZT8ucGFyZW50VGV4dEVsZW1lbnQgfHwgdGhpcy5lbGVtZW50UmVmO1xuICAgICAgICB0aGlzLmNoaWxkQ29udGFpbmVyID0gdGhpcy5jaGlsZENvbnRhaW5lciB8fCB0aGlzLmNvbXBvbmVudEluc3RhbmNlPy50ZXh0RWxlbWVudCB8fCB0aGlzLmVsZW1lbnRSZWY7XG4gICAgICAgIHRoaXMuY29udGVudCA9IHRoaXMudmlld1ZhbHVlO1xuXG4gICAgICAgIHRoaXMucmVzaXplU3Vic2NyaXB0aW9uID0gdGhpcy5yZXNpemVTdHJlYW1cbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlSW50ZXJ2YWwpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiAodGhpcy5kaXNhYmxlZCA9ICF0aGlzLmlzT3ZlcmZsb3duKSk7XG5cbiAgICAgICAgdGhpcy5tdXRhdGlvblN1YnNjcmlwdGlvbiA9IHRoaXMuY3JlYXRlTXV0YXRpb25PYnNlcnZlcigpXG4gICAgICAgICAgICAucGlwZSh0aHJvdHRsZVRpbWUodGhpcy5kZWJvdW5jZUludGVydmFsKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSAhdGhpcy5pc092ZXJmbG93bjtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnQgPSB0aGlzLnZpZXdWYWx1ZTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uID0gdGhpcy5mb2N1c01vbml0b3JcbiAgICAgICAgICAgIC5tb25pdG9yKHRoaXMuZWxlbWVudFJlZilcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gKG9yaWdpbiA9PT0gJ2tleWJvYXJkJyA/IHRoaXMuaGFuZGxlRWxlbWVudEVudGVyKCkgOiB0aGlzLmhpZGVUb29sdGlwKCkpKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcblxuICAgICAgICB0aGlzLnJlc2l6ZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm11dGF0aW9uU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuZWxlbWVudFJlZik7XG4gICAgfVxuXG4gICAgaGFuZGxlRWxlbWVudEVudGVyKCkge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gIXRoaXMuaXNPdmVyZmxvd247XG4gICAgfVxuXG4gICAgaGlkZVRvb2x0aXAoKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlTXV0YXRpb25PYnNlcnZlcigpOiBPYnNlcnZhYmxlPE11dGF0aW9uUmVjb3JkW10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbXV0YXRpb25PYnNlcnZlciA9IG5ldyBNdXRhdGlvbk9ic2VydmVyKChtdXRhdGlvbnMpID0+IG9ic2VydmVyLm5leHQobXV0YXRpb25zKSk7XG5cbiAgICAgICAgICAgIG11dGF0aW9uT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLnBhcmVudCwge1xuICAgICAgICAgICAgICAgIGNoYXJhY3RlckRhdGE6IHRydWUsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczogZmFsc2UsXG4gICAgICAgICAgICAgICAgY2hpbGRMaXN0OiB0cnVlLFxuICAgICAgICAgICAgICAgIHN1YnRyZWU6IHRydWVcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gbXV0YXRpb25PYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -271,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
271
271
  }, {
272
272
  type: Self
273
273
  }] }] });
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZm9ybS1maWVsZC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFFTixRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFDSCxrQ0FBa0MsRUFDbEMsb0RBQW9ELEVB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c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFU0NBUEUsIEY4IH0gZnJvbSAnQGtvb2JpcS9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgS0JRX0ZPUk1fRklFTERfUkVGLCBLYnFDb2xvckRpcmVjdGl2ZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEVNUFRZLCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgS2JxQ2xlYW5lciB9IGZyb20gJy4vY2xlYW5lcic7XG5pbXBvcnQgeyBLYnFGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnLi9mb3JtLWZpZWxkLWNvbnRyb2wnO1xuaW1wb3J0IHtcbiAgICBnZXRLYnFGb3JtRmllbGRNaXNzaW5nQ29udHJvbEVycm9yLFxuICAgIGdldEticUZvcm1GaWVsZFlvdUNhbk5vdFVzZUNsZWFuZXJJbk51bWJlcklucHV0RXJyb3Jcbn0gZnJvbSAnLi9mb3JtLWZpZWxkLWVycm9ycyc7XG5pbXBvcnQgeyBLYnFIaW50IH0gZnJvbSAnLi9oaW50JztcbmltcG9ydCB7IGhhc1Bhc3N3b3JkU3RyZW5ndGhFcnJvciwgS2JxUGFzc3dvcmRIaW50IH0gZnJvbSAnLi9wYXNzd29yZC1oaW50JztcbmltcG9ydCB7IEticVBhc3N3b3JkVG9nZ2xlIH0gZnJvbSAnLi9wYXNzd29yZC10b2dnbGUnO1xuaW1wb3J0IHsgS2JxUHJlZml4IH0gZnJvbSAnLi9wcmVmaXgnO1xuaW1wb3J0IHsgS2JxU3RlcHBlciB9IGZyb20gJy4vc3RlcHBlcic7XG5pbXBvcnQgeyBLYnFTdWZmaXggfSBmcm9tICcuL3N1ZmZpeCc7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1mb3JtLWZpZWxkJyxcbiAgICBleHBvcnRBczogJ2ticUZvcm1GaWVsZCcsXG4gICAgdGVtcGxhdGVVcmw6ICdmb3JtLWZpZWxkLmh0bWwnLFxuICAgIC8vIEticUlucHV0IGlzIGEgZGlyZWN0aXZlIGFuZCBjYW4ndCBoYXZlIHN0eWxlcywgc28gd2UgbmVlZCB0byBpbmNsdWRlIGl0cyBzdHlsZXMgaGVyZS5cbiAgICAvLyBUaGUgS2JxSW5wdXQgc3R5bGVzIGFyZSBmYWlybHkgbWluaW1hbCBzbyBpdCBzaG91bGRuJ3QgYmUgYSBiaWcgZGVhbCBmb3IgcGVvcGxlIHdob1xuICAgIC8vIGFyZW4ndCB1c2luZyBLYnFJbnB1dC5cbiAgICBzdHlsZVVybHM6IFtcbiAgICAgICAgJ2Zvcm0tZmllbGQuc2NzcycsXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL3RpbWVwaWNrZXIvdGltZXBpY2tlci5zY3NzJyxcbiAgICAgICAgJy4uL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL3RleHRhcmVhL3RleHRhcmVhLnNjc3MnLFxuICAgICAgICAnZm9ybS1maWVsZC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuLi90YWdzL3RhZy1pbnB1dC10b2tlbnMuc2NzcydcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtZm9ybS1maWVsZCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaW52YWxpZF0nOiAnY29udHJvbC5lcnJvclN0YXRlJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtZm9ybS1maWVsZF9oYXMtcHJlZml4XSc6ICdoYXNQcmVmaXgnLFxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX2hhcy1zdWZmaXhdJzogJ2hhc1N1ZmZpeCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaGFzLXBhc3N3b3JkLXRvZ2dsZV0nOiAnaGFzUGFzc3dvcmRUb2dnbGUnLFxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX2hhcy1jbGVhbmVyXSc6ICdjYW5TaG93Q2xlYW5lcicsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaGFzLXN0ZXBwZXJdJzogJ2NhblNob3dTdGVwcGVyJyxcblxuICAgICAgICAnW2NsYXNzLmticS1kaXNhYmxlZF0nOiAnY29udHJvbC5kaXNhYmxlZCcsXG5cbiAgICAgICAgJ1tjbGFzcy5uZy11bnRvdWNoZWRdJzogJ3Nob3VsZEZvcndhcmQoXCJ1bnRvdWNoZWRcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLXRvdWNoZWRdJzogJ3Nob3VsZEZvcndhcmQoXCJ0b3VjaGVkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1wcmlzdGluZV0nOiAnc2hvdWxkRm9yd2FyZChcInByaXN0aW5lXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1kaXJ0eV0nOiAnc2hvdWxkRm9yd2FyZChcImRpcnR5XCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy12YWxpZF0nOiAnc2hvdWxkRm9yd2FyZChcInZhbGlkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1pbnZhbGlkXSc6ICdzaG91bGRGb3J3YXJkKFwiaW52YWxpZFwiKScsXG4gICAgICAgICdbY2xhc3MubmctcGVuZGluZ10nOiAnc2hvdWxkRm9yd2FyZChcInBlbmRpbmdcIiknLFxuXG4gICAgICAgICcoa2V5ZG93biknOiAnb25LZXlEb3duKCRldmVudCknLFxuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ29uSG92ZXJDaGFuZ2VkKHRydWUpJyxcbiAgICAgICAgJyhtb3VzZWxlYXZlKSc6ICdvbkhvdmVyQ2hhbmdlZChmYWxzZSknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IEtCUV9GT1JNX0ZJRUxEX1JFRiwgdXNlRXhpc3Rpbmc6IEticUZvcm1GaWVsZCB9XVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtRmllbGRcbiAgICBleHRlbmRzIEticUNvbG9yRGlyZWN0aXZlXG4gICAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlckNvbnRlbnRDaGVja2VkLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgICBAQ29udGVudENoaWxkKEticUZvcm1GaWVsZENvbnRyb2wsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250cm9sOiBLYnFGb3JtRmllbGRDb250cm9sPGFueT47XG4gICAgQENvbnRlbnRDaGlsZChLYnFTdGVwcGVyLCB7IHN0YXRpYzogZmFsc2UgfSkgc3RlcHBlcjogS2JxU3RlcHBlcjtcbiAgICBAQ29udGVudENoaWxkKEticUNsZWFuZXIsIHsgc3RhdGljOiBmYWxzZSB9KSBjbGVhbmVyOiBLYnFDbGVhbmVyIHwgbnVsbDtcbiAgICBAQ29udGVudENoaWxkKEticVBhc3N3b3JkVG9nZ2xlLCB7IHN0YXRpYzogZmFsc2UgfSkgcGFzc3dvcmRUb2dnbGU6IEticVBhc3N3b3JkVG9nZ2xlIHwgbnVsbDtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxSGludCkgaGludDogUXVlcnlMaXN0PEticUhpbnQ+O1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxUGFzc3dvcmRIaW50KSBwYXNzd29yZEhpbnRzOiBRdWVyeUxpc3Q8S2JxUGFzc3dvcmRIaW50PjtcbiAgICBAQ29udGVudENoaWxkcmVuKEticVN1ZmZpeCkgc3VmZml4OiBRdWVyeUxpc3Q8S2JxU3VmZml4PjtcbiAgICBAQ29udGVudENoaWxkcmVuKEticVByZWZpeCkgcHJlZml4OiBRdWVyeUxpc3Q8S2JxUHJlZml4PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2Nvbm5lY3Rpb25Db250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb25uZWN0aW9uQ29udGFpbmVyUmVmOiBFbGVtZW50UmVmO1xuXG4gICAgLy8gVW5pcXVlIGlkIGZvciB0aGUgaW50ZXJuYWwgZm9ybSBmaWVsZCBsYWJlbC5cbiAgICBsYWJlbElkID0gYGticS1mb3JtLWZpZWxkLWxhYmVsLSR7bmV4dFVuaXF1ZUlkKyt9YDtcblxuICAgIGhvdmVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNhbkNsZWFuZXJDbGVhckJ5RXNjOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIGdldCBmb2N1c09yaWdpbigpOiBGb2N1c09yaWdpbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb2N1c09yaWdpbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9mb2N1c09yaWdpbjogRm9jdXNPcmlnaW47XG5cbiAgICBnZXQgaGFzRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2w/LmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0hpbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnQ/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1N1ZmZpeCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3VmZml4Py5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGdldCBoYXNQcmVmaXgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZWZpeD8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jbGVhbmVyO1xuICAgIH1cblxuICAgIGdldCBoYXNTdGVwcGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnN0ZXBwZXI7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1Bhc3N3b3JkVG9nZ2xlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnBhc3N3b3JkVG9nZ2xlO1xuICAgIH1cblxuICAgIGdldCBjYW5TaG93Q2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQ2xlYW5lciAmJiB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbFxuICAgICAgICAgICAgPyB0aGlzLmNvbnRyb2wubmdDb250cm9sLnZhbHVlICYmICF0aGlzLmNvbnRyb2wuZGlzYWJsZWRcbiAgICAgICAgICAgIDogZmFsc2U7XG4gICAgfVxuXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sPy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBnZXQgY2FuU2hvd1N0ZXBwZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1N0ZXBwZXIgJiYgIXRoaXMuZGlzYWJsZWQgJiYgKHRoaXMuY29udHJvbD8uZm9jdXNlZCB8fCB0aGlzLmhvdmVyZWQpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgaWYgKCh0aGlzLmNvbnRyb2wgYXMgYW55KS5udW1iZXJJbnB1dCAmJiB0aGlzLmhhc0NsZWFuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYW5lciA9IG51bGw7XG4gICAgICAgICAgICB0aHJvdyBnZXRLYnFGb3JtRmllbGRZb3VDYW5Ob3RVc2VDbGVhbmVySW5OdW1iZXJJbnB1dEVycm9yKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbGlkYXRlQ29udHJvbENoaWxkKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5jb250cm9sVHlwZSkge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChga2JxLWZvcm0tZmllbGQtdHlwZS0ke3RoaXMuY29udHJvbC5jb250cm9sVHlwZX1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN1YnNjcmliZSB0byBjaGFuZ2VzIGluIHRoZSBjaGlsZCBjb250cm9sIHN0YXRlIGluIG9yZGVyIHRvIHVwZGF0ZSB0aGUgZm9ybSBmaWVsZCBVSS5cbiAgICAgICAgdGhpcy5jb250cm9sLnN0YXRlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCgpKS5zdWJzY3JpYmUoKHN0YXRlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnBhc3N3b3JkSGludHMubGVuZ3RoICYmICFzdGF0ZT8uZm9jdXNlZCAmJiBoYXNQYXNzd29yZFN0cmVuZ3RoRXJyb3IodGhpcy5wYXNzd29yZEhpbnRzKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbC5uZ0NvbnRyb2w/LmNvbnRyb2w/LnNldEVycm9ycyh7IHBhc3N3b3JkU3RyZW5ndGg6IHRydWUgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc1N0ZXBwZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc3RlcHBlci5jb25uZWN0VG8oKHRoaXMuY29udHJvbCBhcyBhbnkpLm51bWJlcklucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJ1biBjaGFuZ2UgZGV0ZWN0aW9uIGlmIHRoZSB2YWx1ZSBjaGFuZ2VzLlxuICAgICAgICBjb25zdCB2YWx1ZUNoYW5nZXMgPSB0aGlzLmNvbnRyb2wubmdDb250cm9sPy52YWx1ZUNoYW5nZXMgfHwgRU1QVFk7XG5cbiAgICAgICAgbWVyZ2UodmFsdWVDaGFuZ2VzLCB0aGlzLmhpbnQuY2hhbmdlcywgdGhpcy5wYXNzd29yZEhpbnRzLmNoYW5nZXMpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29udHJvbENoaWxkKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnJ1bkZvY3VzTW9uaXRvcigpO1xuXG4gICAgICAgIC8vIEF2b2lkIGFuaW1hdGlvbnMgb24gbG9hZC5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEZvY3VzZXMgdGhlIGNvbnRyb2wuICovXG4gICAgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBmb2N1c2AgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBmb2N1c1ZpYUtleWJvYXJkKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sLmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGNsZWFyVmFsdWUoJGV2ZW50KSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbD8ucmVzZXQoKTtcbiAgICAgICAgdGhpcy5jb250cm9sPy5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uQ29udGFpbmVyQ2xpY2soJGV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2w/Lm9uQ29udGFpbmVyQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5vbkNvbnRhaW5lckNsaWNrKCRldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5jb250cm9sVHlwZSA9PT0gJ2lucHV0LXBhc3N3b3JkJyAmJiBldmVudC5hbHRLZXkgJiYgZXZlbnQua2V5Q29kZSA9PT0gRjgpIHtcbiAgICAgICAgICAgICh0aGlzLmNvbnRyb2wgYXMgdW5rbm93biBhcyB7IHRvZ2dsZVR5cGUoKTogdm9pZCB9KS50b2dnbGVUeXBlKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuY2FuQ2xlYW5lckNsZWFyQnlFc2MgJiYgZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFICYmIHRoaXMuY29udHJvbC5mb2N1c2VkICYmIHRoaXMuaGFzQ2xlYW5lcikge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sPy5uZ0NvbnRyb2w/LnJlc2V0KCk7XG5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvdmVyQ2hhbmdlZChpc0hvdmVyZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKGlzSG92ZXJlZCAhPT0gdGhpcy5ob3ZlcmVkKSB7XG4gICAgICAgICAgICB0aGlzLmhvdmVyZWQgPSBpc0hvdmVyZWQ7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBhbiBFbGVtZW50UmVmIGZvciB0aGUgZWxlbWVudCB0aGF0IGEgb3ZlcmxheSBhdHRhY2hlZCB0byB0aGUgZm9ybS1maWVsZCBzaG91bGQgYmVcbiAgICAgKiBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvLlxuICAgICAqL1xuICAgIGdldENvbm5lY3RlZE92ZXJsYXlPcmlnaW4oKTogRWxlbWVudFJlZiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb25Db250YWluZXJSZWYgfHwgdGhpcy5lbGVtZW50UmVmO1xuICAgIH1cblxuICAgIC8qKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBjbGFzcyBmcm9tIHRoZSBOZ0NvbnRyb2wgc2hvdWxkIGJlIGZvcndhcmRlZCB0byB0aGUgaG9zdCBlbGVtZW50LiAqL1xuICAgIHNob3VsZEZvcndhcmQocHJvcDoga2V5b2YgTmdDb250cm9sKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IG5nQ29udHJvbCA9IHRoaXMuY29udHJvbD8ubmdDb250cm9sO1xuXG4gICAgICAgIHJldHVybiBuZ0NvbnRyb2wgJiYgbmdDb250cm9sW3Byb3BdO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3BGb2N1c01vbml0b3IoKTtcbiAgICB9XG5cbiAgICBydW5Gb2N1c01vbml0b3IgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yXG4gICAgICAgICAgICAubW9uaXRvcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdHJ1ZSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgob3JpZ2luKSA9PiAodGhpcy5fZm9jdXNPcmlnaW4gPSBvcmlnaW4pKTtcbiAgICB9O1xuXG4gICAgc3RvcEZvY3VzTW9uaXRvcigpIHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIC8qKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIGZvcm0gZmllbGQncyBjb250cm9sIGlzIG1pc3NpbmcuICovXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRlQ29udHJvbENoaWxkKCkge1xuICAgICAgICBpZiAoIXRoaXMuY29udHJvbCkge1xuICAgICAgICAgICAgdGhyb3cgZ2V0S2JxRm9ybUZpZWxkTWlzc2luZ0NvbnRyb2xFcnJvcigpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1mb3JtLWZpZWxkW2ticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzXScsXG4gICAgZXhwb3J0QXM6ICdrYnFGb3JtRmllbGRXaXRob3V0Qm9yZGVycycsXG4gICAgaG9zdDogeyBjbGFzczogJ2ticS1mb3JtLWZpZWxkX3dpdGhvdXQtYm9yZGVycycgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtRmllbGRXaXRob3V0Qm9yZGVycyB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1trYnFJbnB1dF0sIFtrYnFUZXh0YXJlYV0nLFxuICAgIGV4cG9ydEFzOiAnS2JxVHJpbScsXG4gICAgaG9zdDogeyBjbGFzczogJ2ticS10cmltJyB9XG59KVxuZXhwb3J0IGNsYXNzIEticVRyaW0ge1xuICAgIHByaXZhdGUgb3JpZ2luYWw6IChmbjogYW55KSA9PiB2b2lkO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBBdHRyaWJ1dGUoJ25vLXRyaW0nKSBwcml2YXRlIHJlYWRvbmx5IG5vVHJpbTogYm9vbGVhbixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sXG4gICAgKSB7XG4gICAgICAgIHRoaXMubm9UcmltID0gY29lcmNlQm9vbGVhblByb3BlcnR5KG5vVHJpbSk7XG5cbiAgICAgICAgaWYgKHRoaXMubm9UcmltIHx8ICF0aGlzLm5nQ29udHJvbD8udmFsdWVBY2Nlc3Nvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcmlnaW5hbCA9IHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IucmVnaXN0ZXJPbkNoYW5nZTtcblxuICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLnJlZ2lzdGVyT25DaGFuZ2UgPSB0aGlzLnJlZ2lzdGVyT25DaGFuZ2U7XG4gICAgfVxuXG4gICAgdHJpbSh2YWx1ZSkge1xuICAgICAgICBpZiAodGhpcy5ub1RyaW0pIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUudHJpbSgpIDogdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWdpc3Rlck9uQ2hhbmdlID0gKGZuKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsLmNhbGwodGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciwgKHZhbHVlKSA9PiBmbih0aGlzLnRyaW0odmFsdWUpKSk7XG4gICAgfTtcbn1cbiIsIjxkaXYgI2Nvbm5lY3Rpb25Db250YWluZXIgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uQ29udGFpbmVyQ2xpY2soJGV2ZW50KVwiPlxuICAgIEBpZiAoaGFzUHJlZml4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fcHJlZml4XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJba2JxUHJlZml4XVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9faW5maXhcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoaGFzU3VmZml4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fc3VmZml4XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJba2JxU3VmZml4XVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIEBpZiAoY2FuU2hvd0NsZWFuZXIgJiYgIWhhc1N1ZmZpeCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZvcm0tZmllbGRfX2NsZWFuZXJcIiAoY2xpY2spPVwiY2xlYXJWYWx1ZSgkZXZlbnQpXCIgKGtleWRvd24uZW50ZXIpPVwiY2xlYXJWYWx1ZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtY2xlYW5lclwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1wYXNzd29yZC10b2dnbGVcIiAvPlxuXG4gICAgQGlmIChjYW5TaG93U3RlcHBlcikge1xuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtc3RlcHBlclwiIC8+XG4gICAgfVxuPC9kaXY+XG5cbkBpZiAoaGFzSGludCB8fCBwYXNzd29yZEhpbnRzLmxlbmd0aCkge1xuICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9faGludFwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtaGludCwga2JxLXBhc3N3b3JkLWhpbnRcIiAvPlxuICAgIDwvZGl2PlxufVxuIl19
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZm9ybS1maWVsZC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osZUFBZSxFQUNmLFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFFTixRQUFRLEVBQ1IsU0FBUyxFQUNULElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFDSCxrQ0FBa0MsRUFDbEMsb0RBQW9ELEVB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c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2VsZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFU0NBUEUsIEY4IH0gZnJvbSAnQGtvb2JpcS9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgS0JRX0ZPUk1fRklFTERfUkVGLCBLYnFDb2xvckRpcmVjdGl2ZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEVNUFRZLCBtZXJnZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgS2JxQ2xlYW5lciB9IGZyb20gJy4vY2xlYW5lcic7XG5pbXBvcnQgeyBLYnFGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnLi9mb3JtLWZpZWxkLWNvbnRyb2wnO1xuaW1wb3J0IHtcbiAgICBnZXRLYnFGb3JtRmllbGRNaXNzaW5nQ29udHJvbEVycm9yLFxuICAgIGdldEticUZvcm1GaWVsZFlvdUNhbk5vdFVzZUNsZWFuZXJJbk51bWJlcklucHV0RXJyb3Jcbn0gZnJvbSAnLi9mb3JtLWZpZWxkLWVycm9ycyc7XG5pbXBvcnQgeyBLYnFIaW50IH0gZnJvbSAnLi9oaW50JztcbmltcG9ydCB7IGhhc1Bhc3N3b3JkU3RyZW5ndGhFcnJvciwgS2JxUGFzc3dvcmRIaW50IH0gZnJvbSAnLi9wYXNzd29yZC1oaW50JztcbmltcG9ydCB7IEticVBhc3N3b3JkVG9nZ2xlIH0gZnJvbSAnLi9wYXNzd29yZC10b2dnbGUnO1xuaW1wb3J0IHsgS2JxUHJlZml4IH0gZnJvbSAnLi9wcmVmaXgnO1xuaW1wb3J0IHsgS2JxU3RlcHBlciB9IGZyb20gJy4vc3RlcHBlcic7XG5pbXBvcnQgeyBLYnFTdWZmaXggfSBmcm9tICcuL3N1ZmZpeCc7XG5cbmxldCBuZXh0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1mb3JtLWZpZWxkJyxcbiAgICBleHBvcnRBczogJ2ticUZvcm1GaWVsZCcsXG4gICAgdGVtcGxhdGVVcmw6ICdmb3JtLWZpZWxkLmh0bWwnLFxuICAgIC8vIEticUlucHV0IGlzIGEgZGlyZWN0aXZlIGFuZCBjYW4ndCBoYXZlIHN0eWxlcywgc28gd2UgbmVlZCB0byBpbmNsdWRlIGl0cyBzdHlsZXMgaGVyZS5cbiAgICAvLyBUaGUgS2JxSW5wdXQgc3R5bGVzIGFyZSBmYWlybHkgbWluaW1hbCBzbyBpdCBzaG91bGRuJ3QgYmUgYSBiaWcgZGVhbCBmb3IgcGVvcGxlIHdob1xuICAgIC8vIGFyZW4ndCB1c2luZyBLYnFJbnB1dC5cbiAgICBzdHlsZVVybHM6IFtcbiAgICAgICAgJ2Zvcm0tZmllbGQuc2NzcycsXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL3RpbWVwaWNrZXIvdGltZXBpY2tlci5zY3NzJyxcbiAgICAgICAgJy4uL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL3RleHRhcmVhL3RleHRhcmVhLnNjc3MnLFxuICAgICAgICAnZm9ybS1maWVsZC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuLi90YWdzL3RhZy1pbnB1dC10b2tlbnMuc2NzcydcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtZm9ybS1maWVsZCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaW52YWxpZF0nOiAnY29udHJvbC5lcnJvclN0YXRlJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtZm9ybS1maWVsZF9oYXMtcHJlZml4XSc6ICdoYXNQcmVmaXgnLFxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX2hhcy1zdWZmaXhdJzogJ2hhc1N1ZmZpeCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaGFzLXBhc3N3b3JkLXRvZ2dsZV0nOiAnaGFzUGFzc3dvcmRUb2dnbGUnLFxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX2hhcy1jbGVhbmVyXSc6ICdjYW5TaG93Q2xlYW5lcicsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaGFzLXN0ZXBwZXJdJzogJ2NhblNob3dTdGVwcGVyJyxcblxuICAgICAgICAnW2NsYXNzLmticS1kaXNhYmxlZF0nOiAnY29udHJvbC5kaXNhYmxlZCcsXG5cbiAgICAgICAgJ1tjbGFzcy5uZy11bnRvdWNoZWRdJzogJ3Nob3VsZEZvcndhcmQoXCJ1bnRvdWNoZWRcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLXRvdWNoZWRdJzogJ3Nob3VsZEZvcndhcmQoXCJ0b3VjaGVkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1wcmlzdGluZV0nOiAnc2hvdWxkRm9yd2FyZChcInByaXN0aW5lXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1kaXJ0eV0nOiAnc2hvdWxkRm9yd2FyZChcImRpcnR5XCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy12YWxpZF0nOiAnc2hvdWxkRm9yd2FyZChcInZhbGlkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1pbnZhbGlkXSc6ICdzaG91bGRGb3J3YXJkKFwiaW52YWxpZFwiKScsXG4gICAgICAgICdbY2xhc3MubmctcGVuZGluZ10nOiAnc2hvdWxkRm9yd2FyZChcInBlbmRpbmdcIiknLFxuXG4gICAgICAgICcoa2V5ZG93biknOiAnb25LZXlEb3duKCRldmVudCknLFxuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ29uSG92ZXJDaGFuZ2VkKHRydWUpJyxcbiAgICAgICAgJyhtb3VzZWxlYXZlKSc6ICdvbkhvdmVyQ2hhbmdlZChmYWxzZSknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IEtCUV9GT1JNX0ZJRUxEX1JFRiwgdXNlRXhpc3Rpbmc6IEticUZvcm1GaWVsZCB9XVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtRmllbGRcbiAgICBleHRlbmRzIEticUNvbG9yRGlyZWN0aXZlXG4gICAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlckNvbnRlbnRDaGVja2VkLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3lcbntcbiAgICBAQ29udGVudENoaWxkKEticUZvcm1GaWVsZENvbnRyb2wsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250cm9sOiBLYnFGb3JtRmllbGRDb250cm9sPGFueT47XG4gICAgQENvbnRlbnRDaGlsZChLYnFTdGVwcGVyLCB7IHN0YXRpYzogZmFsc2UgfSkgc3RlcHBlcjogS2JxU3RlcHBlcjtcbiAgICBAQ29udGVudENoaWxkKEticUNsZWFuZXIsIHsgc3RhdGljOiBmYWxzZSB9KSBjbGVhbmVyOiBLYnFDbGVhbmVyIHwgbnVsbDtcbiAgICBAQ29udGVudENoaWxkKEticVBhc3N3b3JkVG9nZ2xlLCB7IHN0YXRpYzogZmFsc2UgfSkgcGFzc3dvcmRUb2dnbGU6IEticVBhc3N3b3JkVG9nZ2xlIHwgbnVsbDtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxSGludCkgaGludDogUXVlcnlMaXN0PEticUhpbnQ+O1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxUGFzc3dvcmRIaW50KSBwYXNzd29yZEhpbnRzOiBRdWVyeUxpc3Q8S2JxUGFzc3dvcmRIaW50PjtcbiAgICBAQ29udGVudENoaWxkcmVuKEticVN1ZmZpeCkgc3VmZml4OiBRdWVyeUxpc3Q8S2JxU3VmZml4PjtcbiAgICBAQ29udGVudENoaWxkcmVuKEticVByZWZpeCkgcHJlZml4OiBRdWVyeUxpc3Q8S2JxUHJlZml4PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2Nvbm5lY3Rpb25Db250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb25uZWN0aW9uQ29udGFpbmVyUmVmOiBFbGVtZW50UmVmO1xuXG4gICAgLy8gVW5pcXVlIGlkIGZvciB0aGUgaW50ZXJuYWwgZm9ybSBmaWVsZCBsYWJlbC5cbiAgICBsYWJlbElkID0gYGticS1mb3JtLWZpZWxkLWxhYmVsLSR7bmV4dFVuaXF1ZUlkKyt9YDtcblxuICAgIGhvdmVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNhbkNsZWFuZXJDbGVhckJ5RXNjOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIGdldCBmb2N1c09yaWdpbigpOiBGb2N1c09yaWdpbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb2N1c09yaWdpbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9mb2N1c09yaWdpbjogRm9jdXNPcmlnaW47XG5cbiAgICBnZXQgaGFzRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2w/LmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0hpbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhpbnQ/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1N1ZmZpeCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3VmZml4Py5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIGdldCBoYXNQcmVmaXgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZWZpeD8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jbGVhbmVyO1xuICAgIH1cblxuICAgIGdldCBoYXNTdGVwcGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnN0ZXBwZXI7XG4gICAgfVxuXG4gICAgZ2V0IGhhc1Bhc3N3b3JkVG9nZ2xlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnBhc3N3b3JkVG9nZ2xlO1xuICAgIH1cblxuICAgIGdldCBjYW5TaG93Q2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQ2xlYW5lciAmJiB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbFxuICAgICAgICAgICAgPyB0aGlzLmNvbnRyb2wubmdDb250cm9sLnZhbHVlICYmICF0aGlzLmNvbnRyb2wuZGlzYWJsZWRcbiAgICAgICAgICAgIDogZmFsc2U7XG4gICAgfVxuXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sPy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBnZXQgY2FuU2hvd1N0ZXBwZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1N0ZXBwZXIgJiYgIXRoaXMuZGlzYWJsZWQgJiYgKHRoaXMuY29udHJvbD8uZm9jdXNlZCB8fCB0aGlzLmhvdmVyZWQpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvclxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgaWYgKCh0aGlzLmNvbnRyb2wgYXMgYW55KS5udW1iZXJJbnB1dCAmJiB0aGlzLmhhc0NsZWFuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYW5lciA9IG51bGw7XG4gICAgICAgICAgICB0aHJvdyBnZXRLYnFGb3JtRmllbGRZb3VDYW5Ob3RVc2VDbGVhbmVySW5OdW1iZXJJbnB1dEVycm9yKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbGlkYXRlQ29udHJvbENoaWxkKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5jb250cm9sVHlwZSkge1xuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChga2JxLWZvcm0tZmllbGQtdHlwZS0ke3RoaXMuY29udHJvbC5jb250cm9sVHlwZX1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFN1YnNjcmliZSB0byBjaGFuZ2VzIGluIHRoZSBjaGlsZCBjb250cm9sIHN0YXRlIGluIG9yZGVyIHRvIHVwZGF0ZSB0aGUgZm9ybSBmaWVsZCBVSS5cbiAgICAgICAgdGhpcy5jb250cm9sLnN0YXRlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCgpKS5zdWJzY3JpYmUoKHN0YXRlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnBhc3N3b3JkSGludHMubGVuZ3RoICYmICFzdGF0ZT8uZm9jdXNlZCAmJiBoYXNQYXNzd29yZFN0cmVuZ3RoRXJyb3IodGhpcy5wYXNzd29yZEhpbnRzKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbC5uZ0NvbnRyb2w/LmNvbnRyb2w/LnNldEVycm9ycyh7IHBhc3N3b3JkU3RyZW5ndGg6IHRydWUgfSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc1N0ZXBwZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc3RlcHBlci5jb25uZWN0VG8oKHRoaXMuY29udHJvbCBhcyBhbnkpLm51bWJlcklucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJ1biBjaGFuZ2UgZGV0ZWN0aW9uIGlmIHRoZSB2YWx1ZSBjaGFuZ2VzLlxuICAgICAgICBjb25zdCB2YWx1ZUNoYW5nZXMgPSB0aGlzLmNvbnRyb2wubmdDb250cm9sPy52YWx1ZUNoYW5nZXMgfHwgRU1QVFk7XG5cbiAgICAgICAgbWVyZ2UodmFsdWVDaGFuZ2VzLCB0aGlzLmhpbnQuY2hhbmdlcywgdGhpcy5wYXNzd29yZEhpbnRzLmNoYW5nZXMpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCkge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29udHJvbENoaWxkKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLnJ1bkZvY3VzTW9uaXRvcigpO1xuXG4gICAgICAgIC8vIEF2b2lkIGFuaW1hdGlvbnMgb24gbG9hZC5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEZvY3VzZXMgdGhlIGNvbnRyb2wuICovXG4gICAgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBmb2N1c2AgaW5zdGVhZC5cbiAgICAgKi9cbiAgICBmb2N1c1ZpYUtleWJvYXJkKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sLmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIGNsZWFyVmFsdWUoJGV2ZW50KSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbD8ucmVzZXQoKTtcbiAgICAgICAgdGhpcy5jb250cm9sPy5mb2N1cygpO1xuICAgIH1cblxuICAgIG9uQ29udGFpbmVyQ2xpY2soJGV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2w/Lm9uQ29udGFpbmVyQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5vbkNvbnRhaW5lckNsaWNrKCRldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29udHJvbC5jb250cm9sVHlwZSA9PT0gJ2lucHV0LXBhc3N3b3JkJyAmJiBldmVudC5hbHRLZXkgJiYgZXZlbnQua2V5Q29kZSA9PT0gRjgpIHtcbiAgICAgICAgICAgICh0aGlzLmNvbnRyb2wgYXMgdW5rbm93biBhcyB7IHRvZ2dsZVR5cGUoKTogdm9pZCB9KS50b2dnbGVUeXBlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jYW5DbGVhbmVyQ2xlYXJCeUVzYyAmJiBldmVudC5rZXlDb2RlID09PSBFU0NBUEUgJiYgdGhpcy5jb250cm9sLmZvY3VzZWQgJiYgdGhpcy5oYXNDbGVhbmVyKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbD8ucmVzZXQoKTtcblxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uSG92ZXJDaGFuZ2VkKGlzSG92ZXJlZDogYm9vbGVhbikge1xuICAgICAgICBpZiAoaXNIb3ZlcmVkICE9PSB0aGlzLmhvdmVyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaG92ZXJlZCA9IGlzSG92ZXJlZDtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGFuIEVsZW1lbnRSZWYgZm9yIHRoZSBlbGVtZW50IHRoYXQgYSBvdmVybGF5IGF0dGFjaGVkIHRvIHRoZSBmb3JtLWZpZWxkIHNob3VsZCBiZVxuICAgICAqIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8uXG4gICAgICovXG4gICAgZ2V0Q29ubmVjdGVkT3ZlcmxheU9yaWdpbigpOiBFbGVtZW50UmVmIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbkNvbnRhaW5lclJlZiB8fCB0aGlzLmVsZW1lbnRSZWY7XG4gICAgfVxuXG4gICAgLyoqIERldGVybWluZXMgd2hldGhlciBhIGNsYXNzIGZyb20gdGhlIE5nQ29udHJvbCBzaG91bGQgYmUgZm9yd2FyZGVkIHRvIHRoZSBob3N0IGVsZW1lbnQuICovXG4gICAgc2hvdWxkRm9yd2FyZChwcm9wOiBrZXlvZiBOZ0NvbnRyb2wpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgbmdDb250cm9sID0gdGhpcy5jb250cm9sPy5uZ0NvbnRyb2w7XG5cbiAgICAgICAgcmV0dXJuIG5nQ29udHJvbCAmJiBuZ0NvbnRyb2xbcHJvcF07XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcEZvY3VzTW9uaXRvcigpO1xuICAgIH1cblxuICAgIHJ1bkZvY3VzTW9uaXRvciA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3JcbiAgICAgICAgICAgIC5tb25pdG9yKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0cnVlKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChvcmlnaW4pID0+ICh0aGlzLl9mb2N1c09yaWdpbiA9IG9yaWdpbikpO1xuICAgIH07XG5cbiAgICBzdG9wRm9jdXNNb25pdG9yKCkge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgLyoqIFRocm93cyBhbiBlcnJvciBpZiB0aGUgZm9ybSBmaWVsZCdzIGNvbnRyb2wgaXMgbWlzc2luZy4gKi9cbiAgICBwcm90ZWN0ZWQgdmFsaWRhdGVDb250cm9sQ2hpbGQoKSB7XG4gICAgICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICAgICAgICB0aHJvdyBnZXRLYnFGb3JtRmllbGRNaXNzaW5nQ29udHJvbEVycm9yKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAna2JxLWZvcm0tZmllbGRba2JxRm9ybUZpZWxkV2l0aG91dEJvcmRlcnNdJyxcbiAgICBleHBvcnRBczogJ2ticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLWZvcm0tZmllbGRfd2l0aG91dC1ib3JkZXJzJyB9XG59KVxuZXhwb3J0IGNsYXNzIEticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzIHt9XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticUlucHV0XSwgW2ticVRleHRhcmVhXScsXG4gICAgZXhwb3J0QXM6ICdLYnFUcmltJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLXRyaW0nIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxVHJpbSB7XG4gICAgcHJpdmF0ZSBvcmlnaW5hbDogKGZuOiBhbnkpID0+IHZvaWQ7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEF0dHJpYnV0ZSgnbm8tdHJpbScpIHByaXZhdGUgcmVhZG9ubHkgbm9UcmltOiBib29sZWFuLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHByaXZhdGUgbmdDb250cm9sOiBOZ0NvbnRyb2xcbiAgICApIHtcbiAgICAgICAgdGhpcy5ub1RyaW0gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkobm9UcmltKTtcblxuICAgICAgICBpZiAodGhpcy5ub1RyaW0gfHwgIXRoaXMubmdDb250cm9sPy52YWx1ZUFjY2Vzc29yKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9yaWdpbmFsID0gdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3Nvci5yZWdpc3Rlck9uQ2hhbmdlO1xuXG4gICAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IucmVnaXN0ZXJPbkNoYW5nZSA9IHRoaXMucmVnaXN0ZXJPbkNoYW5nZTtcbiAgICB9XG5cbiAgICB0cmltKHZhbHVlKSB7XG4gICAgICAgIGlmICh0aGlzLm5vVHJpbSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZS50cmltKCkgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyT25DaGFuZ2UgPSAoZm4pID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JpZ2luYWwuY2FsbCh0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLCAodmFsdWUpID0+IGZuKHRoaXMudHJpbSh2YWx1ZSkpKTtcbiAgICB9O1xufVxuIiwiPGRpdiAjY29ubmVjdGlvbkNvbnRhaW5lciBjbGFzcz1cImticS1mb3JtLWZpZWxkX19jb250YWluZXJcIiAoY2xpY2spPVwib25Db250YWluZXJDbGljaygkZXZlbnQpXCI+XG4gICAgQGlmIChoYXNQcmVmaXgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19wcmVmaXhcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltrYnFQcmVmaXhdXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19pbmZpeFwiPlxuICAgICAgICA8bmctY29udGVudCAvPlxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChoYXNTdWZmaXgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19zdWZmaXhcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltrYnFTdWZmaXhdXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChjYW5TaG93Q2xlYW5lciAmJiAhaGFzU3VmZml4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fY2xlYW5lclwiIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIiAoa2V5ZG93bi5lbnRlcik9XCJjbGVhclZhbHVlKCRldmVudClcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1jbGVhbmVyXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwia2JxLXBhc3N3b3JkLXRvZ2dsZVwiIC8+XG5cbiAgICBAaWYgKGNhblNob3dTdGVwcGVyKSB7XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1zdGVwcGVyXCIgLz5cbiAgICB9XG48L2Rpdj5cblxuQGlmIChoYXNIaW50IHx8IHBhc3N3b3JkSGludHMubGVuZ3RoKSB7XG4gICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19oaW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1oaW50LCBrYnEtcGFzc3dvcmQtaGludFwiIC8+XG4gICAgPC9kaXY+XG59XG4iXX0=
@@ -190,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
190
190
  }, {
191
191
  type: Host
192
192
  }] }] });
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL3ZhbGlkYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLE1BQU0sRUFDTixRQUFRLEVBQ1IsSUFBSSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFSCxvQkFBb0IsRUFDcEIsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsU0FBUyxFQUNULE1BQU0sRUFDTixPQUFPLEVBQ1AsaUJBQWlCLEVBSXBCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGNBQWMsRUFBd0IsTUFBTSx5QkFBeUIsQ0FBQztBQUUvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFFM0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFrQkgsTUFBTSxPQUFPLG9CQUFvQjtJQUM3QixJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksT0FBTyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksZUFBZSxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksb0JBQW9CLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDbkQsQ0FB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QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7WUFFRCxxQ0FBcUM7WUFDckMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7aUlBdklRLG9CQUFvQixrQkEwQmpCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxhQUNqQixhQUFhLHNMQUlyQixjQUFjO3FIQS9CN0Isb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQWpCaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7S0FVVDtvQkFDRCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxvQ0FBb0M7cUJBQzlDO2lCQUNKOzswQkEyQlEsTUFBTTsyQkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7OzBCQUM1QyxRQUFROzswQkFBSSxJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUN4QyxRQUFROzswQkFBSSxJQUFJOzswQkFDaEIsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxjQUFjOzswQkFFakMsUUFBUTs7MEJBQUksSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0LFxuICAgIEluamVjdCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgRm9ybUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgRm9ybUNvbnRyb2xOYW1lLFxuICAgIEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgICBOR19WQUxJREFUT1JTLFxuICAgIE5nQ29udHJvbCxcbiAgICBOZ0Zvcm0sXG4gICAgTmdNb2RlbCxcbiAgICBSZXF1aXJlZFZhbGlkYXRvcixcbiAgICBWYWxpZGF0aW9uRXJyb3JzLFxuICAgIFZhbGlkYXRvcixcbiAgICBWYWxpZGF0b3JGblxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBLQlFfVkFMSURBVElPTiwgS2JxVmFsaWRhdGlvbk9wdGlvbnMgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFGb3JtRmllbGQgfSBmcm9tICcuL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgS2JxRm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJy4vZm9ybS1maWVsZC1jb250cm9sJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciByZWxlYXNlICgjRFMtMjgzOClcbiAqXG4gKiBMZWdhY3kgbW9zYWljIHZhbGlkYXRpb25cbiAqXG4gKiAjIyMgSG93IHRvIGRpc2FibGU/XG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgS0JRX1ZBTElEQVRJT04sIEticVZhbGlkYXRpb25PcHRpb25zIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuICpcbiAqIEBOZ01vZHVsZSh7XG4gKiAgICAgIHByb3ZpZGVyczogW1xuICogICAgICAgICAgIHtcbiAqICAgICAgICAgICAgICBwcm92aWRlOiBLQlFfVkFMSURBVElPTixcbiAqICAgICAgICAgICAgICB1c2VWYWx1ZTogeyB1c2VWYWxpZGF0aW9uOiBmYWxzZSB9IHNhdGlzZmllcyBLYnFWYWxpZGF0aW9uT3B0aW9uc1xuICogICAgICAgICAgIH1cbiAqICAgICAgXVxuICogfSlcbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFxuICAgICAgICBpbnB1dFtrYnFJbnB1dF0sXG4gICAgICAgIGlucHV0W2ticU51bWJlcklucHV0XSxcbiAgICAgICAgaW5wdXRba2JxSW5wdXRQYXNzd29yZF0sXG4gICAgICAgIGlucHV0W2ticVRpbWVwaWNrZXJdLFxuICAgICAgICBpbnB1dFtrYnFEYXRlcGlja2VyXSxcbiAgICAgICAgdGV4dGFyZWFba2JxVGV4dGFyZWFdLFxuICAgICAgICBrYnEtc2VsZWN0LFxuICAgICAgICBrYnEtdHJlZS1zZWxlY3QsXG4gICAgICAgIGticS10YWctbGlzdFxuICAgIGAsXG4gICAgZXhwb3J0QXM6ICdLYnFWYWxpZGF0ZScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1jb250cm9sX2hhcy12YWxpZGF0ZS1kaXJlY3RpdmUnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFWYWxpZGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIGdldCBpc05nTW9kZWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbCBpbnN0YW5jZW9mIE5nTW9kZWw7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9ybUNvbnRyb2xOYW1lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uZ0NvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbE5hbWU7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9ybUNvbnRyb2woKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sRGlyZWN0aXZlO1xuICAgIH1cblxuICAgIGdldCB2YWxpZGF0aW9uQ29udHJvbCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2wgfHwgdGhpcy5uZ0NvbnRyb2w7XG4gICAgfVxuXG4gICAgZ2V0IHBhcmVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Rm9ybSB8fCB0aGlzLnBhcmVudEZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBnZXQgaGFzTm90U3VibWl0dGVkUGFyZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnQgJiYgIXRoaXMucGFyZW50LnN1Ym1pdHRlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IEticUZvcm1GaWVsZENvbnRyb2wpKSBwcml2YXRlIGZvcm1GaWVsZENvbnRyb2w6IEticUZvcm1GaWVsZENvbnRyb2w8YW55PixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBASW5qZWN0KE5HX1ZBTElEQVRPUlMpIHB1YmxpYyByYXdWYWxpZGF0b3JzOiBWYWxpZGF0b3JbXSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHBhcmVudEZvcm06IE5nRm9ybSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBwYXJlbnRGb3JtR3JvdXA6IEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfVkFMSURBVElPTikgcHJpdmF0ZSBtY1ZhbGlkYXRpb246IEticVZhbGlkYXRpb25PcHRpb25zLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBPcHRpb25hbCgpIEBIb3N0KCkgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRGb3JtRmllbGQ6IEticUZvcm1GaWVsZCB8IG51bGxcbiAgICApIHtcbiAgICAgICAgdGhpcy5wYXJlbnRGb3JtRmllbGQ/LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdrYnEtZm9ybS1maWVsZF9oYXMtdmFsaWRhdGUtZGlyZWN0aXZlJyk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICBpZiAodGhpcy5tY1ZhbGlkYXRpb24udXNlVmFsaWRhdGlvbikge1xuICAgICAgICAgICAgdGhpcy5zZXRNb3NhaWNWYWxpZGF0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRWYWxpZFN0YXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbik6IHZvaWQge1xuICAgICAgICBpZiAoIWNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKCk7XG4gICAgICAgIGNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3IpO1xuICAgIH1cblxuICAgIC8qKiBUaGlzIGZ1bmN0aW9uIGRvIG5leHQ6XG4gICAgICogLSBydW4gdmFsaWRhdGlvbiBvbiBzdWJtaXR0aW5nIHBhcmVudCBmb3JtXG4gICAgICogLSBwcmV2ZW50IHZhbGlkYXRpb24gaW4gcmVxdWlyZWQgdmFsaWRhdG9yIGlmIGZvcm0gZG9lc24ndCBzdWJtaXR0ZWRcbiAgICAgKiAtIGlmIGNvbnRyb2wgaGFzIGZvY3VzIHZhbGlkYXRpb24gd2lsbCBiZSBwcmV2ZW50ZWRcbiAgICAgKi9cbiAgICBzZXRNb3NhaWNWYWxpZGF0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMudmFsaWRhdGlvbkNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnBhcmVudD8ub25TdWJtaXQpIHtcbiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsU3VibWl0ID0gdGhpcy5wYXJlbnQub25TdWJtaXQ7XG4gICAgICAgICAgICB0aGlzLnBhcmVudC5vblN1Ym1pdCA9ICgkZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uQ29udHJvbCEudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxTdWJtaXQuY2FsbCh0aGlzLnBhcmVudCwgJGV2ZW50KTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc05nTW9kZWwpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0TW9zYWljVmFsaWRhdGlvbkZvck1vZGVsQ29udHJvbCgpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNGb3JtQ29udHJvbCB8fCB0aGlzLmlzRm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICB0aGlzLnNldE1vc2FpY1ZhbGlkYXRpb25Gb3JGb3JtQ29udHJvbCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0TW9zYWljVmFsaWRhdGlvbkZvck1vZGVsQ29udHJvbCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnJhd1ZhbGlkYXRvcnMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucmF3VmFsaWRhdG9ycy5mb3JFYWNoKCh2YWxpZGF0b3I6IFZhbGlkYXRvcikgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3JpZ2luYWxWYWxpZGF0ZSA9IHZhbGlkYXRvci52YWxpZGF0ZTtcblxuICAgICAgICAgICAgaWYgKHZhbGlkYXRvciBpbnN0YW5jZW9mIFJlcXVpcmVkVmFsaWRhdG9yKSB7XG4gICAgICAgICAgICAgICAgLy8gY2hhbmdlZCByZXF1aXJlZCB2YWxpZGF0aW9uIGxvZ2ljXG4gICAgICAgICAgICAgICAgdmFsaWRhdG9yLnZhbGlkYXRlID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaGFzTm90U3VibWl0dGVkUGFyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFZhbGlkYXRlLmNhbGwodmFsaWRhdG9yLCBjb250cm9sKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAvLyBjaGFuZ2VkIGFsbCBvdGhlciB2YWxpZGF0aW9uIGxvZ2ljXG4gICAgICAgICAgICAgICAgdmFsaWRhdG9yLnZhbGlkYXRlID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZm9ybUZpZWxkQ29udHJvbC5mb2N1c2VkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFZhbGlkYXRlLmNhbGwodmFsaWRhdG9yLCBjb250cm9sKTtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRNb3NhaWNWYWxpZGF0aW9uRm9yRm9ybUNvbnRyb2woKSB7XG4gICAgICAgIC8vIGNoYW5nZWQgcmVxdWlyZWQgdmFsaWRhdGlvbiBsb2dpYyBhZnRlciBpbml0aWFsaXphdGlvblxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uQ29udHJvbC5pbnZhbGlkICYmIHRoaXMudmFsaWRhdGlvbkNvbnRyb2wuZXJyb3JzIS5yZXF1aXJlZCkge1xuICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRWYWxpZFN0YXRlKHRoaXMudmFsaWRhdGlvbkNvbnRyb2wsIHRoaXMudmFsaWRhdGlvbkNvbnRyb2wudmFsaWRhdG9yKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gY2hlY2sgZHluYW1pYyB1cGRhdGVzXG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkNvbnRyb2wuc3RhdHVzQ2hhbmdlcyEuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8vIGNoYW5nZWQgcmVxdWlyZWQgdmFsaWRhdGlvbiBsb2dpY1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvbkNvbnRyb2wuaW52YWxpZCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuaGFzTm90U3VibWl0dGVkUGFyZW50ICYmXG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uQ29udHJvbC5lcnJvcnMhLnJlcXVpcmVkXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbGlkU3RhdGUodGhpcy52YWxpZGF0aW9uQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uQ29udHJvbC52YWxpZGF0b3IpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBjaGFuZ2VkIGFsbCBvdGhlciB2YWxpZGF0aW9uIGxvZ2ljXG4gICAgICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9uQ29udHJvbC5pbnZhbGlkICYmIHRoaXMuZm9ybUZpZWxkQ29udHJvbC5mb2N1c2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRWYWxpZFN0YXRlKHRoaXMudmFsaWRhdGlvbkNvbnRyb2wsIHRoaXMudmFsaWRhdGlvbkNvbnRyb2wudmFsaWRhdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL3ZhbGlkYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLE1BQU0sRUFDTixRQUFRLEVBQ1IsSUFBSSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFFSCxvQkFBb0IsRUFDcEIsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixhQUFhLEVBQ2IsU0FBUyxFQUNULE1BQU0sRUFDTixPQUFPLEVBQ1AsaUJBQWlCLEVBSXBCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGNBQWMsRUFBd0IsTUFBTSx5QkFBeUIsQ0FBQztBQUUvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFFM0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFrQkgsTUFBTSxPQUFPLG9CQUFvQjtJQUM3QixJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksT0FBTyxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksZUFBZSxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxTQUFTLFlBQVksb0JBQW9CLENBQUM7SUFDMUQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDbkQsQ0FB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QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7WUFFRCxxQ0FBcUM7WUFDckMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7aUlBeElRLG9CQUFvQixrQkEwQmpCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxhQUNqQixhQUFhLHNMQUlyQixjQUFjO3FIQS9CN0Isb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQWpCaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7S0FVVDtvQkFDRCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxvQ0FBb0M7cUJBQzlDO2lCQUNKOzswQkEyQlEsTUFBTTsyQkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7OzBCQUM1QyxRQUFROzswQkFBSSxJQUFJOzswQkFBSSxNQUFNOzJCQUFDLGFBQWE7OzBCQUN4QyxRQUFROzswQkFBSSxJQUFJOzswQkFDaEIsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxjQUFjOzswQkFFakMsUUFBUTs7MEJBQUksSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0LFxuICAgIEluamVjdCxcbiAgICBPcHRpb25hbCxcbiAgICBTZWxmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBBYnN0cmFjdENvbnRyb2wsXG4gICAgRm9ybUNvbnRyb2xEaXJlY3RpdmUsXG4gICAgRm9ybUNvbnRyb2xOYW1lLFxuICAgIEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgICBOR19WQUxJREFUT1JTLFxuICAgIE5nQ29udHJvbCxcbiAgICBOZ0Zvcm0sXG4gICAgTmdNb2RlbCxcbiAgICBSZXF1aXJlZFZhbGlkYXRvcixcbiAgICBWYWxpZGF0aW9uRXJyb3JzLFxuICAgIFZhbGlkYXRvcixcbiAgICBWYWxpZGF0b3JGblxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBLQlFfVkFMSURBVElPTiwgS2JxVmFsaWRhdGlvbk9wdGlvbnMgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFGb3JtRmllbGQgfSBmcm9tICcuL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgS2JxRm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJy4vZm9ybS1maWVsZC1jb250cm9sJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciByZWxlYXNlICgjRFMtMjgzOClcbiAqXG4gKiBMZWdhY3kgbW9zYWljIHZhbGlkYXRpb25cbiAqXG4gKiAjIyMgSG93IHRvIGRpc2FibGU/XG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgS0JRX1ZBTElEQVRJT04sIEticVZhbGlkYXRpb25PcHRpb25zIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuICpcbiAqIEBOZ01vZHVsZSh7XG4gKiAgICAgIHByb3ZpZGVyczogW1xuICogICAgICAgICAgIHtcbiAqICAgICAgICAgICAgICBwcm92aWRlOiBLQlFfVkFMSURBVElPTixcbiAqICAgICAgICAgICAgICB1c2VWYWx1ZTogeyB1c2VWYWxpZGF0aW9uOiBmYWxzZSB9IHNhdGlzZmllcyBLYnFWYWxpZGF0aW9uT3B0aW9uc1xuICogICAgICAgICAgIH1cbiAqICAgICAgXVxuICogfSlcbiAqIGBgYFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYFxuICAgICAgICBpbnB1dFtrYnFJbnB1dF0sXG4gICAgICAgIGlucHV0W2ticU51bWJlcklucHV0XSxcbiAgICAgICAgaW5wdXRba2JxSW5wdXRQYXNzd29yZF0sXG4gICAgICAgIGlucHV0W2ticVRpbWVwaWNrZXJdLFxuICAgICAgICBpbnB1dFtrYnFEYXRlcGlja2VyXSxcbiAgICAgICAgdGV4dGFyZWFba2JxVGV4dGFyZWFdLFxuICAgICAgICBrYnEtc2VsZWN0LFxuICAgICAgICBrYnEtdHJlZS1zZWxlY3QsXG4gICAgICAgIGticS10YWctbGlzdFxuICAgIGAsXG4gICAgZXhwb3J0QXM6ICdLYnFWYWxpZGF0ZScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1jb250cm9sX2hhcy12YWxpZGF0ZS1kaXJlY3RpdmUnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFWYWxpZGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIGdldCBpc05nTW9kZWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbCBpbnN0YW5jZW9mIE5nTW9kZWw7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9ybUNvbnRyb2xOYW1lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5uZ0NvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQ29udHJvbE5hbWU7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9ybUNvbnRyb2woKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5nQ29udHJvbCBpbnN0YW5jZW9mIEZvcm1Db250cm9sRGlyZWN0aXZlO1xuICAgIH1cblxuICAgIGdldCB2YWxpZGF0aW9uQ29udHJvbCgpOiBhbnkge1xuICAgICAgICByZXR1cm4gdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2wgfHwgdGhpcy5uZ0NvbnRyb2w7XG4gICAgfVxuXG4gICAgZ2V0IHBhcmVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Rm9ybSB8fCB0aGlzLnBhcmVudEZvcm1Hcm91cDtcbiAgICB9XG5cbiAgICBnZXQgaGFzTm90U3VibWl0dGVkUGFyZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnQgJiYgIXRoaXMucGFyZW50LnN1Ym1pdHRlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IEticUZvcm1GaWVsZENvbnRyb2wpKSBwcml2YXRlIGZvcm1GaWVsZENvbnRyb2w6IEticUZvcm1GaWVsZENvbnRyb2w8YW55PixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBASW5qZWN0KE5HX1ZBTElEQVRPUlMpIHB1YmxpYyByYXdWYWxpZGF0b3JzOiBWYWxpZGF0b3JbXSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHBhcmVudEZvcm06IE5nRm9ybSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBwYXJlbnRGb3JtR3JvdXA6IEZvcm1Hcm91cERpcmVjdGl2ZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChLQlFfVkFMSURBVElPTikgcHJpdmF0ZSBtY1ZhbGlkYXRpb246IEticVZhbGlkYXRpb25PcHRpb25zLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBPcHRpb25hbCgpIEBIb3N0KCkgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRGb3JtRmllbGQ6IEticUZvcm1GaWVsZCB8IG51bGxcbiAgICApIHtcbiAgICAgICAgdGhpcy5wYXJlbnRGb3JtRmllbGQ/LmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdrYnEtZm9ybS1maWVsZF9oYXMtdmFsaWRhdGUtZGlyZWN0aXZlJyk7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICBpZiAodGhpcy5tY1ZhbGlkYXRpb24udXNlVmFsaWRhdGlvbikge1xuICAgICAgICAgICAgdGhpcy5zZXRNb3NhaWNWYWxpZGF0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRWYWxpZFN0YXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbik6IHZvaWQge1xuICAgICAgICBpZiAoIWNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKCk7XG4gICAgICAgIGNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3IpO1xuICAgIH1cblxuICAgIC8qKiBUaGlzIGZ1bmN0aW9uIGRvIG5leHQ6XG4gICAgICogLSBydW4gdmFsaWRhdGlvbiBvbiBzdWJtaXR0aW5nIHBhcmVudCBmb3JtXG4gICAgICogLSBwcmV2ZW50IHZhbGlkYXRpb24gaW4gcmVxdWlyZWQgdmFsaWRhdG9yIGlmIGZvcm0gZG9lc24ndCBzdWJtaXR0ZWRcbiAgICAgKiAtIGlmIGNvbnRyb2wgaGFzIGZvY3VzIHZhbGlkYXRpb24gd2lsbCBiZSBwcmV2ZW50ZWRcbiAgICAgKi9cbiAgICBzZXRNb3NhaWNWYWxpZGF0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMudmFsaWRhdGlvbkNvbnRyb2wpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnBhcmVudD8ub25TdWJtaXQpIHtcbiAgICAgICAgICAgIGNvbnN0IG9yaWdpbmFsU3VibWl0ID0gdGhpcy5wYXJlbnQub25TdWJtaXQ7XG5cbiAgICAgICAgICAgIHRoaXMucGFyZW50Lm9uU3VibWl0ID0gKCRldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25Db250cm9sIS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFN1Ym1pdC5jYWxsKHRoaXMucGFyZW50LCAkZXZlbnQpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmlzTmdNb2RlbCkge1xuICAgICAgICAgICAgdGhpcy5zZXRNb3NhaWNWYWxpZGF0aW9uRm9yTW9kZWxDb250cm9sKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvcm1Db250cm9sIHx8IHRoaXMuaXNGb3JtQ29udHJvbE5hbWUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0TW9zYWljVmFsaWRhdGlvbkZvckZvcm1Db250cm9sKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRNb3NhaWNWYWxpZGF0aW9uRm9yTW9kZWxDb250cm9sKCkge1xuICAgICAgICBpZiAoIXRoaXMucmF3VmFsaWRhdG9ycykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yYXdWYWxpZGF0b3JzLmZvckVhY2goKHZhbGlkYXRvcjogVmFsaWRhdG9yKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBvcmlnaW5hbFZhbGlkYXRlID0gdmFsaWRhdG9yLnZhbGlkYXRlO1xuXG4gICAgICAgICAgICBpZiAodmFsaWRhdG9yIGluc3RhbmNlb2YgUmVxdWlyZWRWYWxpZGF0b3IpIHtcbiAgICAgICAgICAgICAgICAvLyBjaGFuZ2VkIHJlcXVpcmVkIHZhbGlkYXRpb24gbG9naWNcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3IudmFsaWRhdGUgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5oYXNOb3RTdWJtaXR0ZWRQYXJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsVmFsaWRhdGUuY2FsbCh2YWxpZGF0b3IsIGNvbnRyb2wpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIGNoYW5nZWQgYWxsIG90aGVyIHZhbGlkYXRpb24gbG9naWNcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3IudmFsaWRhdGUgPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5mb3JtRmllbGRDb250cm9sLmZvY3VzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsVmFsaWRhdGUuY2FsbCh2YWxpZGF0b3IsIGNvbnRyb2wpO1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldE1vc2FpY1ZhbGlkYXRpb25Gb3JGb3JtQ29udHJvbCgpIHtcbiAgICAgICAgLy8gY2hhbmdlZCByZXF1aXJlZCB2YWxpZGF0aW9uIGxvZ2ljIGFmdGVyIGluaXRpYWxpemF0aW9uXG4gICAgICAgIGlmICh0aGlzLnZhbGlkYXRpb25Db250cm9sLmludmFsaWQgJiYgdGhpcy52YWxpZGF0aW9uQ29udHJvbC5lcnJvcnMhLnJlcXVpcmVkKSB7XG4gICAgICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbGlkU3RhdGUodGhpcy52YWxpZGF0aW9uQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uQ29udHJvbC52YWxpZGF0b3IpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBjaGVjayBkeW5hbWljIHVwZGF0ZXNcbiAgICAgICAgdGhpcy52YWxpZGF0aW9uQ29udHJvbC5zdGF0dXNDaGFuZ2VzIS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgLy8gY2hhbmdlZCByZXF1aXJlZCB2YWxpZGF0aW9uIGxvZ2ljXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy52YWxpZGF0aW9uQ29udHJvbC5pbnZhbGlkICYmXG4gICAgICAgICAgICAgICAgdGhpcy5oYXNOb3RTdWJtaXR0ZWRQYXJlbnQgJiZcbiAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25Db250cm9sLmVycm9ycyEucmVxdWlyZWRcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsaWRTdGF0ZSh0aGlzLnZhbGlkYXRpb25Db250cm9sLCB0aGlzLnZhbGlkYXRpb25Db250cm9sLnZhbGlkYXRvcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIGNoYW5nZWQgYWxsIG90aGVyIHZhbGlkYXRpb24gbG9naWNcbiAgICAgICAgICAgIGlmICh0aGlzLnZhbGlkYXRpb25Db250cm9sLmludmFsaWQgJiYgdGhpcy5mb3JtRmllbGRDb250cm9sLmZvY3VzZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFZhbGlkU3RhdGUodGhpcy52YWxpZGF0aW9uQ29udHJvbCwgdGhpcy52YWxpZGF0aW9uQ29udHJvbC52YWxpZGF0b3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=