@wavemaker/app-ng-runtime 11.14.3-rc.6401 → 11.14.4-rc.647538

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 (409) hide show
  1. package/components/advanced/carousel/bundles/index.umd.js +1 -15
  2. package/components/advanced/carousel/carousel.directive.d.ts +0 -1
  3. package/components/advanced/carousel/esm2022/carousel.directive.mjs +2 -16
  4. package/components/advanced/carousel/fesm2022/index.mjs +1 -15
  5. package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  6. package/components/advanced/login/bundles/index.umd.js +3 -24
  7. package/components/advanced/login/esm2022/login.component.mjs +4 -25
  8. package/components/advanced/login/fesm2022/index.mjs +3 -24
  9. package/components/advanced/login/fesm2022/index.mjs.map +1 -1
  10. package/components/advanced/login/login.component.d.ts +2 -5
  11. package/components/base/bundles/index.umd.js +28 -323
  12. package/components/base/directives/show-in-device.directive.d.ts +1 -2
  13. package/components/base/esm2022/directives/show-in-device.directive.mjs +4 -22
  14. package/components/base/esm2022/pipes/custom-pipes.mjs +1 -1
  15. package/components/base/esm2022/utils/widget-utils.mjs +3 -3
  16. package/components/base/esm2022/widgets/common/base/base-container.component.mjs +1 -27
  17. package/components/base/esm2022/widgets/common/base/base-field-validations.mjs +1 -18
  18. package/components/base/esm2022/widgets/common/base/base.component.mjs +7 -68
  19. package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +1 -9
  20. package/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +11 -44
  21. package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +1 -20
  22. package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +1 -26
  23. package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +4 -44
  24. package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +1 -16
  25. package/components/base/esm2022/widgets/common/pull-to-refresh/pull-to-refresh.mjs +1 -22
  26. package/components/base/esm2022/widgets/framework/property-change-handler.mjs +2 -7
  27. package/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +3 -5
  28. package/components/base/esm2022/widgets/framework/widget-registry.mjs +3 -6
  29. package/components/base/fesm2022/index.mjs +26 -319
  30. package/components/base/fesm2022/index.mjs.map +1 -1
  31. package/components/base/widgets/common/base/base-container.component.d.ts +2 -3
  32. package/components/base/widgets/common/base/base-field-validations.d.ts +0 -1
  33. package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +2 -3
  34. package/components/base/widgets/common/base/dataset-aware-nav.component.d.ts +2 -6
  35. package/components/base/widgets/common/base/partial-container.directive.d.ts +2 -3
  36. package/components/base/widgets/common/item-template/item-template.directive.d.ts +2 -3
  37. package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +1 -1
  38. package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +2 -3
  39. package/components/base/widgets/common/pull-to-refresh/pull-to-refresh.d.ts +2 -3
  40. package/components/basic/anchor/bundles/index.umd.js +1 -13
  41. package/components/basic/anchor/esm2022/anchor.component.mjs +2 -14
  42. package/components/basic/anchor/fesm2022/index.mjs +1 -13
  43. package/components/basic/anchor/fesm2022/index.mjs.map +1 -1
  44. package/components/basic/html/bundles/index.umd.js +1 -13
  45. package/components/basic/html/esm2022/html.directive.mjs +2 -14
  46. package/components/basic/html/fesm2022/index.mjs +1 -13
  47. package/components/basic/html/fesm2022/index.mjs.map +1 -1
  48. package/components/basic/label/bundles/index.umd.js +1 -17
  49. package/components/basic/label/esm2022/label.directive.mjs +2 -18
  50. package/components/basic/label/fesm2022/index.mjs +1 -17
  51. package/components/basic/label/fesm2022/index.mjs.map +1 -1
  52. package/components/basic/label/label.directive.d.ts +2 -3
  53. package/components/basic/progress/progress-circle/bundles/index.umd.js +0 -10
  54. package/components/basic/progress/progress-circle/esm2022/progress-circle.component.mjs +1 -11
  55. package/components/basic/progress/progress-circle/fesm2022/index.mjs +0 -10
  56. package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -1
  57. package/components/basic/progress/progress-circle/progress-circle.component.d.ts +2 -3
  58. package/components/basic/search/bundles/index.umd.js +1 -27
  59. package/components/basic/search/esm2022/scrollable.directive.mjs +2 -11
  60. package/components/basic/search/esm2022/search.component.mjs +1 -18
  61. package/components/basic/search/fesm2022/index.mjs +1 -27
  62. package/components/basic/search/fesm2022/index.mjs.map +1 -1
  63. package/components/basic/search/scrollable.directive.d.ts +2 -4
  64. package/components/basic/search/search.component.d.ts +2 -3
  65. package/components/basic/spinner/bundles/index.umd.js +1 -9
  66. package/components/basic/spinner/esm2022/spinner.component.mjs +2 -10
  67. package/components/basic/spinner/fesm2022/index.mjs +1 -9
  68. package/components/basic/spinner/fesm2022/index.mjs.map +1 -1
  69. package/components/basic/spinner/spinner.component.d.ts +2 -4
  70. package/components/chart/bundles/index.umd.js +3 -21
  71. package/components/chart/esm2022/chart.component.mjs +4 -22
  72. package/components/chart/fesm2022/index.mjs +3 -21
  73. package/components/chart/fesm2022/index.mjs.map +1 -1
  74. package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +2 -3
  75. package/components/containers/accordion/accordion.directive.d.ts +2 -5
  76. package/components/containers/accordion/bundles/index.umd.js +2 -49
  77. package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +1 -10
  78. package/components/containers/accordion/esm2022/accordion.directive.mjs +3 -41
  79. package/components/containers/accordion/fesm2022/index.mjs +2 -49
  80. package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  81. package/components/containers/panel/bundles/index.umd.js +0 -13
  82. package/components/containers/panel/esm2022/panel.component.mjs +1 -14
  83. package/components/containers/panel/fesm2022/index.mjs +0 -13
  84. package/components/containers/panel/fesm2022/index.mjs.map +1 -1
  85. package/components/containers/panel/panel.component.d.ts +2 -3
  86. package/components/containers/tabs/bundles/index.umd.js +2 -54
  87. package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +1 -10
  88. package/components/containers/tabs/esm2022/tabs.component.mjs +3 -46
  89. package/components/containers/tabs/fesm2022/index.mjs +2 -54
  90. package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  91. package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +2 -3
  92. package/components/containers/tabs/tabs.component.d.ts +2 -5
  93. package/components/containers/wizard/bundles/index.umd.js +3 -47
  94. package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +3 -16
  95. package/components/containers/wizard/esm2022/wizard.component.mjs +2 -33
  96. package/components/containers/wizard/fesm2022/index.mjs +3 -47
  97. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  98. package/components/containers/wizard/wizard-step/wizard-step.component.d.ts +2 -3
  99. package/components/containers/wizard/wizard.component.d.ts +2 -4
  100. package/components/data/card/bundles/index.umd.js +1 -17
  101. package/components/data/card/card-content/card-content.component.d.ts +2 -3
  102. package/components/data/card/card.component.d.ts +2 -4
  103. package/components/data/card/esm2022/card-content/card-content.component.mjs +1 -6
  104. package/components/data/card/esm2022/card.component.mjs +2 -13
  105. package/components/data/card/fesm2022/index.mjs +1 -17
  106. package/components/data/card/fesm2022/index.mjs.map +1 -1
  107. package/components/data/form/bundles/index.umd.js +0 -92
  108. package/components/data/form/esm2022/form-action/form-action.directive.mjs +1 -7
  109. package/components/data/form/esm2022/form-field/form-field.directive.mjs +1 -28
  110. package/components/data/form/esm2022/form-widget.directive.mjs +1 -8
  111. package/components/data/form/esm2022/form.component.mjs +1 -27
  112. package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +1 -7
  113. package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +1 -12
  114. package/components/data/form/esm2022/live-form/live-form.directive.mjs +1 -10
  115. package/components/data/form/fesm2022/index.mjs +0 -92
  116. package/components/data/form/fesm2022/index.mjs.map +1 -1
  117. package/components/data/form/form-action/form-action.directive.d.ts +2 -3
  118. package/components/data/form/form-field/form-field.directive.d.ts +2 -3
  119. package/components/data/form/form-widget.directive.d.ts +2 -3
  120. package/components/data/form/live-actions/live-actions.directive.d.ts +1 -3
  121. package/components/data/form/live-filter/live-filter.directive.d.ts +1 -3
  122. package/components/data/form/live-form/live-form.directive.d.ts +1 -3
  123. package/components/data/list/bundles/index.umd.js +17 -180
  124. package/components/data/list/esm2022/list-item.directive.mjs +11 -95
  125. package/components/data/list/esm2022/list.component.mjs +8 -87
  126. package/components/data/list/fesm2022/index.mjs +17 -180
  127. package/components/data/list/fesm2022/index.mjs.map +1 -1
  128. package/components/data/list/list-item.directive.d.ts +2 -7
  129. package/components/data/list/list.component.d.ts +0 -3
  130. package/components/data/live-table/bundles/index.umd.js +1 -13
  131. package/components/data/live-table/esm2022/live-table.component.mjs +2 -14
  132. package/components/data/live-table/fesm2022/index.mjs +1 -13
  133. package/components/data/live-table/fesm2022/index.mjs.map +1 -1
  134. package/components/data/live-table/live-table.component.d.ts +2 -4
  135. package/components/data/pagination/bundles/index.umd.js +4 -57
  136. package/components/data/pagination/esm2022/pagination.component.mjs +5 -58
  137. package/components/data/pagination/fesm2022/index.mjs +4 -57
  138. package/components/data/pagination/fesm2022/index.mjs.map +1 -1
  139. package/components/data/pagination/pagination.component.d.ts +2 -4
  140. package/components/data/table/bundles/index.umd.js +12 -311
  141. package/components/data/table/esm2022/table-action/table-action.directive.mjs +1 -8
  142. package/components/data/table/esm2022/table-column/table-column.directive.mjs +3 -107
  143. package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +1 -9
  144. package/components/data/table/esm2022/table-cud.directive.mjs +2 -8
  145. package/components/data/table/esm2022/table-filter.directive.mjs +2 -12
  146. package/components/data/table/esm2022/table-row/table-row.directive.mjs +1 -8
  147. package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +1 -8
  148. package/components/data/table/esm2022/table.component.mjs +9 -159
  149. package/components/data/table/fesm2022/index.mjs +12 -311
  150. package/components/data/table/fesm2022/index.mjs.map +1 -1
  151. package/components/data/table/table-action/table-action.directive.d.ts +2 -3
  152. package/components/data/table/table-column/table-column.directive.d.ts +2 -3
  153. package/components/data/table/table-column-group/table-column-group.directive.d.ts +2 -3
  154. package/components/data/table/table-cud.directive.d.ts +1 -3
  155. package/components/data/table/table-filter.directive.d.ts +1 -3
  156. package/components/data/table/table-row/table-row.directive.d.ts +2 -3
  157. package/components/data/table/table-row-action/table-row-action.directive.d.ts +2 -3
  158. package/components/data/table/table.component.d.ts +2 -2
  159. package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +2 -3
  160. package/components/dialogs/alert-dialog/bundles/index.umd.js +0 -5
  161. package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +1 -6
  162. package/components/dialogs/alert-dialog/fesm2022/index.mjs +0 -5
  163. package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  164. package/components/dialogs/confirm-dialog/bundles/index.umd.js +0 -5
  165. package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +2 -3
  166. package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +1 -6
  167. package/components/dialogs/confirm-dialog/fesm2022/index.mjs +0 -5
  168. package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  169. package/components/dialogs/default/bundles/index.umd.js +2 -15
  170. package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +2 -4
  171. package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +3 -16
  172. package/components/dialogs/default/fesm2022/index.mjs +2 -15
  173. package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  174. package/components/dialogs/design-dialog/bundles/index.umd.js +0 -7
  175. package/components/dialogs/design-dialog/dialog.component.d.ts +2 -3
  176. package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +1 -8
  177. package/components/dialogs/design-dialog/fesm2022/index.mjs +0 -7
  178. package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  179. package/components/dialogs/iframe-dialog/bundles/index.umd.js +0 -5
  180. package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +1 -6
  181. package/components/dialogs/iframe-dialog/fesm2022/index.mjs +0 -5
  182. package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  183. package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +2 -3
  184. package/components/dialogs/partial-dialog/bundles/index.umd.js +3 -23
  185. package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +4 -24
  186. package/components/dialogs/partial-dialog/fesm2022/index.mjs +3 -23
  187. package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  188. package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +2 -4
  189. package/components/input/base-form/base-form.component.d.ts +2 -4
  190. package/components/input/base-form/bundles/index.umd.js +2 -16
  191. package/components/input/base-form/esm2022/base-form.component.mjs +3 -17
  192. package/components/input/base-form/fesm2022/index.mjs +2 -16
  193. package/components/input/base-form/fesm2022/index.mjs.map +1 -1
  194. package/components/input/base-form-custom/base-form-custom.component.d.ts +2 -3
  195. package/components/input/base-form-custom/bundles/index.umd.js +2 -13
  196. package/components/input/base-form-custom/esm2022/base-form-custom.component.mjs +3 -14
  197. package/components/input/base-form-custom/fesm2022/index.mjs +2 -13
  198. package/components/input/base-form-custom/fesm2022/index.mjs.map +1 -1
  199. package/components/input/checkbox/bundles/index.umd.js +0 -7
  200. package/components/input/checkbox/checkbox.component.d.ts +2 -3
  201. package/components/input/checkbox/esm2022/checkbox.component.mjs +1 -8
  202. package/components/input/checkbox/fesm2022/index.mjs +0 -7
  203. package/components/input/checkbox/fesm2022/index.mjs.map +1 -1
  204. package/components/input/checkboxset/bundles/index.umd.js +2 -18
  205. package/components/input/checkboxset/checkboxset.component.d.ts +2 -4
  206. package/components/input/checkboxset/esm2022/checkboxset.component.mjs +3 -19
  207. package/components/input/checkboxset/fesm2022/index.mjs +2 -18
  208. package/components/input/checkboxset/fesm2022/index.mjs.map +1 -1
  209. package/components/input/chips/bundles/index.umd.js +5 -45
  210. package/components/input/chips/chips.component.d.ts +2 -3
  211. package/components/input/chips/esm2022/chips.component.mjs +6 -46
  212. package/components/input/chips/fesm2022/index.mjs +5 -45
  213. package/components/input/chips/fesm2022/index.mjs.map +1 -1
  214. package/components/input/color-picker/bundles/index.umd.js +0 -8
  215. package/components/input/color-picker/color-picker.component.d.ts +2 -3
  216. package/components/input/color-picker/esm2022/color-picker.component.mjs +1 -9
  217. package/components/input/color-picker/fesm2022/index.mjs +0 -8
  218. package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  219. package/components/input/composite/bundles/index.umd.js +1 -10
  220. package/components/input/composite/composite.directive.d.ts +2 -3
  221. package/components/input/composite/esm2022/composite.directive.mjs +2 -11
  222. package/components/input/composite/fesm2022/index.mjs +1 -10
  223. package/components/input/composite/fesm2022/index.mjs.map +1 -1
  224. package/components/input/currency/bundles/index.umd.js +0 -7
  225. package/components/input/currency/currency.component.d.ts +2 -3
  226. package/components/input/currency/esm2022/currency.component.mjs +1 -8
  227. package/components/input/currency/fesm2022/index.mjs +0 -7
  228. package/components/input/currency/fesm2022/index.mjs.map +1 -1
  229. package/components/input/dataset-aware-form/bundles/index.umd.js +2 -26
  230. package/components/input/dataset-aware-form/esm2022/dataset-aware-form.component.mjs +3 -27
  231. package/components/input/dataset-aware-form/fesm2022/index.mjs +2 -26
  232. package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -1
  233. package/components/input/epoch/date/bundles/index.umd.js +0 -22
  234. package/components/input/epoch/date/date.component.d.ts +0 -1
  235. package/components/input/epoch/date/esm2022/date.component.mjs +1 -23
  236. package/components/input/epoch/date/fesm2022/index.mjs +0 -22
  237. package/components/input/epoch/date/fesm2022/index.mjs.map +1 -1
  238. package/components/input/file-upload/bundles/index.umd.js +8 -25
  239. package/components/input/file-upload/esm2022/file-upload.component.mjs +9 -26
  240. package/components/input/file-upload/fesm2022/index.mjs +8 -25
  241. package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  242. package/components/input/file-upload/file-upload.component.d.ts +0 -3
  243. package/components/input/number/bundles/index.umd.js +0 -8
  244. package/components/input/number/esm2022/number.component.mjs +1 -9
  245. package/components/input/number/fesm2022/index.mjs +0 -8
  246. package/components/input/number/fesm2022/index.mjs.map +1 -1
  247. package/components/input/number/number.component.d.ts +2 -3
  248. package/components/input/radioset/bundles/index.umd.js +2 -18
  249. package/components/input/radioset/esm2022/radioset.component.mjs +3 -19
  250. package/components/input/radioset/fesm2022/index.mjs +2 -18
  251. package/components/input/radioset/fesm2022/index.mjs.map +1 -1
  252. package/components/input/radioset/radioset.component.d.ts +2 -4
  253. package/components/input/rating/bundles/index.umd.js +0 -10
  254. package/components/input/rating/esm2022/rating.component.mjs +1 -11
  255. package/components/input/rating/fesm2022/index.mjs +0 -10
  256. package/components/input/rating/fesm2022/index.mjs.map +1 -1
  257. package/components/input/rating/rating.component.d.ts +2 -3
  258. package/components/input/select/bundles/index.umd.js +0 -6
  259. package/components/input/select/esm2022/select.component.mjs +1 -7
  260. package/components/input/select/fesm2022/index.mjs +0 -6
  261. package/components/input/select/fesm2022/index.mjs.map +1 -1
  262. package/components/input/select/select.component.d.ts +2 -3
  263. package/components/input/slider/bundles/index.umd.js +0 -10
  264. package/components/input/slider/esm2022/slider.component.mjs +1 -11
  265. package/components/input/slider/fesm2022/index.mjs +0 -10
  266. package/components/input/slider/fesm2022/index.mjs.map +1 -1
  267. package/components/input/slider/slider.component.d.ts +2 -3
  268. package/components/input/switch/bundles/index.umd.js +2 -22
  269. package/components/input/switch/esm2022/switch.component.mjs +3 -23
  270. package/components/input/switch/fesm2022/index.mjs +2 -22
  271. package/components/input/switch/fesm2022/index.mjs.map +1 -1
  272. package/components/input/switch/switch.component.d.ts +2 -3
  273. package/components/input/text/bundles/index.umd.js +0 -36
  274. package/components/input/text/esm2022/input-calendar/input-calendar.component.mjs +1 -8
  275. package/components/input/text/esm2022/input-color/input-color.component.mjs +1 -8
  276. package/components/input/text/esm2022/input-email/input-email.component.mjs +1 -8
  277. package/components/input/text/esm2022/input-number/input-number.component.mjs +1 -8
  278. package/components/input/text/esm2022/input-text/input-text.component.mjs +1 -9
  279. package/components/input/text/fesm2022/index.mjs +0 -36
  280. package/components/input/text/fesm2022/index.mjs.map +1 -1
  281. package/components/input/text/input-calendar/input-calendar.component.d.ts +2 -3
  282. package/components/input/text/input-color/input-color.component.d.ts +2 -3
  283. package/components/input/text/input-email/input-email.component.d.ts +2 -3
  284. package/components/input/text/input-number/input-number.component.d.ts +2 -3
  285. package/components/input/text/input-text/input-text.component.d.ts +2 -3
  286. package/components/input/textarea/bundles/index.umd.js +0 -7
  287. package/components/input/textarea/esm2022/textarea.component.mjs +1 -8
  288. package/components/input/textarea/fesm2022/index.mjs +0 -7
  289. package/components/input/textarea/fesm2022/index.mjs.map +1 -1
  290. package/components/input/textarea/textarea.component.d.ts +2 -3
  291. package/components/navigation/menu/bundles/index.umd.js +6 -55
  292. package/components/navigation/menu/esm2022/menu-adapator.component.mjs +3 -17
  293. package/components/navigation/menu/esm2022/menu.component.mjs +3 -10
  294. package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +1 -6
  295. package/components/navigation/menu/esm2022/nav/nav.component.mjs +1 -11
  296. package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +3 -16
  297. package/components/navigation/menu/fesm2022/index.mjs +6 -55
  298. package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  299. package/components/navigation/menu/menu-adapator.component.d.ts +2 -4
  300. package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +2 -3
  301. package/components/navigation/menu/nav/nav.component.d.ts +2 -3
  302. package/components/navigation/menu/nav/navigation-control.directive.d.ts +2 -4
  303. package/components/navigation/navbar/bundles/index.umd.js +0 -5
  304. package/components/navigation/navbar/esm2022/navbar.component.mjs +1 -6
  305. package/components/navigation/navbar/fesm2022/index.mjs +0 -5
  306. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
  307. package/components/navigation/navbar/navbar.component.d.ts +2 -3
  308. package/components/navigation/popover/bundles/index.umd.js +13 -65
  309. package/components/navigation/popover/esm2022/popover.component.mjs +11 -63
  310. package/components/navigation/popover/fesm2022/index.mjs +10 -62
  311. package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  312. package/components/navigation/popover/popover.component.d.ts +3 -11
  313. package/components/page/default/bundles/index.umd.js +2 -20
  314. package/components/page/default/esm2022/layout.directive.mjs +1 -9
  315. package/components/page/default/esm2022/page-content/page-content.component.mjs +3 -13
  316. package/components/page/default/fesm2022/index.mjs +2 -20
  317. package/components/page/default/fesm2022/index.mjs.map +1 -1
  318. package/components/page/default/layout.directive.d.ts +2 -3
  319. package/components/page/default/page-content/page-content.component.d.ts +2 -3
  320. package/components/page/left-panel/bundles/index.umd.js +0 -16
  321. package/components/page/left-panel/esm2022/left-panel.directive.mjs +1 -17
  322. package/components/page/left-panel/fesm2022/index.mjs +0 -16
  323. package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  324. package/components/page/left-panel/left-panel.directive.d.ts +2 -3
  325. package/components/page/top-nav/bundles/index.umd.js +1 -2
  326. package/components/page/top-nav/esm2022/top-nav.props.mjs +2 -3
  327. package/components/page/top-nav/fesm2022/index.mjs +1 -2
  328. package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  329. package/components/prefab/bundles/index.umd.js +0 -4
  330. package/components/prefab/esm2022/prefab.directive.mjs +1 -5
  331. package/components/prefab/fesm2022/index.mjs +0 -4
  332. package/components/prefab/fesm2022/index.mjs.map +1 -1
  333. package/core/bundles/index.umd.js +94 -391
  334. package/core/esm2022/public_api.mjs +3 -3
  335. package/core/esm2022/services/viewport.service.mjs +10 -24
  336. package/core/esm2022/types/types.mjs +1 -1
  337. package/core/esm2022/utils/dom.mjs +2 -18
  338. package/core/esm2022/utils/event-notifier.mjs +2 -5
  339. package/core/esm2022/utils/lru-cache.mjs +2 -16
  340. package/core/esm2022/utils/utils.mjs +2 -6
  341. package/core/esm2022/utils/watcher.mjs +81 -323
  342. package/core/fesm2022/index.mjs +96 -390
  343. package/core/fesm2022/index.mjs.map +1 -1
  344. package/core/public_api.d.ts +2 -2
  345. package/core/services/viewport.service.d.ts +2 -5
  346. package/core/types/types.d.ts +0 -1
  347. package/core/utils/lru-cache.d.ts +0 -6
  348. package/core/utils/utils.d.ts +0 -1
  349. package/core/utils/watcher.d.ts +5 -26
  350. package/http/bundles/index.umd.js +1 -31
  351. package/http/esm2022/http.service.mjs +2 -32
  352. package/http/fesm2022/index.mjs +1 -31
  353. package/http/fesm2022/index.mjs.map +1 -1
  354. package/http/http.service.d.ts +2 -6
  355. package/locales/moment-timezone/moment-timezone-with-data.js +7 -7
  356. package/npm-shrinkwrap.json +2 -2
  357. package/oAuth/bundles/index.umd.js +0 -9
  358. package/oAuth/esm2022/oAuth.service.mjs +1 -10
  359. package/oAuth/fesm2022/index.mjs +0 -9
  360. package/oAuth/fesm2022/index.mjs.map +1 -1
  361. package/oAuth/oAuth.service.d.ts +1 -3
  362. package/package-lock.json +2 -2
  363. package/package.json +1 -1
  364. package/runtime/base/bundles/index.umd.js +42 -376
  365. package/runtime/base/components/app-component/app.component.d.ts +0 -4
  366. package/runtime/base/components/prefab-preview.component.d.ts +2 -5
  367. package/runtime/base/directives/accessroles.directive.d.ts +3 -4
  368. package/runtime/base/directives/prefab.directive.d.ts +2 -3
  369. package/runtime/base/esm2022/components/app-component/app.component.mjs +9 -40
  370. package/runtime/base/esm2022/components/base-custom-widget.component.mjs +2 -33
  371. package/runtime/base/esm2022/components/base-layout.component.mjs +1 -7
  372. package/runtime/base/esm2022/components/base-page.component.mjs +3 -36
  373. package/runtime/base/esm2022/components/base-partial.component.mjs +3 -37
  374. package/runtime/base/esm2022/components/base-prefab.component.mjs +3 -32
  375. package/runtime/base/esm2022/components/base-spa-page.component.mjs +3 -37
  376. package/runtime/base/esm2022/components/prefab-preview.component.mjs +4 -23
  377. package/runtime/base/esm2022/directives/accessroles.directive.mjs +2 -11
  378. package/runtime/base/esm2022/directives/prefab.directive.mjs +1 -9
  379. package/runtime/base/esm2022/services/app.manager.service.mjs +10 -37
  380. package/runtime/base/esm2022/services/app.service.mjs +2 -34
  381. package/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +1 -4
  382. package/runtime/base/esm2022/services/http-interceptor.services.mjs +14 -13
  383. package/runtime/base/esm2022/services/pipe-provider.service.mjs +4 -7
  384. package/runtime/base/esm2022/services/spinner.service.mjs +1 -15
  385. package/runtime/base/esm2022/util/fragment-monitor.mjs +2 -23
  386. package/runtime/base/fesm2022/index.mjs +44 -377
  387. package/runtime/base/fesm2022/index.mjs.map +1 -1
  388. package/runtime/base/services/app.manager.service.d.ts +1 -6
  389. package/runtime/base/services/app.service.d.ts +2 -12
  390. package/runtime/base/services/dynamic-component-ref-provider.service.d.ts +1 -2
  391. package/runtime/base/services/spinner.service.d.ts +1 -3
  392. package/runtime/base/util/fragment-monitor.d.ts +0 -6
  393. package/runtime/dynamic/bundles/index.umd.js +0 -5
  394. package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +1 -6
  395. package/runtime/dynamic/fesm2022/index.mjs +0 -5
  396. package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  397. package/scripts/datatable/datatable.js +14 -100
  398. package/security/bundles/index.umd.js +2 -41
  399. package/security/esm2022/security.service.mjs +3 -42
  400. package/security/fesm2022/index.mjs +2 -41
  401. package/security/fesm2022/index.mjs.map +1 -1
  402. package/security/security.service.d.ts +2 -5
  403. package/variables/bundles/index.umd.js +6 -50
  404. package/variables/esm2022/manager/action/notification-action.manager.mjs +3 -18
  405. package/variables/esm2022/manager/variable/base-variable.manager.mjs +2 -15
  406. package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +3 -13
  407. package/variables/esm2022/service/variables.service.mjs +2 -8
  408. package/variables/fesm2022/index.mjs +6 -50
  409. package/variables/fesm2022/index.mjs.map +1 -1
