@koobiq/components 18.28.0 → 18.29.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 (391) hide show
  1. package/accordion/accordion-trigger.component.scss +2 -0
  2. package/actions-panel/actions-panel-container.scss +4 -1
  3. package/actions-panel/actions-panel-tokens.scss +2 -1
  4. package/breadcrumbs/breadcrumbs.d.ts +1 -1
  5. package/checkbox/checkbox.scss +2 -0
  6. package/core/common-behaviors/clipboard.d.ts +12 -0
  7. package/core/common-behaviors/index.d.ts +1 -0
  8. package/core/formatters/filesize/config.d.ts +66 -0
  9. package/core/formatters/filesize/formatter.d.ts +17 -0
  10. package/core/{utils/data-size → formatters/filesize}/index.d.ts +1 -1
  11. package/core/formatters/filesize/size.d.ts +36 -0
  12. package/core/formatters/index.d.ts +3 -1
  13. package/core/formatters/number/formatter.d.ts +13 -4
  14. package/core/locales/formatters.d.ts +9 -1
  15. package/core/locales/locale-service.d.ts +9 -1
  16. package/core/locales/types.d.ts +14 -0
  17. package/core/utils/public-api.d.ts +0 -1
  18. package/datepicker/calendar.scss +2 -0
  19. package/datepicker/datepicker-tokens.scss +1 -1
  20. package/dropdown/dropdown-item.component.d.ts +3 -1
  21. package/esm2022/accordion/accordion-content.mjs +4 -4
  22. package/esm2022/accordion/accordion-header.mjs +4 -4
  23. package/esm2022/accordion/accordion-item.mjs +4 -4
  24. package/esm2022/accordion/accordion-trigger.component.mjs +6 -6
  25. package/esm2022/accordion/accordion.component.mjs +4 -4
  26. package/esm2022/accordion/accordion.module.mjs +5 -5
  27. package/esm2022/actions-panel/actions-panel-container.mjs +6 -6
  28. package/esm2022/actions-panel/actions-panel.mjs +13 -13
  29. package/esm2022/actions-panel/module.mjs +5 -5
  30. package/esm2022/alert/alert.component.mjs +13 -13
  31. package/esm2022/alert/alert.module.mjs +5 -5
  32. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +4 -4
  33. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +4 -4
  34. package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
  35. package/esm2022/autocomplete/autocomplete.module.mjs +5 -5
  36. package/esm2022/badge/badge.component.mjs +10 -10
  37. package/esm2022/badge/badge.module.mjs +5 -5
  38. package/esm2022/breadcrumbs/breadcrumbs.mjs +17 -17
  39. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +5 -5
  40. package/esm2022/button/button.component.mjs +7 -7
  41. package/esm2022/button/button.dropdown-trigger.directive.mjs +4 -4
  42. package/esm2022/button/button.module.mjs +5 -5
  43. package/esm2022/button-toggle/button-toggle.component.mjs +7 -7
  44. package/esm2022/button-toggle/button-toggle.module.mjs +5 -5
  45. package/esm2022/checkbox/checkbox-module.mjs +5 -5
  46. package/esm2022/checkbox/checkbox-required-validator.mjs +4 -4
  47. package/esm2022/checkbox/checkbox.mjs +5 -5
  48. package/esm2022/code-block/code-block-highlight.mjs +4 -4
  49. package/esm2022/code-block/code-block.mjs +4 -4
  50. package/esm2022/code-block/code-block.module.mjs +5 -5
  51. package/esm2022/core/common-behaviors/clipboard.mjs +31 -0
  52. package/esm2022/core/common-behaviors/color.mjs +4 -4
  53. package/esm2022/core/common-behaviors/common-module.mjs +5 -5
  54. package/esm2022/core/common-behaviors/index.mjs +2 -1
  55. package/esm2022/core/error/error-state-matcher.mjs +10 -10
  56. package/esm2022/core/formatters/date/formatter.mjs +4 -4
  57. package/esm2022/core/formatters/date/formatter.pipe.mjs +79 -79
  58. package/esm2022/core/formatters/filesize/config.mjs +32 -0
  59. package/esm2022/core/formatters/filesize/formatter.mjs +46 -0
  60. package/esm2022/core/formatters/filesize/index.mjs +4 -0
  61. package/esm2022/core/formatters/filesize/size.mjs +67 -0
  62. package/esm2022/core/formatters/index.mjs +15 -9
  63. package/esm2022/core/formatters/number/formatter.mjs +38 -36
  64. package/esm2022/core/forms/forms-module.mjs +5 -5
  65. package/esm2022/core/forms/forms.directive.mjs +7 -7
  66. package/esm2022/core/highlight/highlight.pipe.mjs +4 -4
  67. package/esm2022/core/highlight/index.mjs +5 -5
  68. package/esm2022/core/line/line.mjs +8 -8
  69. package/esm2022/core/locales/formatters.mjs +21 -13
  70. package/esm2022/core/locales/locale-service.mjs +4 -4
  71. package/esm2022/core/locales/locale-service.module.mjs +5 -5
  72. package/esm2022/core/locales/types.mjs +1 -1
  73. package/esm2022/core/option/action.mjs +4 -4
  74. package/esm2022/core/option/optgroup.mjs +4 -4
  75. package/esm2022/core/option/option-module.mjs +5 -5
  76. package/esm2022/core/option/option.mjs +4 -4
  77. package/esm2022/core/pop-up/pop-up-trigger.mjs +4 -4
  78. package/esm2022/core/pop-up/pop-up.mjs +4 -4
  79. package/esm2022/core/select/common.mjs +16 -16
  80. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +4 -4
  81. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +5 -5
  82. package/esm2022/core/services/measure-scrollbar.service.mjs +4 -4
  83. package/esm2022/core/services/theme.service.mjs +4 -4
  84. package/esm2022/core/utils/public-api.mjs +1 -2
  85. package/esm2022/core/version.mjs +2 -2
  86. package/esm2022/datepicker/calendar-body.component.mjs +4 -4
  87. package/esm2022/datepicker/calendar-header.component.mjs +4 -4
  88. package/esm2022/datepicker/calendar.component.mjs +5 -5
  89. package/esm2022/datepicker/datepicker-input.directive.mjs +4 -4
  90. package/esm2022/datepicker/datepicker-intl.mjs +4 -4
  91. package/esm2022/datepicker/datepicker-module.mjs +5 -5
  92. package/esm2022/datepicker/datepicker-toggle.component.mjs +7 -7
  93. package/esm2022/datepicker/datepicker.component.mjs +8 -8
  94. package/esm2022/datepicker/month-view.component.mjs +4 -4
  95. package/esm2022/divider/divider.component.mjs +4 -4
  96. package/esm2022/divider/divider.module.mjs +5 -5
  97. package/esm2022/dl/dl.component.mjs +10 -10
  98. package/esm2022/dl/dl.module.mjs +5 -5
  99. package/esm2022/dropdown/dropdown-content.directive.mjs +4 -4
  100. package/esm2022/dropdown/dropdown-item.component.mjs +9 -7
  101. package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -4
  102. package/esm2022/dropdown/dropdown.component.mjs +4 -4
  103. package/esm2022/dropdown/dropdown.module.mjs +5 -5
  104. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +8 -8
  105. package/esm2022/empty-state/empty-state.component.mjs +16 -16
  106. package/esm2022/empty-state/empty-state.module.mjs +5 -5
  107. package/esm2022/file-upload/file-drop.mjs +4 -4
  108. package/esm2022/file-upload/file-upload.module.mjs +5 -5
  109. package/esm2022/file-upload/multiple-file-upload.component.mjs +5 -5
  110. package/esm2022/file-upload/single-file-upload.component.mjs +5 -5
  111. package/esm2022/filter-bar/filter-bar-button.mjs +4 -4
  112. package/esm2022/filter-bar/filter-bar.mjs +4 -4
  113. package/esm2022/filter-bar/filter-bar.module.mjs +5 -5
  114. package/esm2022/filter-bar/filter-bar.types.mjs +32 -1
  115. package/esm2022/filter-bar/filter-refresher.mjs +4 -4
  116. package/esm2022/filter-bar/filter-reset.mjs +4 -4
  117. package/esm2022/filter-bar/filter-search.mjs +4 -4
  118. package/esm2022/filter-bar/filters.mjs +27 -20
  119. package/esm2022/filter-bar/pipe-add.mjs +4 -4
  120. package/esm2022/filter-bar/pipe.directive.mjs +4 -4
  121. package/esm2022/filter-bar/pipes/base-pipe.mjs +7 -7
  122. package/esm2022/filter-bar/pipes/pipe-button.mjs +4 -4
  123. package/esm2022/filter-bar/pipes/pipe-date.mjs +6 -6
  124. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +6 -6
  125. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +29 -11
  126. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +234 -0
  127. package/esm2022/filter-bar/pipes/pipe-readonly.mjs +6 -6
  128. package/esm2022/filter-bar/pipes/pipe-select.mjs +6 -6
  129. package/esm2022/filter-bar/pipes/pipe-state.mjs +4 -4
  130. package/esm2022/filter-bar/pipes/pipe-text.mjs +6 -6
  131. package/esm2022/filter-bar/pipes/pipe-title.mjs +4 -4
  132. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +136 -0
  133. package/esm2022/filter-bar/public-api.mjs +2 -1
  134. package/esm2022/form-field/cleaner.mjs +4 -4
  135. package/esm2022/form-field/form-field.mjs +12 -12
  136. package/esm2022/form-field/form-field.module.mjs +5 -5
  137. package/esm2022/form-field/hint.mjs +4 -4
  138. package/esm2022/form-field/password-hint.mjs +9 -7
  139. package/esm2022/form-field/password-toggle.mjs +4 -4
  140. package/esm2022/form-field/prefix.mjs +4 -4
  141. package/esm2022/form-field/stepper.mjs +4 -4
  142. package/esm2022/form-field/suffix.mjs +4 -4
  143. package/esm2022/form-field/validate.directive.mjs +4 -4
  144. package/esm2022/icon/icon-button.component.mjs +4 -4
  145. package/esm2022/icon/icon-item.component.mjs +4 -4
  146. package/esm2022/icon/icon.component.mjs +4 -4
  147. package/esm2022/icon/icon.module.mjs +5 -5
  148. package/esm2022/input/input-number-validators.mjs +7 -7
  149. package/esm2022/input/input-number.mjs +13 -12
  150. package/esm2022/input/input-password.mjs +4 -4
  151. package/esm2022/input/input.mjs +7 -7
  152. package/esm2022/input/input.module.mjs +5 -5
  153. package/esm2022/link/link.component.mjs +4 -4
  154. package/esm2022/link/link.module.mjs +5 -5
  155. package/esm2022/list/list-selection.component.mjs +10 -10
  156. package/esm2022/list/list.component.mjs +7 -7
  157. package/esm2022/list/list.module.mjs +5 -5
  158. package/esm2022/loader-overlay/loader-overlay.component.mjs +13 -13
  159. package/esm2022/loader-overlay/loader-overlay.module.mjs +5 -5
  160. package/esm2022/markdown/markdown.component.mjs +4 -4
  161. package/esm2022/markdown/markdown.module.mjs +5 -5
  162. package/esm2022/markdown/markdown.service.mjs +4 -4
  163. package/esm2022/modal/css-unit.pipe.mjs +4 -4
  164. package/esm2022/modal/modal-control.service.mjs +4 -4
  165. package/esm2022/modal/modal.component.mjs +4 -4
  166. package/esm2022/modal/modal.directive.mjs +13 -13
  167. package/esm2022/modal/modal.module.mjs +5 -5
  168. package/esm2022/modal/modal.service.mjs +4 -4
  169. package/esm2022/modal/modal.type.mjs +1 -1
  170. package/esm2022/navbar/navbar-item.component.mjs +28 -28
  171. package/esm2022/navbar/navbar.component.mjs +10 -10
  172. package/esm2022/navbar/navbar.module.mjs +5 -5
  173. package/esm2022/navbar/vertical-navbar.component.mjs +4 -4
  174. package/esm2022/overflow-items/module.mjs +5 -5
  175. package/esm2022/overflow-items/overflow-items.mjs +15 -15
  176. package/esm2022/popover/popover-confirm.component.mjs +7 -7
  177. package/esm2022/popover/popover.component.mjs +7 -7
  178. package/esm2022/popover/popover.module.mjs +5 -5
  179. package/esm2022/progress-bar/progress-bar.component.mjs +10 -10
  180. package/esm2022/progress-bar/progress-bar.module.mjs +5 -5
  181. package/esm2022/progress-spinner/progress-spinner.component.mjs +10 -10
  182. package/esm2022/progress-spinner/progress-spinner.module.mjs +5 -5
  183. package/esm2022/radio/radio.component.mjs +7 -7
  184. package/esm2022/radio/radio.module.mjs +5 -5
  185. package/esm2022/risk-level/risk-level.component.mjs +4 -4
  186. package/esm2022/risk-level/risk-level.module.mjs +5 -5
  187. package/esm2022/scrollbar/scrollbar.component.mjs +4 -4
  188. package/esm2022/scrollbar/scrollbar.directive.mjs +4 -4
  189. package/esm2022/scrollbar/scrollbar.module.mjs +5 -5
  190. package/esm2022/select/select-option.directive.mjs +4 -4
  191. package/esm2022/select/select.component.mjs +6 -6
  192. package/esm2022/select/select.module.mjs +5 -5
  193. package/esm2022/sidebar/sidebar.component.mjs +18 -12
  194. package/esm2022/sidebar/sidebar.module.mjs +5 -5
  195. package/esm2022/sidepanel/sidepanel-container.component.mjs +4 -4
  196. package/esm2022/sidepanel/sidepanel-directives.mjs +16 -16
  197. package/esm2022/sidepanel/sidepanel.module.mjs +5 -5
  198. package/esm2022/sidepanel/sidepanel.service.mjs +4 -4
  199. package/esm2022/splitter/splitter.component.mjs +13 -13
  200. package/esm2022/splitter/splitter.module.mjs +5 -5
  201. package/esm2022/table/table.component.mjs +7 -7
  202. package/esm2022/table/table.module.mjs +5 -5
  203. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  204. package/esm2022/tabs/tab-body.component.mjs +7 -7
  205. package/esm2022/tabs/tab-content.directive.mjs +4 -4
  206. package/esm2022/tabs/tab-group.component.mjs +16 -16
  207. package/esm2022/tabs/tab-header.component.mjs +4 -4
  208. package/esm2022/tabs/tab-label-wrapper.directive.mjs +4 -4
  209. package/esm2022/tabs/tab-label.directive.mjs +4 -4
  210. package/esm2022/tabs/tab-nav-bar.mjs +10 -10
  211. package/esm2022/tabs/tab.component.mjs +4 -4
  212. package/esm2022/tabs/tabs.module.mjs +5 -5
  213. package/esm2022/tags/tag-input.mjs +4 -4
  214. package/esm2022/tags/tag-list.component.mjs +5 -5
  215. package/esm2022/tags/tag.component.mjs +13 -13
  216. package/esm2022/tags/tag.module.mjs +5 -5
  217. package/esm2022/textarea/textarea.component.mjs +4 -4
  218. package/esm2022/textarea/textarea.module.mjs +5 -5
  219. package/esm2022/timepicker/timepicker.directive.mjs +4 -4
  220. package/esm2022/timepicker/timepicker.module.mjs +5 -5
  221. package/esm2022/timezone/cities-by-filter.pipe.mjs +4 -4
  222. package/esm2022/timezone/timezone-option.component.mjs +4 -4
  223. package/esm2022/timezone/timezone-option.directive.mjs +4 -4
  224. package/esm2022/timezone/timezone-select.component.mjs +9 -9
  225. package/esm2022/timezone/timezone.module.mjs +5 -5
  226. package/esm2022/timezone/utc-offset.pipe.mjs +4 -4
  227. package/esm2022/title/title.directive.mjs +4 -4
  228. package/esm2022/title/title.module.mjs +5 -5
  229. package/esm2022/toast/toast-container.component.mjs +4 -4
  230. package/esm2022/toast/toast.component.mjs +7 -7
  231. package/esm2022/toast/toast.module.mjs +5 -5
  232. package/esm2022/toast/toast.service.mjs +4 -4
  233. package/esm2022/toggle/toggle.component.mjs +4 -4
  234. package/esm2022/toggle/toggle.module.mjs +5 -5
  235. package/esm2022/tooltip/tooltip.component.mjs +13 -13
  236. package/esm2022/tooltip/tooltip.module.mjs +5 -5
  237. package/esm2022/top-bar/module.mjs +5 -5
  238. package/esm2022/top-bar/top-bar.mjs +10 -10
  239. package/esm2022/tree/control/flat-tree-control.filters.mjs +10 -2
  240. package/esm2022/tree/node.mjs +4 -4
  241. package/esm2022/tree/outlet.mjs +4 -4
  242. package/esm2022/tree/padding.directive.mjs +4 -4
  243. package/esm2022/tree/toggle.mjs +10 -10
  244. package/esm2022/tree/tree-base.mjs +7 -7
  245. package/esm2022/tree/tree-option.component.mjs +11 -7
  246. package/esm2022/tree/tree-selection.component.mjs +6 -4
  247. package/esm2022/tree/tree.mjs +4 -4
  248. package/esm2022/tree/tree.module.mjs +5 -5
  249. package/esm2022/tree-select/tree-select.component.mjs +5 -5
  250. package/esm2022/tree-select/tree-select.module.mjs +5 -5
  251. package/fesm2022/koobiq-components-accordion.mjs +21 -21
  252. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  253. package/fesm2022/koobiq-components-actions-panel.mjs +21 -21
  254. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  255. package/fesm2022/koobiq-components-alert.mjs +16 -16
  256. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  257. package/fesm2022/koobiq-components-autocomplete.mjs +13 -13
  258. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  259. package/fesm2022/koobiq-components-badge.mjs +13 -13
  260. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  261. package/fesm2022/koobiq-components-breadcrumbs.mjs +20 -20
  262. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  263. package/fesm2022/koobiq-components-button-toggle.mjs +10 -10
  264. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  265. package/fesm2022/koobiq-components-button.mjs +13 -13
  266. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  267. package/fesm2022/koobiq-components-checkbox.mjs +11 -11
  268. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  269. package/fesm2022/koobiq-components-code-block.mjs +10 -10
  270. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  271. package/fesm2022/koobiq-components-core.mjs +410 -322
  272. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  273. package/fesm2022/koobiq-components-datepicker.mjs +36 -36
  274. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  275. package/fesm2022/koobiq-components-divider.mjs +7 -7
  276. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  277. package/fesm2022/koobiq-components-dl.mjs +13 -13
  278. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  279. package/fesm2022/koobiq-components-dropdown.mjs +21 -19
  280. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  281. package/fesm2022/koobiq-components-ellipsis-center.mjs +7 -7
  282. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  283. package/fesm2022/koobiq-components-empty-state.mjs +19 -19
  284. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  285. package/fesm2022/koobiq-components-file-upload.mjs +15 -15
  286. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  287. package/fesm2022/koobiq-components-filter-bar.mjs +480 -107
  288. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  289. package/fesm2022/koobiq-components-form-field.mjs +44 -42
  290. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  291. package/fesm2022/koobiq-components-icon.mjs +13 -13
  292. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  293. package/fesm2022/koobiq-components-input.mjs +32 -31
  294. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  295. package/fesm2022/koobiq-components-link.mjs +7 -7
  296. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  297. package/fesm2022/koobiq-components-list.mjs +19 -19
  298. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  299. package/fesm2022/koobiq-components-loader-overlay.mjs +16 -16
  300. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  301. package/fesm2022/koobiq-components-markdown.mjs +10 -10
  302. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  303. package/fesm2022/koobiq-components-modal.mjs +28 -28
  304. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  305. package/fesm2022/koobiq-components-navbar.mjs +43 -43
  306. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  307. package/fesm2022/koobiq-components-overflow-items.mjs +18 -18
  308. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  309. package/fesm2022/koobiq-components-popover.mjs +16 -16
  310. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  311. package/fesm2022/koobiq-components-progress-bar.mjs +13 -13
  312. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  313. package/fesm2022/koobiq-components-progress-spinner.mjs +13 -13
  314. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  315. package/fesm2022/koobiq-components-radio.mjs +10 -10
  316. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  317. package/fesm2022/koobiq-components-risk-level.mjs +7 -7
  318. package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
  319. package/fesm2022/koobiq-components-scrollbar.mjs +10 -10
  320. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  321. package/fesm2022/koobiq-components-select.mjs +12 -12
  322. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  323. package/fesm2022/koobiq-components-sidebar.mjs +21 -15
  324. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  325. package/fesm2022/koobiq-components-sidepanel.mjs +25 -25
  326. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  327. package/fesm2022/koobiq-components-splitter.mjs +16 -16
  328. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  329. package/fesm2022/koobiq-components-table.mjs +10 -10
  330. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  331. package/fesm2022/koobiq-components-tabs.mjs +52 -52
  332. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  333. package/fesm2022/koobiq-components-tags.mjs +23 -23
  334. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  335. package/fesm2022/koobiq-components-textarea.mjs +7 -7
  336. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  337. package/fesm2022/koobiq-components-timepicker.mjs +7 -7
  338. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  339. package/fesm2022/koobiq-components-timezone.mjs +24 -24
  340. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  341. package/fesm2022/koobiq-components-title.mjs +7 -7
  342. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  343. package/fesm2022/koobiq-components-toast.mjs +16 -16
  344. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  345. package/fesm2022/koobiq-components-toggle.mjs +7 -7
  346. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  347. package/fesm2022/koobiq-components-tooltip.mjs +16 -16
  348. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  349. package/fesm2022/koobiq-components-top-bar.mjs +13 -13
  350. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  351. package/fesm2022/koobiq-components-tree-select.mjs +8 -8
  352. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  353. package/fesm2022/koobiq-components-tree.mjs +54 -40
  354. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  355. package/file-upload/_file-upload-theme.scss +94 -17
  356. package/file-upload/file-upload-tokens.scss +5 -0
  357. package/file-upload/single-file-upload.component.scss +1 -0
  358. package/filter-bar/filter-bar.types.d.ts +28 -1
  359. package/filter-bar/filters.d.ts +3 -2
  360. package/filter-bar/filters.scss +4 -0
  361. package/filter-bar/pipes/base-pipe.scss +1 -0
  362. package/filter-bar/pipes/pipe-multi-select.d.ts +6 -1
  363. package/filter-bar/pipes/pipe-multi-tree-select.d.ts +57 -0
  364. package/filter-bar/pipes/pipe-multi-tree-select.scss +19 -0
  365. package/filter-bar/pipes/pipe-tree-select.d.ts +41 -0
  366. package/filter-bar/pipes/pipe-tree-select.scss +9 -0
  367. package/filter-bar/public-api.d.ts +1 -0
  368. package/form-field/_form-field-theme.scss +12 -12
  369. package/form-field/form-field.scss +58 -61
  370. package/input/_input-theme.scss +6 -0
  371. package/input/input-number.d.ts +1 -0
  372. package/modal/modal.type.d.ts +1 -1
  373. package/overflow-items/overflow-items.d.ts +1 -1
  374. package/package.json +5 -5
  375. package/prebuilt-themes/dark-theme.css +1 -1
  376. package/prebuilt-themes/light-theme.css +1 -1
  377. package/prebuilt-themes/theme.css +1 -1
  378. package/schematics/ng-add/index.js +5 -5
  379. package/select/_select-theme.scss +1 -1
  380. package/select/select.scss +2 -0
  381. package/tags/_tag-theme.scss +5 -0
  382. package/tags/tag-tokens.scss +17 -0
  383. package/tree/control/flat-tree-control.filters.d.ts +1 -0
  384. package/tree/tree-option.component.d.ts +3 -1
  385. package/core/utils/data-size/config.d.ts +0 -38
  386. package/core/utils/data-size/data-size.pipe.d.ts +0 -14
  387. package/core/utils/data-size/size.d.ts +0 -15
  388. package/esm2022/core/utils/data-size/config.mjs +0 -10
  389. package/esm2022/core/utils/data-size/data-size.pipe.mjs +0 -45
  390. package/esm2022/core/utils/data-size/index.mjs +0 -4
  391. package/esm2022/core/utils/data-size/size.mjs +0 -43
