@koobiq/components 18.21.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 (311) 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/badge/badge.component.d.ts +0 -1
  5. package/breadcrumbs/breadcrumbs.d.ts +19 -22
  6. package/breadcrumbs/breadcrumbs.scss +13 -4
  7. package/breadcrumbs/breadcrumbs.types.d.ts +22 -0
  8. package/breadcrumbs/public-api.d.ts +1 -0
  9. package/button/button.component.d.ts +11 -16
  10. package/checkbox/checkbox.d.ts +18 -23
  11. package/core/animation/animation.d.ts +5 -2
  12. package/core/common-behaviors/checkbox.d.ts +5 -0
  13. package/core/common-behaviors/color.d.ts +11 -0
  14. package/core/common-behaviors/index.d.ts +2 -1
  15. package/core/option/action.d.ts +5 -7
  16. package/core/option/optgroup.d.ts +6 -7
  17. package/core/pop-up/pop-up-trigger.d.ts +11 -3
  18. package/core/pop-up/pop-up.d.ts +8 -2
  19. package/core/selection/pseudo-checkbox/pseudo-checkbox.d.ts +3 -12
  20. package/core/utils/utils.d.ts +5 -0
  21. package/dropdown/dropdown-item.component.d.ts +6 -8
  22. package/empty-state/_empty-state-theme.scss +15 -5
  23. package/empty-state/empty-state-tokens.scss +12 -2
  24. package/empty-state/empty-state.component.d.ts +7 -2
  25. package/empty-state/empty-state.scss +29 -0
  26. package/esm2022/accordion/accordion-trigger.component.mjs +1 -1
  27. package/esm2022/actions-panel/actions-panel-container.mjs +2 -2
  28. package/esm2022/actions-panel/actions-panel.mjs +1 -1
  29. package/esm2022/alert/alert.component.mjs +11 -5
  30. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +1 -1
  31. package/esm2022/badge/badge.component.mjs +2 -5
  32. package/esm2022/breadcrumbs/breadcrumbs.mjs +55 -22
  33. package/esm2022/breadcrumbs/breadcrumbs.types.mjs +2 -0
  34. package/esm2022/breadcrumbs/public-api.mjs +2 -1
  35. package/esm2022/button/button.component.mjs +23 -27
  36. package/esm2022/button-toggle/button-toggle.component.mjs +4 -3
  37. package/esm2022/checkbox/checkbox.mjs +27 -28
  38. package/esm2022/code-block/code-block-highlight.mjs +1 -1
  39. package/esm2022/code-block/code-block.mjs +2 -2
  40. package/esm2022/core/animation/animation.mjs +4 -1
  41. package/esm2022/core/common-behaviors/checkbox.mjs +2 -0
  42. package/esm2022/core/common-behaviors/color.mjs +35 -1
  43. package/esm2022/core/common-behaviors/disabled.mjs +2 -1
  44. package/esm2022/core/common-behaviors/error-state.mjs +2 -1
  45. package/esm2022/core/common-behaviors/index.mjs +3 -2
  46. package/esm2022/core/common-behaviors/tabindex.mjs +2 -1
  47. package/esm2022/core/formatters/number/formatter.mjs +1 -1
  48. package/esm2022/core/forms/validators.mjs +1 -1
  49. package/esm2022/core/line/line.mjs +1 -1
  50. package/esm2022/core/option/action.mjs +17 -12
  51. package/esm2022/core/option/optgroup.mjs +18 -12
  52. package/esm2022/core/option/option.mjs +1 -1
  53. package/esm2022/core/overlay/overlay-position-map.mjs +1 -1
  54. package/esm2022/core/pop-up/pop-up-trigger.mjs +27 -12
  55. package/esm2022/core/pop-up/pop-up.mjs +18 -5
  56. package/esm2022/core/select/common.mjs +1 -1
  57. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +10 -19
  58. package/esm2022/core/services/measure-scrollbar.service.mjs +1 -1
  59. package/esm2022/core/utils/utils.mjs +11 -1
  60. package/esm2022/core/version.mjs +2 -2
  61. package/esm2022/datepicker/calendar-header.component.mjs +2 -2
  62. package/esm2022/datepicker/datepicker-input.directive.mjs +1 -1
  63. package/esm2022/datepicker/datepicker-toggle.component.mjs +1 -1
  64. package/esm2022/datepicker/datepicker.component.mjs +1 -1
  65. package/esm2022/datepicker/month-view.component.mjs +1 -1
  66. package/esm2022/dropdown/dropdown-item.component.mjs +19 -14
  67. package/esm2022/dropdown/dropdown-trigger.directive.mjs +1 -1
  68. package/esm2022/dropdown/dropdown.component.mjs +1 -1
  69. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +1 -1
  70. package/esm2022/empty-state/empty-state.component.mjs +13 -8
  71. package/esm2022/file-upload/file-drop.mjs +1 -1
  72. package/esm2022/file-upload/file-upload.mjs +1 -1
  73. package/esm2022/file-upload/multiple-file-upload.component.mjs +2 -2
  74. package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
  75. package/esm2022/filter-bar/filter-bar-button.mjs +2 -1
  76. package/esm2022/filter-bar/filter-bar.mjs +14 -1
  77. package/esm2022/filter-bar/filter-bar.module.mjs +5 -3
  78. package/esm2022/filter-bar/filter-bar.types.mjs +27 -2
  79. package/esm2022/filter-bar/filter-refresher.mjs +2 -2
  80. package/esm2022/filter-bar/filter-reset.mjs +16 -6
  81. package/esm2022/filter-bar/filter-search.mjs +19 -6
  82. package/esm2022/filter-bar/filters.mjs +22 -6
  83. package/esm2022/filter-bar/pipe-add.mjs +11 -2
  84. package/esm2022/filter-bar/pipe.directive.mjs +7 -25
  85. package/esm2022/filter-bar/pipes/base-pipe.mjs +23 -3
  86. package/esm2022/filter-bar/pipes/pipe-button.mjs +12 -6
  87. package/esm2022/filter-bar/pipes/pipe-date.mjs +26 -8
  88. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +27 -8
  89. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +7 -2
  90. package/esm2022/filter-bar/pipes/pipe-select.mjs +7 -2
  91. package/esm2022/filter-bar/pipes/pipe-state.mjs +2 -1
  92. package/esm2022/filter-bar/pipes/pipe-text.mjs +7 -3
  93. package/esm2022/filter-bar/pipes/pipe-title.mjs +2 -1
  94. package/esm2022/form-field/cleaner.mjs +1 -1
  95. package/esm2022/form-field/form-field.mjs +13 -22
  96. package/esm2022/form-field/hint.mjs +10 -18
  97. package/esm2022/form-field/password-hint.mjs +7 -7
  98. package/esm2022/form-field/password-toggle.mjs +1 -1
  99. package/esm2022/form-field/stepper.mjs +1 -1
  100. package/esm2022/form-field/validate.directive.mjs +1 -1
  101. package/esm2022/icon/icon-button.component.mjs +13 -21
  102. package/esm2022/icon/icon-item.component.mjs +8 -15
  103. package/esm2022/icon/icon.component.mjs +15 -27
  104. package/esm2022/input/input-number.mjs +1 -1
  105. package/esm2022/input/input-password.mjs +20 -5
  106. package/esm2022/input/input.mjs +21 -22
  107. package/esm2022/link/link.component.mjs +46 -14
  108. package/esm2022/list/list-selection.component.mjs +19 -15
  109. package/esm2022/loader-overlay/loader-overlay.component.mjs +14 -9
  110. package/esm2022/markdown/markdown.component.mjs +2 -2
  111. package/esm2022/modal/modal.component.mjs +2 -2
  112. package/esm2022/modal/modal.directive.mjs +1 -1
  113. package/esm2022/modal/modal.service.mjs +1 -1
  114. package/esm2022/navbar/navbar-item.component.mjs +2 -2
  115. package/esm2022/navbar/navbar.component.mjs +9 -12
  116. package/esm2022/navbar/vertical-navbar.component.mjs +9 -13
  117. package/esm2022/overflow-items/overflow-items.mjs +1 -1
  118. package/esm2022/popover/popover-confirm.component.mjs +2 -2
  119. package/esm2022/popover/popover.component.mjs +5 -4
  120. package/esm2022/progress-bar/progress-bar.component.mjs +14 -21
  121. package/esm2022/progress-spinner/progress-spinner.component.mjs +17 -24
  122. package/esm2022/radio/radio.component.mjs +26 -36
  123. package/esm2022/scrollbar/scrollbar.component.mjs +1 -1
  124. package/esm2022/scrollbar/scrollbar.directive.mjs +1 -1
  125. package/esm2022/select/select.component.mjs +56 -37
  126. package/esm2022/sidepanel/sidepanel-directives.mjs +2 -2
  127. package/esm2022/sidepanel/sidepanel.service.mjs +1 -1
  128. package/esm2022/splitter/splitter.component.mjs +1 -1
  129. package/esm2022/tabs/paginated-tab-header.mjs +7 -4
  130. package/esm2022/tabs/tab-body.component.mjs +1 -1
  131. package/esm2022/tabs/tab-group.component.mjs +23 -19
  132. package/esm2022/tabs/tab-header.component.mjs +3 -3
  133. package/esm2022/tabs/tab-label-wrapper.directive.mjs +16 -13
  134. package/esm2022/tabs/tab-nav-bar.mjs +2 -2
  135. package/esm2022/tabs/tab.component.mjs +17 -12
  136. package/esm2022/tags/tag-input.mjs +1 -1
  137. package/esm2022/tags/tag-list.component.mjs +27 -22
  138. package/esm2022/tags/tag.component.mjs +7 -14
  139. package/esm2022/textarea/textarea.component.mjs +21 -22
  140. package/esm2022/timepicker/timepicker.directive.mjs +1 -1
  141. package/esm2022/timezone/timezone-select.component.mjs +3 -3
  142. package/esm2022/toast/toast.component.mjs +2 -2
  143. package/esm2022/toggle/toggle.component.mjs +111 -31
  144. package/esm2022/tree/control/base-tree-control.mjs +1 -1
  145. package/esm2022/tree/control/flat-tree-control.filters.mjs +1 -1
  146. package/esm2022/tree/control/nested-tree-control.mjs +1 -1
  147. package/esm2022/tree/data-source/flat-data-source.mjs +1 -1
  148. package/esm2022/tree/padding.directive.mjs +1 -1
  149. package/esm2022/tree/toggle.mjs +19 -14
  150. package/esm2022/tree/tree-base.mjs +1 -1
  151. package/esm2022/tree/tree-option.component.mjs +1 -1
  152. package/esm2022/tree/tree-selection.component.mjs +1 -1
  153. package/esm2022/tree-select/tree-select.component.mjs +58 -38
  154. package/fesm2022/koobiq-components-accordion.mjs +1 -1
  155. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  156. package/fesm2022/koobiq-components-actions-panel.mjs +1 -1
  157. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  158. package/fesm2022/koobiq-components-alert.mjs +10 -4
  159. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  160. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  161. package/fesm2022/koobiq-components-badge.mjs +2 -5
  162. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  163. package/fesm2022/koobiq-components-breadcrumbs.mjs +54 -21
  164. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  165. package/fesm2022/koobiq-components-button-toggle.mjs +3 -3
  166. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  167. package/fesm2022/koobiq-components-button.mjs +23 -27
  168. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  169. package/fesm2022/koobiq-components-checkbox.mjs +27 -28
  170. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  171. package/fesm2022/koobiq-components-code-block.mjs +1 -1
  172. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  173. package/fesm2022/koobiq-components-core.mjs +130 -51
  174. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  175. package/fesm2022/koobiq-components-datepicker.mjs +2 -2
  176. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  177. package/fesm2022/koobiq-components-dropdown.mjs +18 -13
  178. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  179. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  180. package/fesm2022/koobiq-components-empty-state.mjs +12 -7
  181. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  182. package/fesm2022/koobiq-components-file-upload.mjs +2 -2
  183. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  184. package/fesm2022/koobiq-components-filter-bar.mjs +1381 -1233
  185. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  186. package/fesm2022/koobiq-components-form-field.mjs +26 -43
  187. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  188. package/fesm2022/koobiq-components-icon.mjs +33 -57
  189. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  190. package/fesm2022/koobiq-components-input.mjs +40 -25
  191. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  192. package/fesm2022/koobiq-components-link.mjs +46 -14
  193. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  194. package/fesm2022/koobiq-components-list.mjs +19 -15
  195. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  196. package/fesm2022/koobiq-components-loader-overlay.mjs +13 -8
  197. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  198. package/fesm2022/koobiq-components-markdown.mjs +2 -2
  199. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  200. package/fesm2022/koobiq-components-modal.mjs +2 -2
  201. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  202. package/fesm2022/koobiq-components-navbar.mjs +17 -24
  203. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  204. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  205. package/fesm2022/koobiq-components-popover.mjs +5 -4
  206. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  207. package/fesm2022/koobiq-components-progress-bar.mjs +13 -20
  208. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  209. package/fesm2022/koobiq-components-progress-spinner.mjs +16 -23
  210. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  211. package/fesm2022/koobiq-components-radio.mjs +26 -36
  212. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  213. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  214. package/fesm2022/koobiq-components-select.mjs +56 -37
  215. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  216. package/fesm2022/koobiq-components-sidepanel.mjs +1 -1
  217. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  218. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  219. package/fesm2022/koobiq-components-tabs.mjs +60 -44
  220. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  221. package/fesm2022/koobiq-components-tags.mjs +32 -34
  222. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  223. package/fesm2022/koobiq-components-textarea.mjs +21 -22
  224. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  225. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  226. package/fesm2022/koobiq-components-timezone.mjs +2 -2
  227. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  228. package/fesm2022/koobiq-components-toast.mjs +1 -1
  229. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  230. package/fesm2022/koobiq-components-toggle.mjs +111 -31
  231. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  232. package/fesm2022/koobiq-components-tree-select.mjs +57 -37
  233. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  234. package/fesm2022/koobiq-components-tree.mjs +21 -15
  235. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  236. package/file-upload/multiple-file-upload.component.d.ts +2 -2
  237. package/file-upload/single-file-upload.component.d.ts +2 -2
  238. package/filter-bar/filter-bar-button.d.ts +1 -0
  239. package/filter-bar/filter-bar.d.ts +14 -0
  240. package/filter-bar/filter-bar.types.d.ts +13 -3
  241. package/filter-bar/filter-reset.d.ts +6 -2
  242. package/filter-bar/filter-search.d.ts +17 -10
  243. package/filter-bar/filters.d.ts +26 -11
  244. package/filter-bar/pipe-add.d.ts +10 -0
  245. package/filter-bar/pipe.directive.d.ts +5 -5
  246. package/filter-bar/pipes/base-pipe.d.ts +28 -2
  247. package/filter-bar/pipes/pipe-button.d.ts +6 -1
  248. package/filter-bar/pipes/pipe-date.d.ts +30 -10
  249. package/filter-bar/pipes/pipe-date.scss +29 -27
  250. package/filter-bar/pipes/pipe-datetime.d.ts +31 -10
  251. package/filter-bar/pipes/pipe-multi-select.d.ts +7 -0
  252. package/filter-bar/pipes/pipe-select.d.ts +7 -0
  253. package/filter-bar/pipes/pipe-state.d.ts +1 -0
  254. package/filter-bar/pipes/pipe-text.d.ts +5 -0
  255. package/form-field/form-field.d.ts +4 -12
  256. package/form-field/hint.d.ts +3 -12
  257. package/form-field/password-hint.d.ts +3 -3
  258. package/icon/icon-button.component.d.ts +5 -8
  259. package/icon/icon-item.component.d.ts +3 -7
  260. package/icon/icon.component.d.ts +7 -14
  261. package/input/input-password.d.ts +8 -2
  262. package/input/input.d.ts +9 -18
  263. package/link/_link-theme.scss +31 -8
  264. package/link/link.component.d.ts +13 -9
  265. package/list/list-selection.component.d.ts +8 -10
  266. package/loader-overlay/_loader-overlay-theme.scss +18 -8
  267. package/loader-overlay/loader-overlay-tokens.scss +6 -3
  268. package/loader-overlay/loader-overlay.component.d.ts +7 -2
  269. package/loader-overlay/loader-overlay.scss +19 -5
  270. package/markdown/markdown.scss +0 -4
  271. package/navbar/navbar.component.d.ts +2 -2
  272. package/navbar/vertical-navbar.component.d.ts +3 -3
  273. package/package.json +5 -5
  274. package/prebuilt-themes/dark-theme.css +1 -1
  275. package/prebuilt-themes/light-theme.css +1 -1
  276. package/prebuilt-themes/theme.css +1 -1
  277. package/progress-bar/progress-bar.component.d.ts +4 -12
  278. package/progress-spinner/progress-spinner.component.d.ts +4 -12
  279. package/radio/radio.component.d.ts +11 -25
  280. package/radio/radio.scss +0 -1
  281. package/schematics/collection.json +10 -0
  282. package/schematics/migrations/css-selectors/README.md +19 -0
  283. package/schematics/migrations/deprecated-icons/README.md +21 -0
  284. package/schematics/migrations/empty-state-size-attr/README.md +62 -0
  285. package/schematics/migrations/empty-state-size-attr/index.js +74 -0
  286. package/schematics/migrations/empty-state-size-attr/schema.json +15 -0
  287. package/schematics/migrations/loader-overlay-size-attr/README.md +62 -0
  288. package/schematics/migrations/loader-overlay-size-attr/index.js +74 -0
  289. package/schematics/migrations/loader-overlay-size-attr/schema.json +15 -0
  290. package/schematics/migrations/new-icons-pack/README.md +21 -0
  291. package/schematics/ng-add/index.js +3 -3
  292. package/schematics/utils/angular-parsing.js +153 -0
  293. package/schematics/utils/ast.js +28 -0
  294. package/schematics/utils/package-config.js +46 -0
  295. package/schematics/utils/typescript.js +171 -0
  296. package/select/select.component.d.ts +26 -25
  297. package/tabs/paginated-tab-header.d.ts +2 -1
  298. package/tabs/tab-group.component.d.ts +11 -13
  299. package/tabs/tab-header.component.d.ts +1 -1
  300. package/tabs/tab-label-wrapper.directive.d.ts +6 -8
  301. package/tabs/tab.component.d.ts +7 -8
  302. package/tags/tag-list.component.d.ts +15 -18
  303. package/tags/tag.component.d.ts +3 -10
  304. package/textarea/textarea.component.d.ts +8 -17
  305. package/toggle/_toggle-theme.scss +12 -3
  306. package/toggle/toggle-tokens.scss +2 -2
  307. package/toggle/toggle.component.d.ts +28 -14
  308. package/toggle/toggle.scss +37 -0
  309. package/tree/toggle.d.ts +7 -9
  310. package/tree/tree-selection.component.d.ts +2 -2
  311. package/tree-select/tree-select.component.d.ts +24 -26