@@ -186,15 +186,8 @@
186
186
  this.setDataGridOption('colDefs', i2.getClonedObject(this.fieldDefs));
187
187
  }
188
188
  // If data and colDefs are present, call on before data render event
189
- // Note: Errors in beforedatarender should not prevent table rendering
190
189
  if (!this.isdynamictable && !lodashEs.isEmpty(newValue) && gridOptions.colDefs.length) {
191
- try {
192
- this.invokeEventCallback('beforedatarender', { $data: this._gridData, $columns: this.columns, data: this._gridData, columns: this.columns });
193
- }
194
- catch (error) {
195
- // Log error but continue with rendering - beforedatarender errors should not block table rendering
196
- console.warn('Error in beforedatarender event callback, continuing with table rendering:', error);
197
- }
190
+ this.invokeEventCallback('beforedatarender', { $data: this._gridData, $columns: this.columns, data: this._gridData, columns: this.columns });
198
191
  }
199
192
  this.setDataGridOption('data', i2.getClonedObject(this._gridData));
200
193
  }
@@ -587,7 +580,7 @@
587
580
  this.prevData = i2.getClonedObject(row);
588
581
  },
589
582
  afterRowUpdate: (row, e, callBack, options) => {
590
- this.updateRecord(lodashEs.extend({}, options, { row, 'prevData': options.rowindex ? options.rowindex : this.prevData, 'event': e, 'callBack': callBack }));
583
+ this.updateRecord(lodashEs.extend({}, options, { row, 'prevData': this.prevData, 'event': e, 'callBack': callBack }));
591
584
  },
