@wavemaker/app-ng-runtime 11.14.2-rc.6311 → 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
@@ -1,5 +1,5 @@
1
1
  import * as i1 from '@wm/core';
2
- import { FormWidgetType, checkIsCustomPipeExpression, $parseExpr, isValidWebURL, _WM_APP_PROJECT, isValidImageUrl, encodeUrl, stringStartsWith, prettifyLabel, deHyphenate, initCaps, getClonedObject, DataSource, debounce, processFilterExpBindNode, isDefined, MatchMode, $parseEvent, isEqualWithFields, getFormattedDate, isAndroid, isNumberType, DataType, setCSS, IDGenerator, toBoolean, isChangeFromWatch, $unwatch, resetChangeFromWatch, isObject as isObject$1, toDimension, $appDigest, removeClass, addClass, setCSSFromObj, App, findParent, setAttr, switchClass, removeAttr, $invokeWatchers, $watch, $unwatchAll, findValueOf, validateAccessRoles, ComponentType, noop as noop$1, VALIDATOR, isIos, isMobile, hasOffsetStr, AbstractI18nService, CURRENCY_INFO, replace as replace$1, transformFileURI, isLargeTabletLandscape, isLargeTabletPortrait } from '@wm/core';
2
+ import { FormWidgetType, checkIsCustomPipeExpression, $parseExpr, isValidWebURL, _WM_APP_PROJECT, encodeUrl, stringStartsWith, prettifyLabel, deHyphenate, initCaps, getClonedObject, DataSource, debounce, processFilterExpBindNode, isDefined, MatchMode, $parseEvent, isEqualWithFields, getFormattedDate, isAndroid, isNumberType, DataType, setCSS, IDGenerator, toBoolean, isChangeFromWatch, $unwatch, resetChangeFromWatch, isObject as isObject$1, toDimension, $appDigest, removeClass, addClass, setCSSFromObj, App, findParent, setAttr, switchClass, removeAttr, $invokeWatchers, $watch, findValueOf, validateAccessRoles, ComponentType, noop as noop$1, VALIDATOR, isIos, isMobile, hasOffsetStr, AbstractI18nService, CURRENCY_INFO, replace as replace$1, transformFileURI, isLargeTabletLandscape, isLargeTabletPortrait } from '@wm/core';
3
3
  import * as i0 from '@angular/core';
4
4
  import { InjectionToken, forwardRef, ElementRef, inject, ViewContainerRef, Injector, Injectable, Inject, Optional, Directive, Self, ContentChildren, Attribute, Input, Component, Pipe, SecurityContext } from '@angular/core';
5
5
  import { createFocusTrap } from '@wavemaker/focus-trap';
@@ -8,6 +8,7 @@ import * as momentLib from 'moment';
8
8
  import * as i1$2 from '@angular/platform-browser';
9
9
  import { EventManager } from '@angular/platform-browser';
10
10
  import { ReplaySubject, Subject } from 'rxjs';
11
+ import { __decorate, __param, __metadata } from 'tslib';
11
12
  import { SecurityService } from '@wm/security';
12
13
  import { filter as filter$1, debounceTime } from 'rxjs/operators';
13
14
  import { Validators } from '@angular/forms';
@@ -189,7 +190,7 @@ const getImageUrl = (urlString, shouldEncode, defaultUrl) => {
189
190
  urlString = (defaultUrl || 'resources/images/imagelists/default-image.png');
190
191
  }
191
192
  }