@@ -5,10 +5,10 @@ import { KBQ_FORM_FIELD_REF } from '../form-field';
5
5
  import { SELECT_PANEL_VIEWPORT_PADDING } from './constants';
6
6
  import * as i0 from "@angular/core";
7
7
  export class KbqSelectTrigger {
8
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqSelectTrigger, isStandalone: true, selector: "kbq-select-trigger, [kbq-select-trigger]", ngImport: i0 }); }
8
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqSelectTrigger, isStandalone: true, selector: "kbq-select-trigger, [kbq-select-trigger]", ngImport: i0 }); }
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectTrigger, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectTrigger, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  selector: 'kbq-select-trigger, [kbq-select-trigger]',
@@ -16,10 +16,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
16
16
  }]
17
17
  }] });
18
18
  export class KbqSelectMatcher {
19
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectMatcher, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
20
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqSelectMatcher, isStandalone: true, selector: "kbq-select-matcher, [kbq-select-matcher]", ngImport: i0 }); }
19
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectMatcher, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
20
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqSelectMatcher, isStandalone: true, selector: "kbq-select-matcher, [kbq-select-matcher]", ngImport: i0 }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectMatcher, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectMatcher, decorators: [{
23
23
  type: Directive,
24
24
  args: [{
25
25
  selector: 'kbq-select-matcher, [kbq-select-matcher]',
@@ -27,10 +27,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
27
27
  }]
28
28
  }] });
29
29
  export class KbqSelectFooter {
30
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqSelectFooter, isStandalone: true, selector: "kbq-select-footer, [kbq-select-footer]", host: { classAttribute: "kbq-select__footer" }, ngImport: i0 }); }
30
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqSelectFooter, isStandalone: true, selector: "kbq-select-footer, [kbq-select-footer]", host: { classAttribute: "kbq-select__footer" }, ngImport: i0 }); }
32
32
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectFooter, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectFooter, decorators: [{
34
34
  type: Directive,
35
35
  args: [{
36
36
  selector: 'kbq-select-footer, [kbq-select-footer]',
@@ -90,10 +90,10 @@ export class KbqSelectSearch {
90
90
  event.stopPropagation();
91
91
  }
92
92
  }
93
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectSearch, deps: [{ token: KBQ_FORM_FIELD_REF, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
94
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqSelectSearch, isStandalone: true, selector: "[kbqSelectSearch]", host: { listeners: { "keydown": "handleKeydown($event)" } }, exportAs: ["kbqSelectSearch"], ngImport: i0 }); }
93
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectSearch, deps: [{ token: KBQ_FORM_FIELD_REF, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
94
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqSelectSearch, isStandalone: true, selector: "[kbqSelectSearch]", host: { listeners: { "keydown": "handleKeydown($event)" } }, exportAs: ["kbqSelectSearch"], ngImport: i0 }); }
95
95
  }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectSearch, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectSearch, decorators: [{
97
97
  type: Directive,
98
98
  args: [{
99
99
  selector: '[kbqSelectSearch]',
@@ -110,10 +110,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
110
110
  args: [KBQ_FORM_FIELD_REF]
111
111
  }] }] });