592
585
  onBeforeRowUpdate: (row, e, options) => {
593
586
  return this.invokeEventCallback('beforerowupdate', { $event: e, $data: row, row, options: options });
@@ -1241,10 +1234,6 @@
1241
1234
  return this.actualPageSize || 5;
1242
1235
  }
1243
1236
  watchVariableDataSet(newVal) {
1244
- // Guard against component destruction
1245
- if (this.isDestroyed) {
1246
- return;
1247
- }
1248
1237
  let result;
1249
1238
  // Check for Variable filters if applied
1250
1239
  if (this.gridOptions.isNavTypeScrollOrOndemand()) {
@@ -1302,12 +1291,6 @@
1302
1291
  }
1303
1292
  /*Return if data is invalid.*/
1304
1293
  if (!this.isDataValid()) {
1305
- // If data is invalid and variableInflight is still true, clear loading state
1306
- // This prevents tables from getting stuck in loading when data is invalid
1307
- if (this.variableInflight) {
1308
- this.variableInflight = false;
1309
- this.setGridData([]);
1310
- }
1311
1294
  return;
1312
1295
  }
1313
1296
  // If value is empty or in studio mode, dont enable the navigation
@@ -1335,13 +1318,7 @@
1335
1318
  // @ts-ignore
1336
1319
  if (!lodashEs.isObject(newVal) || newVal === '' || (newVal && newVal.dataValue === '')) {
1337
1320
  if (!this.variableInflight) {
1338
- // If variable has finished loading and resultSet is empty, render empty data
1339
- this.setGridData([]);
1340
- }
1341
- else {
1342
- // If variableInflight is still true but we have invalid/empty data, clear loading state
1343
- // This handles cases where data never arrives or is invalid
1344
- this.variableInflight = false;
1321
+ // If variable has finished loading and resultSet is empty, ender empty data
1345
1322
  this.setGridData([]);
1346
1323
  }
1347
1324
  return;
@@ -1351,117 +1328,13 @@
1351
1328
  }
1352
1329
  }