192
- if (urlString && !_WM_APP_PROJECT.isPreview && !isValidImageUrl(urlString) && !urlString.startsWith(_WM_APP_PROJECT.cdnUrl) && !urlString.startsWith('services')) {
193
+ if (urlString && !_WM_APP_PROJECT.isPreview && !isValidWebURL(urlString) && !urlString.startsWith(_WM_APP_PROJECT.cdnUrl)) {
193
194
  urlString = (_WM_APP_PROJECT.cdnUrl || '') + urlString;
194
195
  }
195
196
  urlString = shouldEncode ? encodeUrl(urlString) : urlString;
@@ -1920,9 +1921,7 @@ const register = (widget, viewParent, widgetId, name) => {
1920
1921
  return () => {
1921
1922
  registryById.delete(widgetId);
1922
1923
  if (registered) {
1923
- // MEMORY LEAK FIX: Delete the property instead of setting to undefined
1924
- // This ensures the property is completely removed from the object
1925
- delete viewParent.Widgets[name];
1924
+ viewParent.Widgets[name] = undefined;
1926
1925
  }
1927
1926
  };
1928
1927
  };
@@ -1934,8 +1933,7 @@ const renameWidget = (viewParent, widget, nv, ov) => {
1934
1933
  return;
1935
1934
  }
1936
1935
  if (ov) {
1937
- // MEMORY LEAK FIX: Delete the old property instead of setting to undefined
1938
- delete viewParent.Widgets[ov];
1936
+ viewParent.Widgets[ov] = undefined;
1939
1937
  }
1940
1938
  if (nv) {
1941
1939
  viewParent.Widgets[nv] = widget;
@@ -1996,12 +1994,7 @@ const parseValue = (key, value, type) => {
1996
1994
  return toBoolean(value, isBooleanAttr(key) && key);
1997
1995
  }
1998
1996
  if (type === PROP_TYPE.NUMBER) {
1999
- const numValue = +value;
2000
- // Fix NaN for tabindex - default to 0 if value is invalid
2001
- if (key === 'tabindex' && isNaN(numValue)) {
2002
- return value === null || value === undefined || value === '' ? 0 : numValue;
2003
- }
2004
- return numValue;
1997
+ return +value;
2005
1998
  }
2006
1999
  return value;
2007
2000
  };
@@ -2090,14 +2083,12 @@ const proxyHandler = {
2090
2083
  }
2091
2084
  };
2092
2085
  const $RAF = window.requestAnimationFrame;
2093
- let $RAFQueue = [];
2086
+ const $RAFQueue = [];
2094
2087
  const invokeLater = fn => {
2095
2088
  if (!$RAFQueue.length) {
2096
2089
  $RAF(() => {
2097
- // Execute all queued functions
2098
2090
  $RAFQueue.forEach(f => f());
2099
- // MEMORY LEAK FIX: Explicitly clear the array to release closure references
2100
- $RAFQueue = [];
2091
+ $RAFQueue.length = 0;
2101
2092
  });
2102
2093
  }
2103
2094
  $RAFQueue.push(fn);
@@ -2327,26 +2318,10 @@ class BaseComponent {
2327
2318
  this.propertyChange.subscribe(({ key, nv, ov }) => fn(key, nv, ov));
2328
2319
  }
2329
2320
  registerDestroyListener(fn, ctx) {
2330
- if (!fn) {
2331
- return;
2332
- }
2333
2321
  if (ctx) {
2334
2322
  fn = fn.bind(ctx);
2335
2323
  }
2336
- this.destroy.subscribe(() => { }, () => { }, () => {
2337
- try {
2338
- if (fn && typeof fn === 'function') {
2339
- fn();
2340
- }
2341
- }
2342
- catch (e) {
2343
- // Silently handle cleanup errors to prevent test failures
2344
- // These are typically non-critical cleanup issues like:
2345
- // - Subscriptions already unsubscribed
2346
- // - Null references during cleanup
2347
- // - Components already destroyed
2348
- }
2349
- });
2324
+ this.destroy.subscribe(() => { }, () => { }, () => fn());
2350
2325
  }
2351
2326
  getDisplayType() {
2352
2327
  return this.displayType;
@@ -2512,24 +2487,14 @@ class BaseComponent {
2512
2487
  // the promise returned by the variable call.
2513
2488
  boundFnVal = boundFn();
2514
2489
  if (boundFnVal instanceof Promise) {
2515
- return boundFnVal.then(response => response, err => {
2516
- const widgetName = widget.name || widget.widgetId || 'unknown';
2517
- console.error(`Error in promise returned by event callback "${eventName}" on widget "${widgetName}":`, err);
2518
- return err;
2519
- });
2490
+ return boundFnVal.then(response => response, err => err);
2520
2491
  }
2521
2492
  else {
2522
2493
  return boundFnVal;
2523
2494
  }
2524
2495
  }
2525
2496
  catch (e) {
2526
- // Enhanced error logging with context
2527
- const widgetName = widget.name || widget.widgetId || 'unknown';
2528
- const errorMessage = e.message || String(e);
2529
- console.error(`Error executing event callback "${eventName}" on widget "${widgetName}":`, errorMessage);
2530
- console.error('Event expression context:', { eventName, widgetName, locals });
2531
- // Re-throw to maintain original behavior but with better context
2532
- throw e;
2497
+ console.error(e);
2533
2498
  }
2534
2499
  };
2535
2500
  if (child && !child.widget.eventHandlers)
@@ -2553,17 +2518,11 @@ class BaseComponent {
2553
2518
  if (!child)
2554
2519
  this.initState.delete(propName);
2555
2520
  let viewParent = child ? child.widget.viewParent.viewParent : this.viewParent, context = child ? child.widget.context : this.context, widget = child ? child.widget : this.widget, isMuted = child ? child.widget.isMuted : this.isMuted, widgetProps = child ? child.widget.widgetProps : this.widgetProps, widgetId = child ? child.widget.widgetId : this.widgetId;
2556
- // OPTIMIZATION: Apply throttling for non-critical properties
2557
- const watchConfig = widgetProps.get(propName) || {};
2558
- const throttledProps = ['class', 'style', 'ngclass', 'ngstyle'];
2559
- if (throttledProps.includes(propName.toLowerCase())) {
2560
- watchConfig.throttle = 100; // Throttle to 100ms for style/class properties
2561
- }
2562
2521
  this.registerDestroyListener($watch(expr, viewParent, context, nv => {
2563
2522
  if (propName.startsWith('base-') && widget.updateData)
2564
2523
  widget.updateData(propName, nv);
2565
2524
  widget[propName] = nv;
2566
- }, getWatchIdentifier(widgetId, propName), propName === 'datasource', watchConfig, () => isMuted));
2525
+ }, getWatchIdentifier(widgetId, propName), propName === 'datasource', widgetProps.get(propName), () => isMuted));
2567
2526
  }