112
112
  export class KbqSelectSearchEmptyResult {
113
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectSearchEmptyResult, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
114
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.6", type: KbqSelectSearchEmptyResult, isStandalone: true, selector: "[kbq-select-search-empty-result]", exportAs: ["kbqSelectSearchEmptyResult"], ngImport: i0 }); }
113
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectSearchEmptyResult, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
114
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqSelectSearchEmptyResult, isStandalone: true, selector: "[kbq-select-search-empty-result]", exportAs: ["kbqSelectSearchEmptyResult"], ngImport: i0 }); }
115
115
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqSelectSearchEmptyResult, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqSelectSearchEmptyResult, decorators: [{
117
117
  type: Directive,
118
118
  args: [{
119
119
  selector: '[kbq-select-search-empty-result]',
@@ -182,4 +182,4 @@ export class KbqAbstractSelect {
182
182
  this.overlayDir.overlayRef.updatePosition();
183
183
  }
184
184
  }
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdC9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFNNUQsTUFBTSxPQUFPLGdCQUFnQjtpSUFBaEIsZ0JBQWdCO3FIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsVUFBVSxFQUFFLElBQUk7aUJBQ25COztBQU9ELE1BQU0sT0FBTyxnQkFBZ0I7aUlBQWhCLGdCQUFnQjtxSEFBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQ0FBMEM7b0JBQ3BELFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFRRCxNQUFNLE9BQU8sZUFBZTtpSUFBZixlQUFlO3FIQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBTDNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7O0FBV0QsTUFBTSxPQUFPLGVBQWU7SUFLeEIsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENB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SUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUNuRSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtDb25uZWN0ZWRPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgRGlyZWN0aXZlLCBJbmplY3QsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVORCwgRVNDQVBFLCBIT01FLCBTUEFDRSB9IGZyb20gJ0Brb29iaXEvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgS0JRX0ZPUk1fRklFTERfUkVGLCBLYnFGb3JtRmllbGRSZWYgfSBmcm9tICcuLi9mb3JtLWZpZWxkJztcbmltcG9ydCB7IFNFTEVDVF9QQU5FTF9WSUVXUE9SVF9QQURESU5HIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtdHJpZ2dlciwgW2ticS1zZWxlY3QtdHJpZ2dlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0VHJpZ2dlciB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtbWF0Y2hlciwgW2ticS1zZWxlY3QtbWF0Y2hlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0TWF0Y2hlciB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtZm9vdGVyLCBba2JxLXNlbGVjdC1mb290ZXJdJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLXNlbGVjdF9fZm9vdGVyJyB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0Rm9vdGVyIHt9XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVNlbGVjdFNlYXJjaF0nLFxuICAgIGV4cG9ydEFzOiAna2JxU2VsZWN0U2VhcmNoJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhrZXlkb3duKSc6ICdoYW5kbGVLZXlkb3duKCRldmVudCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFTZWxlY3RTZWFyY2ggaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAgIHNlYXJjaENoYW5nZXNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIGlzU2VhcmNoQ2hhbmdlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgZ2V0IG5nQ29udHJvbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUZpZWxkLmNvbnRyb2wubmdDb250cm9sO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0ZPUk1fRklFTERfUkVGKSBwcm90ZWN0ZWQgZm9ybUZpZWxkOiBLYnFGb3JtRmllbGRSZWYpIHtcbiAgICAgICAgZm9ybUZpZWxkLmNhbkNsZWFuZXJDbGVhckJ5RXNjID0gZmFsc2U7XG4gICAgfVxuXG4gICAgc2V0UGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1GaWVsZC5jb250cm9sLnBsYWNlaG9sZGVyID0gdmFsdWU7XG4gICAgfVxuXG4gICAgaGFzUGxhY2Vob2xkZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZm9ybUZpZWxkPy5jb250cm9sLnBsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1GaWVsZC5mb2N1c1ZpYUtleWJvYXJkKCk7XG4gICAgfVxuXG4gICAgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubmdDb250cm9sLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgdmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1GaWVsZC5jb250cm9sLnZhbHVlO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybUZpZWxkLmNvbnRyb2wuY29udHJvbFR5cGUgIT09ICdpbnB1dCcpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdLYnFTZWxlY3RTZWFyY2ggZG9lcyBub3Qgd29yayB3aXRob3V0IGticUlucHV0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcignS2JxU2VsZWN0U2VhcmNoIGRvZXMgbm90IHdvcmsgd2l0aG91dCBuZ0NvbnRyb2wnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hDaGFuZ2VzU3Vic2NyaXB0aW9uID0gdGhpcy5uZ0NvbnRyb2wudmFsdWVDaGFuZ2VzIS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNTZWFyY2hDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hDaGFuZ2VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaGFuZGxlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFKSB7XG4gICAgICAgICAgICBpZiAodGhpcy52YWx1ZSgpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFtTUEFDRSwgSE9NRSwgRU5EXS5pbmNsdWRlcyhldmVudC5rZXlDb2RlKSkge1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticS1zZWxlY3Qtc2VhcmNoLWVtcHR5LXJlc3VsdF0nLFxuICAgIGV4cG9ydEFzOiAna2JxU2VsZWN0U2VhcmNoRW1wdHlSZXN1bHQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0U2VhcmNoRW1wdHlSZXN1bHQge31cblxuLyoqXG4gKiBBYnN0cmFjdCBjbGFzcyByZXByZXNlbnRpbmcgYSBjdXN0b21pemFibGUgc2VsZWN0IGNvbXBvbmVudCB3aXRoIGFuIG92ZXJsYXkuXG4gKlxuICogVGhpcyBjbGFzcyBwcm92aWRlcyBiYXNlIGZ1bmN0aW9uYWxpdHkgZm9yIGhhbmRsaW5nIHRoZSBvdmVybGF5IHBvc2l0aW9uaW5nLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgS2JxQWJzdHJhY3RTZWxlY3Qge1xuICAgIHByb3RlY3RlZCBvdmVybGF5RGlyOiBDZGtDb25uZWN0ZWRPdmVybGF5O1xuICAgIHByb3RlY3RlZCB0cmlnZ2VyUmVjdDogRE9NUmVjdDtcblxuICAgIC8qKiBPdmVybGF5IHBhbmVsIGNsYXNzLiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvdmVybGF5UGFuZWxDbGFzcyA9ICdrYnEtc2VsZWN0LW92ZXJsYXknO1xuXG4gICAgcHJvdGVjdGVkIHNldE92ZXJsYXlQb3NpdGlvbigpIHtcbiAgICAgICAgdGhpcy5yZXNldE92ZXJsYXkoKTtcblxuICAgICAgICBjb25zdCBvdmVybGF5UmVjdCA9IHRoaXMuZ2V0T3ZlcmxheVJlY3QoKTtcbiAgICAgICAgLy8gV2luZG93IHdpZHRoIHdpdGhvdXQgc2Nyb2xsYmFyXG4gICAgICAgIGNvbnN0IHdpbmRvd1dpZHRoID0gdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWY/Lmhvc3RFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICBsZXQgb2Zmc2V0WDogbnVtYmVyID0gMDtcbiAgICAgICAgbGV0IG92ZXJsYXlNYXhXaWR0aDogbnVtYmVyO1xuXG4gICAgICAgIC8vIERldGVybWluZSBpZiBzZWxlY3Qgb3ZlcmZsb3dzIG9uIGVpdGhlciBzaWRlLlxuICAgICAgICBjb25zdCBsZWZ0T3ZlcmZsb3cgPSAtb3ZlcmxheVJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgcmlnaHRPdmVyZmxvdyA9IG92ZXJsYXlSZWN0LnJpZ2h0IC0gd2luZG93V2lkdGg7XG5cbiAgICAgICAgLy8gSWYgdGhlIGVsZW1lbnQgb3ZlcmZsb3dzIG9uIGVpdGhlciBzaWRlLCByZWR1Y2UgdGhlIG9mZnNldCB0byBhbGxvdyBpdCB0byBmaXQuXG4gICAgICAgIGlmIChsZWZ0T3ZlcmZsb3cgPiAwIHx8IHJpZ2h0T3ZlcmZsb3cgPiAwKSB7XG4gICAgICAgICAgICBbb2Zmc2V0WCwgb3ZlcmxheU1heFdpZHRoXSA9IHRoaXMuY2FsY3VsYXRlT3ZlcmxheU9mZnNldFgob2Zmc2V0WCk7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5zdHlsZS5tYXhXaWR0aCA9IGAke292ZXJsYXlNYXhXaWR0aH1weGA7XG4gICAgICAgICAgICAvLyByZXNldCB0aGUgbWluV2lkdGggcHJvcGVydHlcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheURpci5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1pbldpZHRoID0gJyc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZXQgdGhlIG9mZnNldCBkaXJlY3RseSBpbiBvcmRlciB0byBhdm9pZCBoYXZpbmcgdG8gZ28gdGhyb3VnaCBjaGFuZ2UgZGV0ZWN0aW9uIGFuZFxuICAgICAgICAvLyBwb3RlbnRpYWxseSB0cmlnZ2VyaW5nIFwiY2hhbmdlZCBhZnRlciBpdCB3YXMgY2hlY2tlZFwiIGVycm9ycy4gUm91bmQgdGhlIHZhbHVlIHRvIGF2b2lkXG4gICAgICAgIC8vIGJsdXJyeSBjb250ZW50IGluIHNvbWUgYnJvd3NlcnMuXG4gICAgICAgIHRoaXMub3ZlcmxheURpci5vZmZzZXRYID0gTWF0aC5yb3VuZChvZmZzZXRYKTtcbiAgICAgICAgdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2FsY3VsYXRlT3ZlcmxheU9mZnNldFgoYmFzZU9mZnNldFg6IG51bWJlcik6IG51bWJlcltdIHtcbiAgICAgICAgbGV0IG9mZnNldFggPSBiYXNlT2Zmc2V0WDtcbiAgICAgICAgY29uc3Qgd2luZG93V2lkdGggPSB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZj8uaG9zdEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgIGNvbnN0IHsgbGVmdDogbGVmdEluZGVudCwgcmlnaHQ6IHRyaWdnZXJSaWdodCwgd2lkdGg6IHRyaWdnZXJXaWR0aCB9ID0gdGhpcy50cmlnZ2VyUmVjdDtcbiAgICAgICAgY29uc3QgeyB3aWR0aDogb3ZlcmxheVJlY3RXaWR0aCB9ID0gdGhpcy5nZXRPdmVybGF5UmVjdCgpO1xuICAgICAgICBjb25zdCByaWdodEluZGVudCA9IHdpbmRvd1dpZHRoIC0gdHJpZ2dlclJpZ2h0O1xuICAgICAgICAvLyBTZXR0aW5nIGRpcmVjdGlvbiBvZiBkcm9wZG93biBleHBhbnNpb25cbiAgICAgICAgY29uc3QgaXNSaWdodERpcmVjdGlvbiA9IGxlZnRJbmRlbnQgPD0gcmlnaHRJbmRlbnQ7XG5cbiAgICAgICAgY29uc3QgaW5kZW50ID0gaXNSaWdodERpcmVjdGlvbiA/IHJpZ2h0SW5kZW50IDogbGVmdEluZGVudDtcbiAgICAgICAgY29uc3QgbWF4RHJvcGRvd25XaWR0aCA9IGluZGVudCArIHRyaWdnZXJXaWR0aCAtIFNFTEVDVF9QQU5FTF9WSUVXUE9SVF9QQURESU5HO1xuICAgICAgICBjb25zdCBvdmVybGF5TWF4V2lkdGggPSBvdmVybGF5UmVjdFdpZHRoIDwgbWF4RHJvcGRvd25XaWR0aCA/IG92ZXJsYXlSZWN0V2lkdGggOiBtYXhEcm9wZG93bldpZHRoO1xuXG4gICAgICAgIGlmICghaXNSaWdodERpcmVjdGlvbikge1xuICAgICAgICAgICAgY29uc3QgbGVmdE9mZnNldCA9IHRyaWdnZXJSaWdodCAtIG92ZXJsYXlNYXhXaWR0aDtcblxuICAgICAgICAgICAgb2Zmc2V0WCAtPSBsZWZ0SW5kZW50IC0gbGVmdE9mZnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbb2Zmc2V0WCwgb3ZlcmxheU1heFdpZHRoXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0T3ZlcmxheVJlY3QoKTogRE9NUmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVzZXRPdmVybGF5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5ob3N0RWxlbWVudC5jbGFzc0xpc3QuYWRkKHRoaXMub3ZlcmxheVBhbmVsQ2xhc3MpO1xuICAgICAgICB0aGlzLm92ZXJsYXlEaXIub2Zmc2V0WCA9IDA7XG4gICAgICAgIHRoaXMub3ZlcmxheURpci5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1heFdpZHRoID0gJ3Vuc2V0JztcbiAgICAgICAgdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9XG59XG4iXX0=
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdC9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFvQixTQUFTLEVBQUUsTUFBTSxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFNNUQsTUFBTSxPQUFPLGdCQUFnQjtrSUFBaEIsZ0JBQWdCO3NIQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBDQUEwQztvQkFDcEQsVUFBVSxFQUFFLElBQUk7aUJBQ25COztBQU9ELE1BQU0sT0FBTyxnQkFBZ0I7a0lBQWhCLGdCQUFnQjtzSEFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwwQ0FBMEM7b0JBQ3BELFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFRRCxNQUFNLE9BQU8sZUFBZTtrSUFBZixlQUFlO3NIQUFmLGVBQWU7OzRGQUFmLGVBQWU7a0JBTDNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLG9CQUFvQixFQUFFO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkI7O0FBV0QsTUFBTSxPQUFPLGVBQWU7SUFLeEIsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENB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SUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUNuRSxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtDb25uZWN0ZWRPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgRGlyZWN0aXZlLCBJbmplY3QsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVORCwgRVNDQVBFLCBIT01FLCBTUEFDRSB9IGZyb20gJ0Brb29iaXEvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgS0JRX0ZPUk1fRklFTERfUkVGLCBLYnFGb3JtRmllbGRSZWYgfSBmcm9tICcuLi9mb3JtLWZpZWxkJztcbmltcG9ydCB7IFNFTEVDVF9QQU5FTF9WSUVXUE9SVF9QQURESU5HIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtdHJpZ2dlciwgW2ticS1zZWxlY3QtdHJpZ2dlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0VHJpZ2dlciB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtbWF0Y2hlciwgW2ticS1zZWxlY3QtbWF0Y2hlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0TWF0Y2hlciB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS1zZWxlY3QtZm9vdGVyLCBba2JxLXNlbGVjdC1mb290ZXJdJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLXNlbGVjdF9fZm9vdGVyJyB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0Rm9vdGVyIHt9XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVNlbGVjdFNlYXJjaF0nLFxuICAgIGV4cG9ydEFzOiAna2JxU2VsZWN0U2VhcmNoJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhrZXlkb3duKSc6ICdoYW5kbGVLZXlkb3duKCRldmVudCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFTZWxlY3RTZWFyY2ggaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAgIHNlYXJjaENoYW5nZXNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIGlzU2VhcmNoQ2hhbmdlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgZ2V0IG5nQ29udHJvbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUZpZWxkLmNvbnRyb2wubmdDb250cm9sO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoS0JRX0ZPUk1fRklFTERfUkVGKSBwcm90ZWN0ZWQgZm9ybUZpZWxkOiBLYnFGb3JtRmllbGRSZWYpIHtcbiAgICAgICAgZm9ybUZpZWxkLmNhbkNsZWFuZXJDbGVhckJ5RXNjID0gZmFsc2U7XG4gICAgfVxuXG4gICAgc2V0UGxhY2Vob2xkZXIodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1GaWVsZC5jb250cm9sLnBsYWNlaG9sZGVyID0gdmFsdWU7XG4gICAgfVxuXG4gICAgaGFzUGxhY2Vob2xkZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuZm9ybUZpZWxkPy5jb250cm9sLnBsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1GaWVsZC5mb2N1c1ZpYUtleWJvYXJkKCk7XG4gICAgfVxuXG4gICAgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMubmdDb250cm9sLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgdmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1GaWVsZC5jb250cm9sLnZhbHVlO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybUZpZWxkLmNvbnRyb2wuY29udHJvbFR5cGUgIT09ICdpbnB1dCcpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdLYnFTZWxlY3RTZWFyY2ggZG9lcyBub3Qgd29yayB3aXRob3V0IGticUlucHV0Jyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXRoaXMubmdDb250cm9sKSB7XG4gICAgICAgICAgICB0aHJvdyBFcnJvcignS2JxU2VsZWN0U2VhcmNoIGRvZXMgbm90IHdvcmsgd2l0aG91dCBuZ0NvbnRyb2wnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hDaGFuZ2VzU3Vic2NyaXB0aW9uID0gdGhpcy5uZ0NvbnRyb2wudmFsdWVDaGFuZ2VzIS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNTZWFyY2hDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWFyY2hDaGFuZ2VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgaGFuZGxlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFKSB7XG4gICAgICAgICAgICBpZiAodGhpcy52YWx1ZSgpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFtTUEFDRSwgSE9NRSwgRU5EXS5pbmNsdWRlcyhldmVudC5rZXlDb2RlKSkge1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticS1zZWxlY3Qtc2VhcmNoLWVtcHR5LXJlc3VsdF0nLFxuICAgIGV4cG9ydEFzOiAna2JxU2VsZWN0U2VhcmNoRW1wdHlSZXN1bHQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxU2VsZWN0U2VhcmNoRW1wdHlSZXN1bHQge31cblxuLyoqXG4gKiBBYnN0cmFjdCBjbGFzcyByZXByZXNlbnRpbmcgYSBjdXN0b21pemFibGUgc2VsZWN0IGNvbXBvbmVudCB3aXRoIGFuIG92ZXJsYXkuXG4gKlxuICogVGhpcyBjbGFzcyBwcm92aWRlcyBiYXNlIGZ1bmN0aW9uYWxpdHkgZm9yIGhhbmRsaW5nIHRoZSBvdmVybGF5IHBvc2l0aW9uaW5nLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgS2JxQWJzdHJhY3RTZWxlY3Qge1xuICAgIHByb3RlY3RlZCBvdmVybGF5RGlyOiBDZGtDb25uZWN0ZWRPdmVybGF5O1xuICAgIHByb3RlY3RlZCB0cmlnZ2VyUmVjdDogRE9NUmVjdDtcblxuICAgIC8qKiBPdmVybGF5IHBhbmVsIGNsYXNzLiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvdmVybGF5UGFuZWxDbGFzcyA9ICdrYnEtc2VsZWN0LW92ZXJsYXknO1xuXG4gICAgcHJvdGVjdGVkIHNldE92ZXJsYXlQb3NpdGlvbigpIHtcbiAgICAgICAgdGhpcy5yZXNldE92ZXJsYXkoKTtcblxuICAgICAgICBjb25zdCBvdmVybGF5UmVjdCA9IHRoaXMuZ2V0T3ZlcmxheVJlY3QoKTtcbiAgICAgICAgLy8gV2luZG93IHdpZHRoIHdpdGhvdXQgc2Nyb2xsYmFyXG4gICAgICAgIGNvbnN0IHdpbmRvd1dpZHRoID0gdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWY/Lmhvc3RFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICBsZXQgb2Zmc2V0WDogbnVtYmVyID0gMDtcbiAgICAgICAgbGV0IG92ZXJsYXlNYXhXaWR0aDogbnVtYmVyO1xuXG4gICAgICAgIC8vIERldGVybWluZSBpZiBzZWxlY3Qgb3ZlcmZsb3dzIG9uIGVpdGhlciBzaWRlLlxuICAgICAgICBjb25zdCBsZWZ0T3ZlcmZsb3cgPSAtb3ZlcmxheVJlY3QubGVmdDtcbiAgICAgICAgY29uc3QgcmlnaHRPdmVyZmxvdyA9IG92ZXJsYXlSZWN0LnJpZ2h0IC0gd2luZG93V2lkdGg7XG5cbiAgICAgICAgLy8gSWYgdGhlIGVsZW1lbnQgb3ZlcmZsb3dzIG9uIGVpdGhlciBzaWRlLCByZWR1Y2UgdGhlIG9mZnNldCB0byBhbGxvdyBpdCB0byBmaXQuXG4gICAgICAgIGlmIChsZWZ0T3ZlcmZsb3cgPiAwIHx8IHJpZ2h0T3ZlcmZsb3cgPiAwKSB7XG4gICAgICAgICAgICBbb2Zmc2V0WCwgb3ZlcmxheU1heFdpZHRoXSA9IHRoaXMuY2FsY3VsYXRlT3ZlcmxheU9mZnNldFgob2Zmc2V0WCk7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5zdHlsZS5tYXhXaWR0aCA9IGAke292ZXJsYXlNYXhXaWR0aH1weGA7XG4gICAgICAgICAgICAvLyByZXNldCB0aGUgbWluV2lkdGggcHJvcGVydHlcbiAgICAgICAgICAgIHRoaXMub3ZlcmxheURpci5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1pbldpZHRoID0gJyc7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZXQgdGhlIG9mZnNldCBkaXJlY3RseSBpbiBvcmRlciB0byBhdm9pZCBoYXZpbmcgdG8gZ28gdGhyb3VnaCBjaGFuZ2UgZGV0ZWN0aW9uIGFuZFxuICAgICAgICAvLyBwb3RlbnRpYWxseSB0cmlnZ2VyaW5nIFwiY2hhbmdlZCBhZnRlciBpdCB3YXMgY2hlY2tlZFwiIGVycm9ycy4gUm91bmQgdGhlIHZhbHVlIHRvIGF2b2lkXG4gICAgICAgIC8vIGJsdXJyeSBjb250ZW50IGluIHNvbWUgYnJvd3NlcnMuXG4gICAgICAgIHRoaXMub3ZlcmxheURpci5vZmZzZXRYID0gTWF0aC5yb3VuZChvZmZzZXRYKTtcbiAgICAgICAgdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2FsY3VsYXRlT3ZlcmxheU9mZnNldFgoYmFzZU9mZnNldFg6IG51bWJlcik6IG51bWJlcltdIHtcbiAgICAgICAgbGV0IG9mZnNldFggPSBiYXNlT2Zmc2V0WDtcbiAgICAgICAgY29uc3Qgd2luZG93V2lkdGggPSB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZj8uaG9zdEVsZW1lbnQuY2xpZW50V2lkdGg7XG4gICAgICAgIGNvbnN0IHsgbGVmdDogbGVmdEluZGVudCwgcmlnaHQ6IHRyaWdnZXJSaWdodCwgd2lkdGg6IHRyaWdnZXJXaWR0aCB9ID0gdGhpcy50cmlnZ2VyUmVjdDtcbiAgICAgICAgY29uc3QgeyB3aWR0aDogb3ZlcmxheVJlY3RXaWR0aCB9ID0gdGhpcy5nZXRPdmVybGF5UmVjdCgpO1xuICAgICAgICBjb25zdCByaWdodEluZGVudCA9IHdpbmRvd1dpZHRoIC0gdHJpZ2dlclJpZ2h0O1xuICAgICAgICAvLyBTZXR0aW5nIGRpcmVjdGlvbiBvZiBkcm9wZG93biBleHBhbnNpb25cbiAgICAgICAgY29uc3QgaXNSaWdodERpcmVjdGlvbiA9IGxlZnRJbmRlbnQgPD0gcmlnaHRJbmRlbnQ7XG5cbiAgICAgICAgY29uc3QgaW5kZW50ID0gaXNSaWdodERpcmVjdGlvbiA/IHJpZ2h0SW5kZW50IDogbGVmdEluZGVudDtcbiAgICAgICAgY29uc3QgbWF4RHJvcGRvd25XaWR0aCA9IGluZGVudCArIHRyaWdnZXJXaWR0aCAtIFNFTEVDVF9QQU5FTF9WSUVXUE9SVF9QQURESU5HO1xuICAgICAgICBjb25zdCBvdmVybGF5TWF4V2lkdGggPSBvdmVybGF5UmVjdFdpZHRoIDwgbWF4RHJvcGRvd25XaWR0aCA/IG92ZXJsYXlSZWN0V2lkdGggOiBtYXhEcm9wZG93bldpZHRoO1xuXG4gICAgICAgIGlmICghaXNSaWdodERpcmVjdGlvbikge1xuICAgICAgICAgICAgY29uc3QgbGVmdE9mZnNldCA9IHRyaWdnZXJSaWdodCAtIG92ZXJsYXlNYXhXaWR0aDtcblxuICAgICAgICAgICAgb2Zmc2V0WCAtPSBsZWZ0SW5kZW50IC0gbGVmdE9mZnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbb2Zmc2V0WCwgb3ZlcmxheU1heFdpZHRoXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0T3ZlcmxheVJlY3QoKTogRE9NUmVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVzZXRPdmVybGF5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm92ZXJsYXlEaXIub3ZlcmxheVJlZi5ob3N0RWxlbWVudC5jbGFzc0xpc3QuYWRkKHRoaXMub3ZlcmxheVBhbmVsQ2xhc3MpO1xuICAgICAgICB0aGlzLm92ZXJsYXlEaXIub2Zmc2V0WCA9IDA7XG4gICAgICAgIHRoaXMub3ZlcmxheURpci5vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1heFdpZHRoID0gJ3Vuc2V0JztcbiAgICAgICAgdGhpcy5vdmVybGF5RGlyLm92ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICB9XG59XG4iXX0=
@@ -21,10 +21,10 @@ export class KbqPseudoCheckbox extends KbqColorDirective {
21
21
  this.state = 'unchecked';
22
22
  this.disabled = false;
23
23
  }
24
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckbox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
25
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqPseudoCheckbox, selector: "kbq-pseudo-checkbox", inputs: { big: "big", state: "state", disabled: "disabled" }, host: { properties: { "class.kbq-checkbox_big": "big", "class.kbq-indeterminate": "state === \"indeterminate\"", "class.kbq-checked": "state === \"checked\"", "class.kbq-disabled": "disabled" }, classAttribute: "kbq-pseudo-checkbox" }, usesInheritance: true, ngImport: i0, template: "<i class=\"kbq-checkbox-checkmark kbq kbq-check-s_16\"></i>\n<i class=\"kbq-checkbox-mixedmark kbq kbq-minus-s_16\"></i>\n", styles: [".kbq-pseudo-checkbox{position:relative;display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;width:var(--kbq-checkbox-size-normal-width);height:var(--kbq-checkbox-size-normal-width);border-radius:var(--kbq-checkbox-size-normal-border-radius);border-width:var(--kbq-checkbox-size-normal-border-width);border-style:solid;cursor:pointer;vertical-align:middle;flex-shrink:0}.kbq-pseudo-checkbox .kbq-checkbox-checkmark,.kbq-pseudo-checkbox .kbq-checkbox-mixedmark{display:none}.kbq-pseudo-checkbox.kbq-pseudo-checkbox-checked,.kbq-pseudo-checkbox.kbq-pseudo-checkbox-indeterminate{border-color:transparent}.kbq-pseudo-checkbox.kbq-checked .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-indeterminate .kbq-checkbox-mixedmark{display:inline-block}.kbq-pseudo-checkbox.kbq-disabled{cursor:default}.kbq-pseudo-checkbox.kbq-pseudo-checkbox_big{width:var(--kbq-checkbox-size-big-width);height:var(--kbq-checkbox-size-big-width);border-radius:var(--kbq-checkbox-size-big-border-radius);border-width:var(--kbq-checkbox-size-big-border-width)}.kbq-pseudo-checkbox{border-color:var(--kbq-checkbox-theme-default-border);background:var(--kbq-checkbox-theme-default-background)}.kbq-pseudo-checkbox .kbq-checkbox-checkmark,.kbq-pseudo-checkbox .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-theme-default-color)}.kbq-pseudo-checkbox.kbq-checked,.kbq-pseudo-checkbox.kbq-indeterminate{border-color:var(--kbq-checkbox-theme-states-checked-border);background:var(--kbq-checkbox-theme-states-checked-background)}.kbq-pseudo-checkbox.kbq-disabled{border-color:var(--kbq-checkbox-theme-states-disabled-border);background:var(--kbq-checkbox-theme-states-disabled-background)}.kbq-pseudo-checkbox.kbq-disabled .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-disabled .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-theme-states-disabled-color)}.kbq-pseudo-checkbox.kbq-error{border-color:var(--kbq-checkbox-error-default-border);background:var(--kbq-checkbox-error-default-background)}.kbq-pseudo-checkbox.kbq-error .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-error .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-error-default-color)}.kbq-pseudo-checkbox.kbq-error.kbq-checked,.kbq-pseudo-checkbox.kbq-error.kbq-indeterminate{border-color:var(--kbq-checkbox-error-states-checked-border);background:var(--kbq-checkbox-error-states-checked-background)}.kbq-pseudo-checkbox.kbq-error.kbq-disabled{border-color:var(--kbq-checkbox-error-states-disabled-border);background:var(--kbq-checkbox-error-states-disabled-background)}.kbq-pseudo-checkbox.kbq-error.kbq-disabled .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-error.kbq-disabled .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-error-states-disabled-color)}\n", ".kbq-pseudo-checkbox{--kbq-checkbox-size-normal-width: var(--kbq-size-l);--kbq-checkbox-size-normal-border-width: var(--kbq-size-border-width);--kbq-checkbox-size-normal-border-radius: var(--kbq-size-xxs);--kbq-checkbox-size-normal-horizontal-content-padding: var(--kbq-size-s);--kbq-checkbox-size-normal-vertical-content-padding: var(--kbq-size-3xs);--kbq-checkbox-size-normal-top: var(--kbq-size-3xs);--kbq-checkbox-size-big-width: var(--kbq-size-l);--kbq-checkbox-size-big-border-width: var(--kbq-size-border-width);--kbq-checkbox-size-big-border-radius: var(--kbq-size-xxs);--kbq-checkbox-size-big-horizontal-content-padding: var(--kbq-size-s);--kbq-checkbox-size-big-vertical-content-padding: var(--kbq-size-3xs);--kbq-checkbox-size-big-top: var(--kbq-size-xxs);--kbq-checkbox-theme-default-border: var(--kbq-line-contrast-fade);--kbq-checkbox-theme-default-color: var(--kbq-icon-white);--kbq-checkbox-theme-default-text: var(--kbq-foreground-contrast);--kbq-checkbox-theme-default-background: var(--kbq-background-bg);--kbq-checkbox-theme-default-caption: var(--kbq-foreground-contrast-secondary);--kbq-checkbox-theme-states-hover-border: var(--kbq-line-contrast-fade);--kbq-checkbox-theme-states-hover-background: var(--kbq-states-background-transparent-hover);--kbq-checkbox-theme-states-checked-border: transparent;--kbq-checkbox-theme-states-checked-background: var(--kbq-background-theme);--kbq-checkbox-theme-states-checked-hover-border: transparent;--kbq-checkbox-theme-states-checked-hover-background: var(--kbq-states-background-theme-hover);--kbq-checkbox-theme-states-focused-border: var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-focused-background: var(--kbq-background-bg);--kbq-checkbox-theme-states-focused-outline: 1px solid var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-checked-focused-border: var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-checked-focused-background: var(--kbq-background-theme);--kbq-checkbox-theme-states-checked-focused-outline: 1px solid var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-disabled-border: var(--kbq-states-line-disabled);--kbq-checkbox-theme-states-disabled-color: var(--kbq-states-icon-disabled);--kbq-checkbox-theme-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-checkbox-theme-states-disabled-background: var(--kbq-states-background-disabled);--kbq-checkbox-theme-states-disabled-caption: var(--kbq-states-icon-disabled);--kbq-checkbox-error-default-border: var(--kbq-line-error);--kbq-checkbox-error-default-color: var(--kbq-icon-white);--kbq-checkbox-error-default-text: var(--kbq-foreground-contrast);--kbq-checkbox-error-default-background: var(--kbq-background-error-less);--kbq-checkbox-error-default-caption: var(--kbq-foreground-contrast-secondary);--kbq-checkbox-error-states-hover-border: var(--kbq-line-error);--kbq-checkbox-error-states-hover-background: var(--kbq-states-background-error-fade-hover);--kbq-checkbox-error-states-checked-border: transparent;--kbq-checkbox-error-states-checked-background: var(--kbq-background-error);--kbq-checkbox-error-states-checked-hover-border: transparent;--kbq-checkbox-error-states-checked-hover-background: var(--kbq-states-background-error-hover);--kbq-checkbox-error-states-focused-border: var(--kbq-line-error);--kbq-checkbox-error-states-focused-background: var(--kbq-background-error-less);--kbq-checkbox-error-states-focused-outline: 1px solid var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-checked-focused-border: var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-checked-focused-background: var(--kbq-background-error);--kbq-checkbox-error-states-checked-focused-outline: 1px solid var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-disabled-border: var(--kbq-states-line-disabled);--kbq-checkbox-error-states-disabled-color: var(--kbq-states-icon-disabled);--kbq-checkbox-error-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-checkbox-error-states-disabled-background: var(--kbq-states-background-disabled);--kbq-checkbox-error-states-disabled-caption: var(--kbq-states-icon-disabled)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
24
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckbox, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
25
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: KbqPseudoCheckbox, selector: "kbq-pseudo-checkbox", inputs: { big: "big", state: "state", disabled: "disabled" }, host: { properties: { "class.kbq-checkbox_big": "big", "class.kbq-indeterminate": "state === \"indeterminate\"", "class.kbq-checked": "state === \"checked\"", "class.kbq-disabled": "disabled" }, classAttribute: "kbq-pseudo-checkbox" }, usesInheritance: true, ngImport: i0, template: "<i class=\"kbq-checkbox-checkmark kbq kbq-check-s_16\"></i>\n<i class=\"kbq-checkbox-mixedmark kbq kbq-minus-s_16\"></i>\n", styles: [".kbq-pseudo-checkbox{position:relative;display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;width:var(--kbq-checkbox-size-normal-width);height:var(--kbq-checkbox-size-normal-width);border-radius:var(--kbq-checkbox-size-normal-border-radius);border-width:var(--kbq-checkbox-size-normal-border-width);border-style:solid;cursor:pointer;vertical-align:middle;flex-shrink:0}.kbq-pseudo-checkbox .kbq-checkbox-checkmark,.kbq-pseudo-checkbox .kbq-checkbox-mixedmark{display:none}.kbq-pseudo-checkbox.kbq-pseudo-checkbox-checked,.kbq-pseudo-checkbox.kbq-pseudo-checkbox-indeterminate{border-color:transparent}.kbq-pseudo-checkbox.kbq-checked .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-indeterminate .kbq-checkbox-mixedmark{display:inline-block}.kbq-pseudo-checkbox.kbq-disabled{cursor:default}.kbq-pseudo-checkbox.kbq-pseudo-checkbox_big{width:var(--kbq-checkbox-size-big-width);height:var(--kbq-checkbox-size-big-width);border-radius:var(--kbq-checkbox-size-big-border-radius);border-width:var(--kbq-checkbox-size-big-border-width)}.kbq-pseudo-checkbox{border-color:var(--kbq-checkbox-theme-default-border);background:var(--kbq-checkbox-theme-default-background)}.kbq-pseudo-checkbox .kbq-checkbox-checkmark,.kbq-pseudo-checkbox .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-theme-default-color)}.kbq-pseudo-checkbox.kbq-checked,.kbq-pseudo-checkbox.kbq-indeterminate{border-color:var(--kbq-checkbox-theme-states-checked-border);background:var(--kbq-checkbox-theme-states-checked-background)}.kbq-pseudo-checkbox.kbq-disabled{border-color:var(--kbq-checkbox-theme-states-disabled-border);background:var(--kbq-checkbox-theme-states-disabled-background)}.kbq-pseudo-checkbox.kbq-disabled .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-disabled .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-theme-states-disabled-color)}.kbq-pseudo-checkbox.kbq-error{border-color:var(--kbq-checkbox-error-default-border);background:var(--kbq-checkbox-error-default-background)}.kbq-pseudo-checkbox.kbq-error .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-error .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-error-default-color)}.kbq-pseudo-checkbox.kbq-error.kbq-checked,.kbq-pseudo-checkbox.kbq-error.kbq-indeterminate{border-color:var(--kbq-checkbox-error-states-checked-border);background:var(--kbq-checkbox-error-states-checked-background)}.kbq-pseudo-checkbox.kbq-error.kbq-disabled{border-color:var(--kbq-checkbox-error-states-disabled-border);background:var(--kbq-checkbox-error-states-disabled-background)}.kbq-pseudo-checkbox.kbq-error.kbq-disabled .kbq-checkbox-checkmark,.kbq-pseudo-checkbox.kbq-error.kbq-disabled .kbq-checkbox-mixedmark{color:var(--kbq-checkbox-error-states-disabled-color)}\n", ".kbq-pseudo-checkbox{--kbq-checkbox-size-normal-width: var(--kbq-size-l);--kbq-checkbox-size-normal-border-width: var(--kbq-size-border-width);--kbq-checkbox-size-normal-border-radius: var(--kbq-size-xxs);--kbq-checkbox-size-normal-horizontal-content-padding: var(--kbq-size-s);--kbq-checkbox-size-normal-vertical-content-padding: var(--kbq-size-3xs);--kbq-checkbox-size-normal-top: var(--kbq-size-3xs);--kbq-checkbox-size-big-width: var(--kbq-size-l);--kbq-checkbox-size-big-border-width: var(--kbq-size-border-width);--kbq-checkbox-size-big-border-radius: var(--kbq-size-xxs);--kbq-checkbox-size-big-horizontal-content-padding: var(--kbq-size-s);--kbq-checkbox-size-big-vertical-content-padding: var(--kbq-size-3xs);--kbq-checkbox-size-big-top: var(--kbq-size-xxs);--kbq-checkbox-theme-default-border: var(--kbq-line-contrast-fade);--kbq-checkbox-theme-default-color: var(--kbq-icon-white);--kbq-checkbox-theme-default-text: var(--kbq-foreground-contrast);--kbq-checkbox-theme-default-background: var(--kbq-background-bg);--kbq-checkbox-theme-default-caption: var(--kbq-foreground-contrast-secondary);--kbq-checkbox-theme-states-hover-border: var(--kbq-line-contrast-fade);--kbq-checkbox-theme-states-hover-background: var(--kbq-states-background-transparent-hover);--kbq-checkbox-theme-states-checked-border: transparent;--kbq-checkbox-theme-states-checked-background: var(--kbq-background-theme);--kbq-checkbox-theme-states-checked-hover-border: transparent;--kbq-checkbox-theme-states-checked-hover-background: var(--kbq-states-background-theme-hover);--kbq-checkbox-theme-states-focused-border: var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-focused-background: var(--kbq-background-bg);--kbq-checkbox-theme-states-focused-outline: 1px solid var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-checked-focused-border: var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-checked-focused-background: var(--kbq-background-theme);--kbq-checkbox-theme-states-checked-focused-outline: 1px solid var(--kbq-states-line-focus-theme);--kbq-checkbox-theme-states-disabled-border: var(--kbq-states-line-disabled);--kbq-checkbox-theme-states-disabled-color: var(--kbq-states-icon-disabled);--kbq-checkbox-theme-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-checkbox-theme-states-disabled-background: var(--kbq-states-background-disabled);--kbq-checkbox-theme-states-disabled-caption: var(--kbq-states-icon-disabled);--kbq-checkbox-error-default-border: var(--kbq-line-error);--kbq-checkbox-error-default-color: var(--kbq-icon-white);--kbq-checkbox-error-default-text: var(--kbq-foreground-contrast);--kbq-checkbox-error-default-background: var(--kbq-background-error-less);--kbq-checkbox-error-default-caption: var(--kbq-foreground-contrast-secondary);--kbq-checkbox-error-states-hover-border: var(--kbq-line-error);--kbq-checkbox-error-states-hover-background: var(--kbq-states-background-error-fade-hover);--kbq-checkbox-error-states-checked-border: transparent;--kbq-checkbox-error-states-checked-background: var(--kbq-background-error);--kbq-checkbox-error-states-checked-hover-border: transparent;--kbq-checkbox-error-states-checked-hover-background: var(--kbq-states-background-error-hover);--kbq-checkbox-error-states-focused-border: var(--kbq-line-error);--kbq-checkbox-error-states-focused-background: var(--kbq-background-error-less);--kbq-checkbox-error-states-focused-outline: 1px solid var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-checked-focused-border: var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-checked-focused-background: var(--kbq-background-error);--kbq-checkbox-error-states-checked-focused-outline: 1px solid var(--kbq-states-line-focus-error);--kbq-checkbox-error-states-disabled-border: var(--kbq-states-line-disabled);--kbq-checkbox-error-states-disabled-color: var(--kbq-states-icon-disabled);--kbq-checkbox-error-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-checkbox-error-states-disabled-background: var(--kbq-states-background-disabled);--kbq-checkbox-error-states-disabled-caption: var(--kbq-states-icon-disabled)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckbox, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckbox, decorators: [{
28
28
  type: Component,
29
29
  args: [{ selector: 'kbq-pseudo-checkbox', host: {
30
30
  class: 'kbq-pseudo-checkbox',
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
40
40
  }], disabled: [{
41
41
  type: Input
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHNldWRvLWNoZWNrYm94LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdGlvbi9wc2V1ZG8tY2hlY2tib3gvcHNldWRvLWNoZWNrYm94LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdGlvbi9wc2V1ZG8tY2hlY2tib3gvcHNldWRvLWNoZWNrYm94LnBhcnRpYWwuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFJM0Q7Ozs7Ozs7Ozs7OztHQVlHO0FBZ0JILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxpQkFBaUI7SUFmeEQ7O1FBZ0JhLFFBQUcsR0FBWSxLQUFLLENBQUM7UUFFckIsVUFBSyxHQUEyQixXQUFXLENBQUM7UUFFNUMsYUFBUSxHQUFZLEtBQUssQ0FBQztLQUN0QztpSUFOWSxpQkFBaUI7cUhBQWpCLGlCQUFpQiw0WENqQzlCLDRIQUVBOzsyRkQrQmEsaUJBQWlCO2tCQWY3QixTQUFTOytCQUNJLHFCQUFxQixRQUd6Qjt3QkFDRixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QiwwQkFBMEIsRUFBRSxLQUFLO3dCQUNqQywyQkFBMkIsRUFBRSwyQkFBMkI7d0JBQ3hELHFCQUFxQixFQUFFLHFCQUFxQjt3QkFDNUMsc0JBQXNCLEVBQUUsVUFBVTtxQkFDckMsdUJBQ29CLEtBQUssbUJBQ1QsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsR0FBRztzQkFBWCxLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLYnFDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2NvbW1vbi1iZWhhdmlvcnMnO1xuXG5leHBvcnQgdHlwZSBLYnFQc2V1ZG9DaGVja2JveFN0YXRlID0gJ3VuY2hlY2tlZCcgfCAnY2hlY2tlZCcgfCAnaW5kZXRlcm1pbmF0ZSc7XG5cbi8qKlxuICogQ29tcG9uZW50IHRoYXQgc2hvd3MgYSBzaW1wbGlmaWVkIGNoZWNrYm94IHdpdGhvdXQgaW5jbHVkaW5nIGFueSBraW5kIG9mIFwicmVhbFwiIGNoZWNrYm94LlxuICogTWVhbnQgdG8gYmUgdXNlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBwdXJlbHkgZGVjb3JhdGl2ZSBhbmQgYSBsYXJnZSBudW1iZXIgb2YgdGhlbSB3aWxsIGJlXG4gKiBpbmNsdWRlZCwgc3VjaCBhcyBmb3IgdGhlIG9wdGlvbnMgaW4gYSBtdWx0aS1zZWxlY3QuIFVzZXMgbm8gU1ZHcyBvciBjb21wbGV4IGFuaW1hdGlvbnMuXG4gKiBOb3RlIHRoYXQgdGhlbWluZyBpcyBtZWFudCB0byBiZSBoYW5kbGVkIGJ5IHRoZSBwYXJlbnQgZWxlbWVudCwgZS5nLlxuICogYGticS1wcmltYXJ5IC5rYnEtcHNldWRvLWNoZWNrYm94YC5cbiAqXG4gKiBOb3RlIHRoYXQgdGhpcyBjb21wb25lbnQgd2lsbCBiZSBjb21wbGV0ZWx5IGludmlzaWJsZSB0byBzY3JlZW4tcmVhZGVyIHVzZXJzLiBUaGlzIGlzICpub3QqXG4gKiBpbnRlcmNoYW5nZWFibGUgd2l0aCBgPGticS1jaGVja2JveD5gIGFuZCBzaG91bGQgKm5vdCogYmUgdXNlZCBpZiB0aGUgdXNlciB3b3VsZCBkaXJlY3RseVxuICogaW50ZXJhY3Qgd2l0aCB0aGUgY2hlY2tib3guIFRoZSBwc2V1ZG8tY2hlY2tib3ggc2hvdWxkIG9ubHkgYmUgdXNlZCBhcyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWxcbiAqIG9mIG1vcmUgY29tcGxleCBjb21wb25lbnRzIHRoYXQgYXBwcm9wcmlhdGVseSBoYW5kbGUgc2VsZWN0ZWQgLyBjaGVja2VkIHN0YXRlLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wc2V1ZG8tY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAncHNldWRvLWNoZWNrYm94LnBhcnRpYWwuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ3BzZXVkby1jaGVja2JveC5zY3NzJywgJ3BzZXVkby1jaGVja2JveC10b2tlbnMuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtcHNldWRvLWNoZWNrYm94JyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtY2hlY2tib3hfYmlnXSc6ICdiaWcnLFxuICAgICAgICAnW2NsYXNzLmticS1pbmRldGVybWluYXRlXSc6ICdzdGF0ZSA9PT0gXCJpbmRldGVybWluYXRlXCInLFxuICAgICAgICAnW2NsYXNzLmticS1jaGVja2VkXSc6ICdzdGF0ZSA9PT0gXCJjaGVja2VkXCInLFxuICAgICAgICAnW2NsYXNzLmticS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEticVBzZXVkb0NoZWNrYm94IGV4dGVuZHMgS2JxQ29sb3JEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIGJpZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc3RhdGU6IEticVBzZXVkb0NoZWNrYm94U3RhdGUgPSAndW5jaGVja2VkJztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG59XG4iLCI8aSBjbGFzcz1cImticS1jaGVja2JveC1jaGVja21hcmsga2JxIGticS1jaGVjay1zXzE2XCI+PC9pPlxuPGkgY2xhc3M9XCJrYnEtY2hlY2tib3gtbWl4ZWRtYXJrIGticSBrYnEtbWludXMtc18xNlwiPjwvaT5cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHNldWRvLWNoZWNrYm94LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdGlvbi9wc2V1ZG8tY2hlY2tib3gvcHNldWRvLWNoZWNrYm94LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb3JlL3NlbGVjdGlvbi9wc2V1ZG8tY2hlY2tib3gvcHNldWRvLWNoZWNrYm94LnBhcnRpYWwuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFJM0Q7Ozs7Ozs7Ozs7OztHQVlHO0FBZ0JILE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxpQkFBaUI7SUFmeEQ7O1FBZ0JhLFFBQUcsR0FBWSxLQUFLLENBQUM7UUFFckIsVUFBSyxHQUEyQixXQUFXLENBQUM7UUFFNUMsYUFBUSxHQUFZLEtBQUssQ0FBQztLQUN0QztrSUFOWSxpQkFBaUI7c0hBQWpCLGlCQUFpQiw0WENqQzlCLDRIQUVBOzs0RkQrQmEsaUJBQWlCO2tCQWY3QixTQUFTOytCQUNJLHFCQUFxQixRQUd6Qjt3QkFDRixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QiwwQkFBMEIsRUFBRSxLQUFLO3dCQUNqQywyQkFBMkIsRUFBRSwyQkFBMkI7d0JBQ3hELHFCQUFxQixFQUFFLHFCQUFxQjt3QkFDNUMsc0JBQXNCLEVBQUUsVUFBVTtxQkFDckMsdUJBQ29CLEtBQUssbUJBQ1QsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsR0FBRztzQkFBWCxLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLYnFDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2NvbW1vbi1iZWhhdmlvcnMnO1xuXG5leHBvcnQgdHlwZSBLYnFQc2V1ZG9DaGVja2JveFN0YXRlID0gJ3VuY2hlY2tlZCcgfCAnY2hlY2tlZCcgfCAnaW5kZXRlcm1pbmF0ZSc7XG5cbi8qKlxuICogQ29tcG9uZW50IHRoYXQgc2hvd3MgYSBzaW1wbGlmaWVkIGNoZWNrYm94IHdpdGhvdXQgaW5jbHVkaW5nIGFueSBraW5kIG9mIFwicmVhbFwiIGNoZWNrYm94LlxuICogTWVhbnQgdG8gYmUgdXNlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBwdXJlbHkgZGVjb3JhdGl2ZSBhbmQgYSBsYXJnZSBudW1iZXIgb2YgdGhlbSB3aWxsIGJlXG4gKiBpbmNsdWRlZCwgc3VjaCBhcyBmb3IgdGhlIG9wdGlvbnMgaW4gYSBtdWx0aS1zZWxlY3QuIFVzZXMgbm8gU1ZHcyBvciBjb21wbGV4IGFuaW1hdGlvbnMuXG4gKiBOb3RlIHRoYXQgdGhlbWluZyBpcyBtZWFudCB0byBiZSBoYW5kbGVkIGJ5IHRoZSBwYXJlbnQgZWxlbWVudCwgZS5nLlxuICogYGticS1wcmltYXJ5IC5rYnEtcHNldWRvLWNoZWNrYm94YC5cbiAqXG4gKiBOb3RlIHRoYXQgdGhpcyBjb21wb25lbnQgd2lsbCBiZSBjb21wbGV0ZWx5IGludmlzaWJsZSB0byBzY3JlZW4tcmVhZGVyIHVzZXJzLiBUaGlzIGlzICpub3QqXG4gKiBpbnRlcmNoYW5nZWFibGUgd2l0aCBgPGticS1jaGVja2JveD5gIGFuZCBzaG91bGQgKm5vdCogYmUgdXNlZCBpZiB0aGUgdXNlciB3b3VsZCBkaXJlY3RseVxuICogaW50ZXJhY3Qgd2l0aCB0aGUgY2hlY2tib3guIFRoZSBwc2V1ZG8tY2hlY2tib3ggc2hvdWxkIG9ubHkgYmUgdXNlZCBhcyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWxcbiAqIG9mIG1vcmUgY29tcGxleCBjb21wb25lbnRzIHRoYXQgYXBwcm9wcmlhdGVseSBoYW5kbGUgc2VsZWN0ZWQgLyBjaGVja2VkIHN0YXRlLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1wc2V1ZG8tY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAncHNldWRvLWNoZWNrYm94LnBhcnRpYWwuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ3BzZXVkby1jaGVja2JveC5zY3NzJywgJ3BzZXVkby1jaGVja2JveC10b2tlbnMuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtcHNldWRvLWNoZWNrYm94JyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtY2hlY2tib3hfYmlnXSc6ICdiaWcnLFxuICAgICAgICAnW2NsYXNzLmticS1pbmRldGVybWluYXRlXSc6ICdzdGF0ZSA9PT0gXCJpbmRldGVybWluYXRlXCInLFxuICAgICAgICAnW2NsYXNzLmticS1jaGVja2VkXSc6ICdzdGF0ZSA9PT0gXCJjaGVja2VkXCInLFxuICAgICAgICAnW2NsYXNzLmticS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEticVBzZXVkb0NoZWNrYm94IGV4dGVuZHMgS2JxQ29sb3JEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIGJpZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc3RhdGU6IEticVBzZXVkb0NoZWNrYm94U3RhdGUgPSAndW5jaGVja2VkJztcblxuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG59XG4iLCI8aSBjbGFzcz1cImticS1jaGVja2JveC1jaGVja21hcmsga2JxIGticS1jaGVjay1zXzE2XCI+PC9pPlxuPGkgY2xhc3M9XCJrYnEtY2hlY2tib3gtbWl4ZWRtYXJrIGticSBrYnEtbWludXMtc18xNlwiPjwvaT5cbiJdfQ==
@@ -3,11 +3,11 @@ import { NgModule } from '@angular/core';
3
3
  import { KbqPseudoCheckbox } from './pseudo-checkbox';
4
4
  import * as i0 from "@angular/core";
5
5
  export class KbqPseudoCheckboxModule {
6
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckboxModule, declarations: [KbqPseudoCheckbox], imports: [CommonModule], exports: [KbqPseudoCheckbox] }); }
8
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckboxModule, imports: [CommonModule] }); }
6
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckboxModule, declarations: [KbqPseudoCheckbox], imports: [CommonModule], exports: [KbqPseudoCheckbox] }); }
8
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckboxModule, imports: [CommonModule] }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqPseudoCheckboxModule, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqPseudoCheckboxModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  imports: [CommonModule],
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
15
15
  declarations: [KbqPseudoCheckbox]