1353
1330
  ngOnDestroy() {
1354
- // MEMORY LEAK FIX: Remove document click listener
1355
1331
  document.removeEventListener('click', this.documentClickBind);
1356
- // MEMORY LEAK FIX: Unsubscribe from navigator watches
1357
1332
  if (this.navigatorResultWatch) {
1358
1333
  this.navigatorResultWatch.unsubscribe();
1359
- this.navigatorResultWatch = null;
1360
1334
  }
1361
1335
  if (this.navigatorMaxResultWatch) {
1362
1336
  this.navigatorMaxResultWatch.unsubscribe();
1363
- this.navigatorMaxResultWatch = null;
1364
- }
1365
- // MEMORY LEAK FIX: Clear all ViewContainerRef embedded views
1366
- // These hold references to row data, custom expressions, and inline widgets
1367
- if (this.customExprViewRef) {
1368
- this.customExprViewRef.clear();
1369
- }
1370
- if (this.rowActionsViewRef) {
1371
- this.rowActionsViewRef.clear();
1372
- }
1373
- if (this.filterViewRef) {
1374
- this.filterViewRef.clear();
1375
1337
  }
1376
- if (this.inlineEditViewRef) {
1377
- this.inlineEditViewRef.clear();
1378
- }
1379
- if (this.inlineEditNewViewRef) {
1380
- this.inlineEditNewViewRef.clear();
1381
- }
1382
- if (this.rowDetailViewRef) {
1383
- this.rowDetailViewRef.clear();
1384
- }
1385
- if (this.rowExpansionActionViewRef) {
1386
- this.rowExpansionActionViewRef.clear();
1387
- }
1388
- if (this.dynamicTableRef) {
1389
- this.dynamicTableRef.clear();
1390
- }
1391
- // MEMORY LEAK FIX: Clear compiled template caches
1392
- this.rowActionsCompiledTl = {};
1393
- this.rowFilterCompliedTl = {};
1394
- this.inlineCompliedTl = {};
1395
- this.inlineNewCompliedTl = {};
1396
- this.customExprCompiledTl = {};
1397
- this.customExprCompiledSummaryTl = {};
1398
- this.rowDefInstances = {};
1399
- this.rowDefMap = {};
1400
- this.rowExpansionActionTl = {};
1401
- // MEMORY LEAK FIX: Clear dynamic context
1402
- if (this._dynamicContext) {
1403
- Object.keys(this._dynamicContext).forEach(key => {
1404
- delete this._dynamicContext[key];
1405
- });
1406
- this._dynamicContext = null;
1407
- }
1408
- // MEMORY LEAK FIX: Clear data arrays
1409
- this._gridData = [];
1410
- this.items = [];
1411
- this.selectedItems = [];
1412
- this.fieldDefs = [];
1413
- this.fullFieldDefs = [];
1414
- this.gridData = [];
1415
- this.__fullData = null;
1416
- // MEMORY LEAK FIX: Destroy jQuery datatable widget before clearing gridOptions
1417
- if (this.datagridElement && this.datagridElement.datatable) {
1418
- try {
1419
- this.datagridElement.datatable('destroy');
1420
- }
1421
- catch (e) {
1422
- // Ignore errors during destroy
1423
- }
1424
- }
1425
- // MEMORY LEAK FIX: Clear other data structures
1426
- this.columns = {};
1427
- this.formfields = {};
1428
- this.rowFilter = {};
1429
- this.actions = [];
1430
- this._actions = { header: [], footer: [] };
1431
- this.exportOptions = [];
1432
- this.headerConfig = [];
1433
- this.rowActions = [];
1434
- // MEMORY LEAK FIX: Clear all @ContentChildren QueryLists holding template references
1435
- // These QueryLists hold TemplateRef instances that create circular references to the parent LView
1436
- if (this.rowActionTmpl) {
1437
- this.rowActionTmpl.reset([]);
1438
- }
1439
- if (this.filterTmpl) {
1440
- this.filterTmpl.reset([]);
1441
- }
1442
- if (this.inlineWidgetTmpl) {
1443
- this.inlineWidgetTmpl.reset([]);
1444
- }
1445
- if (this.inlineWidgetNewTmpl) {
1446
- this.inlineWidgetNewTmpl.reset([]);
1447
- }
1448
- if (this.customExprTmpl) {
1449
- this.customExprTmpl.reset([]);
1450
- }
1451
- if (this.rowExpansionActionTmpl) {
1452
- this.rowExpansionActionTmpl.reset([]);
1453
- }
1454
- // MEMORY LEAK FIX: Clear @ContentChild template reference
1455
- this.rowExpansionTmpl = null;
1456
- // MEMORY LEAK FIX: Complete and clear subjects
1457
- if (this.selectedItemChange) {
1458
- this.selectedItemChange.complete();
1459
- this.selectedItemChange = null;
1460
- }
1461
- // MEMORY LEAK FIX: Clear ViewChild references
1462
- this.dataNavigator = null;
1463
- this._tableElement = null;
1464
- // console.log("table component destroyed");
1465
1338
  super.ngOnDestroy();
1466
1339
  }