@@ -15,7 +15,7 @@ export class KbqPopoverConfirmComponent extends KbqPopoverComponent {
15
15
  this.onConfirm = new Subject();
16
16
  }
17
17
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPopoverConfirmComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
18
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqPopoverConfirmComponent, selector: "kbq-popover-confirm-component", usesInheritance: true, ngImport: i0, template: "<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\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-popover{position:relative;border-radius:var(--kbq-popover-size-container-border-radius);box-sizing:border-box;list-style:none;white-space:pre-line;z-index:1}.kbq-popover.kbq-popover_small{max-width:var(--kbq-popover-size-container-width-small)}.kbq-popover.kbq-popover_medium{max-width:var(--kbq-popover-size-container-width-medium)}.kbq-popover.kbq-popover_large{max-width:var(--kbq-popover-size-container-width-large)}.kbq-popover.kbq-popover_placement-top,.kbq-popover.kbq-popover_placement-top-left,.kbq-popover.kbq-popover_placement-top-right{margin-bottom:8px}.kbq-popover.kbq-popover_placement-right,.kbq-popover.kbq-popover_placement-right-top,.kbq-popover.kbq-popover_placement-right-bottom{margin-left:8px}.kbq-popover.kbq-popover_placement-bottom,.kbq-popover.kbq-popover_placement-bottom-left,.kbq-popover.kbq-popover_placement-bottom-right{margin-top:8px}.kbq-popover.kbq-popover_placement-left,.kbq-popover.kbq-popover_placement-left-top,.kbq-popover.kbq-popover_placement-left-bottom{margin-right:8px}.kbq-popover__content{overflow-y:auto;padding:var(--kbq-popover-size-content-padding-top) var(--kbq-popover-size-content-padding-horizontal) var(--kbq-popover-size-content-padding-bottom)}.kbq-popover__container{overflow:hidden;display:flex;flex-direction:column;max-height:var(--kbq-popover-size-container-max-height);border-radius:var(--kbq-popover-size-container-border-radius)}.kbq-popover__container.kbq-popover__container_with-header .kbq-popover__content{padding-top:var(--kbq-size-s)}.kbq-popover__container.kbq-popover__container_with-footer .kbq-popover__content{padding-bottom:var(--kbq-size-s)}.kbq-popover__content .kbq-popover__close-container{display:flex;justify-content:flex-end;height:0}.kbq-popover__content .kbq-popover__close-container .kbq-popover__close{top:auto;right:auto;transform:translateY(-50%) translate(50%)}.kbq-popover__header{display:flex;align-items:center;overflow:hidden;padding:var(--kbq-popover-size-header-padding-top) var(--kbq-popover-size-header-padding-horizontal) var(--kbq-popover-size-header-padding-bottom) var(--kbq-popover-size-header-padding-horizontal)}.kbq-popover__header .kbq-popover__header-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-popover__header_top-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-bottom)}.kbq-popover__header_with-close-button{padding-right:var(--kbq-size-4xl)}.kbq-popover__footer{padding:var(--kbq-popover-size-footer-padding-vertical) var(--kbq-popover-size-footer-padding-horizontal)}.kbq-popover__footer_bottom-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-top)}.kbq-popover__arrow{position:absolute;z-index:-1;width:12px;height:12px;transform:rotate(45deg)}.kbq-popover_placement-top .kbq-popover__arrow{bottom:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-top-left .kbq-popover__arrow{bottom:-5.5px;left:9px}.kbq-popover_placement-top-right .kbq-popover__arrow{bottom:-5.5px;right:9px}.kbq-popover_placement-right .kbq-popover__arrow{left:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-right-top .kbq-popover__arrow{left:-5.5px;top:9px}.kbq-popover_placement-right-bottom .kbq-popover__arrow{left:-5.5px;bottom:9px}.kbq-popover_placement-left .kbq-popover__arrow{right:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-left-top .kbq-popover__arrow{right:-5.5px;top:9px}.kbq-popover_placement-left-bottom .kbq-popover__arrow{right:-5.5px;bottom:9px}.kbq-popover_placement-bottom .kbq-popover__arrow{top:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-bottom-left .kbq-popover__arrow{top:-5.5px;left:9px}.kbq-popover_placement-bottom-right .kbq-popover__arrow{top:-5.5px;right:9px}.kbq-popover__close{position:absolute;z-index:2;top:var(--kbq-size-s);right:var(--kbq-size-s);border-radius:var(--kbq-size-border-radius)}.kbq-popover{box-shadow:var(--kbq-popover-container-shadow)}.kbq-popover__container{background:var(--kbq-popover-container-background)}.kbq-popover__arrow{box-shadow:var(--kbq-popover-container-shadow);background:var(--kbq-popover-container-background)}.kbq-popover__close{background-color:var(--kbq-background-overlay-inverse)}.kbq-popover__header{color:var(--kbq-popover-header-text-color)}.kbq-popover__content{color:var(--kbq-popover-content-text-color)}.kbq-popover__header{font-size:var(--kbq-typography-subheading-font-size);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-popover__content{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-popover{--kbq-popover-size-container-width-small: 200px;--kbq-popover-size-container-width-medium: 400px;--kbq-popover-size-container-width-large: 640px;--kbq-popover-size-container-border-radius: var(--kbq-size-m);--kbq-popover-size-container-max-height: 480px;--kbq-popover-size-close-button-width: 32px;--kbq-popover-size-close-button-margin-right: -16px;--kbq-popover-size-close-button-margin-top: -10px;--kbq-popover-size-header-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-header-padding-top: var(--kbq-size-l);--kbq-popover-size-header-padding-bottom: var(--kbq-size-xs);--kbq-popover-size-content-padding-top: var(--kbq-size-xxl);--kbq-popover-size-content-padding-bottom: var(--kbq-size-3xl);--kbq-popover-size-content-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-content-padding-with-header-top: var(--kbq-size-s);--kbq-popover-size-content-padding-with-footer-bottom: var(--kbq-size-s);--kbq-popover-size-footer-padding-vertical: var(--kbq-size-l);--kbq-popover-size-footer-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-container-background: var(--kbq-background-card);--kbq-popover-container-shadow: var(--kbq-shadow-popup);--kbq-popover-header-text-color: var(--kbq-foreground-contrast);--kbq-popover-header-scroll-shadow: var(--kbq-shadow-overflow-normal-bottom);--kbq-popover-content-text-color: var(--kbq-foreground-contrast);--kbq-popover-footer-scroll-shadow: var(--kbq-shadow-overflow-normal-top)}\n"], dependencies: [{ kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["color", "tabIndex", "kbqStyle", "disabled"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [kbqPopoverAnimations.popoverState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
18
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqPopoverConfirmComponent, selector: "kbq-popover-confirm-component", usesInheritance: true, ngImport: i0, template: "<div\n cdkTrapFocus=\"true\"\n cdkTrapFocusAutoCapture=\"true\"\n class=\"kbq-popover-confirm kbq-popover\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div class=\"kbq-popover__container\">\n <div class=\"kbq-popover__content\">\n <div>{{ confirmText }}</div>\n <button kbq-button [color]=\"'contrast'\" (click)=\"onConfirm.next()\">\n {{ confirmButtonText }}\n </button>\n </div>\n </div>\n\n <div class=\"kbq-popover__arrow\"></div>\n</div>\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-popover{position:relative;border-radius:var(--kbq-popover-size-container-border-radius);box-sizing:border-box;list-style:none;white-space:pre-line;z-index:1}.kbq-popover.kbq-popover_small{max-width:var(--kbq-popover-size-container-width-small)}.kbq-popover.kbq-popover_medium{max-width:var(--kbq-popover-size-container-width-medium)}.kbq-popover.kbq-popover_large{max-width:var(--kbq-popover-size-container-width-large)}.kbq-popover.kbq-popover_placement-top,.kbq-popover.kbq-popover_placement-top-left,.kbq-popover.kbq-popover_placement-top-right{margin-bottom:8px}.kbq-popover.kbq-popover_placement-right,.kbq-popover.kbq-popover_placement-right-top,.kbq-popover.kbq-popover_placement-right-bottom{margin-left:8px}.kbq-popover.kbq-popover_placement-bottom,.kbq-popover.kbq-popover_placement-bottom-left,.kbq-popover.kbq-popover_placement-bottom-right{margin-top:8px}.kbq-popover.kbq-popover_placement-left,.kbq-popover.kbq-popover_placement-left-top,.kbq-popover.kbq-popover_placement-left-bottom{margin-right:8px}.kbq-popover__content{overflow-y:auto;padding:var(--kbq-popover-size-content-padding-top) var(--kbq-popover-size-content-padding-horizontal) var(--kbq-popover-size-content-padding-bottom)}.kbq-popover__container{overflow:hidden;display:flex;flex-direction:column;max-height:var(--kbq-popover-size-container-max-height);border-radius:var(--kbq-popover-size-container-border-radius)}.kbq-popover__container.kbq-popover__container_with-header .kbq-popover__content{padding-top:var(--kbq-size-s)}.kbq-popover__container.kbq-popover__container_with-footer .kbq-popover__content{padding-bottom:var(--kbq-size-s)}.kbq-popover__content .kbq-popover__close-container{display:flex;justify-content:flex-end;height:0}.kbq-popover__content .kbq-popover__close-container .kbq-popover__close{top:auto;right:auto;transform:translateY(-50%) translate(50%)}.kbq-popover__header{display:flex;align-items:center;overflow:hidden;padding:var(--kbq-popover-size-header-padding-top) var(--kbq-popover-size-header-padding-horizontal) var(--kbq-popover-size-header-padding-bottom) var(--kbq-popover-size-header-padding-horizontal)}.kbq-popover__header .kbq-popover__header-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-popover__header_top-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-bottom)}.kbq-popover__header_with-close-button{padding-right:var(--kbq-size-4xl)}.kbq-popover__footer{padding:var(--kbq-popover-size-footer-padding-vertical) var(--kbq-popover-size-footer-padding-horizontal)}.kbq-popover__footer_bottom-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-top)}.kbq-popover__arrow{position:absolute;z-index:-1;width:12px;height:12px;transform:rotate(45deg)}.kbq-popover_placement-top .kbq-popover__arrow{bottom:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-top-left .kbq-popover__arrow{bottom:-5.5px;left:9px}.kbq-popover_placement-top-right .kbq-popover__arrow{bottom:-5.5px;right:9px}.kbq-popover_placement-right .kbq-popover__arrow{left:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-right-top .kbq-popover__arrow{left:-5.5px;top:9px}.kbq-popover_placement-right-bottom .kbq-popover__arrow{left:-5.5px;bottom:9px}.kbq-popover_placement-left .kbq-popover__arrow{right:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-left-top .kbq-popover__arrow{right:-5.5px;top:9px}.kbq-popover_placement-left-bottom .kbq-popover__arrow{right:-5.5px;bottom:9px}.kbq-popover_placement-bottom .kbq-popover__arrow{top:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-bottom-left .kbq-popover__arrow{top:-5.5px;left:9px}.kbq-popover_placement-bottom-right .kbq-popover__arrow{top:-5.5px;right:9px}.kbq-popover__close{position:absolute;z-index:2;top:var(--kbq-size-s);right:var(--kbq-size-s);border-radius:var(--kbq-size-border-radius)}.kbq-popover{box-shadow:var(--kbq-popover-container-shadow)}.kbq-popover__container{background:var(--kbq-popover-container-background)}.kbq-popover__arrow{box-shadow:var(--kbq-popover-container-shadow);background:var(--kbq-popover-container-background)}.kbq-popover__close{background-color:var(--kbq-background-overlay-inverse)}.kbq-popover__header{color:var(--kbq-popover-header-text-color)}.kbq-popover__content{color:var(--kbq-popover-content-text-color)}.kbq-popover__header{font-size:var(--kbq-typography-subheading-font-size);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-popover__content{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-popover{--kbq-popover-size-container-width-small: 200px;--kbq-popover-size-container-width-medium: 400px;--kbq-popover-size-container-width-large: 640px;--kbq-popover-size-container-border-radius: var(--kbq-size-m);--kbq-popover-size-container-max-height: 480px;--kbq-popover-size-close-button-width: 32px;--kbq-popover-size-close-button-margin-right: -16px;--kbq-popover-size-close-button-margin-top: -10px;--kbq-popover-size-header-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-header-padding-top: var(--kbq-size-l);--kbq-popover-size-header-padding-bottom: var(--kbq-size-xs);--kbq-popover-size-content-padding-top: var(--kbq-size-xxl);--kbq-popover-size-content-padding-bottom: var(--kbq-size-3xl);--kbq-popover-size-content-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-content-padding-with-header-top: var(--kbq-size-s);--kbq-popover-size-content-padding-with-footer-bottom: var(--kbq-size-s);--kbq-popover-size-footer-padding-vertical: var(--kbq-size-l);--kbq-popover-size-footer-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-container-background: var(--kbq-background-card);--kbq-popover-container-shadow: var(--kbq-shadow-popup);--kbq-popover-header-text-color: var(--kbq-foreground-contrast);--kbq-popover-header-scroll-shadow: var(--kbq-shadow-overflow-normal-bottom);--kbq-popover-content-text-color: var(--kbq-foreground-contrast);--kbq-popover-footer-scroll-shadow: var(--kbq-shadow-overflow-normal-top)}\n"], dependencies: [{ kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [kbqPopoverAnimations.popoverState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
19
19
  }
20
20
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPopoverConfirmComponent, decorators: [{
21
21
  type: Component,
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
94
94
  type: Input,
95
95
  args: ['kbqPopoverConfirmButtonText']
96
96
  }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1jb25maXJtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLWNvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXItY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04saUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBRTdFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLElBQUksY0FBYyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0FBVzlFLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUFUbkU7O1FBVUksY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7S0FJbkM7aUlBTFksMEJBQTBCO3FIQUExQiwwQkFBMEIsNEZDN0J2Qyx1bkJBb0JBLGc0U0RPZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7OzJGQUV0QywwQkFBMEI7a0JBVHRDLFNBQVM7K0JBQ0ksK0JBQStCLHVCQUVwQixLQUFLLGlCQUVYLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7O0FBa0JuRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsaUJBQWlCO0lBRzNELElBQ0ksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxXQUFXLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUUxQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUlELElBQ0ksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLGlCQUFpQixDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUVoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUlELFlBQ2tELFdBQW1CLEVBQ1osaUJBQXlCO1FBRTlFLEtBQUssRUFBRSxDQUFDO1FBaENGLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQTBCekQsdUJBQWtCLEdBQVcsSUFBSSxDQUFDO1FBUXRDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxJQUFJLG9DQUFvQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsSUFBSSxJQUFJLENBQUM7SUFDdkQsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLE9BQU87UUFDWCxDQUFDO1FBQ0QsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDakQsQ0FBQztJQUVELGlCQUFpQjtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELDZCQUE2QjtRQUN6QixPQUFPLDBCQUEwQixDQUFDO0lBQ3RDLENBQUM7aUlBMURRLHdCQUF3QixrQkE4QlQsd0JBQXdCLDZCQUN4QiwrQkFBK0I7cUhBL0I5Qyx3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBVHBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsSUFBSSxFQUFFO3dCQUNGLDBCQUEwQixFQUFFLFFBQVE7d0JBQ3BDLFdBQVcsRUFBRSx1QkFBdUI7d0JBQ3BDLFlBQVksRUFBRSxrQkFBa0I7cUJBQ25DO2lCQUNKOzswQkErQlEsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUMzQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLCtCQUErQjt5Q0E5QjdDLE9BQU87c0JBQWhCLE1BQU07Z0JBR0gsV0FBVztzQkFEZCxLQUFLO3VCQUFDLHVCQUF1QjtnQkFjMUIsaUJBQWlCO3NCQURwQixLQUFLO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGticVBvcG92ZXJBbmltYXRpb25zIH0gZnJvbSAnLi9wb3BvdmVyLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgS2JxUG9wb3ZlckNvbXBvbmVudCwgS2JxUG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3BvcG92ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IEtCUV9QT1BPVkVSX0NPTkZJUk1fVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCcnKTtcbmV4cG9ydCBjb25zdCBLQlFfUE9QT1ZFUl9DT05GSVJNX0JVVFRPTl9URVhUID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wb3BvdmVyLWNvbmZpcm0tY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci1jb25maXJtLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdHlsZVVybHM6IFsnLi9wb3BvdmVyLnNjc3MnLCAnLi9wb3BvdmVyLXRva2Vucy5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBba2JxUG9wb3ZlckFuaW1hdGlvbnMucG9wb3ZlclN0YXRlXVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQb3BvdmVyQ29uZmlybUNvbXBvbmVudCBleHRlbmRzIEticVBvcG92ZXJDb21wb25lbnQge1xuICAgIG9uQ29uZmlybSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY29uZmlybUJ1dHRvblRleHQ6IHN0cmluZztcblxuICAgIGNvbmZpcm1UZXh0OiBzdHJpbmc7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVBvcG92ZXJDb25maXJtXScsXG4gICAgZXhwb3J0QXM6ICdrYnFQb3BvdmVyQ29uZmlybScsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmticS1wb3BvdmVyX29wZW5dJzogJ2lzT3BlbicsXG4gICAgICAgICcoa2V5ZG93biknOiAnaGFuZGxlS2V5ZG93bigkZXZlbnQpJyxcbiAgICAgICAgJyh0b3VjaGVuZCknOiAnaGFuZGxlVG91Y2hlbmQoKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVBvcG92ZXJDb25maXJtVHJpZ2dlciBleHRlbmRzIEticVBvcG92ZXJUcmlnZ2VyIHtcbiAgICBAT3V0cHV0KCkgY29uZmlybTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyQ29uZmlybVRleHQnKVxuICAgIGdldCBjb25maXJtVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlybVRleHQ7XG4gICAgfVxuXG4gICAgc2V0IGNvbmZpcm1UZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fY29uZmlybVRleHQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jb25maXJtVGV4dDogc3RyaW5nO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyQ29uZmlybUJ1dHRvblRleHQnKVxuICAgIGdldCBjb25maXJtQnV0dG9uVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlybUJ1dHRvblRleHQ7XG4gICAgfVxuXG4gICAgc2V0IGNvbmZpcm1CdXR0b25UZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fY29uZmlybUJ1dHRvblRleHQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jb25maXJtQnV0dG9uVGV4dDogc3RyaW5nID0gJ9CU0LAnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX1BPUE9WRVJfQ09ORklSTV9URVhUKSBjb25maXJtVGV4dDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9QT1BPVkVSX0NPTkZJUk1fQlVUVE9OX1RFWFQpIGNvbmZpcm1CdXR0b25UZXh0OiBzdHJpbmdcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICB0aGlzLmNvbmZpcm1UZXh0ID0gY29uZmlybVRleHQgfHwgJ9CS0Ysg0YPQstC10YDQtdC90YssINGH0YLQviDRhdC+0YLQuNGC0LUg0L/RgNC+0LTQvtC70LbQuNGC0Yw/JztcbiAgICAgICAgdGhpcy5jb25maXJtQnV0dG9uVGV4dCA9IGNvbmZpcm1CdXR0b25UZXh0IHx8ICfQlNCwJztcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRhKCkge1xuICAgICAgICBpZiAoIXRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci51cGRhdGVEYXRhKCk7XG4gICAgICAgIHRoaXMuc2V0dXBCdXR0b25FdmVudHMoKTtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5jb25maXJtQnV0dG9uVGV4dCA9IHRoaXMuY29uZmlybUJ1dHRvblRleHQ7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuY29uZmlybVRleHQgPSB0aGlzLmNvbmZpcm1UZXh0O1xuICAgIH1cblxuICAgIHNldHVwQnV0dG9uRXZlbnRzKCkge1xuICAgICAgICB0aGlzLmluc3RhbmNlLm9uQ29uZmlybS5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jb25maXJtLmVtaXQoKTtcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRPdmVybGF5SGFuZGxlQ29tcG9uZW50VHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIEticVBvcG92ZXJDb25maXJtQ29tcG9uZW50O1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjZGtUcmFwRm9jdXM9XCJ0cnVlXCJcbiAgICBjZGtUcmFwRm9jdXNBdXRvQ2FwdHVyZT1cInRydWVcIlxuICAgIGNsYXNzPVwia2JxLXBvcG92ZXItY29uZmlybSBrYnEtcG9wb3ZlclwiXG4gICAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxuICAgIChAc3RhdGUuZG9uZSk9XCJhbmltYXRpb25Eb25lKCRldmVudClcIlxuICAgIChAc3RhdGUuc3RhcnQpPVwiYW5pbWF0aW9uU3RhcnQoKVwiXG4gICAgW0BzdGF0ZV09XCJ2aXNpYmlsaXR5XCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2NvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxkaXY+e3sgY29uZmlybVRleHQgfX08L2Rpdj5cbiAgICAgICAgICAgIDxidXR0b24ga2JxLWJ1dHRvbiBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiIChjbGljayk9XCJvbkNvbmZpcm0ubmV4dCgpXCI+XG4gICAgICAgICAgICAgICAge3sgY29uZmlybUJ1dHRvblRleHQgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fYXJyb3dcIj48L2Rpdj5cbjwvZGl2PlxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1jb25maXJtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLWNvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXItY29uZmlybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04saUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7O0FBRTdFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLElBQUksY0FBYyxDQUFTLEVBQUUsQ0FBQyxDQUFDO0FBVzlFLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxtQkFBbUI7SUFUbkU7O1FBVUksY0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7S0FJbkM7aUlBTFksMEJBQTBCO3FIQUExQiwwQkFBMEIsNEZDN0J2Qyx1bkJBb0JBLHUzU0RPZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7OzJGQUV0QywwQkFBMEI7a0JBVHRDLFNBQVM7K0JBQ0ksK0JBQStCLHVCQUVwQixLQUFLLGlCQUVYLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUM7O0FBa0JuRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsaUJBQWlCO0lBRzNELElBQ0ksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxXQUFXLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUUxQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUlELElBQ0ksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLGlCQUFpQixDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztRQUVoQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUlELFlBQ2tELFdBQW1CLEVBQ1osaUJBQXlCO1FBRTlFLEtBQUssRUFBRSxDQUFDO1FBaENGLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQTBCekQsdUJBQWtCLEdBQVcsSUFBSSxDQUFDO1FBUXRDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxJQUFJLG9DQUFvQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsSUFBSSxJQUFJLENBQUM7SUFDdkQsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLE9BQU87UUFDWCxDQUFDO1FBRUQsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1FBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDakQsQ0FBQztJQUVELGlCQUFpQjtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdFLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELDZCQUE2QjtRQUN6QixPQUFPLDBCQUEwQixDQUFDO0lBQ3RDLENBQUM7aUlBM0RRLHdCQUF3QixrQkE4QlQsd0JBQXdCLDZCQUN4QiwrQkFBK0I7cUhBL0I5Qyx3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBVHBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsSUFBSSxFQUFFO3dCQUNGLDBCQUEwQixFQUFFLFFBQVE7d0JBQ3BDLFdBQVcsRUFBRSx1QkFBdUI7d0JBQ3BDLFlBQVksRUFBRSxrQkFBa0I7cUJBQ25DO2lCQUNKOzswQkErQlEsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyx3QkFBd0I7OzBCQUMzQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLCtCQUErQjt5Q0E5QjdDLE9BQU87c0JBQWhCLE1BQU07Z0JBR0gsV0FBVztzQkFEZCxLQUFLO3VCQUFDLHVCQUF1QjtnQkFjMUIsaUJBQWlCO3NCQURwQixLQUFLO3VCQUFDLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIERpcmVjdGl2ZSxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIElucHV0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGticVBvcG92ZXJBbmltYXRpb25zIH0gZnJvbSAnLi9wb3BvdmVyLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgS2JxUG9wb3ZlckNvbXBvbmVudCwgS2JxUG9wb3ZlclRyaWdnZXIgfSBmcm9tICcuL3BvcG92ZXIuY29tcG9uZW50JztcblxuZXhwb3J0IGNvbnN0IEtCUV9QT1BPVkVSX0NPTkZJUk1fVEVYVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCcnKTtcbmV4cG9ydCBjb25zdCBLQlFfUE9QT1ZFUl9DT05GSVJNX0JVVFRPTl9URVhUID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJycpO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wb3BvdmVyLWNvbmZpcm0tY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci1jb25maXJtLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdHlsZVVybHM6IFsnLi9wb3BvdmVyLnNjc3MnLCAnLi9wb3BvdmVyLXRva2Vucy5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBhbmltYXRpb25zOiBba2JxUG9wb3ZlckFuaW1hdGlvbnMucG9wb3ZlclN0YXRlXVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQb3BvdmVyQ29uZmlybUNvbXBvbmVudCBleHRlbmRzIEticVBvcG92ZXJDb21wb25lbnQge1xuICAgIG9uQ29uZmlybSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgY29uZmlybUJ1dHRvblRleHQ6IHN0cmluZztcblxuICAgIGNvbmZpcm1UZXh0OiBzdHJpbmc7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVBvcG92ZXJDb25maXJtXScsXG4gICAgZXhwb3J0QXM6ICdrYnFQb3BvdmVyQ29uZmlybScsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmticS1wb3BvdmVyX29wZW5dJzogJ2lzT3BlbicsXG4gICAgICAgICcoa2V5ZG93biknOiAnaGFuZGxlS2V5ZG93bigkZXZlbnQpJyxcbiAgICAgICAgJyh0b3VjaGVuZCknOiAnaGFuZGxlVG91Y2hlbmQoKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVBvcG92ZXJDb25maXJtVHJpZ2dlciBleHRlbmRzIEticVBvcG92ZXJUcmlnZ2VyIHtcbiAgICBAT3V0cHV0KCkgY29uZmlybTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyQ29uZmlybVRleHQnKVxuICAgIGdldCBjb25maXJtVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlybVRleHQ7XG4gICAgfVxuXG4gICAgc2V0IGNvbmZpcm1UZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fY29uZmlybVRleHQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jb25maXJtVGV4dDogc3RyaW5nO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyQ29uZmlybUJ1dHRvblRleHQnKVxuICAgIGdldCBjb25maXJtQnV0dG9uVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlybUJ1dHRvblRleHQ7XG4gICAgfVxuXG4gICAgc2V0IGNvbmZpcm1CdXR0b25UZXh0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fY29uZmlybUJ1dHRvblRleHQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jb25maXJtQnV0dG9uVGV4dDogc3RyaW5nID0gJ9CU0LAnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX1BPUE9WRVJfQ09ORklSTV9URVhUKSBjb25maXJtVGV4dDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEtCUV9QT1BPVkVSX0NPTkZJUk1fQlVUVE9OX1RFWFQpIGNvbmZpcm1CdXR0b25UZXh0OiBzdHJpbmdcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICB0aGlzLmNvbmZpcm1UZXh0ID0gY29uZmlybVRleHQgfHwgJ9CS0Ysg0YPQstC10YDQtdC90YssINGH0YLQviDRhdC+0YLQuNGC0LUg0L/RgNC+0LTQvtC70LbQuNGC0Yw/JztcbiAgICAgICAgdGhpcy5jb25maXJtQnV0dG9uVGV4dCA9IGNvbmZpcm1CdXR0b25UZXh0IHx8ICfQlNCwJztcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRhKCkge1xuICAgICAgICBpZiAoIXRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN1cGVyLnVwZGF0ZURhdGEoKTtcbiAgICAgICAgdGhpcy5zZXR1cEJ1dHRvbkV2ZW50cygpO1xuICAgICAgICB0aGlzLmluc3RhbmNlLmNvbmZpcm1CdXR0b25UZXh0ID0gdGhpcy5jb25maXJtQnV0dG9uVGV4dDtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5jb25maXJtVGV4dCA9IHRoaXMuY29uZmlybVRleHQ7XG4gICAgfVxuXG4gICAgc2V0dXBCdXR0b25FdmVudHMoKSB7XG4gICAgICAgIHRoaXMuaW5zdGFuY2Uub25Db25maXJtLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpcm0uZW1pdCgpO1xuICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldE92ZXJsYXlIYW5kbGVDb21wb25lbnRUeXBlKCkge1xuICAgICAgICByZXR1cm4gS2JxUG9wb3ZlckNvbmZpcm1Db21wb25lbnQ7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNka1RyYXBGb2N1cz1cInRydWVcIlxuICAgIGNka1RyYXBGb2N1c0F1dG9DYXB0dXJlPVwidHJ1ZVwiXG4gICAgY2xhc3M9XCJrYnEtcG9wb3Zlci1jb25maXJtIGticS1wb3BvdmVyXCJcbiAgICBbbmdDbGFzc109XCJjbGFzc01hcFwiXG4gICAgKEBzdGF0ZS5kb25lKT1cImFuaW1hdGlvbkRvbmUoJGV2ZW50KVwiXG4gICAgKEBzdGF0ZS5zdGFydCk9XCJhbmltYXRpb25TdGFydCgpXCJcbiAgICBbQHN0YXRlXT1cInZpc2liaWxpdHlcIlxuPlxuICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdj57eyBjb25maXJtVGV4dCB9fTwvZGl2PlxuICAgICAgICAgICAgPGJ1dHRvbiBrYnEtYnV0dG9uIFtjb2xvcl09XCInY29udHJhc3QnXCIgKGNsaWNrKT1cIm9uQ29uZmlybS5uZXh0KClcIj5cbiAgICAgICAgICAgICAgICB7eyBjb25maXJtQnV0dG9uVGV4dCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImticS1wb3BvdmVyX19hcnJvd1wiPjwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -3,7 +3,7 @@ import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
3
  import { Overlay } from '@angular/cdk/overlay';
4
4
  import { ChangeDetectionStrategy, Component, DestroyRef, Directive, ElementRef, EventEmitter, InjectionToken, Input, Output, ViewChild, ViewEncapsulation, booleanAttribute, inject, numberAttribute } from '@angular/core';
5
5
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
- import { KbqComponentColors, KbqPopUp, KbqPopUpTrigger, POSITION_TO_CSS_MAP, PopUpPlacements, PopUpSizes, PopUpTriggers, applyPopupMargins, defaultOffsetY } from '@koobiq/components/core';
6
+ import { KbqComponentColors, KbqPopUp, KbqPopUpTrigger, POSITION_TO_CSS_MAP, PopUpPlacements, PopUpSizes, PopUpTriggers, applyPopupMargins } from '@koobiq/components/core';
7
7
  import { NEVER, fromEvent, merge } from 'rxjs';
8
8
  import { debounceTime } from 'rxjs/operators';
9
9
  import { kbqPopoverAnimations } from './popover-animations';
@@ -13,6 +13,7 @@ import * as i2 from "@angular/cdk/a11y";
13
13
  import * as i3 from "@koobiq/components/icon";
14
14
  import * as i4 from "@angular/cdk/observers";
15
15
  import * as i5 from "@angular/common";
16
+ const defaultOffsetYWithArrow = 8;
16
17
  export class KbqPopoverComponent extends KbqPopUp {
17
18
  constructor() {
18
19
  super(...arguments);
@@ -61,7 +62,7 @@ export class KbqPopoverComponent extends KbqPopUp {
61
62
  this.trigger.focus();
62
63
  }
63
64
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
64
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqPopoverComponent, selector: "kbq-popover-component", host: { listeners: { "keydown.esc": "onEscape()" } }, viewQueries: [{ propertyName: "popoverContent", first: true, predicate: ["popoverContent"], descendants: true }, { propertyName: "elementRef", first: true, predicate: ["popover"], descendants: true }, { propertyName: "cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n #popover\n class=\"kbq-popover\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div #popoverContent class=\"kbq-popover__content kbq-scrollbar\" (cdkObserveContent)=\"onContentChange()\">\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div class=\"kbq-popover__footer\" [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\">\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\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-popover{position:relative;border-radius:var(--kbq-popover-size-container-border-radius);box-sizing:border-box;list-style:none;white-space:pre-line;z-index:1}.kbq-popover.kbq-popover_small{max-width:var(--kbq-popover-size-container-width-small)}.kbq-popover.kbq-popover_medium{max-width:var(--kbq-popover-size-container-width-medium)}.kbq-popover.kbq-popover_large{max-width:var(--kbq-popover-size-container-width-large)}.kbq-popover.kbq-popover_placement-top,.kbq-popover.kbq-popover_placement-top-left,.kbq-popover.kbq-popover_placement-top-right{margin-bottom:8px}.kbq-popover.kbq-popover_placement-right,.kbq-popover.kbq-popover_placement-right-top,.kbq-popover.kbq-popover_placement-right-bottom{margin-left:8px}.kbq-popover.kbq-popover_placement-bottom,.kbq-popover.kbq-popover_placement-bottom-left,.kbq-popover.kbq-popover_placement-bottom-right{margin-top:8px}.kbq-popover.kbq-popover_placement-left,.kbq-popover.kbq-popover_placement-left-top,.kbq-popover.kbq-popover_placement-left-bottom{margin-right:8px}.kbq-popover__content{overflow-y:auto;padding:var(--kbq-popover-size-content-padding-top) var(--kbq-popover-size-content-padding-horizontal) var(--kbq-popover-size-content-padding-bottom)}.kbq-popover__container{overflow:hidden;display:flex;flex-direction:column;max-height:var(--kbq-popover-size-container-max-height);border-radius:var(--kbq-popover-size-container-border-radius)}.kbq-popover__container.kbq-popover__container_with-header .kbq-popover__content{padding-top:var(--kbq-size-s)}.kbq-popover__container.kbq-popover__container_with-footer .kbq-popover__content{padding-bottom:var(--kbq-size-s)}.kbq-popover__content .kbq-popover__close-container{display:flex;justify-content:flex-end;height:0}.kbq-popover__content .kbq-popover__close-container .kbq-popover__close{top:auto;right:auto;transform:translateY(-50%) translate(50%)}.kbq-popover__header{display:flex;align-items:center;overflow:hidden;padding:var(--kbq-popover-size-header-padding-top) var(--kbq-popover-size-header-padding-horizontal) var(--kbq-popover-size-header-padding-bottom) var(--kbq-popover-size-header-padding-horizontal)}.kbq-popover__header .kbq-popover__header-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-popover__header_top-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-bottom)}.kbq-popover__header_with-close-button{padding-right:var(--kbq-size-4xl)}.kbq-popover__footer{padding:var(--kbq-popover-size-footer-padding-vertical) var(--kbq-popover-size-footer-padding-horizontal)}.kbq-popover__footer_bottom-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-top)}.kbq-popover__arrow{position:absolute;z-index:-1;width:12px;height:12px;transform:rotate(45deg)}.kbq-popover_placement-top .kbq-popover__arrow{bottom:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-top-left .kbq-popover__arrow{bottom:-5.5px;left:9px}.kbq-popover_placement-top-right .kbq-popover__arrow{bottom:-5.5px;right:9px}.kbq-popover_placement-right .kbq-popover__arrow{left:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-right-top .kbq-popover__arrow{left:-5.5px;top:9px}.kbq-popover_placement-right-bottom .kbq-popover__arrow{left:-5.5px;bottom:9px}.kbq-popover_placement-left .kbq-popover__arrow{right:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-left-top .kbq-popover__arrow{right:-5.5px;top:9px}.kbq-popover_placement-left-bottom .kbq-popover__arrow{right:-5.5px;bottom:9px}.kbq-popover_placement-bottom .kbq-popover__arrow{top:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-bottom-left .kbq-popover__arrow{top:-5.5px;left:9px}.kbq-popover_placement-bottom-right .kbq-popover__arrow{top:-5.5px;right:9px}.kbq-popover__close{position:absolute;z-index:2;top:var(--kbq-size-s);right:var(--kbq-size-s);border-radius:var(--kbq-size-border-radius)}.kbq-popover{box-shadow:var(--kbq-popover-container-shadow)}.kbq-popover__container{background:var(--kbq-popover-container-background)}.kbq-popover__arrow{box-shadow:var(--kbq-popover-container-shadow);background:var(--kbq-popover-container-background)}.kbq-popover__close{background-color:var(--kbq-background-overlay-inverse)}.kbq-popover__header{color:var(--kbq-popover-header-text-color)}.kbq-popover__content{color:var(--kbq-popover-content-text-color)}.kbq-popover__header{font-size:var(--kbq-typography-subheading-font-size);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-popover__content{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-popover{--kbq-popover-size-container-width-small: 200px;--kbq-popover-size-container-width-medium: 400px;--kbq-popover-size-container-width-large: 640px;--kbq-popover-size-container-border-radius: var(--kbq-size-m);--kbq-popover-size-container-max-height: 480px;--kbq-popover-size-close-button-width: 32px;--kbq-popover-size-close-button-margin-right: -16px;--kbq-popover-size-close-button-margin-top: -10px;--kbq-popover-size-header-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-header-padding-top: var(--kbq-size-l);--kbq-popover-size-header-padding-bottom: var(--kbq-size-xs);--kbq-popover-size-content-padding-top: var(--kbq-size-xxl);--kbq-popover-size-content-padding-bottom: var(--kbq-size-3xl);--kbq-popover-size-content-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-content-padding-with-header-top: var(--kbq-size-s);--kbq-popover-size-content-padding-with-footer-bottom: var(--kbq-size-s);--kbq-popover-size-footer-padding-vertical: var(--kbq-size-l);--kbq-popover-size-footer-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-container-background: var(--kbq-background-card);--kbq-popover-container-shadow: var(--kbq-shadow-popup);--kbq-popover-header-text-color: var(--kbq-foreground-contrast);--kbq-popover-header-scroll-shadow: var(--kbq-shadow-overflow-normal-bottom);--kbq-popover-content-text-color: var(--kbq-foreground-contrast);--kbq-popover-footer-scroll-shadow: var(--kbq-shadow-overflow-normal-top)}\n"], dependencies: [{ kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["color", "tabIndex", "kbqStyle", "disabled"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["color", "small", "autoColor", "kbq-icon"] }, { kind: "directive", type: i4.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [kbqPopoverAnimations.popoverState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
65
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqPopoverComponent, selector: "kbq-popover-component", host: { listeners: { "keydown.esc": "onEscape()" } }, viewQueries: [{ propertyName: "popoverContent", first: true, predicate: ["popoverContent"], descendants: true }, { propertyName: "elementRef", first: true, predicate: ["popover"], descendants: true }, { propertyName: "cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n #popover\n class=\"kbq-popover\"\n [cdkTrapFocus]=\"isTrapFocus\"\n [ngClass]=\"classMap\"\n (@state.done)=\"animationDone($event)\"\n (@state.start)=\"animationStart()\"\n [@state]=\"visibility\"\n>\n <div\n class=\"kbq-popover__container\"\n [class.kbq-popover__container_with-footer]=\"footer\"\n [class.kbq-popover__container_with-header]=\"header\"\n >\n @if (header) {\n <div\n class=\"kbq-popover__header\"\n [class.kbq-popover__header_top-overflow]=\"isContentTopOverflow\"\n [class.kbq-popover__header_with-close-button]=\"hasCloseButton\"\n >\n @if (isTemplateRef(header)) {\n <ng-container [ngTemplateOutlet]=\"$any(header)\" />\n }\n @if (!isTemplateRef(header)) {\n <div class=\"kbq-popover__header-text\">{{ header }}</div>\n }\n </div>\n }\n\n @if (content) {\n <div #popoverContent class=\"kbq-popover__content kbq-scrollbar\" (cdkObserveContent)=\"onContentChange()\">\n @if (hasCloseButton && !header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n @if (isTemplateRef(content)) {\n <ng-container [ngTemplateOutlet]=\"$any(content)\" />\n }\n @if (!isTemplateRef(content)) {\n <div>{{ content }}</div>\n }\n </div>\n }\n\n @if (footer) {\n <div class=\"kbq-popover__footer\" [class.kbq-popover__footer_bottom-overflow]=\"isContentBottomOverflow\">\n @if (isTemplateRef(footer)) {\n <ng-container [ngTemplateOutlet]=\"$any(footer)\" />\n }\n @if (!isTemplateRef(footer)) {\n <div>{{ footer }}</div>\n }\n </div>\n }\n </div>\n\n @if (hasCloseButton && header) {\n <div class=\"kbq-popover__close-container\">\n <ng-container *ngTemplateOutlet=\"closeButton\" />\n </div>\n }\n\n <ng-template #closeButton>\n <div class=\"kbq-popover__close\">\n <button kbq-button class=\"kbq-button_transparent\" [color]=\"componentColors.Contrast\" (click)=\"hide(0)\">\n <i kbq-icon=\"kbq-xmark_16\" [color]=\"componentColors.Contrast\"></i>\n </button>\n </div>\n </ng-template>\n\n @if (arrow) {\n <div class=\"kbq-popover__arrow\"></div>\n }\n</div>\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-popover{position:relative;border-radius:var(--kbq-popover-size-container-border-radius);box-sizing:border-box;list-style:none;white-space:pre-line;z-index:1}.kbq-popover.kbq-popover_small{max-width:var(--kbq-popover-size-container-width-small)}.kbq-popover.kbq-popover_medium{max-width:var(--kbq-popover-size-container-width-medium)}.kbq-popover.kbq-popover_large{max-width:var(--kbq-popover-size-container-width-large)}.kbq-popover.kbq-popover_placement-top,.kbq-popover.kbq-popover_placement-top-left,.kbq-popover.kbq-popover_placement-top-right{margin-bottom:8px}.kbq-popover.kbq-popover_placement-right,.kbq-popover.kbq-popover_placement-right-top,.kbq-popover.kbq-popover_placement-right-bottom{margin-left:8px}.kbq-popover.kbq-popover_placement-bottom,.kbq-popover.kbq-popover_placement-bottom-left,.kbq-popover.kbq-popover_placement-bottom-right{margin-top:8px}.kbq-popover.kbq-popover_placement-left,.kbq-popover.kbq-popover_placement-left-top,.kbq-popover.kbq-popover_placement-left-bottom{margin-right:8px}.kbq-popover__content{overflow-y:auto;padding:var(--kbq-popover-size-content-padding-top) var(--kbq-popover-size-content-padding-horizontal) var(--kbq-popover-size-content-padding-bottom)}.kbq-popover__container{overflow:hidden;display:flex;flex-direction:column;max-height:var(--kbq-popover-size-container-max-height);border-radius:var(--kbq-popover-size-container-border-radius)}.kbq-popover__container.kbq-popover__container_with-header .kbq-popover__content{padding-top:var(--kbq-size-s)}.kbq-popover__container.kbq-popover__container_with-footer .kbq-popover__content{padding-bottom:var(--kbq-size-s)}.kbq-popover__content .kbq-popover__close-container{display:flex;justify-content:flex-end;height:0}.kbq-popover__content .kbq-popover__close-container .kbq-popover__close{top:auto;right:auto;transform:translateY(-50%) translate(50%)}.kbq-popover__header{display:flex;align-items:center;overflow:hidden;padding:var(--kbq-popover-size-header-padding-top) var(--kbq-popover-size-header-padding-horizontal) var(--kbq-popover-size-header-padding-bottom) var(--kbq-popover-size-header-padding-horizontal)}.kbq-popover__header .kbq-popover__header-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-popover__header_top-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-bottom)}.kbq-popover__header_with-close-button{padding-right:var(--kbq-size-4xl)}.kbq-popover__footer{padding:var(--kbq-popover-size-footer-padding-vertical) var(--kbq-popover-size-footer-padding-horizontal)}.kbq-popover__footer_bottom-overflow{position:relative;z-index:2;box-shadow:var(--kbq-shadow-overflow-normal-top)}.kbq-popover__arrow{position:absolute;z-index:-1;width:12px;height:12px;transform:rotate(45deg)}.kbq-popover_placement-top .kbq-popover__arrow{bottom:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-top-left .kbq-popover__arrow{bottom:-5.5px;left:9px}.kbq-popover_placement-top-right .kbq-popover__arrow{bottom:-5.5px;right:9px}.kbq-popover_placement-right .kbq-popover__arrow{left:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-right-top .kbq-popover__arrow{left:-5.5px;top:9px}.kbq-popover_placement-right-bottom .kbq-popover__arrow{left:-5.5px;bottom:9px}.kbq-popover_placement-left .kbq-popover__arrow{right:-5.5px;top:50%;margin-top:-5.5px}.kbq-popover_placement-left-top .kbq-popover__arrow{right:-5.5px;top:9px}.kbq-popover_placement-left-bottom .kbq-popover__arrow{right:-5.5px;bottom:9px}.kbq-popover_placement-bottom .kbq-popover__arrow{top:-5.5px;left:50%;margin-left:-5.5px}.kbq-popover_placement-bottom-left .kbq-popover__arrow{top:-5.5px;left:9px}.kbq-popover_placement-bottom-right .kbq-popover__arrow{top:-5.5px;right:9px}.kbq-popover__close{position:absolute;z-index:2;top:var(--kbq-size-s);right:var(--kbq-size-s);border-radius:var(--kbq-size-border-radius)}.kbq-popover{box-shadow:var(--kbq-popover-container-shadow)}.kbq-popover__container{background:var(--kbq-popover-container-background)}.kbq-popover__arrow{box-shadow:var(--kbq-popover-container-shadow);background:var(--kbq-popover-container-background)}.kbq-popover__close{background-color:var(--kbq-background-overlay-inverse)}.kbq-popover__header{color:var(--kbq-popover-header-text-color)}.kbq-popover__content{color:var(--kbq-popover-content-text-color)}.kbq-popover__header{font-size:var(--kbq-typography-subheading-font-size);font-weight:var(--kbq-typography-subheading-font-weight);line-height:var(--kbq-typography-subheading-line-height);font-family:var(--kbq-typography-subheading-font-family);text-transform:var(--kbq-typography-subheading-text-transform);font-feature-settings:var(--kbq-typography-subheading-font-feature-settings);letter-spacing:var(--kbq-typography-subheading-letter-spacing)}.kbq-popover__content{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}\n", ".kbq-popover{--kbq-popover-size-container-width-small: 200px;--kbq-popover-size-container-width-medium: 400px;--kbq-popover-size-container-width-large: 640px;--kbq-popover-size-container-border-radius: var(--kbq-size-m);--kbq-popover-size-container-max-height: 480px;--kbq-popover-size-close-button-width: 32px;--kbq-popover-size-close-button-margin-right: -16px;--kbq-popover-size-close-button-margin-top: -10px;--kbq-popover-size-header-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-header-padding-top: var(--kbq-size-l);--kbq-popover-size-header-padding-bottom: var(--kbq-size-xs);--kbq-popover-size-content-padding-top: var(--kbq-size-xxl);--kbq-popover-size-content-padding-bottom: var(--kbq-size-3xl);--kbq-popover-size-content-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-size-content-padding-with-header-top: var(--kbq-size-s);--kbq-popover-size-content-padding-with-footer-bottom: var(--kbq-size-s);--kbq-popover-size-footer-padding-vertical: var(--kbq-size-l);--kbq-popover-size-footer-padding-horizontal: var(--kbq-size-xxl);--kbq-popover-container-background: var(--kbq-background-card);--kbq-popover-container-shadow: var(--kbq-shadow-popup);--kbq-popover-header-text-color: var(--kbq-foreground-contrast);--kbq-popover-header-scroll-shadow: var(--kbq-shadow-overflow-normal-bottom);--kbq-popover-content-text-color: var(--kbq-foreground-contrast);--kbq-popover-footer-scroll-shadow: var(--kbq-shadow-overflow-normal-top)}\n"], dependencies: [{ kind: "component", type: i1.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i1.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "directive", type: i2.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "directive", type: i4.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [kbqPopoverAnimations.popoverState], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
65
66
  }
66
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPopoverComponent, decorators: [{
67
68
  type: Component,
@@ -105,7 +106,7 @@ export class KbqPopoverTrigger extends KbqPopUpTrigger {
105
106
  this.backdropClass = 'cdk-overlay-transparent-backdrop';
106
107
  // @TODO add realization for arrow (#DS-2514)
107
108
  this.arrow = true;
108
- this.offset = defaultOffsetY;
109
+ this.offset = defaultOffsetYWithArrow;
109
110
  this.placementChange = new EventEmitter();
110
111
  this.visibleChange = new EventEmitter();
111
112
  this.originSelector = '.kbq-popover';
@@ -352,4 +353,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
352
353
  type: Output,
353
354
  args: ['kbqPopoverVisibleChange']
354
355
  }] } });
355
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUdILE9BQU8sRUFHVixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFHSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixNQUFNLEVBQ04sZUFBZSxFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUixlQUFlLEVBQ2YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixVQUFVLEVBQ1YsYUFBYSxFQUNiLGlCQUFpQixFQUNqQixjQUFjLEVBQ2pCLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7OztBQWM1RCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsUUFBUTtJ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QkFEM0IsS0FBSzt1QkFBQyw2QkFBNkI7Z0JBVWhDLFdBQVc7c0JBRGQsS0FBSztnQkFZRixNQUFNO3NCQURULEtBQUs7dUJBQUMsa0JBQWtCO2dCQWNyQixPQUFPO3NCQURWLEtBQUs7dUJBQUMsbUJBQW1CO2dCQVl0QixNQUFNO3NCQURULEtBQUs7dUJBQUMsa0JBQWtCO2dCQWNyQixRQUFRO3NCQURYLEtBQUs7dUJBQUMsb0JBQW9CO2dCQWN2QixPQUFPO3NCQURWLEtBQUs7dUJBQUMsWUFBWTtnQkFrQmYsSUFBSTtzQkFEUCxLQUFLO3VCQUFDLGdCQUFnQjtnQkFrQm5CLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBWXBCLGNBQWM7c0JBRGpCLEtBQUs7Z0JBZ0JGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBZUcsYUFBYTtzQkFBckIsS0FBSztnQkFHNEQsS0FBSztzQkFBdEUsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRUUsTUFBTTtzQkFBdkUsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUUzQixlQUFlO3NCQUFuRCxNQUFNO3VCQUFDLDJCQUEyQjtnQkFFQSxhQUFhO3NCQUEvQyxNQUFNO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka1RyYXBGb2N1cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICAgIENka1Njcm9sbGFibGUsXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheUNvbmZpZyxcbiAgICBTY3JvbGxTdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgaW5qZWN0LFxuICAgIG51bWJlckF0dHJpYnV0ZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgS2JxQ29tcG9uZW50Q29sb3JzLFxuICAgIEticVBvcFVwLFxuICAgIEticVBvcFVwVHJpZ2dlcixcbiAgICBQT1NJVElPTl9UT19DU1NfTUFQLFxuICAgIFBvcFVwUGxhY2VtZW50cyxcbiAgICBQb3BVcFNpemVzLFxuICAgIFBvcFVwVHJpZ2dlcnMsXG4gICAgYXBwbHlQb3B1cE1hcmdpbnMsXG4gICAgZGVmYXVsdE9mZnNldFlcbn0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgTkVWRVIsIGZyb21FdmVudCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGticVBvcG92ZXJBbmltYXRpb25zIH0gZnJvbSAnLi9wb3BvdmVyLWFuaW1hdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wb3BvdmVyLWNvbXBvbmVudCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICAgIHN0eWxlVXJsczogWycuL3BvcG92ZXIuc2NzcycsICcuL3BvcG92ZXItdG9rZW5zLnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgICcoa2V5ZG93bi5lc2MpJzogJ29uRXNjYXBlKCknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGFuaW1hdGlvbnM6IFtrYnFQb3BvdmVyQW5pbWF0aW9ucy5wb3BvdmVyU3RhdGVdXG59KVxuZXhwb3J0IGNsYXNzIEticVBvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBLYnFQb3BVcCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIHByZWZpeCA9ICdrYnEtcG9wb3Zlcic7XG5cbiAgICBoZWFkZXI6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gICAgZm9vdGVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgdHJpZ2dlcjogS2JxUG9wb3ZlclRyaWdnZXI7XG5cbiAgICBpc1RyYXBGb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGhhc0Nsb3NlQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKCdwb3BvdmVyQ29udGVudCcpIHBvcG92ZXJDb250ZW50OiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgICBAVmlld0NoaWxkKCdwb3BvdmVyJykgZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkKENka1RyYXBGb2N1cykgY2RrVHJhcEZvY3VzOiBDZGtUcmFwRm9jdXM7XG5cbiAgICBwcml2YXRlIGRlYm91bmNlVGltZSA9IDE1O1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgICBpc0NvbnRlbnRUb3BPdmVyZmxvdzogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGlzQ29udGVudEJvdHRvbU92ZXJmbG93OiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy5wb3BvdmVyQ29udGVudCkgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuY2hlY2tDb250ZW50T3ZlcmZsb3codGhpcy5wb3BvdmVyQ29udGVudC5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICBmcm9tRXZlbnQodGhpcy5wb3BvdmVyQ29udGVudC5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJylcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrQ29udGVudE92ZXJmbG93KGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmNka1RyYXBGb2N1cy5mb2N1c1RyYXAuZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpO1xuICAgICAgICB0aGlzLnZpc2libGVDaGFuZ2Uuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMub2Zmc2V0ICE9PSBudWxsICYmIHN0YXRlKSB7XG4gICAgICAgICAgICAgICAgYXBwbHlQb3B1cE1hcmdpbnMoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgICAgICAgICB0aGlzLnByZWZpeCxcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5vZmZzZXQhLnRvU3RyaW5nKCl9cHhgXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Db250ZW50Q2hhbmdlKCkge1xuICAgICAgICB0aGlzLmNoZWNrQ29udGVudE92ZXJmbG93KHRoaXMucG9wb3ZlckNvbnRlbnQubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgY2hlY2tDb250ZW50T3ZlcmZsb3coY29udGVudEVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHsgc2Nyb2xsVG9wLCBvZmZzZXRIZWlnaHQsIHNjcm9sbEhlaWdodCB9ID0gY29udGVudEVsZW1lbnQ7XG5cbiAgICAgICAgdGhpcy5pc0NvbnRlbnRUb3BPdmVyZmxvdyA9IHNjcm9sbFRvcCA+IDA7XG5cbiAgICAgICAgdGhpcy5pc0NvbnRlbnRCb3R0b21PdmVyZmxvdyA9IHNjcm9sbFRvcCArIG9mZnNldEhlaWdodCA8IHNjcm9sbEhlaWdodDtcblxuICAgICAgICBzdXBlci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ2xhc3NNYXAocGxhY2VtZW50OiBzdHJpbmcsIGN1c3RvbUNsYXNzOiBzdHJpbmcsIHNpemU6IFBvcFVwU2l6ZXMpIHtcbiAgICAgICAgc3VwZXIudXBkYXRlQ2xhc3NNYXAocGxhY2VtZW50LCBjdXN0b21DbGFzcywgeyBbYCR7dGhpcy5wcmVmaXh9XyR7c2l6ZX1gXTogISFzaXplIH0pO1xuICAgIH1cblxuICAgIHVwZGF0ZVRyYXBGb2N1cyhpc1RyYXBGb2N1czogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmlzVHJhcEZvY3VzID0gaXNUcmFwRm9jdXM7XG4gICAgfVxuXG4gICAgb25Fc2NhcGUoKSB7XG4gICAgICAgIHRoaXMuaGlkZSgwKTtcblxuICAgICAgICB0aGlzLnRyaWdnZXIuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29tcG9uZW50Q29sb3JzID0gS2JxQ29tcG9uZW50Q29sb3JzO1xufVxuXG5leHBvcnQgY29uc3QgS0JRX1BPUE9WRVJfU0NST0xMX1NUUkFURUdZID0gbmV3IEluamVjdGlvblRva2VuPCgpID0+IFNjcm9sbFN0cmF0ZWd5Pigna2JxLXBvcG92ZXItc2Nyb2xsLXN0cmF0ZWd5Jyk7XG5cbi8qKiBAZG9jcy1wcml2YXRlICovXG5leHBvcnQgZnVuY3Rpb24ga2JxUG9wb3ZlclNjcm9sbFN0cmF0ZWd5RmFjdG9yeShvdmVybGF5OiBPdmVybGF5KTogKCkgPT4gU2Nyb2xsU3RyYXRlZ3kge1xuICAgIHJldHVybiAoKSA9PiBvdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbih7IHNjcm9sbFRocm90dGxlOiAyMCB9KTtcbn1cblxuLyoqIEBkb2NzLXByaXZhdGUgKi9cbmV4cG9ydCBjb25zdCBLQlFfUE9QT1ZFUl9TQ1JPTExfU1RSQVRFR1lfRkFDVE9SWV9QUk9WSURFUiA9IHtcbiAgICBwcm92aWRlOiBLQlFfUE9QT1ZFUl9TQ1JPTExfU1RSQVRFR1ksXG4gICAgZGVwczogW092ZXJsYXldLFxuICAgIHVzZUZhY3Rvcnk6IGticVBvcG92ZXJTY3JvbGxTdHJhdGVneUZhY3Rvcnlcbn07XG5cbi8qKiBDcmVhdGVzIGFuIGVycm9yIHRvIGJlIHRocm93biBpZiB0aGUgdXNlciBzdXBwbGllZCBhbiBpbnZhbGlkIHBvcG92ZXIgcG9zaXRpb24uICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0S2JxUG9wb3ZlckludmFsaWRQb3NpdGlvbkVycm9yKHBvc2l0aW9uOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gRXJyb3IoYEticVBvcG92ZXIgcG9zaXRpb24gXCIke3Bvc2l0aW9ufVwiIGlzIGludmFsaWQuYCk7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVBvcG92ZXJdJyxcbiAgICBleHBvcnRBczogJ2ticVBvcG92ZXInLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5rYnEtcG9wb3Zlcl9vcGVuXSc6ICdpc09wZW4nLFxuICAgICAgICAnW2NsYXNzLmticS1hY3RpdmVdJzogJ2hhc0NsaWNrVHJpZ2dlciAmJiBpc09wZW4nLFxuICAgICAgICAnKGtleWRvd24pJzogJ2hhbmRsZUtleWRvd24oJGV2ZW50KScsXG4gICAgICAgICcodG91Y2hlbmQpJzogJ2hhbmRsZVRvdWNoZW5kKCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQb3BvdmVyVHJpZ2dlciBleHRlbmRzIEticVBvcFVwVHJpZ2dlcjxLYnFQb3BvdmVyQ29tcG9uZW50PiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIHByb3RlY3RlZCBzY3JvbGxTdHJhdGVneTogKCkgPT4gU2Nyb2xsU3RyYXRlZ3kgPSBpbmplY3QoS0JRX1BPUE9WRVJfU0NST0xMX1NUUkFURUdZKTtcblxuICAgIEBJbnB1dCgna2JxUG9wb3ZlclZpc2libGUnKVxuICAgIGdldCBwb3BvdmVyVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmlzaWJsZTtcbiAgICB9XG5cbiAgICBzZXQgcG9wb3ZlclZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgc3VwZXIudXBkYXRlVmlzaWJsZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyUGxhY2VtZW50JylcbiAgICBnZXQgcG9wb3ZlclBsYWNlbWVudCgpOiBQb3BVcFBsYWNlbWVudHMge1xuICAgICAgICByZXR1cm4gdGhpcy5wbGFjZW1lbnQ7XG4gICAgfVxuXG4gICAgc2V0IHBvcG92ZXJQbGFjZW1lbnQodmFsdWU6IFBvcFVwUGxhY2VtZW50cykge1xuICAgICAgICBzdXBlci51cGRhdGVQbGFjZW1lbnQodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgna2JxUG9wb3ZlclBsYWNlbWVudFByaW9yaXR5JylcbiAgICBnZXQgcG9wb3ZlclBsYWNlbWVudFByaW9yaXR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wbGFjZW1lbnRQcmlvcml0eTtcbiAgICB9XG5cbiAgICBzZXQgcG9wb3ZlclBsYWNlbWVudFByaW9yaXR5KHZhbHVlKSB7XG4gICAgICAgIHN1cGVyLnVwZGF0ZVBsYWNlbWVudFByaW9yaXR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNCYWNrZHJvcCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc0JhY2tkcm9wO1xuICAgIH1cblxuICAgIHNldCBoYXNCYWNrZHJvcCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9oYXNCYWNrZHJvcCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGFzQmFja2Ryb3A6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCgna2JxUG9wb3ZlckhlYWRlcicpXG4gICAgZ2V0IGhlYWRlcigpOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hlYWRlcjtcbiAgICB9XG5cbiAgICBzZXQgaGVhZGVyKHZhbHVlOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgICAgIHRoaXMuX2hlYWRlciA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRGF0YSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hlYWRlcjogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBJbnB1dCgna2JxUG9wb3ZlckNvbnRlbnQnKVxuICAgIGdldCBjb250ZW50KCk6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29udGVudDtcbiAgICB9XG5cbiAgICBzZXQgY29udGVudCh2YWx1ZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICB0aGlzLl9jb250ZW50ID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVEYXRhKCk7XG4gICAgfVxuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyRm9vdGVyJylcbiAgICBnZXQgZm9vdGVyKCk6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZm9vdGVyO1xuICAgIH1cblxuICAgIHNldCBmb290ZXIodmFsdWU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgdGhpcy5fZm9vdGVyID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVEYXRhKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZm9vdGVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyRGlzYWJsZWQnKVxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cblxuICAgIHNldCBkaXNhYmxlZCh2YWx1ZSkge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2Rpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgna2JxVHJpZ2dlcicpXG4gICAgZ2V0IHRyaWdnZXIoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyaWdnZXI7XG4gICAgfVxuXG4gICAgc2V0IHRyaWdnZXIodmFsdWU6IHN0cmluZykge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXIgPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXIgPSBgJHtQb3BVcFRyaWdnZXJzLkNsaWNrfSwgJHtQb3BVcFRyaWdnZXJzLktleWRvd259YDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaW5pdExpc3RlbmVycygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3RyaWdnZXI6IHN0cmluZyA9IGAke1BvcFVwVHJpZ2dlcnMuQ2xpY2t9LCAke1BvcFVwVHJpZ2dlcnMuS2V5ZG93bn1gO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyU2l6ZScpXG4gICAgZ2V0IHNpemUoKTogUG9wVXBTaXplcyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zaXplO1xuICAgIH1cblxuICAgIHNldCBzaXplKHZhbHVlOiBQb3BVcFNpemVzKSB7XG4gICAgICAgIGlmIChbUG9wVXBTaXplcy5TbWFsbCwgUG9wVXBTaXplcy5NZWRpdW0sIFBvcFVwU2l6ZXMuTGFyZ2VdLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5fc2l6ZSA9IHZhbHVlO1xuXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzTWFwKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zaXplID0gUG9wVXBTaXplcy5NZWRpdW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9zaXplOiBQb3BVcFNpemVzID0gUG9wVXBTaXplcy5NZWRpdW07XG5cbiAgICBASW5wdXQoJ2ticVBvcG92ZXJDbGFzcycpXG4gICAgZ2V0IGN1c3RvbUNsYXNzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tQ2xhc3M7XG4gICAgfVxuXG4gICAgc2V0IGN1c3RvbUNsYXNzKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fY3VzdG9tQ2xhc3MgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZUNsYXNzTWFwKCk7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzQ2xvc2VCdXR0b24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNDbG9zZUJ1dHRvbjtcbiAgICB9XG4gICAgc2V0IGhhc0Nsb3NlQnV0dG9uKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2hhc0Nsb3NlQnV0dG9uID0gdmFsdWU7XG4gICAgICAgIHRoaXMudXBkYXRlRGF0YSgpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNDbG9zZUJ1dHRvbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQ29udHJvbHMgdGhlIGJlaGF2aW9yIG9mIGNsb3NpbmcgdGhlIGNvbXBvbmVudCBvbiBzY3JvbGwuXG4gICAgICogVGhlIGRlZmF1bHQgdmFsdWUgaXMgYGZhbHNlYC5cbiAgICAgKiBVc2UgQ2xvc2VTY3JvbGxTdHJhdGVneSBhcyBhbHRlcm5hdGl2ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGNsb3NlT25TY3JvbGwoKTogYm9vbGVhbiB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2xvc2VPblNjcm9sbDtcbiAgICB9XG5cbiAgICBzZXQgY2xvc2VPblNjcm9sbCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9jbG9zZU9uU2Nyb2xsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9jbG9zZU9uU2Nyb2xsOiBib29sZWFuIHwgbnVsbCA9IG51bGw7XG5cbiAgICBnZXQgaGFzQ2xpY2tUcmlnZ2VyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy50cmlnZ2VyLmluY2x1ZGVzKFBvcFVwVHJpZ2dlcnMuQ2xpY2spO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGJhY2tkcm9wQ2xhc3M6IHN0cmluZyA9ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCc7XG5cbiAgICAvLyBAVE9ETyBhZGQgcmVhbGl6YXRpb24gZm9yIGFycm93ICgjRFMtMjUxNClcbiAgICBASW5wdXQoeyBhbGlhczogJ2ticVBvcG92ZXJBcnJvdycsIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBhcnJvdzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASW5wdXQoeyBhbGlhczogJ2ticVBvcG92ZXJPZmZzZXQnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSBvZmZzZXQ6IG51bWJlciB8IG51bGwgPSBkZWZhdWx0T2Zmc2V0WTtcblxuICAgIEBPdXRwdXQoJ2ticVBvcG92ZXJQbGFjZW1lbnRDaGFuZ2UnKSBwbGFjZW1lbnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCdrYnFQb3BvdmVyVmlzaWJsZUNoYW5nZScpIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBwcm90ZWN0ZWQgb3JpZ2luU2VsZWN0b3IgPSAnLmticS1wb3BvdmVyJztcblxuICAgIHByb3RlY3RlZCBnZXQgb3ZlcmxheUNvbmZpZygpOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICdrYnEtcG9wb3Zlcl9fcGFuZWwnLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IHRoaXMuaGFzQmFja2Ryb3AsXG4gICAgICAgICAgICBiYWNrZHJvcENsYXNzOiB0aGlzLmJhY2tkcm9wQ2xhc3NcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNsb3NlT25TY3JvbGwgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsRGlzcGF0Y2hlci5zY3JvbGxlZCgpLnN1YnNjcmliZSgoc2Nyb2xsYWJsZTogQ2RrU2Nyb2xsYWJsZSB8IHZvaWQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXNjcm9sbGFibGU/LmdldEVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygna2JxLWhpZGUtbmVzdGVkLXBvcHVwJykpIHJldHVybjtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHBhcmVudFJlY3RzID0gc2Nyb2xsYWJsZS5nZXRFbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFJlY3RzID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoY2hpbGRSZWN0cy5ib3R0b20gPCBwYXJlbnRSZWN0cy50b3AgfHwgY2hpbGRSZWN0cy50b3AgPiBwYXJlbnRSZWN0cy5ib3R0b20pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVEYXRhKCkge1xuICAgICAgICBpZiAoIXRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaW5zdGFuY2UuaGVhZGVyID0gdGhpcy5oZWFkZXI7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuY29udGVudCA9IHRoaXMuY29udGVudDtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5hcnJvdyA9IHRoaXMuYXJyb3c7XG4gICAgICAgIHRoaXMuaW5zdGFuY2Uub2Zmc2V0ID0gdGhpcy5vZmZzZXQ7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuZm9vdGVyID0gdGhpcy5mb290ZXI7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UuaGFzQ2xvc2VCdXR0b24gPSB0aGlzLmhhc0Nsb3NlQnV0dG9uO1xuXG4gICAgICAgIHRoaXMuaW5zdGFuY2UudXBkYXRlVHJhcEZvY3VzKHRoaXMudHJpZ2dlciAhPT0gUG9wVXBUcmlnZ2Vycy5Gb2N1cyk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uKHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFVwZGF0ZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBjdXJyZW50IHBvcG92ZXIuICovXG4gICAgdXBkYXRlUG9zaXRpb24ocmVhcHBseVBvc2l0aW9uOiBib29sZWFuID0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5KCk7XG5cbiAgICAgICAgY29uc3QgcG9zaXRpb24gPSAodGhpcy5vdmVybGF5UmVmLmdldENvbmZpZygpLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5KVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnModGhpcy5nZXRBZGp1c3RlZFBvc2l0aW9ucygpKVxuICAgICAgICAgICAgLndpdGhQdXNoKHRydWUpO1xuXG4gICAgICAgIGlmIChyZWFwcGx5UG9zaXRpb24pIHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcG9zaXRpb24ucmVhcHBseUxhc3RQb3NpdGlvbigpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldE92ZXJsYXlIYW5kbGVDb21wb25lbnRUeXBlKCk6IFR5cGU8S2JxUG9wb3ZlckNvbXBvbmVudD4ge1xuICAgICAgICByZXR1cm4gS2JxUG9wb3ZlckNvbXBvbmVudDtcbiAgICB9XG5cbiAgICB1cGRhdGVDbGFzc01hcChuZXdQbGFjZW1lbnQ6IHN0cmluZyA9IHRoaXMucGxhY2VtZW50KSB7XG4gICAgICAgIGlmICghdGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS51cGRhdGVDbGFzc01hcChQT1NJVElPTl9UT19DU1NfTUFQW25ld1BsYWNlbWVudF0sIHRoaXMuY3VzdG9tQ2xhc3MsIHRoaXMuc2l6ZSk7XG4gICAgICAgIHRoaXMuaW5zdGFuY2UubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgY2xvc2luZ0FjdGlvbnNGb3JDbGljaygpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzQ2xpY2tUcmlnZ2VyKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0Q2xvc2luZ0FjdGlvbnMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBkZWZhdWx0Q2xvc2luZ0FjdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYhLmJhY2tkcm9wQ2xpY2soKSxcbiAgICAgICAgICAgIHRoaXMuaGFzQmFja2Ryb3AgPyBORVZFUiA6IHRoaXMub3ZlcmxheVJlZiEub3V0c2lkZVBvaW50ZXJFdmVudHMoKVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIGNsb3NpbmdBY3Rpb25zKCkge1xuICAgICAgICByZXR1cm4gbWVyZ2UoLi4udGhpcy5jbG9zaW5nQWN0aW9uc0ZvckNsaWNrKCksIHRoaXMuY2xvc2VPblNjcm9sbCA/IHRoaXMuc2Nyb2xsRGlzcGF0Y2hlci5zY3JvbGxlZCgpIDogTkVWRVIpO1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICAjcG9wb3ZlclxuICAgIGNsYXNzPVwia2JxLXBvcG92ZXJcIlxuICAgIFtjZGtUcmFwRm9jdXNdPVwiaXNUcmFwRm9jdXNcIlxuICAgIFtuZ0NsYXNzXT1cImNsYXNzTWFwXCJcbiAgICAoQHN0YXRlLmRvbmUpPVwiYW5pbWF0aW9uRG9uZSgkZXZlbnQpXCJcbiAgICAoQHN0YXRlLnN0YXJ0KT1cImFuaW1hdGlvblN0YXJ0KClcIlxuICAgIFtAc3RhdGVdPVwidmlzaWJpbGl0eVwiXG4+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImticS1wb3BvdmVyX19jb250YWluZXJcIlxuICAgICAgICBbY2xhc3Mua2JxLXBvcG92ZXJfX2NvbnRhaW5lcl93aXRoLWZvb3Rlcl09XCJmb290ZXJcIlxuICAgICAgICBbY2xhc3Mua2JxLXBvcG92ZXJfX2NvbnRhaW5lcl93aXRoLWhlYWRlcl09XCJoZWFkZXJcIlxuICAgID5cbiAgICAgICAgQGlmIChoZWFkZXIpIHtcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImticS1wb3BvdmVyX19oZWFkZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5rYnEtcG9wb3Zlcl9faGVhZGVyX3RvcC1vdmVyZmxvd109XCJpc0NvbnRlbnRUb3BPdmVyZmxvd1wiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmticS1wb3BvdmVyX19oZWFkZXJfd2l0aC1jbG9zZS1idXR0b25dPVwiaGFzQ2xvc2VCdXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIEBpZiAoaXNUZW1wbGF0ZVJlZihoZWFkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueShoZWFkZXIpXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICghaXNUZW1wbGF0ZVJlZihoZWFkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9faGVhZGVyLXRleHRcIj57eyBoZWFkZXIgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoY29udGVudCkge1xuICAgICAgICAgICAgPGRpdiAjcG9wb3ZlckNvbnRlbnQgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fY29udGVudCBrYnEtc2Nyb2xsYmFyXCIgKGNka09ic2VydmVDb250ZW50KT1cIm9uQ29udGVudENoYW5nZSgpXCI+XG4gICAgICAgICAgICAgICAgQGlmIChoYXNDbG9zZUJ1dHRvbiAmJiAhaGVhZGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fY2xvc2UtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY2xvc2VCdXR0b25cIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChpc1RlbXBsYXRlUmVmKGNvbnRlbnQpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueShjb250ZW50KVwiIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoIWlzVGVtcGxhdGVSZWYoY29udGVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdj57eyBjb250ZW50IH19PC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGZvb3Rlcikge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1wb3BvdmVyX19mb290ZXJcIiBbY2xhc3Mua2JxLXBvcG92ZXJfX2Zvb3Rlcl9ib3R0b20tb3ZlcmZsb3ddPVwiaXNDb250ZW50Qm90dG9tT3ZlcmZsb3dcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGlzVGVtcGxhdGVSZWYoZm9vdGVyKSkge1xuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIiRhbnkoZm9vdGVyKVwiIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoIWlzVGVtcGxhdGVSZWYoZm9vdGVyKSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2Pnt7IGZvb3RlciB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKGhhc0Nsb3NlQnV0dG9uICYmIGhlYWRlcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2Nsb3NlLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNsb3NlQnV0dG9uXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPG5nLXRlbXBsYXRlICNjbG9zZUJ1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1wb3BvdmVyX19jbG9zZVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBrYnEtYnV0dG9uIGNsYXNzPVwia2JxLWJ1dHRvbl90cmFuc3BhcmVudFwiIFtjb2xvcl09XCJjb21wb25lbnRDb2xvcnMuQ29udHJhc3RcIiAoY2xpY2spPVwiaGlkZSgwKVwiPlxuICAgICAgICAgICAgICAgIDxpIGticS1pY29uPVwia2JxLXhtYXJrXzE2XCIgW2NvbG9yXT1cImNvbXBvbmVudENvbG9ycy5Db250cmFzdFwiPjwvaT5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgQGlmIChhcnJvdykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2Fycm93XCI+PC9kaXY+XG4gICAgfVxuPC9kaXY+XG4iXX0=
356
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUdILE9BQU8sRUFHVixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFHSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixNQUFNLEVBQ04sZUFBZSxFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUixlQUFlLEVBQ2YsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZixVQUFVLEVBQ1YsYUFBYSxFQUNiLGlCQUFpQixFQUNwQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFFNUQsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUM7QUFjbEMsTUFBTSxP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QyxxQkFBcUI7Z0JBVXhCLHdCQUF3QjtzQkFEM0IsS0FBSzt1QkFBQyw2QkFBNkI7Z0JBVWhDLFdBQVc7c0JBRGQsS0FBSztnQkFZRixNQUFNO3NCQURULEtBQUs7dUJBQUMsa0JBQWtCO2dCQWNyQixPQUFPO3NCQURWLEtBQUs7dUJBQUMsbUJBQW1CO2dCQVl0QixNQUFNO3NCQURULEtBQUs7dUJBQUMsa0JBQWtCO2dCQWNyQixRQUFRO3NCQURYLEtBQUs7dUJBQUMsb0JBQW9CO2dCQWN2QixPQUFPO3NCQURWLEtBQUs7dUJBQUMsWUFBWTtnQkFrQmYsSUFBSTtzQkFEUCxLQUFLO3VCQUFDLGdCQUFnQjtnQkFrQm5CLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxpQkFBaUI7Z0JBWXBCLGNBQWM7c0JBRGpCLEtBQUs7Z0JBZ0JGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBZUcsYUFBYTtzQkFBckIsS0FBSztnQkFHNEQsS0FBSztzQkFBdEUsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRUUsTUFBTTtzQkFBdkUsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUUzQixlQUFlO3NCQUFuRCxNQUFNO3VCQUFDLDJCQUEyQjtnQkFFQSxhQUFhO3NCQUEvQyxNQUFNO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka1RyYXBGb2N1cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQge1xuICAgIENka1Njcm9sbGFibGUsXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheUNvbmZpZyxcbiAgICBTY3JvbGxTdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgaW5qZWN0LFxuICAgIG51bWJlckF0dHJpYnV0ZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7XG4gICAgS2JxQ29tcG9uZW50Q29sb3JzLFxuICAgIEticVBvcFVwLFxuICAgIEticVBvcFVwVHJpZ2dlcixcbiAgICBQT1NJVElPTl9UT19DU1NfTUFQLFxuICAgIFBvcFVwUGxhY2VtZW50cyxcbiAgICBQb3BVcFNpemVzLFxuICAgIFBvcFVwVHJpZ2dlcnMsXG4gICAgYXBwbHlQb3B1cE1hcmdpbnNcbn0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgTkVWRVIsIGZyb21FdmVudCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGticVBvcG92ZXJBbmltYXRpb25zIH0gZnJvbSAnLi9wb3BvdmVyLWFuaW1hdGlvbnMnO1xuXG5jb25zdCBkZWZhdWx0T2Zmc2V0WVdpdGhBcnJvdyA9IDg7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna2JxLXBvcG92ZXItY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gICAgc3R5bGVVcmxzOiBbJy4vcG9wb3Zlci5zY3NzJywgJy4vcG9wb3Zlci10b2tlbnMuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhrZXlkb3duLmVzYyknOiAnb25Fc2NhcGUoKSdcbiAgICB9LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgYW5pbWF0aW9uczogW2ticVBvcG92ZXJBbmltYXRpb25zLnBvcG92ZXJTdGF0ZV1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUG9wb3ZlckNvbXBvbmVudCBleHRlbmRzIEticVBvcFVwIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcHJlZml4ID0gJ2ticS1wb3BvdmVyJztcblxuICAgIGhlYWRlcjogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgICBmb290ZXI6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICB0cmlnZ2VyOiBLYnFQb3BvdmVyVHJpZ2dlcjtcblxuICAgIGlzVHJhcEZvY3VzOiBib29sZWFuID0gZmFsc2U7XG4gICAgaGFzQ2xvc2VCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoJ3BvcG92ZXJDb250ZW50JykgcG9wb3ZlckNvbnRlbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ3BvcG92ZXInKSBlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoQ2RrVHJhcEZvY3VzKSBjZGtUcmFwRm9jdXM6IENka1RyYXBGb2N1cztcblxuICAgIHByaXZhdGUgZGVib3VuY2VUaW1lID0gMTU7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIGlzQ29udGVudFRvcE92ZXJmbG93OiBib29sZWFuID0gZmFsc2U7XG4gICAgaXNDb250ZW50Qm90dG9tT3ZlcmZsb3c6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnBvcG92ZXJDb250ZW50KSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5jaGVja0NvbnRlbnRPdmVyZmxvdyh0aGlzLnBvcG92ZXJDb250ZW50Lm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgIGZyb21FdmVudCh0aGlzLnBvcG92ZXJDb250ZW50Lm5hdGl2ZUVsZW1lbnQsICdzY3JvbGwnKVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuZGVib3VuY2VUaW1lKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tDb250ZW50T3ZlcmZsb3coZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuY2RrVHJhcEZvY3VzLmZvY3VzVHJhcC5mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KCk7XG4gICAgICAgIHRoaXMudmlzaWJsZUNoYW5nZS5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5vZmZzZXQgIT09IG51bGwgJiYgc3RhdGUpIHtcbiAgICAgICAgICAgICAgICBhcHBseVBvcHVwTWFyZ2lucyhcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlcixcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlZml4LFxuICAgICAgICAgICAgICAgICAgICBgJHt0aGlzLm9mZnNldCEudG9TdHJpbmcoKX1weGBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNvbnRlbnRDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuY2hlY2tDb250ZW50T3ZlcmZsb3codGhpcy5wb3BvdmVyQ29udGVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBjaGVja0NvbnRlbnRPdmVyZmxvdyhjb250ZW50RWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3QgeyBzY3JvbGxUb3AsIG9mZnNldEhlaWdodCwgc2Nyb2xsSGVpZ2h0IH0gPSBjb250ZW50RWxlbWVudDtcblxuICAgICAgICB0aGlzLmlzQ29udGVudFRvcE92ZXJmbG93ID0gc2Nyb2xsVG9wID4gMDtcblxuICAgICAgICB0aGlzLmlzQ29udGVudEJvdHRvbU92ZXJmbG93ID0gc2Nyb2xsVG9wICsgb2Zmc2V0SGVpZ2h0IDwgc2Nyb2xsSGVpZ2h0O1xuXG4gICAgICAgIHN1cGVyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVDbGFzc01hcChwbGFjZW1lbnQ6IHN0cmluZywgY3VzdG9tQ2xhc3M6IHN0cmluZywgc2l6ZTogUG9wVXBTaXplcykge1xuICAgICAgICBzdXBlci51cGRhdGVDbGFzc01hcChwbGFjZW1lbnQsIGN1c3RvbUNsYXNzLCB7IFtgJHt0aGlzLnByZWZpeH1fJHtzaXplfWBdOiAhIXNpemUgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlVHJhcEZvY3VzKGlzVHJhcEZvY3VzOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNUcmFwRm9jdXMgPSBpc1RyYXBGb2N1cztcbiAgICB9XG5cbiAgICBvbkVzY2FwZSgpIHtcbiAgICAgICAgdGhpcy5oaWRlKDApO1xuXG4gICAgICAgIHRoaXMudHJpZ2dlci5mb2N1cygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjb21wb25lbnRDb2xvcnMgPSBLYnFDb21wb25lbnRDb2xvcnM7XG59XG5cbmV4cG9ydCBjb25zdCBLQlFfUE9QT1ZFUl9TQ1JPTExfU1RSQVRFR1kgPSBuZXcgSW5qZWN0aW9uVG9rZW48KCkgPT4gU2Nyb2xsU3RyYXRlZ3k+KCdrYnEtcG9wb3Zlci1zY3JvbGwtc3RyYXRlZ3knKTtcblxuLyoqIEBkb2NzLXByaXZhdGUgKi9cbmV4cG9ydCBmdW5jdGlvbiBrYnFQb3BvdmVyU2Nyb2xsU3RyYXRlZ3lGYWN0b3J5KG92ZXJsYXk6IE92ZXJsYXkpOiAoKSA9PiBTY3JvbGxTdHJhdGVneSB7XG4gICAgcmV0dXJuICgpID0+IG92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKHsgc2Nyb2xsVGhyb3R0bGU6IDIwIH0pO1xufVxuXG4vKiogQGRvY3MtcHJpdmF0ZSAqL1xuZXhwb3J0IGNvbnN0IEtCUV9QT1BPVkVSX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZX1BST1ZJREVSID0ge1xuICAgIHByb3ZpZGU6IEtCUV9QT1BPVkVSX1NDUk9MTF9TVFJBVEVHWSxcbiAgICBkZXBzOiBbT3ZlcmxheV0sXG4gICAgdXNlRmFjdG9yeToga2JxUG9wb3ZlclNjcm9sbFN0cmF0ZWd5RmFjdG9yeVxufTtcblxuLyoqIENyZWF0ZXMgYW4gZXJyb3IgdG8gYmUgdGhyb3duIGlmIHRoZSB1c2VyIHN1cHBsaWVkIGFuIGludmFsaWQgcG9wb3ZlciBwb3NpdGlvbi4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRLYnFQb3BvdmVySW52YWxpZFBvc2l0aW9uRXJyb3IocG9zaXRpb246IHN0cmluZykge1xuICAgIHJldHVybiBFcnJvcihgS2JxUG9wb3ZlciBwb3NpdGlvbiBcIiR7cG9zaXRpb259XCIgaXMgaW52YWxpZC5gKTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdba2JxUG9wb3Zlcl0nLFxuICAgIGV4cG9ydEFzOiAna2JxUG9wb3ZlcicsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLmticS1wb3BvdmVyX29wZW5dJzogJ2lzT3BlbicsXG4gICAgICAgICdbY2xhc3Mua2JxLWFjdGl2ZV0nOiAnaGFzQ2xpY2tUcmlnZ2VyICYmIGlzT3BlbicsXG4gICAgICAgICcoa2V5ZG93biknOiAnaGFuZGxlS2V5ZG93bigkZXZlbnQpJyxcbiAgICAgICAgJyh0b3VjaGVuZCknOiAnaGFuZGxlVG91Y2hlbmQoKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVBvcG92ZXJUcmlnZ2VyIGV4dGVuZHMgS2JxUG9wVXBUcmlnZ2VyPEticVBvcG92ZXJDb21wb25lbnQ+IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgcHJvdGVjdGVkIHNjcm9sbFN0cmF0ZWd5OiAoKSA9PiBTY3JvbGxTdHJhdGVneSA9IGluamVjdChLQlFfUE9QT1ZFUl9TQ1JPTExfU1RSQVRFR1kpO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyVmlzaWJsZScpXG4gICAgZ2V0IHBvcG92ZXJWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy52aXNpYmxlO1xuICAgIH1cblxuICAgIHNldCBwb3BvdmVyVmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBzdXBlci51cGRhdGVWaXNpYmxlKHZhbHVlKTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ2ticVBvcG92ZXJQbGFjZW1lbnQnKVxuICAgIGdldCBwb3BvdmVyUGxhY2VtZW50KCk6IFBvcFVwUGxhY2VtZW50cyB7XG4gICAgICAgIHJldHVybiB0aGlzLnBsYWNlbWVudDtcbiAgICB9XG5cbiAgICBzZXQgcG9wb3ZlclBsYWNlbWVudCh2YWx1ZTogUG9wVXBQbGFjZW1lbnRzKSB7XG4gICAgICAgIHN1cGVyLnVwZGF0ZVBsYWNlbWVudCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyUGxhY2VtZW50UHJpb3JpdHknKVxuICAgIGdldCBwb3BvdmVyUGxhY2VtZW50UHJpb3JpdHkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBsYWNlbWVudFByaW9yaXR5O1xuICAgIH1cblxuICAgIHNldCBwb3BvdmVyUGxhY2VtZW50UHJpb3JpdHkodmFsdWUpIHtcbiAgICAgICAgc3VwZXIudXBkYXRlUGxhY2VtZW50UHJpb3JpdHkodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc0JhY2tkcm9wKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzQmFja2Ryb3A7XG4gICAgfVxuXG4gICAgc2V0IGhhc0JhY2tkcm9wKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2hhc0JhY2tkcm9wID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9oYXNCYWNrZHJvcDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVySGVhZGVyJylcbiAgICBnZXQgaGVhZGVyKCk6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGVhZGVyO1xuICAgIH1cblxuICAgIHNldCBoZWFkZXIodmFsdWU6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICAgICAgdGhpcy5faGVhZGVyID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVEYXRhKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGVhZGVyOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQElucHV0KCdrYnFQb3BvdmVyQ29udGVudCcpXG4gICAgZ2V0IGNvbnRlbnQoKTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb250ZW50O1xuICAgIH1cblxuICAgIHNldCBjb250ZW50KHZhbHVlOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gICAgICAgIHRoaXMuX2NvbnRlbnQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ2ticVBvcG92ZXJGb290ZXInKVxuICAgIGdldCBmb290ZXIoKTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb290ZXI7XG4gICAgfVxuXG4gICAgc2V0IGZvb3Rlcih2YWx1ZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55Pikge1xuICAgICAgICB0aGlzLl9mb290ZXIgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLnVwZGF0ZURhdGEoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9mb290ZXI6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoJ2ticVBvcG92ZXJEaXNhYmxlZCcpXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgc2V0IGRpc2FibGVkKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCdrYnFUcmlnZ2VyJylcbiAgICBnZXQgdHJpZ2dlcigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHJpZ2dlcjtcbiAgICB9XG5cbiAgICBzZXQgdHJpZ2dlcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlciA9IHZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlciA9IGAke1BvcFVwVHJpZ2dlcnMuQ2xpY2t9LCAke1BvcFVwVHJpZ2dlcnMuS2V5ZG93bn1gO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbml0TGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdHJpZ2dlcjogc3RyaW5nID0gYCR7UG9wVXBUcmlnZ2Vycy5DbGlja30sICR7UG9wVXBUcmlnZ2Vycy5LZXlkb3dufWA7XG5cbiAgICBASW5wdXQoJ2ticVBvcG92ZXJTaXplJylcbiAgICBnZXQgc2l6ZSgpOiBQb3BVcFNpemVzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gICAgfVxuXG4gICAgc2V0IHNpemUodmFsdWU6IFBvcFVwU2l6ZXMpIHtcbiAgICAgICAgaWYgKFtQb3BVcFNpemVzLlNtYWxsLCBQb3BVcFNpemVzLk1lZGl1bSwgUG9wVXBTaXplcy5MYXJnZV0uaW5jbHVkZXModmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLl9zaXplID0gdmFsdWU7XG5cbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ2xhc3NNYXAoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NpemUgPSBQb3BVcFNpemVzLk1lZGl1bTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX3NpemU6IFBvcFVwU2l6ZXMgPSBQb3BVcFNpemVzLk1lZGl1bTtcblxuICAgIEBJbnB1dCgna2JxUG9wb3ZlckNsYXNzJylcbiAgICBnZXQgY3VzdG9tQ2xhc3MoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jdXN0b21DbGFzcztcbiAgICB9XG5cbiAgICBzZXQgY3VzdG9tQ2xhc3ModmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9jdXN0b21DbGFzcyA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlQ2xhc3NNYXAoKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNDbG9zZUJ1dHRvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc0Nsb3NlQnV0dG9uO1xuICAgIH1cbiAgICBzZXQgaGFzQ2xvc2VCdXR0b24odmFsdWUpIHtcbiAgICAgICAgdGhpcy5faGFzQ2xvc2VCdXR0b24gPSB2YWx1ZTtcbiAgICAgICAgdGhpcy51cGRhdGVEYXRhKCk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc0Nsb3NlQnV0dG9uID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBDb250cm9scyB0aGUgYmVoYXZpb3Igb2YgY2xvc2luZyB0aGUgY29tcG9uZW50IG9uIHNjcm9sbC5cbiAgICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBgZmFsc2VgLlxuICAgICAqIFVzZSBDbG9zZVNjcm9sbFN0cmF0ZWd5IGFzIGFsdGVybmF0aXZlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBnZXQgY2xvc2VPblNjcm9sbCgpOiBib29sZWFuIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jbG9zZU9uU2Nyb2xsO1xuICAgIH1cblxuICAgIHNldCBjbG9zZU9uU2Nyb2xsKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2Nsb3NlT25TY3JvbGwgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2Nsb3NlT25TY3JvbGw6IGJvb2xlYW4gfCBudWxsID0gbnVsbDtcblxuICAgIGdldCBoYXNDbGlja1RyaWdnZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyaWdnZXIuaW5jbHVkZXMoUG9wVXBUcmlnZ2Vycy5DbGljayk7XG4gICAgfVxuXG4gICAgQElucHV0KCkgYmFja2Ryb3BDbGFzczogc3RyaW5nID0gJ2Nkay1vdmVybGF5LXRyYW5zcGFyZW50LWJhY2tkcm9wJztcblxuICAgIC8vIEBUT0RPIGFkZCByZWFsaXphdGlvbiBmb3IgYXJyb3cgKCNEUy0yNTE0KVxuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUG9wb3ZlckFycm93JywgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGFycm93OiBib29sZWFuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCh7IGFsaWFzOiAna2JxUG9wb3Zlck9mZnNldCcsIHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIG9mZnNldDogbnVtYmVyIHwgbnVsbCA9IGRlZmF1bHRPZmZzZXRZV2l0aEFycm93O1xuXG4gICAgQE91dHB1dCgna2JxUG9wb3ZlclBsYWNlbWVudENoYW5nZScpIHBsYWNlbWVudENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoJ2ticVBvcG92ZXJWaXNpYmxlQ2hhbmdlJykgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIHByb3RlY3RlZCBvcmlnaW5TZWxlY3RvciA9ICcua2JxLXBvcG92ZXInO1xuXG4gICAgcHJvdGVjdGVkIGdldCBvdmVybGF5Q29uZmlnKCk6IE92ZXJsYXlDb25maWcge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgcGFuZWxDbGFzczogJ2ticS1wb3BvdmVyX19wYW5lbCcsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogdGhpcy5oYXNCYWNrZHJvcCxcbiAgICAgICAgICAgIGJhY2tkcm9wQ2xhc3M6IHRoaXMuYmFja2Ryb3BDbGFzc1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY2xvc2VPblNjcm9sbCA9PT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyLnNjcm9sbGVkKCkuc3Vic2NyaWJlKChzY3JvbGxhYmxlOiBDZGtTY3JvbGxhYmxlIHwgdm9pZCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghc2Nyb2xsYWJsZT8uZ2V0RWxlbWVudFJlZigpLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdrYnEtaGlkZS1uZXN0ZWQtcG9wdXAnKSkgcmV0dXJuO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgcGFyZW50UmVjdHMgPSBzY3JvbGxhYmxlLmdldEVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGNoaWxkUmVjdHMgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgICAgICAgICAgICAgIGlmIChjaGlsZFJlY3RzLmJvdHRvbSA8IHBhcmVudFJlY3RzLnRvcCB8fCBjaGlsZFJlY3RzLnRvcCA+IHBhcmVudFJlY3RzLmJvdHRvbSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmhpZGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZURhdGEoKSB7XG4gICAgICAgIGlmICghdGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS5oZWFkZXIgPSB0aGlzLmhlYWRlcjtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5jb250ZW50ID0gdGhpcy5jb250ZW50O1xuICAgICAgICB0aGlzLmluc3RhbmNlLmFycm93ID0gdGhpcy5hcnJvdztcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5vZmZzZXQgPSB0aGlzLm9mZnNldDtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5mb290ZXIgPSB0aGlzLmZvb3RlcjtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5oYXNDbG9zZUJ1dHRvbiA9IHRoaXMuaGFzQ2xvc2VCdXR0b247XG5cbiAgICAgICAgdGhpcy5pbnN0YW5jZS51cGRhdGVUcmFwRm9jdXModGhpcy50cmlnZ2VyICE9PSBQb3BVcFRyaWdnZXJzLkZvY3VzKTtcblxuICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlUG9zaXRpb24odHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogVXBkYXRlcyB0aGUgcG9zaXRpb24gb2YgdGhlIGN1cnJlbnQgcG9wb3Zlci4gKi9cbiAgICB1cGRhdGVQb3NpdGlvbihyZWFwcGx5UG9zaXRpb246IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoKTtcblxuICAgICAgICBjb25zdCBwb3NpdGlvbiA9ICh0aGlzLm92ZXJsYXlSZWYuZ2V0Q29uZmlnKCkucG9zaXRpb25TdHJhdGVneSBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyh0aGlzLmdldEFkanVzdGVkUG9zaXRpb25zKCkpXG4gICAgICAgICAgICAud2l0aFB1c2godHJ1ZSk7XG5cbiAgICAgICAgaWYgKHJlYXBwbHlQb3NpdGlvbikge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiBwb3NpdGlvbi5yZWFwcGx5TGFzdFBvc2l0aW9uKCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0T3ZlcmxheUhhbmRsZUNvbXBvbmVudFR5cGUoKTogVHlwZTxLYnFQb3BvdmVyQ29tcG9uZW50PiB7XG4gICAgICAgIHJldHVybiBLYnFQb3BvdmVyQ29tcG9uZW50O1xuICAgIH1cblxuICAgIHVwZGF0ZUNsYXNzTWFwKG5ld1BsYWNlbWVudDogc3RyaW5nID0gdGhpcy5wbGFjZW1lbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmluc3RhbmNlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluc3RhbmNlLnVwZGF0ZUNsYXNzTWFwKFBPU0lUSU9OX1RPX0NTU19NQVBbbmV3UGxhY2VtZW50XSwgdGhpcy5jdXN0b21DbGFzcywgdGhpcy5zaXplKTtcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBjbG9zaW5nQWN0aW9uc0ZvckNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5oYXNDbGlja1RyaWdnZXIpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHRDbG9zaW5nQWN0aW9ucygpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIGRlZmF1bHRDbG9zaW5nQWN0aW9ucygpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheVJlZiEuYmFja2Ryb3BDbGljaygpLFxuICAgICAgICAgICAgdGhpcy5oYXNCYWNrZHJvcCA/IE5FVkVSIDogdGhpcy5vdmVybGF5UmVmIS5vdXRzaWRlUG9pbnRlckV2ZW50cygpXG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgY2xvc2luZ0FjdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiBtZXJnZSguLi50aGlzLmNsb3NpbmdBY3Rpb25zRm9yQ2xpY2soKSwgdGhpcy5jbG9zZU9uU2Nyb2xsID8gdGhpcy5zY3JvbGxEaXNwYXRjaGVyLnNjcm9sbGVkKCkgOiBORVZFUik7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICNwb3BvdmVyXG4gICAgY2xhc3M9XCJrYnEtcG9wb3ZlclwiXG4gICAgW2Nka1RyYXBGb2N1c109XCJpc1RyYXBGb2N1c1wiXG4gICAgW25nQ2xhc3NdPVwiY2xhc3NNYXBcIlxuICAgIChAc3RhdGUuZG9uZSk9XCJhbmltYXRpb25Eb25lKCRldmVudClcIlxuICAgIChAc3RhdGUuc3RhcnQpPVwiYW5pbWF0aW9uU3RhcnQoKVwiXG4gICAgW0BzdGF0ZV09XCJ2aXNpYmlsaXR5XCJcbj5cbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwia2JxLXBvcG92ZXJfX2NvbnRhaW5lclwiXG4gICAgICAgIFtjbGFzcy5rYnEtcG9wb3Zlcl9fY29udGFpbmVyX3dpdGgtZm9vdGVyXT1cImZvb3RlclwiXG4gICAgICAgIFtjbGFzcy5rYnEtcG9wb3Zlcl9fY29udGFpbmVyX3dpdGgtaGVhZGVyXT1cImhlYWRlclwiXG4gICAgPlxuICAgICAgICBAaWYgKGhlYWRlcikge1xuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwia2JxLXBvcG92ZXJfX2hlYWRlclwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmticS1wb3BvdmVyX19oZWFkZXJfdG9wLW92ZXJmbG93XT1cImlzQ29udGVudFRvcE92ZXJmbG93XCJcbiAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLXBvcG92ZXJfX2hlYWRlcl93aXRoLWNsb3NlLWJ1dHRvbl09XCJoYXNDbG9zZUJ1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgQGlmIChpc1RlbXBsYXRlUmVmKGhlYWRlcikpIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KGhlYWRlcilcIiAvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKCFpc1RlbXBsYXRlUmVmKGhlYWRlcikpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1wb3BvdmVyX19oZWFkZXItdGV4dFwiPnt7IGhlYWRlciB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChjb250ZW50KSB7XG4gICAgICAgICAgICA8ZGl2ICNwb3BvdmVyQ29udGVudCBjbGFzcz1cImticS1wb3BvdmVyX19jb250ZW50IGticS1zY3JvbGxiYXJcIiAoY2RrT2JzZXJ2ZUNvbnRlbnQpPVwib25Db250ZW50Q2hhbmdlKClcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGhhc0Nsb3NlQnV0dG9uICYmICFoZWFkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1wb3BvdmVyX19jbG9zZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjbG9zZUJ1dHRvblwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKGlzVGVtcGxhdGVSZWYoY29udGVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KGNvbnRlbnQpXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICghaXNUZW1wbGF0ZVJlZihjb250ZW50KSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2Pnt7IGNvbnRlbnQgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAoZm9vdGVyKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2Zvb3RlclwiIFtjbGFzcy5rYnEtcG9wb3Zlcl9fZm9vdGVyX2JvdHRvbS1vdmVyZmxvd109XCJpc0NvbnRlbnRCb3R0b21PdmVyZmxvd1wiPlxuICAgICAgICAgICAgICAgIEBpZiAoaXNUZW1wbGF0ZVJlZihmb290ZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiJGFueShmb290ZXIpXCIgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmICghaXNUZW1wbGF0ZVJlZihmb290ZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+e3sgZm9vdGVyIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoaGFzQ2xvc2VCdXR0b24gJiYgaGVhZGVyKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fY2xvc2UtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY2xvc2VCdXR0b25cIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICA8bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXBvcG92ZXJfX2Nsb3NlXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGticS1idXR0b24gY2xhc3M9XCJrYnEtYnV0dG9uX3RyYW5zcGFyZW50XCIgW2NvbG9yXT1cImNvbXBvbmVudENvbG9ycy5Db250cmFzdFwiIChjbGljayk9XCJoaWRlKDApXCI+XG4gICAgICAgICAgICAgICAgPGkga2JxLWljb249XCJrYnEteG1hcmtfMTZcIiBbY29sb3JdPVwiY29tcG9uZW50Q29sb3JzLkNvbnRyYXN0XCI+PC9pPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICBAaWYgKGFycm93KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcG9wb3Zlcl9fYXJyb3dcIj48L2Rpdj5cbiAgICB9XG48L2Rpdj5cbiJdfQ==
@@ -1,17 +1,9 @@
1
- import { ChangeDetectionStrategy, Component, Directive, ElementRef, Input, ViewEncapsulation } from '@angular/core';
2
- import { KbqComponentColors, mixinColor } from '@koobiq/components/core';
1
+ import { ChangeDetectionStrategy, Component, Directive, Input, ViewEncapsulation } from '@angular/core';
2
+ import { KbqColorDirective, KbqComponentColors } from '@koobiq/components/core';
3
3
  import * as i0 from "@angular/core";
4
4
  let idIterator = 0;
5
5
  const MIN_PERCENT = 0;
6
6
  const MAX_PERCENT = 100;
7
- /** @docs-private */
8
- export class KbqProgressBarBase {
9
- constructor(elementRef) {
10
- this.elementRef = elementRef;
11
- }
12
- }
13
- /** @docs-private */
14
- export const KbqProgressBarMixinBase = mixinColor(KbqProgressBarBase, KbqComponentColors.Theme);
15
7
  export class KbqProgressBarText {
16
8
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBarText, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
9
  /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqProgressBarText, selector: "[kbq-progress-bar-text]", host: { classAttribute: "kbq-progress-bar-text" }, ngImport: i0 }); }
@@ -38,32 +30,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
38
30
  }
39
31
  }]
40
32
  }] });
41
- export class KbqProgressBar extends KbqProgressBarMixinBase {
42
- constructor(elementRef) {
43
- super(elementRef);
33
+ export class KbqProgressBar extends KbqColorDirective {
34
+ get percentage() {
35
+ return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value));
36
+ }
37
+ constructor() {
38
+ super();
44
39
  this.id = `kbq-progress-bar-${idIterator++}`;
45
40
  this.value = 0;
46
41
  this.mode = 'determinate';
42
+ this.color = KbqComponentColors.Theme;
47
43
  }
48
- get percentage() {
49
- return Math.max(MIN_PERCENT, Math.min(MAX_PERCENT, this.value));
50
- }
51
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
52
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqProgressBar, selector: "kbq-progress-bar", inputs: { color: "color", id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id", "class.kbq-progress-bar_determinate": "mode === \"determinate\"", "class.kbq-progress-bar_indeterminate": "mode === \"indeterminate\"" }, classAttribute: "kbq-progress-bar" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
44
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqProgressBar, selector: "kbq-progress-bar", inputs: { id: "id", value: "value", mode: "mode" }, host: { properties: { "attr.id": "id", "class.kbq-progress-bar_determinate": "mode === \"determinate\"", "class.kbq-progress-bar_indeterminate": "mode === \"indeterminate\"" }, classAttribute: "kbq-progress-bar" }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
53
46
  }
54
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqProgressBar, decorators: [{
55
48
  type: Component,
56
- args: [{ selector: 'kbq-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: ['color'], host: {
49
+ args: [{ selector: 'kbq-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
57
50
  '[attr.id]': 'id',
58
51
  class: 'kbq-progress-bar',
59
52
  '[class.kbq-progress-bar_determinate]': 'mode === "determinate"',
60
53
  '[class.kbq-progress-bar_indeterminate]': 'mode === "indeterminate"'
61
54
  }, template: "<ng-content select=\"[kbq-progress-bar-text]\" />\n\n<div class=\"kbq-progress-bar__inner\" [id]=\"id\">\n @switch (mode) {\n @case ('indeterminate') {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_indeterminate\"></div>\n }\n @default {\n <div class=\"kbq-progress-bar__line kbq-progress-bar__line_determinate\" [style.width.%]=\"percentage\"></div>\n }\n }\n</div>\n\n<ng-content select=\"[kbq-progress-bar-caption]\" />\n", styles: ["@keyframes kbq-progress-bar-indeterminate{0%{width:25%;transform:translate(-150%)}to{width:40%;transform:translate(250%)}}.kbq-progress-bar{display:block;overflow:hidden}.kbq-progress-bar .kbq-progress-bar-text{margin-bottom:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar-caption{margin-top:var(--kbq-progress-bar-size-container-content-gap)}.kbq-progress-bar .kbq-progress-bar__inner{overflow:hidden;height:var(--kbq-progress-bar-size-bar-height);border-radius:var(--kbq-progress-bar-size-container-border-radius)}.kbq-progress-bar .kbq-progress-bar__line{height:100%;transform-origin:top left;border-radius:var(--kbq-progress-bar-size-bar-border-radius)}.kbq-progress-bar.kbq-progress-bar_determinate .kbq-progress-bar__line{transition:width .3s}.kbq-progress-bar.kbq-progress-bar_indeterminate .kbq-progress-bar__line{animation:kbq-progress-bar-indeterminate 2.1s cubic-bezier(.455,.03,.515,.955) infinite}.kbq-progress-bar.kbq-theme .kbq-progress-bar__inner{background-color:var(--kbq-progress-bar-bar-background)}.kbq-progress-bar.kbq-theme .kbq-progress-bar__line{background-color:var(--kbq-progress-bar-bar-foreground)}.kbq-progress-bar-text{color:var(--kbq-progress-bar-text-color)}.kbq-progress-bar-caption{color:var(--kbq-progress-bar-caption-color)}.kbq-progress-bar-text{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-progress-bar-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-progress-bar{--kbq-progress-bar-size-container-content-gap: var(--kbq-size-s);--kbq-progress-bar-size-container-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-size-bar-height: var(--kbq-size-xxs);--kbq-progress-bar-size-bar-border-radius: var(--kbq-size-3xs);--kbq-progress-bar-bar-background: var(--kbq-background-contrast-fade);--kbq-progress-bar-bar-foreground: var(--kbq-icon-theme);--kbq-progress-bar-text-color: var(--kbq-foreground-contrast);--kbq-progress-bar-caption-color: var(--kbq-foreground-contrast-secondary)}\n"] }]
62
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { id: [{
55
+ }], ctorParameters: () => [], propDecorators: { id: [{
63
56
  type: Input
64
57
  }], value: [{
65
58
  type: Input
66
59
  }], mode: [{
67
60
  type: Input
68
61
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwSCxPQUFPLEVBQTBCLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUlqRyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFFbkIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQztBQUV4QixvQkFBb0I7QUFDcEIsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQixZQUFtQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztDQUNoRDtBQUVELG9CQUFvQjtBQUNwQixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBNkMsVUFBVSxDQUN2RixrQkFBa0IsRUFDbEIsa0JBQWtCLENBQUMsS0FBSyxDQUMzQixDQUFDO0FBUUYsTUFBTSxPQUFPLGtCQUFrQjtpSUFBbEIsa0JBQWtCO3FIQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBTjlCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSx1QkFBdUI7cUJBQ2pDO2lCQUNKOztBQVNELE1BQU0sT0FBTyxxQkFBcUI7aUlBQXJCLHFCQUFxQjtxSEFBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQU5qQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsMEJBQTBCO3FCQUNwQztpQkFDSjs7QUFpQkQsTUFBTSxPQUFPLGNBQWUsU0FBUSx1QkFBdUI7SUFLdkQsWUFBWSxVQUFzQjtRQUM5QixLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFMYixPQUFFLEdBQVcsb0JBQW9CLFVBQVUsRUFBRSxFQUFFLENBQUM7UUFDaEQsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixTQUFJLEdBQW9CLGFBQWEsQ0FBQztJQUkvQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO2lJQVhRLGNBQWM7cUhBQWQsY0FBYywwV0NuRDNCLGlmQWNBOzsyRkRxQ2EsY0FBYztrQkFkMUIsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxVQUM3QixDQUFDLE9BQU8sQ0FBQyxRQUNYO3dCQUNGLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixLQUFLLEVBQUUsa0JBQWtCO3dCQUN6QixzQ0FBc0MsRUFBRSx3QkFBd0I7d0JBQ2hFLHdDQUF3QyxFQUFFLDBCQUEwQjtxQkFDdkU7K0VBR1EsRUFBRTtzQkFBVixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQ29sb3IsIENhbkNvbG9yQ3RvciwgS2JxQ29tcG9uZW50Q29sb3JzLCBtaXhpbkNvbG9yIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBQcm9ncmVzc0Jhck1vZGUgPSAnZGV0ZXJtaW5hdGUnIHwgJ2luZGV0ZXJtaW5hdGUnO1xuXG5sZXQgaWRJdGVyYXRvciA9IDA7XG5cbmNvbnN0IE1JTl9QRVJDRU5UID0gMDtcbmNvbnN0IE1BWF9QRVJDRU5UID0gMTAwO1xuXG4vKiogQGRvY3MtcHJpdmF0ZSAqL1xuZXhwb3J0IGNsYXNzIEticVByb2dyZXNzQmFyQmFzZSB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG59XG5cbi8qKiBAZG9jcy1wcml2YXRlICovXG5leHBvcnQgY29uc3QgS2JxUHJvZ3Jlc3NCYXJNaXhpbkJhc2U6IENhbkNvbG9yQ3RvciAmIHR5cGVvZiBLYnFQcm9ncmVzc0JhckJhc2UgPSBtaXhpbkNvbG9yKFxuICAgIEticVByb2dyZXNzQmFyQmFzZSxcbiAgICBLYnFDb21wb25lbnRDb2xvcnMuVGhlbWVcbik7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticS1wcm9ncmVzcy1iYXItdGV4dF0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtcHJvZ3Jlc3MtYmFyLXRleHQnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQcm9ncmVzc0JhclRleHQge31cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdba2JxLXByb2dyZXNzLWJhci1jYXB0aW9uXScsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1wcm9ncmVzcy1iYXItY2FwdGlvbidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVByb2dyZXNzQmFyQ2FwdGlvbiB7fVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wcm9ncmVzcy1iYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Byb2dyZXNzLWJhci5zY3NzJywgJy4vcHJvZ3Jlc3MtYmFyLXRva2Vucy5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBpbnB1dHM6IFsnY29sb3InXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICBjbGFzczogJ2ticS1wcm9ncmVzcy1iYXInLFxuICAgICAgICAnW2NsYXNzLmticS1wcm9ncmVzcy1iYXJfZGV0ZXJtaW5hdGVdJzogJ21vZGUgPT09IFwiZGV0ZXJtaW5hdGVcIicsXG4gICAgICAgICdbY2xhc3Mua2JxLXByb2dyZXNzLWJhcl9pbmRldGVybWluYXRlXSc6ICdtb2RlID09PSBcImluZGV0ZXJtaW5hdGVcIidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVByb2dyZXNzQmFyIGV4dGVuZHMgS2JxUHJvZ3Jlc3NCYXJNaXhpbkJhc2UgaW1wbGVtZW50cyBDYW5Db2xvciB7XG4gICAgQElucHV0KCkgaWQ6IHN0cmluZyA9IGBrYnEtcHJvZ3Jlc3MtYmFyLSR7aWRJdGVyYXRvcisrfWA7XG4gICAgQElucHV0KCkgdmFsdWU6IG51bWJlciA9IDA7XG4gICAgQElucHV0KCkgbW9kZTogUHJvZ3Jlc3NCYXJNb2RlID0gJ2RldGVybWluYXRlJztcblxuICAgIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZik7XG4gICAgfVxuXG4gICAgZ2V0IHBlcmNlbnRhZ2UoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KE1JTl9QRVJDRU5ULCBNYXRoLm1pbihNQVhfUEVSQ0VOVCwgdGhpcy52YWx1ZSkpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltrYnEtcHJvZ3Jlc3MtYmFyLXRleHRdXCIgLz5cblxuPGRpdiBjbGFzcz1cImticS1wcm9ncmVzcy1iYXJfX2lubmVyXCIgW2lkXT1cImlkXCI+XG4gICAgQHN3aXRjaCAobW9kZSkge1xuICAgICAgICBAY2FzZSAoJ2luZGV0ZXJtaW5hdGUnKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXByb2dyZXNzLWJhcl9fbGluZSBrYnEtcHJvZ3Jlc3MtYmFyX19saW5lX2luZGV0ZXJtaW5hdGVcIj48L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAZGVmYXVsdCB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLXByb2dyZXNzLWJhcl9fbGluZSBrYnEtcHJvZ3Jlc3MtYmFyX19saW5lX2RldGVybWluYXRlXCIgW3N0eWxlLndpZHRoLiVdPVwicGVyY2VudGFnZVwiPjwvZGl2PlxuICAgICAgICB9XG4gICAgfVxuPC9kaXY+XG5cbjxuZy1jb250ZW50IHNlbGVjdD1cIltrYnEtcHJvZ3Jlc3MtYmFyLWNhcHRpb25dXCIgLz5cbiJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUloRixJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFFbkIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQztBQVF4QixNQUFNLE9BQU8sa0JBQWtCO2lJQUFsQixrQkFBa0I7cUhBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFOOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHVCQUF1QjtxQkFDakM7aUJBQ0o7O0FBU0QsTUFBTSxPQUFPLHFCQUFxQjtpSUFBckIscUJBQXFCO3FIQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSwwQkFBMEI7cUJBQ3BDO2lCQUNKOztBQWdCRCxNQUFNLE9BQU8sY0FBZSxTQUFRLGlCQUFpQjtJQUtqRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDtRQUNJLEtBQUssRUFBRSxDQUFDO1FBVEgsT0FBRSxHQUFXLG9CQUFvQixVQUFVLEVBQUUsRUFBRSxDQUFDO1FBQ2hELFVBQUssR0FBVyxDQUFDLENBQUM7UUFDbEIsU0FBSSxHQUFvQixhQUFhLENBQUM7UUFTM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7SUFDMUMsQ0FBQztpSUFiUSxjQUFjO3FIQUFkLGNBQWMsMFZDdkMzQixpZkFjQTs7MkZEeUJhLGNBQWM7a0JBYjFCLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0I7d0JBQ0YsV0FBVyxFQUFFLElBQUk7d0JBQ2pCLEtBQUssRUFBRSxrQkFBa0I7d0JBQ3pCLHNDQUFzQyxFQUFFLHdCQUF3Qjt3QkFDaEUsd0NBQXdDLEVBQUUsMEJBQTBCO3FCQUN2RTt3REFHUSxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERpcmVjdGl2ZSwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLYnFDb2xvckRpcmVjdGl2ZSwgS2JxQ29tcG9uZW50Q29sb3JzIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBQcm9ncmVzc0Jhck1vZGUgPSAnZGV0ZXJtaW5hdGUnIHwgJ2luZGV0ZXJtaW5hdGUnO1xuXG5sZXQgaWRJdGVyYXRvciA9IDA7XG5cbmNvbnN0IE1JTl9QRVJDRU5UID0gMDtcbmNvbnN0IE1BWF9QRVJDRU5UID0gMTAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1trYnEtcHJvZ3Jlc3MtYmFyLXRleHRdJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLXByb2dyZXNzLWJhci10ZXh0J1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxUHJvZ3Jlc3NCYXJUZXh0IHt9XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticS1wcm9ncmVzcy1iYXItY2FwdGlvbl0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtcHJvZ3Jlc3MtYmFyLWNhcHRpb24nXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQcm9ncmVzc0JhckNhcHRpb24ge31cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrYnEtcHJvZ3Jlc3MtYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcm9ncmVzcy1iYXIuc2NzcycsICcuL3Byb2dyZXNzLWJhci10b2tlbnMuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuaWRdJzogJ2lkJyxcbiAgICAgICAgY2xhc3M6ICdrYnEtcHJvZ3Jlc3MtYmFyJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtcHJvZ3Jlc3MtYmFyX2RldGVybWluYXRlXSc6ICdtb2RlID09PSBcImRldGVybWluYXRlXCInLFxuICAgICAgICAnW2NsYXNzLmticS1wcm9ncmVzcy1iYXJfaW5kZXRlcm1pbmF0ZV0nOiAnbW9kZSA9PT0gXCJpbmRldGVybWluYXRlXCInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFQcm9ncmVzc0JhciBleHRlbmRzIEticUNvbG9yRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nID0gYGticS1wcm9ncmVzcy1iYXItJHtpZEl0ZXJhdG9yKyt9YDtcbiAgICBASW5wdXQoKSB2YWx1ZTogbnVtYmVyID0gMDtcbiAgICBASW5wdXQoKSBtb2RlOiBQcm9ncmVzc0Jhck1vZGUgPSAnZGV0ZXJtaW5hdGUnO1xuXG4gICAgZ2V0IHBlcmNlbnRhZ2UoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1hdGgubWF4KE1JTl9QRVJDRU5ULCBNYXRoLm1pbihNQVhfUEVSQ0VOVCwgdGhpcy52YWx1ZSkpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuY29sb3IgPSBLYnFDb21wb25lbnRDb2xvcnMuVGhlbWU7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ticS1wcm9ncmVzcy1iYXItdGV4dF1cIiAvPlxuXG48ZGl2IGNsYXNzPVwia2JxLXByb2dyZXNzLWJhcl9faW5uZXJcIiBbaWRdPVwiaWRcIj5cbiAgICBAc3dpdGNoIChtb2RlKSB7XG4gICAgICAgIEBjYXNlICgnaW5kZXRlcm1pbmF0ZScpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcHJvZ3Jlc3MtYmFyX19saW5lIGticS1wcm9ncmVzcy1iYXJfX2xpbmVfaW5kZXRlcm1pbmF0ZVwiPjwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBkZWZhdWx0IHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtcHJvZ3Jlc3MtYmFyX19saW5lIGticS1wcm9ncmVzcy1iYXJfX2xpbmVfZGV0ZXJtaW5hdGVcIiBbc3R5bGUud2lkdGguJV09XCJwZXJjZW50YWdlXCI+PC9kaXY+XG4gICAgICAgIH1cbiAgICB9XG48L2Rpdj5cblxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ticS1wcm9ncmVzcy1iYXItY2FwdGlvbl1cIiAvPlxuIl19