16
16
  }]
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHNldWRvLWNoZWNrYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZWxlY3Rpb24vcHNldWRvLWNoZWNrYm94L3BzZXVkby1jaGVja2JveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBT3RELE1BQU0sT0FBTyx1QkFBdUI7aUlBQXZCLHVCQUF1QjtrSUFBdkIsdUJBQXVCLGlCQUZqQixpQkFBaUIsYUFGdEIsWUFBWSxhQUNaLGlCQUFpQjtrSUFHbEIsdUJBQXVCLFlBSnRCLFlBQVk7OzJGQUliLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUM1QixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEticVBzZXVkb0NoZWNrYm94IH0gZnJvbSAnLi9wc2V1ZG8tY2hlY2tib3gnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGV4cG9ydHM6IFtLYnFQc2V1ZG9DaGVja2JveF0sXG4gICAgZGVjbGFyYXRpb25zOiBbS2JxUHNldWRvQ2hlY2tib3hdXG59KVxuZXhwb3J0IGNsYXNzIEticVBzZXVkb0NoZWNrYm94TW9kdWxlIHt9XG4iXX0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHNldWRvLWNoZWNrYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZWxlY3Rpb24vcHNldWRvLWNoZWNrYm94L3BzZXVkby1jaGVja2JveC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBT3RELE1BQU0sT0FBTyx1QkFBdUI7a0lBQXZCLHVCQUF1QjttSUFBdkIsdUJBQXVCLGlCQUZqQixpQkFBaUIsYUFGdEIsWUFBWSxhQUNaLGlCQUFpQjttSUFHbEIsdUJBQXVCLFlBSnRCLFlBQVk7OzRGQUliLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUM1QixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEticVBzZXVkb0NoZWNrYm94IH0gZnJvbSAnLi9wc2V1ZG8tY2hlY2tib3gnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAgIGV4cG9ydHM6IFtLYnFQc2V1ZG9DaGVja2JveF0sXG4gICAgZGVjbGFyYXRpb25zOiBbS2JxUHNldWRvQ2hlY2tib3hdXG59KVxuZXhwb3J0IGNsYXNzIEticVBzZXVkb0NoZWNrYm94TW9kdWxlIHt9XG4iXX0=
@@ -32,11 +32,11 @@ export class KbqMeasureScrollbarService {
32
32
  this.document.body.removeChild(scrollDiv);
33
33
  this._scrollBarWidth = width;
34
34
  }
35
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqMeasureScrollbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqMeasureScrollbarService, providedIn: 'root' }); }
35
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqMeasureScrollbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqMeasureScrollbarService, providedIn: 'root' }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqMeasureScrollbarService, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqMeasureScrollbarService, decorators: [{
39
39
  type: Injectable,
40
40
  args: [{ providedIn: 'root' }]
41
41
  }], ctorParameters: () => [] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVhc3VyZS1zY3JvbGxiYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZXJ2aWNlcy9tZWFzdXJlLXNjcm9sbGJhci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLDBCQUEwQjtJQUduQyxJQUFJLGNBQWM7UUFDZCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTFCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBV0Q7UUFyQm1CLGFBQVEsR0FBRyxNQUFNLENBQVcsUUFBUSxDQUFDLENBQUM7UUFhakQscUJBQWdCLEdBQUc7WUFDdkIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsR0FBRyxFQUFFLFNBQVM7WUFDZCxLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxNQUFNO1lBQ2QsUUFBUSxFQUFFLFFBQVE7U0FDckIsQ0FBQztRQUdFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzdDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUNuRCxTQUFTLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwRSxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUUxQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUM7UUFFNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7aUlBekNRLDBCQUEwQjtxSUFBMUIsMEJBQTBCLGNBRGIsTUFBTTs7MkZBQ25CLDBCQUEwQjtrQkFEdEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBLYnFNZWFzdXJlU2Nyb2xsYmFyU2VydmljZSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0PERvY3VtZW50PihET0NVTUVOVCk7XG5cbiAgICBnZXQgc2Nyb2xsQmFyV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMuX3Njcm9sbEJhcldpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fc2Nyb2xsQmFyV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluaXRTY3JvbGxCYXJXaWR0aCgpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxCYXJXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zY3JvbGxCYXJXaWR0aDogbnVtYmVyO1xuICAgIHByaXZhdGUgc2Nyb2xsYmFyTWVhc3VyZSA9IHtcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHRvcDogJy05OTk5cHgnLFxuICAgICAgICB3aWR0aDogJzUwcHgnLFxuICAgICAgICBoZWlnaHQ6ICc1MHB4JyxcbiAgICAgICAgb3ZlcmZsb3c6ICdzY3JvbGwnXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxCYXJXaWR0aCgpO1xuICAgIH1cblxuICAgIGluaXRTY3JvbGxCYXJXaWR0aCgpIHtcbiAgICAgICAgY29uc3Qgc2Nyb2xsRGl2ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgICAgICBmb3IgKGNvbnN0IHNjcm9sbFByb3AgaW4gdGhpcy5zY3JvbGxiYXJNZWFzdXJlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zY3JvbGxiYXJNZWFzdXJlLmhhc093blByb3BlcnR5KHNjcm9sbFByb3ApKSB7XG4gICAgICAgICAgICAgICAgc2Nyb2xsRGl2LnN0eWxlW3Njcm9sbFByb3BdID0gdGhpcy5zY3JvbGxiYXJNZWFzdXJlW3Njcm9sbFByb3BdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcm9sbERpdik7XG5cbiAgICAgICAgY29uc3Qgd2lkdGggPSBzY3JvbGxEaXYub2Zmc2V0V2lkdGggLSBzY3JvbGxEaXYuY2xpZW50V2lkdGg7XG5cbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHNjcm9sbERpdik7XG4gICAgICAgIHRoaXMuX3Njcm9sbEJhcldpZHRoID0gd2lkdGg7XG4gICAgfVxufVxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVhc3VyZS1zY3JvbGxiYXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZXJ2aWNlcy9tZWFzdXJlLXNjcm9sbGJhci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLDBCQUEwQjtJQUduQyxJQUFJLGNBQWM7UUFDZCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDaEMsQ0FBQztRQUVELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTFCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBV0Q7UUFyQm1CLGFBQVEsR0FBRyxNQUFNLENBQVcsUUFBUSxDQUFDLENBQUM7UUFhakQscUJBQWdCLEdBQUc7WUFDdkIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsR0FBRyxFQUFFLFNBQVM7WUFDZCxLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxNQUFNO1lBQ2QsUUFBUSxFQUFFLFFBQVE7U0FDckIsQ0FBQztRQUdFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyRCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzdDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUNuRCxTQUFTLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwRSxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUUxQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUM7UUFFNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ2pDLENBQUM7a0lBekNRLDBCQUEwQjtzSUFBMUIsMEJBQTBCLGNBRGIsTUFBTTs7NEZBQ25CLDBCQUEwQjtrQkFEdEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBLYnFNZWFzdXJlU2Nyb2xsYmFyU2VydmljZSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0PERvY3VtZW50PihET0NVTUVOVCk7XG5cbiAgICBnZXQgc2Nyb2xsQmFyV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKHRoaXMuX3Njcm9sbEJhcldpZHRoKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fc2Nyb2xsQmFyV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluaXRTY3JvbGxCYXJXaWR0aCgpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxCYXJXaWR0aDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zY3JvbGxCYXJXaWR0aDogbnVtYmVyO1xuICAgIHByaXZhdGUgc2Nyb2xsYmFyTWVhc3VyZSA9IHtcbiAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgIHRvcDogJy05OTk5cHgnLFxuICAgICAgICB3aWR0aDogJzUwcHgnLFxuICAgICAgICBoZWlnaHQ6ICc1MHB4JyxcbiAgICAgICAgb3ZlcmZsb3c6ICdzY3JvbGwnXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRTY3JvbGxCYXJXaWR0aCgpO1xuICAgIH1cblxuICAgIGluaXRTY3JvbGxCYXJXaWR0aCgpIHtcbiAgICAgICAgY29uc3Qgc2Nyb2xsRGl2ID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgICAgICBmb3IgKGNvbnN0IHNjcm9sbFByb3AgaW4gdGhpcy5zY3JvbGxiYXJNZWFzdXJlKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zY3JvbGxiYXJNZWFzdXJlLmhhc093blByb3BlcnR5KHNjcm9sbFByb3ApKSB7XG4gICAgICAgICAgICAgICAgc2Nyb2xsRGl2LnN0eWxlW3Njcm9sbFByb3BdID0gdGhpcy5zY3JvbGxiYXJNZWFzdXJlW3Njcm9sbFByb3BdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcm9sbERpdik7XG5cbiAgICAgICAgY29uc3Qgd2lkdGggPSBzY3JvbGxEaXYub2Zmc2V0V2lkdGggLSBzY3JvbGxEaXYuY2xpZW50V2lkdGg7XG5cbiAgICAgICAgdGhpcy5kb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHNjcm9sbERpdik7XG4gICAgICAgIHRoaXMuX3Njcm9sbEJhcldpZHRoID0gd2lkdGg7XG4gICAgfVxufVxuIl19