1467
1340
  addRowIndex(row) {
@@ -1532,9 +1405,6 @@
1532
1405
  if (!key.endsWith('_filter') && ((key.endsWith('_new') && newRow) || (!key.endsWith('_new') && !newRow))) {
1533
1406
  ctrls[key].setValue('');
1534
1407
  this.resetFormControl(ctrls[key]);
1535
- // MEMORY LEAK FIX: Clear validators to release references
1536
- ctrls[key].clearValidators();
1537
- ctrls[key].clearAsyncValidators();
1538
1408
  }
1539
1409
  });
1540
1410
  }
@@ -1854,14 +1724,7 @@
1854
1724
  defaultFieldDefs.forEach(col => {
1855
1725
  this.columns[col.field] = col;
1856
1726
  });
1857
- // Note: Errors in beforedatarender should not prevent table rendering
1858
- try {
1859
- this.invokeEventCallback('beforedatarender', { $data: data, $columns: this.columns, data: data, columns: this.columns });
1860
- }
1861
- catch (error) {
1862
- // Log error but continue with rendering - beforedatarender errors should not block table rendering
1863
- console.warn('Error in beforedatarender event callback, continuing with table rendering:', error);
1864
- }
1727
+ this.invokeEventCallback('beforedatarender', { $data: data, $columns: this.columns, data: data, columns: this.columns });
1865
1728
  defaultFieldDefs = [];
1866
1729
  // Apply the changes made by the user
1867
1730
  lodashEs.forEach(this.columns, val => {
@@ -1900,30 +1763,23 @@
1900
1763
  return sortExp || '';
1901
1764
  }
1902
1765
  onPropertyChange(key, nv, ov) {
1903
- // Guard against property changes after component destruction
1904
- if (this.isDestroyed) {
1905
- return;
1906
- }
1907
1766
  let enableNewRow;
1908
1767
  switch (key) {
1909
1768
  case 'datasource':
1910
1769
  // Fix for [WMS-23653] when startUpdate is false (request on page load property is unchecked),
1911
1770
  // then set status msg as "No data found"
1912
- if (this.allowpagesizechange && this.datasource) {
1771
+ if (this.allowpagesizechange) {
1913
1772
  this.datasource.maxResults = this.pagesize || this.datasource.maxResults;
1914
1773
  }
1915
- if (nv && nv.startUpdate === false) {
1774
+ if (nv.startUpdate === false) {
1916
1775
  this.variableInflight = false;
1917
1776
  this.callDataGridMethod('setStatus', 'nodata', this.nodatamessage);
1918
1777
  }
1919
- if (this.datasource && lodashEs.get(this.datasource, 'category') !== 'wm.Variable') {
1778
+ if (lodashEs.get(this.datasource, 'category') !== 'wm.Variable') {
1920
1779
  this.headerselectall = false;
1921
1780
  this.setDataGridOption("headerselectall", false);
1922
1781
  }
1923
- // Process dataset when datasource is set, especially if dataset was previously skipped
1924
- if (this.datasource && this.dataset !== undefined) {
1925
- this.watchVariableDataSet(this.dataset);
1926
- }
1782
+ this.watchVariableDataSet(this.dataset);
1927
1783
  this.onDataSourceChange();
1928
1784
  break;
1929
1785
  case 'dataset':
@@ -1931,12 +1787,6 @@
1931
1787
  this.gridOptions.setIsNextPageData(false);
1932
1788
  }
1933
1789
  if (this.binddatasource && !this.datasource) {
1934
- // If datasource is not set yet, clear loading state and show no data
1935
- // This prevents tables from being stuck in loading state
1936
- if (this.variableInflight) {
1937
- this.variableInflight = false;
1938
- this.callDataGridMethod('setStatus', 'nodata', this.nodatamessage);
1939
- }
1940
1790
  return;
1941
1791
  }
1942
1792
  // if table is inside list then table dataset will be set as "item.XXX" and there is no datasource.
@@ -2648,7 +2498,7 @@
2648
2498
  this.updateVariable(response, options.callBack);
2649
2499
  }
2650
2500
  else if (!this.table.datasource.execute(i2.DataSource.Operation.IS_API_AWARE)) {
2651
- this.table.initiateSelectItem('current', response, undefined, this.table.datasource.category === 'wm.Variable', options.callBack);
2501
+ this.table.initiateSelectItem('current', response, undefined, false, options.callBack);
2652
2502
  }
2653
2503
  i2.triggerFn(options.success, response);
2654
2504
  this.table.invokeEventCallback('rowupdate', { $event: options.event, $data: response, row: response });
@@ -2898,12 +2748,6 @@
2898
2748
  this.table.callDataGridMethod('cancelEdit', $row);
2899
2749
  }
2900
2750
  }
2901
- ngOnDestroy() {
2902
- // MEMORY LEAK FIX: Clear all references
2903
- this.table = null;
2904
- this.dialogService = null;
2905
- this.app = null;
2906
- }
2907
2751
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableCUDDirective, deps: [{ token: TableComponent, self: true }, { token: i2__namespace.AbstractDialogService }, { token: i2__namespace.App }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
2908
2752
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableCUDDirective, isStandalone: true, selector: "[wmTableCUD]", ngImport: i0__namespace }); }
2909
2753
  }
@@ -3216,12 +3060,6 @@
3216
3060
  // Function that checks if a given string is a valid date and returns the timestamp if it is, or NaN if it's not.
3217
3061
  parseDateString(dateString) {
3218
3062
  const timestamp = Date.parse(dateString);
3219
- // handling case when string starts with string and end with number
3220
- const trimmed = dateString.trim();
3221
- const monthRegex = /\b(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)?|May|Jun(?:e)?|Jul(?:y)?|Aug(?:ust)?|Sep(?:t(?:ember)?)?|Oct(?:ober)?|Nov(?:ember)?|Dec(?:ember)?)\b/i;
3222
- if (/^[A-Za-z]+/.test(trimmed) && /\d+$/.test(trimmed) && !monthRegex.test(trimmed)) {
3223
- return NaN;
3224
- }
3225
3063
  if (!isNaN(timestamp)) {
3226
3064
  return timestamp;
3227
3065
  }
@@ -3236,7 +3074,7 @@
3236
3074
  const fieldValue = lodashEs.get(lodashEs.find(data, sortObj.field), sortObj.field);
3237
3075
  const isValidDateString = typeof fieldValue === 'string' ? this.parseDateString(fieldValue) : NaN;
3238
3076
  if (!isNaN(isValidDateString)) { // if the field is a date string
3239
- data = lodashEs.orderBy(data, [(item) => this.parseDateString(lodashEs.get(item, sortObj.field))], [sortObj.direction]);
3077
+ data = lodashEs.orderBy(data, [(item) => this.parseDateString(item[sortObj.field])], [sortObj.direction]);
3240
3078
  }
3241
3079
  else if (sortObj.sortBy ? this.table.columns[sortObj.sortBy]?.caseinsensitive : this.table.columns[sortObj.field]?.caseinsensitive) {
3242
3080
  //Fix for [WMS-27505]: Added case-insensitive sorting so that uppercase and lowercase letters are treated the same when sorting.
@@ -3598,10 +3436,6 @@
3598
3436
  condition: logicalOp
3599
3437
  });
3600
3438
  }
3601
- ngOnDestroy() {
3602
- // MEMORY LEAK FIX: Clear table reference
3603
- this.table = null;
3604
- }
3605
3439
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableFilterSortDirective, deps: [{ token: TableComponent, self: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
3606
3440
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableFilterSortDirective, isStandalone: true, selector: "[wmTableFilterSort]", ngImport: i0__namespace }); }
3607
3441
  }
