ngx-tethys 18.0.0 → 18.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (614) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/action/styles/action.scss +1 -1
  3. package/action/styles/mixin.scss +8 -3
  4. package/alert/styles/mixin.scss +3 -10
  5. package/back-top/examples/custom/custom.scss +3 -1
  6. package/badge/examples/basic/basic.component.scss +3 -1
  7. package/badge/examples/custom-color/custom-color.component.scss +3 -1
  8. package/badge/examples/overflow/overflow.component.scss +3 -1
  9. package/badge/examples/state-point/state-point.component.scss +3 -1
  10. package/badge/examples/type/type.component.scss +3 -1
  11. package/badge/styles/badge.scss +1 -1
  12. package/badge/styles/mixin.scss +2 -16
  13. package/button/styles/button.scss +8 -7
  14. package/button/styles/mixin.scss +22 -15
  15. package/carousel/styles/variables.scss +1 -1
  16. package/cascader/cascader.service.d.ts +1 -1
  17. package/cascader/styles/cascader.scss +3 -6
  18. package/collapse/examples/custom/custom.component.scss +3 -1
  19. package/color-picker/parts/inputs/inputs.component.d.ts +1 -0
  20. package/color-picker/styles/inputs.scss +8 -1
  21. package/color-picker/styles/saturation.scss +3 -3
  22. package/core/debounce-time.d.ts +8 -0
  23. package/core/index.d.ts +1 -0
  24. package/date-picker/styles/decade-panel.scss +1 -1
  25. package/date-picker/styles/mixin.scss +1 -1
  26. package/date-picker/styles/picker.scss +3 -0
  27. package/date-picker/styles/variables.scss +1 -4
  28. package/date-picker/styles/year-panel.scss +1 -1
  29. package/drag-drop/examples/tree-drag/tree-drag.component.scss +0 -1
  30. package/dropdown/styles/dropdown.scss +1 -1
  31. package/esm2022/action/action.component.mjs +4 -4
  32. package/esm2022/action/action.module.mjs +4 -4
  33. package/esm2022/action/actions.component.mjs +3 -3
  34. package/esm2022/affix/affix.component.mjs +4 -4
  35. package/esm2022/affix/affix.module.mjs +4 -4
  36. package/esm2022/alert/alert.component.mjs +3 -3
  37. package/esm2022/alert/alert.directive.mjs +3 -3
  38. package/esm2022/alert/alert.module.mjs +4 -4
  39. package/esm2022/anchor/anchor-link.component.mjs +4 -4
  40. package/esm2022/anchor/anchor.component.mjs +4 -4
  41. package/esm2022/anchor/anchor.module.mjs +4 -4
  42. package/esm2022/arrow-switcher/arrow-switcher.component.mjs +3 -3
  43. package/esm2022/arrow-switcher/module.mjs +4 -4
  44. package/esm2022/autocomplete/autocomplete.component.mjs +4 -4
  45. package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +3 -3
  46. package/esm2022/autocomplete/module.mjs +4 -4
  47. package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +3 -3
  48. package/esm2022/autocomplete/overlay/autocomplete.service.mjs +3 -3
  49. package/esm2022/avatar/avatar-list/avatar-list.component.mjs +3 -3
  50. package/esm2022/avatar/avatar.component.mjs +4 -4
  51. package/esm2022/avatar/avatar.module.mjs +4 -4
  52. package/esm2022/avatar/avatar.pipe.mjs +9 -9
  53. package/esm2022/avatar/avatar.service.mjs +3 -3
  54. package/esm2022/back-top/back-top.component.mjs +3 -3
  55. package/esm2022/back-top/back-top.module.mjs +4 -4
  56. package/esm2022/badge/badge.component.mjs +3 -3
  57. package/esm2022/badge/badge.module.mjs +4 -4
  58. package/esm2022/breadcrumb/breadcrumb-item.component.mjs +4 -4
  59. package/esm2022/breadcrumb/breadcrumb.component.mjs +3 -3
  60. package/esm2022/breadcrumb/module.mjs +4 -4
  61. package/esm2022/button/button-group.component.mjs +3 -3
  62. package/esm2022/button/button-icon.component.mjs +3 -3
  63. package/esm2022/button/button.component.mjs +4 -4
  64. package/esm2022/button/button.module.mjs +4 -4
  65. package/esm2022/calendar/calendar-cells.mjs +6 -6
  66. package/esm2022/calendar/calendar-header.component.mjs +3 -3
  67. package/esm2022/calendar/calendar.component.mjs +3 -3
  68. package/esm2022/calendar/module.mjs +4 -4
  69. package/esm2022/card/card.component.mjs +3 -3
  70. package/esm2022/card/card.module.mjs +4 -4
  71. package/esm2022/card/content.component.mjs +3 -3
  72. package/esm2022/card/header.component.mjs +3 -3
  73. package/esm2022/carousel/carousel-item.directive.mjs +4 -4
  74. package/esm2022/carousel/carousel.component.mjs +7 -7
  75. package/esm2022/carousel/carousel.service.mjs +4 -4
  76. package/esm2022/carousel/module.mjs +4 -4
  77. package/esm2022/cascader/cascader-li.component.mjs +3 -3
  78. package/esm2022/cascader/cascader-search-option.component.mjs +3 -3
  79. package/esm2022/cascader/cascader.component.mjs +7 -7
  80. package/esm2022/cascader/cascader.service.mjs +9 -21
  81. package/esm2022/cascader/module.mjs +4 -4
  82. package/esm2022/checkbox/checkbox.component.mjs +3 -3
  83. package/esm2022/checkbox/module.mjs +4 -4
  84. package/esm2022/collapse/collapse-item.component.mjs +4 -4
  85. package/esm2022/collapse/collapse.component.mjs +3 -3
  86. package/esm2022/collapse/module.mjs +4 -4
  87. package/esm2022/color-picker/color-picker-custom-panel.component.mjs +3 -3
  88. package/esm2022/color-picker/color-picker-panel.component.mjs +3 -3
  89. package/esm2022/color-picker/color-picker.component.mjs +4 -4
  90. package/esm2022/color-picker/coordinates.directive.mjs +3 -3
  91. package/esm2022/color-picker/helpers/rgba.class.mjs +1 -1
  92. package/esm2022/color-picker/module.mjs +4 -4
  93. package/esm2022/color-picker/parts/alpha/alpha.component.mjs +3 -3
  94. package/esm2022/color-picker/parts/hue/hue.component.mjs +3 -3
  95. package/esm2022/color-picker/parts/indicator/indicator.component.mjs +3 -3
  96. package/esm2022/color-picker/parts/inputs/inputs.component.mjs +20 -10
  97. package/esm2022/color-picker/parts/saturation/saturation.component.mjs +3 -3
  98. package/esm2022/comment/comment-actions.directive.mjs +3 -3
  99. package/esm2022/comment/comment-content.directive.mjs +3 -3
  100. package/esm2022/comment/comment.component.mjs +3 -3
  101. package/esm2022/comment/comment.module.mjs +4 -4
  102. package/esm2022/copy/copy.directive.mjs +3 -3
  103. package/esm2022/copy/module.mjs +4 -4
  104. package/esm2022/core/click-positioner.mjs +3 -3
  105. package/esm2022/core/debounce-time.mjs +11 -0
  106. package/esm2022/core/index.mjs +2 -1
  107. package/esm2022/core/overlay/abstract-overlay-container.mjs +1 -1
  108. package/esm2022/core/overlay/overlay.directive.mjs +1 -1
  109. package/esm2022/core/overlay/portal-directives.mjs +3 -3
  110. package/esm2022/core/scroll.mjs +4 -4
  111. package/esm2022/core/store/store.mjs +3 -3
  112. package/esm2022/core/translate.mjs +3 -3
  113. package/esm2022/core/update-host-class.service.mjs +3 -3
  114. package/esm2022/date-picker/abstract-picker.component.mjs +3 -3
  115. package/esm2022/date-picker/abstract-picker.directive.mjs +4 -4
  116. package/esm2022/date-picker/base-picker.component.mjs +4 -4
  117. package/esm2022/date-picker/date-helper.service.mjs +3 -3
  118. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  119. package/esm2022/date-picker/date-picker.directive.mjs +3 -3
  120. package/esm2022/date-picker/date-picker.module.mjs +4 -4
  121. package/esm2022/date-picker/date-picker.service.mjs +3 -3
  122. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +3 -3
  123. package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +3 -3
  124. package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +3 -3
  125. package/esm2022/date-picker/lib/date/date-header.component.mjs +3 -3
  126. package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +3 -3
  127. package/esm2022/date-picker/lib/date/date-table.component.mjs +4 -4
  128. package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +3 -3
  129. package/esm2022/date-picker/lib/decade/decade-header.component.mjs +3 -3
  130. package/esm2022/date-picker/lib/decade/decade-table.component.mjs +3 -3
  131. package/esm2022/date-picker/lib/lib-packer.module.mjs +4 -4
  132. package/esm2022/date-picker/lib/month/month-header.component.mjs +3 -3
  133. package/esm2022/date-picker/lib/month/month-table.component.mjs +3 -3
  134. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +4 -4
  135. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +3 -3
  136. package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +3 -3
  137. package/esm2022/date-picker/lib/year/year-header.component.mjs +3 -3
  138. package/esm2022/date-picker/lib/year/year-table.component.mjs +3 -3
  139. package/esm2022/date-picker/month-picker.component.mjs +4 -4
  140. package/esm2022/date-picker/picker.component.mjs +5 -5
  141. package/esm2022/date-picker/picker.pipes.mjs +12 -12
  142. package/esm2022/date-picker/picker.validators.mjs +6 -6
  143. package/esm2022/date-picker/quarter-picker.component.mjs +4 -4
  144. package/esm2022/date-picker/range-picker.component.mjs +4 -4
  145. package/esm2022/date-picker/range-picker.directive.mjs +3 -3
  146. package/esm2022/date-picker/week-picker.component.mjs +4 -4
  147. package/esm2022/date-picker/year-picker.component.mjs +4 -4
  148. package/esm2022/date-range/date-range.component.mjs +4 -4
  149. package/esm2022/date-range/module.mjs +4 -4
  150. package/esm2022/date-range/optional-dates/optional-dates.component.mjs +3 -3
  151. package/esm2022/dialog/body/dialog-body.component.mjs +3 -3
  152. package/esm2022/dialog/confirm/confirm.component.mjs +3 -3
  153. package/esm2022/dialog/dialog-container.component.mjs +3 -3
  154. package/esm2022/dialog/dialog.module.mjs +4 -4
  155. package/esm2022/dialog/dialog.service.mjs +3 -3
  156. package/esm2022/dialog/footer/dialog-footer.component.mjs +3 -3
  157. package/esm2022/dialog/header/dialog-header.component.mjs +3 -3
  158. package/esm2022/divider/divider.component.mjs +3 -3
  159. package/esm2022/divider/divider.module.mjs +4 -4
  160. package/esm2022/dot/dot.component.mjs +4 -4
  161. package/esm2022/dot/dot.module.mjs +4 -4
  162. package/esm2022/drag-drop/drag-content.directive.mjs +4 -4
  163. package/esm2022/drag-drop/drag-drop.service.mjs +3 -3
  164. package/esm2022/drag-drop/drag-handle.directive.mjs +4 -4
  165. package/esm2022/drag-drop/drag.directive.mjs +3 -3
  166. package/esm2022/drag-drop/drop-container.directive.mjs +3 -3
  167. package/esm2022/drag-drop/module.mjs +4 -4
  168. package/esm2022/dropdown/dropdown-active.directive.mjs +4 -4
  169. package/esm2022/dropdown/dropdown-menu-item.directive.mjs +21 -21
  170. package/esm2022/dropdown/dropdown-menu.component.mjs +12 -12
  171. package/esm2022/dropdown/dropdown-submenu.component.mjs +4 -4
  172. package/esm2022/dropdown/dropdown.directive.mjs +3 -3
  173. package/esm2022/dropdown/module.mjs +4 -4
  174. package/esm2022/empty/empty.component.mjs +3 -3
  175. package/esm2022/empty/empty.config.mjs +3 -3
  176. package/esm2022/empty/empty.module.mjs +4 -4
  177. package/esm2022/flexible-text/flexible-text.component.mjs +3 -3
  178. package/esm2022/flexible-text/flexible-text.module.mjs +4 -4
  179. package/esm2022/form/form-group-error/form-group-error.component.mjs +3 -3
  180. package/esm2022/form/form-group-label.directive.mjs +3 -3
  181. package/esm2022/form/form-group.component.mjs +4 -4
  182. package/esm2022/form/form-submit.directive.mjs +3 -3
  183. package/esm2022/form/form-validator-loader.mjs +3 -3
  184. package/esm2022/form/form-validator.service.mjs +3 -3
  185. package/esm2022/form/form.directive.mjs +3 -3
  186. package/esm2022/form/from-group-footer/form-group-footer.component.mjs +4 -4
  187. package/esm2022/form/module.mjs +4 -4
  188. package/esm2022/form/validator/confirm-validator.directive.mjs +3 -3
  189. package/esm2022/form/validator/max-validator.directive.mjs +3 -3
  190. package/esm2022/form/validator/min-validator.directive.mjs +3 -3
  191. package/esm2022/form/validator/unique-validator.directive.mjs +4 -4
  192. package/esm2022/fullscreen/fullscreen-launch.directive.mjs +3 -3
  193. package/esm2022/fullscreen/fullscreen-ref.mjs +3 -2
  194. package/esm2022/fullscreen/fullscreen.component.mjs +4 -4
  195. package/esm2022/fullscreen/fullscreen.module.mjs +4 -4
  196. package/esm2022/fullscreen/fullscreen.service.mjs +4 -4
  197. package/esm2022/grid/flex.mjs +12 -12
  198. package/esm2022/grid/module.mjs +4 -4
  199. package/esm2022/grid/thy-col.directive.mjs +3 -3
  200. package/esm2022/grid/thy-grid-item.component.mjs +4 -4
  201. package/esm2022/grid/thy-grid.component.mjs +7 -7
  202. package/esm2022/grid/thy-row.directive.mjs +3 -3
  203. package/esm2022/guider/guider-hint/guider-hint.component.mjs +3 -3
  204. package/esm2022/guider/guider-manager.mjs +3 -3
  205. package/esm2022/guider/guider.directive.mjs +4 -4
  206. package/esm2022/guider/guider.module.mjs +4 -4
  207. package/esm2022/guider/guider.service.mjs +3 -3
  208. package/esm2022/icon/icon-registry.mjs +4 -4
  209. package/esm2022/icon/icon.component.mjs +4 -4
  210. package/esm2022/icon/icon.module.mjs +4 -4
  211. package/esm2022/image/image-group.component.mjs +4 -4
  212. package/esm2022/image/image.directive.mjs +4 -4
  213. package/esm2022/image/image.service.mjs +3 -3
  214. package/esm2022/image/module.mjs +4 -4
  215. package/esm2022/image/preview/image-preview.component.mjs +4 -4
  216. package/esm2022/input/input-count.component.mjs +4 -4
  217. package/esm2022/input/input-group.component.mjs +4 -4
  218. package/esm2022/input/input-search.component.mjs +4 -4
  219. package/esm2022/input/input.component.mjs +4 -4
  220. package/esm2022/input/input.directive.mjs +4 -4
  221. package/esm2022/input/module.mjs +4 -4
  222. package/esm2022/input-number/input-number.component.mjs +3 -3
  223. package/esm2022/input-number/module.mjs +4 -4
  224. package/esm2022/layout/content-main.component.mjs +6 -6
  225. package/esm2022/layout/content-section.component.mjs +6 -6
  226. package/esm2022/layout/content.component.mjs +6 -6
  227. package/esm2022/layout/header.component.mjs +6 -6
  228. package/esm2022/layout/layout.component.mjs +6 -6
  229. package/esm2022/layout/layout.module.mjs +4 -4
  230. package/esm2022/layout/sidebar-content.component.mjs +6 -6
  231. package/esm2022/layout/sidebar-footer.component.mjs +6 -6
  232. package/esm2022/layout/sidebar-header.component.mjs +6 -6
  233. package/esm2022/layout/sidebar.component.mjs +7 -7
  234. package/esm2022/list/list-item-meta.component.mjs +3 -3
  235. package/esm2022/list/list-item.component.mjs +3 -3
  236. package/esm2022/list/list.component.mjs +3 -3
  237. package/esm2022/list/list.module.mjs +4 -4
  238. package/esm2022/list/selection/selection-list.mjs +3 -3
  239. package/esm2022/loading/loading.component.mjs +3 -3
  240. package/esm2022/loading/loading.module.mjs +4 -4
  241. package/esm2022/mention/mention.directive.mjs +3 -3
  242. package/esm2022/mention/mention.module.mjs +4 -4
  243. package/esm2022/mention/suggestions/suggestions.component.mjs +4 -4
  244. package/esm2022/menu/divider/menu-divider.component.mjs +3 -3
  245. package/esm2022/menu/group/menu-group.component.mjs +3 -3
  246. package/esm2022/menu/item/action/menu-item-action.component.mjs +4 -4
  247. package/esm2022/menu/item/icon/menu-item-icon.component.mjs +3 -3
  248. package/esm2022/menu/item/menu-item.component.mjs +3 -3
  249. package/esm2022/menu/item/name/menu-item-name.component.mjs +3 -3
  250. package/esm2022/menu/menu.component.mjs +3 -3
  251. package/esm2022/menu/menu.module.mjs +4 -4
  252. package/esm2022/message/abstract/abstract-message-container.component.mjs +4 -4
  253. package/esm2022/message/abstract/abstract-message.component.mjs +4 -4
  254. package/esm2022/message/abstract/abstract-message.service.mjs +1 -1
  255. package/esm2022/message/message-container.component.mjs +3 -3
  256. package/esm2022/message/message-queue.service.mjs +3 -3
  257. package/esm2022/message/message.component.mjs +3 -3
  258. package/esm2022/message/message.service.mjs +3 -3
  259. package/esm2022/message/module.mjs +4 -4
  260. package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +3 -3
  261. package/esm2022/nav/icon-nav/icon-nav.component.mjs +3 -3
  262. package/esm2022/nav/nav-ink-bar.directive.mjs +3 -3
  263. package/esm2022/nav/nav-item.directive.mjs +4 -4
  264. package/esm2022/nav/nav.component.mjs +3 -3
  265. package/esm2022/nav/nav.module.mjs +4 -4
  266. package/esm2022/nav/nav.pipe.mjs +3 -3
  267. package/esm2022/notify/module.mjs +4 -4
  268. package/esm2022/notify/notify-container.component.mjs +3 -3
  269. package/esm2022/notify/notify-queue.service.mjs +3 -3
  270. package/esm2022/notify/notify.component.mjs +5 -5
  271. package/esm2022/notify/notify.service.mjs +3 -3
  272. package/esm2022/pagination/pagination.component.mjs +29 -29
  273. package/esm2022/pagination/pagination.module.mjs +4 -4
  274. package/esm2022/pagination/pagination.pipe.mjs +3 -3
  275. package/esm2022/popover/body/popover-body.component.mjs +3 -3
  276. package/esm2022/popover/header/popover-header.component.mjs +4 -4
  277. package/esm2022/popover/module.mjs +4 -4
  278. package/esm2022/popover/popover-container.component.mjs +3 -3
  279. package/esm2022/popover/popover.directive.mjs +3 -3
  280. package/esm2022/popover/popover.service.mjs +3 -3
  281. package/esm2022/progress/progress-circle.component.mjs +3 -3
  282. package/esm2022/progress/progress-strip.component.mjs +3 -3
  283. package/esm2022/progress/progress.component.mjs +3 -3
  284. package/esm2022/progress/progress.module.mjs +4 -4
  285. package/esm2022/property/module.mjs +4 -4
  286. package/esm2022/property/properties.component.mjs +3 -3
  287. package/esm2022/property/property-item.component.mjs +4 -4
  288. package/esm2022/property-operation/group/property-operation-group.component.mjs +3 -3
  289. package/esm2022/property-operation/module.mjs +4 -4
  290. package/esm2022/property-operation/property-operation.component.mjs +4 -4
  291. package/esm2022/radio/button/radio-button.component.mjs +3 -3
  292. package/esm2022/radio/group/radio-group.component.mjs +3 -3
  293. package/esm2022/radio/module.mjs +4 -4
  294. package/esm2022/radio/radio.component.mjs +3 -3
  295. package/esm2022/rate/module.mjs +4 -4
  296. package/esm2022/rate/rate-item.component.mjs +3 -3
  297. package/esm2022/rate/rate.component.mjs +3 -3
  298. package/esm2022/resizable/module.mjs +4 -4
  299. package/esm2022/resizable/resizable.directive.mjs +3 -3
  300. package/esm2022/resizable/resizable.service.mjs +4 -4
  301. package/esm2022/resizable/resize-handle.component.mjs +4 -4
  302. package/esm2022/resizable/resize-handles.component.mjs +3 -3
  303. package/esm2022/result/result.component.mjs +3 -3
  304. package/esm2022/result/result.module.mjs +4 -4
  305. package/esm2022/segment/segment-item.component.mjs +3 -3
  306. package/esm2022/segment/segment.component.mjs +4 -4
  307. package/esm2022/segment/segment.module.mjs +4 -4
  308. package/esm2022/select/custom-select/custom-select.component.mjs +3 -3
  309. package/esm2022/select/module.mjs +4 -4
  310. package/esm2022/select/native-select/native-select.component.mjs +3 -3
  311. package/esm2022/shared/base-form-check.component.mjs +4 -4
  312. package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +4 -4
  313. package/esm2022/shared/directives/thy-autofocus.directive.mjs +4 -4
  314. package/esm2022/shared/directives/thy-contextmenu.directive.mjs +4 -4
  315. package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +4 -4
  316. package/esm2022/shared/directives/thy-drag-drop.directive.mjs +4 -4
  317. package/esm2022/shared/directives/thy-enter.directive.mjs +4 -4
  318. package/esm2022/shared/directives/thy-scroll.directive.mjs +4 -4
  319. package/esm2022/shared/directives/thy-show.mjs +4 -4
  320. package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +3 -3
  321. package/esm2022/shared/directives/view-outlet.directive.mjs +4 -4
  322. package/esm2022/shared/ng-transclude.directive.mjs +3 -3
  323. package/esm2022/shared/option/group/option-group.component.mjs +4 -4
  324. package/esm2022/shared/option/list-option/list-option.component.mjs +3 -3
  325. package/esm2022/shared/option/module.mjs +4 -4
  326. package/esm2022/shared/option/option-group.component.mjs +3 -3
  327. package/esm2022/shared/option/option.component.mjs +4 -4
  328. package/esm2022/shared/option/options-container.component.mjs +3 -3
  329. package/esm2022/shared/select/module.mjs +4 -4
  330. package/esm2022/shared/select/select-control/select-control.component.mjs +3 -3
  331. package/esm2022/shared/shared.module.mjs +4 -4
  332. package/esm2022/skeleton/module.mjs +4 -4
  333. package/esm2022/skeleton/skeleton-circle.component.mjs +3 -3
  334. package/esm2022/skeleton/skeleton-rectangle.component.mjs +3 -3
  335. package/esm2022/skeleton/skeleton.component.mjs +3 -3
  336. package/esm2022/skeleton/stylized/bullet-list.component.mjs +3 -3
  337. package/esm2022/skeleton/stylized/list.component.mjs +3 -3
  338. package/esm2022/skeleton/stylized/paragraph.component.mjs +3 -3
  339. package/esm2022/slide/drawer/drawer-container.directive.mjs +3 -3
  340. package/esm2022/slide/slide-body/slide-body-section.component.mjs +3 -3
  341. package/esm2022/slide/slide-body/slide-body.component.mjs +3 -3
  342. package/esm2022/slide/slide-container.component.mjs +3 -3
  343. package/esm2022/slide/slide-footer/slide-footer.component.mjs +3 -3
  344. package/esm2022/slide/slide-header/slide-header.component.mjs +3 -3
  345. package/esm2022/slide/slide-layout/slide-layout.component.mjs +3 -3
  346. package/esm2022/slide/slide-ref.service.mjs +3 -3
  347. package/esm2022/slide/slide.module.mjs +4 -4
  348. package/esm2022/slide/slide.service.mjs +3 -3
  349. package/esm2022/slider/slider.component.mjs +4 -4
  350. package/esm2022/slider/slider.module.mjs +4 -4
  351. package/esm2022/space/space.component.mjs +6 -6
  352. package/esm2022/space/space.module.mjs +4 -4
  353. package/esm2022/statistic/statistic.component.mjs +3 -3
  354. package/esm2022/statistic/statistic.module.mjs +4 -4
  355. package/esm2022/stepper/step-header.component.mjs +3 -3
  356. package/esm2022/stepper/step.component.mjs +3 -3
  357. package/esm2022/stepper/stepper-button.directive.mjs +6 -6
  358. package/esm2022/stepper/stepper.component.mjs +3 -3
  359. package/esm2022/stepper/stepper.module.mjs +4 -4
  360. package/esm2022/strength/strength.component.mjs +3 -3
  361. package/esm2022/strength/strength.module.mjs +4 -4
  362. package/esm2022/switch/switch.component.mjs +3 -3
  363. package/esm2022/switch/switch.module.mjs +4 -4
  364. package/esm2022/table/pipes/drag.pipe.mjs +3 -3
  365. package/esm2022/table/pipes/table.pipe.mjs +3 -3
  366. package/esm2022/table/table-column.component.mjs +3 -3
  367. package/esm2022/table/table-skeleton.component.mjs +3 -3
  368. package/esm2022/table/table.component.mjs +5 -5
  369. package/esm2022/table/table.module.mjs +4 -4
  370. package/esm2022/tabs/tab-content.component.mjs +3 -3
  371. package/esm2022/tabs/tab.component.mjs +3 -3
  372. package/esm2022/tabs/tabs.component.mjs +4 -4
  373. package/esm2022/tabs/tabs.module.mjs +4 -4
  374. package/esm2022/tag/tag.component.mjs +3 -3
  375. package/esm2022/tag/tag.module.mjs +4 -4
  376. package/esm2022/tag/tags.component.mjs +3 -3
  377. package/esm2022/testing/data-transfer.mjs +1 -1
  378. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +4 -4
  379. package/esm2022/time-picker/inner/inner-time-picker.config.mjs +3 -3
  380. package/esm2022/time-picker/inner/inner-time-picker.store.mjs +3 -3
  381. package/esm2022/time-picker/time-picker-panel.component.mjs +4 -4
  382. package/esm2022/time-picker/time-picker.component.mjs +4 -4
  383. package/esm2022/time-picker/time-picker.module.mjs +4 -4
  384. package/esm2022/timeline/timeline-item.component.mjs +4 -4
  385. package/esm2022/timeline/timeline.component.mjs +4 -4
  386. package/esm2022/timeline/timeline.module.mjs +4 -4
  387. package/esm2022/timeline/timeline.service.mjs +3 -3
  388. package/esm2022/tooltip/tooltip.component.mjs +3 -3
  389. package/esm2022/tooltip/tooltip.directive.mjs +3 -3
  390. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  391. package/esm2022/tooltip/tooltip.service.mjs +3 -3
  392. package/esm2022/transfer/transfer-list.component.mjs +4 -4
  393. package/esm2022/transfer/transfer.component.mjs +3 -3
  394. package/esm2022/transfer/transfer.module.mjs +4 -4
  395. package/esm2022/tree/tree-node.component.mjs +4 -4
  396. package/esm2022/tree/tree.component.mjs +5 -5
  397. package/esm2022/tree/tree.module.mjs +4 -4
  398. package/esm2022/tree/tree.pipe.mjs +3 -3
  399. package/esm2022/tree/tree.service.mjs +3 -3
  400. package/esm2022/tree-select/module.mjs +4 -4
  401. package/esm2022/tree-select/tree-select.component.mjs +13 -12
  402. package/esm2022/typography/bg-color.directive.mjs +3 -3
  403. package/esm2022/typography/module.mjs +4 -4
  404. package/esm2022/typography/text/text.component.mjs +3 -3
  405. package/esm2022/typography/text-color.directive.mjs +3 -3
  406. package/esm2022/upload/file-drop.directive.mjs +3 -3
  407. package/esm2022/upload/file-select-base.mjs +3 -3
  408. package/esm2022/upload/file-select.component.mjs +4 -4
  409. package/esm2022/upload/module.mjs +4 -4
  410. package/esm2022/upload/upload.service.mjs +3 -3
  411. package/esm2022/util/logger/logger.mjs +1 -1
  412. package/esm2022/version.mjs +2 -2
  413. package/esm2022/vote/vote.component.mjs +3 -3
  414. package/esm2022/vote/vote.module.mjs +4 -4
  415. package/esm2022/watermark/watermark.directive.mjs +3 -3
  416. package/esm2022/watermark/watermark.module.mjs +4 -4
  417. package/fesm2022/ngx-tethys-action.mjs +10 -10
  418. package/fesm2022/ngx-tethys-action.mjs.map +1 -1
  419. package/fesm2022/ngx-tethys-affix.mjs +7 -7
  420. package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
  421. package/fesm2022/ngx-tethys-alert.mjs +10 -10
  422. package/fesm2022/ngx-tethys-anchor.mjs +10 -10
  423. package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
  424. package/fesm2022/ngx-tethys-arrow-switcher.mjs +7 -7
  425. package/fesm2022/ngx-tethys-autocomplete.mjs +16 -16
  426. package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
  427. package/fesm2022/ngx-tethys-avatar.mjs +22 -22
  428. package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
  429. package/fesm2022/ngx-tethys-back-top.mjs +7 -7
  430. package/fesm2022/ngx-tethys-badge.mjs +7 -7
  431. package/fesm2022/ngx-tethys-breadcrumb.mjs +10 -10
  432. package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
  433. package/fesm2022/ngx-tethys-button.mjs +13 -13
  434. package/fesm2022/ngx-tethys-button.mjs.map +1 -1
  435. package/fesm2022/ngx-tethys-calendar.mjs +16 -16
  436. package/fesm2022/ngx-tethys-card.mjs +13 -13
  437. package/fesm2022/ngx-tethys-carousel.mjs +16 -16
  438. package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
  439. package/fesm2022/ngx-tethys-cascader.mjs +23 -35
  440. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  441. package/fesm2022/ngx-tethys-checkbox.mjs +7 -7
  442. package/fesm2022/ngx-tethys-collapse.mjs +10 -10
  443. package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
  444. package/fesm2022/ngx-tethys-color-picker.mjs +47 -37
  445. package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
  446. package/fesm2022/ngx-tethys-comment.mjs +13 -13
  447. package/fesm2022/ngx-tethys-copy.mjs +7 -7
  448. package/fesm2022/ngx-tethys-core.mjs +30 -20
  449. package/fesm2022/ngx-tethys-core.mjs.map +1 -1
  450. package/fesm2022/ngx-tethys-date-picker.mjs +117 -117
  451. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  452. package/fesm2022/ngx-tethys-date-range.mjs +10 -10
  453. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  454. package/fesm2022/ngx-tethys-dialog.mjs +22 -22
  455. package/fesm2022/ngx-tethys-divider.mjs +7 -7
  456. package/fesm2022/ngx-tethys-dot.mjs +7 -7
  457. package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
  458. package/fesm2022/ngx-tethys-drag-drop.mjs +19 -19
  459. package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
  460. package/fesm2022/ngx-tethys-dropdown.mjs +46 -46
  461. package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
  462. package/fesm2022/ngx-tethys-empty.mjs +10 -10
  463. package/fesm2022/ngx-tethys-flexible-text.mjs +7 -7
  464. package/fesm2022/ngx-tethys-form.mjs +40 -40
  465. package/fesm2022/ngx-tethys-form.mjs.map +1 -1
  466. package/fesm2022/ngx-tethys-fullscreen.mjs +15 -14
  467. package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
  468. package/fesm2022/ngx-tethys-grid.mjs +31 -31
  469. package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
  470. package/fesm2022/ngx-tethys-guider.mjs +16 -16
  471. package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
  472. package/fesm2022/ngx-tethys-icon.mjs +10 -10
  473. package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
  474. package/fesm2022/ngx-tethys-image.mjs +16 -16
  475. package/fesm2022/ngx-tethys-image.mjs.map +1 -1
  476. package/fesm2022/ngx-tethys-input-number.mjs +7 -7
  477. package/fesm2022/ngx-tethys-input.mjs +19 -19
  478. package/fesm2022/ngx-tethys-input.mjs.map +1 -1
  479. package/fesm2022/ngx-tethys-layout.mjs +58 -58
  480. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  481. package/fesm2022/ngx-tethys-list.mjs +16 -16
  482. package/fesm2022/ngx-tethys-loading.mjs +7 -7
  483. package/fesm2022/ngx-tethys-mention.mjs +10 -10
  484. package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
  485. package/fesm2022/ngx-tethys-menu.mjs +25 -25
  486. package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
  487. package/fesm2022/ngx-tethys-message.mjs +22 -22
  488. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  489. package/fesm2022/ngx-tethys-nav.mjs +22 -22
  490. package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
  491. package/fesm2022/ngx-tethys-notify.mjs +17 -17
  492. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  493. package/fesm2022/ngx-tethys-pagination.mjs +34 -34
  494. package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
  495. package/fesm2022/ngx-tethys-popover.mjs +19 -19
  496. package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
  497. package/fesm2022/ngx-tethys-progress.mjs +13 -13
  498. package/fesm2022/ngx-tethys-property-operation.mjs +10 -10
  499. package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
  500. package/fesm2022/ngx-tethys-property.mjs +10 -10
  501. package/fesm2022/ngx-tethys-property.mjs.map +1 -1
  502. package/fesm2022/ngx-tethys-radio.mjs +13 -13
  503. package/fesm2022/ngx-tethys-rate.mjs +10 -10
  504. package/fesm2022/ngx-tethys-resizable.mjs +16 -16
  505. package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
  506. package/fesm2022/ngx-tethys-result.mjs +7 -7
  507. package/fesm2022/ngx-tethys-segment.mjs +10 -10
  508. package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
  509. package/fesm2022/ngx-tethys-select.mjs +10 -10
  510. package/fesm2022/ngx-tethys-shared.mjs +66 -66
  511. package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
  512. package/fesm2022/ngx-tethys-skeleton.mjs +22 -22
  513. package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
  514. package/fesm2022/ngx-tethys-slide.mjs +31 -31
  515. package/fesm2022/ngx-tethys-slider.mjs +7 -7
  516. package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
  517. package/fesm2022/ngx-tethys-space.mjs +10 -10
  518. package/fesm2022/ngx-tethys-statistic.mjs +7 -7
  519. package/fesm2022/ngx-tethys-stepper.mjs +19 -19
  520. package/fesm2022/ngx-tethys-strength.mjs +7 -7
  521. package/fesm2022/ngx-tethys-switch.mjs +7 -7
  522. package/fesm2022/ngx-tethys-table.mjs +20 -20
  523. package/fesm2022/ngx-tethys-table.mjs.map +1 -1
  524. package/fesm2022/ngx-tethys-tabs.mjs +13 -13
  525. package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
  526. package/fesm2022/ngx-tethys-tag.mjs +10 -10
  527. package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
  528. package/fesm2022/ngx-tethys-time-picker.mjs +19 -19
  529. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  530. package/fesm2022/ngx-tethys-timeline.mjs +13 -13
  531. package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
  532. package/fesm2022/ngx-tethys-tooltip.mjs +13 -13
  533. package/fesm2022/ngx-tethys-transfer.mjs +10 -10
  534. package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
  535. package/fesm2022/ngx-tethys-tree-select.mjs +16 -15
  536. package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
  537. package/fesm2022/ngx-tethys-tree.mjs +17 -17
  538. package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
  539. package/fesm2022/ngx-tethys-typography.mjs +13 -13
  540. package/fesm2022/ngx-tethys-upload.mjs +16 -16
  541. package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
  542. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  543. package/fesm2022/ngx-tethys-vote.mjs +7 -7
  544. package/fesm2022/ngx-tethys-watermark.mjs +7 -7
  545. package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
  546. package/fesm2022/ngx-tethys.mjs +1 -1
  547. package/fesm2022/ngx-tethys.mjs.map +1 -1
  548. package/flexible-text/examples/placement/placement.component.scss +3 -1
  549. package/form/styles/form-check.scss +2 -3
  550. package/form/styles/mixin.scss +1 -1
  551. package/grid/examples/basic/basic.component.scss +5 -3
  552. package/grid/examples/flex/flex.component.scss +5 -3
  553. package/grid/examples/gap/gap.component.scss +5 -3
  554. package/grid/examples/offset/offset.component.scss +5 -3
  555. package/grid/examples/responsive/responsive.component.scss +6 -4
  556. package/grid/examples/row-col/row-col.component.scss +5 -3
  557. package/grid/examples/span/span.component.scss +5 -3
  558. package/guider/styles/guider-tip.scss +6 -6
  559. package/loading/styles/loading.scss +3 -3
  560. package/menu/examples/basic/basic.component.scss +3 -1
  561. package/menu/examples/divider/divider.component.scss +3 -1
  562. package/menu/examples/group/group.component.scss +3 -1
  563. package/menu/examples/theme/theme.component.scss +2 -2
  564. package/nav/examples/basic/basic.component.scss +3 -5
  565. package/nav/examples/extra/extra.component.scss +3 -1
  566. package/nav/examples/fill/fill.component.scss +3 -1
  567. package/nav/examples/lite/lite.component.scss +3 -1
  568. package/nav/examples/pills/pills.component.scss +3 -1
  569. package/nav/examples/responsive/responsive.component.scss +3 -1
  570. package/nav/examples/size/size.component.scss +3 -1
  571. package/nav/examples/tabs/tabs.component.scss +3 -1
  572. package/nav/examples/type/type.component.scss +3 -4
  573. package/nav/examples/vertical/vertical.component.scss +3 -1
  574. package/nav/nav.component.d.ts +1 -1
  575. package/nav/styles/mixin.scss +26 -10
  576. package/notify/styles/notify.scss +2 -2
  577. package/package.json +1 -1
  578. package/pagination/pagination.component.d.ts +3 -3
  579. package/pagination/styles/pagination.scss +1 -0
  580. package/progress/styles/progress-strip.scss +1 -1
  581. package/property-operation/styles/property-operation.scss +1 -15
  582. package/resizable/examples/layout/layout.style.scss +7 -5
  583. package/resizable/examples/table/table.style.scss +3 -1
  584. package/resizable/resize-handle.component.d.ts +4 -1
  585. package/schematics/version.d.ts +1 -1
  586. package/schematics/version.js +1 -1
  587. package/segment/styles/mixin.scss +8 -5
  588. package/segment/styles/segment.scss +1 -1
  589. package/shared/option/styles/option.mixin.scss +6 -6
  590. package/shared/option/styles/select-dropdown.scss +3 -1
  591. package/shared/select/select-control/select-control.scss +1 -1
  592. package/space/examples/align/align.component.scss +3 -2
  593. package/statistic/examples/prefix-suffix/prefix-suffix.component.scss +3 -1
  594. package/styles/bootstrap/_type.scss +8 -8
  595. package/styles/bootstrap/mixins/_transition.scss +3 -1
  596. package/styles/mixins/close.scss +4 -1
  597. package/styles/mixins/shadow.scss +3 -1
  598. package/styles/mixins/tables.scss +3 -166
  599. package/styles/modules/cdk/drag-drop.scss +1 -1
  600. package/styles/modules/link.scss +1 -1
  601. package/styles/modules/tables.scss +0 -1
  602. package/styles/variables.scss +73 -41
  603. package/switch/styles/mixin.scss +1 -1
  604. package/table/styles/table.scss +1 -1
  605. package/tabs/styles/tabs.scss +1 -0
  606. package/tag/styles/mixin.scss +10 -5
  607. package/tag/styles/tag.scss +4 -4
  608. package/tree/styles/tree.scss +0 -8
  609. package/tree-select/styles/tree-select.scss +4 -1
  610. package/tree-select/tree-select.component.d.ts +3 -3
  611. package/watermark/examples/basic/basic.component.scss +3 -1
  612. package/watermark/examples/custom/custom.component.scss +8 -0
  613. package/watermark/styles/watermark.scss +1 -2
  614. package/tabs/examples/basic/basic.component.scss +0 -5