@@ -70,11 +70,11 @@ export class ThemeService {
70
70
  getTheme() {
71
71
  return this.current.value;
72
72
  }
73
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
74
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ThemeService, providedIn: 'root' }); }
73
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
74
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThemeService, providedIn: 'root' }); }
75
75
  }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ThemeService, decorators: [{
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThemeService, decorators: [{
77
77
  type: Injectable,
78
78
  args: [{ providedIn: 'root' }]
79
79
  }], ctorParameters: () => [] });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBd0IsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQWdCLE1BQU0sTUFBTSxDQUFDOztBQVEvRDs7O0dBR0c7QUFDSCxNQUFNLENBQU4sSUFBWSxnQkFXWDtBQVhELFdBQVksZ0JBQWdCO0lBQ3hCOzs7O09BSUc7SUFDSCx5Q0FBcUIsQ0FBQTtJQUNyQjs7T0FFRztJQUNILHFDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFYVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBVzNCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQWU7SUFDeEM7UUFDSSxJQUFJLEVBQUUsT0FBTztRQUNiLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPO1FBQ25DLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsTUFBTTtRQUNaLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJO1FBQ2hDLFFBQVEsRUFBRSxLQUFLO0tBQ2xCO0NBQ0osQ0FBQztBQUdGLE1BQU0sT0FBTyxZQUFZO0lBV3JCO1FBVm1CLGFBQVEsR0FBRyxNQUFNLENBQVcsUUFBUSxDQUFDLENBQUM7UUFDdEMsb0JBQWUsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUc5RCxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFDLElBQVMsQ0FBQyxDQUFDO1FBRTdELFdBQU0sR0FBUSxnQkFBdUIsQ0FBQztRQWdDNUIsV0FBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFNLEVBQUUsRUFBRTtZQUN4QyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEUsQ0FBQztZQUVELElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUM5RCxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUM1QixDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBckNFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWhFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFpQjtRQUN0QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMxQyxDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sS0FBSyxDQUFDLCtCQUErQixPQUFPLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDL0QsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM5QixDQUFDO2lJQXJDUSxZQUFZO3FJQUFaLFlBQVksY0FEQyxNQUFNOzsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHBhaXJ3aXNlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBLYnFUaGVtZSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGNsYXNzTmFtZTogc3RyaW5nO1xuICAgIHNlbGVjdGVkOiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIHRoZSBhdmFpbGFibGUgdGhlbWVzIGZvciB0aGUgS29vYmlxIGRlc2lnbiBzeXN0ZW0uXG4gKiBUaGlzIGVudW0gaXMgdXNlZCB0byBtYW5hZ2UgYW5kIHN3aXRjaCBiZXR3ZWVuIGRpZmZlcmVudCB2aXN1YWwgdGhlbWVzLlxuICovXG5leHBvcnQgZW51bSBLYnFUaGVtZVNlbGVjdG9yIHtcbiAgICAvKipcbiAgICAgKiBSZXByZXNlbnRzIHRoZSBkZWZhdWx0IGxpZ2h0IHRoZW1lLlxuICAgICAqIFRoaXMgaXMgdGhlIHN0YW5kYXJkIHRoZW1lIHRoYXQgaXMgYXBwbGllZFxuICAgICAqIHdoZW4gdGhlIGFwcGxpY2F0aW9uIGlzIGZpcnN0IGxvYWRlZCBpZiBub3RoaW5nIGVsc2UgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBEZWZhdWx0ID0gJ2ticS1saWdodCcsXG4gICAgLyoqXG4gICAgICogVGhpcyB0aGVtZSBpcyB1c2VkIHRvIHByb3ZpZGUgYSBkYXJrZXIgdmlzdWFsIGV4cGVyaWVuY2UsIG9mdGVuIHByZWZlcnJlZCBpbiBsb3ctbGlnaHQgZW52aXJvbm1lbnRzLlxuICAgICAqL1xuICAgIERhcmsgPSAna2JxLWRhcmsnXG59XG5cbmV4cG9ydCBjb25zdCBLYnFEZWZhdWx0VGhlbWVzOiBLYnFUaGVtZVtdID0gW1xuICAgIHtcbiAgICAgICAgbmFtZTogJ2xpZ2h0JyxcbiAgICAgICAgY2xhc3NOYW1lOiBLYnFUaGVtZVNlbGVjdG9yLkRlZmF1bHQsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICdkYXJrJyxcbiAgICAgICAgY2xhc3NOYW1lOiBLYnFUaGVtZVNlbGVjdG9yLkRhcmssXG4gICAgICAgIHNlbGVjdGVkOiBmYWxzZVxuICAgIH1cbl07XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVGhlbWVTZXJ2aWNlPFQgZXh0ZW5kcyBLYnFUaGVtZSB8IG51bGwgPSBLYnFUaGVtZT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkb2N1bWVudCA9IGluamVjdDxEb2N1bWVudD4oRE9DVU1FTlQpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlckZhY3RvcnkgPSBpbmplY3QoUmVuZGVyZXJGYWN0b3J5Mik7XG4gICAgcHJvdGVjdGVkIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgICBjdXJyZW50OiBCZWhhdmlvclN1YmplY3Q8VD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwgYXMgVCk7XG5cbiAgICB0aGVtZXM6IFRbXSA9IEticURlZmF1bHRUaGVtZXMgYXMgVFtdO1xuXG4gICAgcHJvdGVjdGVkIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKTtcblxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY3VycmVudC5waXBlKHBhaXJ3aXNlKCkpLnN1YnNjcmliZSh0aGlzLnVwZGF0ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgc2V0VGhlbWVzKGl0ZW1zOiBUW10pIHtcbiAgICAgICAgdGhpcy50aGVtZXMgPSBpdGVtcztcbiAgICB9XG5cbiAgICBzZXRUaGVtZSh2YWx1ZTogVCB8IG51bWJlcikge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Lm5leHQodGhpcy50aGVtZXNbdmFsdWVdKTtcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHRoaXMudGhlbWVzLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Lm5leHQodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYHZhbHVlIGhhcyB1bnN1cHBvcnRlZCB0eXBlOiAke3R5cGVvZiB2YWx1ZX1gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFRoZW1lKCk6IFQge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50LnZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB1cGRhdGUgPSAoW3ByZXYsIGN1cnJlbnRdOiBUW10pID0+IHtcbiAgICAgICAgaWYgKHByZXYpIHtcbiAgICAgICAgICAgIHByZXYuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5kb2N1bWVudC5ib2R5LCBwcmV2LmNsYXNzTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRvY3VtZW50LmJvZHksIGN1cnJlbnQuY2xhc3NOYW1lKTtcbiAgICAgICAgICAgIGN1cnJlbnQuc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ==
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBd0IsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQWdCLE1BQU0sTUFBTSxDQUFDOztBQVEvRDs7O0dBR0c7QUFDSCxNQUFNLENBQU4sSUFBWSxnQkFXWDtBQVhELFdBQVksZ0JBQWdCO0lBQ3hCOzs7O09BSUc7SUFDSCx5Q0FBcUIsQ0FBQTtJQUNyQjs7T0FFRztJQUNILHFDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFYVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBVzNCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQWU7SUFDeEM7UUFDSSxJQUFJLEVBQUUsT0FBTztRQUNiLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPO1FBQ25DLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsTUFBTTtRQUNaLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxJQUFJO1FBQ2hDLFFBQVEsRUFBRSxLQUFLO0tBQ2xCO0NBQ0osQ0FBQztBQUdGLE1BQU0sT0FBTyxZQUFZO0lBV3JCO1FBVm1CLGFBQVEsR0FBRyxNQUFNLENBQVcsUUFBUSxDQUFDLENBQUM7UUFDdEMsb0JBQWUsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUc5RCxZQUFPLEdBQXVCLElBQUksZUFBZSxDQUFDLElBQVMsQ0FBQyxDQUFDO1FBRTdELFdBQU0sR0FBUSxnQkFBdUIsQ0FBQztRQWdDNUIsV0FBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFNLEVBQUUsRUFBRTtZQUN4QyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEUsQ0FBQztZQUVELElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUM5RCxPQUFPLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUM1QixDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBckNFLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWhFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFpQjtRQUN0QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMxQyxDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sS0FBSyxDQUFDLCtCQUErQixPQUFPLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDL0QsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM5QixDQUFDO2tJQXJDUSxZQUFZO3NJQUFaLFlBQVksY0FEQyxNQUFNOzs0RkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIE9uRGVzdHJveSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIHBhaXJ3aXNlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBLYnFUaGVtZSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGNsYXNzTmFtZTogc3RyaW5nO1xuICAgIHNlbGVjdGVkOiBib29sZWFuO1xufVxuXG4vKipcbiAqIEVudW0gcmVwcmVzZW50aW5nIHRoZSBhdmFpbGFibGUgdGhlbWVzIGZvciB0aGUgS29vYmlxIGRlc2lnbiBzeXN0ZW0uXG4gKiBUaGlzIGVudW0gaXMgdXNlZCB0byBtYW5hZ2UgYW5kIHN3aXRjaCBiZXR3ZWVuIGRpZmZlcmVudCB2aXN1YWwgdGhlbWVzLlxuICovXG5leHBvcnQgZW51bSBLYnFUaGVtZVNlbGVjdG9yIHtcbiAgICAvKipcbiAgICAgKiBSZXByZXNlbnRzIHRoZSBkZWZhdWx0IGxpZ2h0IHRoZW1lLlxuICAgICAqIFRoaXMgaXMgdGhlIHN0YW5kYXJkIHRoZW1lIHRoYXQgaXMgYXBwbGllZFxuICAgICAqIHdoZW4gdGhlIGFwcGxpY2F0aW9uIGlzIGZpcnN0IGxvYWRlZCBpZiBub3RoaW5nIGVsc2UgcHJvdmlkZWRcbiAgICAgKi9cbiAgICBEZWZhdWx0ID0gJ2ticS1saWdodCcsXG4gICAgLyoqXG4gICAgICogVGhpcyB0aGVtZSBpcyB1c2VkIHRvIHByb3ZpZGUgYSBkYXJrZXIgdmlzdWFsIGV4cGVyaWVuY2UsIG9mdGVuIHByZWZlcnJlZCBpbiBsb3ctbGlnaHQgZW52aXJvbm1lbnRzLlxuICAgICAqL1xuICAgIERhcmsgPSAna2JxLWRhcmsnXG59XG5cbmV4cG9ydCBjb25zdCBLYnFEZWZhdWx0VGhlbWVzOiBLYnFUaGVtZVtdID0gW1xuICAgIHtcbiAgICAgICAgbmFtZTogJ2xpZ2h0JyxcbiAgICAgICAgY2xhc3NOYW1lOiBLYnFUaGVtZVNlbGVjdG9yLkRlZmF1bHQsXG4gICAgICAgIHNlbGVjdGVkOiB0cnVlXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICdkYXJrJyxcbiAgICAgICAgY2xhc3NOYW1lOiBLYnFUaGVtZVNlbGVjdG9yLkRhcmssXG4gICAgICAgIHNlbGVjdGVkOiBmYWxzZVxuICAgIH1cbl07XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgVGhlbWVTZXJ2aWNlPFQgZXh0ZW5kcyBLYnFUaGVtZSB8IG51bGwgPSBLYnFUaGVtZT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkb2N1bWVudCA9IGluamVjdDxEb2N1bWVudD4oRE9DVU1FTlQpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSByZW5kZXJlckZhY3RvcnkgPSBpbmplY3QoUmVuZGVyZXJGYWN0b3J5Mik7XG4gICAgcHJvdGVjdGVkIHJlbmRlcmVyOiBSZW5kZXJlcjI7XG5cbiAgICBjdXJyZW50OiBCZWhhdmlvclN1YmplY3Q8VD4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwgYXMgVCk7XG5cbiAgICB0aGVtZXM6IFRbXSA9IEticURlZmF1bHRUaGVtZXMgYXMgVFtdO1xuXG4gICAgcHJvdGVjdGVkIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIgPSB0aGlzLnJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcihudWxsLCBudWxsKTtcblxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY3VycmVudC5waXBlKHBhaXJ3aXNlKCkpLnN1YnNjcmliZSh0aGlzLnVwZGF0ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgc2V0VGhlbWVzKGl0ZW1zOiBUW10pIHtcbiAgICAgICAgdGhpcy50aGVtZXMgPSBpdGVtcztcbiAgICB9XG5cbiAgICBzZXRUaGVtZSh2YWx1ZTogVCB8IG51bWJlcikge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Lm5leHQodGhpcy50aGVtZXNbdmFsdWVdKTtcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHRoaXMudGhlbWVzLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50Lm5leHQodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoYHZhbHVlIGhhcyB1bnN1cHBvcnRlZCB0eXBlOiAke3R5cGVvZiB2YWx1ZX1gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFRoZW1lKCk6IFQge1xuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50LnZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCB1cGRhdGUgPSAoW3ByZXYsIGN1cnJlbnRdOiBUW10pID0+IHtcbiAgICAgICAgaWYgKHByZXYpIHtcbiAgICAgICAgICAgIHByZXYuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5kb2N1bWVudC5ib2R5LCBwcmV2LmNsYXNzTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRvY3VtZW50LmJvZHksIGN1cnJlbnQuY2xhc3NOYW1lKTtcbiAgICAgICAgICAgIGN1cnJlbnQuc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ==
@@ -1,3 +1,2 @@
1
- export * from './data-size';
2
1
  export * from './utils';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS91dGlscy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXRhLXNpemUnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS91dGlscy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG4iXX0=
@@ -1,3 +1,3 @@
1
1
  import { Version } from '@angular/core';
2
- export const VERSION = new Version('18.28.0+sha-f7dc8e7');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZXJzaW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gbmV3IFZlcnNpb24oJzE4LjI4LjArc2hhLWY3ZGM4ZTcnKTtcbiJdfQ==
2
+ export const VERSION = new Version('18.29.0+sha-1384c48');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29yZS92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZXJzaW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gbmV3IFZlcnNpb24oJzE4LjI5LjArc2hhLTEzODRjNDgnKTtcbiJdfQ==
@@ -59,10 +59,10 @@ export class KbqCalendarBody {
59
59
  }
60
60
  return cellNumber === this.activeCell;
61
61
  }