@@ -3688,13 +3522,6 @@
3688
3522
  this.buttonDef[key] = nv;
3689
3523
  }
3690
3524
  }
3691
- ngOnDestroy() {
3692
- // MEMORY LEAK FIX: Clear table and buttonDef references
3693
- this.table = null;
3694
- this.buttonDef = null;
3695
- // Call parent ngOnDestroy (BaseComponent has cleanup)
3696
- super.ngOnDestroy();
3697
- }
3698
3525
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableActionDirective, deps: [{ token: i0__namespace.Injector }, { token: TableComponent, optional: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
3699
3526
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableActionDirective, isStandalone: true, selector: "[wmTableAction]", providers: [
3700
3527
  i4.provideAsWidgetRef(TableActionDirective)
@@ -3859,14 +3686,6 @@
3859
3686
  const fieldName = this.group && this.group.name;
3860
3687
  i4.setHeaderConfigForTable(this.table.headerConfig, this.config, fieldName, fieldName ? colIndex : headerIndex);
3861
3688
  }
3862
- ngOnDestroy() {
3863
- // MEMORY LEAK FIX: Clear table, group, and config references
3864
- this.table = null;
3865
- this.group = null;
3866
- this.config = null;
3867
- // Call parent ngOnDestroy (BaseComponent has cleanup)
3868
- super.ngOnDestroy();
3869
- }
3870
3689
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableColumnGroupDirective, deps: [{ token: i0__namespace.Injector }, { token: TableColumnGroupDirective, optional: true, skipSelf: true }, { token: TableComponent, optional: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
3871
3690
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableColumnGroupDirective, isStandalone: true, selector: "[wmTableColumnGroup]", providers: [
3872
3691
  i4.provideAsWidgetRef(TableColumnGroupDirective)
@@ -4061,10 +3880,6 @@
4061
3880
  }
4062
3881
  // Remove validators for the inline widget and set form to untouched
4063
3882
  removeValidations() {
4064
- // Guard against component destruction or table/ngform being null
4065
- if (this.isDestroyed || !this.table || !this.table.ngform) {
4066
- return;
4067
- }
4068
3883
  this.table.ngform.markAsUntouched();
4069
3884
  const control = this.getFormControl();
4070
3885
  if (!control) {
@@ -4076,10 +3891,6 @@
4076
3891
  }
4077
3892
  // Apply default|sync|async|prop validators for QuickEdit new row form control
4078
3893
  applyNewRowValidations() {
4079
- // Guard against component destruction or table/ngform being null
4080
- if (this.isDestroyed || !this.table || !this.table.ngform) {
4081
- return;
4082
- }
4083
3894
  if (!this._checkNewEditableRowControl()) {
4084
3895
  return;
4085
3896
  }
@@ -4096,37 +3907,22 @@
4096
3907
  }
4097
3908
  // Remove validators for the QuickEdit new row widget and set form to untouched
4098
3909
  removeNewRowValidations() {
4099
- // Guard against component destruction or table/ngform being null
4100
- if (this.isDestroyed || !this.table || !this.table.ngform) {
4101
- return;
4102
- }
4103
3910
  this.table.ngform.markAsUntouched();
4104
3911
  if (!this._checkNewEditableRowControl()) {
4105
3912
  return;
4106
3913
  }
4107
3914
  const control = this.getFormControl('_new');
4108
- if (!control) {
4109
- return;
4110
- }
4111
3915
  control.clearValidators();
4112
3916
  control.clearAsyncValidators();
4113
3917
  control.updateValueAndValidity();
4114
3918
  }
4115
3919
  addFormControl(suffix) {
4116
- // Guard against component destruction or table/ngform being null
4117
- if (this.isDestroyed || !this.table || !this.table.ngform) {
4118
- return;
4119
- }
4120
3920
  const ctrlName = suffix ? (this.binding + suffix) : this.binding;
4121
3921
  this.table.ngform.addControl(ctrlName, this.table.fb.control(''));
4122
3922
  }
4123
3923
  getFormControl(suffix) {
4124
- // Guard against component destruction or table/ngform being null
4125
- if (this.isDestroyed || !this.table || !this.table.ngform) {
4126
- return null;
4127
- }
4128
3924
  const ctrlName = suffix ? (this.binding + suffix) : this.binding;
4129
- return this.table.ngform.controls[ctrlName] || null;
3925
+ return this.table.ngform.controls[ctrlName];
4130
3926
  }
4131
3927
  _checkNewEditableRowControl() {
4132
3928
  return this._isNewEditableRow && this.getFormControl('_new');
@@ -4200,16 +3996,12 @@
4200
3996
  }
4201
3997
  // On field value change, apply cascading filter and set validation message
4202
3998
  onValueChange(val, widget) {
4203
- // Guard against component destruction or table being null
4204
- if (this.isDestroyed || !this.table) {
4205
- return;
4206
- }
4207
3999
  if (val !== null) {
4208
4000
  i4.applyFilterOnField(this.table.datasource, this.widget, this.table.fieldDefs, val, {
4209
4001
  widget: 'edit-widget-type'
4210
4002
  });
4211
4003
  }
4212
- if (this.table.ngform && this.table.ngform.touched) {
4004
+ if (this.table.ngform.touched) {
4213
4005
  this.activeControlType = widget;
4214
4006
  if (widget === 'inlineInstance') {
4215
4007
  this.notifyChanges();
@@ -4500,83 +4292,6 @@
4500
4292
  this.table.redraw(true);
4501
4293
  }
4502
4294
  }
4503
- ngOnDestroy() {
4504
- // MEMORY LEAK FIX: Clear ContentChildren QueryLists
4505
- if (this._filterInstances) {
4506
- try {
4507
- this._filterInstances.reset([]);
4508
- }
4509
- catch (e) {
4510
- // Silently handle cleanup errors - QueryList might already be destroyed
4511
- }
4512
- }
4513
- if (this._inlineInstances) {
4514
- try {
4515
- this._inlineInstances.reset([]);
4516
- }
4517
- catch (e) {
4518
- // Silently handle cleanup errors - QueryList might already be destroyed
4519
- }
4520
- }
4521
- if (this._inlineInstancesNew) {
4522
- try {
4523
- this._inlineInstancesNew.reset([]);
4524
- }
4525
- catch (e) {
4526
- // Silently handle cleanup errors - QueryList might already be destroyed
4527
- }
4528
- }
4529
- // MEMORY LEAK FIX: Clear all widget instance references
4530
- this.filterInstance = null;
4531
- this.inlineInstance = null;
4532
- this.inlineInstanceNew = null;
4533
- // MEMORY LEAK FIX: Clear template references
4534
- this.customExprTmpl = null;
4535
- this.inlineWidthTempRef = null;
4536
- this.filterTemplateRef = null;
4537
- // MEMORY LEAK FIX: Clear dataset references
4538
- this._filterDataSet = null;
4539
- this.dataset = null;
4540
- this._dataoptions = null;
4541
- this._datasource = null;
4542
- // MEMORY LEAK FIX: Clear validation objects
4543
- if (this.fieldValidations) {
4544
- try {
4545
- this.fieldValidations.destroy();
4546
- }
4547
- catch (e) {
4548
- // Silently handle cleanup errors
4549
- }
4550
- this.fieldValidations = null;
4551
- }
4552
- if (this.fieldValidations_new) {
4553
- try {
4554
- this.fieldValidations_new.destroy();
4555
- }
4556
- catch (e) {
4557
- // Silently handle cleanup errors
4558
- }
4559
- this.fieldValidations_new = null;
4560
- }
4561
- this.syncValidators = [];
4562
- this.asyncValidators = [];
4563
- // MEMORY LEAK FIX: Clear filter control reference
4564
- this.filterControl = null;
4565
- // MEMORY LEAK FIX: Clear notify fields array
4566
- if (this.notifyForFields) {
4567
- this.notifyForFields = [];
4568
- }
4569
- // MEMORY LEAK FIX: Clear observe fields array
4570
- if (this.observeOnFields) {
4571
- this.observeOnFields = [];
4572
- }
4573
- // MEMORY LEAK FIX: Clear table and group references
4574
- // Note: These are injected dependencies, but clearing helps GC
4575
- this.table = null;
4576
- this.group = null;
4577
- // Call parent ngOnDestroy
4578
- super.ngOnDestroy();
4579
- }
4580
4295
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableColumnDirective, deps: [{ token: i0__namespace.Injector }, { token: i2__namespace.AppDefaults }, { token: TableComponent, optional: true }, { token: TableColumnGroupDirective, optional: true }, { token: 'filterdataset.bind', attribute: true }, { token: 'dataset.bind', attribute: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
4581
4296
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableColumnDirective, isStandalone: true, selector: "[wmTableColumn]", providers: [
4582
4297
  i4.provideAsWidgetRef(TableColumnDirective)
@@ -4671,13 +4386,6 @@
4671
4386
  this.config.content = this.content;
4672
4387
  }
4673
4388
  }
4674
- ngOnDestroy() {
4675
- // MEMORY LEAK FIX: Clear table and config references
4676
- this.table = null;
4677
- this.config = null;
4678
- // Call parent ngOnDestroy (BaseComponent has cleanup)
4679
- super.ngOnDestroy();
4680
- }
4681
4389
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableRowDirective, deps: [{ token: i0__namespace.Injector }, { token: TableComponent, optional: true, skipSelf: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
4682
4390
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableRowDirective, isStandalone: true, selector: "[wmTableRow]", providers: [
4683
4391
  i4.provideAsWidgetRef(TableRowDirective)
@@ -4759,13 +4467,6 @@
4759
4467
  this.populateAction();
4760
4468
  this.table.registerRowActions(this.buttonDef);
4761
4469
  }
4762
- ngOnDestroy() {
4763
- // MEMORY LEAK FIX: Clear table reference and button definition
4764
- this.table = null;
4765
- this.buttonDef = null;
4766
- // Call parent ngOnDestroy (BaseComponent has cleanup)
4767
- super.ngOnDestroy();
4768
- }
4769
4470
  static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0__namespace, type: TableRowActionDirective, deps: [{ token: i0__namespace.Injector }, { token: TableComponent, optional: true }, { token: i4.Context, self: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0__namespace.ɵɵFactoryTarget.Directive }); }
4770
4471
  static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableRowActionDirective, isStandalone: true, selector: "[wmTableRowAction]", providers: [
4771
4472
  i4.provideAsWidgetRef(TableRowActionDirective),
@@ -51,13 +51,6 @@ export class TableActionDirective extends BaseComponent {
51
51
  this.buttonDef[key] = nv;
52
52
  }
53
53
  }
54
- ngOnDestroy() {
55
- // MEMORY LEAK FIX: Clear table and buttonDef references
56
- this.table = null;
57
- this.buttonDef = null;
58
- // Call parent ngOnDestroy (BaseComponent has cleanup)
59
- super.ngOnDestroy();
60
- }
61
54
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TableActionDirective, deps: [{ token: i0.Injector }, { token: i1.TableComponent, optional: true }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
62
55
  static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: TableActionDirective, isStandalone: true, selector: "[wmTableAction]", providers: [
63
56
  provideAsWidgetRef(TableActionDirective)
@@ -80,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
80
73
  }, {
81
74
  type: Optional
82
75
  }] }] });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9kYXRhL3RhYmxlL3NyYy90YWJsZS1hY3Rpb24vdGFibGUtYWN0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQXFCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RixPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sV0FBVyxDQUFDOzs7QUFFdEMsTUFBTSxhQUFhLEdBQUcsRUFBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBQyxDQUFDO0FBU3JFLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxhQUFhO2FBQzVDLG9CQUFlLEdBQUcsYUFBYSxFQUFFLEFBQWxCLENBQW1CO0lBd0J6QyxZQUFZLEdBQWEsRUFBcUIsS0FBcUIsRUFBMEMsZUFBb0I7UUFDN0gsS0FBSyxDQUFDLEdBQUcsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFERCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtJQUVuRSxDQUFDO0lBRUQsY0FBYztRQUNWLElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDYixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRTtZQUN2RCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ3ZCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUU7WUFDL0IsS0FBSyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSztZQUMxRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixVQUFVLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUMvQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRTtZQUN6QixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLElBQUksRUFBRTtZQUM3QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLElBQUksRUFBRTtTQUNoRCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDMUIsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLEdBQUcsS0FBSyxjQUFjLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDcEMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCx3REFBd0Q7UUFDeEQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFFdEIsc0RBQXNEO1FBQ3RELEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQTlFUSxvQkFBb0Isd0ZBeUJnRCxrQkFBa0I7bUdBekJ0RixvQkFBb0IsOERBSmxCO1lBQ1Asa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7U0FDM0M7OzRGQUVRLG9CQUFvQjtrQkFQaEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDZCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixTQUFTLEVBQUU7d0JBQ1Asa0JBQWtCLHNCQUFzQjtxQkFDM0M7aUJBQ0o7OzBCQTBCK0IsUUFBUTs7MEJBQWtDLE1BQU07MkJBQUMsa0JBQWtCOzswQkFBRyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJhc2VDb21wb25lbnQsIHByb3ZpZGVBc1dpZGdldFJlZiB9IGZyb20gJ0B3bS9jb21wb25lbnRzL2Jhc2UnO1xuXG5pbXBvcnQgeyByZWdpc3RlclByb3BzIH0gZnJvbSAnLi90YWJsZS1hY3Rpb24ucHJvcHMnO1xuaW1wb3J0IHsgVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtpc1VuZGVmaW5lZH0gZnJvbSBcImxvZGFzaC1lc1wiO1xuXG5jb25zdCBXSURHRVRfQ09ORklHID0ge3dpZGdldFR5cGU6ICd3bS10YWJsZS1hY3Rpb24nLCBob3N0Q2xhc3M6ICcnfTtcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdbd21UYWJsZUFjdGlvbl0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXNXaWRnZXRSZWYoVGFibGVBY3Rpb25EaXJlY3RpdmUpXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUFjdGlvbkRpcmVjdGl2ZSBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIGFjY2Vzc3JvbGVzO1xuICAgIGFjdGlvbjtcbiAgICBjYXB0aW9uO1xuICAgIGNsYXNzO1xuICAgIGRpc2FibGVkO1xuICAgIGRpc3BsYXlOYW1lO1xuICAgIGljb247XG4gICAgaWNvbmNsYXNzO1xuICAgIHBvc2l0aW9uO1xuICAgIHNob3J0Y3V0a2V5O1xuICAgIHNob3c7XG4gICAgdGFiaW5kZXg7XG4gICAgdGl0bGU7XG4gICAga2V5O1xuICAgIGh5cGVybGluaztcbiAgICB0YXJnZXQ7XG4gICAgYnV0dG9uRGVmO1xuICAgIGNvbmRpdGlvbmFsY2xhc3M7XG4gICAgY29uZGl0aW9uYWxzdHlsZTtcblxuICAgIHByaXZhdGUgX3Byb3BzSW5pdGlhbGl6ZWQ6IGJvb2xlYW47XG5cbiAgICBjb25zdHJ1Y3Rvcihpbmo6IEluamVjdG9yLCBAT3B0aW9uYWwoKSBwdWJsaWMgdGFibGU6IFRhYmxlQ29tcG9uZW50LCBASW5qZWN0KCdFWFBMSUNJVF9DT05URVhUJykgQE9wdGlvbmFsKCkgZXhwbGljaXRDb250ZXh0OiBhbnkpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHLCBleHBsaWNpdENvbnRleHQpO1xuICAgIH1cblxuICAgIHBvcHVsYXRlQWN0aW9uKCkge1xuICAgICAgICB0aGlzLmJ1dHRvbkRlZiA9IHtcbiAgICAgICAgICAgIGtleTogdGhpcy5rZXksXG4gICAgICAgICAgICBkaXNwbGF5TmFtZTogdGhpc1snZGlzcGxheS1uYW1lJ10gfHwgdGhpcy5jYXB0aW9uIHx8ICcnLFxuICAgICAgICAgICAgc2hvdzogdGhpcy5zaG93LFxuICAgICAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3MgfHwgJycsXG4gICAgICAgICAgICBpY29uY2xhc3M6IHRoaXMuaWNvbmNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgdGl0bGU6IGlzVW5kZWZpbmVkKHRoaXMudGl0bGUpID8gKHRoaXNbJ2Rpc3BsYXktbmFtZSddIHx8ICcnKSA6IHRoaXMudGl0bGUsXG4gICAgICAgICAgICBhY3Rpb246IHRoaXMuYWN0aW9uLFxuICAgICAgICAgICAgYWNjZXNzcm9sZXM6IHRoaXMuYWNjZXNzcm9sZXMsXG4gICAgICAgICAgICBzaG9ydGN1dGtleTogdGhpcy5zaG9ydGN1dGtleSxcbiAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAgICAgdGFiaW5kZXg6IHRoaXMudGFiaW5kZXgsXG4gICAgICAgICAgICBpY29uOiB0aGlzLmljb24sXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5wb3NpdGlvbixcbiAgICAgICAgICAgIHdpZGdldFR5cGU6IHRoaXNbJ3dpZGdldC10eXBlJ10sXG4gICAgICAgICAgICBoeXBlcmxpbms6IHRoaXMuaHlwZXJsaW5rLFxuICAgICAgICAgICAgdGFyZ2V0OiB0aGlzLnRhcmdldCB8fCAnJyxcbiAgICAgICAgICAgIGNvbmRpdGlvbmFsY2xhc3M6IHRoaXMuY29uZGl0aW9uYWxjbGFzcyB8fCAnJyxcbiAgICAgICAgICAgIGNvbmRpdGlvbmFsc3R5bGU6IHRoaXMuY29uZGl0aW9uYWxzdHlsZSB8fCB7fVxuICAgICAgICB9O1xuICAgICAgICB0aGlzLl9wcm9wc0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5wb3B1bGF0ZUFjdGlvbigpO1xuICAgICAgICB0aGlzLnRhYmxlLnJlZ2lzdGVyQWN0aW9ucyh0aGlzLmJ1dHRvbkRlZik7XG4gICAgfVxuXG4gICAgb25Qcm9wZXJ0eUNoYW5nZShrZXksIG52KSB7XG4gICAgICAgIGlmICghdGhpcy5fcHJvcHNJbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGtleSA9PT0gJ2Rpc3BsYXktbmFtZScpIHtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uRGVmLmRpc3BsYXlOYW1lID0gbnY7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbkRlZltrZXldID0gbnY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgLy8gTUVNT1JZIExFQUsgRklYOiBDbGVhciB0YWJsZSBhbmQgYnV0dG9uRGVmIHJlZmVyZW5jZXNcbiAgICAgICAgdGhpcy50YWJsZSA9IG51bGw7XG4gICAgICAgIHRoaXMuYnV0dG9uRGVmID0gbnVsbDtcblxuICAgICAgICAvLyBDYWxsIHBhcmVudCBuZ09uRGVzdHJveSAoQmFzZUNvbXBvbmVudCBoYXMgY2xlYW51cClcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG59XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9kYXRhL3RhYmxlL3NyYy90YWJsZS1hY3Rpb24vdGFibGUtYWN0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQVUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxXQUFXLENBQUM7OztBQUV0QyxNQUFNLGFBQWEsR0FBRyxFQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFDLENBQUM7QUFTckUsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGFBQWE7YUFDNUMsb0JBQWUsR0FBRyxhQUFhLEVBQUUsQUFBbEIsQ0FBbUI7SUF3QnpDLFlBQVksR0FBYSxFQUFxQixLQUFxQixFQUEwQyxlQUFvQjtRQUM3SCxLQUFLLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FBQztRQURELFVBQUssR0FBTCxLQUFLLENBQWdCO0lBRW5FLENBQUM7SUFFRCxjQUFjO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRztZQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFO1lBQ3ZELElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRTtZQUMvQixLQUFLLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLO1lBQzFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLFVBQVUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQy9CLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFO1lBQ3pCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFO1lBQzdDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFO1NBQ2hELENBQUM7UUFDRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMxQixPQUFPO1FBQ1gsQ0FBQztRQUVELElBQUksR0FBRyxLQUFLLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUNwQyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzdCLENBQUM7SUFDTCxDQUFDOytHQXJFUSxvQkFBb0Isd0ZBeUJnRCxrQkFBa0I7bUdBekJ0RixvQkFBb0IsOERBSmxCO1lBQ1Asa0JBQWtCLENBQUMsb0JBQW9CLENBQUM7U0FDM0M7OzRGQUVRLG9CQUFvQjtrQkFQaEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDZCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixTQUFTLEVBQUU7d0JBQ1Asa0JBQWtCLHNCQUFzQjtxQkFDM0M7aUJBQ0o7OzBCQTBCK0IsUUFBUTs7MEJBQWtDLE1BQU07MkJBQUMsa0JBQWtCOzswQkFBRyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdCwgSW5qZWN0b3IsIE9uSW5pdCwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50LCBwcm92aWRlQXNXaWRnZXRSZWYgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vdGFibGUtYWN0aW9uLnByb3BzJztcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7aXNVbmRlZmluZWR9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuY29uc3QgV0lER0VUX0NPTkZJRyA9IHt3aWRnZXRUeXBlOiAnd20tdGFibGUtYWN0aW9uJywgaG9zdENsYXNzOiAnJ307XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW3dtVGFibGVBY3Rpb25dJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFRhYmxlQWN0aW9uRGlyZWN0aXZlKVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVBY3Rpb25EaXJlY3RpdmUgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBzdGF0aWMgaW5pdGlhbGl6ZVByb3BzID0gcmVnaXN0ZXJQcm9wcygpO1xuXG4gICAgYWNjZXNzcm9sZXM7XG4gICAgYWN0aW9uO1xuICAgIGNhcHRpb247XG4gICAgY2xhc3M7XG4gICAgZGlzYWJsZWQ7XG4gICAgZGlzcGxheU5hbWU7XG4gICAgaWNvbjtcbiAgICBpY29uY2xhc3M7XG4gICAgcG9zaXRpb247XG4gICAgc2hvcnRjdXRrZXk7XG4gICAgc2hvdztcbiAgICB0YWJpbmRleDtcbiAgICB0aXRsZTtcbiAgICBrZXk7XG4gICAgaHlwZXJsaW5rO1xuICAgIHRhcmdldDtcbiAgICBidXR0b25EZWY7XG4gICAgY29uZGl0aW9uYWxjbGFzcztcbiAgICBjb25kaXRpb25hbHN0eWxlO1xuXG4gICAgcHJpdmF0ZSBfcHJvcHNJbml0aWFsaXplZDogYm9vbGVhbjtcblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IsIEBPcHRpb25hbCgpIHB1YmxpYyB0YWJsZTogVGFibGVDb21wb25lbnQsIEBJbmplY3QoJ0VYUExJQ0lUX0NPTlRFWFQnKSBAT3B0aW9uYWwoKSBleHBsaWNpdENvbnRleHQ6IGFueSkge1xuICAgICAgICBzdXBlcihpbmosIFdJREdFVF9DT05GSUcsIGV4cGxpY2l0Q29udGV4dCk7XG4gICAgfVxuXG4gICAgcG9wdWxhdGVBY3Rpb24oKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uRGVmID0ge1xuICAgICAgICAgICAga2V5OiB0aGlzLmtleSxcbiAgICAgICAgICAgIGRpc3BsYXlOYW1lOiB0aGlzWydkaXNwbGF5LW5hbWUnXSB8fCB0aGlzLmNhcHRpb24gfHwgJycsXG4gICAgICAgICAgICBzaG93OiB0aGlzLnNob3csXG4gICAgICAgICAgICBjbGFzczogdGhpcy5jbGFzcyB8fCAnJyxcbiAgICAgICAgICAgIGljb25jbGFzczogdGhpcy5pY29uY2xhc3MgfHwgJycsXG4gICAgICAgICAgICB0aXRsZTogaXNVbmRlZmluZWQodGhpcy50aXRsZSkgPyAodGhpc1snZGlzcGxheS1uYW1lJ10gfHwgJycpIDogdGhpcy50aXRsZSxcbiAgICAgICAgICAgIGFjdGlvbjogdGhpcy5hY3Rpb24sXG4gICAgICAgICAgICBhY2Nlc3Nyb2xlczogdGhpcy5hY2Nlc3Nyb2xlcyxcbiAgICAgICAgICAgIHNob3J0Y3V0a2V5OiB0aGlzLnNob3J0Y3V0a2V5LFxuICAgICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAgICAgICB0YWJpbmRleDogdGhpcy50YWJpbmRleCxcbiAgICAgICAgICAgIGljb246IHRoaXMuaWNvbixcbiAgICAgICAgICAgIHBvc2l0aW9uOiB0aGlzLnBvc2l0aW9uLFxuICAgICAgICAgICAgd2lkZ2V0VHlwZTogdGhpc1snd2lkZ2V0LXR5cGUnXSxcbiAgICAgICAgICAgIGh5cGVybGluazogdGhpcy5oeXBlcmxpbmssXG4gICAgICAgICAgICB0YXJnZXQ6IHRoaXMudGFyZ2V0IHx8ICcnLFxuICAgICAgICAgICAgY29uZGl0aW9uYWxjbGFzczogdGhpcy5jb25kaXRpb25hbGNsYXNzIHx8ICcnLFxuICAgICAgICAgICAgY29uZGl0aW9uYWxzdHlsZTogdGhpcy5jb25kaXRpb25hbHN0eWxlIHx8IHt9XG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuX3Byb3BzSW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLnBvcHVsYXRlQWN0aW9uKCk7XG4gICAgICAgIHRoaXMudGFibGUucmVnaXN0ZXJBY3Rpb25zKHRoaXMuYnV0dG9uRGVmKTtcbiAgICB9XG5cbiAgICBvblByb3BlcnR5Q2hhbmdlKGtleSwgbnYpIHtcbiAgICAgICAgaWYgKCF0aGlzLl9wcm9wc0luaXRpYWxpemVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoa2V5ID09PSAnZGlzcGxheS1uYW1lJykge1xuICAgICAgICAgICAgdGhpcy5idXR0b25EZWYuZGlzcGxheU5hbWUgPSBudjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uRGVmW2tleV0gPSBudjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==