@@ -17,8 +17,8 @@ import { ThyTable } from './table.component';
17
17
  import { ThyTableSkeleton } from './table-skeleton.component';
18
18
  import * as i0 from "@angular/core";
19
19
  export class ThyTableModule {
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.4", ngImport: i0, type: ThyTableModule, imports: [CommonModule,
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: ThyTableModule, imports: [CommonModule,
22
22
  FormsModule,
23
23
  ThyPaginationModule,
24
24
  ThySwitchModule,
@@ -34,7 +34,7 @@ export class ThyTableModule {
34
34
  TableIsValidModelValuePipe,
35
35
  TableRowDragDisabledPipe,
36
36
  ThyTableSkeleton], exports: [ThyTable, ThyTableColumnComponent, ThyTableSkeleton] }); }
37
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTableModule, imports: [CommonModule,
37
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTableModule, imports: [CommonModule,
38
38
  FormsModule,
39
39
  ThyPaginationModule,
40
40
  ThySwitchModule,
@@ -48,7 +48,7 @@ export class ThyTableModule {
48
48
  ThyTable,
49
49
  ThyTableSkeleton] }); }
50
50
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTableModule, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTableModule, decorators: [{
52
52
  type: NgModule,
53
53
  args: [{
54
54
  imports: [
@@ -10,14 +10,14 @@ export class ThyTabContent {
10
10
  this.active = false;
11
11
  this.tabPaneAnimated = true;
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: ThyTabContent, isStandalone: true, selector: "thy-tab-content, [thyTabContent]", inputs: { content: "content", active: "active", tabPaneAnimated: "tabPaneAnimated" }, host: { properties: { "attr.aria-hidden": "!active", "attr.tabindex": "active ? 0 : -1", "style.visibility": "tabPaneAnimated ? active ? null : \"hidden\" : null", "style.height": "tabPaneAnimated ? active ? null : 0 : null", "style.overflow-y": "tabPaneAnimated ? active ? null : \"none\" : null", "style.display": "!tabPaneAnimated ? active ? null : \"none\" : null" }, classAttribute: "thy-tab-content" }, exportAs: ["thyTabContent"], ngImport: i0, template: `
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyTabContent, isStandalone: true, selector: "thy-tab-content, [thyTabContent]", inputs: { content: "content", active: "active", tabPaneAnimated: "tabPaneAnimated" }, host: { properties: { "attr.aria-hidden": "!active", "attr.tabindex": "active ? 0 : -1", "style.visibility": "tabPaneAnimated ? active ? null : \"hidden\" : null", "style.height": "tabPaneAnimated ? active ? null : 0 : null", "style.overflow-y": "tabPaneAnimated ? active ? null : \"none\" : null", "style.display": "!tabPaneAnimated ? active ? null : \"none\" : null" }, classAttribute: "thy-tab-content" }, exportAs: ["thyTabContent"], ngImport: i0, template: `
15
15
  <ng-container *ngIf="active">
16
16
  <ng-template [ngTemplateOutlet]="content"></ng-template>
17
17
  </ng-container>
18
18
  `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabContent, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabContent, decorators: [{
21
21
  type: Component,
22
22
  args: [{
23
23
  selector: 'thy-tab-content, [thyTabContent]',
@@ -8,10 +8,10 @@ import * as i0 from "@angular/core";
8
8
  export class ThyTab {
9
9
  constructor() { }
10
10
  ngOnInit() { }
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTab, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.1.4", type: ThyTab, isStandalone: true, selector: "thy-tab", inputs: { thyTitle: "thyTitle", id: "id", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty] }, queries: [{ propertyName: "titleTemplateRef", first: true, predicate: ["title"], descendants: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }], ngImport: i0, template: ` <ng-template #content><ng-content></ng-content></ng-template> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTab, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyTab, isStandalone: true, selector: "thy-tab", inputs: { thyTitle: "thyTitle", id: "id", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty] }, queries: [{ propertyName: "titleTemplateRef", first: true, predicate: ["title"], descendants: true }], viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, static: true }], ngImport: i0, template: ` <ng-template #content><ng-content></ng-content></ng-template> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTab, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTab, decorators: [{
15
15
  type: Component,
16
16
  args: [{
17
17
  selector: 'thy-tab',
@@ -106,10 +106,10 @@ export class ThyTabs {
106
106
  tabTrackBy(index, item) {
107
107
  return index;
108
108
  }
109
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabs, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
110
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.1.4", type: ThyTabs, isStandalone: true, selector: "thy-tabs", inputs: { thyType: "thyType", thySize: "thySize", thyActiveTab: "thyActiveTab", thyExtra: "thyExtra", thyPosition: "thyPosition", thyAnimated: ["thyAnimated", "thyAnimated", coerceBooleanProperty], thyResponsive: ["thyResponsive", "thyResponsive", coerceBooleanProperty] }, outputs: { thyActiveTabChange: "thyActiveTabChange" }, host: { properties: { "class.thy-tabs-top": "thyPosition === 'top'", "class.thy-tabs-left": "thyPosition === 'left'", "style.overflow": "transitionStarted ? \"hidden\" : null" }, classAttribute: "thy-tabs" }, queries: [{ propertyName: "tabs", predicate: ThyTab, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<!-- tabs nav -->\n<thy-nav\n class=\"thy-tabs-nav\"\n [thyType]=\"thyType\"\n [thySize]=\"thySize\"\n [thyExtra]=\"thyExtra\"\n [thyVertical]=\"thyPosition === 'left'\"\n [thyResponsive]=\"thyResponsive\"\n>\n <a\n href=\"javascript:;\"\n thyNavItem\n [id]=\"tab.id\"\n [thyNavItemDisabled]=\"tab.thyDisabled\"\n [thyNavItemActive]=\"(tab.id && activeTabId && tab.id === activeTabId) ?? i === activeTabIndex\"\n *ngFor=\"let tab of tabs; let i = index; trackBy: tabTrackBy\"\n (click)=\"activeTab(tab, i)\"\n >\n <ng-container *ngIf=\"tab.titleTemplateRef; else titleName\">\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplateRef\"></ng-template>\n </ng-container>\n <ng-template #titleName>\n {{ tab.thyTitle }}\n </ng-template>\n </a>\n</thy-nav>\n<!-- tabs content -->\n<div class=\"thy-tabs-content\" [class.thy-tabs-content-animated]=\"tabPaneAnimated\" [style.margin-left]=\"getTabContentMarginLeft()\">\n <div\n thyTabContent\n *ngFor=\"let tab of tabs; let i = index; trackBy: tabTrackBy\"\n [active]=\"(tab.id && activeTabId && tab.id === activeTabId) ?? i === activeTabIndex\"\n [content]=\"tab.content\"\n [tabPaneAnimated]=\"tabPaneAnimated\"\n ></div>\n</div>\n", dependencies: [{ kind: "component", type: ThyNav, selector: "thy-nav", inputs: ["thyType", "thySize", "thyHorizontal", "thyVertical", "thyFill", "thyResponsive", "thyInsideClosable", "thyExtra"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ThyNavItemDirective, selector: "[thyNavLink],[thyNavItem]", inputs: ["thyNavItemActive", "thyNavLinkActive", "thyNavItemDisabled"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyTabContent, selector: "thy-tab-content, [thyTabContent]", inputs: ["content", "active", "tabPaneAnimated"], exportAs: ["thyTabContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabs, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
110
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyTabs, isStandalone: true, selector: "thy-tabs", inputs: { thyType: "thyType", thySize: "thySize", thyActiveTab: "thyActiveTab", thyExtra: "thyExtra", thyPosition: "thyPosition", thyAnimated: ["thyAnimated", "thyAnimated", coerceBooleanProperty], thyResponsive: ["thyResponsive", "thyResponsive", coerceBooleanProperty] }, outputs: { thyActiveTabChange: "thyActiveTabChange" }, host: { properties: { "class.thy-tabs-top": "thyPosition === 'top'", "class.thy-tabs-left": "thyPosition === 'left'", "style.overflow": "transitionStarted ? \"hidden\" : null" }, classAttribute: "thy-tabs" }, queries: [{ propertyName: "tabs", predicate: ThyTab, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<!-- tabs nav -->\n<thy-nav\n class=\"thy-tabs-nav\"\n [thyType]=\"thyType\"\n [thySize]=\"thySize\"\n [thyExtra]=\"thyExtra\"\n [thyVertical]=\"thyPosition === 'left'\"\n [thyResponsive]=\"thyResponsive\"\n>\n <a\n href=\"javascript:;\"\n thyNavItem\n [id]=\"tab.id\"\n [thyNavItemDisabled]=\"tab.thyDisabled\"\n [thyNavItemActive]=\"(tab.id && activeTabId && tab.id === activeTabId) ?? i === activeTabIndex\"\n *ngFor=\"let tab of tabs; let i = index; trackBy: tabTrackBy\"\n (click)=\"activeTab(tab, i)\"\n >\n <ng-container *ngIf=\"tab.titleTemplateRef; else titleName\">\n <ng-template [ngTemplateOutlet]=\"tab.titleTemplateRef\"></ng-template>\n </ng-container>\n <ng-template #titleName>\n {{ tab.thyTitle }}\n </ng-template>\n </a>\n</thy-nav>\n<!-- tabs content -->\n<div class=\"thy-tabs-content\" [class.thy-tabs-content-animated]=\"tabPaneAnimated\" [style.margin-left]=\"getTabContentMarginLeft()\">\n <div\n thyTabContent\n *ngFor=\"let tab of tabs; let i = index; trackBy: tabTrackBy\"\n [active]=\"(tab.id && activeTabId && tab.id === activeTabId) ?? i === activeTabIndex\"\n [content]=\"tab.content\"\n [tabPaneAnimated]=\"tabPaneAnimated\"\n ></div>\n</div>\n", dependencies: [{ kind: "component", type: ThyNav, selector: "thy-nav", inputs: ["thyType", "thySize", "thyHorizontal", "thyVertical", "thyFill", "thyResponsive", "thyInsideClosable", "thyExtra"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ThyNavItemDirective, selector: "[thyNavLink],[thyNavItem]", inputs: ["thyNavItemActive", "thyNavLinkActive", "thyNavItemDisabled"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyTabContent, selector: "thy-tab-content, [thyTabContent]", inputs: ["content", "active", "tabPaneAnimated"], exportAs: ["thyTabContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
111
111
  }
112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabs, decorators: [{
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabs, decorators: [{
113
113
  type: Component,
114
114
  args: [{ selector: 'thy-tabs', changeDetection: ChangeDetectionStrategy.OnPush, host: {
115
115
  class: 'thy-tabs',
@@ -139,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
139
139
  }], thyActiveTabChange: [{
140
140
  type: Output
141
141
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFicy90YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90YWJzL3RhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFFVCxXQUFXLEVBQ1gsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTdEOzs7R0FHRztBQWNILE1BQU0sT0FBTyxPQUFPO0lBaUJoQjs7T0FFRztJQUNILElBQ0ksWUFBWSxDQUFDLEtBQXVCO1FBQ3BDLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFDcEMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMs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RUFBRSxtQkFBbUIsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDOytHQUdwQyxJQUFJO3NCQUFuRCxlQUFlO3VCQUFDLE1BQU0sRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBUXJDLE9BQU87c0JBQWYsS0FBSztnQkFNRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUYsWUFBWTtzQkFEZixLQUFLO2dCQWNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFLdUMsV0FBVztzQkFBdkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFLRSxhQUFhO3NCQUF6RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUtqQyxrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEZXN0cm95UmVmLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIGluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgaXNTdHJpbmcgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBUaHlUYWIgfSBmcm9tICcuL3RhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5QWN0aXZlVGFiSW5mbywgVGh5VGFiQWN0aXZlRXZlbnQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IFRoeVRhYkNvbnRlbnQgfSBmcm9tICcuL3RhYi1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUaHlOYXYsIFRoeU5hdkl0ZW1EaXJlY3RpdmUgfSBmcm9tICduZ3gtdGV0aHlzL25hdic7XG5cbmV4cG9ydCB0eXBlIFRoeVRhYnNTaXplID0gJ2xnJyB8ICdtZCcgfCAnc20nO1xuXG5leHBvcnQgdHlwZSBUaHlUYWJzVHlwZSA9ICdwdWxsZWQnIHwgJ3RhYnMnIHwgJ3BpbGxzJyB8ICdsaXRlJztcblxuZXhwb3J0IHR5cGUgVGh5VGFic1Bvc2l0aW9uID0gJ3RvcCcgfCAnbGVmdCc7XG5cbi8qKlxuICog6YCJ6aG55Y2h5YiH5o2i57uE5Lu2XG4gKiBAbmFtZSB0aHktdGFic1xuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoeS10YWJzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGFicy5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoeS10YWJzJyxcbiAgICAgICAgJ1tjbGFzcy50aHktdGFicy10b3BdJzogYHRoeVBvc2l0aW9uID09PSAndG9wJ2AsXG4gICAgICAgICdbY2xhc3MudGh5LXRhYnMtbGVmdF0nOiBgdGh5UG9zaXRpb24gPT09ICdsZWZ0J2AsXG4gICAgICAgICdbc3R5bGUub3ZlcmZsb3ddJzogYHRyYW5zaXRpb25TdGFydGVkID8gXCJoaWRkZW5cIiA6IG51bGxgXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlOYXYsIE5nRm9yLCBUaHlOYXZJdGVtRGlyZWN0aXZlLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0LCBUaHlUYWJDb250ZW50XVxufSlcbmV4cG9ydCBjbGFzcyBUaHlUYWJzIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oVGh5VGFiLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pIHRhYnMgPSBuZXcgUXVlcnlMaXN0PFRoeVRhYj4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIC8qKlxuICAgICAqIOagh+etvuexu+Wei1xuICAgICAqIEB0eXBlICdwdWxsZWQnIHwgJ3RhYnMnIHwgJ3BpbGxzJyB8ICdsaXRlJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVR5cGU6IFRoeVRhYnNUeXBlID0gJ3RhYnMnO1xuXG4gICAgLyoqXG4gICAgICog6YCJ6aG55Y2h55qE5aSn5bCPXG4gICAgICogQHR5cGUgJ2xnJyB8ICdtZCcgfCAnc20nXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5U2l6ZTogVGh5VGFic1NpemUgPSAnbWQnO1xuXG4gICAgLyoqXG4gICAgICog5r+A5rS755qE6aG5XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdGh5QWN0aXZlVGFiKHZhbHVlOiBUaHlBY3RpdmVUYWJJbmZvKSB7XG4gICAgICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlVGFiSWQgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlVGFiSW5kZXggPSB1bmRlZmluZWQ7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVRhYkluZGV4ID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVRhYklkID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6ZmE5Yqg5pON5L2cXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5RXh0cmE6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gICAgLyoqXG4gICAgICog6YCJ6aG55Y2h55qE5L2N572uXG4gICAgICogQHR5cGUgJ3RvcCcgfCAnbGVmdCdcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQb3NpdGlvbjogVGh5VGFic1Bvc2l0aW9uID0gJ3RvcCc7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbkvb/nlKjliqjnlLvliIfmjaIgVGFic1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUFuaW1hdGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiDlk43lupTlvI/vvIzoh6rliqjorqHnrpflrr3luqblrZjmlL4gdGh5TmF2SXRlbe+8jOW5tua3u+WKoOabtOWkmuW8ueahhlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeVJlc3BvbnNpdmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIOa/gOa0u+eahOmhueWPkeeUn+aUueWPmOaXtueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSB0aHlBY3RpdmVUYWJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxUaHlUYWJBY3RpdmVFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPFRoeVRhYkFjdGl2ZUV2ZW50PigpO1xuXG4gICAgYWN0aXZlVGFiSW5kZXg6IG51bWJlciA9IDA7XG5cbiAgICBhY3RpdmVUYWJJZDogc3RyaW5nO1xuXG4gICAgdHJhbnNpdGlvblN0YXJ0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLCBwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYnNDb250ZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy50aHktdGFicy1jb250ZW50Jyk7XG4gICAgICAgIGZyb21FdmVudCh0YWJzQ29udGVudCwgJ3RyYW5zaXRpb25lbmQnKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25TdGFydGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyB0aHlBY3RpdmVUYWIgfSA9IGNoYW5nZXM7XG4gICAgICAgIGlmICh0aHlBY3RpdmVUYWIgJiYgIXRoeUFjdGl2ZVRhYi5maXJzdENoYW5nZSAmJiB0aGlzLnRoeUFuaW1hdGVkKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoeUFjdGl2ZVRhYj8uY3VycmVudFZhbHVlPy5pbmRleCB8fCBBcnJheS5mcm9tKHRoaXMudGFicykuZmluZEluZGV4KGsgPT4gay5pZCA9PT0gdGh5QWN0aXZlVGFiPy5jdXJyZW50VmFsdWUuaWQpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2l0aW9uU3RhcnRlZCA9IHRoaXMuYWN0aXZlVGFiSW5kZXggIT09IGluZGV4O1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVUYWJJbmRleCA9IGluZGV4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLnRhYnMuY2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRoeUFuaW1hdGVkICYmICh0aGlzLnRyYW5zaXRpb25TdGFydGVkID0gdHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVRhYkluZGV4ID0gZGF0YS5sZW5ndGggLSAxO1xuICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IHRhYlBhbmVBbmltYXRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGh5UG9zaXRpb24gPT09ICd0b3AnICYmIHRoaXMudGh5QW5pbWF0ZWQ7XG4gICAgfVxuXG4gICAgZ2V0VGFiQ29udGVudE1hcmdpbkxlZnQoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMudGFiUGFuZUFuaW1hdGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7LSh0aGlzLmFjdGl2ZVRhYkluZGV4IHx8IDApICogMTAwfSVgO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBhY3RpdmVUYWIodGFiOiBUaHlUYWIsIGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRhYi50aHlEaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWN0aXZlVGFiSWQgPSB0YWIuaWQgfHwgbnVsbDtcbiAgICAgICAgdGhpcy50aHlBbmltYXRlZCAmJiAodGhpcy50cmFuc2l0aW9uU3RhcnRlZCA9IHRoaXMuYWN0aXZlVGFiSW5kZXggIT09IGluZGV4KTtcbiAgICAgICAgdGhpcy5hY3RpdmVUYWJJbmRleCA9IGluZGV4O1xuICAgICAgICBjb25zdCBhY3RpdmVUYWIgPSB0YWIuaWQgPyB0YWIuaWQgOiBpbmRleDtcbiAgICAgICAgdGhpcy50aHlBY3RpdmVUYWJDaGFuZ2UuZW1pdChhY3RpdmVUYWIpO1xuICAgIH1cblxuICAgIHRhYlRyYWNrQnkoaW5kZXg6IG51bWJlciwgaXRlbTogVGh5VGFiKSB7XG4gICAgICAgIHJldHVybiBpbmRleDtcbiAgICB9XG59XG4iLCI8IS0tIHRhYnMgbmF2IC0tPlxuPHRoeS1uYXZcbiAgY2xhc3M9XCJ0aHktdGFicy1uYXZcIlxuICBbdGh5VHlwZV09XCJ0aHlUeXBlXCJcbiAgW3RoeVNpemVdPVwidGh5U2l6ZVwiXG4gIFt0aHlFeHRyYV09XCJ0aHlFeHRyYVwiXG4gIFt0aHlWZXJ0aWNhbF09XCJ0aHlQb3NpdGlvbiA9PT0gJ2xlZnQnXCJcbiAgW3RoeVJlc3BvbnNpdmVdPVwidGh5UmVzcG9uc2l2ZVwiXG4+XG4gIDxhXG4gICAgaHJlZj1cImphdmFzY3JpcHQ6O1wiXG4gICAgdGh5TmF2SXRlbVxuICAgIFtpZF09XCJ0YWIuaWRcIlxuICAgIFt0aHlOYXZJdGVtRGlzYWJsZWRdPVwidGFiLnRoeURpc2FibGVkXCJcbiAgICBbdGh5TmF2SXRlbUFjdGl2ZV09XCIodGFiLmlkICYmIGFjdGl2ZVRhYklkICYmIHRhYi5pZCA9PT0gYWN0aXZlVGFiSWQpID8/IGkgPT09IGFjdGl2ZVRhYkluZGV4XCJcbiAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRhYlRyYWNrQnlcIlxuICAgIChjbGljayk9XCJhY3RpdmVUYWIodGFiLCBpKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGFiLnRpdGxlVGVtcGxhdGVSZWY7IGVsc2UgdGl0bGVOYW1lXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLnRpdGxlVGVtcGxhdGVSZWZcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjdGl0bGVOYW1lPlxuICAgICAge3sgdGFiLnRoeVRpdGxlIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9hPlxuPC90aHktbmF2PlxuPCEtLSB0YWJzIGNvbnRlbnQgLS0+XG48ZGl2IGNsYXNzPVwidGh5LXRhYnMtY29udGVudFwiIFtjbGFzcy50aHktdGFicy1jb250ZW50LWFuaW1hdGVkXT1cInRhYlBhbmVBbmltYXRlZFwiIFtzdHlsZS5tYXJnaW4tbGVmdF09XCJnZXRUYWJDb250ZW50TWFyZ2luTGVmdCgpXCI+XG4gIDxkaXZcbiAgICB0aHlUYWJDb250ZW50XG4gICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0YWJUcmFja0J5XCJcbiAgICBbYWN0aXZlXT1cIih0YWIuaWQgJiYgYWN0aXZlVGFiSWQgJiYgdGFiLmlkID09PSBhY3RpdmVUYWJJZCkgPz8gaSA9PT0gYWN0aXZlVGFiSW5kZXhcIlxuICAgIFtjb250ZW50XT1cInRhYi5jb250ZW50XCJcbiAgICBbdGFiUGFuZUFuaW1hdGVkXT1cInRhYlBhbmVBbmltYXRlZFwiXG4gID48L2Rpdj5cbjwvZGl2PlxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdGFicy90YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90YWJzL3RhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFNBQVMsRUFFVCxXQUFXLEVBQ1gsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTdEOzs7R0FHRztBQWNILE1BQU0sT0FBTyxPQUFPO0lBaUJoQjs7T0FFRztJQUNILElBQ0ksWUFBWSxDQUFDLEtBQXVCO1FBQ3BDLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUM7UUFDcEMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMs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QUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLENBQUM7K0dBR3BDLElBQUk7c0JBQW5ELGVBQWU7dUJBQUMsTUFBTSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFRckMsT0FBTztzQkFBZixLQUFLO2dCQU1HLE9BQU87c0JBQWYsS0FBSztnQkFNRixZQUFZO3NCQURmLEtBQUs7Z0JBY0csUUFBUTtzQkFBaEIsS0FBSztnQkFNRyxXQUFXO3NCQUFuQixLQUFLO2dCQUt1QyxXQUFXO3NCQUF2RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUtFLGFBQWE7c0JBQXpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBS2pDLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgaW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBpc1N0cmluZyB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFRoeVRhYiB9IGZyb20gJy4vdGFiLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaHlBY3RpdmVUYWJJbmZvLCBUaHlUYWJBY3RpdmVFdmVudCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgVGh5VGFiQ29udGVudCB9IGZyb20gJy4vdGFiLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRoeU5hdiwgVGh5TmF2SXRlbURpcmVjdGl2ZSB9IGZyb20gJ25neC10ZXRoeXMvbmF2JztcblxuZXhwb3J0IHR5cGUgVGh5VGFic1NpemUgPSAnbGcnIHwgJ21kJyB8ICdzbSc7XG5cbmV4cG9ydCB0eXBlIFRoeVRhYnNUeXBlID0gJ3B1bGxlZCcgfCAndGFicycgfCAncGlsbHMnIHwgJ2xpdGUnO1xuXG5leHBvcnQgdHlwZSBUaHlUYWJzUG9zaXRpb24gPSAndG9wJyB8ICdsZWZ0JztcblxuLyoqXG4gKiDpgInpobnljaHliIfmjaLnu4Tku7ZcbiAqIEBuYW1lIHRoeS10YWJzXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LXRhYnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LXRhYnMnLFxuICAgICAgICAnW2NsYXNzLnRoeS10YWJzLXRvcF0nOiBgdGh5UG9zaXRpb24gPT09ICd0b3AnYCxcbiAgICAgICAgJ1tjbGFzcy50aHktdGFicy1sZWZ0XSc6IGB0aHlQb3NpdGlvbiA9PT0gJ2xlZnQnYCxcbiAgICAgICAgJ1tzdHlsZS5vdmVyZmxvd10nOiBgdHJhbnNpdGlvblN0YXJ0ZWQgPyBcImhpZGRlblwiIDogbnVsbGBcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1RoeU5hdiwgTmdGb3IsIFRoeU5hdkl0ZW1EaXJlY3RpdmUsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIFRoeVRhYkNvbnRlbnRdXG59KVxuZXhwb3J0IGNsYXNzIFRoeVRhYnMgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQENvbnRlbnRDaGlsZHJlbihUaHlUYWIsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgdGFicyA9IG5ldyBRdWVyeUxpc3Q8VGh5VGFiPigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgLyoqXG4gICAgICog5qCH562+57G75Z6LXG4gICAgICogQHR5cGUgJ3B1bGxlZCcgfCAndGFicycgfCAncGlsbHMnIHwgJ2xpdGUnXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5VHlwZTogVGh5VGFic1R5cGUgPSAndGFicyc7XG5cbiAgICAvKipcbiAgICAgKiDpgInpobnljaHnmoTlpKflsI9cbiAgICAgKiBAdHlwZSAnbGcnIHwgJ21kJyB8ICdzbSdcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlTaXplOiBUaHlUYWJzU2l6ZSA9ICdtZCc7XG5cbiAgICAvKipcbiAgICAgKiDmv4DmtLvnmoTpoblcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0aHlBY3RpdmVUYWIodmFsdWU6IFRoeUFjdGl2ZVRhYkluZm8pIHtcbiAgICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVUYWJJZCA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVUYWJJbmRleCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlVGFiSW5kZXggPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlVGFiSWQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDpmYTliqDmk43kvZxcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlFeHRyYTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgICAvKipcbiAgICAgKiDpgInpobnljaHnmoTkvY3nva5cbiAgICAgKiBAdHlwZSAndG9wJyB8ICdsZWZ0J1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVBvc2l0aW9uOiBUaHlUYWJzUG9zaXRpb24gPSAndG9wJztcblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuS9v+eUqOWKqOeUu+WIh+aNoiBUYWJzXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5QW5pbWF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIOWTjeW6lOW8j++8jOiHquWKqOiuoeeul+WuveW6puWtmOaUviB0aHlOYXZJdGVt77yM5bm25re75Yqg5pu05aSa5by55qGGXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSkgdGh5UmVzcG9uc2l2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICog5r+A5rS755qE6aG55Y+R55Sf5pS55Y+Y5pe255qE5Zue6LCDXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeUFjdGl2ZVRhYkNoYW5nZTogRXZlbnRFbWl0dGVyPFRoeVRhYkFjdGl2ZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8VGh5VGFiQWN0aXZlRXZlbnQ+KCk7XG5cbiAgICBhY3RpdmVUYWJJbmRleDogbnVtYmVyID0gMDtcblxuICAgIGFjdGl2ZVRhYklkOiBzdHJpbmc7XG5cbiAgICB0cmFuc2l0aW9uU3RhcnRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYnNDb250ZW50ID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy50aHktdGFicy1jb250ZW50Jyk7XG4gICAgICAgIGZyb21FdmVudCh0YWJzQ29udGVudCwgJ3RyYW5zaXRpb25lbmQnKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRyYW5zaXRpb25TdGFydGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyB0aHlBY3RpdmVUYWIgfSA9IGNoYW5nZXM7XG4gICAgICAgIGlmICh0aHlBY3RpdmVUYWIgJiYgIXRoeUFjdGl2ZVRhYi5maXJzdENoYW5nZSAmJiB0aGlzLnRoeUFuaW1hdGVkKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoeUFjdGl2ZVRhYj8uY3VycmVudFZhbHVlPy5pbmRleCB8fCBBcnJheS5mcm9tKHRoaXMudGFicykuZmluZEluZGV4KGsgPT4gay5pZCA9PT0gdGh5QWN0aXZlVGFiPy5jdXJyZW50VmFsdWUuaWQpO1xuICAgICAgICAgICAgdGhpcy50cmFuc2l0aW9uU3RhcnRlZCA9IHRoaXMuYWN0aXZlVGFiSW5kZXggIT09IGluZGV4O1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVUYWJJbmRleCA9IGluZGV4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLnRhYnMuY2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRoeUFuaW1hdGVkICYmICh0aGlzLnRyYW5zaXRpb25TdGFydGVkID0gdHJ1ZSk7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVRhYkluZGV4ID0gZGF0YS5sZW5ndGggLSAxO1xuICAgICAgICAgICAgdGhpcy5jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0IHRhYlBhbmVBbmltYXRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGh5UG9zaXRpb24gPT09ICd0b3AnICYmIHRoaXMudGh5QW5pbWF0ZWQ7XG4gICAgfVxuXG4gICAgZ2V0VGFiQ29udGVudE1hcmdpbkxlZnQoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMudGFiUGFuZUFuaW1hdGVkKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7LSh0aGlzLmFjdGl2ZVRhYkluZGV4IHx8IDApICogMTAwfSVgO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBhY3RpdmVUYWIodGFiOiBUaHlUYWIsIGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRhYi50aHlEaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWN0aXZlVGFiSWQgPSB0YWIuaWQgfHwgbnVsbDtcbiAgICAgICAgdGhpcy50aHlBbmltYXRlZCAmJiAodGhpcy50cmFuc2l0aW9uU3RhcnRlZCA9IHRoaXMuYWN0aXZlVGFiSW5kZXggIT09IGluZGV4KTtcbiAgICAgICAgdGhpcy5hY3RpdmVUYWJJbmRleCA9IGluZGV4O1xuICAgICAgICBjb25zdCBhY3RpdmVUYWIgPSB0YWIuaWQgPyB0YWIuaWQgOiBpbmRleDtcbiAgICAgICAgdGhpcy50aHlBY3RpdmVUYWJDaGFuZ2UuZW1pdChhY3RpdmVUYWIpO1xuICAgIH1cblxuICAgIHRhYlRyYWNrQnkoaW5kZXg6IG51bWJlciwgaXRlbTogVGh5VGFiKSB7XG4gICAgICAgIHJldHVybiBpbmRleDtcbiAgICB9XG59XG4iLCI8IS0tIHRhYnMgbmF2IC0tPlxuPHRoeS1uYXZcbiAgY2xhc3M9XCJ0aHktdGFicy1uYXZcIlxuICBbdGh5VHlwZV09XCJ0aHlUeXBlXCJcbiAgW3RoeVNpemVdPVwidGh5U2l6ZVwiXG4gIFt0aHlFeHRyYV09XCJ0aHlFeHRyYVwiXG4gIFt0aHlWZXJ0aWNhbF09XCJ0aHlQb3NpdGlvbiA9PT0gJ2xlZnQnXCJcbiAgW3RoeVJlc3BvbnNpdmVdPVwidGh5UmVzcG9uc2l2ZVwiXG4+XG4gIDxhXG4gICAgaHJlZj1cImphdmFzY3JpcHQ6O1wiXG4gICAgdGh5TmF2SXRlbVxuICAgIFtpZF09XCJ0YWIuaWRcIlxuICAgIFt0aHlOYXZJdGVtRGlzYWJsZWRdPVwidGFiLnRoeURpc2FibGVkXCJcbiAgICBbdGh5TmF2SXRlbUFjdGl2ZV09XCIodGFiLmlkICYmIGFjdGl2ZVRhYklkICYmIHRhYi5pZCA9PT0gYWN0aXZlVGFiSWQpID8/IGkgPT09IGFjdGl2ZVRhYkluZGV4XCJcbiAgICAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYnM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRhYlRyYWNrQnlcIlxuICAgIChjbGljayk9XCJhY3RpdmVUYWIodGFiLCBpKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGFiLnRpdGxlVGVtcGxhdGVSZWY7IGVsc2UgdGl0bGVOYW1lXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLnRpdGxlVGVtcGxhdGVSZWZcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjdGl0bGVOYW1lPlxuICAgICAge3sgdGFiLnRoeVRpdGxlIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9hPlxuPC90aHktbmF2PlxuPCEtLSB0YWJzIGNvbnRlbnQgLS0+XG48ZGl2IGNsYXNzPVwidGh5LXRhYnMtY29udGVudFwiIFtjbGFzcy50aHktdGFicy1jb250ZW50LWFuaW1hdGVkXT1cInRhYlBhbmVBbmltYXRlZFwiIFtzdHlsZS5tYXJnaW4tbGVmdF09XCJnZXRUYWJDb250ZW50TWFyZ2luTGVmdCgpXCI+XG4gIDxkaXZcbiAgICB0aHlUYWJDb250ZW50XG4gICAgKm5nRm9yPVwibGV0IHRhYiBvZiB0YWJzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0YWJUcmFja0J5XCJcbiAgICBbYWN0aXZlXT1cIih0YWIuaWQgJiYgYWN0aXZlVGFiSWQgJiYgdGFiLmlkID09PSBhY3RpdmVUYWJJZCkgPz8gaSA9PT0gYWN0aXZlVGFiSW5kZXhcIlxuICAgIFtjb250ZW50XT1cInRhYi5jb250ZW50XCJcbiAgICBbdGFiUGFuZUFuaW1hdGVkXT1cInRhYlBhbmVBbmltYXRlZFwiXG4gID48L2Rpdj5cbjwvZGl2PlxuIl19
@@ -7,11 +7,11 @@ import { ThyNavModule } from 'ngx-tethys/nav';
7
7
  import { ThyTabContent } from './tab-content.component';
8
8
  import * as i0 from "@angular/core";
9
9
  export class ThyTabsModule {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
11
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.4", ngImport: i0, type: ThyTabsModule, imports: [CommonModule, ThyIconModule, ThyNavModule, ThyTabs, ThyTab, ThyTabContent], exports: [ThyTabs, ThyTab] }); }
12
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabsModule, imports: [CommonModule, ThyIconModule, ThyNavModule, ThyTabs] }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
11
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: ThyTabsModule, imports: [CommonModule, ThyIconModule, ThyNavModule, ThyTabs, ThyTab, ThyTabContent], exports: [ThyTabs, ThyTab] }); }
12
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabsModule, imports: [CommonModule, ThyIconModule, ThyNavModule, ThyTabs] }); }
13
13
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTabsModule, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTabsModule, decorators: [{
15
15
  type: NgModule,
16
16
  args: [{
17
17
  imports: [CommonModule, ThyIconModule, ThyNavModule, ThyTabs, ThyTab, ThyTabContent],
@@ -77,10 +77,10 @@ export class ThyTag {
77
77
  }
78
78
  }
79
79
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTag, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
81
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.1.4", type: ThyTag, isStandalone: true, selector: "thy-tag,[thyTag]", inputs: { thyTag: "thyTag", thyShape: "thyShape", thyColor: "thyColor", thyTheme: "thyTheme", thySize: "thySize", thyHoverable: ["thyHoverable", "thyHoverable", coerceBooleanProperty] }, host: { properties: { "class.thy-tag-pill": "thyShape === \"pill\"", "class.thy-tag-outline": "thyTheme === \"outline\"", "class.thy-tag-hover": "thyHoverable", "class.thy-tag-md": "thySize === \"md\"", "class.thy-tag-sm": "thySize === \"sm\"", "class.thy-tag-xs": "thySize === \"xs\"", "class.thy-tag-lg": "thySize === \"lg\"" }, classAttribute: "thy-tag" }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTag, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.0", type: ThyTag, isStandalone: true, selector: "thy-tag,[thyTag]", inputs: { thyTag: "thyTag", thyShape: "thyShape", thyColor: "thyColor", thyTheme: "thyTheme", thySize: "thySize", thyHoverable: ["thyHoverable", "thyHoverable", coerceBooleanProperty] }, host: { properties: { "class.thy-tag-pill": "thyShape === \"pill\"", "class.thy-tag-outline": "thyTheme === \"outline\"", "class.thy-tag-hover": "thyHoverable", "class.thy-tag-md": "thySize === \"md\"", "class.thy-tag-sm": "thySize === \"sm\"", "class.thy-tag-xs": "thySize === \"xs\"", "class.thy-tag-lg": "thySize === \"lg\"" }, classAttribute: "thy-tag" }, usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTag, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTag, decorators: [{
84
84
  type: Component,
85
85
  args: [{ selector: 'thy-tag,[thyTag]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
86
86
  class: 'thy-tag',
@@ -5,11 +5,11 @@ import { ThyIconModule } from 'ngx-tethys/icon';
5
5
  import { ThyTags } from './tags.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class ThyTagModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.4", ngImport: i0, type: ThyTagModule, imports: [CommonModule, ThyIconModule, ThyTag, ThyTags], exports: [ThyTag, ThyTags] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTagModule, imports: [CommonModule, ThyIconModule] }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: ThyTagModule, imports: [CommonModule, ThyIconModule, ThyTag, ThyTags], exports: [ThyTag, ThyTags] }); }
10
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTagModule, imports: [CommonModule, ThyIconModule] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTagModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTagModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule, ThyIconModule, ThyTag, ThyTags],
@@ -6,10 +6,10 @@ import * as i0 from "@angular/core";
6
6
  export class ThyTags {
7
7
  constructor() { }
8
8
  ngOnInit() { }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTags, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: ThyTags, isStandalone: true, selector: "thy-tags", host: { classAttribute: "thy-tags" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTags, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyTags, isStandalone: true, selector: "thy-tags", host: { classAttribute: "thy-tags" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTags, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTags, decorators: [{
13
13
  type: Component,
14
14
  args: [{
15
15
  selector: 'thy-tags',
@@ -52,4 +52,4 @@ export class FakeDataTransfer {
52
52
  return true;
53
53
  }
54
54
  }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10cmFuc2Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90ZXN0aW5nL2RhdGEtdHJhbnNmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUyxlQUFlLENBQUksS0FBVSxFQUFFLElBQU87SUFDM0MsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNiLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxPQUFPLG9CQUFvQjtJQUc3QixZQUFvQixLQUFzQixFQUFTLElBQVk7UUFBM0MsVUFBSyxHQUFMLEtBQUssQ0FBaUI7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFRO0lBQUcsQ0FBQztJQUVuRSxTQUFTO1FBQ0wsT0FBTyxJQUFJLENBQUMsS0FBd0IsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWdDO1FBQ3hDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxnQkFBZ0I7SUFRekIsWUFBWSxLQUFjLEVBQUUsS0FBMEI7UUFQdEQsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsZUFBVSxHQUFzQyxNQUFNLENBQUM7UUFDdkQsa0JBQWEsR0FBdUcsS0FBSyxDQUFDO1FBRTFILFVBQUssR0FBYSxFQUFFLENBQUM7UUFrQnJCLFlBQU8sR0FBRyxVQUFVLFVBQWtCO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUM7UUFZRixpQkFBWSxHQUFHO1lBQ1gsNEdBQTRHO1FBQ2hILENBQUMsQ0FBQztRQTlCRSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQVksQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQVksQ0FBQztJQUM5QixDQUFDO0lBRUQsU0FBUyxDQUFDLFVBQWtCO1FBQ3hCLElBQUksVUFBVSxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDckMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQU1ELE9BQU8sQ0FBQyxVQUFrQixFQUFFLElBQVk7UUFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUM7UUFFckMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUtKIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gcmVtb3ZlRnJvbUFycmF5PFQ+KGFycmF5OiBUW10sIGl0ZW06IFQpIHtcbiAgICBjb25zdCBpbmRleCA9IGFycmF5LmluZGV4T2YoaXRlbSk7XG5cbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZha2VEYXRhVHJhbnNmZXJJdGVtIGltcGxlbWVudHMgRGF0YVRyYW5zZmVySXRlbSB7XG4gICAgdHlwZTogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbnRyeTogRmlsZVN5c3RlbUVudHJ5LCBwdWJsaWMga2luZDogc3RyaW5nKSB7fVxuXG4gICAgZ2V0QXNGaWxlKCk6IEZpbGUge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnRyeSBhcyB1bmtub3duIGFzIEZpbGU7XG4gICAgfVxuXG4gICAgZ2V0QXNTdHJpbmcoY2FsbGJhY2s6IEZ1bmN0aW9uU3RyaW5nQ2FsbGJhY2spOiB2b2lkIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICAgIH1cblxuICAgIHdlYmtpdEdldEFzRW50cnkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVudHJ5O1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZha2VEYXRhVHJhbnNmZXIgaW1wbGVtZW50cyBEYXRhVHJhbnNmZXIge1xuICAgIGRhdGFCeUZvcm1hdCA9IHt9O1xuICAgIGRyb3BFZmZlY3Q6ICdub25lJyB8ICdjb3B5JyB8ICdsaW5rJyB8ICdtb3ZlJyA9ICdub25lJztcbiAgICBlZmZlY3RBbGxvd2VkOiAnbm9uZScgfCAnY29weScgfCAnY29weUxpbmsnIHwgJ2NvcHlNb3ZlJyB8ICdsaW5rJyB8ICdsaW5rTW92ZScgfCAnbW92ZScgfCAnYWxsJyB8ICd1bmluaXRpYWxpemVkJyA9ICdhbGwnO1xuICAgIGZpbGVzOiBGaWxlTGlzdDtcbiAgICB0eXBlczogc3RyaW5nW10gPSBbXTtcbiAgICBpdGVtczogRGF0YVRyYW5zZmVySXRlbUxpc3Q7XG5cbiAgICBjb25zdHJ1Y3RvcihmaWxlcz86IEZpbGVbXSwgaXRlbXM/OiBEYXRhVHJhbnNmZXJJdGVtW10pIHtcbiAgICAgICAgdGhpcy5maWxlcyA9IGZpbGVzIGFzIGFueTtcbiAgICAgICAgdGhpcy5pdGVtcyA9IGl0ZW1zIGFzIGFueTtcbiAgICB9XG5cbiAgICBjbGVhckRhdGEoZGF0YUZvcm1hdDogc3RyaW5nKSB7XG4gICAgICAgIGlmIChkYXRhRm9ybWF0KSB7XG4gICAgICAgICAgICBkZWxldGUgdGhpcy5kYXRhQnlGb3JtYXRbZGF0YUZvcm1hdF07XG4gICAgICAgICAgICByZW1vdmVGcm9tQXJyYXkodGhpcy50eXBlcywgZGF0YUZvcm1hdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFCeUZvcm1hdCA9IHt9O1xuICAgICAgICAgICAgdGhpcy50eXBlcyA9IFtdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RGF0YSA9IGZ1bmN0aW9uIChkYXRhRm9ybWF0OiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YUJ5Rm9ybWF0W2RhdGFGb3JtYXRdO1xuICAgIH07XG5cbiAgICBzZXREYXRhKGRhdGFGb3JtYXQ6IHN0cmluZywgZGF0YTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGF0YUJ5Rm9ybWF0W2RhdGFGb3JtYXRdID0gZGF0YTtcblxuICAgICAgICBpZiAodGhpcy50eXBlcy5pbmRleE9mKGRhdGFGb3JtYXQpIDwgMCkge1xuICAgICAgICAgICAgdGhpcy50eXBlcy5wdXNoKGRhdGFGb3JtYXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgc2V0RHJhZ0ltYWdlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAvLyBkb24ndCBkbyBhbnl0aGluZyAodGhlIHN0dWIganVzdCBtYWtlcyBzdXJlIHRoZXJlIGlzIG5vIGVycm9yIHRocm93biBpZiBzb21lb25lIHRyaWVzIHRvIGNhbGwgdGhlIG1ldGhvZClcbiAgICB9O1xufVxuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10cmFuc2Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90ZXN0aW5nL2RhdGEtdHJhbnNmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUyxlQUFlLENBQUksS0FBVSxFQUFFLElBQU87SUFDM0MsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNiLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxPQUFPLG9CQUFvQjtJQUc3QixZQUNZLEtBQXNCLEVBQ3ZCLElBQVk7UUFEWCxVQUFLLEdBQUwsS0FBSyxDQUFpQjtRQUN2QixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQ3BCLENBQUM7SUFFSixTQUFTO1FBQ0wsT0FBTyxJQUFJLENBQUMsS0FBd0IsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWdDO1FBQ3hDLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxnQkFBZ0I7SUFRekIsWUFBWSxLQUFjLEVBQUUsS0FBMEI7UUFQdEQsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsZUFBVSxHQUFzQyxNQUFNLENBQUM7UUFDdkQsa0JBQWEsR0FBdUcsS0FBSyxDQUFDO1FBRTFILFVBQUssR0FBYSxFQUFFLENBQUM7UUFrQnJCLFlBQU8sR0FBRyxVQUFVLFVBQWtCO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6QyxDQUFDLENBQUM7UUFZRixpQkFBWSxHQUFHO1lBQ1gsNEdBQTRHO1FBQ2hILENBQUMsQ0FBQztRQTlCRSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQVksQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQVksQ0FBQztJQUM5QixDQUFDO0lBRUQsU0FBUyxDQUFDLFVBQWtCO1FBQ3hCLElBQUksVUFBVSxFQUFFLENBQUM7WUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDckMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNwQixDQUFDO0lBQ0wsQ0FBQztJQU1ELE9BQU8sQ0FBQyxVQUFrQixFQUFFLElBQVk7UUFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUM7UUFFckMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztDQUtKIiwic291cmNlc0NvbnRlbnQiOlsiZnVuY3Rpb24gcmVtb3ZlRnJvbUFycmF5PFQ+KGFycmF5OiBUW10sIGl0ZW06IFQpIHtcbiAgICBjb25zdCBpbmRleCA9IGFycmF5LmluZGV4T2YoaXRlbSk7XG5cbiAgICBpZiAoaW5kZXggPj0gMCkge1xuICAgICAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZha2VEYXRhVHJhbnNmZXJJdGVtIGltcGxlbWVudHMgRGF0YVRyYW5zZmVySXRlbSB7XG4gICAgdHlwZTogc3RyaW5nO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZW50cnk6IEZpbGVTeXN0ZW1FbnRyeSxcbiAgICAgICAgcHVibGljIGtpbmQ6IHN0cmluZ1xuICAgICkge31cblxuICAgIGdldEFzRmlsZSgpOiBGaWxlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZW50cnkgYXMgdW5rbm93biBhcyBGaWxlO1xuICAgIH1cblxuICAgIGdldEFzU3RyaW5nKGNhbGxiYWNrOiBGdW5jdGlvblN0cmluZ0NhbGxiYWNrKTogdm9pZCB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgICB9XG5cbiAgICB3ZWJraXRHZXRBc0VudHJ5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnRyeTtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGYWtlRGF0YVRyYW5zZmVyIGltcGxlbWVudHMgRGF0YVRyYW5zZmVyIHtcbiAgICBkYXRhQnlGb3JtYXQgPSB7fTtcbiAgICBkcm9wRWZmZWN0OiAnbm9uZScgfCAnY29weScgfCAnbGluaycgfCAnbW92ZScgPSAnbm9uZSc7XG4gICAgZWZmZWN0QWxsb3dlZDogJ25vbmUnIHwgJ2NvcHknIHwgJ2NvcHlMaW5rJyB8ICdjb3B5TW92ZScgfCAnbGluaycgfCAnbGlua01vdmUnIHwgJ21vdmUnIHwgJ2FsbCcgfCAndW5pbml0aWFsaXplZCcgPSAnYWxsJztcbiAgICBmaWxlczogRmlsZUxpc3Q7XG4gICAgdHlwZXM6IHN0cmluZ1tdID0gW107XG4gICAgaXRlbXM6IERhdGFUcmFuc2Zlckl0ZW1MaXN0O1xuXG4gICAgY29uc3RydWN0b3IoZmlsZXM/OiBGaWxlW10sIGl0ZW1zPzogRGF0YVRyYW5zZmVySXRlbVtdKSB7XG4gICAgICAgIHRoaXMuZmlsZXMgPSBmaWxlcyBhcyBhbnk7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBpdGVtcyBhcyBhbnk7XG4gICAgfVxuXG4gICAgY2xlYXJEYXRhKGRhdGFGb3JtYXQ6IHN0cmluZykge1xuICAgICAgICBpZiAoZGF0YUZvcm1hdCkge1xuICAgICAgICAgICAgZGVsZXRlIHRoaXMuZGF0YUJ5Rm9ybWF0W2RhdGFGb3JtYXRdO1xuICAgICAgICAgICAgcmVtb3ZlRnJvbUFycmF5KHRoaXMudHlwZXMsIGRhdGFGb3JtYXQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kYXRhQnlGb3JtYXQgPSB7fTtcbiAgICAgICAgICAgIHRoaXMudHlwZXMgPSBbXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldERhdGEgPSBmdW5jdGlvbiAoZGF0YUZvcm1hdDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFCeUZvcm1hdFtkYXRhRm9ybWF0XTtcbiAgICB9O1xuXG4gICAgc2V0RGF0YShkYXRhRm9ybWF0OiBzdHJpbmcsIGRhdGE6IHN0cmluZykge1xuICAgICAgICB0aGlzLmRhdGFCeUZvcm1hdFtkYXRhRm9ybWF0XSA9IGRhdGE7XG5cbiAgICAgICAgaWYgKHRoaXMudHlwZXMuaW5kZXhPZihkYXRhRm9ybWF0KSA8IDApIHtcbiAgICAgICAgICAgIHRoaXMudHlwZXMucHVzaChkYXRhRm9ybWF0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHNldERyYWdJbWFnZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgLy8gZG9uJ3QgZG8gYW55dGhpbmcgKHRoZSBzdHViIGp1c3QgbWFrZXMgc3VyZSB0aGVyZSBpcyBubyBlcnJvciB0aHJvd24gaWYgc29tZW9uZSB0cmllcyB0byBjYWxsIHRoZSBtZXRob2QpXG4gICAgfTtcbn1cbiJdfQ==
@@ -193,10 +193,10 @@ export class ThyInnerTimePicker {
193
193
  this.minutes = padNumber(_value.getMinutes());
194
194
  this.seconds = padNumber(_value.getUTCSeconds());
195
195
  }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyInnerTimePicker, deps: [{ token: i1.TimePickerConfig }, { token: i0.ChangeDetectorRef }, { token: i2.ThyTimePickerStore }], target: i0.ɵɵFactoryTarget.Component }); }
197
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: ThyInnerTimePicker, isStandalone: true, selector: "thy-inner-time-picker", inputs: { hourStep: "hourStep", minuteStep: "minuteStep", secondsStep: "secondsStep", readonlyInput: "readonlyInput", disabled: "disabled", mousewheel: "mousewheel", arrowKeys: "arrowKeys", showSpinners: "showSpinners", showMeridian: "showMeridian", showMinutes: "showMinutes", showSeconds: "showSeconds", meridians: "meridians", min: "min", max: "max", hoursPlaceholder: "hoursPlaceholder", minutesPlaceholder: "minutesPlaceholder", secondsPlaceholder: "secondsPlaceholder" }, outputs: { isValid: "isValid" }, providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, ThyTimePickerStore], usesOnChanges: true, ngImport: i0, template: "<table>\n <tbody>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- increment hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementHours || !isEditable\" (click)=\"changeHours(hourStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- increment minutes button -->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementMinutes || !isEditable\" (click)=\"changeMinutes(minuteStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- increment seconds button -->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementSeconds || !isEditable\" (click)=\"changeSeconds(secondsStep)\">\n <span class=\"thy-chevron thy-chevron-up\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n <tr>\n <!-- hours -->\n <td class=\"form-group\" [class.has-error]=\"invalidHours\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidHours\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"hoursPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"hours\"\n (wheel)=\"prevDef($event); changeHours(hourStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeHours(hourStep, 'key')\"\n (keydown.ArrowDown)=\"changeHours(-hourStep, 'key')\"\n (change)=\"updateHours($event.target.value)\"\n />\n </td>\n\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;:&nbsp;</td>\n <!-- minutes -->\n <td class=\"form-group\" *ngIf=\"showMinutes\" [class.has-error]=\"invalidMinutes\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidMinutes\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"minutesPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"minutes\"\n (wheel)=\"prevDef($event); changeMinutes(minuteStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeMinutes(minuteStep, 'key')\"\n (keydown.ArrowDown)=\"changeMinutes(-minuteStep, 'key')\"\n (change)=\"updateMinutes($event.target.value)\"\n />\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;:&nbsp;</td>\n <!-- seconds -->\n <td class=\"form-group\" *ngIf=\"showSeconds\" [class.has-error]=\"invalidSeconds\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidSeconds\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"secondsPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"seconds\"\n (wheel)=\"prevDef($event); changeSeconds(secondsStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeSeconds(secondsStep, 'key')\"\n (keydown.ArrowDown)=\"changeSeconds(-secondsStep, 'key')\"\n (change)=\"updateSeconds($event.target.value)\"\n />\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian -->\n <td *ngIf=\"showMeridian\">\n <button\n type=\"button\"\n class=\"btn btn-default text-center\"\n [disabled]=\"!isEditable || !canToggleMeridian\"\n [class.disabled]=\"!isEditable || !canToggleMeridian\"\n (click)=\"toggleMeridian()\"\n >\n {{ meridian }}\n </button>\n </td>\n </tr>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- decrement hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementHours || !isEditable\" (click)=\"changeHours(-hourStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- decrement minutes button-->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementMinutes || !isEditable\" (click)=\"changeMinutes(-minuteStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- decrement seconds button-->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementSeconds || !isEditable\" (click)=\"changeSeconds(-secondsStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n </tbody>\n</table>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
196
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyInnerTimePicker, deps: [{ token: i1.TimePickerConfig }, { token: i0.ChangeDetectorRef }, { token: i2.ThyTimePickerStore }], target: i0.ɵɵFactoryTarget.Component }); }
197
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: ThyInnerTimePicker, isStandalone: true, selector: "thy-inner-time-picker", inputs: { hourStep: "hourStep", minuteStep: "minuteStep", secondsStep: "secondsStep", readonlyInput: "readonlyInput", disabled: "disabled", mousewheel: "mousewheel", arrowKeys: "arrowKeys", showSpinners: "showSpinners", showMeridian: "showMeridian", showMinutes: "showMinutes", showSeconds: "showSeconds", meridians: "meridians", min: "min", max: "max", hoursPlaceholder: "hoursPlaceholder", minutesPlaceholder: "minutesPlaceholder", secondsPlaceholder: "secondsPlaceholder" }, outputs: { isValid: "isValid" }, providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, ThyTimePickerStore], usesOnChanges: true, ngImport: i0, template: "<table>\n <tbody>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- increment hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementHours || !isEditable\" (click)=\"changeHours(hourStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- increment minutes button -->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementMinutes || !isEditable\" (click)=\"changeMinutes(minuteStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- increment seconds button -->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementSeconds || !isEditable\" (click)=\"changeSeconds(secondsStep)\">\n <span class=\"thy-chevron thy-chevron-up\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n <tr>\n <!-- hours -->\n <td class=\"form-group\" [class.has-error]=\"invalidHours\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidHours\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"hoursPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"hours\"\n (wheel)=\"prevDef($event); changeHours(hourStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeHours(hourStep, 'key')\"\n (keydown.ArrowDown)=\"changeHours(-hourStep, 'key')\"\n (change)=\"updateHours($event.target.value)\"\n />\n </td>\n\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;:&nbsp;</td>\n <!-- minutes -->\n <td class=\"form-group\" *ngIf=\"showMinutes\" [class.has-error]=\"invalidMinutes\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidMinutes\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"minutesPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"minutes\"\n (wheel)=\"prevDef($event); changeMinutes(minuteStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeMinutes(minuteStep, 'key')\"\n (keydown.ArrowDown)=\"changeMinutes(-minuteStep, 'key')\"\n (change)=\"updateMinutes($event.target.value)\"\n />\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;:&nbsp;</td>\n <!-- seconds -->\n <td class=\"form-group\" *ngIf=\"showSeconds\" [class.has-error]=\"invalidSeconds\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidSeconds\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"secondsPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"seconds\"\n (wheel)=\"prevDef($event); changeSeconds(secondsStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeSeconds(secondsStep, 'key')\"\n (keydown.ArrowDown)=\"changeSeconds(-secondsStep, 'key')\"\n (change)=\"updateSeconds($event.target.value)\"\n />\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian -->\n <td *ngIf=\"showMeridian\">\n <button\n type=\"button\"\n class=\"btn btn-default text-center\"\n [disabled]=\"!isEditable || !canToggleMeridian\"\n [class.disabled]=\"!isEditable || !canToggleMeridian\"\n (click)=\"toggleMeridian()\"\n >\n {{ meridian }}\n </button>\n </td>\n </tr>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- decrement hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementHours || !isEditable\" (click)=\"changeHours(-hourStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- decrement minutes button-->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementMinutes || !isEditable\" (click)=\"changeMinutes(-minuteStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- decrement seconds button-->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementSeconds || !isEditable\" (click)=\"changeSeconds(-secondsStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n </tbody>\n</table>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
198
198
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyInnerTimePicker, decorators: [{
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyInnerTimePicker, decorators: [{
200
200
  type: Component,
201
201
  args: [{ selector: 'thy-inner-time-picker', changeDetection: ChangeDetectionStrategy.OnPush, providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, ThyTimePickerStore], standalone: true, imports: [NgIf], template: "<table>\n <tbody>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- increment hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementHours || !isEditable\" (click)=\"changeHours(hourStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- increment minutes button -->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementMinutes || !isEditable\" (click)=\"changeMinutes(minuteStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- increment seconds button -->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementSeconds || !isEditable\" (click)=\"changeSeconds(secondsStep)\">\n <span class=\"thy-chevron thy-chevron-up\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n <tr>\n <!-- hours -->\n <td class=\"form-group\" [class.has-error]=\"invalidHours\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidHours\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"hoursPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"hours\"\n (wheel)=\"prevDef($event); changeHours(hourStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeHours(hourStep, 'key')\"\n (keydown.ArrowDown)=\"changeHours(-hourStep, 'key')\"\n (change)=\"updateHours($event.target.value)\"\n />\n </td>\n\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;:&nbsp;</td>\n <!-- minutes -->\n <td class=\"form-group\" *ngIf=\"showMinutes\" [class.has-error]=\"invalidMinutes\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidMinutes\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"minutesPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"minutes\"\n (wheel)=\"prevDef($event); changeMinutes(minuteStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeMinutes(minuteStep, 'key')\"\n (keydown.ArrowDown)=\"changeMinutes(-minuteStep, 'key')\"\n (change)=\"updateMinutes($event.target.value)\"\n />\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;:&nbsp;</td>\n <!-- seconds -->\n <td class=\"form-group\" *ngIf=\"showSeconds\" [class.has-error]=\"invalidSeconds\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidSeconds\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"secondsPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"seconds\"\n (wheel)=\"prevDef($event); changeSeconds(secondsStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeSeconds(secondsStep, 'key')\"\n (keydown.ArrowDown)=\"changeSeconds(-secondsStep, 'key')\"\n (change)=\"updateSeconds($event.target.value)\"\n />\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian -->\n <td *ngIf=\"showMeridian\">\n <button\n type=\"button\"\n class=\"btn btn-default text-center\"\n [disabled]=\"!isEditable || !canToggleMeridian\"\n [class.disabled]=\"!isEditable || !canToggleMeridian\"\n (click)=\"toggleMeridian()\"\n >\n {{ meridian }}\n </button>\n </td>\n </tr>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- decrement hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementHours || !isEditable\" (click)=\"changeHours(-hourStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showMinutes\">&nbsp;&nbsp;&nbsp;</td>\n <!-- decrement minutes button-->\n <td *ngIf=\"showMinutes\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementMinutes || !isEditable\" (click)=\"changeMinutes(-minuteStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n <td *ngIf=\"showSeconds\">&nbsp;</td>\n <!-- decrement seconds button-->\n <td *ngIf=\"showSeconds\">\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementSeconds || !isEditable\" (click)=\"changeSeconds(-secondsStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- space between -->\n <td *ngIf=\"showMeridian\">&nbsp;&nbsp;&nbsp;</td>\n <!-- meridian placeholder-->\n <td *ngIf=\"showMeridian\"></td>\n </tr>\n </tbody>\n</table>\n" }]
202
202
  }], ctorParameters: () => [{ type: i1.TimePickerConfig }, { type: i0.ChangeDetectorRef }, { type: i2.ThyTimePickerStore }], propDecorators: { hourStep: [{
@@ -236,4 +236,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImpor
236
236
  }], isValid: [{
237
237
  type: Output
238
238
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5uZXItdGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2lubmVyL2lubmVyLXRpbWUtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9pbm5lci9pbm5lci10aW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBR0wsTUFBTSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUk5RCxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDWixNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7O0FBRS9ELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFtQjtJQUM3RCxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7SUFDakQsS0FBSyxFQUFFLElBQUk7Q0FDZCxDQUFDO0FBRUY7O0dBRUc7QUFT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QUFXO3NCQUFuQixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxHQUFHO3NCQUFYLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUVHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUdJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFN0YXRpY1Byb3ZpZGVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGdldENvbnRyb2xzVmFsdWUgfSBmcm9tICcuLi90aW1lLXBpY2tlci1jb250cm9scy51dGlsJztcbmltcG9ydCB7IFRpbWVQaWNrZXJDb25maWcgfSBmcm9tICcuL2lubmVyLXRpbWUtcGlja2VyLmNvbmZpZyc7XG5cbmltcG9ydCB7IFRpbWVDaGFuZ2VTb3VyY2UsIFRpbWVQaWNrZXJDb21wb25lbnRTdGF0ZSwgVGltZVBpY2tlckNvbnRyb2xzIH0gZnJvbSAnLi9pbm5lci10aW1lLXBpY2tlci5jbGFzcyc7XG5cbmltcG9ydCB7XG4gICAgaXNIb3VySW5wdXRWYWxpZCxcbiAgICBpc0lucHV0TGltaXRWYWxpZCxcbiAgICBpc0lucHV0VmFsaWQsXG4gICAgaXNNaW51dGVJbnB1dFZhbGlkLFxuICAgIGlzU2Vjb25kSW5wdXRWYWxpZCxcbiAgICBpc1ZhbGlkRGF0ZSxcbiAgICBwYWROdW1iZXIsXG4gICAgcGFyc2VUaW1lXG59IGZyb20gJy4uL3RpbWUtcGlja2VyLnV0aWxzJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGh5VGltZVBpY2tlclN0b3JlIH0gZnJvbSAnLi9pbm5lci10aW1lLXBpY2tlci5zdG9yZSc7XG5cbmV4cG9ydCBjb25zdCBUSU1FUElDS0VSX0NPTlRST0xfVkFMVUVfQUNDRVNTT1I6IFN0YXRpY1Byb3ZpZGVyID0ge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoeUlubmVyVGltZVBpY2tlciksXG4gICAgbXVsdGk6IHRydWVcbn07XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWlubmVyLXRpbWUtcGlja2VyJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUSU1FUElDS0VSX0NPTlRST0xfVkFMVUVfQUNDRVNTT1IsIFRoeVRpbWVQaWNrZXJTdG9yZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lubmVyLXRpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0lmXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlJbm5lclRpbWVQaWNrZXIgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVGltZVBpY2tlckNvbXBvbmVudFN0YXRlLCBUaW1lUGlja2VyQ29udHJvbHMsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICAvKiogaG91cnMgY2hhbmdlIHN0ZXAgKi9cbiAgICBASW5wdXQoKSBob3VyU3RlcDogbnVtYmVyO1xuICAgIC8qKiBob3VycyBjaGFuZ2Ugc3RlcCAqL1xuICAgIEBJbnB1dCgpIG1pbnV0ZVN0ZXA6IG51bWJlcjtcbiAgICAvKiogc2Vjb25kcyBjaGFuZ2Ugc3RlcCAqL1xuICAgIEBJbnB1dCgpIHNlY29uZHNTdGVwOiBudW1iZXI7XG4gICAgLyoqIGlmIHRydWUgaG91cnMgYW5kIG1pbnV0ZXMgZmllbGRzIHdpbGwgYmUgcmVhZG9ubHkgKi9cbiAgICBASW5wdXQoKSByZWFkb25seUlucHV0OiBib29sZWFuO1xuICAgIC8qKiBpZiB0cnVlIGhvdXJzIGFuZCBtaW51dGVzIGZpZWxkcyB3aWxsIGJlIGRpc2FibGVkICovXG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgLyoqIGlmIHRydWUgc2Nyb2xsIGluc2lkZSBob3VycyBhbmQgbWludXRlcyBpbnB1dHMgd2lsbCBjaGFuZ2UgdGltZSAqL1xuICAgIEBJbnB1dCgpIG1vdXNld2hlZWw6IGJvb2xlYW47XG4gICAgLyoqIGlmIHRydWUgdGhlIHZhbHVlcyBvZiBob3VycyBhbmQgbWludXRlcyBjYW4gYmUgY2hhbmdlZCB1c2luZyB0aGUgdXAvZG93biBhcnJvdyBrZXlzIG9uIHRoZSBrZXlib2FyZCAqL1xuICAgIEBJbnB1dCgpIGFycm93S2V5czogYm9vbGVhbjtcbiAgICAvKiogaWYgdHJ1ZSBzcGlubmVyIGFycm93cyBhYm92ZSBhbmQgYmVsb3cgdGhlIGlucHV0cyB3aWxsIGJlIHNob3duICovXG4gICAgQElucHV0KCkgc2hvd1NwaW5uZXJzOiBib29sZWFuO1xuICAgIC8qKiBpZiB0cnVlIG1lcmlkaWFuIGJ1dHRvbiB3aWxsIGJlIHNob3duICovXG4gICAgQElucHV0KCkgc2hvd01lcmlkaWFuOiBib29sZWFuO1xuICAgIC8qKiBzaG93IG1pbnV0ZXMgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNob3dNaW51dGVzOiBib29sZWFuO1xuICAgIC8qKiBzaG93IHNlY29uZHMgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNob3dTZWNvbmRzOiBib29sZWFuO1xuICAgIC8qKiBtZXJpZGlhbiBsYWJlbHMgYmFzZWQgb24gbG9jYWxlICovXG4gICAgQElucHV0KCkgbWVyaWRpYW5zOiBzdHJpbmdbXTtcbiAgICAvKiogbWluaW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIEBJbnB1dCgpIG1pbjogRGF0ZTtcbiAgICAvKiogbWF4aW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIEBJbnB1dCgpIG1heDogRGF0ZTtcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIGhvdXJzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBASW5wdXQoKSBob3Vyc1BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgLyoqIHBsYWNlaG9sZGVyIGZvciBtaW51dGVzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBASW5wdXQoKSBtaW51dGVzUGxhY2Vob2xkZXI6IHN0cmluZztcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIHNlY29uZHMgZmllbGQgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNlY29uZHNQbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICAgLyoqIGVtaXRzIHRydWUgaWYgdmFsdWUgaXMgYSB2YWxpZCBkYXRlICovXG4gICAgQE91dHB1dCgpIGlzVmFsaWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvLyB1aSB2YXJpYWJsZXNcbiAgICBob3Vyczogc3RyaW5nO1xuICAgIG1pbnV0ZXM6IHN0cmluZztcbiAgICBzZWNvbmRzOiBzdHJpbmc7XG4gICAgbWVyaWRpYW46IHN0cmluZztcblxuICAgIGdldCBpc0VkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISh0aGlzLnJlYWRvbmx5SW5wdXQgfHwgdGhpcy5kaXNhYmxlZCk7XG4gICAgfVxuXG4gICAgLy8gbWluL21heCB2YWxpZGF0aW9uIGZvciBpbnB1dCBmaWVsZHNcbiAgICBpbnZhbGlkSG91cnMgPSBmYWxzZTtcbiAgICBpbnZhbGlkTWludXRlcyA9IGZhbHNlO1xuICAgIGludmFsaWRTZWNvbmRzID0gZmFsc2U7XG5cbiAgICAvLyB0aW1lIHBpY2tlciBjb250cm9scyBzdGF0ZVxuICAgIGNhbkluY3JlbWVudEhvdXJzOiBib29sZWFuO1xuICAgIGNhbkluY3JlbWVudE1pbnV0ZXM6IGJvb2xlYW47XG4gICAgY2FuSW5jcmVtZW50U2Vjb25kczogYm9vbGVhbjtcblxuICAgIGNhbkRlY3JlbWVudEhvdXJzOiBib29sZWFuO1xuICAgIGNhbkRlY3JlbWVudE1pbnV0ZXM6IGJvb2xlYW47XG4gICAgY2FuRGVjcmVtZW50U2Vjb25kczogYm9vbGVhbjtcblxuICAgIGNhblRvZ2dsZU1lcmlkaWFuOiBib29sZWFuO1xuXG4gICAgLy8gY29udHJvbCB2YWx1ZSBhY2Nlc3NvciBtZXRob2RzXG4gICAgb25DaGFuZ2UgPSBGdW5jdGlvbi5wcm90b3R5cGU7XG4gICAgb25Ub3VjaGVkID0gRnVuY3Rpb24ucHJvdG90eXBlO1xuXG4gICAgcHJpdmF0ZSB0aW1lclBpY2tlclN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIGNvbnN0cnVjdG9yKF9jb25maWc6IFRpbWVQaWNrZXJDb25maWcsIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBfc3RvcmU6IFRoeVRpbWVQaWNrZXJTdG9yZSkge1xuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIF9jb25maWcpO1xuXG4gICAgICAgIHRoaXMudGltZXJQaWNrZXJTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgICAgICAgX3N0b3JlXG4gICAgICAgICAgICAgICAgLnNlbGVjdChzdGF0ZSA9PiBzdGF0ZS52YWx1ZSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRGF0ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAvLyB1cGRhdGUgVUkgdmFsdWVzIGlmIGRhdGUgY2hhbmdlZFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJUaW1lKHZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3N0b3JlLnVwZGF0ZUNvbnRyb2xzKGdldENvbnRyb2xzVmFsdWUodGhpcykpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG5cbiAgICAgICAgdGhpcy50aW1lclBpY2tlclN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICAgICAgICBfc3RvcmVcbiAgICAgICAgICAgICAgICAuc2VsZWN0KHN0YXRlID0+IHN0YXRlLmNvbnRyb2xzKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbnRyb2xzU3RhdGU6IFRpbWVQaWNrZXJDb250cm9scykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzVmFsaWQuZW1pdChpc0lucHV0VmFsaWQodGhpcy5ob3VycywgdGhpcy5taW51dGVzLCB0aGlzLnNlY29uZHMsIHRoaXMuaXNQTSgpKSk7XG4gICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgY29udHJvbHNTdGF0ZSk7XG4gICAgICAgICAgICAgICAgICAgIF9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHJlc2V0VmFsaWRhdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbnZhbGlkSG91cnMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pbnZhbGlkTWludXRlcyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmludmFsaWRTZWNvbmRzID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaXNQTSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hvd01lcmlkaWFuICYmIHRoaXMubWVyaWRpYW4gPT09IHRoaXMubWVyaWRpYW5zWzFdO1xuICAgIH1cblxuICAgIHByZXZEZWYoJGV2ZW50OiBFdmVudCkge1xuICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICB3aGVlbFNpZ24oJGV2ZW50OiBXaGVlbEV2ZW50SW5pdCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBNYXRoLnNpZ24oJGV2ZW50LmRlbHRhWSkgKiAtMTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N0b3JlLnVwZGF0ZUNvbnRyb2xzKGdldENvbnRyb2xzVmFsdWUodGhpcykpO1xuICAgIH1cblxuICAgIGNoYW5nZUhvdXJzKHN0ZXA6IG51bWJlciwgc291cmNlOiBUaW1lQ2hhbmdlU291cmNlID0gJycpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNldFZhbGlkYXRpb24oKTtcbiAgICAgICAgdGhpcy5fc3RvcmUuY2hhbmdlSG91cnMoeyBzdGVwLCBzb3VyY2UgfSk7XG4gICAgfVxuXG4gICAgY2hhbmdlTWludXRlcyhzdGVwOiBudW1iZXIsIHNvdXJjZTogVGltZUNoYW5nZVNvdXJjZSA9ICcnKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzZXRWYWxpZGF0aW9uKCk7XG4gICAgICAgIHRoaXMuX3N0b3JlLmNoYW5nZU1pbnV0ZXMoeyBzdGVwLCBzb3VyY2UgfSk7XG4gICAgfVxuXG4gICAgY2hhbmdlU2Vjb25kcyhzdGVwOiBudW1iZXIsIHNvdXJjZTogVGltZUNoYW5nZVNvdXJjZSA9ICcnKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzZXRWYWxpZGF0aW9uKCk7XG4gICAgICAgIHRoaXMuX3N0b3JlLmNoYW5nZVNlY29uZHMoeyBzdGVwLCBzb3VyY2UgfSk7XG4gICAgfVxuXG4gICAgdXBkYXRlSG91cnMoaG91cnM6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlc2V0VmFsaWRhdGlvbigpO1xuICAgICAgICB0aGlzLmhvdXJzID0gaG91cnM7XG5cbiAgICAgICAgY29uc3QgaXNWYWxpZCA9IGlzSG91cklucHV0VmFsaWQodGhpcy5ob3VycywgdGhpcy5pc1BNKCkpICYmIHRoaXMuaXNWYWxpZExpbWl0KCk7XG5cbiAgICAgICAgaWYgKCFpc1ZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmludmFsaWRIb3VycyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmlzVmFsaWQuZW1pdChmYWxzZSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKG51bGwpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl91cGRhdGVUaW1lKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlTWludXRlcyhtaW51dGVzOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5yZXNldFZhbGlkYXRpb24oKTtcbiAgICAgICAgdGhpcy5taW51dGVzID0gbWludXRlcztcblxuICAgICAgICBjb25zdCBpc1ZhbGlkID0gaXNNaW51dGVJbnB1dFZhbGlkKHRoaXMubWludXRlcykgJiYgdGhpcy5pc1ZhbGlkTGltaXQoKTtcblxuICAgICAgICBpZiAoIWlzVmFsaWQpIHtcbiAgICAgICAgICAgIHRoaXMuaW52YWxpZE1pbnV0ZXMgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5pc1ZhbGlkLmVtaXQoZmFsc2UpO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZShudWxsKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fdXBkYXRlVGltZSgpO1xuICAgIH1cblxuICAgIHVwZGF0ZVNlY29uZHMoc2Vjb25kczogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucmVzZXRWYWxpZGF0aW9uKCk7XG4gICAgICAgIHRoaXMuc2Vjb25kcyA9IHNlY29uZHM7XG5cbiAgICAgICAgY29uc3QgaXNWYWxpZCA9IGlzU2Vjb25kSW5wdXRWYWxpZCh0aGlzLnNlY29uZHMpICYmIHRoaXMuaXNWYWxpZExpbWl0KCk7XG5cbiAgICAgICAgaWYgKCFpc1ZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmludmFsaWRTZWNvbmRzID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuaXNWYWxpZC5lbWl0KGZhbHNlKTtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UobnVsbCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3VwZGF0ZVRpbWUoKTtcbiAgICB9XG5cbiAgICBpc1ZhbGlkTGltaXQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBpc0lucHV0TGltaXRWYWxpZChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBob3VyOiB0aGlzLmhvdXJzLFxuICAgICAgICAgICAgICAgIG1pbnV0ZTogdGhpcy5taW51dGVzLFxuICAgICAgICAgICAgICAgIHNlY29uZHM6IHRoaXMuc2Vjb25kcyxcbiAgICAgICAgICAgICAgICBpc1BNOiB0aGlzLmlzUE0oKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRoaXMubWF4LFxuICAgICAgICAgICAgdGhpcy5taW5cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBfdXBkYXRlVGltZSgpIHtcbiAgICAgICAgY29uc3QgX3NlY29uZHMgPSB0aGlzLnNob3dTZWNvbmRzID8gdGhpcy5zZWNvbmRzIDogdm9pZCAwO1xuICAgICAgICBjb25zdCBfbWludXRlcyA9IHRoaXMuc2hvd01pbnV0ZXMgPyB0aGlzLm1pbnV0ZXMgOiB2b2lkIDA7XG4gICAgICAgIGlmICghaXNJbnB1dFZhbGlkKHRoaXMuaG91cnMsIF9taW51dGVzLCBfc2Vjb25kcywgdGhpcy5pc1BNKCkpKSB7XG4gICAgICAgICAgICB0aGlzLmlzVmFsaWQuZW1pdChmYWxzZSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKG51bGwpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9zdG9yZS5zZXRUaW1lKHtcbiAgICAgICAgICAgIGhvdXI6IHRoaXMuaG91cnMsXG4gICAgICAgICAgICBtaW51dGU6IHRoaXMubWludXRlcyxcbiAgICAgICAgICAgIHNlY29uZHM6IHRoaXMuc2Vjb25kcyxcbiAgICAgICAgICAgIGlzUE06IHRoaXMuaXNQTSgpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHRvZ2dsZU1lcmlkaWFuKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuc2hvd01lcmlkaWFuIHx8ICF0aGlzLmlzRWRpdGFibGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IF9ob3Vyc1BlckRheUhhbGYgPSAxMjtcbiAgICAgICAgdGhpcy5fc3RvcmUuY2hhbmdlSG91cnMoe1xuICAgICAgICAgICAgc3RlcDogX2hvdXJzUGVyRGF5SGFsZixcbiAgICAgICAgICAgIHNvdXJjZTogJydcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgd3JpdGVWYWx1ZShvYmo6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgfCBEYXRlKTogdm9pZCB7XG4gICAgICAgIGlmIChpc1ZhbGlkRGF0ZShvYmopKSB7XG4gICAgICAgICAgICB0aGlzLl9zdG9yZS53cml0ZVZhbHVlKHBhcnNlVGltZShvYmopKTtcbiAgICAgICAgfSBlbHNlIGlmIChvYmogPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5fc3RvcmUud3JpdGVWYWx1ZShudWxsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IChfOiBhbnkpID0+IHt9KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRpbWVyUGlja2VyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfcmVuZGVyVGltZSh2YWx1ZTogc3RyaW5nIHwgRGF0ZSk6IHZvaWQge1xuICAgICAgICBpZiAoIWlzVmFsaWREYXRlKHZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5ob3VycyA9ICcnO1xuICAgICAgICAgICAgdGhpcy5taW51dGVzID0gJyc7XG4gICAgICAgICAgICB0aGlzLnNlY29uZHMgPSAnJztcbiAgICAgICAgICAgIHRoaXMubWVyaWRpYW4gPSB0aGlzLm1lcmlkaWFuc1swXTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgX3ZhbHVlID0gcGFyc2VUaW1lKHZhbHVlKTtcbiAgICAgICAgY29uc3QgX2hvdXJzUGVyRGF5SGFsZiA9IDEyO1xuICAgICAgICBsZXQgX2hvdXJzID0gX3ZhbHVlLmdldEhvdXJzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuc2hvd01lcmlkaWFuKSB7XG4gICAgICAgICAgICB0aGlzLm1lcmlkaWFuID0gdGhpcy5tZXJpZGlhbnNbX2hvdXJzID49IF9ob3Vyc1BlckRheUhhbGYgPyAxIDogMF07XG4gICAgICAgICAgICBfaG91cnMgPSBfaG91cnMgJSBfaG91cnNQZXJEYXlIYWxmO1xuICAgICAgICAgICAgLy8gc2hvdWxkIGJlIDEyIFBNLCBub3QgMDAgUE1cbiAgICAgICAgICAgIGlmIChfaG91cnMgPT09IDApIHtcbiAgICAgICAgICAgICAgICBfaG91cnMgPSBfaG91cnNQZXJEYXlIYWxmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ob3VycyA9IHBhZE51bWJlcihfaG91cnMpO1xuICAgICAgICB0aGlzLm1pbnV0ZXMgPSBwYWROdW1iZXIoX3ZhbHVlLmdldE1pbnV0ZXMoKSk7XG4gICAgICAgIHRoaXMuc2Vjb25kcyA9IHBhZE51bWJlcihfdmFsdWUuZ2V0VVRDU2Vjb25kcygpKTtcbiAgICB9XG59XG4iLCI8dGFibGU+XG4gIDx0Ym9keT5cbiAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIFtoaWRkZW5dPVwiIXNob3dTcGlubmVyc1wiPlxuICAgICAgPCEtLSBpbmNyZW1lbnQgaG91cnMgYnV0dG9uLS0+XG4gICAgICA8dGQ+XG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFjYW5JbmNyZW1lbnRIb3VycyB8fCAhaXNFZGl0YWJsZVwiIChjbGljayk9XCJjaGFuZ2VIb3Vycyhob3VyU3RlcClcIlxuICAgICAgICAgID48c3BhbiBjbGFzcz1cInRoeS1jaGV2cm9uIHRoeS1jaGV2cm9uLXVwXCI+PC9zcGFuXG4gICAgICAgID48L2E+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBkaXZpZGVyIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01pbnV0ZXNcIj4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPlxuICAgICAgPCEtLSBpbmNyZW1lbnQgbWludXRlcyBidXR0b24gLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWludXRlc1wiPlxuICAgICAgICA8YSBjbGFzcz1cImJ0biBidG4tbGlua1wiIFtjbGFzcy5kaXNhYmxlZF09XCIhY2FuSW5jcmVtZW50TWludXRlcyB8fCAhaXNFZGl0YWJsZVwiIChjbGljayk9XCJjaGFuZ2VNaW51dGVzKG1pbnV0ZVN0ZXApXCJcbiAgICAgICAgICA+PHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi11cFwiPjwvc3BhblxuICAgICAgICA+PC9hPlxuICAgICAgPC90ZD5cbiAgICAgIDwhLS0gZGl2aWRlciAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dTZWNvbmRzXCI+Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gaW5jcmVtZW50IHNlY29uZHMgYnV0dG9uIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd1NlY29uZHNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpbmtcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbkluY3JlbWVudFNlY29uZHMgfHwgIWlzRWRpdGFibGVcIiAoY2xpY2spPVwiY2hhbmdlU2Vjb25kcyhzZWNvbmRzU3RlcClcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRoeS1jaGV2cm9uIHRoeS1jaGV2cm9uLXVwXCI+PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBzcGFjZSBiZXR3ZWVuIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01lcmlkaWFuXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gbWVyaWRpYW4gcGxhY2Vob2xkZXItLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNZXJpZGlhblwiPjwvdGQ+XG4gICAgPC90cj5cbiAgICA8dHI+XG4gICAgICA8IS0tIGhvdXJzIC0tPlxuICAgICAgPHRkIGNsYXNzPVwiZm9ybS1ncm91cFwiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaW52YWxpZEhvdXJzXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJpbnZhbGlkSG91cnNcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIHRleHQtY2VudGVyIHRoeS10aW1lLXBpY2tlci1maWVsZFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImhvdXJzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgIG1heGxlbmd0aD1cIjJcIlxuICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seUlucHV0XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFt2YWx1ZV09XCJob3Vyc1wiXG4gICAgICAgICAgKHdoZWVsKT1cInByZXZEZWYoJGV2ZW50KTsgY2hhbmdlSG91cnMoaG91clN0ZXAgKiB3aGVlbFNpZ24oJGV2ZW50KSwgJ3doZWVsJylcIlxuICAgICAgICAgIChrZXlkb3duLkFycm93VXApPVwiY2hhbmdlSG91cnMoaG91clN0ZXAsICdrZXknKVwiXG4gICAgICAgICAgKGtleWRvd24uQXJyb3dEb3duKT1cImNoYW5nZUhvdXJzKC1ob3VyU3RlcCwgJ2tleScpXCJcbiAgICAgICAgICAoY2hhbmdlKT1cInVwZGF0ZUhvdXJzKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvdGQ+XG5cbiAgICAgIDwhLS0gZGl2aWRlciAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNaW51dGVzXCI+Jm5ic3A7OiZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIG1pbnV0ZXMgLS0+XG4gICAgICA8dGQgY2xhc3M9XCJmb3JtLWdyb3VwXCIgKm5nSWY9XCJzaG93TWludXRlc1wiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaW52YWxpZE1pbnV0ZXNcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIFtjbGFzcy5pcy1pbnZhbGlkXT1cImludmFsaWRNaW51dGVzXCJcbiAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCB0ZXh0LWNlbnRlciB0aHktdGltZS1waWNrZXItZmllbGRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJtaW51dGVzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgIG1heGxlbmd0aD1cIjJcIlxuICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seUlucHV0XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFt2YWx1ZV09XCJtaW51dGVzXCJcbiAgICAgICAgICAod2hlZWwpPVwicHJldkRlZigkZXZlbnQpOyBjaGFuZ2VNaW51dGVzKG1pbnV0ZVN0ZXAgKiB3aGVlbFNpZ24oJGV2ZW50KSwgJ3doZWVsJylcIlxuICAgICAgICAgIChrZXlkb3duLkFycm93VXApPVwiY2hhbmdlTWludXRlcyhtaW51dGVTdGVwLCAna2V5JylcIlxuICAgICAgICAgIChrZXlkb3duLkFycm93RG93bik9XCJjaGFuZ2VNaW51dGVzKC1taW51dGVTdGVwLCAna2V5JylcIlxuICAgICAgICAgIChjaGFuZ2UpPVwidXBkYXRlTWludXRlcygkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgIC8+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBkaXZpZGVyIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd1NlY29uZHNcIj4mbmJzcDs6Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gc2Vjb25kcyAtLT5cbiAgICAgIDx0ZCBjbGFzcz1cImZvcm0tZ3JvdXBcIiAqbmdJZj1cInNob3dTZWNvbmRzXCIgW2NsYXNzLmhhcy1lcnJvcl09XCJpbnZhbGlkU2Vjb25kc1wiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiaW52YWxpZFNlY29uZHNcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIHRleHQtY2VudGVyIHRoeS10aW1lLXBpY2tlci1maWVsZFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInNlY29uZHNQbGFjZWhvbGRlclwiXG4gICAgICAgICAgbWF4bGVuZ3RoPVwiMlwiXG4gICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5SW5wdXRcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgW3ZhbHVlXT1cInNlY29uZHNcIlxuICAgICAgICAgICh3aGVlbCk9XCJwcmV2RGVmKCRldmVudCk7IGNoYW5nZVNlY29uZHMoc2Vjb25kc1N0ZXAgKiB3aGVlbFNpZ24oJGV2ZW50KSwgJ3doZWVsJylcIlxuICAgICAgICAgIChrZXlkb3duLkFycm93VXApPVwiY2hhbmdlU2Vjb25kcyhzZWNvbmRzU3RlcCwgJ2tleScpXCJcbiAgICAgICAgICAoa2V5ZG93bi5BcnJvd0Rvd24pPVwiY2hhbmdlU2Vjb25kcygtc2Vjb25kc1N0ZXAsICdrZXknKVwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVTZWNvbmRzKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvdGQ+XG4gICAgICA8IS0tIHNwYWNlIGJldHdlZW4gLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWVyaWRpYW5cIj4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPlxuICAgICAgPCEtLSBtZXJpZGlhbiAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNZXJpZGlhblwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgdGV4dC1jZW50ZXJcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhaXNFZGl0YWJsZSB8fCAhY2FuVG9nZ2xlTWVyaWRpYW5cIlxuICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhaXNFZGl0YWJsZSB8fCAhY2FuVG9nZ2xlTWVyaWRpYW5cIlxuICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVNZXJpZGlhbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IG1lcmlkaWFuIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICAgIDx0ciBjbGFzcz1cInRleHQtY2VudGVyXCIgW2hpZGRlbl09XCIhc2hvd1NwaW5uZXJzXCI+XG4gICAgICA8IS0tIGRlY3JlbWVudCBob3VycyBidXR0b24tLT5cbiAgICAgIDx0ZD5cbiAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpbmtcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbkRlY3JlbWVudEhvdXJzIHx8ICFpc0VkaXRhYmxlXCIgKGNsaWNrKT1cImNoYW5nZUhvdXJzKC1ob3VyU3RlcClcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRoeS1jaGV2cm9uIHRoeS1jaGV2cm9uLWRvd25cIj48L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvdGQ+XG4gICAgICA8IS0tIGRpdmlkZXIgLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWludXRlc1wiPiZuYnNwOyZuYnNwOyZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIGRlY3JlbWVudCBtaW51dGVzIGJ1dHRvbi0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01pbnV0ZXNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpbmtcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbkRlY3JlbWVudE1pbnV0ZXMgfHwgIWlzRWRpdGFibGVcIiAoY2xpY2spPVwiY2hhbmdlTWludXRlcygtbWludXRlU3RlcClcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRoeS1jaGV2cm9uIHRoeS1jaGV2cm9uLWRvd25cIj48L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvdGQ+XG4gICAgICA8IS0tIGRpdmlkZXIgLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93U2Vjb25kc1wiPiZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIGRlY3JlbWVudCBzZWNvbmRzIGJ1dHRvbi0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd1NlY29uZHNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpbmtcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbkRlY3JlbWVudFNlY29uZHMgfHwgIWlzRWRpdGFibGVcIiAoY2xpY2spPVwiY2hhbmdlU2Vjb25kcygtc2Vjb25kc1N0ZXApXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi1kb3duXCI+PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBzcGFjZSBiZXR3ZWVuIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01lcmlkaWFuXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gbWVyaWRpYW4gcGxhY2Vob2xkZXItLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNZXJpZGlhblwiPjwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5uZXItdGltZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2lubmVyL2lubmVyLXRpbWUtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy90aW1lLXBpY2tlci9pbm5lci9pbm5lci10aW1lLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBR0wsTUFBTSxFQUdULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUk5RCxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osa0JBQWtCLEVBQ2xCLGtCQUFrQixFQUNsQixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDWixNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7O0FBRS9ELE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFtQjtJQUM3RCxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUM7SUFDakQsS0FBSyxFQUFFLElBQUk7Q0FDZCxDQUFDO0FBRUY7O0dBRUc7QUFT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RyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxHQUFHO3NCQUFYLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUVHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUdJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFN0YXRpY1Byb3ZpZGVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGdldENvbnRyb2xzVmFsdWUgfSBmcm9tICcuLi90aW1lLXBpY2tlci1jb250cm9scy51dGlsJztcbmltcG9ydCB7IFRpbWVQaWNrZXJDb25maWcgfSBmcm9tICcuL2lubmVyLXRpbWUtcGlja2VyLmNvbmZpZyc7XG5cbmltcG9ydCB7IFRpbWVDaGFuZ2VTb3VyY2UsIFRpbWVQaWNrZXJDb21wb25lbnRTdGF0ZSwgVGltZVBpY2tlckNvbnRyb2xzIH0gZnJvbSAnLi9pbm5lci10aW1lLXBpY2tlci5jbGFzcyc7XG5cbmltcG9ydCB7XG4gICAgaXNIb3VySW5wdXRWYWxpZCxcbiAgICBpc0lucHV0TGltaXRWYWxpZCxcbiAgICBpc0lucHV0VmFsaWQsXG4gICAgaXNNaW51dGVJbnB1dFZhbGlkLFxuICAgIGlzU2Vjb25kSW5wdXRWYWxpZCxcbiAgICBpc1ZhbGlkRGF0ZSxcbiAgICBwYWROdW1iZXIsXG4gICAgcGFyc2VUaW1lXG59IGZyb20gJy4uL3RpbWUtcGlja2VyLnV0aWxzJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVGh5VGltZVBpY2tlclN0b3JlIH0gZnJvbSAnLi9pbm5lci10aW1lLXBpY2tlci5zdG9yZSc7XG5cbmV4cG9ydCBjb25zdCBUSU1FUElDS0VSX0NPTlRST0xfVkFMVUVfQUNDRVNTT1I6IFN0YXRpY1Byb3ZpZGVyID0ge1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoeUlubmVyVGltZVBpY2tlciksXG4gICAgbXVsdGk6IHRydWVcbn07XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWlubmVyLXRpbWUtcGlja2VyJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtUSU1FUElDS0VSX0NPTlRST0xfVkFMVUVfQUNDRVNTT1IsIFRoeVRpbWVQaWNrZXJTdG9yZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2lubmVyLXRpbWUtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtOZ0lmXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlJbm5lclRpbWVQaWNrZXIgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVGltZVBpY2tlckNvbXBvbmVudFN0YXRlLCBUaW1lUGlja2VyQ29udHJvbHMsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICAvKiogaG91cnMgY2hhbmdlIHN0ZXAgKi9cbiAgICBASW5wdXQoKSBob3VyU3RlcDogbnVtYmVyO1xuICAgIC8qKiBob3VycyBjaGFuZ2Ugc3RlcCAqL1xuICAgIEBJbnB1dCgpIG1pbnV0ZVN0ZXA6IG51bWJlcjtcbiAgICAvKiogc2Vjb25kcyBjaGFuZ2Ugc3RlcCAqL1xuICAgIEBJbnB1dCgpIHNlY29uZHNTdGVwOiBudW1iZXI7XG4gICAgLyoqIGlmIHRydWUgaG91cnMgYW5kIG1pbnV0ZXMgZmllbGRzIHdpbGwgYmUgcmVhZG9ubHkgKi9cbiAgICBASW5wdXQoKSByZWFkb25seUlucHV0OiBib29sZWFuO1xuICAgIC8qKiBpZiB0cnVlIGhvdXJzIGFuZCBtaW51dGVzIGZpZWxkcyB3aWxsIGJlIGRpc2FibGVkICovXG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgLyoqIGlmIHRydWUgc2Nyb2xsIGluc2lkZSBob3VycyBhbmQgbWludXRlcyBpbnB1dHMgd2lsbCBjaGFuZ2UgdGltZSAqL1xuICAgIEBJbnB1dCgpIG1vdXNld2hlZWw6IGJvb2xlYW47XG4gICAgLyoqIGlmIHRydWUgdGhlIHZhbHVlcyBvZiBob3VycyBhbmQgbWludXRlcyBjYW4gYmUgY2hhbmdlZCB1c2luZyB0aGUgdXAvZG93biBhcnJvdyBrZXlzIG9uIHRoZSBrZXlib2FyZCAqL1xuICAgIEBJbnB1dCgpIGFycm93S2V5czogYm9vbGVhbjtcbiAgICAvKiogaWYgdHJ1ZSBzcGlubmVyIGFycm93cyBhYm92ZSBhbmQgYmVsb3cgdGhlIGlucHV0cyB3aWxsIGJlIHNob3duICovXG4gICAgQElucHV0KCkgc2hvd1NwaW5uZXJzOiBib29sZWFuO1xuICAgIC8qKiBpZiB0cnVlIG1lcmlkaWFuIGJ1dHRvbiB3aWxsIGJlIHNob3duICovXG4gICAgQElucHV0KCkgc2hvd01lcmlkaWFuOiBib29sZWFuO1xuICAgIC8qKiBzaG93IG1pbnV0ZXMgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNob3dNaW51dGVzOiBib29sZWFuO1xuICAgIC8qKiBzaG93IHNlY29uZHMgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNob3dTZWNvbmRzOiBib29sZWFuO1xuICAgIC8qKiBtZXJpZGlhbiBsYWJlbHMgYmFzZWQgb24gbG9jYWxlICovXG4gICAgQElucHV0KCkgbWVyaWRpYW5zOiBzdHJpbmdbXTtcbiAgICAvKiogbWluaW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIEBJbnB1dCgpIG1pbjogRGF0ZTtcbiAgICAvKiogbWF4aW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIEBJbnB1dCgpIG1heDogRGF0ZTtcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIGhvdXJzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBASW5wdXQoKSBob3Vyc1BsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgLyoqIHBsYWNlaG9sZGVyIGZvciBtaW51dGVzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBASW5wdXQoKSBtaW51dGVzUGxhY2Vob2xkZXI6IHN0cmluZztcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIHNlY29uZHMgZmllbGQgaW4gdGltZVBpY2tlciAqL1xuICAgIEBJbnB1dCgpIHNlY29uZHNQbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICAgLyoqIGVtaXRzIHRydWUgaWYgdmFsdWUgaXMgYSB2YWxpZCBkYXRlICovXG4gICAgQE91dHB1dCgpIGlzVmFsaWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvLyB1aSB2YXJpYWJsZXNcbiAgICBob3Vyczogc3RyaW5nO1xuICAgIG1pbnV0ZXM6IHN0cmluZztcbiAgICBzZWNvbmRzOiBzdHJpbmc7XG4gICAgbWVyaWRpYW46IHN0cmluZztcblxuICAgIGdldCBpc0VkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISh0aGlzLnJlYWRvbmx5SW5wdXQgfHwgdGhpcy5kaXNhYmxlZCk7XG4gICAgfVxuXG4gICAgLy8gbWluL21heCB2YWxpZGF0aW9uIGZvciBpbnB1dCBmaWVsZHNcbiAgICBpbnZhbGlkSG91cnMgPSBmYWxzZTtcbiAgICBpbnZhbGlkTWludXRlcyA9IGZhbHNlO1xuICAgIGludmFsaWRTZWNvbmRzID0gZmFsc2U7XG5cbiAgICAvLyB0aW1lIHBpY2tlciBjb250cm9scyBzdGF0ZVxuICAgIGNhbkluY3JlbWVudEhvdXJzOiBib29sZWFuO1xuICAgIGNhbkluY3JlbWVudE1pbnV0ZXM6IGJvb2xlYW47XG4gICAgY2FuSW5jcmVtZW50U2Vjb25kczogYm9vbGVhbjtcblxuICAgIGNhbkRlY3JlbWVudEhvdXJzOiBib29sZWFuO1xuICAgIGNhbkRlY3JlbWVudE1pbnV0ZXM6IGJvb2xlYW47XG4gICAgY2FuRGVjcmVtZW50U2Vjb25kczogYm9vbGVhbjtcblxuICAgIGNhblRvZ2dsZU1lcmlkaWFuOiBib29sZWFuO1xuXG4gICAgLy8gY29udHJvbCB2YWx1ZSBhY2Nlc3NvciBtZXRob2RzXG4gICAgb25DaGFuZ2UgPSBGdW5jdGlvbi5wcm90b3R5cGU7XG4gICAgb25Ub3VjaGVkID0gRnVuY3Rpb24ucHJvdG90eXBlO1xuXG4gICAgcHJpdmF0ZSB0aW1lclBpY2tlclN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBfY29uZmlnOiBUaW1lUGlja2VyQ29uZmlnLFxuICAgICAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgX3N0b3JlOiBUaHlUaW1lUGlja2VyU3RvcmVcbiAgICApIHtcbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBfY29uZmlnKTtcblxuICAgICAgICB0aGlzLnRpbWVyUGlja2VyU3Vic2NyaXB0aW9uLmFkZChcbiAgICAgICAgICAgIF9zdG9yZVxuICAgICAgICAgICAgICAgIC5zZWxlY3Qoc3RhdGUgPT4gc3RhdGUudmFsdWUpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IERhdGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gdXBkYXRlIFVJIHZhbHVlcyBpZiBkYXRlIGNoYW5nZWRcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyVGltZSh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9zdG9yZS51cGRhdGVDb250cm9scyhnZXRDb250cm9sc1ZhbHVlKHRoaXMpKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMudGltZXJQaWNrZXJTdWJzY3JpcHRpb24uYWRkKFxuICAgICAgICAgICAgX3N0b3JlXG4gICAgICAgICAgICAgICAgLnNlbGVjdChzdGF0ZSA9PiBzdGF0ZS5jb250cm9scylcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChjb250cm9sc1N0YXRlOiBUaW1lUGlja2VyQ29udHJvbHMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc1ZhbGlkLmVtaXQoaXNJbnB1dFZhbGlkKHRoaXMuaG91cnMsIHRoaXMubWludXRlcywgdGhpcy5zZWNvbmRzLCB0aGlzLmlzUE0oKSkpO1xuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbnRyb2xzU3RhdGUpO1xuICAgICAgICAgICAgICAgICAgICBfY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXNldFZhbGlkYXRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW52YWxpZEhvdXJzID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaW52YWxpZE1pbnV0ZXMgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pbnZhbGlkU2Vjb25kcyA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlzUE0oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNob3dNZXJpZGlhbiAmJiB0aGlzLm1lcmlkaWFuID09PSB0aGlzLm1lcmlkaWFuc1sxXTtcbiAgICB9XG5cbiAgICBwcmV2RGVmKCRldmVudDogRXZlbnQpIHtcbiAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgd2hlZWxTaWduKCRldmVudDogV2hlZWxFdmVudEluaXQpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWF0aC5zaWduKCRldmVudC5kZWx0YVkpICogLTE7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdG9yZS51cGRhdGVDb250cm9scyhnZXRDb250cm9sc1ZhbHVlKHRoaXMpKTtcbiAgICB9XG5cbiAgICBjaGFuZ2VIb3VycyhzdGVwOiBudW1iZXIsIHNvdXJjZTogVGltZUNoYW5nZVNvdXJjZSA9ICcnKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzZXRWYWxpZGF0aW9uKCk7XG4gICAgICAgIHRoaXMuX3N0b3JlLmNoYW5nZUhvdXJzKHsgc3RlcCwgc291cmNlIH0pO1xuICAgIH1cblxuICAgIGNoYW5nZU1pbnV0ZXMoc3RlcDogbnVtYmVyLCBzb3VyY2U6IFRpbWVDaGFuZ2VTb3VyY2UgPSAnJyk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlc2V0VmFsaWRhdGlvbigpO1xuICAgICAgICB0aGlzLl9zdG9yZS5jaGFuZ2VNaW51dGVzKHsgc3RlcCwgc291cmNlIH0pO1xuICAgIH1cblxuICAgIGNoYW5nZVNlY29uZHMoc3RlcDogbnVtYmVyLCBzb3VyY2U6IFRpbWVDaGFuZ2VTb3VyY2UgPSAnJyk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlc2V0VmFsaWRhdGlvbigpO1xuICAgICAgICB0aGlzLl9zdG9yZS5jaGFuZ2VTZWNvbmRzKHsgc3RlcCwgc291cmNlIH0pO1xuICAgIH1cblxuICAgIHVwZGF0ZUhvdXJzKGhvdXJzOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXNldFZhbGlkYXRpb24oKTtcbiAgICAgICAgdGhpcy5ob3VycyA9IGhvdXJzO1xuXG4gICAgICAgIGNvbnN0IGlzVmFsaWQgPSBpc0hvdXJJbnB1dFZhbGlkKHRoaXMuaG91cnMsIHRoaXMuaXNQTSgpKSAmJiB0aGlzLmlzVmFsaWRMaW1pdCgpO1xuXG4gICAgICAgIGlmICghaXNWYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5pbnZhbGlkSG91cnMgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5pc1ZhbGlkLmVtaXQoZmFsc2UpO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZShudWxsKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fdXBkYXRlVGltZSgpO1xuICAgIH1cblxuICAgIHVwZGF0ZU1pbnV0ZXMobWludXRlczogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucmVzZXRWYWxpZGF0aW9uKCk7XG4gICAgICAgIHRoaXMubWludXRlcyA9IG1pbnV0ZXM7XG5cbiAgICAgICAgY29uc3QgaXNWYWxpZCA9IGlzTWludXRlSW5wdXRWYWxpZCh0aGlzLm1pbnV0ZXMpICYmIHRoaXMuaXNWYWxpZExpbWl0KCk7XG5cbiAgICAgICAgaWYgKCFpc1ZhbGlkKSB7XG4gICAgICAgICAgICB0aGlzLmludmFsaWRNaW51dGVzID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuaXNWYWxpZC5lbWl0KGZhbHNlKTtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UobnVsbCk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3VwZGF0ZVRpbWUoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVTZWNvbmRzKHNlY29uZHM6IHN0cmluZykge1xuICAgICAgICB0aGlzLnJlc2V0VmFsaWRhdGlvbigpO1xuICAgICAgICB0aGlzLnNlY29uZHMgPSBzZWNvbmRzO1xuXG4gICAgICAgIGNvbnN0IGlzVmFsaWQgPSBpc1NlY29uZElucHV0VmFsaWQodGhpcy5zZWNvbmRzKSAmJiB0aGlzLmlzVmFsaWRMaW1pdCgpO1xuXG4gICAgICAgIGlmICghaXNWYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5pbnZhbGlkU2Vjb25kcyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmlzVmFsaWQuZW1pdChmYWxzZSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKG51bGwpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl91cGRhdGVUaW1lKCk7XG4gICAgfVxuXG4gICAgaXNWYWxpZExpbWl0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gaXNJbnB1dExpbWl0VmFsaWQoXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaG91cjogdGhpcy5ob3VycyxcbiAgICAgICAgICAgICAgICBtaW51dGU6IHRoaXMubWludXRlcyxcbiAgICAgICAgICAgICAgICBzZWNvbmRzOiB0aGlzLnNlY29uZHMsXG4gICAgICAgICAgICAgICAgaXNQTTogdGhpcy5pc1BNKClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0aGlzLm1heCxcbiAgICAgICAgICAgIHRoaXMubWluXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgX3VwZGF0ZVRpbWUoKSB7XG4gICAgICAgIGNvbnN0IF9zZWNvbmRzID0gdGhpcy5zaG93U2Vjb25kcyA/IHRoaXMuc2Vjb25kcyA6IHZvaWQgMDtcbiAgICAgICAgY29uc3QgX21pbnV0ZXMgPSB0aGlzLnNob3dNaW51dGVzID8gdGhpcy5taW51dGVzIDogdm9pZCAwO1xuICAgICAgICBpZiAoIWlzSW5wdXRWYWxpZCh0aGlzLmhvdXJzLCBfbWludXRlcywgX3NlY29uZHMsIHRoaXMuaXNQTSgpKSkge1xuICAgICAgICAgICAgdGhpcy5pc1ZhbGlkLmVtaXQoZmFsc2UpO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZShudWxsKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc3RvcmUuc2V0VGltZSh7XG4gICAgICAgICAgICBob3VyOiB0aGlzLmhvdXJzLFxuICAgICAgICAgICAgbWludXRlOiB0aGlzLm1pbnV0ZXMsXG4gICAgICAgICAgICBzZWNvbmRzOiB0aGlzLnNlY29uZHMsXG4gICAgICAgICAgICBpc1BNOiB0aGlzLmlzUE0oKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0b2dnbGVNZXJpZGlhbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLnNob3dNZXJpZGlhbiB8fCAhdGhpcy5pc0VkaXRhYmxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBfaG91cnNQZXJEYXlIYWxmID0gMTI7XG4gICAgICAgIHRoaXMuX3N0b3JlLmNoYW5nZUhvdXJzKHtcbiAgICAgICAgICAgIHN0ZXA6IF9ob3Vyc1BlckRheUhhbGYsXG4gICAgICAgICAgICBzb3VyY2U6ICcnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUob2JqOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkIHwgRGF0ZSk6IHZvaWQge1xuICAgICAgICBpZiAoaXNWYWxpZERhdGUob2JqKSkge1xuICAgICAgICAgICAgdGhpcy5fc3RvcmUud3JpdGVWYWx1ZShwYXJzZVRpbWUob2JqKSk7XG4gICAgICAgIH0gZWxzZSBpZiAob2JqID09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMuX3N0b3JlLndyaXRlVmFsdWUobnVsbCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB7fSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHt9KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aW1lclBpY2tlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3JlbmRlclRpbWUodmFsdWU6IHN0cmluZyB8IERhdGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpc1ZhbGlkRGF0ZSh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuaG91cnMgPSAnJztcbiAgICAgICAgICAgIHRoaXMubWludXRlcyA9ICcnO1xuICAgICAgICAgICAgdGhpcy5zZWNvbmRzID0gJyc7XG4gICAgICAgICAgICB0aGlzLm1lcmlkaWFuID0gdGhpcy5tZXJpZGlhbnNbMF07XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IF92YWx1ZSA9IHBhcnNlVGltZSh2YWx1ZSk7XG4gICAgICAgIGNvbnN0IF9ob3Vyc1BlckRheUhhbGYgPSAxMjtcbiAgICAgICAgbGV0IF9ob3VycyA9IF92YWx1ZS5nZXRIb3VycygpO1xuXG4gICAgICAgIGlmICh0aGlzLnNob3dNZXJpZGlhbikge1xuICAgICAgICAgICAgdGhpcy5tZXJpZGlhbiA9IHRoaXMubWVyaWRpYW5zW19ob3VycyA+PSBfaG91cnNQZXJEYXlIYWxmID8gMSA6IDBdO1xuICAgICAgICAgICAgX2hvdXJzID0gX2hvdXJzICUgX2hvdXJzUGVyRGF5SGFsZjtcbiAgICAgICAgICAgIC8vIHNob3VsZCBiZSAxMiBQTSwgbm90IDAwIFBNXG4gICAgICAgICAgICBpZiAoX2hvdXJzID09PSAwKSB7XG4gICAgICAgICAgICAgICAgX2hvdXJzID0gX2hvdXJzUGVyRGF5SGFsZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaG91cnMgPSBwYWROdW1iZXIoX2hvdXJzKTtcbiAgICAgICAgdGhpcy5taW51dGVzID0gcGFkTnVtYmVyKF92YWx1ZS5nZXRNaW51dGVzKCkpO1xuICAgICAgICB0aGlzLnNlY29uZHMgPSBwYWROdW1iZXIoX3ZhbHVlLmdldFVUQ1NlY29uZHMoKSk7XG4gICAgfVxufVxuIiwiPHRhYmxlPlxuICA8dGJvZHk+XG4gICAgPHRyIGNsYXNzPVwidGV4dC1jZW50ZXJcIiBbaGlkZGVuXT1cIiFzaG93U3Bpbm5lcnNcIj5cbiAgICAgIDwhLS0gaW5jcmVtZW50IGhvdXJzIGJ1dHRvbi0tPlxuICAgICAgPHRkPlxuICAgICAgICA8YSBjbGFzcz1cImJ0biBidG4tbGlua1wiIFtjbGFzcy5kaXNhYmxlZF09XCIhY2FuSW5jcmVtZW50SG91cnMgfHwgIWlzRWRpdGFibGVcIiAoY2xpY2spPVwiY2hhbmdlSG91cnMoaG91clN0ZXApXCJcbiAgICAgICAgICA+PHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi11cFwiPjwvc3BhblxuICAgICAgICA+PC9hPlxuICAgICAgPC90ZD5cbiAgICAgIDwhLS0gZGl2aWRlciAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNaW51dGVzXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gaW5jcmVtZW50IG1pbnV0ZXMgYnV0dG9uIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01pbnV0ZXNcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJidG4gYnRuLWxpbmtcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIWNhbkluY3JlbWVudE1pbnV0ZXMgfHwgIWlzRWRpdGFibGVcIiAoY2xpY2spPVwiY2hhbmdlTWludXRlcyhtaW51dGVTdGVwKVwiXG4gICAgICAgICAgPjxzcGFuIGNsYXNzPVwidGh5LWNoZXZyb24gdGh5LWNoZXZyb24tdXBcIj48L3NwYW5cbiAgICAgICAgPjwvYT5cbiAgICAgIDwvdGQ+XG4gICAgICA8IS0tIGRpdmlkZXIgLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93U2Vjb25kc1wiPiZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIGluY3JlbWVudCBzZWNvbmRzIGJ1dHRvbiAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dTZWNvbmRzXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFjYW5JbmNyZW1lbnRTZWNvbmRzIHx8ICFpc0VkaXRhYmxlXCIgKGNsaWNrKT1cImNoYW5nZVNlY29uZHMoc2Vjb25kc1N0ZXApXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi11cFwiPjwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC90ZD5cbiAgICAgIDwhLS0gc3BhY2UgYmV0d2VlbiAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNZXJpZGlhblwiPiZuYnNwOyZuYnNwOyZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIG1lcmlkaWFuIHBsYWNlaG9sZGVyLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWVyaWRpYW5cIj48L3RkPlxuICAgIDwvdHI+XG4gICAgPHRyPlxuICAgICAgPCEtLSBob3VycyAtLT5cbiAgICAgIDx0ZCBjbGFzcz1cImZvcm0tZ3JvdXBcIiBbY2xhc3MuaGFzLWVycm9yXT1cImludmFsaWRIb3Vyc1wiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgW2NsYXNzLmlzLWludmFsaWRdPVwiaW52YWxpZEhvdXJzXCJcbiAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCB0ZXh0LWNlbnRlciB0aHktdGltZS1waWNrZXItZmllbGRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJob3Vyc1BsYWNlaG9sZGVyXCJcbiAgICAgICAgICBtYXhsZW5ndGg9XCIyXCJcbiAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlJbnB1dFwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICBbdmFsdWVdPVwiaG91cnNcIlxuICAgICAgICAgICh3aGVlbCk9XCJwcmV2RGVmKCRldmVudCk7IGNoYW5nZUhvdXJzKGhvdXJTdGVwICogd2hlZWxTaWduKCRldmVudCksICd3aGVlbCcpXCJcbiAgICAgICAgICAoa2V5ZG93bi5BcnJvd1VwKT1cImNoYW5nZUhvdXJzKGhvdXJTdGVwLCAna2V5JylcIlxuICAgICAgICAgIChrZXlkb3duLkFycm93RG93bik9XCJjaGFuZ2VIb3VycygtaG91clN0ZXAsICdrZXknKVwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVIb3VycygkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgIC8+XG4gICAgICA8L3RkPlxuXG4gICAgICA8IS0tIGRpdmlkZXIgLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWludXRlc1wiPiZuYnNwOzombmJzcDs8L3RkPlxuICAgICAgPCEtLSBtaW51dGVzIC0tPlxuICAgICAgPHRkIGNsYXNzPVwiZm9ybS1ncm91cFwiICpuZ0lmPVwic2hvd01pbnV0ZXNcIiBbY2xhc3MuaGFzLWVycm9yXT1cImludmFsaWRNaW51dGVzXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBbY2xhc3MuaXMtaW52YWxpZF09XCJpbnZhbGlkTWludXRlc1wiXG4gICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgdGV4dC1jZW50ZXIgdGh5LXRpbWUtcGlja2VyLWZpZWxkXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwibWludXRlc1BsYWNlaG9sZGVyXCJcbiAgICAgICAgICBtYXhsZW5ndGg9XCIyXCJcbiAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlJbnB1dFwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICBbdmFsdWVdPVwibWludXRlc1wiXG4gICAgICAgICAgKHdoZWVsKT1cInByZXZEZWYoJGV2ZW50KTsgY2hhbmdlTWludXRlcyhtaW51dGVTdGVwICogd2hlZWxTaWduKCRldmVudCksICd3aGVlbCcpXCJcbiAgICAgICAgICAoa2V5ZG93bi5BcnJvd1VwKT1cImNoYW5nZU1pbnV0ZXMobWludXRlU3RlcCwgJ2tleScpXCJcbiAgICAgICAgICAoa2V5ZG93bi5BcnJvd0Rvd24pPVwiY2hhbmdlTWludXRlcygtbWludXRlU3RlcCwgJ2tleScpXCJcbiAgICAgICAgICAoY2hhbmdlKT1cInVwZGF0ZU1pbnV0ZXMoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxuICAgICAgICAvPlxuICAgICAgPC90ZD5cbiAgICAgIDwhLS0gZGl2aWRlciAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dTZWNvbmRzXCI+Jm5ic3A7OiZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIHNlY29uZHMgLS0+XG4gICAgICA8dGQgY2xhc3M9XCJmb3JtLWdyb3VwXCIgKm5nSWY9XCJzaG93U2Vjb25kc1wiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaW52YWxpZFNlY29uZHNcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIFtjbGFzcy5pcy1pbnZhbGlkXT1cImludmFsaWRTZWNvbmRzXCJcbiAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCB0ZXh0LWNlbnRlciB0aHktdGltZS1waWNrZXItZmllbGRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJzZWNvbmRzUGxhY2Vob2xkZXJcIlxuICAgICAgICAgIG1heGxlbmd0aD1cIjJcIlxuICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seUlucHV0XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFt2YWx1ZV09XCJzZWNvbmRzXCJcbiAgICAgICAgICAod2hlZWwpPVwicHJldkRlZigkZXZlbnQpOyBjaGFuZ2VTZWNvbmRzKHNlY29uZHNTdGVwICogd2hlZWxTaWduKCRldmVudCksICd3aGVlbCcpXCJcbiAgICAgICAgICAoa2V5ZG93bi5BcnJvd1VwKT1cImNoYW5nZVNlY29uZHMoc2Vjb25kc1N0ZXAsICdrZXknKVwiXG4gICAgICAgICAgKGtleWRvd24uQXJyb3dEb3duKT1cImNoYW5nZVNlY29uZHMoLXNlY29uZHNTdGVwLCAna2V5JylcIlxuICAgICAgICAgIChjaGFuZ2UpPVwidXBkYXRlU2Vjb25kcygkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgIC8+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBzcGFjZSBiZXR3ZWVuIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01lcmlkaWFuXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD5cbiAgICAgIDwhLS0gbWVyaWRpYW4gLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWVyaWRpYW5cIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IHRleHQtY2VudGVyXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzRWRpdGFibGUgfHwgIWNhblRvZ2dsZU1lcmlkaWFuXCJcbiAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIWlzRWRpdGFibGUgfHwgIWNhblRvZ2dsZU1lcmlkaWFuXCJcbiAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlTWVyaWRpYW4oKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBtZXJpZGlhbiB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvdGQ+XG4gICAgPC90cj5cbiAgICA8dHIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiIFtoaWRkZW5dPVwiIXNob3dTcGlubmVyc1wiPlxuICAgICAgPCEtLSBkZWNyZW1lbnQgaG91cnMgYnV0dG9uLS0+XG4gICAgICA8dGQ+XG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFjYW5EZWNyZW1lbnRIb3VycyB8fCAhaXNFZGl0YWJsZVwiIChjbGljayk9XCJjaGFuZ2VIb3VycygtaG91clN0ZXApXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi1kb3duXCI+PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBkaXZpZGVyIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd01pbnV0ZXNcIj4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPlxuICAgICAgPCEtLSBkZWNyZW1lbnQgbWludXRlcyBidXR0b24tLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNaW51dGVzXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFjYW5EZWNyZW1lbnRNaW51dGVzIHx8ICFpc0VkaXRhYmxlXCIgKGNsaWNrKT1cImNoYW5nZU1pbnV0ZXMoLW1pbnV0ZVN0ZXApXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aHktY2hldnJvbiB0aHktY2hldnJvbi1kb3duXCI+PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L3RkPlxuICAgICAgPCEtLSBkaXZpZGVyIC0tPlxuICAgICAgPHRkICpuZ0lmPVwic2hvd1NlY29uZHNcIj4mbmJzcDs8L3RkPlxuICAgICAgPCEtLSBkZWNyZW1lbnQgc2Vjb25kcyBidXR0b24tLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dTZWNvbmRzXCI+XG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saW5rXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFjYW5EZWNyZW1lbnRTZWNvbmRzIHx8ICFpc0VkaXRhYmxlXCIgKGNsaWNrKT1cImNoYW5nZVNlY29uZHMoLXNlY29uZHNTdGVwKVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGh5LWNoZXZyb24gdGh5LWNoZXZyb24tZG93blwiPjwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC90ZD5cbiAgICAgIDwhLS0gc3BhY2UgYmV0d2VlbiAtLT5cbiAgICAgIDx0ZCAqbmdJZj1cInNob3dNZXJpZGlhblwiPiZuYnNwOyZuYnNwOyZuYnNwOzwvdGQ+XG4gICAgICA8IS0tIG1lcmlkaWFuIHBsYWNlaG9sZGVyLS0+XG4gICAgICA8dGQgKm5nSWY9XCJzaG93TWVyaWRpYW5cIj48L3RkPlxuICAgIDwvdHI+XG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuIl19
@@ -36,10 +36,10 @@ export class TimePickerConfig {
36
36
  /** placeholder for seconds field in timePicker */
37
37
  this.secondsPlaceholder = 'SS';
38
38
  }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: TimePickerConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
40
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: TimePickerConfig }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TimePickerConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
40
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TimePickerConfig }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: TimePickerConfig, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TimePickerConfig, decorators: [{
43
43
  type: Injectable
44
44
  }] });
45
45
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5uZXItdGltZS1waWNrZXIuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3RpbWUtcGlja2VyL2lubmVyL2lubmVyLXRpbWUtcGlja2VyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQzs7R0FFRztBQUVILE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFSSx3QkFBd0I7UUFDeEIsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLHdCQUF3QjtRQUN4QixlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsMkJBQTJCO1FBQzNCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLCtGQUErRjtRQUMvRixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNwQixzQ0FBc0M7UUFDdEMsY0FBUyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3pCLHdEQUF3RDtRQUN4RCxrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0Qix3REFBd0Q7UUFDeEQsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixzRUFBc0U7UUFDdEUsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQiwwR0FBMEc7UUFDMUcsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixzRUFBc0U7UUFDdEUsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsaUNBQWlDO1FBQ2pDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGlDQUFpQztRQUNqQyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUtuQixnREFBZ0Q7UUFDaEQscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLGtEQUFrRDtRQUNsRCx1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDMUIsa0RBQWtEO1FBQ2xELHVCQUFrQixHQUFHLElBQUksQ0FBQztLQUM3Qjs4R0FuQ1ksZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUaW1lUGlja2VyQ29uZmlnIHtcbiAgICAvKiogaG91cnMgY2hhbmdlIHN0ZXAgKi9cbiAgICBob3VyU3RlcCA9IDE7XG4gICAgLyoqIGhvdXJzIGNoYW5nZSBzdGVwICovXG4gICAgbWludXRlU3RlcCA9IDU7XG4gICAgLyoqIHNlY29uZHMgY2hhbmdlcyBzdGVwICovXG4gICAgc2Vjb25kc1N0ZXAgPSAxMDtcbiAgICAvKiogaWYgdHJ1ZSB3b3JrcyBpbiAxMkggbW9kZSBhbmQgZGlzcGxheXMgQU0vUE0uIElmIGZhbHNlIHdvcmtzIGluIDI0SCBtb2RlIGFuZCBoaWRlcyBBTS9QTSAqL1xuICAgIHNob3dNZXJpZGlhbiA9IHRydWU7XG4gICAgLyoqIG1lcmlkaWFuIGxhYmVscyBiYXNlZCBvbiBsb2NhbGUgKi9cbiAgICBtZXJpZGlhbnMgPSBbJ0FNJywgJ1BNJ107XG4gICAgLyoqIGlmIHRydWUgaG91cnMgYW5kIG1pbnV0ZXMgZmllbGRzIHdpbGwgYmUgcmVhZG9ubHkgKi9cbiAgICByZWFkb25seUlucHV0ID0gZmFsc2U7XG4gICAgLyoqIGlmIHRydWUgaG91cnMgYW5kIG1pbnV0ZXMgZmllbGRzIHdpbGwgYmUgZGlzYWJsZWQgKi9cbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIC8qKiBpZiB0cnVlIHNjcm9sbCBpbnNpZGUgaG91cnMgYW5kIG1pbnV0ZXMgaW5wdXRzIHdpbGwgY2hhbmdlIHRpbWUgKi9cbiAgICBtb3VzZXdoZWVsID0gdHJ1ZTtcbiAgICAvKiogaWYgdHJ1ZSB0aGUgdmFsdWVzIG9mIGhvdXJzIGFuZCBtaW51dGVzIGNhbiBiZSBjaGFuZ2VkIHVzaW5nIHRoZSB1cC9kb3duIGFycm93IGtleXMgb24gdGhlIGtleWJvYXJkICovXG4gICAgYXJyb3dLZXlzID0gdHJ1ZTtcbiAgICAvKiogaWYgdHJ1ZSBzcGlubmVyIGFycm93cyBhYm92ZSBhbmQgYmVsb3cgdGhlIGlucHV0cyB3aWxsIGJlIHNob3duICovXG4gICAgc2hvd1NwaW5uZXJzID0gdHJ1ZTtcbiAgICAvKiogc2hvdyBzZWNvbmRzIGluIHRpbWVQaWNrZXIgKi9cbiAgICBzaG93U2Vjb25kcyA9IGZhbHNlO1xuICAgIC8qKiBzaG93IG1pbnV0ZXMgaW4gdGltZVBpY2tlciAqL1xuICAgIHNob3dNaW51dGVzID0gdHJ1ZTtcbiAgICAvKiogbWluaW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIG1pbjogRGF0ZTtcbiAgICAvKiogbWF4aW11bSB0aW1lIHVzZXIgY2FuIHNlbGVjdCAqL1xuICAgIG1heDogRGF0ZTtcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIGhvdXJzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBob3Vyc1BsYWNlaG9sZGVyID0gJ0hIJztcbiAgICAvKiogcGxhY2Vob2xkZXIgZm9yIG1pbnV0ZXMgZmllbGQgaW4gdGltZVBpY2tlciAqL1xuICAgIG1pbnV0ZXNQbGFjZWhvbGRlciA9ICdNTSc7XG4gICAgLyoqIHBsYWNlaG9sZGVyIGZvciBzZWNvbmRzIGZpZWxkIGluIHRpbWVQaWNrZXIgKi9cbiAgICBzZWNvbmRzUGxhY2Vob2xkZXIgPSAnU1MnO1xufVxuIl19
@@ -86,8 +86,8 @@ export class ThyTimePickerStore extends MiniStore {
86
86
  }
87
87
  this.setState(_newState);
88
88
  }
89
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTimePickerStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
90
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTimePickerStore }); }
89
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTimePickerStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
90
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTimePickerStore }); }
91
91
  }
92
92
  __decorate([
93
93
  MiniAction(),
@@ -125,7 +125,7 @@ __decorate([
125
125
  __metadata("design:paramtypes", [Object]),
126
126
  __metadata("design:returntype", void 0)
127
127
  ], ThyTimePickerStore.prototype, "updateControls", null);
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: ThyTimePickerStore, decorators: [{
128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: ThyTimePickerStore, decorators: [{
129
129
  type: Injectable
130
130
  }], ctorParameters: () => [], propDecorators: { writeValue: [], changeHours: [], changeMinutes: [], changeSeconds: [], setTime: [], updateControls: [] } });
131
131
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5uZXItdGltZS1waWNrZXIuc3RvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdGltZS1waWNrZXIvaW5uZXIvaW5uZXItdGltZS1waWNrZXIuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0SSxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQVE5RCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQW9CO0lBQ3pDLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUksZ0JBQWdCLEVBQUU7SUFDOUIsUUFBUSxFQUFFO1FBQ04saUJBQWlCLEVBQUUsSUFBSTtRQUN2QixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLG1CQUFtQixFQUFFLElBQUk7UUFFekIsaUJBQWlCLEVBQUUsSUFBSTtRQUN2QixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLG1CQUFtQixFQUFFLElBQUk7UUFFekIsaUJBQWlCLEVBQUUsSUFBSTtLQUMxQjtDQUNKLENBQUM7QUFFRjs7R0FFRztBQUVILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxTQUEwQjtJQUM5RDtRQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBR0QsVUFBVSxDQUFDLEtBQVc7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFHRCxXQUFXLENBQUMsS0FBc0I7UUFDOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2pGLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUUvRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDbEYsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR0QsYUFBYSxDQUFDLEtBQXNCO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ25GLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVqRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDbEYsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQztRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR0QsYUFBYSxDQUFDLEtBQXNCO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDNUIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ25GLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNyQyxPQUFPLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDdEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2xGLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUdELE9BQU8sQ0FBQyxLQUFXO1FBQ2YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ2hDLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUdELGNBQWMsQ0FBQyxLQUErQjtRQUMxQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzVCLE1BQU0saUJBQWlCLEdBQUcsa0JBQWtCLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxNQUFNLFNBQVMsR0FBb0I7WUFDL0IsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsUUFBUSxFQUFFLGlCQUFpQjtTQUM5QixDQUFDO1FBRUYsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzlELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNkLFNBQVMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzVDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQXhGUSxrQkFBa0I7a0hBQWxCLGtCQUFrQjs7QUFNM0I7SUFEQyxVQUFVLEVBQUU7O3FDQUNLLElBQUk7O29EQUVyQjtBQUdEO0lBREMsVUFBVSxFQUFFOzs7O3FEQWNaO0FBR0Q7SUFEQyxVQUFVLEVBQUU7Ozs7dURBY1o7QUFHRDtJQURDLFVBQVUsRUFBRTs7Ozt1REFnQlo7QUFHRDtJQURDLFVBQVUsRUFBRTs7OztpREFTWjtBQUdEO0lBREMsVUFBVSxFQUFFOzs7O3dEQWlCWjsyRkF4RlEsa0JBQWtCO2tCQUQ5QixVQUFVO3dEQU9QLFVBQVUsTUFLVixXQUFXLE1BZ0JYLGFBQWEsTUFnQmIsYUFBYSxNQWtCYixPQUFPLE1BV1AsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1pbmlTdG9yZSwgTWluaUFjdGlvbiB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaW1lQ2hhbmdlRXZlbnQsIFRpbWVQaWNrZXJDb21wb25lbnRTdGF0ZSwgVGltZSwgVGltZVBpY2tlckNvbnRyb2xzIH0gZnJvbSAnLi9pbm5lci10aW1lLXBpY2tlci5jbGFzcyc7XG5pbXBvcnQgeyBjYW5DaGFuZ2VIb3VycywgY2FuQ2hhbmdlTWludXRlcywgY2FuQ2hhbmdlU2Vjb25kcywgY2FuQ2hhbmdlVmFsdWUsIHRpbWVQaWNrZXJDb250cm9scyB9IGZyb20gJy4uL3RpbWUtcGlja2VyLWNvbnRyb2xzLnV0aWwnO1xuaW1wb3J0IHsgY2hhbmdlVGltZSwgc2V0VGltZSwgaXNWYWxpZExpbWl0IH0gZnJvbSAnLi4vdGltZS1waWNrZXIudXRpbHMnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGltZVBpY2tlckNvbmZpZyB9IGZyb20gJy4vaW5uZXItdGltZS1waWNrZXIuY29uZmlnJztcblxuZXhwb3J0IGludGVyZmFjZSBUaW1lUGlja2VyU3RhdGUge1xuICAgIHZhbHVlOiBEYXRlO1xuICAgIGNvbmZpZzogVGltZVBpY2tlckNvbXBvbmVudFN0YXRlO1xuICAgIGNvbnRyb2xzOiBUaW1lUGlja2VyQ29udHJvbHM7XG59XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IFRpbWVQaWNrZXJTdGF0ZSA9IHtcbiAgICB2YWx1ZTogbnVsbCxcbiAgICBjb25maWc6IG5ldyBUaW1lUGlja2VyQ29uZmlnKCksXG4gICAgY29udHJvbHM6IHtcbiAgICAgICAgY2FuSW5jcmVtZW50SG91cnM6IHRydWUsXG4gICAgICAgIGNhbkluY3JlbWVudE1pbnV0ZXM6IHRydWUsXG4gICAgICAgIGNhbkluY3JlbWVudFNlY29uZHM6IHRydWUsXG5cbiAgICAgICAgY2FuRGVjcmVtZW50SG91cnM6IHRydWUsXG4gICAgICAgIGNhbkRlY3JlbWVudE1pbnV0ZXM6IHRydWUsXG4gICAgICAgIGNhbkRlY3JlbWVudFNlY29uZHM6IHRydWUsXG5cbiAgICAgICAgY2FuVG9nZ2xlTWVyaWRpYW46IHRydWVcbiAgICB9XG59O1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGh5VGltZVBpY2tlclN0b3JlIGV4dGVuZHMgTWluaVN0b3JlPFRpbWVQaWNrZXJTdGF0ZT4ge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihpbml0aWFsU3RhdGUpO1xuICAgIH1cblxuICAgIEBNaW5pQWN0aW9uKClcbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBEYXRlKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyB2YWx1ZTogdmFsdWUgfSk7XG4gICAgfVxuXG4gICAgQE1pbmlBY3Rpb24oKVxuICAgIGNoYW5nZUhvdXJzKGV2ZW50OiBUaW1lQ2hhbmdlRXZlbnQpIHtcbiAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnNuYXBzaG90O1xuICAgICAgICBpZiAoIWNhbkNoYW5nZVZhbHVlKHN0YXRlLmNvbmZpZywgZXZlbnQpIHx8ICFjYW5DaGFuZ2VIb3VycyhldmVudCwgc3RhdGUuY29udHJvbHMpKSB7XG4gICAgICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBfbmV3VGltZSA9IGNoYW5nZVRpbWUoc3RhdGUudmFsdWUsIHsgaG91cjogZXZlbnQuc3RlcCB9KTtcblxuICAgICAgICBpZiAoKHN0YXRlLmNvbmZpZy5tYXggfHwgc3RhdGUuY29uZmlnLm1pbikgJiYgIWlzVmFsaWRMaW1pdChzdGF0ZS5jb25maWcsIF9uZXdUaW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IHZhbHVlOiBfbmV3VGltZSB9KTtcbiAgICB9XG5cbiAgICBATWluaUFjdGlvbigpXG4gICAgY2hhbmdlTWludXRlcyhldmVudDogVGltZUNoYW5nZUV2ZW50KSB7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5zbmFwc2hvdDtcbiAgICAgICAgaWYgKCFjYW5DaGFuZ2VWYWx1ZShzdGF0ZS5jb25maWcsIGV2ZW50KSB8fCAhY2FuQ2hhbmdlTWludXRlcyhldmVudCwgc3RhdGUuY29udHJvbHMpKSB7XG4gICAgICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBfbmV3VGltZSA9IGNoYW5nZVRpbWUoc3RhdGUudmFsdWUsIHsgbWludXRlOiBldmVudC5zdGVwIH0pO1xuXG4gICAgICAgIGlmICgoc3RhdGUuY29uZmlnLm1heCB8fCBzdGF0ZS5jb25maWcubWluKSAmJiAhaXNWYWxpZExpbWl0KHN0YXRlLmNvbmZpZywgX25ld1RpbWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gc3RhdGU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldFN0YXRlKHsgdmFsdWU6IF9uZXdUaW1lIH0pO1xuICAgIH1cblxuICAgIEBNaW5pQWN0aW9uKClcbiAgICBjaGFuZ2VTZWNvbmRzKGV2ZW50OiBUaW1lQ2hhbmdlRXZlbnQpIHtcbiAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnNuYXBzaG90O1xuICAgICAgICBpZiAoIWNhbkNoYW5nZVZhbHVlKHN0YXRlLmNvbmZpZywgZXZlbnQpIHx8ICFjYW5DaGFuZ2VTZWNvbmRzKGV2ZW50LCBzdGF0ZS5jb250cm9scykpIHtcbiAgICAgICAgICAgIHJldHVybiBzdGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IF9uZXdUaW1lID0gY2hhbmdlVGltZShzdGF0ZS52YWx1ZSwge1xuICAgICAgICAgICAgc2Vjb25kczogZXZlbnQuc3RlcFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoKHN0YXRlLmNvbmZpZy5tYXggfHwgc3RhdGUuY29uZmlnLm1pbikgJiYgIWlzVmFsaWRMaW1pdChzdGF0ZS5jb25maWcsIF9uZXdUaW1lKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7IHZhbHVlOiBfbmV3VGltZSB9KTtcbiAgICB9XG5cbiAgICBATWluaUFjdGlvbigpXG4gICAgc2V0VGltZSh2YWx1ZTogVGltZSkge1xuICAgICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuc25hcHNob3Q7XG4gICAgICAgIGlmICghY2FuQ2hhbmdlVmFsdWUoc3RhdGUuY29uZmlnKSkge1xuICAgICAgICAgICAgcmV0dXJuIHN0YXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgX25ld1RpbWUgPSBzZXRUaW1lKHN0YXRlLnZhbHVlLCB2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyB2YWx1ZTogX25ld1RpbWUgfSk7XG4gICAgfVxuXG4gICAgQE1pbmlBY3Rpb24oKVxuICAgIHVwZGF0ZUNvbnRyb2xzKHZhbHVlOiBUaW1lUGlja2VyQ29tcG9uZW50U3RhdGUpIHtcbiAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnNuYXBzaG90O1xuICAgICAgICBjb25zdCBfbmV3Q29udHJvbHNTdGF0ZSA9IHRpbWVQaWNrZXJDb250cm9scyhzdGF0ZS52YWx1ZSwgdmFsdWUpO1xuICAgICAgICBjb25zdCBfbmV3U3RhdGU6IFRpbWVQaWNrZXJTdGF0ZSA9IHtcbiAgICAgICAgICAgIHZhbHVlOiBzdGF0ZS52YWx1ZSxcbiAgICAgICAgICAgIGNvbmZpZzogdmFsdWUsXG4gICAgICAgICAgICBjb250cm9sczogX25ld0NvbnRyb2xzU3RhdGVcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoc3RhdGUuY29uZmlnLnNob3dNZXJpZGlhbiAhPT0gX25ld1N0YXRlLmNvbmZpZy5zaG93TWVyaWRpYW4pIHtcbiAgICAgICAgICAgIGlmIChzdGF0ZS52YWx1ZSkge1xuICAgICAgICAgICAgICAgIF9uZXdTdGF0ZS52YWx1ZSA9IG5ldyBEYXRlKHN0YXRlLnZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0U3RhdGUoX25ld1N0YXRlKTtcbiAgICB9XG59XG4iXX0=