@tetacom/ng-components 1.1.42 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (589) hide show
  1. package/.eslintrc.json +16 -10
  2. package/README.md +3 -20
  3. package/component/accordion/accordion/accordion.component.d.ts +1 -1
  4. package/component/accordion/accordion-content.directive.d.ts +1 -1
  5. package/component/accordion/accordion-head/accordion-head.component.d.ts +1 -1
  6. package/component/accordion/accordion-item/accordion-item.component.d.ts +1 -1
  7. package/component/accordion/public-api.d.ts +0 -1
  8. package/component/autocomplete/autocomplete/autocomplete.component.d.ts +1 -1
  9. package/component/autocomplete/public-api.d.ts +0 -1
  10. package/component/avatar/avatar/avatar.component.d.ts +1 -1
  11. package/component/avatar/public-api.d.ts +0 -1
  12. package/component/button/button/button.component.d.ts +1 -1
  13. package/component/button/public-api.d.ts +0 -1
  14. package/component/chart-3d/chart3d/chart3d.component.d.ts +1 -1
  15. package/component/chart-3d/public-api.d.ts +0 -1
  16. package/component/checkbox/checkbox/checkbox.component.d.ts +1 -1
  17. package/component/checkbox/public-api.d.ts +0 -1
  18. package/component/date-picker/base-picker.d.ts +1 -1
  19. package/component/date-picker/date-picker/date-calendar/date-calendar.component.d.ts +1 -1
  20. package/component/date-picker/date-picker/date-picker.component.d.ts +1 -1
  21. package/component/date-picker/date-range/date-range.component.d.ts +1 -1
  22. package/component/date-picker/date-range/range-calendar/range-calendar.component.d.ts +3 -3
  23. package/component/date-picker/day-picker/day-item/day-item.component.d.ts +1 -1
  24. package/component/date-picker/day-picker/day-picker.component.d.ts +2 -2
  25. package/component/date-picker/month-picker/month-picker.component.d.ts +1 -1
  26. package/component/date-picker/public-api.d.ts +0 -1
  27. package/component/date-picker/year-picker/scroll-to-selected-year.directive.d.ts +1 -1
  28. package/component/date-picker/year-picker/year-picker.component.d.ts +1 -1
  29. package/component/delimiter/delimiter/delimiter.component.d.ts +1 -1
  30. package/component/delimiter/public-api.d.ts +0 -1
  31. package/component/divider/divider/divider.component.d.ts +1 -1
  32. package/component/divider/public-api.d.ts +0 -1
  33. package/component/dropdown/dropdown/dropdown.component.d.ts +1 -1
  34. package/component/dropdown/dropdown-content.directive.d.ts +1 -1
  35. package/component/dropdown/dropdown-head.directive.d.ts +1 -1
  36. package/component/dropdown/dropdown.directive.d.ts +1 -1
  37. package/component/dropdown/public-api.d.ts +0 -1
  38. package/component/dynamic-component/popup-content/popup-content.component.d.ts +1 -1
  39. package/component/dynamic-component/public-api.d.ts +0 -1
  40. package/component/expand-card/expand-card/expand-card.component.d.ts +1 -1
  41. package/component/expand-card/expand-item/expand-item.component.d.ts +1 -1
  42. package/component/expand-card/public-api.d.ts +0 -1
  43. package/component/expand-panel/expand-panel/expand-panel.component.d.ts +1 -1
  44. package/component/expand-panel/expand-panel-content.directive.d.ts +1 -1
  45. package/component/expand-panel/expand-panel-head.directive.d.ts +1 -1
  46. package/component/expand-panel/public-api.d.ts +0 -1
  47. package/component/file-upload/file-item/file-item.component.d.ts +1 -1
  48. package/component/file-upload/file-upload-area/file-upload-area.component.d.ts +1 -1
  49. package/component/file-upload/public-api.d.ts +0 -1
  50. package/component/filter/boolean-filter/boolean-filter.component.d.ts +1 -1
  51. package/component/filter/date-filter/date-filter.component.d.ts +1 -1
  52. package/component/filter/filter-host/filter-host.component.d.ts +1 -1
  53. package/component/filter/list-filter/list-filter.component.d.ts +1 -1
  54. package/component/filter/numeric-filter/numeric-filter.component.d.ts +1 -1
  55. package/component/filter/public-api.d.ts +0 -1
  56. package/component/filter/string-filter/string-filter.component.d.ts +1 -1
  57. package/component/icon/icon/icon.component.d.ts +1 -1
  58. package/component/icon/icon-file/icon-file.component.d.ts +1 -1
  59. package/component/icon/icon-sprite.directive.d.ts +1 -1
  60. package/component/icon/public-api.d.ts +0 -2
  61. package/component/input/color-input/color-input.component.d.ts +1 -1
  62. package/component/input/form-group-title/form-group-title.component.d.ts +1 -1
  63. package/component/input/input/input.component.d.ts +1 -1
  64. package/component/input/public-api.d.ts +1 -1
  65. package/component/input/text-field/text-field.component.d.ts +1 -1
  66. package/component/message/message/message.component.d.ts +1 -1
  67. package/component/message/message-host/message-host.component.d.ts +1 -1
  68. package/component/message/public-api.d.ts +0 -1
  69. package/component/modal/dialog/dialog.component.d.ts +1 -1
  70. package/component/modal/modal-container/modal-container.component.d.ts +1 -1
  71. package/component/modal/modal.module.d.ts +5 -8
  72. package/component/pager/pager/pager.component.d.ts +1 -1
  73. package/component/pager/public-api.d.ts +0 -1
  74. package/component/panel/panel/panel.component.d.ts +1 -1
  75. package/component/panel/public-api.d.ts +0 -1
  76. package/component/progress-bar/progress-bar/progress-bar.component.d.ts +1 -1
  77. package/component/progress-bar/public-api.d.ts +0 -1
  78. package/component/property-grid/property-grid/property-grid-group/property-grid-group.component.d.ts +1 -1
  79. package/component/property-grid/property-grid/property-grid-item/property-grid-item.component.d.ts +1 -1
  80. package/component/property-grid/property-grid/property-grid-item-description.directive.d.ts +1 -1
  81. package/component/property-grid/property-grid/property-grid.component.d.ts +1 -1
  82. package/component/property-grid/property-grid.module.d.ts +8 -16
  83. package/component/public-api.d.ts +0 -1
  84. package/component/radio/public-api.d.ts +0 -1
  85. package/component/radio/radio/radio.component.d.ts +3 -4
  86. package/component/radio/radio-button/radio-button.component.d.ts +1 -1
  87. package/component/resize-panel/public-api.d.ts +0 -1
  88. package/component/resize-panel/resize-panel/resize-panel.component.d.ts +1 -1
  89. package/component/select/public-api.d.ts +0 -1
  90. package/component/select/select/select.component.d.ts +1 -1
  91. package/component/select/select-option.directive.d.ts +1 -1
  92. package/component/select/select-value.directive.d.ts +1 -1
  93. package/component/sidebar/public-api.d.ts +0 -1
  94. package/component/sidebar/sidebar/sidebar.component.d.ts +1 -1
  95. package/component/switch/public-api.d.ts +0 -1
  96. package/component/switch/switch/switch.component.d.ts +1 -1
  97. package/component/switch/switch-button/switch-button.component.d.ts +1 -1
  98. package/component/table/cell/cell.component.d.ts +1 -1
  99. package/component/table/cell-host/cell-host.component.d.ts +1 -1
  100. package/component/table/default/boolean-cell/boolean-cell.component.d.ts +1 -1
  101. package/component/table/default/date-cell/date-cell.component.d.ts +1 -1
  102. package/component/table/default/date-time-cell/date-time-cell.component.d.ts +1 -1
  103. package/component/table/default/default-head-cell/default-head-cell.component.d.ts +1 -1
  104. package/component/table/default/list-cell/list-cell.component.d.ts +1 -1
  105. package/component/table/default/numeric-cell/numeric-cell.component.d.ts +1 -1
  106. package/component/table/default/string-cell/string-cell.component.d.ts +1 -1
  107. package/component/table/head-cell/head-cell.component.d.ts +1 -1
  108. package/component/table/head-cell-dropdown/head-cell-dropdown.component.d.ts +1 -1
  109. package/component/table/head-cell-host/head-cell-host.component.d.ts +1 -1
  110. package/component/table/public-api.d.ts +0 -1
  111. package/component/table/selection-cell/selection-cell.component.d.ts +1 -1
  112. package/component/table/selection-head-cell/selection-head-cell.component.d.ts +1 -1
  113. package/component/table/table/table.component.d.ts +1 -1
  114. package/component/table/table-body/table-body.component.d.ts +1 -1
  115. package/component/table/table-head/filter-dropdown-tab/filter-dropdown-tab.component.d.ts +1 -1
  116. package/component/table/table-head/main-dropdown-tab/main-dropdown-tab.component.d.ts +1 -1
  117. package/component/table/table-head/table-head.component.d.ts +1 -1
  118. package/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.d.ts +2 -2
  119. package/component/table/table-head-group/table-head-group.component.d.ts +1 -1
  120. package/component/tabs/public-api.d.ts +0 -1
  121. package/component/tabs/tab/tab.component.d.ts +1 -1
  122. package/component/tabs/tab-content.directive.d.ts +1 -1
  123. package/component/tabs/tab-title.directive.d.ts +1 -1
  124. package/component/tabs/tabs/tabs.component.d.ts +1 -1
  125. package/component/theme-switch/public-api.d.ts +0 -1
  126. package/component/theme-switch/theme-switch/theme-switch.component.d.ts +1 -1
  127. package/component/toggle/public-api.d.ts +0 -1
  128. package/component/toggle/toggle/toggle.component.d.ts +1 -1
  129. package/component/toolbar/public-api.d.ts +0 -1
  130. package/component/toolbar/toolbar/toolbar.component.d.ts +1 -1
  131. package/component/tree/public-api.d.ts +0 -1
  132. package/component/tree/tree/tree.component.d.ts +1 -1
  133. package/component/tree/tree-item/tree-item.component.d.ts +1 -1
  134. package/component/tree/tree-item-toggle/tree-item-toggle.component.d.ts +1 -1
  135. package/directive/auto-position/auto-position.directive.d.ts +1 -1
  136. package/directive/auto-position/public-api.d.ts +0 -1
  137. package/directive/click-outside/click-outside.directive.d.ts +1 -1
  138. package/directive/click-outside/public-api.d.ts +0 -1
  139. package/directive/context-menu/context-menu.directive.d.ts +1 -1
  140. package/directive/context-menu/public-api.d.ts +0 -1
  141. package/directive/disable-control/disable-control.directive.d.ts +1 -1
  142. package/directive/disable-control/public-api.d.ts +0 -1
  143. package/directive/drag-drop/drag-container.directive.d.ts +1 -1
  144. package/directive/drag-drop/drag-placeholder.directive.d.ts +1 -1
  145. package/directive/drag-drop/drag-preview.directive.d.ts +1 -1
  146. package/directive/drag-drop/drag.directive.d.ts +1 -1
  147. package/directive/drag-drop/public-api.d.ts +0 -1
  148. package/directive/drag-sort/drag-sort-container.directive.d.ts +1 -1
  149. package/directive/drag-sort/drag-sort-item.directive.d.ts +1 -1
  150. package/directive/drag-sort/public-api.d.ts +0 -1
  151. package/directive/highlight/highlight.directive.d.ts +1 -1
  152. package/directive/highlight/public-api.d.ts +0 -1
  153. package/directive/hint/hint.directive.d.ts +1 -1
  154. package/directive/hint/public-api.d.ts +0 -1
  155. package/directive/let/let.directive.d.ts +1 -1
  156. package/directive/let/public-api.d.ts +0 -1
  157. package/directive/loader/loader.directive.d.ts +1 -1
  158. package/directive/loader/public-api.d.ts +0 -1
  159. package/directive/no-autofill/no-autofill.directive.d.ts +1 -1
  160. package/directive/no-autofill/public-api.d.ts +0 -1
  161. package/directive/only-number/only-number.directive.d.ts +1 -1
  162. package/directive/only-number/public-api.d.ts +0 -1
  163. package/directive/resize-drag/public-api.d.ts +0 -1
  164. package/directive/resize-drag/resize-drag.directive.d.ts +1 -1
  165. package/directive/scroll-into-view/public-api.d.ts +0 -1
  166. package/directive/scroll-into-view/scroll-into-view.directive.d.ts +1 -1
  167. package/directive/scrollable/public-api.d.ts +0 -1
  168. package/directive/scrollable/scrollable/scrollable.component.d.ts +1 -1
  169. package/directive/scrollable/scrollable.directive.d.ts +1 -1
  170. package/directive/teta-template/public-api.d.ts +0 -1
  171. package/directive/teta-template/teta-template.directive.d.ts +1 -1
  172. package/directive/tooltip/public-api.d.ts +0 -1
  173. package/directive/tooltip/tooltip.directive.d.ts +1 -1
  174. package/docs/datePickerDocs.mdx +14 -59
  175. package/docs/dateRangeDocs.mdx +172 -0
  176. package/esm2022/common/contract/dynamic-data.mjs +1 -1
  177. package/esm2022/common/contract/teta-content-ref.mjs +1 -4
  178. package/esm2022/common/service/click.service.mjs +6 -9
  179. package/esm2022/common/service/dynamic-component.service.mjs +6 -10
  180. package/esm2022/common/service/overlay-container.service.mjs +7 -9
  181. package/esm2022/common/util/array-util.mjs +1 -1
  182. package/esm2022/common/util/dom-util.mjs +1 -1
  183. package/esm2022/common/util/position-util.mjs +1 -1
  184. package/esm2022/component/accordion/accordion/accordion.component.mjs +8 -6
  185. package/esm2022/component/accordion/accordion-content.directive.mjs +8 -8
  186. package/esm2022/component/accordion/accordion-head/accordion-head.component.mjs +13 -13
  187. package/esm2022/component/accordion/accordion-item/accordion-item.component.mjs +14 -17
  188. package/esm2022/component/accordion/public-api.mjs +1 -2
  189. package/esm2022/component/autocomplete/autocomplete/autocomplete.component.mjs +6 -6
  190. package/esm2022/component/autocomplete/public-api.mjs +1 -2
  191. package/esm2022/component/avatar/avatar/avatar.component.mjs +28 -32
  192. package/esm2022/component/avatar/public-api.mjs +1 -2
  193. package/esm2022/component/button/button/button.component.mjs +10 -12
  194. package/esm2022/component/button/public-api.mjs +1 -2
  195. package/esm2022/component/chart-3d/chart3d/chart3d.component.mjs +11 -20
  196. package/esm2022/component/chart-3d/model/chart-3d-options.mjs +1 -3
  197. package/esm2022/component/chart-3d/model/series-3d.mjs +1 -3
  198. package/esm2022/component/chart-3d/public-api.mjs +1 -2
  199. package/esm2022/component/checkbox/checkbox/checkbox.component.mjs +16 -33
  200. package/esm2022/component/checkbox/public-api.mjs +1 -2
  201. package/esm2022/component/date-picker/base-calendar.mjs +23 -24
  202. package/esm2022/component/date-picker/base-picker.mjs +11 -16
  203. package/esm2022/component/date-picker/date-picker/date-calendar/date-calendar.component.mjs +23 -23
  204. package/esm2022/component/date-picker/date-picker/date-picker.component.mjs +47 -46
  205. package/esm2022/component/date-picker/date-range/date-range.component.mjs +44 -39
  206. package/esm2022/component/date-picker/date-range/range-calendar/range-calendar.component.mjs +25 -27
  207. package/esm2022/component/date-picker/day-picker/day-item/day-item.component.mjs +6 -6
  208. package/esm2022/component/date-picker/day-picker/day-picker.component.mjs +12 -19
  209. package/esm2022/component/date-picker/model/date-period.mjs +1 -3
  210. package/esm2022/component/date-picker/model/day-model.mjs +1 -7
  211. package/esm2022/component/date-picker/month-picker/month-picker.component.mjs +13 -16
  212. package/esm2022/component/date-picker/public-api.mjs +1 -2
  213. package/esm2022/component/date-picker/year-picker/scroll-to-selected-year.directive.mjs +9 -9
  214. package/esm2022/component/date-picker/year-picker/year-picker.component.mjs +9 -14
  215. package/esm2022/component/delimiter/delimiter/delimiter.component.mjs +13 -13
  216. package/esm2022/component/delimiter/public-api.mjs +1 -2
  217. package/esm2022/component/divider/divider/divider.component.mjs +8 -10
  218. package/esm2022/component/divider/public-api.mjs +1 -2
  219. package/esm2022/component/dropdown/dropdown/dropdown.component.mjs +8 -13
  220. package/esm2022/component/dropdown/dropdown-base.mjs +26 -35
  221. package/esm2022/component/dropdown/dropdown-content.directive.mjs +8 -9
  222. package/esm2022/component/dropdown/dropdown-head.directive.mjs +9 -9
  223. package/esm2022/component/dropdown/dropdown.directive.mjs +9 -13
  224. package/esm2022/component/dropdown/public-api.mjs +1 -2
  225. package/esm2022/component/dynamic-component/popup-content/popup-content.component.mjs +10 -10
  226. package/esm2022/component/dynamic-component/public-api.mjs +1 -2
  227. package/esm2022/component/expand-card/expand-card/expand-card.component.mjs +14 -15
  228. package/esm2022/component/expand-card/expand-item/expand-item.component.mjs +11 -10
  229. package/esm2022/component/expand-card/public-api.mjs +1 -2
  230. package/esm2022/component/expand-panel/expand-panel/expand-panel.component.mjs +20 -18
  231. package/esm2022/component/expand-panel/expand-panel-content.directive.mjs +7 -7
  232. package/esm2022/component/expand-panel/expand-panel-head.directive.mjs +7 -7
  233. package/esm2022/component/expand-panel/public-api.mjs +1 -2
  234. package/esm2022/component/file-upload/file-item/file-item.component.mjs +6 -6
  235. package/esm2022/component/file-upload/file-upload-area/file-upload-area.component.mjs +24 -19
  236. package/esm2022/component/file-upload/public-api.mjs +1 -2
  237. package/esm2022/component/filter/base/filter-base.mjs +1 -4
  238. package/esm2022/component/filter/boolean-filter/boolean-filter.component.mjs +22 -20
  239. package/esm2022/component/filter/contarct/date-filter-value.mjs +1 -9
  240. package/esm2022/component/filter/contarct/date-filter.mjs +1 -1
  241. package/esm2022/component/filter/contarct/filter-item.mjs +13 -57
  242. package/esm2022/component/filter/contarct/filter-state.mjs +7 -7
  243. package/esm2022/component/filter/contarct/list-filter.mjs +1 -2
  244. package/esm2022/component/filter/contarct/numeric-filter-value.mjs +1 -13
  245. package/esm2022/component/filter/contarct/numeric-filter.mjs +1 -2
  246. package/esm2022/component/filter/contarct/sort-param.mjs +1 -13
  247. package/esm2022/component/filter/contarct/string-filter.mjs +1 -2
  248. package/esm2022/component/filter/date-filter/date-filter.component.mjs +22 -20
  249. package/esm2022/component/filter/filter-host/filter-host.component.mjs +11 -16
  250. package/esm2022/component/filter/list-filter/list-filter.component.mjs +25 -23
  251. package/esm2022/component/filter/numeric-filter/numeric-filter.component.mjs +22 -20
  252. package/esm2022/component/filter/public-api.mjs +1 -2
  253. package/esm2022/component/filter/string-filter/string-filter.component.mjs +19 -18
  254. package/esm2022/component/icon/icon/icon.component.mjs +9 -9
  255. package/esm2022/component/icon/icon-file/icon-file.component.mjs +6 -8
  256. package/esm2022/component/icon/icon-sprite.directive.mjs +9 -9
  257. package/esm2022/component/icon/icon.service.mjs +10 -15
  258. package/esm2022/component/icon/public-api.mjs +1 -3
  259. package/esm2022/component/input/color-input/color-input.component.mjs +11 -13
  260. package/esm2022/component/input/form-group-title/form-group-title.component.mjs +9 -8
  261. package/esm2022/component/input/input/input.component.mjs +12 -13
  262. package/esm2022/component/input/public-api.mjs +2 -2
  263. package/esm2022/component/input/text-field/text-field.component.mjs +25 -25
  264. package/esm2022/component/message/message/message.component.mjs +15 -14
  265. package/esm2022/component/message/message-host/message-host.component.mjs +22 -25
  266. package/esm2022/component/message/message.service.mjs +7 -9
  267. package/esm2022/component/message/model/message.mjs +4 -10
  268. package/esm2022/component/message/public-api.mjs +1 -2
  269. package/esm2022/component/modal/dialog/dialog.component.mjs +18 -18
  270. package/esm2022/component/modal/dialog.service.mjs +6 -6
  271. package/esm2022/component/modal/modal-container/modal-container.component.mjs +11 -13
  272. package/esm2022/component/modal/modal.module.mjs +8 -18
  273. package/esm2022/component/modal/modal.service.mjs +16 -19
  274. package/esm2022/component/modal/model/current-modal.mjs +1 -2
  275. package/esm2022/component/modal/model/modal-instance.mjs +7 -10
  276. package/esm2022/component/pager/model/pager-state.mjs +9 -29
  277. package/esm2022/component/pager/pager/pager.component.mjs +6 -6
  278. package/esm2022/component/pager/public-api.mjs +1 -2
  279. package/esm2022/component/panel/panel/panel.component.mjs +12 -11
  280. package/esm2022/component/panel/public-api.mjs +1 -2
  281. package/esm2022/component/progress-bar/progress-bar/progress-bar.component.mjs +37 -45
  282. package/esm2022/component/progress-bar/public-api.mjs +1 -2
  283. package/esm2022/component/property-grid/property-grid/property-grid-group/property-grid-group.component.mjs +13 -21
  284. package/esm2022/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +31 -29
  285. package/esm2022/component/property-grid/property-grid/property-grid-item-description.directive.mjs +8 -9
  286. package/esm2022/component/property-grid/property-grid/property-grid.component.mjs +19 -23
  287. package/esm2022/component/property-grid/property-grid.module.mjs +16 -46
  288. package/esm2022/component/public-api.mjs +1 -3
  289. package/esm2022/component/radio/public-api.mjs +1 -2
  290. package/esm2022/component/radio/radio/radio.component.mjs +17 -23
  291. package/esm2022/component/radio/radio-button/radio-button.component.mjs +10 -16
  292. package/esm2022/component/resize-panel/public-api.mjs +1 -2
  293. package/esm2022/component/resize-panel/resize-panel/resize-panel.component.mjs +24 -29
  294. package/esm2022/component/select/public-api.mjs +1 -2
  295. package/esm2022/component/select/select/select.component.mjs +49 -53
  296. package/esm2022/component/select/select-option.directive.mjs +8 -8
  297. package/esm2022/component/select/select-value.directive.mjs +8 -8
  298. package/esm2022/component/sidebar/public-api.mjs +1 -2
  299. package/esm2022/component/sidebar/sidebar/sidebar.component.mjs +14 -16
  300. package/esm2022/component/switch/public-api.mjs +1 -2
  301. package/esm2022/component/switch/switch/switch.component.mjs +10 -13
  302. package/esm2022/component/switch/switch-button/switch-button.component.mjs +9 -13
  303. package/esm2022/component/switch/switch.service.mjs +6 -7
  304. package/esm2022/component/table/base/cell-component-base.mjs +14 -18
  305. package/esm2022/component/table/base/head-cell-component-base.mjs +5 -4
  306. package/esm2022/component/table/cell/cell.component.mjs +11 -11
  307. package/esm2022/component/table/cell-host/cell-host.component.mjs +10 -14
  308. package/esm2022/component/table/contract/column-reorder-event.mjs +1 -3
  309. package/esm2022/component/table/contract/column-resize-event.mjs +1 -3
  310. package/esm2022/component/table/contract/sort-event.mjs +1 -3
  311. package/esm2022/component/table/contract/table-column-store.mjs +1 -6
  312. package/esm2022/component/table/contract/table-column.mjs +13 -83
  313. package/esm2022/component/table/contract/table-row.mjs +1 -3
  314. package/esm2022/component/table/default/boolean-cell/boolean-cell.component.mjs +15 -13
  315. package/esm2022/component/table/default/date-cell/date-cell.component.mjs +17 -13
  316. package/esm2022/component/table/default/date-time-cell/date-time-cell.component.mjs +17 -13
  317. package/esm2022/component/table/default/default-head-cell/default-head-cell.component.mjs +9 -13
  318. package/esm2022/component/table/default/list-cell/list-cell.component.mjs +16 -14
  319. package/esm2022/component/table/default/numeric-cell/numeric-cell.component.mjs +17 -14
  320. package/esm2022/component/table/default/string-cell/string-cell.component.mjs +16 -14
  321. package/esm2022/component/table/head-cell/head-cell.component.mjs +38 -41
  322. package/esm2022/component/table/head-cell-dropdown/head-cell-dropdown.component.mjs +29 -27
  323. package/esm2022/component/table/head-cell-host/head-cell-host.component.mjs +8 -13
  324. package/esm2022/component/table/public-api.mjs +1 -2
  325. package/esm2022/component/table/selection-cell/selection-cell.component.mjs +13 -14
  326. package/esm2022/component/table/selection-head-cell/selection-head-cell.component.mjs +12 -12
  327. package/esm2022/component/table/service/table.service.mjs +35 -58
  328. package/esm2022/component/table/table/table.component.mjs +53 -67
  329. package/esm2022/component/table/table-body/table-body.component.mjs +47 -51
  330. package/esm2022/component/table/table-head/filter-dropdown-tab/filter-dropdown-tab.component.mjs +15 -23
  331. package/esm2022/component/table/table-head/main-dropdown-tab/main-dropdown-tab.component.mjs +12 -19
  332. package/esm2022/component/table/table-head/table-head.component.mjs +15 -23
  333. package/esm2022/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.mjs +54 -51
  334. package/esm2022/component/table/table-head-group/table-head-group.component.mjs +11 -16
  335. package/esm2022/component/table/util/state-util.mjs +2 -2
  336. package/esm2022/component/table/util/table-util.mjs +1 -1
  337. package/esm2022/component/tabs/public-api.mjs +1 -2
  338. package/esm2022/component/tabs/tab/tab.component.mjs +15 -19
  339. package/esm2022/component/tabs/tab-content.directive.mjs +8 -8
  340. package/esm2022/component/tabs/tab-title.directive.mjs +8 -8
  341. package/esm2022/component/tabs/tabs/tabs.component.mjs +19 -23
  342. package/esm2022/component/theme-switch/public-api.mjs +1 -2
  343. package/esm2022/component/theme-switch/theme-switch/theme-switch.component.mjs +11 -12
  344. package/esm2022/component/theme-switch/theme-switch.service.mjs +5 -7
  345. package/esm2022/component/toggle/public-api.mjs +1 -2
  346. package/esm2022/component/toggle/toggle/toggle.component.mjs +12 -21
  347. package/esm2022/component/toolbar/public-api.mjs +1 -2
  348. package/esm2022/component/toolbar/toolbar/toolbar.component.mjs +5 -7
  349. package/esm2022/component/tree/public-api.mjs +1 -2
  350. package/esm2022/component/tree/tree/tree.component.mjs +31 -38
  351. package/esm2022/component/tree/tree-item/tree-item.component.mjs +17 -21
  352. package/esm2022/component/tree/tree-item-toggle/tree-item-toggle.component.mjs +10 -13
  353. package/esm2022/component/tree/tree.service.mjs +8 -10
  354. package/esm2022/directive/auto-position/auto-position.directive.mjs +12 -13
  355. package/esm2022/directive/auto-position/public-api.mjs +1 -2
  356. package/esm2022/directive/click-outside/click-outside.directive.mjs +19 -20
  357. package/esm2022/directive/click-outside/public-api.mjs +1 -2
  358. package/esm2022/directive/context-menu/context-menu.directive.mjs +20 -29
  359. package/esm2022/directive/context-menu/public-api.mjs +1 -2
  360. package/esm2022/directive/disable-control/disable-control.directive.mjs +7 -6
  361. package/esm2022/directive/disable-control/public-api.mjs +1 -2
  362. package/esm2022/directive/drag-drop/drag-container.directive.mjs +14 -21
  363. package/esm2022/directive/drag-drop/drag-drop.service.mjs +10 -20
  364. package/esm2022/directive/drag-drop/drag-placeholder.directive.mjs +7 -6
  365. package/esm2022/directive/drag-drop/drag-preview.directive.mjs +8 -8
  366. package/esm2022/directive/drag-drop/drag.directive.mjs +14 -20
  367. package/esm2022/directive/drag-drop/model/drag-container-instance.mjs +1 -4
  368. package/esm2022/directive/drag-drop/model/drag-instance.mjs +1 -3
  369. package/esm2022/directive/drag-drop/public-api.mjs +1 -2
  370. package/esm2022/directive/drag-sort/drag-sort-container.directive.mjs +9 -7
  371. package/esm2022/directive/drag-sort/drag-sort-item.directive.mjs +12 -16
  372. package/esm2022/directive/drag-sort/public-api.mjs +1 -2
  373. package/esm2022/directive/dynamic-content-base.directive.mjs +13 -22
  374. package/esm2022/directive/highlight/highlight.directive.mjs +8 -8
  375. package/esm2022/directive/highlight/public-api.mjs +1 -2
  376. package/esm2022/directive/hint/hint.directive.mjs +14 -24
  377. package/esm2022/directive/hint/public-api.mjs +1 -2
  378. package/esm2022/directive/let/let.directive.mjs +8 -9
  379. package/esm2022/directive/let/public-api.mjs +1 -2
  380. package/esm2022/directive/loader/loader.directive.mjs +12 -18
  381. package/esm2022/directive/loader/public-api.mjs +1 -2
  382. package/esm2022/directive/no-autofill/no-autofill.directive.mjs +7 -8
  383. package/esm2022/directive/no-autofill/public-api.mjs +1 -2
  384. package/esm2022/directive/only-number/only-number.directive.mjs +19 -19
  385. package/esm2022/directive/only-number/public-api.mjs +1 -2
  386. package/esm2022/directive/resize-drag/public-api.mjs +1 -2
  387. package/esm2022/directive/resize-drag/resize-drag.directive.mjs +18 -19
  388. package/esm2022/directive/scroll-into-view/public-api.mjs +1 -2
  389. package/esm2022/directive/scroll-into-view/scroll-into-view.directive.mjs +11 -13
  390. package/esm2022/directive/scrollable/public-api.mjs +1 -2
  391. package/esm2022/directive/scrollable/scrollable/scrollable.component.mjs +20 -24
  392. package/esm2022/directive/scrollable/scrollable.directive.mjs +8 -5
  393. package/esm2022/directive/teta-template/public-api.mjs +1 -2
  394. package/esm2022/directive/teta-template/teta-template.directive.mjs +8 -9
  395. package/esm2022/directive/tooltip/public-api.mjs +1 -2
  396. package/esm2022/directive/tooltip/tooltip.directive.mjs +16 -21
  397. package/esm2022/index.mjs +22 -0
  398. package/esm2022/locale/teta-config.service.mjs +8 -8
  399. package/esm2022/observable/animation-frame.mjs +1 -1
  400. package/esm2022/observable/public-api.mjs +1 -2
  401. package/esm2022/pipe/date-pipe/public-api.mjs +1 -2
  402. package/esm2022/pipe/date-pipe/teta-date.pipe.mjs +22 -14
  403. package/esm2022/pipe/number-pipe/number.pipe.mjs +6 -5
  404. package/esm2022/pipe/number-pipe/public-api.mjs +1 -2
  405. package/esm2022/pipe/util/number-helper.mjs +1 -1
  406. package/esm2022/tetacom-ng-components.mjs +2 -2
  407. package/esm2022/util/bool-or-func.mjs +1 -1
  408. package/esm2022/util/date-util.mjs +1 -1
  409. package/esm2022/util/forms-util.mjs +3 -3
  410. package/fesm2022/tetacom-ng-components.mjs +6035 -8436
  411. package/fesm2022/tetacom-ng-components.mjs.map +1 -1
  412. package/index.d.ts +17 -3
  413. package/observable/public-api.d.ts +0 -1
  414. package/package.json +5 -24
  415. package/pipe/date-pipe/public-api.d.ts +0 -1
  416. package/pipe/date-pipe/teta-date.pipe.d.ts +3 -3
  417. package/pipe/number-pipe/number.pipe.d.ts +1 -1
  418. package/pipe/number-pipe/public-api.d.ts +0 -1
  419. package/style/accordion.scss +3 -1
  420. package/style/checkbox.scss +1 -1
  421. package/style/icon.scss +1 -1
  422. package/style/message.scss +1 -1
  423. package/style/navigation.scss +3 -3
  424. package/style/switch.scss +1 -3
  425. package/style/toggle.scss +1 -1
  426. package/style/toolbar.scss +1 -1
  427. package/.browserslistrc +0 -16
  428. package/component/accordion/accordion.module.d.ts +0 -12
  429. package/component/autocomplete/autocomplete.module.d.ts +0 -8
  430. package/component/avatar/avatar.module.d.ts +0 -9
  431. package/component/button/button.module.d.ts +0 -8
  432. package/component/chart-3d/chart-3d.module.d.ts +0 -8
  433. package/component/checkbox/checkbox.module.d.ts +0 -9
  434. package/component/date-picker/date-picker.module.d.ts +0 -24
  435. package/component/delimiter/delimiter.module.d.ts +0 -8
  436. package/component/divider/divider.module.d.ts +0 -8
  437. package/component/dropdown/dropdown.module.d.ts +0 -11
  438. package/component/dynamic-component/dynamic-component.module.d.ts +0 -8
  439. package/component/expand-card/expand-card.module.d.ts +0 -13
  440. package/component/expand-panel/expand-panel.module.d.ts +0 -14
  441. package/component/file-upload/file-upload.module.d.ts +0 -12
  442. package/component/filter/filter.module.d.ts +0 -21
  443. package/component/icon/icon-file/icon-file.module.d.ts +0 -9
  444. package/component/icon/icon.module.d.ts +0 -10
  445. package/component/input/input.module.d.ts +0 -16
  446. package/component/message/message.module.d.ts +0 -11
  447. package/component/pager/pager.module.d.ts +0 -9
  448. package/component/panel/panel.module.d.ts +0 -8
  449. package/component/progress-bar/progress-bar.module.d.ts +0 -8
  450. package/component/radio/radio.module.d.ts +0 -10
  451. package/component/resize-panel/resize-panel.module.d.ts +0 -10
  452. package/component/select/select.module.d.ts +0 -18
  453. package/component/sidebar/sidebar.module.d.ts +0 -10
  454. package/component/switch/switch.module.d.ts +0 -9
  455. package/component/table/table.module.d.ts +0 -47
  456. package/component/tabs/tabs.module.d.ts +0 -11
  457. package/component/theme-switch/theme-switch.module.d.ts +0 -10
  458. package/component/three/custom-series/custom-series.component.d.ts +0 -20
  459. package/component/three/public-api.d.ts +0 -11
  460. package/component/three/three-chart/area-3d/area-3d.component.d.ts +0 -14
  461. package/component/three/three-chart/axes-3d/axes-3d.component.d.ts +0 -37
  462. package/component/three/three-chart/base-3d-series/base3d-series.component.d.ts +0 -15
  463. package/component/three/three-chart/block-3d/block-3d.component.d.ts +0 -28
  464. package/component/three/three-chart/canvas/canvas.component.d.ts +0 -11
  465. package/component/three/three-chart/directive/canvas-3d-host.d.ts +0 -19
  466. package/component/three/three-chart/directive/public-api.d.ts +0 -2
  467. package/component/three/three-chart/directive/series-3d-host.d.ts +0 -16
  468. package/component/three/three-chart/line-3d/line-3d.component.d.ts +0 -19
  469. package/component/three/three-chart/model/axes-3d-min-max.d.ts +0 -5
  470. package/component/three/three-chart/model/axis-3d-point.d.ts +0 -4
  471. package/component/three/three-chart/model/base-3d-series.d.ts +0 -11
  472. package/component/three/three-chart/model/base-3d-three-point.d.ts +0 -8
  473. package/component/three/three-chart/model/block-3d-series.d.ts +0 -6
  474. package/component/three/three-chart/model/block3d-point.d.ts +0 -5
  475. package/component/three/three-chart/model/enum/public-api.d.ts +0 -1
  476. package/component/three/three-chart/model/enum/series-3d-type.d.ts +0 -4
  477. package/component/three/three-chart/model/i-3d-chart-config.d.ts +0 -14
  478. package/component/three/three-chart/model/line-3d-point.d.ts +0 -5
  479. package/component/three/three-chart/model/line-3d-series.d.ts +0 -6
  480. package/component/three/three-chart/model/public-api.d.ts +0 -10
  481. package/component/three/three-chart/scene/scene.component.d.ts +0 -20
  482. package/component/three/three-chart/service/chart-3d.service.d.ts +0 -21
  483. package/component/three/three-chart/three-chart.component.d.ts +0 -19
  484. package/component/toggle/toggle.module.d.ts +0 -9
  485. package/component/toolbar/toolbar.module.d.ts +0 -8
  486. package/component/tree/tree.module.d.ts +0 -14
  487. package/directive/auto-position/auto-position.module.d.ts +0 -8
  488. package/directive/click-outside/click-outside.module.d.ts +0 -8
  489. package/directive/context-menu/context-menu.module.d.ts +0 -9
  490. package/directive/disable-control/disable-control.module.d.ts +0 -8
  491. package/directive/drag-drop/drag-drop.module.d.ts +0 -11
  492. package/directive/drag-sort/drag-sort.module.d.ts +0 -9
  493. package/directive/highlight/highlight.module.d.ts +0 -8
  494. package/directive/hint/hint.module.d.ts +0 -9
  495. package/directive/let/let.module.d.ts +0 -8
  496. package/directive/loader/loader.module.d.ts +0 -8
  497. package/directive/no-autofill/no-autofill.module.d.ts +0 -8
  498. package/directive/only-number/only-number.module.d.ts +0 -8
  499. package/directive/resize-drag/resize-drag.module.d.ts +0 -8
  500. package/directive/scroll-into-view/scroll-into-view.module.d.ts +0 -8
  501. package/directive/scrollable/scrollable.module.d.ts +0 -10
  502. package/directive/teta-template/teta-template.module.d.ts +0 -8
  503. package/directive/tooltip/tooltip.module.d.ts +0 -10
  504. package/docs/chartDocs.mdx +0 -153
  505. package/docs/threeDocs.mdx +0 -65
  506. package/esm2022/component/accordion/accordion.module.mjs +0 -27
  507. package/esm2022/component/autocomplete/autocomplete.module.mjs +0 -24
  508. package/esm2022/component/avatar/avatar.module.mjs +0 -28
  509. package/esm2022/component/button/button.module.mjs +0 -22
  510. package/esm2022/component/chart-3d/chart-3d.module.mjs +0 -18
  511. package/esm2022/component/checkbox/checkbox.module.mjs +0 -26
  512. package/esm2022/component/date-picker/date-picker.module.mjs +0 -91
  513. package/esm2022/component/delimiter/delimiter.module.mjs +0 -20
  514. package/esm2022/component/divider/divider.module.mjs +0 -20
  515. package/esm2022/component/dropdown/dropdown.module.mjs +0 -39
  516. package/esm2022/component/dynamic-component/dynamic-component.module.mjs +0 -20
  517. package/esm2022/component/expand-card/expand-card.module.mjs +0 -45
  518. package/esm2022/component/expand-panel/expand-panel.module.mjs +0 -50
  519. package/esm2022/component/file-upload/file-upload.module.mjs +0 -22
  520. package/esm2022/component/filter/filter.module.mjs +0 -81
  521. package/esm2022/component/icon/icon-file/icon-file.module.mjs +0 -28
  522. package/esm2022/component/icon/icon.module.mjs +0 -33
  523. package/esm2022/component/input/input.module.mjs +0 -26
  524. package/esm2022/component/message/message.module.mjs +0 -29
  525. package/esm2022/component/pager/pager.module.mjs +0 -24
  526. package/esm2022/component/panel/panel.module.mjs +0 -20
  527. package/esm2022/component/progress-bar/progress-bar.module.mjs +0 -20
  528. package/esm2022/component/radio/radio.module.mjs +0 -20
  529. package/esm2022/component/resize-panel/resize-panel.module.mjs +0 -20
  530. package/esm2022/component/select/select.module.mjs +0 -54
  531. package/esm2022/component/sidebar/sidebar.module.mjs +0 -28
  532. package/esm2022/component/switch/switch.module.mjs +0 -21
  533. package/esm2022/component/table/table.module.mjs +0 -185
  534. package/esm2022/component/tabs/tabs.module.mjs +0 -39
  535. package/esm2022/component/theme-switch/theme-switch.module.mjs +0 -28
  536. package/esm2022/component/three/custom-series/custom-series.component.mjs +0 -34
  537. package/esm2022/component/three/public-api.mjs +0 -12
  538. package/esm2022/component/three/three-chart/area-3d/area-3d.component.mjs +0 -53
  539. package/esm2022/component/three/three-chart/axes-3d/axes-3d.component.mjs +0 -60
  540. package/esm2022/component/three/three-chart/base-3d-series/base3d-series.component.mjs +0 -29
  541. package/esm2022/component/three/three-chart/block-3d/block-3d.component.mjs +0 -77
  542. package/esm2022/component/three/three-chart/canvas/canvas.component.mjs +0 -24
  543. package/esm2022/component/three/three-chart/directive/canvas-3d-host.mjs +0 -49
  544. package/esm2022/component/three/three-chart/directive/public-api.mjs +0 -3
  545. package/esm2022/component/three/three-chart/directive/series-3d-host.mjs +0 -48
  546. package/esm2022/component/three/three-chart/line-3d/line-3d.component.mjs +0 -42
  547. package/esm2022/component/three/three-chart/model/axes-3d-min-max.mjs +0 -2
  548. package/esm2022/component/three/three-chart/model/axis-3d-point.mjs +0 -2
  549. package/esm2022/component/three/three-chart/model/base-3d-series.mjs +0 -2
  550. package/esm2022/component/three/three-chart/model/base-3d-three-point.mjs +0 -2
  551. package/esm2022/component/three/three-chart/model/block-3d-series.mjs +0 -2
  552. package/esm2022/component/three/three-chart/model/block3d-point.mjs +0 -2
  553. package/esm2022/component/three/three-chart/model/enum/public-api.mjs +0 -2
  554. package/esm2022/component/three/three-chart/model/enum/series-3d-type.mjs +0 -6
  555. package/esm2022/component/three/three-chart/model/i-3d-chart-config.mjs +0 -2
  556. package/esm2022/component/three/three-chart/model/line-3d-point.mjs +0 -2
  557. package/esm2022/component/three/three-chart/model/line-3d-series.mjs +0 -2
  558. package/esm2022/component/three/three-chart/model/public-api.mjs +0 -11
  559. package/esm2022/component/three/three-chart/scene/scene.component.mjs +0 -47
  560. package/esm2022/component/three/three-chart/service/chart-3d.service.mjs +0 -86
  561. package/esm2022/component/three/three-chart/three-chart.component.mjs +0 -46
  562. package/esm2022/component/toggle/toggle.module.mjs +0 -19
  563. package/esm2022/component/toolbar/toolbar.module.mjs +0 -20
  564. package/esm2022/component/tree/tree.module.mjs +0 -24
  565. package/esm2022/directive/auto-position/auto-position.module.mjs +0 -24
  566. package/esm2022/directive/click-outside/click-outside.module.mjs +0 -20
  567. package/esm2022/directive/context-menu/context-menu.module.mjs +0 -24
  568. package/esm2022/directive/disable-control/disable-control.module.mjs +0 -22
  569. package/esm2022/directive/drag-drop/drag-drop.module.mjs +0 -39
  570. package/esm2022/directive/drag-sort/drag-sort.module.mjs +0 -19
  571. package/esm2022/directive/highlight/highlight.module.mjs +0 -20
  572. package/esm2022/directive/hint/hint.module.mjs +0 -24
  573. package/esm2022/directive/let/let.module.mjs +0 -23
  574. package/esm2022/directive/loader/loader.module.mjs +0 -20
  575. package/esm2022/directive/no-autofill/no-autofill.module.mjs +0 -18
  576. package/esm2022/directive/only-number/only-number.module.mjs +0 -18
  577. package/esm2022/directive/resize-drag/resize-drag.module.mjs +0 -18
  578. package/esm2022/directive/scroll-into-view/scroll-into-view.module.mjs +0 -23
  579. package/esm2022/directive/scrollable/scrollable.module.mjs +0 -33
  580. package/esm2022/directive/teta-template/teta-template.module.mjs +0 -24
  581. package/esm2022/directive/tooltip/tooltip.module.mjs +0 -20
  582. package/esm2022/observable/zoneObservable.mjs +0 -15
  583. package/esm2022/pipe/date-pipe/teta-date-pipe.module.mjs +0 -18
  584. package/esm2022/pipe/number-pipe/number-pipe.module.mjs +0 -22
  585. package/esm2022/public-api.mjs +0 -25
  586. package/observable/zoneObservable.d.ts +0 -5
  587. package/pipe/date-pipe/teta-date-pipe.module.d.ts +0 -8
  588. package/pipe/number-pipe/number-pipe.module.d.ts +0 -8
  589. package/public-api.d.ts +0 -22
