@tetacom/ng-components 1.4.4 → 1.4.5

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 (320) hide show
  1. package/assets/icons.svg +54 -0
  2. package/component/avatar/avatar/avatar.component.d.ts +1 -1
  3. package/component/button/button/button.component.d.ts +1 -1
  4. package/component/date-picker/base-calendar.d.ts +1 -1
  5. package/component/date-picker/base-picker.d.ts +1 -1
  6. package/component/date-picker/date-picker/date-calendar/date-calendar.component.d.ts +1 -1
  7. package/component/date-picker/date-picker/date-picker.component.d.ts +1 -1
  8. package/component/date-picker/date-range/date-range.component.d.ts +1 -1
  9. package/component/date-picker/date-range/range-calendar/range-calendar.component.d.ts +1 -1
  10. package/component/date-picker/day-picker/day-item/day-item.component.d.ts +1 -1
  11. package/component/date-picker/day-picker/day-picker.component.d.ts +4 -4
  12. package/component/date-picker/month-picker/month-picker.component.d.ts +2 -2
  13. package/component/date-picker/public-api.d.ts +2 -2
  14. package/component/date-picker/year-picker/year-picker.component.d.ts +3 -3
  15. package/component/filter/boolean-filter/boolean-filter.component.d.ts +3 -3
  16. package/component/message/model/message.d.ts +1 -1
  17. package/component/switch/switch/switch.component.d.ts +1 -1
  18. package/component/table/table-row/table-row.component.d.ts +2 -2
  19. package/component/tree/tree/tree.component.d.ts +1 -1
  20. package/docs/avatarDocs.mdx +78 -72
  21. package/docs/datePickerDocs.mdx +3 -3
  22. package/docs/dateRangeDocs.mdx +3 -3
  23. package/docs/delimiterDocs.mdx +78 -78
  24. package/docs/dropdownDocs.mdx +143 -123
  25. package/docs/expandCardlDocs.mdx +49 -45
  26. package/docs/expandPanelDocs.mdx +104 -92
  27. package/docs/fileAreaDocs.mdx +64 -59
  28. package/docs/inputDocs.mdx +70 -67
  29. package/docs/listDocs.mdx +14 -8
  30. package/docs/messageDocs.mdx +47 -34
  31. package/docs/progressBarDocs.mdx +65 -51
  32. package/docs/propertyGridDocs.mdx +173 -115
  33. package/docs/radioDocs.mdx +92 -80
  34. package/docs/resizePanelDocs.mdx +79 -67
  35. package/docs/selectDocs.mdx +262 -220
  36. package/docs/switchDocs.mdx +86 -73
  37. package/docs/tagDocs.mdx +17 -11
  38. package/docs/toggleDocs.mdx +42 -36
  39. package/docs/toolbarDocs.mdx +14 -8
  40. package/docs/treeDocs.mdx +108 -89
  41. package/esm2022/common/contract/teta-content-ref.mjs +1 -1
  42. package/esm2022/common/enum/align.enum.mjs +1 -1
  43. package/esm2022/common/enum/vertical-align.enum.mjs +1 -1
  44. package/esm2022/common/service/dynamic-component.service.mjs +1 -1
  45. package/esm2022/common/util/array-util.mjs +5 -7
  46. package/esm2022/common/util/dom-util.mjs +2 -3
  47. package/esm2022/common/util/position-util.mjs +6 -14
  48. package/esm2022/component/accordion/accordion-content.directive.mjs +2 -2
  49. package/esm2022/component/accordion/public-api.mjs +1 -1
  50. package/esm2022/component/autocomplete/autocomplete/autocomplete.component.mjs +2 -3
  51. package/esm2022/component/autocomplete/public-api.mjs +1 -1
  52. package/esm2022/component/avatar/avatar/avatar.component.mjs +4 -5
  53. package/esm2022/component/avatar/model/avatar-color.enum.mjs +1 -1
  54. package/esm2022/component/avatar/public-api.mjs +1 -1
  55. package/esm2022/component/button/button/button.component.mjs +2 -2
  56. package/esm2022/component/button/public-api.mjs +1 -1
  57. package/esm2022/component/chart-3d/chart3d/chart3d.component.mjs +11 -24
  58. package/esm2022/component/chart-3d/model/chart-3d-options.mjs +1 -1
  59. package/esm2022/component/chart-3d/public-api.mjs +1 -1
  60. package/esm2022/component/checkbox/checkbox/checkbox.component.mjs +3 -3
  61. package/esm2022/component/checkbox/public-api.mjs +1 -1
  62. package/esm2022/component/date-picker/base-calendar.mjs +7 -14
  63. package/esm2022/component/date-picker/base-picker.mjs +3 -2
  64. package/esm2022/component/date-picker/date-picker/date-calendar/date-calendar.component.mjs +4 -11
  65. package/esm2022/component/date-picker/date-picker/date-picker.component.mjs +5 -6
  66. package/esm2022/component/date-picker/date-range/date-range.component.mjs +6 -14
  67. package/esm2022/component/date-picker/date-range/range-calendar/range-calendar.component.mjs +4 -4
  68. package/esm2022/component/date-picker/day-picker/day-item/day-item.component.mjs +5 -6
  69. package/esm2022/component/date-picker/day-picker/day-picker.component.mjs +9 -9
  70. package/esm2022/component/date-picker/model/date-picker-mode.enum.mjs +1 -1
  71. package/esm2022/component/date-picker/model/from-to.model.mjs +1 -1
  72. package/esm2022/component/date-picker/model/min-max-date.model.mjs +1 -1
  73. package/esm2022/component/date-picker/month-picker/month-picker.component.mjs +4 -4
  74. package/esm2022/component/date-picker/public-api.mjs +3 -3
  75. package/esm2022/component/date-picker/year-picker/scroll-to-selected-year.directive.mjs +3 -3
  76. package/esm2022/component/date-picker/year-picker/year-picker.component.mjs +9 -7
  77. package/esm2022/component/delimiter/delimiter/delimiter.component.mjs +2 -2
  78. package/esm2022/component/delimiter/public-api.mjs +1 -1
  79. package/esm2022/component/divider/divider/divider.component.mjs +4 -4
  80. package/esm2022/component/divider/public-api.mjs +1 -1
  81. package/esm2022/component/dropdown/dropdown/dropdown.component.mjs +2 -3
  82. package/esm2022/component/dropdown/dropdown-base.mjs +11 -22
  83. package/esm2022/component/dropdown/dropdown-content.directive.mjs +2 -2
  84. package/esm2022/component/dropdown/dropdown-head.directive.mjs +2 -2
  85. package/esm2022/component/dropdown/dropdown.directive.mjs +4 -5
  86. package/esm2022/component/dropdown/public-api.mjs +1 -1
  87. package/esm2022/component/dynamic-component/popup-content/popup-content.component.mjs +4 -10
  88. package/esm2022/component/dynamic-component/public-api.mjs +1 -1
  89. package/esm2022/component/expand-card/expand-card/expand-card.component.mjs +4 -5
  90. package/esm2022/component/expand-card/expand-item/expand-item.component.mjs +4 -4
  91. package/esm2022/component/expand-card/public-api.mjs +1 -1
  92. package/esm2022/component/expand-panel/expand-panel/expand-panel.component.mjs +4 -9
  93. package/esm2022/component/expand-panel/expand-panel-content.directive.mjs +1 -1
  94. package/esm2022/component/expand-panel/expand-panel-head.directive.mjs +1 -1
  95. package/esm2022/component/expand-panel/public-api.mjs +1 -1
  96. package/esm2022/component/file-upload/file-item/file-item.component.mjs +1 -1
  97. package/esm2022/component/file-upload/file-upload-area/file-upload-area.component.mjs +3 -8
  98. package/esm2022/component/file-upload/public-api.mjs +1 -1
  99. package/esm2022/component/filter/base/filter-base.mjs +1 -1
  100. package/esm2022/component/filter/base/filter-component-base.mjs +1 -1
  101. package/esm2022/component/filter/boolean-filter/boolean-filter.component.mjs +5 -11
  102. package/esm2022/component/filter/contarct/boolean-filter.mjs +1 -1
  103. package/esm2022/component/filter/contarct/date-filter-value.mjs +3 -3
  104. package/esm2022/component/filter/contarct/date-filter.mjs +1 -1
  105. package/esm2022/component/filter/contarct/filter-component-map.mjs +2 -4
  106. package/esm2022/component/filter/contarct/filter-item.mjs +2 -2
  107. package/esm2022/component/filter/contarct/filter-state.mjs +1 -1
  108. package/esm2022/component/filter/contarct/list-filter.mjs +1 -1
  109. package/esm2022/component/filter/contarct/numeric-filter.mjs +1 -1
  110. package/esm2022/component/filter/contarct/sort-param.mjs +1 -1
  111. package/esm2022/component/filter/contarct/string-filter.mjs +1 -1
  112. package/esm2022/component/filter/date-filter/date-filter.component.mjs +3 -8
  113. package/esm2022/component/filter/enum/list-filter-type.enum.mjs +1 -1
  114. package/esm2022/component/filter/filter-host/filter-host.component.mjs +2 -3
  115. package/esm2022/component/filter/list-filter/list-filter.component.mjs +5 -14
  116. package/esm2022/component/filter/numeric-filter/numeric-filter.component.mjs +3 -8
  117. package/esm2022/component/filter/public-api.mjs +1 -1
  118. package/esm2022/component/filter/string-filter/string-filter.component.mjs +4 -9
  119. package/esm2022/component/icon/icon/icon.component.mjs +3 -3
  120. package/esm2022/component/icon/icon-file/icon-file.component.mjs +2 -3
  121. package/esm2022/component/icon/icon-sprite.directive.mjs +2 -2
  122. package/esm2022/component/icon/icon.service.mjs +5 -6
  123. package/esm2022/component/icon/public-api.mjs +1 -1
  124. package/esm2022/component/input/color-input/color-input.component.mjs +3 -3
  125. package/esm2022/component/input/form-group-title/form-group-title.component.mjs +2 -2
  126. package/esm2022/component/input/input/input.component.mjs +4 -4
  127. package/esm2022/component/input/public-api.mjs +1 -1
  128. package/esm2022/component/input/text-field/text-field.component.mjs +3 -9
  129. package/esm2022/component/message/message/message.component.mjs +3 -7
  130. package/esm2022/component/message/message-host/message-host.component.mjs +5 -9
  131. package/esm2022/component/message/message.service.mjs +2 -2
  132. package/esm2022/component/message/model/message.mjs +2 -2
  133. package/esm2022/component/message/public-api.mjs +1 -1
  134. package/esm2022/component/modal/dialog/dialog.component.mjs +3 -8
  135. package/esm2022/component/modal/dialog.service.mjs +1 -1
  136. package/esm2022/component/modal/modal-container/modal-container.component.mjs +4 -11
  137. package/esm2022/component/modal/modal.module.mjs +4 -12
  138. package/esm2022/component/modal/modal.service.mjs +1 -1
  139. package/esm2022/component/modal/model/current-modal.mjs +1 -1
  140. package/esm2022/component/modal/model/i-modal-result.mjs +1 -1
  141. package/esm2022/component/modal/model/modal-instance.mjs +1 -1
  142. package/esm2022/component/pager/model/pager-state.mjs +3 -2
  143. package/esm2022/component/pager/pager/pager.component.mjs +1 -1
  144. package/esm2022/component/pager/public-api.mjs +1 -1
  145. package/esm2022/component/pager/util/pager-util.mjs +1 -1
  146. package/esm2022/component/panel/panel/panel.component.mjs +4 -10
  147. package/esm2022/component/panel/public-api.mjs +1 -1
  148. package/esm2022/component/progress-bar/progress-bar/progress-bar.component.mjs +5 -6
  149. package/esm2022/component/progress-bar/public-api.mjs +1 -1
  150. package/esm2022/component/property-grid/property-grid/property-grid-group/property-grid-group.component.mjs +4 -4
  151. package/esm2022/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +7 -8
  152. package/esm2022/component/property-grid/property-grid/property-grid-item-description.directive.mjs +2 -2
  153. package/esm2022/component/property-grid/property-grid/property-grid.component.mjs +6 -11
  154. package/esm2022/component/property-grid/property-grid.module.mjs +1 -1
  155. package/esm2022/component/radio/public-api.mjs +1 -1
  156. package/esm2022/component/radio/radio/radio.component.mjs +7 -11
  157. package/esm2022/component/radio/radio-button/radio-button.component.mjs +3 -3
  158. package/esm2022/component/resize-panel/public-api.mjs +1 -1
  159. package/esm2022/component/resize-panel/resize-panel/resize-panel.component.mjs +5 -10
  160. package/esm2022/component/select/public-api.mjs +1 -1
  161. package/esm2022/component/select/select/select.component.mjs +10 -18
  162. package/esm2022/component/select/select-option.directive.mjs +2 -2
  163. package/esm2022/component/select/select-value.directive.mjs +2 -2
  164. package/esm2022/component/sidebar/public-api.mjs +1 -1
  165. package/esm2022/component/sidebar/sidebar/sidebar.component.mjs +6 -12
  166. package/esm2022/component/sidebar/sidebar-position.enum.mjs +1 -1
  167. package/esm2022/component/switch/public-api.mjs +1 -1
  168. package/esm2022/component/switch/switch/switch.component.mjs +4 -7
  169. package/esm2022/component/switch/switch-button/switch-button.component.mjs +2 -3
  170. package/esm2022/component/switch/switch.service.mjs +2 -2
  171. package/esm2022/component/table/base/cell-component-base.mjs +10 -22
  172. package/esm2022/component/table/base/detail-component-base.mjs +1 -1
  173. package/esm2022/component/table/base/head-cell-component-base.mjs +2 -2
  174. package/esm2022/component/table/cell/cell.component.mjs +4 -4
  175. package/esm2022/component/table/cell-host/cell-host.component.mjs +1 -1
  176. package/esm2022/component/table/contract/cell-components-map.mjs +2 -4
  177. package/esm2022/component/table/contract/column-reorder-event.mjs +1 -1
  178. package/esm2022/component/table/contract/sort-event.mjs +1 -1
  179. package/esm2022/component/table/contract/table-column.mjs +3 -3
  180. package/esm2022/component/table/default/boolean-cell/boolean-cell.component.mjs +4 -8
  181. package/esm2022/component/table/default/date-cell/date-cell.component.mjs +4 -9
  182. package/esm2022/component/table/default/date-time-cell/date-time-cell.component.mjs +4 -9
  183. package/esm2022/component/table/default/default-head-cell/default-head-cell.component.mjs +5 -6
  184. package/esm2022/component/table/default/list-cell/list-cell.component.mjs +7 -13
  185. package/esm2022/component/table/default/numeric-cell/numeric-cell.component.mjs +4 -9
  186. package/esm2022/component/table/default/string-cell/string-cell.component.mjs +4 -8
  187. package/esm2022/component/table/enum/edit-event.enum.mjs +1 -1
  188. package/esm2022/component/table/enum/edit-type.enum.mjs +1 -1
  189. package/esm2022/component/table/enum/select-type.enum.mjs +1 -1
  190. package/esm2022/component/table/head-cell-dropdown/head-cell-dropdown.component.mjs +4 -11
  191. package/esm2022/component/table/head-cell-host/head-cell-host.component.mjs +3 -4
  192. package/esm2022/component/table/public-api.mjs +1 -1
  193. package/esm2022/component/table/selection-cell/selection-cell.component.mjs +4 -6
  194. package/esm2022/component/table/selection-head-cell/selection-head-cell.component.mjs +5 -7
  195. package/esm2022/component/table/service/table.service.mjs +35 -52
  196. package/esm2022/component/table/table/table.component.mjs +12 -24
  197. package/esm2022/component/table/table-body/table-body.component.mjs +15 -21
  198. package/esm2022/component/table/table-head/filter-dropdown-tab/filter-dropdown-tab.component.mjs +5 -6
  199. package/esm2022/component/table/table-head/main-dropdown-tab/main-dropdown-tab.component.mjs +4 -5
  200. package/esm2022/component/table/table-head/table-head.component.mjs +10 -10
  201. package/esm2022/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.mjs +12 -12
  202. package/esm2022/component/table/table-head-group/table-head-group.component.mjs +7 -12
  203. package/esm2022/component/table/table-row/table-row.component.mjs +3 -3
  204. package/esm2022/component/table/util/state-util.mjs +13 -25
  205. package/esm2022/component/table/util/table-util.mjs +15 -9
  206. package/esm2022/component/tabs/public-api.mjs +1 -1
  207. package/esm2022/component/tabs/tab-content.directive.mjs +2 -2
  208. package/esm2022/component/tabs/tab-title.directive.mjs +2 -2
  209. package/esm2022/component/theme-switch/public-api.mjs +1 -1
  210. package/esm2022/component/toggle/public-api.mjs +1 -1
  211. package/esm2022/component/toggle/toggle/toggle.component.mjs +3 -3
  212. package/esm2022/component/toolbar/public-api.mjs +1 -1
  213. package/esm2022/component/toolbar/toolbar/toolbar.component.mjs +2 -2
  214. package/esm2022/component/tree/public-api.mjs +1 -1
  215. package/esm2022/component/tree/tree/tree.component.mjs +6 -6
  216. package/esm2022/component/tree/tree-item/tree-item.component.mjs +9 -20
  217. package/esm2022/component/tree/tree-item-toggle/tree-item-toggle.component.mjs +5 -6
  218. package/esm2022/component/tree/tree.service.mjs +1 -1
  219. package/esm2022/directive/auto-position/auto-position.directive.mjs +3 -3
  220. package/esm2022/directive/auto-position/public-api.mjs +1 -1
  221. package/esm2022/directive/click-outside/click-outside.directive.mjs +2 -2
  222. package/esm2022/directive/click-outside/public-api.mjs +1 -1
  223. package/esm2022/directive/context-menu/context-menu.directive.mjs +4 -8
  224. package/esm2022/directive/context-menu/public-api.mjs +1 -1
  225. package/esm2022/directive/disable-control/disable-control.directive.mjs +1 -1
  226. package/esm2022/directive/disable-control/public-api.mjs +1 -1
  227. package/esm2022/directive/drag-drop/drag-container.directive.mjs +8 -10
  228. package/esm2022/directive/drag-drop/drag-drop.service.mjs +14 -11
  229. package/esm2022/directive/drag-drop/drag-placeholder.directive.mjs +2 -2
  230. package/esm2022/directive/drag-drop/drag-preview.directive.mjs +2 -2
  231. package/esm2022/directive/drag-drop/drag.directive.mjs +4 -7
  232. package/esm2022/directive/drag-drop/model/drag-container-instance.mjs +1 -1
  233. package/esm2022/directive/drag-drop/model/drag-instance.mjs +1 -1
  234. package/esm2022/directive/drag-drop/model/drag-process.mjs +1 -1
  235. package/esm2022/directive/drag-drop/model/drag-selection.mjs +1 -1
  236. package/esm2022/directive/drag-drop/model/drop-event.mjs +1 -1
  237. package/esm2022/directive/drag-drop/model/drop-target.mjs +1 -1
  238. package/esm2022/directive/drag-sort/drag-sort-container.directive.mjs +2 -3
  239. package/esm2022/directive/drag-sort/drag-sort-item.directive.mjs +4 -10
  240. package/esm2022/directive/drag-sort/public-api.mjs +1 -1
  241. package/esm2022/directive/dynamic-content-base.directive.mjs +3 -3
  242. package/esm2022/directive/highlight/highlight.directive.mjs +4 -5
  243. package/esm2022/directive/highlight/public-api.mjs +1 -1
  244. package/esm2022/directive/hint/hint.directive.mjs +5 -14
  245. package/esm2022/directive/hint/public-api.mjs +1 -1
  246. package/esm2022/directive/let/let.directive.mjs +2 -2
  247. package/esm2022/directive/let/public-api.mjs +1 -1
  248. package/esm2022/directive/loader/loader.directive.mjs +3 -3
  249. package/esm2022/directive/loader/public-api.mjs +1 -1
  250. package/esm2022/directive/no-autofill/no-autofill.directive.mjs +1 -1
  251. package/esm2022/directive/no-autofill/public-api.mjs +1 -1
  252. package/esm2022/directive/only-number/public-api.mjs +1 -1
  253. package/esm2022/directive/resize-drag/public-api.mjs +1 -1
  254. package/esm2022/directive/resize-drag/resize-drag.directive.mjs +2 -2
  255. package/esm2022/directive/scroll-into-view/public-api.mjs +1 -1
  256. package/esm2022/directive/scroll-into-view/scroll-into-view.directive.mjs +3 -3
  257. package/esm2022/directive/scrollable/public-api.mjs +1 -1
  258. package/esm2022/directive/scrollable/scrollable/scrollable.component.mjs +6 -13
  259. package/esm2022/directive/scrollable/scrollable.directive.mjs +2 -2
  260. package/esm2022/directive/teta-template/public-api.mjs +1 -1
  261. package/esm2022/directive/teta-template/teta-template.directive.mjs +2 -2
  262. package/esm2022/directive/tooltip/public-api.mjs +1 -1
  263. package/esm2022/directive/tooltip/tooltip.directive.mjs +3 -4
  264. package/esm2022/index.mjs +1 -1
  265. package/esm2022/locale/en.mjs +2 -10
  266. package/esm2022/locale/ru.mjs +2 -10
  267. package/esm2022/locale/teta-config.service.mjs +2 -2
  268. package/esm2022/locale/teta-localisation.mjs +1 -1
  269. package/esm2022/observable/public-api.mjs +1 -1
  270. package/esm2022/observable/zone-observable.mjs +4 -4
  271. package/esm2022/pipe/date-pipe/teta-date.pipe.mjs +2 -2
  272. package/esm2022/pipe/number-pipe/number.pipe.mjs +2 -2
  273. package/esm2022/pipe/number-pipe/public-api.mjs +1 -1
  274. package/esm2022/pipe/util/number-helper.mjs +1 -1
  275. package/esm2022/util/bool-or-func.mjs +1 -1
  276. package/esm2022/util/date-util.mjs +2 -4
  277. package/esm2022/util/export-dom-image.mjs +1 -1
  278. package/esm2022/util/forms-util.mjs +6 -17
  279. package/esm2022/util/string-util.mjs +1 -3
  280. package/fesm2022/tetacom-ng-components.mjs +438 -801
  281. package/fesm2022/tetacom-ng-components.mjs.map +1 -1
  282. package/locale/teta-localisation.d.ts +1 -14
  283. package/package.json +1 -1
  284. package/style/assembly-library.scss +41 -41
  285. package/style/assembly-presets.scss +4 -4
  286. package/style/assembly.scss +3 -3
  287. package/style/border.scss +2 -2
  288. package/style/color.scss +2 -3
  289. package/style/datepicker.scss +9 -10
  290. package/style/divider.scss +2 -1
  291. package/style/drag.scss +1 -1
  292. package/style/dropdown.scss +4 -5
  293. package/style/font.scss +2 -2
  294. package/style/hint.scss +3 -3
  295. package/style/input.scss +14 -9
  296. package/style/layout.scss +8 -8
  297. package/style/list.scss +2 -2
  298. package/style/loader.scss +1 -1
  299. package/style/message.scss +3 -3
  300. package/style/navigation.scss +6 -6
  301. package/style/presets/color-presets.scss +2 -2
  302. package/style/presets/view-types.scss +1 -1
  303. package/style/progress.scss +3 -2
  304. package/style/radio.scss +2 -4
  305. package/style/reset.scss +3 -1
  306. package/style/resize-panel.scss +12 -6
  307. package/style/scroll.scss +1 -1
  308. package/style/select.scss +5 -4
  309. package/style/shadow.scss +3 -3
  310. package/style/sidebar.scss +2 -2
  311. package/style/sizing.scss +1 -1
  312. package/style/skeleton.scss +3 -4
  313. package/style/spacing.scss +1 -1
  314. package/style/switch.scss +2 -3
  315. package/style/tag.scss +8 -8
  316. package/style/toggle.scss +3 -6
  317. package/style/toolbar.scss +3 -3
  318. package/style/tooltip.scss +5 -4
  319. package/style/tree.scss +2 -2
  320. package/style/util/font-util.scss +1 -1