62
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqCalendarBody, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqCalendarBody, selector: "[kbq-calendar-body]", inputs: { rows: "rows", todayValue: "todayValue", selectedValue: "selectedValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", activeCell: "activeCell", cellAspectRatio: "cellAspectRatio" }, outputs: { selectedValueChange: "selectedValueChange" }, host: { classAttribute: "kbq-calendar__body" }, exportAs: ["kbqCalendarBody"], usesOnChanges: true, ngImport: i0, template: "<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track $index; let rowIndex = $index) {\n <tr>\n <!-- We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n The aspect ratio of the table cells is maintained by setting the top and bottom padding as a\n percentage of the width (a variant of the trick described here:\n https://www.w3schools.com/howto/howto_css_aspect_ratio.asp). -->\n @if (rowIndex === 0 && firstRowOffset) {\n <td class=\"kbq-calendar__body-label\" [attr.colspan]=\"firstRowOffset\"></td>\n }\n @for (item of row; track item.displayValue; let colIndex = $index) {\n <td\n class=\"kbq-calendar__body-cell\"\n [class.kbq-calendar__body_active]=\"isActiveCell(rowIndex, colIndex)\"\n [ngClass]=\"item.cssClasses!\"\n [style.paddingBottom]=\"cellPadding\"\n [style.paddingTop]=\"cellPadding\"\n [style.width]=\"cellWidth\"\n [tabindex]=\"isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n (click)=\"cellClicked(item)\"\n >\n <div\n class=\"kbq-calendar__body-cell-content\"\n [class.kbq-calendar__body-today]=\"todayValue === item.value\"\n [class.kbq-disabled]=\"!item.enabled\"\n [class.kbq-selected]=\"selectedValue === item.value\"\n >\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}\n", styles: [".kbq-calendar__body-cell{position:relative;height:0;line-height:0;text-align:center;outline:none;cursor:pointer;padding:0}.kbq-disabled{cursor:default}.kbq-calendar__body-cell-content{display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;line-height:1;border-radius:var(--kbq-datepicker-size-grid-cell-border-radius);margin-bottom:var(--kbq-datepicker-size-grid-content-gap-vertical)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
62
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqCalendarBody, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqCalendarBody, selector: "[kbq-calendar-body]", inputs: { rows: "rows", todayValue: "todayValue", selectedValue: "selectedValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", activeCell: "activeCell", cellAspectRatio: "cellAspectRatio" }, outputs: { selectedValueChange: "selectedValueChange" }, host: { classAttribute: "kbq-calendar__body" }, exportAs: ["kbqCalendarBody"], usesOnChanges: true, ngImport: i0, template: "<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track $index; let rowIndex = $index) {\n <tr>\n <!-- We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n The aspect ratio of the table cells is maintained by setting the top and bottom padding as a\n percentage of the width (a variant of the trick described here:\n https://www.w3schools.com/howto/howto_css_aspect_ratio.asp). -->\n @if (rowIndex === 0 && firstRowOffset) {\n <td class=\"kbq-calendar__body-label\" [attr.colspan]=\"firstRowOffset\"></td>\n }\n @for (item of row; track item.displayValue; let colIndex = $index) {\n <td\n class=\"kbq-calendar__body-cell\"\n [class.kbq-calendar__body_active]=\"isActiveCell(rowIndex, colIndex)\"\n [ngClass]=\"item.cssClasses!\"\n [style.paddingBottom]=\"cellPadding\"\n [style.paddingTop]=\"cellPadding\"\n [style.width]=\"cellWidth\"\n [tabindex]=\"isActiveCell(rowIndex, colIndex) ? 0 : -1\"\n (click)=\"cellClicked(item)\"\n >\n <div\n class=\"kbq-calendar__body-cell-content\"\n [class.kbq-calendar__body-today]=\"todayValue === item.value\"\n [class.kbq-disabled]=\"!item.enabled\"\n [class.kbq-selected]=\"selectedValue === item.value\"\n >\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}\n", styles: [".kbq-calendar__body-cell{position:relative;height:0;line-height:0;text-align:center;outline:none;cursor:pointer;padding:0}.kbq-disabled{cursor:default}.kbq-calendar__body-cell-content{display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;line-height:1;border-radius:var(--kbq-datepicker-size-grid-cell-border-radius);margin-bottom:var(--kbq-datepicker-size-grid-content-gap-vertical)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
64
64
  }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqCalendarBody, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqCalendarBody, decorators: [{
66
66
  type: Component,
67
67
  args: [{ selector: '[kbq-calendar-body]', exportAs: 'kbqCalendarBody', host: {
68
68
  class: 'kbq-calendar__body'
@@ -84,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
84
84
  }], selectedValueChange: [{
85
85
  type: Output
86
86
  }] } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2RhdGVwaWNrZXIvY2FsZW5kYXItYm9keS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2RhdGVwaWNrZXIvY2FsZW5kYXItYm9keS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZCOzs7R0FHRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQ3hCLFlBQ1csS0FBYSxFQUNiLFlBQW9CLEVBQ3BCLE9BQWdCLEVBQ2hCLFVBQXNDO1FBSHRDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUNwQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQTRCO0lBQzlDLENBQUM7Q0FDUDtBQUVEOzs7R0FHRztBQVlILE1BQU0sT0FBTyxlQUFlO0lBWDVCO1FBd0JJLDBDQUEwQztRQUNqQyxZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRXJCLHVEQUF1RDtRQUM5QyxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBRXhCOzs7V0FHRztRQUNNLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBRTdCLDBDQUEwQztRQUN2Qix3QkFBbUIsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQThDN0Y7SUFuQ0csV0FBVyxDQUFDLElBQXFCO1FBQzdCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUN0QyxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQztRQUUvQixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksYUFBYSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxlQUFlLElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hFLE9BQU87WUFDUCxnRUFBZ0U7WUFDaEUsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLEdBQUcsT0FBTyxHQUFHLENBQUM7UUFDekMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBZ0IsRUFBRSxRQUFnQjtRQUMzQyxJQUFJLFVBQVUsR0FBRyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7UUFFcEQsc0VBQXNFO1FBQ3RFLElBQUksUUFBUSxFQUFFLENBQUM7WUFDWCxVQUFVLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUN0QyxDQUFDO1FBRUQsT0FBTyxVQUFVLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMxQyxDQUFDO2lJQXZFUSxlQUFlO3FIQUFmLGVBQWUsOGFDNUM1Qixxb0RBaUNBOzsyRkRXYSxlQUFlO2tCQVgzQixTQUFTOytCQUNJLHFCQUFxQixZQUNyQixpQkFBaUIsUUFHckI7d0JBQ0YsS0FBSyxFQUFFLG9CQUFvQjtxQkFDOUIsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFJdEMsSUFBSTtzQkFBWixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsZUFBZTtzQkFBdkIsS0FBSztnQkFHYSxtQkFBbUI7c0JBQXJDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEV4dHJhIENTUyBjbGFzc2VzIHRoYXQgY2FuIGJlIGFzc29jaWF0ZWQgd2l0aCBhIGNhbGVuZGFyIGNlbGwuXG4gKi9cbmV4cG9ydCB0eXBlIEticUNhbGVuZGFyQ2VsbENzc0NsYXNzZXMgPSBzdHJpbmcgfCBzdHJpbmdbXSB8IFNldDxzdHJpbmc+IHwgeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuLyoqXG4gKiBBbiBpbnRlcm5hbCBjbGFzcyB0aGF0IHJlcHJlc2VudHMgdGhlIGRhdGEgY29ycmVzcG9uZGluZyB0byBhIHNpbmdsZSBjYWxlbmRhciBjZWxsLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgY2xhc3MgS2JxQ2FsZW5kYXJDZWxsIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHZhbHVlOiBudW1iZXIsXG4gICAgICAgIHB1YmxpYyBkaXNwbGF5VmFsdWU6IHN0cmluZyxcbiAgICAgICAgcHVibGljIGVuYWJsZWQ6IGJvb2xlYW4sXG4gICAgICAgIHB1YmxpYyBjc3NDbGFzc2VzPzogS2JxQ2FsZW5kYXJDZWxsQ3NzQ2xhc3Nlc1xuICAgICkge31cbn1cblxuLyoqXG4gKiBBbiBpbnRlcm5hbCBjb21wb25lbnQgdXNlZCB0byBkaXNwbGF5IGNhbGVuZGFyIGRhdGEgaW4gYSB0YWJsZS5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdba2JxLWNhbGVuZGFyLWJvZHldJyxcbiAgICBleHBvcnRBczogJ2ticUNhbGVuZGFyQm9keScsXG4gICAgdGVtcGxhdGVVcmw6ICdjYWxlbmRhci1ib2R5Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydjYWxlbmRhci1ib2R5LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWNhbGVuZGFyX19ib2R5J1xuICAgIH0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBLYnFDYWxlbmRhckJvZHkgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIC8qKiBUaGUgY2VsbHMgdG8gZGlzcGxheSBpbiB0aGUgdGFibGUuICovXG4gICAgQElucHV0KCkgcm93czogS2JxQ2FsZW5kYXJDZWxsW11bXTtcblxuICAgIC8qKiBUaGUgdmFsdWUgaW4gdGhlIHRhYmxlIHRoYXQgY29ycmVzcG9uZHMgdG8gdG9kYXkuICovXG4gICAgQElucHV0KCkgdG9kYXlWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSB2YWx1ZSBpbiB0aGUgdGFibGUgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQuICovXG4gICAgQElucHV0KCkgc2VsZWN0ZWRWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBmcmVlIGNlbGxzIG5lZWRlZCB0byBmaXQgdGhlIGxhYmVsIGluIHRoZSBmaXJzdCByb3cuICovXG4gICAgQElucHV0KCkgbGFiZWxNaW5SZXF1aXJlZENlbGxzOiBudW1iZXI7XG5cbiAgICAvKiogVGhlIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSB0YWJsZS4gKi9cbiAgICBASW5wdXQoKSBudW1Db2xzID0gNztcblxuICAgIC8qKiBUaGUgY2VsbCBudW1iZXIgb2YgdGhlIGFjdGl2ZSBjZWxsIGluIHRoZSB0YWJsZS4gKi9cbiAgICBASW5wdXQoKSBhY3RpdmVDZWxsID0gMDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBhc3BlY3QgcmF0aW8gKHdpZHRoIC8gaGVpZ2h0KSB0byB1c2UgZm9yIHRoZSBjZWxscyBpbiB0aGUgdGFibGUuIFRoaXMgYXNwZWN0IHJhdGlvIHdpbGwgYmVcbiAgICAgKiBtYWludGFpbmVkIGV2ZW4gYXMgdGhlIHRhYmxlIHJlc2l6ZXMuXG4gICAgICovXG4gICAgQElucHV0KCkgY2VsbEFzcGVjdFJhdGlvID0gMTtcblxuICAgIC8qKiBFbWl0cyB3aGVuIGEgbmV3IHZhbHVlIGlzIHNlbGVjdGVkLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3RlZFZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqIFRoZSBudW1iZXIgb2YgYmxhbmsgY2VsbHMgdG8gcHV0IGF0IHRoZSBiZWdpbm5pbmcgZm9yIHRoZSBmaXJzdCByb3cuICovXG4gICAgZmlyc3RSb3dPZmZzZXQ6IG51bWJlcjtcblxuICAgIC8qKiBQYWRkaW5nIGZvciB0aGUgaW5kaXZpZHVhbCBkYXRlIGNlbGxzLiAqL1xuICAgIGNlbGxQYWRkaW5nOiBzdHJpbmc7XG5cbiAgICAvKiogV2lkdGggb2YgYW4gaW5kaXZpZHVhbCBjZWxsLiAqL1xuICAgIGNlbGxXaWR0aDogc3RyaW5nO1xuXG4gICAgY2VsbENsaWNrZWQoY2VsbDogS2JxQ2FsZW5kYXJDZWxsKTogdm9pZCB7XG4gICAgICAgIGlmIChjZWxsLmVuYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZUNoYW5nZS5lbWl0KGNlbGwudmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBjb25zdCBjb2x1bW5DaGFuZ2VzID0gY2hhbmdlcy5udW1Db2xzO1xuICAgICAgICBjb25zdCB7IHJvd3MsIG51bUNvbHMgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKGNoYW5nZXMucm93cyB8fCBjb2x1bW5DaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLmZpcnN0Um93T2Zmc2V0ID0gcm93cyAmJiByb3dzLmxlbmd0aCAmJiByb3dzWzBdLmxlbmd0aCA/IG51bUNvbHMgLSByb3dzWzBdLmxlbmd0aCA6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hhbmdlcy5jZWxsQXNwZWN0UmF0aW8gfHwgY29sdW1uQ2hhbmdlcyB8fCAhdGhpcy5jZWxsUGFkZGluZykge1xuICAgICAgICAgICAgLy8gdG9kb1xuICAgICAgICAgICAgLy8gdGhpcy5jZWxsUGFkZGluZyA9IGAke3RoaXMuY2VsbEFzcGVjdFJhdGlvICogNTAgLyBudW1Db2xzfSVgO1xuICAgICAgICAgICAgdGhpcy5jZWxsUGFkZGluZyA9ICcwJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb2x1bW5DaGFuZ2VzIHx8ICF0aGlzLmNlbGxXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5jZWxsV2lkdGggPSBgJHsxMDAgLyBudW1Db2xzfSVgO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNBY3RpdmVDZWxsKHJvd0luZGV4OiBudW1iZXIsIGNvbEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgbGV0IGNlbGxOdW1iZXIgPSByb3dJbmRleCAqIHRoaXMubnVtQ29scyArIGNvbEluZGV4O1xuXG4gICAgICAgIC8vIEFjY291bnQgZm9yIHRoZSBmYWN0IHRoYXQgdGhlIGZpcnN0IHJvdyBtYXkgbm90IGhhdmUgYXMgbWFueSBjZWxscy5cbiAgICAgICAgaWYgKHJvd0luZGV4KSB7XG4gICAgICAgICAgICBjZWxsTnVtYmVyIC09IHRoaXMuZmlyc3RSb3dPZmZzZXQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2VsbE51bWJlciA9PT0gdGhpcy5hY3RpdmVDZWxsO1xuICAgIH1cbn1cbiIsIjwhLS0gQ3JlYXRlIHRoZSBmaXJzdCByb3cgc2VwYXJhdGVseSBzbyB3ZSBjYW4gaW5jbHVkZSBhIHNwZWNpYWwgc3BhY2VyIGNlbGwuIC0tPlxuQGZvciAocm93IG9mIHJvd3M7IHRyYWNrICRpbmRleDsgbGV0IHJvd0luZGV4ID0gJGluZGV4KSB7XG4gICAgPHRyPlxuICAgICAgICA8IS0tICBXZSBtYXJrIHRoaXMgY2VsbCBhcyBhcmlhLWhpZGRlbiBzbyBpdCBkb2Vzbid0IGdldCByZWFkIG91dCBhcyBvbmUgb2YgdGhlIGRheXMgaW4gdGhlIHdlZWsuXG4gICAgICAgIFRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIHRhYmxlIGNlbGxzIGlzIG1haW50YWluZWQgYnkgc2V0dGluZyB0aGUgdG9wIGFuZCBib3R0b20gcGFkZGluZyBhcyBhXG4gICAgICAgIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIChhIHZhcmlhbnQgb2YgdGhlIHRyaWNrIGRlc2NyaWJlZCBoZXJlOlxuICAgICAgICBodHRwczovL3d3dy53M3NjaG9vbHMuY29tL2hvd3RvL2hvd3RvX2Nzc19hc3BlY3RfcmF0aW8uYXNwKS4gLS0+XG4gICAgICAgIEBpZiAocm93SW5kZXggPT09IDAgJiYgZmlyc3RSb3dPZmZzZXQpIHtcbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1sYWJlbFwiIFthdHRyLmNvbHNwYW5dPVwiZmlyc3RSb3dPZmZzZXRcIj48L3RkPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKGl0ZW0gb2Ygcm93OyB0cmFjayBpdGVtLmRpc3BsYXlWYWx1ZTsgbGV0IGNvbEluZGV4ID0gJGluZGV4KSB7XG4gICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1jZWxsXCJcbiAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWNhbGVuZGFyX19ib2R5X2FjdGl2ZV09XCJpc0FjdGl2ZUNlbGwocm93SW5kZXgsIGNvbEluZGV4KVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5jc3NDbGFzc2VzIVwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLnBhZGRpbmdCb3R0b21dPVwiY2VsbFBhZGRpbmdcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5wYWRkaW5nVG9wXT1cImNlbGxQYWRkaW5nXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwiY2VsbFdpZHRoXCJcbiAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaXNBY3RpdmVDZWxsKHJvd0luZGV4LCBjb2xJbmRleCkgPyAwIDogLTFcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjZWxsQ2xpY2tlZChpdGVtKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1jZWxsLWNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWNhbGVuZGFyX19ib2R5LXRvZGF5XT1cInRvZGF5VmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWRpc2FibGVkXT1cIiFpdGVtLmVuYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLXNlbGVjdGVkXT1cInNlbGVjdGVkVmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5kaXNwbGF5VmFsdWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgIH1cbiAgICA8L3RyPlxufVxuIl19
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2RhdGVwaWNrZXIvY2FsZW5kYXItYm9keS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2RhdGVwaWNrZXIvY2FsZW5kYXItYm9keS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZCOzs7R0FHRztBQUNILE1BQU0sT0FBTyxlQUFlO0lBQ3hCLFlBQ1csS0FBYSxFQUNiLFlBQW9CLEVBQ3BCLE9BQWdCLEVBQ2hCLFVBQXNDO1FBSHRDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUNwQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQTRCO0lBQzlDLENBQUM7Q0FDUDtBQUVEOzs7R0FHRztBQVlILE1BQU0sT0FBTyxlQUFlO0lBWDVCO1FBd0JJLDBDQUEwQztRQUNqQyxZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBRXJCLHVEQUF1RDtRQUM5QyxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBRXhCOzs7V0FHRztRQUNNLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBRTdCLDBDQUEwQztRQUN2Qix3QkFBbUIsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQThDN0Y7SUFuQ0csV0FBVyxDQUFDLElBQXFCO1FBQzdCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUN0QyxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQztRQUUvQixJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksYUFBYSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxlQUFlLElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hFLE9BQU87WUFDUCxnRUFBZ0U7WUFDaEUsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLEdBQUcsT0FBTyxHQUFHLENBQUM7UUFDekMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBZ0IsRUFBRSxRQUFnQjtRQUMzQyxJQUFJLFVBQVUsR0FBRyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7UUFFcEQsc0VBQXNFO1FBQ3RFLElBQUksUUFBUSxFQUFFLENBQUM7WUFDWCxVQUFVLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUN0QyxDQUFDO1FBRUQsT0FBTyxVQUFVLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMxQyxDQUFDO2tJQXZFUSxlQUFlO3NIQUFmLGVBQWUsOGFDNUM1Qixxb0RBaUNBOzs0RkRXYSxlQUFlO2tCQVgzQixTQUFTOytCQUNJLHFCQUFxQixZQUNyQixpQkFBaUIsUUFHckI7d0JBQ0YsS0FBSyxFQUFFLG9CQUFvQjtxQkFDOUIsaUJBQ2MsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs4QkFJdEMsSUFBSTtzQkFBWixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsZUFBZTtzQkFBdkIsS0FBSztnQkFHYSxtQkFBbUI7c0JBQXJDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEV4dHJhIENTUyBjbGFzc2VzIHRoYXQgY2FuIGJlIGFzc29jaWF0ZWQgd2l0aCBhIGNhbGVuZGFyIGNlbGwuXG4gKi9cbmV4cG9ydCB0eXBlIEticUNhbGVuZGFyQ2VsbENzc0NsYXNzZXMgPSBzdHJpbmcgfCBzdHJpbmdbXSB8IFNldDxzdHJpbmc+IHwgeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuLyoqXG4gKiBBbiBpbnRlcm5hbCBjbGFzcyB0aGF0IHJlcHJlc2VudHMgdGhlIGRhdGEgY29ycmVzcG9uZGluZyB0byBhIHNpbmdsZSBjYWxlbmRhciBjZWxsLlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgY2xhc3MgS2JxQ2FsZW5kYXJDZWxsIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHZhbHVlOiBudW1iZXIsXG4gICAgICAgIHB1YmxpYyBkaXNwbGF5VmFsdWU6IHN0cmluZyxcbiAgICAgICAgcHVibGljIGVuYWJsZWQ6IGJvb2xlYW4sXG4gICAgICAgIHB1YmxpYyBjc3NDbGFzc2VzPzogS2JxQ2FsZW5kYXJDZWxsQ3NzQ2xhc3Nlc1xuICAgICkge31cbn1cblxuLyoqXG4gKiBBbiBpbnRlcm5hbCBjb21wb25lbnQgdXNlZCB0byBkaXNwbGF5IGNhbGVuZGFyIGRhdGEgaW4gYSB0YWJsZS5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdba2JxLWNhbGVuZGFyLWJvZHldJyxcbiAgICBleHBvcnRBczogJ2ticUNhbGVuZGFyQm9keScsXG4gICAgdGVtcGxhdGVVcmw6ICdjYWxlbmRhci1ib2R5Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydjYWxlbmRhci1ib2R5LnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWNhbGVuZGFyX19ib2R5J1xuICAgIH0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBLYnFDYWxlbmRhckJvZHkgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICAgIC8qKiBUaGUgY2VsbHMgdG8gZGlzcGxheSBpbiB0aGUgdGFibGUuICovXG4gICAgQElucHV0KCkgcm93czogS2JxQ2FsZW5kYXJDZWxsW11bXTtcblxuICAgIC8qKiBUaGUgdmFsdWUgaW4gdGhlIHRhYmxlIHRoYXQgY29ycmVzcG9uZHMgdG8gdG9kYXkuICovXG4gICAgQElucHV0KCkgdG9kYXlWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSB2YWx1ZSBpbiB0aGUgdGFibGUgdGhhdCBpcyBjdXJyZW50bHkgc2VsZWN0ZWQuICovXG4gICAgQElucHV0KCkgc2VsZWN0ZWRWYWx1ZTogbnVtYmVyO1xuXG4gICAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBmcmVlIGNlbGxzIG5lZWRlZCB0byBmaXQgdGhlIGxhYmVsIGluIHRoZSBmaXJzdCByb3cuICovXG4gICAgQElucHV0KCkgbGFiZWxNaW5SZXF1aXJlZENlbGxzOiBudW1iZXI7XG5cbiAgICAvKiogVGhlIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSB0YWJsZS4gKi9cbiAgICBASW5wdXQoKSBudW1Db2xzID0gNztcblxuICAgIC8qKiBUaGUgY2VsbCBudW1iZXIgb2YgdGhlIGFjdGl2ZSBjZWxsIGluIHRoZSB0YWJsZS4gKi9cbiAgICBASW5wdXQoKSBhY3RpdmVDZWxsID0gMDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBhc3BlY3QgcmF0aW8gKHdpZHRoIC8gaGVpZ2h0KSB0byB1c2UgZm9yIHRoZSBjZWxscyBpbiB0aGUgdGFibGUuIFRoaXMgYXNwZWN0IHJhdGlvIHdpbGwgYmVcbiAgICAgKiBtYWludGFpbmVkIGV2ZW4gYXMgdGhlIHRhYmxlIHJlc2l6ZXMuXG4gICAgICovXG4gICAgQElucHV0KCkgY2VsbEFzcGVjdFJhdGlvID0gMTtcblxuICAgIC8qKiBFbWl0cyB3aGVuIGEgbmV3IHZhbHVlIGlzIHNlbGVjdGVkLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3RlZFZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqIFRoZSBudW1iZXIgb2YgYmxhbmsgY2VsbHMgdG8gcHV0IGF0IHRoZSBiZWdpbm5pbmcgZm9yIHRoZSBmaXJzdCByb3cuICovXG4gICAgZmlyc3RSb3dPZmZzZXQ6IG51bWJlcjtcblxuICAgIC8qKiBQYWRkaW5nIGZvciB0aGUgaW5kaXZpZHVhbCBkYXRlIGNlbGxzLiAqL1xuICAgIGNlbGxQYWRkaW5nOiBzdHJpbmc7XG5cbiAgICAvKiogV2lkdGggb2YgYW4gaW5kaXZpZHVhbCBjZWxsLiAqL1xuICAgIGNlbGxXaWR0aDogc3RyaW5nO1xuXG4gICAgY2VsbENsaWNrZWQoY2VsbDogS2JxQ2FsZW5kYXJDZWxsKTogdm9pZCB7XG4gICAgICAgIGlmIChjZWxsLmVuYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZUNoYW5nZS5lbWl0KGNlbGwudmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBjb25zdCBjb2x1bW5DaGFuZ2VzID0gY2hhbmdlcy5udW1Db2xzO1xuICAgICAgICBjb25zdCB7IHJvd3MsIG51bUNvbHMgfSA9IHRoaXM7XG5cbiAgICAgICAgaWYgKGNoYW5nZXMucm93cyB8fCBjb2x1bW5DaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLmZpcnN0Um93T2Zmc2V0ID0gcm93cyAmJiByb3dzLmxlbmd0aCAmJiByb3dzWzBdLmxlbmd0aCA/IG51bUNvbHMgLSByb3dzWzBdLmxlbmd0aCA6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hhbmdlcy5jZWxsQXNwZWN0UmF0aW8gfHwgY29sdW1uQ2hhbmdlcyB8fCAhdGhpcy5jZWxsUGFkZGluZykge1xuICAgICAgICAgICAgLy8gdG9kb1xuICAgICAgICAgICAgLy8gdGhpcy5jZWxsUGFkZGluZyA9IGAke3RoaXMuY2VsbEFzcGVjdFJhdGlvICogNTAgLyBudW1Db2xzfSVgO1xuICAgICAgICAgICAgdGhpcy5jZWxsUGFkZGluZyA9ICcwJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb2x1bW5DaGFuZ2VzIHx8ICF0aGlzLmNlbGxXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5jZWxsV2lkdGggPSBgJHsxMDAgLyBudW1Db2xzfSVgO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaXNBY3RpdmVDZWxsKHJvd0luZGV4OiBudW1iZXIsIGNvbEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgbGV0IGNlbGxOdW1iZXIgPSByb3dJbmRleCAqIHRoaXMubnVtQ29scyArIGNvbEluZGV4O1xuXG4gICAgICAgIC8vIEFjY291bnQgZm9yIHRoZSBmYWN0IHRoYXQgdGhlIGZpcnN0IHJvdyBtYXkgbm90IGhhdmUgYXMgbWFueSBjZWxscy5cbiAgICAgICAgaWYgKHJvd0luZGV4KSB7XG4gICAgICAgICAgICBjZWxsTnVtYmVyIC09IHRoaXMuZmlyc3RSb3dPZmZzZXQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gY2VsbE51bWJlciA9PT0gdGhpcy5hY3RpdmVDZWxsO1xuICAgIH1cbn1cbiIsIjwhLS0gQ3JlYXRlIHRoZSBmaXJzdCByb3cgc2VwYXJhdGVseSBzbyB3ZSBjYW4gaW5jbHVkZSBhIHNwZWNpYWwgc3BhY2VyIGNlbGwuIC0tPlxuQGZvciAocm93IG9mIHJvd3M7IHRyYWNrICRpbmRleDsgbGV0IHJvd0luZGV4ID0gJGluZGV4KSB7XG4gICAgPHRyPlxuICAgICAgICA8IS0tICBXZSBtYXJrIHRoaXMgY2VsbCBhcyBhcmlhLWhpZGRlbiBzbyBpdCBkb2Vzbid0IGdldCByZWFkIG91dCBhcyBvbmUgb2YgdGhlIGRheXMgaW4gdGhlIHdlZWsuXG4gICAgICAgIFRoZSBhc3BlY3QgcmF0aW8gb2YgdGhlIHRhYmxlIGNlbGxzIGlzIG1haW50YWluZWQgYnkgc2V0dGluZyB0aGUgdG9wIGFuZCBib3R0b20gcGFkZGluZyBhcyBhXG4gICAgICAgIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIChhIHZhcmlhbnQgb2YgdGhlIHRyaWNrIGRlc2NyaWJlZCBoZXJlOlxuICAgICAgICBodHRwczovL3d3dy53M3NjaG9vbHMuY29tL2hvd3RvL2hvd3RvX2Nzc19hc3BlY3RfcmF0aW8uYXNwKS4gLS0+XG4gICAgICAgIEBpZiAocm93SW5kZXggPT09IDAgJiYgZmlyc3RSb3dPZmZzZXQpIHtcbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1sYWJlbFwiIFthdHRyLmNvbHNwYW5dPVwiZmlyc3RSb3dPZmZzZXRcIj48L3RkPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKGl0ZW0gb2Ygcm93OyB0cmFjayBpdGVtLmRpc3BsYXlWYWx1ZTsgbGV0IGNvbEluZGV4ID0gJGluZGV4KSB7XG4gICAgICAgICAgICA8dGRcbiAgICAgICAgICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1jZWxsXCJcbiAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWNhbGVuZGFyX19ib2R5X2FjdGl2ZV09XCJpc0FjdGl2ZUNlbGwocm93SW5kZXgsIGNvbEluZGV4KVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbS5jc3NDbGFzc2VzIVwiXG4gICAgICAgICAgICAgICAgW3N0eWxlLnBhZGRpbmdCb3R0b21dPVwiY2VsbFBhZGRpbmdcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5wYWRkaW5nVG9wXT1cImNlbGxQYWRkaW5nXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwiY2VsbFdpZHRoXCJcbiAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaXNBY3RpdmVDZWxsKHJvd0luZGV4LCBjb2xJbmRleCkgPyAwIDogLTFcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJjZWxsQ2xpY2tlZChpdGVtKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhcl9fYm9keS1jZWxsLWNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWNhbGVuZGFyX19ib2R5LXRvZGF5XT1cInRvZGF5VmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLWRpc2FibGVkXT1cIiFpdGVtLmVuYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Mua2JxLXNlbGVjdGVkXT1cInNlbGVjdGVkVmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgaXRlbS5kaXNwbGF5VmFsdWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgIH1cbiAgICA8L3RyPlxufVxuIl19
@@ -136,10 +136,10 @@ export class KbqCalendarHeader {
136
136
  this.monthNames.forEach((month) => (month.disabled = month.value > maxMonth));
137
137
  }
138
138
  }
139
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqCalendarHeader, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
140
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: KbqCalendarHeader, selector: "kbq-calendar-header", inputs: { activeDate: "activeDate", maxDate: "maxDate", minDate: "minDate" }, outputs: { activeDateChange: "activeDateChange", monthSelected: "monthSelected", yearSelected: "yearSelected" }, host: { classAttribute: "kbq-calendar-header" }, exportAs: ["kbqCalendarHeader"], ngImport: i0, template: "<div class=\"kbq-calendar-header__select-group\">\n <kbq-select\n #monthSelect=\"kbqSelect\"\n class=\"kbq-calendar-header__select\"\n [panelClass]=\"'kbq-calendar-select-panel'\"\n [value]=\"selectedMonth\"\n (selectionChange)=\"onMonthSelected($event.value)\"\n >\n <button\n kbq-button\n kbq-select-matcher\n class=\"layout-padding-right-xs\"\n [class.kbq-active]=\"monthSelect.panelOpen\"\n [color]=\"'contrast'\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n >\n {{ monthNames[selectedMonth].nameShort | titlecase }}\n\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"layout-padding-left-3xs\" [color]=\"'contrast'\"></i>\n </button>\n\n @for (month of monthNames; track month.nameShort) {\n <kbq-option [disabled]=\"month.disabled\" [kbqTooltipDisabled]=\"true\" [value]=\"month.value\">\n {{ month.name }}\n </kbq-option>\n }\n </kbq-select>\n\n <kbq-select\n #yearSelect=\"kbqSelect\"\n [panelClass]=\"'kbq-calendar-select-panel'\"\n [value]=\"selectedYear\"\n (selectionChange)=\"onYearSelected($event.value)\"\n >\n <button\n kbq-button\n kbq-select-matcher\n class=\"layout-padding-right-xs\"\n [class.kbq-active]=\"yearSelect.panelOpen\"\n [color]=\"'contrast'\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n >\n {{ selectedYear }}\n\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"layout-padding-left-3xs\"></i>\n </button>\n\n @for (year of years; track year) {\n <kbq-option [kbqTooltipDisabled]=\"true\" [value]=\"year\">\n {{ year }}\n </kbq-option>\n }\n </kbq-select>\n</div>\n\n<div class=\"kbq-calendar-header__button-group\">\n <button\n kbq-button\n class=\"kbq-calendar-header__previous-button\"\n [color]=\"'contrast'\"\n [disabled]=\"previousDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectPreviousMonth()\"\n >\n <i kbq-icon=\"kbq-chevron-left_16\"></i>\n </button>\n\n <button\n kbq-button\n [color]=\"'contrast'\"\n [disabled]=\"currentDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectCurrentDate()\"\n >\n <i kbq-icon=\"kbq-circle-xs_16\"></i>\n </button>\n\n <button\n kbq-button\n class=\"kbq-calendar-header__next-button\"\n [color]=\"'contrast'\"\n [disabled]=\"nextDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectNextMonth()\"\n >\n <i kbq-icon=\"kbq-chevron-right_16\"></i>\n </button>\n</div>\n", styles: [".kbq-calendar-header{display:flex;flex-direction:row;justify-content:space-between;padding-right:var(--kbq-datepicker-size-header-padding-horizontal);padding-left:var(--kbq-datepicker-size-header-padding-horizontal);margin-bottom:var(--kbq-datepicker-size-header-margin-bottom)}.kbq-calendar-header__select{width:auto!important}.kbq-calendar-header__button-group,.kbq-calendar-header__select-group{display:flex;flex-direction:row}.kbq-calendar-select-panel{margin-top:2px;min-width:98%!important}.kbq-calendar-select-panel .kbq-select__content{max-height:384px;overflow-x:hidden;scrollbar-gutter:auto}.kbq-calendar-select-panel .kbq-select__content .kbq-option{min-width:65px}\n"], dependencies: [{ kind: "component", type: i2.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i2.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "component", type: i3.KbqSelect, selector: "kbq-select", inputs: ["hiddenItemsText", "panelClass", "backdropClass", "errorStateMatcher", "sortComparator", "hasBackdrop", "placeholder", "required", "multiple", "compareWith", "panelWidth", "panelMinWidth", "value", "id", "tabIndex", "disabled", "hiddenItemsTextFormatter"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["kbqSelect"] }, { kind: "directive", type: i3.KbqOptionTooltip, selector: "kbq-option" }, { kind: "component", type: i1.KbqOption, selector: "kbq-option", inputs: ["value", "selectable", "userSelect", "showCheckbox", "disabled"], outputs: ["onSelectionChange"], exportAs: ["kbqOption"] }, { kind: "directive", type: i1.KbqSelectMatcher, selector: "kbq-select-matcher, [kbq-select-matcher]" }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "pipe", type: i5.TitleCasePipe, name: "titlecase" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
139
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqCalendarHeader, deps: [{ token: i1.DateAdapter }], target: i0.ɵɵFactoryTarget.Component }); }
140
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqCalendarHeader, selector: "kbq-calendar-header", inputs: { activeDate: "activeDate", maxDate: "maxDate", minDate: "minDate" }, outputs: { activeDateChange: "activeDateChange", monthSelected: "monthSelected", yearSelected: "yearSelected" }, host: { classAttribute: "kbq-calendar-header" }, exportAs: ["kbqCalendarHeader"], ngImport: i0, template: "<div class=\"kbq-calendar-header__select-group\">\n <kbq-select\n #monthSelect=\"kbqSelect\"\n class=\"kbq-calendar-header__select\"\n [panelClass]=\"'kbq-calendar-select-panel'\"\n [value]=\"selectedMonth\"\n (selectionChange)=\"onMonthSelected($event.value)\"\n >\n <button\n kbq-button\n kbq-select-matcher\n class=\"layout-padding-right-xs\"\n [class.kbq-active]=\"monthSelect.panelOpen\"\n [color]=\"'contrast'\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n >\n {{ monthNames[selectedMonth].nameShort | titlecase }}\n\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"layout-padding-left-3xs\" [color]=\"'contrast'\"></i>\n </button>\n\n @for (month of monthNames; track month.nameShort) {\n <kbq-option [disabled]=\"month.disabled\" [kbqTooltipDisabled]=\"true\" [value]=\"month.value\">\n {{ month.name }}\n </kbq-option>\n }\n </kbq-select>\n\n <kbq-select\n #yearSelect=\"kbqSelect\"\n [panelClass]=\"'kbq-calendar-select-panel'\"\n [value]=\"selectedYear\"\n (selectionChange)=\"onYearSelected($event.value)\"\n >\n <button\n kbq-button\n kbq-select-matcher\n class=\"layout-padding-right-xs\"\n [class.kbq-active]=\"yearSelect.panelOpen\"\n [color]=\"'contrast'\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n >\n {{ selectedYear }}\n\n <i kbq-icon=\"kbq-chevron-down-s_16\" class=\"layout-padding-left-3xs\"></i>\n </button>\n\n @for (year of years; track year) {\n <kbq-option [kbqTooltipDisabled]=\"true\" [value]=\"year\">\n {{ year }}\n </kbq-option>\n }\n </kbq-select>\n</div>\n\n<div class=\"kbq-calendar-header__button-group\">\n <button\n kbq-button\n class=\"kbq-calendar-header__previous-button\"\n [color]=\"'contrast'\"\n [disabled]=\"previousDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectPreviousMonth()\"\n >\n <i kbq-icon=\"kbq-chevron-left_16\"></i>\n </button>\n\n <button\n kbq-button\n [color]=\"'contrast'\"\n [disabled]=\"currentDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectCurrentDate()\"\n >\n <i kbq-icon=\"kbq-circle-xs_16\"></i>\n </button>\n\n <button\n kbq-button\n class=\"kbq-calendar-header__next-button\"\n [color]=\"'contrast'\"\n [disabled]=\"nextDisabled\"\n [kbqStyle]=\"'transparent'\"\n [tabindex]=\"-1\"\n (click)=\"selectNextMonth()\"\n >\n <i kbq-icon=\"kbq-chevron-right_16\"></i>\n </button>\n</div>\n", styles: [".kbq-calendar-header{display:flex;flex-direction:row;justify-content:space-between;padding-right:var(--kbq-datepicker-size-header-padding-horizontal);padding-left:var(--kbq-datepicker-size-header-padding-horizontal);margin-bottom:var(--kbq-datepicker-size-header-margin-bottom)}.kbq-calendar-header__select{width:auto!important}.kbq-calendar-header__button-group,.kbq-calendar-header__select-group{display:flex;flex-direction:row}.kbq-calendar-select-panel{margin-top:2px;min-width:98%!important}.kbq-calendar-select-panel .kbq-select__content{max-height:384px;overflow-x:hidden;scrollbar-gutter:auto}.kbq-calendar-select-panel .kbq-select__content .kbq-option{min-width:65px}\n"], dependencies: [{ kind: "component", type: i2.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i2.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "component", type: i3.KbqSelect, selector: "kbq-select", inputs: ["hiddenItemsText", "panelClass", "backdropClass", "errorStateMatcher", "sortComparator", "hasBackdrop", "placeholder", "required", "multiple", "compareWith", "panelWidth", "panelMinWidth", "value", "id", "tabIndex", "disabled", "hiddenItemsTextFormatter"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["kbqSelect"] }, { kind: "directive", type: i3.KbqOptionTooltip, selector: "kbq-option" }, { kind: "component", type: i1.KbqOption, selector: "kbq-option", inputs: ["value", "selectable", "userSelect", "showCheckbox", "disabled"], outputs: ["onSelectionChange"], exportAs: ["kbqOption"] }, { kind: "directive", type: i1.KbqSelectMatcher, selector: "kbq-select-matcher, [kbq-select-matcher]" }, { kind: "component", type: i4.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "pipe", type: i5.TitleCasePipe, name: "titlecase" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
141
141
  }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqCalendarHeader, decorators: [{
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqCalendarHeader, decorators: [{
143
143
  type: Component,
144
144
  args: [{ selector: 'kbq-calendar-header', exportAs: 'kbqCalendarHeader', host: {
145
145
  class: 'kbq-calendar-header'
@@ -157,4 +157,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
157
157
  }], yearSelected: [{
158
158
  type: Output
159
159
  }] } });
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9kYXRlcGlja2VyL2NhbGVuZGFyLWhlYWRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7QUFFdEQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDO0FBQzVCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQztBQVM1QixxQ0FBcUM7QUFZckMsTUFBTSxPQUFPLGlCQUFpQjtJQU8xQixJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLEtBQVE7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFFekIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUlELElBQ0ksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsS0FBZTtRQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDVCxPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXRCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFJRCxJQUNJ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ICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcblxuY29uc3QgZGVmYXVsdE1pblllYXIgPSAxOTAwO1xuY29uc3QgZGVmYXVsdE1heFllYXIgPSAyMDk5O1xuXG5leHBvcnQgdHlwZSBNb250aE5hbWUgPSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG5hbWVTaG9ydDogc3RyaW5nO1xuICAgIHZhbHVlOiBudW1iZXI7XG4gICAgZGlzYWJsZWQ6IGJvb2xlYW47XG59O1xuXG4vKiogRGVmYXVsdCBoZWFkZXIgZm9yIEticUNhbGVuZGFyICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1jYWxlbmRhci1oZWFkZXInLFxuICAgIGV4cG9ydEFzOiAna2JxQ2FsZW5kYXJIZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FsZW5kYXItaGVhZGVyLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydjYWxlbmRhci1oZWFkZXIuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtY2FsZW5kYXItaGVhZGVyJ1xuICAgIH0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBLYnFDYWxlbmRhckhlYWRlcjxEPiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIG1vbnRoTmFtZXM6IE1vbnRoTmFtZVtdO1xuICAgIHNlbGVjdGVkTW9udGg6IG51bWJlcjtcblxuICAgIHllYXJzOiBudW1iZXJbXSA9IFtdO1xuICAgIHNlbGVjdGVkWWVhcjogbnVtYmVyO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgYWN0aXZlRGF0ZSgpOiBEIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZURhdGU7XG4gICAgfVxuXG4gICAgc2V0IGFjdGl2ZURhdGUodmFsdWU6IEQpIHtcbiAgICAgICAgdGhpcy5fYWN0aXZlRGF0ZSA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRWYWx1ZXMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3Rpb25PcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYWN0aXZlRGF0ZTogRDtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG1heERhdGUoKTogRCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcbiAgICB9XG5cbiAgICBzZXQgbWF4RGF0ZSh2YWx1ZTogRCB8IG51bGwpIHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbWF4RGF0ZSA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX21heERhdGUgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZShkZWZhdWx0TWF4WWVhciwgMTEpO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgbWluRGF0ZSgpOiBEIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9taW5EYXRlO1xuICAgIH1cblxuICAgIHNldCBtaW5EYXRlKHZhbHVlOiBEIHwgbnVsbCkge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9taW5EYXRlID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3Rpb25PcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbWluRGF0ZSA9IHRoaXMuYWRhcHRlci5jcmVhdGVEYXRlKGRlZmF1bHRNaW5ZZWFyLCAxKTtcblxuICAgIGdldCBwcmV2aW91c0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0aGlzLmFjdGl2ZURhdGUsIHRoaXMubWluRGF0ZSEpIDw9IDA7XG4gICAgfVxuXG4gICAgZ2V0IGN1cnJlbnREaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdG9kYXkgPSB0aGlzLmFkYXB0ZXIudG9kYXkoKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0b2RheSwgdGhpcy5taW5EYXRlISkgPCAwIHx8IHRoaXMuY29tcGFyZURhdGUodG9kYXksIHRoaXMubWF4RGF0ZSEpID4gMDtcbiAgICB9XG5cbiAgICBnZXQgbmV4dERpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0aGlzLmFjdGl2ZURhdGUsIHRoaXMubWF4RGF0ZSEpID49IDA7XG4gICAgfVxuXG4gICAgLyoqIEVtaXRzIHdoZW4gYW55IGRhdGUgaXMgYWN0aXZhdGVkLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBhY3RpdmVEYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEPigpO1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb250aFNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEPigpO1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB5ZWFyU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEQ+KCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFkYXB0ZXI6IERhdGVBZGFwdGVyPEQ+KSB7XG4gICAgICAgIHRoaXMubW9udGhOYW1lcyA9IHRoaXMuYWRhcHRlci5nZXRNb250aE5hbWVzKCdsb25nJykubWFwKChuYW1lLCBpKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4geyBuYW1lLCBuYW1lU2hvcnQ6IHRoaXMuYWRhcHRlci5nZXRNb250aE5hbWVzKCdzaG9ydCcpW2ldLCB2YWx1ZTogaSwgZGlzYWJsZWQ6IGZhbHNlIH07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVZZWFyc09wdGlvbnMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVNb250aE9wdGlvbnMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlcygpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHdoZW4gYSBuZXcgbW9udGggaXMgc2VsZWN0ZWQuICovXG4gICAgb25Nb250aFNlbGVjdGVkKG1vbnRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgeWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMuYWN0aXZlRGF0ZSk7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWREYXRlID0gdGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoeWVhciwgbW9udGgpO1xuICAgICAgICBjb25zdCBkYXlzSW5Nb250aCA9IHRoaXMuYWRhcHRlci5nZXROdW1EYXlzSW5Nb250aChub3JtYWxpemVkRGF0ZSk7XG5cbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoXG4gICAgICAgICAgICB5ZWFyLFxuICAgICAgICAgICAgbW9udGgsXG4gICAgICAgICAgICBNYXRoLm1pbih0aGlzLmFkYXB0ZXIuZ2V0RGF0ZSh0aGlzLmFjdGl2ZURhdGUpLCBkYXlzSW5Nb250aClcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLm1vbnRoU2VsZWN0ZWQuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgICAgICB0aGlzLmFjdGl2ZURhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHdoZW4gYSBuZXcgeWVhciBpcyBzZWxlY3RlZC4gKi9cbiAgICBvblllYXJTZWxlY3RlZCh5ZWFyOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLmFkYXB0ZXIuZ2V0TW9udGgodGhpcy5hY3RpdmVEYXRlKTtcbiAgICAgICAgY29uc3QgZGF5c0luTW9udGggPSB0aGlzLmFkYXB0ZXIuZ2V0TnVtRGF5c0luTW9udGgodGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoeWVhciwgbW9udGgpKTtcblxuICAgICAgICB0aGlzLmFjdGl2ZURhdGUgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZShcbiAgICAgICAgICAgIHllYXIsXG4gICAgICAgICAgICBtb250aCxcbiAgICAgICAgICAgIE1hdGgubWluKHRoaXMuYWRhcHRlci5nZXREYXRlKHRoaXMuYWN0aXZlRGF0ZSksIGRheXNJbk1vbnRoKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMueWVhclNlbGVjdGVkLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlQ2hhbmdlLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZU1vbnRoT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHNlbGVjdEN1cnJlbnREYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGl2ZURhdGUgPSB0aGlzLmFkYXB0ZXIudG9kYXkoKTtcblxuICAgICAgICB0aGlzLmFjdGl2ZURhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHVzZXIgY2xpY2tzIG9uIHRoZSBwcmV2aW91cyBidXR0b24uICovXG4gICAgc2VsZWN0UHJldmlvdXNNb250aCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgLTEpO1xuXG4gICAgICAgIHRoaXMuYWN0aXZlRGF0ZUNoYW5nZS5lbWl0KHRoaXMuYWN0aXZlRGF0ZSk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZXMgdXNlciBjbGlja3Mgb24gdGhlIG5leHQgYnV0dG9uLiAqL1xuICAgIHNlbGVjdE5leHRNb250aCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgMSk7XG5cbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlQ2hhbmdlLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbXBhcmVEYXRlKGZpcnN0OiBELCBzZWNvbmQ6IEQpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRmlyc3QgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZSh0aGlzLmFkYXB0ZXIuZ2V0WWVhcihmaXJzdCksIHRoaXMuYWRhcHRlci5nZXRNb250aChmaXJzdCkpO1xuXG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRTZWNvbmQgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZSh0aGlzLmFkYXB0ZXIuZ2V0WWVhcihzZWNvbmQpLCB0aGlzLmFkYXB0ZXIuZ2V0TW9udGgoc2Vjb25kKSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWRhcHRlci5jb21wYXJlRGF0ZShub3JtYWxpemVkRmlyc3QsIG5vcm1hbGl6ZWRTZWNvbmQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VsZWN0ZWRWYWx1ZXMoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aCA9IHRoaXMubW9udGhOYW1lc1t0aGlzLmFkYXB0ZXIuZ2V0TW9udGgodGhpcy5hY3RpdmVEYXRlKV0udmFsdWU7XG5cbiAgICAgICAgY29uc3QgeWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMuYWN0aXZlRGF0ZSk7XG5cbiAgICAgICAgdGhpcy5zZWxlY3RlZFllYXIgPSB0aGlzLnllYXJzLmZpbmQoKGl0ZW0pID0+IGl0ZW0gPT09IHllYXIpIHx8IHRoaXMueWVhcnNbMF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVTZWxlY3Rpb25PcHRpb25zKCkge1xuICAgICAgICB0aGlzLnVwZGF0ZVllYXJzT3B0aW9ucygpO1xuICAgICAgICB0aGlzLnVwZGF0ZU1vbnRoT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlWWVhcnNPcHRpb25zKCkge1xuICAgICAgICBjb25zdCBtaW5ZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5taW5EYXRlISk7XG4gICAgICAgIGNvbnN0IG1heFllYXIgPSB0aGlzLmFkYXB0ZXIuZ2V0WWVhcih0aGlzLm1heERhdGUhKTtcblxuICAgICAgICB0aGlzLnllYXJzID0gW107XG5cbiAgICAgICAgZm9yIChsZXQga2V5OiBudW1iZXIgPSBtaW5ZZWFyOyBrZXkgPD0gbWF4WWVhcjsga2V5KyspIHtcbiAgICAgICAgICAgIHRoaXMueWVhcnMucHVzaChrZXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVNb250aE9wdGlvbnMoKSB7XG4gICAgICAgIGlmICghdGhpcy5fYWN0aXZlRGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWluWWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMubWluRGF0ZSEpO1xuICAgICAgICBjb25zdCBtaW5Nb250aCA9IHRoaXMuYWRhcHRlci5nZXRNb250aCh0aGlzLm1pbkRhdGUhKTtcblxuICAgICAgICBjb25zdCBtYXhZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5tYXhEYXRlISk7XG4gICAgICAgIGNvbnN0IG1heE1vbnRoID0gdGhpcy5hZGFwdGVyLmdldE1vbnRoKHRoaXMubWF4RGF0ZSEpO1xuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5fYWN0aXZlRGF0ZSk7XG5cbiAgICAgICAgaWYgKGN1cnJlbnRZZWFyID09PSBtaW5ZZWFyKSB7XG4gICAgICAgICAgICB0aGlzLm1vbnRoTmFtZXMuZm9yRWFjaCgobW9udGgpID0+IChtb250aC5kaXNhYmxlZCA9IG1vbnRoLnZhbHVlIDwgbWluTW9udGgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjdXJyZW50WWVhciA9PT0gbWF4WWVhcikge1xuICAgICAgICAgICAgdGhpcy5tb250aE5hbWVzLmZvckVhY2goKG1vbnRoKSA9PiAobW9udGguZGlzYWJsZWQgPSBtb250aC52YWx1ZSA+IG1heE1vbnRoKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwia2JxLWNhbGVuZGFyLWhlYWRlcl9fc2VsZWN0LWdyb3VwXCI+XG4gICAgPGticS1zZWxlY3RcbiAgICAgICAgI21vbnRoU2VsZWN0PVwia2JxU2VsZWN0XCJcbiAgICAgICAgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19zZWxlY3RcIlxuICAgICAgICBbcGFuZWxDbGFzc109XCIna2JxLWNhbGVuZGFyLXNlbGVjdC1wYW5lbCdcIlxuICAgICAgICBbdmFsdWVdPVwic2VsZWN0ZWRNb250aFwiXG4gICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25Nb250aFNlbGVjdGVkKCRldmVudC52YWx1ZSlcIlxuICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAga2JxLXNlbGVjdC1tYXRjaGVyXG4gICAgICAgICAgICBjbGFzcz1cImxheW91dC1wYWRkaW5nLXJpZ2h0LXhzXCJcbiAgICAgICAgICAgIFtjbGFzcy5rYnEtYWN0aXZlXT1cIm1vbnRoU2VsZWN0LnBhbmVsT3BlblwiXG4gICAgICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgICAgICBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBtb250aE5hbWVzW3NlbGVjdGVkTW9udGhdLm5hbWVTaG9ydCB8IHRpdGxlY2FzZSB9fVxuXG4gICAgICAgICAgICA8aSBrYnEtaWNvbj1cImticS1jaGV2cm9uLWRvd24tc18xNlwiIGNsYXNzPVwibGF5b3V0LXBhZGRpbmctbGVmdC0zeHNcIiBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgQGZvciAobW9udGggb2YgbW9udGhOYW1lczsgdHJhY2sgbW9udGgubmFtZVNob3J0KSB7XG4gICAgICAgICAgICA8a2JxLW9wdGlvbiBbZGlzYWJsZWRdPVwibW9udGguZGlzYWJsZWRcIiBba2JxVG9vbHRpcERpc2FibGVkXT1cInRydWVcIiBbdmFsdWVdPVwibW9udGgudmFsdWVcIj5cbiAgICAgICAgICAgICAgICB7eyBtb250aC5uYW1lIH19XG4gICAgICAgICAgICA8L2ticS1vcHRpb24+XG4gICAgICAgIH1cbiAgICA8L2ticS1zZWxlY3Q+XG5cbiAgICA8a2JxLXNlbGVjdFxuICAgICAgICAjeWVhclNlbGVjdD1cImticVNlbGVjdFwiXG4gICAgICAgIFtwYW5lbENsYXNzXT1cIidrYnEtY2FsZW5kYXItc2VsZWN0LXBhbmVsJ1wiXG4gICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZFllYXJcIlxuICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uWWVhclNlbGVjdGVkKCRldmVudC52YWx1ZSlcIlxuICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAga2JxLXNlbGVjdC1tYXRjaGVyXG4gICAgICAgICAgICBjbGFzcz1cImxheW91dC1wYWRkaW5nLXJpZ2h0LXhzXCJcbiAgICAgICAgICAgIFtjbGFzcy5rYnEtYWN0aXZlXT1cInllYXJTZWxlY3QucGFuZWxPcGVuXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCInY29udHJhc3QnXCJcbiAgICAgICAgICAgIFtrYnFTdHlsZV09XCIndHJhbnNwYXJlbnQnXCJcbiAgICAgICAgICAgIFt0YWJpbmRleF09XCItMVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHNlbGVjdGVkWWVhciB9fVxuXG4gICAgICAgICAgICA8aSBrYnEtaWNvbj1cImticS1jaGV2cm9uLWRvd24tc18xNlwiIGNsYXNzPVwibGF5b3V0LXBhZGRpbmctbGVmdC0zeHNcIj48L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIEBmb3IgKHllYXIgb2YgeWVhcnM7IHRyYWNrIHllYXIpIHtcbiAgICAgICAgICAgIDxrYnEtb3B0aW9uIFtrYnFUb29sdGlwRGlzYWJsZWRdPVwidHJ1ZVwiIFt2YWx1ZV09XCJ5ZWFyXCI+XG4gICAgICAgICAgICAgICAge3sgeWVhciB9fVxuICAgICAgICAgICAgPC9rYnEtb3B0aW9uPlxuICAgICAgICB9XG4gICAgPC9rYnEtc2VsZWN0PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19idXR0b24tZ3JvdXBcIj5cbiAgICA8YnV0dG9uXG4gICAgICAgIGticS1idXR0b25cbiAgICAgICAgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19wcmV2aW91cy1idXR0b25cIlxuICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwcmV2aW91c0Rpc2FibGVkXCJcbiAgICAgICAgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIlxuICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0UHJldmlvdXNNb250aCgpXCJcbiAgICA+XG4gICAgICAgIDxpIGticS1pY29uPVwia2JxLWNoZXZyb24tbGVmdF8xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJjdXJyZW50RGlzYWJsZWRcIlxuICAgICAgICBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgIFt0YWJpbmRleF09XCItMVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3RDdXJyZW50RGF0ZSgpXCJcbiAgICA+XG4gICAgICAgIDxpIGticS1pY29uPVwia2JxLWNpcmNsZS14c18xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhci1oZWFkZXJfX25leHQtYnV0dG9uXCJcbiAgICAgICAgW2NvbG9yXT1cIidjb250cmFzdCdcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibmV4dERpc2FibGVkXCJcbiAgICAgICAgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIlxuICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0TmV4dE1vbnRoKClcIlxuICAgID5cbiAgICAgICAgPGkga2JxLWljb249XCJrYnEtY2hldnJvbi1yaWdodF8xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
160
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZGF0ZXBpY2tlci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9kYXRlcGlja2VyL2NhbGVuZGFyLWhlYWRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7QUFFdEQsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDO0FBQzVCLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQztBQVM1QixxQ0FBcUM7QUFZckMsTUFBTSxPQUFPLGlCQUFpQjtJQU8xQixJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLEtBQVE7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFFekIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUlELElBQ0ksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsS0FBZTtRQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDVCxPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXRCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFJRCxJQUNJ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ICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcblxuY29uc3QgZGVmYXVsdE1pblllYXIgPSAxOTAwO1xuY29uc3QgZGVmYXVsdE1heFllYXIgPSAyMDk5O1xuXG5leHBvcnQgdHlwZSBNb250aE5hbWUgPSB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG5hbWVTaG9ydDogc3RyaW5nO1xuICAgIHZhbHVlOiBudW1iZXI7XG4gICAgZGlzYWJsZWQ6IGJvb2xlYW47XG59O1xuXG4vKiogRGVmYXVsdCBoZWFkZXIgZm9yIEticUNhbGVuZGFyICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1jYWxlbmRhci1oZWFkZXInLFxuICAgIGV4cG9ydEFzOiAna2JxQ2FsZW5kYXJIZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnY2FsZW5kYXItaGVhZGVyLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydjYWxlbmRhci1oZWFkZXIuc2NzcyddLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtY2FsZW5kYXItaGVhZGVyJ1xuICAgIH0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBLYnFDYWxlbmRhckhlYWRlcjxEPiBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIG1vbnRoTmFtZXM6IE1vbnRoTmFtZVtdO1xuICAgIHNlbGVjdGVkTW9udGg6IG51bWJlcjtcblxuICAgIHllYXJzOiBudW1iZXJbXSA9IFtdO1xuICAgIHNlbGVjdGVkWWVhcjogbnVtYmVyO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgYWN0aXZlRGF0ZSgpOiBEIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZURhdGU7XG4gICAgfVxuXG4gICAgc2V0IGFjdGl2ZURhdGUodmFsdWU6IEQpIHtcbiAgICAgICAgdGhpcy5fYWN0aXZlRGF0ZSA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRWYWx1ZXMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3Rpb25PcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYWN0aXZlRGF0ZTogRDtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG1heERhdGUoKTogRCB8IG51bGwge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4RGF0ZTtcbiAgICB9XG5cbiAgICBzZXQgbWF4RGF0ZSh2YWx1ZTogRCB8IG51bGwpIHtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fbWF4RGF0ZSA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX21heERhdGUgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZShkZWZhdWx0TWF4WWVhciwgMTEpO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgbWluRGF0ZSgpOiBEIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9taW5EYXRlO1xuICAgIH1cblxuICAgIHNldCBtaW5EYXRlKHZhbHVlOiBEIHwgbnVsbCkge1xuICAgICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9taW5EYXRlID0gdmFsdWU7XG5cbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3Rpb25PcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfbWluRGF0ZSA9IHRoaXMuYWRhcHRlci5jcmVhdGVEYXRlKGRlZmF1bHRNaW5ZZWFyLCAxKTtcblxuICAgIGdldCBwcmV2aW91c0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0aGlzLmFjdGl2ZURhdGUsIHRoaXMubWluRGF0ZSEpIDw9IDA7XG4gICAgfVxuXG4gICAgZ2V0IGN1cnJlbnREaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgdG9kYXkgPSB0aGlzLmFkYXB0ZXIudG9kYXkoKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0b2RheSwgdGhpcy5taW5EYXRlISkgPCAwIHx8IHRoaXMuY29tcGFyZURhdGUodG9kYXksIHRoaXMubWF4RGF0ZSEpID4gMDtcbiAgICB9XG5cbiAgICBnZXQgbmV4dERpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wYXJlRGF0ZSh0aGlzLmFjdGl2ZURhdGUsIHRoaXMubWF4RGF0ZSEpID49IDA7XG4gICAgfVxuXG4gICAgLyoqIEVtaXRzIHdoZW4gYW55IGRhdGUgaXMgYWN0aXZhdGVkLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBhY3RpdmVEYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEPigpO1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb250aFNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEPigpO1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB5ZWFyU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEQ+KCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFkYXB0ZXI6IERhdGVBZGFwdGVyPEQ+KSB7XG4gICAgICAgIHRoaXMubW9udGhOYW1lcyA9IHRoaXMuYWRhcHRlci5nZXRNb250aE5hbWVzKCdsb25nJykubWFwKChuYW1lLCBpKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4geyBuYW1lLCBuYW1lU2hvcnQ6IHRoaXMuYWRhcHRlci5nZXRNb250aE5hbWVzKCdzaG9ydCcpW2ldLCB2YWx1ZTogaSwgZGlzYWJsZWQ6IGZhbHNlIH07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGVZZWFyc09wdGlvbnMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVNb250aE9wdGlvbnMoKTtcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZFZhbHVlcygpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHdoZW4gYSBuZXcgbW9udGggaXMgc2VsZWN0ZWQuICovXG4gICAgb25Nb250aFNlbGVjdGVkKG1vbnRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgeWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMuYWN0aXZlRGF0ZSk7XG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWREYXRlID0gdGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoeWVhciwgbW9udGgpO1xuICAgICAgICBjb25zdCBkYXlzSW5Nb250aCA9IHRoaXMuYWRhcHRlci5nZXROdW1EYXlzSW5Nb250aChub3JtYWxpemVkRGF0ZSk7XG5cbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoXG4gICAgICAgICAgICB5ZWFyLFxuICAgICAgICAgICAgbW9udGgsXG4gICAgICAgICAgICBNYXRoLm1pbih0aGlzLmFkYXB0ZXIuZ2V0RGF0ZSh0aGlzLmFjdGl2ZURhdGUpLCBkYXlzSW5Nb250aClcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLm1vbnRoU2VsZWN0ZWQuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgICAgICB0aGlzLmFjdGl2ZURhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHdoZW4gYSBuZXcgeWVhciBpcyBzZWxlY3RlZC4gKi9cbiAgICBvblllYXJTZWxlY3RlZCh5ZWFyOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLmFkYXB0ZXIuZ2V0TW9udGgodGhpcy5hY3RpdmVEYXRlKTtcbiAgICAgICAgY29uc3QgZGF5c0luTW9udGggPSB0aGlzLmFkYXB0ZXIuZ2V0TnVtRGF5c0luTW9udGgodGhpcy5hZGFwdGVyLmNyZWF0ZURhdGUoeWVhciwgbW9udGgpKTtcblxuICAgICAgICB0aGlzLmFjdGl2ZURhdGUgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZShcbiAgICAgICAgICAgIHllYXIsXG4gICAgICAgICAgICBtb250aCxcbiAgICAgICAgICAgIE1hdGgubWluKHRoaXMuYWRhcHRlci5nZXREYXRlKHRoaXMuYWN0aXZlRGF0ZSksIGRheXNJbk1vbnRoKVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMueWVhclNlbGVjdGVkLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlQ2hhbmdlLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcblxuICAgICAgICB0aGlzLnVwZGF0ZU1vbnRoT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHNlbGVjdEN1cnJlbnREYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGl2ZURhdGUgPSB0aGlzLmFkYXB0ZXIudG9kYXkoKTtcblxuICAgICAgICB0aGlzLmFjdGl2ZURhdGVDaGFuZ2UuZW1pdCh0aGlzLmFjdGl2ZURhdGUpO1xuICAgIH1cblxuICAgIC8qKiBIYW5kbGVzIHVzZXIgY2xpY2tzIG9uIHRoZSBwcmV2aW91cyBidXR0b24uICovXG4gICAgc2VsZWN0UHJldmlvdXNNb250aCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgLTEpO1xuXG4gICAgICAgIHRoaXMuYWN0aXZlRGF0ZUNoYW5nZS5lbWl0KHRoaXMuYWN0aXZlRGF0ZSk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZXMgdXNlciBjbGlja3Mgb24gdGhlIG5leHQgYnV0dG9uLiAqL1xuICAgIHNlbGVjdE5leHRNb250aCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlID0gdGhpcy5hZGFwdGVyLmFkZENhbGVuZGFyTW9udGhzKHRoaXMuYWN0aXZlRGF0ZSwgMSk7XG5cbiAgICAgICAgdGhpcy5hY3RpdmVEYXRlQ2hhbmdlLmVtaXQodGhpcy5hY3RpdmVEYXRlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbXBhcmVEYXRlKGZpcnN0OiBELCBzZWNvbmQ6IEQpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRmlyc3QgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZSh0aGlzLmFkYXB0ZXIuZ2V0WWVhcihmaXJzdCksIHRoaXMuYWRhcHRlci5nZXRNb250aChmaXJzdCkpO1xuXG4gICAgICAgIGNvbnN0IG5vcm1hbGl6ZWRTZWNvbmQgPSB0aGlzLmFkYXB0ZXIuY3JlYXRlRGF0ZSh0aGlzLmFkYXB0ZXIuZ2V0WWVhcihzZWNvbmQpLCB0aGlzLmFkYXB0ZXIuZ2V0TW9udGgoc2Vjb25kKSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuYWRhcHRlci5jb21wYXJlRGF0ZShub3JtYWxpemVkRmlyc3QsIG5vcm1hbGl6ZWRTZWNvbmQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlU2VsZWN0ZWRWYWx1ZXMoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRNb250aCA9IHRoaXMubW9udGhOYW1lc1t0aGlzLmFkYXB0ZXIuZ2V0TW9udGgodGhpcy5hY3RpdmVEYXRlKV0udmFsdWU7XG5cbiAgICAgICAgY29uc3QgeWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMuYWN0aXZlRGF0ZSk7XG5cbiAgICAgICAgdGhpcy5zZWxlY3RlZFllYXIgPSB0aGlzLnllYXJzLmZpbmQoKGl0ZW0pID0+IGl0ZW0gPT09IHllYXIpIHx8IHRoaXMueWVhcnNbMF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVTZWxlY3Rpb25PcHRpb25zKCkge1xuICAgICAgICB0aGlzLnVwZGF0ZVllYXJzT3B0aW9ucygpO1xuICAgICAgICB0aGlzLnVwZGF0ZU1vbnRoT3B0aW9ucygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlWWVhcnNPcHRpb25zKCkge1xuICAgICAgICBjb25zdCBtaW5ZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5taW5EYXRlISk7XG4gICAgICAgIGNvbnN0IG1heFllYXIgPSB0aGlzLmFkYXB0ZXIuZ2V0WWVhcih0aGlzLm1heERhdGUhKTtcblxuICAgICAgICB0aGlzLnllYXJzID0gW107XG5cbiAgICAgICAgZm9yIChsZXQga2V5OiBudW1iZXIgPSBtaW5ZZWFyOyBrZXkgPD0gbWF4WWVhcjsga2V5KyspIHtcbiAgICAgICAgICAgIHRoaXMueWVhcnMucHVzaChrZXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVNb250aE9wdGlvbnMoKSB7XG4gICAgICAgIGlmICghdGhpcy5fYWN0aXZlRGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWluWWVhciA9IHRoaXMuYWRhcHRlci5nZXRZZWFyKHRoaXMubWluRGF0ZSEpO1xuICAgICAgICBjb25zdCBtaW5Nb250aCA9IHRoaXMuYWRhcHRlci5nZXRNb250aCh0aGlzLm1pbkRhdGUhKTtcblxuICAgICAgICBjb25zdCBtYXhZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5tYXhEYXRlISk7XG4gICAgICAgIGNvbnN0IG1heE1vbnRoID0gdGhpcy5hZGFwdGVyLmdldE1vbnRoKHRoaXMubWF4RGF0ZSEpO1xuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gdGhpcy5hZGFwdGVyLmdldFllYXIodGhpcy5fYWN0aXZlRGF0ZSk7XG5cbiAgICAgICAgaWYgKGN1cnJlbnRZZWFyID09PSBtaW5ZZWFyKSB7XG4gICAgICAgICAgICB0aGlzLm1vbnRoTmFtZXMuZm9yRWFjaCgobW9udGgpID0+IChtb250aC5kaXNhYmxlZCA9IG1vbnRoLnZhbHVlIDwgbWluTW9udGgpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjdXJyZW50WWVhciA9PT0gbWF4WWVhcikge1xuICAgICAgICAgICAgdGhpcy5tb250aE5hbWVzLmZvckVhY2goKG1vbnRoKSA9PiAobW9udGguZGlzYWJsZWQgPSBtb250aC52YWx1ZSA+IG1heE1vbnRoKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwia2JxLWNhbGVuZGFyLWhlYWRlcl9fc2VsZWN0LWdyb3VwXCI+XG4gICAgPGticS1zZWxlY3RcbiAgICAgICAgI21vbnRoU2VsZWN0PVwia2JxU2VsZWN0XCJcbiAgICAgICAgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19zZWxlY3RcIlxuICAgICAgICBbcGFuZWxDbGFzc109XCIna2JxLWNhbGVuZGFyLXNlbGVjdC1wYW5lbCdcIlxuICAgICAgICBbdmFsdWVdPVwic2VsZWN0ZWRNb250aFwiXG4gICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwib25Nb250aFNlbGVjdGVkKCRldmVudC52YWx1ZSlcIlxuICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAga2JxLXNlbGVjdC1tYXRjaGVyXG4gICAgICAgICAgICBjbGFzcz1cImxheW91dC1wYWRkaW5nLXJpZ2h0LXhzXCJcbiAgICAgICAgICAgIFtjbGFzcy5rYnEtYWN0aXZlXT1cIm1vbnRoU2VsZWN0LnBhbmVsT3BlblwiXG4gICAgICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgICAgICBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyBtb250aE5hbWVzW3NlbGVjdGVkTW9udGhdLm5hbWVTaG9ydCB8IHRpdGxlY2FzZSB9fVxuXG4gICAgICAgICAgICA8aSBrYnEtaWNvbj1cImticS1jaGV2cm9uLWRvd24tc18xNlwiIGNsYXNzPVwibGF5b3V0LXBhZGRpbmctbGVmdC0zeHNcIiBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgQGZvciAobW9udGggb2YgbW9udGhOYW1lczsgdHJhY2sgbW9udGgubmFtZVNob3J0KSB7XG4gICAgICAgICAgICA8a2JxLW9wdGlvbiBbZGlzYWJsZWRdPVwibW9udGguZGlzYWJsZWRcIiBba2JxVG9vbHRpcERpc2FibGVkXT1cInRydWVcIiBbdmFsdWVdPVwibW9udGgudmFsdWVcIj5cbiAgICAgICAgICAgICAgICB7eyBtb250aC5uYW1lIH19XG4gICAgICAgICAgICA8L2ticS1vcHRpb24+XG4gICAgICAgIH1cbiAgICA8L2ticS1zZWxlY3Q+XG5cbiAgICA8a2JxLXNlbGVjdFxuICAgICAgICAjeWVhclNlbGVjdD1cImticVNlbGVjdFwiXG4gICAgICAgIFtwYW5lbENsYXNzXT1cIidrYnEtY2FsZW5kYXItc2VsZWN0LXBhbmVsJ1wiXG4gICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZFllYXJcIlxuICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uWWVhclNlbGVjdGVkKCRldmVudC52YWx1ZSlcIlxuICAgID5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAga2JxLXNlbGVjdC1tYXRjaGVyXG4gICAgICAgICAgICBjbGFzcz1cImxheW91dC1wYWRkaW5nLXJpZ2h0LXhzXCJcbiAgICAgICAgICAgIFtjbGFzcy5rYnEtYWN0aXZlXT1cInllYXJTZWxlY3QucGFuZWxPcGVuXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCInY29udHJhc3QnXCJcbiAgICAgICAgICAgIFtrYnFTdHlsZV09XCIndHJhbnNwYXJlbnQnXCJcbiAgICAgICAgICAgIFt0YWJpbmRleF09XCItMVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHNlbGVjdGVkWWVhciB9fVxuXG4gICAgICAgICAgICA8aSBrYnEtaWNvbj1cImticS1jaGV2cm9uLWRvd24tc18xNlwiIGNsYXNzPVwibGF5b3V0LXBhZGRpbmctbGVmdC0zeHNcIj48L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIEBmb3IgKHllYXIgb2YgeWVhcnM7IHRyYWNrIHllYXIpIHtcbiAgICAgICAgICAgIDxrYnEtb3B0aW9uIFtrYnFUb29sdGlwRGlzYWJsZWRdPVwidHJ1ZVwiIFt2YWx1ZV09XCJ5ZWFyXCI+XG4gICAgICAgICAgICAgICAge3sgeWVhciB9fVxuICAgICAgICAgICAgPC9rYnEtb3B0aW9uPlxuICAgICAgICB9XG4gICAgPC9rYnEtc2VsZWN0PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19idXR0b24tZ3JvdXBcIj5cbiAgICA8YnV0dG9uXG4gICAgICAgIGticS1idXR0b25cbiAgICAgICAgY2xhc3M9XCJrYnEtY2FsZW5kYXItaGVhZGVyX19wcmV2aW91cy1idXR0b25cIlxuICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJwcmV2aW91c0Rpc2FibGVkXCJcbiAgICAgICAgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIlxuICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0UHJldmlvdXNNb250aCgpXCJcbiAgICA+XG4gICAgICAgIDxpIGticS1pY29uPVwia2JxLWNoZXZyb24tbGVmdF8xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICBbY29sb3JdPVwiJ2NvbnRyYXN0J1wiXG4gICAgICAgIFtkaXNhYmxlZF09XCJjdXJyZW50RGlzYWJsZWRcIlxuICAgICAgICBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgIFt0YWJpbmRleF09XCItMVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3RDdXJyZW50RGF0ZSgpXCJcbiAgICA+XG4gICAgICAgIDxpIGticS1pY29uPVwia2JxLWNpcmNsZS14c18xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICBjbGFzcz1cImticS1jYWxlbmRhci1oZWFkZXJfX25leHQtYnV0dG9uXCJcbiAgICAgICAgW2NvbG9yXT1cIidjb250cmFzdCdcIlxuICAgICAgICBbZGlzYWJsZWRdPVwibmV4dERpc2FibGVkXCJcbiAgICAgICAgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIlxuICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0TmV4dE1vbnRoKClcIlxuICAgID5cbiAgICAgICAgPGkga2JxLWljb249XCJrYnEtY2hldnJvbi1yaWdodF8xNlwiPjwvaT5cbiAgICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19