@@ -1,28 +1,25 @@
1
- import { ChangeDetectionStrategy, Component, ContentChild, forwardRef, HostBinding, Input, } from '@angular/core';
2
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, forwardRef, HostBinding, Input, } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
3
3
  import { Align } from '../../../common/enum/align.enum';
4
4
  import { VerticalAlign } from '../../../common/enum/vertical-align.enum';
5
+ import { TetaConfigService } from '../../../locale/teta-config.service';
5
6
  import { SelectOptionDirective } from '../select-option.directive';
6
7
  import { SelectValueDirective } from '../select-value.directive';
8
+ import { HighlightDirective } from '../../../directive/highlight/highlight.directive';
9
+ import { ScrollableDirective } from '../../../directive/scrollable/scrollable.directive';
10
+ import { CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf } from '@angular/cdk/scrolling';
11
+ import { ScrollableComponent } from '../../../directive/scrollable/scrollable/scrollable.component';
12
+ import { TextFieldComponent } from '../../input/text-field/text-field.component';
13
+ import { DropdownContentDirective } from '../../dropdown/dropdown-content.directive';
14
+ import { NgTemplateOutlet, AsyncPipe } from '@angular/common';
15
+ import { IconComponent } from '../../icon/icon/icon.component';
16
+ import { DropdownHeadDirective } from '../../dropdown/dropdown-head.directive';
17
+ import { DropdownComponent } from '../../dropdown/dropdown/dropdown.component';
18
+ import { LetDirective } from '../../../directive/let/let.directive';
7
19
  import * as i0 from "@angular/core";