2568
2527
  /**
2569
2528
  * Remove watch on the bound property
@@ -2582,18 +2541,7 @@ class BaseComponent {
2582
2541
  const fn = callbackInfo.callback;
2583
2542
  const locals = callbackInfo.locals || {};
2584
2543
  if (fn) {
2585
- try {
2586
- return fn(Object.assign(locals, extraLocals));
2587
- }
2588
- catch (error) {
2589
- // Log error with context information for debugging
2590
- const widgetName = this.name || this.widgetId || 'unknown';
2591
- const errorMessage = error?.message || String(error);
2592
- console.error(`Error executing event callback "${eventName}" on widget "${widgetName}":`, errorMessage);
2593
- console.error('Full error:', error);
2594
- // Re-throw to maintain original behavior but with better error context
2595
- throw error;
2596
- }
2544
+ return fn(Object.assign(locals, extraLocals));
2597
2545
  }
2598
2546
  }
2599
2547
  }
@@ -2813,24 +2761,6 @@ class BaseComponent {
2813
2761
  this.propertyChange.complete();
2814
2762
  this.destroy.complete();
2815
2763
  this.isAttached = false;
2816
- // MEMORY LEAK FIX: Unwatch all watchers for this widget
2817
- // This ensures all watchers registered for this component are cleaned up
2818
- if (this.widgetId) {
2819
- $unwatchAll(this.widgetId);
2820
- // if (removedCount > 0) {
2821
- // console.log(`🧹 Cleaned up ${removedCount} watcher(s) for widget ${this.widgetId}`);
2822
- // }
2823
- }
2824
- // MEMORY LEAK FIX: Clear context to release references to parent scope data
2825
- // The context object holds references to repeater items, wizard steps, etc.
2826
- // which can retain large amounts of data even after component destruction
2827
- if (this.context) {
2828
- // Clear all properties from context
2829
- Object.keys(this.context).forEach(key => {
2830
- delete this.context[key];
2831
- });
2832
- this.context = null;
2833
- }
2834
2764
  }
2835
2765
  static { this.ɵfac = function BaseComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BaseComponent)(i0.ɵɵinject(i0.Injector), i0.ɵɵinject(WidgetConfig), i0.ɵɵinject('EXPLICIT_CONTEXT', 8), i0.ɵɵinject(Promise)); }; }
2836
2766
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: BaseComponent, factory: BaseComponent.ɵfac }); }
@@ -2926,32 +2856,6 @@ class BaseContainerComponent extends StylableComponent {
2926
2856
  }
2927
2857
  }
2928
2858
  }
2929
- ngOnDestroy() {
2930
- // MEMORY LEAK FIX: Clear redrawable components references
2931
- // The reDrawableComponents QueryList holds references to child components
2932
- // and updateRedrawableComponents manually pushes to _results array
2933
- if (this.reDrawableComponents) {
2934
- // Clear the manually added items from _results
2935
- if (this.reDrawableComponents._results) {
2936
- this.reDrawableComponents._results.length = 0;
2937
- }
2938
- // Reset the QueryList
2939
- this.reDrawableComponents.reset([]);
2940
- }
2941
- // MEMORY LEAK FIX: Clear Widgets object to release child widget references
2942
- // This object holds references to all child widgets in the container
2943
- if (this.Widgets) {
2944
- Object.keys(this.Widgets).forEach(key => {
2945
- delete this.Widgets[key];
2946
- });
2947
- this.Widgets = null;
2948
- }
2949
- // MEMORY LEAK FIX: Clear content reference
2950
- this.content = null;
2951
- // Call parent ngOnDestroy (StylableComponent → BaseComponent)
2952
- // This will clear the context and unregister the widget
2953
- super.ngOnDestroy();
2954
- }
2955
2859
  static { this.ɵfac = function BaseContainerComponent_Factory(__ngFactoryType__) { i0.ɵɵinvalidFactory(); }; }
2956
2860
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: BaseContainerComponent, contentQueries: function BaseContainerComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
2957
2861
  i0.ɵɵcontentQuery(dirIndex, RedrawableDirective, 5);
@@ -2980,7 +2884,7 @@ const getValidLink = (link) => {
2980
2884
  return link;
2981
2885
  }
2982
2886
  };
2983
- class DatasetAwareNavComponent extends StylableComponent {
2887
+ let DatasetAwareNavComponent = class DatasetAwareNavComponent extends StylableComponent {
2984
2888
  constructor(inj, WIDGET_CONFIG, explicitContext) {
2985
2889
  super(inj, WIDGET_CONFIG, explicitContext);
2986
2890
  this.nodes = [];
@@ -3138,46 +3042,12 @@ class DatasetAwareNavComponent extends StylableComponent {
3138
3042
  }
3139
3043
  super.onPropertyChange(key, nv, ov);
3140
3044
  }
3141
- ngOnDestroy() {
3142
- // MEMORY LEAK FIX: Cancel debounced function
3143
- if (this._resetNodes && this._resetNodes.cancel) {
3144
- this._resetNodes.cancel();
3145
- this._resetNodes = null;
3146
- }
3147
- // MEMORY LEAK FIX: Complete Subject to release subscriptions
3148
- if (this.nodes$) {
3149
- this.nodes$.complete();
3150
- this.nodes$ = null;
3151
- }
3152
- // MEMORY LEAK FIX: Clear nodes array to release references
3153
- this.nodes = [];
3154
- this.dataset = null;
3155
- this._itemFieldMap = null;
3156
- // MEMORY LEAK FIX: Clear bound attribute references
3157
- this.binditemlabel = null;
3158
- this.binditemhint = null;
3159
- this.binditemicon = null;
3160
- this.binditemaction = null;
3161
- this.binditembadge = null;
3162
- this.binditemchildren = null;
3163
- this.binditemlink = null;
3164
- this.binditemtarget = null;
3165
- this.binduserrole = null;
3166
- this.bindisactive = null;
3167
- this.binditemid = null;
3168
- super.ngOnDestroy();
3169
- }
3170
- static { this.ɵfac = function DatasetAwareNavComponent_Factory(__ngFactoryType__) { i0.ɵɵinvalidFactory(); }; }
3171
- static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DatasetAwareNavComponent, factory: DatasetAwareNavComponent.ɵfac }); }
3172
- }
3173
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DatasetAwareNavComponent, [{
3174
- type: Injectable
3175
- }], () => [{ type: i0.Injector }, { type: undefined }, { type: undefined, decorators: [{
3176
- type: Inject,
3177
- args: ['EXPLICIT_CONTEXT']
3178
- }, {
3179
- type: Optional
3180
- }] }], null); })();
3045
+ };
3046
+ DatasetAwareNavComponent = __decorate([
3047
+ __param(2, Inject('EXPLICIT_CONTEXT')),
3048
+ __param(2, Optional()),
3049
+ __metadata("design:paramtypes", [Injector, Object, Object])
3050
+ ], DatasetAwareNavComponent);
3181
3051
 
3182
3052
  class PartialContainerDirective {
3183
3053
  get name() {
@@ -3246,25 +3116,6 @@ class PartialContainerDirective {
3246
3116
  // reload the partial content on partial param change
3247
3117
  componentInstance.registerDestroyListener(() => subscription.unsubscribe());
3248
3118
  }
3249
- ngOnDestroy() {
3250
- // MEMORY LEAK FIX: Clear ViewContainerRef to destroy dynamically created components
3251
- if (this.vcRef) {
3252
- this.vcRef.clear();
3253
- }
3254
- // MEMORY LEAK FIX: Nullify debounced function to break closure
3255
- // The debounced function captures 'this' and has internal timeouts
3256
- if (this.renderPartial && this.renderPartial.cancel) {
3257
- this.renderPartial.cancel();
3258
- }
3259
- this.renderPartial = null;
3260
- // MEMORY LEAK FIX: Clear DOM reference
3261
- this.$target = null;
3262
- // MEMORY LEAK FIX: Clear component instance reference
3263
- // Note: We don't null componentInstance as it's injected and managed by Angular
3264
- // but we clear our internal references
3265
- // Reset content flag
3266
- this.contentInitialized = false;
3267
- }
3268
3119
  static { this.ɵfac = function PartialContainerDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PartialContainerDirective)(i0.ɵɵdirectiveInject(WidgetRef, 2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.App), i0.ɵɵinjectAttribute('content'), i0.ɵɵdirectiveInject(i0.ComponentFactoryResolver), i0.ɵɵdirectiveInject(i1.PartialRefProvider)); }; }
3269
3120
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PartialContainerDirective, selectors: [["", "partialContainer", ""]], standalone: true }); }
3270
3121
  }
@@ -3300,14 +3151,6 @@ class CustomWidgetContainerDirective {
3300
3151
  }
3301
3152
  });
3302
3153
  }
3303
- ngOnDestroy() {
3304
- // MEMORY LEAK FIX: Clear ViewContainerRef to destroy dynamically created components
3305
- if (this.vcRef) {
3306
- this.vcRef.clear();
3307
- }
3308
- // MEMORY LEAK FIX: Clear ElementRef reference
3309
- this.elRef = null;
3310
- }
3311
3154
  static { this.ɵfac = function CustomWidgetContainerDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CustomWidgetContainerDirective)(i0.ɵɵdirectiveInject(WidgetRef, 2), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i1.App), i0.ɵɵinjectAttribute('widgetname'), i0.ɵɵdirectiveInject(i1.CustomWidgetRefProvider)); }; }
3312
3155
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CustomWidgetContainerDirective, selectors: [["", "customWidgetContainer", "", "widgetname", ""]], standalone: true }); }
3313
3156
  }
@@ -3597,23 +3440,6 @@ class BaseFieldValidations {
3597
3440
  }
3598
3441
  }
3599
3442
  }
3600
- // MEMORY LEAK FIX: Cleanup method to release all references
3601
- destroy() {
3602
- // Clear all references to prevent memory leaks
3603
- this.instance = null;
3604
- this.formwidget = null;
3605
- this.widgetControl = null;
3606
- this.widgetContext = null;
3607
- // Clear validators array and async validator function
3608
- if (this._syncValidators) {
3609
- this._syncValidators = [];
3610
- }
3611
- this._asyncValidatorFn = null;
3612
- // Clear default validator messages
3613
- if (this.defaultValidatorMessages) {
3614
- this.defaultValidatorMessages = [];
3615
- }
3616
- }
3617
3443
  }
3618
3444
 
3619
3445
  const registerProps$4 = () => {
@@ -3653,31 +3479,6 @@ class ItemTemplateDirective extends StylableComponent {
3653
3479
  super.ngOnInit();
3654
3480
  this.partialParams.item = this.userComponentParams.dataObject;
3655
3481
  }
3656
- ngOnDestroy() {
3657
- // MEMORY LEAK FIX: Clear context to release references to ngFor context
3658
- // The context holds references to the parent LView and loop variables
3659
- if (this.context) {
3660
- Object.keys(this.context).forEach(key => {
3661
- delete this.context[key];
3662
- });
3663
- this.context = null;
3664
- }
3665
- // MEMORY LEAK FIX: Clear partial params
3666
- if (this.partialParams) {
3667
- Object.keys(this.partialParams).forEach(key => {
3668
- delete this.partialParams[key];
3669
- });
3670
- this.partialParams = null;
3671
- }
3672
- // MEMORY LEAK FIX: Clear user component params reference
3673
- this.userComponentParams = null;
3674
- // MEMORY LEAK FIX: Clear content reference
3675
- this.content = null;
3676
- // MEMORY LEAK FIX: Clear ViewContainerRef reference
3677
- this.viewContainerRef = null;
3678
- // Call parent ngOnDestroy (StylableComponent → BaseComponent)
3679
- super.ngOnDestroy();
3680
- }
3681
3482
  static { this.ɵfac = function ItemTemplateDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ItemTemplateDirective)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.App), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
3682
3483
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ItemTemplateDirective, selectors: [["", "wmItemTemplate", ""]], inputs: { userComponentParams: "userComponentParams", wmItemTemplate: "wmItemTemplate" }, exportAs: ["itemTemplateRef"], standalone: true, features: [i0.ɵɵProvidersFeature([
3683
3484
  provideAsWidgetRef(ItemTemplateDirective)
@@ -3965,27 +3766,6 @@ class PullToRefresh extends SwipeAnimation {
3965
3766
  wait() {
3966
3767
  this.runAnimation = true;
3967
3768
  }
3968
- destroy() {
3969
- // Unsubscribe from app events
3970
- if (this.cancelSubscription) {
3971
- this.cancelSubscription();
3972
- this.cancelSubscription = null;
3973
- }
3974
- // Stop any running animation
3975
- if (this.animationInProgress) {
3976
- this.stopAnimation();
3977
- }
3978
- // Clean up spinner
3979
- if (this.spinner) {
3980
- this.spinner.stop();
3981
- this.spinner = null;
3982
- }
3983
- // Remove DOM elements
3984
- if (this.infoContainer) {
3985
- this.infoContainer.remove();
3986
- this.infoContainer = null;
3987
- }
3988
- }
3989
3769
  }
3990
3770
  // Android Spinner implementation
3991
3771
  class AndroidSpinner {
@@ -5228,7 +5008,7 @@ class LazyLoadDirective {
5228
5008
  constructor(inj, templateRef, viewContainer, explicitContext = {}) {
5229
5009
  this.templateRef = templateRef;
5230
5010
  this.viewContainer = viewContainer;
5231
- this.context = {}; // Changed from readonly to allow cleanup
5011
+ this.context = {};
5232
5012
  let viewParentApp = inj ? inj.get(App) : inject(App);
5233
5013
  let lView = inj._lView;
5234
5014
  this.viewParent = findParent(lView, viewParentApp);
@@ -5236,55 +5016,15 @@ class LazyLoadDirective {
5236
5016
  extend(this.context, inj._lView[8], explicitContext);
5237
5017
  }
5238
5018
  set lazyLoad(expr) {
5239
- // MEMORY LEAK FIX: Unsubscribe from previous watcher if it exists
5240
- if (this.unSubscribeFn && typeof this.unSubscribeFn === 'function') {
5241
- try {
5242
- this.unSubscribeFn();
5243
- }
5244
- catch (e) {
5245
- console.warn('Error unsubscribing from previous lazyLoad watcher:', e);
5246
- }
5247
- this.unSubscribeFn = null;
5248
- }
5249
5019
  this.unSubscribeFn = $watch(expr, this.viewParent, this.context, (val) => {
5250
5020
  if (!this.embeddedView && val) {
5251
5021
  this.embeddedView = this.viewContainer.createEmbeddedView(this.templateRef, this.context);
5252
- // Unsubscribe after creating the view (lazy load is complete)
5253
- if (this.unSubscribeFn && typeof this.unSubscribeFn === 'function') {
5254
- try {
5255
- this.unSubscribeFn();
5256
- this.unSubscribeFn = null; // Clear after calling to prevent double-call
5257
- }
5258
- catch (e) {
5259
- console.warn('Error unsubscribing from lazyLoad watcher:', e);
5260
- this.unSubscribeFn = null;
5261
- }
5262
- }
5022
+ this.unSubscribeFn();
5263
5023
  }
5264
5024
  });
5265
5025
  }
5266
5026
  ngOnDestroy() {
5267
- // MEMORY LEAK FIX: Safely unsubscribe from watcher
5268
- if (this.unSubscribeFn && typeof this.unSubscribeFn === 'function') {
5269
- try {
5270
- this.unSubscribeFn();
5271
- }
5272
- catch (e) {
5273
- console.warn('Error unsubscribing from lazyLoad watcher in ngOnDestroy:', e);
5274
- }
5275
- this.unSubscribeFn = null;
5276
- }
5277
- // MEMORY LEAK FIX: Clear context to release references to parent scope data
5278
- if (this.context) {
5279
- Object.keys(this.context).forEach(key => {
5280
- delete this.context[key];
5281
- });
5282
- this.context = null;
5283
- }
5284
- // MEMORY LEAK FIX: Clear embedded view reference
5285
- if (this.embeddedView) {
5286
- this.embeddedView = null;
5287
- }
5027
+ this.unSubscribeFn();
5288
5028
  }
5289
5029
  static { this.ɵfac = function LazyLoadDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LazyLoadDirective)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
5290
5030
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: LazyLoadDirective, selectors: [["", "lazyLoad", ""]], inputs: { lazyLoad: "lazyLoad" }, standalone: true }); }
@@ -5326,21 +5066,6 @@ class PartialParamHandlerDirective {
5326
5066
  this.widgetRef.params$.next();
5327
5067
  }
5328
5068
  }
5329
- ngOnDestroy() {
5330
- // MEMORY LEAK FIX: Complete the params$ Subject
5331
- if (this.widgetRef.params$) {
5332
- this.widgetRef.params$.complete();
5333
- }
5334
- // MEMORY LEAK FIX: Clear partial params
5335
- if (this.widgetRef.partialParams) {
5336
- Object.keys(this.widgetRef.partialParams).forEach(key => {
5337
- delete this.widgetRef.partialParams[key];
5338
- });
5339
- this.widgetRef.partialParams = null;
5340
- }
5341
- // Clear pageParams reference
5342
- this.widgetRef.pageParams = null;
5343
- }
5344
5069
  static { this.ɵfac = function PartialParamHandlerDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PartialParamHandlerDirective)(i0.ɵɵdirectiveInject(WidgetRef, 2)); }; }
5345
5070
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PartialParamHandlerDirective, selectors: [["", "partialContainer", ""]], standalone: true }); }
5346
5071
  }
@@ -5414,11 +5139,9 @@ class ShowInDeviceDirective {
5414
5139
  constructor(viewContainerRef, inj, templateRef, explicitContext) {
5415
5140
  this.viewContainerRef = viewContainerRef;
5416
5141
  this.templateRef = templateRef;
5417
- this.context = {}; // Changed from readonly to allow cleanup
5142
+ this.context = {};
5418
5143
  extend(this.context, inj._lView[8], explicitContext);
5419
- // MEMORY LEAK FIX: Store bound function reference for proper removal
5420
- this.boundOnResize = this.onResize.bind(this);
5421
- window.addEventListener('resize', this.boundOnResize);
5144
+ window.addEventListener('resize', this.onResize.bind(this));
5422
5145
  }
5423
5146
  set wmShowInDevice(devices) {
5424
5147
  this.devices = devices.split(',');
@@ -5460,23 +5183,7 @@ class ShowInDeviceDirective {
5460
5183
  }
5461
5184
  }
5462
5185
  ngOnDestroy() {
5463
- // MEMORY LEAK FIX: Remove using the stored bound function reference
5464
- if (this.boundOnResize) {
5465
- window.removeEventListener('resize', this.boundOnResize);
5466
- this.boundOnResize = null;
5467
- }
5468
- // MEMORY LEAK FIX: Clear embedded view reference
5469
- if (this.embeddedView) {
5470
- this.viewContainerRef.clear();
5471
- this.embeddedView = null;
5472
- }
5473
- // MEMORY LEAK FIX: Clear context to release references to parent scope data
5474
- if (this.context) {
5475
- Object.keys(this.context).forEach(key => {
5476
- delete this.context[key];
5477
- });
5478
- this.context = null;
5479
- }
5186
+ window.removeEventListener('resize', this.onResize);
5480
5187
  }
5481
5188
  static { this.ɵfac = function ShowInDeviceDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ShowInDeviceDirective)(i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.TemplateRef), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
5482
5189
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ShowInDeviceDirective, selectors: [["", "wmShowInDevice", ""]], inputs: { wmShowInDevice: "wmShowInDevice" }, standalone: true }); }