novo-elements 11.4.0 → 12.0.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 (680) hide show
  1. package/addons/ace-editor/index.d.ts +49 -2
  2. package/addons/ckeditor/index.d.ts +58 -2
  3. package/addons/code-editor/index.d.ts +43 -2
  4. package/elements/agenda/index.d.ts +601 -6
  5. package/elements/aside/index.d.ts +61 -5
  6. package/elements/autocomplete/index.d.ts +105 -2
  7. package/elements/avatar/index.d.ts +42 -3
  8. package/elements/breadcrumbs/index.d.ts +87 -6
  9. package/elements/button/index.d.ts +65 -2
  10. package/elements/calendar/index.d.ts +200 -6
  11. package/elements/card/index.d.ts +69 -2
  12. package/elements/category-dropdown/index.d.ts +44 -2
  13. package/elements/checkbox/index.d.ts +117 -3
  14. package/elements/chips/index.d.ts +665 -9
  15. package/elements/color-picker/index.d.ts +142 -4
  16. package/elements/common/index.d.ts +745 -19
  17. package/elements/data-table/index.d.ts +939 -15
  18. package/elements/date-picker/index.d.ts +410 -5
  19. package/elements/date-time-picker/index.d.ts +113 -3
  20. package/elements/divider/index.d.ts +25 -2
  21. package/elements/drag-drop/index.d.ts +74 -2
  22. package/elements/dropdown/index.d.ts +117 -2
  23. package/elements/expansion/index.d.ts +161 -6
  24. package/elements/field/index.d.ts +513 -14
  25. package/elements/flex/index.d.ts +53 -4
  26. package/elements/form/index.d.ts +1312 -17
  27. package/elements/header/index.d.ts +51 -2
  28. package/elements/icon/index.d.ts +37 -2
  29. package/elements/layout/index.d.ts +306 -6
  30. package/elements/list/index.d.ts +59 -2
  31. package/elements/loading/index.d.ts +64 -2
  32. package/elements/menu/index.d.ts +202 -8
  33. package/elements/modal/index.d.ts +96 -6
  34. package/elements/multi-picker/index.d.ts +122 -2
  35. package/elements/non-ideal-state/index.d.ts +22 -2
  36. package/elements/picker/index.d.ts +387 -3
  37. package/elements/places/index.d.ts +121 -3
  38. package/elements/popover/index.d.ts +93 -3
  39. package/elements/progress/index.d.ts +85 -4
  40. package/elements/query-builder/index.d.ts +625 -17
  41. package/elements/quick-note/index.d.ts +187 -3
  42. package/elements/radio/index.d.ts +147 -4
  43. package/elements/search/index.d.ts +85 -2
  44. package/elements/select/index.d.ts +248 -3
  45. package/elements/select-search/index.d.ts +268 -3
  46. package/elements/simple-table/index.d.ts +544 -12
  47. package/elements/simple-table/table.scss +10 -10
  48. package/elements/slider/index.d.ts +32 -2
  49. package/elements/stepper/index.d.ts +134 -7
  50. package/elements/switch/index.d.ts +35 -2
  51. package/elements/tabbed-group-picker/index.d.ts +147 -2
  52. package/elements/tabs/index.d.ts +105 -2
  53. package/elements/tiles/index.d.ts +45 -2
  54. package/elements/time-picker/index.d.ts +141 -3
  55. package/elements/tip-well/index.d.ts +37 -2
  56. package/elements/toast/index.d.ts +94 -3
  57. package/elements/toolbar/index.d.ts +32 -2
  58. package/elements/tooltip/index.d.ts +70 -3
  59. package/elements/unless/index.d.ts +26 -2
  60. package/elements/value/index.d.ts +142 -4
  61. package/fesm2022/novo-elements-addons-ace-editor.mjs +7 -7
  62. package/fesm2022/novo-elements-addons-ace-editor.mjs.map +1 -1
  63. package/fesm2022/novo-elements-addons-ckeditor.mjs +7 -7
  64. package/fesm2022/novo-elements-addons-ckeditor.mjs.map +1 -1
  65. package/fesm2022/novo-elements-addons-code-editor.mjs +7 -7
  66. package/fesm2022/novo-elements-addons-code-editor.mjs.map +1 -1
  67. package/fesm2022/novo-elements-elements-agenda.mjs +61 -61
  68. package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
  69. package/fesm2022/novo-elements-elements-aside.mjs +17 -16
  70. package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
  71. package/fesm2022/novo-elements-elements-autocomplete.mjs +7 -7
  72. package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
  73. package/fesm2022/novo-elements-elements-avatar.mjs +10 -10
  74. package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
  75. package/fesm2022/novo-elements-elements-breadcrumbs.mjs +13 -13
  76. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  77. package/fesm2022/novo-elements-elements-button.mjs +12 -12
  78. package/fesm2022/novo-elements-elements-button.mjs.map +1 -1
  79. package/fesm2022/novo-elements-elements-calendar.mjs +25 -25
  80. package/fesm2022/novo-elements-elements-calendar.mjs.map +1 -1
  81. package/fesm2022/novo-elements-elements-card.mjs +19 -19
  82. package/fesm2022/novo-elements-elements-card.mjs.map +1 -1
  83. package/fesm2022/novo-elements-elements-category-dropdown.mjs +7 -7
  84. package/fesm2022/novo-elements-elements-category-dropdown.mjs.map +1 -1
  85. package/fesm2022/novo-elements-elements-checkbox.mjs +10 -10
  86. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  87. package/fesm2022/novo-elements-elements-chips.mjs +47 -39
  88. package/fesm2022/novo-elements-elements-chips.mjs.map +1 -1
  89. package/fesm2022/novo-elements-elements-color-picker.mjs +13 -13
  90. package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
  91. package/fesm2022/novo-elements-elements-common.mjs +116 -107
  92. package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
  93. package/fesm2022/novo-elements-elements-data-table.mjs +77 -77
  94. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  95. package/fesm2022/novo-elements-elements-date-picker.mjs +17 -17
  96. package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
  97. package/fesm2022/novo-elements-elements-date-time-picker.mjs +11 -11
  98. package/fesm2022/novo-elements-elements-date-time-picker.mjs.map +1 -1
  99. package/fesm2022/novo-elements-elements-divider.mjs +7 -7
  100. package/fesm2022/novo-elements-elements-divider.mjs.map +1 -1
  101. package/fesm2022/novo-elements-elements-drag-drop.mjs +11 -11
  102. package/fesm2022/novo-elements-elements-drag-drop.mjs.map +1 -1
  103. package/fesm2022/novo-elements-elements-dropdown.mjs +19 -19
  104. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  105. package/fesm2022/novo-elements-elements-expansion.mjs +26 -26
  106. package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
  107. package/fesm2022/novo-elements-elements-field.mjs +46 -46
  108. package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
  109. package/fesm2022/novo-elements-elements-flex.mjs +16 -16
  110. package/fesm2022/novo-elements-elements-flex.mjs.map +1 -1
  111. package/fesm2022/novo-elements-elements-form.mjs +53 -53
  112. package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
  113. package/fesm2022/novo-elements-elements-header.mjs +16 -16
  114. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  115. package/fesm2022/novo-elements-elements-icon.mjs +7 -7
  116. package/fesm2022/novo-elements-elements-icon.mjs.map +1 -1
  117. package/fesm2022/novo-elements-elements-layout.mjs +19 -19
  118. package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
  119. package/fesm2022/novo-elements-elements-list.mjs +28 -28
  120. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  121. package/fesm2022/novo-elements-elements-loading.mjs +19 -19
  122. package/fesm2022/novo-elements-elements-loading.mjs.map +1 -1
  123. package/fesm2022/novo-elements-elements-menu.mjs +19 -19
  124. package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
  125. package/fesm2022/novo-elements-elements-modal.mjs +26 -23
  126. package/fesm2022/novo-elements-elements-modal.mjs.map +1 -1
  127. package/fesm2022/novo-elements-elements-multi-picker.mjs +7 -7
  128. package/fesm2022/novo-elements-elements-multi-picker.mjs.map +1 -1
  129. package/fesm2022/novo-elements-elements-non-ideal-state.mjs +7 -7
  130. package/fesm2022/novo-elements-elements-non-ideal-state.mjs.map +1 -1
  131. package/fesm2022/novo-elements-elements-picker.mjs +42 -39
  132. package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
  133. package/fesm2022/novo-elements-elements-places.mjs +10 -10
  134. package/fesm2022/novo-elements-elements-places.mjs.map +1 -1
  135. package/fesm2022/novo-elements-elements-popover.mjs +10 -10
  136. package/fesm2022/novo-elements-elements-popover.mjs.map +1 -1
  137. package/fesm2022/novo-elements-elements-progress.mjs +10 -10
  138. package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
  139. package/fesm2022/novo-elements-elements-query-builder.mjs +88 -88
  140. package/fesm2022/novo-elements-elements-query-builder.mjs.map +1 -1
  141. package/fesm2022/novo-elements-elements-quick-note.mjs +10 -10
  142. package/fesm2022/novo-elements-elements-quick-note.mjs.map +1 -1
  143. package/fesm2022/novo-elements-elements-radio.mjs +10 -10
  144. package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
  145. package/fesm2022/novo-elements-elements-search.mjs +7 -7
  146. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  147. package/fesm2022/novo-elements-elements-select-search.mjs +10 -10
  148. package/fesm2022/novo-elements-elements-select-search.mjs.map +1 -1
  149. package/fesm2022/novo-elements-elements-select.mjs +23 -19
  150. package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
  151. package/fesm2022/novo-elements-elements-simple-table.mjs +119 -93
  152. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  153. package/fesm2022/novo-elements-elements-slider.mjs +7 -7
  154. package/fesm2022/novo-elements-elements-slider.mjs.map +1 -1
  155. package/fesm2022/novo-elements-elements-stepper.mjs +34 -34
  156. package/fesm2022/novo-elements-elements-stepper.mjs.map +1 -1
  157. package/fesm2022/novo-elements-elements-switch.mjs +7 -7
  158. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  159. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs +7 -7
  160. package/fesm2022/novo-elements-elements-tabbed-group-picker.mjs.map +1 -1
  161. package/fesm2022/novo-elements-elements-tabs.mjs +26 -26
  162. package/fesm2022/novo-elements-elements-tabs.mjs.map +1 -1
  163. package/fesm2022/novo-elements-elements-tiles.mjs +7 -7
  164. package/fesm2022/novo-elements-elements-tiles.mjs.map +1 -1
  165. package/fesm2022/novo-elements-elements-time-picker.mjs +10 -10
  166. package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
  167. package/fesm2022/novo-elements-elements-tip-well.mjs +7 -7
  168. package/fesm2022/novo-elements-elements-tip-well.mjs.map +1 -1
  169. package/fesm2022/novo-elements-elements-toast.mjs +10 -10
  170. package/fesm2022/novo-elements-elements-toast.mjs.map +1 -1
  171. package/fesm2022/novo-elements-elements-toolbar.mjs +10 -10
  172. package/fesm2022/novo-elements-elements-toolbar.mjs.map +1 -1
  173. package/fesm2022/novo-elements-elements-tooltip.mjs +12 -12
  174. package/fesm2022/novo-elements-elements-tooltip.mjs.map +1 -1
  175. package/fesm2022/novo-elements-elements-unless.mjs +7 -7
  176. package/fesm2022/novo-elements-elements-unless.mjs.map +1 -1
  177. package/fesm2022/novo-elements-elements-value.mjs +14 -14
  178. package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
  179. package/fesm2022/novo-elements-pipes.mjs +35 -35
  180. package/fesm2022/novo-elements-pipes.mjs.map +1 -1
  181. package/fesm2022/novo-elements-services.mjs +24 -24
  182. package/fesm2022/novo-elements-services.mjs.map +1 -1
  183. package/fesm2022/novo-elements-utils.mjs +4 -4
  184. package/fesm2022/novo-elements-utils.mjs.map +1 -1
  185. package/fesm2022/novo-elements.mjs +9 -8
  186. package/fesm2022/novo-elements.mjs.map +1 -1
  187. package/index.d.ts +27 -3
  188. package/package.json +17 -17
  189. package/pipes/index.d.ts +75 -7
  190. package/services/index.d.ts +602 -9
  191. package/utils/index.d.ts +1631 -12
  192. package/addons/ace-editor/AceEditor.d.ts +0 -42
  193. package/addons/ace-editor/AceEditor.module.d.ts +0 -8
  194. package/addons/ckeditor/CKEditor.d.ts +0 -52
  195. package/addons/ckeditor/CKEditor.module.d.ts +0 -9
  196. package/addons/code-editor/CodeEditor.d.ts +0 -32
  197. package/addons/code-editor/CodeEditor.module.d.ts +0 -9
  198. package/elements/agenda/Agenda.module.d.ts +0 -29
  199. package/elements/agenda/common/AgendaDateChange.d.ts +0 -28
  200. package/elements/agenda/common/EventTypeLegend.d.ts +0 -10
  201. package/elements/agenda/common/index.d.ts +0 -2
  202. package/elements/agenda/day/AgendaAllDayEvent.d.ts +0 -10
  203. package/elements/agenda/day/AgendaDayEvent.d.ts +0 -11
  204. package/elements/agenda/day/AgendaDayView.d.ts +0 -151
  205. package/elements/agenda/day/AgendaHourSegment.d.ts +0 -10
  206. package/elements/agenda/day/index.d.ts +0 -4
  207. package/elements/agenda/month/AgendaMonthDay.d.ts +0 -17
  208. package/elements/agenda/month/AgendaMonthHeader.d.ts +0 -17
  209. package/elements/agenda/month/AgendaMonthView.d.ts +0 -113
  210. package/elements/agenda/month/index.d.ts +0 -3
  211. package/elements/agenda/pipe/DayOfMonth.pipe.d.ts +0 -9
  212. package/elements/agenda/pipe/EndOfWeekDisplayPipe.pipe.d.ts +0 -9
  213. package/elements/agenda/pipe/Hours.pipe.d.ts +0 -9
  214. package/elements/agenda/pipe/Month.pipe.d.ts +0 -9
  215. package/elements/agenda/pipe/MonthDay.pipe.d.ts +0 -9
  216. package/elements/agenda/pipe/Weekday.pipe.d.ts +0 -9
  217. package/elements/agenda/pipe/Year.pipe.d.ts +0 -9
  218. package/elements/agenda/pipe/index.d.ts +0 -7
  219. package/elements/agenda/week/AgendaWeekEvent.d.ts +0 -11
  220. package/elements/agenda/week/AgendaWeekHeader.d.ts +0 -17
  221. package/elements/agenda/week/AgendaWeekView.d.ts +0 -159
  222. package/elements/agenda/week/index.d.ts +0 -3
  223. package/elements/aside/aside-ref.d.ts +0 -17
  224. package/elements/aside/aside.animation.d.ts +0 -1
  225. package/elements/aside/aside.component.d.ts +0 -18
  226. package/elements/aside/aside.module.d.ts +0 -9
  227. package/elements/aside/aside.service.d.ts +0 -16
  228. package/elements/autocomplete/autocomplete.component.d.ts +0 -92
  229. package/elements/autocomplete/autocomplete.module.d.ts +0 -12
  230. package/elements/avatar/Avatar.d.ts +0 -22
  231. package/elements/avatar/Avatar.module.d.ts +0 -9
  232. package/elements/avatar/AvatarStack.d.ts +0 -12
  233. package/elements/breadcrumbs/Breadcrumb.d.ts +0 -13
  234. package/elements/breadcrumbs/Breadcrumb.module.d.ts +0 -15
  235. package/elements/breadcrumbs/Breadcrumb.service.d.ts +0 -9
  236. package/elements/breadcrumbs/Breadcrumb.tokens.d.ts +0 -13
  237. package/elements/breadcrumbs/Breadcrumb.types.d.ts +0 -18
  238. package/elements/breadcrumbs/breadcrumb-item/BreadcrumbItem.d.ts +0 -23
  239. package/elements/breadcrumbs/breadcrumb-item/index.d.ts +0 -1
  240. package/elements/button/Button.d.ts +0 -55
  241. package/elements/button/Button.module.d.ts +0 -8
  242. package/elements/calendar/Calendar.module.d.ts +0 -15
  243. package/elements/calendar/calendar.component.d.ts +0 -57
  244. package/elements/calendar/month-select/month-select.component.d.ts +0 -18
  245. package/elements/calendar/month-view/month-view.component.d.ts +0 -60
  246. package/elements/calendar/strategies/default-selection.strategy.d.ts +0 -17
  247. package/elements/calendar/strategies/index.d.ts +0 -4
  248. package/elements/calendar/strategies/multi-date-selection.strategy.d.ts +0 -9
  249. package/elements/calendar/strategies/range-selection.strategy.d.ts +0 -9
  250. package/elements/calendar/strategies/week-selection.strategy.d.ts +0 -9
  251. package/elements/calendar/year-select/year-select.component.d.ts +0 -20
  252. package/elements/card/Card.d.ts +0 -55
  253. package/elements/card/Card.module.d.ts +0 -12
  254. package/elements/category-dropdown/CategoryDropdown.d.ts +0 -32
  255. package/elements/category-dropdown/CategoryDropdown.module.d.ts +0 -10
  256. package/elements/checkbox/CheckList.d.ts +0 -23
  257. package/elements/checkbox/Checkbox.d.ts +0 -84
  258. package/elements/checkbox/Checkbox.module.d.ts +0 -11
  259. package/elements/chips/Chip.d.ts +0 -164
  260. package/elements/chips/ChipDefaults.d.ts +0 -8
  261. package/elements/chips/ChipInput.d.ts +0 -77
  262. package/elements/chips/ChipList.d.ts +0 -293
  263. package/elements/chips/ChipTextControl.d.ts +0 -14
  264. package/elements/chips/Chips.d.ts +0 -91
  265. package/elements/chips/Chips.module.d.ts +0 -19
  266. package/elements/chips/RowChips.d.ts +0 -17
  267. package/elements/chips/pipe/AvatarType.pipe.d.ts +0 -7
  268. package/elements/chips/pipe/index.d.ts +0 -1
  269. package/elements/color-picker/color-input.component.d.ts +0 -57
  270. package/elements/color-picker/color-picker.component.d.ts +0 -41
  271. package/elements/color-picker/color-picker.module.d.ts +0 -15
  272. package/elements/color-picker/color-swatch.component.d.ts +0 -31
  273. package/elements/common/common.module.d.ts +0 -24
  274. package/elements/common/directives/accent.directive.d.ts +0 -14
  275. package/elements/common/directives/bg.directive.d.ts +0 -11
  276. package/elements/common/directives/border.directive.d.ts +0 -29
  277. package/elements/common/directives/color.directive.d.ts +0 -11
  278. package/elements/common/directives/fill.directive.d.ts +0 -10
  279. package/elements/common/directives/flex.directive.d.ts +0 -12
  280. package/elements/common/directives/space.directive.d.ts +0 -54
  281. package/elements/common/directives/switch-cases.directive.d.ts +0 -16
  282. package/elements/common/directives/theme.directive.d.ts +0 -10
  283. package/elements/common/directives/visible.directive.d.ts +0 -10
  284. package/elements/common/error/error-options.d.ts +0 -14
  285. package/elements/common/mixins/color.mixin.d.ts +0 -15
  286. package/elements/common/mixins/constructor.d.ts +0 -9
  287. package/elements/common/mixins/disabled.mixin.d.ts +0 -10
  288. package/elements/common/mixins/error-state.mixin.d.ts +0 -25
  289. package/elements/common/mixins/index.d.ts +0 -9
  290. package/elements/common/mixins/overlay.mixin.d.ts +0 -17
  291. package/elements/common/mixins/required.mixin.d.ts +0 -10
  292. package/elements/common/mixins/size.mixin.d.ts +0 -15
  293. package/elements/common/mixins/tab-index.mixin.d.ts +0 -13
  294. package/elements/common/mixins/types.d.ts +0 -5
  295. package/elements/common/novo-template/index.d.ts +0 -1
  296. package/elements/common/novo-template/novo-template.directive.d.ts +0 -11
  297. package/elements/common/option/index.d.ts +0 -13
  298. package/elements/common/option/optgroup.component.d.ts +0 -32
  299. package/elements/common/option/option-parent.d.ts +0 -14
  300. package/elements/common/option/option.component.d.ts +0 -140
  301. package/elements/common/overlay/Overlay.d.ts +0 -71
  302. package/elements/common/overlay/Overlay.module.d.ts +0 -11
  303. package/elements/common/overlay/index.d.ts +0 -2
  304. package/elements/common/selection/index.d.ts +0 -8
  305. package/elements/common/selection/pseudo-checkbox/pseudo-checkbox.component.d.ts +0 -32
  306. package/elements/common/theme/theme-options.d.ts +0 -25
  307. package/elements/common/typography/base/base-text.component.d.ts +0 -33
  308. package/elements/common/typography/caption/caption.component.d.ts +0 -16
  309. package/elements/common/typography/index.d.ts +0 -7
  310. package/elements/common/typography/label/label.component.d.ts +0 -10
  311. package/elements/common/typography/link/link.component.d.ts +0 -17
  312. package/elements/common/typography/text/text.component.d.ts +0 -17
  313. package/elements/common/typography/text.types.d.ts +0 -3
  314. package/elements/common/typography/title/title.component.d.ts +0 -18
  315. package/elements/data-table/ListInteractionTypes.d.ts +0 -10
  316. package/elements/data-table/cell-headers/data-table-checkbox-header-cell.component.d.ts +0 -24
  317. package/elements/data-table/cell-headers/data-table-expand-header-cell.component.d.ts +0 -16
  318. package/elements/data-table/cell-headers/data-table-header-cell-filter-header.component.d.ts +0 -16
  319. package/elements/data-table/cell-headers/data-table-header-cell.component.d.ts +0 -91
  320. package/elements/data-table/cell-headers/data-table-header-cell.directive.d.ts +0 -14
  321. package/elements/data-table/cell-headers/index.d.ts +0 -5
  322. package/elements/data-table/cells/data-table-cell.component.d.ts +0 -20
  323. package/elements/data-table/cells/data-table-checkbox-cell.component.d.ts +0 -23
  324. package/elements/data-table/cells/data-table-expand-cell.component.d.ts +0 -19
  325. package/elements/data-table/cells/index.d.ts +0 -3
  326. package/elements/data-table/data-table-clear-button.component.d.ts +0 -23
  327. package/elements/data-table/data-table-expand.directive.d.ts +0 -21
  328. package/elements/data-table/data-table.component.d.ts +0 -126
  329. package/elements/data-table/data-table.module.d.ts +0 -42
  330. package/elements/data-table/data-table.pipes.d.ts +0 -52
  331. package/elements/data-table/data-table.source.d.ts +0 -22
  332. package/elements/data-table/data-table.token.d.ts +0 -27
  333. package/elements/data-table/interfaces.d.ts +0 -268
  334. package/elements/data-table/pagination/data-table-pagination.component.d.ts +0 -62
  335. package/elements/data-table/pagination/index.d.ts +0 -1
  336. package/elements/data-table/rows/data-table-header-row.component.d.ts +0 -9
  337. package/elements/data-table/rows/data-table-row.component.d.ts +0 -10
  338. package/elements/data-table/rows/index.d.ts +0 -2
  339. package/elements/data-table/services/data-table-filter-utils.d.ts +0 -3
  340. package/elements/data-table/services/index.d.ts +0 -3
  341. package/elements/data-table/services/remote-data-table.service.d.ts +0 -11
  342. package/elements/data-table/services/static-data-table.service.d.ts +0 -15
  343. package/elements/data-table/sort-filter/index.d.ts +0 -3
  344. package/elements/data-table/sort-filter/sort-button.animations.d.ts +0 -5
  345. package/elements/data-table/sort-filter/sort-button.component.d.ts +0 -21
  346. package/elements/data-table/sort-filter/sort-direction.d.ts +0 -5
  347. package/elements/data-table/sort-filter/sort-filter.directive.d.ts +0 -11
  348. package/elements/data-table/state/data-table-state.service.d.ts +0 -52
  349. package/elements/data-table/state/index.d.ts +0 -1
  350. package/elements/date-picker/DatePicker.d.ts +0 -113
  351. package/elements/date-picker/DatePicker.module.d.ts +0 -19
  352. package/elements/date-picker/DatePickerInput.d.ts +0 -146
  353. package/elements/date-picker/DateRangeInput.d.ts +0 -77
  354. package/elements/date-picker/MultiDateInput.d.ts +0 -67
  355. package/elements/date-time-picker/DateTimePicker.d.ts +0 -51
  356. package/elements/date-time-picker/DateTimePicker.module.d.ts +0 -14
  357. package/elements/date-time-picker/DateTimePickerInput.d.ts +0 -50
  358. package/elements/divider/divider.component.d.ts +0 -16
  359. package/elements/divider/divider.module.d.ts +0 -7
  360. package/elements/drag-drop/drag-drop-box.d.ts +0 -65
  361. package/elements/drag-drop/drag-drop.module.d.ts +0 -7
  362. package/elements/dropdown/Dropdown.d.ts +0 -108
  363. package/elements/dropdown/Dropdown.module.d.ts +0 -8
  364. package/elements/expansion/accordion.d.ts +0 -24
  365. package/elements/expansion/expansion-animations.d.ts +0 -9
  366. package/elements/expansion/expansion-panel-content.d.ts +0 -12
  367. package/elements/expansion/expansion-panel-header.d.ts +0 -52
  368. package/elements/expansion/expansion-panel.d.ts +0 -57
  369. package/elements/expansion/expansion.module.d.ts +0 -13
  370. package/elements/field/error/error.d.ts +0 -10
  371. package/elements/field/error/index.d.ts +0 -1
  372. package/elements/field/field-control.d.ts +0 -54
  373. package/elements/field/field.d.ts +0 -59
  374. package/elements/field/field.module.d.ts +0 -20
  375. package/elements/field/fieldset.d.ts +0 -18
  376. package/elements/field/formats/base-format.d.ts +0 -13
  377. package/elements/field/formats/date-format.d.ts +0 -26
  378. package/elements/field/formats/date-range-format.d.ts +0 -36
  379. package/elements/field/formats/date-time-format.d.ts +0 -35
  380. package/elements/field/formats/time-format.d.ts +0 -38
  381. package/elements/field/hint/hint.d.ts +0 -11
  382. package/elements/field/hint/index.d.ts +0 -1
  383. package/elements/field/input.d.ts +0 -165
  384. package/elements/field/picker.directive.d.ts +0 -22
  385. package/elements/field/toggle/picker-toggle.component.d.ts +0 -48
  386. package/elements/flex/Box.d.ts +0 -11
  387. package/elements/flex/Flex.d.ts +0 -17
  388. package/elements/flex/Flex.module.d.ts +0 -10
  389. package/elements/flex/Grid.d.ts +0 -14
  390. package/elements/form/Control.d.ts +0 -116
  391. package/elements/form/ControlGroup.d.ts +0 -111
  392. package/elements/form/ControlTemplates.d.ts +0 -12
  393. package/elements/form/DynamicForm.d.ts +0 -54
  394. package/elements/form/FieldInteractionApi.d.ts +0 -177
  395. package/elements/form/FieldInteractionApiTypes.d.ts +0 -29
  396. package/elements/form/FieldInteractionModals.d.ts +0 -21
  397. package/elements/form/Form.d.ts +0 -24
  398. package/elements/form/Form.module.d.ts +0 -39
  399. package/elements/form/FormControls.d.ts +0 -24
  400. package/elements/form/FormInterfaces.d.ts +0 -29
  401. package/elements/form/FormValidators.d.ts +0 -22
  402. package/elements/form/NovoFormControl.d.ts +0 -112
  403. package/elements/form/NovoFormGroup.d.ts +0 -19
  404. package/elements/form/controls/BaseControl.d.ts +0 -119
  405. package/elements/form/controls/ControlFactory.d.ts +0 -4
  406. package/elements/form/controls/ace-editor/AceEditorControl.d.ts +0 -5
  407. package/elements/form/controls/ace-editor/index.d.ts +0 -1
  408. package/elements/form/controls/address/AddressControl.d.ts +0 -5
  409. package/elements/form/controls/address/index.d.ts +0 -1
  410. package/elements/form/controls/check-list/CheckListControl.d.ts +0 -5
  411. package/elements/form/controls/check-list/index.d.ts +0 -1
  412. package/elements/form/controls/checkbox/CheckboxControl.d.ts +0 -5
  413. package/elements/form/controls/checkbox/index.d.ts +0 -1
  414. package/elements/form/controls/code-editor/CodeEditorControl.d.ts +0 -5
  415. package/elements/form/controls/code-editor/index.d.ts +0 -1
  416. package/elements/form/controls/custom/CustomControl.d.ts +0 -5
  417. package/elements/form/controls/custom/index.d.ts +0 -1
  418. package/elements/form/controls/date/DateControl.d.ts +0 -5
  419. package/elements/form/controls/date/index.d.ts +0 -1
  420. package/elements/form/controls/date-time/DateTimeControl.d.ts +0 -5
  421. package/elements/form/controls/date-time/index.d.ts +0 -1
  422. package/elements/form/controls/editor/EditorControl.d.ts +0 -6
  423. package/elements/form/controls/editor/index.d.ts +0 -1
  424. package/elements/form/controls/file/FileControl.d.ts +0 -5
  425. package/elements/form/controls/file/index.d.ts +0 -1
  426. package/elements/form/controls/grouped/GroupedControl.d.ts +0 -6
  427. package/elements/form/controls/grouped/index.d.ts +0 -1
  428. package/elements/form/controls/index.d.ts +0 -24
  429. package/elements/form/controls/native-select/NativeSelectControl.d.ts +0 -6
  430. package/elements/form/controls/native-select/index.d.ts +0 -1
  431. package/elements/form/controls/picker/PickerControl.d.ts +0 -9
  432. package/elements/form/controls/picker/index.d.ts +0 -1
  433. package/elements/form/controls/quick-note/QuickNoteControl.d.ts +0 -6
  434. package/elements/form/controls/quick-note/index.d.ts +0 -1
  435. package/elements/form/controls/radio/RadioControl.d.ts +0 -6
  436. package/elements/form/controls/radio/index.d.ts +0 -1
  437. package/elements/form/controls/read-only/ReadOnlyControl.d.ts +0 -5
  438. package/elements/form/controls/read-only/index.d.ts +0 -1
  439. package/elements/form/controls/select/SelectControl.d.ts +0 -6
  440. package/elements/form/controls/select/index.d.ts +0 -1
  441. package/elements/form/controls/switch/SwitchControl.d.ts +0 -5
  442. package/elements/form/controls/switch/index.d.ts +0 -1
  443. package/elements/form/controls/text-area/TextAreaControl.d.ts +0 -5
  444. package/elements/form/controls/text-area/index.d.ts +0 -1
  445. package/elements/form/controls/textbox/TextBoxControl.d.ts +0 -9
  446. package/elements/form/controls/textbox/index.d.ts +0 -1
  447. package/elements/form/controls/tiles/TilesControl.d.ts +0 -6
  448. package/elements/form/controls/tiles/index.d.ts +0 -1
  449. package/elements/form/controls/time/TimeControl.d.ts +0 -5
  450. package/elements/form/controls/time/index.d.ts +0 -1
  451. package/elements/form/controls/timezone/TimezoneControl.d.ts +0 -7
  452. package/elements/form/controls/timezone/index.d.ts +0 -1
  453. package/elements/form/extras/FormExtras.module.d.ts +0 -21
  454. package/elements/form/extras/address/Address.d.ts +0 -70
  455. package/elements/form/extras/address/index.d.ts +0 -1
  456. package/elements/form/extras/file/FileInput.d.ts +0 -134
  457. package/elements/form/extras/file/extras/file/File.d.ts +0 -22
  458. package/elements/form/extras/file/extras/file/index.d.ts +0 -1
  459. package/elements/form/extras/file/extras/index.d.ts +0 -1
  460. package/elements/form/extras/file/index.d.ts +0 -2
  461. package/elements/form/extras/index.d.ts +0 -4
  462. package/elements/form/extras/number-range/index.d.ts +0 -1
  463. package/elements/form/extras/number-range/number-range.component.d.ts +0 -27
  464. package/elements/form/utils/FormUtils.d.ts +0 -79
  465. package/elements/form/utils/index.d.ts +0 -1
  466. package/elements/header/Header.d.ts +0 -38
  467. package/elements/header/Header.module.d.ts +0 -11
  468. package/elements/icon/Icon.d.ts +0 -27
  469. package/elements/icon/Icon.module.d.ts +0 -8
  470. package/elements/layout/container/layout-container.component.d.ts +0 -118
  471. package/elements/layout/content/layout-content.component.d.ts +0 -13
  472. package/elements/layout/layout.constants.d.ts +0 -19
  473. package/elements/layout/layout.module.d.ts +0 -11
  474. package/elements/layout/rail/rail.component.d.ts +0 -9
  475. package/elements/layout/sidenav/sidenav.animations.d.ts +0 -8
  476. package/elements/layout/sidenav/sidenav.component.d.ts +0 -147
  477. package/elements/list/List.d.ts +0 -47
  478. package/elements/list/List.module.d.ts +0 -10
  479. package/elements/loading/Loading.d.ts +0 -54
  480. package/elements/loading/Loading.module.d.ts +0 -8
  481. package/elements/menu/menu-content.component.d.ts +0 -45
  482. package/elements/menu/menu-item.directive.d.ts +0 -21
  483. package/elements/menu/menu.component.d.ts +0 -39
  484. package/elements/menu/menu.directive.d.ts +0 -29
  485. package/elements/menu/menu.module.d.ts +0 -17
  486. package/elements/menu/menu.service.d.ts +0 -60
  487. package/elements/menu/menu.tokens.d.ts +0 -3
  488. package/elements/menu/menu.types.d.ts +0 -8
  489. package/elements/modal/modal-container.component.d.ts +0 -20
  490. package/elements/modal/modal-ref.d.ts +0 -25
  491. package/elements/modal/modal.animation.d.ts +0 -1
  492. package/elements/modal/modal.component.d.ts +0 -21
  493. package/elements/modal/modal.module.d.ts +0 -12
  494. package/elements/modal/modal.service.d.ts +0 -19
  495. package/elements/multi-picker/MultiPicker.d.ts +0 -110
  496. package/elements/multi-picker/MultiPicker.module.d.ts +0 -11
  497. package/elements/non-ideal-state/NonIdealState.d.ts +0 -10
  498. package/elements/non-ideal-state/NonIdealState.module.d.ts +0 -10
  499. package/elements/picker/Picker.d.ts +0 -78
  500. package/elements/picker/Picker.module.d.ts +0 -22
  501. package/elements/picker/extras/base-picker-results/BasePickerResults.d.ts +0 -96
  502. package/elements/picker/extras/base-picker-results/index.d.ts +0 -1
  503. package/elements/picker/extras/checklist-picker-results/ChecklistPickerResults.d.ts +0 -24
  504. package/elements/picker/extras/checklist-picker-results/index.d.ts +0 -1
  505. package/elements/picker/extras/distributionlist-picker-results/DistributionListPickerResults.d.ts +0 -16
  506. package/elements/picker/extras/distributionlist-picker-results/index.d.ts +0 -1
  507. package/elements/picker/extras/entity-picker-results/EntityPickerResults.d.ts +0 -37
  508. package/elements/picker/extras/entity-picker-results/index.d.ts +0 -1
  509. package/elements/picker/extras/grouped-multi-picker-results/GroupedMultiPickerResults.d.ts +0 -45
  510. package/elements/picker/extras/grouped-multi-picker-results/index.d.ts +0 -1
  511. package/elements/picker/extras/index.d.ts +0 -9
  512. package/elements/picker/extras/mixed-multi-picker-results/MixedMultiPickerResults.d.ts +0 -50
  513. package/elements/picker/extras/mixed-multi-picker-results/index.d.ts +0 -1
  514. package/elements/picker/extras/picker-results/PickerResults.d.ts +0 -14
  515. package/elements/picker/extras/picker-results/index.d.ts +0 -1
  516. package/elements/picker/extras/skills-picker-results/SkillsSpecialtyPickerResults.d.ts +0 -24
  517. package/elements/picker/extras/skills-picker-results/index.d.ts +0 -1
  518. package/elements/picker/extras/workers-comp-codes-picker-results/WorkersCompCodesPickerResults.d.ts +0 -13
  519. package/elements/picker/extras/workers-comp-codes-picker-results/index.d.ts +0 -1
  520. package/elements/places/places.component.d.ts +0 -85
  521. package/elements/places/places.module.d.ts +0 -10
  522. package/elements/places/places.service.d.ts +0 -25
  523. package/elements/popover/PopOver.d.ts +0 -37
  524. package/elements/popover/PopOver.module.d.ts +0 -9
  525. package/elements/popover/PopOverContent.d.ts +0 -49
  526. package/elements/progress/Progress.d.ts +0 -24
  527. package/elements/progress/Progress.module.d.ts +0 -9
  528. package/elements/progress/ProgressBar.d.ts +0 -45
  529. package/elements/progress/ProgressConstants.d.ts +0 -10
  530. package/elements/query-builder/condition-builder/condition-builder.component.d.ts +0 -94
  531. package/elements/query-builder/condition-definitions/abstract-condition.definition.d.ts +0 -35
  532. package/elements/query-builder/condition-definitions/address-condition.definition.d.ts +0 -45
  533. package/elements/query-builder/condition-definitions/boolean-condition.definition.d.ts +0 -14
  534. package/elements/query-builder/condition-definitions/date-condition.definition.d.ts +0 -19
  535. package/elements/query-builder/condition-definitions/date-time-condition.definition.d.ts +0 -19
  536. package/elements/query-builder/condition-definitions/id-condition.definition.d.ts +0 -11
  537. package/elements/query-builder/condition-definitions/number-condition.definition.d.ts +0 -14
  538. package/elements/query-builder/condition-definitions/picker-condition.definition.d.ts +0 -23
  539. package/elements/query-builder/condition-definitions/string-condition.definition.d.ts +0 -21
  540. package/elements/query-builder/condition-group/condition-group.component.d.ts +0 -37
  541. package/elements/query-builder/condition-templates/condition-templates.component.d.ts +0 -8
  542. package/elements/query-builder/criteria-builder/criteria-builder.component.d.ts +0 -54
  543. package/elements/query-builder/query-builder.directives.d.ts +0 -66
  544. package/elements/query-builder/query-builder.module.d.ts +0 -46
  545. package/elements/query-builder/query-builder.service.d.ts +0 -54
  546. package/elements/query-builder/query-builder.tokens.d.ts +0 -4
  547. package/elements/query-builder/query-builder.types.d.ts +0 -128
  548. package/elements/quick-note/QuickNote.d.ts +0 -142
  549. package/elements/quick-note/QuickNote.module.d.ts +0 -13
  550. package/elements/quick-note/extras/index.d.ts +0 -1
  551. package/elements/quick-note/extras/quick-note-results/QuickNoteResults.d.ts +0 -33
  552. package/elements/quick-note/extras/quick-note-results/index.d.ts +0 -1
  553. package/elements/radio/Radio.d.ts +0 -40
  554. package/elements/radio/Radio.module.d.ts +0 -10
  555. package/elements/radio/RadioGroup.d.ts +0 -91
  556. package/elements/radio/tokens.d.ts +0 -9
  557. package/elements/search/SearchBox.d.ts +0 -71
  558. package/elements/search/SearchBox.module.d.ts +0 -12
  559. package/elements/select/Select.d.ts +0 -216
  560. package/elements/select/Select.extupdatefix.directive.d.ts +0 -17
  561. package/elements/select/Select.module.d.ts +0 -17
  562. package/elements/select-search/select-search-clear.directive.d.ts +0 -12
  563. package/elements/select-search/select-search.component.d.ts +0 -239
  564. package/elements/select-search/select-search.module.d.ts +0 -17
  565. package/elements/simple-table/PaginationOld.d.ts +0 -42
  566. package/elements/simple-table/activity-table-renderers.d.ts +0 -4
  567. package/elements/simple-table/cell-header.d.ts +0 -67
  568. package/elements/simple-table/cell.d.ts +0 -100
  569. package/elements/simple-table/interfaces.d.ts +0 -81
  570. package/elements/simple-table/pagination.d.ts +0 -40
  571. package/elements/simple-table/row.d.ts +0 -29
  572. package/elements/simple-table/simple-table.module.d.ts +0 -26
  573. package/elements/simple-table/sort.d.ts +0 -25
  574. package/elements/simple-table/state.d.ts +0 -25
  575. package/elements/simple-table/table-source.d.ts +0 -62
  576. package/elements/simple-table/table.d.ts +0 -72
  577. package/elements/slider/Slider.d.ts +0 -21
  578. package/elements/slider/Slider.module.d.ts +0 -9
  579. package/elements/stepper/step-header.component.d.ts +0 -48
  580. package/elements/stepper/step-label.component.d.ts +0 -8
  581. package/elements/stepper/step-status.component.d.ts +0 -7
  582. package/elements/stepper/stepper-buttons.component.d.ts +0 -12
  583. package/elements/stepper/stepper.animations.d.ts +0 -6
  584. package/elements/stepper/stepper.component.d.ts +0 -44
  585. package/elements/stepper/stepper.module.d.ts +0 -17
  586. package/elements/switch/Switch.d.ts +0 -23
  587. package/elements/switch/Switch.module.d.ts +0 -10
  588. package/elements/tabbed-group-picker/TabbedGroupPicker.d.ts +0 -128
  589. package/elements/tabbed-group-picker/TabbedGroupPicker.module.d.ts +0 -17
  590. package/elements/tabs/Tabs.d.ts +0 -95
  591. package/elements/tabs/Tabs.module.d.ts +0 -8
  592. package/elements/tiles/Tiles.d.ts +0 -33
  593. package/elements/tiles/Tiles.module.d.ts +0 -10
  594. package/elements/time-picker/TimePicker.d.ts +0 -58
  595. package/elements/time-picker/TimePicker.module.d.ts +0 -14
  596. package/elements/time-picker/TimePickerInput.d.ts +0 -71
  597. package/elements/tip-well/TipWell.d.ts +0 -26
  598. package/elements/tip-well/TipWell.module.d.ts +0 -9
  599. package/elements/toast/Toast.d.ts +0 -37
  600. package/elements/toast/Toast.module.d.ts +0 -9
  601. package/elements/toast/ToastService.d.ts +0 -45
  602. package/elements/toolbar/toolbar.component.d.ts +0 -22
  603. package/elements/toolbar/toolbar.module.d.ts +0 -8
  604. package/elements/tooltip/Tooltip.component.d.ts +0 -16
  605. package/elements/tooltip/Tooltip.directive.d.ts +0 -44
  606. package/elements/tooltip/Tooltip.module.d.ts +0 -9
  607. package/elements/unless/Unless.d.ts +0 -16
  608. package/elements/unless/Unless.module.d.ts +0 -8
  609. package/elements/value/EntityList.d.ts +0 -16
  610. package/elements/value/Render.d.ts +0 -70
  611. package/elements/value/Value.d.ts +0 -46
  612. package/elements/value/Value.module.d.ts +0 -12
  613. package/novo-elements.module.d.ts +0 -11
  614. package/novo-elements.providers.d.ts +0 -12
  615. package/pipes/Pipes.module.d.ts +0 -15
  616. package/pipes/decode-uri/DecodeURI.d.ts +0 -8
  617. package/pipes/decode-uri/index.d.ts +0 -1
  618. package/pipes/default/Default.d.ts +0 -8
  619. package/pipes/default/index.d.ts +0 -1
  620. package/pipes/group-by/GroupBy.d.ts +0 -7
  621. package/pipes/group-by/index.d.ts +0 -1
  622. package/pipes/highlight/Highlight.d.ts +0 -9
  623. package/pipes/highlight/index.d.ts +0 -1
  624. package/pipes/iso8601/index.d.ts +0 -4
  625. package/pipes/iso8601/iso-date-range.pipe.d.ts +0 -10
  626. package/pipes/iso8601/iso-date.pipe.d.ts +0 -8
  627. package/pipes/iso8601/iso-time-range.pipe.d.ts +0 -10
  628. package/pipes/iso8601/iso-time.pipe.d.ts +0 -8
  629. package/pipes/plural/Plural.d.ts +0 -8
  630. package/pipes/plural/index.d.ts +0 -1
  631. package/services/component-utils/ComponentUtils.d.ts +0 -7
  632. package/services/component-utils/index.d.ts +0 -1
  633. package/services/data-provider/ArrayCollection.d.ts +0 -168
  634. package/services/data-provider/Collection.d.ts +0 -78
  635. package/services/data-provider/CollectionEvent.d.ts +0 -17
  636. package/services/data-provider/PagedArrayCollection.d.ts +0 -18
  637. package/services/data-provider/PagedCollection.d.ts +0 -15
  638. package/services/data-provider/index.d.ts +0 -5
  639. package/services/date-format/DateFormat.d.ts +0 -28
  640. package/services/date-format/index.d.ts +0 -1
  641. package/services/global/global.service.d.ts +0 -17
  642. package/services/global/index.d.ts +0 -1
  643. package/services/novo-label-service.d.ts +0 -202
  644. package/services/options/OptionsService.d.ts +0 -12
  645. package/services/options/index.d.ts +0 -1
  646. package/services/security/Security.d.ts +0 -23
  647. package/services/security/index.d.ts +0 -1
  648. package/services/storage/index.d.ts +0 -1
  649. package/services/storage/storage.service.d.ts +0 -8
  650. package/services/template/NovoTemplateService.d.ts +0 -10
  651. package/services/template/index.d.ts +0 -1
  652. package/utils/Helpers.d.ts +0 -188
  653. package/utils/app-bridge/AppBridge.d.ts +0 -178
  654. package/utils/app-bridge/index.d.ts +0 -2
  655. package/utils/app-bridge/interfaces.d.ts +0 -58
  656. package/utils/base-renderer/BaseRenderer.d.ts +0 -9
  657. package/utils/base-renderer/index.d.ts +0 -1
  658. package/utils/calendar-utils/CalendarUtils.d.ts +0 -151
  659. package/utils/calendar-utils/index.d.ts +0 -1
  660. package/utils/color-utils/ColorUtils.d.ts +0 -40
  661. package/utils/color-utils/index.d.ts +0 -1
  662. package/utils/countries/Countries.d.ts +0 -47
  663. package/utils/countries/index.d.ts +0 -1
  664. package/utils/date/Date.d.ts +0 -50
  665. package/utils/date/Date.types.d.ts +0 -71
  666. package/utils/date/convert-tokens.d.ts +0 -5
  667. package/utils/date/index.d.ts +0 -5
  668. package/utils/date/legacy-parse.d.ts +0 -15
  669. package/utils/date/timezone-support.d.ts +0 -5
  670. package/utils/decorators/BooleanInput.d.ts +0 -1
  671. package/utils/decorators/index.d.ts +0 -1
  672. package/utils/deferred/Deferred.d.ts +0 -8
  673. package/utils/deferred/index.d.ts +0 -1
  674. package/utils/key-codes/Key.d.ts +0 -669
  675. package/utils/key-codes/KeyCodes.d.ts +0 -93
  676. package/utils/key-codes/index.d.ts +0 -2
  677. package/utils/notifier/index.d.ts +0 -1
  678. package/utils/notifier/notifier.util.d.ts +0 -1
  679. package/utils/outside-click/OutsideClick.d.ts +0 -27
  680. package/utils/outside-click/index.d.ts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"novo-elements-elements-simple-table.mjs","sources":["../../../projects/novo-elements/src/elements/simple-table/activity-table-renderers.ts","../../../projects/novo-elements/src/elements/simple-table/state.ts","../../../projects/novo-elements/src/elements/simple-table/sort.ts","../../../projects/novo-elements/src/elements/simple-table/cell.ts","../../../projects/novo-elements/src/elements/simple-table/cell-header.ts","../../../projects/novo-elements/src/elements/simple-table/pagination.ts","../../../projects/novo-elements/src/elements/simple-table/PaginationOld.ts","../../../projects/novo-elements/src/elements/simple-table/row.ts","../../../projects/novo-elements/src/elements/simple-table/table-source.ts","../../../projects/novo-elements/src/elements/simple-table/table.ts","../../../projects/novo-elements/src/elements/simple-table/simple-table.module.ts","../../../projects/novo-elements/src/elements/simple-table/novo-elements-elements-simple-table.ts"],"sourcesContent":["export class ActivityTableRenderers {\n static propertyRenderer<T>(prop: string): Function {\n const ret = (data: T): string => {\n // TODO - allow for dots and sub props\n return data[prop];\n };\n return ret;\n }\n\n static dateRenderer<T>(prop: string): Function {\n const ret = (data: T): string => {\n return data[prop] ? new Date(data[prop]).toLocaleDateString() : '';\n };\n return ret;\n }\n}\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { NovoSimpleTableChange } from './interfaces';\n\n@Injectable()\nexport class NovoActivityTableState {\n id: number = Math.random();\n sort: { id: string; value: string } = undefined;\n filter: { id: string; value: string } = undefined;\n page: number = 0;\n pageSize: number = undefined;\n globalSearch: string = undefined;\n selectedRows: Map<string, object> = new Map<string, object>();\n outsideFilter: any;\n\n updates: EventEmitter<NovoSimpleTableChange> = new EventEmitter<NovoSimpleTableChange>();\n onReset: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n get userFiltered(): boolean {\n return !!(this.filter || this.sort || this.globalSearch || this.outsideFilter);\n }\n\n public reset(fireUpdate: boolean = true, persistUserFilters?: boolean): void {\n if (!persistUserFilters) {\n this.sort = undefined;\n this.globalSearch = undefined;\n this.filter = undefined;\n }\n this.page = 0;\n this.selectedRows.clear();\n this.onReset.emit(true);\n if (fireUpdate) {\n this.updates.emit({\n sort: this.sort,\n filter: this.filter,\n globalSearch: this.globalSearch,\n });\n }\n }\n}\n","import { Directive, EventEmitter, OnDestroy, Output } from '@angular/core';\nimport { Helpers } from 'novo-elements/utils';\nimport { NovoActivityTableState } from './state';\n\n@Directive({\n selector: '[novoSortFilter]',\n standalone: false,\n})\nexport class NovoSortFilter {\n constructor(private state: NovoActivityTableState) {}\n\n public filter(id: string, value: any, transform: Function): void {\n let filter;\n if (!Helpers.isBlank(value)) {\n filter = { id, value, transform };\n } else {\n filter = undefined;\n }\n this.state.filter = filter;\n this.state.reset(false, true);\n this.state.updates.next({ filter, sort: this.state.sort });\n }\n\n public sort(id: string, value: string, transform: Function): void {\n const sort = { id, value, transform };\n this.state.sort = sort;\n this.state.reset(false, true);\n this.state.updates.next({ sort, filter: this.state.filter });\n }\n}\n\n@Directive({\n selector: '[novoSelection]',\n standalone: false,\n})\nexport class NovoSelection implements OnDestroy {\n @Output()\n public novoSelectAllToggle = new EventEmitter<boolean>();\n\n public allRows = new Map<string, object>();\n private throttleTimeout: any;\n\n constructor(public state: NovoActivityTableState) {}\n\n public register(id, row): void {\n this.allRows.set(id, row);\n }\n\n public deregister(id): void {\n this.allRows.delete(id);\n this.state.selectedRows.delete(id);\n clearTimeout(this.throttleTimeout);\n this.throttleTimeout = setTimeout(() => {\n if (this.state.selectedRows.size === 0) {\n this.novoSelectAllToggle.emit(false);\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.allRows.clear();\n this.state.selectedRows.clear();\n }\n\n public toggle(id: string, selected: boolean, row: any): void {\n if (selected) {\n this.state.selectedRows.set(id, row);\n } else {\n this.state.selectedRows.delete(id);\n }\n }\n\n public selectAll(value: boolean): void {\n if (value) {\n this.state.selectedRows = new Map<string, object>(this.allRows);\n } else {\n this.state.selectedRows.clear();\n }\n this.novoSelectAllToggle.emit(value);\n }\n}\n","import { CdkCell, CdkCellDef, CdkColumnDef, CdkHeaderCell, CdkHeaderCellDef } from '@angular/cdk/table';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\nimport { SimpleTableActionColumn, SimpleTableActionColumnOption, SimpleTableColumn } from './interfaces';\nimport { NovoSelection } from './sort';\n\n/** Workaround for https://github.com/angular/angular/issues/17849 */\nexport const _NovoCellDef = CdkCellDef;\nexport const _NovoHeaderCellDef = CdkHeaderCellDef;\nexport const _NovoColumnDef = CdkColumnDef;\nexport const _NovoHeaderCell = CdkHeaderCell;\nexport const _NovoCell = CdkCell;\n\n@Directive({\n selector: '[novoSimpleCellDef]',\n providers: [{ provide: CdkCellDef, useExisting: NovoSimpleCellDef }],\n standalone: false,\n})\nexport class NovoSimpleCellDef extends _NovoCellDef {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: '[novoSimpleHeaderCellDef]',\n providers: [{ provide: CdkHeaderCellDef, useExisting: NovoSimpleHeaderCellDef }],\n standalone: false,\n})\nexport class NovoSimpleHeaderCellDef extends _NovoHeaderCellDef {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: '[novoSimpleColumnDef]',\n providers: [{ provide: CdkColumnDef, useExisting: NovoSimpleColumnDef }],\n standalone: false,\n})\nexport class NovoSimpleColumnDef extends _NovoColumnDef {\n @Input('novoSimpleColumnDef')\n get name(): string {\n return this._name;\n }\n set name(name: string) {\n this._setNameInput(name);\n }\n /**\n * This has been extracted to a util because of TS 4 and VE.\n * View Engine doesn't support property rename inheritance.\n * TS 4.0 doesn't allow properties to override accessors or vice-versa.\n * @docs-private\n */\n protected _setNameInput(value: string) {\n // If the directive is set without a name (updated programatically), then this setter will\n // trigger with an empty string and should not overwrite the programatically set value.\n if (value) {\n this._name = value;\n this.cssClassFriendlyName = value.replace(/[^a-z0-9_-]/gi, '-');\n this._updateColumnCssClassName();\n }\n }\n}\n\n@Directive({\n selector: 'novo-simple-header-cell',\n standalone: false,\n})\nexport class NovoSimpleHeaderCell<T> extends _NovoHeaderCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n @Input()\n public column: SimpleTableColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-header-cell');\n }\n\n public ngOnInit(): void {\n if (this.column.width) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'min-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'width', `${this.column.width}px`);\n }\n }\n}\n\n@Directive({\n selector: 'novo-simple-empty-header-cell',\n standalone: false,\n})\nexport class NovoSimpleEmptyHeaderCell extends _NovoHeaderCell {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n constructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-empty-header-cell');\n }\n}\n\n@Component({\n selector: 'novo-simple-checkbox-header-cell',\n template: '<novo-checkbox [(ngModel)]=\"selectAll\" (ngModelChange)=\"toggle($event)\"></novo-checkbox>',\n standalone: false,\n})\nexport class NovoSimpleCheckboxHeaderCell extends _NovoHeaderCell implements OnDestroy {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n public selectAll: boolean = false;\n private selectAllSubscription: Subscription;\n\n constructor(\n columnDef: CdkColumnDef,\n elementRef: ElementRef,\n renderer: Renderer2,\n ref: ChangeDetectorRef,\n @Optional() private _selection: NovoSelection,\n ) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-checkbox-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-checkbox-header-cell');\n\n this.selectAllSubscription = _selection.novoSelectAllToggle.subscribe((value: boolean) => {\n this.selectAll = value;\n ref.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.selectAllSubscription.unsubscribe();\n }\n\n public toggle(value: boolean): void {\n this._selection.selectAll(value);\n }\n}\n\n@Component({\n selector: 'novo-simple-cell',\n template: ' <span [class.clickable]=\"!!column.onClick\" (click)=\"onClick($event)\" #span>{{ column.renderer(row) }}</span> ',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleCell<T> extends _NovoCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: any;\n @Input()\n public column: SimpleTableColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-cell');\n }\n\n public ngOnInit(): void {\n if (this.column.customClass) {\n this.renderer.addClass(this.elementRef.nativeElement, this.column.customClass(this.row));\n }\n if (this.column.width) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'min-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'width', `${this.column.width}px`);\n }\n }\n\n public onClick(event: MouseEvent): void {\n Helpers.swallowEvent(event);\n if (this.column.onClick) {\n this.column.onClick(this.row);\n }\n return;\n }\n}\n\n@Component({\n selector: 'novo-simple-checkbox-cell',\n template: ' <novo-checkbox [ngModel]=\"selected\" (ngModelChange)=\"toggle($event)\"></novo-checkbox> ',\n standalone: false,\n})\nexport class NovoSimpleCheckboxCell extends _NovoCell implements OnDestroy, OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: any;\n @Input()\n public index: any;\n\n public selected: boolean = false;\n private selectAllSubscription: Subscription;\n\n constructor(public columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2, @Optional() public _selection: NovoSelection) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-checkbox-cell');\n\n this.selectAllSubscription = _selection.novoSelectAllToggle.subscribe((value: boolean) => {\n this.selected = value;\n });\n }\n\n public ngOnInit(): void {\n this._selection.register(this.row.id || this.index, this.row);\n this.selected = this._selection.state.selectedRows.has(this.row.id || this.index);\n }\n\n public ngOnDestroy(): void {\n this._selection.deregister(this.row.id || this.index);\n this.selectAllSubscription.unsubscribe();\n }\n\n public toggle(value: boolean): void {\n this._selection.toggle(this.row.id || this.index, value, this.row);\n }\n}\n\n@Component({\n selector: 'novo-simple-action-cell',\n template: `\n <ng-container *ngIf=\"!column.options\">\n <novo-button theme=\"icon\" [icon]=\"column.icon\" (click)=\"column.onClick(row)\" [disabled]=\"isDisabled(column, row)\"></novo-button>\n </ng-container>\n <ng-container *ngIf=\"column.options\">\n <novo-dropdown parentScrollSelector=\".novo-simple-table\" containerClass=\"novo-table-dropdown-cell\">\n <novo-button type=\"button\" theme=\"dialogue\" icon=\"collapse\" inverse>{{ column.label || labels.actions }}</novo-button>\n <list>\n <item *ngFor=\"let option of column.options\" (action)=\"option.onClick(row)\" [disabled]=\"isDisabled(option, row)\">\n <span [attr.data-automation-id]=\"option.label\">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleActionCell<T> extends _NovoCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: T;\n @Input()\n public column: SimpleTableActionColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2, public labels: NovoLabelService) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-action-column-${columnDef.cssClassFriendlyName}`);\n }\n\n public ngOnInit(): void {\n if (this.column.options) {\n this.renderer.addClass(this.elementRef.nativeElement, 'novo-simple-dropdown-cell');\n } else {\n this.renderer.addClass(this.elementRef.nativeElement, 'novo-simple-button-cell');\n }\n }\n\n public isDisabled(check: SimpleTableActionColumn<T> | SimpleTableActionColumnOption<T>, row: T): boolean {\n if (check.disabled === true) {\n return true;\n }\n if (check.disabledCheck) {\n return check.disabledCheck(row);\n }\n return false;\n }\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { CdkColumnDef } from '@angular/cdk/table';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { startOfToday, startOfTomorrow } from 'date-fns';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\nimport { NovoDropdownElement } from 'novo-elements/elements/dropdown';\nimport { NovoSimpleSortFilter, NovoSimpleTableChange, SimpleTableColumnFilterConfig, SimpleTableColumnFilterOption } from './interfaces';\nimport { NovoSortFilter } from './sort';\nimport { NovoActivityTableState } from './state';\n\n@Directive({\n selector: '[novoSimpleFilterFocus]',\n standalone: false,\n})\nexport class NovoSimpleFilterFocus implements AfterViewInit {\n constructor(private element: ElementRef) {}\n\n ngAfterViewInit() {\n this.element.nativeElement.focus();\n }\n}\n\n@Component({\n selector: '[novo-simple-cell-config]',\n template: `\n <label (click)=\"sort()\" data-automation-id=\"novo-activity-table-label\" [class.sort-disabled]=\"!config.sortable\">\n <ng-content></ng-content>\n </label>\n <div>\n <novo-button\n *ngIf=\"config.sortable\"\n theme=\"icon\"\n [icon]=\"icon\"\n (click)=\"sort()\"\n [class.active]=\"sortActive\"\n data-automation-id=\"novo-activity-table-sort\"\n ></novo-button>\n <novo-dropdown\n *ngIf=\"config.filterable\"\n side=\"right\"\n parentScrollSelector=\".novo-simple-table\"\n containerClass=\"simple-table-dropdown\"\n data-automation-id=\"novo-activity-table-filter\"\n >\n <novo-button type=\"button\" theme=\"icon\" icon=\"filter\" [class.active]=\"filterActive\"></novo-button>\n <div class=\"header\">\n <span>{{ labels.filters }}</span>\n <novo-button\n theme=\"dialogue\"\n color=\"negative\"\n icon=\"times\"\n (click)=\"clearFilter()\"\n *ngIf=\"filter\"\n data-automation-id=\"novo-activity-table-filter-clear\"\n >\n {{ labels.clear }}\n </novo-button>\n </div>\n <ng-container [ngSwitch]=\"config.filterConfig.type\">\n <novo-optgroup *ngSwitchCase=\"'date'\">\n <ng-container *ngIf=\"!showCustomRange\">\n <novo-option\n [class.active]=\"activeDateFilter === option.label\"\n *ngFor=\"let option of config.filterConfig.options\"\n (click)=\"filterData(option)\"\n [attr.data-automation-id]=\"'novo-activity-table-filter-' + option.label\"\n >\n {{ option.label }} <i class=\"bhi-check\" *ngIf=\"activeDateFilter === option.label\"></i>\n </novo-option>\n </ng-container>\n <novo-option\n [class.active]=\"labels.customDateRange === activeDateFilter\"\n (click)=\"toggleCustomRange($event, true)\"\n *ngIf=\"config.filterConfig.allowCustomRange && !showCustomRange\"\n [keepOpen]=\"true\"\n >\n {{ labels.customDateRange }} <i class=\"bhi-check\" *ngIf=\"labels.customDateRange === activeDateFilter\"></i>\n </novo-option>\n <div class=\"calendar-container\" *ngIf=\"showCustomRange\">\n <div (click)=\"toggleCustomRange($event, false)\"><i class=\"bhi-previous\"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)=\"filterData($event)\" [(ngModel)]=\"filter\" range=\"true\"></novo-date-picker>\n </div>\n </novo-optgroup>\n <novo-optgroup *ngSwitchCase=\"'select'\">\n <novo-option\n [class.active]=\"filter === option\"\n *ngFor=\"let option of config.filterConfig.options\"\n (click)=\"filterData(option)\"\n [attr.data-automation-id]=\"'novo-activity-table-filter-' + (option?.label || option)\"\n >\n <span>{{ option?.label || option }}</span>\n <i class=\"bhi-check\" *ngIf=\"option.hasOwnProperty('value') ? filter === option.value : filter === option\"></i>\n </novo-option>\n </novo-optgroup>\n <novo-optgroup *ngSwitchDefault>\n <novo-option class=\"filter-search\" keepOpen>\n <input\n type=\"text\"\n [(ngModel)]=\"filter\"\n (ngModelChange)=\"filterData($event)\"\n novoSimpleFilterFocus\n data-automation-id=\"novo-activity-table-filter-input\"\n />\n </novo-option>\n </novo-optgroup>\n </ng-container>\n </novo-dropdown>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleCellHeader implements NovoSimpleSortFilter, OnInit, OnDestroy {\n @ViewChild(NovoDropdownElement)\n dropdown: NovoDropdownElement;\n\n @Input()\n defaultSort: { id: string; value: string };\n\n @Input('novo-simple-cell-config')\n get config() {\n return this._config;\n }\n\n set config(v) {\n if (!v) {\n this._config = {\n sortable: false,\n filterable: false,\n filterConfig: {\n type: 'text',\n },\n };\n } else {\n this._config = {\n sortable: coerceBooleanProperty(v.sortable),\n filterable: coerceBooleanProperty(v.filterable),\n transforms: v.transforms || {},\n filterConfig: v.filterConfig || {\n type: 'text',\n },\n };\n\n if (this._config.filterConfig.type === 'date' && !this._config.filterConfig.options) {\n this._config.filterConfig.options = this.getDefaultDateFilterOptions();\n }\n }\n }\n\n private _config: {\n sortable: boolean;\n filterable: boolean;\n transforms?: { filter?: Function; sort?: Function };\n filterConfig: SimpleTableColumnFilterConfig;\n };\n\n private _rerenderSubscription: Subscription;\n private changeTimeout: any;\n\n public icon: string = 'sortable';\n public id: string;\n public filter: string | boolean;\n public direction: string;\n public filterActive: boolean = false;\n public sortActive: boolean = false;\n public showCustomRange: boolean = false;\n public activeDateFilter: string;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n public labels: NovoLabelService,\n private state: NovoActivityTableState,\n @Optional() public _sort: NovoSortFilter,\n @Optional() public _cdkColumnDef: CdkColumnDef,\n ) {\n this._rerenderSubscription = state.updates.subscribe((change: NovoSimpleTableChange) => {\n if (change.sort && change.sort.id === this.id) {\n this.icon = `sort-${change.sort.value}`;\n this.sortActive = true;\n } else {\n this.icon = 'sortable';\n this.sortActive = false;\n }\n if (change.filter && change.filter.id === this.id) {\n this.filterActive = true;\n this.filter = change.filter.value;\n } else {\n this.filterActive = false;\n this.filter = undefined;\n }\n changeDetectorRef.markForCheck();\n });\n }\n\n public ngOnInit(): void {\n if (this._cdkColumnDef) {\n this.id = this._cdkColumnDef.name;\n }\n if (this.defaultSort && this.id === this.defaultSort.id) {\n this.icon = `sort-${this.defaultSort.value}`;\n this.sortActive = true;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n public ngOnDestroy(): void {\n this._rerenderSubscription.unsubscribe();\n }\n\n public sort(): void {\n if (this.changeTimeout) {\n clearTimeout(this.changeTimeout);\n }\n this.changeTimeout = setTimeout(() => {\n this.direction = this.getNextSortDirection(this.direction);\n this._sort.sort(this.id, this.direction, this._config.transforms.sort);\n this.changeDetectorRef.markForCheck();\n }, 300);\n }\n\n public toggleCustomRange(event: Event, value: boolean): void {\n Helpers.swallowEvent(event);\n this.showCustomRange = value;\n this.changeDetectorRef.markForCheck();\n this.dropdown.openPanel(); // Ensures that the panel correctly updates to the dynamic size of the dropdown\n }\n\n public filterData(filter?: any): void {\n let actualFilter = filter;\n if (this.config.filterConfig.type === 'date' && filter) {\n this.activeDateFilter = filter.label || this.labels.customDateRange;\n if (filter.startDate && filter.endDate) {\n actualFilter = {\n min: DateUtil.startOfDay(filter.startDate.date),\n max: DateUtil.startOfDay(DateUtil.addDays(DateUtil.startOfDay(filter.endDate.date), 1)),\n };\n } else {\n actualFilter = {\n min: filter.min ? DateUtil.addDays(startOfToday(), filter.min) : startOfToday(),\n max: filter.max ? DateUtil.addDays(startOfTomorrow(), filter.max) : startOfTomorrow(),\n };\n }\n }\n\n if (actualFilter && actualFilter.hasOwnProperty('value')) {\n actualFilter = filter.value;\n }\n\n if (this.changeTimeout) {\n clearTimeout(this.changeTimeout);\n }\n\n this.changeTimeout = setTimeout(() => {\n if (actualFilter === '') {\n actualFilter = undefined;\n }\n this._sort.filter(this.id, actualFilter, this.config.transforms.filter);\n this.changeDetectorRef.markForCheck();\n }, 300);\n }\n\n public clearFilter(): void {\n this.filter = undefined;\n this.activeDateFilter = undefined;\n this.filterData();\n }\n\n private getNextSortDirection(direction: string): string {\n if (!direction) {\n return 'asc';\n }\n if (direction === 'asc') {\n return 'desc';\n }\n return 'asc';\n }\n\n private getDefaultDateFilterOptions(): SimpleTableColumnFilterOption[] {\n const opts: SimpleTableColumnFilterOption[] = [\n { label: this.labels.past1Day, min: -1, max: 0 },\n { label: this.labels.past7Days, min: -7, max: 0 },\n { label: this.labels.past30Days, min: -30, max: 0 },\n { label: this.labels.past90Days, min: -90, max: 0 },\n { label: this.labels.past1Year, min: -366, max: 0 },\n { label: this.labels.next1Day, min: 0, max: 1 },\n { label: this.labels.next7Days, min: 0, max: 7 },\n { label: this.labels.next30Days, min: 0, max: 30 },\n { label: this.labels.next90Days, min: 0, max: 90 },\n { label: this.labels.next1Year, min: 0, max: 366 },\n ];\n return opts;\n }\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { NovoSimplePaginationEvent } from './interfaces';\nimport { NovoActivityTableState } from './state';\n\nconst DEFAULT_PAGE_SIZE = 50;\n\n@Component({\n selector: 'novo-simple-table-pagination',\n template: `\n <div class=\"novo-simple-table-pagination-size\">\n <novo-tiles\n *ngIf=\"displayedPageSizeOptions.length > 1\"\n [(ngModel)]=\"pageSize\"\n [options]=\"displayedPageSizeOptions\"\n (onChange)=\"changePageSize($event)\"\n data-automation-id=\"novo-simple-table-pagination-tiles\"\n >\n </novo-tiles>\n <div *ngIf=\"displayedPageSizeOptions.length <= 1\">{{ pageSize }}</div>\n </div>\n\n <div class=\"novo-simple-table-range-label-long\" data-automation-id=\"novo-simple-table-pagination-range-label-long\">\n {{ longRangeLabel }}\n </div>\n <div class=\"novo-simple-table-range-label-short\" data-automation-id=\"novo-simple-table-pagination-range-label-short\">\n {{ shortRangeLabel }}\n </div>\n\n <novo-button\n theme=\"dialogue\"\n type=\"button\"\n class=\"novo-simple-table-pagination-navigation-previous\"\n (click)=\"previousPage()\"\n icon=\"previous\"\n side=\"left\"\n [disabled]=\"!hasPreviousPage()\"\n data-automation-id=\"novo-simple-table-pagination-previous\"\n >\n <span>{{ labels.previous }}</span>\n </novo-button>\n <novo-button\n theme=\"dialogue\"\n type=\"button\"\n class=\"novo-simple-table-pagination-navigation-next\"\n (click)=\"nextPage()\"\n icon=\"next\"\n side=\"right\"\n [disabled]=\"!hasNextPage()\"\n data-automation-id=\"novo-simple-table-pagination-next\"\n >\n <span>{{ labels.next }}</span>\n </novo-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleTablePagination implements OnInit, OnDestroy {\n private _initialized: boolean;\n\n @Input()\n get page(): number {\n return this._page;\n }\n set page(page: number) {\n this._page = page;\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n this.state.page = this._page;\n }\n _page: number = 0;\n\n @Input()\n get length(): number {\n return this._length;\n }\n set length(length: number) {\n this._length = length;\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n }\n _length: number = 0;\n\n @Input()\n get pageSize(): number {\n return this._pageSize;\n }\n set pageSize(pageSize: number) {\n this._pageSize = pageSize;\n this.updateDisplayedPageSizeOptions();\n this.state.pageSize = this._pageSize;\n }\n private _pageSize: number;\n\n @Input()\n get pageSizeOptions(): number[] {\n return this._pageSizeOptions;\n }\n set pageSizeOptions(pageSizeOptions: number[]) {\n this._pageSizeOptions = pageSizeOptions;\n this.updateDisplayedPageSizeOptions();\n }\n private _pageSizeOptions: number[] = [];\n\n @Output()\n pageChange = new EventEmitter<NovoSimplePaginationEvent>();\n\n public displayedPageSizeOptions: number[];\n public longRangeLabel: string;\n public shortRangeLabel: string;\n\n private resetSubscription: Subscription;\n\n constructor(private changeDetectorRef: ChangeDetectorRef, public labels: NovoLabelService, private state: NovoActivityTableState) {\n if (state && state.onReset) {\n this.resetSubscription = this.state.onReset.subscribe((clear: boolean) => {\n if (clear) {\n this.page = 0;\n this.changeDetectorRef.markForCheck();\n }\n });\n }\n }\n\n public ngOnInit(): void {\n this._initialized = true;\n this.updateDisplayedPageSizeOptions();\n }\n\n public ngOnDestroy(): void {\n this.resetSubscription.unsubscribe();\n }\n\n public nextPage(): void {\n if (!this.hasNextPage()) {\n return;\n }\n this.page++;\n this.emitPageEvent();\n }\n\n public previousPage(): void {\n if (!this.hasPreviousPage()) {\n return;\n }\n this.page--;\n this.emitPageEvent();\n }\n\n public hasPreviousPage(): boolean {\n return this.page >= 1 && this.pageSize !== 0;\n }\n\n public hasNextPage(): boolean {\n const numberOfPages = Math.ceil(this.length / this.pageSize) - 1;\n return this.page < numberOfPages && this.pageSize !== 0;\n }\n\n public changePageSize(pageSize: number): void {\n this.page = 0;\n this.pageSize = pageSize;\n this.emitPageEvent();\n }\n\n private updateDisplayedPageSizeOptions(): void {\n if (!this._initialized) {\n return;\n }\n if (!this.pageSize) {\n this._pageSize = this.pageSizeOptions.length !== 0 ? this.pageSizeOptions[0] : DEFAULT_PAGE_SIZE;\n }\n this.displayedPageSizeOptions = this.pageSizeOptions.slice();\n if (this.displayedPageSizeOptions.indexOf(this.pageSize) === -1) {\n this.displayedPageSizeOptions.push(this.pageSize);\n }\n this.displayedPageSizeOptions.sort((a, b) => a - b);\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n }\n\n private emitPageEvent(): void {\n const event = {\n page: this.page,\n pageSize: this.pageSize,\n length: this.length,\n };\n this.pageChange.next(event);\n this.state.page = this.page;\n this.state.pageSize = this.pageSize;\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n this.state.updates.next(event);\n }\n}\n","// NG2\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewEncapsulation } from '@angular/core';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\n\ninterface Page {\n num: number;\n text: string;\n active: boolean;\n}\n@Component({\n selector: 'novo-pagination',\n template: `\n <ng-container *ngIf=\"rowOptions.length > 1\">\n <h5 class=\"rows\">{{ label }}</h5>\n <novo-select\n class=\"table-pagination-select\"\n [options]=\"rowOptions\"\n [placeholder]=\"labels.select\"\n [(ngModel)]=\"itemsPerPage\"\n (onSelect)=\"onPageSizeChanged($event)\"\n data-automation-id=\"pager-select\"\n ></novo-select>\n <span class=\"spacer\"></span>\n </ng-container>\n <ul class=\"pager\" data-automation-id=\"pager\">\n <li class=\"page\" (click)=\"selectPage(page - 1)\" [ngClass]=\"{ disabled: noPrevious() }\">\n <i class=\"bhi-previous\" data-automation-id=\"pager-previous\"></i>\n </li>\n <li\n class=\"page\"\n [ngClass]=\"{ active: p.active }\"\n [class.disabled]=\"disablePageSelection\"\n *ngFor=\"let p of pages\"\n (click)=\"selectPage(p.num, $event)\"\n >\n {{ p.text }}\n </li>\n <li class=\"page\" (click)=\"selectPage(page + 1)\" [ngClass]=\"{ disabled: noNext() }\">\n <i class=\"bhi-next\" data-automation-id=\"pager-next\"></i>\n </li>\n </ul>\n `,\n styleUrls: ['./PaginationOld.scss'],\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n})\nexport class Pagination implements OnInit, OnChanges {\n @Input()\n page: number;\n @Input()\n totalItems: number;\n @Input()\n itemsPerPage = 10;\n @Input()\n rowOptions;\n @Input()\n label: string;\n @Input()\n get disablePageSelection(): boolean {\n return this.pageSelectDisabled;\n }\n set disablePageSelection(val: boolean) {\n this.pageSelectDisabled = coerceBooleanProperty(val);\n }\n @Output()\n pageChange = new EventEmitter();\n @Output()\n itemsPerPageChange = new EventEmitter();\n @Output()\n onPageChange = new EventEmitter();\n\n public pageSelectDisabled: boolean;\n maxPagesDisplayed = 5;\n totalPages: number;\n pages: Array<Page>;\n\n constructor(public labels: NovoLabelService) {}\n\n ngOnInit() {\n this.label = this.label || this.labels.itemsPerPage;\n this.rowOptions = this.rowOptions || this.getDefaultRowOptions();\n }\n\n ngOnChanges(changes?: SimpleChanges) {\n this.page = this.page || 1;\n this.totalPages = this.calculateTotalPages();\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getDefaultRowOptions() {\n return [\n { value: 10, label: '10' },\n { value: 25, label: '25' },\n { value: 50, label: '50' },\n { value: 100, label: '100' },\n ];\n }\n\n onPageSizeChanged(event) {\n this.page = 1;\n this.itemsPerPage = event.selected;\n this.totalPages = this.calculateTotalPages();\n this.pages = this.getPages(this.page, this.totalPages);\n this.pageChange.emit(this.page);\n this.itemsPerPageChange.emit(this.itemsPerPage);\n this.onPageChange.emit({\n page: this.page,\n itemsPerPage: this.itemsPerPage,\n });\n }\n\n selectPage(page: number, event?: MouseEvent) {\n if (event) {\n event.preventDefault();\n }\n\n this.page = page;\n this.pages = this.getPages(this.page, this.totalPages);\n this.pageChange.emit(this.page);\n this.onPageChange.emit({\n page: this.page,\n itemsPerPage: this.itemsPerPage,\n });\n }\n\n noPrevious() {\n return this.page === 1;\n }\n\n noNext() {\n return this.page === this.totalPages;\n }\n\n // Create page object used in template\n makePage(num: number, text: string, isActive: boolean) {\n return { num, text, active: isActive } as Page;\n }\n\n getPages(currentPage: number, totalPages: number) {\n const pages: Array<Page> = [];\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized = this.maxPagesDisplayed < totalPages;\n\n // recompute if maxPagesDisplayed\n if (isMaxSized) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxPagesDisplayed / 2), 1);\n endPage = startPage + this.maxPagesDisplayed - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxPagesDisplayed + 1;\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n return pages;\n }\n\n calculateTotalPages() {\n const totalPages = this.itemsPerPage < 1 ? 1 : Math.ceil(this.totalItems / this.itemsPerPage);\n return Math.max(totalPages || 0, 1);\n }\n}\n","import { CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef, CDK_ROW_TEMPLATE } from '@angular/cdk/table';\nimport { ChangeDetectionStrategy, Component, Directive, HostBinding, Input } from '@angular/core';\n\n/** Workaround for https://github.com/angular/angular/issues/17849 */\nexport const _NovoHeaderRowDef = CdkHeaderRowDef;\nexport const _NovoCdkRowDef = CdkRowDef;\nexport const _NovoHeaderRow = CdkHeaderRow;\nexport const _NovoRow = CdkRow;\n\n@Directive({\n selector: '[novoSimpleHeaderRowDef]',\n providers: [{ provide: CdkHeaderRowDef, useExisting: NovoSimpleHeaderRowDef }],\n standalone: false,\n})\nexport class NovoSimpleHeaderRowDef extends _NovoHeaderRowDef {\n // TODO: add explicit constructor\n\n @Input('novoSimpleHeaderRowDef')\n columns;\n}\n\n@Directive({\n selector: '[novoSimpleRowDef]',\n providers: [{ provide: CdkRowDef, useExisting: NovoSimpleRowDef }],\n standalone: false,\n})\nexport class NovoSimpleRowDef<T> extends _NovoCdkRowDef<T> {\n // TODO: add explicit constructor\n\n @Input('novoSimpleRowDefColumns')\n columns;\n}\n\n@Component({\n selector: 'novo-simple-header-row',\n template: CDK_ROW_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleHeaderRow extends _NovoHeaderRow {\n @HostBinding('class')\n public rowClass = 'novo-simple-header-row';\n @HostBinding('attr.role')\n public role = 'row';\n}\n\n@Component({\n selector: 'novo-simple-row',\n template: CDK_ROW_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleRow extends _NovoRow {\n @HostBinding('class')\n public rowClass = 'novo-simple-row';\n @HostBinding('attr.role')\n public role = 'row';\n}\n","import { DataSource } from '@angular/cdk/table';\nimport { ChangeDetectorRef } from '@angular/core';\nimport { merge, Observable, of } from 'rxjs';\nimport { catchError, map, startWith, switchMap } from 'rxjs/operators';\nimport { Helpers } from 'novo-elements/utils';\nimport { NovoActivityTableState } from './state';\n\nexport interface ActivityTableService<T> {\n getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }>;\n}\n\nexport abstract class RemoteActivityTableService<T> implements ActivityTableService<T> {\n abstract getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }>;\n}\n\nexport class StaticActivityTableService<T> implements ActivityTableService<T> {\n constructor(private data: T[] = []) {}\n\n public getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number = 0,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }> {\n let ret: T[] = Helpers.deepClone(this.data);\n if (ret.length !== 0) {\n if (globalSearch) {\n ret = ret.filter((item) => Object.keys(item).some((key) => `${item[key]}`.toLowerCase().includes(globalSearch.toLowerCase())));\n }\n if (filter) {\n const value = Helpers.isString(filter.value) ? filter.value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&') : filter.value;\n ret = ret.filter(Helpers.filterByField(filter.id, value));\n }\n if (sort) {\n ret = ret.sort(Helpers.sortByField(sort.id, sort.value === 'desc'));\n }\n if (!Helpers.isBlank(page) && !Helpers.isBlank(pageSize)) {\n ret = ret.slice(page * pageSize, (page + 1) * pageSize);\n }\n }\n return of({ results: ret, total: this.data.length });\n }\n}\n\nexport class ActivityTableDataSource<T> extends DataSource<T> {\n public total = 0;\n public current = 0;\n public loading = false;\n public pristine = true;\n\n get totallyEmpty(): boolean {\n return this.total === 0;\n }\n\n get currentlyEmpty(): boolean {\n return this.current === 0;\n }\n\n constructor(private tableService: ActivityTableService<T>, private state: NovoActivityTableState, private ref: ChangeDetectorRef) {\n super();\n }\n\n public connect(): Observable<any[]> {\n const displayDataChanges: any = [this.state.updates];\n return merge(...displayDataChanges).pipe(\n startWith(null),\n switchMap(() => {\n this.pristine = false;\n this.loading = true;\n return this.tableService.getTableResults(\n this.state.sort,\n this.state.filter,\n this.state.page,\n this.state.pageSize,\n this.state.globalSearch,\n this.state.outsideFilter,\n );\n }),\n map((data: { results: T[]; total: number }) => {\n this.loading = false;\n this.total = data.total;\n this.current = data.results.length;\n setTimeout(() => {\n this.ref.markForCheck();\n });\n return data.results;\n }),\n catchError((error) => {\n console.error(error);\n this.loading = false;\n return of(null);\n }),\n );\n }\n\n public disconnect(): void {}\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { _VIEW_REPEATER_STRATEGY, _DisposeViewRepeaterStrategy } from '@angular/cdk/collections';\nimport { CdkTable, CDK_TABLE, CDK_TABLE_TEMPLATE, _COALESCED_STYLE_SCHEDULER, _CoalescedStyleScheduler } from '@angular/cdk/table';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { notify } from 'novo-elements/utils';\nimport { SimpleTableActionColumn, SimpleTableColumn, SimpleTablePaginationOptions, SimpleTableSearchOptions } from './interfaces';\nimport { NovoActivityTableState } from './state';\nimport { ActivityTableDataSource, ActivityTableService } from './table-source';\n\n@Component({\n selector: 'novo-simple-table',\n template: CDK_TABLE_TEMPLATE,\n styleUrls: ['./table.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: CDK_TABLE, useExisting: NovoTable }],\n standalone: false,\n})\nexport class NovoTable<T> extends CdkTable<T> {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: 'novo-activity-table-actions',\n standalone: false,\n})\nexport class NovoActivityTableActions {}\n\n@Directive({\n selector: 'novo-activity-table-custom-header',\n standalone: false,\n})\nexport class NovoActivityTableCustomHeader {}\n\n@Directive({\n selector: 'novo-activity-table-custom-filter',\n standalone: false,\n})\nexport class NovoActivityTableCustomFilter {}\n\n@Directive({\n selector: 'novo-activity-table-empty-message',\n standalone: false,\n})\nexport class NovoActivityTableEmptyMessage {}\n\n@Directive({\n selector: 'novo-activity-table-no-results-message',\n standalone: false,\n})\nexport class NovoActivityTableNoResultsMessage {}\n\n@Component({\n selector: 'novo-activity-table',\n template: `\n <div *ngIf=\"debug\">\n <p>Total: {{ dataSource?.total }}</p>\n <p>Current: {{ dataSource?.current }}</p>\n <p>Totally Empty: {{ dataSource?.totallyEmpty }}</p>\n <p>Currently Empty: {{ dataSource?.currentlyEmpty }}</p>\n <p>Loading (DataSource): {{ dataSource?.loading }}</p>\n <p>User Filtered: {{ state.userFiltered }}</p>\n <p>Loading (Table): {{ loading }}</p>\n </div>\n <header *ngIf=\"(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader\">\n <ng-content select=\"[novo-activity-table-custom-header]\"></ng-content>\n <novo-search\n alwaysOpen=\"true\"\n (searchChanged)=\"onSearchChange($event)\"\n [(ngModel)]=\"state.globalSearch\"\n *ngIf=\"!hideGlobalSearch\"\n [placeholder]=\"searchOptions?.placeholder\"\n [hint]=\"searchOptions?.tooltip\"\n >\n </novo-search>\n <novo-simple-table-pagination\n *ngIf=\"paginationOptions\"\n [length]=\"dataSource?.total\"\n [page]=\"paginationOptions.page\"\n [pageSize]=\"paginationOptions.pageSize\"\n [pageSizeOptions]=\"paginationOptions.pageSizeOptions\"\n >\n </novo-simple-table-pagination>\n <div class=\"novo-activity-table-actions\">\n <ng-content select=\"[novo-activity-table-actions]\"></ng-content>\n </div>\n </header>\n <div class=\"novo-activity-table-loading-mask\" *ngIf=\"dataSource?.loading || loading\" data-automation-id=\"novo-activity-table-loading\">\n <novo-loading></novo-loading>\n </div>\n <div class=\"novo-activity-table-filter-container\">\n <div class=\"novo-activity-table-custom-filter\" *ngIf=\"customFilter\">\n <ng-content select=\"[novo-activity-table-custom-filter]\"></ng-content>\n </div>\n <div class=\"novo-activity-table-container\">\n <novo-simple-table\n *ngIf=\"columns?.length > 0\"\n [dataSource]=\"dataSource\"\n novoSortFilter\n novoSelection\n [class.empty]=\"dataSource?.currentlyEmpty && state.userFiltered\"\n [hidden]=\"dataSource?.totallyEmpty && !state.userFiltered\">\n <ng-content></ng-content>\n <ng-container novoSimpleColumnDef=\"selection\">\n <novo-simple-checkbox-header-cell *novoSimpleHeaderCellDef></novo-simple-checkbox-header-cell>\n <novo-simple-checkbox-cell *novoSimpleCellDef=\"let row; let i = index\" [row]=\"row\" [index]=\"i\"></novo-simple-checkbox-cell>\n </ng-container>\n <ng-container *ngFor=\"let column of actionColumns\" [novoSimpleColumnDef]=\"column.id\">\n <novo-simple-empty-header-cell\n [class.button-header-cell]=\"!column.options\"\n [class.dropdown-header-cell]=\"column.options\"\n *novoSimpleHeaderCellDef\n ></novo-simple-empty-header-cell>\n <novo-simple-action-cell *novoSimpleCellDef=\"let row; let i = index\" [row]=\"row\" [column]=\"column\"></novo-simple-action-cell>\n </ng-container>\n <ng-container *ngFor=\"let column of columns\" [novoSimpleColumnDef]=\"column.id\">\n <novo-simple-header-cell\n *novoSimpleHeaderCellDef\n [column]=\"column\"\n [novo-simple-cell-config]=\"column.config\"\n [defaultSort]=\"defaultSort\"\n >{{ column.label }}</novo-simple-header-cell>\n <novo-simple-cell *novoSimpleCellDef=\"let row\" [column]=\"column\" [row]=\"row\"></novo-simple-cell>\n </ng-container>\n <novo-simple-header-row *novoSimpleHeaderRowDef=\"displayedColumns\"></novo-simple-header-row>\n <novo-simple-row *novoSimpleRowDef=\"let row; columns: displayedColumns\"></novo-simple-row>\n </novo-simple-table>\n <div\n class=\"novo-activity-table-no-results-container\"\n *ngIf=\"dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine\"\n >\n <div #filtered><ng-content select=\"[novo-activity-table-no-results-message]\"></ng-content></div>\n <div class=\"novo-activity-table-empty-message\" *ngIf=\"filtered.childNodes.length == 0\">\n <h4><i class=\"bhi-search-question\"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </div>\n <div\n class=\"novo-activity-table-empty-container\"\n *ngIf=\"dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine\"\n >\n <div #empty><ng-content select=\"[novo-activity-table-empty-message]\"></ng-content></div>\n <div class=\"novo-activity-table-empty-message\" *ngIf=\"empty.childNodes.length == 0\">\n <h4><i class=\"bhi-search-question\"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./table.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n NovoActivityTableState,\n { provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },\n { provide: _COALESCED_STYLE_SCHEDULER, useClass: _CoalescedStyleScheduler },\n ],\n standalone: false,\n})\nexport class NovoActivityTable<T> implements AfterContentInit, OnChanges, OnDestroy {\n @HostBinding('class.global-search-hidden')\n globalSearchHiddenClassToggle: boolean = false;\n\n @Input()\n activityService: ActivityTableService<T>;\n @Input()\n columns: SimpleTableColumn<T>[];\n @Input()\n displayedColumns: string[];\n @Input()\n actionColumns: SimpleTableActionColumn<T>[];\n @Input()\n paginationOptions: SimpleTablePaginationOptions;\n @Input()\n searchOptions: SimpleTableSearchOptions;\n @Input()\n defaultSort: { id: string; value: string };\n @Input()\n outsideFilter: EventEmitter<any>;\n\n @Input()\n set customFilter(v: boolean) {\n this._customFilter = coerceBooleanProperty(v);\n }\n get customFilter() {\n return this._customFilter;\n }\n private _customFilter: boolean;\n\n @Input()\n set forceShowHeader(v: boolean) {\n this._forceShowHeader = coerceBooleanProperty(v);\n }\n get forceShowHeader() {\n return this._forceShowHeader;\n }\n private _forceShowHeader: boolean;\n\n @Input()\n set hideGlobalSearch(v: boolean) {\n this._hideGlobalSearch = coerceBooleanProperty(v);\n this.globalSearchHiddenClassToggle = this._hideGlobalSearch;\n }\n get hideGlobalSearch() {\n return this._hideGlobalSearch;\n }\n private _hideGlobalSearch: boolean;\n\n @Input()\n set debug(v: boolean) {\n this._debug = coerceBooleanProperty(v);\n }\n get debug() {\n return this._debug;\n }\n private _debug: boolean;\n\n public dataSource: ActivityTableDataSource<T>;\n public loading: boolean = true;\n\n private outsideFilterSubscription: Subscription;\n\n @HostBinding('class.empty')\n get empty() {\n return this.dataSource && this.dataSource.totallyEmpty;\n }\n\n @HostBinding('class.loading')\n get loadingClass() {\n return this.loading || (this.dataSource && this.dataSource.loading);\n }\n\n constructor(public labels: NovoLabelService, private ref: ChangeDetectorRef, public state: NovoActivityTableState) {\n notify('[Deprecated]: The simple table is deprecated. Please migrate to novo-data-tables!');\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n this.loading = changes.activityService && !changes.activityService.currentValue;\n this.ref.detectChanges();\n if (changes.activityService && changes.activityService.currentValue) {\n this.loading = false;\n this.dataSource = new ActivityTableDataSource<T>(this.activityService, this.state, this.ref);\n this.ref.detectChanges();\n }\n if (changes.outsideFilter && changes.outsideFilter.currentValue) {\n if (!this.outsideFilterSubscription) {\n this.outsideFilterSubscription = this.outsideFilter.subscribe((filter: any) => {\n this.state.outsideFilter = filter;\n this.state.updates.next({ globalSearch: this.state.globalSearch, filter: this.state.filter, sort: this.state.sort });\n this.ref.markForCheck();\n });\n }\n }\n }\n\n public ngOnDestroy(): void {\n if (this.outsideFilterSubscription) {\n this.outsideFilterSubscription.unsubscribe();\n }\n }\n\n public ngAfterContentInit(): void {\n if (this.paginationOptions && !this.paginationOptions.page) {\n this.paginationOptions.page = 0;\n }\n if (this.paginationOptions && !this.paginationOptions.pageSize) {\n this.paginationOptions.pageSize = 50;\n }\n if (this.paginationOptions && !this.paginationOptions.pageSizeOptions) {\n this.paginationOptions.pageSizeOptions = [10, 25, 50, 100];\n }\n this.state.page = this.paginationOptions ? this.paginationOptions.page : undefined;\n this.state.pageSize = this.paginationOptions ? this.paginationOptions.pageSize : undefined;\n this.ref.markForCheck();\n }\n\n public onSearchChange(term: string): void {\n this.state.globalSearch = term;\n this.state.reset(false, true);\n this.state.updates.next({ globalSearch: term, filter: this.state.filter, sort: this.state.sort });\n }\n}\n","import { CdkTableModule } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoCheckboxModule } from 'novo-elements/elements/checkbox';\nimport { NovoCommonModule, NovoOptionModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoDropdownModule } from 'novo-elements/elements/dropdown';\nimport { NovoFormExtrasModule } from 'novo-elements/elements/form';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { NovoSearchBoxModule } from 'novo-elements/elements/search';\nimport { NovoSelectModule } from 'novo-elements/elements/select';\nimport { NovoTilesModule } from 'novo-elements/elements/tiles';\nimport {\n NovoSimpleActionCell,\n NovoSimpleCell,\n NovoSimpleCellDef,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSimpleColumnDef,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleHeaderCellDef,\n} from './cell';\nimport { NovoSimpleCellHeader, NovoSimpleFilterFocus } from './cell-header';\nimport { NovoSimpleTablePagination } from './pagination';\nimport { Pagination } from './PaginationOld';\nimport { NovoSimpleHeaderRow, NovoSimpleHeaderRowDef, NovoSimpleRow, NovoSimpleRowDef } from './row';\nimport { NovoSelection, NovoSortFilter } from './sort';\nimport { NovoActivityTableState } from './state';\nimport {\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n NovoActivityTableCustomHeader,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoTable,\n} from './table';\n\n@NgModule({\n imports: [\n NovoDatePickerModule,\n CdkTableModule,\n CommonModule,\n FormsModule,\n NovoCommonModule,\n NovoButtonModule,\n NovoDropdownModule,\n NovoFormExtrasModule,\n NovoLoadingModule,\n NovoTilesModule,\n NovoSearchBoxModule,\n NovoSelectModule,\n NovoCheckboxModule,\n NovoOptionModule,\n ],\n exports: [\n NovoTable,\n NovoSimpleCellDef,\n NovoSimpleHeaderCellDef,\n NovoSimpleColumnDef,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoSimpleHeaderRowDef,\n NovoSimpleRowDef,\n NovoSimpleCellHeader,\n NovoSortFilter,\n NovoSimpleActionCell,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleCell,\n NovoSimpleHeaderRow,\n NovoSimpleRow,\n NovoSimpleFilterFocus,\n NovoSimpleTablePagination,\n NovoActivityTableCustomHeader,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSelection,\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n Pagination,\n ],\n declarations: [\n NovoTable,\n NovoSimpleCellDef,\n NovoSimpleHeaderCellDef,\n NovoSimpleColumnDef,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoSimpleHeaderRowDef,\n NovoSimpleRowDef,\n NovoSimpleCellHeader,\n NovoSortFilter,\n NovoSimpleActionCell,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleCell,\n NovoSimpleHeaderRow,\n NovoSimpleRow,\n NovoSimpleFilterFocus,\n NovoSimpleTablePagination,\n NovoActivityTableCustomHeader,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSelection,\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n Pagination,\n ],\n providers: [NovoActivityTableState],\n})\nexport class NovoSimpleTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NovoActivityTableState","i2.NovoSelection","i5","i7","i8","i1","i2.NovoActivityTableState","i3.NovoSortFilter","i4","i9","i10","i3","i6","i2","i3.NovoActivityTableState","i8.NovoSimpleCellDef","i8.NovoSimpleHeaderCellDef","i8.NovoSimpleColumnDef","i9.NovoSimpleHeaderRowDef","i9.NovoSimpleRowDef","i10.NovoSimpleCellHeader","i11.NovoSortFilter","i8.NovoSimpleActionCell","i8.NovoSimpleEmptyHeaderCell","i8.NovoSimpleHeaderCell","i8.NovoSimpleCell","i9.NovoSimpleHeaderRow","i9.NovoSimpleRow","i12.NovoSimpleTablePagination","i8.NovoSimpleCheckboxCell","i8.NovoSimpleCheckboxHeaderCell","i11.NovoSelection"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAa,sBAAsB,CAAA;IACjC,OAAO,gBAAgB,CAAI,IAAY,EAAA;AACrC,QAAA,MAAM,GAAG,GAAG,CAAC,IAAO,KAAY;;AAE9B,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,SAAC;AACD,QAAA,OAAO,GAAG;;IAGZ,OAAO,YAAY,CAAI,IAAY,EAAA;AACjC,QAAA,MAAM,GAAG,GAAG,CAAC,IAAO,KAAY;YAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,GAAG,EAAE;AACpE,SAAC;AACD,QAAA,OAAO,GAAG;;AAEb;;MCXY,sBAAsB,CAAA;AADnC,IAAA,WAAA,GAAA;AAEE,QAAA,IAAA,CAAA,EAAE,GAAW,IAAI,CAAC,MAAM,EAAE;QAC1B,IAAI,CAAA,IAAA,GAAkC,SAAS;QAC/C,IAAM,CAAA,MAAA,GAAkC,SAAS;QACjD,IAAI,CAAA,IAAA,GAAW,CAAC;QAChB,IAAQ,CAAA,QAAA,GAAW,SAAS;QAC5B,IAAY,CAAA,YAAA,GAAW,SAAS;AAChC,QAAA,IAAA,CAAA,YAAY,GAAwB,IAAI,GAAG,EAAkB;AAG7D,QAAA,IAAA,CAAA,OAAO,GAAwC,IAAI,YAAY,EAAyB;AACxF,QAAA,IAAA,CAAA,OAAO,GAA0B,IAAI,YAAY,EAAW;AAuB7D;AArBC,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;;AAGzE,IAAA,KAAK,CAAC,UAAA,GAAsB,IAAI,EAAE,kBAA4B,EAAA;QACnE,IAAI,CAAC,kBAAkB,EAAE;AACvB,YAAA,IAAI,CAAC,IAAI,GAAG,SAAS;AACrB,YAAA,IAAI,CAAC,YAAY,GAAG,SAAS;AAC7B,YAAA,IAAI,CAAC,MAAM,GAAG,SAAS;;AAEzB,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC;AACb,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE;AACzB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,UAAU,EAAE;AACd,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;AAChC,aAAA,CAAC;;;+GA/BK,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAtB,sBAAsB,EAAA,CAAA,CAAA;;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC;;;MCKY,cAAc,CAAA;AACzB,IAAA,WAAA,CAAoB,KAA6B,EAAA;QAA7B,IAAK,CAAA,KAAA,GAAL,KAAK;;AAElB,IAAA,MAAM,CAAC,EAAU,EAAE,KAAU,EAAE,SAAmB,EAAA;AACvD,QAAA,IAAI,MAAM;QACV,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC3B,MAAM,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;;aAC5B;YACL,MAAM,GAAG,SAAS;;AAEpB,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM;QAC1B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;AAC7B,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;;AAGrD,IAAA,IAAI,CAAC,EAAU,EAAE,KAAa,EAAE,SAAmB,EAAA;QACxD,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;AACrC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI;QACtB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;AAC7B,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;;+GAnBnD,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MA4BY,aAAa,CAAA;AAOxB,IAAA,WAAA,CAAmB,KAA6B,EAAA;QAA7B,IAAK,CAAA,KAAA,GAAL,KAAK;AALjB,QAAA,IAAA,CAAA,mBAAmB,GAAG,IAAI,YAAY,EAAW;AAEjD,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,GAAG,EAAkB;;IAKnC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAA;QACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC;;AAGpB,IAAA,UAAU,CAAC,EAAE,EAAA;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;AAClC,QAAA,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC;AAClC,QAAA,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,MAAK;YACrC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE;AACtC,gBAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC;;AAExC,SAAC,CAAC;;IAGG,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AACpB,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;;AAG1B,IAAA,MAAM,CAAC,EAAU,EAAE,QAAiB,EAAE,GAAQ,EAAA;QACnD,IAAI,QAAQ,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC;;aAC/B;YACL,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;;;AAI/B,IAAA,SAAS,CAAC,KAAc,EAAA;QAC7B,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,CAAiB,IAAI,CAAC,OAAO,CAAC;;aAC1D;AACL,YAAA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;;AAEjC,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC;;+GA3C3B,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;wFAGQ,mBAAmB,EAAA,CAAA;sBADzB;;;AChBH;AACO,MAAM,YAAY,GAAG;AACrB,MAAM,kBAAkB,GAAG;AAC3B,MAAM,cAAc,GAAG;AACvB,MAAM,eAAe,GAAG;AACxB,MAAM,SAAS,GAAG;AAOnB,MAAO,iBAAkB,SAAQ,YAAY,CAAA;+GAAtC,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,SAAA,EAHf,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAG3D,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qBAAqB;oBAC/B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAmB,iBAAA,EAAE,CAAC;AACpE,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;AAUK,MAAO,uBAAwB,SAAQ,kBAAkB,CAAA;+GAAlD,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAvB,uBAAuB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,SAAA,EAHrB,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAGvE,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,2BAA2B;oBACrC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAyB,uBAAA,EAAE,CAAC;AAChF,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;AAUK,MAAO,mBAAoB,SAAQ,cAAc,CAAA;AACrD,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;;IAEnB,IAAI,IAAI,CAAC,IAAY,EAAA;AACnB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;;AAE1B;;;;;AAKG;AACO,IAAA,aAAa,CAAC,KAAa,EAAA;;;QAGnC,IAAI,KAAK,EAAE;AACT,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;YAClB,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC;YAC/D,IAAI,CAAC,yBAAyB,EAAE;;;+GApBzB,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,qBAAA,EAAA,MAAA,CAAA,EAAA,EAAA,SAAA,EAHjB,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAG/D,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,mBAAA,EAAE,CAAC;AACxE,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;8BAGK,IAAI,EAAA,CAAA;sBADP,KAAK;uBAAC,qBAAqB;;AA4BxB,MAAO,oBAAwB,SAAQ,eAAe,CAAA;AAO1D,IAAA,WAAA,CAAY,SAAuB,EAAU,UAAsB,EAAU,QAAmB,EAAA;AAC9F,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QADe,IAAU,CAAA,UAAA,GAAV,UAAU;QAAsB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAL9E,IAAI,CAAA,IAAA,GAAG,cAAc;AAO1B,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;AAC7H,QAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,CAAA,YAAA,EAAe,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;QAC5F,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,yBAAyB,CAAC;;IAGjE,QAAQ,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;YAC5F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;YAC5F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;;;+GAlBjF,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;kIAGQ,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;gBAIjB,MAAM,EAAA,CAAA;sBADZ;;AAuBG,MAAO,yBAA0B,SAAQ,eAAe,CAAA;AAI5D,IAAA,WAAA,CAAY,SAAuB,EAAE,UAAsB,EAAE,QAAmB,EAAA;AAC9E,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QAHvB,IAAI,CAAA,IAAA,GAAG,cAAc;AAI1B,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;AAC7H,QAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,CAAA,YAAA,EAAe,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;QAC5F,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,+BAA+B,CAAC;;+GARnE,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAzB,yBAAyB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,+BAA+B;AACzC,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;kIAGQ,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;;AAgBpB,MAAO,4BAA6B,SAAQ,eAAe,CAAA;IAO/D,WACE,CAAA,SAAuB,EACvB,UAAsB,EACtB,QAAmB,EACnB,GAAsB,EACF,UAAyB,EAAA;AAE7C,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QAFR,IAAU,CAAA,UAAA,GAAV,UAAU;QAVzB,IAAI,CAAA,IAAA,GAAG,cAAc;QAErB,IAAS,CAAA,SAAA,GAAY,KAAK;AAW/B,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,+BAA+B,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;AACtI,QAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,CAAA,qBAAA,EAAwB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;QACrG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,kCAAkC,CAAC;AAE/E,QAAA,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAc,KAAI;AACvF,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK;YACtB,GAAG,CAAC,YAAY,EAAE;AACpB,SAAC,CAAC;;IAGG,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE;;AAGnC,IAAA,MAAM,CAAC,KAAc,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC;;+GA9BvB,4BAA4B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,4BAA4B,wKAH3B,0FAA0F,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,eAAA,EAAA,OAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,SAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAG3F,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBALxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kCAAkC;AAC5C,oBAAA,QAAQ,EAAE,0FAA0F;AACpG,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;0BAaI;yCAVI,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;;AAuCpB,MAAO,cAAkB,SAAQ,SAAS,CAAA;AAS9C,IAAA,WAAA,CAAY,SAAuB,EAAU,UAAsB,EAAU,QAAmB,EAAA;AAC9F,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QADe,IAAU,CAAA,UAAA,GAAV,UAAU;QAAsB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAP9E,IAAI,CAAA,IAAA,GAAG,UAAU;AAStB,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,eAAe,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;AACtH,QAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,CAAA,YAAA,EAAe,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;QAC5F,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,kBAAkB,CAAC;;IAG1D,QAAQ,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC3B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;AAE1F,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;YAC5F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;YAC5F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAI,EAAA,CAAA,CAAC;;;AAIrF,IAAA,OAAO,CAAC,KAAiB,EAAA;AAC9B,QAAA,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;AAC3B,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;;QAE/B;;+GAhCS,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,kMAJb,gHAAgH,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIjH,cAAc,EAAA,UAAA,EAAA,CAAA;kBAN1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,gHAAgH;oBAC1H,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;kIAGQ,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;gBAIjB,GAAG,EAAA,CAAA;sBADT;gBAGM,MAAM,EAAA,CAAA;sBADZ;;AAmCG,MAAO,sBAAuB,SAAQ,SAAS,CAAA;AAYnD,IAAA,WAAA,CAAmB,SAAuB,EAAE,UAAsB,EAAE,QAAmB,EAAqB,UAAyB,EAAA;AACnI,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QADX,IAAS,CAAA,SAAA,GAAT,SAAS;QAAgF,IAAU,CAAA,UAAA,GAAV,UAAU;QAV/G,IAAI,CAAA,IAAA,GAAG,UAAU;QAOjB,IAAQ,CAAA,QAAA,GAAY,KAAK;AAK9B,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,wBAAwB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;AAC/H,QAAA,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,CAAA,qBAAA,EAAwB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;QACrG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,2BAA2B,CAAC;AAExE,QAAA,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,KAAc,KAAI;AACvF,YAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACvB,SAAC,CAAC;;IAGG,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;QAC7D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;;IAG5E,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;AACrD,QAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE;;AAGnC,IAAA,MAAM,CAAC,KAAc,EAAA;QAC1B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;;+GAlCzD,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,yMAHrB,yFAAyF,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,eAAA,EAAA,OAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,SAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAG1F,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,yFAAyF;AACnG,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;0BAa2F;yCAVnF,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;gBAIjB,GAAG,EAAA,CAAA;sBADT;gBAGM,KAAK,EAAA,CAAA;sBADX;;AAoDG,MAAO,oBAAwB,SAAQ,SAAS,CAAA;AASpD,IAAA,WAAA,CAAY,SAAuB,EAAU,UAAsB,EAAU,QAAmB,EAAS,MAAwB,EAAA;AAC/H,QAAA,KAAK,CAAC,SAAS,EAAE,UAAU,CAAC;QADe,IAAU,CAAA,UAAA,GAAV,UAAU;QAAsB,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAAoB,IAAM,CAAA,MAAA,GAAN,MAAM;QAPxG,IAAI,CAAA,IAAA,GAAG,UAAU;AAStB,QAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,SAAS,CAAC,oBAAoB,CAAA,CAAE,CAAC;;IAGxH,QAAQ,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AACvB,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,2BAA2B,CAAC;;aAC7E;AACL,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,yBAAyB,CAAC;;;IAI7E,UAAU,CAAC,KAAoE,EAAE,GAAM,EAAA;AAC5F,QAAA,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE;AAC3B,YAAA,OAAO,IAAI;;AAEb,QAAA,IAAI,KAAK,CAAC,aAAa,EAAE;AACvB,YAAA,OAAO,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;;AAEjC,QAAA,OAAO,KAAK;;+GA7BH,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EAlBnB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;AAcX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,cAAA,EAAA,UAAA,EAAA,0BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,MAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBApBhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcX,EAAA,CAAA;oBACC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;mKAGQ,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;gBAIjB,GAAG,EAAA,CAAA;sBADT;gBAGM,MAAM,EAAA,CAAA;sBADZ;;;MC/OU,qBAAqB,CAAA;AAChC,IAAA,WAAA,CAAoB,OAAmB,EAAA;QAAnB,IAAO,CAAA,OAAA,GAAP,OAAO;;IAE3B,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE;;+GAJzB,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAArB,qBAAqB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MAoGY,oBAAoB,CAAA;AAO/B,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;;IAGrB,IAAI,MAAM,CAAC,CAAC,EAAA;QACV,IAAI,CAAC,CAAC,EAAE;YACN,IAAI,CAAC,OAAO,GAAG;AACb,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,YAAY,EAAE;AACZ,oBAAA,IAAI,EAAE,MAAM;AACb,iBAAA;aACF;;aACI;YACL,IAAI,CAAC,OAAO,GAAG;AACb,gBAAA,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3C,gBAAA,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC,UAAU,CAAC;AAC/C,gBAAA,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;AAC9B,gBAAA,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI;AAC9B,oBAAA,IAAI,EAAE,MAAM;AACb,iBAAA;aACF;AAED,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE;gBACnF,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,2BAA2B,EAAE;;;;IAwB5E,WACU,CAAA,iBAAoC,EACrC,MAAwB,EACvB,KAA6B,EAClB,KAAqB,EACrB,aAA2B,EAAA;QAJtC,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB;QAClB,IAAM,CAAA,MAAA,GAAN,MAAM;QACL,IAAK,CAAA,KAAA,GAAL,KAAK;QACM,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAAa,CAAA,aAAA,GAAb,aAAa;QAd3B,IAAI,CAAA,IAAA,GAAW,UAAU;QAIzB,IAAY,CAAA,YAAA,GAAY,KAAK;QAC7B,IAAU,CAAA,UAAA,GAAY,KAAK;QAC3B,IAAe,CAAA,eAAA,GAAY,KAAK;AAUrC,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAA6B,KAAI;AACrF,YAAA,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE;gBAC7C,IAAI,CAAC,IAAI,GAAG,CAAQ,KAAA,EAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAA,CAAE;AACvC,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;;iBACjB;AACL,gBAAA,IAAI,CAAC,IAAI,GAAG,UAAU;AACtB,gBAAA,IAAI,CAAC,UAAU,GAAG,KAAK;;AAEzB,YAAA,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE;AACjD,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;gBACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK;;iBAC5B;AACL,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,gBAAA,IAAI,CAAC,MAAM,GAAG,SAAS;;YAEzB,iBAAiB,CAAC,YAAY,EAAE;AAClC,SAAC,CAAC;;IAGG,QAAQ,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI;;AAEnC,QAAA,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE;YACvD,IAAI,CAAC,IAAI,GAAG,CAAQ,KAAA,EAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAA,CAAE;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;;;IAIlC,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE;;IAGnC,IAAI,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;;AAElC,QAAA,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,MAAK;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;AACtE,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;SACtC,EAAE,GAAG,CAAC;;IAGF,iBAAiB,CAAC,KAAY,EAAE,KAAc,EAAA;AACnD,QAAA,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;AAC3B,QAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC5B,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACrC,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;;AAGrB,IAAA,UAAU,CAAC,MAAY,EAAA;QAC5B,IAAI,YAAY,GAAG,MAAM;AACzB,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,EAAE;AACtD,YAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe;YACnE,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE;AACtC,gBAAA,YAAY,GAAG;oBACb,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBAC/C,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;iBACxF;;iBACI;AACL,gBAAA,YAAY,GAAG;oBACb,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,EAAE;oBAC/E,GAAG,EAAE,MAAM,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,eAAe,EAAE;iBACtF;;;QAIL,IAAI,YAAY,IAAI,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;AACxD,YAAA,YAAY,GAAG,MAAM,CAAC,KAAK;;AAG7B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;;AAGlC,QAAA,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,MAAK;AACnC,YAAA,IAAI,YAAY,KAAK,EAAE,EAAE;gBACvB,YAAY,GAAG,SAAS;;AAE1B,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;AACvE,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;SACtC,EAAE,GAAG,CAAC;;IAGF,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,MAAM,GAAG,SAAS;AACvB,QAAA,IAAI,CAAC,gBAAgB,GAAG,SAAS;QACjC,IAAI,CAAC,UAAU,EAAE;;AAGX,IAAA,oBAAoB,CAAC,SAAiB,EAAA;QAC5C,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,KAAK;;AAEd,QAAA,IAAI,SAAS,KAAK,KAAK,EAAE;AACvB,YAAA,OAAO,MAAM;;AAEf,QAAA,OAAO,KAAK;;IAGN,2BAA2B,GAAA;AACjC,QAAA,MAAM,IAAI,GAAoC;AAC5C,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AAChD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AACjD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;AACnD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;AACnD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE;AACnD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AAC/C,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;AAChD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;AAClD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;AAClD,YAAA,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE;SACnD;AACD,QAAA,OAAO,IAAI;;+GAlLF,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,CAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACpB,mBAAmB,EA1FlB,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,QAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,YAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,OAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,cAAA,EAAA,UAAA,EAAA,0BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,WAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EA9FU,qBAAqB,EAAA,QAAA,EAAA,yBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAmGrB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBA3FhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFX,EAAA,CAAA;oBACC,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;0BA6DI;;0BACA;yCA3DH,QAAQ,EAAA,CAAA;sBADP,SAAS;uBAAC,mBAAmB;gBAI9B,WAAW,EAAA,CAAA;sBADV;gBAIG,MAAM,EAAA,CAAA;sBADT,KAAK;uBAAC,yBAAyB;;;ACjIlC,MAAM,iBAAiB,GAAG,EAAE;MAoDf,yBAAyB,CAAA;AAGpC,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;;IAEnB,IAAI,IAAI,CAAC,IAAY,EAAA;AACnB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QAC5F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;QAC5F,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK;;AAI9B,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;;IAErB,IAAI,MAAM,CAAC,MAAc,EAAA;AACvB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;AACrB,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QAC5F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;;AAI9F,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS;;IAEvB,IAAI,QAAQ,CAAC,QAAgB,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;QACzB,IAAI,CAAC,8BAA8B,EAAE;QACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS;;AAItC,IAAA,IACI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB;;IAE9B,IAAI,eAAe,CAAC,eAAyB,EAAA;AAC3C,QAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe;QACvC,IAAI,CAAC,8BAA8B,EAAE;;AAavC,IAAA,WAAA,CAAoB,iBAAoC,EAAS,MAAwB,EAAU,KAA6B,EAAA;QAA5G,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB;QAA4B,IAAM,CAAA,MAAA,GAAN,MAAM;QAA4B,IAAK,CAAA,KAAA,GAAL,KAAK;QA5CxG,IAAK,CAAA,KAAA,GAAW,CAAC;QAYjB,IAAO,CAAA,OAAA,GAAW,CAAC;QAqBX,IAAgB,CAAA,gBAAA,GAAa,EAAE;AAGvC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAA6B;AASxD,QAAA,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE;AAC1B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAc,KAAI;gBACvE,IAAI,KAAK,EAAE;AACT,oBAAA,IAAI,CAAC,IAAI,GAAG,CAAC;AACb,oBAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;;AAEzC,aAAC,CAAC;;;IAIC,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;QACxB,IAAI,CAAC,8BAA8B,EAAE;;IAGhC,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE;;IAG/B,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE;YACvB;;QAEF,IAAI,CAAC,IAAI,EAAE;QACX,IAAI,CAAC,aAAa,EAAE;;IAGf,YAAY,GAAA;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE;YAC3B;;QAEF,IAAI,CAAC,IAAI,EAAE;QACX,IAAI,CAAC,aAAa,EAAE;;IAGf,eAAe,GAAA;QACpB,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;;IAGvC,WAAW,GAAA;AAChB,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAChE,OAAO,IAAI,CAAC,IAAI,GAAG,aAAa,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC;;AAGlD,IAAA,cAAc,CAAC,QAAgB,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC;AACb,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;QACxB,IAAI,CAAC,aAAa,EAAE;;IAGd,8BAA8B,GAAA;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB;;AAEF,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,iBAAiB;;QAElG,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE;AAC5D,QAAA,IAAI,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;YAC/D,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;;AAEnD,QAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACnD,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;QACrC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QAC5F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;;IAGtF,aAAa,GAAA;AACnB,QAAA,MAAM,KAAK,GAAG;YACZ,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;AACD,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;QAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QAC5F,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;QAC5F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;;+GAzIrB,yBAAyB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAL,IAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,EAhDxB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAH,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAN,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAU,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,YAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,uBAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIU,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAlDrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CX,EAAA,CAAA;oBACC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;yJAKK,IAAI,EAAA,CAAA;sBADP;gBAcG,MAAM,EAAA,CAAA;sBADT;gBAaG,QAAQ,EAAA,CAAA;sBADX;gBAYG,eAAe,EAAA,CAAA;sBADlB;gBAWD,UAAU,EAAA,CAAA;sBADT;;;AC3GH;MAgDa,UAAU,CAAA;AAWrB,IAAA,IACI,oBAAoB,GAAA;QACtB,OAAO,IAAI,CAAC,kBAAkB;;IAEhC,IAAI,oBAAoB,CAAC,GAAY,EAAA;AACnC,QAAA,IAAI,CAAC,kBAAkB,GAAG,qBAAqB,CAAC,GAAG,CAAC;;AActD,IAAA,WAAA,CAAmB,MAAwB,EAAA;QAAxB,IAAM,CAAA,MAAA,GAAN,MAAM;QAxBzB,IAAY,CAAA,YAAA,GAAG,EAAE;AAajB,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAE;AAE/B,QAAA,IAAA,CAAA,kBAAkB,GAAG,IAAI,YAAY,EAAE;AAEvC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAE;QAGjC,IAAiB,CAAA,iBAAA,GAAG,CAAC;;IAMrB,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY;QACnD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,oBAAoB,EAAE;;AAGlE,IAAA,WAAW,CAAC,OAAuB,EAAA;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE;AAC5C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;;IAGxD,oBAAoB,GAAA;QAClB,OAAO;AACL,YAAA,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;AAC1B,YAAA,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;AAC1B,YAAA,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;AAC1B,YAAA,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE;SAC7B;;AAGH,IAAA,iBAAiB,CAAC,KAAK,EAAA;AACrB,QAAA,IAAI,CAAC,IAAI,GAAG,CAAC;AACb,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ;AAClC,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE;AAC5C,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/C,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;AAChC,SAAA,CAAC;;IAGJ,UAAU,CAAC,IAAY,EAAE,KAAkB,EAAA;QACzC,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,cAAc,EAAE;;AAGxB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,YAAY,EAAE,IAAI,CAAC,YAAY;AAChC,SAAA,CAAC;;IAGJ,UAAU,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,IAAI,KAAK,CAAC;;IAGxB,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU;;;AAItC,IAAA,QAAQ,CAAC,GAAW,EAAE,IAAY,EAAE,QAAiB,EAAA;QACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAU;;IAGhD,QAAQ,CAAC,WAAmB,EAAE,UAAkB,EAAA;QAC9C,MAAM,KAAK,GAAgB,EAAE;;QAE7B,IAAI,SAAS,GAAG,CAAC;QACjB,IAAI,OAAO,GAAG,UAAU;AACxB,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,GAAG,UAAU;;QAGtD,IAAI,UAAU,EAAE;;YAEd,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7E,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC;;AAGhD,YAAA,IAAI,OAAO,GAAG,UAAU,EAAE;gBACxB,OAAO,GAAG,UAAU;gBACpB,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC;;;;AAKpD,QAAA,KAAK,IAAI,GAAG,GAAG,SAAS,EAAE,GAAG,IAAI,OAAO,EAAE,GAAG,EAAE,EAAE;AAC/C,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,KAAK,WAAW,CAAC;AACpE,YAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;AAElB,QAAA,OAAO,KAAK;;IAGd,mBAAmB,GAAA;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7F,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,CAAC;;+GA1H1B,UAAU,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAP,IAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,UAAU,EAnCT,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,gkCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAQ,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,eAAA,EAAA,aAAA,EAAA,aAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,cAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAKU,UAAU,EAAA,UAAA,EAAA,CAAA;kBArCtB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EACjB,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BX,EAAA,CAAA,EAAA,aAAA,EAEgB,iBAAiB,CAAC,IAAI,EAAA,UAAA,EACzB,KAAK,EAAA,MAAA,EAAA,CAAA,gkCAAA,CAAA,EAAA;uFAInB,IAAI,EAAA,CAAA;sBADH;gBAGD,UAAU,EAAA,CAAA;sBADT;gBAGD,YAAY,EAAA,CAAA;sBADX;gBAGD,UAAU,EAAA,CAAA;sBADT;gBAGD,KAAK,EAAA,CAAA;sBADJ;gBAGG,oBAAoB,EAAA,CAAA;sBADvB;gBAQD,UAAU,EAAA,CAAA;sBADT;gBAGD,kBAAkB,EAAA,CAAA;sBADjB;gBAGD,YAAY,EAAA,CAAA;sBADX;;;ACnEH;AACO,MAAM,iBAAiB,GAAG;AAC1B,MAAM,cAAc,GAAG;AACvB,MAAM,cAAc,GAAG;AACvB,MAAM,QAAQ,GAAG;AAOlB,MAAO,sBAAuB,SAAQ,iBAAiB,CAAA;+GAAhD,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAtB,sBAAsB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,wBAAA,EAAA,SAAA,CAAA,EAAA,EAAA,SAAA,EAHpB,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAGrE,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,0BAA0B;oBACpC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAwB,sBAAA,EAAE,CAAC;AAC9E,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;8BAKC,OAAO,EAAA,CAAA;sBADN,KAAK;uBAAC,wBAAwB;;AAS3B,MAAO,gBAAoB,SAAQ,cAAiB,CAAA;+GAA7C,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,yBAAA,EAAA,SAAA,CAAA,EAAA,EAAA,SAAA,EAHd,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAGzD,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAkB,gBAAA,EAAE,CAAC;AAClE,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;8BAKC,OAAO,EAAA,CAAA;sBADN,KAAK;uBAAC,yBAAyB;;AAU5B,MAAO,mBAAoB,SAAQ,cAAc,CAAA;AANvD,IAAA,WAAA,GAAA;;QAQS,IAAQ,CAAA,QAAA,GAAG,wBAAwB;QAEnC,IAAI,CAAA,IAAA,GAAG,KAAK;AACpB;+GALY,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAN/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;8BAGQ,QAAQ,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO;gBAGb,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;;AAUpB,MAAO,aAAc,SAAQ,QAAQ,CAAA;AAN3C,IAAA,WAAA,GAAA;;QAQS,IAAQ,CAAA,QAAA,GAAG,iBAAiB;QAE5B,IAAI,CAAA,IAAA,GAAG,KAAK;AACpB;+GALY,aAAa,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,WAAA,EAAA,WAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;8BAGQ,QAAQ,EAAA,CAAA;sBADd,WAAW;uBAAC,OAAO;gBAGb,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW;;;MCrCJ,0BAA0B,CAAA;AAS/C;MAEY,0BAA0B,CAAA;AACrC,IAAA,WAAA,CAAoB,OAAY,EAAE,EAAA;QAAd,IAAI,CAAA,IAAA,GAAJ,IAAI;;AAEjB,IAAA,eAAe,CACpB,IAAyD,EACzD,MAA2D,EAC3D,IAAA,GAAe,CAAC,EAChB,QAAgB,EAChB,YAAqB,EACrB,aAAmB,EAAA;QAEnB,IAAI,GAAG,GAAQ,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AAC3C,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,IAAI,YAAY,EAAE;AAChB,gBAAA,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;;YAEhI,IAAI,MAAM,EAAE;AACV,gBAAA,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK;AACjH,gBAAA,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;;YAE3D,IAAI,IAAI,EAAE;gBACR,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;;AAErE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACxD,gBAAA,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,QAAQ,CAAC;;;AAG3D,QAAA,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;;AAEvD;AAEK,MAAO,uBAA2B,SAAQ,UAAa,CAAA;AAM3D,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,KAAK,KAAK,CAAC;;AAGzB,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC;;AAG3B,IAAA,WAAA,CAAoB,YAAqC,EAAU,KAA6B,EAAU,GAAsB,EAAA;AAC9H,QAAA,KAAK,EAAE;QADW,IAAY,CAAA,YAAA,GAAZ,YAAY;QAAmC,IAAK,CAAA,KAAA,GAAL,KAAK;QAAkC,IAAG,CAAA,GAAA,GAAH,GAAG;QAbtG,IAAK,CAAA,KAAA,GAAG,CAAC;QACT,IAAO,CAAA,OAAA,GAAG,CAAC;QACX,IAAO,CAAA,OAAA,GAAG,KAAK;QACf,IAAQ,CAAA,QAAA,GAAG,IAAI;;IAcf,OAAO,GAAA;QACZ,MAAM,kBAAkB,GAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACpD,QAAA,OAAO,KAAK,CAAC,GAAG,kBAAkB,CAAC,CAAC,IAAI,CACtC,SAAS,CAAC,IAAI,CAAC,EACf,SAAS,CAAC,MAAK;AACb,YAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACrB,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,YAAA,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CACtC,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,MAAM,EACjB,IAAI,CAAC,KAAK,CAAC,IAAI,EACf,IAAI,CAAC,KAAK,CAAC,QAAQ,EACnB,IAAI,CAAC,KAAK,CAAC,YAAY,EACvB,IAAI,CAAC,KAAK,CAAC,aAAa,CACzB;AACH,SAAC,CAAC,EACF,GAAG,CAAC,CAAC,IAAqC,KAAI;AAC5C,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;YACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM;YAClC,UAAU,CAAC,MAAK;AACd,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,aAAC,CAAC;YACF,OAAO,IAAI,CAAC,OAAO;AACrB,SAAC,CAAC,EACF,UAAU,CAAC,CAAC,KAAK,KAAI;AACnB,YAAA,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;AACpB,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC;SAChB,CAAC,CACH;;AAGI,IAAA,UAAU;AAClB;;AC/EK,MAAO,SAAa,SAAQ,QAAW,CAAA;+GAAhC,SAAS,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAT,SAAS,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,SAAA,EAHP,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,kwBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,62UAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAGlD,SAAS,EAAA,UAAA,EAAA,CAAA;kBATrB,SAAS;+BACI,mBAAmB,EAAA,QAAA,EACnB,kBAAkB,EAEb,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAW,SAAA,EAAE,CAAC,EAAA,UAAA,EAC/C,KAAK,EAAA,MAAA,EAAA,CAAA,62UAAA,CAAA,EAAA;;MAUR,wBAAwB,CAAA;+GAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAxB,wBAAwB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,6BAA6B;AACvC,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MAOY,6BAA6B,CAAA;+GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA7B,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MAOY,6BAA6B,CAAA;+GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA7B,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MAOY,6BAA6B,CAAA;+GAA7B,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA7B,6BAA6B,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mCAAmC;AAC7C,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MAOY,iCAAiC,CAAA;+GAAjC,iCAAiC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjC,iCAAiC,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAjC,iCAAiC,EAAA,UAAA,EAAA,CAAA;kBAJ7C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,wCAAwC;AAClD,oBAAA,UAAU,EAAE,KAAK;AACpB,iBAAA;;MA6GY,iBAAiB,CAAA;IAqB5B,IACI,YAAY,CAAC,CAAU,EAAA;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,qBAAqB,CAAC,CAAC,CAAC;;AAE/C,IAAA,IAAI,YAAY,GAAA;QACd,OAAO,IAAI,CAAC,aAAa;;IAI3B,IACI,eAAe,CAAC,CAAU,EAAA;AAC5B,QAAA,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,CAAC,CAAC;;AAElD,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB;;IAI9B,IACI,gBAAgB,CAAC,CAAU,EAAA;AAC7B,QAAA,IAAI,CAAC,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,CAAC;AACjD,QAAA,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,iBAAiB;;AAE7D,IAAA,IAAI,gBAAgB,GAAA;QAClB,OAAO,IAAI,CAAC,iBAAiB;;IAI/B,IACI,KAAK,CAAC,CAAU,EAAA;AAClB,QAAA,IAAI,CAAC,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC;;AAExC,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;;AASpB,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY;;AAGxD,IAAA,IACI,YAAY,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;;AAGrE,IAAA,WAAA,CAAmB,MAAwB,EAAU,GAAsB,EAAS,KAA6B,EAAA;QAA9F,IAAM,CAAA,MAAA,GAAN,MAAM;QAA4B,IAAG,CAAA,GAAA,GAAH,GAAG;QAA4B,IAAK,CAAA,KAAA,GAAL,KAAK;QAvEzF,IAA6B,CAAA,6BAAA,GAAY,KAAK;QAyDvC,IAAO,CAAA,OAAA,GAAY,IAAI;QAe5B,MAAM,CAAC,mFAAmF,CAAC;;AAGtF,IAAA,WAAW,CAAC,OAAsB,EAAA;AACvC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,YAAY;AAC/E,QAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;QACxB,IAAI,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE;AACnE,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAuB,CAAI,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;AAC5F,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE;;QAE1B,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE;AAC/D,YAAA,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE;AACnC,gBAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,MAAW,KAAI;AAC5E,oBAAA,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM;AACjC,oBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;AACpH,oBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,iBAAC,CAAC;;;;IAKD,WAAW,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,yBAAyB,EAAE;AAClC,YAAA,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE;;;IAIzC,kBAAkB,GAAA;QACvB,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;AAC1D,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC;;QAEjC,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE;AAC9D,YAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GAAG,EAAE;;QAEtC,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;AACrE,YAAA,IAAI,CAAC,iBAAiB,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;;QAE5D,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,SAAS;QAClF,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,GAAG,SAAS;AAC1F,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;AAGlB,IAAA,cAAc,CAAC,IAAY,EAAA;AAChC,QAAA,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI;QAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;AAC7B,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;;+GAxHxF,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAK,IAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAPf,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,4BAAA,EAAA,oCAAA,EAAA,aAAA,EAAA,YAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;YACP,sBAAsB;AACtB,YAAA,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,4BAA4B,EAAE;AAC5E,YAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,QAAQ,EAAE,wBAAwB,EAAE;SAC9E,EArGS,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6FX,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,62UAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAN,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAN,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAU,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAT,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,aAAA,EAAA,YAAA,EAAA,OAAA,EAAA,OAAA,EAAA,eAAA,EAAA,cAAA,EAAA,cAAA,EAAA,MAAA,EAAA,UAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAjIU,SAAS,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAY,iBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,uBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,yBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,cAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,yBAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,sBAAA,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,4BAAA,EAAA,QAAA,EAAA,kCAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,aAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FA4IT,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBA1G7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EACrB,QAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6FX,EAAA,CAAA,EAAA,aAAA,EAEgB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;wBACP,sBAAsB;AACtB,wBAAA,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,4BAA4B,EAAE;AAC5E,wBAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,QAAQ,EAAE,wBAAwB,EAAE;AAC9E,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,MAAA,EAAA,CAAA,62UAAA,CAAA,EAAA;yJAInB,6BAA6B,EAAA,CAAA;sBAD5B,WAAW;uBAAC,4BAA4B;gBAIzC,eAAe,EAAA,CAAA;sBADd;gBAGD,OAAO,EAAA,CAAA;sBADN;gBAGD,gBAAgB,EAAA,CAAA;sBADf;gBAGD,aAAa,EAAA,CAAA;sBADZ;gBAGD,iBAAiB,EAAA,CAAA;sBADhB;gBAGD,aAAa,EAAA,CAAA;sBADZ;gBAGD,WAAW,EAAA,CAAA;sBADV;gBAGD,aAAa,EAAA,CAAA;sBADZ;gBAIG,YAAY,EAAA,CAAA;sBADf;gBAUG,eAAe,EAAA,CAAA;sBADlB;gBAUG,gBAAgB,EAAA,CAAA;sBADnB;gBAWG,KAAK,EAAA,CAAA;sBADR;gBAeG,KAAK,EAAA,CAAA;sBADR,WAAW;uBAAC,aAAa;gBAMtB,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,eAAe;;;MC7HjB,qBAAqB,CAAA;+GAArB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,iBA7B9B,SAAS;YACT,iBAAiB;YACjB,uBAAuB;YACvB,mBAAmB;YACnB,6BAA6B;YAC7B,iCAAiC;YACjC,sBAAsB;YACtB,gBAAgB;YAChB,oBAAoB;YACpB,cAAc;YACd,oBAAoB;YACpB,yBAAyB;YACzB,oBAAoB;YACpB,cAAc;YACd,mBAAmB;YACnB,aAAa;YACb,qBAAqB;YACrB,yBAAyB;YACzB,6BAA6B;YAC7B,sBAAsB;YACtB,4BAA4B;YAC5B,aAAa;YACb,iBAAiB;YACjB,wBAAwB;YACxB,6BAA6B;AAC7B,YAAA,UAAU,aArEV,oBAAoB;YACpB,cAAc;YACd,YAAY;YACZ,WAAW;YACX,gBAAgB;YAChB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,iBAAiB;YACjB,eAAe;YACf,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;AAClB,YAAA,gBAAgB,aAGhB,SAAS;YACT,iBAAiB;YACjB,uBAAuB;YACvB,mBAAmB;YACnB,6BAA6B;YAC7B,iCAAiC;YACjC,sBAAsB;YACtB,gBAAgB;YAChB,oBAAoB;YACpB,cAAc;YACd,oBAAoB;YACpB,yBAAyB;YACzB,oBAAoB;YACpB,cAAc;YACd,mBAAmB;YACnB,aAAa;YACb,qBAAqB;YACrB,yBAAyB;YACzB,6BAA6B;YAC7B,sBAAsB;YACtB,4BAA4B;YAC5B,aAAa;YACb,iBAAiB;YACjB,wBAAwB;YACxB,6BAA6B;YAC7B,UAAU,CAAA,EAAA,CAAA,CAAA;AAgCD,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,EAFrB,SAAA,EAAA,CAAC,sBAAsB,CAAC,YAvEjC,oBAAoB;YACpB,cAAc;YACd,YAAY;YACZ,WAAW;YACX,gBAAgB;YAChB,gBAAgB;YAChB,kBAAkB;YAClB,oBAAoB;YACpB,iBAAiB;YACjB,eAAe;YACf,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;YAClB,gBAAgB,CAAA,EAAA,CAAA,CAAA;;4FA4DP,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBA3EjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,oBAAoB;wBACpB,cAAc;wBACd,YAAY;wBACZ,WAAW;wBACX,gBAAgB;wBAChB,gBAAgB;wBAChB,kBAAkB;wBAClB,oBAAoB;wBACpB,iBAAiB;wBACjB,eAAe;wBACf,mBAAmB;wBACnB,gBAAgB;wBAChB,kBAAkB;wBAClB,gBAAgB;AACjB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,SAAS;wBACT,iBAAiB;wBACjB,uBAAuB;wBACvB,mBAAmB;wBACnB,6BAA6B;wBAC7B,iCAAiC;wBACjC,sBAAsB;wBACtB,gBAAgB;wBAChB,oBAAoB;wBACpB,cAAc;wBACd,oBAAoB;wBACpB,yBAAyB;wBACzB,oBAAoB;wBACpB,cAAc;wBACd,mBAAmB;wBACnB,aAAa;wBACb,qBAAqB;wBACrB,yBAAyB;wBACzB,6BAA6B;wBAC7B,sBAAsB;wBACtB,4BAA4B;wBAC5B,aAAa;wBACb,iBAAiB;wBACjB,wBAAwB;wBACxB,6BAA6B;wBAC7B,UAAU;AACX,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACZ,SAAS;wBACT,iBAAiB;wBACjB,uBAAuB;wBACvB,mBAAmB;wBACnB,6BAA6B;wBAC7B,iCAAiC;wBACjC,sBAAsB;wBACtB,gBAAgB;wBAChB,oBAAoB;wBACpB,cAAc;wBACd,oBAAoB;wBACpB,yBAAyB;wBACzB,oBAAoB;wBACpB,cAAc;wBACd,mBAAmB;wBACnB,aAAa;wBACb,qBAAqB;wBACrB,yBAAyB;wBACzB,6BAA6B;wBAC7B,sBAAsB;wBACtB,4BAA4B;wBAC5B,aAAa;wBACb,iBAAiB;wBACjB,wBAAwB;wBACxB,6BAA6B;wBAC7B,UAAU;AACX,qBAAA;oBACD,SAAS,EAAE,CAAC,sBAAsB,CAAC;AACpC,iBAAA;;;ACnHD;;AAEG;;;;"}
1
+ {"version":3,"file":"novo-elements-elements-simple-table.mjs","sources":["../../../projects/novo-elements/src/elements/simple-table/activity-table-renderers.ts","../../../projects/novo-elements/src/elements/simple-table/state.ts","../../../projects/novo-elements/src/elements/simple-table/sort.ts","../../../projects/novo-elements/src/elements/simple-table/cell.ts","../../../projects/novo-elements/src/elements/simple-table/cell-header.ts","../../../projects/novo-elements/src/elements/simple-table/pagination.ts","../../../projects/novo-elements/src/elements/simple-table/PaginationOld.ts","../../../projects/novo-elements/src/elements/simple-table/row.ts","../../../projects/novo-elements/src/elements/simple-table/table-source.ts","../../../projects/novo-elements/src/elements/simple-table/table.ts","../../../projects/novo-elements/src/elements/simple-table/simple-table.module.ts","../../../projects/novo-elements/src/elements/simple-table/novo-elements-elements-simple-table.ts"],"sourcesContent":["export class ActivityTableRenderers {\n static propertyRenderer<T>(prop: string): Function {\n const ret = (data: T): string => {\n // TODO - allow for dots and sub props\n return data[prop];\n };\n return ret;\n }\n\n static dateRenderer<T>(prop: string): Function {\n const ret = (data: T): string => {\n return data[prop] ? new Date(data[prop]).toLocaleDateString() : '';\n };\n return ret;\n }\n}\n","import { EventEmitter, Injectable } from '@angular/core';\nimport { NovoSimpleTableChange } from './interfaces';\n\n@Injectable()\nexport class NovoActivityTableState {\n id: number = Math.random();\n sort: { id: string; value: string } = undefined;\n filter: { id: string; value: string } = undefined;\n page: number = 0;\n pageSize: number = undefined;\n globalSearch: string = undefined;\n selectedRows: Map<string, object> = new Map<string, object>();\n outsideFilter: any;\n\n updates: EventEmitter<NovoSimpleTableChange> = new EventEmitter<NovoSimpleTableChange>();\n onReset: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n get userFiltered(): boolean {\n return !!(this.filter || this.sort || this.globalSearch || this.outsideFilter);\n }\n\n public reset(fireUpdate: boolean = true, persistUserFilters?: boolean): void {\n if (!persistUserFilters) {\n this.sort = undefined;\n this.globalSearch = undefined;\n this.filter = undefined;\n }\n this.page = 0;\n this.selectedRows.clear();\n this.onReset.emit(true);\n if (fireUpdate) {\n this.updates.emit({\n sort: this.sort,\n filter: this.filter,\n globalSearch: this.globalSearch,\n });\n }\n }\n}\n","import { Directive, EventEmitter, OnDestroy, Output } from '@angular/core';\nimport { Helpers } from 'novo-elements/utils';\nimport { NovoActivityTableState } from './state';\n\n@Directive({\n selector: '[novoSortFilter]',\n standalone: false,\n})\nexport class NovoSortFilter {\n constructor(private state: NovoActivityTableState) {}\n\n public filter(id: string, value: any, transform: Function): void {\n let filter;\n if (!Helpers.isBlank(value)) {\n filter = { id, value, transform };\n } else {\n filter = undefined;\n }\n this.state.filter = filter;\n this.state.reset(false, true);\n this.state.updates.next({ filter, sort: this.state.sort });\n }\n\n public sort(id: string, value: string, transform: Function): void {\n const sort = { id, value, transform };\n this.state.sort = sort;\n this.state.reset(false, true);\n this.state.updates.next({ sort, filter: this.state.filter });\n }\n}\n\n@Directive({\n selector: '[novoSelection]',\n standalone: false,\n})\nexport class NovoSelection implements OnDestroy {\n @Output()\n public novoSelectAllToggle = new EventEmitter<boolean>();\n\n public allRows = new Map<string, object>();\n private throttleTimeout: any;\n\n constructor(public state: NovoActivityTableState) {}\n\n public register(id, row): void {\n this.allRows.set(id, row);\n }\n\n public deregister(id): void {\n this.allRows.delete(id);\n this.state.selectedRows.delete(id);\n clearTimeout(this.throttleTimeout);\n this.throttleTimeout = setTimeout(() => {\n if (this.state.selectedRows.size === 0) {\n this.novoSelectAllToggle.emit(false);\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.allRows.clear();\n this.state.selectedRows.clear();\n }\n\n public toggle(id: string, selected: boolean, row: any): void {\n if (selected) {\n this.state.selectedRows.set(id, row);\n } else {\n this.state.selectedRows.delete(id);\n }\n }\n\n public selectAll(value: boolean): void {\n if (value) {\n this.state.selectedRows = new Map<string, object>(this.allRows);\n } else {\n this.state.selectedRows.clear();\n }\n this.novoSelectAllToggle.emit(value);\n }\n}\n","import { CdkCell, CdkCellDef, CdkColumnDef, CdkHeaderCell, CdkHeaderCellDef } from '@angular/cdk/table';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Renderer2,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\nimport { SimpleTableActionColumn, SimpleTableActionColumnOption, SimpleTableColumn } from './interfaces';\nimport { NovoSelection } from './sort';\n\n/** Workaround for https://github.com/angular/angular/issues/17849 */\nexport const _NovoCellDef = CdkCellDef;\nexport const _NovoHeaderCellDef = CdkHeaderCellDef;\nexport const _NovoColumnDef = CdkColumnDef;\nexport const _NovoHeaderCell = CdkHeaderCell;\nexport const _NovoCell = CdkCell;\n\n@Directive({\n selector: '[novoSimpleCellDef]',\n providers: [{ provide: CdkCellDef, useExisting: NovoSimpleCellDef }],\n standalone: false,\n})\nexport class NovoSimpleCellDef extends _NovoCellDef {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: '[novoSimpleHeaderCellDef]',\n providers: [{ provide: CdkHeaderCellDef, useExisting: NovoSimpleHeaderCellDef }],\n standalone: false,\n})\nexport class NovoSimpleHeaderCellDef extends _NovoHeaderCellDef {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: '[novoSimpleColumnDef]',\n providers: [{ provide: CdkColumnDef, useExisting: NovoSimpleColumnDef }],\n standalone: false,\n})\nexport class NovoSimpleColumnDef extends _NovoColumnDef {\n @Input('novoSimpleColumnDef')\n get name(): string {\n return this._name;\n }\n set name(name: string) {\n this._setNameInput(name);\n }\n /**\n * This has been extracted to a util because of TS 4 and VE.\n * View Engine doesn't support property rename inheritance.\n * TS 4.0 doesn't allow properties to override accessors or vice-versa.\n * @docs-private\n */\n protected _setNameInput(value: string) {\n // If the directive is set without a name (updated programatically), then this setter will\n // trigger with an empty string and should not overwrite the programatically set value.\n if (value) {\n this._name = value;\n this.cssClassFriendlyName = value.replace(/[^a-z0-9_-]/gi, '-');\n this._updateColumnCssClassName();\n }\n }\n}\n\n@Directive({\n selector: 'novo-simple-header-cell',\n standalone: false,\n})\nexport class NovoSimpleHeaderCell<T> extends _NovoHeaderCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n @Input()\n public column: SimpleTableColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-header-cell');\n }\n\n public ngOnInit(): void {\n if (this.column.width) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'min-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'width', `${this.column.width}px`);\n }\n }\n}\n\n@Directive({\n selector: 'novo-simple-empty-header-cell',\n standalone: false,\n})\nexport class NovoSimpleEmptyHeaderCell extends _NovoHeaderCell {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n constructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-empty-header-cell');\n }\n}\n\n@Component({\n selector: 'novo-simple-checkbox-header-cell',\n template: '<novo-checkbox [(ngModel)]=\"selectAll\" (ngModelChange)=\"toggle($event)\"></novo-checkbox>',\n standalone: false,\n})\nexport class NovoSimpleCheckboxHeaderCell extends _NovoHeaderCell implements OnDestroy {\n @HostBinding('attr.role')\n public role = 'columnheader';\n\n public selectAll: boolean = false;\n private selectAllSubscription: Subscription;\n\n constructor(\n columnDef: CdkColumnDef,\n elementRef: ElementRef,\n renderer: Renderer2,\n ref: ChangeDetectorRef,\n @Optional() private _selection: NovoSelection,\n ) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-checkbox-column-header-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-checkbox-header-cell');\n\n this.selectAllSubscription = _selection.novoSelectAllToggle.subscribe((value: boolean) => {\n this.selectAll = value;\n ref.markForCheck();\n });\n }\n\n public ngOnDestroy(): void {\n this.selectAllSubscription.unsubscribe();\n }\n\n public toggle(value: boolean): void {\n this._selection.selectAll(value);\n }\n}\n\n@Component({\n selector: 'novo-simple-cell',\n template: ' <span [class.clickable]=\"!!column.onClick\" (click)=\"onClick($event)\" #span>{{ column.renderer(row) }}</span> ',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleCell<T> extends _NovoCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: any;\n @Input()\n public column: SimpleTableColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-cell');\n }\n\n public ngOnInit(): void {\n if (this.column.customClass) {\n this.renderer.addClass(this.elementRef.nativeElement, this.column.customClass(this.row));\n }\n if (this.column.width) {\n this.renderer.setStyle(this.elementRef.nativeElement, 'min-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'max-width', `${this.column.width}px`);\n this.renderer.setStyle(this.elementRef.nativeElement, 'width', `${this.column.width}px`);\n }\n }\n\n public onClick(event: MouseEvent): void {\n Helpers.swallowEvent(event);\n if (this.column.onClick) {\n this.column.onClick(this.row);\n }\n return;\n }\n}\n\n@Component({\n selector: 'novo-simple-checkbox-cell',\n template: ' <novo-checkbox [ngModel]=\"selected\" (ngModelChange)=\"toggle($event)\"></novo-checkbox> ',\n standalone: false,\n})\nexport class NovoSimpleCheckboxCell extends _NovoCell implements OnDestroy, OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: any;\n @Input()\n public index: any;\n\n public selected: boolean = false;\n private selectAllSubscription: Subscription;\n\n constructor(public columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2, @Optional() public _selection: NovoSelection) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, `novo-checkbox-column-${columnDef.cssClassFriendlyName}`);\n renderer.addClass(elementRef.nativeElement, 'novo-simple-checkbox-cell');\n\n this.selectAllSubscription = _selection.novoSelectAllToggle.subscribe((value: boolean) => {\n this.selected = value;\n });\n }\n\n public ngOnInit(): void {\n this._selection.register(this.row.id || this.index, this.row);\n this.selected = this._selection.state.selectedRows.has(this.row.id || this.index);\n }\n\n public ngOnDestroy(): void {\n this._selection.deregister(this.row.id || this.index);\n this.selectAllSubscription.unsubscribe();\n }\n\n public toggle(value: boolean): void {\n this._selection.toggle(this.row.id || this.index, value, this.row);\n }\n}\n\n@Component({\n selector: 'novo-simple-action-cell',\n template: `\n <ng-container *ngIf=\"!column.options\">\n <novo-button theme=\"icon\" [icon]=\"column.icon\" (click)=\"column.onClick(row)\" [disabled]=\"isDisabled(column, row)\"></novo-button>\n </ng-container>\n <ng-container *ngIf=\"column.options\">\n <novo-dropdown parentScrollSelector=\".novo-simple-table\" containerClass=\"novo-table-dropdown-cell\">\n <novo-button type=\"button\" theme=\"dialogue\" icon=\"collapse\" inverse>{{ column.label || labels.actions }}</novo-button>\n <list>\n <item *ngFor=\"let option of column.options\" (action)=\"option.onClick(row)\" [disabled]=\"isDisabled(option, row)\">\n <span [attr.data-automation-id]=\"option.label\">{{ option.label }}</span>\n </item>\n </list>\n </novo-dropdown>\n </ng-container>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleActionCell<T> extends _NovoCell implements OnInit {\n @HostBinding('attr.role')\n public role = 'gridcell';\n\n @Input()\n public row: T;\n @Input()\n public column: SimpleTableActionColumn<T>;\n\n constructor(columnDef: CdkColumnDef, private elementRef: ElementRef, private renderer: Renderer2, public labels: NovoLabelService) {\n super(columnDef, elementRef);\n renderer.setAttribute(elementRef.nativeElement, 'data-automation-id', `novo-action-column-${columnDef.cssClassFriendlyName}`);\n }\n\n public ngOnInit(): void {\n if (this.column.options) {\n this.renderer.addClass(this.elementRef.nativeElement, 'novo-simple-dropdown-cell');\n } else {\n this.renderer.addClass(this.elementRef.nativeElement, 'novo-simple-button-cell');\n }\n }\n\n public isDisabled(check: SimpleTableActionColumn<T> | SimpleTableActionColumnOption<T>, row: T): boolean {\n if (check.disabled === true) {\n return true;\n }\n if (check.disabledCheck) {\n return check.disabledCheck(row);\n }\n return false;\n }\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { CdkColumnDef } from '@angular/cdk/table';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { startOfToday, startOfTomorrow } from 'date-fns';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\nimport { NovoDropdownElement } from 'novo-elements/elements/dropdown';\nimport { NovoSimpleSortFilter, NovoSimpleTableChange, SimpleTableColumnFilterConfig, SimpleTableColumnFilterOption } from './interfaces';\nimport { NovoSortFilter } from './sort';\nimport { NovoActivityTableState } from './state';\n\n@Directive({\n selector: '[novoSimpleFilterFocus]',\n standalone: false,\n})\nexport class NovoSimpleFilterFocus implements AfterViewInit {\n constructor(private element: ElementRef) {}\n\n ngAfterViewInit() {\n this.element.nativeElement.focus();\n }\n}\n\n@Component({\n selector: '[novo-simple-cell-config]',\n template: `\n <label (click)=\"sort()\" data-automation-id=\"novo-activity-table-label\" [class.sort-disabled]=\"!config.sortable\">\n <ng-content></ng-content>\n </label>\n <div>\n <novo-button\n *ngIf=\"config.sortable\"\n theme=\"icon\"\n [icon]=\"icon\"\n (click)=\"sort()\"\n [class.active]=\"sortActive\"\n data-automation-id=\"novo-activity-table-sort\"\n ></novo-button>\n <novo-dropdown\n *ngIf=\"config.filterable\"\n side=\"right\"\n parentScrollSelector=\".novo-simple-table\"\n containerClass=\"simple-table-dropdown\"\n data-automation-id=\"novo-activity-table-filter\"\n >\n <novo-button type=\"button\" theme=\"icon\" icon=\"filter\" [class.active]=\"filterActive\"></novo-button>\n <div class=\"header\">\n <span>{{ labels.filters }}</span>\n <novo-button\n theme=\"dialogue\"\n color=\"negative\"\n icon=\"times\"\n (click)=\"clearFilter()\"\n *ngIf=\"filter\"\n data-automation-id=\"novo-activity-table-filter-clear\"\n >\n {{ labels.clear }}\n </novo-button>\n </div>\n <ng-container [ngSwitch]=\"config.filterConfig.type\">\n <novo-optgroup *ngSwitchCase=\"'date'\">\n <ng-container *ngIf=\"!showCustomRange\">\n <novo-option\n [class.active]=\"activeDateFilter === option.label\"\n *ngFor=\"let option of config.filterConfig.options\"\n (click)=\"filterData(option)\"\n [attr.data-automation-id]=\"'novo-activity-table-filter-' + option.label\"\n >\n {{ option.label }} <i class=\"bhi-check\" *ngIf=\"activeDateFilter === option.label\"></i>\n </novo-option>\n </ng-container>\n <novo-option\n [class.active]=\"labels.customDateRange === activeDateFilter\"\n (click)=\"toggleCustomRange($event, true)\"\n *ngIf=\"config.filterConfig.allowCustomRange && !showCustomRange\"\n [keepOpen]=\"true\"\n >\n {{ labels.customDateRange }} <i class=\"bhi-check\" *ngIf=\"labels.customDateRange === activeDateFilter\"></i>\n </novo-option>\n <div class=\"calendar-container\" *ngIf=\"showCustomRange\">\n <div (click)=\"toggleCustomRange($event, false)\"><i class=\"bhi-previous\"></i>{{ labels.backToPresetFilters }}</div>\n <novo-date-picker (onSelect)=\"filterData($event)\" [(ngModel)]=\"filter\" range=\"true\"></novo-date-picker>\n </div>\n </novo-optgroup>\n <novo-optgroup *ngSwitchCase=\"'select'\">\n <novo-option\n [class.active]=\"filter === option\"\n *ngFor=\"let option of config.filterConfig.options\"\n (click)=\"filterData(option)\"\n [attr.data-automation-id]=\"'novo-activity-table-filter-' + (option?.label || option)\"\n >\n <span>{{ option?.label || option }}</span>\n <i class=\"bhi-check\" *ngIf=\"option.hasOwnProperty('value') ? filter === option.value : filter === option\"></i>\n </novo-option>\n </novo-optgroup>\n <novo-optgroup *ngSwitchDefault>\n <novo-option class=\"filter-search\" keepOpen>\n <input\n type=\"text\"\n [(ngModel)]=\"filter\"\n (ngModelChange)=\"filterData($event)\"\n novoSimpleFilterFocus\n data-automation-id=\"novo-activity-table-filter-input\"\n />\n </novo-option>\n </novo-optgroup>\n </ng-container>\n </novo-dropdown>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleCellHeader implements NovoSimpleSortFilter, OnInit, OnDestroy {\n @ViewChild(NovoDropdownElement)\n dropdown: NovoDropdownElement;\n\n @Input()\n defaultSort: { id: string; value: string };\n\n @Input('novo-simple-cell-config')\n get config() {\n return this._config;\n }\n\n set config(v) {\n if (!v) {\n this._config = {\n sortable: false,\n filterable: false,\n filterConfig: {\n type: 'text',\n },\n };\n } else {\n this._config = {\n sortable: coerceBooleanProperty(v.sortable),\n filterable: coerceBooleanProperty(v.filterable),\n transforms: v.transforms || {},\n filterConfig: v.filterConfig || {\n type: 'text',\n },\n };\n\n if (this._config.filterConfig.type === 'date' && !this._config.filterConfig.options) {\n this._config.filterConfig.options = this.getDefaultDateFilterOptions();\n }\n }\n }\n\n private _config: {\n sortable: boolean;\n filterable: boolean;\n transforms?: { filter?: Function; sort?: Function };\n filterConfig: SimpleTableColumnFilterConfig;\n };\n\n private _rerenderSubscription: Subscription;\n private changeTimeout: any;\n\n public icon: string = 'sortable';\n public id: string;\n public filter: string | boolean;\n public direction: string;\n public filterActive: boolean = false;\n public sortActive: boolean = false;\n public showCustomRange: boolean = false;\n public activeDateFilter: string;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n public labels: NovoLabelService,\n private state: NovoActivityTableState,\n @Optional() public _sort: NovoSortFilter,\n @Optional() public _cdkColumnDef: CdkColumnDef,\n ) {\n this._rerenderSubscription = state.updates.subscribe((change: NovoSimpleTableChange) => {\n if (change.sort && change.sort.id === this.id) {\n this.icon = `sort-${change.sort.value}`;\n this.sortActive = true;\n } else {\n this.icon = 'sortable';\n this.sortActive = false;\n }\n if (change.filter && change.filter.id === this.id) {\n this.filterActive = true;\n this.filter = change.filter.value;\n } else {\n this.filterActive = false;\n this.filter = undefined;\n }\n changeDetectorRef.markForCheck();\n });\n }\n\n public ngOnInit(): void {\n if (this._cdkColumnDef) {\n this.id = this._cdkColumnDef.name;\n }\n if (this.defaultSort && this.id === this.defaultSort.id) {\n this.icon = `sort-${this.defaultSort.value}`;\n this.sortActive = true;\n this.changeDetectorRef.markForCheck();\n }\n }\n\n public ngOnDestroy(): void {\n this._rerenderSubscription.unsubscribe();\n }\n\n public sort(): void {\n if (this.changeTimeout) {\n clearTimeout(this.changeTimeout);\n }\n this.changeTimeout = setTimeout(() => {\n this.direction = this.getNextSortDirection(this.direction);\n this._sort.sort(this.id, this.direction, this._config.transforms.sort);\n this.changeDetectorRef.markForCheck();\n }, 300);\n }\n\n public toggleCustomRange(event: Event, value: boolean): void {\n Helpers.swallowEvent(event);\n this.showCustomRange = value;\n this.changeDetectorRef.markForCheck();\n this.dropdown.openPanel(); // Ensures that the panel correctly updates to the dynamic size of the dropdown\n }\n\n public filterData(filter?: any): void {\n let actualFilter = filter;\n if (this.config.filterConfig.type === 'date' && filter) {\n this.activeDateFilter = filter.label || this.labels.customDateRange;\n if (filter.startDate && filter.endDate) {\n actualFilter = {\n min: DateUtil.startOfDay(filter.startDate.date),\n max: DateUtil.startOfDay(DateUtil.addDays(DateUtil.startOfDay(filter.endDate.date), 1)),\n };\n } else {\n actualFilter = {\n min: filter.min ? DateUtil.addDays(startOfToday(), filter.min) : startOfToday(),\n max: filter.max ? DateUtil.addDays(startOfTomorrow(), filter.max) : startOfTomorrow(),\n };\n }\n }\n\n if (actualFilter && actualFilter.hasOwnProperty('value')) {\n actualFilter = filter.value;\n }\n\n if (this.changeTimeout) {\n clearTimeout(this.changeTimeout);\n }\n\n this.changeTimeout = setTimeout(() => {\n if (actualFilter === '') {\n actualFilter = undefined;\n }\n this._sort.filter(this.id, actualFilter, this.config.transforms.filter);\n this.changeDetectorRef.markForCheck();\n }, 300);\n }\n\n public clearFilter(): void {\n this.filter = undefined;\n this.activeDateFilter = undefined;\n this.filterData();\n }\n\n private getNextSortDirection(direction: string): string {\n if (!direction) {\n return 'asc';\n }\n if (direction === 'asc') {\n return 'desc';\n }\n return 'asc';\n }\n\n private getDefaultDateFilterOptions(): SimpleTableColumnFilterOption[] {\n const opts: SimpleTableColumnFilterOption[] = [\n { label: this.labels.past1Day, min: -1, max: 0 },\n { label: this.labels.past7Days, min: -7, max: 0 },\n { label: this.labels.past30Days, min: -30, max: 0 },\n { label: this.labels.past90Days, min: -90, max: 0 },\n { label: this.labels.past1Year, min: -366, max: 0 },\n { label: this.labels.next1Day, min: 0, max: 1 },\n { label: this.labels.next7Days, min: 0, max: 7 },\n { label: this.labels.next30Days, min: 0, max: 30 },\n { label: this.labels.next90Days, min: 0, max: 90 },\n { label: this.labels.next1Year, min: 0, max: 366 },\n ];\n return opts;\n }\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { NovoSimplePaginationEvent } from './interfaces';\nimport { NovoActivityTableState } from './state';\n\nconst DEFAULT_PAGE_SIZE = 50;\n\n@Component({\n selector: 'novo-simple-table-pagination',\n template: `\n <div class=\"novo-simple-table-pagination-size\">\n <novo-tiles\n *ngIf=\"displayedPageSizeOptions.length > 1\"\n [(ngModel)]=\"pageSize\"\n [options]=\"displayedPageSizeOptions\"\n (onChange)=\"changePageSize($event)\"\n data-automation-id=\"novo-simple-table-pagination-tiles\"\n >\n </novo-tiles>\n <div *ngIf=\"displayedPageSizeOptions.length <= 1\">{{ pageSize }}</div>\n </div>\n\n <div class=\"novo-simple-table-range-label-long\" data-automation-id=\"novo-simple-table-pagination-range-label-long\">\n {{ longRangeLabel }}\n </div>\n <div class=\"novo-simple-table-range-label-short\" data-automation-id=\"novo-simple-table-pagination-range-label-short\">\n {{ shortRangeLabel }}\n </div>\n\n <novo-button\n theme=\"dialogue\"\n type=\"button\"\n class=\"novo-simple-table-pagination-navigation-previous\"\n (click)=\"previousPage()\"\n icon=\"previous\"\n side=\"left\"\n [disabled]=\"!hasPreviousPage()\"\n data-automation-id=\"novo-simple-table-pagination-previous\"\n >\n <span>{{ labels.previous }}</span>\n </novo-button>\n <novo-button\n theme=\"dialogue\"\n type=\"button\"\n class=\"novo-simple-table-pagination-navigation-next\"\n (click)=\"nextPage()\"\n icon=\"next\"\n side=\"right\"\n [disabled]=\"!hasNextPage()\"\n data-automation-id=\"novo-simple-table-pagination-next\"\n >\n <span>{{ labels.next }}</span>\n </novo-button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleTablePagination implements OnInit, OnDestroy {\n private _initialized: boolean;\n\n @Input()\n get page(): number {\n return this._page;\n }\n set page(page: number) {\n this._page = page;\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n this.state.page = this._page;\n }\n _page: number = 0;\n\n @Input()\n get length(): number {\n return this._length;\n }\n set length(length: number) {\n this._length = length;\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n }\n _length: number = 0;\n\n @Input()\n get pageSize(): number {\n return this._pageSize;\n }\n set pageSize(pageSize: number) {\n this._pageSize = pageSize;\n this.updateDisplayedPageSizeOptions();\n this.state.pageSize = this._pageSize;\n }\n private _pageSize: number;\n\n @Input()\n get pageSizeOptions(): number[] {\n return this._pageSizeOptions;\n }\n set pageSizeOptions(pageSizeOptions: number[]) {\n this._pageSizeOptions = pageSizeOptions;\n this.updateDisplayedPageSizeOptions();\n }\n private _pageSizeOptions: number[] = [];\n\n @Output()\n pageChange = new EventEmitter<NovoSimplePaginationEvent>();\n\n public displayedPageSizeOptions: number[];\n public longRangeLabel: string;\n public shortRangeLabel: string;\n\n private resetSubscription: Subscription;\n\n constructor(private changeDetectorRef: ChangeDetectorRef, public labels: NovoLabelService, private state: NovoActivityTableState) {\n if (state && state.onReset) {\n this.resetSubscription = this.state.onReset.subscribe((clear: boolean) => {\n if (clear) {\n this.page = 0;\n this.changeDetectorRef.markForCheck();\n }\n });\n }\n }\n\n public ngOnInit(): void {\n this._initialized = true;\n this.updateDisplayedPageSizeOptions();\n }\n\n public ngOnDestroy(): void {\n this.resetSubscription.unsubscribe();\n }\n\n public nextPage(): void {\n if (!this.hasNextPage()) {\n return;\n }\n this.page++;\n this.emitPageEvent();\n }\n\n public previousPage(): void {\n if (!this.hasPreviousPage()) {\n return;\n }\n this.page--;\n this.emitPageEvent();\n }\n\n public hasPreviousPage(): boolean {\n return this.page >= 1 && this.pageSize !== 0;\n }\n\n public hasNextPage(): boolean {\n const numberOfPages = Math.ceil(this.length / this.pageSize) - 1;\n return this.page < numberOfPages && this.pageSize !== 0;\n }\n\n public changePageSize(pageSize: number): void {\n this.page = 0;\n this.pageSize = pageSize;\n this.emitPageEvent();\n }\n\n private updateDisplayedPageSizeOptions(): void {\n if (!this._initialized) {\n return;\n }\n if (!this.pageSize) {\n this._pageSize = this.pageSizeOptions.length !== 0 ? this.pageSizeOptions[0] : DEFAULT_PAGE_SIZE;\n }\n this.displayedPageSizeOptions = this.pageSizeOptions.slice();\n if (this.displayedPageSizeOptions.indexOf(this.pageSize) === -1) {\n this.displayedPageSizeOptions.push(this.pageSize);\n }\n this.displayedPageSizeOptions.sort((a, b) => a - b);\n this.changeDetectorRef.markForCheck();\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n }\n\n private emitPageEvent(): void {\n const event = {\n page: this.page,\n pageSize: this.pageSize,\n length: this.length,\n };\n this.pageChange.next(event);\n this.state.page = this.page;\n this.state.pageSize = this.pageSize;\n this.longRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, false);\n this.shortRangeLabel = this.labels.getRangeText(this.page, this.pageSize, this.length, true);\n this.state.updates.next(event);\n }\n}\n","// NG2\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewEncapsulation } from '@angular/core';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\n\ninterface Page {\n num: number;\n text: string;\n active: boolean;\n}\n@Component({\n selector: 'novo-pagination',\n template: `\n <ng-container *ngIf=\"rowOptions.length > 1\">\n <h5 class=\"rows\">{{ label }}</h5>\n <novo-select\n class=\"table-pagination-select\"\n [options]=\"rowOptions\"\n [placeholder]=\"labels.select\"\n [(ngModel)]=\"itemsPerPage\"\n (onSelect)=\"onPageSizeChanged($event)\"\n data-automation-id=\"pager-select\"\n ></novo-select>\n <span class=\"spacer\"></span>\n </ng-container>\n <ul class=\"pager\" data-automation-id=\"pager\">\n <li class=\"page\" (click)=\"selectPage(page - 1)\" [ngClass]=\"{ disabled: noPrevious() }\">\n <i class=\"bhi-previous\" data-automation-id=\"pager-previous\"></i>\n </li>\n <li\n class=\"page\"\n [ngClass]=\"{ active: p.active }\"\n [class.disabled]=\"disablePageSelection\"\n *ngFor=\"let p of pages\"\n (click)=\"selectPage(p.num, $event)\"\n >\n {{ p.text }}\n </li>\n <li class=\"page\" (click)=\"selectPage(page + 1)\" [ngClass]=\"{ disabled: noNext() }\">\n <i class=\"bhi-next\" data-automation-id=\"pager-next\"></i>\n </li>\n </ul>\n `,\n styleUrls: ['./PaginationOld.scss'],\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n})\nexport class Pagination implements OnInit, OnChanges {\n @Input()\n page: number;\n @Input()\n totalItems: number;\n @Input()\n itemsPerPage = 10;\n @Input()\n rowOptions;\n @Input()\n label: string;\n @Input()\n get disablePageSelection(): boolean {\n return this.pageSelectDisabled;\n }\n set disablePageSelection(val: boolean) {\n this.pageSelectDisabled = coerceBooleanProperty(val);\n }\n @Output()\n pageChange = new EventEmitter();\n @Output()\n itemsPerPageChange = new EventEmitter();\n @Output()\n onPageChange = new EventEmitter();\n\n public pageSelectDisabled: boolean;\n maxPagesDisplayed = 5;\n totalPages: number;\n pages: Array<Page>;\n\n constructor(public labels: NovoLabelService) {}\n\n ngOnInit() {\n this.label = this.label || this.labels.itemsPerPage;\n this.rowOptions = this.rowOptions || this.getDefaultRowOptions();\n }\n\n ngOnChanges(changes?: SimpleChanges) {\n this.page = this.page || 1;\n this.totalPages = this.calculateTotalPages();\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getDefaultRowOptions() {\n return [\n { value: 10, label: '10' },\n { value: 25, label: '25' },\n { value: 50, label: '50' },\n { value: 100, label: '100' },\n ];\n }\n\n onPageSizeChanged(event) {\n this.page = 1;\n this.itemsPerPage = event.selected;\n this.totalPages = this.calculateTotalPages();\n this.pages = this.getPages(this.page, this.totalPages);\n this.pageChange.emit(this.page);\n this.itemsPerPageChange.emit(this.itemsPerPage);\n this.onPageChange.emit({\n page: this.page,\n itemsPerPage: this.itemsPerPage,\n });\n }\n\n selectPage(page: number, event?: MouseEvent) {\n if (event) {\n event.preventDefault();\n }\n\n this.page = page;\n this.pages = this.getPages(this.page, this.totalPages);\n this.pageChange.emit(this.page);\n this.onPageChange.emit({\n page: this.page,\n itemsPerPage: this.itemsPerPage,\n });\n }\n\n noPrevious() {\n return this.page === 1;\n }\n\n noNext() {\n return this.page === this.totalPages;\n }\n\n // Create page object used in template\n makePage(num: number, text: string, isActive: boolean) {\n return { num, text, active: isActive } as Page;\n }\n\n getPages(currentPage: number, totalPages: number) {\n const pages: Array<Page> = [];\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized = this.maxPagesDisplayed < totalPages;\n\n // recompute if maxPagesDisplayed\n if (isMaxSized) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxPagesDisplayed / 2), 1);\n endPage = startPage + this.maxPagesDisplayed - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxPagesDisplayed + 1;\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n return pages;\n }\n\n calculateTotalPages() {\n const totalPages = this.itemsPerPage < 1 ? 1 : Math.ceil(this.totalItems / this.itemsPerPage);\n return Math.max(totalPages || 0, 1);\n }\n}\n","import { CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef, CDK_ROW_TEMPLATE } from '@angular/cdk/table';\nimport { ChangeDetectionStrategy, Component, Directive, HostBinding, Input } from '@angular/core';\n\n/** Workaround for https://github.com/angular/angular/issues/17849 */\nexport const _NovoHeaderRowDef = CdkHeaderRowDef;\nexport const _NovoCdkRowDef = CdkRowDef;\nexport const _NovoHeaderRow = CdkHeaderRow;\nexport const _NovoRow = CdkRow;\n\n@Directive({\n selector: '[novoSimpleHeaderRowDef]',\n providers: [{ provide: CdkHeaderRowDef, useExisting: NovoSimpleHeaderRowDef }],\n standalone: false,\n})\nexport class NovoSimpleHeaderRowDef extends _NovoHeaderRowDef {\n // TODO: add explicit constructor\n\n @Input('novoSimpleHeaderRowDef')\n columns;\n}\n\n@Directive({\n selector: '[novoSimpleRowDef]',\n providers: [{ provide: CdkRowDef, useExisting: NovoSimpleRowDef }],\n standalone: false,\n})\nexport class NovoSimpleRowDef<T> extends _NovoCdkRowDef<T> {\n // TODO: add explicit constructor\n\n @Input('novoSimpleRowDefColumns')\n columns;\n}\n\n@Component({\n selector: 'novo-simple-header-row',\n template: CDK_ROW_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleHeaderRow extends _NovoHeaderRow {\n @HostBinding('class')\n public rowClass = 'novo-simple-header-row';\n @HostBinding('attr.role')\n public role = 'row';\n}\n\n@Component({\n selector: 'novo-simple-row',\n template: CDK_ROW_TEMPLATE,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class NovoSimpleRow extends _NovoRow {\n @HostBinding('class')\n public rowClass = 'novo-simple-row';\n @HostBinding('attr.role')\n public role = 'row';\n}\n","import { DataSource } from '@angular/cdk/table';\nimport { ChangeDetectorRef } from '@angular/core';\nimport { merge, Observable, of } from 'rxjs';\nimport { catchError, map, startWith, switchMap } from 'rxjs/operators';\nimport { Helpers } from 'novo-elements/utils';\nimport { NovoActivityTableState } from './state';\n\nexport interface ActivityTableService<T> {\n getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }>;\n}\n\nexport abstract class RemoteActivityTableService<T> implements ActivityTableService<T> {\n abstract getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }>;\n}\n\nexport class StaticActivityTableService<T> implements ActivityTableService<T> {\n constructor(private data: T[] = []) {}\n\n public getTableResults(\n sort: { id: string; value: string; transform?: Function },\n filter: { id: string; value: string; transform?: Function },\n page: number = 0,\n pageSize: number,\n globalSearch?: string,\n outsideFilter?: any,\n ): Observable<{ results: T[]; total: number }> {\n let ret: T[] = Helpers.deepClone(this.data);\n if (ret.length !== 0) {\n if (globalSearch) {\n ret = ret.filter((item) => Object.keys(item).some((key) => `${item[key]}`.toLowerCase().includes(globalSearch.toLowerCase())));\n }\n if (filter) {\n const value = Helpers.isString(filter.value) ? filter.value.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&') : filter.value;\n ret = ret.filter(Helpers.filterByField(filter.id, value));\n }\n if (sort) {\n ret = ret.sort(Helpers.sortByField(sort.id, sort.value === 'desc'));\n }\n if (!Helpers.isBlank(page) && !Helpers.isBlank(pageSize)) {\n ret = ret.slice(page * pageSize, (page + 1) * pageSize);\n }\n }\n return of({ results: ret, total: this.data.length });\n }\n}\n\nexport class ActivityTableDataSource<T> extends DataSource<T> {\n public total = 0;\n public current = 0;\n public loading = false;\n public pristine = true;\n\n get totallyEmpty(): boolean {\n return this.total === 0;\n }\n\n get currentlyEmpty(): boolean {\n return this.current === 0;\n }\n\n constructor(private tableService: ActivityTableService<T>, private state: NovoActivityTableState, private ref: ChangeDetectorRef) {\n super();\n }\n\n public connect(): Observable<any[]> {\n const displayDataChanges: any = [this.state.updates];\n return merge(...displayDataChanges).pipe(\n startWith(null),\n switchMap(() => {\n this.pristine = false;\n this.loading = true;\n return this.tableService.getTableResults(\n this.state.sort,\n this.state.filter,\n this.state.page,\n this.state.pageSize,\n this.state.globalSearch,\n this.state.outsideFilter,\n );\n }),\n map((data: { results: T[]; total: number }) => {\n this.loading = false;\n this.total = data.total;\n this.current = data.results.length;\n setTimeout(() => {\n this.ref.markForCheck();\n });\n return data.results;\n }),\n catchError((error) => {\n console.error(error);\n this.loading = false;\n return of(null);\n }),\n );\n }\n\n public disconnect(): void {}\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { _VIEW_REPEATER_STRATEGY, _DisposeViewRepeaterStrategy } from '@angular/cdk/collections';\nimport { CdkTable, CDK_TABLE } from '@angular/cdk/table';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { notify } from 'novo-elements/utils';\nimport { SimpleTableActionColumn, SimpleTableColumn, SimpleTablePaginationOptions, SimpleTableSearchOptions } from './interfaces';\nimport { NovoActivityTableState } from './state';\nimport { ActivityTableDataSource, ActivityTableService } from './table-source';\n\n@Component({\n selector: 'novo-simple-table',\n template: `\n <table role=\"table\">\n <caption></caption>\n <colgroup></colgroup>\n <thead role=\"rowgroup\">\n <ng-container headerRowOutlet></ng-container>\n </thead>\n <tbody role=\"rowgroup\">\n <ng-container rowOutlet></ng-container>\n <ng-container noDataRowOutlet></ng-container>\n </tbody>\n <tfoot role=\"rowgroup\">\n <ng-container footerRowOutlet></ng-container>\n </tfoot>\n </table>`,\n styleUrls: ['./table.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: CDK_TABLE, useExisting: NovoTable }],\n standalone: false,\n})\nexport class NovoTable<T> extends CdkTable<T> {\n // TODO: add explicit constructor\n}\n\n@Directive({\n selector: 'novo-activity-table-actions',\n standalone: false,\n})\nexport class NovoActivityTableActions {}\n\n@Directive({\n selector: 'novo-activity-table-custom-header',\n standalone: false,\n})\nexport class NovoActivityTableCustomHeader {}\n\n@Directive({\n selector: 'novo-activity-table-custom-filter',\n standalone: false,\n})\nexport class NovoActivityTableCustomFilter {}\n\n@Directive({\n selector: 'novo-activity-table-empty-message',\n standalone: false,\n})\nexport class NovoActivityTableEmptyMessage {}\n\n@Directive({\n selector: 'novo-activity-table-no-results-message',\n standalone: false,\n})\nexport class NovoActivityTableNoResultsMessage {}\n\n@Component({\n selector: 'novo-activity-table',\n template: `\n <div *ngIf=\"debug\">\n <p>Total: {{ dataSource?.total }}</p>\n <p>Current: {{ dataSource?.current }}</p>\n <p>Totally Empty: {{ dataSource?.totallyEmpty }}</p>\n <p>Currently Empty: {{ dataSource?.currentlyEmpty }}</p>\n <p>Loading (DataSource): {{ dataSource?.loading }}</p>\n <p>User Filtered: {{ state.userFiltered }}</p>\n <p>Loading (Table): {{ loading }}</p>\n </div>\n <header *ngIf=\"(!(dataSource?.totallyEmpty && !state.userFiltered) && !loading) || forceShowHeader\">\n <ng-content select=\"[novo-activity-table-custom-header]\"></ng-content>\n <novo-search\n [alwaysOpen]=true\n (searchChanged)=\"onSearchChange($event)\"\n [(ngModel)]=\"state.globalSearch\"\n *ngIf=\"!hideGlobalSearch\"\n [placeholder]=\"searchOptions?.placeholder\"\n [hint]=\"searchOptions?.tooltip\"\n >\n </novo-search>\n <novo-simple-table-pagination\n *ngIf=\"paginationOptions\"\n [length]=\"dataSource?.total\"\n [page]=\"paginationOptions.page\"\n [pageSize]=\"paginationOptions.pageSize\"\n [pageSizeOptions]=\"paginationOptions.pageSizeOptions\"\n >\n </novo-simple-table-pagination>\n <div class=\"novo-activity-table-actions\">\n <ng-content select=\"[novo-activity-table-actions]\"></ng-content>\n </div>\n </header>\n <div class=\"novo-activity-table-loading-mask\" *ngIf=\"dataSource?.loading || loading\" data-automation-id=\"novo-activity-table-loading\">\n <novo-loading></novo-loading>\n </div>\n <div class=\"novo-activity-table-filter-container\">\n <div class=\"novo-activity-table-custom-filter\" *ngIf=\"customFilter\">\n <ng-content select=\"[novo-activity-table-custom-filter]\"></ng-content>\n </div>\n <div class=\"novo-activity-table-container\">\n <novo-simple-table\n *ngIf=\"columns?.length > 0\"\n [dataSource]=\"dataSource\"\n novoSortFilter\n novoSelection\n [class.empty]=\"dataSource?.currentlyEmpty && state.userFiltered\"\n [hidden]=\"dataSource?.totallyEmpty && !state.userFiltered\">\n <ng-content></ng-content>\n <ng-container novoSimpleColumnDef=\"selection\">\n <novo-simple-checkbox-header-cell *novoSimpleHeaderCellDef></novo-simple-checkbox-header-cell>\n <novo-simple-checkbox-cell *novoSimpleCellDef=\"let row; let i = index\" [row]=\"row\" [index]=\"i\"></novo-simple-checkbox-cell>\n </ng-container>\n <ng-container *ngFor=\"let column of actionColumns\" [novoSimpleColumnDef]=\"column.id\">\n <novo-simple-empty-header-cell\n [class.button-header-cell]=\"!column.options\"\n [class.dropdown-header-cell]=\"column.options\"\n *novoSimpleHeaderCellDef\n ></novo-simple-empty-header-cell>\n <novo-simple-action-cell *novoSimpleCellDef=\"let row; let i = index\" [row]=\"row\" [column]=\"column\"></novo-simple-action-cell>\n </ng-container>\n <ng-container *ngFor=\"let column of columns\" [novoSimpleColumnDef]=\"column.id\">\n <novo-simple-header-cell\n *novoSimpleHeaderCellDef\n [column]=\"column\"\n [novo-simple-cell-config]=\"column.config\"\n [defaultSort]=\"defaultSort\"\n >{{ column.label }}</novo-simple-header-cell>\n <novo-simple-cell *novoSimpleCellDef=\"let row\" [column]=\"column\" [row]=\"row\"></novo-simple-cell>\n </ng-container>\n <novo-simple-header-row *novoSimpleHeaderRowDef=\"displayedColumns\"></novo-simple-header-row>\n <novo-simple-row *novoSimpleRowDef=\"let row; columns: displayedColumns\"></novo-simple-row>\n </novo-simple-table>\n <div\n class=\"novo-activity-table-no-results-container\"\n *ngIf=\"dataSource?.currentlyEmpty && state.userFiltered && !dataSource?.loading && !loading && !dataSource.pristine\"\n >\n <div #filtered><ng-content select=\"[novo-activity-table-no-results-message]\"></ng-content></div>\n <div class=\"novo-activity-table-empty-message\" *ngIf=\"filtered.childNodes.length == 0\">\n <h4><i class=\"bhi-search-question\"></i> {{ labels.noMatchingRecordsMessage }}</h4>\n </div>\n </div>\n <div\n class=\"novo-activity-table-empty-container\"\n *ngIf=\"dataSource?.totallyEmpty && !dataSource?.loading && !loading && !state.userFiltered && !dataSource.pristine\"\n >\n <div #empty><ng-content select=\"[novo-activity-table-empty-message]\"></ng-content></div>\n <div class=\"novo-activity-table-empty-message\" *ngIf=\"empty.childNodes.length == 0\">\n <h4><i class=\"bhi-search-question\"></i> {{ labels.emptyTableMessage }}</h4>\n </div>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./table.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n NovoActivityTableState,\n { provide: _VIEW_REPEATER_STRATEGY, useClass: _DisposeViewRepeaterStrategy },\n ],\n standalone: false,\n})\nexport class NovoActivityTable<T> implements AfterContentInit, OnChanges, OnDestroy {\n @HostBinding('class.global-search-hidden')\n globalSearchHiddenClassToggle: boolean = false;\n\n @Input()\n activityService: ActivityTableService<T>;\n @Input()\n columns: SimpleTableColumn<T>[];\n @Input()\n displayedColumns: string[];\n @Input()\n actionColumns: SimpleTableActionColumn<T>[];\n @Input()\n paginationOptions: SimpleTablePaginationOptions;\n @Input()\n searchOptions: SimpleTableSearchOptions;\n @Input()\n defaultSort: { id: string; value: string };\n @Input()\n outsideFilter: EventEmitter<any>;\n\n @Input()\n set customFilter(v: boolean) {\n this._customFilter = coerceBooleanProperty(v);\n }\n get customFilter() {\n return this._customFilter;\n }\n private _customFilter: boolean;\n\n @Input()\n set forceShowHeader(v: boolean) {\n this._forceShowHeader = coerceBooleanProperty(v);\n }\n get forceShowHeader() {\n return this._forceShowHeader;\n }\n private _forceShowHeader: boolean;\n\n @Input()\n set hideGlobalSearch(v: boolean) {\n this._hideGlobalSearch = coerceBooleanProperty(v);\n this.globalSearchHiddenClassToggle = this._hideGlobalSearch;\n }\n get hideGlobalSearch() {\n return this._hideGlobalSearch;\n }\n private _hideGlobalSearch: boolean;\n\n @Input()\n set debug(v: boolean) {\n this._debug = coerceBooleanProperty(v);\n }\n get debug() {\n return this._debug;\n }\n private _debug: boolean;\n\n public dataSource: ActivityTableDataSource<T>;\n public loading: boolean = true;\n\n private outsideFilterSubscription: Subscription;\n\n @HostBinding('class.empty')\n get empty() {\n return this.dataSource && this.dataSource.totallyEmpty;\n }\n\n @HostBinding('class.loading')\n get loadingClass() {\n return this.loading || (this.dataSource && this.dataSource.loading);\n }\n\n constructor(public labels: NovoLabelService, private ref: ChangeDetectorRef, public state: NovoActivityTableState) {\n notify('[Deprecated]: The simple table is deprecated. Please migrate to novo-data-tables!');\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n this.loading = changes.activityService && !changes.activityService.currentValue;\n this.ref.detectChanges();\n if (changes.activityService && changes.activityService.currentValue) {\n this.loading = false;\n this.dataSource = new ActivityTableDataSource<T>(this.activityService, this.state, this.ref);\n this.ref.detectChanges();\n }\n if (changes.outsideFilter && changes.outsideFilter.currentValue) {\n if (!this.outsideFilterSubscription) {\n this.outsideFilterSubscription = this.outsideFilter.subscribe((filter: any) => {\n this.state.outsideFilter = filter;\n this.state.updates.next({ globalSearch: this.state.globalSearch, filter: this.state.filter, sort: this.state.sort });\n this.ref.markForCheck();\n });\n }\n }\n }\n\n public ngOnDestroy(): void {\n if (this.outsideFilterSubscription) {\n this.outsideFilterSubscription.unsubscribe();\n }\n }\n\n public ngAfterContentInit(): void {\n if (this.paginationOptions && !this.paginationOptions.page) {\n this.paginationOptions.page = 0;\n }\n if (this.paginationOptions && !this.paginationOptions.pageSize) {\n this.paginationOptions.pageSize = 50;\n }\n if (this.paginationOptions && !this.paginationOptions.pageSizeOptions) {\n this.paginationOptions.pageSizeOptions = [10, 25, 50, 100];\n }\n this.state.page = this.paginationOptions ? this.paginationOptions.page : undefined;\n this.state.pageSize = this.paginationOptions ? this.paginationOptions.pageSize : undefined;\n this.ref.markForCheck();\n }\n\n public onSearchChange(term: string): void {\n this.state.globalSearch = term;\n this.state.reset(false, true);\n this.state.updates.next({ globalSearch: term, filter: this.state.filter, sort: this.state.sort });\n }\n}\n","import { CdkTableModule } from '@angular/cdk/table';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoCheckboxModule } from 'novo-elements/elements/checkbox';\nimport { NovoCommonModule, NovoOptionModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoDropdownModule } from 'novo-elements/elements/dropdown';\nimport { NovoFormExtrasModule } from 'novo-elements/elements/form';\nimport { NovoLoadingModule } from 'novo-elements/elements/loading';\nimport { NovoSearchBoxModule } from 'novo-elements/elements/search';\nimport { NovoSelectModule } from 'novo-elements/elements/select';\nimport { NovoTilesModule } from 'novo-elements/elements/tiles';\nimport {\n NovoSimpleActionCell,\n NovoSimpleCell,\n NovoSimpleCellDef,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSimpleColumnDef,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleHeaderCellDef,\n} from './cell';\nimport { NovoSimpleCellHeader, NovoSimpleFilterFocus } from './cell-header';\nimport { NovoSimpleTablePagination } from './pagination';\nimport { Pagination } from './PaginationOld';\nimport { NovoSimpleHeaderRow, NovoSimpleHeaderRowDef, NovoSimpleRow, NovoSimpleRowDef } from './row';\nimport { NovoSelection, NovoSortFilter } from './sort';\nimport { NovoActivityTableState } from './state';\nimport {\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n NovoActivityTableCustomHeader,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoTable,\n} from './table';\n\n@NgModule({\n imports: [\n NovoDatePickerModule,\n CdkTableModule,\n CommonModule,\n FormsModule,\n NovoCommonModule,\n NovoButtonModule,\n NovoDropdownModule,\n NovoFormExtrasModule,\n NovoLoadingModule,\n NovoTilesModule,\n NovoSearchBoxModule,\n NovoSelectModule,\n NovoCheckboxModule,\n NovoOptionModule,\n ],\n exports: [\n NovoTable,\n NovoSimpleCellDef,\n NovoSimpleHeaderCellDef,\n NovoSimpleColumnDef,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoSimpleHeaderRowDef,\n NovoSimpleRowDef,\n NovoSimpleCellHeader,\n NovoSortFilter,\n NovoSimpleActionCell,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleCell,\n NovoSimpleHeaderRow,\n NovoSimpleRow,\n NovoSimpleFilterFocus,\n NovoSimpleTablePagination,\n NovoActivityTableCustomHeader,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSelection,\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n Pagination,\n ],\n declarations: [\n NovoTable,\n NovoSimpleCellDef,\n NovoSimpleHeaderCellDef,\n NovoSimpleColumnDef,\n NovoActivityTableEmptyMessage,\n NovoActivityTableNoResultsMessage,\n NovoSimpleHeaderRowDef,\n NovoSimpleRowDef,\n NovoSimpleCellHeader,\n NovoSortFilter,\n NovoSimpleActionCell,\n NovoSimpleEmptyHeaderCell,\n NovoSimpleHeaderCell,\n NovoSimpleCell,\n NovoSimpleHeaderRow,\n NovoSimpleRow,\n NovoSimpleFilterFocus,\n NovoSimpleTablePagination,\n NovoActivityTableCustomHeader,\n NovoSimpleCheckboxCell,\n NovoSimpleCheckboxHeaderCell,\n NovoSelection,\n NovoActivityTable,\n NovoActivityTableActions,\n NovoActivityTableCustomFilter,\n Pagination,\n ],\n providers: [NovoActivityTableState],\n})\nexport class NovoSimpleTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.NovoActivityTableState","i2.NovoSelection","i5","i7","i8","i1","i2.NovoActivityTableState","i3.NovoSortFilter","i4","i9","i10","i3","i6","i2","i3.NovoActivityTableState","i8.NovoSimpleCellDef","i8.NovoSimpleHeaderCellDef","i8.NovoSimpleColumnDef","i9.NovoSimpleHeaderRowDef","i9.NovoSimpleRowDef","i10.NovoSimpleCellHeader","i11.NovoSortFilter","i8.NovoSimpleActionCell","i8.NovoSimpleEmptyHeaderCell","i8.NovoSimpleHeaderCell","i8.NovoSimpleCell","i9.NovoSimpleHeaderRow","i9.NovoSimpleRow","i12.NovoSimpleTablePagination","i8.NovoSimpleCheckboxCell","i8.NovoSimpleCheckboxHeaderCell","i11.NovoSelection"],"mappings":"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"}