8
20
  import * as i1 from "../../../locale/teta-config.service";
9
- import * as i2 from "../../dropdown/dropdown/dropdown.component";
10
- import * as i3 from "../../dropdown/dropdown-head.directive";
11
- import * as i4 from "../../dropdown/dropdown-content.directive";
12
- import * as i5 from "@angular/common";
13
- import * as i6 from "@angular/cdk/scrolling";
14
- import * as i7 from "@angular/forms";
15
- import * as i8 from "../../icon/icon/icon.component";
16
- import * as i9 from "../../../directive/highlight/highlight.directive";
17
- import * as i10 from "../../input/text-field/text-field.component";
18
- import * as i11 from "../../../directive/let/let.directive";
19
- import * as i12 from "../../../directive/scrollable/scrollable.directive";
20
- import * as i13 from "../../../directive/scrollable/scrollable/scrollable.component";
21
+ import * as i2 from "@angular/forms";
21
22
  export class SelectComponent {
22
- _cdr;
23
- _elementRef;
24
- _config;
25
- multiple;
26
23
  set options(options) {
27
24
  this._options = options;
28
25
  if (this._internalValue !== null &&
@@ -34,36 +31,12 @@ export class SelectComponent {
34
31
  get options() {
35
32
  return this._options;
36
33
  }
37
- invalid;
38
- align = Align.minWidth;
39
- verticalAlign = VerticalAlign.auto;
40
- autoClose = true;
41
- autoCloseIgnore = ['inside'];
42
- disabled;
43
- itemSize = 32;
44
- virtual;
45
- icon;
46
- placeholder;
47
- appendToBody;
48
- allowNull = true;
49
- viewType = 'rounded';
50
- notFoundText;
51
- valueRef;
52
- textRef;
53
- searchRef;
54
- optionDirective;
55
- valueDirective;
56
- open = false;
57
- selectClass = true;
58
34
  get tabindex() {
59
35
  return this.disabled ? null : 0;
60
36
  }
61
37
  get isDisabled() {
62
38
  return this.disabled;
63
39
  }
64
- value;
65
- searchText;
66
- locale;
67
40
  get visibleOptions() {
68
41
  if (!this.searchText) {
69
42
  return this.options;
@@ -72,12 +45,21 @@ export class SelectComponent {
72
45
  .toLowerCase()
73
46
  .indexOf(this.searchText.toLowerCase()) >= 0);
74
47
  }
75
- _options;
76
- _internalValue;
77
48
  constructor(_cdr, _elementRef, _config) {
78
49
  this._cdr = _cdr;
79
50
  this._elementRef = _elementRef;
80
51
  this._config = _config;
52
+ this.align = Align.minWidth;
53
+ this.verticalAlign = VerticalAlign.auto;
54
+ this.autoClose = true;
55
+ this.autoCloseIgnore = ['inside'];
56
+ this.itemSize = 32;
57
+ this.allowNull = true;
58
+ this.viewType = 'rounded';
59
+ this.open = false;
60
+ this.selectClass = true;
61
+ this.onChange = () => { };
62
+ this.onTouched = () => { };
81
63
  this.locale = this._config.locale;
82
64
  }
83
65
  clear() {
@@ -178,11 +160,9 @@ export class SelectComponent {
178
160
  this.getSelectedValue(value);
179
161
  this._cdr.detectChanges();
180
162
  }
181
- onChange = () => { };
182
163
  registerOnChange(fn) {
183
164
  this.onChange = fn;
184
165
  }
185
- onTouched = () => { };
186
166
  registerOnTouched(fn) {
187
167
  this.onTouched = fn;
188
168
  }
@@ -203,16 +183,16 @@ export class SelectComponent {
203
183
  this.options?.find(option => this.getValue(option) === value);
204
184
  }
205
185
  }
206
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.TetaConfigService }], target: i0.ɵɵFactoryTarget.Component });
207
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SelectComponent, selector: "teta-select", inputs: { multiple: "multiple", options: "options", invalid: "invalid", align: "align", verticalAlign: "verticalAlign", autoClose: "autoClose", autoCloseIgnore: "autoCloseIgnore", disabled: "disabled", itemSize: "itemSize", virtual: "virtual", icon: "icon", placeholder: "placeholder", appendToBody: "appendToBody", allowNull: "allowNull", viewType: "viewType", notFoundText: "notFoundText", valueRef: "valueRef", textRef: "textRef", searchRef: "searchRef" }, host: { properties: { "class.select_multiple": "this.multiple", "class.select_open": "this.open", "class.select": "this.selectClass", "tabindex": "this.tabindex", "class.select_disabled": "this.isDisabled" } }, providers: [
186
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.TetaConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
187
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: SelectComponent, isStandalone: true, selector: "teta-select", inputs: { multiple: "multiple", options: "options", invalid: "invalid", align: "align", verticalAlign: "verticalAlign", autoClose: "autoClose", autoCloseIgnore: "autoCloseIgnore", disabled: "disabled", itemSize: "itemSize", virtual: "virtual", icon: "icon", placeholder: "placeholder", appendToBody: "appendToBody", allowNull: "allowNull", viewType: "viewType", notFoundText: "notFoundText", valueRef: "valueRef", textRef: "textRef", searchRef: "searchRef" }, host: { properties: { "class.select_multiple": "this.multiple", "class.select_open": "this.open", "class.select": "this.selectClass", "tabindex": "this.tabindex", "class.select_disabled": "this.isDisabled" } }, providers: [
208
188
  {
209
189
  provide: NG_VALUE_ACCESSOR,
210
190
  useExisting: forwardRef(() => SelectComponent),
211
191
  multi: true,
212
192
  },
213
- ], queries: [{ propertyName: "optionDirective", first: true, predicate: SelectOptionDirective, descendants: true, static: true }, { propertyName: "valueDirective", first: true, predicate: SelectValueDirective, descendants: true, static: true }], ngImport: i0, template: "<ng-container *tetaLet='locale | async as loc'>\n <teta-dropdown [align]='align'\n [verticalAlign]='verticalAlign'\n [autoClose]='autoClose'\n [autoCloseIgnore]='autoCloseIgnore'\n [(open)]='open'\n [appendToBody]='appendToBody'\n [disabled]='disabled'\n [viewType]='viewType'\n class='row row_auto'>\n <div tetaDropdownHead\n [class]=\"'row row_auto select-head select_'+viewType\"\n [class.select-head_invalid]='invalid'>\n <div class='row_auto flex align-center'>\n <teta-icon *ngIf='icon' [name]='icon' [palette]=\"'text'\" class='margin-right-1'></teta-icon>\n <span class='placeholder' *ngIf='(value=== null ||value=== undefined || value?.length === 0)&&!multiple'>\n {{placeholder || loc.notSelected}}\n </span>\n <ng-container\n *ngTemplateOutlet='valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}'></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n <div *ngIf='options?.length'\n tetaDropdownContent\n class='select-body row_auto'\n (click)='$event.preventDefault()'>\n <ng-container *ngIf='searchRef'>\n <div class='select-search padding-h-2'>\n <teta-text-field [ngModel]='searchText'\n [class]=\"'select_'+viewType\"\n (ngModelChange)='search($event)'\n [placeholder]='loc.search'\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n </ng-container>\n <ng-container *ngIf='visibleOptions?.length;else notFound '>\n <ng-container *ngIf='!multiple && allowNull'>\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_'+viewType\"\n (click)='clear()'>\n {{loc.notSelected}}\n </div>\n <div class='list-divider margin-bottom-0'></div>\n </ng-container>\n <teta-scrollable *ngIf='virtual; else default' class='column column_auto padding-h-2'>\n <cdk-virtual-scroll-viewport tetaScrollable\n [itemSize]='40'\n minBufferPx='200'\n maxBufferPx='600'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *cdkVirtualFor='let option of visibleOptions; templateCacheSize: 0;'\n [class.list-item_active]='itemSelected(option)'\n [tetaHighlight]='searchText'\n (click)='clickOption(option, $event)'>\n <div [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </div>\n <teta-icon *ngIf='itemSelected(option)' [name]=\"'tick'\" [palette]=\"'text'\"\n class='margin-left-2'></teta-icon>\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n <ng-template #default>\n <teta-scrollable class='column column_auto padding-h-2' [contentClass]=\"['column', 'column_auto']\">\n <div class='list'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *ngFor='let option of visibleOptions'\n [class.list-item_active]='itemSelected(option)'\n (click)='clickOption(option, $event)'>\n <span [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </span>\n <teta-icon *ngIf='itemSelected(option) && multiple' [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n </div>\n </div>\n </teta-scrollable>\n </ng-template>\n </ng-container>\n <div class='row row_auto select-chip-field flex-wrap' *ngIf='multiple && value?.length'>\n <div *ngFor='let item of value' class='tag'>\n <p>{{getText(item)}}</p>\n <teta-icon class='cursor-pointer' [palette]=\"'text'\" [name]=\"'closeCircle'\"\n (click)='removeItemClick(item, $event)'></teta-icon>\n </div>\n </div>\n </div>\n </teta-dropdown>\n <ng-template #notFound>\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{getText(option)}}\n </ng-template>\n <ng-template #valueDefault let-value>\n <div class='row_auto overflow-hidden text-overflow-ellipsis' *ngIf='multiple'>\n {{loc.selected + ' ' + value?.length}}\n </div>\n <ng-container *ngIf='!multiple'>\n <span class='row row_auto overflow-hidden text-overflow-ellipsis'>{{getText(value)}}</span>\n </ng-container>\n </ng-template>\n</ng-container>\n\n", styles: [""], dependencies: [{ kind: "component", type: i2.DropdownComponent, selector: "teta-dropdown", exportAs: ["dropdown"] }, { kind: "directive", type: i3.DropdownHeadDirective, selector: "[tetaDropdownHead]" }, { kind: "directive", type: i4.DropdownContentDirective, selector: "[tetaDropdownContent]" }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i6.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i6.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i6.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "directive", type: i9.HighlightDirective, selector: "[tetaHighlight]", inputs: ["tetaHighlight"] }, { kind: "component", type: i10.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "decimalPart", "invalid"] }, { kind: "directive", type: i11.LetDirective, selector: "[tetaLet]", inputs: ["tetaLet"] }, { kind: "directive", type: i12.ScrollableDirective, selector: "[tetaScrollable]" }, { kind: "component", type: i13.ScrollableComponent, selector: "teta-scrollable", inputs: ["direction", "showScrollbars", "contentClass"], outputs: ["scroll"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
193
+ ], queries: [{ propertyName: "optionDirective", first: true, predicate: SelectOptionDirective, descendants: true, static: true }, { propertyName: "valueDirective", first: true, predicate: SelectValueDirective, descendants: true, static: true }], ngImport: i0, template: "@if (locale|async; as loc){\n <teta-dropdown [align]='align'\n [verticalAlign]='verticalAlign'\n [autoClose]='autoClose'\n [autoCloseIgnore]='autoCloseIgnore'\n [(open)]='open'\n [appendToBody]='appendToBody'\n [disabled]='disabled'\n [viewType]='viewType'\n class='row row_auto'>\n <div tetaDropdownHead\n [class]=\"'row row_auto select-head select_'+viewType\"\n [class.select-head_invalid]='invalid'>\n <div class='row_auto flex align-center'>\n @if (icon) {\n <teta-icon [name]='icon' [palette]=\"'text'\" class='margin-right-1'></teta-icon>\n }\n @if ((value=== null ||value=== undefined || value?.length === 0)&&!multiple) {\n <span class='placeholder'>\n {{placeholder || loc.notSelected}}\n </span>\n }\n <ng-container\n *ngTemplateOutlet='valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}'></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n @if (options?.length) {\n <div\n tetaDropdownContent\n class='select-body row_auto'\n (click)='$event.preventDefault()'>\n @if (searchRef) {\n <div class='select-search padding-h-2'>\n <teta-text-field [ngModel]='searchText'\n [class]=\"'select_'+viewType\"\n (ngModelChange)='search($event)'\n [placeholder]='loc.search'\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n }\n @if (visibleOptions?.length) {\n @if (!multiple && allowNull) {\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_'+viewType\"\n (click)='clear()'>\n {{loc.notSelected}}\n </div>\n <div class='list-divider margin-bottom-0'></div>\n }\n @if (virtual) {\n <teta-scrollable class='column column_auto padding-h-2'>\n <cdk-virtual-scroll-viewport tetaScrollable\n [itemSize]='40'\n minBufferPx='200'\n maxBufferPx='600'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *cdkVirtualFor='let option of visibleOptions; templateCacheSize: 0;'\n [class.list-item_active]='itemSelected(option)'\n [tetaHighlight]='searchText'\n (click)='clickOption(option, $event)'>\n <div [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </div>\n @if (itemSelected(option)) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"\n class='margin-left-2'></teta-icon>\n }\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n } @else {\n <teta-scrollable class='column column_auto padding-h-2' [contentClass]=\"['column', 'column_auto']\">\n <div class='list'>\n @for (option of visibleOptions; track option) {\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n [class.list-item_active]='itemSelected(option)'\n (click)='clickOption(option, $event)'>\n <span [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </span>\n @if (itemSelected(option) && multiple) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n }\n </div>\n }\n </div>\n </teta-scrollable>\n }\n } @else {\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n }\n @if (multiple && value?.length) {\n <div class='row row_auto select-chip-field flex-wrap'>\n @for (item of value; track item) {\n <div class='tag'>\n <p>{{getText(item)}}</p>\n <teta-icon class='cursor-pointer' [palette]=\"'text'\" [name]=\"'closeCircle'\"\n (click)='removeItemClick(item, $event)'></teta-icon>\n </div>\n }\n </div>\n }\n </div>\n }\n </teta-dropdown>\n <ng-template #notFound>\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{getText(option)}}\n </ng-template>\n <ng-template #valueDefault let-value>\n @if (multiple) {\n <div class='row_auto overflow-hidden text-overflow-ellipsis'>\n {{loc.selected + ' ' + value?.length}}\n </div>\n }\n @if (!multiple) {\n <span class='row row_auto overflow-hidden text-overflow-ellipsis'>{{getText(value)}}</span>\n }\n </ng-template>\n}\n\n", styles: [""], dependencies: [{ kind: "component", type: DropdownComponent, selector: "teta-dropdown", exportAs: ["dropdown"] }, { kind: "directive", type: DropdownHeadDirective, selector: "[tetaDropdownHead]" }, { kind: "component", type: IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: DropdownContentDirective, selector: "[tetaDropdownContent]" }, { kind: "component", type: TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "decimalPart", "invalid"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ScrollableComponent, selector: "teta-scrollable", inputs: ["direction", "showScrollbars", "contentClass"], outputs: ["scroll"] }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: ScrollableDirective, selector: "[tetaScrollable]" }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "directive", type: HighlightDirective, selector: "[tetaHighlight]", inputs: ["tetaHighlight"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
214
194
  }
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectComponent, decorators: [{
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectComponent, decorators: [{
216
196
  type: Component,
217
197
  args: [{ selector: 'teta-select', providers: [
218
198
  {
@@ -220,8 +200,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
220
200
  useExisting: forwardRef(() => SelectComponent),
221
201
  multi: true,
222
202
  },
223
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *tetaLet='locale | async as loc'>\n <teta-dropdown [align]='align'\n [verticalAlign]='verticalAlign'\n [autoClose]='autoClose'\n [autoCloseIgnore]='autoCloseIgnore'\n [(open)]='open'\n [appendToBody]='appendToBody'\n [disabled]='disabled'\n [viewType]='viewType'\n class='row row_auto'>\n <div tetaDropdownHead\n [class]=\"'row row_auto select-head select_'+viewType\"\n [class.select-head_invalid]='invalid'>\n <div class='row_auto flex align-center'>\n <teta-icon *ngIf='icon' [name]='icon' [palette]=\"'text'\" class='margin-right-1'></teta-icon>\n <span class='placeholder' *ngIf='(value=== null ||value=== undefined || value?.length === 0)&&!multiple'>\n {{placeholder || loc.notSelected}}\n </span>\n <ng-container\n *ngTemplateOutlet='valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}'></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n <div *ngIf='options?.length'\n tetaDropdownContent\n class='select-body row_auto'\n (click)='$event.preventDefault()'>\n <ng-container *ngIf='searchRef'>\n <div class='select-search padding-h-2'>\n <teta-text-field [ngModel]='searchText'\n [class]=\"'select_'+viewType\"\n (ngModelChange)='search($event)'\n [placeholder]='loc.search'\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n </ng-container>\n <ng-container *ngIf='visibleOptions?.length;else notFound '>\n <ng-container *ngIf='!multiple && allowNull'>\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_'+viewType\"\n (click)='clear()'>\n {{loc.notSelected}}\n </div>\n <div class='list-divider margin-bottom-0'></div>\n </ng-container>\n <teta-scrollable *ngIf='virtual; else default' class='column column_auto padding-h-2'>\n <cdk-virtual-scroll-viewport tetaScrollable\n [itemSize]='40'\n minBufferPx='200'\n maxBufferPx='600'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *cdkVirtualFor='let option of visibleOptions; templateCacheSize: 0;'\n [class.list-item_active]='itemSelected(option)'\n [tetaHighlight]='searchText'\n (click)='clickOption(option, $event)'>\n <div [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </div>\n <teta-icon *ngIf='itemSelected(option)' [name]=\"'tick'\" [palette]=\"'text'\"\n class='margin-left-2'></teta-icon>\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n <ng-template #default>\n <teta-scrollable class='column column_auto padding-h-2' [contentClass]=\"['column', 'column_auto']\">\n <div class='list'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *ngFor='let option of visibleOptions'\n [class.list-item_active]='itemSelected(option)'\n (click)='clickOption(option, $event)'>\n <span [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </span>\n <teta-icon *ngIf='itemSelected(option) && multiple' [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n </div>\n </div>\n </teta-scrollable>\n </ng-template>\n </ng-container>\n <div class='row row_auto select-chip-field flex-wrap' *ngIf='multiple && value?.length'>\n <div *ngFor='let item of value' class='tag'>\n <p>{{getText(item)}}</p>\n <teta-icon class='cursor-pointer' [palette]=\"'text'\" [name]=\"'closeCircle'\"\n (click)='removeItemClick(item, $event)'></teta-icon>\n </div>\n </div>\n </div>\n </teta-dropdown>\n <ng-template #notFound>\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{getText(option)}}\n </ng-template>\n <ng-template #valueDefault let-value>\n <div class='row_auto overflow-hidden text-overflow-ellipsis' *ngIf='multiple'>\n {{loc.selected + ' ' + value?.length}}\n </div>\n <ng-container *ngIf='!multiple'>\n <span class='row row_auto overflow-hidden text-overflow-ellipsis'>{{getText(value)}}</span>\n </ng-container>\n </ng-template>\n</ng-container>\n\n" }]
224
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.TetaConfigService }]; }, propDecorators: { multiple: [{
203
+ ], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
204
+ LetDirective,
205
+ DropdownComponent,
206
+ DropdownHeadDirective,
207
+ IconComponent,
208
+ NgTemplateOutlet,
209
+ DropdownContentDirective,
210
+ TextFieldComponent,
211
+ FormsModule,
212
+ ScrollableComponent,
213
+ CdkVirtualScrollViewport,
214
+ CdkFixedSizeVirtualScroll,
215
+ ScrollableDirective,
216
+ CdkVirtualForOf,
217
+ HighlightDirective,
218
+ AsyncPipe,
219
+ ], template: "@if (locale|async; as loc){\n <teta-dropdown [align]='align'\n [verticalAlign]='verticalAlign'\n [autoClose]='autoClose'\n [autoCloseIgnore]='autoCloseIgnore'\n [(open)]='open'\n [appendToBody]='appendToBody'\n [disabled]='disabled'\n [viewType]='viewType'\n class='row row_auto'>\n <div tetaDropdownHead\n [class]=\"'row row_auto select-head select_'+viewType\"\n [class.select-head_invalid]='invalid'>\n <div class='row_auto flex align-center'>\n @if (icon) {\n <teta-icon [name]='icon' [palette]=\"'text'\" class='margin-right-1'></teta-icon>\n }\n @if ((value=== null ||value=== undefined || value?.length === 0)&&!multiple) {\n <span class='placeholder'>\n {{placeholder || loc.notSelected}}\n </span>\n }\n <ng-container\n *ngTemplateOutlet='valueDirective ? valueDirective.template : valueDefault; context: {$implicit: value, value: value}'></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n @if (options?.length) {\n <div\n tetaDropdownContent\n class='select-body row_auto'\n (click)='$event.preventDefault()'>\n @if (searchRef) {\n <div class='select-search padding-h-2'>\n <teta-text-field [ngModel]='searchText'\n [class]=\"'select_'+viewType\"\n (ngModelChange)='search($event)'\n [placeholder]='loc.search'\n [leftIconName]=\"'search'\"></teta-text-field>\n </div>\n }\n @if (visibleOptions?.length) {\n @if (!multiple && allowNull) {\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_'+viewType\"\n (click)='clear()'>\n {{loc.notSelected}}\n </div>\n <div class='list-divider margin-bottom-0'></div>\n }\n @if (virtual) {\n <teta-scrollable class='column column_auto padding-h-2'>\n <cdk-virtual-scroll-viewport tetaScrollable\n [itemSize]='40'\n minBufferPx='200'\n maxBufferPx='600'>\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n *cdkVirtualFor='let option of visibleOptions; templateCacheSize: 0;'\n [class.list-item_active]='itemSelected(option)'\n [tetaHighlight]='searchText'\n (click)='clickOption(option, $event)'>\n <div [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </div>\n @if (itemSelected(option)) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"\n class='margin-left-2'></teta-icon>\n }\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n } @else {\n <teta-scrollable class='column column_auto padding-h-2' [contentClass]=\"['column', 'column_auto']\">\n <div class='list'>\n @for (option of visibleOptions; track option) {\n <div [class]=\"'list-item list-item_interactive justify-content-between select_'+viewType\"\n [class.list-item_active]='itemSelected(option)'\n (click)='clickOption(option, $event)'>\n <span [tetaHighlight]='searchText'>\n <ng-container\n *ngTemplateOutlet='optionDirective ? optionDirective.template : optionDefault; context: {$implicit: option, option: option}'>\n </ng-container>\n </span>\n @if (itemSelected(option) && multiple) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n }\n </div>\n }\n </div>\n </teta-scrollable>\n }\n } @else {\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n }\n @if (multiple && value?.length) {\n <div class='row row_auto select-chip-field flex-wrap'>\n @for (item of value; track item) {\n <div class='tag'>\n <p>{{getText(item)}}</p>\n <teta-icon class='cursor-pointer' [palette]=\"'text'\" [name]=\"'closeCircle'\"\n (click)='removeItemClick(item, $event)'></teta-icon>\n </div>\n }\n </div>\n }\n </div>\n }\n </teta-dropdown>\n <ng-template #notFound>\n <p\n class='padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option'>{{notFoundText || loc.notFound}}</p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{getText(option)}}\n </ng-template>\n <ng-template #valueDefault let-value>\n @if (multiple) {\n <div class='row_auto overflow-hidden text-overflow-ellipsis'>\n {{loc.selected + ' ' + value?.length}}\n </div>\n }\n @if (!multiple) {\n <span class='row row_auto overflow-hidden text-overflow-ellipsis'>{{getText(value)}}</span>\n }\n </ng-template>\n}\n\n" }]
220
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.TetaConfigService }], propDecorators: { multiple: [{
225
221
  type: HostBinding,
226
222
  args: ['class.select_multiple']
227
223
  }, {
@@ -281,4 +277,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
281
277
  type: HostBinding,
282
278
  args: ['class.select_disabled']
283
279
  }] } });
