@wavemaker-ai/app-ng-runtime 1.0.0-rc.647469

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 (2549) hide show
  1. package/build-task/.npmignore +2 -0
  2. package/build-task/advanced/carousel/carousel-template/carousel-template.build.d.ts +2 -0
  3. package/build-task/advanced/carousel/carousel.build.d.ts +2 -0
  4. package/build-task/advanced/custom-widget-container/custom-widget-container.build.d.ts +2 -0
  5. package/build-task/advanced/custom-widget-wrapper/custom-widget-wrapper.build.d.ts +2 -0
  6. package/build-task/advanced/login/login.build.d.ts +2 -0
  7. package/build-task/advanced/marquee/marquee.build.d.ts +2 -0
  8. package/build-task/basic/anchor/anchor.build.d.ts +2 -0
  9. package/build-task/basic/audio/audio.build.d.ts +2 -0
  10. package/build-task/basic/html/html.build.d.ts +2 -0
  11. package/build-task/basic/icon/icon.build.d.ts +2 -0
  12. package/build-task/basic/iframe/iframe.build.d.ts +2 -0
  13. package/build-task/basic/label/label.build.d.ts +2 -0
  14. package/build-task/basic/picture/picture.build.d.ts +2 -0
  15. package/build-task/basic/progress/progress-bar/progress-bar.build.d.ts +2 -0
  16. package/build-task/basic/progress/progress-circle/progress-circle.build.d.ts +2 -0
  17. package/build-task/basic/rich-text-editor/rich-text-editor.build.d.ts +2 -0
  18. package/build-task/basic/search/search.build.d.ts +2 -0
  19. package/build-task/basic/spinner/spinner.build.d.ts +2 -0
  20. package/build-task/basic/tree/tree.build.d.ts +1 -0
  21. package/build-task/basic/video/video.build.d.ts +2 -0
  22. package/build-task/bundles/index.umd.js +3106 -0
  23. package/build-task/chart/chart.build.d.ts +2 -0
  24. package/build-task/containers/accordion/accordion-pane/accordion-pane.build.d.ts +2 -0
  25. package/build-task/containers/accordion/accordion.build.d.ts +2 -0
  26. package/build-task/containers/container.build.d.ts +2 -0
  27. package/build-task/containers/layout-grid/layout-grid-column/layout-grid-column.build.d.ts +2 -0
  28. package/build-task/containers/layout-grid/layout-grid-row/layout-grid-row.build.d.ts +2 -0
  29. package/build-task/containers/layout-grid/layout-grid.build.d.ts +2 -0
  30. package/build-task/containers/linear-layout/linear-layout-item/linear-layout-item.build.d.ts +2 -0
  31. package/build-task/containers/linear-layout/linear-layout.build.d.ts +2 -0
  32. package/build-task/containers/panel/panel.build.d.ts +2 -0
  33. package/build-task/containers/repeat-template.build.d.ts +2 -0
  34. package/build-task/containers/segmented-control/segment-content/segment-content.build.d.ts +2 -0
  35. package/build-task/containers/segmented-control/segmented-control.build.d.ts +2 -0
  36. package/build-task/containers/tabs/tab-pane/tab-pane.build.d.ts +2 -0
  37. package/build-task/containers/tabs/tabs.build.d.ts +2 -0
  38. package/build-task/containers/tile/tile.build.d.ts +2 -0
  39. package/build-task/containers/wizard/wizard-action/wizard-action.build.d.ts +2 -0
  40. package/build-task/containers/wizard/wizard-step/wizard-step.build.d.ts +2 -0
  41. package/build-task/containers/wizard/wizard.build.d.ts +2 -0
  42. package/build-task/data/card/card-actions/card-actions.build.d.ts +2 -0
  43. package/build-task/data/card/card-content/card-content.build.d.ts +2 -0
  44. package/build-task/data/card/card-footer/card-footer.build.d.ts +2 -0
  45. package/build-task/data/card/card.build.d.ts +2 -0
  46. package/build-task/data/form/form-action/form-action.build.d.ts +2 -0
  47. package/build-task/data/form/form-field/form-field.build.d.ts +2 -0
  48. package/build-task/data/form/form.build.d.ts +2 -0
  49. package/build-task/data/list/list.build.d.ts +2 -0
  50. package/build-task/data/live-table/live-table.build.d.ts +2 -0
  51. package/build-task/data/media-list/media-list-item/media-list-item.build.d.ts +2 -0
  52. package/build-task/data/media-list/media-list.build.d.ts +2 -0
  53. package/build-task/data/pagination/pagination.build.d.ts +2 -0
  54. package/build-task/data/table/table-action/table-action.build.d.ts +2 -0
  55. package/build-task/data/table/table-column/table-column.build.d.ts +2 -0
  56. package/build-task/data/table/table-column-group/table-column-group.build.d.ts +2 -0
  57. package/build-task/data/table/table-row/table-row.build.d.ts +2 -0
  58. package/build-task/data/table/table-row-action/table-row-action.build.d.ts +2 -0
  59. package/build-task/data/table/table.build.d.ts +2 -0
  60. package/build-task/device/barcode-scanner/barcode-scanner.build.d.ts +2 -0
  61. package/build-task/device/camera/camera.build.d.ts +2 -0
  62. package/build-task/dialogs/alert-dialog/alert-dialog.build.d.ts +2 -0
  63. package/build-task/dialogs/base/dialog-footer/dialog-footer.build.d.ts +2 -0
  64. package/build-task/dialogs/confirm-dialog/confirm-dialog.build.d.ts +2 -0
  65. package/build-task/dialogs/design-dialog/dialog.build.d.ts +2 -0
  66. package/build-task/dialogs/iframe-dialog/iframe-dialog.build.d.ts +2 -0
  67. package/build-task/dialogs/login-dialog/login-dialog.build.d.ts +2 -0
  68. package/build-task/dialogs/partial-dialog/partial-dialog.build.d.ts +2 -0
  69. package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +31 -0
  70. package/build-task/esm2022/advanced/carousel/carousel.build.mjs +45 -0
  71. package/build-task/esm2022/advanced/custom-widget-container/custom-widget-container.build.mjs +15 -0
  72. package/build-task/esm2022/advanced/custom-widget-wrapper/custom-widget-wrapper.build.mjs +26 -0
  73. package/build-task/esm2022/advanced/login/login.build.mjs +15 -0
  74. package/build-task/esm2022/advanced/marquee/marquee.build.mjs +10 -0
  75. package/build-task/esm2022/basic/anchor/anchor.build.mjs +15 -0
  76. package/build-task/esm2022/basic/audio/audio.build.mjs +10 -0
  77. package/build-task/esm2022/basic/html/html.build.mjs +15 -0
  78. package/build-task/esm2022/basic/icon/icon.build.mjs +10 -0
  79. package/build-task/esm2022/basic/iframe/iframe.build.mjs +10 -0
  80. package/build-task/esm2022/basic/label/label.build.mjs +25 -0
  81. package/build-task/esm2022/basic/picture/picture.build.mjs +14 -0
  82. package/build-task/esm2022/basic/progress/progress-bar/progress-bar.build.mjs +35 -0
  83. package/build-task/esm2022/basic/progress/progress-circle/progress-circle.build.mjs +15 -0
  84. package/build-task/esm2022/basic/rich-text-editor/rich-text-editor.build.mjs +15 -0
  85. package/build-task/esm2022/basic/search/search.build.mjs +11 -0
  86. package/build-task/esm2022/basic/spinner/spinner.build.mjs +15 -0
  87. package/build-task/esm2022/basic/tree/tree.build.mjs +9 -0
  88. package/build-task/esm2022/basic/video/video.build.mjs +10 -0
  89. package/build-task/esm2022/chart/chart.build.mjs +10 -0
  90. package/build-task/esm2022/containers/accordion/accordion-pane/accordion-pane.build.mjs +15 -0
  91. package/build-task/esm2022/containers/accordion/accordion.build.mjs +40 -0
  92. package/build-task/esm2022/containers/container.build.mjs +10 -0
  93. package/build-task/esm2022/containers/layout-grid/layout-grid-column/layout-grid-column.build.mjs +10 -0
  94. package/build-task/esm2022/containers/layout-grid/layout-grid-row/layout-grid-row.build.mjs +10 -0
  95. package/build-task/esm2022/containers/layout-grid/layout-grid.build.mjs +10 -0
  96. package/build-task/esm2022/containers/linear-layout/linear-layout-item/linear-layout-item.build.mjs +10 -0
  97. package/build-task/esm2022/containers/linear-layout/linear-layout.build.mjs +21 -0
  98. package/build-task/esm2022/containers/panel/panel.build.mjs +21 -0
  99. package/build-task/esm2022/containers/repeat-template.build.mjs +26 -0
  100. package/build-task/esm2022/containers/segmented-control/segment-content/segment-content.build.mjs +10 -0
  101. package/build-task/esm2022/containers/segmented-control/segmented-control.build.mjs +10 -0
  102. package/build-task/esm2022/containers/tabs/tab-pane/tab-pane.build.mjs +10 -0
  103. package/build-task/esm2022/containers/tabs/tabs.build.mjs +40 -0
  104. package/build-task/esm2022/containers/tile/tile.build.mjs +10 -0
  105. package/build-task/esm2022/containers/wizard/wizard-action/wizard-action.build.mjs +10 -0
  106. package/build-task/esm2022/containers/wizard/wizard-step/wizard-step.build.mjs +16 -0
  107. package/build-task/esm2022/containers/wizard/wizard.build.mjs +39 -0
  108. package/build-task/esm2022/data/card/card-actions/card-actions.build.mjs +10 -0
  109. package/build-task/esm2022/data/card/card-content/card-content.build.mjs +10 -0
  110. package/build-task/esm2022/data/card/card-footer/card-footer.build.mjs +10 -0
  111. package/build-task/esm2022/data/card/card.build.mjs +10 -0
  112. package/build-task/esm2022/data/form/form-action/form-action.build.mjs +12 -0
  113. package/build-task/esm2022/data/form/form-field/form-field.build.mjs +173 -0
  114. package/build-task/esm2022/data/form/form.build.mjs +161 -0
  115. package/build-task/esm2022/data/list/list.build.mjs +89 -0
  116. package/build-task/esm2022/data/live-table/live-table.build.mjs +21 -0
  117. package/build-task/esm2022/data/media-list/media-list-item/media-list-item.build.mjs +10 -0
  118. package/build-task/esm2022/data/media-list/media-list.build.mjs +57 -0
  119. package/build-task/esm2022/data/pagination/pagination.build.mjs +10 -0
  120. package/build-task/esm2022/data/table/table-action/table-action.build.mjs +10 -0
  121. package/build-task/esm2022/data/table/table-column/table-column.build.mjs +294 -0
  122. package/build-task/esm2022/data/table/table-column-group/table-column-group.build.mjs +10 -0
  123. package/build-task/esm2022/data/table/table-row/table-row.build.mjs +34 -0
  124. package/build-task/esm2022/data/table/table-row-action/table-row-action.build.mjs +41 -0
  125. package/build-task/esm2022/data/table/table.build.mjs +86 -0
  126. package/build-task/esm2022/device/barcode-scanner/barcode-scanner.build.mjs +15 -0
  127. package/build-task/esm2022/device/camera/camera.build.mjs +15 -0
  128. package/build-task/esm2022/dialogs/alert-dialog/alert-dialog.build.mjs +10 -0
  129. package/build-task/esm2022/dialogs/base/dialog-footer/dialog-footer.build.mjs +10 -0
  130. package/build-task/esm2022/dialogs/confirm-dialog/confirm-dialog.build.mjs +10 -0
  131. package/build-task/esm2022/dialogs/design-dialog/dialog.build.mjs +17 -0
  132. package/build-task/esm2022/dialogs/iframe-dialog/iframe-dialog.build.mjs +10 -0
  133. package/build-task/esm2022/dialogs/login-dialog/login-dialog.build.mjs +10 -0
  134. package/build-task/esm2022/dialogs/partial-dialog/partial-dialog.build.mjs +40 -0
  135. package/build-task/esm2022/index.mjs +5 -0
  136. package/build-task/esm2022/input/calendar/calendar.build.mjs +13 -0
  137. package/build-task/esm2022/input/chips/chips.build.mjs +11 -0
  138. package/build-task/esm2022/input/color-picker/color-picker.build.mjs +11 -0
  139. package/build-task/esm2022/input/currency/currency.build.mjs +11 -0
  140. package/build-task/esm2022/input/default/button/button.build.mjs +15 -0
  141. package/build-task/esm2022/input/default/button-group/button-group.build.mjs +10 -0
  142. package/build-task/esm2022/input/default/checkbox/checkbox.build.mjs +18 -0
  143. package/build-task/esm2022/input/default/checkboxset/checkboxset.build.mjs +11 -0
  144. package/build-task/esm2022/input/default/composite/composite.build.mjs +10 -0
  145. package/build-task/esm2022/input/default/number/number.build.mjs +11 -0
  146. package/build-task/esm2022/input/default/radioset/radioset.build.mjs +15 -0
  147. package/build-task/esm2022/input/default/select/select.build.mjs +11 -0
  148. package/build-task/esm2022/input/default/switch/switch.build.mjs +15 -0
  149. package/build-task/esm2022/input/default/text/text.build.mjs +11 -0
  150. package/build-task/esm2022/input/default/textarea/textarea.build.mjs +11 -0
  151. package/build-task/esm2022/input/epoch/date/date.build.mjs +11 -0
  152. package/build-task/esm2022/input/epoch/date-time/date-time.build.mjs +11 -0
  153. package/build-task/esm2022/input/epoch/time/time.build.mjs +11 -0
  154. package/build-task/esm2022/input/file-upload/file-upload.build.mjs +20 -0
  155. package/build-task/esm2022/input/rating/rating.build.mjs +11 -0
  156. package/build-task/esm2022/input/slider/slider.build.mjs +11 -0
  157. package/build-task/esm2022/message/message.build.mjs +15 -0
  158. package/build-task/esm2022/navigation/breadcrumb/breadcrumb.build.mjs +10 -0
  159. package/build-task/esm2022/navigation/menu/menu.build.mjs +27 -0
  160. package/build-task/esm2022/navigation/nav/nav-item/nav-item.build.mjs +10 -0
  161. package/build-task/esm2022/navigation/nav/nav.build.mjs +10 -0
  162. package/build-task/esm2022/navigation/navbar/navbar.build.mjs +10 -0
  163. package/build-task/esm2022/navigation/popover/popover.build.mjs +41 -0
  164. package/build-task/esm2022/page/content/content.build.mjs +10 -0
  165. package/build-task/esm2022/page/footer/footer.build.mjs +15 -0
  166. package/build-task/esm2022/page/header/header.build.mjs +15 -0
  167. package/build-task/esm2022/page/layout.build.mjs +15 -0
  168. package/build-task/esm2022/page/left-panel/left-panel.build.mjs +15 -0
  169. package/build-task/esm2022/page/mobile-navbar/mobile-navbar.build.mjs +10 -0
  170. package/build-task/esm2022/page/page-content/page-content.build.mjs +36 -0
  171. package/build-task/esm2022/page/page.build.mjs +59 -0
  172. package/build-task/esm2022/page/right-panel/right-panel.build.mjs +15 -0
  173. package/build-task/esm2022/page/router-outlet/router-outlet.build.mjs +10 -0
  174. package/build-task/esm2022/page/tab-bar/tab-bar.build.mjs +10 -0
  175. package/build-task/esm2022/page/top-nav/top-nav.build.mjs +15 -0
  176. package/build-task/esm2022/partial/partial.build.mjs +25 -0
  177. package/build-task/esm2022/partial-param/partial-param.build.mjs +10 -0
  178. package/build-task/esm2022/prefab/prefab-container/prefab-container.build.mjs +25 -0
  179. package/build-task/esm2022/prefab/prefab.build.mjs +10 -0
  180. package/build-task/esm2022/public_api.mjs +113 -0
  181. package/build-task/esm2022/utils/utils.mjs +69 -0
  182. package/build-task/fesm2022/index.mjs +2998 -0
  183. package/build-task/fesm2022/index.mjs.map +1 -0
  184. package/build-task/index.d.ts +5 -0
  185. package/build-task/input/calendar/calendar.build.d.ts +2 -0
  186. package/build-task/input/chips/chips.build.d.ts +2 -0
  187. package/build-task/input/color-picker/color-picker.build.d.ts +2 -0
  188. package/build-task/input/currency/currency.build.d.ts +2 -0
  189. package/build-task/input/default/button/button.build.d.ts +2 -0
  190. package/build-task/input/default/button-group/button-group.build.d.ts +2 -0
  191. package/build-task/input/default/checkbox/checkbox.build.d.ts +2 -0
  192. package/build-task/input/default/checkboxset/checkboxset.build.d.ts +2 -0
  193. package/build-task/input/default/composite/composite.build.d.ts +2 -0
  194. package/build-task/input/default/number/number.build.d.ts +2 -0
  195. package/build-task/input/default/radioset/radioset.build.d.ts +2 -0
  196. package/build-task/input/default/select/select.build.d.ts +2 -0
  197. package/build-task/input/default/switch/switch.build.d.ts +2 -0
  198. package/build-task/input/default/text/text.build.d.ts +2 -0
  199. package/build-task/input/default/textarea/textarea.build.d.ts +2 -0
  200. package/build-task/input/epoch/date/date.build.d.ts +2 -0
  201. package/build-task/input/epoch/date-time/date-time.build.d.ts +2 -0
  202. package/build-task/input/epoch/time/time.build.d.ts +2 -0
  203. package/build-task/input/file-upload/file-upload.build.d.ts +2 -0
  204. package/build-task/input/rating/rating.build.d.ts +2 -0
  205. package/build-task/input/slider/slider.build.d.ts +2 -0
  206. package/build-task/message/message.build.d.ts +2 -0
  207. package/build-task/navigation/breadcrumb/breadcrumb.build.d.ts +2 -0
  208. package/build-task/navigation/menu/menu.build.d.ts +2 -0
  209. package/build-task/navigation/nav/nav-item/nav-item.build.d.ts +2 -0
  210. package/build-task/navigation/nav/nav.build.d.ts +2 -0
  211. package/build-task/navigation/navbar/navbar.build.d.ts +2 -0
  212. package/build-task/navigation/popover/popover.build.d.ts +2 -0
  213. package/build-task/package.json +25 -0
  214. package/build-task/page/content/content.build.d.ts +2 -0
  215. package/build-task/page/footer/footer.build.d.ts +2 -0
  216. package/build-task/page/header/header.build.d.ts +2 -0
  217. package/build-task/page/layout.build.d.ts +2 -0
  218. package/build-task/page/left-panel/left-panel.build.d.ts +2 -0
  219. package/build-task/page/mobile-navbar/mobile-navbar.build.d.ts +2 -0
  220. package/build-task/page/page-content/page-content.build.d.ts +2 -0
  221. package/build-task/page/page.build.d.ts +2 -0
  222. package/build-task/page/right-panel/right-panel.build.d.ts +2 -0
  223. package/build-task/page/router-outlet/router-outlet.build.d.ts +2 -0
  224. package/build-task/page/tab-bar/tab-bar.build.d.ts +2 -0
  225. package/build-task/page/top-nav/top-nav.build.d.ts +2 -0
  226. package/build-task/partial/partial.build.d.ts +2 -0
  227. package/build-task/partial-param/partial-param.build.d.ts +2 -0
  228. package/build-task/prefab/prefab-container/prefab-container.build.d.ts +2 -0
  229. package/build-task/prefab/prefab.build.d.ts +2 -0
  230. package/build-task/public_api.d.ts +112 -0
  231. package/build-task/utils/utils.d.ts +21 -0
  232. package/components/advanced/carousel/.npmignore +2 -0
  233. package/components/advanced/carousel/bundles/index.umd.js +352 -0
  234. package/components/advanced/carousel/carousel-template/carousel-template.directive.d.ts +9 -0
  235. package/components/advanced/carousel/carousel-template/carousel-template.props.d.ts +1 -0
  236. package/components/advanced/carousel/carousel.animator.d.ts +45 -0
  237. package/components/advanced/carousel/carousel.directive.d.ts +35 -0
  238. package/components/advanced/carousel/carousel.props.d.ts +1 -0
  239. package/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +32 -0
  240. package/components/advanced/carousel/esm2022/carousel-template/carousel-template.props.mjs +7 -0
  241. package/components/advanced/carousel/esm2022/carousel.animator.mjs +149 -0
  242. package/components/advanced/carousel/esm2022/carousel.directive.mjs +135 -0
  243. package/components/advanced/carousel/esm2022/carousel.props.mjs +13 -0
  244. package/components/advanced/carousel/esm2022/index.mjs +5 -0
  245. package/components/advanced/carousel/esm2022/public_api.mjs +4 -0
  246. package/components/advanced/carousel/fesm2022/index.mjs +335 -0
  247. package/components/advanced/carousel/fesm2022/index.mjs.map +1 -0
  248. package/components/advanced/carousel/index.d.ts +5 -0
  249. package/components/advanced/carousel/package.json +20 -0
  250. package/components/advanced/carousel/public_api.d.ts +3 -0
  251. package/components/advanced/custom/.npmignore +2 -0
  252. package/components/advanced/custom/bundles/index.umd.js +258 -0
  253. package/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +29 -0
  254. package/components/advanced/custom/custom-widget-container/custom-widget.props.d.ts +2 -0
  255. package/components/advanced/custom/custom-widget-prop.d.ts +1 -0
  256. package/components/advanced/custom/custom-widget.directive.d.ts +19 -0
  257. package/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +156 -0
  258. package/components/advanced/custom/esm2022/custom-widget-container/custom-widget.props.mjs +12 -0
  259. package/components/advanced/custom/esm2022/custom-widget-prop.mjs +8 -0
  260. package/components/advanced/custom/esm2022/custom-widget.directive.mjs +70 -0
  261. package/components/advanced/custom/esm2022/index.mjs +5 -0
  262. package/components/advanced/custom/esm2022/public_api.mjs +3 -0
  263. package/components/advanced/custom/fesm2022/index.mjs +244 -0
  264. package/components/advanced/custom/fesm2022/index.mjs.map +1 -0
  265. package/components/advanced/custom/index.d.ts +5 -0
  266. package/components/advanced/custom/package.json +20 -0
  267. package/components/advanced/custom/public_api.d.ts +2 -0
  268. package/components/advanced/login/.npmignore +2 -0
  269. package/components/advanced/login/bundles/index.umd.js +135 -0
  270. package/components/advanced/login/esm2022/index.mjs +5 -0
  271. package/components/advanced/login/esm2022/login.component.mjs +107 -0
  272. package/components/advanced/login/esm2022/login.props.mjs +8 -0
  273. package/components/advanced/login/esm2022/public_api.mjs +2 -0
  274. package/components/advanced/login/fesm2022/index.mjs +120 -0
  275. package/components/advanced/login/fesm2022/index.mjs.map +1 -0
  276. package/components/advanced/login/index.d.ts +5 -0
  277. package/components/advanced/login/login.component.d.ts +31 -0
  278. package/components/advanced/login/login.props.d.ts +1 -0
  279. package/components/advanced/login/package.json +20 -0
  280. package/components/advanced/login/public_api.d.ts +1 -0
  281. package/components/advanced/marquee/.npmignore +2 -0
  282. package/components/advanced/marquee/bundles/index.umd.js +71 -0
  283. package/components/advanced/marquee/esm2022/index.mjs +5 -0
  284. package/components/advanced/marquee/esm2022/marquee.directive.mjs +36 -0
  285. package/components/advanced/marquee/esm2022/marquee.props.mjs +12 -0
  286. package/components/advanced/marquee/esm2022/public_api.mjs +2 -0
  287. package/components/advanced/marquee/fesm2022/index.mjs +53 -0
  288. package/components/advanced/marquee/fesm2022/index.mjs.map +1 -0
  289. package/components/advanced/marquee/index.d.ts +5 -0
  290. package/components/advanced/marquee/marquee.directive.d.ts +9 -0
  291. package/components/advanced/marquee/marquee.props.d.ts +1 -0
  292. package/components/advanced/marquee/package.json +20 -0
  293. package/components/advanced/marquee/public_api.d.ts +1 -0
  294. package/components/base/.npmignore +2 -0
  295. package/components/base/bundles/index.umd.js +5982 -0
  296. package/components/base/decorators/autolayout.decorator.d.ts +4 -0
  297. package/components/base/decorators/autolayout.props.d.ts +1 -0
  298. package/components/base/directives/show-in-device.directive.d.ts +16 -0
  299. package/components/base/esm2022/decorators/autolayout.decorator.mjs +476 -0
  300. package/components/base/esm2022/decorators/autolayout.props.mjs +20 -0
  301. package/components/base/esm2022/directives/show-in-device.directive.mjs +90 -0
  302. package/components/base/esm2022/index.mjs +5 -0
  303. package/components/base/esm2022/pipes/custom-pipes.mjs +473 -0
  304. package/components/base/esm2022/pipes/image.pipe.mjs +19 -0
  305. package/components/base/esm2022/pipes/sanitize.pipe.mjs +44 -0
  306. package/components/base/esm2022/pipes/trust-as.pipe.mjs +41 -0
  307. package/components/base/esm2022/pipes/wm-pipe.mjs +18 -0
  308. package/components/base/esm2022/public_api.mjs +36 -0
  309. package/components/base/esm2022/utils/autolayout-utils.mjs +261 -0
  310. package/components/base/esm2022/utils/data-utils.mjs +581 -0
  311. package/components/base/esm2022/utils/form-utils.mjs +451 -0
  312. package/components/base/esm2022/utils/live-utils.mjs +216 -0
  313. package/components/base/esm2022/utils/widget-utils.mjs +495 -0
  314. package/components/base/esm2022/widgets/common/base/base-container.component.mjs +80 -0
  315. package/components/base/esm2022/widgets/common/base/base-field-validations.mjs +295 -0
  316. package/components/base/esm2022/widgets/common/base/base.component.mjs +713 -0
  317. package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +48 -0
  318. package/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +222 -0
  319. package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +115 -0
  320. package/components/base/esm2022/widgets/common/base/stylable.component.mjs +11 -0
  321. package/components/base/esm2022/widgets/common/base/text-content.directive.mjs +26 -0
  322. package/components/base/esm2022/widgets/common/container/container.directive.mjs +51 -0
  323. package/components/base/esm2022/widgets/common/container/container.props.mjs +15 -0
  324. package/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +170 -0
  325. package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +89 -0
  326. package/components/base/esm2022/widgets/common/item-template/item-template.props.mjs +7 -0
  327. package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +84 -0
  328. package/components/base/esm2022/widgets/common/message/message.component.mjs +104 -0
  329. package/components/base/esm2022/widgets/common/message/message.props.mjs +13 -0
  330. package/components/base/esm2022/widgets/common/partial/partial.directive.mjs +53 -0
  331. package/components/base/esm2022/widgets/common/partial/partial.props.mjs +7 -0
  332. package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +88 -0
  333. package/components/base/esm2022/widgets/common/pull-to-refresh/pull-to-refresh.mjs +261 -0
  334. package/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +40 -0
  335. package/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +33 -0
  336. package/components/base/esm2022/widgets/common/repeat-template/repeat-template.props.mjs +7 -0
  337. package/components/base/esm2022/widgets/framework/constants.mjs +36 -0
  338. package/components/base/esm2022/widgets/framework/deviceview.mjs +126 -0
  339. package/components/base/esm2022/widgets/framework/property-change-handler.mjs +96 -0
  340. package/components/base/esm2022/widgets/framework/styler.mjs +123 -0
  341. package/components/base/esm2022/widgets/framework/types.mjs +8 -0
  342. package/components/base/esm2022/widgets/framework/widget-id-generator.mjs +3 -0
  343. package/components/base/esm2022/widgets/framework/widget-props.mjs +35 -0
  344. package/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +75 -0
  345. package/components/base/esm2022/widgets/framework/widget-registry.mjs +49 -0
  346. package/components/base/fesm2022/index.mjs +5858 -0
  347. package/components/base/fesm2022/index.mjs.map +1 -0
  348. package/components/base/index.d.ts +5 -0
  349. package/components/base/package.json +28 -0
  350. package/components/base/pipes/custom-pipes.d.ts +104 -0
  351. package/components/base/pipes/image.pipe.d.ts +7 -0
  352. package/components/base/pipes/sanitize.pipe.d.ts +10 -0
  353. package/components/base/pipes/trust-as.pipe.d.ts +10 -0
  354. package/components/base/pipes/wm-pipe.d.ts +9 -0
  355. package/components/base/public_api.d.ts +35 -0
  356. package/components/base/utils/autolayout-utils.d.ts +29 -0
  357. package/components/base/utils/data-utils.d.ts +181 -0
  358. package/components/base/utils/form-utils.d.ts +85 -0
  359. package/components/base/utils/live-utils.d.ts +65 -0
  360. package/components/base/utils/widget-utils.d.ts +120 -0
  361. package/components/base/widgets/common/base/base-container.component.d.ts +16 -0
  362. package/components/base/widgets/common/base/base-field-validations.d.ts +27 -0
  363. package/components/base/widgets/common/base/base.component.d.ts +276 -0
  364. package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +15 -0
  365. package/components/base/widgets/common/base/dataset-aware-nav.component.d.ts +77 -0
  366. package/components/base/widgets/common/base/partial-container.directive.d.ts +22 -0
  367. package/components/base/widgets/common/base/stylable.component.d.ts +54 -0
  368. package/components/base/widgets/common/base/text-content.directive.d.ts +9 -0
  369. package/components/base/widgets/common/container/container.directive.d.ts +12 -0
  370. package/components/base/widgets/common/container/container.props.d.ts +1 -0
  371. package/components/base/widgets/common/dialog/dialog.service.d.ts +54 -0
  372. package/components/base/widgets/common/item-template/item-template.directive.d.ts +32 -0
  373. package/components/base/widgets/common/item-template/item-template.props.d.ts +1 -0
  374. package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +15 -0
  375. package/components/base/widgets/common/message/message.component.d.ts +19 -0
  376. package/components/base/widgets/common/message/message.props.d.ts +1 -0
  377. package/components/base/widgets/common/partial/partial.directive.d.ts +15 -0
  378. package/components/base/widgets/common/partial/partial.props.d.ts +1 -0
  379. package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +21 -0
  380. package/components/base/widgets/common/pull-to-refresh/pull-to-refresh.d.ts +48 -0
  381. package/components/base/widgets/common/redraw/redrawable.directive.d.ts +8 -0
  382. package/components/base/widgets/common/repeat-template/repeat-template.directive.d.ts +9 -0
  383. package/components/base/widgets/common/repeat-template/repeat-template.props.d.ts +1 -0
  384. package/components/base/widgets/framework/constants.d.ts +16 -0
  385. package/components/base/widgets/framework/deviceview.d.ts +1 -0
  386. package/components/base/widgets/framework/property-change-handler.d.ts +8 -0
  387. package/components/base/widgets/framework/styler.d.ts +59 -0
  388. package/components/base/widgets/framework/types.d.ts +23 -0
  389. package/components/base/widgets/framework/widget-id-generator.d.ts +2 -0
  390. package/components/base/widgets/framework/widget-props.d.ts +12 -0
  391. package/components/base/widgets/framework/widget-proxy-provider.d.ts +11 -0
  392. package/components/base/widgets/framework/widget-registry.d.ts +14 -0
  393. package/components/basic/anchor/.npmignore +2 -0
  394. package/components/basic/anchor/anchor.component.d.ts +37 -0
  395. package/components/basic/anchor/anchor.props.d.ts +1 -0
  396. package/components/basic/anchor/bundles/index.umd.js +204 -0
  397. package/components/basic/anchor/esm2022/anchor.component.mjs +155 -0
  398. package/components/basic/anchor/esm2022/anchor.props.mjs +27 -0
  399. package/components/basic/anchor/esm2022/index.mjs +5 -0
  400. package/components/basic/anchor/esm2022/public_api.mjs +2 -0
  401. package/components/basic/anchor/fesm2022/index.mjs +187 -0
  402. package/components/basic/anchor/fesm2022/index.mjs.map +1 -0
  403. package/components/basic/anchor/index.d.ts +5 -0
  404. package/components/basic/anchor/package.json +20 -0
  405. package/components/basic/anchor/public_api.d.ts +1 -0
  406. package/components/basic/audio/.npmignore +2 -0
  407. package/components/basic/audio/audio.component.d.ts +20 -0
  408. package/components/basic/audio/audio.props.d.ts +1 -0
  409. package/components/basic/audio/bundles/index.umd.js +83 -0
  410. package/components/basic/audio/esm2022/audio.component.mjs +41 -0
  411. package/components/basic/audio/esm2022/audio.props.mjs +19 -0
  412. package/components/basic/audio/esm2022/index.mjs +5 -0
  413. package/components/basic/audio/esm2022/public_api.mjs +2 -0
  414. package/components/basic/audio/fesm2022/index.mjs +65 -0
  415. package/components/basic/audio/fesm2022/index.mjs.map +1 -0
  416. package/components/basic/audio/index.d.ts +5 -0
  417. package/components/basic/audio/package.json +20 -0
  418. package/components/basic/audio/public_api.d.ts +1 -0
  419. package/components/basic/html/.npmignore +2 -0
  420. package/components/basic/html/bundles/index.umd.js +122 -0
  421. package/components/basic/html/esm2022/html.directive.mjs +88 -0
  422. package/components/basic/html/esm2022/html.props.mjs +12 -0
  423. package/components/basic/html/esm2022/index.mjs +5 -0
  424. package/components/basic/html/esm2022/public_api.mjs +2 -0
  425. package/components/basic/html/fesm2022/index.mjs +105 -0
  426. package/components/basic/html/fesm2022/index.mjs.map +1 -0
  427. package/components/basic/html/html.directive.d.ts +14 -0
  428. package/components/basic/html/html.props.d.ts +1 -0
  429. package/components/basic/html/index.d.ts +5 -0
  430. package/components/basic/html/package.json +20 -0
  431. package/components/basic/html/public_api.d.ts +1 -0
  432. package/components/basic/icon/.npmignore +2 -0
  433. package/components/basic/icon/bundles/index.umd.js +80 -0
  434. package/components/basic/icon/esm2022/icon.component.mjs +38 -0
  435. package/components/basic/icon/esm2022/icon.props.mjs +19 -0
  436. package/components/basic/icon/esm2022/index.mjs +5 -0
  437. package/components/basic/icon/esm2022/public_api.mjs +2 -0
  438. package/components/basic/icon/fesm2022/index.mjs +62 -0
  439. package/components/basic/icon/fesm2022/index.mjs.map +1 -0
  440. package/components/basic/icon/icon.component.d.ts +15 -0
  441. package/components/basic/icon/icon.props.d.ts +1 -0
  442. package/components/basic/icon/index.d.ts +5 -0
  443. package/components/basic/icon/package.json +20 -0
  444. package/components/basic/icon/public_api.d.ts +1 -0
  445. package/components/basic/iframe/.npmignore +2 -0
  446. package/components/basic/iframe/bundles/index.umd.js +101 -0
  447. package/components/basic/iframe/esm2022/iframe.component.mjs +65 -0
  448. package/components/basic/iframe/esm2022/iframe.props.mjs +15 -0
  449. package/components/basic/iframe/esm2022/index.mjs +5 -0
  450. package/components/basic/iframe/esm2022/public_api.mjs +2 -0
  451. package/components/basic/iframe/fesm2022/index.mjs +84 -0
  452. package/components/basic/iframe/fesm2022/index.mjs.map +1 -0
  453. package/components/basic/iframe/iframe.component.d.ts +26 -0
  454. package/components/basic/iframe/iframe.props.d.ts +1 -0
  455. package/components/basic/iframe/index.d.ts +5 -0
  456. package/components/basic/iframe/package.json +20 -0
  457. package/components/basic/iframe/public_api.d.ts +1 -0
  458. package/components/basic/label/.npmignore +2 -0
  459. package/components/basic/label/bundles/index.umd.js +129 -0
  460. package/components/basic/label/esm2022/index.mjs +5 -0
  461. package/components/basic/label/esm2022/label.directive.mjs +91 -0
  462. package/components/basic/label/esm2022/label.props.mjs +17 -0
  463. package/components/basic/label/esm2022/public_api.mjs +2 -0
  464. package/components/basic/label/fesm2022/index.mjs +113 -0
  465. package/components/basic/label/fesm2022/index.mjs.map +1 -0
  466. package/components/basic/label/index.d.ts +5 -0
  467. package/components/basic/label/label.directive.d.ts +12 -0
  468. package/components/basic/label/label.props.d.ts +1 -0
  469. package/components/basic/label/package.json +20 -0
  470. package/components/basic/label/public_api.d.ts +1 -0
  471. package/components/basic/picture/.npmignore +2 -0
  472. package/components/basic/picture/bundles/index.umd.js +138 -0
  473. package/components/basic/picture/esm2022/index.mjs +5 -0
  474. package/components/basic/picture/esm2022/picture.directive.mjs +93 -0
  475. package/components/basic/picture/esm2022/picture.props.mjs +23 -0
  476. package/components/basic/picture/esm2022/public_api.mjs +2 -0
  477. package/components/basic/picture/fesm2022/index.mjs +121 -0
  478. package/components/basic/picture/fesm2022/index.mjs.map +1 -0
  479. package/components/basic/picture/index.d.ts +5 -0
  480. package/components/basic/picture/package.json +20 -0
  481. package/components/basic/picture/picture.directive.d.ts +19 -0
  482. package/components/basic/picture/picture.props.d.ts +1 -0
  483. package/components/basic/picture/public_api.d.ts +1 -0
  484. package/components/basic/progress/progress-bar/.npmignore +2 -0
  485. package/components/basic/progress/progress-bar/bundles/index.umd.js +170 -0
  486. package/components/basic/progress/progress-bar/esm2022/index.mjs +5 -0
  487. package/components/basic/progress/progress-bar/esm2022/progress-bar.component.mjs +130 -0
  488. package/components/basic/progress/progress-bar/esm2022/progress-bar.props.mjs +19 -0
  489. package/components/basic/progress/progress-bar/esm2022/public_api.mjs +2 -0
  490. package/components/basic/progress/progress-bar/fesm2022/index.mjs +154 -0
  491. package/components/basic/progress/progress-bar/fesm2022/index.mjs.map +1 -0
  492. package/components/basic/progress/progress-bar/index.d.ts +5 -0
  493. package/components/basic/progress/progress-bar/package.json +20 -0
  494. package/components/basic/progress/progress-bar/progress-bar.component.d.ts +43 -0
  495. package/components/basic/progress/progress-bar/progress-bar.props.d.ts +1 -0
  496. package/components/basic/progress/progress-bar/public_api.d.ts +1 -0
  497. package/components/basic/progress/progress-circle/.npmignore +2 -0
  498. package/components/basic/progress/progress-circle/bundles/index.umd.js +171 -0
  499. package/components/basic/progress/progress-circle/esm2022/index.mjs +5 -0
  500. package/components/basic/progress/progress-circle/esm2022/progress-circle.component.mjs +130 -0
  501. package/components/basic/progress/progress-circle/esm2022/progress-circle.props.mjs +21 -0
  502. package/components/basic/progress/progress-circle/esm2022/public_api.mjs +2 -0
  503. package/components/basic/progress/progress-circle/fesm2022/index.mjs +155 -0
  504. package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -0
  505. package/components/basic/progress/progress-circle/index.d.ts +5 -0
  506. package/components/basic/progress/progress-circle/package.json +20 -0
  507. package/components/basic/progress/progress-circle/progress-circle.component.d.ts +40 -0
  508. package/components/basic/progress/progress-circle/progress-circle.props.d.ts +1 -0
  509. package/components/basic/progress/progress-circle/public_api.d.ts +1 -0
  510. package/components/basic/progress/progress-utils/.npmignore +2 -0
  511. package/components/basic/progress/progress-utils/bundles/index.umd.js +35 -0
  512. package/components/basic/progress/progress-utils/esm2022/index.mjs +5 -0
  513. package/components/basic/progress/progress-utils/esm2022/progress-utils.mjs +25 -0
  514. package/components/basic/progress/progress-utils/esm2022/public_api.mjs +2 -0
  515. package/components/basic/progress/progress-utils/fesm2022/index.mjs +32 -0
  516. package/components/basic/progress/progress-utils/fesm2022/index.mjs.map +1 -0
  517. package/components/basic/progress/progress-utils/index.d.ts +5 -0
  518. package/components/basic/progress/progress-utils/package.json +20 -0
  519. package/components/basic/progress/progress-utils/progress-utils.d.ts +3 -0
  520. package/components/basic/progress/progress-utils/public_api.d.ts +1 -0
  521. package/components/basic/rich-text-editor/.npmignore +2 -0
  522. package/components/basic/rich-text-editor/bundles/index.umd.js +236 -0
  523. package/components/basic/rich-text-editor/esm2022/index.mjs +5 -0
  524. package/components/basic/rich-text-editor/esm2022/public_api.mjs +2 -0
  525. package/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +197 -0
  526. package/components/basic/rich-text-editor/esm2022/rich-text-editor.props.mjs +21 -0
  527. package/components/basic/rich-text-editor/fesm2022/index.mjs +222 -0
  528. package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -0
  529. package/components/basic/rich-text-editor/index.d.ts +5 -0
  530. package/components/basic/rich-text-editor/package.json +20 -0
  531. package/components/basic/rich-text-editor/public_api.d.ts +1 -0
  532. package/components/basic/rich-text-editor/rich-text-editor.component.d.ts +55 -0
  533. package/components/basic/rich-text-editor/rich-text-editor.props.d.ts +2 -0
  534. package/components/basic/search/.npmignore +2 -0
  535. package/components/basic/search/bundles/index.umd.js +1091 -0
  536. package/components/basic/search/data-provider/data-provider.d.ts +42 -0
  537. package/components/basic/search/data-provider/local-data-provider.d.ts +5 -0
  538. package/components/basic/search/data-provider/remote-data-provider.d.ts +10 -0
  539. package/components/basic/search/esm2022/data-provider/data-provider.mjs +34 -0
  540. package/components/basic/search/esm2022/data-provider/local-data-provider.mjs +77 -0
  541. package/components/basic/search/esm2022/data-provider/remote-data-provider.mjs +124 -0
  542. package/components/basic/search/esm2022/index.mjs +5 -0
  543. package/components/basic/search/esm2022/public_api.mjs +3 -0
  544. package/components/basic/search/esm2022/scrollable.directive.mjs +44 -0
  545. package/components/basic/search/esm2022/search.component.mjs +754 -0
  546. package/components/basic/search/esm2022/search.props.mjs +55 -0
  547. package/components/basic/search/fesm2022/index.mjs +1080 -0
  548. package/components/basic/search/fesm2022/index.mjs.map +1 -0
  549. package/components/basic/search/index.d.ts +5 -0
  550. package/components/basic/search/package.json +20 -0
  551. package/components/basic/search/public_api.d.ts +2 -0
  552. package/components/basic/search/scrollable.directive.d.ts +14 -0
  553. package/components/basic/search/search.component.d.ts +109 -0
  554. package/components/basic/search/search.props.d.ts +2 -0
  555. package/components/basic/spinner/.npmignore +2 -0
  556. package/components/basic/spinner/bundles/index.umd.js +126 -0
  557. package/components/basic/spinner/esm2022/index.mjs +5 -0
  558. package/components/basic/spinner/esm2022/public_api.mjs +2 -0
  559. package/components/basic/spinner/esm2022/spinner.component.mjs +87 -0
  560. package/components/basic/spinner/esm2022/spinner.props.mjs +20 -0
  561. package/components/basic/spinner/fesm2022/index.mjs +111 -0
  562. package/components/basic/spinner/fesm2022/index.mjs.map +1 -0
  563. package/components/basic/spinner/index.d.ts +5 -0
  564. package/components/basic/spinner/package.json +20 -0
  565. package/components/basic/spinner/public_api.d.ts +1 -0
  566. package/components/basic/spinner/spinner.component.d.ts +27 -0
  567. package/components/basic/spinner/spinner.props.d.ts +1 -0
  568. package/components/basic/tree/.npmignore +2 -0
  569. package/components/basic/tree/bundles/index.umd.js +566 -0
  570. package/components/basic/tree/esm2022/index.mjs +5 -0
  571. package/components/basic/tree/esm2022/public_api.mjs +2 -0
  572. package/components/basic/tree/esm2022/tree-node-template-host.component.mjs +33 -0
  573. package/components/basic/tree/esm2022/tree.component.mjs +494 -0
  574. package/components/basic/tree/esm2022/tree.props.mjs +22 -0
  575. package/components/basic/tree/fesm2022/index.mjs +550 -0
  576. package/components/basic/tree/fesm2022/index.mjs.map +1 -0
  577. package/components/basic/tree/index.d.ts +5 -0
  578. package/components/basic/tree/package.json +20 -0
  579. package/components/basic/tree/public_api.d.ts +1 -0
  580. package/components/basic/tree/tree-node-template-host.component.d.ts +7 -0
  581. package/components/basic/tree/tree.component.d.ts +66 -0
  582. package/components/basic/tree/tree.props.d.ts +1 -0
  583. package/components/basic/video/.npmignore +2 -0
  584. package/components/basic/video/bundles/index.umd.js +116 -0
  585. package/components/basic/video/esm2022/index.mjs +5 -0
  586. package/components/basic/video/esm2022/public_api.mjs +2 -0
  587. package/components/basic/video/esm2022/video.component.mjs +70 -0
  588. package/components/basic/video/esm2022/video.props.mjs +24 -0
  589. package/components/basic/video/fesm2022/index.mjs +99 -0
  590. package/components/basic/video/fesm2022/index.mjs.map +1 -0
  591. package/components/basic/video/index.d.ts +5 -0
  592. package/components/basic/video/package.json +20 -0
  593. package/components/basic/video/public_api.d.ts +1 -0
  594. package/components/basic/video/video.component.d.ts +27 -0
  595. package/components/basic/video/video.props.d.ts +1 -0
  596. package/components/chart/.npmignore +2 -0
  597. package/components/chart/bundles/index.umd.js +1747 -0
  598. package/components/chart/chart.component.d.ts +99 -0
  599. package/components/chart/chart.props.d.ts +1 -0
  600. package/components/chart/chart.utils.d.ts +40 -0
  601. package/components/chart/esm2022/chart.component.mjs +982 -0
  602. package/components/chart/esm2022/chart.props.mjs +67 -0
  603. package/components/chart/esm2022/chart.utils.mjs +723 -0
  604. package/components/chart/esm2022/index.mjs +5 -0
  605. package/components/chart/esm2022/public_api.mjs +2 -0
  606. package/components/chart/fesm2022/index.mjs +1774 -0
  607. package/components/chart/fesm2022/index.mjs.map +1 -0
  608. package/components/chart/index.d.ts +5 -0
  609. package/components/chart/package.json +20 -0
  610. package/components/chart/public_api.d.ts +1 -0
  611. package/components/containers/accordion/.npmignore +2 -0
  612. package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +50 -0
  613. package/components/containers/accordion/accordion-pane/accordion-pane.props.d.ts +1 -0
  614. package/components/containers/accordion/accordion.directive.d.ts +66 -0
  615. package/components/containers/accordion/accordion.props.d.ts +1 -0
  616. package/components/containers/accordion/bundles/index.umd.js +500 -0
  617. package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +145 -0
  618. package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.props.mjs +22 -0
  619. package/components/containers/accordion/esm2022/accordion.directive.mjs +309 -0
  620. package/components/containers/accordion/esm2022/accordion.props.mjs +16 -0
  621. package/components/containers/accordion/esm2022/index.mjs +5 -0
  622. package/components/containers/accordion/esm2022/public_api.mjs +3 -0
  623. package/components/containers/accordion/fesm2022/index.mjs +486 -0
  624. package/components/containers/accordion/fesm2022/index.mjs.map +1 -0
  625. package/components/containers/accordion/index.d.ts +5 -0
  626. package/components/containers/accordion/package.json +20 -0
  627. package/components/containers/accordion/public_api.d.ts +2 -0
  628. package/components/containers/layout-grid/.npmignore +2 -0
  629. package/components/containers/layout-grid/bundles/index.umd.js +172 -0
  630. package/components/containers/layout-grid/esm2022/index.mjs +5 -0
  631. package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +57 -0
  632. package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.props.mjs +11 -0
  633. package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +36 -0
  634. package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.props.mjs +9 -0
  635. package/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +36 -0
  636. package/components/containers/layout-grid/esm2022/layout-grid.props.mjs +9 -0
  637. package/components/containers/layout-grid/esm2022/public_api.mjs +4 -0
  638. package/components/containers/layout-grid/fesm2022/index.mjs +153 -0
  639. package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -0
  640. package/components/containers/layout-grid/index.d.ts +5 -0
  641. package/components/containers/layout-grid/layout-grid-column/layout-grid-column.directive.d.ts +12 -0
  642. package/components/containers/layout-grid/layout-grid-column/layout-grid-column.props.d.ts +1 -0
  643. package/components/containers/layout-grid/layout-grid-row/layout-grid-row.directive.d.ts +9 -0
  644. package/components/containers/layout-grid/layout-grid-row/layout-grid-row.props.d.ts +1 -0
  645. package/components/containers/layout-grid/layout-grid.directive.d.ts +9 -0
  646. package/components/containers/layout-grid/layout-grid.props.d.ts +1 -0
  647. package/components/containers/layout-grid/package.json +20 -0
  648. package/components/containers/layout-grid/public_api.d.ts +3 -0
  649. package/components/containers/linear-layout/.npmignore +2 -0
  650. package/components/containers/linear-layout/bundles/index.umd.js +186 -0
  651. package/components/containers/linear-layout/esm2022/index.mjs +5 -0
  652. package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +44 -0
  653. package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.props.mjs +10 -0
  654. package/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +100 -0
  655. package/components/containers/linear-layout/esm2022/linear-layout.props.mjs +13 -0
  656. package/components/containers/linear-layout/esm2022/public_api.mjs +3 -0
  657. package/components/containers/linear-layout/fesm2022/index.mjs +167 -0
  658. package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -0
  659. package/components/containers/linear-layout/index.d.ts +5 -0
  660. package/components/containers/linear-layout/linear-layout-item/linear-layout-item.directive.d.ts +10 -0
  661. package/components/containers/linear-layout/linear-layout-item/linear-layout-item.props.d.ts +1 -0
  662. package/components/containers/linear-layout/linear-layout.directive.d.ts +16 -0
  663. package/components/containers/linear-layout/linear-layout.props.d.ts +1 -0
  664. package/components/containers/linear-layout/package.json +20 -0
  665. package/components/containers/linear-layout/public_api.d.ts +2 -0
  666. package/components/containers/panel/.npmignore +2 -0
  667. package/components/containers/panel/bundles/index.umd.js +223 -0
  668. package/components/containers/panel/esm2022/index.mjs +5 -0
  669. package/components/containers/panel/esm2022/panel.component.mjs +168 -0
  670. package/components/containers/panel/esm2022/panel.props.mjs +38 -0
  671. package/components/containers/panel/esm2022/public_api.mjs +2 -0
  672. package/components/containers/panel/fesm2022/index.mjs +210 -0
  673. package/components/containers/panel/fesm2022/index.mjs.map +1 -0
  674. package/components/containers/panel/index.d.ts +5 -0
  675. package/components/containers/panel/package.json +20 -0
  676. package/components/containers/panel/panel.component.d.ts +43 -0
  677. package/components/containers/panel/panel.props.d.ts +1 -0
  678. package/components/containers/panel/public_api.d.ts +1 -0
  679. package/components/containers/tabs/.npmignore +2 -0
  680. package/components/containers/tabs/bundles/index.umd.js +788 -0
  681. package/components/containers/tabs/esm2022/index.mjs +5 -0
  682. package/components/containers/tabs/esm2022/public_api.mjs +3 -0
  683. package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +179 -0
  684. package/components/containers/tabs/esm2022/tab-pane/tab-pane.props.mjs +22 -0
  685. package/components/containers/tabs/esm2022/tabs.animator.mjs +83 -0
  686. package/components/containers/tabs/esm2022/tabs.component.mjs +478 -0
  687. package/components/containers/tabs/esm2022/tabs.props.mjs +20 -0
  688. package/components/containers/tabs/fesm2022/index.mjs +775 -0
  689. package/components/containers/tabs/fesm2022/index.mjs.map +1 -0
  690. package/components/containers/tabs/index.d.ts +5 -0
  691. package/components/containers/tabs/package.json +20 -0
  692. package/components/containers/tabs/public_api.d.ts +2 -0
  693. package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +41 -0
  694. package/components/containers/tabs/tab-pane/tab-pane.props.d.ts +1 -0
  695. package/components/containers/tabs/tabs.animator.d.ts +30 -0
  696. package/components/containers/tabs/tabs.component.d.ts +87 -0
  697. package/components/containers/tabs/tabs.props.d.ts +1 -0
  698. package/components/containers/tile/.npmignore +2 -0
  699. package/components/containers/tile/bundles/index.umd.js +68 -0
  700. package/components/containers/tile/esm2022/index.mjs +5 -0
  701. package/components/containers/tile/esm2022/public_api.mjs +2 -0
  702. package/components/containers/tile/esm2022/tile.directive.mjs +33 -0
  703. package/components/containers/tile/esm2022/tile.props.mjs +12 -0
  704. package/components/containers/tile/fesm2022/index.mjs +50 -0
  705. package/components/containers/tile/fesm2022/index.mjs.map +1 -0
  706. package/components/containers/tile/index.d.ts +5 -0
  707. package/components/containers/tile/package.json +20 -0
  708. package/components/containers/tile/public_api.d.ts +1 -0
  709. package/components/containers/tile/tile.directive.d.ts +9 -0
  710. package/components/containers/tile/tile.props.d.ts +1 -0
  711. package/components/containers/wizard/.npmignore +2 -0
  712. package/components/containers/wizard/bundles/index.umd.js +1074 -0
  713. package/components/containers/wizard/esm2022/index.mjs +5 -0
  714. package/components/containers/wizard/esm2022/public_api.mjs +4 -0
  715. package/components/containers/wizard/esm2022/wizard-action/wizard-action.directive.mjs +35 -0
  716. package/components/containers/wizard/esm2022/wizard-action/wizard-action.props.mjs +9 -0
  717. package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +182 -0
  718. package/components/containers/wizard/esm2022/wizard-step/wizard-step.props.mjs +17 -0
  719. package/components/containers/wizard/esm2022/wizard.component.mjs +801 -0
  720. package/components/containers/wizard/esm2022/wizard.props.mjs +22 -0
  721. package/components/containers/wizard/fesm2022/index.mjs +1058 -0
  722. package/components/containers/wizard/fesm2022/index.mjs.map +1 -0
  723. package/components/containers/wizard/index.d.ts +5 -0
  724. package/components/containers/wizard/package.json +20 -0
  725. package/components/containers/wizard/public_api.d.ts +3 -0
  726. package/components/containers/wizard/wizard-action/wizard-action.directive.d.ts +9 -0
  727. package/components/containers/wizard/wizard-action/wizard-action.props.d.ts +1 -0
  728. package/components/containers/wizard/wizard-step/wizard-step.component.d.ts +59 -0
  729. package/components/containers/wizard/wizard-step/wizard-step.props.d.ts +1 -0
  730. package/components/containers/wizard/wizard.component.d.ts +192 -0
  731. package/components/containers/wizard/wizard.props.d.ts +1 -0
  732. package/components/data/card/.npmignore +2 -0
  733. package/components/data/card/bundles/index.umd.js +237 -0
  734. package/components/data/card/card-actions/card-actions.directive.d.ts +9 -0
  735. package/components/data/card/card-actions/card-actions.props.d.ts +1 -0
  736. package/components/data/card/card-content/card-content.component.d.ts +12 -0
  737. package/components/data/card/card-content/card-content.props.d.ts +1 -0
  738. package/components/data/card/card-footer/card-footer.directive.d.ts +9 -0
  739. package/components/data/card/card-footer/card-footer.props.d.ts +1 -0
  740. package/components/data/card/card.component.d.ts +23 -0
  741. package/components/data/card/card.props.d.ts +1 -0
  742. package/components/data/card/esm2022/card-actions/card-actions.directive.mjs +31 -0
  743. package/components/data/card/esm2022/card-actions/card-actions.props.mjs +9 -0
  744. package/components/data/card/esm2022/card-content/card-content.component.mjs +43 -0
  745. package/components/data/card/esm2022/card-content/card-content.props.mjs +10 -0
  746. package/components/data/card/esm2022/card-footer/card-footer.directive.mjs +31 -0
  747. package/components/data/card/esm2022/card-footer/card-footer.props.mjs +9 -0
  748. package/components/data/card/esm2022/card.component.mjs +75 -0
  749. package/components/data/card/esm2022/card.props.mjs +24 -0
  750. package/components/data/card/esm2022/index.mjs +5 -0
  751. package/components/data/card/esm2022/public_api.mjs +5 -0
  752. package/components/data/card/fesm2022/index.mjs +220 -0
  753. package/components/data/card/fesm2022/index.mjs.map +1 -0
  754. package/components/data/card/index.d.ts +5 -0
  755. package/components/data/card/package.json +20 -0
  756. package/components/data/card/public_api.d.ts +4 -0
  757. package/components/data/form/.npmignore +2 -0
  758. package/components/data/form/bundles/index.umd.js +3308 -0
  759. package/components/data/form/esm2022/form-action/form-action.directive.mjs +86 -0
  760. package/components/data/form/esm2022/form-action/form-action.props.mjs +25 -0
  761. package/components/data/form/esm2022/form-field/form-field.directive.mjs +611 -0
  762. package/components/data/form/esm2022/form-field/form-field.props.mjs +52 -0
  763. package/components/data/form/esm2022/form-widget.directive.mjs +83 -0
  764. package/components/data/form/esm2022/form.component.mjs +1247 -0
  765. package/components/data/form/esm2022/form.props.mjs +64 -0
  766. package/components/data/form/esm2022/index.mjs +5 -0
  767. package/components/data/form/esm2022/live-actions/dependson.directive.mjs +151 -0
  768. package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +173 -0
  769. package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +356 -0
  770. package/components/data/form/esm2022/live-form/live-form.directive.mjs +502 -0
  771. package/components/data/form/esm2022/public_api.mjs +9 -0
  772. package/components/data/form/fesm2022/index.mjs +3296 -0
  773. package/components/data/form/fesm2022/index.mjs.map +1 -0
  774. package/components/data/form/form-action/form-action.directive.d.ts +35 -0
  775. package/components/data/form/form-action/form-action.props.d.ts +1 -0
  776. package/components/data/form/form-field/form-field.directive.d.ts +116 -0
  777. package/components/data/form/form-field/form-field.props.d.ts +1 -0
  778. package/components/data/form/form-widget.directive.d.ts +19 -0
  779. package/components/data/form/form.component.d.ts +211 -0
  780. package/components/data/form/form.props.d.ts +3 -0
  781. package/components/data/form/index.d.ts +5 -0
  782. package/components/data/form/live-actions/dependson.directive.d.ts +27 -0
  783. package/components/data/form/live-actions/live-actions.directive.d.ts +24 -0
  784. package/components/data/form/live-filter/live-filter.directive.d.ts +24 -0
  785. package/components/data/form/live-form/live-form.directive.d.ts +44 -0
  786. package/components/data/form/package.json +20 -0
  787. package/components/data/form/public_api.d.ts +8 -0
  788. package/components/data/list/.npmignore +2 -0
  789. package/components/data/list/bundles/index.umd.js +1610 -0
  790. package/components/data/list/esm2022/index.mjs +5 -0
  791. package/components/data/list/esm2022/list-item.directive.mjs +260 -0
  792. package/components/data/list/esm2022/list-item.props.mjs +7 -0
  793. package/components/data/list/esm2022/list.animator.mjs +233 -0
  794. package/components/data/list/esm2022/list.component.mjs +1294 -0
  795. package/components/data/list/esm2022/list.props.mjs +48 -0
  796. package/components/data/list/esm2022/public_api.mjs +3 -0
  797. package/components/data/list/fesm2022/index.mjs +1602 -0
  798. package/components/data/list/fesm2022/index.mjs.map +1 -0
  799. package/components/data/list/index.d.ts +5 -0
  800. package/components/data/list/list-item.directive.d.ts +53 -0
  801. package/components/data/list/list-item.props.d.ts +1 -0
  802. package/components/data/list/list.animator.d.ts +32 -0
  803. package/components/data/list/list.component.d.ts +226 -0
  804. package/components/data/list/list.props.d.ts +1 -0
  805. package/components/data/list/package.json +20 -0
  806. package/components/data/list/public_api.d.ts +2 -0
  807. package/components/data/live-table/.npmignore +2 -0
  808. package/components/data/live-table/bundles/index.umd.js +273 -0
  809. package/components/data/live-table/esm2022/index.mjs +5 -0
  810. package/components/data/live-table/esm2022/live-table.component.mjs +243 -0
  811. package/components/data/live-table/esm2022/live-table.props.mjs +10 -0
  812. package/components/data/live-table/esm2022/public_api.mjs +2 -0
  813. package/components/data/live-table/fesm2022/index.mjs +258 -0
  814. package/components/data/live-table/fesm2022/index.mjs.map +1 -0
  815. package/components/data/live-table/index.d.ts +5 -0
  816. package/components/data/live-table/live-table.component.d.ts +36 -0
  817. package/components/data/live-table/live-table.props.d.ts +1 -0
  818. package/components/data/live-table/package.json +20 -0
  819. package/components/data/live-table/public_api.d.ts +1 -0
  820. package/components/data/pagination/.npmignore +2 -0
  821. package/components/data/pagination/bundles/index.umd.js +850 -0
  822. package/components/data/pagination/esm2022/index.mjs +5 -0
  823. package/components/data/pagination/esm2022/pagination.component.mjs +817 -0
  824. package/components/data/pagination/esm2022/pagination.props.mjs +23 -0
  825. package/components/data/pagination/esm2022/public_api.mjs +2 -0
  826. package/components/data/pagination/fesm2022/index.mjs +845 -0
  827. package/components/data/pagination/fesm2022/index.mjs.map +1 -0
  828. package/components/data/pagination/index.d.ts +5 -0
  829. package/components/data/pagination/package.json +20 -0
  830. package/components/data/pagination/pagination.component.d.ts +101 -0
  831. package/components/data/pagination/pagination.props.d.ts +1 -0
  832. package/components/data/pagination/public_api.d.ts +1 -0
  833. package/components/data/table/.npmignore +2 -0
  834. package/components/data/table/bundles/index.umd.js +4848 -0
  835. package/components/data/table/esm2022/index.mjs +5 -0
  836. package/components/data/table/esm2022/public_api.mjs +9 -0
  837. package/components/data/table/esm2022/table-action/table-action.directive.mjs +83 -0
  838. package/components/data/table/esm2022/table-action/table-action.props.mjs +25 -0
  839. package/components/data/table/esm2022/table-column/table-column.directive.mjs +744 -0
  840. package/components/data/table/esm2022/table-column/table-column.props.mjs +93 -0
  841. package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +80 -0
  842. package/components/data/table/esm2022/table-column-group/table-column-group.props.mjs +11 -0
  843. package/components/data/table/esm2022/table-cud.directive.mjs +484 -0
  844. package/components/data/table/esm2022/table-filter.directive.mjs +706 -0
  845. package/components/data/table/esm2022/table-row/table-row.directive.mjs +68 -0
  846. package/components/data/table/esm2022/table-row/table-row.props.mjs +16 -0
  847. package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +81 -0
  848. package/components/data/table/esm2022/table-row-action/table-row-action.props.mjs +20 -0
  849. package/components/data/table/esm2022/table.component.mjs +2406 -0
  850. package/components/data/table/esm2022/table.props.mjs +70 -0
  851. package/components/data/table/fesm2022/index.mjs +4835 -0
  852. package/components/data/table/fesm2022/index.mjs.map +1 -0
  853. package/components/data/table/index.d.ts +5 -0
  854. package/components/data/table/package.json +20 -0
  855. package/components/data/table/public_api.d.ts +8 -0
  856. package/components/data/table/table-action/table-action.directive.d.ts +35 -0
  857. package/components/data/table/table-action/table-action.props.d.ts +1 -0
  858. package/components/data/table/table-column/table-column.directive.d.ts +152 -0
  859. package/components/data/table/table-column/table-column.props.d.ts +1 -0
  860. package/components/data/table/table-column-group/table-column-group.directive.d.ts +23 -0
  861. package/components/data/table/table-column-group/table-column-group.props.d.ts +1 -0
  862. package/components/data/table/table-cud.directive.d.ts +34 -0
  863. package/components/data/table/table-filter.directive.d.ts +35 -0
  864. package/components/data/table/table-row/table-row.directive.d.ts +25 -0
  865. package/components/data/table/table-row/table-row.props.d.ts +1 -0
  866. package/components/data/table/table-row-action/table-row-action.directive.d.ts +31 -0
  867. package/components/data/table/table-row-action/table-row-action.props.d.ts +1 -0
  868. package/components/data/table/table.component.d.ts +419 -0
  869. package/components/data/table/table.props.d.ts +1 -0
  870. package/components/dialogs/alert-dialog/.npmignore +2 -0
  871. package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +23 -0
  872. package/components/dialogs/alert-dialog/alert-dialog.props.d.ts +1 -0
  873. package/components/dialogs/alert-dialog/bundles/index.umd.js +126 -0
  874. package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +87 -0
  875. package/components/dialogs/alert-dialog/esm2022/alert-dialog.props.mjs +22 -0
  876. package/components/dialogs/alert-dialog/esm2022/index.mjs +5 -0
  877. package/components/dialogs/alert-dialog/esm2022/public_api.mjs +2 -0
  878. package/components/dialogs/alert-dialog/fesm2022/index.mjs +114 -0
  879. package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -0
  880. package/components/dialogs/alert-dialog/index.d.ts +5 -0
  881. package/components/dialogs/alert-dialog/package.json +20 -0
  882. package/components/dialogs/alert-dialog/public_api.d.ts +1 -0
  883. package/components/dialogs/confirm-dialog/.npmignore +2 -0
  884. package/components/dialogs/confirm-dialog/bundles/index.umd.js +129 -0
  885. package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +26 -0
  886. package/components/dialogs/confirm-dialog/confirm-dialog.props.d.ts +1 -0
  887. package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +90 -0
  888. package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.props.mjs +22 -0
  889. package/components/dialogs/confirm-dialog/esm2022/index.mjs +5 -0
  890. package/components/dialogs/confirm-dialog/esm2022/public_api.mjs +2 -0
  891. package/components/dialogs/confirm-dialog/fesm2022/index.mjs +117 -0
  892. package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -0
  893. package/components/dialogs/confirm-dialog/index.d.ts +5 -0
  894. package/components/dialogs/confirm-dialog/package.json +20 -0
  895. package/components/dialogs/confirm-dialog/public_api.d.ts +1 -0
  896. package/components/dialogs/default/.npmignore +2 -0
  897. package/components/dialogs/default/base-dialog.d.ts +45 -0
  898. package/components/dialogs/default/bundles/index.umd.js +379 -0
  899. package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +13 -0
  900. package/components/dialogs/default/dialog-footer/dialog-footer.directive.d.ts +9 -0
  901. package/components/dialogs/default/dialog-footer/dialog-footer.props.d.ts +1 -0
  902. package/components/dialogs/default/dialog-header/dialog-header.component.d.ts +25 -0
  903. package/components/dialogs/default/esm2022/base-dialog.mjs +184 -0
  904. package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +86 -0
  905. package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +34 -0
  906. package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.props.mjs +9 -0
  907. package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +62 -0
  908. package/components/dialogs/default/esm2022/index.mjs +5 -0
  909. package/components/dialogs/default/esm2022/public_api.mjs +5 -0
  910. package/components/dialogs/default/fesm2022/index.mjs +364 -0
  911. package/components/dialogs/default/fesm2022/index.mjs.map +1 -0
  912. package/components/dialogs/default/index.d.ts +5 -0
  913. package/components/dialogs/default/package.json +20 -0
  914. package/components/dialogs/default/public_api.d.ts +4 -0
  915. package/components/dialogs/design-dialog/.npmignore +2 -0
  916. package/components/dialogs/design-dialog/bundles/index.umd.js +149 -0
  917. package/components/dialogs/design-dialog/dialog.component.d.ts +17 -0
  918. package/components/dialogs/design-dialog/dialog.props.d.ts +1 -0
  919. package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +108 -0
  920. package/components/dialogs/design-dialog/esm2022/dialog.props.mjs +21 -0
  921. package/components/dialogs/design-dialog/esm2022/index.mjs +5 -0
  922. package/components/dialogs/design-dialog/esm2022/public_api.mjs +2 -0
  923. package/components/dialogs/design-dialog/fesm2022/index.mjs +134 -0
  924. package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -0
  925. package/components/dialogs/design-dialog/index.d.ts +5 -0
  926. package/components/dialogs/design-dialog/package.json +20 -0
  927. package/components/dialogs/design-dialog/public_api.d.ts +1 -0
  928. package/components/dialogs/iframe-dialog/.npmignore +2 -0
  929. package/components/dialogs/iframe-dialog/bundles/index.umd.js +119 -0
  930. package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +78 -0
  931. package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.props.mjs +25 -0
  932. package/components/dialogs/iframe-dialog/esm2022/index.mjs +5 -0
  933. package/components/dialogs/iframe-dialog/esm2022/public_api.mjs +2 -0
  934. package/components/dialogs/iframe-dialog/fesm2022/index.mjs +108 -0
  935. package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -0
  936. package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +19 -0
  937. package/components/dialogs/iframe-dialog/iframe-dialog.props.d.ts +1 -0
  938. package/components/dialogs/iframe-dialog/index.d.ts +5 -0
  939. package/components/dialogs/iframe-dialog/package.json +20 -0
  940. package/components/dialogs/iframe-dialog/public_api.d.ts +1 -0
  941. package/components/dialogs/login-dialog/.npmignore +2 -0
  942. package/components/dialogs/login-dialog/bundles/index.umd.js +114 -0
  943. package/components/dialogs/login-dialog/esm2022/index.mjs +5 -0
  944. package/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +91 -0
  945. package/components/dialogs/login-dialog/esm2022/public_api.mjs +2 -0
  946. package/components/dialogs/login-dialog/fesm2022/index.mjs +98 -0
  947. package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -0
  948. package/components/dialogs/login-dialog/index.d.ts +5 -0
  949. package/components/dialogs/login-dialog/login-dialog.directive.d.ts +23 -0
  950. package/components/dialogs/login-dialog/package.json +20 -0
  951. package/components/dialogs/login-dialog/public_api.d.ts +1 -0
  952. package/components/dialogs/partial-dialog/.npmignore +2 -0
  953. package/components/dialogs/partial-dialog/bundles/index.umd.js +157 -0
  954. package/components/dialogs/partial-dialog/esm2022/index.mjs +5 -0
  955. package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +119 -0
  956. package/components/dialogs/partial-dialog/esm2022/partial-dialog.props.mjs +22 -0
  957. package/components/dialogs/partial-dialog/esm2022/public_api.mjs +2 -0
  958. package/components/dialogs/partial-dialog/fesm2022/index.mjs +146 -0
  959. package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -0
  960. package/components/dialogs/partial-dialog/index.d.ts +5 -0
  961. package/components/dialogs/partial-dialog/package.json +20 -0
  962. package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +29 -0
  963. package/components/dialogs/partial-dialog/partial-dialog.props.d.ts +1 -0
  964. package/components/dialogs/partial-dialog/public_api.d.ts +1 -0
  965. package/components/input/base-form/.npmignore +2 -0
  966. package/components/input/base-form/base-form.component.d.ts +26 -0
  967. package/components/input/base-form/bundles/index.umd.js +147 -0
  968. package/components/input/base-form/esm2022/base-form.component.mjs +124 -0
  969. package/components/input/base-form/esm2022/index.mjs +5 -0
  970. package/components/input/base-form/esm2022/public_api.mjs +2 -0
  971. package/components/input/base-form/fesm2022/index.mjs +131 -0
  972. package/components/input/base-form/fesm2022/index.mjs.map +1 -0
  973. package/components/input/base-form/index.d.ts +5 -0
  974. package/components/input/base-form/package.json +20 -0
  975. package/components/input/base-form/public_api.d.ts +1 -0
  976. package/components/input/base-form-custom/.npmignore +2 -0
  977. package/components/input/base-form-custom/base-form-custom.component.d.ts +23 -0
  978. package/components/input/base-form-custom/bundles/index.umd.js +129 -0
  979. package/components/input/base-form-custom/esm2022/base-form-custom.component.mjs +105 -0
  980. package/components/input/base-form-custom/esm2022/index.mjs +5 -0
  981. package/components/input/base-form-custom/esm2022/public_api.mjs +2 -0
  982. package/components/input/base-form-custom/fesm2022/index.mjs +112 -0
  983. package/components/input/base-form-custom/fesm2022/index.mjs.map +1 -0
  984. package/components/input/base-form-custom/index.d.ts +5 -0
  985. package/components/input/base-form-custom/package.json +20 -0
  986. package/components/input/base-form-custom/public_api.d.ts +1 -0
  987. package/components/input/button/.npmignore +2 -0
  988. package/components/input/button/bundles/index.umd.js +98 -0
  989. package/components/input/button/button.component.d.ts +19 -0
  990. package/components/input/button/button.props.d.ts +1 -0
  991. package/components/input/button/esm2022/button.component.mjs +50 -0
  992. package/components/input/button/esm2022/button.props.mjs +26 -0
  993. package/components/input/button/esm2022/index.mjs +5 -0
  994. package/components/input/button/esm2022/public_api.mjs +2 -0
  995. package/components/input/button/fesm2022/index.mjs +81 -0
  996. package/components/input/button/fesm2022/index.mjs.map +1 -0
  997. package/components/input/button/index.d.ts +5 -0
  998. package/components/input/button/package.json +20 -0
  999. package/components/input/button/public_api.d.ts +1 -0
  1000. package/components/input/button-group/.npmignore +2 -0
  1001. package/components/input/button-group/bundles/index.umd.js +80 -0
  1002. package/components/input/button-group/button-group.directive.d.ts +11 -0
  1003. package/components/input/button-group/button-group.props.d.ts +1 -0
  1004. package/components/input/button-group/esm2022/button-group.directive.mjs +47 -0
  1005. package/components/input/button-group/esm2022/button-group.props.mjs +10 -0
  1006. package/components/input/button-group/esm2022/index.mjs +5 -0
  1007. package/components/input/button-group/esm2022/public_api.mjs +2 -0
  1008. package/components/input/button-group/fesm2022/index.mjs +62 -0
  1009. package/components/input/button-group/fesm2022/index.mjs.map +1 -0
  1010. package/components/input/button-group/index.d.ts +5 -0
  1011. package/components/input/button-group/package.json +20 -0
  1012. package/components/input/button-group/public_api.d.ts +1 -0
  1013. package/components/input/calendar/.npmignore +2 -0
  1014. package/components/input/calendar/bundles/index.umd.js +655 -0
  1015. package/components/input/calendar/calendar.component.d.ts +128 -0
  1016. package/components/input/calendar/calendar.props.d.ts +1 -0
  1017. package/components/input/calendar/esm2022/calendar.component.mjs +637 -0
  1018. package/components/input/calendar/esm2022/calendar.props.mjs +23 -0
  1019. package/components/input/calendar/esm2022/index.mjs +5 -0
  1020. package/components/input/calendar/esm2022/public_api.mjs +2 -0
  1021. package/components/input/calendar/fesm2022/index.mjs +665 -0
  1022. package/components/input/calendar/fesm2022/index.mjs.map +1 -0
  1023. package/components/input/calendar/index.d.ts +5 -0
  1024. package/components/input/calendar/package.json +20 -0
  1025. package/components/input/calendar/public_api.d.ts +1 -0
  1026. package/components/input/caption-position/.npmignore +2 -0
  1027. package/components/input/caption-position/bundles/index.umd.js +196 -0
  1028. package/components/input/caption-position/caption-position.directive.d.ts +31 -0
  1029. package/components/input/caption-position/esm2022/caption-position.directive.mjs +172 -0
  1030. package/components/input/caption-position/esm2022/index.mjs +5 -0
  1031. package/components/input/caption-position/esm2022/public_api.mjs +2 -0
  1032. package/components/input/caption-position/fesm2022/index.mjs +178 -0
  1033. package/components/input/caption-position/fesm2022/index.mjs.map +1 -0
  1034. package/components/input/caption-position/index.d.ts +5 -0
  1035. package/components/input/caption-position/package.json +20 -0
  1036. package/components/input/caption-position/public_api.d.ts +1 -0
  1037. package/components/input/checkbox/.npmignore +2 -0
  1038. package/components/input/checkbox/bundles/index.umd.js +206 -0
  1039. package/components/input/checkbox/checkbox.component.d.ts +36 -0
  1040. package/components/input/checkbox/checkbox.props.d.ts +2 -0
  1041. package/components/input/checkbox/esm2022/checkbox.component.mjs +158 -0
  1042. package/components/input/checkbox/esm2022/checkbox.props.mjs +30 -0
  1043. package/components/input/checkbox/esm2022/index.mjs +5 -0
  1044. package/components/input/checkbox/esm2022/public_api.mjs +2 -0
  1045. package/components/input/checkbox/fesm2022/index.mjs +191 -0
  1046. package/components/input/checkbox/fesm2022/index.mjs.map +1 -0
  1047. package/components/input/checkbox/index.d.ts +5 -0
  1048. package/components/input/checkbox/package.json +20 -0
  1049. package/components/input/checkbox/public_api.d.ts +1 -0
  1050. package/components/input/checkboxset/.npmignore +2 -0
  1051. package/components/input/checkboxset/bundles/index.umd.js +178 -0
  1052. package/components/input/checkboxset/checkboxset.component.d.ts +24 -0
  1053. package/components/input/checkboxset/checkboxset.props.d.ts +2 -0
  1054. package/components/input/checkboxset/esm2022/checkboxset.component.mjs +125 -0
  1055. package/components/input/checkboxset/esm2022/checkboxset.props.mjs +36 -0
  1056. package/components/input/checkboxset/esm2022/index.mjs +5 -0
  1057. package/components/input/checkboxset/esm2022/public_api.mjs +2 -0
  1058. package/components/input/checkboxset/fesm2022/index.mjs +165 -0
  1059. package/components/input/checkboxset/fesm2022/index.mjs.map +1 -0
  1060. package/components/input/checkboxset/index.d.ts +5 -0
  1061. package/components/input/checkboxset/package.json +20 -0
  1062. package/components/input/checkboxset/public_api.d.ts +1 -0
  1063. package/components/input/chips/.npmignore +2 -0
  1064. package/components/input/chips/bundles/index.umd.js +741 -0
  1065. package/components/input/chips/chips.component.d.ts +87 -0
  1066. package/components/input/chips/chips.props.d.ts +2 -0
  1067. package/components/input/chips/esm2022/chips.component.mjs +676 -0
  1068. package/components/input/chips/esm2022/chips.props.mjs +49 -0
  1069. package/components/input/chips/esm2022/index.mjs +5 -0
  1070. package/components/input/chips/esm2022/public_api.mjs +2 -0
  1071. package/components/input/chips/fesm2022/index.mjs +729 -0
  1072. package/components/input/chips/fesm2022/index.mjs.map +1 -0
  1073. package/components/input/chips/index.d.ts +5 -0
  1074. package/components/input/chips/package.json +20 -0
  1075. package/components/input/chips/public_api.d.ts +1 -0
  1076. package/components/input/color-picker/.npmignore +2 -0
  1077. package/components/input/color-picker/bundles/index.umd.js +145 -0
  1078. package/components/input/color-picker/color-picker.component.d.ts +33 -0
  1079. package/components/input/color-picker/color-picker.props.d.ts +2 -0
  1080. package/components/input/color-picker/esm2022/color-picker.component.mjs +107 -0
  1081. package/components/input/color-picker/esm2022/color-picker.props.mjs +22 -0
  1082. package/components/input/color-picker/esm2022/index.mjs +5 -0
  1083. package/components/input/color-picker/esm2022/public_api.mjs +2 -0
  1084. package/components/input/color-picker/fesm2022/index.mjs +132 -0
  1085. package/components/input/color-picker/fesm2022/index.mjs.map +1 -0
  1086. package/components/input/color-picker/index.d.ts +5 -0
  1087. package/components/input/color-picker/package.json +20 -0
  1088. package/components/input/color-picker/public_api.d.ts +1 -0
  1089. package/components/input/composite/.npmignore +2 -0
  1090. package/components/input/composite/bundles/index.umd.js +120 -0
  1091. package/components/input/composite/composite.directive.d.ts +24 -0
  1092. package/components/input/composite/composite.props.d.ts +1 -0
  1093. package/components/input/composite/esm2022/composite.directive.mjs +88 -0
  1094. package/components/input/composite/esm2022/composite.props.mjs +10 -0
  1095. package/components/input/composite/esm2022/index.mjs +5 -0
  1096. package/components/input/composite/esm2022/public_api.mjs +2 -0
  1097. package/components/input/composite/fesm2022/index.mjs +103 -0
  1098. package/components/input/composite/fesm2022/index.mjs.map +1 -0
  1099. package/components/input/composite/index.d.ts +5 -0
  1100. package/components/input/composite/package.json +20 -0
  1101. package/components/input/composite/public_api.d.ts +1 -0
  1102. package/components/input/currency/.npmignore +2 -0
  1103. package/components/input/currency/bundles/index.umd.js +112 -0
  1104. package/components/input/currency/currency.component.d.ts +28 -0
  1105. package/components/input/currency/currency.props.d.ts +2 -0
  1106. package/components/input/currency/esm2022/currency.component.mjs +67 -0
  1107. package/components/input/currency/esm2022/currency.props.mjs +27 -0
  1108. package/components/input/currency/esm2022/index.mjs +5 -0
  1109. package/components/input/currency/esm2022/public_api.mjs +2 -0
  1110. package/components/input/currency/fesm2022/index.mjs +97 -0
  1111. package/components/input/currency/fesm2022/index.mjs.map +1 -0
  1112. package/components/input/currency/index.d.ts +5 -0
  1113. package/components/input/currency/package.json +20 -0
  1114. package/components/input/currency/public_api.d.ts +1 -0
  1115. package/components/input/dataset-aware-form/.npmignore +2 -0
  1116. package/components/input/dataset-aware-form/bundles/index.umd.js +352 -0
  1117. package/components/input/dataset-aware-form/dataset-aware-form.component.d.ts +76 -0
  1118. package/components/input/dataset-aware-form/esm2022/dataset-aware-form.component.mjs +331 -0
  1119. package/components/input/dataset-aware-form/esm2022/index.mjs +5 -0
  1120. package/components/input/dataset-aware-form/esm2022/public_api.mjs +2 -0
  1121. package/components/input/dataset-aware-form/fesm2022/index.mjs +338 -0
  1122. package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -0
  1123. package/components/input/dataset-aware-form/index.d.ts +5 -0
  1124. package/components/input/dataset-aware-form/package.json +20 -0
  1125. package/components/input/dataset-aware-form/public_api.d.ts +1 -0
  1126. package/components/input/epoch/base-date-time/.npmignore +2 -0
  1127. package/components/input/epoch/base-date-time/base-date-time.component.d.ts +246 -0
  1128. package/components/input/epoch/base-date-time/bundles/index.umd.js +1093 -0
  1129. package/components/input/epoch/base-date-time/esm2022/base-date-time.component.mjs +1077 -0
  1130. package/components/input/epoch/base-date-time/esm2022/index.mjs +5 -0
  1131. package/components/input/epoch/base-date-time/esm2022/public_api.mjs +2 -0
  1132. package/components/input/epoch/base-date-time/fesm2022/index.mjs +1084 -0
  1133. package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -0
  1134. package/components/input/epoch/base-date-time/index.d.ts +5 -0
  1135. package/components/input/epoch/base-date-time/package.json +20 -0
  1136. package/components/input/epoch/base-date-time/public_api.d.ts +1 -0
  1137. package/components/input/epoch/date/.npmignore +2 -0
  1138. package/components/input/epoch/date/bundles/index.umd.js +515 -0
  1139. package/components/input/epoch/date/date.component.d.ts +61 -0
  1140. package/components/input/epoch/date/date.props.d.ts +2 -0
  1141. package/components/input/epoch/date/esm2022/date.component.mjs +345 -0
  1142. package/components/input/epoch/date/esm2022/date.props.mjs +43 -0
  1143. package/components/input/epoch/date/esm2022/imaskUtil.mjs +114 -0
  1144. package/components/input/epoch/date/esm2022/index.mjs +5 -0
  1145. package/components/input/epoch/date/esm2022/public_api.mjs +2 -0
  1146. package/components/input/epoch/date/fesm2022/index.mjs +505 -0
  1147. package/components/input/epoch/date/fesm2022/index.mjs.map +1 -0
  1148. package/components/input/epoch/date/imaskUtil.d.ts +92 -0
  1149. package/components/input/epoch/date/index.d.ts +5 -0
  1150. package/components/input/epoch/date/package.json +20 -0
  1151. package/components/input/epoch/date/public_api.d.ts +1 -0
  1152. package/components/input/epoch/date-time/.npmignore +2 -0
  1153. package/components/input/epoch/date-time/bundles/index.umd.js +519 -0
  1154. package/components/input/epoch/date-time/date-time.component.d.ts +109 -0
  1155. package/components/input/epoch/date-time/date-time.props.d.ts +2 -0
  1156. package/components/input/epoch/date-time/esm2022/date-time.component.mjs +459 -0
  1157. package/components/input/epoch/date-time/esm2022/date-time.props.mjs +47 -0
  1158. package/components/input/epoch/date-time/esm2022/index.mjs +5 -0
  1159. package/components/input/epoch/date-time/esm2022/public_api.mjs +2 -0
  1160. package/components/input/epoch/date-time/fesm2022/index.mjs +510 -0
  1161. package/components/input/epoch/date-time/fesm2022/index.mjs.map +1 -0
  1162. package/components/input/epoch/date-time/index.d.ts +5 -0
  1163. package/components/input/epoch/date-time/package.json +20 -0
  1164. package/components/input/epoch/date-time/public_api.d.ts +1 -0
  1165. package/components/input/epoch/date-time-picker/.npmignore +2 -0
  1166. package/components/input/epoch/date-time-picker/bundles/index.umd.js +453 -0
  1167. package/components/input/epoch/date-time-picker/date-time-picker.component.d.ts +80 -0
  1168. package/components/input/epoch/date-time-picker/esm2022/date-time-picker.component.mjs +433 -0
  1169. package/components/input/epoch/date-time-picker/esm2022/index.mjs +5 -0
  1170. package/components/input/epoch/date-time-picker/esm2022/public_api.mjs +2 -0
  1171. package/components/input/epoch/date-time-picker/fesm2022/index.mjs +439 -0
  1172. package/components/input/epoch/date-time-picker/fesm2022/index.mjs.map +1 -0
  1173. package/components/input/epoch/date-time-picker/index.d.ts +5 -0
  1174. package/components/input/epoch/date-time-picker/package.json +20 -0
  1175. package/components/input/epoch/date-time-picker/public_api.d.ts +1 -0
  1176. package/components/input/epoch/picker/.npmignore +2 -0
  1177. package/components/input/epoch/picker/bundles/index.umd.js +192 -0
  1178. package/components/input/epoch/picker/esm2022/index.mjs +5 -0
  1179. package/components/input/epoch/picker/esm2022/picker.component.mjs +165 -0
  1180. package/components/input/epoch/picker/esm2022/public_api.mjs +3 -0
  1181. package/components/input/epoch/picker/fesm2022/index.mjs +172 -0
  1182. package/components/input/epoch/picker/fesm2022/index.mjs.map +1 -0
  1183. package/components/input/epoch/picker/index.d.ts +5 -0
  1184. package/components/input/epoch/picker/package.json +20 -0
  1185. package/components/input/epoch/picker/picker.component.d.ts +36 -0
  1186. package/components/input/epoch/picker/public_api.d.ts +2 -0
  1187. package/components/input/epoch/time/.npmignore +2 -0
  1188. package/components/input/epoch/time/bundles/index.umd.js +401 -0
  1189. package/components/input/epoch/time/esm2022/index.mjs +5 -0
  1190. package/components/input/epoch/time/esm2022/public_api.mjs +2 -0
  1191. package/components/input/epoch/time/esm2022/time.component.mjs +352 -0
  1192. package/components/input/epoch/time/esm2022/time.props.mjs +35 -0
  1193. package/components/input/epoch/time/fesm2022/index.mjs +391 -0
  1194. package/components/input/epoch/time/fesm2022/index.mjs.map +1 -0
  1195. package/components/input/epoch/time/index.d.ts +5 -0
  1196. package/components/input/epoch/time/package.json +20 -0
  1197. package/components/input/epoch/time/public_api.d.ts +1 -0
  1198. package/components/input/epoch/time/time.component.d.ts +105 -0
  1199. package/components/input/epoch/time/time.props.d.ts +2 -0
  1200. package/components/input/file-upload/.npmignore +2 -0
  1201. package/components/input/file-upload/bundles/index.umd.js +483 -0
  1202. package/components/input/file-upload/esm2022/file-upload.component.mjs +426 -0
  1203. package/components/input/file-upload/esm2022/file-upload.props.mjs +39 -0
  1204. package/components/input/file-upload/esm2022/index.mjs +5 -0
  1205. package/components/input/file-upload/esm2022/public_api.mjs +2 -0
  1206. package/components/input/file-upload/fesm2022/index.mjs +469 -0
  1207. package/components/input/file-upload/fesm2022/index.mjs.map +1 -0
  1208. package/components/input/file-upload/file-upload.component.d.ts +103 -0
  1209. package/components/input/file-upload/file-upload.props.d.ts +1 -0
  1210. package/components/input/file-upload/index.d.ts +5 -0
  1211. package/components/input/file-upload/package.json +20 -0
  1212. package/components/input/file-upload/public_api.d.ts +1 -0
  1213. package/components/input/number/.npmignore +2 -0
  1214. package/components/input/number/bundles/index.umd.js +109 -0
  1215. package/components/input/number/esm2022/index.mjs +5 -0
  1216. package/components/input/number/esm2022/number.component.mjs +57 -0
  1217. package/components/input/number/esm2022/number.props.mjs +35 -0
  1218. package/components/input/number/esm2022/public_api.mjs +2 -0
  1219. package/components/input/number/fesm2022/index.mjs +95 -0
  1220. package/components/input/number/fesm2022/index.mjs.map +1 -0
  1221. package/components/input/number/index.d.ts +5 -0
  1222. package/components/input/number/number.component.d.ts +26 -0
  1223. package/components/input/number/number.props.d.ts +2 -0
  1224. package/components/input/number/package.json +20 -0
  1225. package/components/input/number/public_api.d.ts +1 -0
  1226. package/components/input/radioset/.npmignore +2 -0
  1227. package/components/input/radioset/bundles/index.umd.js +164 -0
  1228. package/components/input/radioset/esm2022/index.mjs +5 -0
  1229. package/components/input/radioset/esm2022/public_api.mjs +2 -0
  1230. package/components/input/radioset/esm2022/radioset.component.mjs +110 -0
  1231. package/components/input/radioset/esm2022/radioset.props.mjs +37 -0
  1232. package/components/input/radioset/fesm2022/index.mjs +151 -0
  1233. package/components/input/radioset/fesm2022/index.mjs.map +1 -0
  1234. package/components/input/radioset/index.d.ts +5 -0
  1235. package/components/input/radioset/package.json +20 -0
  1236. package/components/input/radioset/public_api.d.ts +1 -0
  1237. package/components/input/radioset/radioset.component.d.ts +23 -0
  1238. package/components/input/radioset/radioset.props.d.ts +2 -0
  1239. package/components/input/rating/.npmignore +2 -0
  1240. package/components/input/rating/bundles/index.umd.js +270 -0
  1241. package/components/input/rating/esm2022/index.mjs +5 -0
  1242. package/components/input/rating/esm2022/public_api.mjs +2 -0
  1243. package/components/input/rating/esm2022/rating.component.mjs +225 -0
  1244. package/components/input/rating/esm2022/rating.props.mjs +29 -0
  1245. package/components/input/rating/fesm2022/index.mjs +257 -0
  1246. package/components/input/rating/fesm2022/index.mjs.map +1 -0
  1247. package/components/input/rating/index.d.ts +5 -0
  1248. package/components/input/rating/package.json +20 -0
  1249. package/components/input/rating/public_api.d.ts +1 -0
  1250. package/components/input/rating/rating.component.d.ts +44 -0
  1251. package/components/input/rating/rating.props.d.ts +2 -0
  1252. package/components/input/select/.npmignore +2 -0
  1253. package/components/input/select/bundles/index.umd.js +225 -0
  1254. package/components/input/select/esm2022/index.mjs +5 -0
  1255. package/components/input/select/esm2022/public_api.mjs +2 -0
  1256. package/components/input/select/esm2022/select.component.mjs +172 -0
  1257. package/components/input/select/esm2022/select.props.mjs +36 -0
  1258. package/components/input/select/fesm2022/index.mjs +211 -0
  1259. package/components/input/select/fesm2022/index.mjs.map +1 -0
  1260. package/components/input/select/index.d.ts +5 -0
  1261. package/components/input/select/package.json +20 -0
  1262. package/components/input/select/public_api.d.ts +1 -0
  1263. package/components/input/select/select.component.d.ts +36 -0
  1264. package/components/input/select/select.props.d.ts +2 -0
  1265. package/components/input/slider/.npmignore +2 -0
  1266. package/components/input/slider/bundles/index.umd.js +203 -0
  1267. package/components/input/slider/esm2022/index.mjs +5 -0
  1268. package/components/input/slider/esm2022/public_api.mjs +2 -0
  1269. package/components/input/slider/esm2022/slider.component.mjs +157 -0
  1270. package/components/input/slider/esm2022/slider.props.mjs +28 -0
  1271. package/components/input/slider/fesm2022/index.mjs +189 -0
  1272. package/components/input/slider/fesm2022/index.mjs.map +1 -0
  1273. package/components/input/slider/index.d.ts +5 -0
  1274. package/components/input/slider/package.json +20 -0
  1275. package/components/input/slider/public_api.d.ts +1 -0
  1276. package/components/input/slider/slider.component.d.ts +39 -0
  1277. package/components/input/slider/slider.props.d.ts +2 -0
  1278. package/components/input/switch/.npmignore +2 -0
  1279. package/components/input/switch/bundles/index.umd.js +224 -0
  1280. package/components/input/switch/esm2022/index.mjs +5 -0
  1281. package/components/input/switch/esm2022/public_api.mjs +2 -0
  1282. package/components/input/switch/esm2022/switch.component.mjs +179 -0
  1283. package/components/input/switch/esm2022/switch.props.mjs +28 -0
  1284. package/components/input/switch/fesm2022/index.mjs +211 -0
  1285. package/components/input/switch/fesm2022/index.mjs.map +1 -0
  1286. package/components/input/switch/index.d.ts +5 -0
  1287. package/components/input/switch/package.json +20 -0
  1288. package/components/input/switch/public_api.d.ts +1 -0
  1289. package/components/input/switch/switch.component.d.ts +30 -0
  1290. package/components/input/switch/switch.props.d.ts +2 -0
  1291. package/components/input/text/.npmignore +2 -0
  1292. package/components/input/text/base-input/base-input.d.ts +33 -0
  1293. package/components/input/text/bundles/index.umd.js +1130 -0
  1294. package/components/input/text/esm2022/base-input/base-input.mjs +93 -0
  1295. package/components/input/text/esm2022/index.mjs +5 -0
  1296. package/components/input/text/esm2022/input-calendar/input-calendar.component.mjs +53 -0
  1297. package/components/input/text/esm2022/input-calendar/input-calendar.props.mjs +30 -0
  1298. package/components/input/text/esm2022/input-color/input-color.component.mjs +53 -0
  1299. package/components/input/text/esm2022/input-color/input-color.props.mjs +27 -0
  1300. package/components/input/text/esm2022/input-email/input-email.component.mjs +53 -0
  1301. package/components/input/text/esm2022/input-email/input-email.props.mjs +29 -0
  1302. package/components/input/text/esm2022/input-number/input-number.component.mjs +63 -0
  1303. package/components/input/text/esm2022/input-number/input-number.props.mjs +32 -0
  1304. package/components/input/text/esm2022/input-text/input-text.component.mjs +136 -0
  1305. package/components/input/text/esm2022/input-text/input-text.props.mjs +48 -0
  1306. package/components/input/text/esm2022/number-locale/number-locale.mjs +554 -0
  1307. package/components/input/text/esm2022/public_api.mjs +8 -0
  1308. package/components/input/text/fesm2022/index.mjs +1114 -0
  1309. package/components/input/text/fesm2022/index.mjs.map +1 -0
  1310. package/components/input/text/index.d.ts +5 -0
  1311. package/components/input/text/input-calendar/input-calendar.component.d.ts +30 -0
  1312. package/components/input/text/input-calendar/input-calendar.props.d.ts +2 -0
  1313. package/components/input/text/input-color/input-color.component.d.ts +27 -0
  1314. package/components/input/text/input-color/input-color.props.d.ts +2 -0
  1315. package/components/input/text/input-email/input-email.component.d.ts +29 -0
  1316. package/components/input/text/input-email/input-email.props.d.ts +2 -0
  1317. package/components/input/text/input-number/input-number.component.d.ts +33 -0
  1318. package/components/input/text/input-number/input-number.props.d.ts +2 -0
  1319. package/components/input/text/input-text/input-text.component.d.ts +52 -0
  1320. package/components/input/text/input-text/input-text.props.d.ts +2 -0
  1321. package/components/input/text/number-locale/number-locale.d.ts +127 -0
  1322. package/components/input/text/package.json +20 -0
  1323. package/components/input/text/public_api.d.ts +7 -0
  1324. package/components/input/textarea/.npmignore +2 -0
  1325. package/components/input/textarea/bundles/index.umd.js +108 -0
  1326. package/components/input/textarea/esm2022/index.mjs +5 -0
  1327. package/components/input/textarea/esm2022/public_api.mjs +2 -0
  1328. package/components/input/textarea/esm2022/textarea.component.mjs +60 -0
  1329. package/components/input/textarea/esm2022/textarea.props.mjs +30 -0
  1330. package/components/input/textarea/fesm2022/index.mjs +94 -0
  1331. package/components/input/textarea/fesm2022/index.mjs.map +1 -0
  1332. package/components/input/textarea/index.d.ts +5 -0
  1333. package/components/input/textarea/package.json +20 -0
  1334. package/components/input/textarea/public_api.d.ts +1 -0
  1335. package/components/input/textarea/textarea.component.d.ts +30 -0
  1336. package/components/input/textarea/textarea.props.d.ts +2 -0
  1337. package/components/navigation/breadcrumb/.npmignore +2 -0
  1338. package/components/navigation/breadcrumb/breadcrumb.component.d.ts +25 -0
  1339. package/components/navigation/breadcrumb/breadcrumb.props.d.ts +1 -0
  1340. package/components/navigation/breadcrumb/bundles/index.umd.js +138 -0
  1341. package/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +101 -0
  1342. package/components/navigation/breadcrumb/esm2022/breadcrumb.props.mjs +17 -0
  1343. package/components/navigation/breadcrumb/esm2022/index.mjs +5 -0
  1344. package/components/navigation/breadcrumb/esm2022/public_api.mjs +2 -0
  1345. package/components/navigation/breadcrumb/fesm2022/index.mjs +121 -0
  1346. package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -0
  1347. package/components/navigation/breadcrumb/index.d.ts +5 -0
  1348. package/components/navigation/breadcrumb/package.json +20 -0
  1349. package/components/navigation/breadcrumb/public_api.d.ts +1 -0
  1350. package/components/navigation/menu/.npmignore +2 -0
  1351. package/components/navigation/menu/bundles/index.umd.js +947 -0
  1352. package/components/navigation/menu/esm2022/index.mjs +5 -0
  1353. package/components/navigation/menu/esm2022/menu-adapator.component.mjs +80 -0
  1354. package/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +105 -0
  1355. package/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +191 -0
  1356. package/components/navigation/menu/esm2022/menu.component.mjs +282 -0
  1357. package/components/navigation/menu/esm2022/menu.props.mjs +37 -0
  1358. package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +66 -0
  1359. package/components/navigation/menu/esm2022/nav/nav-item/nav-item.props.mjs +9 -0
  1360. package/components/navigation/menu/esm2022/nav/nav.component.mjs +131 -0
  1361. package/components/navigation/menu/esm2022/nav/nav.props.mjs +28 -0
  1362. package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +49 -0
  1363. package/components/navigation/menu/esm2022/public_api.mjs +8 -0
  1364. package/components/navigation/menu/fesm2022/index.mjs +929 -0
  1365. package/components/navigation/menu/fesm2022/index.mjs.map +1 -0
  1366. package/components/navigation/menu/index.d.ts +5 -0
  1367. package/components/navigation/menu/menu-adapator.component.d.ts +23 -0
  1368. package/components/navigation/menu/menu-dropdown/menu-dropdown.component.d.ts +15 -0
  1369. package/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +35 -0
  1370. package/components/navigation/menu/menu.component.d.ts +65 -0
  1371. package/components/navigation/menu/menu.props.d.ts +1 -0
  1372. package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +14 -0
  1373. package/components/navigation/menu/nav/nav-item/nav-item.props.d.ts +1 -0
  1374. package/components/navigation/menu/nav/nav.component.d.ts +35 -0
  1375. package/components/navigation/menu/nav/nav.props.d.ts +1 -0
  1376. package/components/navigation/menu/nav/navigation-control.directive.d.ts +14 -0
  1377. package/components/navigation/menu/package.json +20 -0
  1378. package/components/navigation/menu/public_api.d.ts +7 -0
  1379. package/components/navigation/navbar/.npmignore +2 -0
  1380. package/components/navigation/navbar/bundles/index.umd.js +87 -0
  1381. package/components/navigation/navbar/esm2022/index.mjs +5 -0
  1382. package/components/navigation/navbar/esm2022/navbar.component.mjs +52 -0
  1383. package/components/navigation/navbar/esm2022/navbar.props.mjs +13 -0
  1384. package/components/navigation/navbar/esm2022/public_api.mjs +2 -0
  1385. package/components/navigation/navbar/fesm2022/index.mjs +70 -0
  1386. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -0
  1387. package/components/navigation/navbar/index.d.ts +5 -0
  1388. package/components/navigation/navbar/navbar.component.d.ts +16 -0
  1389. package/components/navigation/navbar/navbar.props.d.ts +1 -0
  1390. package/components/navigation/navbar/package.json +20 -0
  1391. package/components/navigation/navbar/public_api.d.ts +1 -0
  1392. package/components/navigation/popover/.npmignore +2 -0
  1393. package/components/navigation/popover/bundles/index.umd.js +514 -0
  1394. package/components/navigation/popover/esm2022/index.mjs +5 -0
  1395. package/components/navigation/popover/esm2022/popover.component.mjs +460 -0
  1396. package/components/navigation/popover/esm2022/popover.props.mjs +35 -0
  1397. package/components/navigation/popover/esm2022/public_api.mjs +2 -0
  1398. package/components/navigation/popover/fesm2022/index.mjs +500 -0
  1399. package/components/navigation/popover/fesm2022/index.mjs.map +1 -0
  1400. package/components/navigation/popover/index.d.ts +5 -0
  1401. package/components/navigation/popover/package.json +20 -0
  1402. package/components/navigation/popover/popover.component.d.ts +83 -0
  1403. package/components/navigation/popover/popover.props.d.ts +1 -0
  1404. package/components/navigation/popover/public_api.d.ts +1 -0
  1405. package/components/page/default/.npmignore +2 -0
  1406. package/components/page/default/bundles/index.umd.js +458 -0
  1407. package/components/page/default/content/content.component.d.ts +9 -0
  1408. package/components/page/default/content/content.props.d.ts +1 -0
  1409. package/components/page/default/esm2022/content/content.component.mjs +29 -0
  1410. package/components/page/default/esm2022/content/content.props.mjs +8 -0
  1411. package/components/page/default/esm2022/index.mjs +5 -0
  1412. package/components/page/default/esm2022/layout.directive.mjs +58 -0
  1413. package/components/page/default/esm2022/layout.props.mjs +5 -0
  1414. package/components/page/default/esm2022/page-content/page-content.component.mjs +85 -0
  1415. package/components/page/default/esm2022/page-content/page-content.props.mjs +14 -0
  1416. package/components/page/default/esm2022/page.directive.mjs +97 -0
  1417. package/components/page/default/esm2022/page.props.mjs +11 -0
  1418. package/components/page/default/esm2022/public_api.mjs +7 -0
  1419. package/components/page/default/esm2022/router-outlet.directive.mjs +47 -0
  1420. package/components/page/default/esm2022/router-outlet.props.mjs +8 -0
  1421. package/components/page/default/esm2022/spa-page.directive.mjs +97 -0
  1422. package/components/page/default/esm2022/spa-page.props.mjs +10 -0
  1423. package/components/page/default/fesm2022/index.mjs +438 -0
  1424. package/components/page/default/fesm2022/index.mjs.map +1 -0
  1425. package/components/page/default/index.d.ts +5 -0
  1426. package/components/page/default/layout.directive.d.ts +20 -0
  1427. package/components/page/default/layout.props.d.ts +1 -0
  1428. package/components/page/default/package.json +20 -0
  1429. package/components/page/default/page-content/page-content.component.d.ts +17 -0
  1430. package/components/page/default/page-content/page-content.props.d.ts +1 -0
  1431. package/components/page/default/page.directive.d.ts +38 -0
  1432. package/components/page/default/page.props.d.ts +1 -0
  1433. package/components/page/default/public_api.d.ts +6 -0
  1434. package/components/page/default/router-outlet.directive.d.ts +13 -0
  1435. package/components/page/default/router-outlet.props.d.ts +1 -0
  1436. package/components/page/default/spa-page.directive.d.ts +38 -0
  1437. package/components/page/default/spa-page.props.d.ts +1 -0
  1438. package/components/page/footer/.npmignore +2 -0
  1439. package/components/page/footer/bundles/index.umd.js +71 -0
  1440. package/components/page/footer/esm2022/footer.directive.mjs +37 -0
  1441. package/components/page/footer/esm2022/footer.props.mjs +11 -0
  1442. package/components/page/footer/esm2022/index.mjs +5 -0
  1443. package/components/page/footer/esm2022/public_api.mjs +2 -0
  1444. package/components/page/footer/fesm2022/index.mjs +53 -0
  1445. package/components/page/footer/fesm2022/index.mjs.map +1 -0
  1446. package/components/page/footer/footer.directive.d.ts +9 -0
  1447. package/components/page/footer/footer.props.d.ts +1 -0
  1448. package/components/page/footer/index.d.ts +5 -0
  1449. package/components/page/footer/package.json +20 -0
  1450. package/components/page/footer/public_api.d.ts +1 -0
  1451. package/components/page/header/.npmignore +2 -0
  1452. package/components/page/header/bundles/index.umd.js +67 -0
  1453. package/components/page/header/esm2022/header.component.mjs +33 -0
  1454. package/components/page/header/esm2022/header.props.mjs +11 -0
  1455. package/components/page/header/esm2022/index.mjs +5 -0
  1456. package/components/page/header/esm2022/public_api.mjs +2 -0
  1457. package/components/page/header/fesm2022/index.mjs +49 -0
  1458. package/components/page/header/fesm2022/index.mjs.map +1 -0
  1459. package/components/page/header/header.component.d.ts +10 -0
  1460. package/components/page/header/header.props.d.ts +1 -0
  1461. package/components/page/header/index.d.ts +5 -0
  1462. package/components/page/header/package.json +20 -0
  1463. package/components/page/header/public_api.d.ts +1 -0
  1464. package/components/page/left-panel/.npmignore +2 -0
  1465. package/components/page/left-panel/bundles/index.umd.js +415 -0
  1466. package/components/page/left-panel/esm2022/index.mjs +5 -0
  1467. package/components/page/left-panel/esm2022/left-panel.animator.mjs +133 -0
  1468. package/components/page/left-panel/esm2022/left-panel.directive.mjs +251 -0
  1469. package/components/page/left-panel/esm2022/left-panel.props.mjs +15 -0
  1470. package/components/page/left-panel/esm2022/public_api.mjs +2 -0
  1471. package/components/page/left-panel/fesm2022/index.mjs +400 -0
  1472. package/components/page/left-panel/fesm2022/index.mjs.map +1 -0
  1473. package/components/page/left-panel/index.d.ts +5 -0
  1474. package/components/page/left-panel/left-panel.animator.d.ts +49 -0
  1475. package/components/page/left-panel/left-panel.directive.d.ts +38 -0
  1476. package/components/page/left-panel/left-panel.props.d.ts +1 -0
  1477. package/components/page/left-panel/package.json +20 -0
  1478. package/components/page/left-panel/public_api.d.ts +1 -0
  1479. package/components/page/right-panel/.npmignore +2 -0
  1480. package/components/page/right-panel/bundles/index.umd.js +86 -0
  1481. package/components/page/right-panel/esm2022/index.mjs +5 -0
  1482. package/components/page/right-panel/esm2022/public_api.mjs +2 -0
  1483. package/components/page/right-panel/esm2022/right-panel.directive.mjs +52 -0
  1484. package/components/page/right-panel/esm2022/right-panel.props.mjs +12 -0
  1485. package/components/page/right-panel/fesm2022/index.mjs +69 -0
  1486. package/components/page/right-panel/fesm2022/index.mjs.map +1 -0
  1487. package/components/page/right-panel/index.d.ts +5 -0
  1488. package/components/page/right-panel/package.json +20 -0
  1489. package/components/page/right-panel/public_api.d.ts +1 -0
  1490. package/components/page/right-panel/right-panel.directive.d.ts +10 -0
  1491. package/components/page/right-panel/right-panel.props.d.ts +1 -0
  1492. package/components/page/top-nav/.npmignore +2 -0
  1493. package/components/page/top-nav/bundles/index.umd.js +68 -0
  1494. package/components/page/top-nav/esm2022/index.mjs +5 -0
  1495. package/components/page/top-nav/esm2022/public_api.mjs +2 -0
  1496. package/components/page/top-nav/esm2022/top-nav.directive.mjs +34 -0
  1497. package/components/page/top-nav/esm2022/top-nav.props.mjs +11 -0
  1498. package/components/page/top-nav/fesm2022/index.mjs +50 -0
  1499. package/components/page/top-nav/fesm2022/index.mjs.map +1 -0
  1500. package/components/page/top-nav/index.d.ts +5 -0
  1501. package/components/page/top-nav/package.json +20 -0
  1502. package/components/page/top-nav/public_api.d.ts +1 -0
  1503. package/components/page/top-nav/top-nav.directive.d.ts +9 -0
  1504. package/components/page/top-nav/top-nav.props.d.ts +1 -0
  1505. package/components/prefab/.npmignore +2 -0
  1506. package/components/prefab/bundles/index.umd.js +176 -0
  1507. package/components/prefab/esm2022/index.mjs +5 -0
  1508. package/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +56 -0
  1509. package/components/prefab/esm2022/prefab-container/prefab-container.props.mjs +9 -0
  1510. package/components/prefab/esm2022/prefab.directive.mjs +88 -0
  1511. package/components/prefab/esm2022/prefab.props.mjs +8 -0
  1512. package/components/prefab/esm2022/public_api.mjs +3 -0
  1513. package/components/prefab/fesm2022/index.mjs +159 -0
  1514. package/components/prefab/fesm2022/index.mjs.map +1 -0
  1515. package/components/prefab/index.d.ts +5 -0
  1516. package/components/prefab/package.json +20 -0
  1517. package/components/prefab/prefab-container/prefab-container.directive.d.ts +15 -0
  1518. package/components/prefab/prefab-container/prefab-container.props.d.ts +1 -0
  1519. package/components/prefab/prefab.directive.d.ts +17 -0
  1520. package/components/prefab/prefab.props.d.ts +1 -0
  1521. package/components/prefab/public_api.d.ts +2 -0
  1522. package/core/.npmignore +2 -0
  1523. package/core/bundles/index.umd.js +5608 -0
  1524. package/core/constants/currency-constants.d.ts +1064 -0
  1525. package/core/enums/enums.d.ts +67 -0
  1526. package/core/esm2022/constants/currency-constants.mjs +1065 -0
  1527. package/core/esm2022/enums/enums.mjs +72 -0
  1528. package/core/esm2022/index.mjs +5 -0
  1529. package/core/esm2022/public_api.mjs +26 -0
  1530. package/core/esm2022/services/constant.service.mjs +25 -0
  1531. package/core/esm2022/services/custom-icons-loader.service.mjs +20 -0
  1532. package/core/esm2022/services/field-type.service.mjs +35 -0
  1533. package/core/esm2022/services/field-widget.service.mjs +37 -0
  1534. package/core/esm2022/services/pagination.service.mjs +336 -0
  1535. package/core/esm2022/services/script-loader.service.mjs +75 -0
  1536. package/core/esm2022/services/state-persistence.service.mjs +500 -0
  1537. package/core/esm2022/services/user-custom-pipe-manager.service.mjs +23 -0
  1538. package/core/esm2022/services/utils.service.mjs +16 -0
  1539. package/core/esm2022/services/viewport.service.mjs +121 -0
  1540. package/core/esm2022/types/types.mjs +81 -0
  1541. package/core/esm2022/utils/build-utils.mjs +296 -0
  1542. package/core/esm2022/utils/dom.mjs +123 -0
  1543. package/core/esm2022/utils/event-notifier.mjs +70 -0
  1544. package/core/esm2022/utils/expression-parser.mjs +593 -0
  1545. package/core/esm2022/utils/id-generator.mjs +15 -0
  1546. package/core/esm2022/utils/lru-cache.mjs +95 -0
  1547. package/core/esm2022/utils/utils.mjs +1476 -0
  1548. package/core/esm2022/utils/watcher.mjs +276 -0
  1549. package/core/esm2022/utils/wm-project-properties.mjs +30 -0
  1550. package/core/fesm2022/index.mjs +5455 -0
  1551. package/core/fesm2022/index.mjs.map +1 -0
  1552. package/core/index.d.ts +5 -0
  1553. package/core/package.json +26 -0
  1554. package/core/public_api.d.ts +22 -0
  1555. package/core/services/constant.service.d.ts +28 -0
  1556. package/core/services/custom-icons-loader.service.d.ts +6 -0
  1557. package/core/services/field-type.service.d.ts +6 -0
  1558. package/core/services/field-widget.service.d.ts +6 -0
  1559. package/core/services/pagination.service.d.ts +59 -0
  1560. package/core/services/script-loader.service.d.ts +17 -0
  1561. package/core/services/state-persistence.service.d.ts +231 -0
  1562. package/core/services/user-custom-pipe-manager.service.d.ts +9 -0
  1563. package/core/services/utils.service.d.ts +6 -0
  1564. package/core/services/viewport.service.d.ts +37 -0
  1565. package/core/types/types.d.ts +208 -0
  1566. package/core/utils/build-utils.d.ts +14 -0
  1567. package/core/utils/dom.d.ts +16 -0
  1568. package/core/utils/event-notifier.d.ts +26 -0
  1569. package/core/utils/expression-parser.d.ts +8 -0
  1570. package/core/utils/id-generator.d.ts +5 -0
  1571. package/core/utils/lru-cache.d.ts +23 -0
  1572. package/core/utils/utils.d.ts +279 -0
  1573. package/core/utils/watcher.d.ts +13 -0
  1574. package/core/utils/wm-project-properties.d.ts +4 -0
  1575. package/http/.npmignore +2 -0
  1576. package/http/bundles/index.umd.js +421 -0
  1577. package/http/esm2022/http.service.mjs +301 -0
  1578. package/http/esm2022/index.mjs +5 -0
  1579. package/http/esm2022/public_api.mjs +4 -0
  1580. package/http/esm2022/wm-http-request.mjs +48 -0
  1581. package/http/esm2022/wm-http-response.mjs +52 -0
  1582. package/http/fesm2022/index.mjs +405 -0
  1583. package/http/fesm2022/index.mjs.map +1 -0
  1584. package/http/http.service.d.ts +70 -0
  1585. package/http/index.d.ts +5 -0
  1586. package/http/package.json +25 -0
  1587. package/http/public_api.d.ts +3 -0
  1588. package/http/wm-http-request.d.ts +24 -0
  1589. package/http/wm-http-response.d.ts +22 -0
  1590. package/locales/angular/global/af-na.js +24 -0
  1591. package/locales/angular/global/af.js +24 -0
  1592. package/locales/angular/global/agq.js +22 -0
  1593. package/locales/angular/global/ak.js +24 -0
  1594. package/locales/angular/global/am.js +24 -0
  1595. package/locales/angular/global/ar-ae.js +32 -0
  1596. package/locales/angular/global/ar-bh.js +32 -0
  1597. package/locales/angular/global/ar-dj.js +32 -0
  1598. package/locales/angular/global/ar-dz.js +32 -0
  1599. package/locales/angular/global/ar-eg.js +32 -0
  1600. package/locales/angular/global/ar-eh.js +32 -0
  1601. package/locales/angular/global/ar-er.js +32 -0
  1602. package/locales/angular/global/ar-il.js +32 -0
  1603. package/locales/angular/global/ar-iq.js +32 -0
  1604. package/locales/angular/global/ar-jo.js +32 -0
  1605. package/locales/angular/global/ar-km.js +32 -0
  1606. package/locales/angular/global/ar-kw.js +32 -0
  1607. package/locales/angular/global/ar-lb.js +32 -0
  1608. package/locales/angular/global/ar-ly.js +32 -0
  1609. package/locales/angular/global/ar-ma.js +32 -0
  1610. package/locales/angular/global/ar-mr.js +32 -0
  1611. package/locales/angular/global/ar-om.js +32 -0
  1612. package/locales/angular/global/ar-ps.js +32 -0
  1613. package/locales/angular/global/ar-qa.js +32 -0
  1614. package/locales/angular/global/ar-sa.js +32 -0
  1615. package/locales/angular/global/ar-sd.js +32 -0
  1616. package/locales/angular/global/ar-so.js +32 -0
  1617. package/locales/angular/global/ar-ss.js +32 -0
  1618. package/locales/angular/global/ar-sy.js +32 -0
  1619. package/locales/angular/global/ar-td.js +32 -0
  1620. package/locales/angular/global/ar-tn.js +32 -0
  1621. package/locales/angular/global/ar-ye.js +32 -0
  1622. package/locales/angular/global/ar.js +32 -0
  1623. package/locales/angular/global/as.js +24 -0
  1624. package/locales/angular/global/asa.js +24 -0
  1625. package/locales/angular/global/ast.js +24 -0
  1626. package/locales/angular/global/az-cyrl.js +22 -0
  1627. package/locales/angular/global/az-latn.js +24 -0
  1628. package/locales/angular/global/az.js +24 -0
  1629. package/locales/angular/global/bas.js +22 -0
  1630. package/locales/angular/global/be-tarask.js +28 -0
  1631. package/locales/angular/global/be.js +28 -0
  1632. package/locales/angular/global/bem.js +24 -0
  1633. package/locales/angular/global/bez.js +24 -0
  1634. package/locales/angular/global/bg.js +24 -0
  1635. package/locales/angular/global/bm.js +22 -0
  1636. package/locales/angular/global/bn-in.js +24 -0
  1637. package/locales/angular/global/bn.js +24 -0
  1638. package/locales/angular/global/bo-in.js +22 -0
  1639. package/locales/angular/global/bo.js +22 -0
  1640. package/locales/angular/global/br.js +30 -0
  1641. package/locales/angular/global/brx.js +24 -0
  1642. package/locales/angular/global/bs-cyrl.js +22 -0
  1643. package/locales/angular/global/bs-latn.js +26 -0
  1644. package/locales/angular/global/bs.js +26 -0
  1645. package/locales/angular/global/ca-ad.js +24 -0
  1646. package/locales/angular/global/ca-es-valencia.js +24 -0
  1647. package/locales/angular/global/ca-fr.js +24 -0
  1648. package/locales/angular/global/ca-it.js +24 -0
  1649. package/locales/angular/global/ca.js +24 -0
  1650. package/locales/angular/global/ccp-in.js +22 -0
  1651. package/locales/angular/global/ccp.js +22 -0
  1652. package/locales/angular/global/ce.js +24 -0
  1653. package/locales/angular/global/ceb.js +24 -0
  1654. package/locales/angular/global/cgg.js +24 -0
  1655. package/locales/angular/global/chr.js +24 -0
  1656. package/locales/angular/global/ckb-ir.js +24 -0
  1657. package/locales/angular/global/ckb.js +24 -0
  1658. package/locales/angular/global/cs.js +28 -0
  1659. package/locales/angular/global/cy.js +32 -0
  1660. package/locales/angular/global/da-gl.js +24 -0
  1661. package/locales/angular/global/da.js +24 -0
  1662. package/locales/angular/global/dav.js +22 -0
  1663. package/locales/angular/global/de-at.js +24 -0
  1664. package/locales/angular/global/de-be.js +24 -0
  1665. package/locales/angular/global/de-ch.js +24 -0
  1666. package/locales/angular/global/de-it.js +24 -0
  1667. package/locales/angular/global/de-li.js +24 -0
  1668. package/locales/angular/global/de-lu.js +24 -0
  1669. package/locales/angular/global/de.js +24 -0
  1670. package/locales/angular/global/dje.js +22 -0
  1671. package/locales/angular/global/doi.js +24 -0
  1672. package/locales/angular/global/dsb.js +28 -0
  1673. package/locales/angular/global/dua.js +22 -0
  1674. package/locales/angular/global/dyo.js +22 -0
  1675. package/locales/angular/global/dz.js +22 -0
  1676. package/locales/angular/global/ebu.js +22 -0
  1677. package/locales/angular/global/ee-tg.js +24 -0
  1678. package/locales/angular/global/ee.js +24 -0
  1679. package/locales/angular/global/el-cy.js +24 -0
  1680. package/locales/angular/global/el.js +24 -0
  1681. package/locales/angular/global/en-001.js +24 -0
  1682. package/locales/angular/global/en-150.js +24 -0
  1683. package/locales/angular/global/en-ae.js +24 -0
  1684. package/locales/angular/global/en-ag.js +24 -0
  1685. package/locales/angular/global/en-ai.js +24 -0
  1686. package/locales/angular/global/en-as.js +24 -0
  1687. package/locales/angular/global/en-at.js +24 -0
  1688. package/locales/angular/global/en-au.js +24 -0
  1689. package/locales/angular/global/en-bb.js +24 -0
  1690. package/locales/angular/global/en-be.js +24 -0
  1691. package/locales/angular/global/en-bi.js +24 -0
  1692. package/locales/angular/global/en-bm.js +24 -0
  1693. package/locales/angular/global/en-bs.js +24 -0
  1694. package/locales/angular/global/en-bw.js +24 -0
  1695. package/locales/angular/global/en-bz.js +24 -0
  1696. package/locales/angular/global/en-ca.js +24 -0
  1697. package/locales/angular/global/en-cc.js +24 -0
  1698. package/locales/angular/global/en-ch.js +24 -0
  1699. package/locales/angular/global/en-ck.js +24 -0
  1700. package/locales/angular/global/en-cm.js +24 -0
  1701. package/locales/angular/global/en-cx.js +24 -0
  1702. package/locales/angular/global/en-cy.js +24 -0
  1703. package/locales/angular/global/en-de.js +24 -0
  1704. package/locales/angular/global/en-dg.js +24 -0
  1705. package/locales/angular/global/en-dk.js +24 -0
  1706. package/locales/angular/global/en-dm.js +24 -0
  1707. package/locales/angular/global/en-er.js +24 -0
  1708. package/locales/angular/global/en-fi.js +24 -0
  1709. package/locales/angular/global/en-fj.js +24 -0
  1710. package/locales/angular/global/en-fk.js +24 -0
  1711. package/locales/angular/global/en-fm.js +24 -0
  1712. package/locales/angular/global/en-gb.js +24 -0
  1713. package/locales/angular/global/en-gd.js +24 -0
  1714. package/locales/angular/global/en-gg.js +24 -0
  1715. package/locales/angular/global/en-gh.js +24 -0
  1716. package/locales/angular/global/en-gi.js +24 -0
  1717. package/locales/angular/global/en-gm.js +24 -0
  1718. package/locales/angular/global/en-gu.js +24 -0
  1719. package/locales/angular/global/en-gy.js +24 -0
  1720. package/locales/angular/global/en-hk.js +24 -0
  1721. package/locales/angular/global/en-ie.js +24 -0
  1722. package/locales/angular/global/en-il.js +24 -0
  1723. package/locales/angular/global/en-im.js +24 -0
  1724. package/locales/angular/global/en-in.js +24 -0
  1725. package/locales/angular/global/en-io.js +24 -0
  1726. package/locales/angular/global/en-je.js +24 -0
  1727. package/locales/angular/global/en-jm.js +24 -0
  1728. package/locales/angular/global/en-ke.js +24 -0
  1729. package/locales/angular/global/en-ki.js +24 -0
  1730. package/locales/angular/global/en-kn.js +24 -0
  1731. package/locales/angular/global/en-ky.js +24 -0
  1732. package/locales/angular/global/en-lc.js +24 -0
  1733. package/locales/angular/global/en-lr.js +24 -0
  1734. package/locales/angular/global/en-ls.js +24 -0
  1735. package/locales/angular/global/en-mg.js +24 -0
  1736. package/locales/angular/global/en-mh.js +24 -0
  1737. package/locales/angular/global/en-mo.js +24 -0
  1738. package/locales/angular/global/en-mp.js +24 -0
  1739. package/locales/angular/global/en-ms.js +24 -0
  1740. package/locales/angular/global/en-mt.js +24 -0
  1741. package/locales/angular/global/en-mu.js +24 -0
  1742. package/locales/angular/global/en-mv.js +24 -0
  1743. package/locales/angular/global/en-mw.js +24 -0
  1744. package/locales/angular/global/en-my.js +24 -0
  1745. package/locales/angular/global/en-na.js +24 -0
  1746. package/locales/angular/global/en-nf.js +24 -0
  1747. package/locales/angular/global/en-ng.js +24 -0
  1748. package/locales/angular/global/en-nl.js +24 -0
  1749. package/locales/angular/global/en-nr.js +24 -0
  1750. package/locales/angular/global/en-nu.js +24 -0
  1751. package/locales/angular/global/en-nz.js +24 -0
  1752. package/locales/angular/global/en-pg.js +24 -0
  1753. package/locales/angular/global/en-ph.js +24 -0
  1754. package/locales/angular/global/en-pk.js +24 -0
  1755. package/locales/angular/global/en-pn.js +24 -0
  1756. package/locales/angular/global/en-pr.js +24 -0
  1757. package/locales/angular/global/en-pw.js +24 -0
  1758. package/locales/angular/global/en-rw.js +24 -0
  1759. package/locales/angular/global/en-sb.js +24 -0
  1760. package/locales/angular/global/en-sc.js +24 -0
  1761. package/locales/angular/global/en-sd.js +24 -0
  1762. package/locales/angular/global/en-se.js +24 -0
  1763. package/locales/angular/global/en-sg.js +24 -0
  1764. package/locales/angular/global/en-sh.js +24 -0
  1765. package/locales/angular/global/en-si.js +24 -0
  1766. package/locales/angular/global/en-sl.js +24 -0
  1767. package/locales/angular/global/en-ss.js +24 -0
  1768. package/locales/angular/global/en-sx.js +24 -0
  1769. package/locales/angular/global/en-sz.js +24 -0
  1770. package/locales/angular/global/en-tc.js +24 -0
  1771. package/locales/angular/global/en-tk.js +24 -0
  1772. package/locales/angular/global/en-to.js +24 -0
  1773. package/locales/angular/global/en-tt.js +24 -0
  1774. package/locales/angular/global/en-tv.js +24 -0
  1775. package/locales/angular/global/en-tz.js +24 -0
  1776. package/locales/angular/global/en-ug.js +24 -0
  1777. package/locales/angular/global/en-um.js +24 -0
  1778. package/locales/angular/global/en-vc.js +24 -0
  1779. package/locales/angular/global/en-vg.js +24 -0
  1780. package/locales/angular/global/en-vi.js +24 -0
  1781. package/locales/angular/global/en-vu.js +24 -0
  1782. package/locales/angular/global/en-ws.js +24 -0
  1783. package/locales/angular/global/en-za.js +24 -0
  1784. package/locales/angular/global/en-zm.js +24 -0
  1785. package/locales/angular/global/en-zw.js +24 -0
  1786. package/locales/angular/global/en.js +24 -0
  1787. package/locales/angular/global/eo.js +24 -0
  1788. package/locales/angular/global/es-419.js +26 -0
  1789. package/locales/angular/global/es-ar.js +26 -0
  1790. package/locales/angular/global/es-bo.js +26 -0
  1791. package/locales/angular/global/es-br.js +26 -0
  1792. package/locales/angular/global/es-bz.js +26 -0
  1793. package/locales/angular/global/es-cl.js +26 -0
  1794. package/locales/angular/global/es-co.js +26 -0
  1795. package/locales/angular/global/es-cr.js +26 -0
  1796. package/locales/angular/global/es-cu.js +26 -0
  1797. package/locales/angular/global/es-do.js +26 -0
  1798. package/locales/angular/global/es-ea.js +26 -0
  1799. package/locales/angular/global/es-ec.js +26 -0
  1800. package/locales/angular/global/es-gq.js +26 -0
  1801. package/locales/angular/global/es-gt.js +26 -0
  1802. package/locales/angular/global/es-hn.js +26 -0
  1803. package/locales/angular/global/es-ic.js +26 -0
  1804. package/locales/angular/global/es-mx.js +26 -0
  1805. package/locales/angular/global/es-ni.js +26 -0
  1806. package/locales/angular/global/es-pa.js +26 -0
  1807. package/locales/angular/global/es-pe.js +26 -0
  1808. package/locales/angular/global/es-ph.js +26 -0
  1809. package/locales/angular/global/es-pr.js +26 -0
  1810. package/locales/angular/global/es-py.js +26 -0
  1811. package/locales/angular/global/es-sv.js +26 -0
  1812. package/locales/angular/global/es-us.js +26 -0
  1813. package/locales/angular/global/es-uy.js +26 -0
  1814. package/locales/angular/global/es-ve.js +26 -0
  1815. package/locales/angular/global/es.js +26 -0
  1816. package/locales/angular/global/et.js +24 -0
  1817. package/locales/angular/global/eu.js +24 -0
  1818. package/locales/angular/global/ewo.js +22 -0
  1819. package/locales/angular/global/fa-af.js +24 -0
  1820. package/locales/angular/global/fa.js +24 -0
  1821. package/locales/angular/global/ff-adlm-bf.js +22 -0
  1822. package/locales/angular/global/ff-adlm-cm.js +22 -0
  1823. package/locales/angular/global/ff-adlm-gh.js +22 -0
  1824. package/locales/angular/global/ff-adlm-gm.js +22 -0
  1825. package/locales/angular/global/ff-adlm-gw.js +22 -0
  1826. package/locales/angular/global/ff-adlm-lr.js +22 -0
  1827. package/locales/angular/global/ff-adlm-mr.js +22 -0
  1828. package/locales/angular/global/ff-adlm-ne.js +22 -0
  1829. package/locales/angular/global/ff-adlm-ng.js +22 -0
  1830. package/locales/angular/global/ff-adlm-sl.js +22 -0
  1831. package/locales/angular/global/ff-adlm-sn.js +22 -0
  1832. package/locales/angular/global/ff-adlm.js +22 -0
  1833. package/locales/angular/global/ff-cm.js +74 -0
  1834. package/locales/angular/global/ff-gn.js +74 -0
  1835. package/locales/angular/global/ff-latn-bf.js +24 -0
  1836. package/locales/angular/global/ff-latn-cm.js +24 -0
  1837. package/locales/angular/global/ff-latn-gh.js +24 -0
  1838. package/locales/angular/global/ff-latn-gm.js +24 -0
  1839. package/locales/angular/global/ff-latn-gn.js +24 -0
  1840. package/locales/angular/global/ff-latn-gw.js +24 -0
  1841. package/locales/angular/global/ff-latn-lr.js +24 -0
  1842. package/locales/angular/global/ff-latn-mr.js +24 -0
  1843. package/locales/angular/global/ff-latn-ne.js +24 -0
  1844. package/locales/angular/global/ff-latn-ng.js +24 -0
  1845. package/locales/angular/global/ff-latn-sl.js +24 -0
  1846. package/locales/angular/global/ff-latn.js +24 -0
  1847. package/locales/angular/global/ff-mr.js +74 -0
  1848. package/locales/angular/global/ff.js +24 -0
  1849. package/locales/angular/global/fi.js +24 -0
  1850. package/locales/angular/global/fil.js +24 -0
  1851. package/locales/angular/global/fo-dk.js +24 -0
  1852. package/locales/angular/global/fo.js +24 -0
  1853. package/locales/angular/global/fr-be.js +26 -0
  1854. package/locales/angular/global/fr-bf.js +26 -0
  1855. package/locales/angular/global/fr-bi.js +26 -0
  1856. package/locales/angular/global/fr-bj.js +26 -0
  1857. package/locales/angular/global/fr-bl.js +26 -0
  1858. package/locales/angular/global/fr-ca.js +26 -0
  1859. package/locales/angular/global/fr-cd.js +26 -0
  1860. package/locales/angular/global/fr-cf.js +26 -0
  1861. package/locales/angular/global/fr-cg.js +26 -0
  1862. package/locales/angular/global/fr-ch.js +26 -0
  1863. package/locales/angular/global/fr-ci.js +26 -0
  1864. package/locales/angular/global/fr-cm.js +26 -0
  1865. package/locales/angular/global/fr-dj.js +26 -0
  1866. package/locales/angular/global/fr-dz.js +26 -0
  1867. package/locales/angular/global/fr-ga.js +26 -0
  1868. package/locales/angular/global/fr-gf.js +26 -0
  1869. package/locales/angular/global/fr-gn.js +26 -0
  1870. package/locales/angular/global/fr-gp.js +26 -0
  1871. package/locales/angular/global/fr-gq.js +26 -0
  1872. package/locales/angular/global/fr-ht.js +26 -0
  1873. package/locales/angular/global/fr-km.js +26 -0
  1874. package/locales/angular/global/fr-lu.js +26 -0
  1875. package/locales/angular/global/fr-ma.js +26 -0
  1876. package/locales/angular/global/fr-mc.js +26 -0
  1877. package/locales/angular/global/fr-mf.js +26 -0
  1878. package/locales/angular/global/fr-mg.js +26 -0
  1879. package/locales/angular/global/fr-ml.js +26 -0
  1880. package/locales/angular/global/fr-mq.js +26 -0
  1881. package/locales/angular/global/fr-mr.js +26 -0
  1882. package/locales/angular/global/fr-mu.js +26 -0
  1883. package/locales/angular/global/fr-nc.js +26 -0
  1884. package/locales/angular/global/fr-ne.js +26 -0
  1885. package/locales/angular/global/fr-pf.js +26 -0
  1886. package/locales/angular/global/fr-pm.js +26 -0
  1887. package/locales/angular/global/fr-re.js +26 -0
  1888. package/locales/angular/global/fr-rw.js +26 -0
  1889. package/locales/angular/global/fr-sc.js +26 -0
  1890. package/locales/angular/global/fr-sn.js +26 -0
  1891. package/locales/angular/global/fr-sy.js +26 -0
  1892. package/locales/angular/global/fr-td.js +26 -0
  1893. package/locales/angular/global/fr-tg.js +26 -0
  1894. package/locales/angular/global/fr-tn.js +26 -0
  1895. package/locales/angular/global/fr-vu.js +26 -0
  1896. package/locales/angular/global/fr-wf.js +26 -0
  1897. package/locales/angular/global/fr-yt.js +26 -0
  1898. package/locales/angular/global/fr.js +26 -0
  1899. package/locales/angular/global/fur.js +24 -0
  1900. package/locales/angular/global/fy.js +24 -0
  1901. package/locales/angular/global/ga-gb.js +30 -0
  1902. package/locales/angular/global/ga.js +30 -0
  1903. package/locales/angular/global/gd.js +28 -0
  1904. package/locales/angular/global/gl.js +24 -0
  1905. package/locales/angular/global/gsw-fr.js +24 -0
  1906. package/locales/angular/global/gsw-li.js +24 -0
  1907. package/locales/angular/global/gsw.js +24 -0
  1908. package/locales/angular/global/gu.js +24 -0
  1909. package/locales/angular/global/guz.js +22 -0
  1910. package/locales/angular/global/gv.js +30 -0
  1911. package/locales/angular/global/ha-gh.js +24 -0
  1912. package/locales/angular/global/ha-ne.js +24 -0
  1913. package/locales/angular/global/ha.js +24 -0
  1914. package/locales/angular/global/haw.js +24 -0
  1915. package/locales/angular/global/he.js +28 -0
  1916. package/locales/angular/global/hi-latn.js +24 -0
  1917. package/locales/angular/global/hi.js +24 -0
  1918. package/locales/angular/global/hr-ba.js +26 -0
  1919. package/locales/angular/global/hr.js +26 -0
  1920. package/locales/angular/global/hsb.js +28 -0
  1921. package/locales/angular/global/hu.js +24 -0
  1922. package/locales/angular/global/hy.js +24 -0
  1923. package/locales/angular/global/ia.js +24 -0
  1924. package/locales/angular/global/id.js +22 -0
  1925. package/locales/angular/global/ig.js +22 -0
  1926. package/locales/angular/global/ii.js +22 -0
  1927. package/locales/angular/global/is.js +24 -0
  1928. package/locales/angular/global/it-ch.js +26 -0
  1929. package/locales/angular/global/it-sm.js +26 -0
  1930. package/locales/angular/global/it-va.js +26 -0
  1931. package/locales/angular/global/it.js +26 -0
  1932. package/locales/angular/global/ja.js +22 -0
  1933. package/locales/angular/global/jgo.js +24 -0
  1934. package/locales/angular/global/jmc.js +24 -0
  1935. package/locales/angular/global/jv.js +22 -0
  1936. package/locales/angular/global/ka.js +24 -0
  1937. package/locales/angular/global/kab.js +24 -0
  1938. package/locales/angular/global/kam.js +22 -0
  1939. package/locales/angular/global/kde.js +22 -0
  1940. package/locales/angular/global/kea.js +22 -0
  1941. package/locales/angular/global/kgp.js +22 -0
  1942. package/locales/angular/global/khq.js +22 -0
  1943. package/locales/angular/global/ki.js +22 -0
  1944. package/locales/angular/global/kk.js +24 -0
  1945. package/locales/angular/global/kkj.js +24 -0
  1946. package/locales/angular/global/kl.js +24 -0
  1947. package/locales/angular/global/kln.js +22 -0
  1948. package/locales/angular/global/km.js +22 -0
  1949. package/locales/angular/global/kn.js +24 -0
  1950. package/locales/angular/global/ko-kp.js +22 -0
  1951. package/locales/angular/global/ko.js +22 -0
  1952. package/locales/angular/global/kok.js +22 -0
  1953. package/locales/angular/global/ks-arab.js +24 -0
  1954. package/locales/angular/global/ks-deva.js +22 -0
  1955. package/locales/angular/global/ks.js +24 -0
  1956. package/locales/angular/global/ksb.js +24 -0
  1957. package/locales/angular/global/ksf.js +22 -0
  1958. package/locales/angular/global/ksh.js +26 -0
  1959. package/locales/angular/global/ku.js +24 -0
  1960. package/locales/angular/global/kw.js +32 -0
  1961. package/locales/angular/global/ky.js +24 -0
  1962. package/locales/angular/global/lag.js +26 -0
  1963. package/locales/angular/global/lb.js +24 -0
  1964. package/locales/angular/global/lg.js +24 -0
  1965. package/locales/angular/global/lkt.js +22 -0
  1966. package/locales/angular/global/ln-ao.js +24 -0
  1967. package/locales/angular/global/ln-cf.js +24 -0
  1968. package/locales/angular/global/ln-cg.js +24 -0
  1969. package/locales/angular/global/ln.js +24 -0
  1970. package/locales/angular/global/lo.js +22 -0
  1971. package/locales/angular/global/lrc-iq.js +22 -0
  1972. package/locales/angular/global/lrc.js +22 -0
  1973. package/locales/angular/global/lt.js +28 -0
  1974. package/locales/angular/global/lu.js +22 -0
  1975. package/locales/angular/global/luo.js +22 -0
  1976. package/locales/angular/global/luy.js +22 -0
  1977. package/locales/angular/global/lv.js +26 -0
  1978. package/locales/angular/global/mai.js +22 -0
  1979. package/locales/angular/global/mas-tz.js +24 -0
  1980. package/locales/angular/global/mas.js +24 -0
  1981. package/locales/angular/global/mer.js +22 -0
  1982. package/locales/angular/global/mfe.js +22 -0
  1983. package/locales/angular/global/mg.js +24 -0
  1984. package/locales/angular/global/mgh.js +22 -0
  1985. package/locales/angular/global/mgo.js +24 -0
  1986. package/locales/angular/global/mi.js +22 -0
  1987. package/locales/angular/global/mk.js +24 -0
  1988. package/locales/angular/global/ml.js +24 -0
  1989. package/locales/angular/global/mn.js +24 -0
  1990. package/locales/angular/global/mni-beng.js +22 -0
  1991. package/locales/angular/global/mni.js +22 -0
  1992. package/locales/angular/global/mr.js +24 -0
  1993. package/locales/angular/global/ms-bn.js +22 -0
  1994. package/locales/angular/global/ms-id.js +22 -0
  1995. package/locales/angular/global/ms-sg.js +22 -0
  1996. package/locales/angular/global/ms.js +22 -0
  1997. package/locales/angular/global/mt.js +28 -0
  1998. package/locales/angular/global/mua.js +22 -0
  1999. package/locales/angular/global/my.js +22 -0
  2000. package/locales/angular/global/mzn.js +22 -0
  2001. package/locales/angular/global/naq.js +26 -0
  2002. package/locales/angular/global/nb-sj.js +24 -0
  2003. package/locales/angular/global/nb.js +24 -0
  2004. package/locales/angular/global/nd.js +24 -0
  2005. package/locales/angular/global/nds-nl.js +22 -0
  2006. package/locales/angular/global/nds.js +22 -0
  2007. package/locales/angular/global/ne-in.js +24 -0
  2008. package/locales/angular/global/ne.js +24 -0
  2009. package/locales/angular/global/nl-aw.js +24 -0
  2010. package/locales/angular/global/nl-be.js +24 -0
  2011. package/locales/angular/global/nl-bq.js +24 -0
  2012. package/locales/angular/global/nl-cw.js +24 -0
  2013. package/locales/angular/global/nl-sr.js +24 -0
  2014. package/locales/angular/global/nl-sx.js +24 -0
  2015. package/locales/angular/global/nl.js +24 -0
  2016. package/locales/angular/global/nmg.js +22 -0
  2017. package/locales/angular/global/nn.js +24 -0
  2018. package/locales/angular/global/nnh.js +24 -0
  2019. package/locales/angular/global/no.js +24 -0
  2020. package/locales/angular/global/nus.js +22 -0
  2021. package/locales/angular/global/nyn.js +24 -0
  2022. package/locales/angular/global/om-ke.js +24 -0
  2023. package/locales/angular/global/om.js +24 -0
  2024. package/locales/angular/global/or.js +24 -0
  2025. package/locales/angular/global/os-ru.js +24 -0
  2026. package/locales/angular/global/os.js +24 -0
  2027. package/locales/angular/global/pa-arab.js +22 -0
  2028. package/locales/angular/global/pa-guru.js +24 -0
  2029. package/locales/angular/global/pa.js +24 -0
  2030. package/locales/angular/global/pcm.js +24 -0
  2031. package/locales/angular/global/pl.js +28 -0
  2032. package/locales/angular/global/ps-pk.js +24 -0
  2033. package/locales/angular/global/ps.js +24 -0
  2034. package/locales/angular/global/pt-ao.js +26 -0
  2035. package/locales/angular/global/pt-ch.js +26 -0
  2036. package/locales/angular/global/pt-cv.js +26 -0
  2037. package/locales/angular/global/pt-gq.js +26 -0
  2038. package/locales/angular/global/pt-gw.js +26 -0
  2039. package/locales/angular/global/pt-lu.js +26 -0
  2040. package/locales/angular/global/pt-mo.js +26 -0
  2041. package/locales/angular/global/pt-mz.js +26 -0
  2042. package/locales/angular/global/pt-pt.js +26 -0
  2043. package/locales/angular/global/pt-st.js +26 -0
  2044. package/locales/angular/global/pt-tl.js +26 -0
  2045. package/locales/angular/global/pt.js +26 -0
  2046. package/locales/angular/global/qu-bo.js +22 -0
  2047. package/locales/angular/global/qu-ec.js +22 -0
  2048. package/locales/angular/global/qu.js +22 -0
  2049. package/locales/angular/global/rm.js +24 -0
  2050. package/locales/angular/global/rn.js +22 -0
  2051. package/locales/angular/global/ro-md.js +26 -0
  2052. package/locales/angular/global/ro.js +26 -0
  2053. package/locales/angular/global/rof.js +24 -0
  2054. package/locales/angular/global/ru-by.js +28 -0
  2055. package/locales/angular/global/ru-kg.js +28 -0
  2056. package/locales/angular/global/ru-kz.js +28 -0
  2057. package/locales/angular/global/ru-md.js +28 -0
  2058. package/locales/angular/global/ru-ua.js +28 -0
  2059. package/locales/angular/global/ru.js +28 -0
  2060. package/locales/angular/global/rw.js +22 -0
  2061. package/locales/angular/global/rwk.js +24 -0
  2062. package/locales/angular/global/sa.js +22 -0
  2063. package/locales/angular/global/sah.js +22 -0
  2064. package/locales/angular/global/saq.js +24 -0
  2065. package/locales/angular/global/sat-olck.js +26 -0
  2066. package/locales/angular/global/sat.js +26 -0
  2067. package/locales/angular/global/sbp.js +22 -0
  2068. package/locales/angular/global/sc.js +24 -0
  2069. package/locales/angular/global/sd-arab.js +24 -0
  2070. package/locales/angular/global/sd-deva.js +22 -0
  2071. package/locales/angular/global/sd.js +24 -0
  2072. package/locales/angular/global/se-fi.js +26 -0
  2073. package/locales/angular/global/se-se.js +26 -0
  2074. package/locales/angular/global/se.js +26 -0
  2075. package/locales/angular/global/seh.js +24 -0
  2076. package/locales/angular/global/ses.js +22 -0
  2077. package/locales/angular/global/sg.js +22 -0
  2078. package/locales/angular/global/shi-latn.js +22 -0
  2079. package/locales/angular/global/shi-tfng.js +26 -0
  2080. package/locales/angular/global/shi.js +26 -0
  2081. package/locales/angular/global/si.js +24 -0
  2082. package/locales/angular/global/sk.js +28 -0
  2083. package/locales/angular/global/sl.js +28 -0
  2084. package/locales/angular/global/smn.js +26 -0
  2085. package/locales/angular/global/sn.js +24 -0
  2086. package/locales/angular/global/so-dj.js +24 -0
  2087. package/locales/angular/global/so-et.js +24 -0
  2088. package/locales/angular/global/so-ke.js +24 -0
  2089. package/locales/angular/global/so.js +24 -0
  2090. package/locales/angular/global/sq-mk.js +24 -0
  2091. package/locales/angular/global/sq-xk.js +24 -0
  2092. package/locales/angular/global/sq.js +24 -0
  2093. package/locales/angular/global/sr-cyrl-ba.js +26 -0
  2094. package/locales/angular/global/sr-cyrl-me.js +26 -0
  2095. package/locales/angular/global/sr-cyrl-xk.js +26 -0
  2096. package/locales/angular/global/sr-cyrl.js +26 -0
  2097. package/locales/angular/global/sr-latn-ba.js +22 -0
  2098. package/locales/angular/global/sr-latn-me.js +22 -0
  2099. package/locales/angular/global/sr-latn-xk.js +22 -0
  2100. package/locales/angular/global/sr-latn.js +22 -0
  2101. package/locales/angular/global/sr.js +26 -0
  2102. package/locales/angular/global/su-latn.js +22 -0
  2103. package/locales/angular/global/su.js +22 -0
  2104. package/locales/angular/global/sv-ax.js +24 -0
  2105. package/locales/angular/global/sv-fi.js +24 -0
  2106. package/locales/angular/global/sv.js +24 -0
  2107. package/locales/angular/global/sw-cd.js +24 -0
  2108. package/locales/angular/global/sw-ke.js +24 -0
  2109. package/locales/angular/global/sw-ug.js +24 -0
  2110. package/locales/angular/global/sw.js +24 -0
  2111. package/locales/angular/global/ta-lk.js +24 -0
  2112. package/locales/angular/global/ta-my.js +24 -0
  2113. package/locales/angular/global/ta-sg.js +24 -0
  2114. package/locales/angular/global/ta.js +24 -0
  2115. package/locales/angular/global/te.js +24 -0
  2116. package/locales/angular/global/teo-ke.js +24 -0
  2117. package/locales/angular/global/teo.js +24 -0
  2118. package/locales/angular/global/tg.js +22 -0
  2119. package/locales/angular/global/th.js +22 -0
  2120. package/locales/angular/global/ti-er.js +24 -0
  2121. package/locales/angular/global/ti.js +24 -0
  2122. package/locales/angular/global/tk.js +24 -0
  2123. package/locales/angular/global/to.js +22 -0
  2124. package/locales/angular/global/tr-cy.js +24 -0
  2125. package/locales/angular/global/tr.js +24 -0
  2126. package/locales/angular/global/tt.js +22 -0
  2127. package/locales/angular/global/twq.js +22 -0
  2128. package/locales/angular/global/tzm.js +24 -0
  2129. package/locales/angular/global/ug.js +24 -0
  2130. package/locales/angular/global/uk.js +28 -0
  2131. package/locales/angular/global/und.js +24 -0
  2132. package/locales/angular/global/ur-in.js +24 -0
  2133. package/locales/angular/global/ur.js +24 -0
  2134. package/locales/angular/global/uz-arab.js +22 -0
  2135. package/locales/angular/global/uz-cyrl.js +22 -0
  2136. package/locales/angular/global/uz-latn.js +24 -0
  2137. package/locales/angular/global/uz.js +24 -0
  2138. package/locales/angular/global/vai-latn.js +22 -0
  2139. package/locales/angular/global/vai-vaii.js +22 -0
  2140. package/locales/angular/global/vai.js +22 -0
  2141. package/locales/angular/global/vi.js +22 -0
  2142. package/locales/angular/global/vun.js +24 -0
  2143. package/locales/angular/global/wae.js +24 -0
  2144. package/locales/angular/global/wo.js +22 -0
  2145. package/locales/angular/global/xh.js +24 -0
  2146. package/locales/angular/global/xog.js +24 -0
  2147. package/locales/angular/global/yav.js +22 -0
  2148. package/locales/angular/global/yi.js +24 -0
  2149. package/locales/angular/global/yo-bj.js +22 -0
  2150. package/locales/angular/global/yo.js +22 -0
  2151. package/locales/angular/global/yrl-co.js +22 -0
  2152. package/locales/angular/global/yrl-ve.js +22 -0
  2153. package/locales/angular/global/yrl.js +22 -0
  2154. package/locales/angular/global/yue-hans.js +22 -0
  2155. package/locales/angular/global/yue-hant.js +22 -0
  2156. package/locales/angular/global/yue.js +22 -0
  2157. package/locales/angular/global/zgh.js +22 -0
  2158. package/locales/angular/global/zh-hans-hk.js +22 -0
  2159. package/locales/angular/global/zh-hans-mo.js +22 -0
  2160. package/locales/angular/global/zh-hans-sg.js +22 -0
  2161. package/locales/angular/global/zh-hans.js +22 -0
  2162. package/locales/angular/global/zh-hant-hk.js +22 -0
  2163. package/locales/angular/global/zh-hant-mo.js +22 -0
  2164. package/locales/angular/global/zh-hant.js +22 -0
  2165. package/locales/angular/global/zh.js +22 -0
  2166. package/locales/angular/global/zu.js +24 -0
  2167. package/locales/moment/af.js +82 -0
  2168. package/locales/moment/ar-dz.js +167 -0
  2169. package/locales/moment/ar-kw.js +66 -0
  2170. package/locales/moment/ar-ly.js +182 -0
  2171. package/locales/moment/ar-ma.js +67 -0
  2172. package/locales/moment/ar-ps.js +123 -0
  2173. package/locales/moment/ar-sa.js +116 -0
  2174. package/locales/moment/ar-tn.js +66 -0
  2175. package/locales/moment/ar.js +200 -0
  2176. package/locales/moment/az.js +113 -0
  2177. package/locales/moment/be.js +153 -0
  2178. package/locales/moment/bg.js +98 -0
  2179. package/locales/moment/bm.js +62 -0
  2180. package/locales/moment/bn-bd.js +140 -0
  2181. package/locales/moment/bn.js +130 -0
  2182. package/locales/moment/bo.js +135 -0
  2183. package/locales/moment/br.js +179 -0
  2184. package/locales/moment/bs.js +171 -0
  2185. package/locales/moment/ca.js +111 -0
  2186. package/locales/moment/cs.js +192 -0
  2187. package/locales/moment/cv.js +74 -0
  2188. package/locales/moment/cy.js +109 -0
  2189. package/locales/moment/da.js +64 -0
  2190. package/locales/moment/de-at.js +90 -0
  2191. package/locales/moment/de-ch.js +87 -0
  2192. package/locales/moment/de.js +89 -0
  2193. package/locales/moment/dv.js +101 -0
  2194. package/locales/moment/el.js +117 -0
  2195. package/locales/moment/en-au.js +79 -0
  2196. package/locales/moment/en-ca.js +75 -0
  2197. package/locales/moment/en-gb.js +79 -0
  2198. package/locales/moment/en-ie.js +79 -0
  2199. package/locales/moment/en-il.js +75 -0
  2200. package/locales/moment/en-in.js +79 -0
  2201. package/locales/moment/en-nz.js +79 -0
  2202. package/locales/moment/en-sg.js +79 -0
  2203. package/locales/moment/eo.js +79 -0
  2204. package/locales/moment/es-do.js +119 -0
  2205. package/locales/moment/es-mx.js +121 -0
  2206. package/locales/moment/es-us.js +121 -0
  2207. package/locales/moment/es.js +121 -0
  2208. package/locales/moment/et.js +89 -0
  2209. package/locales/moment/eu.js +76 -0
  2210. package/locales/moment/fa.js +124 -0
  2211. package/locales/moment/fi.js +135 -0
  2212. package/locales/moment/fil.js +69 -0
  2213. package/locales/moment/fo.js +68 -0
  2214. package/locales/moment/fr-ca.js +81 -0
  2215. package/locales/moment/fr-ch.js +85 -0
  2216. package/locales/moment/fr.js +119 -0
  2217. package/locales/moment/fy.js +86 -0
  2218. package/locales/moment/ga.js +106 -0
  2219. package/locales/moment/gd.js +106 -0
  2220. package/locales/moment/gl.js +86 -0
  2221. package/locales/moment/gom-deva.js +137 -0
  2222. package/locales/moment/gom-latn.js +135 -0
  2223. package/locales/moment/gu.js +133 -0
  2224. package/locales/moment/he.js +105 -0
  2225. package/locales/moment/hi.js +179 -0
  2226. package/locales/moment/hr.js +167 -0
  2227. package/locales/moment/hu.js +129 -0
  2228. package/locales/moment/hy-am.js +105 -0
  2229. package/locales/moment/id.js +87 -0
  2230. package/locales/moment/is.js +151 -0
  2231. package/locales/moment/it-ch.js +75 -0
  2232. package/locales/moment/it.js +117 -0
  2233. package/locales/moment/ja.js +159 -0
  2234. package/locales/moment/jv.js +87 -0
  2235. package/locales/moment/ka.js +103 -0
  2236. package/locales/moment/kk.js +93 -0
  2237. package/locales/moment/km.js +114 -0
  2238. package/locales/moment/kn.js +135 -0
  2239. package/locales/moment/ko.js +86 -0
  2240. package/locales/moment/ku-kmr.js +125 -0
  2241. package/locales/moment/ku.js +129 -0
  2242. package/locales/moment/ky.js +95 -0
  2243. package/locales/moment/lb.js +148 -0
  2244. package/locales/moment/lo.js +77 -0
  2245. package/locales/moment/lt.js +136 -0
  2246. package/locales/moment/lv.js +105 -0
  2247. package/locales/moment/me.js +128 -0
  2248. package/locales/moment/mi.js +71 -0
  2249. package/locales/moment/mk.js +97 -0
  2250. package/locales/moment/ml.js +93 -0
  2251. package/locales/moment/mn.js +111 -0
  2252. package/locales/moment/mr.js +214 -0
  2253. package/locales/moment/ms-my.js +87 -0
  2254. package/locales/moment/ms.js +86 -0
  2255. package/locales/moment/mt.js +67 -0
  2256. package/locales/moment/my.js +102 -0
  2257. package/locales/moment/nb.js +71 -0
  2258. package/locales/moment/ne.js +132 -0
  2259. package/locales/moment/nl-be.js +113 -0
  2260. package/locales/moment/nl.js +115 -0
  2261. package/locales/moment/nn.js +70 -0
  2262. package/locales/moment/oc-lnc.js +96 -0
  2263. package/locales/moment/pa-in.js +133 -0
  2264. package/locales/moment/pl.js +151 -0
  2265. package/locales/moment/pt-br.js +69 -0
  2266. package/locales/moment/pt.js +74 -0
  2267. package/locales/moment/ro.js +87 -0
  2268. package/locales/moment/ru.js +224 -0
  2269. package/locales/moment/sd.js +92 -0
  2270. package/locales/moment/se.js +68 -0
  2271. package/locales/moment/si.js +80 -0
  2272. package/locales/moment/sk.js +156 -0
  2273. package/locales/moment/sl.js +182 -0
  2274. package/locales/moment/sq.js +76 -0
  2275. package/locales/moment/sr-cyrl.js +138 -0
  2276. package/locales/moment/sr.js +140 -0
  2277. package/locales/moment/ss.js +95 -0
  2278. package/locales/moment/sv.js +79 -0
  2279. package/locales/moment/sw.js +66 -0
  2280. package/locales/moment/ta.js +142 -0
  2281. package/locales/moment/te.js +99 -0
  2282. package/locales/moment/tet.js +79 -0
  2283. package/locales/moment/tg.js +128 -0
  2284. package/locales/moment/th.js +76 -0
  2285. package/locales/moment/tk.js +102 -0
  2286. package/locales/moment/tl-ph.js +68 -0
  2287. package/locales/moment/tlh.js +135 -0
  2288. package/locales/moment/tr.js +117 -0
  2289. package/locales/moment/tzl.js +100 -0
  2290. package/locales/moment/tzm-latn.js +65 -0
  2291. package/locales/moment/tzm.js +65 -0
  2292. package/locales/moment/ug-cn.js +122 -0
  2293. package/locales/moment/uk.js +178 -0
  2294. package/locales/moment/ur.js +93 -0
  2295. package/locales/moment/uz-latn.js +65 -0
  2296. package/locales/moment/uz.js +62 -0
  2297. package/locales/moment/vi.js +91 -0
  2298. package/locales/moment/x-pseudo.js +84 -0
  2299. package/locales/moment/yo.js +64 -0
  2300. package/locales/moment/zh-cn.js +131 -0
  2301. package/locales/moment/zh-hk.js +112 -0
  2302. package/locales/moment/zh-mo.js +111 -0
  2303. package/locales/moment/zh-tw.js +110 -0
  2304. package/locales/moment-timezone/moment-timezone-with-data.js +1582 -0
  2305. package/npm-shrinkwrap.json +17 -0
  2306. package/oAuth/.npmignore +2 -0
  2307. package/oAuth/bundles/index.umd.js +495 -0
  2308. package/oAuth/esm2022/index.mjs +5 -0
  2309. package/oAuth/esm2022/oAuth.service.mjs +51 -0
  2310. package/oAuth/esm2022/oAuth.utils.mjs +423 -0
  2311. package/oAuth/esm2022/public_api.mjs +3 -0
  2312. package/oAuth/fesm2022/index.mjs +478 -0
  2313. package/oAuth/fesm2022/index.mjs.map +1 -0
  2314. package/oAuth/index.d.ts +5 -0
  2315. package/oAuth/oAuth.service.d.ts +19 -0
  2316. package/oAuth/oAuth.utils.d.ts +20 -0
  2317. package/oAuth/package.json +25 -0
  2318. package/oAuth/public_api.d.ts +2 -0
  2319. package/package-lock.json +17 -0
  2320. package/package.json +16 -0
  2321. package/runtime/base/.npmignore +2 -0
  2322. package/runtime/base/bundles/index.umd.js +6031 -0
  2323. package/runtime/base/components/app-component/app.component.d.ts +46 -0
  2324. package/runtime/base/components/app-spinner.component.d.ts +10 -0
  2325. package/runtime/base/components/base-custom-widget.component.d.ts +75 -0
  2326. package/runtime/base/components/base-layout.component.d.ts +30 -0
  2327. package/runtime/base/components/base-page.component.d.ts +83 -0
  2328. package/runtime/base/components/base-partial.component.d.ts +65 -0
  2329. package/runtime/base/components/base-prefab.component.d.ts +61 -0
  2330. package/runtime/base/components/base-spa-page.component.d.ts +85 -0
  2331. package/runtime/base/components/custom-toaster.component.d.ts +19 -0
  2332. package/runtime/base/components/empty-component/empty-page.component.d.ts +18 -0
  2333. package/runtime/base/components/prefab-preview.component.d.ts +23 -0
  2334. package/runtime/base/directives/accessroles.directive.d.ts +40 -0
  2335. package/runtime/base/directives/prefab.directive.d.ts +17 -0
  2336. package/runtime/base/esm2022/components/app-component/app.component.mjs +201 -0
  2337. package/runtime/base/esm2022/components/app-spinner.component.mjs +54 -0
  2338. package/runtime/base/esm2022/components/base-custom-widget.component.mjs +339 -0
  2339. package/runtime/base/esm2022/components/base-layout.component.mjs +76 -0
  2340. package/runtime/base/esm2022/components/base-page.component.mjs +378 -0
  2341. package/runtime/base/esm2022/components/base-partial.component.mjs +221 -0
  2342. package/runtime/base/esm2022/components/base-prefab.component.mjs +253 -0
  2343. package/runtime/base/esm2022/components/base-spa-page.component.mjs +353 -0
  2344. package/runtime/base/esm2022/components/custom-toaster.component.mjs +87 -0
  2345. package/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +66 -0
  2346. package/runtime/base/esm2022/components/prefab-preview.component.mjs +123 -0
  2347. package/runtime/base/esm2022/directives/accessroles.directive.mjs +118 -0
  2348. package/runtime/base/esm2022/directives/prefab.directive.mjs +50 -0
  2349. package/runtime/base/esm2022/guards/auth.guard.mjs +43 -0
  2350. package/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +44 -0
  2351. package/runtime/base/esm2022/guards/page-not-found.guard.mjs +22 -0
  2352. package/runtime/base/esm2022/guards/role.guard.mjs +47 -0
  2353. package/runtime/base/esm2022/index.mjs +5 -0
  2354. package/runtime/base/esm2022/overrides/wm_dom_renderer.mjs +363 -0
  2355. package/runtime/base/esm2022/overrides/wm_shared_styles_host.mjs +85 -0
  2356. package/runtime/base/esm2022/public_api.mjs +49 -0
  2357. package/runtime/base/esm2022/resolves/app-before-load.resolve.mjs +22 -0
  2358. package/runtime/base/esm2022/resolves/app-extension.resolve.mjs +48 -0
  2359. package/runtime/base/esm2022/resolves/app-js.resolve.mjs +39 -0
  2360. package/runtime/base/esm2022/resolves/app-variables.resolve.mjs +31 -0
  2361. package/runtime/base/esm2022/resolves/i18n.resolve.mjs +18 -0
  2362. package/runtime/base/esm2022/resolves/metadata.resolve.mjs +22 -0
  2363. package/runtime/base/esm2022/resolves/security-config.resolve.mjs +26 -0
  2364. package/runtime/base/esm2022/runtime-base.module.mjs +942 -0
  2365. package/runtime/base/esm2022/services/app-defaults.service.mjs +22 -0
  2366. package/runtime/base/esm2022/services/app.manager.service.mjs +522 -0
  2367. package/runtime/base/esm2022/services/app.service.mjs +232 -0
  2368. package/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +86 -0
  2369. package/runtime/base/esm2022/services/http-interceptor.services.mjs +83 -0
  2370. package/runtime/base/esm2022/services/i18n.service.mjs +305 -0
  2371. package/runtime/base/esm2022/services/navigation.service.mjs +307 -0
  2372. package/runtime/base/esm2022/services/pipe-provider.service.mjs +127 -0
  2373. package/runtime/base/esm2022/services/pipe.service.mjs +33 -0
  2374. package/runtime/base/esm2022/services/prefab-manager.service.mjs +95 -0
  2375. package/runtime/base/esm2022/services/spinner.service.mjs +144 -0
  2376. package/runtime/base/esm2022/services/toaster.service.mjs +90 -0
  2377. package/runtime/base/esm2022/types/types.mjs +22 -0
  2378. package/runtime/base/esm2022/util/fragment-monitor.mjs +59 -0
  2379. package/runtime/base/esm2022/util/utils.mjs +24 -0
  2380. package/runtime/base/esm2022/util/wm-route-reuse-strategy.mjs +176 -0
  2381. package/runtime/base/fesm2022/index.mjs +6068 -0
  2382. package/runtime/base/fesm2022/index.mjs.map +1 -0
  2383. package/runtime/base/guards/auth.guard.d.ts +14 -0
  2384. package/runtime/base/guards/can-deactivate-page.guard.d.ts +16 -0
  2385. package/runtime/base/guards/page-not-found.guard.d.ts +12 -0
  2386. package/runtime/base/guards/role.guard.d.ts +17 -0
  2387. package/runtime/base/index.d.ts +5 -0
  2388. package/runtime/base/overrides/wm_dom_renderer.d.ts +33 -0
  2389. package/runtime/base/overrides/wm_shared_styles_host.d.ts +23 -0
  2390. package/runtime/base/package.json +25 -0
  2391. package/runtime/base/public_api.d.ts +48 -0
  2392. package/runtime/base/resolves/app-before-load.resolve.d.ts +11 -0
  2393. package/runtime/base/resolves/app-extension.resolve.d.ts +14 -0
  2394. package/runtime/base/resolves/app-js.resolve.d.ts +15 -0
  2395. package/runtime/base/resolves/app-variables.resolve.d.ts +11 -0
  2396. package/runtime/base/resolves/i18n.resolve.d.ts +9 -0
  2397. package/runtime/base/resolves/metadata.resolve.d.ts +9 -0
  2398. package/runtime/base/resolves/security-config.resolve.d.ts +10 -0
  2399. package/runtime/base/runtime-base.module.d.ts +171 -0
  2400. package/runtime/base/services/app-defaults.service.d.ts +12 -0
  2401. package/runtime/base/services/app.manager.service.d.ts +142 -0
  2402. package/runtime/base/services/app.service.d.ts +70 -0
  2403. package/runtime/base/services/dynamic-component-ref-provider.service.d.ts +26 -0
  2404. package/runtime/base/services/http-interceptor.services.d.ts +17 -0
  2405. package/runtime/base/services/i18n.service.d.ts +58 -0
  2406. package/runtime/base/services/navigation.service.d.ts +45 -0
  2407. package/runtime/base/services/pipe-provider.service.d.ts +31 -0
  2408. package/runtime/base/services/pipe.service.d.ts +12 -0
  2409. package/runtime/base/services/prefab-manager.service.d.ts +25 -0
  2410. package/runtime/base/services/spinner.service.d.ts +49 -0
  2411. package/runtime/base/services/toaster.service.d.ts +23 -0
  2412. package/runtime/base/types/types.d.ts +25 -0
  2413. package/runtime/base/util/fragment-monitor.d.ts +22 -0
  2414. package/runtime/base/util/utils.d.ts +6 -0
  2415. package/runtime/base/util/wm-route-reuse-strategy.d.ts +29 -0
  2416. package/runtime/dynamic/.npmignore +2 -0
  2417. package/runtime/dynamic/app/app.config.d.ts +5 -0
  2418. package/runtime/dynamic/app/app.module.d.ts +37 -0
  2419. package/runtime/dynamic/app/app.routes.d.ts +2 -0
  2420. package/runtime/dynamic/app/components/page-wrapper.component.d.ts +37 -0
  2421. package/runtime/dynamic/app/services/app-extension.service.d.ts +7 -0
  2422. package/runtime/dynamic/app/services/app-js-provider.service.d.ts +10 -0
  2423. package/runtime/dynamic/app/services/app-resource-manager.service.d.ts +10 -0
  2424. package/runtime/dynamic/app/services/app-variables-provider.service.d.ts +12 -0
  2425. package/runtime/dynamic/app/services/component-ref-provider.service.d.ts +17 -0
  2426. package/runtime/dynamic/app/services/customwidget-config-provider.service.d.ts +8 -0
  2427. package/runtime/dynamic/app/services/prefab-config-provider.service.d.ts +10 -0
  2428. package/runtime/dynamic/bundles/index.umd.js +887 -0
  2429. package/runtime/dynamic/esm2022/app/app.config.mjs +141 -0
  2430. package/runtime/dynamic/esm2022/app/app.module.mjs +314 -0
  2431. package/runtime/dynamic/esm2022/app/app.routes.mjs +21 -0
  2432. package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +106 -0
  2433. package/runtime/dynamic/esm2022/app/services/app-extension.service.mjs +24 -0
  2434. package/runtime/dynamic/esm2022/app/services/app-js-provider.service.mjs +25 -0
  2435. package/runtime/dynamic/esm2022/app/services/app-resource-manager.service.mjs +31 -0
  2436. package/runtime/dynamic/esm2022/app/services/app-variables-provider.service.mjs +27 -0
  2437. package/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +266 -0
  2438. package/runtime/dynamic/esm2022/app/services/customwidget-config-provider.service.mjs +22 -0
  2439. package/runtime/dynamic/esm2022/app/services/prefab-config-provider.service.mjs +29 -0
  2440. package/runtime/dynamic/esm2022/index.mjs +5 -0
  2441. package/runtime/dynamic/esm2022/main.mjs +42 -0
  2442. package/runtime/dynamic/esm2022/public_api.mjs +10 -0
  2443. package/runtime/dynamic/fesm2022/index.mjs +950 -0
  2444. package/runtime/dynamic/fesm2022/index.mjs.map +1 -0
  2445. package/runtime/dynamic/index.d.ts +5 -0
  2446. package/runtime/dynamic/main.d.ts +2 -0
  2447. package/runtime/dynamic/package.json +25 -0
  2448. package/runtime/dynamic/public_api.d.ts +9 -0
  2449. package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -0
  2450. package/scripts/d3/d3.min.js +2 -0
  2451. package/scripts/datatable/datatable.js +3769 -0
  2452. package/scripts/iscroll/build/iscroll.js +2091 -0
  2453. package/scripts/jquery-ui/ui/widgets/droppable.js +503 -0
  2454. package/scripts/jquery-ui/ui/widgets/resizable.js +1275 -0
  2455. package/scripts/jquery-ui/ui/widgets/sortable.js +1608 -0
  2456. package/scripts/jquery.ui.touch-punch/jquery.ui.touch-punch.min.js +11 -0
  2457. package/scripts/summernote/dist/summernote-lite.min.js +2 -0
  2458. package/scripts/swipey/swipey.jquery.plugin.js +769 -0
  2459. package/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
  2460. package/security/.npmignore +2 -0
  2461. package/security/bundles/index.umd.js +446 -0
  2462. package/security/esm2022/index.mjs +5 -0
  2463. package/security/esm2022/public_api.mjs +2 -0
  2464. package/security/esm2022/security.service.mjs +439 -0
  2465. package/security/fesm2022/index.mjs +444 -0
  2466. package/security/fesm2022/index.mjs.map +1 -0
  2467. package/security/index.d.ts +5 -0
  2468. package/security/package.json +25 -0
  2469. package/security/public_api.d.ts +1 -0
  2470. package/security/security.service.d.ts +127 -0
  2471. package/swipey/.npmignore +2 -0
  2472. package/swipey/bundles/index.umd.js +54 -0
  2473. package/swipey/esm2022/index.mjs +5 -0
  2474. package/swipey/esm2022/public_api.mjs +2 -0
  2475. package/swipey/esm2022/swipe.animation.mjs +45 -0
  2476. package/swipey/fesm2022/index.mjs +51 -0
  2477. package/swipey/fesm2022/index.mjs.map +1 -0
  2478. package/swipey/index.d.ts +5 -0
  2479. package/swipey/package.json +25 -0
  2480. package/swipey/public_api.d.ts +1 -0
  2481. package/swipey/swipe.animation.d.ts +19 -0
  2482. package/transpiler/.npmignore +2 -0
  2483. package/transpiler/build.d.ts +35 -0
  2484. package/transpiler/bundles/index.umd.js +804 -0
  2485. package/transpiler/esm2022/build.mjs +475 -0
  2486. package/transpiler/esm2022/imports.mjs +318 -0
  2487. package/transpiler/esm2022/index.mjs +5 -0
  2488. package/transpiler/esm2022/public_api.mjs +3 -0
  2489. package/transpiler/fesm2022/index.mjs +799 -0
  2490. package/transpiler/fesm2022/index.mjs.map +1 -0
  2491. package/transpiler/imports.d.ts +2 -0
  2492. package/transpiler/index.d.ts +5 -0
  2493. package/transpiler/package.json +26 -0
  2494. package/transpiler/public_api.d.ts +2 -0
  2495. package/variables/.npmignore +2 -0
  2496. package/variables/advanced-options.d.ts +4 -0
  2497. package/variables/bundles/index.umd.js +3174 -0
  2498. package/variables/constants/variables.constants.d.ts +315 -0
  2499. package/variables/esm2022/advanced-options.mjs +2 -0
  2500. package/variables/esm2022/constants/variables.constants.mjs +333 -0
  2501. package/variables/esm2022/factory/variable-manager.factory.mjs +24 -0
  2502. package/variables/esm2022/factory/variable.factory.mjs +46 -0
  2503. package/variables/esm2022/index.mjs +5 -0
  2504. package/variables/esm2022/manager/action/base-action.manager.mjs +14 -0
  2505. package/variables/esm2022/manager/action/login-action.manager.mjs +180 -0
  2506. package/variables/esm2022/manager/action/logout-action.manager.mjs +77 -0
  2507. package/variables/esm2022/manager/action/navigation-action.manager.mjs +8 -0
  2508. package/variables/esm2022/manager/action/notification-action.manager.mjs +152 -0
  2509. package/variables/esm2022/manager/variable/base-variable.manager.mjs +81 -0
  2510. package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +289 -0
  2511. package/variables/esm2022/model/action/login-action.mjs +25 -0
  2512. package/variables/esm2022/model/action/logout-action.mjs +22 -0
  2513. package/variables/esm2022/model/action/navigation-action.mjs +26 -0
  2514. package/variables/esm2022/model/action/notification-action.mjs +91 -0
  2515. package/variables/esm2022/model/variable/web-socket-variable.mjs +34 -0
  2516. package/variables/esm2022/public_api.mjs +6 -0
  2517. package/variables/esm2022/service/metadata-service/metadata.service.mjs +60 -0
  2518. package/variables/esm2022/service/variables.service.mjs +199 -0
  2519. package/variables/esm2022/util/action/navigation-action.utils.mjs +52 -0
  2520. package/variables/esm2022/util/oAuth.utils.mjs +11 -0
  2521. package/variables/esm2022/util/variable/pagination.utils.mjs +402 -0
  2522. package/variables/esm2022/util/variable/service-variable.utils.mjs +376 -0
  2523. package/variables/esm2022/util/variable/variables.utils.mjs +809 -0
  2524. package/variables/factory/variable-manager.factory.d.ts +3 -0
  2525. package/variables/factory/variable.factory.d.ts +3 -0
  2526. package/variables/fesm2022/index.mjs +3236 -0
  2527. package/variables/fesm2022/index.mjs.map +1 -0
  2528. package/variables/index.d.ts +5 -0
  2529. package/variables/manager/action/base-action.manager.d.ts +4 -0
  2530. package/variables/manager/action/login-action.manager.d.ts +7 -0
  2531. package/variables/manager/action/logout-action.manager.d.ts +4 -0
  2532. package/variables/manager/action/navigation-action.manager.d.ts +4 -0
  2533. package/variables/manager/action/notification-action.manager.d.ts +23 -0
  2534. package/variables/manager/variable/base-variable.manager.d.ts +24 -0
  2535. package/variables/manager/variable/web-socket-variable.manager.d.ts +124 -0
  2536. package/variables/model/action/login-action.d.ts +11 -0
  2537. package/variables/model/action/logout-action.d.ts +10 -0
  2538. package/variables/model/action/navigation-action.d.ts +9 -0
  2539. package/variables/model/action/notification-action.d.ts +25 -0
  2540. package/variables/model/variable/web-socket-variable.d.ts +11 -0
  2541. package/variables/package.json +25 -0
  2542. package/variables/public_api.d.ts +5 -0
  2543. package/variables/service/metadata-service/metadata.service.d.ts +16 -0
  2544. package/variables/service/variables.service.d.ts +57 -0
  2545. package/variables/util/action/navigation-action.utils.d.ts +6 -0
  2546. package/variables/util/oAuth.utils.d.ts +3 -0
  2547. package/variables/util/variable/pagination.utils.d.ts +82 -0
  2548. package/variables/util/variable/service-variable.utils.d.ts +16 -0
  2549. package/variables/util/variable/variables.utils.d.ts +80 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../projects/core/src/enums/enums.ts","../../../projects/core/src/utils/build-utils.ts","../../../projects/core/src/constants/currency-constants.ts","../../../projects/core/src/utils/dom.ts","../../../projects/core/src/utils/wm-project-properties.ts","../../../projects/core/src/utils/id-generator.ts","../../../projects/core/src/utils/expression-parser.ts","../../../projects/core/src/utils/watcher.ts","../../../projects/core/src/types/types.ts","../../../projects/core/src/utils/utils.ts","../../../projects/core/src/utils/event-notifier.ts","../../../projects/core/src/services/viewport.service.ts","../../../projects/core/src/services/constant.service.ts","../../../projects/core/src/services/utils.service.ts","../../../projects/core/src/services/field-type.service.ts","../../../projects/core/src/services/field-widget.service.ts","../../../projects/core/src/services/script-loader.service.ts","../../../projects/core/src/services/user-custom-pipe-manager.service.ts","../../../projects/core/src/services/custom-icons-loader.service.ts","../../../projects/core/src/services/state-persistence.service.ts","../../../projects/core/src/services/pagination.service.ts","../../../projects/core/src/utils/lru-cache.ts","../../../projects/core/src/public_api.ts","../../../projects/core/src/index.ts"],"sourcesContent":["export enum FormWidgetType {\n AUTOCOMPLETE = 'autocomplete',\n CHECKBOX = 'checkbox',\n CHECKBOXSET = 'checkboxset',\n CHIPS = 'chips',\n COLORPICKER = 'colorpicker',\n CURRENCY = 'currency',\n CUSTOMWIDGET = 'custom-widget',\n DATE = 'date',\n DATETIME = 'datetime',\n ICONBUTTONTOGGLE = 'iconbutton-toggle',\n NUMBER = 'number',\n PASSWORD = 'password',\n RADIOSET = 'radioset',\n RATING = 'rating',\n RICHTEXT = 'richtext',\n SELECT = 'select',\n TOGGLE = 'toggle',\n SLIDER = 'slider',\n SWITCH = 'switch',\n TEXT = 'text',\n TEXTAREA = 'textarea',\n TIME = 'time',\n TIMESTAMP = 'timestamp',\n TYPEAHEAD = 'typeahead',\n UPLOAD = 'upload'\n}\n\nexport enum DataType {\n INTEGER = 'integer',\n BIG_INTEGER = 'big_integer',\n SHORT = 'short',\n FLOAT = 'float',\n BIG_DECIMAL = 'big_decimal',\n DOUBLE = 'double',\n LONG = 'long',\n BYTE = 'byte',\n STRING = 'string',\n CHARACTER = 'character',\n TEXT = 'text',\n DATE = 'date',\n TIME = 'time',\n TIMESTAMP = 'timestamp',\n DATETIME = 'datetime',\n LOCALDATETIME = 'localdatetime',\n BOOLEAN = 'boolean',\n LIST = 'list',\n CLOB = 'clob',\n BLOB = 'blob'\n}\n\nexport enum MatchMode {\n BETWEEN = 'between',\n GREATER = 'greaterthanequal',\n LESSER = 'lessthanequal',\n NULL = 'null',\n EMPTY = 'empty',\n NULLOREMPTY = 'nullorempty',\n EQUALS = 'exact'\n}\n\nexport enum DEFAULT_FORMATS {\n DATE = 'yyyy-MM-dd',\n TIME = 'HH:mm:ss',\n TIMESTAMP = 'timestamp',\n DATETIME = 'yyyy-MM-ddTHH:mm:ss',\n LOCALDATETIME = 'yyyy-MM-ddTHH:mm:ss',\n DATETIME_ORACLE = 'yyyy-MM-dd HH:mm:ss',\n DATE_TIME = 'yyyy-MM-dd HH:mm:ss'\n}\n","import {Attribute, Element} from '@angular/compiler';\nimport {FormWidgetType} from '../enums/enums';\nimport {includes, isArray, startsWith} from \"lodash-es\";\n\n// For html upload widget, add events on input tag\nconst getUploadEventTmpl = (attrs, counter?, fieldName?) => {\n let eventTmpl = '';\n attrs.forEach((val, key) => {\n if (key && key.endsWith('.event')) {\n const eventName = key.split('.')[0];\n const counterTl = counter ? `${counter}.` : '';\n eventTmpl = ` ${eventTmpl} (${eventName})=\"${counterTl}triggerUploadEvent($event, '${eventName}', '${fieldName}', row)\" `;\n }\n });\n return eventTmpl;\n};\n\n// Method to get the form widget template\nexport const getFormWidgetTemplate = (widgetType: string, innerTmpl: string, attrs?: Map<string, string>, options: any = {}) => {\n let tmpl;\n const updateOn = attrs.get('updateon');\n const updateOnTmpl = updateOn ? `updateon=\"${updateOn}\"` : '';\n const showineditmode = attrs.get('showineditmode') || attrs.get('showineditmode.bind') || true;\n const showTmpl: string = showineditmode == 'false'? `show=\"${showineditmode}\"`: `show.bind=\"${showineditmode}\"`;\n switch (widgetType) {\n case FormWidgetType.AUTOCOMPLETE:\n case FormWidgetType.TYPEAHEAD:\n tmpl = `<div wmSearch type=\"autocomplete\" debouncetime=\"${attrs.get('debouncetime')}\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.CHECKBOX:\n tmpl = `<div wmCheckbox ${innerTmpl} ${attrs.get('required')==='true' ? 'required=true' : ''} ${showTmpl}></div>`;\n break;\n case FormWidgetType.CHECKBOXSET:\n tmpl = `<ul role=\"group\" wmCheckboxset ${innerTmpl} ${attrs.get('required')==='true' ? 'required=true' : ''} ${showTmpl}></ul>`;\n break;\n case FormWidgetType.CHIPS:\n tmpl = `<ul wmChips debouncetime=\"${attrs.get('debouncetime')}\" ${innerTmpl} ${showTmpl}></ul>`;\n break;\n case FormWidgetType.COLORPICKER:\n tmpl = `<div wmColorPicker ${attrs.get('required')==='true' ? 'required=true' : ''} ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.CURRENCY:\n tmpl = `<div wmCurrency ${attrs.get('required')==='true' ? 'required=true' : ''} ${updateOnTmpl} ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.CUSTOMWIDGET:\n tmpl = `<div wmWidgetContainer customWidgetContainer ${attrs.get('required')==='true' ? 'required=true' : ''} ${updateOnTmpl} ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.DATE:\n tmpl = `<div wmDate ${attrs.get('required')==='true' ? 'required=true' : ''} dataentrymode=\"${attrs.get('dataentrymode')}\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.DATETIME:\n tmpl = `<div wmDateTime ${attrs.get('required')==='true' ? 'required=true' : ''} dataentrymode=\"${attrs.get('dataentrymode')}\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.NUMBER:\n tmpl = `<div wmNumber ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type=\"number\" ${updateOnTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.PASSWORD:\n tmpl = `<wm-input ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type=\"password\" ${updateOnTmpl} ${showTmpl}></wm-input>`;\n break;\n case FormWidgetType.RADIOSET:\n tmpl = `<ul role=\"radiogroup\" wmRadioset ${innerTmpl} ${showTmpl}></ul>`;\n break;\n case FormWidgetType.RATING:\n tmpl = `<div wmRating ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.RICHTEXT:\n tmpl = `<div wmRichTextEditor role=\"textbox\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.SELECT:\n tmpl = `<wm-select ${attrs.get('required')==='true' ? 'required=true' : ''} ${innerTmpl} ${showTmpl}></wm-select>`;\n break;\n case FormWidgetType.TOGGLE:\n tmpl = `<div wmCheckbox ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type=\"toggle\" ${showTmpl}></div>`;\n break;\n case FormWidgetType.ICONBUTTONTOGGLE:\n tmpl = `<div wmCheckbox ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} type=\"button\" ${showTmpl}></div>`;\n break;\n case FormWidgetType.SLIDER:\n tmpl = `<div wmSlider ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.SWITCH:\n tmpl = `<div wmSwitch ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.TEXT:\n const inputType = options.inputType || 'inputtype';\n tmpl = `<wm-input ${innerTmpl} ${attrs.get('required')==='true' ? 'required=true' : ''} type=\"${attrs.get(inputType) || 'text'}\" ${updateOnTmpl} ${showTmpl}></wm-input>`;\n break;\n case FormWidgetType.TEXTAREA:\n tmpl = `<wm-textarea ${innerTmpl} ${attrs.get('required') === 'true' ? 'required=true' : ''} ${updateOnTmpl} ${showTmpl}></wm-textarea>`;\n break;\n case FormWidgetType.TIME:\n tmpl = `<div wmTime ${attrs.get('required')==='true' ? 'required=true' : ''} dataentrymode=\"${attrs.get('dataentrymode')}\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.TIMESTAMP:\n tmpl = `<div wmDateTime ${attrs.get('required') === 'true' ? 'required=true' : ''} dataentrymode=\"${attrs.get('dataentrymode')}\" ${innerTmpl} ${showTmpl}></div>`;\n break;\n case FormWidgetType.UPLOAD:\n const counter = options.counter;\n const pCounter = options.pCounter;\n const uploadProps = options.uploadProps;\n const eventTmpl = getUploadEventTmpl(attrs, counter, uploadProps && uploadProps.name);\n if (uploadProps) {\n tmpl = `<form name=\"${uploadProps.formName}\" ${innerTmpl}>\n <input focus-target class=\"file-upload\" type=\"file\" name=\"${uploadProps.name}\" ${eventTmpl} ${showTmpl}/>\n </form>`;\n } else {\n tmpl = `@if (${counter}.filetype === 'image' && ${counter}.href) {\n <a class=\"form-control-static\" href=\"{{${counter}.href}}\" target=\"_blank\">\n <img style=\"height:2em\" class=\"wi wi-file\" [src]=\"${counter}.href\"/></a>\n }\n @if (${counter}.filetype !== 'image' && ${counter}.href) {\n <a class=\"form-control-static\" target=\"_blank\" href=\"{{${counter}.href}}\">\n <i class=\"wi wi-file\"></i></a>\n }\n <input ${innerTmpl} class=\"app-blob-upload\" [ngClass]=\"{'file-readonly': ${counter}.readonly}\" ${eventTmpl}\n [required]=\"${counter}.required\" type=\"file\" name=\"${attrs.get('key') || attrs.get('name')}_formWidget\" [readonly]=\"${counter}.readonly\"\n [class.hidden]=\"!${pCounter}.isUpdateMode\" [accept]=\"${counter}.permitted\" ${showTmpl}>`;\n }\n break;\n default:\n tmpl = `<wm-input ${innerTmpl} ${attrs.get('required')==='true' ? 'required=true' : ''} type=\"text\" ${updateOnTmpl} ${showTmpl}></wm-input>`;\n break;\n }\n return tmpl;\n};\n\nexport const getRequiredFormWidget = (widgetType): string => {\n switch (widgetType) {\n case FormWidgetType.AUTOCOMPLETE:\n case FormWidgetType.TYPEAHEAD:\n return 'wm-search';\n case FormWidgetType.CHIPS:\n return 'wm-chips';\n case FormWidgetType.COLORPICKER:\n return 'wm-colorpicker';\n case FormWidgetType.CURRENCY:\n return 'wm-currency';\n case FormWidgetType.CUSTOMWIDGET:\n return 'wm-custom-widget';\n case FormWidgetType.DATE:\n return 'wm-date';\n case FormWidgetType.DATETIME:\n case FormWidgetType.TIMESTAMP:\n return 'wm-datetime';\n case FormWidgetType.TIME:\n return 'wm-time';\n case FormWidgetType.RATING:\n return 'wm-rating';\n case FormWidgetType.RICHTEXT:\n return 'wm-richtexteditor';\n case FormWidgetType.SLIDER:\n return 'wm-slider';\n\n case FormWidgetType.CHECKBOXSET:\n return 'wm-checkboxset';\n case FormWidgetType.NUMBER:\n return 'wm-number';\n case FormWidgetType.PASSWORD:\n return 'wm-text';\n case FormWidgetType.RADIOSET:\n return 'wm-radioset';\n case FormWidgetType.SWITCH:\n return 'wm-switch';\n case FormWidgetType.SELECT:\n return 'wm-select';\n case FormWidgetType.TEXTAREA:\n return 'wm-textarea';\n case FormWidgetType.CHECKBOX:\n case FormWidgetType.TOGGLE:\n case FormWidgetType.ICONBUTTONTOGGLE:\n return 'wm-checkbox';\n case FormWidgetType.UPLOAD:\n return 'wm-fileupload';\n default:\n return 'wm-text';\n }\n};\n\n// This mehtod is used to add datasetboundexpr attribute for node\nconst addDatasetBoundExprAttribute = (childNode: Element, attr: Attribute, attrValue: string) => {\n attrValue = attrValue.replace('bind:', '');\n const datasetBoundAttribute = childNode.attrs.find( a => a.name === 'datasetboundexpr');\n if (attr.name === 'dataset' && !datasetBoundAttribute) {\n childNode.attrs.push(new Attribute('datasetboundexpr', attrValue, attr.sourceSpan, attr.keySpan, attr.valueSpan, undefined, undefined));\n }\n};\n\n\n/**\n * exp: User built bind expression\n * To check the custom pipe expressions.\n * If user use the custom pipe expression it will check in the exp. that \"custom\" string exist or not with (:) syntax.\n * Eg: custom:\n * custom :\n */\nexport const checkIsCustomPipeExpression = function(exp){\n let customRegEx = /(custom(\\s*:))/g;\n let matches = exp.match(customRegEx);\n return matches && matches.length;\n}\n\n\n// The bound value is replaced with {{item.fieldname}} here. This is needed by the liveList when compiling inner elements\nexport const updateTemplateAttrs = (rootNode: Element | Array<Element>, parentDataSet: string, widgetName: string, instance: string = '', referenceName: string = 'item') => {\n\n const sanitizedParentDataset = parentDataSet.replace(/([^a-zA-Z0-9.])/g, '\\\\$1');\n const regex = new RegExp('(' + sanitizedParentDataset + ')(\\\\[0\\\\])?(.data\\\\[\\\\$i\\\\])?(.content\\\\[\\\\$i\\\\])?(\\\\[\\\\$i\\\\])?', 'g');\n let currentItemRegEx;\n let currentItemWidgetsRegEx;\n let formWidgetsRegex;\n let nodes: Array<Element>;\n const widgetList = {\n 'wm-list': ['itemclass', 'disableitem', 'dataset']\n };\n\n if (widgetName) {\n currentItemRegEx = new RegExp(`(Widgets.${widgetName}.currentItem)\\\\b`, 'g');\n currentItemWidgetsRegEx = new RegExp(`(Widgets.${widgetName}.currentItemWidgets)\\\\b`, 'g');\n formWidgetsRegex = new RegExp(`(Widgets.(.*).(formWidgets|filterWidgets))\\\\b`, 'g');\n }\n\n if (!isArray(rootNode)) {\n // [WMS-16712],[WMS-16769],[WMS-16805] The markup of root node(table, list, carousel) need to be updated only for the widgets mentioned in widgetList map.\n nodes = widgetList[(rootNode as any).name] ? [rootNode as Element] : ((rootNode as any).children || []) as Array<Element>;\n } else {\n nodes = rootNode as Array<Element>;\n }\n\n nodes.forEach((childNode: Element) => {\n if (childNode.name) {\n const nodeName = childNode.name;\n const parentDataSetLengthRegex = new RegExp('bind:\\\\s*\\\\(*' + parentDataSet + '\\\\)*\\\\.length\\\\)*');\n childNode.attrs.forEach((attr) => {\n // trim the extra spaces in bindings\n let value = attr.value && attr.value.trim();\n if (startsWith(value, 'bind:')) {\n // The markup of root node(table, list, carousel) attributes conatains same dataset variable binding then those attributes need to be updated only for specific properties mentioned in widgetList map.\n if (!widgetList[nodeName] || (widgetList[nodeName] && widgetList[nodeName].indexOf(attr.name) > -1)) {\n // if the attribute value is \"bind:xxxxx.xxxx\", either the dataSet/scopeDataSet has to contain \"xxxx.xxxx\"\n // [WMS-17908]: if child widget contains bind expression as parendataset.length > 0 then dont replace it with item\n if (includes(value, parentDataSet) && value !== 'bind:' + parentDataSet && !parentDataSetLengthRegex.test(value)) {\n value = value.replace('bind:', '');\n addDatasetBoundExprAttribute(childNode, attr, value);\n value = value.replace(regex, referenceName);\n value = 'bind:' + value;\n // Check is this custom bind expression and currentWidgetItem regex\n if(checkIsCustomPipeExpression(value) && currentItemRegEx){\n // Adding the currentItem as last argument for the expression.\n // For the custom pipes(expresion), it will send the currentItem as context.\n value += ':'+ currentItemRegEx.exec(currentItemRegEx.source)[0];\n }\n }\n }\n // Replace item if widget property is bound to livelist currentItem\n if (currentItemRegEx && currentItemRegEx.test(value)) {\n // Change value from 'bind:Widgets.formName.formWidgets.listName.currentItem' to 'bind:Widgets.listName.currentItem'\n if (value.includes('.formWidgets') || value.includes('.filterWidgets')) {\n value = value.replace(formWidgetsRegex, 'Widgets');\n }\n addDatasetBoundExprAttribute(childNode, attr, value);\n value = value.replace(currentItemRegEx, referenceName);\n }\n if (currentItemWidgetsRegEx && currentItemWidgetsRegEx.test(value)) {\n value = value.replace(currentItemWidgetsRegEx, `${instance}currentItemWidgets`);\n }\n\n attr.value = value;\n }\n });\n updateTemplateAttrs(childNode.children as Array<Element>, parentDataSet, widgetName, instance, referenceName);\n }\n });\n};\n\n// If formControlName attribute is present, dont add the ngModel\nexport const getNgModelAttr = attrs => {\n if (attrs.has('formControlName') || attrs.has('formControlName.bind')) {\n return '';\n }\n return 'ngModel';\n};\n\nconst rowActionAttrs = new Map(\n [\n ['display-name', 'caption'],\n ['display-name.bind', 'caption.bind'],\n ['title', 'hint'],\n ['title.bind', 'hint.bind'],\n ['show', 'show'],\n ['show.bind', 'show.bind'],\n ['disabled', 'disabled'],\n ['disabled.bind', 'disabled.bind'],\n ['hyperlink', 'hyperlink'],\n ['hyperlink.bind', 'hyperlink.bind'],\n ['target', 'target'],\n ['conditionalclass.bind', 'conditionalclass.bind'],\n ['conditionalstyle.bind', 'conditionalstyle.bind'],\n ['expandtitle.bind', 'expandtitle.bind'],\n ['collapsetitle.bind', 'collapsetitle.bind']\n ]\n);\n\nexport const getRowActionAttrs = attrs => {\n let tmpl = '';\n attrs.forEach((val, key) => {\n const newAttr = rowActionAttrs.get(key);\n if (newAttr) {\n tmpl += `${newAttr}=\"${val}\" `;\n }\n });\n return tmpl;\n};\n","export const CURRENCY_INFO = {\n 'USD': {\n 'symbol': '$',\n 'name': 'US Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'USD',\n 'name_plural': 'US dollars'\n },\n 'CAD': {\n 'symbol': 'CA$',\n 'name': 'Canadian Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'CAD',\n 'name_plural': 'Canadian dollars'\n },\n 'EUR': {\n 'symbol': '€',\n 'name': 'Euro',\n 'symbol_native': '€',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'EUR',\n 'name_plural': 'euros'\n },\n 'AED': {\n 'symbol': 'AED',\n 'name': 'United Arab Emirates Dirham',\n 'symbol_native': 'د.إ.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'AED',\n 'name_plural': 'UAE dirhams'\n },\n 'AFN': {\n 'symbol': 'Af',\n 'name': 'Afghan Afghani',\n 'symbol_native': '؋',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'AFN',\n 'name_plural': 'Afghan Afghanis'\n },\n 'ALL': {\n 'symbol': 'ALL',\n 'name': 'Albanian Lek',\n 'symbol_native': 'Lek',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'ALL',\n 'name_plural': 'Albanian lekë'\n },\n 'AMD': {\n 'symbol': 'AMD',\n 'name': 'Armenian Dram',\n 'symbol_native': 'դր.',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'AMD',\n 'name_plural': 'Armenian drams'\n },\n 'ARS': {\n 'symbol': 'AR$',\n 'name': 'Argentine Peso',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'ARS',\n 'name_plural': 'Argentine pesos'\n },\n 'AUD': {\n 'symbol': 'AU$',\n 'name': 'Australian Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'AUD',\n 'name_plural': 'Australian dollars'\n },\n 'AZN': {\n 'symbol': 'man.',\n 'name': 'Azerbaijani Manat',\n 'symbol_native': 'ман.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'AZN',\n 'name_plural': 'Azerbaijani manats'\n },\n 'BAM': {\n 'symbol': 'KM',\n 'name': 'Bosnia-Herzegovina Convertible Mark',\n 'symbol_native': 'KM',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BAM',\n 'name_plural': 'Bosnia-Herzegovina convertible marks'\n },\n 'BDT': {\n 'symbol': 'Tk',\n 'name': 'Bangladeshi Taka',\n 'symbol_native': '৳',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BDT',\n 'name_plural': 'Bangladeshi takas'\n },\n 'BGN': {\n 'symbol': 'BGN',\n 'name': 'Bulgarian Lev',\n 'symbol_native': 'лв.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BGN',\n 'name_plural': 'Bulgarian leva'\n },\n 'BHD': {\n 'symbol': 'BD',\n 'name': 'Bahraini Dinar',\n 'symbol_native': 'د.ب.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'BHD',\n 'name_plural': 'Bahraini dinars'\n },\n 'BIF': {\n 'symbol': 'FBu',\n 'name': 'Burundian Franc',\n 'symbol_native': 'FBu',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'BIF',\n 'name_plural': 'Burundian francs'\n },\n 'BND': {\n 'symbol': 'BN$',\n 'name': 'Brunei Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BND',\n 'name_plural': 'Brunei dollars'\n },\n 'BOB': {\n 'symbol': 'Bs',\n 'name': 'Bolivian Boliviano',\n 'symbol_native': 'Bs',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BOB',\n 'name_plural': 'Bolivian bolivianos'\n },\n 'BRL': {\n 'symbol': 'R$',\n 'name': 'Brazilian Real',\n 'symbol_native': 'R$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BRL',\n 'name_plural': 'Brazilian reals'\n },\n 'BWP': {\n 'symbol': 'BWP',\n 'name': 'Botswanan Pula',\n 'symbol_native': 'P',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BWP',\n 'name_plural': 'Botswanan pulas'\n },\n 'BYR': {\n 'symbol': 'BYR',\n 'name': 'Belarusian Ruble',\n 'symbol_native': 'BYR',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'BYR',\n 'name_plural': 'Belarusian rubles'\n },\n 'BZD': {\n 'symbol': 'BZ$',\n 'name': 'Belize Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'BZD',\n 'name_plural': 'Belize dollars'\n },\n 'CDF': {\n 'symbol': 'CDF',\n 'name': 'Congolese Franc',\n 'symbol_native': 'FrCD',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'CDF',\n 'name_plural': 'Congolese francs'\n },\n 'CHF': {\n 'symbol': 'CHF',\n 'name': 'Swiss Franc',\n 'symbol_native': 'CHF',\n 'decimal_digits': 2,\n 'rounding': 0.05,\n 'code': 'CHF',\n 'name_plural': 'Swiss francs'\n },\n 'CLP': {\n 'symbol': 'CL$',\n 'name': 'Chilean Peso',\n 'symbol_native': '$',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'CLP',\n 'name_plural': 'Chilean pesos'\n },\n 'CNY': {\n 'symbol': 'CN¥',\n 'name': 'Chinese Yuan',\n 'symbol_native': 'CN¥',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'CNY',\n 'name_plural': 'Chinese yuan'\n },\n 'COP': {\n 'symbol': 'CO$',\n 'name': 'Colombian Peso',\n 'symbol_native': '$',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'COP',\n 'name_plural': 'Colombian pesos'\n },\n 'CRC': {\n 'symbol': '₡',\n 'name': 'Costa Rican Colón',\n 'symbol_native': '₡',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'CRC',\n 'name_plural': 'Costa Rican colóns'\n },\n 'CVE': {\n 'symbol': 'CV$',\n 'name': 'Cape Verdean Escudo',\n 'symbol_native': 'CV$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'CVE',\n 'name_plural': 'Cape Verdean escudos'\n },\n 'CZK': {\n 'symbol': 'Kč',\n 'name': 'Czech Republic Koruna',\n 'symbol_native': 'Kč',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'CZK',\n 'name_plural': 'Czech Republic korunas'\n },\n 'DJF': {\n 'symbol': 'Fdj',\n 'name': 'Djiboutian Franc',\n 'symbol_native': 'Fdj',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'DJF',\n 'name_plural': 'Djiboutian francs'\n },\n 'DKK': {\n 'symbol': 'Dkr',\n 'name': 'Danish Krone',\n 'symbol_native': 'kr',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'DKK',\n 'name_plural': 'Danish kroner'\n },\n 'DOP': {\n 'symbol': 'RD$',\n 'name': 'Dominican Peso',\n 'symbol_native': 'RD$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'DOP',\n 'name_plural': 'Dominican pesos'\n },\n 'DZD': {\n 'symbol': 'DA',\n 'name': 'Algerian Dinar',\n 'symbol_native': 'د.ج.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'DZD',\n 'name_plural': 'Algerian dinars'\n },\n 'EEK': {\n 'symbol': 'Ekr',\n 'name': 'Estonian Kroon',\n 'symbol_native': 'kr',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'EEK',\n 'name_plural': 'Estonian kroons'\n },\n 'EGP': {\n 'symbol': 'EGP',\n 'name': 'Egyptian Pound',\n 'symbol_native': 'ج.م.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'EGP',\n 'name_plural': 'Egyptian pounds'\n },\n 'ERN': {\n 'symbol': 'Nfk',\n 'name': 'Eritrean Nakfa',\n 'symbol_native': 'Nfk',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'ERN',\n 'name_plural': 'Eritrean nakfas'\n },\n 'ETB': {\n 'symbol': 'Br',\n 'name': 'Ethiopian Birr',\n 'symbol_native': 'Br',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'ETB',\n 'name_plural': 'Ethiopian birrs'\n },\n 'GBP': {\n 'symbol': '£',\n 'name': 'British Pound Sterling',\n 'symbol_native': '£',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'GBP',\n 'name_plural': 'British pounds sterling'\n },\n 'GEL': {\n 'symbol': 'GEL',\n 'name': 'Georgian Lari',\n 'symbol_native': 'GEL',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'GEL',\n 'name_plural': 'Georgian laris'\n },\n 'GHS': {\n 'symbol': 'GH₵',\n 'name': 'Ghanaian Cedi',\n 'symbol_native': 'GH₵',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'GHS',\n 'name_plural': 'Ghanaian cedis'\n },\n 'GNF': {\n 'symbol': 'FG',\n 'name': 'Guinean Franc',\n 'symbol_native': 'FG',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'GNF',\n 'name_plural': 'Guinean francs'\n },\n 'GTQ': {\n 'symbol': 'GTQ',\n 'name': 'Guatemalan Quetzal',\n 'symbol_native': 'Q',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'GTQ',\n 'name_plural': 'Guatemalan quetzals'\n },\n 'HKD': {\n 'symbol': 'HK$',\n 'name': 'Hong Kong Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'HKD',\n 'name_plural': 'Hong Kong dollars'\n },\n 'HNL': {\n 'symbol': 'HNL',\n 'name': 'Honduran Lempira',\n 'symbol_native': 'L',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'HNL',\n 'name_plural': 'Honduran lempiras'\n },\n 'HRK': {\n 'symbol': 'kn',\n 'name': 'Croatian Kuna',\n 'symbol_native': 'kn',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'HRK',\n 'name_plural': 'Croatian kunas'\n },\n 'HUF': {\n 'symbol': 'Ft',\n 'name': 'Hungarian Forint',\n 'symbol_native': 'Ft',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'HUF',\n 'name_plural': 'Hungarian forints'\n },\n 'IDR': {\n 'symbol': 'Rp',\n 'name': 'Indonesian Rupiah',\n 'symbol_native': 'Rp',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'IDR',\n 'name_plural': 'Indonesian rupiahs'\n },\n 'ILS': {\n 'symbol': '₪',\n 'name': 'Israeli New Sheqel',\n 'symbol_native': '₪',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'ILS',\n 'name_plural': 'Israeli new sheqels'\n },\n 'INR': {\n 'symbol': '₹',\n 'name': 'Indian Rupee',\n 'symbol_native': 'টকা',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'INR',\n 'name_plural': 'Indian rupees'\n },\n 'IQD': {\n 'symbol': 'IQD',\n 'name': 'Iraqi Dinar',\n 'symbol_native': 'د.ع.‏',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'IQD',\n 'name_plural': 'Iraqi dinars'\n },\n 'IRR': {\n 'symbol': 'IRR',\n 'name': 'Iranian Rial',\n 'symbol_native': '﷼',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'IRR',\n 'name_plural': 'Iranian rials'\n },\n 'ISK': {\n 'symbol': 'Ikr',\n 'name': 'Icelandic Króna',\n 'symbol_native': 'kr',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'ISK',\n 'name_plural': 'Icelandic krónur'\n },\n 'JMD': {\n 'symbol': 'J$',\n 'name': 'Jamaican Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'JMD',\n 'name_plural': 'Jamaican dollars'\n },\n 'JOD': {\n 'symbol': 'JD',\n 'name': 'Jordanian Dinar',\n 'symbol_native': 'د.أ.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'JOD',\n 'name_plural': 'Jordanian dinars'\n },\n 'JPY': {\n 'symbol': '¥',\n 'name': 'Japanese Yen',\n 'symbol_native': '¥',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'JPY',\n 'name_plural': 'Japanese yen'\n },\n 'KES': {\n 'symbol': 'Ksh',\n 'name': 'Kenyan Shilling',\n 'symbol_native': 'Ksh',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'KES',\n 'name_plural': 'Kenyan shillings'\n },\n 'KHR': {\n 'symbol': 'KHR',\n 'name': 'Cambodian Riel',\n 'symbol_native': '៛',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'KHR',\n 'name_plural': 'Cambodian riels'\n },\n 'KMF': {\n 'symbol': 'CF',\n 'name': 'Comorian Franc',\n 'symbol_native': 'FC',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'KMF',\n 'name_plural': 'Comorian francs'\n },\n 'KRW': {\n 'symbol': '₩',\n 'name': 'South Korean Won',\n 'symbol_native': '₩',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'KRW',\n 'name_plural': 'South Korean won'\n },\n 'KWD': {\n 'symbol': 'KD',\n 'name': 'Kuwaiti Dinar',\n 'symbol_native': 'د.ك.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'KWD',\n 'name_plural': 'Kuwaiti dinars'\n },\n 'KZT': {\n 'symbol': 'KZT',\n 'name': 'Kazakhstani Tenge',\n 'symbol_native': 'тңг.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'KZT',\n 'name_plural': 'Kazakhstani tenges'\n },\n 'LBP': {\n 'symbol': 'LB£',\n 'name': 'Lebanese Pound',\n 'symbol_native': 'ل.ل.‏',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'LBP',\n 'name_plural': 'Lebanese pounds'\n },\n 'LKR': {\n 'symbol': 'SLRs',\n 'name': 'Sri Lankan Rupee',\n 'symbol_native': 'SL Re',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'LKR',\n 'name_plural': 'Sri Lankan rupees'\n },\n 'LTL': {\n 'symbol': 'Lt',\n 'name': 'Lithuanian Litas',\n 'symbol_native': 'Lt',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'LTL',\n 'name_plural': 'Lithuanian litai'\n },\n 'LVL': {\n 'symbol': 'Ls',\n 'name': 'Latvian Lats',\n 'symbol_native': 'Ls',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'LVL',\n 'name_plural': 'Latvian lati'\n },\n 'LYD': {\n 'symbol': 'LD',\n 'name': 'Libyan Dinar',\n 'symbol_native': 'د.ل.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'LYD',\n 'name_plural': 'Libyan dinars'\n },\n 'MAD': {\n 'symbol': 'MAD',\n 'name': 'Moroccan Dirham',\n 'symbol_native': 'د.م.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MAD',\n 'name_plural': 'Moroccan dirhams'\n },\n 'MDL': {\n 'symbol': 'MDL',\n 'name': 'Moldovan Leu',\n 'symbol_native': 'MDL',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MDL',\n 'name_plural': 'Moldovan lei'\n },\n 'MGA': {\n 'symbol': 'MGA',\n 'name': 'Malagasy Ariary',\n 'symbol_native': 'MGA',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'MGA',\n 'name_plural': 'Malagasy Ariaries'\n },\n 'MKD': {\n 'symbol': 'MKD',\n 'name': 'Macedonian Denar',\n 'symbol_native': 'MKD',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MKD',\n 'name_plural': 'Macedonian denari'\n },\n 'MMK': {\n 'symbol': 'MMK',\n 'name': 'Myanma Kyat',\n 'symbol_native': 'K',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'MMK',\n 'name_plural': 'Myanma kyats'\n },\n 'MOP': {\n 'symbol': 'MOP$',\n 'name': 'Macanese Pataca',\n 'symbol_native': 'MOP$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MOP',\n 'name_plural': 'Macanese patacas'\n },\n 'MUR': {\n 'symbol': 'MURs',\n 'name': 'Mauritian Rupee',\n 'symbol_native': 'MURs',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'MUR',\n 'name_plural': 'Mauritian rupees'\n },\n 'MXN': {\n 'symbol': 'MX$',\n 'name': 'Mexican Peso',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MXN',\n 'name_plural': 'Mexican pesos'\n },\n 'MYR': {\n 'symbol': 'RM',\n 'name': 'Malaysian Ringgit',\n 'symbol_native': 'RM',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MYR',\n 'name_plural': 'Malaysian ringgits'\n },\n 'MZN': {\n 'symbol': 'MTn',\n 'name': 'Mozambican Metical',\n 'symbol_native': 'MTn',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'MZN',\n 'name_plural': 'Mozambican meticals'\n },\n 'NAD': {\n 'symbol': 'N$',\n 'name': 'Namibian Dollar',\n 'symbol_native': 'N$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NAD',\n 'name_plural': 'Namibian dollars'\n },\n 'NGN': {\n 'symbol': '₦',\n 'name': 'Nigerian Naira',\n 'symbol_native': '₦',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NGN',\n 'name_plural': 'Nigerian nairas'\n },\n 'NIO': {\n 'symbol': 'C$',\n 'name': 'Nicaraguan Córdoba',\n 'symbol_native': 'C$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NIO',\n 'name_plural': 'Nicaraguan córdobas'\n },\n 'NOK': {\n 'symbol': 'Nkr',\n 'name': 'Norwegian Krone',\n 'symbol_native': 'kr',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NOK',\n 'name_plural': 'Norwegian kroner'\n },\n 'NPR': {\n 'symbol': 'NPRs',\n 'name': 'Nepalese Rupee',\n 'symbol_native': 'नेरू',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NPR',\n 'name_plural': 'Nepalese rupees'\n },\n 'NZD': {\n 'symbol': 'NZ$',\n 'name': 'New Zealand Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'NZD',\n 'name_plural': 'New Zealand dollars'\n },\n 'OMR': {\n 'symbol': 'OMR',\n 'name': 'Omani Rial',\n 'symbol_native': 'ر.ع.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'OMR',\n 'name_plural': 'Omani rials'\n },\n 'PAB': {\n 'symbol': 'B/.',\n 'name': 'Panamanian Balboa',\n 'symbol_native': 'B/.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'PAB',\n 'name_plural': 'Panamanian balboas'\n },\n 'PEN': {\n 'symbol': 'S/.',\n 'name': 'Peruvian Nuevo Sol',\n 'symbol_native': 'S/.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'PEN',\n 'name_plural': 'Peruvian nuevos soles'\n },\n 'PHP': {\n 'symbol': '₱',\n 'name': 'Philippine Peso',\n 'symbol_native': '₱',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'PHP',\n 'name_plural': 'Philippine pesos'\n },\n 'PKR': {\n 'symbol': 'PKRs',\n 'name': 'Pakistani Rupee',\n 'symbol_native': '₨',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'PKR',\n 'name_plural': 'Pakistani rupees'\n },\n 'PLN': {\n 'symbol': 'zł',\n 'name': 'Polish Zloty',\n 'symbol_native': 'zł',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'PLN',\n 'name_plural': 'Polish zlotys'\n },\n 'PYG': {\n 'symbol': '₲',\n 'name': 'Paraguayan Guarani',\n 'symbol_native': '₲',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'PYG',\n 'name_plural': 'Paraguayan guaranis'\n },\n 'QAR': {\n 'symbol': 'QR',\n 'name': 'Qatari Rial',\n 'symbol_native': 'ر.ق.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'QAR',\n 'name_plural': 'Qatari rials'\n },\n 'RON': {\n 'symbol': 'RON',\n 'name': 'Romanian Leu',\n 'symbol_native': 'RON',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'RON',\n 'name_plural': 'Romanian lei'\n },\n 'RSD': {\n 'symbol': 'din.',\n 'name': 'Serbian Dinar',\n 'symbol_native': 'дин.',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'RSD',\n 'name_plural': 'Serbian dinars'\n },\n 'RUB': {\n 'symbol': 'RUB',\n 'name': 'Russian Ruble',\n 'symbol_native': 'руб.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'RUB',\n 'name_plural': 'Russian rubles'\n },\n 'RWF': {\n 'symbol': 'RWF',\n 'name': 'Rwandan Franc',\n 'symbol_native': 'FR',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'RWF',\n 'name_plural': 'Rwandan francs'\n },\n 'SAR': {\n 'symbol': 'SR',\n 'name': 'Saudi Riyal',\n 'symbol_native': 'ر.س.‏',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'SAR',\n 'name_plural': 'Saudi riyals'\n },\n 'SDG': {\n 'symbol': 'SDG',\n 'name': 'Sudanese Pound',\n 'symbol_native': 'SDG',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'SDG',\n 'name_plural': 'Sudanese pounds'\n },\n 'SEK': {\n 'symbol': 'Skr',\n 'name': 'Swedish Krona',\n 'symbol_native': 'kr',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'SEK',\n 'name_plural': 'Swedish kronor'\n },\n 'SGD': {\n 'symbol': 'S$',\n 'name': 'Singapore Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'SGD',\n 'name_plural': 'Singapore dollars'\n },\n 'SOS': {\n 'symbol': 'Ssh',\n 'name': 'Somali Shilling',\n 'symbol_native': 'Ssh',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'SOS',\n 'name_plural': 'Somali shillings'\n },\n 'SYP': {\n 'symbol': 'SY£',\n 'name': 'Syrian Pound',\n 'symbol_native': 'ل.س.‏',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'SYP',\n 'name_plural': 'Syrian pounds'\n },\n 'THB': {\n 'symbol': '฿',\n 'name': 'Thai Baht',\n 'symbol_native': '฿',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'THB',\n 'name_plural': 'Thai baht'\n },\n 'TND': {\n 'symbol': 'DT',\n 'name': 'Tunisian Dinar',\n 'symbol_native': 'د.ت.‏',\n 'decimal_digits': 3,\n 'rounding': 0,\n 'code': 'TND',\n 'name_plural': 'Tunisian dinars'\n },\n 'TOP': {\n 'symbol': 'T$',\n 'name': 'Tongan Paʻanga',\n 'symbol_native': 'T$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'TOP',\n 'name_plural': 'Tongan paʻanga'\n },\n 'TRY': {\n 'symbol': 'TL',\n 'name': 'Turkish Lira',\n 'symbol_native': 'TL',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'TRY',\n 'name_plural': 'Turkish Lira'\n },\n 'TTD': {\n 'symbol': 'TT$',\n 'name': 'Trinidad and Tobago Dollar',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'TTD',\n 'name_plural': 'Trinidad and Tobago dollars'\n },\n 'TWD': {\n 'symbol': 'NT$',\n 'name': 'New Taiwan Dollar',\n 'symbol_native': 'NT$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'TWD',\n 'name_plural': 'New Taiwan dollars'\n },\n 'TZS': {\n 'symbol': 'TSh',\n 'name': 'Tanzanian Shilling',\n 'symbol_native': 'TSh',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'TZS',\n 'name_plural': 'Tanzanian shillings'\n },\n 'UAH': {\n 'symbol': '₴',\n 'name': 'Ukrainian Hryvnia',\n 'symbol_native': '₴',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'UAH',\n 'name_plural': 'Ukrainian hryvnias'\n },\n 'UGX': {\n 'symbol': 'USh',\n 'name': 'Ugandan Shilling',\n 'symbol_native': 'USh',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'UGX',\n 'name_plural': 'Ugandan shillings'\n },\n 'UYU': {\n 'symbol': '$U',\n 'name': 'Uruguayan Peso',\n 'symbol_native': '$',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'UYU',\n 'name_plural': 'Uruguayan pesos'\n },\n 'UZS': {\n 'symbol': 'UZS',\n 'name': 'Uzbekistan Som',\n 'symbol_native': 'UZS',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'UZS',\n 'name_plural': 'Uzbekistan som'\n },\n 'VEF': {\n 'symbol': 'Bs.F.',\n 'name': 'Venezuelan Bolívar',\n 'symbol_native': 'Bs.F.',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'VEF',\n 'name_plural': 'Venezuelan bolívars'\n },\n 'VND': {\n 'symbol': '₫',\n 'name': 'Vietnamese Dong',\n 'symbol_native': '₫',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'VND',\n 'name_plural': 'Vietnamese dong'\n },\n 'XAF': {\n 'symbol': 'FCFA',\n 'name': 'CFA Franc BEAC',\n 'symbol_native': 'FCFA',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'XAF',\n 'name_plural': 'CFA francs BEAC'\n },\n 'XOF': {\n 'symbol': 'CFA',\n 'name': 'CFA Franc BCEAO',\n 'symbol_native': 'CFA',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'XOF',\n 'name_plural': 'CFA francs BCEAO'\n },\n 'YER': {\n 'symbol': 'YR',\n 'name': 'Yemeni Rial',\n 'symbol_native': 'ر.ي.‏',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'YER',\n 'name_plural': 'Yemeni rials'\n },\n 'ZAR': {\n 'symbol': 'R',\n 'name': 'South African Rand',\n 'symbol_native': 'R',\n 'decimal_digits': 2,\n 'rounding': 0,\n 'code': 'ZAR',\n 'name_plural': 'South African rand'\n },\n 'ZMK': {\n 'symbol': 'ZK',\n 'name': 'Zambian Kwacha',\n 'symbol_native': 'ZK',\n 'decimal_digits': 0,\n 'rounding': 0,\n 'code': 'ZMK',\n 'name_plural': 'Zambian kwachas'\n }\n};","const $RAF = window.requestAnimationFrame;\nconst $RAFQueue = [];\n\nconst invokeLater = fn => {\n if (!$RAFQueue.length) {\n $RAF(() => {\n $RAFQueue.forEach(f => f());\n $RAFQueue.length = 0;\n });\n }\n $RAFQueue.push(fn);\n};\n\nexport const appendNode = (node: HTMLElement, parent: HTMLElement, sync?: boolean) => {\n const task = () => parent.appendChild(node);\n sync ? task() : invokeLater(task);\n};\n\nexport const insertBefore = (node: HTMLElement, ref: HTMLElement, sync?: boolean) => {\n const task = () => ref.parentNode.insertBefore(node, ref);\n sync ? task() : invokeLater(task);\n};\n\nexport const insertAfter = (node: HTMLElement, ref: HTMLElement, sync?: boolean) => {\n const task = () => ref.parentNode.insertBefore(node, ref.nextSibling);\n sync ? task() : invokeLater(task);\n};\n\nexport const removeNode = (node: HTMLElement, sync?: boolean) => {\n const task = () => node.remove();\n sync ? task() : invokeLater(task);\n};\n\nexport const removeClass = (node: HTMLElement, ov: string, sync?: boolean) => {\n ov = ov || '';\n const task = c => node.classList.remove(c);\n ov.split(' ').forEach(c => {\n if (c.length) {\n sync ? task(c) : invokeLater(() => task(c));\n }\n });\n};\n\nexport const addClass = (node: HTMLElement, nv: string, sync?: boolean) => {\n nv = nv || '';\n const task = c => node.classList.add(c);\n nv.split(' ').forEach(c => {\n if (c.length) {\n sync ? task(c) : invokeLater(() => task(c));\n }\n });\n};\n\nexport const switchClass = (node: HTMLElement, toAdd: string = '', toRemove: string = '', sync?: boolean) => {\n // After NG15 upgrade ng-invalid class is added even the field is valid, so we are removing the ng-invalid manually\n const isNgUntouchedValid = node.classList.contains('ng-untouched') && node.classList.contains('ng-valid');\n // Detect Angular's initial form state where the field has 'ng-invalid', 'ng-pristine', and 'ng-untouched' before user interaction.\n const isInitialInvalidState = toAdd.includes('ng-untouched') && toAdd.includes('ng-pristine') && toAdd.includes('ng-invalid');\n if((isNgUntouchedValid && toAdd.includes('ng-untouched') && toAdd.includes('ng-invalid')) || isInitialInvalidState) {\n toAdd = toAdd.replace('ng-invalid', '');\n }\n removeClass(node, toRemove, sync);\n addClass(node, toAdd, sync);\n};\n\nexport const toggleClass = (node: HTMLElement, cls: string, condition: boolean, sync?: boolean) => {\n if (condition) {\n addClass(node, cls, sync);\n } else {\n removeClass(node, cls, sync);\n }\n};\n\nexport const setCSS = (node: HTMLElement, cssName: string, val?: string | number, sync?: boolean) => {\n const task = () => node.style[cssName] = val;\n sync ? task() : invokeLater(task);\n};\n\nexport const setCSSFromObj = (node: HTMLElement, cssObj: any, sync?: boolean) => {\n const keys = Object.keys(cssObj || {});\n keys.forEach(key => setCSS(node, key, cssObj[key], sync));\n};\n\nexport const setProperty = (node: HTMLElement, propName: string, val: any, sync?: boolean) => {\n const task = () => node[propName] = val;\n sync ? task() : invokeLater(task);\n};\n\nexport const setAttr = (node: HTMLElement, attrName: string, val: any, sync?: boolean) => {\n const task = () => {\n if (node instanceof Element) {\n // Handle tabindex specifically - ensure it's a valid string representation\n if (attrName === 'tabindex') {\n // Convert to string, handling 0, null, undefined, and NaN\n if (val === null || val === undefined || (typeof val === 'number' && isNaN(val))) {\n node.removeAttribute(attrName);\n } else {\n node.setAttribute(attrName, String(val));\n }\n } else {\n node.setAttribute(attrName, val);\n }\n }\n };\n sync ? task() : invokeLater(task);\n};\n\nexport const setHtml = (node: HTMLElement, html: string, sync?: boolean) => {\n const task = () => node.innerHTML = html;\n sync ? task() : invokeLater(task);\n};\n\nexport const removeAttr = (node: HTMLElement, attrName: string, sync?: boolean) => {\n const task = () => node.removeAttribute(attrName);\n sync ? task() : invokeLater(task);\n};\n\nexport const createElement = (nodeType: string, attrs: any, sync?: boolean): HTMLElement => {\n const node = document.createElement(nodeType);\n\n if (attrs) {\n Object.keys(attrs).forEach(attrName => {\n setAttr(node, attrName, attrs[attrName], sync);\n });\n }\n return node;\n};\n\n// for width and height if a numeric value is specified return in px\n// else return the same value\nexport const toDimension = (v: string | number) => {\n // @ts-ignore\n if (v == +v) {\n return `${v}px`;\n }\n return v;\n};\n","const properties: any = {};\nconst previewProp: any ={};\ndeclare const window;\ndeclare const _WM_APP_PROPERTIES;\n\nexport function getWmProjectProperties() {\n if (window._WM_APP_PROPERTIES) {\n return window._WM_APP_PROPERTIES;\n } else if(typeof _WM_APP_PROPERTIES !== \"undefined\") {\n return _WM_APP_PROPERTIES;\n } else {\n return properties;\n }\n}\n\nexport function setWmProjectProperties(props: any) {\n Object.setPrototypeOf(properties, props);\n}\nexport function setPreviewProperties(props: any) {\n Object.assign(previewProp, props);\n}\nexport function getPreviewProperties() {\n const fontConfig = previewProp.fontConfig || '';\n const cssPaths = [...fontConfig.matchAll(/\"csspath\":\\s*\"([^\"]+)\"/g)]\n .map(match => match[1]);\n\n properties.default = {\n baseFont: '',\n fonts: cssPaths.map(csspath => ({ csspath }))\n };\n\n return properties;\n}\n","function* idGenerator(token) {\n let id = 1;\n while (1) {\n yield `${token}${id++}`;\n }\n}\n\nexport class IDGenerator {\n private generator: Iterator<any>;\n\n constructor(key: string) {\n this.generator = idGenerator(key);\n }\n\n public nextUid(): string {\n return this.generator.next().value;\n }\n}\n","import {\n Binary,\n BindingPipe,\n Call,\n Chain,\n Conditional,\n ImplicitReceiver,\n KeyedRead,\n Lexer,\n LiteralArray,\n LiteralMap,\n LiteralPrimitive,\n Parser,\n PrefixNot,\n PropertyRead,\n PropertyWrite,\n Unary\n} from '@angular/compiler';\nimport {get} from \"lodash-es\";\n\nconst isDef = v => v !== void 0;\nconst ifDef = (v, d) => v === void 0 ? d : v;\nconst plus = (a, b) => void 0 === a ? b : void 0 === b ? a : a + b;\nconst minus = (a, b) => ifDef(a, 0) - ifDef(b, 0);\nconst noop = () => {};\n\nexport type ParseExprResult = (data?: any, locals?: any) => any;\n\nconst exprFnCache = new Map();\nconst eventFnCache = new Map();\nconst purePipes = new Map();\n\nconst primitiveEquals = (a, b) => {\n if (typeof a === 'object' || typeof b === 'object') {\n return false;\n }\n if (a !== a && b !== b) { // NaN case\n return true;\n }\n return a === b;\n};\n\nconst detectChanges = (ov, nv) => {\n const len = nv.length;\n let hasChange = len > 10;\n switch (len) {\n case 10:\n hasChange = !primitiveEquals(ov[9], nv[9]);\n if (hasChange) {\n break;\n }\n case 9:\n hasChange = !primitiveEquals(ov[8], nv[8]);\n if (hasChange) {\n break;\n }\n case 8:\n hasChange = !primitiveEquals(ov[7], nv[7]);\n if (hasChange) {\n break;\n }\n case 7:\n hasChange = !primitiveEquals(ov[6], nv[6]);\n if (hasChange) {\n break;\n }\n case 6:\n hasChange = !primitiveEquals(ov[5], nv[5]);\n if (hasChange) {\n break;\n }\n case 5:\n hasChange = !primitiveEquals(ov[4], nv[4]);\n if (hasChange) {\n break;\n }\n case 4:\n hasChange = !primitiveEquals(ov[3], nv[3]);\n if (hasChange) {\n break;\n }\n case 3:\n hasChange = !primitiveEquals(ov[2], nv[2]);\n if (hasChange) {\n break;\n }\n case 2:\n hasChange = !primitiveEquals(ov[1], nv[1]);\n if (hasChange) {\n break;\n }\n case 1:\n hasChange = !primitiveEquals(ov[0], nv[0]);\n if (hasChange) {\n break;\n }\n }\n return hasChange;\n};\n\nconst getPurePipeVal = (pipe, cache, identifier, ...args) => {\n let lastResult = cache.get(identifier);\n let result;\n if (lastResult) {\n const isModified = detectChanges(lastResult.args, args);\n if (!isModified) {\n return lastResult.result;\n }\n }\n result = pipe.transform(...args);\n lastResult = {args, result};\n cache.set(identifier, lastResult);\n return result;\n};\n\nconst STR_ESCAPE_REGEX = /[^ a-zA-Z0-9]/g;\n\nconst stringEscapeFn = str => {\n return '\\\\u' + ('0000' + str.charCodeAt(0).toString(16)).slice(-4);\n};\n\nclass ASTCompiler {\n ast; // ast to be compiled\n declarations; // variable names\n stmts; // function body statements\n pipes; // used pipes\n vIdx; // variable name index\n cAst; // current AST node in the process\n cStmts;\n pipeNameVsIsPureMap;\n exprType: ExpressionType;\n\n constructor(ast, exprType, pipeNameVsIsPureMap?) {\n this.ast = ast;\n this.declarations = [];\n this.stmts = [];\n this.pipes = [];\n this.vIdx = 0;\n this.exprType = exprType;\n this.pipeNameVsIsPureMap = pipeNameVsIsPureMap;\n }\n\n createVar() {\n const v = `v${this.vIdx++}`;\n this.declarations.push(v);\n return v;\n }\n\n processImplicitReceiver() {\n return 'ctx';\n }\n\n processLiteralPrimitive() {\n const ast = this.cAst;\n return typeof (ast.value) === 'string' ? `\"${ast.value.replace(/\"/g, '\\\"').replace(STR_ESCAPE_REGEX, stringEscapeFn)}\"` : ast.value;\n }\n\n processLiteralArray() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const v = this.createVar();\n const s = [];\n for (const item of ast.expressions) {\n s.push(this.build(item, stmts));\n }\n stmts.push(`${v}=[${s.join(',')}]`);\n return v;\n }\n\n processLiteralMap() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const v = this.createVar();\n const _values = [];\n for (const _value of ast.values) {\n _values.push(this.build(_value, stmts));\n }\n stmts.push(`${v}={${ast.keys.map((k, i) => `'${k.key}':${_values[i]}`)}}`);\n return v;\n }\n\n processPropertyRead() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const r = this.build(ast.receiver, stmts);\n const v = this.createVar();\n stmts.push(`${v}=${r}&&${r}.${ast.name}`);\n return v;\n }\n\n processKeyedRead() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const k = this.build(ast.key, stmts);\n const o = this.build(ast.receiver, stmts);\n const v = this.createVar();\n stmts.push(`${v}=${o}&&${o}[${k}]`);\n return v;\n }\n\n processPrefixNot() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const r = this.build(ast.expression, stmts);\n stmts.push(`${r}=!${r}`);\n return r;\n }\n\n handleBinaryPlus_Minus() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const l = this.build(ast.left, stmts);\n const r = this.build(ast.right, stmts);\n const v = this.createVar();\n const m = ast.operation === '+' ? '_plus' : '_minus';\n stmts.push(`${v}=${m}(${l},${r})`);\n return v;\n }\n\n handleBinaryAND_OR() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const _s1 = [];\n const _sl = [];\n const _sr = [];\n const l = this.build(ast.left, _sl);\n const r = this.build(ast.right, _sr);\n\n const v = this.createVar();\n\n if (ast.operation === '&&') {\n _s1.push(\n _sl.join(';'),\n `;${v}=false`,\n `;if(${l}){`,\n _sr.join(';'),\n `;${v}=${r};`,\n `}`\n );\n } else {\n _s1.push(\n _sl.join(';'),\n `;${v}=${l}`,\n `;if(!${l}){`,\n _sr.join(';'),\n `;${v}=${r};`,\n `}`\n );\n }\n stmts.push(_s1.join(''));\n return v;\n }\n\n handleBinaryDefault() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const l = this.build(ast.left, stmts);\n const r = this.build(ast.right, stmts);\n const v = this.createVar();\n stmts.push(`${v}=${l}${ast.operation}${r}`);\n return v;\n }\n\n processBinary() {\n const ast = this.cAst;\n const op = ast.operation;\n if (op === '+' || op === '-') {\n return this.handleBinaryPlus_Minus();\n }\n if (op === '&&' || op === '||') {\n return this.handleBinaryAND_OR();\n }\n\n return this.handleBinaryDefault();\n }\n\n processUnary() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const e = this.build(ast.expr, stmts);\n const v = this.createVar();\n stmts.push(`${v}=${ast.operator}${e}`);\n return v;\n }\n\n processConditional() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const condition = this.build(ast.condition, stmts);\n const v = this.createVar();\n const _s1 = [];\n const _s2 = [];\n const _s3 = [];\n const trueExp = this.build(ast.trueExp, _s2);\n const falseExp = this.build(ast.falseExp, _s3);\n\n _s1.push(\n `if(${condition}){`,\n _s2.join(';'),\n `;${v}=${trueExp};`,\n `}else{`,\n _s3.join(';'),\n `;${v}=${falseExp};`,\n `}`\n );\n\n stmts.push(_s1.join(' '));\n return v;\n }\n\n processMethodCall() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const _args = [];\n for (const arg of ast.args) {\n _args.push(this.build(arg, stmts));\n }\n const fn = this.build(ast.receiver, stmts);\n const v = this.createVar();\n const isImplicitReceiver = ast.receiver instanceof ImplicitReceiver || (ast.receiver instanceof PropertyRead && ast.receiver?.receiver instanceof ImplicitReceiver);\n const context = stmts[stmts.length - 1].split('&&')[0].split('=')[1];\n stmts.push(`${v}= ${fn}&&${fn}${isImplicitReceiver ? '.bind(_ctx)' : `.bind(${context})`}(${_args.join(',')})`);\n return v;\n }\n\n processChain() {\n const ast = this.cAst;\n return ast.expressions.map(e => this.build(e)).join(';');\n }\n\n processPropertyWrite() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n let receiver, lhs;\n if (ast.receiver instanceof ImplicitReceiver) {\n lhs = `_ctx.${ast.name}`;\n } else {\n receiver = this.build(ast.receiver, stmts);\n lhs = `${receiver}${receiver.length ? '.' : ''}${ast.name}`;\n }\n\n const rhs = this.build(ast.value, stmts);\n stmts.push(`${lhs}=${rhs}`);\n }\n\n processPipe() {\n const ast = this.cAst;\n const stmts = this.cStmts;\n const t = this.createVar();\n const _args = [];\n const _s1 = [];\n const _s2 = [];\n const exp = this.build(ast.exp, stmts);\n for (const arg of ast.args) {\n _args.push(this.build(arg, _s2));\n }\n\n const p = `_p${this.pipes.length}`;\n this.pipes.push([ast.name, p]);\n\n _args.unshift(exp);\n\n _s1.push(\n _s2.length ? _s2.join(';') + ';' : '',\n this.pipeNameVsIsPureMap.get(ast.name) ? `${t}=getPPVal(${p},_ppc,\"${p}\",${_args})` : `${t}=${p}.transform(${_args})`\n );\n\n stmts.push(_s1.join(''));\n return t;\n }\n\n build(ast, cStmts?) {\n this.cAst = ast;\n this.cStmts = cStmts || this.stmts;\n\n if (ast instanceof ImplicitReceiver) {\n return this.processImplicitReceiver();\n } else if (ast instanceof LiteralPrimitive) {\n return this.processLiteralPrimitive();\n } else if (ast instanceof LiteralArray) {\n return this.processLiteralArray();\n } else if (ast instanceof LiteralMap) {\n return this.processLiteralMap();\n } else if (ast instanceof PropertyRead) {\n return this.processPropertyRead();\n } else if (ast instanceof PropertyWrite) {\n return this.processPropertyWrite();\n } else if (ast instanceof KeyedRead) {\n return this.processKeyedRead();\n } else if (ast instanceof PrefixNot) {\n return this.processPrefixNot();\n } else if (ast instanceof Unary) {\n return this.processUnary();\n } else if (ast instanceof Binary) {\n return this.processBinary();\n } else if (ast instanceof Conditional) {\n return this.processConditional();\n } else if (ast instanceof Call) {\n return this.processMethodCall();\n } else if (ast instanceof Chain) {\n return this.processChain();\n } else if (ast instanceof BindingPipe) {\n return this.processPipe();\n }\n }\n\n extendCtxWithLocals() {\n const v1 = this.createVar();\n this.stmts.push(\n `${v1}=Object.assign({}, locals)`,\n `Object.setPrototypeOf(${v1}, _ctx)`,\n `ctx=${v1}`\n );\n }\n\n fnBody() {\n this.declarations.push('ctx');\n return '\"use strict\";\\nvar ' + this.declarations.join(',') + ';\\n' + this.stmts.join(';');\n }\n\n fnArgs() {\n const args = ['_plus', '_minus', '_isDef'];\n\n if (this.exprType === ExpressionType.Binding) {\n args.push('getPPVal', '_ppc');\n for (const [, pipeVar] of this.pipes) {\n args.push(pipeVar);\n }\n }\n\n args.push('_ctx', 'locals');\n\n return args.join(',');\n }\n\n addReturnStmt(result) {\n // if (this.exprType === ExpressionType.Binding) {\n this.stmts.push(`return ${result};`);\n // }\n }\n\n cleanup() {\n this.ast = this.cAst = this.stmts = this.cStmts = this.declarations = this.pipes = this.pipeNameVsIsPureMap = undefined;\n }\n\n compile(defOnly?) {\n this.extendCtxWithLocals();\n this.addReturnStmt(this.build(this.ast));\n if (defOnly) {\n return {fnBody: this.fnBody(), fnArgs: this.fnArgs(), pipes: this.pipes};\n }\n const fn = new Function(this.fnArgs(), this.fnBody());\n let boundFn;\n if (this.exprType === ExpressionType.Binding) {\n boundFn = fn.bind(undefined, plus, minus, isDef, getPurePipeVal);\n boundFn.usedPipes = this.pipes.slice(0); // clone\n } else {\n boundFn = fn.bind(undefined, plus, minus, isDef);\n }\n\n this.cleanup();\n return boundFn;\n }\n}\n\nconst nullPipe = () => {\n return {\n transform: noop\n };\n};\n\nlet _cspEnabled;\nconst isCSPEnabled = () => {\n if(typeof _cspEnabled !== 'undefined') {\n return _cspEnabled;\n }\n try {\n new Function();\n _cspEnabled = false;\n } catch(e) {\n _cspEnabled = true;\n }\n return _cspEnabled;\n};\n\nlet pipeProvider;\n\nexport function setPipeProvider(_pipeProvider) {\n pipeProvider = _pipeProvider;\n}\n\nenum ExpressionType {\n Binding,\n Action\n}\n\nexport function $parseExpr(expr: string, defOnly?: boolean): ParseExprResult {\n\n if (!pipeProvider) {\n return noop;\n }\n\n if (typeof (expr) !== 'string') {\n return noop;\n }\n\n expr = expr.trim();\n\n if (expr.endsWith(';')) {\n expr = expr.slice(0, -1); // remove the trailing semicolon\n }\n\n if (!expr.length) {\n return noop;\n }\n\n let fn = exprFnCache.get(expr);\n\n if (fn) {\n return fn;\n }\n\n let boundFn;\n if (!defOnly) {\n boundFn = getFnForBindExpr(expr);\n }\n\n // fallback to generate function in runtime. This will break if CSP is enabled\n if (!boundFn) {\n // If CSP enabled, function def not found from the generated fn expressions for the page.\n // Handle bind expressions used internally inside WM components. e.g. wmAnchor used inside nav.comp.html\n if (isCSPEnabled()) {\n boundFn = function(ctx, locals) {\n // handle internal bindings for wm widgets used inside a component\n let _ctx = Object.assign({}, locals);\n Object.setPrototypeOf(_ctx, ctx);\n return get(_ctx, expr);\n };\n } else {\n const parser = new Parser(new Lexer);\n const ast = parser.parseBinding(expr, '',0);\n\n if (ast.errors.length) {\n fn = noop;\n boundFn = fn;\n } else {\n const pipeNameVsIsPureMap = pipeProvider.getPipeNameVsIsPureMap();\n const astCompiler = new ASTCompiler(ast.ast, ExpressionType.Binding, pipeNameVsIsPureMap);\n fn = astCompiler.compile(defOnly);\n if (defOnly) {\n return fn;\n }\n\n if (fn.usedPipes.length) {\n const pipeArgs = [];\n let hasPurePipe = false;\n for (const [pipeName] of fn.usedPipes) {\n const pipeInfo = pipeProvider.meta(pipeName);\n let pipeInstance;\n if (!pipeInfo) {\n pipeInstance = nullPipe;\n } else {\n if (pipeInfo.pure) {\n hasPurePipe = true;\n pipeInstance = purePipes.get(pipeName);\n }\n\n if (!pipeInstance) {\n pipeInstance = pipeProvider.getInstance(pipeName);\n }\n\n if (pipeInfo.pure) {\n purePipes.set(pipeName, pipeInstance);\n }\n }\n pipeArgs.push(pipeInstance);\n }\n\n pipeArgs.unshift(hasPurePipe ? new Map() : undefined);\n boundFn = fn.bind(undefined, ...pipeArgs);\n } else {\n boundFn = fn.bind(undefined, undefined);\n }\n }\n }\n }\n\n exprFnCache.set(expr, boundFn);\n\n return boundFn;\n}\n\nfunction simpleFunctionEvaluator(expr, ctx, locals) {\n let _ctx = Object.assign({}, locals);\n Object.setPrototypeOf(_ctx, ctx);\n\n let parts = expr.split('(');\n let fnName = parts[0];\n let computedFn = get(ctx, fnName);\n\n if (computedFn) {\n let args = parts[1].replace(')', '');\n args = args.split(',');\n let computedArgs = [];\n args.forEach((arg)=> {\n arg = arg && arg.trim();\n computedArgs.push(get(_ctx, arg));\n });\n return computedFn.bind(_ctx)(...computedArgs);\n }\n}\n\nexport function $parseEvent(expr, defOnly?): ParseExprResult {\n if (typeof (expr) !== 'string') {\n return noop;\n }\n\n expr = expr.trim();\n\n if (!expr.length) {\n return noop;\n }\n\n let fn = eventFnCache.get(expr);\n\n if (fn) {\n return fn;\n }\n\n if (!defOnly) {\n fn = getFnForEventExpr(expr);\n }\n\n // fallback to generate function in runtime. This will break if CSP is enabled\n if(!fn) {\n if (isCSPEnabled()) {\n fn = simpleFunctionEvaluator.bind(undefined, expr);\n } else {\n const parser = new Parser(new Lexer);\n const ast = parser.parseAction(expr, '', 0);\n\n if (ast.errors.length) {\n return noop;\n }\n const astCompiler = new ASTCompiler(ast.ast, ExpressionType.Action);\n fn = astCompiler.compile(defOnly);\n }\n }\n\n eventFnCache.set(expr, fn);\n return fn;\n}\n\nconst fnNameMap = new Map();\n\nexport const registerFnByExpr = (expr, fn, usedPipes?) => {\n fn.usedPipes = usedPipes || [];\n fnNameMap.set(expr, fn);\n}\n\nexport const getFnByExpr = (expr) => fnNameMap.get(expr)\n\nconst fnExecutor = (expr, exprType) => {\n let fn = getFnByExpr(expr);\n if (!fn) {\n return;\n }\n const usedPipes = fn.usedPipes || [];\n\n if(exprType === ExpressionType.Binding) {\n fn = fn.bind(undefined, plus, minus, isDef, getPurePipeVal);\n } else {\n fn = fn.bind(undefined, plus, minus, isDef);\n }\n\n if (usedPipes.length) {\n const pipeArgs = [];\n let hasPurePipe = false;\n for (const [pipeName] of usedPipes) {\n const pipeInfo = pipeProvider.meta(pipeName);\n let pipeInstance;\n if (!pipeInfo) {\n pipeInstance = nullPipe;\n } else {\n if (pipeInfo.pure) {\n hasPurePipe = true;\n pipeInstance = purePipes.get(pipeName);\n }\n\n if (!pipeInstance) {\n pipeInstance = pipeProvider.getInstance(pipeName);\n }\n\n if (pipeInfo.pure) {\n purePipes.set(pipeName, pipeInstance);\n }\n }\n pipeArgs.push(pipeInstance);\n }\n\n pipeArgs.unshift(hasPurePipe ? new Map() : undefined);\n fn = fn.bind(undefined, ...pipeArgs);\n } else {\n if (exprType === ExpressionType.Binding) {\n fn = fn.bind(undefined, undefined);\n }\n }\n\n return fn;\n}\n\nexport const getFnForBindExpr = (expr) => {\n return fnExecutor(expr, ExpressionType.Binding);\n}\n\nexport const getFnForEventExpr = (expr) => {\n return fnExecutor(expr, ExpressionType.Action);\n}\n","import { IDGenerator } from './id-generator';\n\nimport { $parseExpr } from './expression-parser';\nimport { findValueOf } from './utils';\nimport {clone, flatten, isArray, isEqual, isObject} from \"lodash-es\";\n\nconst registry = new Map<string, any>();\n\nconst watchIdGenerator = new IDGenerator('watch-id-');\n\nexport const FIRST_TIME_WATCH = {};\n\nObject.freeze(FIRST_TIME_WATCH);\n\nexport const isFirstTimeChange = v => v === FIRST_TIME_WATCH;\n\nlet muted = false;\nlet appRef;\n\nexport const debounce = (fn: Function, wait: number = 50) => {\n let timeout;\n return (...args) => {\n window['__zone_symbol__clearTimeout'](timeout);\n timeout = window['__zone_symbol__setTimeout'](() => fn(...args), wait);\n };\n};\n\nexport const muteWatchers = () => {\n muted = true;\n};\n\nexport const unMuteWatchers = () => {\n muted = false;\n $invokeWatchers(true);\n};\n\nconst arrayConsumer = (listenerFn, restExpr, newVal, oldVal) => {\n let data = newVal,\n formattedData;\n\n if (isArray(data)) {\n formattedData = data.map(function (datum) {\n return findValueOf(datum, restExpr);\n });\n\n // If resulting structure is an array of array, flatten it\n if (isArray(formattedData[0])) {\n formattedData = flatten(formattedData);\n }\n\n listenerFn(formattedData, oldVal);\n }\n};\n\nconst getUpdatedWatcInfo = (expr, acceptsArray, listener) => {\n // listener doesn't accept array\n // replace all `[$i]` with `[0]` and return the expression\n let regex = /\\[\\$i\\]/g,\n $I = '[$i]',\n $0 = '[0]';\n if (!acceptsArray) {\n return {\n 'expr' : expr.replace(regex, $0),\n 'listener' : listener\n };\n }\n\n // listener accepts array\n // replace all except the last `[$i]` with `[0]` and return the expression.\n var index = expr.lastIndexOf($I),\n _expr = expr.substr(0, index).replace($I, $0),\n restExpr = expr.substr(index + 5),\n arrayConsumerFn = listener;\n\n if (restExpr) {\n arrayConsumerFn = arrayConsumer.bind(undefined, listener, restExpr);\n }\n\n return {\n 'expr' : _expr,\n 'listener' : arrayConsumerFn\n };\n};\n\nexport const $watch = (expr, $scope, $locals, listener, identifier = watchIdGenerator.nextUid(), doNotClone = false, config:any={}, isMuted?: () => boolean) => {\n if (expr.indexOf('[$i]') !== -1) {\n let watchInfo = getUpdatedWatcInfo(expr, config && (config.arrayType || config.isList), listener);\n expr = watchInfo.expr;\n listener = watchInfo.listener;\n }\n const fn = $parseExpr(expr);\n\n registry.set(identifier, {\n fn: fn.bind(expr, $scope, $locals),\n listener,\n expr,\n last: FIRST_TIME_WATCH,\n doNotClone,\n isMuted: isMuted\n });\n\n return () => $unwatch(identifier);\n};\n\nexport const $unwatch = identifier => registry.delete(identifier);\n\nlet changedByWatch = false;\n\nconst $RAF = window.requestAnimationFrame;\n\nlet ngZone;\n\nconst triggerWatchers = (ignoreMuted?: boolean) => {\n\n if (muted && !ignoreMuted) {\n return;\n }\n log(\".......................triggerWatchers.................................\");\n const limit = 5;\n let pass = 1;\n let changeDetected;\n\n do {\n changeDetected = false;\n registry.forEach(watchInfo => {\n if(watchInfo.isMuted && watchInfo.isMuted()) {\n return;\n }\n const fn = watchInfo.fn;\n const listener = watchInfo.listener;\n const ov = watchInfo.last;\n let nv;\n\n try {\n nv = fn();\n } catch (e) {\n console.warn(`error in executing expression: '${watchInfo.expr}'`);\n }\n\n if (!isEqual(nv, ov)) {\n changeDetected = true;\n changedByWatch = true;\n watchInfo.last = nv;\n\n // @ts-ignore\n if (isObject(nv) && !watchInfo.doNotClone && nv.__cloneable__ !== false) {\n watchInfo.last = clone(nv);\n }\n listener(nv, ov);\n resetChangeFromWatch();\n }\n });\n pass++;\n\n } while (changeDetected && pass < limit);\n\n if (changeDetected && pass === limit) {\n console.warn(`Number of watch cycles gone above set limit of: ${limit} `);\n }\n};\n\nexport const setNgZone = zone => ngZone = zone;\n\nexport const setAppRef = ref => {\n appRef = ref\n};\n\nexport const isChangeFromWatch = () => changedByWatch;\nexport const resetChangeFromWatch = () => changedByWatch = false;\n\n(<any>window).watchRegistry = registry;\n\nlet skipWatchers;\n\nlet scheduled = false,\n rerunRequested = false,\n isRunning = false,\n consecutiveReruns = 0;\n\nconst MAX_PASSES = 5,\n DEBOUNCE_TIME = 200,\n MAX_CONSECUTIVE_RERUNS = 3;\n\n(window as any).__WM_DEBUG_WATCHERS__ = false;\n\nexport const $invokeWatchers = (\n force = false,\n ignoreMuted = false\n): void => {\n if (force) {\n triggerWatchers(ignoreMuted);\n } else {\n scheduleExecution(ignoreMuted);\n }\n};\n\nfunction scheduleExecution(ignoreMuted: boolean) {\n if (scheduled) {\n rerunRequested = true;\n return;\n }\n\n scheduled = true;\n\n // Reset consecutive rerun counter when scheduling from outside\n // (not from within executeWatchers rerun logic)\n if (!isRunning) {\n consecutiveReruns = 0;\n }\n\n debouncedExecute(ignoreMuted);\n}\n\nconst debouncedExecute = debounce((ignoreMuted: boolean) => {\n scheduled = false;\n executeWatchers(ignoreMuted);\n}, DEBOUNCE_TIME);\n\nfunction executeWatchers(ignoreMuted: boolean) {\n if (isRunning) {\n rerunRequested = true;\n return;\n }\n\n isRunning = true;\n\n let actuallyChanged = false;\n\n ngZone.runOutsideAngular(() => {\n let pass = 1;\n let changeDetected: boolean;\n\n do {\n changeDetected = false;\n log(`-------executeWatchers (run #${consecutiveReruns + 1})--------- `);\n\n registry.forEach(watchInfo => {\n if(watchInfo.isMuted && watchInfo.isMuted()) {\n return;\n }\n const fn = watchInfo.fn;\n const listener = watchInfo.listener;\n const ov = watchInfo.last;\n let nv;\n\n try {\n nv = fn();\n } catch (e) {\n console.warn(`error in executing expression: '${watchInfo.expr}'`);\n }\n\n if (!isEqual(nv, ov)) {\n changeDetected = true;\n actuallyChanged = true;\n changedByWatch = true;\n watchInfo.last = nv;\n\n // @ts-ignore\n if (isObject(nv) && !watchInfo.doNotClone && nv.__cloneable__ !== false) {\n watchInfo.last = clone(nv);\n }\n listener(nv, ov);\n resetChangeFromWatch();\n }\n });\n\n pass++;\n } while (changeDetected && pass < MAX_PASSES);\n });\n\n isRunning = false;\n\n // Trigger Angular change detection if watchers actually changed values\n if (actuallyChanged) {\n ngZone.run(() => {\n log(`-------DONE (changes detected)--------- `);\n });\n } else {\n log(`-------DONE (no changes)--------- `);\n }\n\n // 🔥 collapse ALL mid-run triggers into ONE rerun\n // BUT limit consecutive reruns to prevent infinite loops\n if (rerunRequested) {\n rerunRequested = false;\n\n if (consecutiveReruns < MAX_CONSECUTIVE_RERUNS) {\n consecutiveReruns++;\n log(`[Watcher] Scheduling rerun #${consecutiveReruns} (requested during execution)`);\n scheduleExecution(ignoreMuted);\n } else {\n consecutiveReruns = 0;\n log(`[Watcher] ⚠️ Stopped infinite loop! Max consecutive reruns (${MAX_CONSECUTIVE_RERUNS}) reached. This usually means watcher listeners are triggering more change detection.`);\n }\n } else {\n // No rerun requested - reset counter\n consecutiveReruns = 0;\n }\n}\n\nconst debouncedTriggerWatchers = debounce(() => {\n skipWatchers = true;\n ngZone.runOutsideAngular(() => triggerWatchers());\n}, 100);\n\n/*export const $invokeWatchers = (force?: boolean, ignoreMuted?: boolean) => {\n if (force) {\n triggerWatchers(ignoreMuted);\n } else {\n\n if (skipWatchers) {\n skipWatchers = false;\n return;\n }\n debouncedTriggerWatchers();\n }\n};*/\n\nexport const $appDigest = (() => {\n let queued = false;\n return (force?: boolean) => {\n if (!appRef) {\n return;\n }\n if (force) {\n ngZone.run(() => appRef.tick());\n queued = false;\n } else {\n if (queued) {\n return;\n } else {\n queued = true;\n $RAF(() => {\n ngZone.run(() => appRef.tick());\n queued = false;\n });\n }\n }\n };\n})();\n\nfunction log(message: string) {\n if ((window as any).__WM_DEBUG_WATCHERS__) {\n console.log(message);\n }\n}\n","export enum ComponentType {\n PAGE,\n PREFAB,\n PARTIAL,\n WIDGET\n}\n\nexport class IDataSource {\n execute: (operation: Operation, options?: any) => boolean | string | Promise<any>;\n}\n\nenum Operation {\n LIST_RECORDS = 'listRecords',\n UPDATE_RECORD = 'updateRecord',\n INSERT_RECORD = 'insertRecord',\n DELETE_RECORD = 'deleteRecord',\n INVOKE = 'invoke',\n UPDATE = 'update',\n NOTIFY = 'notify',\n IS_API_AWARE = 'isApiAware',\n SUPPORTS_CRUD = 'supportsCRUD',\n SUPPORTS_DISTINCT_API = 'supportsDistinctAPI',\n IS_PAGEABLE = 'isPageable',\n IS_SORTABLE = 'isSortable',\n GET_OPERATION_TYPE = 'getOperationType',\n GET_RELATED_PRIMARY_KEYS = 'getRelatedTablePrimaryKeys',\n GET_ENTITY_NAME = 'getEntityName',\n SET_INPUT = 'setinput',\n GET_RELATED_TABLE_DATA = 'getRelatedTableData',\n GET_DISTINCT_DATA_BY_FIELDS = 'getDistinctDataByFields',\n GET_AGGREGATED_DATA = 'getAggregatedData',\n GET_MATCH_MODE = 'getMatchMode',\n DOWNLOAD = 'download',\n GET_NAME = 'getName',\n GET_PROPERTIES_MAP = 'getPropertiesMap',\n GET_PRIMARY_KEY = 'getPrimaryKey',\n GET_BLOB_URL = 'getBlobURL',\n SUPPORTS_SERVER_FILTER = 'supportsServerFilter',\n GET_OPTIONS = 'getOptions',\n SEARCH_RECORDS = 'searchRecords',\n GET_REQUEST_PARAMS = 'getRequestParams',\n GET_PAGING_OPTIONS = 'getPagingOptions',\n FETCH_DISTINCT_VALUES = 'fetchDistinctValues',\n GET_UNIQUE_IDENTIFIER = 'getUniqueIdentifier',\n GET_CONTEXT_IDENTIFIER = 'getContextIdentifier',\n IS_UPDATE_REQUIRED = 'isUpdateRequired',\n ADD_ITEM = 'addItem',\n SET_ITEM = 'setItem',\n REMOVE_ITEM = 'removeItem',\n IS_BOUND_TO_LOCALE = 'isBoundToLocale',\n GET_DEFAULT_LOCALE = 'getDefaultLocale',\n CANCEL = 'cancel',\n SET_PAGINATION = 'setPagination'\n}\n\nexport const DataSource = {\n Operation\n};\n\nexport abstract class App {\n appLocale: any;\n Variables: any;\n Actions: any;\n onAppVariablesReady: Function;\n onSessionTimeout: Function;\n onBeforeAppReady: Function;\n onPageReady: Function;\n onBeforePageLeave: Function;\n onBeforeServiceCall: Function;\n onServiceSuccess: Function;\n onServiceError: Function;\n projectName: string;\n isPrefabType: boolean;\n isApplicationType: boolean;\n setwidgetLocale: Function;\n setMode: Function;\n isTabletApplicationType: boolean;\n isTemplateBundleType: boolean;\n changeLocale: Function;\n getSelectedLocale: Function;\n setTimezone: Function;\n reload: Function;\n on401: Function;\n notifyApp: Function;\n importModule: Function;\n getDependency: Function;\n networkStatus: any;\n notify: (eventName: string, data?: any) => void;\n deployedUrl: string;\n customUrlScheme: string;\n selectedViewPort: Object;\n subscribe: (eventName, callback: (data: any) => void) => () => void;\n dynamicComponentContainerRef: any;\n clearPageCache: (pageName?: string) => void;\n isPrism: boolean;\n hasOwnObjectProperty: (obj: any, prop: string) => boolean;\n\n activePageName: string;\n activePage: any;\n Page: any;\n activePageLoadTime: number;\n landingPageName: string;\n lastActivePageName: string;\n deviceCategory: string;\n\n activeLayoutName: string;\n layoutPages: string[];\n}\n\n\nexport abstract class AbstractDialogService {\n public abstract register(name: string, dialogRef: any, scope: any);\n public abstract deRegister(name: string, scope: any);\n public abstract open(name: string, scope?: any, initState?: any);\n public abstract close(name: string, scope?: any);\n public abstract showAppConfirmDialog(initState?: any);\n public abstract closeAppConfirmDialog();\n public abstract getAppConfirmDialog();\n public abstract setAppConfirmDialog(dialogName: string);\n public abstract closeAllDialogs: Function;\n public abstract addToOpenedDialogs(ref: any);\n public abstract getLastOpenedDialog();\n public abstract removeFromOpenedDialogs(ref: any);\n public abstract getOpenedDialogs();\n public abstract addToClosedDialogs(ref: any);\n public abstract removeFromClosedDialogs(ref: any);\n public abstract getDialogRefFromClosedDialogs();\n}\n\nexport abstract class AbstractHttpService {\n public abstract send(options: any);\n public abstract setLocale(locale);\n public abstract getLocale();\n public abstract getHeader(error, headerKey);\n public abstract isPlatformSessionTimeout(error);\n public abstract get(url: string, options?: any);\n public abstract post(url, data, options);\n public abstract put(url, data, options);\n public abstract patch(url, data, options);\n public abstract delete(url, options);\n public abstract head(url, options);\n public abstract jsonp(url, options);\n public abstract upload(url, data, options);\n public abstract registerOnSessionTimeout(callback);\n public abstract on401();\n public abstract pushToSessionFailureQueue(callback);\n public abstract executeSessionFailureRequests();\n public abstract sendCallAsObservable(options: any, params?: any): any;\n}\n\nexport abstract class AbstractI18nService {\n public abstract getSelectedLocale(): string;\n public abstract getDefaultSupportedLocale(): string;\n public abstract getAppLocale(): any;\n public abstract setSelectedLocale(locale);\n public abstract loadDefaultLocale();\n public abstract getLocalizedMessage(message, ...args);\n public abstract initCalendarLocale(): Promise<any>;\n protected abstract loadAppLocaleBundle();\n protected abstract loadMomentLocaleBundle(localeLang);\n protected abstract loadLocaleBundles(localeLang);\n public abstract setTimezone(locale, compInstance?);\n public abstract setTimezoneEarly(): Promise<any>;\n public abstract getFormatsByLocale();\n public abstract getTimezone(compInstance?);\n public abstract getPrefabLocaleBundle(prefabName: string): any;\n public abstract setwidgetLocale(locale);\n public abstract getwidgetLocale();\n}\n\nexport abstract class AbstractToasterService {\n public abstract success(title: string, desc: string);\n public abstract error(title: string, desc: string);\n public abstract info(title: string, desc: string);\n public abstract warn(title: string, desc: string);\n public abstract show(\n type: string,\n title: string,\n desc: string,\n timeout: number,\n bodyOutputType: string,\n onClickHandler: Function,\n onHideCallback: Function\n );\n public abstract hide(toasterObj: any);\n public abstract showCustom(pageName: string, options?: any);\n}\n\nexport abstract class AbstractSpinnerService {\n public abstract getMessageSource();\n public abstract showContextSpinner(spinnerContext: string, message: string, id: string);\n public abstract showAppSpinner(msg: string, id: string);\n public abstract hideContextSpinner(ctx: string, id: string);\n public abstract show(message: string, id?: string, spinnerClass?: string, spinnerContext?: string, variableScopeId?: string);\n public abstract hide(id: string);\n}\nexport abstract class UserDefinedExecutionContext {\n\n}\n\nexport interface NavigationOptions {\n $event?: any;\n pageName?: string;\n transition?: string;\n urlParams?: any;\n viewName?: string;\n}\n\nexport abstract class AbstractNavigationService {\n public abstract getPageTransition(): string;\n public abstract goToPage(pageName: string, options: NavigationOptions);\n public abstract goToPrevious();\n public abstract goToView(viewName: string, options: NavigationOptions, variable: any);\n}\n\nexport abstract class AppDefaults {\n public dateFormat;\n public timeFormat;\n public dateTimeFormat;\n public currencyCode;\n public abstract setFormats(formats: any);\n}\n\nexport abstract class DynamicComponentRefProvider {\n public abstract getComponentFactoryRef(selector: string, markup: string, options?: any);\n}\n\nexport abstract class PartialRefProvider {\n abstract getComponentFactoryRef(partialName: string, componentType: ComponentType, options?: any): Promise<any>;\n}\n\nexport abstract class CustomWidgetRefProvider {\n abstract getComponentFactoryRef(customWidgetName: string, componentType: ComponentType, options?: any): Promise<any>;\n}\n","import {Subject} from 'rxjs';\n\nimport {getPreviewProperties} from './wm-project-properties';\nimport {$appDigest, $watch} from './watcher';\nimport {DataType} from '../enums/enums';\nimport {DataSource} from '../types/types';\nimport {setAttr} from './dom';\nimport {$parseEvent} from './expression-parser';\nimport {\n attempt,\n camelCase,\n cloneDeep,\n every,\n filter,\n forEach,\n get,\n identity,\n includes,\n indexOf,\n intersection,\n isArray,\n isDate,\n isEqual,\n isEqualWith,\n isError,\n isFunction,\n isNull,\n isNumber,\n isString,\n isUndefined,\n keys,\n map,\n noop as _noop,\n omit,\n replace as _replace,\n split,\n startsWith,\n toLower,\n toUpper,\n trim\n} from \"lodash-es\";\n\nimport X2JS from 'x2js';\nimport * as momentLib from 'moment-timezone/moment-timezone';\n\ndeclare const $;\nconst moment = momentLib.default || window['moment'];\ndeclare const document;\ndeclare const resolveLocalFileSystemURL;\ndeclare const WM_CUSTOM_FORMATTERS;\ndeclare const MSCSSMatrix;\ndeclare const _WM_APP_PROPERTIES;\n\nconst userAgent = window.navigator.userAgent;\nconst REGEX = {\n SNAKE_CASE: /[A-Z]/g,\n ANDROID: /Android/i,\n IPHONE: /iPhone/i,\n IPOD: /iPod/i,\n IPAD: /iPad/i,\n MAC: /Mac/i,\n ANDROID_TABLET: /android|android 3.0|xoom|sch-i800|playbook|tablet|kindle/i,\n MOBILE: /Mobile/i,\n WINDOWS: /Windows Phone/i,\n SUPPORTED_IMAGE_FORMAT: /\\.(bmp|gif|jpe|jpg|jpeg|tif|tiff|pbm|png|ico)$/i,\n SUPPORTED_FILE_FORMAT: /\\.(txt|js|css|html|script|properties|json|java|xml|smd|xmi|sql|log|wsdl|vm|ftl|jrxml|yml|yaml|md|less|jsp)$/i,\n SUPPORTED_AUDIO_FORMAT: /\\.(mp3|ogg|webm|wma|3gp|wav|m4a)$/i,\n SUPPORTED_VIDEO_FORMAT: /\\.(mp4|ogg|webm|wmv|mpeg|mpg|avi|mov)$/i,\n PAGE_RESOURCE_PATH: /^\\/pages\\/.*\\.(js|css|html|json)$/,\n MIN_PAGE_RESOURCE_PATH: /.*(page.min.html)$/,\n VALID_EMAIL: /^[a-zA-Z][\\w.+]+@[a-zA-Z_]+?\\.[a-zA-Z.]{1,4}[a-zA-Z]$/,\n VALID_WEB_URL: /^(http[s]?:\\/\\/)(www\\.){0,1}[a-zA-Z0-9=:?\\/\\.\\-]+(\\.[a-zA-Z]{2,5}[\\.]{0,1})?/,\n VALID_IMAGE_URL: /^(https?|blob|data|file|ftp):/i,\n VALID_WEBSOCKET_URL: /^(ws[s]?:\\/\\/)(www\\.){0,1}[a-zA-Z0-9=:?\\/\\.\\-]+(\\.[a-zA-Z]{2,5}[\\.]{0,1})?/,\n VALID_RELATIVE_URL: /^(?!www\\.|(?:http|ftp)s?:\\/\\/|[A-Za-z]:\\\\|\\/\\/).*/,\n REPLACE_PATTERN: /\\$\\{([^\\}]+)\\}/g,\n ZIP_FILE: /\\.zip$/i,\n EXE_FILE: /\\.exe$/i,\n NO_QUOTES_ALLOWED: /^[^'|\"]*$/,\n NO_DOUBLE_QUOTES_ALLOWED: /^[^\"]*$/,\n VALID_HTML: /<[a-z][\\s\\S]*>/i,\n VALID_PASSWORD: /^[0-9a-zA-Z-_.@&*!#$%]+$/,\n SPECIAL_CHARACTERS: /[^A-Z0-9a-z_]+/i,\n APP_SERVER_URL_FORMAT: /^(http[s]?:\\/\\/)(www\\.){0,1}[a-zA-Z0-9\\.\\-]+([:]?[0-9]{2,5}|\\.[a-zA-Z]{2,5}[\\.]{0,1})\\/+[^?#&=]+$/,\n JSON_DATE_FORMAT: /\\d{4}-[0-1]\\d-[0-3]\\d(T[0-2]\\d:[0-5]\\d:[0-5]\\d.\\d{1,3}Z$)?/,\n DATA_URL: /^\\s*data:([a-z]+\\/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&',()*+;=\\-._~:@\\/?%\\s]*)\\s*$/i,\n ISO_DATE_FORMAT: /(\\d{4}-\\d{2}-\\d{2})T(\\d{2}:\\d{2}:\\d{2})(\\.\\d+)?([+-]\\d{2}:?\\d{2}|Z)$/\n},\n compareBySeparator = ':';\n\nconst NUMBER_TYPES = ['int', DataType.INTEGER, DataType.FLOAT, DataType.DOUBLE, DataType.LONG, DataType.SHORT, DataType.BYTE, DataType.BIG_INTEGER, DataType.BIG_DECIMAL];\nconst now: Date = new Date();\nconst CURRENT_DATE = 'CURRENT_DATE';\n\nexport const getNavClass = (suffix: string) : string => {\n const APP_NAV_CLASS_PREFIX = 'app-nav-';\n return APP_NAV_CLASS_PREFIX + suffix;\n}\n\nexport const getSheetPositionClass = (suffix: string): string => {\n const SHEET_POSITION_CLASS_PREFIX = 'sheet-position-';\n return SHEET_POSITION_CLASS_PREFIX + suffix;\n}\n\nexport const enum EVENT_LIFE { ONCE, WINDOW }\n\nexport const isDefined = v => 'undefined' !== typeof v;\n\nexport const isObject = v => null !== v && 'object' === typeof v;\n\nexport const toBoolean = (val, identity?) => ((val && val !== 'false') ? true : (identity ? val === identity : false));\n\nfunction isIE11() {\n return window.navigator.appVersion.indexOf('Trident/') > -1;\n}\n\nexport const isIE = () => {\n return isIE11() || window.navigator.userAgent.indexOf('MSIE') > -1;\n};\n\n\nexport const isAndroid = () => REGEX.ANDROID.test(userAgent);\n\nexport const isAndroidTablet = () => REGEX.ANDROID_TABLET.test(userAgent) && !((/Tablet PC 2.0/i).test(userAgent));\n\nexport const isIphone = () => REGEX.IPHONE.test(userAgent);\nexport const isIpod = () => REGEX.IPOD.test(userAgent);\nexport const isIpad = () => {\n return REGEX.IPAD.test(userAgent) || (window.navigator.maxTouchPoints && window.navigator.maxTouchPoints > 2 && REGEX.MAC.test(window.navigator.platform));\n};\n\nexport const isIos = () => isIphone() || isIpod() || isIpad();\n\nexport const isSafari = () => navigator.userAgent.indexOf('Safari') !== -1 && navigator.userAgent.indexOf('Chrome') === -1;\n\n\nexport const isLargeTabletLandscape = (landScapeWidth, landScapeHeight) => {\n const width = landScapeWidth || '1366px';\n const height = landScapeHeight || '1024px';\n return window.matchMedia(\"only screen and (min-device-width : \"+width+\") and (max-device-width : \"+width+\") and (min-device-height : \"+height+\") and (max-device-height : \"+height+\") and (min-width: \"+width+\") and (max-width: \"+width+\")\").matches;\n}\n\nexport const isLargeTabletPortrait = (landScapeWidth, landScapeHeight) => {\n const height = landScapeWidth || '1366px';\n const width = landScapeHeight || '1024px';\n return window.matchMedia(\"only screen and (min-device-width : \"+width+\") and (max-device-width : \"+width+\") and (min-device-height : \"+height+\") and (max-device-height : \"+height+\") and (min-width: \"+width+\") and (max-width: \"+width+\")\").matches;\n}\n\nexport const isMobile = () => isAndroid() || isIos() || isAndroidTablet() || $('#wm-mobile-display:visible').length > 0;\n\nexport const isTablet = () => {\n const scope = document.querySelector('.app-page').widget;\n return scope && scope.viewParent.Viewport.isTabletType;\n};\n\n\nexport const getAndroidVersion = () => {\n const match = (window.navigator.userAgent.toLowerCase()).match(/android\\s([0-9\\.]*)/);\n return match ? match[1] : '';\n};\n\nexport const isKitkatDevice = () => isAndroid() && parseInt(getAndroidVersion(), 10) === 4;\n\n/**\n * this method encodes the url and returns the encoded string\n */\nexport const encodeUrl = (url: string): string => {\n const index = url.indexOf('?');\n if (index > -1) {\n // encode the relative path\n url = encodeURI(url.substring(0, index)) + url.substring(index);\n // encode url params, not encoded through encodeURI\n url = encodeUrlParams(url);\n } else {\n url = encodeURI(url);\n }\n\n return url;\n};\n\n/**\n * this method encodes the url params and is private to the class only\n */\nexport const encodeUrlParams = (url: string): string => {\n let queryParams, encodedParams = '', queryParamsString, index;\n index = url.indexOf('?');\n if (index > -1) {\n index += 1;\n queryParamsString = url.substring(index);\n // Encoding the query params if exist\n if (queryParamsString) {\n queryParams = queryParamsString.split('&');\n queryParams.forEach(function (param) {\n let decodedParamValue;\n const i = includes(param, '=') ? param.indexOf('=') : (param && param.length),\n paramName = param.substr(0, i),\n paramValue = param.substr(i + 1);\n\n // add the = for param name only when the param value exists in the given param or empty value is assigned\n if (paramValue || includes(param, '=')) {\n try {\n decodedParamValue = decodeURIComponent(paramValue);\n } catch (e) {\n decodedParamValue = paramValue;\n }\n encodedParams += paramName + '=' + encodeURIComponent(decodedParamValue) + '&';\n } else {\n encodedParams += paramName + '&';\n }\n });\n encodedParams = encodedParams.slice(0, -1);\n url = url.replace(queryParamsString, encodedParams);\n }\n }\n return url;\n};\n\n/* capitalize the first-letter of the string passed */\nexport const initCaps = name => {\n if (!name) {\n return '';\n }\n return name.charAt(0).toUpperCase() + name.substring(1);\n};\n\n/* convert camelCase string to a space separated string */\nexport const spaceSeparate = name => {\n if (name === name.toUpperCase()) {\n return name;\n }\n return name.replace(REGEX.SNAKE_CASE, function (letter, pos) {\n return (pos ? ' ' : '') + letter;\n });\n};\n\n/*Replace the character at a particular index*/\nexport const replaceAt = (string, index, character) => string.substr(0, index) + character + string.substr(index + character.length);\n\n/*Replace '.' with space and capitalize the next letter*/\nexport const periodSeparate = name => {\n let dotIndex;\n dotIndex = name.indexOf('.');\n if (dotIndex !== -1) {\n name = replaceAt(name, dotIndex + 1, name.charAt(dotIndex + 1).toUpperCase());\n name = replaceAt(name, dotIndex, ' ');\n }\n return name;\n};\n\nexport const prettifyLabel = label => {\n label = camelCase(label);\n /*capitalize the initial Letter*/\n label = initCaps(label);\n /*Convert camel case words to separated words*/\n label = spaceSeparate(label);\n /*Replace '.' with space and capitalize the next letter*/\n label = periodSeparate(label);\n return label;\n};\n\nexport const deHyphenate = (name) => {\n return name.split('-').join(' ');\n};\n\n/*Accepts an array or a string separated with symbol and returns prettified result*/\nexport const prettifyLabels = (names, separator = ',') => {\n let modifiedNames, namesArray = [];\n\n if (!isArray(names)) {\n namesArray = split(names, separator);\n }\n\n modifiedNames = map(namesArray, prettifyLabel);\n if (isArray(names)) {\n return modifiedNames;\n }\n return modifiedNames.join(separator);\n};\n\n/**\n * this method checks if a insecure content request is being made\n */\nexport const isInsecureContentRequest = (url: string): boolean => {\n\n const parser: HTMLAnchorElement = document.createElement('a');\n parser.href = url;\n\n // for relative urls IE returns the protocol as empty string\n if (parser.protocol === '') {\n return false;\n }\n\n // If the inputted source is a base64 url, do not throw insecure content error\n if (REGEX.DATA_URL.test(url)) {\n return false;\n }\n\n if (stringStartsWith(location.href, 'https://')) {\n return parser.protocol !== 'https:' && parser.protocol !== 'wss:';\n }\n\n return false;\n};\n\n/**\n * this method checks if a given string starts with the given string\n */\nexport const stringStartsWith = (str: string, startsWith: string, ignoreCase?): boolean => {\n if (!str) {\n return false;\n }\n\n const regEx = new RegExp('^' + startsWith, ignoreCase ? 'i' : '');\n\n return regEx.test(str);\n};\n\nexport const getEvaluatedExprValue = (object, expression) => {\n let val;\n /**\n * Evaluate the expression with the scope and object.\n * $eval is used, as expression can be in format of field1 + ' ' + field2\n * $eval can fail, if expression is not in correct format, so attempt the eval function\n */\n val = attempt(function () {\n\n const argsExpr = Object.keys(object).map((fieldName) => {\n return `var ${fieldName} = data['${fieldName}'];`;\n }).join(' ');\n const f = new Function('data', `${argsExpr} return ${expression}`);\n return f(object);\n });\n /**\n * $eval fails if field expression has spaces. Ex: 'field name' or 'field@name'\n * As a fallback, get value directly from object or scope\n */\n if (isError(val)) {\n val = get(object, expression);\n }\n return val;\n};\n\n/* functions for resource Tab*/\nexport const isImageFile = (fileName) => {\n return (REGEX.SUPPORTED_IMAGE_FORMAT).test(fileName);\n};\n\nexport const isAudioFile = (fileName) => {\n return (REGEX.SUPPORTED_AUDIO_FORMAT).test(fileName);\n};\n\nexport const isVideoFile = (fileName) => {\n return (REGEX.SUPPORTED_VIDEO_FORMAT).test(fileName);\n};\n\nexport const isValidWebURL = (url: string): boolean => {\n return (REGEX.VALID_WEB_URL).test(url);\n};\n\nexport const isValidImageUrl = (url: string): boolean => {\n return (REGEX.VALID_IMAGE_URL).test(url?.trim());\n}\n\n/*This function returns the url to the resource after checking the validity of url*/\nexport const getResourceURL = (urlString) => {\n if (isValidWebURL(urlString)) {\n /*TODO: Use DomSanitizer*/\n // return sanitizer.bypassSecurityTrustResourceUrl(urlString);\n }\n return urlString;\n};\n\n/*function to check if fn is a function and then execute*/\nexport function triggerFn(fn, ...argmnts) {\n /* Use of slice on arguments will make this function not optimizable\n * https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#32-leaking-arguments\n * */\n\n let start = 1;\n const len = arguments.length, args = new Array(len - start);\n for (start; start < len; start++) {\n args[start - 1] = arguments[start];\n }\n\n if (isFunction(fn)) {\n return fn.apply(null, args);\n }\n}\n\n/**\n * This method is used to get the formatted date\n */\nexport const getFormattedDate = (datePipe, dateObj, format, timeZone?, isTimeStampType?, isIntervalDateTime?, compInstance?): any => {\n if (!dateObj) {\n return undefined;\n }\n if (format === 'timestamp') {\n return moment(dateObj).valueOf();\n }\n\n if (format === 'UTC') {\n return new Date(dateObj).toISOString();\n }\n if (timeZone && timeZone !== (moment as any).defaultZone?.name) {\n const momentFormat = format.replaceAll('y', 'Y').replaceAll('d', 'D').replace('a', 'A');\n if (isIntervalDateTime ) { // dates which are of type time widget (value is hh:mm:ss) but returned as date string from time comp\n return moment(dateObj).format(momentFormat);\n }\n if (isTimeStampType === 'datetimestamp') {\n dateObj = getMomentLocaleObject(timeZone, dateObj);\n return moment(dateObj).format(momentFormat);\n }\n }\n\n return datePipe.transform(dateObj, format, timeZone, compInstance);\n};\n\n/**\n * This method is used to check if the date has timezone information or not\n */\nexport const hasOffsetStr = (dateStr) => {\n if (typeof dateStr !== 'string') return;\n const matches = dateStr.match(REGEX.ISO_DATE_FORMAT);\n if (matches && matches[4]) {\n return true;\n }\n}\n\n/**\n * method to get the date object from the input received\n */\nexport const getDateObj = (value, options?, timezone?): Date => {\n // Handling localization\n if (options && options.pattern && options.pattern !== 'timestamp') {\n // Fix for WMS-19601, invalid date is returned on date selection.\n const isNativePicker = (options && options.hasOwnProperty('isNativePicker')) ? get(options, 'isNativePicker') : isMobile();\n const pattern = isNativePicker ? 'YYYY/MM/DD HH:mm:ss' : momentPattern(options.pattern);\n value = moment(value, pattern).toDate();\n }\n\n /*if the value is a date object, no need to covert it*/\n if (isDate(value)) {\n return value;\n }\n\n /*if the value is a timestamp string, convert it to a number*/\n if (!isNaN(value)) {\n value = parseInt(value, 10);\n }\n\n if (!moment(value).isValid() || value === '' || value === null || value === undefined) {\n return undefined;\n }\n let dateObj = new Date(value);\n /**\n * if date value is string \"20-05-2019\" then new Date(value) return 20May2019 with current time in India,\n * whereas this will return 19May2019 with time lagging for few hours.\n * This is because it returns UTC time i.e. Coordinated Universal Time (UTC).\n * To create date in local time use moment\n */\n if (isString(value)) {\n /*\n * If selected locale is Arabic, moment(value).format() is giving date in Arabic language\n * (Ex: If date value is \"1990-11-23\" and moment(value).format() is \"١٩٩٠-١١-٢٣T٠٠:٠٠:٠٠+٠٥:٣٠\")\n * and new Date(moment(value).format()) is giving Invalid Date. So frst converting it to timestamp value.\n */\n\n dateObj = !timezone ? new Date(moment(moment(value).format()).valueOf()) : getMomentLocaleObject(timezone, value);;\n }\n\n if (value === CURRENT_DATE || isNaN(dateObj.getDay())) {\n return now;\n }\n return dateObj;\n};\n\nexport const addEventListenerOnElement = (_element: Element, excludeElement: Element, nativeElement: Element, eventType, isDropDownDisplayEnabledOnInput, successCB, life: EVENT_LIFE, isCapture = false) => {\n const element: Element = _element;\n const eventListener = (event) => {\n if (excludeElement && (excludeElement.contains(event.target) || excludeElement === event.target)) {\n return;\n }\n if (nativeElement.contains(event.target)) {\n if ($(event.target).is('input') && !isDropDownDisplayEnabledOnInput) {\n return;\n }\n element.removeEventListener(eventType, eventListener, isCapture);\n return;\n }\n if (life === EVENT_LIFE.ONCE) {\n element.removeEventListener(eventType, eventListener, isCapture);\n }\n successCB();\n };\n element.addEventListener(eventType, eventListener, isCapture);\n const removeEventListener = () => {\n element.removeEventListener(eventType, eventListener, isCapture);\n };\n return removeEventListener;\n};\n\n/**\n * Returns a deep cloned replica of the passed object/array\n * @param object object/array to clone\n * @returns a clone of the passed object\n */\nexport const getClonedObject = (object) => {\n return cloneDeep(object);\n};\n\nexport const getFiles = (formName, fieldName, isList) => {\n const files = get(document.forms, [formName, fieldName, 'files']);\n return isList ? map(files, identity) : files && files[0];\n};\n\n/*Function to generate a random number*/\nfunction random() {\n return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);\n}\n\n/*Function to generate a guid based on random numbers.*/\nexport const generateGUId = () => {\n return random() + '-' + random() + '-' + random();\n};\n\n/**\n * Validate if given access role is in current loggedin user access roles\n */\nexport const validateAccessRoles = (roleExp, loggedInUser) => {\n let roles;\n\n if (roleExp && loggedInUser) {\n\n roles = roleExp && roleExp.split(',').map(Function.prototype.call, String.prototype.trim);\n\n return intersection(roles, loggedInUser.userRoles).length;\n }\n\n return true;\n};\n\nexport const getValidJSON = (content) => {\n if (!content) {\n return undefined;\n }\n try {\n const parsedIntValue = parseInt(content, 10);\n /*obtaining json from editor content string*/\n return isObject(content) || !isNaN(parsedIntValue) ? content : JSON.parse(content);\n } catch (e) {\n /*terminating execution if new variable object is not valid json.*/\n return undefined;\n }\n};\n\nexport const xmlToJson = (xmlString) => {\n //TODO: import x2js dynamically\n const x2jsObj = new X2JS({ 'emptyNodeForm': 'object', 'attributePrefix': '', 'enableToStringFunc': false });\n let json = x2jsObj.xml2js(xmlString);\n if (json) {\n json = get(json, Object.keys(json)[0]);\n }\n return json;\n};\n\n/*\n * Util method to find the value of a key in the object\n * if key not found and create is true, an object is created against that node\n * Examples:\n * var a = {\n * b: {\n * c : {\n * d: 'test'\n * }\n * }\n * }\n * Utils.findValue(a, 'b.c.d') --> 'test'\n * Utils.findValue(a, 'b.c') --> {d: 'test'}\n * Utils.findValue(a, 'e') --> undefined\n * Utils.findValue(a, 'e', true) --> {} and a will become:\n * {\n * b: {\n * c : {\n * d: 'test'\n * }\n * },\n * e: {\n * }\n * }\n */\nexport const findValueOf = (obj, key, create?) => {\n\n if (!obj || !key) {\n return;\n }\n\n if (!create) {\n return get(obj, key);\n }\n\n const parts = key.split('.'),\n keys = [];\n\n let skipProcessing;\n\n parts.forEach((part) => {\n if (!parts.length) { // if the part of a key is not valid, skip the processing.\n skipProcessing = true;\n return false;\n }\n\n const subParts = part.match(/\\w+/g);\n let subPart;\n\n while (subParts.length) {\n subPart = subParts.shift();\n keys.push({ 'key': subPart, 'value': subParts.length ? [] : {} }); // determine whether to create an array or an object\n }\n });\n\n if (skipProcessing) {\n return undefined;\n }\n\n keys.forEach((_key) => {\n let tempObj = obj[_key.key];\n if (!isObject(tempObj)) {\n tempObj = getValidJSON(tempObj);\n if (!tempObj) {\n tempObj = _key.value;\n }\n }\n obj[_key.key] = tempObj;\n obj = tempObj;\n });\n\n return obj;\n};\n\n/*\n* extracts and returns the last bit from full typeRef of a field\n* e.g. returns 'String' for typeRef = 'java.lang.String'\n* @params: {typeRef} type reference\n*/\nexport const extractType = (typeRef: string): string => {\n let type;\n if (!typeRef) {\n return DataType.STRING;\n }\n type = typeRef && typeRef.substring(typeRef.lastIndexOf('.') + 1);\n type = type && type.toLowerCase();\n type = type === DataType.LOCALDATETIME ? DataType.DATETIME : type;\n return type;\n};\n\n/* returns true if the provided data type matches number type */\nexport const isNumberType = (type: any): boolean => {\n return (NUMBER_TYPES.indexOf(extractType(type).toLowerCase()) !== -1);\n};\n\n/* function to check if provided object is empty*/\nexport const isEmptyObject = (obj: any): boolean => {\n if (isObject(obj) && !isArray(obj)) {\n return Object.keys(obj).length === 0;\n }\n return false;\n};\n\n// Function expects an element on which the scrolling should be applied, Depending on the offset of the element scrollbar will be adjusted\nexport const scrollToElement = (element) => {\n const $element = $(element);\n const formPosition = $element.offset().top;\n window.scroll({\n top: formPosition,\n left: 0,\n behavior: 'smooth'\n });\n}\n\n// Function will return whether the given element is in viewport or not\nexport const isElementInViewport = (element) => {\n var rect = element.getBoundingClientRect();\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n rect.right <= (window.innerWidth || document.documentElement.clientWidth)\n );\n}\n\n/*Function to check whether the specified object is a pageable object or not.*/\nexport const isPageable = (obj: any): boolean => {\n const pageable = {\n 'content': [],\n 'first': true,\n 'last': true,\n 'number': 0,\n 'numberOfElements': 10,\n 'size': 20,\n 'sort': null,\n 'totalElements': 10,\n 'totalPages': 1\n };\n // paginated object may or may not contain 'empty' property. In either case, Pageable should return as true.\n const paginatedObj = omit(obj, 'empty');\n return (isEqual(keys(pageable), keys(paginatedObj).sort()));\n};\n\n/*\n * Util method to replace patterns in string with object keys or array values\n * Examples:\n * Utils.replace('Hello, ${first} ${last} !', {first: 'wavemaker', last: 'ng'}) --> Hello, wavemaker ng\n * Utils.replace('Hello, ${0} ${1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n * Examples if parseError is true:\n * Utils.replace('Hello, {0} {1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n */\nexport const replace = (template, map, parseError?: boolean) => {\n let regEx = REGEX.REPLACE_PATTERN;\n if (!template) {\n return;\n }\n if (parseError) {\n regEx = /\\{([^\\}]+)\\}/g;\n }\n\n return template.replace(regEx, function (match, key) {\n return get(map, key);\n });\n};\n\n/*Function to check if date time type*/\nexport const isDateTimeType = type => {\n if (includes(type, '.')) {\n type = toLower(extractType(type));\n }\n return includes([DataType.DATE, DataType.TIME, DataType.TIMESTAMP, DataType.DATETIME, DataType.LOCALDATETIME], type);\n};\n\nconst momentPattern = (pattern) => {\n if (includes(pattern, 'E')) {\n pattern = _replace(pattern, /E[,]?/g, '');\n }\n return _replace(pattern, /y*d*/g, (val) => val.toUpperCase());\n};\n\n/* This function returns date object. If val is undefined it returns invalid date */\nexport const getValidDateObject = (val, options?) => {\n const defaultMeridian = ['AM', 'PM'];\n const momentMeridian = (moment() as any)._locale.meridiem();\n // Updating localized meridians with default meridians when moment meridian is not defined\n if (options && options.meridians && includes(defaultMeridian, momentMeridian)) {\n forEach(options.meridians, (meridian, index) => {\n if (includes(val, meridian)) {\n val = val.replace(meridian, defaultMeridian[index]);\n }\n });\n }\n const isNativePicker = (options && options.hasOwnProperty('isNativePicker')) ? get(options, 'isNativePicker') : isMobile();\n const pattern = isNativePicker ? (get(options, 'pattern') || 'YYYY/MM/DD HH:mm:ss') : (momentPattern(get(options, 'pattern')) || '');\n // Handling localization\n if (options && options.pattern && options.pattern !== 'timestamp') {\n if (!isNaN(moment(val, pattern).valueOf())) { // Fix for [WMS-27658]: Date() doesn't support some formats like 'dd/MM/yyyy' so using moment() to format the value\n // check whether val is a valid date or not\n if (isIos()) {\n // For iOS, explicitly setting the format to consider even the seconds.\n val = moment(val).format('YYYY/MM/DD HH:mm:ss');\n }\n val = moment(val, pattern);\n } else {\n val = moment(val, pattern);\n }\n val = val.toDate();\n }\n\n if (moment(val, pattern).isValid()) {\n // date with +5 hours is returned in safari browser which is not a valid date.\n // Hence converting the date to the supported format \"YYYY/MM/DD HH:mm:ss\" in IOS\n if (isIos()) {\n val = moment(moment(val).valueOf()).format('YYYY/MM/DD HH:mm:ss');\n }\n return val;\n }\n /*if the value is a timestamp string, convert it to a number*/\n if (!isNaN(val)) {\n val = parseInt(val, 10);\n } else {\n /*if the value is in HH:mm:ss format, it returns a wrong date. So append the date to the given value to get date*/\n if (!(new Date(val).getTime())) {\n val = moment((moment().format('YYYY-MM-DD') + ' ' + val), 'YYYY-MM-DD HH:mm:ss A');\n\n }\n }\n return new Date(moment(val).valueOf());\n};\n\n/* This function returns javascript date object*/\nexport const getNativeDateObject = (val, options?) => {\n val = getValidDateObject(val, options);\n return new Date(val);\n};\n\n\n/**\n * prepare a blob object based on the content and content type provided\n * if content is blob itself, simply returns it back\n * @param val\n * @param valContentType\n * @returns {*}\n */\nexport const getBlob = (val, valContentType?) => {\n if (val instanceof Blob) {\n return val;\n }\n const jsonVal = getValidJSON(val);\n if (jsonVal && jsonVal instanceof Object) {\n val = new Blob([JSON.stringify(jsonVal)], { type: valContentType || 'application/json' });\n } else {\n val = new Blob([val], { type: valContentType || 'text/plain' });\n }\n return val;\n};\n\n/**\n * This function returns true by comparing two objects based on the fields\n * @param obj1 object\n * @param obj2 object\n * @param compareBy string field values to compare\n * @returns {boolean} true if object equality returns true based on fields\n */\nexport const isEqualWithFields = (obj1, obj2, compareBy) => {\n // compareBy can be 'id' or 'id1, id2' or 'id1, id2:id3'\n // Split the compareby comma separated values\n let _compareBy = isArray(compareBy) ? compareBy : split(compareBy, ',');\n\n //@ts-ignore\n _compareBy = map(_compareBy, trim);\n\n return isEqualWith(obj1, obj2, function (o1, o2) {\n return every(_compareBy, function (cb) {\n let cb1, cb2, _cb;\n\n // If compareby contains : , compare the values by the keys on either side of :\n if (indexOf(cb, compareBySeparator) === -1) {\n cb1 = cb2 = trim(cb);\n } else {\n _cb = split(cb, compareBySeparator);\n cb1 = trim(_cb[0]);\n cb2 = trim(_cb[1]);\n }\n\n return get(o1, cb1) === get(o2, cb2);\n });\n });\n};\n\nconst getNode = selector => document.querySelector(selector);\n\n// function to check if the stylesheet is already loaded\nconst isStyleSheetLoaded = href => !!getNode(`link[href=\"${href}\"]`);\n\n// function to remove stylesheet if the stylesheet is already loaded\nconst removeStyleSheet = href => {\n const node = getNode(`link[href=\"${href}\"]`);\n if (node) {\n node.remove();\n }\n};\n\n// function to load a stylesheet\nexport const loadStyleSheet = (url, attr) => {\n if (isStyleSheetLoaded(url)) {\n return;\n }\n const link = document.createElement('link');\n link.href = url;\n // To add attributes to link tag\n if (attr && attr.name) {\n link.setAttribute(attr.name, attr.value);\n }\n link.setAttribute('rel', 'stylesheet');\n link.setAttribute('type', 'text/css');\n document.head.appendChild(link);\n return link;\n};\n\n// function to load stylesheets\nexport const loadStyleSheets = (urls = []) => {\n // if the first argument is not an array, convert it to an array\n if (!Array.isArray(urls)) {\n urls = [urls];\n }\n urls.forEach(loadStyleSheet);\n};\n\n// function to check if the script is already loaded\nconst isScriptLoaded = src => !!getNode(`script[src=\"${src}\"], script[data-src=\"${src}\"]`);\n\nexport const getMomentLocaleObject = (timeZone, dateObj?) => {\n if (dateObj) {\n return new Date(new Date((moment(dateObj) as any).tz(timeZone).format()).toLocaleString(\"en-US\", {timeZone: timeZone}));\n } else {\n return new Date(new Date((moment() as any).tz(timeZone).format()).toLocaleString(\"en-US\", {timeZone: timeZone}));\n }\n}\n\nexport const loadScript = async (url, loadViaScriptTag, cacheable = false) => {\n const _url = url.trim();\n if (!_url.length || isScriptLoaded(_url)) {\n return Promise.resolve();\n }\n\n if (loadViaScriptTag) {\n return new Promise<any>((resolve, reject)=>{\n let script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = _url;\n script.async = false;\n if (script.readyState) { //IE\n script.onreadystatechange = () => {\n if (script.readyState === \"loaded\" || script.readyState === \"complete\") {\n script.onreadystatechange = null;\n resolve(true);\n }\n };\n } else { //Other browsers\n script.onload = () => {\n resolve(true);\n };\n }\n script.onerror = (error: any) => reject(error);\n document.getElementsByTagName('head')[0].appendChild(script);\n });\n } else if(cacheable) {\n return $.ajax({\n dataType: 'script',\n cache: true,\n url: url\n }).done(response => response)\n .fail(reason => reason);\n } else {\n return $.getScript(url)\n .done(response => response)\n .fail(reason => reason);\n }\n};\n\nexport const loadScripts = async (urls = [], loadViaScriptTag = true) => {\n for (const url of urls) {\n await loadScript(url, loadViaScriptTag);\n }\n return Promise.resolve();\n};\n\nexport let _WM_APP_PROJECT: any = {};\n\n/**\n * This function sets session storage item based on the project ID\n * @param key string\n * @param value string\n */\nexport const setSessionStorageItem = (key, value) => {\n let item: any = window.sessionStorage.getItem(_WM_APP_PROJECT.id);\n\n if (item) {\n item = JSON.parse(item);\n } else {\n item = {};\n }\n item[key] = value;\n\n window.sessionStorage.setItem(_WM_APP_PROJECT.id, JSON.stringify(item));\n};\n\n/**\n * This function gets session storage item based on the project ID\n * @param key string\n */\nexport const getSessionStorageItem = key => {\n // sanity check for this to work with ng-codegen\n let item = window && window.sessionStorage && window.sessionStorage.getItem(_WM_APP_PROJECT.id);\n\n if (item) {\n item = JSON.parse(item);\n return item[key];\n }\n};\n\nexport const noop = (...args) => { };\n\n/**\n * This function returns a blob object from the given file path\n * @param filepath\n * @returns promise having blob object\n */\nexport const convertToBlob = (filepath): Promise<any> => {\n return new Promise<any>((resolve, reject) => {\n // Read the file entry from the file URL\n resolveLocalFileSystemURL(filepath, function (fileEntry) {\n fileEntry.file(function (file) {\n // file has the cordova file structure. To submit to the backend, convert this file to javascript file\n const reader = new FileReader();\n reader.onloadend = () => {\n const imgBlob = new Blob([reader.result], {\n 'type': file.type\n });\n resolve({ 'blob': imgBlob, 'filepath': filepath });\n };\n reader.onerror = reject;\n reader.readAsArrayBuffer(file);\n });\n }, reject);\n });\n};\n\n\nexport const AppConstants = {\n INT_MAX_VALUE: 2147483647\n};\n\nexport const openLink = (link: string, target: string = '_self') => {\n window.open(link, target);\n};\n\n/* util function to load the content from a url */\nexport const fetchContent = (dataType, url: string, inSync: boolean = false, success?, error?): Promise<any> => {\n return $.ajax({ type: 'get', dataType: dataType, url: url, async: !inSync })\n .done(response => success && success(response))\n .fail(reason => error && error(reason));\n};\n\n/**\n * If the given object is a promise, then object is returned. Otherwise, a promise is resolved with the given object.\n * @param {Promise<T> | T} a\n * @returns {Promise<T>}\n */\nexport const toPromise = <T>(a: T | Promise<T>): Promise<T> => {\n if (a instanceof Promise) {\n return a;\n } else {\n return Promise.resolve(a as T);\n }\n};\n\n/**\n * This function invokes the given the function (fn) until the function successfully executes or the maximum number\n * of retries is reached or onBeforeRetry returns false.\n *\n * @param fn - a function that is needs to be invoked. The function can also return a promise as well.\n * @param interval - minimum time gap between successive retries. This argument should be greater or equal to 0.\n * @param maxRetries - maximum number of retries. This argument should be greater than 0. For all other values,\n * maxRetries is infinity.\n * @param onBeforeRetry - a callback function that will be invoked before re-invoking again. This function can\n * return false or a promise that is resolved to false to stop further retry attempts.\n * @returns {*} a promise that is resolved when fn is success (or) maximum retry attempts reached\n * (or) onBeforeRetry returned false.\n */\nexport const retryIfFails = (fn: () => any, interval: number, maxRetries: number, onBeforeRetry = () => Promise.resolve(false)) => {\n let retryCount = 0;\n const tryFn = () => {\n retryCount++;\n if (isFunction(fn)) {\n return fn();\n }\n };\n maxRetries = (isNumber(maxRetries) && maxRetries > 0 ? maxRetries : 0);\n interval = (isNumber(interval) && interval > 0 ? interval : 0);\n return new Promise((resolve, reject) => {\n const errorFn = function () {\n const errArgs = arguments;\n setTimeout(() => {\n toPromise<boolean>(onBeforeRetry()).then(function (retry) {\n if (retry !== false && (!maxRetries || retryCount <= maxRetries)) {\n toPromise(tryFn()).then(resolve, errorFn);\n } else {\n reject(errArgs);\n }\n }, () => reject(errArgs));\n }, interval);\n };\n toPromise(tryFn()).then(resolve, errorFn);\n });\n};\n\n/**\n * Promise of a defer created using this function, has abort function that will reject the defer when called.\n * @returns {*} angular defer object\n */\nexport const getAbortableDefer = () => {\n const _defer: any = {\n promise: null,\n reject: null,\n resolve: null,\n onAbort: () => { },\n isAborted: false\n };\n _defer.promise = new Promise((resolve, reject) => {\n _defer.resolve = resolve;\n _defer.reject = reject;\n });\n _defer.promise.abort = () => {\n triggerFn(_defer.onAbort);\n _defer.reject('aborted');\n _defer.isAborted = true;\n };\n return _defer;\n};\n\nexport const createCSSRule = (ruleSelector: string, rules: string) => {\n const stylesheet = document.styleSheets[0];\n stylesheet.insertRule(`${ruleSelector} { ${rules} }`);\n};\n\nexport const getUrlParams = (link) => {\n const params = {};\n // If url params are present, construct params object and pass it to search\n const index = link.indexOf('?');\n if (index !== -1) {\n const queryParams = split(link.substring(index + 1, link.length), '&');\n queryParams.forEach((param) => {\n let paramArray = split(param, '=');\n params[paramArray[0]] = paramArray[1];\n });\n }\n return params;\n};\n\nexport const getRouteNameFromLink = (link) => {\n link = link.replace('#/', '/');\n const index = link.indexOf('?');\n if (index !== -1) {\n link = link.substring(0, index);\n }\n return link;\n};\n\nexport const isAppleProduct = /Mac|iPod|iPhone|iPad/.test(window.navigator.platform);\n\nexport const defer = () => {\n const d = {\n promise: null,\n resolve: noop,\n reject: noop\n };\n d.promise = new Promise((resolve, reject) => {\n d.resolve = resolve;\n d.reject = reject;\n });\n return d;\n};\n\n/*\n * Invokes the given list of functions sequentially with the given arguments. If a function returns a promise,\n * then next function will be invoked only if the promise is resolved.\n */\nexport const executePromiseChain = (fns, args, d?, i?) => {\n d = d || defer();\n i = i || 0;\n if (i === 0) {\n fns = filter(fns, function (fn) {\n return !(isUndefined(fn) || isNull(fn));\n });\n }\n if (fns && i < fns.length) {\n try {\n toPromise(fns[i].apply(undefined, args))\n .then(() => executePromiseChain(fns, args, d, i + 1), d.reject);\n } catch (e) {\n d.reject(e);\n }\n } else {\n d.resolve();\n }\n return d.promise;\n};\n\n/**\n * This function accepts two data sources and will check if both are same by comparing the unique id and\n * context in which datasources are present\n * @returns {*} boolean true/ false\n */\nexport const isDataSourceEqual = (d1, d2) => {\n return d1.execute(DataSource.Operation.GET_UNIQUE_IDENTIFIER) === d2.execute(DataSource.Operation.GET_UNIQUE_IDENTIFIER) &&\n isEqual(d1.execute(DataSource.Operation.GET_CONTEXT_IDENTIFIER), d2.execute(DataSource.Operation.GET_CONTEXT_IDENTIFIER));\n};\n\n/**\n * checks if the passed datasource context matches with passed context\n * @param ds, datasource having a context\n * @param ctx, context to compare with\n * @returns {boolean}\n */\nexport const validateDataSourceCtx = (ds, ctx) => {\n return ds.execute(DataSource.Operation.GET_CONTEXT_IDENTIFIER) === ctx;\n};\n\n/**\n * This traverses the filterexpressions object recursively and process the bind string if any in the object\n * @param variable variable object\n * @param name name of the variable\n * @param context scope of the variable\n */\nexport const processFilterExpBindNode = (context, filterExpressions, variable?) => {\n const destroyFn = context.registerDestroyListener ? context.registerDestroyListener.bind(context) : _noop;\n const filter$ = new Subject();\n\n const bindFilExpObj = (obj, targetNodeKey) => {\n const listener = (newVal, oldVal) => {\n if ((newVal === oldVal && isUndefined(newVal)) || (isUndefined(newVal) && !isUndefined(oldVal))) {\n return;\n }\n // Skip cloning for blob column\n if (!includes(['blob', 'file'], obj.type)) {\n newVal = getClonedObject(newVal);\n }\n // backward compatibility: where we are allowing the user to bind complete object\n if (obj.target === 'dataBinding') {\n // remove the existing databinding element\n filterExpressions.rules = [];\n // now add all the returned values\n forEach(newVal, function (value, target) {\n filterExpressions.rules.push({\n 'target': target,\n 'value': value,\n 'matchMode': obj.matchMode || 'startignorecase',\n 'required': false,\n 'type': ''\n });\n });\n } else {\n // setting value to the root node\n obj[targetNodeKey] = newVal;\n }\n filter$.next({ filterExpressions, newVal });\n }\n\n if (stringStartsWith(obj[targetNodeKey], 'bind:')) {\n // [Todo-CSP]: needs a check, where is this used\n destroyFn(\n $watch(obj[targetNodeKey].replace('bind:', ''), context, {}, variable ? variable.invokeOnFiltertExpressionChange.bind(variable, obj, targetNodeKey) : listener, undefined, false, {arrayType: includes(['in', 'notin'], obj.matchMode)})\n );\n }\n };\n\n const traverseFilterExpressions = expressions => {\n if (expressions.rules) {\n forEach(expressions.rules, (filExpObj, i) => {\n if (filExpObj.rules) {\n traverseFilterExpressions(filExpObj);\n } else {\n if (filExpObj.matchMode === 'between') {\n bindFilExpObj(filExpObj, 'secondvalue');\n }\n bindFilExpObj(filExpObj, 'value');\n }\n });\n }\n };\n traverseFilterExpressions(filterExpressions);\n\n return filter$;\n};\n\n// This method will set the given proto on the target\nexport const extendProto = (target, proto) => {\n let _proto = Object.getPrototypeOf(target);\n while (Object.getPrototypeOf(_proto).constructor !== Object) {\n _proto = Object.getPrototypeOf(_proto);\n // return if the prototype of created component and prototype of context are same\n if (proto === _proto) {\n return;\n }\n }\n Object.setPrototypeOf(_proto, proto);\n};\n\nexport const removeExtraSlashes = function (url) {\n const base64regex = /^data:image\\/([a-z]{2,});base64,/;\n if (isString(url)) {\n /*\n * support for mobile apps having local file path url starting with file:/// and\n * support for base64 format\n * */\n if (startsWith(url, 'file:///') || base64regex.test(url)) {\n return url;\n }\n return url.replace(new RegExp('([^:]\\/)(\\/)+', 'g'), '$1');\n }\n};\n\n$.cachedScript = (() => {\n const inProgress = new Map();\n const resolved = new Set();\n\n const isInProgress = url => inProgress.has(url);\n const isResolved = url => resolved.has(url);\n const onLoad = url => {\n resolved.add(url);\n inProgress.get(url).resolve();\n inProgress.delete(url);\n };\n\n const setInProgress = url => {\n let resFn;\n let rejFn;\n const promise: any = new Promise((res, rej) => {\n resFn = res;\n rejFn = rej;\n });\n\n promise.resolve = resFn;\n promise.reject = rejFn;\n\n inProgress.set(url, promise);\n };\n\n return function (url) {\n if (isResolved(url)) {\n return Promise.resolve();\n }\n\n if (isInProgress(url)) {\n return inProgress.get(url);\n }\n\n setInProgress(url);\n\n const options = {\n dataType: 'script',\n cache: true,\n url\n };\n\n $.ajax(options).done(() => onLoad(url));\n\n return inProgress.get(url);\n };\n})();\n\nconst DEFAULT_DISPLAY_FORMATS = {\n DATE: 'yyyy-MM-dd',\n TIME: 'hh:mm a',\n TIMESTAMP: 'yyyy-MM-dd hh:mm:ss a',\n DATETIME: 'yyyy-MM-dd hh:mm:ss a',\n};\n// This method returns the display date format for given type\nexport const getDisplayDateTimeFormat = type => {\n return DEFAULT_DISPLAY_FORMATS[toUpper(type)];\n};\n\n// Generate for attribute on label and ID on input element, so that label elements are associated to form controls\nexport const addForIdAttributes = (element: HTMLElement) => {\n const labelEl = element.querySelectorAll('label.control-label');\n let inputEl = element.querySelectorAll('[focus-target]');\n if (!inputEl.length) {\n inputEl = element.querySelectorAll('input, select, textarea');\n }\n /*if there are only one input el and label El add id and for attribute*/\n if (labelEl.length && inputEl.length) {\n const widgetId = $(inputEl[0] as HTMLElement).closest('[widget-id]').attr('widget-id');\n if (widgetId) {\n setAttr(inputEl[0] as HTMLElement, 'id', widgetId);\n setAttr(labelEl[0] as HTMLElement, 'for', widgetId);\n }\n }\n /*Adding aria-labelledby to radioset, checkboxset widgets*/\n const ulEl = element.querySelectorAll('ul');\n if (labelEl.length && ulEl.length && (ulEl[0].getAttribute('role') === 'radiogroup' || ulEl[0].getAttribute('role') === 'group')) {\n const widgetId = 'wm-group-label-' + generateGUId();\n setAttr(ulEl[0] as HTMLElement, 'aria-labelledby', widgetId);\n setAttr(labelEl[0] as HTMLElement, 'id', widgetId);\n }\n};\n\n/**\n * This method is used to adjust the container position\n * For example: 1. When datepicker control placed closed to the screen left edges, it is going to negative values which is cutting the container.\n * To Fix the container overlapping issue changing the contrainer left translation to 0\n * @param containerElem - picker/dropdown container element(jquery)\n * @param parentElem - widget native element\n * @param ref - scope of particular library directive\n * @param ele - Child element(jquery). For some of the widgets(time, search) containerElem doesn't have height. The inner element(dropdown-menu) has height so passing it as optional.\n */\nexport const adjustContainerPosition = (containerElem, parentElem, ref, ele?) => {\n const zoneRef = ref._ngZone || ref.ngZone;\n zoneRef.onStable.subscribe(() => {\n const containerEleTransformations = getWebkitTraslationMatrix(containerElem);\n if (containerEleTransformations.m41 < 0) {\n containerEleTransformations.m41 = 0;\n } else {\n return;\n }\n setTranslation3dPosition(containerElem, containerEleTransformations);\n });\n };\n\n\n/**\n * This method is used to adjust the container position\n * For example: 1. When datepicker control placed closed to the screen right edges, it is going to out of the viewport values which is cutting the container.\n * @param containerElem picker/dropdown container element(jquery)\n * @param parentElem widget native element\n * @param ref scope of particular library directive\n * @param ele Child element(jquery). For some of the widgets(time, search) containerElem doesn't have height. The inner element(dropdown-menu) has height so passing it as optional.\n */\n export const adjustContainerRightEdges = (containerElem, parentElem, ref, ele?) => {\n const containerWidth = ele ? parseInt(ele.css('width')) : parseInt(containerElem.css('width'));\n const viewPortWidth = $(window).width() + window.scrollX;\n const parentDimesion = parentElem.getBoundingClientRect();\n const parentRight = parentDimesion.right + window.scrollX;\n let newLeft;\n const zoneRef = ref._ngZone || ref.ngZone;\n zoneRef.onStable.subscribe(() => {\n const containerEleTransformations = getWebkitTraslationMatrix(containerElem);\n\n if (viewPortWidth - (parentRight + parentDimesion.width) < containerWidth) {\n newLeft = parentRight - containerWidth;\n if (newLeft < 0) {\n newLeft = 0;\n }\n containerEleTransformations.m41 = newLeft;\n } else {\n return;\n }\n setTranslation3dPosition(containerElem, containerEleTransformations);\n });\n };\n\n /**\n * For given element set the traslation\n * @param containerElem tanslated element\n *\n * @param containerEleTransformations translate matrix positions\n */\n export const setTranslation3dPosition = (containerElem, containerEleTransformations) => {\n const translatePosition = 'translate3d(' + containerEleTransformations.m41 + 'px, ' + containerEleTransformations.m42 + 'px, 0px)';\n containerElem[0].style.webkitTransform = translatePosition;\n containerElem[0].style.MozTransform = translatePosition;\n containerElem[0].style.msTransform = translatePosition;\n containerElem[0].style.OTransform = translatePosition;\n containerElem[0].style.transform = translatePosition;\n };\n\n /**\n *\n * @param containerElem elemet for the WebKitCSSMatrix\n */\n export const getWebkitTraslationMatrix = (containerElem) => {\n if (typeof WebKitCSSMatrix === 'undefined') {\n return new MSCSSMatrix(window.getComputedStyle(containerElem[0]).transform);\n }\n return new WebKitCSSMatrix(window.getComputedStyle(containerElem[0]).webkitTransform);\n }\n\n// close all the popovers.\nexport const closePopover = (element) => {\n if (!element.closest('.app-popover').length) {\n const popoverElements = document.querySelectorAll('.app-popover-wrapper');\n forEach(popoverElements, (ele) => {\n if (ele.widget.isOpen) {\n ele.widget.isOpen = false;\n }\n });\n }\n};\n\n/**\n * This method is to trigger change detection in the app\n * This is exposed for the end user developer of WM app\n * This is the alternative for $rs.$safeApply() in AngularJS\n * See $appDigest in utils for more info\n */\nexport const detectChanges = $appDigest;\n\n/**\n * This method is to trigger the action/link of menu/nav item\n * @param scope - scope of the widget\n * @param item - item object\n */\nexport const triggerItemAction = (scope, item) => {\n let itemLink = item.link;\n const itemAction = item.action;\n const linkTarget = item.target;\n if (itemAction) {\n if (!scope.itemActionFn) {\n //[Todo-CSP]: This will not work as function will be dynamic\n scope.itemActionFn = $parseEvent(itemAction);\n }\n\n scope.itemActionFn(scope.userDefinedExecutionContext, Object.create(item));\n }\n if (itemLink) {\n if (itemLink.startsWith('#/') && (!linkTarget || linkTarget === '_self')) {\n const queryParams = getUrlParams(itemLink);\n itemLink = getRouteNameFromLink(itemLink);\n const router = get(scope, 'route') || get(scope, 'menuRef.route');\n router.navigate([itemLink], { queryParams });\n } else {\n openLink(itemLink, linkTarget);\n }\n }\n};\n\n/**\n * This method is to get datsource from the expression\n * @param expr - expression of the dataset\n * @param scope - scope of the widget\n * Example1: expr - \"Variables.staticVar1.dataSet.details[$i].addresses\" then the method will return datasource as Variables.staticVar1\n * Example2: expr - \"Widgets.list1.currentItem.addresses\" and list1 is bound to \"Variables.staticVar1.dataSet.details\" then the method will return datasource as Variables.staticVar1\n */\nexport const getDatasourceFromExpr = (expr, scope) => {\n const isBoundToVariable = startsWith(expr, 'Variables.');\n const isBoundToWidget = startsWith(expr, 'Widgets.');\n const parts = expr.split('.');\n if (isBoundToVariable) {\n return get(scope.viewParent.Variables, parts[1]);\n }\n if (isBoundToWidget) {\n const widgetScope = get(scope.viewParent.Widgets, parts[1]);\n const widgetDatasetBoundExpr = widgetScope.$attrs.get('datasetboundexpr');\n let widgetBoundExpression;\n widgetBoundExpression = (!widgetScope.datasource && widgetDatasetBoundExpr) ? widgetDatasetBoundExpr : widgetScope.binddataset;\n return getDatasourceFromExpr(widgetBoundExpression, widgetScope);\n }\n};\n\n/**\n * This method is to get dataset bound expression from list currentitem expression\n * @param expr - bound dataset expression\n * @param scope - scope of the widget\n * Example1: expr - \"Widgets.list1.currentItem.details\" and list1 is bound to \"Variables.staticVar1.dataSet\" then it returns expression as \"Variables.staticVar1.dataSet[$i].details\"\n */\nexport const extractCurrentItemExpr = (expr, scope) => {\n const currentItemRegEx = /^Widgets\\..*\\.currentItem/g;\n if (currentItemRegEx.test(expr)) {\n const parts = expr.split('.');\n const widgetScope = get(scope.viewParent.Widgets, parts[1]);\n const widgetDatasetBoundExpr = widgetScope.$attrs.get('datasetboundexpr');\n if (!widgetScope.datasource && widgetDatasetBoundExpr) {\n expr = expr.replace(/^Widgets\\..*\\.currentItem/g, `${widgetDatasetBoundExpr}[$i]`);\n return extractCurrentItemExpr(expr, scope);\n } else {\n expr = expr.replace(/^Widgets\\..*\\.currentItem/g, `${widgetScope.binddataset}[$i]`);\n }\n }\n return expr;\n};\n\n// this will add the html tag to the widget to scope the css to the page.\nexport const findRootContainer = ($el) => {\n let root = $el.closest('.app-prefab');\n if (!root.length) {\n root = $el.closest('.app-partial');\n }\n if(!root.length) {\n root = $el.closest('.app-spa-page');\n }\n if (!root.length) {\n root = $el.closest('.app-page');\n }\n return root.length && root.parent()[0].tagName;\n};\n\nexport const VALIDATOR = {\n REQUIRED: 'required',\n MAXCHARS: 'maxchars',\n MINVALUE: 'minvalue',\n MAXVALUE: 'maxvalue',\n REGEXP: 'regexp',\n MINDATE: 'mindate',\n MAXDATE: 'maxdate',\n MINTIME: 'mintime',\n MAXTIME: 'maxtime',\n EXCLUDEDATES: 'excludedates',\n EXCLUDEDAYS: 'excludedays'\n};\n\nexport const transformFileURI = (url) => {\n return url;\n};\n\nexport const appendScriptToHead = (callback) =>{\n\n const scriptele = document.createElement('script');\n scriptele.onload = () => {\n callback(WM_CUSTOM_FORMATTERS);\n };\n scriptele.onerror = err => {\n console.warn('Error while loading the file ' + scriptele.src + '\\n' + err);\n };\n scriptele.type = 'text/javascript';\n scriptele.src = './extensions/formatters.js';\n document.head.appendChild(scriptele);\n};\n\nexport const getAppSetting = (key, defaultValue) => {\n return (_WM_APP_PROPERTIES.extra_settings && get(_WM_APP_PROPERTIES.extra_settings, key)) || defaultValue;\n};\n\n/* this function sets the itemclass depending on itemsperrow.\n * if itemsperrow is 2 for large device, then itemclass is 'col-xs-1 col-sm-1 col-lg-2'\n * if itemsperrow is 'lg-3' then itemclass is 'col-lg-3'\n*/\nexport const setListClass = (scope) => {\n let temp = '';\n if (scope.itemsperrow) {\n if(scope.itemsperrow === \"auto\") {\n scope.itemsPerRowClass = \"\";\n } else if (isNaN(parseInt(scope.itemsperrow, 10))) {\n // handling itemsperrow containing string of classes\n split(scope.itemsperrow, ' ').forEach((cls: string) => {\n const keys = split(cls, '-');\n cls = `${keys[0]}-${(12 / parseInt(keys[1], 10))}`;\n temp += ` col-${cls}`;\n });\n scope.itemsPerRowClass = temp.trim();\n } else {\n // handling itemsperrow having integer value.\n scope.itemsPerRowClass = `col-xs-${(12 / parseInt(scope.itemsperrow, 10))}`;\n }\n } else { // If itemsperrow is not specified make it full width\n scope.itemsPerRowClass = 'col-xs-12';\n }\n};\n\nexport const findParent = (lView: any, viewParentApp?: any) => {\n let parent = findViewParent(lView);\n return parent ? parent : viewParentApp;\n}\n\nexport const findViewParent = (lView: any) => {\n return lView[15] ? lView[15][8] : lView[15];\n /*if(lView[3] === null) {\n return lView[8];\n }\n let parentlView = lView[3];\n if(typeof lView[1] === \"boolean\") {\n return findViewParent(parentlView);\n }\n let componentType = lView[1][\"type\"];\n if(componentType === 0 || componentType === 1) {\n let p = lView[8];\n // ts-ignore\n if(p.hasOwnProperty(\"isDialogComponent\") || p.hasOwnProperty(\"isContainerDirective\")) {\n return findViewParent(parentlView);\n } else {\n return p;\n }\n } else {\n return findViewParent(parentlView);\n }*/\n}\n\nexport const getFontConfig = () => {\n return _WM_APP_PROPERTIES.fontConfig || getPreviewProperties();\n}\n\nexport const adjustVerticalPosition = (containerElem, parentElem: HTMLElement, ref, ele?): void => {\n const zoneRef = ref._ngZone || ref.ngZone;\n\n zoneRef.onStable.subscribe(() => {\n const containerHeight = ele\n ? parseInt(ele.css('height'), 10)\n : parseInt(containerElem.css('height'), 10);\n\n const rect = parentElem.getBoundingClientRect();\n const viewportHeight = window.innerHeight;\n\n const spaceBelow = viewportHeight - rect.bottom;\n const spaceAbove = rect.top;\n\n if (spaceBelow < containerHeight && spaceAbove >= containerHeight) {\n const matrix = getWebkitTraslationMatrix(containerElem);\n\n matrix.m42 = matrix.m42 - containerHeight - rect.height;\n\n if (matrix.m42 < 0) {\n matrix.m42 = 0;\n }\n\n setTranslation3dPosition(containerElem, matrix);\n }\n });\n};\n/*export const getParent = (parent: any) => {\n if(parent.hasOwnProperty(\"isDynamicComponent\") || parent.hasOwnProperty(\"isPageComponent\")) {\n return parent\n } else{\n return parent.viewParent ? getParent(parent.viewParent) : parent;\n }\n\n}*/\n","import { Subject } from 'rxjs';\n\nimport { isObject, noop } from './utils';\n\nexport class EventNotifier {\n\n private _subject = new Subject();\n private _isInitialized = false;\n private _eventsBeforeInit = [];\n\n constructor(start = true) {\n if (start) {\n this.start();\n }\n }\n\n /**\n * A event can be fired, but will be sent to subscribers only after exchange is started.\n *\n * @param {string} eventName\n * @param data\n */\n public notify(eventName: string, ...data: Array<any>) {\n if (this._isInitialized) {\n this._subject.next({\n name: eventName,\n data: data\n });\n } else {\n this._eventsBeforeInit.push({\n name: eventName,\n data: data\n });\n }\n }\n\n /**\n * starts the exchange and send the pending events to subscribers.\n */\n public start() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._eventsBeforeInit.forEach((event) => this._subject.next(event));\n }\n }\n\n /**\n * upon subscription, method to cancel subscription is returned.\n *\n * @param eventName\n * @param {(data: any) => void} callback\n * @returns {() => void}\n */\n public subscribe(eventName, callback: (...data: Array<any>) => void): () => void {\n let eventListener;\n if (eventName && callback) {\n eventListener = this._subject\n .subscribe((event: any) => {\n if (event && isObject(event) && event.name === eventName) {\n callback.apply(undefined, event.data);\n }\n });\n return () => {\n eventListener.unsubscribe();\n };\n }\n return noop;\n }\n\n public destroy(): void {\n this._subject.next(null); // optional\n this._subject.complete(); // clears all observers\n this._isInitialized = false;\n this._eventsBeforeInit = [];\n } \n}\n","import {Injectable, OnDestroy} from '@angular/core';\nimport {EventNotifier} from '../utils/event-notifier';\nimport {isAndroid, isAndroidTablet, isIos} from '../utils/utils';\nimport {get} from \"lodash-es\";\n\nlet MINIMUM_MOBILE_WIDTH = 480;\nlet MINIMUM_TAB_WIDTH = 768;\nlet MINIMUM_LARGE_SCREEN_WIDTH = 1200;\n\nconst enum SCREEN_TYPE {\n MOBILE,\n TABLET,\n LARGE_SCREEN_DEVICES\n}\n\nexport class IViewportService {\n notify: (eventname: ViewportEvent, options?: Array<any>) => void;\n subscribe: (eventname: ViewportEvent, callback: (data: any) => void) => void;\n}\n\nexport const enum ViewportEvent {\n ORIENTATION_CHANGE = 'orientationchange',\n RESIZE = 'resize'\n}\n\n@Injectable({providedIn: 'root'})\nexport class Viewport implements IViewportService, OnDestroy {\n public orientation = {\n isPortrait: false,\n isLandscape: false\n };\n public isMobileType = false;\n public isTabletType = false;\n private type;\n public _eventNotifier = new EventNotifier(true);\n private screenWidth;\n private screenHeight;\n private selectedViewPort: any;\n private boundResizeFn: (event: Event) => void; // MEMORY LEAK FIX: Store bound function\n private mediaQuery: MediaQueryList; // MEMORY LEAK FIX: Store media query reference for cleanup\n private boundOrientationChange: (event: MediaQueryListEvent) => void; // MEMORY LEAK FIX: Store bound function\n\n constructor() {\n this.setScreenType();\n\n // MEMORY LEAK FIX: Store bound function reference for proper removal\n this.boundResizeFn = this.resizeFn.bind(this);\n window.addEventListener(ViewportEvent.RESIZE, this.boundResizeFn);\n\n this.mediaQuery = window.matchMedia('(orientation: portrait)');\n if (this.mediaQuery.matches) {\n this.orientation.isPortrait = true;\n } else {\n this.orientation.isLandscape = true;\n }\n\n // Add a media query change listener\n // addEventListener is not supported ios browser\n if (this.mediaQuery.addEventListener) {\n // MEMORY LEAK FIX: Store bound function reference for proper removal\n this.boundOrientationChange = ($event) => this.orientationChange($event, !$event.matches);\n this.mediaQuery.addEventListener('change', this.boundOrientationChange);\n }\n }\n\n update(selectedViewPort: object) {\n this.selectedViewPort = selectedViewPort;\n this.setScreenType();\n }\n\n private orientationChange($event, isLandscape) {\n if (isLandscape !== this.orientation.isLandscape) {\n this.orientation.isPortrait = !isLandscape;\n this.orientation.isLandscape = isLandscape;\n this.notify(ViewportEvent.ORIENTATION_CHANGE, { $event, data: {isPortrait: !isLandscape, isLandscape: isLandscape} });\n }\n }\n\n private resizeFn($event) {\n const $el = document.querySelector('.wm-app');\n if (!$el) {\n return;\n }\n this.setScreenType();\n this.orientationChange($event, this.screenWidth >= this.screenHeight);\n this.notify(ViewportEvent.RESIZE, {$event, data: {screenWidth: this.screenWidth, screenHeight: this.screenHeight}});\n }\n\n public subscribe(eventName: string, callback: (data: any) => void): () => void {\n return this._eventNotifier.subscribe(eventName, callback);\n }\n\n public notify(eventName: string, ...data: Array<any>) {\n this._eventNotifier.notify(eventName, ...data);\n }\n\n private setScreenType() {\n const $el = document.querySelector('.wm-app');\n this.screenWidth = $el.clientWidth;\n this.screenHeight = $el.clientHeight;\n\n // const minValue = this.screenWidth < this.screenHeight ? this.screenWidth : this.screenHeight;\n // const maxValue = this.screenWidth > this.screenHeight ? this.screenWidth : this.screenHeight;\n\n this.isTabletType = false;\n this.isMobileType = false;\n\n if (get(this.selectedViewPort, 'deviceCategory')) {\n const deviceCategory = (this.selectedViewPort as any).deviceCategory;\n if (deviceCategory === 'Tab') {\n this.isTabletType = true;\n } else if (deviceCategory === 'Smartphone') {\n this.isMobileType = true;\n }\n } else {\n MINIMUM_MOBILE_WIDTH = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--screen-xs')) || 480;\n MINIMUM_TAB_WIDTH = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--screen-sm')) || 768;\n MINIMUM_LARGE_SCREEN_WIDTH = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--screen-lg')) || 1200;\n if (this.screenWidth >= MINIMUM_LARGE_SCREEN_WIDTH) {\n this.isTabletType = isAndroid() || isIos() || isAndroidTablet();\n this.isMobileType = false;\n } else if (this.screenWidth >= MINIMUM_TAB_WIDTH) {\n this.type = SCREEN_TYPE.TABLET;\n this.isTabletType = true;\n } else {\n this.type = SCREEN_TYPE.MOBILE;\n this.isMobileType = true;\n }\n }\n }\n\n ngOnDestroy() {\n this._eventNotifier.destroy();\n \n // MEMORY LEAK FIX: Remove resize event listener using stored bound function reference\n if (this.boundResizeFn) {\n window.removeEventListener('resize', this.boundResizeFn);\n this.boundResizeFn = null;\n }\n\n // MEMORY LEAK FIX: Remove media query orientation change listener\n if (this.mediaQuery && this.boundOrientationChange && this.mediaQuery.removeEventListener) {\n this.mediaQuery.removeEventListener('change', this.boundOrientationChange);\n this.boundOrientationChange = null;\n }\n this.mediaQuery = null;\n }\n}\n","import { Injectable} from '@angular/core';\nimport { VALIDATOR } from '../utils/utils';\n\n@Injectable({providedIn: 'root'})\nexport class ConstantService {\n MATCH_MODES = {\n STARTS_WITH_IGNORE_CASE: 'startignorecase',\n STARTS_WITH: 'start',\n ENDS_WITH_IGNORE_CASE: 'endignorecase',\n ENDS_WITH: 'end',\n CONTAINS: 'anywhere',\n CONTAINS_IGNORE_CASE: 'anywhereignorecase',\n IS_EQUAL_WITH_IGNORE_CASE: 'exactignorecase',\n IS_EQUAL: 'exact'\n };\n\n VALIDATOR = VALIDATOR;\n}\n","import { Injectable } from '@angular/core';\n\nimport * as Utils from '../utils/utils';\nimport {assign} from \"lodash-es\";\n\n@Injectable({providedIn: 'root'})\nexport class UtilsService {\n constructor() {\n assign(this, Utils);\n }\n}\n","import { Injectable } from '@angular/core';\nimport {assign} from \"lodash-es\";\n\n@Injectable({providedIn: 'root'})\nexport class FieldTypeService {\n constructor() {\n assign(this, {\n INTEGER : 'integer',\n BIG_INTEGER : 'big_integer',\n SHORT : 'short',\n FLOAT : 'float',\n BIG_DECIMAL : 'big_decimal',\n DOUBLE : 'double',\n LONG : 'long',\n BYTE : 'byte',\n STRING : 'string',\n CHARACTER : 'character',\n TEXT : 'text',\n DATE : 'date',\n TIME : 'time',\n TIMESTAMP : 'timestamp',\n DATETIME : 'datetime',\n BOOLEAN: 'boolean',\n LIST : 'list',\n CLOB : 'clob',\n BLOB : 'blob'\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport {assign} from \"lodash-es\";\n\n@Injectable({providedIn: 'root'})\nexport class FieldWidgetService {\n constructor() {\n assign(this, {\n TEXT : 'text',\n NUMBER : 'number',\n TEXTAREA : 'textarea',\n PASSWORD : 'password',\n CHECKBOX : 'checkbox',\n SLIDER : 'slider',\n RICHTEXT : 'richtext',\n CURRENCY : 'currency',\n SWITCH : 'switch',\n SELECT : 'select',\n CHECKBOXSET : 'checkboxset',\n RADIOSET : 'radioset',\n DATE : 'date',\n TIME : 'time',\n TIMESTAMP : 'timestamp',\n UPLOAD : 'upload',\n RATING : 'rating',\n DATETIME : 'datetime',\n AUTOCOMPLETE : 'autocomplete',\n CHIPS : 'chips',\n COLORPICKER : 'colorpicker'\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\n\nimport { _WM_APP_PROJECT } from '../utils/utils';\n\ninterface Scripts {\n name: string;\n src: string;\n}\n\nexport const ScriptStore: Scripts[] = [];\n\ndeclare var document: any;\n\n@Injectable({providedIn: 'root'})\nexport class ScriptLoaderService {\n\n private scripts: any = {};\n\n constructor(private http: HttpClient) {\n ScriptStore.forEach((script: any) => {\n this.scripts[script.name] = {\n loaded: false,\n src: script.src\n };\n });\n }\n\n load(...scripts: string[]): Promise<any> {\n if (scripts && scripts.length) {\n return Promise.all(scripts.map( s => {\n return this.loadScript(s);\n }));\n }\n return Promise.resolve();\n }\n\n private loadScript(name: string) {\n return new Promise((resolve, reject) => {\n if (this.scripts[name] && this.scripts[name].loaded) {\n resolve({ script: name, loaded: true });\n return;\n } else if (!this.scripts[name]) {\n this.scripts[name] = {\n loaded: false,\n src: name\n };\n }\n //load script\n let script = document.createElement('script');\n script.type = 'text/javascript';\n script.async = false;\n const src = this.scripts[name].src;\n if (src.startsWith(\"http\")) {\n script.src = src;\n } else {\n script.src = (_WM_APP_PROJECT.cdnUrl || _WM_APP_PROJECT.ngDest) + src;\n }\n if (script.readyState) { //IE\n script.onreadystatechange = () => {\n if (script.readyState === \"loaded\" || script.readyState === \"complete\") {\n script.onreadystatechange = null;\n this.scripts[name].loaded = true;\n resolve({script: name, loaded: true });\n }\n };\n } else { //Others\n script.onload = () => {\n this.scripts[name].loaded = true;\n resolve({script: name, loaded: true });\n };\n }\n script.onerror = (error: any) => resolve({script: name, loaded: false, status: 'Loaded'});\n document.getElementsByTagName('head')[0].appendChild(script);\n });\n }\n\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({ providedIn: 'root' })\nexport class CustomPipeManager {\n private customPipes: any = new Map();\n\n public setCustomPipe(key: string, value: any) {\n this.customPipes.set(key, value);\n }\n\n public getCustomPipe(key: string) {\n return this.customPipes.get(key);\n }\n\n public hasCustomPipe(key: string): boolean {\n return this.customPipes.has(key);\n }\n\n\n}\n\n","import { inject, Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { getFontConfig, loadStyleSheets } from \"../utils/utils\";\n\n@Injectable({providedIn: 'root'})\nexport class CustomIconsLoaderService {\n // private http = inject(HttpClient);\n load() {\n const { default: fontConfig } = getFontConfig();\n const cssPaths = (fontConfig?.fonts ?? [])\n .filter(font => !!font.csspath)\n .map(font => font.csspath);\n\n loadStyleSheets(cssPaths);\n }\n}\n\n","import { Injectable } from '@angular/core';\nimport {clone, get, includes, isArray, isEmpty, isObject, merge} from \"lodash-es\";\n\n@Injectable({ providedIn: 'root' })\nexport class StatePersistence {\n private HISTORY_HANDLER = 'replace';\n private HISTORY_HANDLER_TYPES = {'push': 'pushState', 'replace': 'replaceState'};\n private WIDGET_STATE_KEY = 'ws';\n\n /**\n * Sets the passed value as the History handler if it exists in the History_Handler_Types object\n * @param val\n */\n public setHistoryHandler(val) {\n if (Object.keys(this.HISTORY_HANDLER_TYPES).indexOf(val) > -1) {\n this.HISTORY_HANDLER = val;\n }\n }\n\n /**\n * Constructs a unique key for setting state param by using the viewParent property of a widget\n * so that name conflicts are avoided when the same widget name is\n * present inside a Page, a Partial within a Page or a Prefab within a Page and so on.\n * E.g.:\n * if a page has a tabs widget with the name tabs1, a partial Partial1(inside container1) inclusion within which\n * there is a tabs with name tabs1 and a prefab MyPrefab inclusion with a tabs widget with the name tabs1,\n * getNestedPath will return tabs1, container1.Partial1.tabs1 and MyPrefab1.MyPrefab.tabs1 respectively.\n * @param viewParent\n * @param widgetName\n * @param currentOutput\n */\n public getNestedPath(viewParent: any, widgetName: string, currentOutput?: string) {\n let out = currentOutput || widgetName;\n if (viewParent && (viewParent.prefabName || viewParent.partialName)) {\n out = out.length > 0 ? out + '.' + (viewParent.prefabName || viewParent.partialName) : (viewParent.prefabName || viewParent.partialName);\n // same partial/prefab can be dropped multiple times in a page. Appending container's name for uniqueness.\n out = out + '.' + viewParent.containerWidget.name;\n return this.getNestedPath(viewParent.containerWidget.viewParent, widgetName, out);\n }\n return out.split('.').reverse().join('.');\n }\n\n /**\n * Decodes and parses the state information and returns the parsed state object\n * @param mode : optional parameter if the widget/variable uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public getStateInformation(mode) {\n let parsedStateInfo, stateInfo;\n if (mode.toLowerCase() === 'url') {\n const decodedURI = decodeURIComponent(window.location.href);\n stateInfo = decodedURI.match(/(wm_state=).*?(&|$)/);\n if (stateInfo) {\n stateInfo = stateInfo[0].replace('wm_state=', '');\n parsedStateInfo = this.uriToJson(stateInfo);\n return parsedStateInfo;\n }\n } else if (mode.toLowerCase() === 'localstorage') {\n stateInfo = localStorage.getItem(window.location.pathname.replace(/\\//g, '') + '_wm_state');\n } else if (mode.toLowerCase() === 'sessionstorage') {\n stateInfo = sessionStorage.getItem(window.location.pathname.replace(/\\//g, '') + '_wm_state');\n }\n if (stateInfo) {\n parsedStateInfo = JSON.parse(stateInfo);\n return parsedStateInfo;\n }\n\n return;\n }\n\n /**\n * Checks if the passed widget instance has any state information available or not\n * @param widget\n * @param mode : optional parameter if the widget uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public getWidgetState(widget, mode?) {\n mode = mode || this.computeMode(widget.statehandler);\n if (!mode) {\n return;\n }\n let parsedStateInfo = this.getStateInformation(mode);\n if (parsedStateInfo && widget && widget.getAppInstance().activePageName && (mode.toLowerCase() === 'localstorage' || mode.toLowerCase() === 'sessionstorage')) {\n parsedStateInfo = parsedStateInfo[widget.getAppInstance().activePageName];\n }\n if (get(parsedStateInfo, this.WIDGET_STATE_KEY)) {\n const stateKey = this.getNestedPath(widget.viewParent, widget.getWidget().name);\n return parsedStateInfo[this.WIDGET_STATE_KEY][stateKey];\n }\n return;\n }\n\n public computeMode(widgetStateHandler) {\n if (!widgetStateHandler) {\n return 'url';\n } else if (widgetStateHandler && widgetStateHandler.toLowerCase() === 'none') {\n return;\n } else {\n return widgetStateHandler.toLowerCase();\n }\n }\n\n /**\n * Sets the passed value to the state information by using the passed widget instance\n * @param widget\n * @param value\n * @param mode : optional parameter if the widget uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public setWidgetState(widget, value, mode?) {\n const stateKey = this.getNestedPath(widget.viewParent, widget.getWidget().name);\n mode = mode || this.computeMode(widget.statehandler);\n if (!mode) {\n return;\n }\n this.setStateParams(this.WIDGET_STATE_KEY, stateKey, value, mode, widget);\n }\n\n /**\n * Removes the passed widget’s state information from the State Object. If a key is passed, then only that\n * particular entry will be removed, not any other entries for that widget.\n * @param widget\n * @param key\n * @param mode : optional parameter if the widget uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public removeWidgetState(widget, key?, mode?) {\n mode = mode || this.computeMode(widget.statehandler);\n if (!mode) {\n return;\n }\n const stateKey = this.getNestedPath(widget.viewParent, widget.getWidget().name);\n this.removeStateParam(this.WIDGET_STATE_KEY, stateKey, key, mode, widget);\n }\n\n /**\n * Sets the passed value to the state information by using the passed variable name as key\n * @param variableName\n * @param value\n * @param mode : optional parameter if the variable uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public setStateVariable(variableName, value, mode?) {\n mode = mode || this.computeMode(mode);\n if (!mode) {\n return;\n }\n this.setStateParams('', variableName, value, mode);\n }\n\n /**\n * Checks if the passed variable name has any state information available in the url or not\n * @param variableName\n * @param mode : optional parameter if the variable uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public getStateVariable(variableName: string, mode?) {\n mode = mode || this.computeMode(mode);\n if (!mode) {\n return;\n }\n const parsedStateInfo = this.getStateInformation(mode);\n if (parsedStateInfo) {\n return parsedStateInfo[variableName];\n }\n return;\n }\n\n /**\n * Removes the passed variable’s state information from the URL.\n * @param variableName\n * @param mode : optional parameter if the widget uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public removeStateVariable(variableName, mode?) {\n mode = mode || this.computeMode(mode);\n if (!mode) {\n return;\n }\n this.removeStateParam('', variableName, null, mode);\n }\n\n /**\n * Sets the passed state information in the url by parsing the passed value and checking\n * its type. If its an array type, then the passed values will be pushed into an array and then set in the state\n * E.g.\n * Current state information is like :\n {\n \"widget_state\": {\n \"Table1\": {\n \"selectedItem\": [\n {\n \"page\": \"1\",\n \"index\": \"1\"\n }\n ],\n \"pagination\": \"1\"\n }\n }\n }\n * Input value will be like:\n {\n \"selectedItem\": [\n {\n \"page\": \"1\",\n \"index\": \"2\"\n }\n ]\n }\n\n * This parsing logic will convert it to the following\n {\n \"widget_state\": {\n \"Table1\": {\n \"selectedItem\": [\n {\n \"page\": \"1\",\n \"index\": \"1\"\n },\n {\n \"page\": \"1\",\n \"index\": \"2\"\n }\n ],\n \"pagination\": \"1\"\n }\n }\n }\n * Based on how the HISTORY_HANDLER is configured, the updated url will either replace the existing url or\n * push a new state in the url so that back button may track each update to the state.\n * @param stateParam\n * @param key\n * @param val\n * @param mode : optional parameter if the widget/variable uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public setStateParams(stateParam: string, key: string, val: any, mode?, widget?) {\n let url = '', parsedObj;\n const stateObj = this.getStateInformation(mode);\n if (widget && stateObj && widget.getAppInstance().activePageName && (mode.toLowerCase() === 'localstorage' || mode.toLowerCase() === 'sessionstorage')) {\n parsedObj = stateObj[widget.getAppInstance().activePageName];\n } else {\n parsedObj = clone(stateObj);\n }\n if (stateParam) {\n if (parsedObj && !parsedObj[stateParam]) {\n parsedObj[stateParam] = {};\n } else if (!parsedObj) {\n parsedObj = {[stateParam]: {}};\n }\n if (isObject(val) && !isArray(val)) {\n parsedObj[stateParam][key] = parsedObj[stateParam][key] || {};\n merge(parsedObj[stateParam][key], val);\n } else {\n parsedObj[stateParam][key] = val;\n }\n } else {\n if (parsedObj && !parsedObj[key]) {\n parsedObj[key] = {};\n } else if (!parsedObj) {\n parsedObj = {[key]: {}};\n }\n if (isObject(val) && !isArray(val)) {\n parsedObj[key] = parsedObj[key] || {};\n merge(parsedObj[key], val);\n } else {\n parsedObj[key] = val;\n }\n }\n // for Local and Session Storage, wrap state object inside page name so that widget name conflicts don't arise between pages.\n if (widget && widget.getAppInstance().activePageName && (mode.toLowerCase() === 'localstorage' || mode.toLowerCase() === 'sessionstorage')) {\n if (stateObj) {\n stateObj[widget.getAppInstance().activePageName] = parsedObj;\n parsedObj = stateObj;\n } else {\n parsedObj = {[widget.getAppInstance().activePageName]: parsedObj};\n }\n\n }\n\n\n let decodedURI = decodeURIComponent(window.location.href);\n if (decodedURI.indexOf('?') < 0) {\n decodedURI = decodedURI + '?wm_state=';\n } else if (decodedURI.indexOf('wm_state') < 0) {\n decodedURI = decodedURI + '&wm_state=';\n }\n url = decodedURI.replace(/(wm_state=).*?(&|$)/ ,'$1' + this.jsonToUri(parsedObj) + '$2');\n\n if (mode.toLowerCase() === 'localstorage') {\n localStorage.setItem(window.location.pathname.replace(/\\//g, '') + '_wm_state', JSON.stringify(parsedObj));\n return;\n } else if (mode.toLowerCase() === 'sessionstorage') {\n sessionStorage.setItem(window.location.pathname.replace(/\\//g, '') + '_wm_state', JSON.stringify(parsedObj));\n return;\n }\n\n if (decodeURIComponent(window.location.href) === decodeURIComponent(url)) {\n return;\n }\n if (this.HISTORY_HANDLER === 'push') {\n window.history.pushState({ path: url }, '', url);\n } else if (this.HISTORY_HANDLER === 'replace') {\n window.history.replaceState({ path: url }, '', url);\n }\n }\n\n /**\n * Removes the passed state information from the url\n * E.g.\n * Current state information is like :\n {\n \"widget_state\": {\n \"Table1\": {\n \"selectedItem\": [\n {\n \"page\": \"1\",\n \"index\": \"1\"\n },\n {\n \"page\": \"2\",\n \"index\": \"1\"\n }\n ],\n \"pagination\": \"1\"\n }\n }\n }\n * Input values will be like:\n subParam : 'selectedItem'\n\n * This method will convert it to the following\n {\n \"widget_state\": {\n \"Table1\": {\n \"pagination\": \"1\"\n }\n }\n }\n * @param stateParam\n * @param key\n * @param subParam\n * @param mode : optional parameter if the widget/variable uses a state handling mode(url, local storage, session storage)\n * other than the project level mode\n */\n public removeStateParam(stateParam, key, subParam?, mode?, widget?) {\n let url = '', parsedObj;\n const stateObj = this.getStateInformation(mode);\n if (widget && stateObj && widget.getAppInstance().activePageName && (mode.toLowerCase() === 'localstorage' || mode.toLowerCase() === 'sessionstorage')) {\n parsedObj = stateObj[widget.getAppInstance().activePageName];\n } else {\n parsedObj = clone(stateObj);\n }\n if (!get(parsedObj, [stateParam]) && !get(parsedObj, key)) {\n return;\n }\n // Fix for [WMS-24698]: when table is inside a prefab, state persistence key is like \"TestLabel_11.TestLabel_1.staticVariable1Table1\"\n // get(parsedObj, stateParam + '.' + key) is undefined so using (parsedObj && parsedObj[stateParam] && parsedObj[stateParam][key]) condition.\n if (get(parsedObj, stateParam + '.' + key) || (parsedObj && parsedObj[stateParam] && parsedObj[stateParam][key])) {\n if (subParam) {\n delete parsedObj[stateParam][key][subParam];\n } else {\n delete parsedObj[stateParam][key];\n }\n if (isEmpty(parsedObj[stateParam][key])) {\n delete parsedObj[stateParam][key];\n }\n if (isEmpty(parsedObj[stateParam])) {\n delete parsedObj[stateParam];\n }\n } else if (!stateParam && get(parsedObj, key)) {\n delete parsedObj[key];\n }\n\n // for Local and Session Storage, wrap state object inside page name so that widget name conflicts don't arise between pages.\n if (widget && widget.getAppInstance().activePageName && (mode.toLowerCase() === 'localstorage' || mode.toLowerCase() === 'sessionstorage')) {\n if (stateObj) {\n stateObj[widget.getAppInstance().activePageName] = parsedObj;\n parsedObj = stateObj;\n } else {\n parsedObj = {[widget.getAppInstance().activePageName]: parsedObj};\n }\n\n }\n if (mode.toLowerCase() === 'localstorage') {\n localStorage.setItem(window.location.pathname.replace(/\\//g, '') + '_wm_state', JSON.stringify(parsedObj));\n return;\n } else if (mode.toLowerCase() === 'sessionstorage') {\n sessionStorage.setItem(window.location.pathname.replace(/\\//g, '') + '_wm_state', JSON.stringify(parsedObj));\n return;\n }\n\n const decodedURI = decodeURIComponent(window.location.href);\n if (isEmpty(parsedObj)) {\n url = decodedURI.replace(/(wm_state=).*?(&|$)/ ,'' + '$2');\n if (includes(['&', '?'], url.charAt(url.length - 1))) {\n url = url.replace(url.charAt(url.length - 1), '');\n }\n } else {\n url = decodedURI.replace(/(wm_state=).*?(&|$)/ ,'$1' + this.jsonToUri(parsedObj) + '$2');\n }\n\n window.history.replaceState({ path: url }, '', url);\n }\n\n /**\n * Converts the State Information object into an encoded object when state handling mode is URL\n * so that a meaningful URL can be formed and the user can make changes easily to the URL.\n * E.g.\n * state information input will be like :\n {\n \"widget-state\": {\n \"Table1\": {\n \"pagination\": \"3\",\n \"search\":[\n {\n \"field\":\"state\",\n \"value\":\"NY\",\n \"matchMode\":\"anywhereignorecase\",\n \"type\":\"string\"\n }\n ]\n }\n }\n },\n \"CustomVariableSelectedItems\": [\"2\", \"3\"]\n }\n\n\n * This method will convert it to the following\n ('widget-state'~('Table1'~('pagination'~'3'_'search'~!('field'~'state'_'value'~'NY'_'matchMode'~'anywhereignorecase'_'type'~'string')*))_'CustomVariableSelectedItems'~!'2'_'3'*)\n * @param jsonObj\n */\n private jsonToUri(jsonObj) {\n return encodeURIComponent(\n JSON.stringify(jsonObj)\n .replace(/[()'~_!*]/g, function(c) {\n // Replace ()'~_!* with \\u0000 escape sequences\n return '\\\\u' + ('0000' + c.charCodeAt(0).toString(16)).slice(-4)\n })\n .replace(/\\{/g, '(') // { -> (\n .replace(/\\}/g, ')') // } -> )\n .replace(/\"/g, \"'\") // \" -> '\n .replace(/\\:/g, '~') // : -> ~\n .replace(/,/g, '_') // , -> _\n .replace(/\\[/g, '!') // [ -> !\n .replace(/\\]/g, '*') // ] -> *\n );\n }\n\n /**\n * Decodes the encoded State Information object into a JSON object when state handling mode is URL\n * so that state information can be parsed and applied to the widgets.\n * E.g.\n * encoded state information input will be like :\n ('widget-state'~('Table1'~('pagination'~'3'_'search'~!('field'~'state'_'value'~'NY'_'matchMode'~'anywhereignorecase'_'type'~'string')*))_'CustomVariableSelectedItems'~!'2'_'3'*)\n\n\n * This method will convert it to the following\n {\n \"widget-state\": {\n \"Table1\": {\n \"pagination\": \"3\",\n \"search\":[\n {\n \"field\":\"state\",\n \"value\":\"NY\",\n \"matchMode\":\"anywhereignorecase\",\n \"type\":\"string\"\n }\n ]\n }\n }\n },\n \"CustomVariableSelectedItems\": [\"2\", \"3\"]\n }\n * @param encodedObj\n */\n private uriToJson(encodedObj) {\n let response: any;\n try {\n response = JSON.parse(\n decodeURIComponent(encodedObj)\n .replace(/\\(/g, '{') // ( -> {\n .replace(/\\)/g, '}') // ) -> }\n .replace(/'/g, '\"') // ' -> \"\n .replace(/~/g, ':') // ~ -> :\n .replace(/_/g, ',') // _ -> ,\n .replace(/\\!/g, '[') // ! -> [\n .replace(/\\*/g, ']') // * -> ]\n );\n } catch (e) {\n console.warn(e);\n }\n return response;\n }\n}\n\n","import { isDefined } from '../utils/utils';\nimport { Injectable } from '@angular/core';\nimport {debounce, get, isEmpty, isEqual} from \"lodash-es\";\n\ndeclare const $;\n@Injectable({ providedIn: 'root' })\n\nexport class PaginationService {\n /**\n * @description\n * This function returns the updated fields and the current page index when navigated to the next set of data\n * @param {object} parent table / list instance\n * @param {object} newVal updated fields info\n * @returns fieldDefs and current page index\n */\n public updateFieldsOnPagination(parent, newVal) {\n let fieldDefs = parent.widgetType === 'wm-table' ? parent.gridData : parent.fieldDefs;\n // remove the deleted row from the list\n if (parent.widgetType === 'wm-table' && (parent.gridOptions.isNavTypeScrollOrOndemand()) && parent.gridOptions.deletedRowIndex !== -1) {\n fieldDefs.splice(parent.gridOptions.deletedRowIndex, 1);\n parent.gridOptions.setDeletedRowIndex(-1);\n }\n // reset fieldDefs if last action performed is search or sort\n if (parent.widgetType === 'wm-table' && (parent.gridOptions.isNavTypeScrollOrOndemand()) && (parent.gridOptions.lastActionPerformed === parent.gridOptions.ACTIONS.SEARCH_OR_SORT || parent.gridOptions.lastActionPerformed === parent.gridOptions.ACTIONS.FILTER_CRITERIA || parent.gridOptions.lastActionPerformed === parent.gridOptions.ACTIONS.DATASET_UPDATE)) {\n fieldDefs = [];\n parent.gridOptions.setCurrentPage(1);\n }\n let currentPage;\n if (parent.widgetType === 'wm-table') {\n currentPage = parent.gridOptions.showviewlessbutton && (parent.gridOptions.mode === 'viewless') ? parent.gridOptions.getCurrentPage() : parent.currentPage;\n } else {\n currentPage = parent.currentPage;\n }\n const dataNavigator = parent.dataNavigator;\n const pagesize = parent.pagesize;\n\n if (!isDefined(fieldDefs) || dataNavigator.isFirstPage()) {\n fieldDefs = [];\n currentPage = 1;\n } else if (fieldDefs.length / pagesize <= dataNavigator.pageCount) {\n let itemsLength,\n itemsToPush = [];\n // we push the newVal only when dn.currentPage gets incremented because that is when new items gets added to newVal\n if (fieldDefs.length === currentPage * pagesize && (currentPage + 1) === dataNavigator.dn.currentPage) {\n itemsToPush = newVal;\n currentPage++;\n } else if (fieldDefs.length < currentPage * pagesize) {\n if ((fieldDefs.length === (currentPage - 1) * pagesize) && ((currentPage - 1) === dataNavigator.dn.currentPage)) {\n // if dn.currentPage is not incremented still only old newVal is present hence we push empty array\n newVal = [];\n } else if (dataNavigator.dataSize < currentPage * pagesize) {\n // if number of elements added to dataNavigator is less than product of currentPage and pageSize we only add elements extra elements added\n itemsLength = dataNavigator.dataSize - fieldDefs.length;\n } else {\n // if number of elements added to dataNavigator is greater than product of currentPage and pageSize we add elements the extra elements in newVal\n itemsLength = currentPage * pagesize - fieldDefs.length;\n currentPage++;\n }\n const startIndex = newVal.length - itemsLength;\n itemsToPush = newVal.slice(startIndex);\n } else if (fieldDefs.length === currentPage * pagesize && currentPage === dataNavigator.dn.currentPage) {\n // if dn.currentPage is not incremented still only old newVal is present hence we push empty array\n itemsToPush = [];\n }\n newVal = itemsToPush;\n }\n\n // Add unique records to fieldDefs\n if (parent.widgetType === 'wm-table' && (parent.gridOptions.lastActionPerformed === parent.gridOptions.ACTIONS.DELETE || parent.gridOptions.lastActionPerformed === parent.gridOptions.ACTIONS.EDIT)) {\n fieldDefs = this.getUniqueRecordsInFieldDef(fieldDefs, newVal);\n } else {\n fieldDefs = [...fieldDefs, ...newVal];\n }\n return [fieldDefs, currentPage];\n }\n\n // Add the unique records to fieldDefs\n public getUniqueRecordsInFieldDef(fieldDefs, newVal) {\n let flag = false;\n if (!fieldDefs.length) {\n fieldDefs = newVal;\n } else {\n newVal.forEach(function (newObj) {\n flag = false;\n fieldDefs.forEach(function (obj) {\n if (isEqual(newObj, obj)) {\n flag = true;\n }\n });\n if (flag === false) {\n fieldDefs.push(newObj);\n }\n });\n }\n return fieldDefs;\n }\n\n /**\n * @description\n * This function registers scroll events on the scrollable el, if the page doesn't have a scroll el then wheel event is registered on the requested node\n * @param {object} parent table / list instance\n * @param {string} nodeName tbody/ul\n * @param {number} debounceNum provided to lodash debounce\n * @returns null\n */\n public bindScrollEvt(parent, nodeName, debounceNum) {\n const dataNavigator = parent.dataNavigator;\n const $el = parent.$element;\n const $rootEl = $el.find(nodeName);\n const $firstChild = $rootEl.children().first();\n\n const self = this;\n let $scrollParent;\n let scrollNode;\n\n if (!$firstChild.length) {\n return;\n }\n\n $scrollParent = $firstChild.scrollParent(false);\n\n if ($scrollParent[0] === document) {\n scrollNode = document.body;\n } else {\n scrollNode = $scrollParent[0];\n }\n\n // Check if the parent (ListComponent) has horizontal direction. If yes, use horizontal scroll logic; else, vertical (existing).\n // This branches the behavior without touching the original vertical code.\n const isHorizontal = parent.direction === 'row';\n\n if (isHorizontal) {\n this.bindHorizontalScrollEvt(parent, $scrollParent, $rootEl, scrollNode, dataNavigator, debounceNum, self);\n } else {\n this.bindVerticalScrollEvt(parent, $scrollParent, $rootEl, scrollNode, dataNavigator, debounceNum, self);\n }\n }\n\n private bindHorizontalScrollEvt(parent, $scrollParent, $rootEl, scrollNode, dataNavigator, debounceNum, self) {\n // Horizontal scroll logic (mirrors vertical but uses left/width/deltaX).\n // Has scroll (check horizontal overflow).\n if (scrollNode.scrollWidth > scrollNode.clientWidth) {\n let lastScrollLeft = 0;\n $scrollParent\n .each((index: number, node) => {\n // Get initial scrollLeft (horizontal position).\n lastScrollLeft = node === document ? $(window).scrollLeft() : (node as HTMLElement).scrollLeft;\n })\n .off('scroll.scroll_evt_horizontal') // Use a distinct event namespace to avoid conflicts with vertical.\n .on('scroll.scroll_evt_horizontal', function (evt) {\n let target = evt.target;\n let clientWidth;\n let totalWidth;\n let scrollLeft;\n // ScrollingElement fallback for IE/Safari.\n target = target === document ? (target.scrollingElement || document.body) : target;\n if (parent.widgetType === 'wm-table' && parent.gridOptions.isNavTypeScrollOrOndemand()) {\n evt.stopPropagation();\n }\n clientWidth = target.clientWidth;\n totalWidth = target.scrollWidth;\n scrollLeft = target === document.body ? $(window).scrollLeft() : target.scrollLeft;\n // Check if scrolling rightward and near the end (90% threshold for preload).\n if ((lastScrollLeft < scrollLeft) && (totalWidth * 0.9 < scrollLeft + clientWidth)) {\n $(this).off('scroll.scroll_evt_horizontal'); // Unbind to prevent duplicates; rebind on next render.\n self.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n }\n lastScrollLeft = scrollLeft;\n });\n $rootEl.off('wheel.scroll_evt_horizontal');\n } else {\n // Fallback to wheel event for non-scrollable horizontal lists (detect rightward scroll).\n $rootEl.on('wheel.scroll_evt_horizontal', e => {\n if (parent.widgetType === 'wm-table' && parent.gridOptions.isNavTypeScrollOrOndemand()) {\n e.stopPropagation();\n }\n if (e.originalEvent.deltaX > 0) { // Rightward wheel delta.\n $rootEl.off('wheel.scroll_evt_horizontal');\n this.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n }\n });\n }\n }\n\n // Method for vertical scroll event binding.\n private bindVerticalScrollEvt(parent, $scrollParent, $rootEl, scrollNode, dataNavigator, debounceNum, self) {\n if (scrollNode.scrollHeight > scrollNode.clientHeight) {\n let lastScrollTop = 0;\n $scrollParent\n .each((index: number, node) => {\n // scrollTop property is 0 or undefined for body in IE, safari.\n lastScrollTop = node === document ? (node.body.scrollTop || $(window).scrollTop()) : (node as HTMLElement).scrollTop;\n })\n .off('scroll.scroll_evt')\n .on('scroll.scroll_evt', function (evt) {\n let target = evt.target;\n let clientHeight;\n let totalHeight;\n let scrollTop;\n // scrollingElement is undefined for IE, safari. use body as target Element\n target = target === document ? (target.scrollingElement || document.body) : target;\n if (parent.widgetType === 'wm-table' && parent.gridOptions.isNavTypeScrollOrOndemand()) {\n evt.stopPropagation();\n }\n clientHeight = target.clientHeight;\n totalHeight = target.scrollHeight;\n scrollTop = target === document.body ? $(window).scrollTop() : target.scrollTop;\n if ((lastScrollTop < scrollTop) && (totalHeight * 0.9 < scrollTop + clientHeight)) {\n $(this).off('scroll.scroll_evt');\n self.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n }\n lastScrollTop = scrollTop;\n });\n $rootEl.off('wheel.scroll_evt');\n } else {\n $rootEl.on('wheel.scroll_evt', e => {\n if (parent.widgetType === 'wm-table' && parent.gridOptions.isNavTypeScrollOrOndemand()) {\n e.stopPropagation();\n }\n if (e.originalEvent.deltaY > 0) {\n $rootEl.off('wheel.scroll_evt');\n this.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n }\n });\n }\n }\n\n /**\n * @description\n * This function calls fetchNextDatasetOnScroll fn on debounced time\n * @param {object} dataNavigator pagination instance\n * @param {number} debounceNum provided to lodash debounce\n * @returns debounced function definition\n */\n public debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent) {\n return debounce(() => this.fetchNextDatasetOnScroll(dataNavigator, parent), debounceNum);\n }\n\n /**\n * @description\n * This function calls next set of data when navigated to next page\n * @param {object} dataNavigator pagination instance\n * @returns null\n */\n public fetchNextDatasetOnScroll(dataNavigator, parent) {\n // Load next set of data only after the success of current call\n if (!parent.variableInflight) {\n // Fix for [WMS-23263]: set 'isNextPageData' flag to true & 'isDataUpdatedByUser' to false as next page data is being rendered on Scroll\n if (parent.widgetType === 'wm-table') {\n // set isNextPageData flag to true as next page data is being rendered\n parent.gridOptions.setIsNextPageData(true);\n parent.gridOptions.setIsDataUpdatedByUser(false);\n }\n dataNavigator.navigatePage('next');\n }\n }\n\n /**\n * @description\n * This function registers scroll events on the scrollable el for mobile projects\n * @param {object} parent list instance\n * @param {number} debounceNum provided to lodash debounce\n * @returns null\n */\n public bindIScrollEvt(parent, debounceNum) {\n const $element = parent.$element;\n const dataNavigator = parent.dataNavigator;\n const app = parent.app;\n\n const $scrollParent = $element.closest('[wmsmoothscroll=\"true\"]');\n\n const iScroll = get($scrollParent[0], 'iscroll');\n\n // when iscroll is not initialised the notify the smoothscroll and subscribe to the iscroll update\n if (!iScroll) {\n const iScrollSubscription = app.subscribe('iscroll-update', (_el) => {\n if (!isEmpty(_el) && _el.isSameNode($scrollParent[0])) {\n this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);\n iScrollSubscription();\n }\n });\n app.notify('no-iscroll', $scrollParent[0]);\n return;\n }\n this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);\n }\n\n /**\n * @description\n * This function registers scrollEnd event on the scrollable el for mobile projects\n * @param {object} el scrollable element scope\n * @param {object} dataNavigator pagination instance\n * @param {number} debounceNum provided to lodash debounce\n * @returns null\n */\n public setIscrollHandlers(el, dataNavigator, debounceNum) {\n const list = $(el).find('[wmList]').first(); \n const isHorizontal = list.attr('direction') === 'row';\n\n if (isHorizontal) {\n this.setHorizontalIscrollHandlers(el, dataNavigator, debounceNum, parent);\n } else {\n this.setVerticalIscrollHandlers(el, dataNavigator, debounceNum, parent);\n }\n }\n\n private setHorizontalIscrollHandlers(el, dataNavigator, debounceNum, parent) {\n // Horizontal iScroll logic (on 'scrollEnd' event).\n let lastScrollLeft = 0;\n const wrapper = get(el.iscroll, 'wrapper');\n const self = el.iscroll;\n el.iscroll.on('scrollEnd', () => {\n const clientWidth = wrapper.clientWidth;\n const totalWidth = wrapper.scrollWidth;\n const scrollLeft = Math.abs(el.iscroll.x); // Horizontal position (absolute for rightward).\n // Check rightward scroll and near-end threshold (90%).\n if ((lastScrollLeft < scrollLeft) && (totalWidth * 0.9 < scrollLeft + clientWidth)) {\n this.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n if (self.indicatorRefresh) {\n self.indicatorRefresh();\n }\n }\n lastScrollLeft = scrollLeft;\n });\n }\n\n private setVerticalIscrollHandlers(el, dataNavigator, debounceNum, parent) {\n let lastScrollTop = 0;\n const wrapper = get(el.iscroll, 'wrapper');\n const self = el.iscroll;\n el.iscroll.on('scrollEnd', () => {\n const clientHeight = wrapper.clientHeight,\n totalHeight = wrapper.scrollHeight,\n scrollTop = Math.abs(el.iscroll.y);\n if ((lastScrollTop < scrollTop) && (totalHeight * 0.9 < scrollTop + clientHeight)) {\n this.debouncedFetchNextDatasetOnScroll(dataNavigator, debounceNum, parent)();\n if (self.indicatorRefresh) {\n self.indicatorRefresh();\n }\n }\n lastScrollTop = scrollTop;\n });\n }\n}","import {isNil} from \"lodash-es\";\n\ninterface CachedData<T> {\n instance: T;\n lastAccessedTime: number;\n}\n\nexport class LRUCache<T> {\n private cache = new Map<string, CachedData<T>>();\n private evictQueue: [string] = [''];\n private evictionIntervalId: number | null = null; // MEMORY LEAK FIX: Store interval ID for cleanup\n\n constructor(\n private maxSize = 100,\n private maxAge = 60,\n private onEvict?: ((key: string, value: T) => any)) {\n this.evictQueue.shift();\n if(this.maxAge > 0) {\n if (this.maxAge <= 30) {\n console.warn(`Cache age ${this.maxAge}s is very less. Keep it atleast 30s.`);\n }\n this.maxAge = this.maxAge * 1000;\n // MEMORY LEAK FIX: Store interval ID for cleanup\n this.evictionIntervalId = window.setInterval(() => {\n const max = Date.now() - this.maxAge;\n const expiredData = this.evictQueue.filter(k => {\n return this.cache.get(k).lastAccessedTime <= max;\n });\n this.evict(expiredData.length);\n }, this.maxAge);\n }\n }\n\n private addToEvictQueue(key: string) {\n const index = this.evictQueue.findIndex(k => (k === key));\n if (index >= 0) {\n this.evictQueue.splice(index, 1);\n }\n this.evictQueue.push(key);\n }\n\n private evict(count = 1): void {\n for (let i = 0; i < count; i++) {\n this.delete(this.evictQueue[0]);\n }\n }\n\n public keys() {\n return this.cache.keys();\n }\n\n public set(key: string, dataToCache: T): void {\n if (isNil(dataToCache)) {\n return;\n }\n const cachedData = {\n instance: dataToCache,\n lastAccessedTime: Date.now()\n };\n this.cache.set(key, cachedData);\n this.addToEvictQueue(key);\n this.evict(this.evictQueue.length - this.maxSize);\n }\n\n public get(key: string): T {\n const cachedData = this.cache.get(key);\n if (cachedData) {\n cachedData.lastAccessedTime = Date.now();\n this.addToEvictQueue(key);\n return cachedData.instance;\n }\n return null;\n }\n\n public delete(key: string) {\n if(key && this.cache.has(key)) {\n const cachedData = this.cache.get(key);\n this.cache.delete(key);\n this.onEvict && this.onEvict(key, cachedData.instance);\n const index = this.evictQueue.findIndex(k => (k === key));\n if (index >= 0) {\n this.evictQueue.splice(index, 1);\n }\n }\n }\n\n public has(key: string): boolean {\n return this.cache.has(key);\n }\n\n public size(): number {\n return this.evictQueue.length;\n }\n\n public clear() {\n this.evict(this.evictQueue.length);\n }\n\n /**\n * MEMORY LEAK FIX: Destroy the cache and clear the eviction interval\n * Call this method when the cache is no longer needed to prevent memory leaks\n */\n public destroy() {\n // CRITICAL FIX: Clear the eviction interval to prevent memory leaks\n if (this.evictionIntervalId !== null) {\n clearInterval(this.evictionIntervalId);\n this.evictionIntervalId = null;\n }\n this.clear();\n }\n}\n","/*\n * Public API Surface of core\n */\nexport * from './utils/build-utils';\nexport * from './constants/currency-constants';\nexport {\n appendNode,\n insertBefore,\n insertAfter,\n removeNode,\n removeClass,\n addClass,\n switchClass,\n toggleClass,\n setCSS,\n setCSSFromObj,\n setProperty,\n setAttr,\n setHtml,\n removeAttr,\n createElement,\n toDimension\n} from './utils/dom';\nexport * from './enums/enums';\nexport * from './utils/event-notifier';\nexport {\n ParseExprResult,\n $parseExpr,\n $parseEvent,\n registerFnByExpr,\n setPipeProvider,\n getFnByExpr,\n getFnForBindExpr,\n getFnForEventExpr\n} from './utils/expression-parser';\nexport {\n EVENT_LIFE,\n isDefined,\n isObject,\n toBoolean,\n isIE,\n isAndroid,\n isAndroidTablet,\n isIphone,\n isIpod,\n isIpad,\n isIos,\n isSafari,\n isLargeTabletLandscape,\n isLargeTabletPortrait,\n isMobile,\n getAndroidVersion,\n isKitkatDevice,\n encodeUrl,\n encodeUrlParams,\n initCaps,\n spaceSeparate,\n replaceAt,\n periodSeparate,\n prettifyLabel,\n deHyphenate,\n prettifyLabels,\n isInsecureContentRequest,\n stringStartsWith,\n getEvaluatedExprValue,\n isImageFile,\n isAudioFile,\n isVideoFile,\n isValidImageUrl,\n isValidWebURL,\n getResourceURL,\n triggerFn,\n hasOffsetStr,\n getFormattedDate,\n getDateObj,\n addEventListenerOnElement,\n getClonedObject,\n getFiles,\n generateGUId,\n validateAccessRoles,\n getValidJSON,\n xmlToJson,\n findValueOf,\n extractType,\n isNumberType,\n isEmptyObject,\n scrollToElement,\n isElementInViewport,\n isPageable,\n replace,\n isDateTimeType,\n getValidDateObject,\n getNativeDateObject,\n getBlob,\n isEqualWithFields,\n loadStyleSheet,\n loadStyleSheets,\n loadScript,\n loadScripts,\n _WM_APP_PROJECT,\n setSessionStorageItem,\n getSessionStorageItem,\n noop,\n convertToBlob,\n AppConstants,\n openLink,\n fetchContent,\n toPromise,\n retryIfFails,\n getAbortableDefer,\n createCSSRule,\n getUrlParams,\n getMomentLocaleObject,\n getRouteNameFromLink,\n isAppleProduct,\n defer,\n executePromiseChain,\n isDataSourceEqual,\n validateDataSourceCtx,\n processFilterExpBindNode,\n extendProto,\n removeExtraSlashes,\n getDisplayDateTimeFormat,\n addForIdAttributes,\n adjustContainerPosition,\n adjustContainerRightEdges,\n adjustVerticalPosition,\n setTranslation3dPosition,\n getWebkitTraslationMatrix,\n closePopover,\n detectChanges,\n triggerItemAction,\n getDatasourceFromExpr,\n extractCurrentItemExpr,\n findRootContainer,\n VALIDATOR,\n transformFileURI,\n appendScriptToHead,\n getAppSetting,\n setListClass,\n findParent,\n getNavClass,\n getSheetPositionClass\n} from './utils/utils';\nexport {\n FIRST_TIME_WATCH,\n isFirstTimeChange,\n debounce,\n muteWatchers,\n unMuteWatchers,\n $watch,\n $unwatch,\n setNgZone,\n setAppRef,\n isChangeFromWatch,\n resetChangeFromWatch,\n $invokeWatchers,\n $appDigest\n} from './utils/watcher';\nexport * from './utils/id-generator';\nexport * from './types/types';\nexport { Viewport, ViewportEvent } from './services/viewport.service';\nexport * from './services/constant.service';\nexport * from './services/utils.service';\nexport * from './services/field-type.service';\nexport * from './services/field-widget.service';\nexport * from './services/script-loader.service';\nexport * from './services/user-custom-pipe-manager.service';\nexport * from './services/custom-icons-loader.service';\nexport { StatePersistence } from './services/state-persistence.service';\nexport { PaginationService } from './services/pagination.service';\nexport * from './utils/wm-project-properties';\nexport * from './utils/lru-cache';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["$RAF","noop","detectChanges","isObject","_replace","_noop","debounce"],"mappings":"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"}