@@ -4,7 +4,7 @@ import * as d3 from 'd3';
4
4
  import { Chart3dOptions } from '../model/chart-3d-options';
5
5
  import { ThemeSwitchService } from '../../theme-switch/theme-switch.service';
6
6
  import { takeWhile, tap } from 'rxjs/operators';
7
- import { OrbitControls } from "three-stdlib";
7
+ import { OrbitControls } from 'three-stdlib';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "../../theme-switch/theme-switch.service";
10
10
  export class Chart3dComponent {
@@ -28,7 +28,7 @@ export class Chart3dComponent {
28
28
  }
29
29
  ngOnInit() {
30
30
  this._themeService.theme
31
- .pipe(takeWhile(_ => this._alive), tap(_ => {
31
+ .pipe(takeWhile((_) => this._alive), tap((_) => {
32
32
  this.gridColor = _ ? '#5d6a73' : '#bdbdc6';
33
33
  this.axesColor = _ ? '#8e8f9d' : '#7d8f9a';
34
34
  this.init();
@@ -57,7 +57,7 @@ export class Chart3dComponent {
57
57
  if (!data.points?.length) {
58
58
  return;
59
59
  }
60
- const points = data.points.map(_ => new THREE.Vector3(x(_.x), y(_.y), z(_.z)));
60
+ const points = data.points.map((_) => new THREE.Vector3(x(_.x), y(_.y), z(_.z)));
61
61
  const color = d3.scaleOrdinal(d3.schemeTableau10);
62
62
  const material = new THREE.LineBasicMaterial({
63
63
  color: data?.color ?? color(idx.toString()),
@@ -76,15 +76,13 @@ export class Chart3dComponent {
76
76
  const geometryLines = new THREE.BufferGeometry().setFromPoints(pointsLines);
77
77
  const line = new THREE.Line(geometryLines, material);
78
78
  this._scene.add(line);
79
- circles.forEach(r => {
79
+ circles.forEach((r) => {
80
80
  const material = new THREE.LineDashedMaterial({
81
81
  color: this.gridColor,
82
82
  dashSize: 1,
83
83
  gapSize: 3,
84
84
  });
85
- const circleGeometry = new THREE.BufferGeometry().setFromPoints(new THREE.Path()
86
- .absarc(0, 0, x(r), 0, Math.PI * 2, false)
87
- .getSpacedPoints(100));
85
+ const circleGeometry = new THREE.BufferGeometry().setFromPoints(new THREE.Path().absarc(0, 0, x(r), 0, Math.PI * 2, false).getSpacedPoints(100));
88
86
  const circle = new THREE.LineSegments(circleGeometry, material);
89
87
  circle.geometry.rotateX(-Math.PI / 2);
90
88
  this._scene.add(circle);
@@ -104,8 +102,7 @@ export class Chart3dComponent {
104
102
  }
105
103
  createScene() {
106
104
  this._scene = new THREE.Scene();
107
- const aspectRatio = this._elementRef.nativeElement.clientWidth /
108
- this._elementRef.nativeElement.clientHeight;
105
+ const aspectRatio = this._elementRef.nativeElement.clientWidth / this._elementRef.nativeElement.clientHeight;
109
106
  const fieldOfView = 10;
110
107
  const nearClippingPane = 1;
111
108
  const farClippingPane = 10000;
@@ -136,7 +133,7 @@ export class Chart3dComponent {
136
133
  animate();
137
134
  }
138
135
  addResizeObserver() {
139
- this._obs = new ResizeObserver(_ => {
136
+ this._obs = new ResizeObserver((_) => {
140
137
  this.setSize(_[0]?.contentRect.width, _[0]?.contentRect.height);
141
138
  });
142
139
  this._obs.observe(this._elementRef.nativeElement);
@@ -202,7 +199,7 @@ export class Chart3dComponent {
202
199
  this._scene.add(ticks);
203
200
  }
204
201
  getScales(series) {
205
- const extrems = series.map(_ => ({
202
+ const extrems = series.map((_) => ({
206
203
  x: d3.extent(_.points, (p) => p.x),
207
204
  y: d3.extent(_.points, (p) => p.y),
208
205
  z: d3.extent(_.points, (p) => p.z),
@@ -215,12 +212,7 @@ export class Chart3dComponent {
215
212
  }, { x: [], y: [], z: [] });
216
213
  const x = d3
217
214
  .scaleLinear()
218
- .domain([
219
- 0,
220
- this._config?.axes?.max == null
221
- ? parseInt(d3.max(flattenExtrems.x))
222
- : this._config.axes.max,
223
- ])
215
+ .domain([0, this._config?.axes?.max == null ? parseInt(d3.max(flattenExtrems.x)) : this._config.axes.max])
224
216
  .range([0, this.SIDE_SIZE])
225
217
  .nice();
226
218
  const y = d3
@@ -229,12 +221,7 @@ export class Chart3dComponent {
229
221
  .range([this.SIDE_SIZE, 0]);
230
222
  const z = d3
231
223
  .scaleLinear()
232
- .domain([
233
- 0,
234
- this._config?.axes?.max == null
235
- ? parseInt(d3.max(flattenExtrems.z))
236
- : this._config.axes.max,
237
- ])
224
+ .domain([0, this._config?.axes?.max == null ? parseInt(d3.max(flattenExtrems.z)) : this._config.axes.max])
238
225
  .range([0, this.SIDE_SIZE])
239
226
  .nice();
240
227
  return { x, y, z };
@@ -251,4 +238,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
251
238
  }], config: [{
252
239
  type: Input
253
240
  }] } });
254
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQzZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoYXJ0LTNkL2NoYXJ0M2QvY2hhcnQzZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoYXJ0LTNkL2NoYXJ0M2QvY2hhcnQzZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUdMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQztBQUN6QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFHekQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sY0FBYyxDQUFDOzs7QUFTM0MsTUFBTSxPQUFPLGdCQUFnQjtJQWdCM0IsWUFDVSxXQUF1QixFQUN2QixhQUFpQztRQURqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixrQkFBYSxHQUFiLGFBQWEsQ0FBb0I7UUFSbkMsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUloQixXQUFNLEdBQUcsSUFBSSxDQUFDO0lBTXRCLENBQUM7SUFFRCxJQUFhLE1BQU0sQ0FBQyxNQUFzQjtRQUN4QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7WUFDdEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFD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QUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUIsTUFBTSxDQUFDLEdBQUcsRUFBRTthQUNULFdBQVcsRUFBRTthQUNiLE1BQU0sQ0FBQztZQUNOLENBQUM7WUFDRCxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksSUFBSTtnQkFDN0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDcEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUc7U0FDMUIsQ0FBQzthQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDMUIsSUFBSSxFQUFFLENBQUM7UUFFVixPQUFPLEVBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUMsQ0FBQztJQUNuQixDQUFDOzhHQW5WVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQiwyTUMxQjdCLDZCQUNBOzsyRkR5QmEsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJO2dIQUdLLFNBQVM7c0JBQTdCLFNBQVM7dUJBQUMsUUFBUTtnQkFxQk4sTUFBTTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIFRIUkVFIGZyb20gJ3RocmVlJztcbmltcG9ydCAqIGFzIGQzIGZyb20gJ2QzJztcbmltcG9ydCB7Q2hhcnQzZE9wdGlvbnN9IGZyb20gJy4uL21vZGVsL2NoYXJ0LTNkLW9wdGlvbnMnO1xuaW1wb3J0IHtCYXNlM2RQb2ludH0gZnJvbSAnLi4vbW9kZWwvYmFzZS0zZC1wb2ludCc7XG5pbXBvcnQge1NlcmllczNkfSBmcm9tICcuLi9tb2RlbC9zZXJpZXMtM2QnO1xuaW1wb3J0IHtUaGVtZVN3aXRjaFNlcnZpY2V9IGZyb20gJy4uLy4uL3RoZW1lLXN3aXRjaC90aGVtZS1zd2l0Y2guc2VydmljZSc7XG5pbXBvcnQge3Rha2VXaGlsZSwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge09yYml0Q29udHJvbHN9IGZyb20gXCJ0aHJlZS1zdGRsaWJcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1jaGFydDNkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXJ0M2QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFydDNkLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydDNkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdjYW52YXMnKSBjYW52YXNSZWY6IEVsZW1lbnRSZWY7XG5cbiAgcHJpdmF0ZSBfc2NlbmU6IFRIUkVFLlNjZW5lO1xuICBwcml2YXRlIF9jYW1lcmE6IFRIUkVFLlBlcnNwZWN0aXZlQ2FtZXJhO1xuICBwcml2YXRlIF9yZW5kZXJlcjogVEhSRUUuUmVuZGVyZXI7XG4gIHByaXZhdGUgX2NvbnRyb2xzOiBPcmJpdENvbnRyb2xzO1xuICBwcml2YXRlIF9vYnM6IFJlc2l6ZU9ic2VydmVyO1xuICBwcml2YXRlIF9jb25maWc6IENoYXJ0M2RPcHRpb25zO1xuXG4gIHByaXZhdGUgU0lERV9TSVpFID0gMTAwO1xuICBwcml2YXRlIGdyaWRDb2xvcjogYW55O1xuICBwcml2YXRlIGF4ZXNDb2xvcjogYW55O1xuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX3RoZW1lU2VydmljZTogVGhlbWVTd2l0Y2hTZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgQElucHV0KCkgc2V0IGNvbmZpZyhjb25maWc6IENoYXJ0M2RPcHRpb25zKSB7XG4gICAgaWYgKGNvbmZpZykge1xuICAgICAgdGhpcy5fY29uZmlnID0gY29uZmlnO1xuICAgICAgdGhpcy5pbml0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IGNvbmZpZygpIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgY2FudmFzKCk6IEhUTUxDYW52YXNFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5jYW52YXNSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3RoZW1lU2VydmljZS50aGVtZVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZShfID0+IHRoaXMuX2FsaXZlKSxcbiAgICAgICAgdGFwKF8gPT4ge1xuICAgICAgICAgIHRoaXMuZ3JpZENvbG9yID0gXyA/ICcjNWQ2YTczJyA6ICcjYmRiZGM2JztcbiAgICAgICAgICB0aGlzLmF4ZXNDb2xvciA9IF8gPyAnIzhlOGY5ZCcgOiAnIzdkOGY5YSc7XG4gICAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5hZGRSZXNpemVPYnNlcnZlcigpO1xuICAgIHRoaXMuY3JlYXRlU2NlbmUoKTtcbiAgICB0aGlzLnN0YXJ0UmVuZGVyaW5nTG9vcCgpO1xuICAgIHRoaXMuaW5pdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWxpdmUgPSBmYWxzZTtcbiAgICB0aGlzLnJlbW92ZVJlc2l6ZU9ic2VydmVyKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG4gICAgaWYgKCF0aGlzLl9zY2VuZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHdoaWxlICh0aGlzLl9zY2VuZS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9zY2VuZS5yZW1vdmUodGhpcy5fc2NlbmUuY2hpbGRyZW5bMF0pO1xuICAgIH1cblxuICAgIGNvbnN0IHt4LCB5LCB6fSA9IHRoaXMuZ2V0U2NhbGVzKHRoaXMuX2NvbmZpZy5zZXJpZXMpO1xuXG4gICAgdGhpcy5jb25maWcuc2VyaWVzLmZvckVhY2goKGRhdGEsIGlkeCkgPT4ge1xuICAgICAgaWYgKCFkYXRhLnBvaW50cz8ubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcG9pbnRzID0gZGF0YS5wb2ludHMubWFwKFxuICAgICAgICBfID0+IG5ldyBUSFJFRS5WZWN0b3IzKHgoXy54KSwgeShfLnkpLCB6KF8ueikpXG4gICAgICApO1xuXG4gICAgICBjb25zdCBjb2xvciA9IGQzLnNjYWxlT3JkaW5hbChkMy5zY2hlbWVUYWJsZWF1MTApO1xuXG4gICAgICBjb25zdCBtYXRlcmlhbCA9IG5ldyBUSFJFRS5MaW5lQmFzaWNNYXRlcmlhbCh7XG4gICAgICAgIGNvbG9yOiBkYXRhPy5jb2xvciA/PyBjb2xvcihpZHgudG9TdHJpbmcoKSksXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdHViZUdlb21ldHJ5ID0gbmV3IFRIUkVFLlR1YmVHZW9tZXRyeShcbiAgICAgICAgbmV3IFRIUkVFLkNhdG11bGxSb21DdXJ2ZTMocG9pbnRzKSxcbiAgICAgICAgMTAyNCxcbiAgICAgICAgMC41LFxuICAgICAgICAyMCxcbiAgICAgICAgZmFsc2VcbiAgICAgICk7XG5cbiAgICAgIGxldCB0dWJlID0gbmV3IFRIUkVFLkxpbmUodHViZUdlb21ldHJ5LCBtYXRlcmlhbCk7XG4gICAgICB0aGlzLl9zY2VuZS5hZGQodHViZSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBjaXJjbGVzID0geC50aWNrcyh0aGlzLlNJREVfU0laRSAvIDEwKTtcblxuICAgIGNvbnN0IG1hdGVyaWFsID0gbmV3IFRIUkVFLkxpbmVCYXNpY01hdGVyaWFsKHtjb2xvcjogdGhpcy5heGVzQ29sb3J9KTtcbiAgICBjb25zdCBwb2ludHNMaW5lcyA9IFtdO1xuICAgIHBvaW50c0xpbmVzLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoMCwgMCwgMCkpO1xuICAgIHBvaW50c0xpbmVzLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoMCwgMCwgeigtei5kb21haW4oKVsxXSkpKTtcblxuICAgIHBvaW50c0xpbmVzLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoMCwgMCwgMCkpO1xuICAgIHBvaW50c0xpbmVzLnB1c2gobmV3IFRIUkVFLlZlY3RvcjMoeCgteC5kb21haW4oKVsxXSksIDAsIDApKTtcblxuICAgIGNvbnN0IGdlb21ldHJ5TGluZXMgPSBuZXcgVEhSRUUuQnVmZmVyR2VvbWV0cnkoKS5zZXRGcm9tUG9pbnRzKHBvaW50c0xpbmVzKTtcbiAgICBjb25zdCBsaW5lID0gbmV3IFRIUkVFLkxpbmUoZ2VvbWV0cnlMaW5lcywgbWF0ZXJpYWwpO1xuXG4gICAgdGhpcy5fc2NlbmUuYWRkKGxpbmUpO1xuXG4gICAgY2lyY2xlcy5mb3JFYWNoKHIgPT4ge1xuICAgICAgY29uc3QgbWF0ZXJpYWwgPSBuZXcgVEhSRUUuTGluZURhc2hlZE1hdGVyaWFsKHtcbiAgICAgICAgY29sb3I6IHRoaXMuZ3JpZENvbG9yLFxuICAgICAgICBkYXNoU2l6ZTogMSxcbiAgICAgICAgZ2FwU2l6ZTogMyxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBjaXJjbGVHZW9tZXRyeSA9IG5ldyBUSFJFRS5CdWZmZXJHZW9tZXRyeSgpLnNldEZyb21Qb2ludHMoXG4gICAgICAgIG5ldyBUSFJFRS5QYXRoKClcbiAgICAgICAgICAuYWJzYXJjKDAsIDAsIHgociksIDAsIE1hdGguUEkgKiAyLCBmYWxzZSlcbiAgICAgICAgICAuZ2V0U3BhY2VkUG9pbnRzKDEwMClcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGNpcmNsZSA9IG5ldyBUSFJFRS5MaW5lU2VnbWVudHMoY2lyY2xlR2VvbWV0cnksIG1hdGVyaWFsKTtcblxuICAgICAgY2lyY2xlLmdlb21ldHJ5LnJvdGF0ZVgoLU1hdGguUEkgLyAyKTtcblxuICAgICAgdGhpcy5fc2NlbmUuYWRkKGNpcmNsZSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmRyYXdUaWNrcyh4LCB5LCB6KTtcblxuICAgIGlmICghdGhpcy5fY29udHJvbHMpIHtcbiAgICAgIHRoaXMuX2NvbnRyb2xzID0gbmV3IE9yYml0Q29udHJvbHMoXG4gICAgICAgIHRoaXMuX2NhbWVyYSxcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuZG9tRWxlbWVudFxuICAgICAgKTtcblxuICAgICAgdGhpcy5fY29udHJvbHMuZW5hYmxlRGFtcGluZyA9IHRydWU7XG4gICAgICB0aGlzLl9jb250cm9scy5lbmFibGVQYW4gPSB0cnVlO1xuICAgICAgdGhpcy5fY29udHJvbHMuZGFtcGluZ0ZhY3RvciA9IDAuMjU7XG4gICAgICB0aGlzLl9jb250cm9scy5zY3JlZW5TcGFjZVBhbm5pbmcgPSB0cnVlO1xuICAgICAgdGhpcy5fY29udHJvbHMubWluRGlzdGFuY2UgPSAwO1xuICAgICAgdGhpcy5fY29udHJvbHMubWF4RGlzdGFuY2UgPSAxMDAwMDtcbiAgICAgIHRoaXMuX2NvbnRyb2xzLm1heFBvbGFyQW5nbGUgPSBNYXRoLlBJIC8gMjtcblxuICAgICAgdGhpcy5fY29udHJvbHMuZW5hYmxlWm9vbSA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVTY2VuZSgpIHtcbiAgICB0aGlzLl9zY2VuZSA9IG5ldyBUSFJFRS5TY2VuZSgpO1xuXG4gICAgY29uc3QgYXNwZWN0UmF0aW8gPVxuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC9cbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGllbnRIZWlnaHQ7XG5cbiAgICBjb25zdCBmaWVsZE9mVmlldyA9IDEwO1xuICAgIGNvbnN0IG5lYXJDbGlwcGluZ1BhbmUgPSAxO1xuICAgIGNvbnN0IGZhckNsaXBwaW5nUGFuZSA9IDEwMDAwO1xuXG4gICAgdGhpcy5fY2FtZXJhID0gbmV3IFRIUkVFLlBlcnNwZWN0aXZlQ2FtZXJhKFxuICAgICAgZmllbGRPZlZpZXcsXG4gICAgICBhc3BlY3RSYXRpbyxcbiAgICAgIG5lYXJDbGlwcGluZ1BhbmUsXG4gICAgICBmYXJDbGlwcGluZ1BhbmVcbiAgICApO1xuXG4gICAgdGhpcy5fY2FtZXJhLnBvc2l0aW9uLnNldCgxMzAwLCAxMzAwLCAxMzAwKS5zZXRMZW5ndGgoMTMwMCk7XG4gICAgdGhpcy5fc2NlbmUuYWRkKHRoaXMuX2NhbWVyYSk7XG4gIH1cblxuICBwcml2YXRlIHNldFNpemUod2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIpIHtcbiAgICB0aGlzLl9jYW1lcmEuYXNwZWN0ID0gd2lkdGggLyBoZWlnaHQ7XG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0U2l6ZSh3aWR0aCwgaGVpZ2h0KTtcblxuICAgIHRoaXMuX2NhbWVyYS51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCk7XG4gIH1cblxuICBwcml2YXRlIHJlbmRlcigpIHtcbiAgICB0aGlzLl9yZW5kZXJlci5yZW5kZXIodGhpcy5fc2NlbmUsIHRoaXMuX2NhbWVyYSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0UmVuZGVyaW5nTG9vcCgpIHtcbiAgICB0aGlzLl9yZW5kZXJlciA9IG5ldyBUSFJFRS5XZWJHTFJlbmRlcmVyKHtcbiAgICAgIGFudGlhbGlhczogdHJ1ZSxcbiAgICAgIGNhbnZhczogdGhpcy5jYW52YXMsXG4gICAgICBhbHBoYTogdHJ1ZSxcbiAgICAgIHByZXNlcnZlRHJhd2luZ0J1ZmZlcjogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFuaW1hdGUgPSAoKSA9PiB7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoYW5pbWF0ZSk7XG4gICAgICB0aGlzLl9jb250cm9scz8udXBkYXRlKCk7XG4gICAgICB0aGlzLnJlbmRlcigpO1xuICAgIH07XG5cbiAgICBhbmltYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGFkZFJlc2l6ZU9ic2VydmVyKCkge1xuICAgIHRoaXMuX29icyA9IG5ldyBSZXNpemVPYnNlcnZlcihfID0+IHtcbiAgICAgIHRoaXMuc2V0U2l6ZShfWzBdPy5jb250ZW50UmVjdC53aWR0aCwgX1swXT8uY29udGVudFJlY3QuaGVpZ2h0KTtcbiAgICB9KTtcblxuICAgIHRoaXMuX29icy5vYnNlcnZlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZVJlc2l6ZU9ic2VydmVyKCkge1xuICAgIHRoaXMuX29icy51bm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLl9vYnMuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYWtlU3ByaXRlKHRleHQ6IHN0cmluZywgb3B0cz86IHsgZm9udFNpemU/OiBudW1iZXIgfSk6IFRIUkVFLlNwcml0ZSB7XG4gICAgY29uc3QgZm9udFNpemUgPSAyMDtcblxuICAgIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xuICAgIGNvbnN0IHRleHRXaWR0aCA9IHRleHQubGVuZ3RoICogNTA7XG4gICAgY2FudmFzLmhlaWdodCA9IDUwO1xuICAgIGNhbnZhcy53aWR0aCA9IDUwO1xuXG4gICAgaWYgKGN0eCkge1xuICAgICAgY3R4LmZvbnQgPSBgJHtmb250U2l6ZX1weCBBcmlhbGA7XG4gICAgICBjdHgudGV4dEFsaWduID0gJ2NlbnRlcic7XG4gICAgICBjdHgudGV4dEJhc2VsaW5lID0gJ21pZGRsZSc7XG4gICAgICBjdHguZmlsbFN0eWxlID0gJyNBMEEwQTAnO1xuICAgICAgY3R4LmZpbGxUZXh0KHRleHQsIDI1LCAyNSk7XG4gICAgfVxuXG4gICAgY29uc3QgdGV4dHVyZSA9IG5ldyBUSFJFRS5UZXh0dXJlKGNhbnZhcyk7XG4gICAgdGV4dHVyZS5taW5GaWx0ZXIgPSBUSFJFRS5MaW5lYXJGaWx0ZXI7XG4gICAgdGV4dHVyZS5uZWVkc1VwZGF0ZSA9IHRydWU7XG4gICAgY29uc3Qgc3ByaXRlTWF0ZXJpYWwgPSBuZXcgVEhSRUUuU3ByaXRlTWF0ZXJpYWwoe1xuICAgICAgbWFwOiB0ZXh0dXJlLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3ByaXRlID0gbmV3IFRIUkVFLlNwcml0ZShzcHJpdGVNYXRlcmlhbCk7XG4gICAgc3ByaXRlLnNjYWxlLnNldCgwLjQgKiBmb250U2l6ZSwgMC40ICogZm9udFNpemUsIDAuNCAqIGZvbnRTaXplKTtcblxuICAgIHJldHVybiBzcHJpdGU7XG4gIH1cblxuICBwcml2YXRlIGRyYXdUaWNrcyh4OiBhbnksIHk6IGFueSwgejogYW55KSB7XG4gICAgY29uc3QgdGlja3MgPSBuZXcgVEhSRUUuT2JqZWN0M0QoKTtcbiAgICBjb25zdCBzY2FsZXNFeHRyZW1zOiBhbnlbXSA9IFtdO1xuXG4gICAgW3gsIHksIHpdLmZvckVhY2goKHNjYWxlLCBpZHgpID0+IHtcbiAgICAgIGNvbnN0IGdlbmVyYXRlZFRpY2tzID0gc2NhbGUudGlja3ModGhpcy5TSURFX1NJWkUgLyAxMCk7XG5cbiAgICAgIHNjYWxlc0V4dHJlbXMucHVzaChkMy5tYXgoZ2VuZXJhdGVkVGlja3MpKTtcblxuICAgICAgZ2VuZXJhdGVkVGlja3MuZm9yRWFjaCgoXzogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IHNwcml0ZSA9IHRoaXMubWFrZVNwcml0ZShfKTtcblxuICAgICAgICBpZiAoaWR4ID09PSAwKSB7XG4gICAgICAgICAgc3ByaXRlLnBvc2l0aW9uLnNldCh4KF8pLCB5KHkuZG9tYWluKClbMV0pLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpZHggPT09IDEpIHtcbiAgICAgICAgICBzcHJpdGUucG9zaXRpb24uc2V0KC0xMCwgeShfKSwgMCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaWR4ID09PSAyKSB7XG4gICAgICAgICAgc3ByaXRlLnBvc2l0aW9uLnNldCgwLCB5KHkuZG9tYWluKClbMV0pLCB6KF8pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRpY2tzLmFkZChzcHJpdGUpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBub3J0aExhYmVsID0gdGhpcy5tYWtlU3ByaXRlKCdYJywge2ZvbnRTaXplOiAyOH0pO1xuICAgIGNvbnN0IHdlc3RMYWJlbCA9IHRoaXMubWFrZVNwcml0ZSgnWScsIHtmb250U2l6ZTogMjh9KTtcbiAgICBjb25zdCB0dmRMYWJlbCA9IHRoaXMubWFrZVNwcml0ZSgnVFZEJywge2ZvbnRTaXplOiAyOH0pO1xuXG4gICAgbm9ydGhMYWJlbC5wb3NpdGlvbi5zZXQoeCh4LmRvbWFpbigpWzFdKSArIDUsIDAsIDApO1xuICAgIHdlc3RMYWJlbC5wb3NpdGlvbi5zZXQoMCwgMCwgeSh5LmRvbWFpbigpWzBdKSArIDUpO1xuICAgIHR2ZExhYmVsLnBvc2l0aW9uLnNldCgwLCB6KHouZG9tYWluKClbMV0pICsgNSwgMCk7XG5cbiAgICB0aWNrcy5hZGQobm9ydGhMYWJlbCwgd2VzdExhYmVsLCB0dmRMYWJlbCk7XG5cbiAgICBjb25zdCBheGVzSGVscGVyID0gbmV3IFRIUkVFLkF4ZXNIZWxwZXIodGhpcy5TSURFX1NJWkUpO1xuICAgIGF4ZXNIZWxwZXIuc2V0Q29sb3JzKHRoaXMuYXhlc0NvbG9yLCB0aGlzLmF4ZXNDb2xvciwgdGhpcy5heGVzQ29sb3IpO1xuXG4gICAgdGhpcy5fc2NlbmUuYWRkKGF4ZXNIZWxwZXIpO1xuXG4gICAgdGhpcy5fc2NlbmUuYWRkKHRpY2tzKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2NhbGVzKHNlcmllczogU2VyaWVzM2Q8QmFzZTNkUG9pbnQ+W10pIHtcbiAgICBjb25zdCBleHRyZW1zID0gc2VyaWVzLm1hcChfID0+ICh7XG4gICAgICB4OiBkMy5leHRlbnQoXy5wb2ludHMsIChwOiBhbnkpID0+IHAueCksXG4gICAgICB5OiBkMy5leHRlbnQoXy5wb2ludHMsIChwOiBhbnkpID0+IHAueSksXG4gICAgICB6OiBkMy5leHRlbnQoXy5wb2ludHMsIChwOiBhbnkpID0+IHAueiksXG4gICAgfSkpO1xuXG4gICAgY29uc3QgZmxhdHRlbkV4dHJlbXMgPSBleHRyZW1zLnJlZHVjZShcbiAgICAgIChhY2M6IGFueSwgXyk6IHsgeDogW251bWJlcl07IHk6IFtudW1iZXJdOyB6OiBbbnVtYmVyXSB9ID0+IHtcbiAgICAgICAgYWNjLnggPSBhY2MueC5jb25jYXQoXy54KTtcbiAgICAgICAgYWNjLnkgPSBhY2MueS5jb25jYXQoXy55KTtcbiAgICAgICAgYWNjLnogPSBhY2Muei5jb25jYXQoXy56KTtcbiAgICAgICAgcmV0dXJuIGFjYyBhcyBhbnk7XG4gICAgICB9LFxuICAgICAge3g6IFtdLCB5OiBbXSwgejogW119XG4gICAgKTtcblxuICAgIGNvbnN0IHggPSBkM1xuICAgICAgLnNjYWxlTGluZWFyKClcbiAgICAgIC5kb21haW4oW1xuICAgICAgICAwLFxuICAgICAgICB0aGlzLl9jb25maWc/LmF4ZXM/Lm1heCA9PSBudWxsXG4gICAgICAgICAgPyBwYXJzZUludChkMy5tYXgoZmxhdHRlbkV4dHJlbXMueCkpXG4gICAgICAgICAgOiB0aGlzLl9jb25maWcuYXhlcy5tYXgsXG4gICAgICBdKVxuICAgICAgLnJhbmdlKFswLCB0aGlzLlNJREVfU0laRV0pXG4gICAgICAubmljZSgpO1xuXG4gICAgY29uc3QgeSA9IGQzXG4gICAgICAuc2NhbGVMaW5lYXIoKVxuICAgICAgLmRvbWFpbihbMCwgcGFyc2VJbnQoZDMubWF4KGZsYXR0ZW5FeHRyZW1zLnkpLCAxMCldKVxuICAgICAgLnJhbmdlKFt0aGlzLlNJREVfU0laRSwgMF0pO1xuXG4gICAgY29uc3QgeiA9IGQzXG4gICAgICAuc2NhbGVMaW5lYXIoKVxuICAgICAgLmRvbWFpbihbXG4gICAgICAgIDAsXG4gICAgICAgIHRoaXMuX2NvbmZpZz8uYXhlcz8ubWF4ID09IG51bGxcbiAgICAgICAgICA/IHBhcnNlSW50KGQzLm1heChmbGF0dGVuRXh0cmVtcy56KSlcbiAgICAgICAgICA6IHRoaXMuX2NvbmZpZy5heGVzLm1heCxcbiAgICAgIF0pXG4gICAgICAucmFuZ2UoWzAsIHRoaXMuU0lERV9TSVpFXSlcbiAgICAgIC5uaWNlKCk7XG5cbiAgICByZXR1cm4ge3gsIHksIHp9O1xuICB9XG59XG4iLCI8Y2FudmFzICNjYW52YXM+PC9jYW52YXM+XG4iXX0=
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQzZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoYXJ0LTNkL2NoYXJ0M2QvY2hhcnQzZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoYXJ0LTNkL2NoYXJ0M2QvY2hhcnQzZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUdMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQztBQUN6QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFHM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFTN0MsTUFBTSxPQUFPLGdCQUFnQjtJQWdCM0IsWUFBb0IsV0FBdUIsRUFBVSxhQUFpQztRQUFsRSxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFvQjtRQU45RSxjQUFTLEdBQUcsR0FBRyxDQUFDO1FBSWhCLFdBQU0sR0FBRyxJQUFJLENBQUM7SUFFbUUsQ0FBQztJQUUxRixJQUFhLE1BQU0sQ0FBQyxNQUFzQjtRQUN4QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7WUFDdEIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQVksTUFBTTtRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLO2FBQ3JCLElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDN0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDM0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzNDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU8sSUFBSTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsT0FBTztRQUNULENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFFRCxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUN6QixPQUFPO1lBQ1QsQ0FBQztZQUVELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRWpGLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRWxELE1BQU0sUUFBUSxHQUFHLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDO2dCQUMzQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQzVDLENBQUMsQ0FBQztZQUVILE1BQU0sWUFBWSxHQUFHLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUV0RyxJQUFJLElBQUksR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ2xELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBRTdDLE1BQU0sUUFBUSxHQUFHLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN2QixXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0MsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFN0QsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTdELE1BQU0sYUFBYSxHQUFHLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1RSxNQUFNLElBQUksR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXJELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXRCLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLFFBQVEsR0FBRyxJQUFJLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztnQkFDNUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUNyQixRQUFRLEVBQUUsQ0FBQztnQkFDWCxPQUFPLEVBQUUsQ0FBQzthQUNYLENBQUMsQ0FBQztZQUVILE1BQU0sY0FBYyxHQUFHLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDLGFBQWEsQ0FDN0QsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQ2hGLENBQUM7WUFFRixNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRWhFLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUV0QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUV4QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRTVFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDaEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFFM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ25DLENBQUM7SUFDSCxDQUFDO0lBRU8sV0FBVztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWhDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUM7UUFFN0csTUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQztRQUU5QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFFeEcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWEsRUFBRSxNQUFjO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXRDLElBQUksQ0FBQyxPQUFPLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUM7WUFDdkMsU0FBUyxFQUFFLElBQUk7WUFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsS0FBSyxFQUFFLElBQUk7WUFDWCxxQkFBcUIsRUFBRSxJQUFJO1NBQzVCLENBQUMsQ0FBQztRQUVILE1BQU0sT0FBTyxHQUFHLEdBQUcsRUFBRTtZQUNuQixxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvQixJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDLENBQUM7UUFFRixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFTyxpQkFBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFZLEVBQUUsSUFBNEI7UUFDM0QsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDO1FBRXBCLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNuQyxNQUFNLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNuQixNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUVsQixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLFFBQVEsVUFBVSxDQUFDO1lBQ2pDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1lBQ3pCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDO1lBQzVCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1lBQzFCLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztRQUN2QyxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUMzQixNQUFNLGNBQWMsR0FBRyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDOUMsR0FBRyxFQUFFLE9BQU87U0FDYixDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDaEQsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLFFBQVEsRUFBRSxHQUFHLEdBQUcsUUFBUSxFQUFFLEdBQUcsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUVqRSxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8sU0FBUyxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsQ0FBTTtRQUN0QyxNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuQyxNQUFNLGFBQWEsR0FBVSxFQUFFLENBQUM7UUFFaEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUMvQixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFFeEQsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFFM0MsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFO2dCQUNoQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVsQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDZCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxDQUFDO2dCQUVELElBQUksR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO29CQUNkLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDcEMsQ0FBQztnQkFFRCxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDZCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxDQUFDO2dCQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDMUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN6RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTFELFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3BELFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FB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Q0FBQyxDQUFDO2FBQ25ELEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU5QixNQUFNLENBQUMsR0FBRyxFQUFFO2FBQ1QsV0FBVyxFQUFFO2FBQ2IsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN6RyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQzFCLElBQUksRUFBRSxDQUFDO1FBRVYsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDckIsQ0FBQzs4R0FqVFUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsMk1DMUI3Qiw2QkFDQTs7MkZEeUJhLGdCQUFnQjtrQkFQNUIsU0FBUzsrQkFDRSxjQUFjLG1CQUdQLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSTtnSEFHSyxTQUFTO3NCQUE3QixTQUFTO3VCQUFDLFFBQVE7Z0JBaUJOLE1BQU07c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5pbXBvcnQgeyBDaGFydDNkT3B0aW9ucyB9IGZyb20gJy4uL21vZGVsL2NoYXJ0LTNkLW9wdGlvbnMnO1xuaW1wb3J0IHsgQmFzZTNkUG9pbnQgfSBmcm9tICcuLi9tb2RlbC9iYXNlLTNkLXBvaW50JztcbmltcG9ydCB7IFNlcmllczNkIH0gZnJvbSAnLi4vbW9kZWwvc2VyaWVzLTNkJztcbmltcG9ydCB7IFRoZW1lU3dpdGNoU2VydmljZSB9IGZyb20gJy4uLy4uL3RoZW1lLXN3aXRjaC90aGVtZS1zd2l0Y2guc2VydmljZSc7XG5pbXBvcnQgeyB0YWtlV2hpbGUsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9yYml0Q29udHJvbHMgfSBmcm9tICd0aHJlZS1zdGRsaWInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLWNoYXJ0M2QnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQzZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoYXJ0M2QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0M2RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBWaWV3Q2hpbGQoJ2NhbnZhcycpIGNhbnZhc1JlZjogRWxlbWVudFJlZjtcblxuICBwcml2YXRlIF9zY2VuZTogVEhSRUUuU2NlbmU7XG4gIHByaXZhdGUgX2NhbWVyYTogVEhSRUUuUGVyc3BlY3RpdmVDYW1lcmE7XG4gIHByaXZhdGUgX3JlbmRlcmVyOiBUSFJFRS5SZW5kZXJlcjtcbiAgcHJpdmF0ZSBfY29udHJvbHM6IE9yYml0Q29udHJvbHM7XG4gIHByaXZhdGUgX29iczogUmVzaXplT2JzZXJ2ZXI7XG4gIHByaXZhdGUgX2NvbmZpZzogQ2hhcnQzZE9wdGlvbnM7XG5cbiAgcHJpdmF0ZSBTSURFX1NJWkUgPSAxMDA7XG4gIHByaXZhdGUgZ3JpZENvbG9yOiBhbnk7XG4gIHByaXZhdGUgYXhlc0NvbG9yOiBhbnk7XG5cbiAgcHJpdmF0ZSBfYWxpdmUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgX3RoZW1lU2VydmljZTogVGhlbWVTd2l0Y2hTZXJ2aWNlKSB7fVxuXG4gIEBJbnB1dCgpIHNldCBjb25maWcoY29uZmlnOiBDaGFydDNkT3B0aW9ucykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIHRoaXMuX2NvbmZpZyA9IGNvbmZpZztcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBjb25maWcoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGNhbnZhcygpOiBIVE1MQ2FudmFzRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuY2FudmFzUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl90aGVtZVNlcnZpY2UudGhlbWVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKF8pID0+IHRoaXMuX2FsaXZlKSxcbiAgICAgICAgdGFwKChfKSA9PiB7XG4gICAgICAgICAgdGhpcy5ncmlkQ29sb3IgPSBfID8gJyM1ZDZhNzMnIDogJyNiZGJkYzYnO1xuICAgICAgICAgIHRoaXMuYXhlc0NvbG9yID0gXyA/ICcjOGU4ZjlkJyA6ICcjN2Q4ZjlhJztcbiAgICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmFkZFJlc2l6ZU9ic2VydmVyKCk7XG4gICAgdGhpcy5jcmVhdGVTY2VuZSgpO1xuICAgIHRoaXMuc3RhcnRSZW5kZXJpbmdMb29wKCk7XG4gICAgdGhpcy5pbml0KCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9hbGl2ZSA9IGZhbHNlO1xuICAgIHRoaXMucmVtb3ZlUmVzaXplT2JzZXJ2ZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpIHtcbiAgICBpZiAoIXRoaXMuX3NjZW5lKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgd2hpbGUgKHRoaXMuX3NjZW5lLmNoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX3NjZW5lLnJlbW92ZSh0aGlzLl9zY2VuZS5jaGlsZHJlblswXSk7XG4gICAgfVxuXG4gICAgY29uc3QgeyB4LCB5LCB6IH0gPSB0aGlzLmdldFNjYWxlcyh0aGlzLl9jb25maWcuc2VyaWVzKTtcblxuICAgIHRoaXMuY29uZmlnLnNlcmllcy5mb3JFYWNoKChkYXRhLCBpZHgpID0+IHtcbiAgICAgIGlmICghZGF0YS5wb2ludHM/Lmxlbmd0aCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHBvaW50cyA9IGRhdGEucG9pbnRzLm1hcCgoXykgPT4gbmV3IFRIUkVFLlZlY3RvcjMoeChfLngpLCB5KF8ueSksIHooXy56KSkpO1xuXG4gICAgICBjb25zdCBjb2xvciA9IGQzLnNjYWxlT3JkaW5hbChkMy5zY2hlbWVUYWJsZWF1MTApO1xuXG4gICAgICBjb25zdCBtYXRlcmlhbCA9IG5ldyBUSFJFRS5MaW5lQmFzaWNNYXRlcmlhbCh7XG4gICAgICAgIGNvbG9yOiBkYXRhPy5jb2xvciA/PyBjb2xvcihpZHgudG9TdHJpbmcoKSksXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdHViZUdlb21ldHJ5ID0gbmV3IFRIUkVFLlR1YmVHZW9tZXRyeShuZXcgVEhSRUUuQ2F0bXVsbFJvbUN1cnZlMyhwb2ludHMpLCAxMDI0LCAwLjUsIDIwLCBmYWxzZSk7XG5cbiAgICAgIGxldCB0dWJlID0gbmV3IFRIUkVFLkxpbmUodHViZUdlb21ldHJ5LCBtYXRlcmlhbCk7XG4gICAgICB0aGlzLl9zY2VuZS5hZGQodHViZSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBjaXJjbGVzID0geC50aWNrcyh0aGlzLlNJREVfU0laRSAvIDEwKTtcblxuICAgIGNvbnN0IG1hdGVyaWFsID0gbmV3IFRIUkVFLkxpbmVCYXNpY01hdGVyaWFsKHsgY29sb3I6IHRoaXMuYXhlc0NvbG9yIH0pO1xuICAgIGNvbnN0IHBvaW50c0xpbmVzID0gW107XG4gICAgcG9pbnRzTGluZXMucHVzaChuZXcgVEhSRUUuVmVjdG9yMygwLCAwLCAwKSk7XG4gICAgcG9pbnRzTGluZXMucHVzaChuZXcgVEhSRUUuVmVjdG9yMygwLCAwLCB6KC16LmRvbWFpbigpWzFdKSkpO1xuXG4gICAgcG9pbnRzTGluZXMucHVzaChuZXcgVEhSRUUuVmVjdG9yMygwLCAwLCAwKSk7XG4gICAgcG9pbnRzTGluZXMucHVzaChuZXcgVEhSRUUuVmVjdG9yMyh4KC14LmRvbWFpbigpWzFdKSwgMCwgMCkpO1xuXG4gICAgY29uc3QgZ2VvbWV0cnlMaW5lcyA9IG5ldyBUSFJFRS5CdWZmZXJHZW9tZXRyeSgpLnNldEZyb21Qb2ludHMocG9pbnRzTGluZXMpO1xuICAgIGNvbnN0IGxpbmUgPSBuZXcgVEhSRUUuTGluZShnZW9tZXRyeUxpbmVzLCBtYXRlcmlhbCk7XG5cbiAgICB0aGlzLl9zY2VuZS5hZGQobGluZSk7XG5cbiAgICBjaXJjbGVzLmZvckVhY2goKHIpID0+IHtcbiAgICAgIGNvbnN0IG1hdGVyaWFsID0gbmV3IFRIUkVFLkxpbmVEYXNoZWRNYXRlcmlhbCh7XG4gICAgICAgIGNvbG9yOiB0aGlzLmdyaWRDb2xvcixcbiAgICAgICAgZGFzaFNpemU6IDEsXG4gICAgICAgIGdhcFNpemU6IDMsXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgY2lyY2xlR2VvbWV0cnkgPSBuZXcgVEhSRUUuQnVmZmVyR2VvbWV0cnkoKS5zZXRGcm9tUG9pbnRzKFxuICAgICAgICBuZXcgVEhSRUUuUGF0aCgpLmFic2FyYygwLCAwLCB4KHIpLCAwLCBNYXRoLlBJICogMiwgZmFsc2UpLmdldFNwYWNlZFBvaW50cygxMDApXG4gICAgICApO1xuXG4gICAgICBjb25zdCBjaXJjbGUgPSBuZXcgVEhSRUUuTGluZVNlZ21lbnRzKGNpcmNsZUdlb21ldHJ5LCBtYXRlcmlhbCk7XG5cbiAgICAgIGNpcmNsZS5nZW9tZXRyeS5yb3RhdGVYKC1NYXRoLlBJIC8gMik7XG5cbiAgICAgIHRoaXMuX3NjZW5lLmFkZChjaXJjbGUpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5kcmF3VGlja3MoeCwgeSwgeik7XG5cbiAgICBpZiAoIXRoaXMuX2NvbnRyb2xzKSB7XG4gICAgICB0aGlzLl9jb250cm9scyA9IG5ldyBPcmJpdENvbnRyb2xzKHRoaXMuX2NhbWVyYSwgdGhpcy5fcmVuZGVyZXIuZG9tRWxlbWVudCk7XG5cbiAgICAgIHRoaXMuX2NvbnRyb2xzLmVuYWJsZURhbXBpbmcgPSB0cnVlO1xuICAgICAgdGhpcy5fY29udHJvbHMuZW5hYmxlUGFuID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2NvbnRyb2xzLmRhbXBpbmdGYWN0b3IgPSAwLjI1O1xuICAgICAgdGhpcy5fY29udHJvbHMuc2NyZWVuU3BhY2VQYW5uaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2NvbnRyb2xzLm1pbkRpc3RhbmNlID0gMDtcbiAgICAgIHRoaXMuX2NvbnRyb2xzLm1heERpc3RhbmNlID0gMTAwMDA7XG4gICAgICB0aGlzLl9jb250cm9scy5tYXhQb2xhckFuZ2xlID0gTWF0aC5QSSAvIDI7XG5cbiAgICAgIHRoaXMuX2NvbnRyb2xzLmVuYWJsZVpvb20gPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU2NlbmUoKSB7XG4gICAgdGhpcy5fc2NlbmUgPSBuZXcgVEhSRUUuU2NlbmUoKTtcblxuICAgIGNvbnN0IGFzcGVjdFJhdGlvID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC8gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodDtcblxuICAgIGNvbnN0IGZpZWxkT2ZWaWV3ID0gMTA7XG4gICAgY29uc3QgbmVhckNsaXBwaW5nUGFuZSA9IDE7XG4gICAgY29uc3QgZmFyQ2xpcHBpbmdQYW5lID0gMTAwMDA7XG5cbiAgICB0aGlzLl9jYW1lcmEgPSBuZXcgVEhSRUUuUGVyc3BlY3RpdmVDYW1lcmEoZmllbGRPZlZpZXcsIGFzcGVjdFJhdGlvLCBuZWFyQ2xpcHBpbmdQYW5lLCBmYXJDbGlwcGluZ1BhbmUpO1xuXG4gICAgdGhpcy5fY2FtZXJhLnBvc2l0aW9uLnNldCgxMzAwLCAxMzAwLCAxMzAwKS5zZXRMZW5ndGgoMTMwMCk7XG4gICAgdGhpcy5fc2NlbmUuYWRkKHRoaXMuX2NhbWVyYSk7XG4gIH1cblxuICBwcml2YXRlIHNldFNpemUod2lkdGg6IG51bWJlciwgaGVpZ2h0OiBudW1iZXIpIHtcbiAgICB0aGlzLl9jYW1lcmEuYXNwZWN0ID0gd2lkdGggLyBoZWlnaHQ7XG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0U2l6ZSh3aWR0aCwgaGVpZ2h0KTtcblxuICAgIHRoaXMuX2NhbWVyYS51cGRhdGVQcm9qZWN0aW9uTWF0cml4KCk7XG4gIH1cblxuICBwcml2YXRlIHJlbmRlcigpIHtcbiAgICB0aGlzLl9yZW5kZXJlci5yZW5kZXIodGhpcy5fc2NlbmUsIHRoaXMuX2NhbWVyYSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0UmVuZGVyaW5nTG9vcCgpIHtcbiAgICB0aGlzLl9yZW5kZXJlciA9IG5ldyBUSFJFRS5XZWJHTFJlbmRlcmVyKHtcbiAgICAgIGFudGlhbGlhczogdHJ1ZSxcbiAgICAgIGNhbnZhczogdGhpcy5jYW52YXMsXG4gICAgICBhbHBoYTogdHJ1ZSxcbiAgICAgIHByZXNlcnZlRHJhd2luZ0J1ZmZlcjogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFuaW1hdGUgPSAoKSA9PiB7XG4gICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoYW5pbWF0ZSk7XG4gICAgICB0aGlzLl9jb250cm9scz8udXBkYXRlKCk7XG4gICAgICB0aGlzLnJlbmRlcigpO1xuICAgIH07XG5cbiAgICBhbmltYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGFkZFJlc2l6ZU9ic2VydmVyKCkge1xuICAgIHRoaXMuX29icyA9IG5ldyBSZXNpemVPYnNlcnZlcigoXykgPT4ge1xuICAgICAgdGhpcy5zZXRTaXplKF9bMF0/LmNvbnRlbnRSZWN0LndpZHRoLCBfWzBdPy5jb250ZW50UmVjdC5oZWlnaHQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5fb2JzLm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlUmVzaXplT2JzZXJ2ZXIoKSB7XG4gICAgdGhpcy5fb2JzLnVub2JzZXJ2ZSh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgIHRoaXMuX29icy5kaXNjb25uZWN0KCk7XG4gIH1cblxuICBwcml2YXRlIG1ha2VTcHJpdGUodGV4dDogc3RyaW5nLCBvcHRzPzogeyBmb250U2l6ZT86IG51bWJlciB9KTogVEhSRUUuU3ByaXRlIHtcbiAgICBjb25zdCBmb250U2l6ZSA9IDIwO1xuXG4gICAgY29uc3QgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gICAgY29uc3QgY3R4ID0gY2FudmFzLmdldENvbnRleHQoJzJkJyk7XG4gICAgY29uc3QgdGV4dFdpZHRoID0gdGV4dC5sZW5ndGggKiA1MDtcbiAgICBjYW52YXMuaGVpZ2h0ID0gNTA7XG4gICAgY2FudmFzLndpZHRoID0gNTA7XG5cbiAgICBpZiAoY3R4KSB7XG4gICAgICBjdHguZm9udCA9IGAke2ZvbnRTaXplfXB4IEFyaWFsYDtcbiAgICAgIGN0eC50ZXh0QWxpZ24gPSAnY2VudGVyJztcbiAgICAgIGN0eC50ZXh0QmFzZWxpbmUgPSAnbWlkZGxlJztcbiAgICAgIGN0eC5maWxsU3R5bGUgPSAnI0EwQTBBMCc7XG4gICAgICBjdHguZmlsbFRleHQodGV4dCwgMjUsIDI1KTtcbiAgICB9XG5cbiAgICBjb25zdCB0ZXh0dXJlID0gbmV3IFRIUkVFLlRleHR1cmUoY2FudmFzKTtcbiAgICB0ZXh0dXJlLm1pbkZpbHRlciA9IFRIUkVFLkxpbmVhckZpbHRlcjtcbiAgICB0ZXh0dXJlLm5lZWRzVXBkYXRlID0gdHJ1ZTtcbiAgICBjb25zdCBzcHJpdGVNYXRlcmlhbCA9IG5ldyBUSFJFRS5TcHJpdGVNYXRlcmlhbCh7XG4gICAgICBtYXA6IHRleHR1cmUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBzcHJpdGUgPSBuZXcgVEhSRUUuU3ByaXRlKHNwcml0ZU1hdGVyaWFsKTtcbiAgICBzcHJpdGUuc2NhbGUuc2V0KDAuNCAqIGZvbnRTaXplLCAwLjQgKiBmb250U2l6ZSwgMC40ICogZm9udFNpemUpO1xuXG4gICAgcmV0dXJuIHNwcml0ZTtcbiAgfVxuXG4gIHByaXZhdGUgZHJhd1RpY2tzKHg6IGFueSwgeTogYW55LCB6OiBhbnkpIHtcbiAgICBjb25zdCB0aWNrcyA9IG5ldyBUSFJFRS5PYmplY3QzRCgpO1xuICAgIGNvbnN0IHNjYWxlc0V4dHJlbXM6IGFueVtdID0gW107XG5cbiAgICBbeCwgeSwgel0uZm9yRWFjaCgoc2NhbGUsIGlkeCkgPT4ge1xuICAgICAgY29uc3QgZ2VuZXJhdGVkVGlja3MgPSBzY2FsZS50aWNrcyh0aGlzLlNJREVfU0laRSAvIDEwKTtcblxuICAgICAgc2NhbGVzRXh0cmVtcy5wdXNoKGQzLm1heChnZW5lcmF0ZWRUaWNrcykpO1xuXG4gICAgICBnZW5lcmF0ZWRUaWNrcy5mb3JFYWNoKChfOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3Qgc3ByaXRlID0gdGhpcy5tYWtlU3ByaXRlKF8pO1xuXG4gICAgICAgIGlmIChpZHggPT09IDApIHtcbiAgICAgICAgICBzcHJpdGUucG9zaXRpb24uc2V0KHgoXyksIHkoeS5kb21haW4oKVsxXSksIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlkeCA9PT0gMSkge1xuICAgICAgICAgIHNwcml0ZS5wb3NpdGlvbi5zZXQoLTEwLCB5KF8pLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpZHggPT09IDIpIHtcbiAgICAgICAgICBzcHJpdGUucG9zaXRpb24uc2V0KDAsIHkoeS5kb21haW4oKVsxXSksIHooXykpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGlja3MuYWRkKHNwcml0ZSk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG5vcnRoTGFiZWwgPSB0aGlzLm1ha2VTcHJpdGUoJ1gnLCB7IGZvbnRTaXplOiAyOCB9KTtcbiAgICBjb25zdCB3ZXN0TGFiZWwgPSB0aGlzLm1ha2VTcHJpdGUoJ1knLCB7IGZvbnRTaXplOiAyOCB9KTtcbiAgICBjb25zdCB0dmRMYWJlbCA9IHRoaXMubWFrZVNwcml0ZSgnVFZEJywgeyBmb250U2l6ZTogMjggfSk7XG5cbiAgICBub3J0aExhYmVsLnBvc2l0aW9uLnNldCh4KHguZG9tYWluKClbMV0pICsgNSwgMCwgMCk7XG4gICAgd2VzdExhYmVsLnBvc2l0aW9uLnNldCgwLCAwLCB5KHkuZG9tYWluKClbMF0pICsgNSk7XG4gICAgdHZkTGFiZWwucG9zaXRpb24uc2V0KDAsIHooei5kb21haW4oKVsxXSkgKyA1LCAwKTtcblxuICAgIHRpY2tzLmFkZChub3J0aExhYmVsLCB3ZXN0TGFiZWwsIHR2ZExhYmVsKTtcblxuICAgIGNvbnN0IGF4ZXNIZWxwZXIgPSBuZXcgVEhSRUUuQXhlc0hlbHBlcih0aGlzLlNJREVfU0laRSk7XG4gICAgYXhlc0hlbHBlci5zZXRDb2xvcnModGhpcy5heGVzQ29sb3IsIHRoaXMuYXhlc0NvbG9yLCB0aGlzLmF4ZXNDb2xvcik7XG5cbiAgICB0aGlzLl9zY2VuZS5hZGQoYXhlc0hlbHBlcik7XG5cbiAgICB0aGlzLl9zY2VuZS5hZGQodGlja3MpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTY2FsZXMoc2VyaWVzOiBTZXJpZXMzZDxCYXNlM2RQb2ludD5bXSkge1xuICAgIGNvbnN0IGV4dHJlbXMgPSBzZXJpZXMubWFwKChfKSA9PiAoe1xuICAgICAgeDogZDMuZXh0ZW50KF8ucG9pbnRzLCAocDogYW55KSA9PiBwLngpLFxuICAgICAgeTogZDMuZXh0ZW50KF8ucG9pbnRzLCAocDogYW55KSA9PiBwLnkpLFxuICAgICAgejogZDMuZXh0ZW50KF8ucG9pbnRzLCAocDogYW55KSA9PiBwLnopLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IGZsYXR0ZW5FeHRyZW1zID0gZXh0cmVtcy5yZWR1Y2UoXG4gICAgICAoYWNjOiBhbnksIF8pOiB7IHg6IFtudW1iZXJdOyB5OiBbbnVtYmVyXTsgejogW251bWJlcl0gfSA9PiB7XG4gICAgICAgIGFjYy54ID0gYWNjLnguY29uY2F0KF8ueCk7XG4gICAgICAgIGFjYy55ID0gYWNjLnkuY29uY2F0KF8ueSk7XG4gICAgICAgIGFjYy56ID0gYWNjLnouY29uY2F0KF8ueik7XG4gICAgICAgIHJldHVybiBhY2MgYXMgYW55O1xuICAgICAgfSxcbiAgICAgIHsgeDogW10sIHk6IFtdLCB6OiBbXSB9XG4gICAgKTtcblxuICAgIGNvbnN0IHggPSBkM1xuICAgICAgLnNjYWxlTGluZWFyKClcbiAgICAgIC5kb21haW4oWzAsIHRoaXMuX2NvbmZpZz8uYXhlcz8ubWF4ID09IG51bGwgPyBwYXJzZUludChkMy5tYXgoZmxhdHRlbkV4dHJlbXMueCkpIDogdGhpcy5fY29uZmlnLmF4ZXMubWF4XSlcbiAgICAgIC5yYW5nZShbMCwgdGhpcy5TSURFX1NJWkVdKVxuICAgICAgLm5pY2UoKTtcblxuICAgIGNvbnN0IHkgPSBkM1xuICAgICAgLnNjYWxlTGluZWFyKClcbiAgICAgIC5kb21haW4oWzAsIHBhcnNlSW50KGQzLm1heChmbGF0dGVuRXh0cmVtcy55KSwgMTApXSlcbiAgICAgIC5yYW5nZShbdGhpcy5TSURFX1NJWkUsIDBdKTtcblxuICAgIGNvbnN0IHogPSBkM1xuICAgICAgLnNjYWxlTGluZWFyKClcbiAgICAgIC5kb21haW4oWzAsIHRoaXMuX2NvbmZpZz8uYXhlcz8ubWF4ID09IG51bGwgPyBwYXJzZUludChkMy5tYXgoZmxhdHRlbkV4dHJlbXMueikpIDogdGhpcy5fY29uZmlnLmF4ZXMubWF4XSlcbiAgICAgIC5yYW5nZShbMCwgdGhpcy5TSURFX1NJWkVdKVxuICAgICAgLm5pY2UoKTtcblxuICAgIHJldHVybiB7IHgsIHksIHogfTtcbiAgfVxufVxuIiwiPGNhbnZhcyAjY2FudmFzPjwvY2FudmFzPlxuIl19
@@ -4,4 +4,4 @@ export class Chart3dOptions {
4
4
  this.series = options?.series || [];
5
5
  }
6
6
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtM2Qtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hhcnQtM2QvbW9kZWwvY2hhcnQtM2Qtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sY0FBYztJQVN6QixZQUFZLE9BQXdCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2UzZFBvaW50IH0gZnJvbSAnLi9iYXNlLTNkLXBvaW50JztcbmltcG9ydCB7IFNlcmllczNkIH0gZnJvbSAnLi9zZXJpZXMtM2QnO1xuXG5leHBvcnQgY2xhc3MgQ2hhcnQzZE9wdGlvbnMge1xuICBheGVzPzoge1xuICAgIG1pbj86IG51bWJlcjtcbiAgICBtYXg/OiBudW1iZXI7XG5cbiAgfTtcblxuICBzZXJpZXM6IFNlcmllczNkPEJhc2UzZFBvaW50PltdO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM/OiBDaGFydDNkT3B0aW9ucykge1xuICAgIHRoaXMuYXhlcyA9IHsgLi4ub3B0aW9ucz8uYXhlcyB9O1xuICAgIHRoaXMuc2VyaWVzID0gb3B0aW9ucz8uc2VyaWVzIHx8IFtdO1xuICB9XG59XG4iXX0=
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtM2Qtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hhcnQtM2QvbW9kZWwvY2hhcnQtM2Qtb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sY0FBYztJQVF6QixZQUFZLE9BQXdCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2UzZFBvaW50IH0gZnJvbSAnLi9iYXNlLTNkLXBvaW50JztcbmltcG9ydCB7IFNlcmllczNkIH0gZnJvbSAnLi9zZXJpZXMtM2QnO1xuXG5leHBvcnQgY2xhc3MgQ2hhcnQzZE9wdGlvbnMge1xuICBheGVzPzoge1xuICAgIG1pbj86IG51bWJlcjtcbiAgICBtYXg/OiBudW1iZXI7XG4gIH07XG5cbiAgc2VyaWVzOiBTZXJpZXMzZDxCYXNlM2RQb2ludD5bXTtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zPzogQ2hhcnQzZE9wdGlvbnMpIHtcbiAgICB0aGlzLmF4ZXMgPSB7IC4uLm9wdGlvbnM/LmF4ZXMgfTtcbiAgICB0aGlzLnNlcmllcyA9IG9wdGlvbnM/LnNlcmllcyB8fCBbXTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  export * from './chart3d/chart3d.component';
2
2
  export * from './model/public-api';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hhcnQtM2QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmV4cG9ydCAqIGZyb20gJy4vY2hhcnQzZC9jaGFydDNkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3B1YmxpYy1hcGknO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hhcnQtM2QvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoYXJ0M2QvY2hhcnQzZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -100,11 +100,11 @@ export class CheckboxComponent {
100
100
  this.cdr.detectChanges();
101
101
  }
102
102
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: CheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
103
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: CheckboxComponent, isStandalone: true, selector: "teta-checkbox", inputs: { class: "class", palette: "palette", noLabel: "noLabel", disabled: "disabled", value: "value", binary: "binary", labelPosition: "labelPosition", allowNull: "allowNull" }, host: { listeners: { "click": "changeValue()" }, properties: { "attr.tabindex": "this.tabindex", "class": "this.getClass", "class.checkbox_disabled": "this.disabled" } }, providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "@if (labelPosition==='right') {\n <div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n </div>\n @if (!noLabel) {\n <span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n }\n}\n@if (labelPosition==='left') {\n @if (!noLabel) {\n <span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n }\n <div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n </div>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
103
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: CheckboxComponent, isStandalone: true, selector: "teta-checkbox", inputs: { class: "class", palette: "palette", noLabel: "noLabel", disabled: "disabled", value: "value", binary: "binary", labelPosition: "labelPosition", allowNull: "allowNull" }, host: { listeners: { "click": "changeValue()" }, properties: { "attr.tabindex": "this.tabindex", "class": "this.getClass", "class.checkbox_disabled": "this.disabled" } }, providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "@if (labelPosition==='right') {\n<div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n</div>\n@if (!noLabel) {\n<span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n} } @if (labelPosition==='left') { @if (!noLabel) {\n<span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n<div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n</div>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
104
104
  }
105
105
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: CheckboxComponent, decorators: [{
106
106
  type: Component,
107
- args: [{ selector: 'teta-checkbox', providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [IconComponent, NgTemplateOutlet], template: "@if (labelPosition==='right') {\n <div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n </div>\n @if (!noLabel) {\n <span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n }\n}\n@if (labelPosition==='left') {\n @if (!noLabel) {\n <span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n }\n <div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n </div>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n" }]
107
+ args: [{ selector: 'teta-checkbox', providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [IconComponent, NgTemplateOutlet], template: "@if (labelPosition==='right') {\n<div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n</div>\n@if (!noLabel) {\n<span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n} } @if (labelPosition==='left') { @if (!noLabel) {\n<span class=\"font-body-3\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</span>\n}\n<div class=\"checkbox__tick\" [class.checkbox__tick_active]=\"checked != false\">\n <teta-icon [name]=\"checked ? 'tick' : checked === false ? '' : 'dash'\"></teta-icon>\n</div>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n" }]
108
108
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { tabindex: [{
109
109
  type: HostBinding,
110
110
  args: ['attr.tabindex']
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
134
134
  type: HostListener,
135
135
  args: ['click']
136
136
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9jaGVja2JveC9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoZWNrYm94L2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFL0QsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQVE7SUFDbEQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQVdGLE1BQU0sT0FBTyxpQkFBaUI7SUFLNUIsSUFDWSxRQUFRO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBNkJELElBQUksS0FBSztR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QUFDO0lBRWIsUUFBUSxDQUFDLENBQU0sSUFBRyxDQUFDO0lBRW5CLFNBQVMsS0FBSSxDQUFDO0lBRWQsZ0JBQWdCLENBQUMsRUFBb0I7UUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0ExSFUsaUJBQWlCO2tHQUFqQixpQkFBaUIsMlpBTGYsQ0FBQywrQkFBK0IsQ0FBQywwQkN4QmhELGt4QkFxQkEsMERETWMsYUFBYSxvR0FBRSxnQkFBZ0I7OzJGQUVoQyxpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0ksZUFBZSxhQUdkLENBQUMsK0JBQStCLENBQUMsbUJBQzNCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFFLGdCQUFnQixDQUFDO3NGQUdkLFFBQVE7c0JBQXJDLFdBQVc7dUJBQUMsZUFBZTtnQkFFbkIsS0FBSztzQkFBYixLQUFLO2dCQUdNLFFBQVE7c0JBRG5CLFdBQVc7dUJBQUMsT0FBTztnQkFTWCxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQU9OLFFBQVE7c0JBRlAsV0FBVzt1QkFBQyx5QkFBeUI7O3NCQUNyQyxLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFJRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQXVCTixXQUFXO3NCQURWLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ljb24vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBDSEVDS0JPWF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGVja2JveENvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0ZXRhLWNoZWNrYm94JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NoZWNrYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbQ0hFQ0tCT1hfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbSWNvbkNvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrYm94Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpIHRhYmluZGV4ID0gMDtcblxuICBASW5wdXQoKSBjbGFzcztcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgZ2V0Q2xhc3MoKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gW3RoaXMuY2xhc3MsICdjaGVja2JveCddO1xuICAgIGlmICh0aGlzLnBhbGV0dGUpIHtcbiAgICAgIHJlc3VsdC5wdXNoKGBjaGVja2JveC0ke3RoaXMucGFsZXR0ZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdC5qb2luKCcgJyk7XG4gIH1cblxuICBASW5wdXQoKSBwYWxldHRlID0gJ3ByaW1hcnknO1xuICBASW5wdXQoKSBub0xhYmVsOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiDQutC+0LzQv9C+0L3QtdC90YIg0L3QtdCw0LrRgtC40LLQtdC9XG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNoZWNrYm94X2Rpc2FibGVkJylcbiAgQElucHV0KClcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiB0cnVlL2ZhbHNlINC40LvQuCBsaXN0XG4gICAqL1xuICBASW5wdXQoKSB2YWx1ZTogYW55O1xuICAvKipcbiAgICogdHJ1ZS9mYWxzZSDQuNC70LggbGlzdFxuICAgKi9cbiAgQElucHV0KCkgYmluYXJ5OiBib29sZWFuO1xuICBASW5wdXQoKSBsYWJlbFBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnID0gJ3JpZ2h0JztcbiAgQElucHV0KCkgYWxsb3dOdWxsOiBib29sZWFuO1xuXG4gIGNoZWNrZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqINCX0L3QsNGH0LXQvdC40LVcbiAgICovXG4gIHByaXZhdGUgbW9kZWwkOiBhbnkgPSBudWxsO1xuXG4gIGdldCBtb2RlbCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm1vZGVsJDtcbiAgfVxuXG4gIHNldCBtb2RlbCh2OiBhbnkpIHtcbiAgICBpZiAodiAhPT0gdGhpcy5tb2RlbCQpIHtcbiAgICAgIHRoaXMubW9kZWwkID0gdjtcbiAgICAgIHRoaXMub25DaGFuZ2Uodik7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgY2hhbmdlVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmluYXJ5KSB7XG4gICAgICB0aGlzLm1vZGVsID0gIXRoaXMubW9kZWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5pc0NoZWNrZWQoKSkge1xuICAgICAgICB0aGlzLmFkZFZhbHVlKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbW92ZVZhbHVlKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaXNDaGVja2VkKCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKG1vZGVsOiBhbnkpIHtcbiAgICBpZiAodGhpcy5iaW5hcnkpIHtcbiAgICAgIHRoaXMubW9kZWwkID0gbW9kZWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChtb2RlbCAmJiBtb2RlbCBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgIHRoaXMubW9kZWwkID0gbW9kZWw7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm1vZGVsJCA9IFtdO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmNoZWNrZWQgPSB0aGlzLmlzQ2hlY2tlZCgpO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGlzQ2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5iaW5hcnkpIHtcbiAgICAgIHJldHVybiB0aGlzLmFsbG93TnVsbCA/IHRoaXMubW9kZWwgOiAhIXRoaXMubW9kZWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLm1vZGVsICYmIHRoaXMubW9kZWwuaW5kZXhPZih0aGlzLnZhbHVlKSA+PSAwO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZVZhbHVlKCkge1xuICAgIHRoaXMubW9kZWwgPSB0aGlzLm1vZGVsLmZpbHRlcigodmFsOiBhbnkpID0+IHZhbCAhPT0gdGhpcy52YWx1ZSk7XG4gIH1cblxuICBhZGRWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbCkge1xuICAgICAgdGhpcy5tb2RlbCA9IFsuLi50aGlzLm1vZGVsLCB0aGlzLnZhbHVlXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2RlbCA9IFt0aGlzLnZhbHVlXTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgb25DaGFuZ2UoXzogYW55KSB7fVxuXG4gIG9uVG91Y2hlZCgpIHt9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbn1cbiIsIkBpZiAobGFiZWxQb3NpdGlvbj09PSdyaWdodCcpIHtcbiAgPGRpdiBjbGFzcz1cImNoZWNrYm94X190aWNrXCIgW2NsYXNzLmNoZWNrYm94X190aWNrX2FjdGl2ZV09XCJjaGVja2VkICE9IGZhbHNlXCI+XG4gICAgPHRldGEtaWNvbiBbbmFtZV09XCJjaGVja2VkID8gJ3RpY2snIDogY2hlY2tlZCA9PT0gZmFsc2UgPyAnJyA6ICdkYXNoJ1wiPjwvdGV0YS1pY29uPlxuICA8L2Rpdj5cbiAgQGlmICghbm9MYWJlbCkge1xuICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ib2R5LTNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9zcGFuPlxuICB9XG59XG5AaWYgKGxhYmVsUG9zaXRpb249PT0nbGVmdCcpIHtcbiAgQGlmICghbm9MYWJlbCkge1xuICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ib2R5LTNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9zcGFuPlxuICB9XG4gIDxkaXYgY2xhc3M9XCJjaGVja2JveF9fdGlja1wiIFtjbGFzcy5jaGVja2JveF9fdGlja19hY3RpdmVdPVwiY2hlY2tlZCAhPSBmYWxzZVwiPlxuICAgIDx0ZXRhLWljb24gW25hbWVdPVwiY2hlY2tlZCA/ICd0aWNrJyA6IGNoZWNrZWQgPT09IGZhbHNlID8gJycgOiAnZGFzaCdcIj48L3RldGEtaWNvbj5cbiAgPC9kaXY+XG59XG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9jaGVja2JveC9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2NoZWNrYm94L2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFL0QsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQVE7SUFDbEQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQVdGLE1BQU0sT0FBTyxpQkFBaUI7SUFLNUIsSUFDWSxRQUFRO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN4QyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBNkJELElBQUksS0FBSztR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QUFDO0lBRWIsUUFBUSxDQUFDLENBQU0sSUFBRyxDQUFDO0lBRW5CLFNBQVMsS0FBSSxDQUFDO0lBRWQsZ0JBQWdCLENBQUMsRUFBb0I7UUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0ExSFUsaUJBQWlCO2tHQUFqQixpQkFBaUIsMlpBTGpCLENBQUMsK0JBQStCLENBQUMsMEJDeEI5QyxtdUJBa0JBLDBERFNZLGFBQWEsb0dBQUUsZ0JBQWdCOzsyRkFFOUIsaUJBQWlCO2tCQVQ3QixTQUFTOytCQUNFLGVBQWUsYUFHZCxDQUFDLCtCQUErQixDQUFDLG1CQUMzQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQztzRkFHWixRQUFRO3NCQUFyQyxXQUFXO3VCQUFDLGVBQWU7Z0JBRW5CLEtBQUs7c0JBQWIsS0FBSztnQkFHTSxRQUFRO3NCQURuQixXQUFXO3VCQUFDLE9BQU87Z0JBU1gsT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFPTixRQUFRO3NCQUZQLFdBQVc7dUJBQUMseUJBQXlCOztzQkFDckMsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkF1Qk4sV0FBVztzQkFEVixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9pY29uL2ljb24vaWNvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgQ0hFQ0tCT1hfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hlY2tib3hDb21wb25lbnQpLFxuICBtdWx0aTogdHJ1ZSxcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGVja2JveC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtDSEVDS0JPWF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJY29uQ29tcG9uZW50LCBOZ1RlbXBsYXRlT3V0bGV0XSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0IHtcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgdGFiaW5kZXggPSAwO1xuXG4gIEBJbnB1dCgpIGNsYXNzO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcml2YXRlIGdldCBnZXRDbGFzcygpIHtcbiAgICBjb25zdCByZXN1bHQgPSBbdGhpcy5jbGFzcywgJ2NoZWNrYm94J107XG4gICAgaWYgKHRoaXMucGFsZXR0ZSkge1xuICAgICAgcmVzdWx0LnB1c2goYGNoZWNrYm94LSR7dGhpcy5wYWxldHRlfWApO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0LmpvaW4oJyAnKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHBhbGV0dGUgPSAncHJpbWFyeSc7XG4gIEBJbnB1dCgpIG5vTGFiZWw6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqINC60L7QvNC/0L7QvdC10L3RgiDQvdC10LDQutGC0LjQstC10L1cbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY2hlY2tib3hfZGlzYWJsZWQnKVxuICBASW5wdXQoKVxuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgLyoqXG4gICAqIHRydWUvZmFsc2Ug0LjQu9C4IGxpc3RcbiAgICovXG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG4gIC8qKlxuICAgKiB0cnVlL2ZhbHNlINC40LvQuCBsaXN0XG4gICAqL1xuICBASW5wdXQoKSBiaW5hcnk6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGxhYmVsUG9zaXRpb246ICdsZWZ0JyB8ICdyaWdodCcgPSAncmlnaHQnO1xuICBASW5wdXQoKSBhbGxvd051bGw6IGJvb2xlYW47XG5cbiAgY2hlY2tlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICog0JfQvdCw0YfQtdC90LjQtVxuICAgKi9cbiAgcHJpdmF0ZSBtb2RlbCQ6IGFueSA9IG51bGw7XG5cbiAgZ2V0IG1vZGVsKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWwkO1xuICB9XG5cbiAgc2V0IG1vZGVsKHY6IGFueSkge1xuICAgIGlmICh2ICE9PSB0aGlzLm1vZGVsJCkge1xuICAgICAgdGhpcy5tb2RlbCQgPSB2O1xuICAgICAgdGhpcy5vbkNoYW5nZSh2KTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBjaGFuZ2VWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5iaW5hcnkpIHtcbiAgICAgIHRoaXMubW9kZWwgPSAhdGhpcy5tb2RlbDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCF0aGlzLmlzQ2hlY2tlZCgpKSB7XG4gICAgICAgIHRoaXMuYWRkVmFsdWUoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVtb3ZlVmFsdWUoKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5jaGVja2VkID0gdGhpcy5pc0NoZWNrZWQoKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUobW9kZWw6IGFueSkge1xuICAgIGlmICh0aGlzLmJpbmFyeSkge1xuICAgICAgdGhpcy5tb2RlbCQgPSBtb2RlbDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKG1vZGVsICYmIG1vZGVsIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgICAgdGhpcy5tb2RlbCQgPSBtb2RlbDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9kZWwkID0gW107XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaXNDaGVja2VkKCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgaXNDaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmJpbmFyeSkge1xuICAgICAgcmV0dXJuIHRoaXMuYWxsb3dOdWxsID8gdGhpcy5tb2RlbCA6ICEhdGhpcy5tb2RlbDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubW9kZWwgJiYgdGhpcy5tb2RlbC5pbmRleE9mKHRoaXMudmFsdWUpID49IDA7XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlVmFsdWUoKSB7XG4gICAgdGhpcy5tb2RlbCA9IHRoaXMubW9kZWwuZmlsdGVyKCh2YWw6IGFueSkgPT4gdmFsICE9PSB0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIGFkZFZhbHVlKCkge1xuICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsID0gWy4uLnRoaXMubW9kZWwsIHRoaXMudmFsdWVdO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGVsID0gW3RoaXMudmFsdWVdO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge31cblxuICBvbkNoYW5nZShfOiBhbnkpIHt9XG5cbiAgb25Ub3VjaGVkKCkge31cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiQGlmIChsYWJlbFBvc2l0aW9uPT09J3JpZ2h0Jykge1xuPGRpdiBjbGFzcz1cImNoZWNrYm94X190aWNrXCIgW2NsYXNzLmNoZWNrYm94X190aWNrX2FjdGl2ZV09XCJjaGVja2VkICE9IGZhbHNlXCI+XG4gIDx0ZXRhLWljb24gW25hbWVdPVwiY2hlY2tlZCA/ICd0aWNrJyA6IGNoZWNrZWQgPT09IGZhbHNlID8gJycgOiAnZGFzaCdcIj48L3RldGEtaWNvbj5cbjwvZGl2PlxuQGlmICghbm9MYWJlbCkge1xuPHNwYW4gY2xhc3M9XCJmb250LWJvZHktM1wiPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuPC9zcGFuPlxufSB9IEBpZiAobGFiZWxQb3NpdGlvbj09PSdsZWZ0JykgeyBAaWYgKCFub0xhYmVsKSB7XG48c3BhbiBjbGFzcz1cImZvbnQtYm9keS0zXCI+XG4gIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG48L3NwYW4+XG59XG48ZGl2IGNsYXNzPVwiY2hlY2tib3hfX3RpY2tcIiBbY2xhc3MuY2hlY2tib3hfX3RpY2tfYWN0aXZlXT1cImNoZWNrZWQgIT0gZmFsc2VcIj5cbiAgPHRldGEtaWNvbiBbbmFtZV09XCJjaGVja2VkID8gJ3RpY2snIDogY2hlY2tlZCA9PT0gZmFsc2UgPyAnJyA6ICdkYXNoJ1wiPjwvdGV0YS1pY29uPlxuPC9kaXY+XG59XG48bmctdGVtcGxhdGUgI2NvbnRlbnQ+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export * from './checkbox/checkbox.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hlY2tib3gvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgKiBmcm9tICcuL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvY2hlY2tib3gvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuIl19
@@ -25,37 +25,30 @@ export class BaseCalendar {
25
25
  };
26
26
  }
27
27
  generateCalendar(selectedDate, year, month, minMax) {
28
- const calendarStartDay = selectedDate
29
- .set('year', year)
30
- .set('month', month)
31
- .set('date', 1)
32
- .startOf('week');
28
+ const calendarStartDay = selectedDate.set('year', year).set('month', month).set('date', 1).startOf('week');
33
29
  const calendar = new Array(42).fill(1).map((v, i) => {
34
30
  return calendarStartDay.add(i, 'day');
35
31
  });
36
- return calendar.map(d => {
32
+ return calendar.map((d) => {
37
33
  return new DayModel({
38
34
  date: new Date(d.toDate()),
39
35
  isCurrentMonth: month === d.month(),
40
- disabled: !this.isSuitableMinDate(d.toDate(), minMax.min) ||
41
- !this.isSuitableMaxDate(d.toDate(), minMax.max),
36
+ disabled: !this.isSuitableMinDate(d.toDate(), minMax.min) || !this.isSuitableMaxDate(d.toDate(), minMax.max),
42
37
  selected: this.isSelected(d.toDate(), selectedDate.toDate()),
43
38
  });
44
39
  });
45
40
  }
46
41
  isSuitableMinDate(d, minDate) {
47
- return (dayjs(new Date(minDate)).startOf('date').toDate() <= new Date(d) ||
48
- !minDate);
42
+ return dayjs(new Date(minDate)).startOf('date').toDate() <= new Date(d) || !minDate;
49
43
  }
50
44
  isSuitableMaxDate(d, maxDate) {
51
- return (new Date(d) < dayjs(new Date(maxDate)).endOf('date').toDate() ||
52
- !maxDate);
45
+ return new Date(d) < dayjs(new Date(maxDate)).endOf('date').toDate() || !maxDate;
53
46
  }
54
47
  isSelected(date, selectedDate) {
55
48
  const isSelectedDate = date.getDate() === selectedDate?.getDate();
56
49
  const isSelectedYear = date.getFullYear() === selectedDate?.getFullYear();
57
50
  const isSelectedMonth = date.getMonth() === selectedDate?.getMonth();
58
- return (isSelectedDate && isSelectedMonth && isSelectedYear && !this.isDateNull);
51
+ return isSelectedDate && isSelectedMonth && isSelectedYear && !this.isDateNull;
59
52
  }
60
53
  ngOnDestroy() {
61
54
  this.alive = false;
@@ -125,4 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImpor
125
118
  changeDetection: ChangeDetectionStrategy.OnPush,
126
119
  }]
127
120
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jYWxlbmRhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvZGF0ZS1waWNrZXIvYmFzZS1jYWxlbmRhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBS1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFjLE1BQU0sT0FBTyxDQUFDO0FBQ25DLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBR3BELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQzs7QUFRM0MsTUFBTSxPQUFnQixZQUFZO0lBcUJoQyxZQUFnQyxJQUF1QjtRQUF2QixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQVpoRCxpQkFBWSxHQUEwQixJQUFJLGFBQWEsQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUNuRSxXQUFNLEdBQ1gsSUFBSSxhQUFhLENBQWtCLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLGdCQUFXLEdBQTBCLElBQUksYUFBYSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLG1CQUFjLEdBQ25CLElBQUksZUFBZSxDQUEyQixLQUFLLENBQUMsQ0FBQztRQUtoRCxVQUFLLEdBQUcsSUFBSSxDQUFDO1FBNEhwQixnQkFBVyxHQUFHLENBQUMsQ0FBTSxFQUFFLEtBQWEsRUFBRSxJQUFZLEVBQUUsRUFBRTtZQUNwRCxNQUFNLEtBQUssR0FBRyxDQUFDLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsWUFBWSxVQUFVLEVBQUUsQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3JCLENBQUM7WUFDRCxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsSUFBSSxD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LENBQUM7UUFDL0QsQ0FBQztRQUNELElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2QsT0FBTyxFQUFDLGNBQWMsRUFBRSxFQUFFLEdBQUcsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFDLENBQUM7UUFDL0QsQ0FBQztRQUNELE9BQU8sRUFBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVU7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQzs4R0E3SW1CLFlBQVk7a0dBQVosWUFBWSx5RUFIdEIsRUFBRTs7MkZBR1EsWUFBWTtrQkFKakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgZGF5anMsIHtEYXlqc30gZnJvbSAnZGF5anMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIFJlcGxheVN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge3ZpZXdUeXBlfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvdmlldy10eXBlLm1vZGVsJztcbmltcG9ydCB7RGF5TW9kZWx9IGZyb20gJy4vbW9kZWwvZGF5LW1vZGVsJztcbmltcG9ydCB7TWluTWF4RGF0ZU1vZGVsfSBmcm9tICcuL21vZGVsL21pbi1tYXgtZGF0ZS5tb2RlbCc7XG5pbXBvcnQge1RldGFMb2NhbGlzYXRpb259IGZyb20gXCIuLi8uLi9sb2NhbGUvdGV0YS1sb2NhbGlzYXRpb25cIjtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VDYWxlbmRhciBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgYWJzdHJhY3Qgc2VsZWN0ZWREYXRlO1xuICBhYnN0cmFjdCBsb2NhbGU6IFRldGFMb2NhbGlzYXRpb247XG4gIGFic3RyYWN0IG9wZW46IGJvb2xlYW47XG4gIGFic3RyYWN0IHZpZXdUeXBlOiB2aWV3VHlwZTtcbiAgYWJzdHJhY3QgbWluOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICBhYnN0cmFjdCBpc0RhdGVOdWxsOiBib29sZWFuO1xuICBhYnN0cmFjdCBtYXg6IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIGFic3RyYWN0IHNldERhdGU6IEV2ZW50RW1pdHRlcjxEYXRlPjtcbiAgcHVibGljIGN1cnJlbnRNb250aDogUmVwbGF5U3ViamVjdDxudW1iZXI+ID0gbmV3IFJlcGxheVN1YmplY3Q8bnVtYmVyPigxKTtcbiAgcHVibGljIG1pbk1heDogUmVwbGF5U3ViamVjdDxNaW5NYXhEYXRlTW9kZWw+ID1cbiAgICBuZXcgUmVwbGF5U3ViamVjdDxNaW5NYXhEYXRlTW9kZWw+KDEpO1xuICBwdWJsaWMgY3VycmVudFllYXI6IFJlcGxheVN1YmplY3Q8bnVtYmVyPiA9IG5ldyBSZXBsYXlTdWJqZWN0PG51bWJlcj4oMSk7XG4gIHB1YmxpYyBzZWxlY3RlZFBpY2tlcjogQmVoYXZpb3JTdWJqZWN0PCdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJz4gPVxuICAgIG5ldyBCZWhhdmlvclN1YmplY3Q8J2RheScgfCAnbW9udGgnIHwgJ3llYXInPignZGF5Jyk7XG4gIGFic3RyYWN0IGNhbGVuZGFyOlxuICAgIHwgRGF5TW9kZWxbXVxuICAgIHwgeyBjdXJyZW50TW9udGg6IERheU1vZGVsW107IG5leHRNb250aDogRGF5TW9kZWxbXSB9O1xuXG4gIHB1YmxpYyBhbGl2ZSA9IHRydWU7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICB9XG5cbiAgZ2VuZXJhdGVDYWxlbmRhcihcbiAgICBzZWxlY3RlZERhdGU6IERheWpzLFxuICAgIHllYXI6IG51bWJlcixcbiAgICBtb250aDogbnVtYmVyLFxuICAgIG1pbk1heDogTWluTWF4RGF0ZU1vZGVsXG4gICk6IERheU1vZGVsW10ge1xuICAgIGNvbnN0IGNhbGVuZGFyU3RhcnREYXkgPSBzZWxlY3RlZERhdGVcbiAgICAgIC5zZXQoJ3llYXInLCB5ZWFyKVxuICAgICAgLnNldCgnbW9udGgnLCBtb250aClcbiAgICAgIC5zZXQoJ2RhdGUnLCAxKVxuICAgICAgLnN0YXJ0T2YoJ3dlZWsnKTtcbiAgICBjb25zdCBjYWxlbmRhciA9IG5ldyBBcnJheSg0MikuZmlsbCgxKS5tYXAoKHYsIGkpID0+IHtcbiAgICAgIHJldHVybiBjYWxlbmRhclN0YXJ0RGF5LmFkZChpLCAnZGF5Jyk7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNhbGVuZGFyLm1hcChkID0+IHtcbiAgICAgIHJldHVybiBuZXcgRGF5TW9kZWwoe1xuICAgICAgICBkYXRlOiBuZXcgRGF0ZShkLnRvRGF0ZSgpKSxcbiAgICAgICAgaXNDdXJyZW50TW9udGg6IG1vbnRoID09PSBkLm1vbnRoKCksXG4gICAgICAgIGRpc2FibGVkOlxuICAgICAgICAgICF0aGlzLmlzU3VpdGFibGVNaW5EYXRlKGQudG9EYXRlKCksIG1pbk1heC5taW4pIHx8XG4gICAgICAgICAgIXRoaXMuaXNTdWl0YWJsZU1heERhdGUoZC50b0RhdGUoKSwgbWluTWF4Lm1heCksXG4gICAgICAgIHNlbGVjdGVkOiB0aGlzLmlzU2VsZWN0ZWQoZC50b0RhdGUoKSwgc2VsZWN0ZWREYXRlLnRvRGF0ZSgpKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgaXNTdWl0YWJsZU1pbkRhdGUoZDogRGF0ZSwgbWluRGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcikge1xuICAgIHJldHVybiAoXG4gICAgICBkYXlqcyhuZXcgRGF0ZShtaW5EYXRlKSkuc3RhcnRPZignZGF0ZScpLnRvRGF0ZSgpIDw9IG5ldyBEYXRlKGQpIHx8XG4gICAgICAhbWluRGF0ZVxuICAgICk7XG4gIH1cblxuICBpc1N1aXRhYmxlTWF4RGF0ZShkOiBEYXRlLCBtYXhEYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIG5ldyBEYXRlKGQpIDwgZGF5anMobmV3IERhdGUobWF4RGF0ZSkpLmVuZE9mKCdkYXRlJykudG9EYXRlKCkgfHxcbiAgICAgICFtYXhEYXRlXG4gICAgKTtcbiAgfVxuXG4gIGlzU2VsZWN0ZWQoZGF0ZTogRGF0ZSwgc2VsZWN0ZWREYXRlOiBEYXRlKSB7XG4gICAgY29uc3QgaXNTZWxlY3RlZERhdGUgPSBkYXRlLmdldERhdGUoKSA9PT0gc2VsZWN0ZWREYXRlPy5nZXREYXRlKCk7XG4gICAgY29uc3QgaXNTZWxlY3RlZFllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCkgPT09IHNlbGVjdGVkRGF0ZT8uZ2V0RnVsbFllYXIoKTtcbiAgICBjb25zdCBpc1NlbGVjdGVkTW9udGggPSBkYXRlLmdldE1vbnRoKCkgPT09IHNlbGVjdGVkRGF0ZT8uZ2V0TW9udGgoKTtcbiAgICByZXR1cm4gKFxuICAgICAgaXNTZWxlY3RlZERhdGUgJiYgaXNTZWxlY3RlZE1vbnRoICYmIGlzU2VsZWN0ZWRZZWFyICYmICF0aGlzLmlzRGF0ZU51bGxcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hbGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgc2VsZWN0UGlja2VyKGVudGl0eTogJ2RheScgfCAnbW9udGgnIHwgJ3llYXInKSB7XG4gICAgdGhpcy5zZWxlY3RlZFBpY2tlci5uZXh0KGVudGl0eSk7XG4gIH1cblxuICBzZWxlY3RNb250aChtb250aDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50TW9udGgubmV4dChtb250aCk7XG4gICAgdGhpcy5zZWxlY3RQaWNrZXIoJ2RheScpO1xuICB9XG5cbiAgc2VsZWN0WWVhcih5ZWFyOiBudW1iZXIpIHtcbiAgICB0aGlzLnNldFllYXIoeWVhcik7XG4gICAgdGhpcy5zZWxlY3RQaWNrZXIoJ2RheScpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlQ2FsZW5kYXJEYXRhKHRoaXMuc2VsZWN0ZWREYXRlKTtcbiAgICBpZiAoY2hhbmdlc1snb3BlbiddKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGlja2VyLm5leHQoJ2RheScpXG4gICAgfVxuICB9XG5cbiAgY2hhbmdlQ2FsZW5kYXJEYXRhKHNlbGVjdGVkRGF0ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZykge1xuICAgIGxldCBkYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICAgIGlmICghdGhpcy5pc1N1aXRhYmxlTWluRGF0ZShuZXcgRGF0ZShzZWxlY3RlZERhdGUpLCB0aGlzLm1pbikpIHtcbiAgICAgIGRhdGU9dGhpcy5taW5cbiAgICB9IGVsc2UgaWYgKCF0aGlzLmlzU3VpdGFibGVNYXhEYXRlKG5ldyBEYXRlKHNlbGVjdGVkRGF0ZSksIHRoaXMubWF4KSkge1xuICAgICAgZGF0ZT10aGlzLm1heFxuICAgIH0gZWxzZSB7XG4gICAgICBkYXRlPXNlbGVjdGVkRGF0ZT9zZWxlY3RlZERhdGU6dGhpcy5taW4/dGhpcy5taW46dGhpcy5tYXg/dGhpcy5tYXg6bmV3IERhdGUoKTtcbiAgICB9XG4gICAgdGhpcy5jdXJyZW50TW9udGgubmV4dChuZXcgRGF0ZShkYXRlKS5nZXRNb250aCgpKTtcbiAgICB0aGlzLmN1cnJlbnRZZWFyLm5leHQobmV3IERhdGUoZGF0ZSkuZ2V0RnVsbFllYXIoKSk7XG4gICAgdGhpcy5taW5NYXgubmV4dCh7bWluOiB0aGlzLm1pbiwgbWF4OiB0aGlzLm1heH0pO1xuICB9XG5cbiAgc2V0WWVhcih5ZWFyOiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRZZWFyLm5leHQoeWVhcik7XG4gIH1cblxuICBjaGFuZ2VNb250aChtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpIHtcbiAgICBjb25zdCB7YXZhaWxhYmxlWWVhciwgYXZhaWxhYmxlTW9udGh9ID0gdGhpcy5nZXRBdmFpbGFibGVNb250aFllYXIoXG4gICAgICBtb250aCxcbiAgICAgIHllYXJcbiAgICApO1xuICAgIHRoaXMuY3VycmVudE1vbnRoLm5leHQoYXZhaWxhYmxlTW9udGgpO1xuICAgIHRoaXMuY3VycmVudFllYXIubmV4dChhdmFpbGFibGVZZWFyKTtcbiAgfVxuXG4gIGdldEF2YWlsYWJsZU1vbnRoWWVhcihtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpIHtcbiAgICBpZiAobW9udGggPiAxMSkge1xuICAgICAgcmV0dXJuIHthdmFpbGFibGVNb250aDogbW9udGggLSAxMiwgYXZhaWxhYmxlWWVhcjogeWVhciArIDF9O1xuICAgIH1cbiAgICBpZiAobW9udGggPCAwKSB7XG4gICAgICByZXR1cm4ge2F2YWlsYWJsZU1vbnRoOiAxMiArIG1vbnRoLCBhdmFpbGFibGVZZWFyOiB5ZWFyIC0gMX07XG4gICAgfVxuICAgIHJldHVybiB7YXZhaWxhYmxlTW9udGg6IG1vbnRoLCBhdmFpbGFibGVZZWFyOiB5ZWFyfTtcbiAgfVxuXG4gIGdldE1vdGhOYW1lKG1vbnRoOiBudW1iZXIpIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhbGUubW9udGhzW21vbnRoXTtcbiAgfVxuXG4gIHNlbGVjdERhdGUoZGF0ZTogRGF0ZSkge1xuICAgIHRoaXMuc2V0RGF0ZS5lbWl0KGRhdGUpO1xuICB9XG5cbiAgc2Nyb2xsTW9udGggPSAoZTogYW55LCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpID0+IHtcbiAgICBjb25zdCBkZWx0YSA9IGU/LmRlbHRhWSA/PyBlO1xuICAgIGlmIChlIGluc3RhbmNlb2YgV2hlZWxFdmVudCkge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgICBpZiAoZGVsdGEgPiAwKSB7XG4gICAgICB0aGlzLmNoYW5nZU1vbnRoKG1vbnRoIC0gMSwgeWVhcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2hhbmdlTW9udGgobW9udGggKyAxLCB5ZWFyKTtcbiAgICB9XG4gIH07XG59XG4iXX0=
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jYWxlbmRhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvZGF0ZS1waWNrZXIvYmFzZS1jYWxlbmRhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBS1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxLQUFnQixNQUFNLE9BQU8sQ0FBQztBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBUTdDLE1BQU0sT0FBZ0IsWUFBWTtJQW1CaEMsWUFBZ0MsSUFBdUI7UUFBdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFWaEQsaUJBQVksR0FBMEIsSUFBSSxhQUFhLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsV0FBTSxHQUFtQyxJQUFJLGFBQWEsQ0FBa0IsQ0FBQyxDQUFDLENBQUM7UUFDL0UsZ0JBQVcsR0FBMEIsSUFBSSxhQUFhLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDbEUsbUJBQWMsR0FBOEMsSUFBSSxlQUFlLENBQ3BGLEtBQUssQ0FDTixDQUFDO1FBR0ssVUFBSyxHQUFHLElBQUksQ0FBQztRQXFHcEIsZ0JBQVcsR0FBRyxDQUFDLENBQU0sRUFBRSxLQUFhLEVBQUUsSUFBWSxFQUFFLEVBQUU7WUFDcEQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLFlBQVksVUFBVSxFQUFFLENBQUM7Z0JBQzVCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBQ0QsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLElBQUks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LEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNkLE9BQU8sRUFBRSxjQUFjLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFVO1FBQ25CLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7OEdBcEhtQixZQUFZO2tHQUFaLFlBQVkseUVBSHRCLEVBQUU7OzJGQUdRLFlBQVk7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IERheWpzIH0gZnJvbSAnZGF5anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IHZpZXdUeXBlIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3ZpZXctdHlwZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXlNb2RlbCB9IGZyb20gJy4vbW9kZWwvZGF5LW1vZGVsJztcbmltcG9ydCB7IE1pbk1heERhdGVNb2RlbCB9IGZyb20gJy4vbW9kZWwvbWluLW1heC1kYXRlLm1vZGVsJztcbmltcG9ydCB7IFRldGFMb2NhbGlzYXRpb24gfSBmcm9tICcuLi8uLi9sb2NhbGUvdGV0YS1sb2NhbGlzYXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNhbGVuZGFyIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBhYnN0cmFjdCBzZWxlY3RlZERhdGU7XG4gIGFic3RyYWN0IGxvY2FsZTogVGV0YUxvY2FsaXNhdGlvbjtcbiAgYWJzdHJhY3Qgb3BlbjogYm9vbGVhbjtcbiAgYWJzdHJhY3Qgdmlld1R5cGU6IHZpZXdUeXBlO1xuICBhYnN0cmFjdCBtaW46IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIGFic3RyYWN0IGlzRGF0ZU51bGw6IGJvb2xlYW47XG4gIGFic3RyYWN0IG1heDogRGF0ZSB8IHN0cmluZyB8IG51bWJlcjtcbiAgYWJzdHJhY3Qgc2V0RGF0ZTogRXZlbnRFbWl0dGVyPERhdGU+O1xuICBwdWJsaWMgY3VycmVudE1vbnRoOiBSZXBsYXlTdWJqZWN0PG51bWJlcj4gPSBuZXcgUmVwbGF5U3ViamVjdDxudW1iZXI+KDEpO1xuICBwdWJsaWMgbWluTWF4OiBSZXBsYXlTdWJqZWN0PE1pbk1heERhdGVNb2RlbD4gPSBuZXcgUmVwbGF5U3ViamVjdDxNaW5NYXhEYXRlTW9kZWw+KDEpO1xuICBwdWJsaWMgY3VycmVudFllYXI6IFJlcGxheVN1YmplY3Q8bnVtYmVyPiA9IG5ldyBSZXBsYXlTdWJqZWN0PG51bWJlcj4oMSk7XG4gIHB1YmxpYyBzZWxlY3RlZFBpY2tlcjogQmVoYXZpb3JTdWJqZWN0PCdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PCdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJz4oXG4gICAgJ2RheSdcbiAgKTtcbiAgYWJzdHJhY3QgY2FsZW5kYXI6IERheU1vZGVsW10gfCB7IGN1cnJlbnRNb250aDogRGF5TW9kZWxbXTsgbmV4dE1vbnRoOiBEYXlNb2RlbFtdIH07XG5cbiAgcHVibGljIGFsaXZlID0gdHJ1ZTtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIGdlbmVyYXRlQ2FsZW5kYXIoc2VsZWN0ZWREYXRlOiBEYXlqcywgeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBtaW5NYXg6IE1pbk1heERhdGVNb2RlbCk6IERheU1vZGVsW10ge1xuICAgIGNvbnN0IGNhbGVuZGFyU3RhcnREYXkgPSBzZWxlY3RlZERhdGUuc2V0KCd5ZWFyJywgeWVhcikuc2V0KCdtb250aCcsIG1vbnRoKS5zZXQoJ2RhdGUnLCAxKS5zdGFydE9mKCd3ZWVrJyk7XG4gICAgY29uc3QgY2FsZW5kYXIgPSBuZXcgQXJyYXkoNDIpLmZpbGwoMSkubWFwKCh2LCBpKSA9PiB7XG4gICAgICByZXR1cm4gY2FsZW5kYXJTdGFydERheS5hZGQoaSwgJ2RheScpO1xuICAgIH0pO1xuICAgIHJldHVybiBjYWxlbmRhci5tYXAoKGQpID0+IHtcbiAgICAgIHJldHVybiBuZXcgRGF5TW9kZWwoe1xuICAgICAgICBkYXRlOiBuZXcgRGF0ZShkLnRvRGF0ZSgpKSxcbiAgICAgICAgaXNDdXJyZW50TW9udGg6IG1vbnRoID09PSBkLm1vbnRoKCksXG4gICAgICAgIGRpc2FibGVkOiAhdGhpcy5pc1N1aXRhYmxlTWluRGF0ZShkLnRvRGF0ZSgpLCBtaW5NYXgubWluKSB8fCAhdGhpcy5pc1N1aXRhYmxlTWF4RGF0ZShkLnRvRGF0ZSgpLCBtaW5NYXgubWF4KSxcbiAgICAgICAgc2VsZWN0ZWQ6IHRoaXMuaXNTZWxlY3RlZChkLnRvRGF0ZSgpLCBzZWxlY3RlZERhdGUudG9EYXRlKCkpLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBpc1N1aXRhYmxlTWluRGF0ZShkOiBEYXRlLCBtaW5EYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgcmV0dXJuIGRheWpzKG5ldyBEYXRlKG1pbkRhdGUpKS5zdGFydE9mKCdkYXRlJykudG9EYXRlKCkgPD0gbmV3IERhdGUoZCkgfHwgIW1pbkRhdGU7XG4gIH1cblxuICBpc1N1aXRhYmxlTWF4RGF0ZShkOiBEYXRlLCBtYXhEYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKGQpIDwgZGF5anMobmV3IERhdGUobWF4RGF0ZSkpLmVuZE9mKCdkYXRlJykudG9EYXRlKCkgfHwgIW1heERhdGU7XG4gIH1cblxuICBpc1NlbGVjdGVkKGRhdGU6IERhdGUsIHNlbGVjdGVkRGF0ZTogRGF0ZSkge1xuICAgIGNvbnN0IGlzU2VsZWN0ZWREYXRlID0gZGF0ZS5nZXREYXRlKCkgPT09IHNlbGVjdGVkRGF0ZT8uZ2V0RGF0ZSgpO1xuICAgIGNvbnN0IGlzU2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpID09PSBzZWxlY3RlZERhdGU/LmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgaXNTZWxlY3RlZE1vbnRoID0gZGF0ZS5nZXRNb250aCgpID09PSBzZWxlY3RlZERhdGU/LmdldE1vbnRoKCk7XG4gICAgcmV0dXJuIGlzU2VsZWN0ZWREYXRlICYmIGlzU2VsZWN0ZWRNb250aCAmJiBpc1NlbGVjdGVkWWVhciAmJiAhdGhpcy5pc0RhdGVOdWxsO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hbGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgc2VsZWN0UGlja2VyKGVudGl0eTogJ2RheScgfCAnbW9udGgnIHwgJ3llYXInKSB7XG4gICAgdGhpcy5zZWxlY3RlZFBpY2tlci5uZXh0KGVudGl0eSk7XG4gIH1cblxuICBzZWxlY3RNb250aChtb250aDogbnVtYmVyKSB7XG4gICAgdGhpcy5jdXJyZW50TW9udGgubmV4dChtb250aCk7XG4gICAgdGhpcy5zZWxlY3RQaWNrZXIoJ2RheScpO1xuICB9XG5cbiAgc2VsZWN0WWVhcih5ZWFyOiBudW1iZXIpIHtcbiAgICB0aGlzLnNldFllYXIoeWVhcik7XG4gICAgdGhpcy5zZWxlY3RQaWNrZXIoJ2RheScpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlQ2FsZW5kYXJEYXRhKHRoaXMuc2VsZWN0ZWREYXRlKTtcbiAgICBpZiAoY2hhbmdlc1snb3BlbiddKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUGlja2VyLm5leHQoJ2RheScpO1xuICAgIH1cbiAgfVxuXG4gIGNoYW5nZUNhbGVuZGFyRGF0YShzZWxlY3RlZERhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICBsZXQgZGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcjtcbiAgICBpZiAoIXRoaXMuaXNTdWl0YWJsZU1pbkRhdGUobmV3IERhdGUoc2VsZWN0ZWREYXRlKSwgdGhpcy5taW4pKSB7XG4gICAgICBkYXRlID0gdGhpcy5taW47XG4gICAgfSBlbHNlIGlmICghdGhpcy5pc1N1aXRhYmxlTWF4RGF0ZShuZXcgRGF0ZShzZWxlY3RlZERhdGUpLCB0aGlzLm1heCkpIHtcbiAgICAgIGRhdGUgPSB0aGlzLm1heDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGF0ZSA9IHNlbGVjdGVkRGF0ZSA/IHNlbGVjdGVkRGF0ZSA6IHRoaXMubWluID8gdGhpcy5taW4gOiB0aGlzLm1heCA/IHRoaXMubWF4IDogbmV3IERhdGUoKTtcbiAgICB9XG4gICAgdGhpcy5jdXJyZW50TW9udGgubmV4dChuZXcgRGF0ZShkYXRlKS5nZXRNb250aCgpKTtcbiAgICB0aGlzLmN1cnJlbnRZZWFyLm5leHQobmV3IERhdGUoZGF0ZSkuZ2V0RnVsbFllYXIoKSk7XG4gICAgdGhpcy5taW5NYXgubmV4dCh7IG1pbjogdGhpcy5taW4sIG1heDogdGhpcy5tYXggfSk7XG4gIH1cblxuICBzZXRZZWFyKHllYXI6IG51bWJlcikge1xuICAgIHRoaXMuY3VycmVudFllYXIubmV4dCh5ZWFyKTtcbiAgfVxuXG4gIGNoYW5nZU1vbnRoKG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcikge1xuICAgIGNvbnN0IHsgYXZhaWxhYmxlWWVhciwgYXZhaWxhYmxlTW9udGggfSA9IHRoaXMuZ2V0QXZhaWxhYmxlTW9udGhZZWFyKG1vbnRoLCB5ZWFyKTtcbiAgICB0aGlzLmN1cnJlbnRNb250aC5uZXh0KGF2YWlsYWJsZU1vbnRoKTtcbiAgICB0aGlzLmN1cnJlbnRZZWFyLm5leHQoYXZhaWxhYmxlWWVhcik7XG4gIH1cblxuICBnZXRBdmFpbGFibGVNb250aFllYXIobW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKSB7XG4gICAgaWYgKG1vbnRoID4gMTEpIHtcbiAgICAgIHJldHVybiB7IGF2YWlsYWJsZU1vbnRoOiBtb250aCAtIDEyLCBhdmFpbGFibGVZZWFyOiB5ZWFyICsgMSB9O1xuICAgIH1cbiAgICBpZiAobW9udGggPCAwKSB7XG4gICAgICByZXR1cm4geyBhdmFpbGFibGVNb250aDogMTIgKyBtb250aCwgYXZhaWxhYmxlWWVhcjogeWVhciAtIDEgfTtcbiAgICB9XG4gICAgcmV0dXJuIHsgYXZhaWxhYmxlTW9udGg6IG1vbnRoLCBhdmFpbGFibGVZZWFyOiB5ZWFyIH07XG4gIH1cblxuICBnZXRNb3RoTmFtZShtb250aDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMubG9jYWxlLm1vbnRoc1ttb250aF07XG4gIH1cblxuICBzZWxlY3REYXRlKGRhdGU6IERhdGUpIHtcbiAgICB0aGlzLnNldERhdGUuZW1pdChkYXRlKTtcbiAgfVxuXG4gIHNjcm9sbE1vbnRoID0gKGU6IGFueSwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKSA9PiB7XG4gICAgY29uc3QgZGVsdGEgPSBlPy5kZWx0YVkgPz8gZTtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIFdoZWVsRXZlbnQpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gICAgaWYgKGRlbHRhID4gMCkge1xuICAgICAgdGhpcy5jaGFuZ2VNb250aChtb250aCAtIDEsIHllYXIpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNoYW5nZU1vbnRoKG1vbnRoICsgMSwgeWVhcik7XG4gICAgfVxuICB9O1xufVxuIl19
@@ -88,7 +88,8 @@ export class BasePicker {
88
88
  return new Date(date).toLocaleString(['ru'], {
89
89
  year: 'numeric',
90
90
  month: '2-digit',
91
- day: '2-digit', hour12: false,
91
+ day: '2-digit',
92
+ hour12: false,
92
93
  hour: this.showTime ? '2-digit' : undefined,
93
94
  minute: this.showTime ? '2-digit' : undefined,
94
95
  });
@@ -105,4 +106,4 @@ export class BasePicker {
105
106
  return new Date(date);
106
107
  }
107
108
  }
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1waWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2RhdGUtcGlja2VyL2Jhc2UtcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQVMxQixNQUFNLE9BQWdCLFVBQVU7SUF1QjlCLFlBQ1ksV0FBdUIsRUFDdkIsSUFBdUIsRUFDdkIsUUFBa0I7UUFGbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVR2QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBRWIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUErQ3hCLGVBQVUsR0FBRyxDQUFDLElBQWEsRUFBRSxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDO1FBNUNBLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFVRCxXQUFXLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFF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Q0FBQztRQUNqQixDQUFDO1FBQ0QsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RhdGVQaXBlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWFza2l0b09wdGlvbnN9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7QWxpZ259IGZyb20gJy4uLy4uL2NvbW1vbi9lbnVtL2FsaWduLmVudW0nO1xuaW1wb3J0IHtWZXJ0aWNhbEFsaWdufSBmcm9tICcuLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7dmlld1R5cGV9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC92aWV3LXR5cGUubW9kZWwnO1xuaW1wb3J0IHtEYXRlRnJvbVRvTW9kZWx9IGZyb20gJy4vbW9kZWwvZnJvbS10by5tb2RlbCc7XG5pbXBvcnQge1RldGFMb2NhbGlzYXRpb259IGZyb20gXCIuLi8uLi9sb2NhbGUvdGV0YS1sb2NhbGlzYXRpb25cIjtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VQaWNrZXIge1xuICBhYnN0cmFjdCBtYXNrOiBzdHJpbmc7XG4gIGFic3RyYWN0IGRhdGU7XG4gIGFic3RyYWN0IGxvY2FsZTogT2JzZXJ2YWJsZTxUZXRhTG9jYWxpc2F0aW9uPjtcbiAgYWJzdHJhY3Qgc2hvd1RpbWU6IGJvb2xlYW47XG4gIGFic3RyYWN0IG1pbkRhdGU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIGFic3RyYWN0IG1heERhdGU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXI7XG4gIGFic3RyYWN0IGludmFsaWQ6IGJvb2xlYW47XG4gIGFic3RyYWN0IGRpc2FibGVkOiBib29sZWFuO1xuICBhYnN0cmFjdCBhbGlnbjogQWxpZ247XG4gIGFic3RyYWN0IHZlcnRpY2FsQWxpZ246IFZlcnRpY2FsQWxpZ247XG4gIGFic3RyYWN0IHZpZXdUeXBlOiB2aWV3VHlwZTtcbiAgYWJzdHJhY3QgYXBwZW5kVG9Cb2R5OiBib29sZWFuO1xuICBhYnN0cmFjdCBiYWNrZHJvcDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgYWxsb3dOdWxsOiBib29sZWFuO1xuICBhYnN0cmFjdCBpbnB1dDogRWxlbWVudFJlZjtcbiAgYWJzdHJhY3Qgc2VsZWN0RGF0ZTogRXZlbnRFbWl0dGVyPERhdGU+IHwgRXZlbnRFbWl0dGVyPERhdGVGcm9tVG9Nb2RlbD47XG4gIHB1YmxpYyBvcGVuID0gZmFsc2U7XG4gIGFic3RyYWN0IHNlbGVjdGVkRGF0ZTogUmVwbGF5U3ViamVjdDxhbnk+O1xuICBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnJztcbiAgcHVibGljIGlucHV0VGV4dDogc3RyaW5nO1xuICBwdWJsaWMgbWFza2l0b09wdGlvbnM6IE1hc2tpdG9PcHRpb25zO1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBkYXRlUGlwZTogRGF0ZVBpcGVcbiAgKSB7XG4gICAgdGhpcy5pbnB1dFRleHQgPSB0aGlzLmNoZWNrTnVsbCgpO1xuICB9XG5cbiAgYWJzdHJhY3Qgb25DaGFuZ2UoZGF0ZTogRGF0ZSk7XG5cbiAgYWJzdHJhY3QgcHJlcGFyZUlucHV0KCk7XG5cbiAgYWJzdHJhY3Qgb25CbHVyKCk7XG5cbiAgYWJzdHJhY3Qgc2V0RGF0ZShkYXRlKTtcblxuICBjaGFuZ2VJbnB1dCh2KSB7XG4gICAgdGhpcy5jaGFuZ2VQbGFjZWhvbGRlcih2KTtcbiAgfVxuXG4gIGNoYW5nZVBsYWNlaG9sZGVyKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBjb25zdCB2YWwgPSB0aGlzLm1hc2suc3BsaXQoJycpO1xuICAgIGZvciAobGV0IGkgPSAwOyB2YWx1ZS5sZW5ndGggPiBpOyBpKyspIHtcbiAgICAgIHZhbC5zcGxpY2UoaSwgMSwgdmFsdWVbaV0pO1xuICAgIH1cblxuICAgIHRoaXMucGxhY2Vob2xkZXIgPSB2YWwuam9pbignJyk7XG4gIH1cblxuICBvcGVuQ2hhbmdlKGU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIWUpIHtcbiAgICAgIHRoaXMub25CbHVyKCk7XG4gICAgfVxuICAgIHRoaXMub3BlbiA9IGU7XG4gIH1cblxuICBjaGVja051bGwoKSB7XG4gICAgaWYgKCF0aGlzLmRhdGUgJiYgdGhpcy5hbGxvd051bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0obmV3IERhdGUoKSwgJ2RkLk1NLnl5eXksIEhIOm1tJyk7XG4gIH1cblxuICBvcGVuUGlja2VyID0gKHNob3c6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wZW4gPSBzaG93O1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfTtcblxuICBjaGFuZ2VTZWxlY3RlZERhdGUoZGF0ZSwgc2VsZWN0ZWREYXRlPykge1xuICAgIHRoaXMuc2V0RGF0ZShkYXRlKTtcbiAgICB0aGlzLmVtaXRWYWx1ZShkYXRlKTtcbiAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgfVxuXG4gIGVtaXRWYWx1ZSh2YWx1ZSkge1xuICAgIGlmICh0aGlzLmlzVmFsdWVDaGFuZ2UodmFsdWUpKSB7XG4gICAgICB0aGlzLmRhdGUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuc2VsZWN0RGF0ZS5lbWl0KHZhbHVlKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGlzVmFsdWVDaGFuZ2UodmFsdWUpIHtcbiAgICByZXR1cm4gbmV3IERhdGUodmFsdWUpLmdldFRpbWUoKSAhPT0gbmV3IERhdGUodGhpcy5kYXRlKS5nZXRUaW1lKCk7XG4gIH1cblxuICBjaGVja0VudGVyKGUpIHtcbiAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgIHRoaXMuaW5wdXRUZXh0ID0gZS50YXJnZXQudmFsdWU7XG4gICAgICB0aGlzLm9uQmx1cigpO1xuICAgIH1cbiAgICBpZiAoZS5rZXkgPT09ICctJykge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgICB0aGlzLm9wZW4gPSB0cnVlO1xuICB9XG5cbiAgaXNBdmFpbGFibGVMZW5ndGgodmFsOiBzdHJpbmcsIGxlbmd0aDogbnVtYmVyKSB7XG4gICAgaWYgKHZhbD8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdmFsLmxlbmd0aCA9PT0gbGVuZ3RoO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBnZXREYXRlRnJvbVN0cihzdHI6IHN0cmluZywgc2VwYXJhdG9yID0gJy4nKSB7XG4gICAgY29uc3QgZGF0ZSA9IHN0cj8uc3BsaXQoc2VwYXJhdG9yKTtcbiAgICBjb25zdCBkYXkgPSB0aGlzLmlzQXZhaWxhYmxlTGVuZ3RoKGRhdGU/LlswXSwgMikgPyBOdW1iZXIoZGF0ZVswXSkgOiBudWxsO1xuICAgIGNvbnN0IG1vbnRoID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aChkYXRlPy5bMV0sIDIpID8gTnVtYmVyKGRhdGVbMV0pIDogbnVsbDtcbiAgICBjb25zdCB5ZWFyID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aChkYXRlPy5bMl0sIDQpID8gTnVtYmVyKGRhdGVbMl0pIDogbnVsbDtcbiAgICByZXR1cm4ge2RheSwgbW9udGgsIHllYXJ9O1xuICB9XG5cbiAgZ2V0VGltZUZyb21TdHIoc3RyOiBzdHJpbmcsIHNlcGFyYXRvciA9ICc6Jykge1xuICAgIGNvbnN0IHRpbWUgPSBzdHI/LnRyaW0oKS5zcGxpdChzZXBhcmF0b3IpO1xuICAgIGNvbnN0IGhvdXJzID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aCh0aW1lPy5bMF0sIDIpID8gTnVtYmVyKHRpbWVbMF0pIDogbnVsbDtcbiAgICBjb25zdCBtaW5zID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aCh0aW1lPy5bMV0sIDIpID8gTnVtYmVyKHRpbWVbMV0pIDogbnVsbDtcbiAgICByZXR1cm4ge2hvdXJzLCBtaW5zfTtcbiAgfVxuXG4gIGZvY3VzKCkge1xuICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICB9XG5cbiAgZ2V0TG9jYWxlU3RyaW5nKGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkudG9Mb2NhbGVTdHJpbmcoWydydSddLCB7XG4gICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICBtb250aDogJzItZGlnaXQnLFxuICAgICAgZGF5OiAnMi1kaWdpdCcsIGhvdXIxMjogZmFsc2UsXG4gICAgICBob3VyOiB0aGlzLnNob3dUaW1lID8gJzItZGlnaXQnIDogdW5kZWZpbmVkLFxuICAgICAgbWludXRlOiB0aGlzLnNob3dUaW1lID8gJzItZGlnaXQnIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0QXZhaWxhYmxlRGF0ZShcbiAgICBtaW46IERhdGUgfCBudW1iZXIgfCBzdHJpbmcsXG4gICAgbWF4OiBEYXRlIHwgbnVtYmVyIHwgc3RyaW5nLFxuICAgIGRhdGU6IERhdGUgfCBudW1iZXIgfCBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgbWluRGF0ZSA9IHRoaXMuc2hvd1RpbWUgPyBuZXcgRGF0ZShtaW4pIDogZGF5anMobmV3IERhdGUobWluKSkuc3RhcnRPZignZGF5JykudG9EYXRlKCk7XG4gICAgY29uc3QgbWF4RGF0ZSA9IHRoaXMuc2hvd1RpbWUgPyBuZXcgRGF0ZShtYXgpIDogZGF5anMobmV3IERhdGUobWF4KSkuZW5kT2YoJ2RheScpLnRvRGF0ZSgpO1xuICAgIGlmIChtaW4gJiYgbWluRGF0ZS5nZXRUaW1lKCkgPj0gbmV3IERhdGUoZGF0ZSkuZ2V0VGltZSgpKSB7XG4gICAgICByZXR1cm4gbWluRGF0ZSB8fCBuZXcgRGF0ZSgpO1xuICAgIH1cbiAgICBpZiAobWF4ICYmIG1heERhdGUuZ2V0VGltZSgpIDw9IG5ldyBEYXRlKGRhdGUpLmdldFRpbWUoKSkge1xuICAgICAgcmV0dXJuIG1heERhdGU7XG4gICAgfVxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlKTtcbiAgfVxufVxuIl19
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1waWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L2RhdGUtcGlja2VyL2Jhc2UtcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQVMxQixNQUFNLE9BQWdCLFVBQVU7SUF1QjlCLFlBQ1ksV0FBdUIsRUFDdkIsSUFBdUIsRUFDdkIsUUFBa0I7UUFGbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQVR2QixTQUFJLEdBQUcsS0FBSyxDQUFDO1FBRWIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUErQ3hCLGVBQVUsR0FBRyxDQUFDLElBQWEsRUFBRSxFQUFFO1lBQzdCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixPQUFPO1lBQ1QsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDO1FBNUNBLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFVRCxXQUFXLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBYTtRQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFF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QztRQUNqQixDQUFDO1FBQ0QsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXNraXRvT3B0aW9ucyB9IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS9hbGlnbi5lbnVtJztcbmltcG9ydCB7IFZlcnRpY2FsQWxpZ24gfSBmcm9tICcuLi8uLi9jb21tb24vZW51bS92ZXJ0aWNhbC1hbGlnbi5lbnVtJztcbmltcG9ydCB7IHZpZXdUeXBlIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3ZpZXctdHlwZS5tb2RlbCc7XG5pbXBvcnQgeyBEYXRlRnJvbVRvTW9kZWwgfSBmcm9tICcuL21vZGVsL2Zyb20tdG8ubW9kZWwnO1xuaW1wb3J0IHsgVGV0YUxvY2FsaXNhdGlvbiB9IGZyb20gJy4uLy4uL2xvY2FsZS90ZXRhLWxvY2FsaXNhdGlvbic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlUGlja2VyIHtcbiAgYWJzdHJhY3QgbWFzazogc3RyaW5nO1xuICBhYnN0cmFjdCBkYXRlO1xuICBhYnN0cmFjdCBsb2NhbGU6IE9ic2VydmFibGU8VGV0YUxvY2FsaXNhdGlvbj47XG4gIGFic3RyYWN0IHNob3dUaW1lOiBib29sZWFuO1xuICBhYnN0cmFjdCBtaW5EYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICBhYnN0cmFjdCBtYXhEYXRlOiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyO1xuICBhYnN0cmFjdCBpbnZhbGlkOiBib29sZWFuO1xuICBhYnN0cmFjdCBkaXNhYmxlZDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgYWxpZ246IEFsaWduO1xuICBhYnN0cmFjdCB2ZXJ0aWNhbEFsaWduOiBWZXJ0aWNhbEFsaWduO1xuICBhYnN0cmFjdCB2aWV3VHlwZTogdmlld1R5cGU7XG4gIGFic3RyYWN0IGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgYmFja2Ryb3A6IGJvb2xlYW47XG4gIGFic3RyYWN0IGFsbG93TnVsbDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgaW5wdXQ6IEVsZW1lbnRSZWY7XG4gIGFic3RyYWN0IHNlbGVjdERhdGU6IEV2ZW50RW1pdHRlcjxEYXRlPiB8IEV2ZW50RW1pdHRlcjxEYXRlRnJvbVRvTW9kZWw+O1xuICBwdWJsaWMgb3BlbiA9IGZhbHNlO1xuICBhYnN0cmFjdCBzZWxlY3RlZERhdGU6IFJlcGxheVN1YmplY3Q8YW55PjtcbiAgcHVibGljIHBsYWNlaG9sZGVyID0gJyc7XG4gIHB1YmxpYyBpbnB1dFRleHQ6IHN0cmluZztcbiAgcHVibGljIG1hc2tpdG9PcHRpb25zOiBNYXNraXRvT3B0aW9ucztcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcm90ZWN0ZWQgZGF0ZVBpcGU6IERhdGVQaXBlXG4gICkge1xuICAgIHRoaXMuaW5wdXRUZXh0ID0gdGhpcy5jaGVja051bGwoKTtcbiAgfVxuXG4gIGFic3RyYWN0IG9uQ2hhbmdlKGRhdGU6IERhdGUpO1xuXG4gIGFic3RyYWN0IHByZXBhcmVJbnB1dCgpO1xuXG4gIGFic3RyYWN0IG9uQmx1cigpO1xuXG4gIGFic3RyYWN0IHNldERhdGUoZGF0ZSk7XG5cbiAgY2hhbmdlSW5wdXQodikge1xuICAgIHRoaXMuY2hhbmdlUGxhY2Vob2xkZXIodik7XG4gIH1cblxuICBjaGFuZ2VQbGFjZWhvbGRlcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgdmFsID0gdGhpcy5tYXNrLnNwbGl0KCcnKTtcbiAgICBmb3IgKGxldCBpID0gMDsgdmFsdWUubGVuZ3RoID4gaTsgaSsrKSB7XG4gICAgICB2YWwuc3BsaWNlKGksIDEsIHZhbHVlW2ldKTtcbiAgICB9XG5cbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gdmFsLmpvaW4oJycpO1xuICB9XG5cbiAgb3BlbkNoYW5nZShlOiBib29sZWFuKSB7XG4gICAgaWYgKCFlKSB7XG4gICAgICB0aGlzLm9uQmx1cigpO1xuICAgIH1cbiAgICB0aGlzLm9wZW4gPSBlO1xuICB9XG5cbiAgY2hlY2tOdWxsKCkge1xuICAgIGlmICghdGhpcy5kYXRlICYmIHRoaXMuYWxsb3dOdWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5ldyBEYXRlKCksICdkZC5NTS55eXl5LCBISDptbScpO1xuICB9XG5cbiAgb3BlblBpY2tlciA9IChzaG93OiBib29sZWFuKSA9PiB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcGVuID0gc2hvdztcbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH07XG5cbiAgY2hhbmdlU2VsZWN0ZWREYXRlKGRhdGUsIHNlbGVjdGVkRGF0ZT8pIHtcbiAgICB0aGlzLnNldERhdGUoZGF0ZSk7XG4gICAgdGhpcy5lbWl0VmFsdWUoZGF0ZSk7XG4gICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gIH1cblxuICBlbWl0VmFsdWUodmFsdWUpIHtcbiAgICBpZiAodGhpcy5pc1ZhbHVlQ2hhbmdlKHZhbHVlKSkge1xuICAgICAgdGhpcy5kYXRlID0gdmFsdWU7XG4gICAgICB0aGlzLnNlbGVjdERhdGUuZW1pdCh2YWx1ZSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBpc1ZhbHVlQ2hhbmdlKHZhbHVlKSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHZhbHVlKS5nZXRUaW1lKCkgIT09IG5ldyBEYXRlKHRoaXMuZGF0ZSkuZ2V0VGltZSgpO1xuICB9XG5cbiAgY2hlY2tFbnRlcihlKSB7XG4gICAgaWYgKGUua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICB0aGlzLmlucHV0VGV4dCA9IGUudGFyZ2V0LnZhbHVlO1xuICAgICAgdGhpcy5vbkJsdXIoKTtcbiAgICB9XG4gICAgaWYgKGUua2V5ID09PSAnLScpIHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gICAgdGhpcy5vcGVuID0gdHJ1ZTtcbiAgfVxuXG4gIGlzQXZhaWxhYmxlTGVuZ3RoKHZhbDogc3RyaW5nLCBsZW5ndGg6IG51bWJlcikge1xuICAgIGlmICh2YWw/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIHZhbC5sZW5ndGggPT09IGxlbmd0aDtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0RGF0ZUZyb21TdHIoc3RyOiBzdHJpbmcsIHNlcGFyYXRvciA9ICcuJykge1xuICAgIGNvbnN0IGRhdGUgPSBzdHI/LnNwbGl0KHNlcGFyYXRvcik7XG4gICAgY29uc3QgZGF5ID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aChkYXRlPy5bMF0sIDIpID8gTnVtYmVyKGRhdGVbMF0pIDogbnVsbDtcbiAgICBjb25zdCBtb250aCA9IHRoaXMuaXNBdmFpbGFibGVMZW5ndGgoZGF0ZT8uWzFdLCAyKSA/IE51bWJlcihkYXRlWzFdKSA6IG51bGw7XG4gICAgY29uc3QgeWVhciA9IHRoaXMuaXNBdmFpbGFibGVMZW5ndGgoZGF0ZT8uWzJdLCA0KSA/IE51bWJlcihkYXRlWzJdKSA6IG51bGw7XG4gICAgcmV0dXJuIHsgZGF5LCBtb250aCwgeWVhciB9O1xuICB9XG5cbiAgZ2V0VGltZUZyb21TdHIoc3RyOiBzdHJpbmcsIHNlcGFyYXRvciA9ICc6Jykge1xuICAgIGNvbnN0IHRpbWUgPSBzdHI/LnRyaW0oKS5zcGxpdChzZXBhcmF0b3IpO1xuICAgIGNvbnN0IGhvdXJzID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aCh0aW1lPy5bMF0sIDIpID8gTnVtYmVyKHRpbWVbMF0pIDogbnVsbDtcbiAgICBjb25zdCBtaW5zID0gdGhpcy5pc0F2YWlsYWJsZUxlbmd0aCh0aW1lPy5bMV0sIDIpID8gTnVtYmVyKHRpbWVbMV0pIDogbnVsbDtcbiAgICByZXR1cm4geyBob3VycywgbWlucyB9O1xuICB9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBnZXRMb2NhbGVTdHJpbmcoZGF0ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlKS50b0xvY2FsZVN0cmluZyhbJ3J1J10sIHtcbiAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgIG1vbnRoOiAnMi1kaWdpdCcsXG4gICAgICBkYXk6ICcyLWRpZ2l0JyxcbiAgICAgIGhvdXIxMjogZmFsc2UsXG4gICAgICBob3VyOiB0aGlzLnNob3dUaW1lID8gJzItZGlnaXQnIDogdW5kZWZpbmVkLFxuICAgICAgbWludXRlOiB0aGlzLnNob3dUaW1lID8gJzItZGlnaXQnIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0QXZhaWxhYmxlRGF0ZShtaW46IERhdGUgfCBudW1iZXIgfCBzdHJpbmcsIG1heDogRGF0ZSB8IG51bWJlciB8IHN0cmluZywgZGF0ZTogRGF0ZSB8IG51bWJlciB8IHN0cmluZykge1xuICAgIGNvbnN0IG1pbkRhdGUgPSB0aGlzLnNob3dUaW1lID8gbmV3IERhdGUobWluKSA6IGRheWpzKG5ldyBEYXRlKG1pbikpLnN0YXJ0T2YoJ2RheScpLnRvRGF0ZSgpO1xuICAgIGNvbnN0IG1heERhdGUgPSB0aGlzLnNob3dUaW1lID8gbmV3IERhdGUobWF4KSA6IGRheWpzKG5ldyBEYXRlKG1heCkpLmVuZE9mKCdkYXknKS50b0RhdGUoKTtcbiAgICBpZiAobWluICYmIG1pbkRhdGUuZ2V0VGltZSgpID49IG5ldyBEYXRlKGRhdGUpLmdldFRpbWUoKSkge1xuICAgICAgcmV0dXJuIG1pbkRhdGUgfHwgbmV3IERhdGUoKTtcbiAgICB9XG4gICAgaWYgKG1heCAmJiBtYXhEYXRlLmdldFRpbWUoKSA8PSBuZXcgRGF0ZShkYXRlKS5nZXRUaW1lKCkpIHtcbiAgICAgIHJldHVybiBtYXhEYXRlO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSk7XG4gIH1cbn1cbiJdfQ==