284
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9zZWxlY3Qvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxZQUFZLEVBRVosVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXpFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFJekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQWVqRSxNQUFNLE9BQU8sZUFBZTtJQThFaEI7SUFDQTtJQUNBO0lBN0VWLFFBQVEsQ0FBVTtJQUVsQixJQUFhLE9BQU8sQ0FBQyxPQUFjO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQ0UsSUFBSSxDQUFDLGNBQWMsS0FBSyxJQUFJO1lBQzVCLElBQUksQ0FBQyxjQUFjLEtBQUssU0FBUztZQUNqQyxJQUFJLENBQUMsT0FBTyxFQUNaO1lBQ0EsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUM1QztJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVRLE9BQU8sQ0FB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Q0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHTixlQUFlO3NCQURkLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlyRCxjQUFjO3NCQURiLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdsQixJQUFJO3NCQUFyQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFYyxXQUFXO3NCQUF4RCxXQUFXO3VCQUFDLGNBQWM7Z0JBR2YsUUFBUTtzQkFEbkIsV0FBVzt1QkFBQyxVQUFVO2dCQU1uQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQXV0b0Nsb3NlSWdub3JlQ2FzZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb250cmFjdC9hdXRvLWNsb3NlLWlnbm9yZS1jYXNlJztcbmltcG9ydCB7IEFsaWduIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2VudW0vYWxpZ24uZW51bSc7XG5pbXBvcnQgeyBWZXJ0aWNhbEFsaWduIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2VudW0vdmVydGljYWwtYWxpZ24uZW51bSc7XG5pbXBvcnQgeyB2aWV3VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9tb2RlbC92aWV3LXR5cGUubW9kZWwnO1xuaW1wb3J0IHsgVGV0YUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9sb2NhbGUvdGV0YS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBUZXRhTG9jYWxpc2F0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbG9jYWxlL3RldGEtbG9jYWxpc2F0aW9uJztcbmltcG9ydCB7IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC1vcHRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdFZhbHVlRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0LXZhbHVlLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9tdWx0aXBsZScpXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHNldCBvcHRpb25zKG9wdGlvbnM6IGFueVtdKSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgaWYgKFxuICAgICAgdGhpcy5faW50ZXJuYWxWYWx1ZSAhPT0gbnVsbCAmJlxuICAgICAgdGhpcy5faW50ZXJuYWxWYWx1ZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLm9wdGlvbnNcbiAgICApIHtcbiAgICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZSh0aGlzLl9pbnRlcm5hbFZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBnZXQgb3B0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9ucztcbiAgfVxuXG4gIEBJbnB1dCgpIGludmFsaWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFsaWduOiBBbGlnbiA9IEFsaWduLm1pbldpZHRoO1xuICBASW5wdXQoKSB2ZXJ0aWNhbEFsaWduOiBWZXJ0aWNhbEFsaWduID0gVmVydGljYWxBbGlnbi5hdXRvO1xuICBASW5wdXQoKSBhdXRvQ2xvc2UgPSB0cnVlO1xuICBASW5wdXQoKSBhdXRvQ2xvc2VJZ25vcmU6IEFycmF5PEF1dG9DbG9zZUlnbm9yZUNhc2U+ID0gWydpbnNpZGUnXTtcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGl0ZW1TaXplID0gMzI7XG4gIEBJbnB1dCgpIHZpcnR1YWw6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGljb246IHN0cmluZztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgQElucHV0KCkgYXBwZW5kVG9Cb2R5OiBib29sZWFuO1xuICBASW5wdXQoKSBhbGxvd051bGwgPSB0cnVlO1xuICBASW5wdXQoKSB2aWV3VHlwZTogdmlld1R5cGUgPSAncm91bmRlZCc7XG4gIEBJbnB1dCgpIG5vdEZvdW5kVGV4dDogc3RyaW5nO1xuICBASW5wdXQoKSB2YWx1ZVJlZjogKChpdGVtOiBhbnkpID0+IGFueSkgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHRleHRSZWY6ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpIHwgc3RyaW5nO1xuICBASW5wdXQoKSBzZWFyY2hSZWY6IHN0cmluZyB8ICgoaXRlbTogYW55KSA9PiBzdHJpbmcpO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0T3B0aW9uRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBvcHRpb25EaXJlY3RpdmU6IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZTtcblxuICBAQ29udGVudENoaWxkKFNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICB2YWx1ZURpcmVjdGl2ZTogU2VsZWN0VmFsdWVEaXJlY3RpdmU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3Rfb3BlbicpIG9wZW4gPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdCcpIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0Q2xhc3MgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKVxuICBwcml2YXRlIGdldCB0YWJpbmRleCgpIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IG51bGwgOiAwO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3RfZGlzYWJsZWQnKVxuICBnZXQgaXNEaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgfVxuXG4gIHZhbHVlOiBhbnkgfCBhbnlbXTtcbiAgc2VhcmNoVGV4dDogc3RyaW5nO1xuICBsb2NhbGU6IE9ic2VydmFibGU8VGV0YUxvY2FsaXNhdGlvbj47XG5cbiAgZ2V0IHZpc2libGVPcHRpb25zKCk6IGFueVtdIHtcbiAgICBpZiAoIXRoaXMuc2VhcmNoVGV4dCkge1xuICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucz8uZmlsdGVyKFxuICAgICAgb3B0aW9uID0+XG4gICAgICAgIHRoaXMuZ2V0U2VhcmNoU3RyaW5nKG9wdGlvbilcbiAgICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAgIC5pbmRleE9mKHRoaXMuc2VhcmNoVGV4dC50b0xvd2VyQ2FzZSgpKSA+PSAwXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX29wdGlvbnM6IGFueSB8IGFueVtdO1xuICBwcml2YXRlIF9pbnRlcm5hbFZhbHVlOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX2NvbmZpZzogVGV0YUNvbmZpZ1NlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5sb2NhbGUgPSB0aGlzLl9jb25maWcubG9jYWxlO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgbGV0IHZhbDogYW55O1xuICAgIGlmICh0aGlzLm11bHRpcGxlID09PSB0cnVlKSB7XG4gICAgICB2YWwgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsID0gbnVsbDtcbiAgICB9XG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgY2xpY2tPcHRpb24ob3B0aW9uOiBhbnksIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUgPT09IHRydWUpIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbXTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnZhbHVlLmluZGV4T2Yob3B0aW9uKSA+PSAwKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBvcHRpb25dO1xuICAgICAgfVxuICAgICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHRoaXMudmFsdWUubWFwKF8gPT4gdGhpcy5nZXRWYWx1ZShfKSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuX2ludGVybmFsVmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gb3B0aW9uO1xuICAgICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuX2ludGVybmFsVmFsdWUpO1xuICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgfVxuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgaXRlbVNlbGVjdGVkKG9wdGlvbjogYW55KTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlPy5pbmRleE9mKG9wdGlvbikgPj0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMudmFsdWUgPT09IG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICByZW1vdmVJdGVtQ2xpY2sob3B0aW9uOiBhbnksIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5yZW1vdmVJdGVtKG9wdGlvbik7XG4gICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHRoaXMudmFsdWUubWFwKF8gPT4gdGhpcy5nZXRWYWx1ZShfKSk7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLl9pbnRlcm5hbFZhbHVlKTtcbiAgfVxuXG4gIHJlbW92ZUl0ZW0ob3B0aW9uOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdGhpcy52YWx1ZS5maWx0ZXIoXyA9PiBfICE9PSBvcHRpb24pO1xuICB9XG5cbiAgc2VhcmNoKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRleHQ7XG4gIH1cblxuICBnZXRUZXh0KG9wdGlvbjogYW55KTogc3RyaW5nIHtcbiAgICBpZiAob3B0aW9uID09IG51bGwpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy50ZXh0UmVmKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gb3B0aW9uW3RoaXMudGV4dFJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgZ2V0VmFsdWUob3B0aW9uOiBhbnkpOiBhbnkge1xuICAgIHN3aXRjaCAodHlwZW9mIHRoaXMudmFsdWVSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy52YWx1ZVJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlUmVmKG9wdGlvbik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgIH1cbiAgfVxuXG4gIGdldFNlYXJjaFN0cmluZyhvcHRpb246IGFueSk6IHN0cmluZyB7XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy5zZWFyY2hSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy5zZWFyY2hSZWZdO1xuICAgICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2hSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBmb2N1cygpIHtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSB8IGFueVtdKTogdm9pZCB7XG4gICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VsZWN0ZWRWYWx1ZSh2YWx1ZTogYW55IHwgYW55W10pIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgIHZhbHVlICYmIHRoaXMub3B0aW9uc1xuICAgICAgICAgID8gdGhpcy5vcHRpb25zLmZpbHRlcihcbiAgICAgICAgICAgICAgb3B0aW9uID0+IHZhbHVlLmluZGV4T2YodGhpcy5nZXRWYWx1ZShvcHRpb24pKSA+IC0xXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgIHRoaXMub3B0aW9ucyAmJlxuICAgICAgICB0aGlzLm9wdGlvbnM/LmZpbmQob3B0aW9uID0+IHRoaXMuZ2V0VmFsdWUob3B0aW9uKSA9PT0gdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqdGV0YUxldD0nbG9jYWxlIHwgYXN5bmMgYXMgbG9jJz5cbiAgPHRldGEtZHJvcGRvd24gW2FsaWduXT0nYWxpZ24nXG4gICAgICAgICAgICAgICAgIFt2ZXJ0aWNhbEFsaWduXT0ndmVydGljYWxBbGlnbidcbiAgICAgICAgICAgICAgICAgW2F1dG9DbG9zZV09J2F1dG9DbG9zZSdcbiAgICAgICAgICAgICAgICAgW2F1dG9DbG9zZUlnbm9yZV09J2F1dG9DbG9zZUlnbm9yZSdcbiAgICAgICAgICAgICAgICAgWyhvcGVuKV09J29wZW4nXG4gICAgICAgICAgICAgICAgIFthcHBlbmRUb0JvZHldPSdhcHBlbmRUb0JvZHknXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09J2Rpc2FibGVkJ1xuICAgICAgICAgICAgICAgICBbdmlld1R5cGVdPSd2aWV3VHlwZSdcbiAgICAgICAgICAgICAgICAgY2xhc3M9J3JvdyByb3dfYXV0byc+XG4gICAgPGRpdiB0ZXRhRHJvcGRvd25IZWFkXG4gICAgICAgICBbY2xhc3NdPVwiJ3JvdyByb3dfYXV0byBzZWxlY3QtaGVhZCBzZWxlY3RfJyt2aWV3VHlwZVwiXG4gICAgICAgICBbY2xhc3Muc2VsZWN0LWhlYWRfaW52YWxpZF09J2ludmFsaWQnPlxuICAgICAgPGRpdiBjbGFzcz0ncm93X2F1dG8gZmxleCBhbGlnbi1jZW50ZXInPlxuICAgICAgICA8dGV0YS1pY29uICpuZ0lmPSdpY29uJyBbbmFtZV09J2ljb24nIFtwYWxldHRlXT1cIid0ZXh0J1wiIGNsYXNzPSdtYXJnaW4tcmlnaHQtMSc+PC90ZXRhLWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPSdwbGFjZWhvbGRlcicgKm5nSWY9Jyh2YWx1ZT09PSBudWxsIHx8dmFsdWU9PT0gdW5kZWZpbmVkIHx8IHZhbHVlPy5sZW5ndGggPT09IDApJiYhbXVsdGlwbGUnPlxuICAgICAgICAgIHt7cGxhY2Vob2xkZXIgfHwgbG9jLm5vdFNlbGVjdGVkfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9J3ZhbHVlRGlyZWN0aXZlID8gdmFsdWVEaXJlY3RpdmUudGVtcGxhdGUgOiB2YWx1ZURlZmF1bHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHZhbHVlLCB2YWx1ZTogdmFsdWV9Jz48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHRldGEtaWNvbiBbbmFtZV09XCInYXJyb3dEb3duU21hbGwnXCIgW3BhbGV0dGVdPVwiJ3RleHQnXCI+PC90ZXRhLWljb24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj0nb3B0aW9ucz8ubGVuZ3RoJ1xuICAgICAgICAgdGV0YURyb3Bkb3duQ29udGVudFxuICAgICAgICAgY2xhc3M9J3NlbGVjdC1ib2R5IHJvd19hdXRvJ1xuICAgICAgICAgKGNsaWNrKT0nJGV2ZW50LnByZXZlbnREZWZhdWx0KCknPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj0nc2VhcmNoUmVmJz5cbiAgICAgICAgPGRpdiBjbGFzcz0nc2VsZWN0LXNlYXJjaCBwYWRkaW5nLWgtMic+XG4gICAgICAgICAgPHRldGEtdGV4dC1maWVsZCBbbmdNb2RlbF09J3NlYXJjaFRleHQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiJ3NlbGVjdF8nK3ZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT0nc2VhcmNoKCRldmVudCknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPSdsb2Muc2VhcmNoJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xlZnRJY29uTmFtZV09XCInc2VhcmNoJ1wiPjwvdGV0YS10ZXh0LWZpZWxkPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj0ndmlzaWJsZU9wdGlvbnM/Lmxlbmd0aDtlbHNlIG5vdEZvdW5kICc+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9JyFtdWx0aXBsZSAmJiBhbGxvd051bGwnPlxuICAgICAgICAgIDxkaXYgW2NsYXNzXT1cIidtYXJnaW4taC0yIGxpc3QtaXRlbSBsaXN0LWl0ZW1faW50ZXJhY3RpdmUgc2VsZWN0Xycrdmlld1R5cGVcIlxuICAgICAgICAgICAgICAgKGNsaWNrKT0nY2xlYXIoKSc+XG4gICAgICAgICAgICB7e2xvYy5ub3RTZWxlY3RlZH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz0nbGlzdC1kaXZpZGVyIG1hcmdpbi1ib3R0b20tMCc+PC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8dGV0YS1zY3JvbGxhYmxlICpuZ0lmPSd2aXJ0dWFsOyBlbHNlIGRlZmF1bHQnIGNsYXNzPSdjb2x1bW4gY29sdW1uX2F1dG8gcGFkZGluZy1oLTInPlxuICAgICAgICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgdGV0YVNjcm9sbGFibGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtU2l6ZV09JzQwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluQnVmZmVyUHg9JzIwMCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heEJ1ZmZlclB4PSc2MDAnPlxuICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ2xpc3QtaXRlbSBsaXN0LWl0ZW1faW50ZXJhY3RpdmUganVzdGlmeS1jb250ZW50LWJldHdlZW4gc2VsZWN0Xycrdmlld1R5cGVcIlxuICAgICAgICAgICAgICAgICAqY2RrVmlydHVhbEZvcj0nbGV0IG9wdGlvbiBvZiB2aXNpYmxlT3B0aW9uczsgdGVtcGxhdGVDYWNoZVNpemU6IDA7J1xuICAgICAgICAgICAgICAgICBbY2xhc3MubGlzdC1pdGVtX2FjdGl2ZV09J2l0ZW1TZWxlY3RlZChvcHRpb24pJ1xuICAgICAgICAgICAgICAgICBbdGV0YUhpZ2hsaWdodF09J3NlYXJjaFRleHQnXG4gICAgICAgICAgICAgICAgIChjbGljayk9J2NsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KSc+XG4gICAgICAgICAgICAgIDxkaXYgW3RldGFIaWdobGlnaHRdPSdzZWFyY2hUZXh0Jz5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD0nb3B0aW9uRGlyZWN0aXZlID8gb3B0aW9uRGlyZWN0aXZlLnRlbXBsYXRlIDogb3B0aW9uRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogb3B0aW9uLCBvcHRpb246IG9wdGlvbn0nPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHRldGEtaWNvbiAqbmdJZj0naXRlbVNlbGVjdGVkKG9wdGlvbiknIFtuYW1lXT1cIid0aWNrJ1wiIFtwYWxldHRlXT1cIid0ZXh0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9J21hcmdpbi1sZWZ0LTInPjwvdGV0YS1pY29uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG4gICAgICAgIDwvdGV0YS1zY3JvbGxhYmxlPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgICAgICAgPHRldGEtc2Nyb2xsYWJsZSBjbGFzcz0nY29sdW1uIGNvbHVtbl9hdXRvIHBhZGRpbmctaC0yJyBbY29udGVudENsYXNzXT1cIlsnY29sdW1uJywgJ2NvbHVtbl9hdXRvJ11cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9J2xpc3QnPlxuICAgICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInbGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZSBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiAgc2VsZWN0Xycrdmlld1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICpuZ0Zvcj0nbGV0IG9wdGlvbiBvZiB2aXNpYmxlT3B0aW9ucydcbiAgICAgICAgICAgICAgICAgICBbY2xhc3MubGlzdC1pdGVtX2FjdGl2ZV09J2l0ZW1TZWxlY3RlZChvcHRpb24pJ1xuICAgICAgICAgICAgICAgICAgIChjbGljayk9J2NsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KSc+XG4gICAgICAgICAgICAgIDxzcGFuIFt0ZXRhSGlnaGxpZ2h0XT0nc2VhcmNoVGV4dCc+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9J29wdGlvbkRpcmVjdGl2ZSA/IG9wdGlvbkRpcmVjdGl2ZS50ZW1wbGF0ZSA6IG9wdGlvbkRlZmF1bHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IG9wdGlvbiwgb3B0aW9uOiBvcHRpb259Jz5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDx0ZXRhLWljb24gKm5nSWY9J2l0ZW1TZWxlY3RlZChvcHRpb24pICYmIG11bHRpcGxlJyBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIndGV4dCdcIj48L3RldGEtaWNvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RldGEtc2Nyb2xsYWJsZT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPGRpdiBjbGFzcz0ncm93IHJvd19hdXRvIHNlbGVjdC1jaGlwLWZpZWxkIGZsZXgtd3JhcCcgKm5nSWY9J211bHRpcGxlICYmIHZhbHVlPy5sZW5ndGgnPlxuICAgICAgICA8ZGl2ICpuZ0Zvcj0nbGV0IGl0ZW0gb2YgdmFsdWUnIGNsYXNzPSd0YWcnPlxuICAgICAgICAgIDxwPnt7Z2V0VGV4dChpdGVtKX19PC9wPlxuICAgICAgICAgIDx0ZXRhLWljb24gY2xhc3M9J2N1cnNvci1wb2ludGVyJyBbcGFsZXR0ZV09XCIndGV4dCdcIiBbbmFtZV09XCInY2xvc2VDaXJjbGUnXCJcbiAgICAgICAgICAgICAgICAgICAgIChjbGljayk9J3JlbW92ZUl0ZW1DbGljayhpdGVtLCAkZXZlbnQpJz48L3RldGEtaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC90ZXRhLWRyb3Bkb3duPlxuICA8bmctdGVtcGxhdGUgI25vdEZvdW5kPlxuICAgIDxwXG4gICAgICBjbGFzcz0ncGFkZGluZy1oLTMgdGV4dC1vdmVyZmxvdy1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW4gc2VsZWN0LW5vdC1mb3VuZC1vcHRpb24nPnt7bm90Rm91bmRUZXh0IHx8IGxvYy5ub3RGb3VuZH19PC9wPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI29wdGlvbkRlZmF1bHQgbGV0LW9wdGlvbj5cbiAgICB7e2dldFRleHQob3B0aW9uKX19XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSAjdmFsdWVEZWZhdWx0IGxldC12YWx1ZT5cbiAgICA8ZGl2IGNsYXNzPSdyb3dfYXV0byBvdmVyZmxvdy1oaWRkZW4gdGV4dC1vdmVyZmxvdy1lbGxpcHNpcycgKm5nSWY9J211bHRpcGxlJz5cbiAgICAgIHt7bG9jLnNlbGVjdGVkICsgJyAnICsgdmFsdWU/Lmxlbmd0aH19XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj0nIW11bHRpcGxlJz5cbiAgICAgIDxzcGFuIGNsYXNzPSdyb3cgcm93X2F1dG8gb3ZlcmZsb3ctaGlkZGVuIHRleHQtb3ZlcmZsb3ctZWxsaXBzaXMnPnt7Z2V0VGV4dCh2YWx1ZSl9fTwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuXG4iXX0=
280
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9zZWxlY3Qvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXRGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJD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QUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdOLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSXJELGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR2xCLElBQUk7c0JBQXJDLFdBQVc7dUJBQUMsbUJBQW1CO2dCQUVjLFdBQVc7c0JBQXhELFdBQVc7dUJBQUMsY0FBYztnQkFHZixRQUFRO3NCQURuQixXQUFXO3VCQUFDLFVBQVU7Z0JBTW5CLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBmb3J3YXJkUmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQXV0b0Nsb3NlSWdub3JlQ2FzZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb250cmFjdC9hdXRvLWNsb3NlLWlnbm9yZS1jYXNlJztcbmltcG9ydCB7IEFsaWduIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2VudW0vYWxpZ24uZW51bSc7XG5pbXBvcnQgeyBWZXJ0aWNhbEFsaWduIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2VudW0vdmVydGljYWwtYWxpZ24uZW51bSc7XG5pbXBvcnQgeyB2aWV3VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9tb2RlbC92aWV3LXR5cGUubW9kZWwnO1xuaW1wb3J0IHsgVGV0YUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9sb2NhbGUvdGV0YS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBUZXRhTG9jYWxpc2F0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbG9jYWxlL3RldGEtbG9jYWxpc2F0aW9uJztcbmltcG9ydCB7IFNlbGVjdE9wdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC1vcHRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlbGVjdFZhbHVlRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VsZWN0LXZhbHVlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBIaWdobGlnaHREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvaGlnaGxpZ2h0L2hpZ2hsaWdodC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2Nyb2xsYWJsZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9zY3JvbGxhYmxlL3Njcm9sbGFibGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENka1ZpcnR1YWxTY3JvbGxWaWV3cG9ydCwgQ2RrRml4ZWRTaXplVmlydHVhbFNjcm9sbCwgQ2RrVmlydHVhbEZvck9mIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBTY3JvbGxhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL3Njcm9sbGFibGUvc2Nyb2xsYWJsZS9zY3JvbGxhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnB1dC90ZXh0LWZpZWxkL3RleHQtZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IERyb3Bkb3duQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duL2Ryb3Bkb3duLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQsIEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vaWNvbi9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IERyb3Bkb3duSGVhZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duL2Ryb3Bkb3duLWhlYWQuZGlyZWN0aXZlJztcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZHJvcGRvd24vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB7IExldERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9sZXQvbGV0LmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGV0YS1zZWxlY3QnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBMZXREaXJlY3RpdmUsXG4gICAgICAgIERyb3Bkb3duQ29tcG9uZW50LFxuICAgICAgICBEcm9wZG93bkhlYWREaXJlY3RpdmUsXG4gICAgICAgIEljb25Db21wb25lbnQsXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIERyb3Bkb3duQ29udGVudERpcmVjdGl2ZSxcbiAgICAgICAgVGV4dEZpZWxkQ29tcG9uZW50LFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgU2Nyb2xsYWJsZUNvbXBvbmVudCxcbiAgICAgICAgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0LFxuICAgICAgICBDZGtGaXhlZFNpemVWaXJ0dWFsU2Nyb2xsLFxuICAgICAgICBTY3JvbGxhYmxlRGlyZWN0aXZlLFxuICAgICAgICBDZGtWaXJ0dWFsRm9yT2YsXG4gICAgICAgIEhpZ2hsaWdodERpcmVjdGl2ZSxcbiAgICAgICAgQXN5bmNQaXBlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3RfbXVsdGlwbGUnKVxuICBASW5wdXQoKVxuICBtdWx0aXBsZTogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzZXQgb3B0aW9ucyhvcHRpb25zOiBhbnlbXSkge1xuICAgIHRoaXMuX29wdGlvbnMgPSBvcHRpb25zO1xuICAgIGlmIChcbiAgICAgIHRoaXMuX2ludGVybmFsVmFsdWUgIT09IG51bGwgJiZcbiAgICAgIHRoaXMuX2ludGVybmFsVmFsdWUgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5vcHRpb25zXG4gICAgKSB7XG4gICAgICB0aGlzLmdldFNlbGVjdGVkVmFsdWUodGhpcy5faW50ZXJuYWxWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XG4gIH1cblxuICBASW5wdXQoKSBpbnZhbGlkOiBib29sZWFuO1xuICBASW5wdXQoKSBhbGlnbjogQWxpZ24gPSBBbGlnbi5taW5XaWR0aDtcbiAgQElucHV0KCkgdmVydGljYWxBbGlnbjogVmVydGljYWxBbGlnbiA9IFZlcnRpY2FsQWxpZ24uYXV0bztcbiAgQElucHV0KCkgYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgQElucHV0KCkgYXV0b0Nsb3NlSWdub3JlOiBBcnJheTxBdXRvQ2xvc2VJZ25vcmVDYXNlPiA9IFsnaW5zaWRlJ107XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuO1xuICBASW5wdXQoKSBpdGVtU2l6ZSA9IDMyO1xuICBASW5wdXQoKSB2aXJ0dWFsOiBib29sZWFuO1xuICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFwcGVuZFRvQm9keTogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxsb3dOdWxsID0gdHJ1ZTtcbiAgQElucHV0KCkgdmlld1R5cGU6IHZpZXdUeXBlID0gJ3JvdW5kZWQnO1xuICBASW5wdXQoKSBub3RGb3VuZFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgdmFsdWVSZWY6ICgoaXRlbTogYW55KSA9PiBhbnkpIHwgc3RyaW5nO1xuICBASW5wdXQoKSB0ZXh0UmVmOiAoKGl0ZW06IGFueSkgPT4gc3RyaW5nKSB8IHN0cmluZztcbiAgQElucHV0KCkgc2VhcmNoUmVmOiBzdHJpbmcgfCAoKGl0ZW06IGFueSkgPT4gc3RyaW5nKTtcblxuICBAQ29udGVudENoaWxkKFNlbGVjdE9wdGlvbkRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgb3B0aW9uRGlyZWN0aXZlOiBTZWxlY3RPcHRpb25EaXJlY3RpdmU7XG5cbiAgQENvbnRlbnRDaGlsZChTZWxlY3RWYWx1ZURpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcbiAgdmFsdWVEaXJlY3RpdmU6IFNlbGVjdFZhbHVlRGlyZWN0aXZlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2VsZWN0X29wZW4nKSBvcGVuID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWxlY3QnKSBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdENsYXNzID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JylcbiAgcHJpdmF0ZSBnZXQgdGFiaW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgPyBudWxsIDogMDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2VsZWN0X2Rpc2FibGVkJylcbiAgZ2V0IGlzRGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gIH1cblxuICB2YWx1ZTogYW55IHwgYW55W107XG4gIHNlYXJjaFRleHQ6IHN0cmluZztcbiAgbG9jYWxlOiBPYnNlcnZhYmxlPFRldGFMb2NhbGlzYXRpb24+O1xuXG4gIGdldCB2aXNpYmxlT3B0aW9ucygpOiBhbnlbXSB7XG4gICAgaWYgKCF0aGlzLnNlYXJjaFRleHQpIHtcbiAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LmZpbHRlcihcbiAgICAgIG9wdGlvbiA9PlxuICAgICAgICB0aGlzLmdldFNlYXJjaFN0cmluZyhvcHRpb24pXG4gICAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAuaW5kZXhPZih0aGlzLnNlYXJjaFRleHQudG9Mb3dlckNhc2UoKSkgPj0gMFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9vcHRpb25zOiBhbnkgfCBhbnlbXTtcbiAgcHJpdmF0ZSBfaW50ZXJuYWxWYWx1ZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9jb25maWc6IFRldGFDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubG9jYWxlID0gdGhpcy5fY29uZmlnLmxvY2FsZTtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIGxldCB2YWw6IGFueTtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSA9PT0gdHJ1ZSkge1xuICAgICAgdmFsID0gW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhbCA9IG51bGw7XG4gICAgfVxuICAgIHRoaXMudmFsdWUgPSB2YWw7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGNsaWNrT3B0aW9uKG9wdGlvbjogYW55LCBldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm11bHRpcGxlID09PSB0cnVlKSB7XG4gICAgICBpZiAoIXRoaXMudmFsdWU/Lmxlbmd0aCkge1xuICAgICAgICB0aGlzLnZhbHVlID0gW107XG4gICAgICB9XG4gICAgICBpZiAodGhpcy52YWx1ZS5pbmRleE9mKG9wdGlvbikgPj0gMCkge1xuICAgICAgICB0aGlzLnJlbW92ZUl0ZW0ob3B0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbLi4udGhpcy52YWx1ZSwgb3B0aW9uXTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2ludGVybmFsVmFsdWUgPSB0aGlzLnZhbHVlLm1hcChfID0+IHRoaXMuZ2V0VmFsdWUoXykpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLl9pbnRlcm5hbFZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IG9wdGlvbjtcbiAgICAgIHRoaXMuX2ludGVybmFsVmFsdWUgPSB0aGlzLmdldFZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLl9pbnRlcm5hbFZhbHVlKTtcbiAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGl0ZW1TZWxlY3RlZChvcHRpb246IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZT8uaW5kZXhPZihvcHRpb24pID49IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlID09PSBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlSXRlbUNsaWNrKG9wdGlvbjogYW55LCBldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgIHRoaXMuX2ludGVybmFsVmFsdWUgPSB0aGlzLnZhbHVlLm1hcChfID0+IHRoaXMuZ2V0VmFsdWUoXykpO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy5faW50ZXJuYWxWYWx1ZSk7XG4gIH1cblxuICByZW1vdmVJdGVtKG9wdGlvbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUuZmlsdGVyKF8gPT4gXyAhPT0gb3B0aW9uKTtcbiAgfVxuXG4gIHNlYXJjaCh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaFRleHQgPSB0ZXh0O1xuICB9XG5cbiAgZ2V0VGV4dChvcHRpb246IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKG9wdGlvbiA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHN3aXRjaCAodHlwZW9mIHRoaXMudGV4dFJlZikge1xuICAgICAgY2FzZSAnc3RyaW5nJzpcbiAgICAgICAgcmV0dXJuIG9wdGlvblt0aGlzLnRleHRSZWZdO1xuICAgICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgICByZXR1cm4gdGhpcy50ZXh0UmVmKG9wdGlvbik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgIH1cbiAgfVxuXG4gIGdldFZhbHVlKG9wdGlvbjogYW55KTogYW55IHtcbiAgICBzd2l0Y2ggKHR5cGVvZiB0aGlzLnZhbHVlUmVmKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gb3B0aW9uW3RoaXMudmFsdWVSZWZdO1xuICAgICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVJlZihvcHRpb24pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG9wdGlvbjtcbiAgICB9XG4gIH1cblxuICBnZXRTZWFyY2hTdHJpbmcob3B0aW9uOiBhbnkpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodHlwZW9mIHRoaXMuc2VhcmNoUmVmKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gb3B0aW9uW3RoaXMuc2VhcmNoUmVmXTtcbiAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VhcmNoUmVmKG9wdGlvbik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG5cbiAgZm9jdXMoKSB7XG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkgfCBhbnlbXSk6IHZvaWQge1xuICAgIHRoaXMuX2ludGVybmFsVmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLmdldFNlbGVjdGVkVmFsdWUodmFsdWUpO1xuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBvbkNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFNlbGVjdGVkVmFsdWUodmFsdWU6IGFueSB8IGFueVtdKSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPVxuICAgICAgICB2YWx1ZSAmJiB0aGlzLm9wdGlvbnNcbiAgICAgICAgICA/IHRoaXMub3B0aW9ucy5maWx0ZXIoXG4gICAgICAgICAgICAgIG9wdGlvbiA9PiB2YWx1ZS5pbmRleE9mKHRoaXMuZ2V0VmFsdWUob3B0aW9uKSkgPiAtMVxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPVxuICAgICAgICB0aGlzLm9wdGlvbnMgJiZcbiAgICAgICAgdGhpcy5vcHRpb25zPy5maW5kKG9wdGlvbiA9PiB0aGlzLmdldFZhbHVlKG9wdGlvbikgPT09IHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpZiAobG9jYWxlfGFzeW5jOyBhcyBsb2Mpe1xuICA8dGV0YS1kcm9wZG93biBbYWxpZ25dPSdhbGlnbidcbiAgICBbdmVydGljYWxBbGlnbl09J3ZlcnRpY2FsQWxpZ24nXG4gICAgW2F1dG9DbG9zZV09J2F1dG9DbG9zZSdcbiAgICBbYXV0b0Nsb3NlSWdub3JlXT0nYXV0b0Nsb3NlSWdub3JlJ1xuICAgIFsob3BlbildPSdvcGVuJ1xuICAgIFthcHBlbmRUb0JvZHldPSdhcHBlbmRUb0JvZHknXG4gICAgW2Rpc2FibGVkXT0nZGlzYWJsZWQnXG4gICAgW3ZpZXdUeXBlXT0ndmlld1R5cGUnXG4gICAgY2xhc3M9J3JvdyByb3dfYXV0byc+XG4gICAgPGRpdiB0ZXRhRHJvcGRvd25IZWFkXG4gICAgICBbY2xhc3NdPVwiJ3JvdyByb3dfYXV0byBzZWxlY3QtaGVhZCBzZWxlY3RfJyt2aWV3VHlwZVwiXG4gICAgICBbY2xhc3Muc2VsZWN0LWhlYWRfaW52YWxpZF09J2ludmFsaWQnPlxuICAgICAgPGRpdiBjbGFzcz0ncm93X2F1dG8gZmxleCBhbGlnbi1jZW50ZXInPlxuICAgICAgICBAaWYgKGljb24pIHtcbiAgICAgICAgICA8dGV0YS1pY29uIFtuYW1lXT0naWNvbicgW3BhbGV0dGVdPVwiJ3RleHQnXCIgY2xhc3M9J21hcmdpbi1yaWdodC0xJz48L3RldGEtaWNvbj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKCh2YWx1ZT09PSBudWxsIHx8dmFsdWU9PT0gdW5kZWZpbmVkIHx8IHZhbHVlPy5sZW5ndGggPT09IDApJiYhbXVsdGlwbGUpIHtcbiAgICAgICAgICA8c3BhbiBjbGFzcz0ncGxhY2Vob2xkZXInPlxuICAgICAgICAgICAge3twbGFjZWhvbGRlciB8fCBsb2Mubm90U2VsZWN0ZWR9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgfVxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PSd2YWx1ZURpcmVjdGl2ZSA/IHZhbHVlRGlyZWN0aXZlLnRlbXBsYXRlIDogdmFsdWVEZWZhdWx0OyBjb250ZXh0OiB7JGltcGxpY2l0OiB2YWx1ZSwgdmFsdWU6IHZhbHVlfSc+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDx0ZXRhLWljb24gW25hbWVdPVwiJ2Fycm93RG93blNtYWxsJ1wiIFtwYWxldHRlXT1cIid0ZXh0J1wiPjwvdGV0YS1pY29uPlxuICAgIDwvZGl2PlxuICAgIEBpZiAob3B0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICA8ZGl2XG4gICAgICAgIHRldGFEcm9wZG93bkNvbnRlbnRcbiAgICAgICAgY2xhc3M9J3NlbGVjdC1ib2R5IHJvd19hdXRvJ1xuICAgICAgICAoY2xpY2spPSckZXZlbnQucHJldmVudERlZmF1bHQoKSc+XG4gICAgICAgIEBpZiAoc2VhcmNoUmVmKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz0nc2VsZWN0LXNlYXJjaCBwYWRkaW5nLWgtMic+XG4gICAgICAgICAgICA8dGV0YS10ZXh0LWZpZWxkIFtuZ01vZGVsXT0nc2VhcmNoVGV4dCdcbiAgICAgICAgICAgICAgW2NsYXNzXT1cIidzZWxlY3RfJyt2aWV3VHlwZVwiXG4gICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT0nc2VhcmNoKCRldmVudCknXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09J2xvYy5zZWFyY2gnXG4gICAgICAgICAgICBbbGVmdEljb25OYW1lXT1cIidzZWFyY2gnXCI+PC90ZXRhLXRleHQtZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICh2aXNpYmxlT3B0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICAgICAgQGlmICghbXVsdGlwbGUgJiYgYWxsb3dOdWxsKSB7XG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCInbWFyZ2luLWgtMiBsaXN0LWl0ZW0gbGlzdC1pdGVtX2ludGVyYWN0aXZlIHNlbGVjdF8nK3ZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT0nY2xlYXIoKSc+XG4gICAgICAgICAgICAgIHt7bG9jLm5vdFNlbGVjdGVkfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz0nbGlzdC1kaXZpZGVyIG1hcmdpbi1ib3R0b20tMCc+PC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAodmlydHVhbCkge1xuICAgICAgICAgICAgPHRldGEtc2Nyb2xsYWJsZSBjbGFzcz0nY29sdW1uIGNvbHVtbl9hdXRvIHBhZGRpbmctaC0yJz5cbiAgICAgICAgICAgICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCB0ZXRhU2Nyb2xsYWJsZVxuICAgICAgICAgICAgICAgIFtpdGVtU2l6ZV09JzQwJ1xuICAgICAgICAgICAgICAgIG1pbkJ1ZmZlclB4PScyMDAnXG4gICAgICAgICAgICAgICAgbWF4QnVmZmVyUHg9JzYwMCc+XG4gICAgICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ2xpc3QtaXRlbSBsaXN0LWl0ZW1faW50ZXJhY3RpdmUganVzdGlmeS1jb250ZW50LWJldHdlZW4gc2VsZWN0Xycrdmlld1R5cGVcIlxuICAgICAgICAgICAgICAgICAgKmNka1ZpcnR1YWxGb3I9J2xldCBvcHRpb24gb2YgdmlzaWJsZU9wdGlvbnM7IHRlbXBsYXRlQ2FjaGVTaXplOiAwOydcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5saXN0LWl0ZW1fYWN0aXZlXT0naXRlbVNlbGVjdGVkKG9wdGlvbiknXG4gICAgICAgICAgICAgICAgICBbdGV0YUhpZ2hsaWdodF09J3NlYXJjaFRleHQnXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPSdjbGlja09wdGlvbihvcHRpb24sICRldmVudCknPlxuICAgICAgICAgICAgICAgICAgPGRpdiBbdGV0YUhpZ2hsaWdodF09J3NlYXJjaFRleHQnPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9J29wdGlvbkRpcmVjdGl2ZSA/IG9wdGlvbkRpcmVjdGl2ZS50ZW1wbGF0ZSA6IG9wdGlvbkRlZmF1bHQ7IGNvbnRleHQ6IHskaW1wbGljaXQ6IG9wdGlvbiwgb3B0aW9uOiBvcHRpb259Jz5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbVNlbGVjdGVkKG9wdGlvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgPHRldGEtaWNvbiBbbmFtZV09XCIndGljaydcIiBbcGFsZXR0ZV09XCIndGV4dCdcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz0nbWFyZ2luLWxlZnQtMic+PC90ZXRhLWljb24+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICAgICAgICAgICAgPC90ZXRhLXNjcm9sbGFibGU+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8dGV0YS1zY3JvbGxhYmxlIGNsYXNzPSdjb2x1bW4gY29sdW1uX2F1dG8gcGFkZGluZy1oLTInIFtjb250ZW50Q2xhc3NdPVwiWydjb2x1bW4nLCAnY29sdW1uX2F1dG8nXVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdsaXN0Jz5cbiAgICAgICAgICAgICAgICBAZm9yIChvcHRpb24gb2YgdmlzaWJsZU9wdGlvbnM7IHRyYWNrIG9wdGlvbikge1xuICAgICAgICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ2xpc3QtaXRlbSBsaXN0LWl0ZW1faW50ZXJhY3RpdmUganVzdGlmeS1jb250ZW50LWJldHdlZW4gIHNlbGVjdF8nK3ZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmxpc3QtaXRlbV9hY3RpdmVdPSdpdGVtU2VsZWN0ZWQob3B0aW9uKSdcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT0nY2xpY2tPcHRpb24ob3B0aW9uLCAkZXZlbnQpJz5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RldGFIaWdobGlnaHRdPSdzZWFyY2hUZXh0Jz5cbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD0nb3B0aW9uRGlyZWN0aXZlID8gb3B0aW9uRGlyZWN0aXZlLnRlbXBsYXRlIDogb3B0aW9uRGVmYXVsdDsgY29udGV4dDogeyRpbXBsaWNpdDogb3B0aW9uLCBvcHRpb246IG9wdGlvbn0nPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8dGV0YS1pY29uIFtuYW1lXT1cIid0aWNrJ1wiIFtwYWxldHRlXT1cIid0ZXh0J1wiPjwvdGV0YS1pY29uPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZXRhLXNjcm9sbGFibGU+XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICA8cFxuICAgICAgICAgIGNsYXNzPSdwYWRkaW5nLWgtMyB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlbiBzZWxlY3Qtbm90LWZvdW5kLW9wdGlvbic+e3tub3RGb3VuZFRleHQgfHwgbG9jLm5vdEZvdW5kfX08L3A+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChtdWx0aXBsZSAmJiB2YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz0ncm93IHJvd19hdXRvIHNlbGVjdC1jaGlwLWZpZWxkIGZsZXgtd3JhcCc+XG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIHZhbHVlOyB0cmFjayBpdGVtKSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9J3RhZyc+XG4gICAgICAgICAgICAgICAgPHA+e3tnZXRUZXh0KGl0ZW0pfX08L3A+XG4gICAgICAgICAgICAgICAgPHRldGEtaWNvbiBjbGFzcz0nY3Vyc29yLXBvaW50ZXInIFtwYWxldHRlXT1cIid0ZXh0J1wiIFtuYW1lXT1cIidjbG9zZUNpcmNsZSdcIlxuICAgICAgICAgICAgICAgIChjbGljayk9J3JlbW92ZUl0ZW1DbGljayhpdGVtLCAkZXZlbnQpJz48L3RldGEtaWNvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgPC90ZXRhLWRyb3Bkb3duPlxuICA8bmctdGVtcGxhdGUgI25vdEZvdW5kPlxuICAgIDxwXG4gICAgY2xhc3M9J3BhZGRpbmctaC0zIHRleHQtb3ZlcmZsb3ctZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHNlbGVjdC1ub3QtZm91bmQtb3B0aW9uJz57e25vdEZvdW5kVGV4dCB8fCBsb2Mubm90Rm91bmR9fTwvcD5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlICNvcHRpb25EZWZhdWx0IGxldC1vcHRpb24+XG4gICAge3tnZXRUZXh0KG9wdGlvbil9fVxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI3ZhbHVlRGVmYXVsdCBsZXQtdmFsdWU+XG4gICAgQGlmIChtdWx0aXBsZSkge1xuICAgICAgPGRpdiBjbGFzcz0ncm93X2F1dG8gb3ZlcmZsb3ctaGlkZGVuIHRleHQtb3ZlcmZsb3ctZWxsaXBzaXMnPlxuICAgICAgICB7e2xvYy5zZWxlY3RlZCArICcgJyArIHZhbHVlPy5sZW5ndGh9fVxuICAgICAgPC9kaXY+XG4gICAgfVxuICAgIEBpZiAoIW11bHRpcGxlKSB7XG4gICAgICA8c3BhbiBjbGFzcz0ncm93IHJvd19hdXRvIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzJz57e2dldFRleHQodmFsdWUpfX08L3NwYW4+XG4gICAgfVxuICA8L25nLXRlbXBsYXRlPlxufVxuXG4iXX0=
@@ -1,17 +1,17 @@
1
- import { Directive } from '@angular/core';
1
+ import { Directive, TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class SelectOptionDirective {
4
- template;
5
4
  constructor(template) {
6
5
  this.template = template;
7
6
  }
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectOptionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.1", type: SelectOptionDirective, selector: "[tetaSelectOption]", ngImport: i0 });
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectOptionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: SelectOptionDirective, isStandalone: true, selector: "[tetaSelectOption]", ngImport: i0 }); }
10
9
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectOptionDirective, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectOptionDirective, decorators: [{
12
11
  type: Directive,
13
12
  args: [{
14
- selector: '[tetaSelectOption]'
13
+ selector: '[tetaSelectOption]',
14
+ standalone: true
15
15
  }]
16
- }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NlbGVjdC9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQUtyRCxNQUFNLE9BQU8scUJBQXFCO0lBQ2I7SUFBbkIsWUFBbUIsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDN0MsQ0FBQzt1R0FGVSxxQkFBcUI7MkZBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZXRhU2VsZWN0T3B0aW9uXSdcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0T3B0aW9uRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gIH1cbn1cbiJdfQ==
16
+ }], ctorParameters: () => [{ type: i0.TemplateRef }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NlbGVjdC9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFNckQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFtQixRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUM3QyxDQUFDOzhHQUZVLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGlyZWN0aXZlLCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3RldGFTZWxlY3RPcHRpb25dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdE9wdGlvbkRpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xuICB9XG59XG4iXX0=
@@ -1,17 +1,17 @@
1
- import { Directive } from '@angular/core';
1
+ import { Directive, TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class SelectValueDirective {
4
- template;
5
4
  constructor(template) {
6
5
  this.template = template;
7
6
  }
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectValueDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.1", type: SelectValueDirective, selector: "[tetaSelectValue]", ngImport: i0 });
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectValueDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.3", type: SelectValueDirective, isStandalone: true, selector: "[tetaSelectValue]", ngImport: i0 }); }
10
9
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SelectValueDirective, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SelectValueDirective, decorators: [{
12
11
  type: Directive,
13
12
  args: [{
14
- selector: '[tetaSelectValue]'
13
+ selector: '[tetaSelectValue]',
14
+ standalone: true
15
15
  }]
16
- }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; } });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQzs7QUFLckQsTUFBTSxPQUFPLG9CQUFvQjtJQUNaO0lBQW5CLFlBQW1CLFFBQTBCO1FBQTFCLGFBQVEsR0FBUixRQUFRLENBQWtCO0lBQzdDLENBQUM7dUdBRlUsb0JBQW9COzJGQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgVGVtcGxhdGVSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGV0YVNlbGVjdFZhbHVlXSdcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VmFsdWVEaXJlY3RpdmUge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgfVxufVxuIl19
16
+ }], ctorParameters: () => [{ type: i0.TemplateRef }] });
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBTXJELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBbUIsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDN0MsQ0FBQzs4R0FGVSxvQkFBb0I7a0dBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgVGVtcGxhdGVSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0ZXRhU2VsZWN0VmFsdWVdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdFZhbHVlRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- export * from './sidebar.module';
2
1
  export * from './sidebar/sidebar.component';
3
2
  export * from './sidebar-position.enum';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaWRlYmFyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaWRlYmFyLXBvc2l0aW9uLmVudW0nO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0ICogZnJvbSAnLi9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhci1wb3NpdGlvbi5lbnVtJztcbiJdfQ==
@@ -1,24 +1,22 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, } from '@angular/core';
2
2
  import { SidebarPosition } from '../sidebar-position.enum';
3
3
  import { animate, style, transition, trigger } from '@angular/animations';
4
+ import { NgClass } from '@angular/common';
4
5
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
6
  export class SidebarComponent {
7
- position = SidebarPosition.left;
8
- backdrop;
9
- open;
10
- openChange = new EventEmitter();
11
- className;
12
- zIndex = 10;
13
- sidebarPosition = SidebarPosition;
14
- constructor() { }
7
+ constructor() {
8
+ this.position = SidebarPosition.left;
9
+ this.openChange = new EventEmitter();
10
+ this.zIndex = 10;
11
+ this.sidebarPosition = SidebarPosition;
12
+ }
15
13
  setOpen(value) {
16
14
  this.open = value;
17
15
  this.openChange.emit(this.open);
18
16
  }
19
17
  ngOnInit() { }
20
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: SidebarComponent, selector: "teta-sidebar", inputs: { position: "position", backdrop: "backdrop", open: "open", className: "className" }, outputs: { openChange: "openChange" }, host: { properties: { "style.z-index": "this.zIndex" } }, ngImport: i0, template: "<div *ngIf=\"backdrop && open\"\n [@sidebar]\n (click)=\"setOpen(false)\"\n class=\"sidebar-backdrop\"></div>\n<div class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n *ngIf=\"open\">\n <ng-content></ng-content>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: SidebarComponent, isStandalone: true, selector: "teta-sidebar", inputs: { position: "position", backdrop: "backdrop", open: "open", className: "className" }, outputs: { openChange: "openChange" }, host: { properties: { "style.z-index": "this.zIndex" } }, ngImport: i0, template: "@if (backdrop && open) {\n <div\n [@sidebar]\n (click)=\"setOpen(false)\"\n class=\"sidebar-backdrop\"></div>\n}\n@if (open) {\n <div class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n >\n <ng-content></ng-content>\n </div>\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
22
20
  trigger('sidebar', [
23
21
  transition('void => *', [
24
22
  style({ opacity: '0' }),
@@ -26,9 +24,9 @@ export class SidebarComponent {
26
24
  ]),
27
25
  transition('* => void', [animate(300, style({ opacity: '0' }))]),
28
26
  ]),
29
- ], changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
30
28
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SidebarComponent, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: SidebarComponent, decorators: [{
32
30
  type: Component,
33
31
  args: [{ selector: 'teta-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
34
32
  trigger('sidebar', [
@@ -38,8 +36,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
38
36
  ]),
39
37
  transition('* => void', [animate(300, style({ opacity: '0' }))]),
40
38
  ]),
41
- ], template: "<div *ngIf=\"backdrop && open\"\n [@sidebar]\n (click)=\"setOpen(false)\"\n class=\"sidebar-backdrop\"></div>\n<div class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n *ngIf=\"open\">\n <ng-content></ng-content>\n</div>\n" }]
42
- }], ctorParameters: function () { return []; }, propDecorators: { position: [{
39
+ ], standalone: true, imports: [NgClass], template: "@if (backdrop && open) {\n <div\n [@sidebar]\n (click)=\"setOpen(false)\"\n class=\"sidebar-backdrop\"></div>\n}\n@if (open) {\n <div class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n >\n <ng-content></ng-content>\n </div>\n}\n" }]
40
+ }], ctorParameters: () => [], propDecorators: { position: [{
43
41
  type: Input
44
42
  }], backdrop: [{
45
43
  type: Input
@@ -53,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
53
51
  type: HostBinding,
54
52
  args: ['style.z-index']
55
53
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NpZGViYXIvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQWlCMUUsTUFBTSxPQUFPLGdCQUFnQjtJQUNsQixRQUFRLEdBQW9CLGVBQWUsQ0FBQyxJQUFJLENBQUM7SUFDakQsUUFBUSxDQUFVO0lBQ2xCLElBQUksQ0FBVTtJQUNiLFVBQVUsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUNqRSxTQUFTLENBQW9CO0lBRVIsTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUUxQyxlQUFlLEdBQUcsZUFBZSxDQUFDO0lBRWxDLGdCQUFlLENBQUM7SUFFaEIsT0FBTyxDQUFDLEtBQWM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQzt1R0FsQlIsZ0JBQWdCOzJGQUFoQixnQkFBZ0IsbVBDM0I3Qix1Z0JBY0EsOE9ER2M7WUFDVixPQUFPLENBQUMsU0FBUyxFQUFFO2dCQUNqQixVQUFVLENBQUMsV0FBVyxFQUFFO29CQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7aUJBQ3RDLENBQUM7Z0JBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2pFLENBQUM7U0FDSDs7MkZBRVUsZ0JBQWdCO2tCQWY1QixTQUFTOytCQUNFLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSxjQUNuQzt3QkFDVixPQUFPLENBQUMsU0FBUyxFQUFFOzRCQUNqQixVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUN0QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7Z0NBQ3ZCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7NkJBQ3RDLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO3lCQUNqRSxDQUFDO3FCQUNIOzBFQUdRLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUV3QixNQUFNO3NCQUFuQyxXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2lkZWJhclBvc2l0aW9uIH0gZnJvbSAnLi4vc2lkZWJhci1wb3NpdGlvbi5lbnVtJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtc2lkZWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lkZWJhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3NpZGViYXInLCBbXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzAnIH0pLFxuICAgICAgICBhbmltYXRlKDMwMCwgc3R5bGUoeyBvcGFjaXR5OiAnMScgfSkpLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHZvaWQnLCBbYW5pbWF0ZSgzMDAsIHN0eWxlKHsgb3BhY2l0eTogJzAnIH0pKV0pLFxuICAgIF0pLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgcG9zaXRpb246IFNpZGViYXJQb3NpdGlvbiA9IFNpZGViYXJQb3NpdGlvbi5sZWZ0O1xuICBASW5wdXQoKSBiYWNrZHJvcDogYm9vbGVhbjtcbiAgQElucHV0KCkgb3BlbjogYm9vbGVhbjtcbiAgQE91dHB1dCgpIG9wZW5DaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgQElucHV0KCkgY2xhc3NOYW1lOiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLnotaW5kZXgnKSB6SW5kZXggPSAxMDtcblxuICBzaWRlYmFyUG9zaXRpb24gPSBTaWRlYmFyUG9zaXRpb247XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldE9wZW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLm9wZW4gPSB2YWx1ZTtcbiAgICB0aGlzLm9wZW5DaGFuZ2UuZW1pdCh0aGlzLm9wZW4pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPGRpdiAqbmdJZj1cImJhY2tkcm9wICYmIG9wZW5cIlxuICAgICBbQHNpZGViYXJdXG4gICAgIChjbGljayk9XCJzZXRPcGVuKGZhbHNlKVwiXG4gICAgIGNsYXNzPVwic2lkZWJhci1iYWNrZHJvcFwiPjwvZGl2PlxuPGRpdiBjbGFzcz1cInNpZGViYXJcIlxuICAgICBbQHNpZGViYXJdXG4gICAgIFtuZ0NsYXNzXT1cImNsYXNzTmFtZVwiXG4gICAgIFtjbGFzcy5zaWRlYmFyLXRvcF09XCJwb3NpdGlvbiA9PT0gc2lkZWJhclBvc2l0aW9uLnRvcFwiXG4gICAgIFtjbGFzcy5zaWRlYmFyLWJvdHRvbV09XCJwb3NpdGlvbiA9PT0gc2lkZWJhclBvc2l0aW9uLmJvdHRvbVwiXG4gICAgIFtjbGFzcy5zaWRlYmFyLWxlZnRdPVwicG9zaXRpb24gPT09IHNpZGViYXJQb3NpdGlvbi5sZWZ0XCJcbiAgICAgW2NsYXNzLnNpZGViYXItcmlnaHRdPVwicG9zaXRpb24gPT09IHNpZGViYXJQb3NpdGlvbi5yaWdodFwiXG4gICAgICpuZ0lmPVwib3BlblwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NpZGViYXIvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQW1CMUMsTUFBTSxPQUFPLGdCQUFnQjtJQVczQjtRQVZTLGFBQVEsR0FBb0IsZUFBZSxDQUFDLElBQUksQ0FBQztRQUdoRCxlQUFVLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFHNUMsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUUxQyxvQkFBZSxHQUFHLGVBQWUsQ0FBQztJQUVuQixDQUFDO0lBRWhCLE9BQU8sQ0FBQyxLQUFjO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7OEdBbEJSLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHVRQzlCN0Isd2dCQWtCQSwwRERVYyxPQUFPLHNFQVZMO1lBQ1IsT0FBTyxDQUFDLFNBQVMsRUFBRTtnQkFDZixVQUFVLENBQUMsV0FBVyxFQUFFO29CQUNwQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7aUJBQ3hDLENBQUM7Z0JBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25FLENBQUM7U0FDTDs7MkZBSVEsZ0JBQWdCO2tCQWpCNUIsU0FBUzsrQkFDSSxjQUFjLG1CQUdQLHVCQUF1QixDQUFDLE1BQU0sY0FDbkM7d0JBQ1IsT0FBTyxDQUFDLFNBQVMsRUFBRTs0QkFDZixVQUFVLENBQUMsV0FBVyxFQUFFO2dDQUNwQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7Z0NBQ3ZCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7NkJBQ3hDLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO3lCQUNuRSxDQUFDO3FCQUNMLGNBQ1csSUFBSSxXQUNQLENBQUMsT0FBTyxDQUFDO3dEQUdYLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUV3QixNQUFNO3NCQUFuQyxXQUFXO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2lkZWJhclBvc2l0aW9uIH0gZnJvbSAnLi4vc2lkZWJhci1wb3NpdGlvbi5lbnVtJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0ZXRhLXNpZGViYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zaWRlYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdzaWRlYmFyJywgW1xuICAgICAgICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogJzAnIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoMzAwLCBzdHlsZSh7IG9wYWNpdHk6ICcxJyB9KSksXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJyogPT4gdm9pZCcsIFthbmltYXRlKDMwMCwgc3R5bGUoeyBvcGFjaXR5OiAnMCcgfSkpXSksXG4gICAgICAgIF0pLFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIFNpZGViYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwb3NpdGlvbjogU2lkZWJhclBvc2l0aW9uID0gU2lkZWJhclBvc2l0aW9uLmxlZnQ7XG4gIEBJbnB1dCgpIGJhY2tkcm9wOiBib29sZWFuO1xuICBASW5wdXQoKSBvcGVuOiBib29sZWFuO1xuICBAT3V0cHV0KCkgb3BlbkNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuei1pbmRleCcpIHpJbmRleCA9IDEwO1xuXG4gIHNpZGViYXJQb3NpdGlvbiA9IFNpZGViYXJQb3NpdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgc2V0T3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMub3BlbiA9IHZhbHVlO1xuICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3Blbik7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG59XG4iLCJAaWYgKGJhY2tkcm9wICYmIG9wZW4pIHtcbiAgPGRpdlxuICAgIFtAc2lkZWJhcl1cbiAgICAoY2xpY2spPVwic2V0T3BlbihmYWxzZSlcIlxuICBjbGFzcz1cInNpZGViYXItYmFja2Ryb3BcIj48L2Rpdj5cbn1cbkBpZiAob3Blbikge1xuICA8ZGl2IGNsYXNzPVwic2lkZWJhclwiXG4gICAgW0BzaWRlYmFyXVxuICAgIFtuZ0NsYXNzXT1cImNsYXNzTmFtZVwiXG4gICAgW2NsYXNzLnNpZGViYXItdG9wXT1cInBvc2l0aW9uID09PSBzaWRlYmFyUG9zaXRpb24udG9wXCJcbiAgICBbY2xhc3Muc2lkZWJhci1ib3R0b21dPVwicG9zaXRpb24gPT09IHNpZGViYXJQb3NpdGlvbi5ib3R0b21cIlxuICAgIFtjbGFzcy5zaWRlYmFyLWxlZnRdPVwicG9zaXRpb24gPT09IHNpZGViYXJQb3NpdGlvbi5sZWZ0XCJcbiAgICBbY2xhc3Muc2lkZWJhci1yaWdodF09XCJwb3NpdGlvbiA9PT0gc2lkZWJhclBvc2l0aW9uLnJpZ2h0XCJcbiAgICA+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- export * from './switch.module';
2
1
  export * from './switch/switch.component';
3
2
  export * from './switch-button/switch-button.component';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3dpdGNoL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N3aXRjaC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zd2l0Y2gvc3dpdGNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaC1idXR0b24vc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3dpdGNoL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaC9zd2l0Y2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3dpdGNoLWJ1dHRvbi9zd2l0Y2gtYnV0dG9uLmNvbXBvbmVudCc7XG4iXX0=