@wavemaker/app-ng-runtime 11.8.0-next.24904 → 11.8.0-next.27301

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 (346) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +5 -5
  2. app-ng-runtime/build-task/esm2022/basic/progress/progress-bar/progress-bar.build.mjs +1 -1
  3. app-ng-runtime/build-task/esm2022/page/page.build.mjs +3 -2
  4. app-ng-runtime/build-task/fesm2022/index.mjs +2 -1
  5. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  6. app-ng-runtime/components/advanced/carousel/bundles/index.umd.js +5 -5
  7. app-ng-runtime/components/advanced/carousel/esm2022/carousel.animator.mjs +3 -2
  8. app-ng-runtime/components/advanced/carousel/esm2022/carousel.directive.mjs +1 -1
  9. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +2 -1
  10. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  11. app-ng-runtime/components/advanced/login/bundles/index.umd.js +6 -6
  12. app-ng-runtime/components/advanced/login/esm2022/login.component.mjs +4 -3
  13. app-ng-runtime/components/advanced/login/fesm2022/index.mjs +3 -2
  14. app-ng-runtime/components/advanced/login/fesm2022/index.mjs.map +1 -1
  15. app-ng-runtime/components/base/bundles/index.umd.js +203 -171
  16. app-ng-runtime/components/base/esm2022/directives/show-in-device.directive.mjs +1 -1
  17. app-ng-runtime/components/base/esm2022/pipes/custom-pipes.mjs +12 -11
  18. app-ng-runtime/components/base/esm2022/pipes/wm-pipe.mjs +3 -2
  19. app-ng-runtime/components/base/esm2022/utils/data-utils.mjs +30 -29
  20. app-ng-runtime/components/base/esm2022/utils/form-utils.mjs +47 -41
  21. app-ng-runtime/components/base/esm2022/utils/live-utils.mjs +8 -7
  22. app-ng-runtime/components/base/esm2022/utils/widget-utils.mjs +28 -27
  23. app-ng-runtime/components/base/esm2022/widgets/common/base/base-container.component.mjs +4 -3
  24. app-ng-runtime/components/base/esm2022/widgets/common/base/base-field-validations.mjs +24 -21
  25. app-ng-runtime/components/base/esm2022/widgets/common/base/base.component.mjs +12 -11
  26. app-ng-runtime/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +40 -14
  27. app-ng-runtime/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +3 -2
  28. app-ng-runtime/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +3 -2
  29. app-ng-runtime/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +1 -1
  30. app-ng-runtime/components/base/esm2022/widgets/common/partial/partial.directive.mjs +3 -2
  31. app-ng-runtime/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +3 -2
  32. app-ng-runtime/components/base/esm2022/widgets/common/smooth-scroll/smooth-scroll.directive.mjs +6 -5
  33. app-ng-runtime/components/base/esm2022/widgets/framework/deviceview.mjs +1 -1
  34. app-ng-runtime/components/base/esm2022/widgets/framework/property-change-handler.mjs +3 -2
  35. app-ng-runtime/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +4 -3
  36. app-ng-runtime/components/base/fesm2022/index.mjs +206 -173
  37. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  38. app-ng-runtime/components/base/pipes/custom-pipes.d.ts +1 -1
  39. app-ng-runtime/components/base/utils/data-utils.d.ts +0 -1
  40. app-ng-runtime/components/base/utils/widget-utils.d.ts +2 -2
  41. app-ng-runtime/components/base/widgets/common/base/base-field-validations.d.ts +1 -1
  42. app-ng-runtime/components/base/widgets/common/base/partial-container.directive.d.ts +1 -1
  43. app-ng-runtime/components/basic/default/bundles/index.umd.js +10 -10
  44. app-ng-runtime/components/basic/default/esm2022/label/label.directive.mjs +4 -3
  45. app-ng-runtime/components/basic/default/esm2022/spinner/spinner.component.mjs +6 -5
  46. app-ng-runtime/components/basic/default/fesm2022/index.mjs +7 -6
  47. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  48. app-ng-runtime/components/basic/progress/bundles/index.umd.js +13 -13
  49. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +5 -4
  50. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +6 -5
  51. app-ng-runtime/components/basic/progress/esm2022/utils.mjs +3 -3
  52. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +10 -9
  53. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  54. app-ng-runtime/components/basic/rich-text-editor/bundles/index.umd.js +15 -10
  55. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +14 -8
  56. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +13 -7
  57. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  58. app-ng-runtime/components/basic/rich-text-editor/rich-text-editor.component.d.ts +2 -2
  59. app-ng-runtime/components/basic/search/bundles/index.umd.js +67 -65
  60. app-ng-runtime/components/basic/search/esm2022/data-provider/data-provider.mjs +1 -1
  61. app-ng-runtime/components/basic/search/esm2022/data-provider/local-data-provider.mjs +26 -23
  62. app-ng-runtime/components/basic/search/esm2022/data-provider/remote-data-provider.mjs +12 -11
  63. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +31 -30
  64. app-ng-runtime/components/basic/search/fesm2022/index.mjs +66 -63
  65. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  66. app-ng-runtime/components/basic/tree/bundles/index.umd.js +9 -9
  67. app-ng-runtime/components/basic/tree/esm2022/tree.component.mjs +7 -6
  68. app-ng-runtime/components/basic/tree/fesm2022/index.mjs +6 -5
  69. app-ng-runtime/components/basic/tree/fesm2022/index.mjs.map +1 -1
  70. app-ng-runtime/components/chart/bundles/index.umd.js +72 -63
  71. app-ng-runtime/components/chart/chart.component.d.ts +1 -1
  72. app-ng-runtime/components/chart/chart.utils.d.ts +3 -3
  73. app-ng-runtime/components/chart/esm2022/chart.component.mjs +58 -48
  74. app-ng-runtime/components/chart/esm2022/chart.utils.mjs +14 -13
  75. app-ng-runtime/components/chart/fesm2022/index.mjs +69 -59
  76. app-ng-runtime/components/chart/fesm2022/index.mjs.map +1 -1
  77. app-ng-runtime/components/containers/accordion/bundles/index.umd.js +16 -16
  78. app-ng-runtime/components/containers/accordion/esm2022/accordion.directive.mjs +14 -13
  79. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +13 -12
  80. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  81. app-ng-runtime/components/containers/panel/bundles/index.umd.js +5 -5
  82. app-ng-runtime/components/containers/panel/esm2022/panel.component.mjs +3 -2
  83. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +2 -1
  84. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  85. app-ng-runtime/components/containers/panel/panel.component.d.ts +1 -1
  86. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +17 -17
  87. app-ng-runtime/components/containers/tabs/esm2022/tabs.component.mjs +15 -14
  88. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +14 -13
  89. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  90. app-ng-runtime/components/data/form/bundles/index.umd.js +75 -75
  91. app-ng-runtime/components/data/form/esm2022/form-action/form-action.directive.mjs +3 -2
  92. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +10 -9
  93. app-ng-runtime/components/data/form/esm2022/form.component.mjs +54 -53
  94. app-ng-runtime/components/data/form/esm2022/live-filter/live-filter.directive.mjs +3 -2
  95. app-ng-runtime/components/data/form/esm2022/live-form/live-form.directive.mjs +11 -10
  96. app-ng-runtime/components/data/form/fesm2022/index.mjs +77 -76
  97. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  98. app-ng-runtime/components/data/form/form.component.d.ts +2 -2
  99. app-ng-runtime/components/data/form/live-form/live-form.directive.d.ts +1 -1
  100. app-ng-runtime/components/data/list/bundles/index.umd.js +692 -687
  101. app-ng-runtime/components/data/list/esm2022/list-item.directive.mjs +1 -1
  102. app-ng-runtime/components/data/list/esm2022/list.animator.mjs +5 -3
  103. app-ng-runtime/components/data/list/esm2022/list.component.mjs +687 -682
  104. app-ng-runtime/components/data/list/fesm2022/index.mjs +690 -684
  105. app-ng-runtime/components/data/list/fesm2022/index.mjs.map +1 -1
  106. app-ng-runtime/components/data/list/list.component.d.ts +53 -53
  107. app-ng-runtime/components/data/live-table/bundles/index.umd.js +1 -1
  108. app-ng-runtime/components/data/live-table/esm2022/live-table.component.mjs +2 -2
  109. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +1 -1
  110. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  111. app-ng-runtime/components/data/pagination/bundles/index.umd.js +14 -14
  112. app-ng-runtime/components/data/pagination/esm2022/pagination.component.mjs +12 -11
  113. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +11 -10
  114. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  115. app-ng-runtime/components/data/table/bundles/index.umd.js +175 -172
  116. app-ng-runtime/components/data/table/esm2022/table-action/table-action.directive.mjs +3 -2
  117. app-ng-runtime/components/data/table/esm2022/table-column/table-column.directive.mjs +19 -18
  118. app-ng-runtime/components/data/table/esm2022/table-cud.directive.mjs +7 -6
  119. app-ng-runtime/components/data/table/esm2022/table-filter.directive.mjs +53 -55
  120. app-ng-runtime/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +3 -2
  121. app-ng-runtime/components/data/table/esm2022/table.component.mjs +98 -91
  122. app-ng-runtime/components/data/table/fesm2022/index.mjs +172 -168
  123. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  124. app-ng-runtime/components/data/table/table-column/table-column.directive.d.ts +6 -6
  125. app-ng-runtime/components/data/table/table.component.d.ts +2 -2
  126. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +2 -2
  127. app-ng-runtime/components/dialogs/default/esm2022/base-dialog.mjs +3 -3
  128. app-ng-runtime/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +1 -1
  129. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +1 -1
  130. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  131. app-ng-runtime/components/input/calendar/bundles/index.umd.js +33 -31
  132. app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +31 -28
  133. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +30 -27
  134. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  135. app-ng-runtime/components/input/chips/bundles/index.umd.js +29 -28
  136. app-ng-runtime/components/input/chips/chips.component.d.ts +1 -1
  137. app-ng-runtime/components/input/chips/esm2022/chips.component.mjs +27 -25
  138. app-ng-runtime/components/input/chips/fesm2022/index.mjs +26 -24
  139. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  140. app-ng-runtime/components/input/default/base-form.component.d.ts +3 -3
  141. app-ng-runtime/components/input/default/bundles/index.umd.js +75 -62
  142. app-ng-runtime/components/input/default/checkbox/checkbox.component.d.ts +1 -0
  143. app-ng-runtime/components/input/default/dataset-aware-form.component.d.ts +4 -4
  144. app-ng-runtime/components/input/default/esm2022/base-form.component.mjs +14 -8
  145. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +3 -2
  146. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.component.mjs +2 -2
  147. app-ng-runtime/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +6 -4
  148. app-ng-runtime/components/input/default/esm2022/dataset-aware-form.component.mjs +29 -23
  149. app-ng-runtime/components/input/default/esm2022/radioset/radioset.component.mjs +4 -3
  150. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +4 -3
  151. app-ng-runtime/components/input/default/esm2022/switch/switch.component.mjs +6 -5
  152. app-ng-runtime/components/input/default/esm2022/text/base/base-input.mjs +4 -3
  153. app-ng-runtime/components/input/default/esm2022/text/locale/number-locale.mjs +20 -18
  154. app-ng-runtime/components/input/default/esm2022/text/text/input-text.component.mjs +2 -2
  155. app-ng-runtime/components/input/default/fesm2022/index.mjs +75 -62
  156. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  157. app-ng-runtime/components/input/epoch/base-date-time.component.d.ts +1 -1
  158. app-ng-runtime/components/input/epoch/bundles/index.umd.js +53 -51
  159. app-ng-runtime/components/input/epoch/esm2022/base-date-time.component.mjs +34 -31
  160. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +5 -4
  161. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +5 -4
  162. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +7 -6
  163. app-ng-runtime/components/input/epoch/esm2022/picker/picker.component.mjs +1 -1
  164. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +6 -5
  165. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +48 -45
  166. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  167. app-ng-runtime/components/input/file-upload/bundles/index.umd.js +15 -15
  168. app-ng-runtime/components/input/file-upload/esm2022/file-upload.component.mjs +13 -12
  169. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +12 -11
  170. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  171. app-ng-runtime/components/input/rating/bundles/index.umd.js +12 -12
  172. app-ng-runtime/components/input/rating/esm2022/rating.component.mjs +10 -9
  173. app-ng-runtime/components/input/rating/fesm2022/index.mjs +9 -8
  174. app-ng-runtime/components/input/rating/fesm2022/index.mjs.map +1 -1
  175. app-ng-runtime/components/navigation/breadcrumb/bundles/index.umd.js +1 -1
  176. app-ng-runtime/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +2 -2
  177. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs +1 -1
  178. app-ng-runtime/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
  179. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +23 -22
  180. app-ng-runtime/components/navigation/menu/esm2022/menu-adapator.component.mjs +3 -2
  181. app-ng-runtime/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +6 -5
  182. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +8 -7
  183. app-ng-runtime/components/navigation/menu/esm2022/nav/nav.component.mjs +10 -8
  184. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +20 -18
  185. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  186. app-ng-runtime/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +12 -1
  187. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +1 -1
  188. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  189. app-ng-runtime/components/prefab/bundles/index.umd.js +6 -6
  190. app-ng-runtime/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +3 -2
  191. app-ng-runtime/components/prefab/esm2022/prefab.directive.mjs +3 -2
  192. app-ng-runtime/components/prefab/fesm2022/index.mjs +3 -2
  193. app-ng-runtime/components/prefab/fesm2022/index.mjs.map +1 -1
  194. app-ng-runtime/core/bundles/index.umd.js +119 -130
  195. app-ng-runtime/core/esm2022/public_api.mjs +2 -2
  196. app-ng-runtime/core/esm2022/services/field-type.service.mjs +3 -2
  197. app-ng-runtime/core/esm2022/services/field-widget.service.mjs +3 -2
  198. app-ng-runtime/core/esm2022/services/pagination.service.mjs +7 -6
  199. app-ng-runtime/core/esm2022/services/state-persistence.service.mjs +17 -16
  200. app-ng-runtime/core/esm2022/services/utils.service.mjs +3 -2
  201. app-ng-runtime/core/esm2022/services/viewport.service.mjs +3 -2
  202. app-ng-runtime/core/esm2022/utils/build-utils.mjs +5 -4
  203. app-ng-runtime/core/esm2022/utils/expression-parser.mjs +5 -4
  204. app-ng-runtime/core/esm2022/utils/lru-cache.mjs +3 -2
  205. app-ng-runtime/core/esm2022/utils/utils.mjs +79 -82
  206. app-ng-runtime/core/esm2022/utils/watcher.mjs +9 -7
  207. app-ng-runtime/core/fesm2022/index.mjs +117 -123
  208. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  209. app-ng-runtime/core/public_api.d.ts +1 -1
  210. app-ng-runtime/core/services/pagination.service.d.ts +1 -1
  211. app-ng-runtime/core/utils/utils.d.ts +5 -9
  212. app-ng-runtime/http/bundles/index.umd.js +7 -7
  213. app-ng-runtime/http/esm2022/http.service.mjs +5 -4
  214. app-ng-runtime/http/esm2022/wm-http-request.mjs +1 -1
  215. app-ng-runtime/http/esm2022/wm-http-response.mjs +1 -1
  216. app-ng-runtime/http/fesm2022/index.mjs +4 -3
  217. app-ng-runtime/http/fesm2022/index.mjs.map +1 -1
  218. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js +24 -20
  219. app-ng-runtime/mobile/components/basic/default/esm2022/anchor/anchor.directive.mjs +5 -4
  220. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +12 -8
  221. app-ng-runtime/mobile/components/basic/default/esm2022/file-browser/file-selector.service.mjs +5 -3
  222. app-ng-runtime/mobile/components/basic/default/esm2022/image-cache/image-cache.directive.mjs +3 -2
  223. app-ng-runtime/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +5 -4
  224. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs +21 -16
  225. app-ng-runtime/mobile/components/basic/default/fesm2022/index.mjs.map +1 -1
  226. app-ng-runtime/mobile/components/containers/segmented-control/bundles/index.umd.js +7 -7
  227. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +2 -2
  228. app-ng-runtime/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +4 -3
  229. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs +4 -3
  230. app-ng-runtime/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +1 -1
  231. app-ng-runtime/mobile/components/data/media-list/bundles/index.umd.js +8 -8
  232. app-ng-runtime/mobile/components/data/media-list/esm2022/media-list.component.mjs +4 -3
  233. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs +3 -2
  234. app-ng-runtime/mobile/components/data/media-list/fesm2022/index.mjs.map +1 -1
  235. app-ng-runtime/mobile/components/page/default/bundles/index.umd.js +5 -5
  236. app-ng-runtime/mobile/components/page/default/esm2022/page.directive.mjs +3 -2
  237. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs +2 -1
  238. app-ng-runtime/mobile/components/page/default/fesm2022/index.mjs.map +1 -1
  239. app-ng-runtime/mobile/components/page/tab-bar/bundles/index.umd.js +9 -9
  240. app-ng-runtime/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +7 -6
  241. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs +6 -5
  242. app-ng-runtime/mobile/components/page/tab-bar/fesm2022/index.mjs.map +1 -1
  243. app-ng-runtime/mobile/core/bundles/index.umd.js +25 -25
  244. app-ng-runtime/mobile/core/esm2022/services/device-file-download.service.mjs +5 -4
  245. app-ng-runtime/mobile/core/esm2022/services/device-file-opener.service.mjs +3 -2
  246. app-ng-runtime/mobile/core/esm2022/services/device-file-upload.service.mjs +4 -3
  247. app-ng-runtime/mobile/core/esm2022/services/device-file.service.mjs +6 -5
  248. app-ng-runtime/mobile/core/esm2022/services/device.service.mjs +3 -2
  249. app-ng-runtime/mobile/core/esm2022/services/ext-app-message.service.mjs +5 -4
  250. app-ng-runtime/mobile/core/esm2022/services/network.service.mjs +9 -8
  251. app-ng-runtime/mobile/core/fesm2022/index.mjs +22 -21
  252. app-ng-runtime/mobile/core/fesm2022/index.mjs.map +1 -1
  253. app-ng-runtime/mobile/core/services/ext-app-message.service.d.ts +1 -1
  254. app-ng-runtime/mobile/core/services/network.service.d.ts +7 -1
  255. app-ng-runtime/mobile/offline/bundles/index.umd.js +161 -144
  256. app-ng-runtime/mobile/offline/esm2022/models/local-db-store.mjs +23 -21
  257. app-ng-runtime/mobile/offline/esm2022/services/change-log.service.mjs +7 -6
  258. app-ng-runtime/mobile/offline/esm2022/services/local-db-data-pull.service.mjs +37 -35
  259. app-ng-runtime/mobile/offline/esm2022/services/local-db-management.service.mjs +54 -45
  260. app-ng-runtime/mobile/offline/esm2022/services/local-db.service.mjs +5 -4
  261. app-ng-runtime/mobile/offline/esm2022/services/workers/error-blocker.mjs +4 -3
  262. app-ng-runtime/mobile/offline/esm2022/services/workers/file-handler.mjs +18 -13
  263. app-ng-runtime/mobile/offline/esm2022/services/workers/multi-part-param-transformer.mjs +9 -5
  264. app-ng-runtime/mobile/offline/esm2022/utils/live-variable.utils.mjs +12 -11
  265. app-ng-runtime/mobile/offline/esm2022/utils/query-executor.utils.mjs +5 -4
  266. app-ng-runtime/mobile/offline/esm2022/utils/security.utils.mjs +3 -2
  267. app-ng-runtime/mobile/offline/fesm2022/index.mjs +156 -138
  268. app-ng-runtime/mobile/offline/fesm2022/index.mjs.map +1 -1
  269. app-ng-runtime/mobile/runtime/bundles/index.umd.js +11 -8
  270. app-ng-runtime/mobile/runtime/esm2022/mobile-runtime.module.mjs +3 -2
  271. app-ng-runtime/mobile/runtime/esm2022/services/cookie.service.mjs +6 -2
  272. app-ng-runtime/mobile/runtime/esm2022/services/http-interceptor.service.mjs +4 -3
  273. app-ng-runtime/mobile/runtime/fesm2022/index.mjs +8 -4
  274. app-ng-runtime/mobile/runtime/fesm2022/index.mjs.map +1 -1
  275. app-ng-runtime/mobile/runtime-dynamic/bundles/index.umd.js +2 -2
  276. app-ng-runtime/mobile/runtime-dynamic/esm2022/services/live-sync.service.mjs +3 -3
  277. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs +2 -2
  278. app-ng-runtime/mobile/runtime-dynamic/fesm2022/index.mjs.map +1 -1
  279. app-ng-runtime/mobile/variables/bundles/index.umd.js +23 -16
  280. app-ng-runtime/mobile/variables/esm2022/services/camera-service.mjs +2 -2
  281. app-ng-runtime/mobile/variables/esm2022/services/datasync-service.mjs +10 -9
  282. app-ng-runtime/mobile/variables/esm2022/services/file-service.mjs +11 -3
  283. app-ng-runtime/mobile/variables/fesm2022/index.mjs +19 -11
  284. app-ng-runtime/mobile/variables/fesm2022/index.mjs.map +1 -1
  285. app-ng-runtime/oAuth/bundles/index.umd.js +12 -12
  286. app-ng-runtime/oAuth/esm2022/oAuth.service.mjs +4 -3
  287. app-ng-runtime/oAuth/esm2022/oAuth.utils.mjs +8 -7
  288. app-ng-runtime/oAuth/fesm2022/index.mjs +9 -8
  289. app-ng-runtime/oAuth/fesm2022/index.mjs.map +1 -1
  290. app-ng-runtime/package.json +1 -1
  291. app-ng-runtime/runtime/base/bundles/index.umd.js +121 -120
  292. app-ng-runtime/runtime/base/esm2022/components/base-layout.component.mjs +4 -3
  293. app-ng-runtime/runtime/base/esm2022/components/base-page.component.mjs +14 -13
  294. app-ng-runtime/runtime/base/esm2022/components/base-partial.component.mjs +13 -12
  295. app-ng-runtime/runtime/base/esm2022/components/base-prefab.component.mjs +15 -14
  296. app-ng-runtime/runtime/base/esm2022/components/base-spa-page.component.mjs +14 -13
  297. app-ng-runtime/runtime/base/esm2022/components/custom-toaster.component.mjs +6 -5
  298. app-ng-runtime/runtime/base/esm2022/directives/accessroles.directive.mjs +11 -10
  299. app-ng-runtime/runtime/base/esm2022/guards/page-not-found.guard.mjs +1 -1
  300. app-ng-runtime/runtime/base/esm2022/guards/role.guard.mjs +3 -2
  301. app-ng-runtime/runtime/base/esm2022/services/app-defaults.service.mjs +1 -1
  302. app-ng-runtime/runtime/base/esm2022/services/app.manager.service.mjs +17 -14
  303. app-ng-runtime/runtime/base/esm2022/services/app.service.mjs +7 -6
  304. app-ng-runtime/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +3 -2
  305. app-ng-runtime/runtime/base/esm2022/services/http-interceptor.services.mjs +4 -3
  306. app-ng-runtime/runtime/base/esm2022/services/i18n.service.mjs +12 -10
  307. app-ng-runtime/runtime/base/esm2022/services/navigation.service.mjs +8 -7
  308. app-ng-runtime/runtime/base/esm2022/services/prefab-manager.service.mjs +3 -2
  309. app-ng-runtime/runtime/base/esm2022/services/spinner.service.mjs +7 -6
  310. app-ng-runtime/runtime/base/esm2022/services/toaster.service.mjs +6 -5
  311. app-ng-runtime/runtime/base/esm2022/util/wm-route-reuse-strategy.mjs +6 -7
  312. app-ng-runtime/runtime/base/fesm2022/index.mjs +119 -117
  313. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  314. app-ng-runtime/runtime/base/services/i18n.service.d.ts +1 -1
  315. app-ng-runtime/runtime/dynamic/bundles/index.umd.js +7 -7
  316. app-ng-runtime/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +4 -3
  317. app-ng-runtime/runtime/dynamic/esm2022/main.mjs +3 -2
  318. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs +4 -3
  319. app-ng-runtime/runtime/dynamic/fesm2022/index.mjs.map +1 -1
  320. app-ng-runtime/scripts/jquery-ui/ui/widgets/droppable.js +7 -7
  321. app-ng-runtime/scripts/jquery-ui/ui/widgets/resizable.js +13 -10
  322. app-ng-runtime/scripts/jquery-ui/ui/widgets/sortable.js +7 -7
  323. app-ng-runtime/security/bundles/index.umd.js +14 -14
  324. app-ng-runtime/security/esm2022/security.service.mjs +12 -11
  325. app-ng-runtime/security/fesm2022/index.mjs +11 -10
  326. app-ng-runtime/security/fesm2022/index.mjs.map +1 -1
  327. app-ng-runtime/security/security.service.d.ts +1 -1
  328. app-ng-runtime/swipey/esm2022/swipe.animation.mjs +1 -1
  329. app-ng-runtime/swipey/fesm2022/index.mjs.map +1 -1
  330. app-ng-runtime/transpiler/bundles/index.umd.js +10 -9
  331. app-ng-runtime/transpiler/esm2022/build.mjs +8 -6
  332. app-ng-runtime/transpiler/fesm2022/index.mjs +7 -5
  333. app-ng-runtime/transpiler/fesm2022/index.mjs.map +1 -1
  334. app-ng-runtime/variables/bundles/index.umd.js +155 -145
  335. app-ng-runtime/variables/esm2022/manager/action/login-action.manager.mjs +15 -14
  336. app-ng-runtime/variables/esm2022/manager/action/notification-action.manager.mjs +9 -8
  337. app-ng-runtime/variables/esm2022/manager/variable/base-variable.manager.mjs +3 -2
  338. app-ng-runtime/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +11 -10
  339. app-ng-runtime/variables/esm2022/service/variables.service.mjs +7 -6
  340. app-ng-runtime/variables/esm2022/util/action/navigation-action.utils.mjs +4 -4
  341. app-ng-runtime/variables/esm2022/util/variable/pagination.utils.mjs +30 -23
  342. app-ng-runtime/variables/esm2022/util/variable/service-variable.utils.mjs +29 -28
  343. app-ng-runtime/variables/esm2022/util/variable/variables.utils.mjs +75 -70
  344. app-ng-runtime/variables/fesm2022/index.mjs +169 -158
  345. app-ng-runtime/variables/fesm2022/index.mjs.map +1 -1
  346. app-ng-runtime/variables/util/variable/service-variable.utils.d.ts +1 -1
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@wm/core'), require('@wm/security'), require('@wavemaker/focus-trap/dist/focus-trap'), require('@angular/platform-browser'), require('rxjs'), require('rxjs/operators'), require('tslib'), require('@angular/forms'), require('@swipey')) :
3
- typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/common', '@wm/core', '@wm/security', '@wavemaker/focus-trap/dist/focus-trap', '@angular/platform-browser', 'rxjs', 'rxjs/operators', 'tslib', '@angular/forms', '@swipey'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.wm = global.wm || {}, global.wm.components = global.wm.components || {}, global.wm.components.base = {}), global.ng.core, global.ng.common, global.wm.core, global.wm.security, global.focusTrap, global.ng.platformBrowser, global.rxjs, global.rxjs.operators, global.tslib, global.ng.forms, global.swipey));
5
- })(this, (function (exports, i0, i1$1, i1, security, focusTrap, i1$2, rxjs, operators, tslib, forms, _swipey) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@wm/core'), require('@wm/security'), require('@wavemaker/focus-trap'), require('lodash-es'), require('@angular/platform-browser'), require('rxjs'), require('rxjs/operators'), require('tslib'), require('@angular/forms'), require('@swipey')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/common', '@wm/core', '@wm/security', '@wavemaker/focus-trap', 'lodash-es', '@angular/platform-browser', 'rxjs', 'rxjs/operators', 'tslib', '@angular/forms', '@swipey'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.wm = global.wm || {}, global.wm.components = global.wm.components || {}, global.wm.components.base = {}), global.ng.core, global.ng.common, global.wm.core, global.wm.security, global.focusTrap, global._, global.ng.platformBrowser, global.rxjs, global.rxjs.operators, global.tslib, global.ng.forms, global.swipey));
5
+ })(this, (function (exports, i0, i1$1, i1, security, focusTrap, lodashEs, i1$2, rxjs, operators, tslib, forms, _swipey) { 'use strict';
6
6
 
7
7
  function _interopNamespaceDefault(e) {
8
8
  var n = Object.create(null);
@@ -100,7 +100,7 @@
100
100
  /* convert indexes to properties, so as to work for even 'key1[0].child1'*/
101
101
  strKey.replace(/\[(\w+)\]/g, '.$1').split('.').forEach(key => {
102
102
  // If obj is null, then assign val to null.
103
- val = (val && val[key]) || (_.isNull(obj) ? obj : obj[key]);
103
+ val = (val && val[key]) || (lodashEs.isNull(obj) ? obj : obj[key]);
104
104
  });
105
105
  return val;
106
106
  }
@@ -135,7 +135,7 @@
135
135
  // Handling field name with special charecters
136
136
  // Ex: field = "f name"
137
137
  if (!bindExpr && !expr) {
138
- return _.get(dataObj, field);
138
+ return lodashEs.get(dataObj, field);
139
139
  }
140
140
  return i1.$parseExpr(expressionValue)(context, Object.assign({}, dataObj, { __1: dataObj }));
141
141
  };
@@ -172,12 +172,12 @@
172
172
  const getOrderByExpr = pageableObj => {
173
173
  pageableObj = pageableObj || [];
174
174
  const expressions = [], KEY_VAL_SEPARATOR = ' ', FIELD_SEPARATOR = ',';
175
- _.forEach(pageableObj, obj => {
175
+ lodashEs.forEach(pageableObj, obj => {
176
176
  if (obj.direction) {
177
177
  expressions.push(obj.property + KEY_VAL_SEPARATOR + obj.direction.toLowerCase());
178
178
  }
179
179
  });
180
- return _.join(expressions, FIELD_SEPARATOR);
180
+ return lodashEs.join(expressions, FIELD_SEPARATOR);
181
181
  };
182
182
  const isDataSetWidget = widget => {
183
183
  return DATASET_WIDGETS.has(widget);
@@ -267,13 +267,13 @@
267
267
  modes.string.push('in', 'notin');
268
268
  modes.character.push('in', 'notin');
269
269
  }
270
- _.forEach(typesMap, (types, primType) => {
271
- _.forEach(types, type => {
270
+ lodashEs.forEach(typesMap, (types, primType) => {
271
+ lodashEs.forEach(types, type => {
272
272
  matchModeTypesMap[type] = modes[primType];
273
273
  });
274
274
  });
275
275
  // this is used in filter criteria when the user types the column name manually and where we dont know the type of the column
276
- matchModeTypesMap['default'] = _.union(modes['number'], modes['string'], modes['character'], modes['date'], modes['date']);
276
+ matchModeTypesMap['default'] = lodashEs.union(modes['number'], modes['string'], modes['character'], modes['date'], modes['date']);
277
277
  return matchModeTypesMap;
278
278
  };
279
279
  const getMatchModeMsgs = (appLocale) => {
@@ -305,14 +305,14 @@
305
305
  // Returns array of classes that are evaluated true for given object or array
306
306
  const getClassesArray = classVal => {
307
307
  let classes = [];
308
- if (_.isArray(classVal)) {
308
+ if (lodashEs.isArray(classVal)) {
309
309
  classVal.forEach(v => {
310
310
  classes = classes.concat(getClassesArray(v));
311
311
  });
312
312
  return classes;
313
313
  }
314
- if (_.isObject(classVal)) {
315
- _.forEach(classVal, (val, key) => {
314
+ if (lodashEs.isObject(classVal)) {
315
+ lodashEs.forEach(classVal, (val, key) => {
316
316
  if (val) {
317
317
  classes = classes.concat(key.split(' '));
318
318
  }
@@ -326,9 +326,9 @@
326
326
  // if the conditional class property has already toAdd and toRemove arrays then take that otherwise build those arrays
327
327
  const classToAdd = nv.toAdd || nv;
328
328
  const classToRemove = nv.toRemove || ov;
329
- if (_.isObject(nv)) {
330
- toAdd = _.isArray(classToAdd) ? classToAdd : getClassesArray(classToAdd || []);
331
- toRemove = classToRemove ? (_.isArray(classToRemove) ? classToRemove : getClassesArray(classToRemove)) : [];
329
+ if (lodashEs.isObject(nv)) {
330
+ toAdd = lodashEs.isArray(classToAdd) ? classToAdd : getClassesArray(classToAdd || []);
331
+ toRemove = classToRemove ? (lodashEs.isArray(classToRemove) ? classToRemove : getClassesArray(classToRemove)) : [];
332
332
  }
333
333
  else {
334
334
  toAdd = classToAdd ? [classToAdd] : [];
@@ -343,9 +343,9 @@
343
343
  if (!options) {
344
344
  options = {};
345
345
  }
346
- _.forEach(dataObject, (value, title) => {
347
- if (_.includes(title, '.')) {
348
- relatedInfo = _.split(title, '.');
346
+ lodashEs.forEach(dataObject, (value, title) => {
347
+ if (lodashEs.includes(title, '.')) {
348
+ relatedInfo = lodashEs.split(title, '.');
349
349
  relatedTable = relatedInfo[0];
350
350
  relatedField = relatedInfo[1];
351
351
  isRelated = true;
@@ -354,7 +354,7 @@
354
354
  modifiedTitle = title;
355
355
  }
356
356
  else {
357
- if (_.isString(title)) {
357
+ if (lodashEs.isString(title)) {
358
358
  modifiedTitle = i1.prettifyLabel(title);
359
359
  modifiedTitle = i1.deHyphenate(modifiedTitle);
360
360
  modifiedTitle = namePrefix ? i1.initCaps(namePrefix) + ' ' + modifiedTitle : modifiedTitle;
@@ -366,7 +366,7 @@
366
366
  title = namePrefix ? namePrefix + '.' + title : title;
367
367
  if (isRelated) {
368
368
  // For related columns, shorten the title to last two words
369
- fieldName = _.split(modifiedTitle, ' ');
369
+ fieldName = lodashEs.split(modifiedTitle, ' ');
370
370
  fieldName = fieldName.length > 1 ? fieldName[fieldName.length - 2] + ' ' + fieldName[fieldName.length - 1] : fieldName[0];
371
371
  }
372
372
  else {
@@ -375,7 +375,7 @@
375
375
  const defObj = options.setBindingField ? { 'displayName': fieldName, 'field': title, 'relatedTable': relatedTable, 'relatedField': relatedField || modifiedTitle }
376
376
  : { 'displayName': fieldName, 'relatedTable': relatedTable, 'relatedField': relatedField || modifiedTitle };
377
377
  /*if field is a leaf node, push it in the columnDefs*/
378
- if (!_.isObject(value) || (_.isArray(value) && !value[0])) {
378
+ if (!lodashEs.isObject(value) || (lodashEs.isArray(value) && !value[0])) {
379
379
  /*if the column counter has reached upperBound return*/
380
380
  if (options.upperBound && options.columnCount === options.upperBound) {
381
381
  return;
@@ -391,7 +391,7 @@
391
391
  columnDefObj.objects.push(defObj);
392
392
  }
393
393
  /* if field is an array node, process its first child */
394
- if (_.isArray(value) && value[0]) {
394
+ if (lodashEs.isArray(value) && value[0]) {
395
395
  pushFieldDef(value[0], columnDefObj, title + '[0]', options);
396
396
  }
397
397
  else {
@@ -402,17 +402,17 @@
402
402
  };
403
403
  const getMetaDataFromData = (data) => {
404
404
  let dataObject;
405
- if (_.isArray(data)) {
406
- if (_.isObject(data[0])) {
405
+ if (lodashEs.isArray(data)) {
406
+ if (lodashEs.isObject(data[0])) {
407
407
  dataObject = i1.getClonedObject(data[0]);
408
408
  /*Loop over the object to find out any null values. If any null values are present in the first row, check and assign the values from other row.
409
409
  * As column generation is dependent on data, for related fields if first row value is null, columns are not generated.
410
410
  * To prevent this, check the data in other rows and generate the columns. New keys from others rows are also added*/
411
- _.forEach(data, (row, index) => {
411
+ lodashEs.forEach(data, (row, index) => {
412
412
  if ((index + 1) >= 10) { // Limit the data search to first 10 records
413
413
  return false;
414
414
  }
415
- _.assignWith(dataObject, row, (objValue, srcValue) => {
415
+ lodashEs.assignWith(dataObject, row, (objValue, srcValue) => {
416
416
  return (objValue === null || objValue === undefined) ? srcValue : objValue;
417
417
  });
418
418
  });
@@ -801,7 +801,7 @@
801
801
  if (isDimensionProp(key)) {
802
802
  nv = i1.toDimension(nv);
803
803
  }
804
- else if (_.startsWith(nv, 'resources/')) {
804
+ else if (lodashEs.startsWith(nv, 'resources/')) {
805
805
  const ref = component;
806
806
  if (ref._parentPrefab_ === undefined) {
807
807
  ref._parentPrefab_ = component.$element.parent().closest('[prefabname][prefabname!="__self__"]').attr('prefabname') || '';
@@ -842,7 +842,7 @@
842
842
  },
843
843
  get: (target, key) => {
844
844
  const v = target[key];
845
- if (_.isFunction(v)) { // bind the proper context for the methods
845
+ if (lodashEs.isFunction(v)) { // bind the proper context for the methods
846
846
  return v.bind(target);
847
847
  }
848
848
  return v;
@@ -871,7 +871,7 @@
871
871
  // bind proper context for the methods
872
872
  invokeLater(() => {
873
873
  for (const key in instance) {
874
- if (_.isFunction(instance[key]) && key !== 'constructor' && key !== 'super' && !_.startsWith(key, 'ng')) {
874
+ if (lodashEs.isFunction(instance[key]) && key !== 'constructor' && key !== 'super' && !lodashEs.startsWith(key, 'ng')) {
875
875
  instance[key] = instance[key].bind(instance);
876
876
  }
877
877
  }
@@ -902,21 +902,21 @@
902
902
  // Gets list of classes to add and remove and applies on the $el
903
903
  const updateClasses = (toAdd, toRemove, el) => {
904
904
  if (toRemove && toRemove.length) {
905
- i1.removeClass(el, _.join(toRemove, ' '));
905
+ i1.removeClass(el, lodashEs.join(toRemove, ' '));
906
906
  }
907
907
  if (toAdd && toAdd.length) {
908
- i1.addClass(el, _.join(toAdd, ' '));
908
+ i1.addClass(el, lodashEs.join(toAdd, ' '));
909
909
  }
910
910
  };
911
911
  // To add and remove styles on the $el
912
912
  const updateStyles = (nv, ov, el) => {
913
- if (ov && _.isObject(ov)) {
913
+ if (ov && lodashEs.isObject(ov)) {
914
914
  const keys = Object.keys(ov || {});
915
915
  keys.forEach(function (key) {
916
916
  i1.setCSS(el, key, '');
917
917
  });
918
918
  }
919
- if (nv && _.isObject(nv)) {
919
+ if (nv && lodashEs.isObject(nv)) {
920
920
  i1.setCSSFromObj(el, nv);
921
921
  }
922
922
  };
@@ -1028,7 +1028,7 @@
1028
1028
  });
1029
1029
  }
1030
1030
  if (explicitContext) {
1031
- _.extend(this.context, explicitContext);
1031
+ lodashEs.extend(this.context, explicitContext);
1032
1032
  }
1033
1033
  }
1034
1034
  getNativeElement() {
@@ -1102,8 +1102,8 @@
1102
1102
  }
1103
1103
  if (parentContexts) {
1104
1104
  let parentContextObj = {};
1105
- if (_.isArray(parentContexts)) {
1106
- _.forEach(parentContexts, (contextObj) => {
1105
+ if (lodashEs.isArray(parentContexts)) {
1106
+ lodashEs.forEach(parentContexts, (contextObj) => {
1107
1107
  Object.assign(parentContextObj, contextObj);
1108
1108
  });
1109
1109
  }
@@ -1261,7 +1261,7 @@
1261
1261
  this.eventHandlers.set(this.getMappedEventName(eventName), { callback: eventCallback, locals });
1262
1262
  // prepend eventName with on and convert it to camelcase.
1263
1263
  // eg, "click" ---> onClick
1264
- const onEventName = _.camelCase(`on-${eventName}`);
1264
+ const onEventName = lodashEs.camelCase(`on-${eventName}`);
1265
1265
  // save the eventCallback in widgetScope.
1266
1266
  this[onEventName] = eventCallback;
1267
1267
  // events needs to be setup after viewInit
@@ -1341,7 +1341,7 @@
1341
1341
  if (_tNodeAttrs === null) {
1342
1342
  return actualAttrs.sort();
1343
1343
  }
1344
- _.forEach(_tNodeAttrs, (attr, i) => {
1344
+ lodashEs.forEach(_tNodeAttrs, (attr, i) => {
1345
1345
  if (typeof attr === 'number') {
1346
1346
  return false;
1347
1347
  }
@@ -1366,7 +1366,7 @@
1366
1366
  * Process the attributes
1367
1367
  */
1368
1368
  processAttrs() {
1369
- _.map(this.getAttributes(), (attrName) => {
1369
+ lodashEs.map(this.getAttributes(), (attrName) => {
1370
1370
  let attrValue = this.nativeElement.attributes[attrName].value;
1371
1371
  this.$attrs.set(attrName, attrValue);
1372
1372
  this.processAttr(attrName, attrValue);
@@ -1555,9 +1555,9 @@
1555
1555
  super(inj, WIDGET_CONFIG, explicitContext);
1556
1556
  }
1557
1557
  updateRedrawableComponents(widgets) {
1558
- _.pickBy(widgets, widget => {
1558
+ lodashEs.pickBy(widgets, widget => {
1559
1559
  // check for redrawable widget and whether it is already exist in reDrawableComponents query list or not
1560
- if (widget && widget.nativeElement && widget.nativeElement.hasAttribute('redrawable') && !_.includes(this.reDrawableComponents._results, widget)) {
1560
+ if (widget && widget.nativeElement && widget.nativeElement.hasAttribute('redrawable') && !lodashEs.includes(this.reDrawableComponents._results, widget)) {
1561
1561
  this.reDrawableComponents._results.push(widget);
1562
1562
  }
1563
1563
  if (widget && widget.Widgets) {
@@ -1898,7 +1898,7 @@
1898
1898
  this.registerDestroyListener(this.viewport.subscribe("orientationchange" /* ViewportEvent.ORIENTATION_CHANGE */, data => this.callback('orientationchange', data)));
1899
1899
  }
1900
1900
  callback(eventName, locals) {
1901
- locals = _.assign({ widget: this }, locals);
1901
+ locals = lodashEs.assign({ widget: this }, locals);
1902
1902
  this.invokeEventCallback(eventName, locals);
1903
1903
  }
1904
1904
  ngOnAttach() {
@@ -1943,7 +1943,7 @@
1943
1943
  if (!value && bindExpr) {
1944
1944
  this.widgetRef.registerDestroyListener(
1945
1945
  //[Todo-CSP]: expr fn should be generated be default
1946
- i1.$watch(bindExpr, this.widgetRef.getViewParent(), _.get(this.widgetRef, 'context'), nv => {
1946
+ i1.$watch(bindExpr, this.widgetRef.getViewParent(), lodashEs.get(this.widgetRef, 'context'), nv => {
1947
1947
  this.widgetRef.partialParams[name] = nv;
1948
1948
  // notify the partial container of the param changes
1949
1949
  this.widgetRef.params$.next();
@@ -2043,7 +2043,7 @@
2043
2043
  this.resolver = resolver;
2044
2044
  this.partialRefProvider = partialRefProvider;
2045
2045
  this.contentInitialized = false;
2046
- this.renderPartial = _.debounce(this._renderPartial, 200);
2046
+ this.renderPartial = lodashEs.debounce(this._renderPartial, 200);
2047
2047
  componentInstance.registerPropertyChangeListener((key, nv, ov) => {
2048
2048
  if (key === 'content') {
2049
2049
  if (componentInstance.$lazyLoad) {
@@ -2234,8 +2234,8 @@
2234
2234
  let iScroll = new IScroll(el, scrollOptions);
2235
2235
  if ($events) {
2236
2236
  // map all events on previous iscroll to the newly created iscroll.
2237
- _.forEach($events, (listeners, key) => {
2238
- _.forEach(listeners, l => {
2237
+ lodashEs.forEach($events, (listeners, key) => {
2238
+ lodashEs.forEach(listeners, l => {
2239
2239
  iScroll.on(key, l);
2240
2240
  });
2241
2241
  });
@@ -2264,7 +2264,7 @@
2264
2264
  }
2265
2265
  };
2266
2266
  this._$el[0].iscroll = iScroll;
2267
- _.forEach(this.pendingIscrolls, (_el, index) => {
2267
+ lodashEs.forEach(this.pendingIscrolls, (_el, index) => {
2268
2268
  if (_el.isSameNode(this._$el[0])) {
2269
2269
  this.app.notify('iscroll-update', { el: _el });
2270
2270
  this.pendingIscrolls.splice(index, 1);
@@ -2302,7 +2302,7 @@
2302
2302
  }
2303
2303
  // Check for scrollable content and if smoothscroll-container div is already added.
2304
2304
  if (iScroll.wrapper
2305
- && !_.includes(iScroll.wrapper.children[0].classList, 'smoothscroll-container')
2305
+ && !lodashEs.includes(iScroll.wrapper.children[0].classList, 'smoothscroll-container')
2306
2306
  && iScroll.wrapper.scrollHeight > iScroll.wrapper.clientHeight) {
2307
2307
  const cloneEvents = iScroll._events;
2308
2308
  const prevActiveEl = document.activeElement;
@@ -2392,7 +2392,7 @@
2392
2392
  this.pipeName = pipeName;
2393
2393
  this.customPipeManager = customPipeManager;
2394
2394
  this.pipeRef = this.customPipeManager ? this.customPipeManager.getCustomPipe(pipeName) : null;
2395
- this.isCustomPipe = this.pipeRef && _.isFunction(this.pipeRef.formatter);
2395
+ this.isCustomPipe = this.pipeRef && lodashEs.isFunction(this.pipeRef.formatter);
2396
2396
  }
2397
2397
  customFormatter(data, args) {
2398
2398
  try {
@@ -2407,7 +2407,7 @@
2407
2407
  const getEpochValue = data => {
2408
2408
  let epoch;
2409
2409
  // For data in form of string number ('123'), convert to number (123). And don't parse date objects.
2410
- if (!_.isDate(data) && !isNaN(data)) {
2410
+ if (!lodashEs.isDate(data) && !isNaN(data)) {
2411
2411
  data = parseInt(data, 10);
2412
2412
  }
2413
2413
  // get the timestamp value. If data is time string, append date string to the time value
@@ -2492,7 +2492,7 @@
2492
2492
  if (fracSize && !String(fracSize).match(/^(\d+)?\.((\d+)(-(\d+))?)?$/)) {
2493
2493
  fracSize = '1.' + fracSize + '-' + fracSize;
2494
2494
  }
2495
- if (!_.isNaN(+data)) {
2495
+ if (!isNaN(+data)) {
2496
2496
  const locale = this.i18nService && this.i18nService.getwidgetLocale() ? this.i18nService.getwidgetLocale() : undefined;
2497
2497
  const formattedLocale = locale ? locale['number'] : null;
2498
2498
  return this.decimalPipe.transform(data, fracSize, formattedLocale);
@@ -2518,7 +2518,7 @@
2518
2518
  transform(data, currencySymbol, fracSize) {
2519
2519
  const _currencySymbol = (i1.CURRENCY_INFO[currencySymbol] || {}).symbol || currencySymbol || '';
2520
2520
  let _val = new ToNumberPipe(this.decimalPipe, this.i18nService).transform(data, fracSize);
2521
- const isNegativeNumber = _.startsWith(_val, '-');
2521
+ const isNegativeNumber = lodashEs.startsWith(_val, '-');
2522
2522
  if (isNegativeNumber) {
2523
2523
  _val = _val.replace('-', '');
2524
2524
  }
@@ -2542,7 +2542,7 @@
2542
2542
  }] }], null); })();
2543
2543
  class PrefixPipe {
2544
2544
  transform(data, padding) {
2545
- return (_.isUndefined(data) || data === null || data === '') ? data : ((padding || '') + data);
2545
+ return (lodashEs.isUndefined(data) || data === null || data === '') ? data : ((padding || '') + data);
2546
2546
  }
2547
2547
  static { this.ɵfac = function PrefixPipe_Factory(t) { return new (t || PrefixPipe)(); }; }
2548
2548
  static { this.ɵpipe = /*@__PURE__*/ i0__namespace.ɵɵdefinePipe({ name: "prefix", type: PrefixPipe, pure: true }); }
@@ -2555,7 +2555,7 @@
2555
2555
  }], null, null); })();
2556
2556
  class SuffixPipe {
2557
2557
  transform(data, padding) {
2558
- return (_.isUndefined(data) || data === null || data === '') ? data : (data + (padding || ''));
2558
+ return (lodashEs.isUndefined(data) || data === null || data === '') ? data : (data + (padding || ''));
2559
2559
  }
2560
2560
  static { this.ɵfac = function SuffixPipe_Factory(t) { return new (t || SuffixPipe)(); }; }
2561
2561
  static { this.ɵpipe = /*@__PURE__*/ i0__namespace.ɵɵdefinePipe({ name: "suffix", type: SuffixPipe, pure: true }); }
@@ -2579,7 +2579,7 @@
2579
2579
  argumentArr.push(arguments[i]);
2580
2580
  }
2581
2581
  let pipeRef = this.custmeUserPipe.getCustomPipe(pipename);
2582
- if (!pipeRef || !_.isFunction(pipeRef.formatter)) {
2582
+ if (!pipeRef || !lodashEs.isFunction(pipeRef.formatter)) {
2583
2583
  console.warn('formatter is not defined, please check the custom pipes documentation');
2584
2584
  return data;
2585
2585
  }
@@ -2647,12 +2647,12 @@
2647
2647
  return [];
2648
2648
  }
2649
2649
  // If object is passed as first paramter
2650
- if (_.isObject(field)) {
2651
- return _.filter(data, field);
2650
+ if (lodashEs.isObject(field)) {
2651
+ return lodashEs.filter(data, field);
2652
2652
  }
2653
2653
  // If key value pair is provided
2654
- return _.filter(data, item => {
2655
- return _.includes(item[field], value);
2654
+ return lodashEs.filter(data, item => {
2655
+ return lodashEs.includes(item[field], value);
2656
2656
  });
2657
2657
  }
2658
2658
  static { this.ɵfac = function FilterPipe_Factory(t) { return new (t || FilterPipe)(); }; }
@@ -2985,7 +2985,7 @@
2985
2985
  * closes all the opened dialogs
2986
2986
  */
2987
2987
  closeAllDialogs() {
2988
- _.forEach(openedDialogs.reverse(), (dialog) => {
2988
+ lodashEs.forEach(openedDialogs.reverse(), (dialog) => {
2989
2989
  dialog.close();
2990
2990
  });
2991
2991
  }
@@ -3226,7 +3226,7 @@
3226
3226
  };
3227
3227
  // Returns true if widget is autocomplete or chips
3228
3228
  function isSearchWidgetType(widget) {
3229
- return _.includes([i1.FormWidgetType.AUTOCOMPLETE, i1.FormWidgetType.TYPEAHEAD, i1.FormWidgetType.CHIPS], widget);
3229
+ return lodashEs.includes([i1.FormWidgetType.AUTOCOMPLETE, i1.FormWidgetType.TYPEAHEAD, i1.FormWidgetType.CHIPS], widget);
3230
3230
  }
3231
3231
  function onSuccess(response, res, rej) {
3232
3232
  if (response.error) {
@@ -3315,7 +3315,7 @@
3315
3315
  }
3316
3316
  primaryKeys = dataSource.execute(i1.DataSource.Operation.GET_RELATED_PRIMARY_KEYS, relatedField);
3317
3317
  formField.datafield = datafield;
3318
- formField._primaryKey = _.isEmpty(primaryKeys) ? undefined : primaryKeys[0];
3318
+ formField._primaryKey = lodashEs.isEmpty(primaryKeys) ? undefined : primaryKeys[0];
3319
3319
  formField.compareby = primaryKeys && primaryKeys.join(',');
3320
3320
  displayField = datafield === ALLFIELDS ? undefined : datafield;
3321
3321
  formField.displayfield = displayField = (formField.displayfield || displayField || formField._primaryKey);
@@ -3334,12 +3334,12 @@
3334
3334
  dataSource.execute(i1.DataSource.Operation.GET_RELATED_TABLE_DATA, {
3335
3335
  relatedField,
3336
3336
  pagesize: formField.limit,
3337
- orderBy: formField.orderby ? _.replace(formField.orderby, /:/g, ' ') : '',
3337
+ orderBy: formField.orderby ? lodashEs.replace(formField.orderby, /:/g, ' ') : '',
3338
3338
  filterFields: {},
3339
3339
  filterExpr: formField.filterexpressions ? formField.filterexpressions : {}
3340
3340
  }).then(response => {
3341
3341
  formField.dataset = response.data;
3342
- formField.displayfield = formField.displayfield || _.head(_.keys(_.get(response, '[0]')));
3342
+ formField.displayfield = formField.displayfield || lodashEs.head(lodashEs.keys(lodashEs.get(response, '[0]')));
3343
3343
  if (formField.showPendingSpinner) {
3344
3344
  formField.showPendingSpinner = false;
3345
3345
  }
@@ -3355,7 +3355,7 @@
3355
3355
  */
3356
3356
  const interpolateBindExpressions = (context, filterexpressions, callbackFn) => {
3357
3357
  const debouncedFn = i1.debounce(() => {
3358
- if (_.isFunction(callbackFn)) {
3358
+ if (lodashEs.isFunction(callbackFn)) {
3359
3359
  callbackFn(filterexpressions);
3360
3360
  }
3361
3361
  }, 300);
@@ -3364,8 +3364,8 @@
3364
3364
  * without this it will never be called. processFilterExpBindNode will be called only for the binded variable expressions.
3365
3365
  */
3366
3366
  debouncedFn();
3367
- const filterExpressions = filterexpressions ? (_.isObject(filterexpressions) ? filterexpressions : JSON.parse(filterexpressions)) : {};
3368
- const destroyFn = context.registerDestroyListener ? context.registerDestroyListener.bind(context) : _.noop;
3367
+ const filterExpressions = filterexpressions ? (lodashEs.isObject(filterexpressions) ? filterexpressions : JSON.parse(filterexpressions)) : {};
3368
+ const destroyFn = context.registerDestroyListener ? context.registerDestroyListener.bind(context) : noop;
3369
3369
  const filterSubscription = i1.processFilterExpBindNode(context, filterExpressions).subscribe((response) => {
3370
3370
  filterexpressions = JSON.stringify(response.filterExpressions);
3371
3371
  debouncedFn();
@@ -3393,7 +3393,7 @@
3393
3393
  fieldColumn = formField['lookup-field'];
3394
3394
  props.distinctField = fieldColumn;
3395
3395
  props.aliasColumn = fieldColumn.replace('.', '$'); // For related fields, In response . is replaced by $
3396
- props.filterExpr = formField.filterexpressions ? (_.isObject(formField.filterexpressions) ? formField.filterexpressions : JSON.parse(formField.filterexpressions)) : {};
3396
+ props.filterExpr = formField.filterexpressions ? (lodashEs.isObject(formField.filterexpressions) ? formField.filterexpressions : JSON.parse(formField.filterexpressions)) : {};
3397
3397
  }
3398
3398
  else {
3399
3399
  props.tableName = dataSource.execute(i1.DataSource.Operation.GET_ENTITY_NAME);
@@ -3466,14 +3466,14 @@
3466
3466
  const emptySupportWidgets = [i1.FormWidgetType.SELECT, i1.FormWidgetType.RADIOSET];
3467
3467
  const emptyOption = {};
3468
3468
  const dataSet = [];
3469
- if (options.isEnableEmptyFilter && _.includes(emptySupportWidgets, formField[options.widget]) &&
3469
+ if (options.isEnableEmptyFilter && lodashEs.includes(emptySupportWidgets, formField[options.widget]) &&
3470
3470
  !formField['is-range'] && !formField.multiple) {
3471
3471
  // If empty option is selected, push an empty object in to dataSet
3472
3472
  emptyOption[LIVE_CONSTANTS.LABEL_KEY] = LIVE_CONSTANTS.EMPTY_KEY;
3473
3473
  emptyOption[LIVE_CONSTANTS.LABEL_VALUE] = options.EMPTY_VALUE || LIVE_CONSTANTS.EMPTY_VALUE;
3474
3474
  dataSet.push(emptyOption);
3475
3475
  }
3476
- _.each(data, key => {
3476
+ lodashEs.each(data, key => {
3477
3477
  const value = key[options.aliasColumn];
3478
3478
  const option = {};
3479
3479
  if (value !== null && value !== '') {
@@ -3501,7 +3501,7 @@
3501
3501
  *
3502
3502
  */
3503
3503
  function fetchDistinctValues(dataSource, formFields, options) {
3504
- if (_.isEmpty(formFields)) {
3504
+ if (lodashEs.isEmpty(formFields)) {
3505
3505
  return;
3506
3506
  }
3507
3507
  formFields.forEach(formField => {
@@ -3613,7 +3613,7 @@
3613
3613
  * @param {object} enableemptyfilter empty filter options
3614
3614
  */
3615
3615
  function getEnableEmptyFilter(enableemptyfilter) {
3616
- return enableemptyfilter && _.intersection(enableemptyfilter.split(','), LIVE_CONSTANTS.NULL_EMPTY).length > 0;
3616
+ return enableemptyfilter && lodashEs.intersection(enableemptyfilter.split(','), LIVE_CONSTANTS.NULL_EMPTY).length > 0;
3617
3617
  }
3618
3618
  /**
3619
3619
  * @ngdoc function
@@ -3628,14 +3628,14 @@
3628
3628
  */
3629
3629
  function getEmptyMatchMode(enableemptyfilter) {
3630
3630
  let matchMode;
3631
- const emptyFilterOptions = _.split(enableemptyfilter, ',');
3632
- if (_.intersection(emptyFilterOptions, LIVE_CONSTANTS.NULL_EMPTY).length === 2) {
3631
+ const emptyFilterOptions = lodashEs.split(enableemptyfilter, ',');
3632
+ if (lodashEs.intersection(emptyFilterOptions, LIVE_CONSTANTS.NULL_EMPTY).length === 2) {
3633
3633
  matchMode = i1.MatchMode.NULLOREMPTY;
3634
3634
  }
3635
- else if (_.includes(emptyFilterOptions, LIVE_CONSTANTS.NULL)) {
3635
+ else if (lodashEs.includes(emptyFilterOptions, LIVE_CONSTANTS.NULL)) {
3636
3636
  matchMode = i1.MatchMode.NULL;
3637
3637
  }
3638
- else if (_.includes(emptyFilterOptions, LIVE_CONSTANTS.EMPTY)) {
3638
+ else if (lodashEs.includes(emptyFilterOptions, LIVE_CONSTANTS.EMPTY)) {
3639
3639
  matchMode = i1.MatchMode.EMPTY;
3640
3640
  }
3641
3641
  return matchMode;
@@ -3651,13 +3651,13 @@
3651
3651
  * @returns {Array<any>}
3652
3652
  */
3653
3653
  const createArrayFrom = (data) => {
3654
- if (_.isUndefined(data) || _.isNull(data)) {
3654
+ if (lodashEs.isUndefined(data) || lodashEs.isNull(data)) {
3655
3655
  return [];
3656
3656
  }
3657
- if (_.isString(data)) {
3657
+ if (lodashEs.isString(data)) {
3658
3658
  data = data.split(',').map(Function.prototype.call, String.prototype.trim);
3659
3659
  }
3660
- if (!_.isArray(data)) {
3660
+ if (!lodashEs.isArray(data)) {
3661
3661
  data = [data];
3662
3662
  }
3663
3663
  return data;
@@ -3677,13 +3677,13 @@
3677
3677
  */
3678
3678
  function applyFilterOnField(dataSource, filterDef, formFields, newVal, options = {}) {
3679
3679
  const fieldName = filterDef.field || filterDef.key;
3680
- const filterOnFields = _.filter(formFields, { 'filter-on': fieldName });
3680
+ const filterOnFields = lodashEs.filter(formFields, { 'filter-on': fieldName });
3681
3681
  newVal = filterDef['is-range'] ? getRangeFieldValue(filterDef.minValue, filterDef.maxValue) : (i1.isDefined(newVal) ? newVal : filterDef.value);
3682
- if (!dataSource || (options.isFirst && (_.isUndefined(newVal) || newVal === ''))) {
3682
+ if (!dataSource || (options.isFirst && (lodashEs.isUndefined(newVal) || newVal === ''))) {
3683
3683
  return;
3684
3684
  }
3685
3685
  // Loop over the fields for which the current field is filter on field
3686
- _.forEach(filterOnFields, filterField => {
3686
+ lodashEs.forEach(filterOnFields, filterField => {
3687
3687
  const filterKey = filterField.field || filterField.key;
3688
3688
  const lookUpField = filterDef['lookup-field'] || filterDef._primaryKey;
3689
3689
  const filterWidget = filterField['edit-widget-type'] || filterField.widgettype;
@@ -3709,7 +3709,7 @@
3709
3709
  else {
3710
3710
  matchMode = i1.MatchMode.EQUALS;
3711
3711
  }
3712
- filterVal = (_.isObject(newVal) && !_.isArray(newVal)) ? newVal[lookUpField] : newVal;
3712
+ filterVal = (lodashEs.isObject(newVal) && !lodashEs.isArray(newVal)) ? newVal[lookUpField] : newVal;
3713
3713
  filterFields[filterOn] = {
3714
3714
  'value': filterVal,
3715
3715
  'matchMode': matchMode
@@ -3744,9 +3744,9 @@
3744
3744
  // data sanity testing
3745
3745
  dataObject = dataObject || [];
3746
3746
  // if the dataObject is not an array make it an array
3747
- if (!_.isArray(dataObject)) {
3747
+ if (!lodashEs.isArray(dataObject)) {
3748
3748
  // if the data returned is of type string, make it an object inside an array
3749
- if (_.isString(dataObject)) {
3749
+ if (lodashEs.isString(dataObject)) {
3750
3750
  keys = variableName.substring(variableName.indexOf('.') + 1, variableName.length).split('.');
3751
3751
  oldKeys = [];
3752
3752
  numKeys = keys.length;
@@ -3770,9 +3770,9 @@
3770
3770
  /*if the dataObject is an array and each value is a string, then lite-transform the string to an object
3771
3771
  * lite-transform: just checking if the first value is string and then transforming the object, instead of traversing through the whole array
3772
3772
  * */
3773
- if (_.isString(dataObject[0])) {
3773
+ if (lodashEs.isString(dataObject[0])) {
3774
3774
  tempArr = [];
3775
- _.forEach(dataObject, str => {
3775
+ lodashEs.forEach(dataObject, str => {
3776
3776
  newObj = {};
3777
3777
  newObj[variableName.split('.').join('-')] = str;
3778
3778
  tempArr.push(newObj);
@@ -3815,18 +3815,18 @@
3815
3815
  /**
3816
3816
  * function to get the ordered dataset based on the given orderby
3817
3817
  */
3818
- const getOrderedDataset = (dataSet, orderBy, innerItem) => {
3819
- if (!orderBy) {
3820
- return _.cloneDeep(dataSet);
3818
+ const getOrderedDataset = (dataSet, orderBy$1, innerItem) => {
3819
+ if (!orderBy$1) {
3820
+ return lodashEs.cloneDeep(dataSet);
3821
3821
  }
3822
3822
  // The order by only works when the dataset contains list of objects.
3823
- const items = orderBy.split(','), fields = [], directions = [];
3823
+ const items = orderBy$1.split(','), fields = [], directions = [];
3824
3824
  items.forEach(obj => {
3825
3825
  const item = obj.split(':');
3826
3826
  fields.push(innerItem ? innerItem + '.' + item[0] : item[0]);
3827
3827
  directions.push(item[1]);
3828
3828
  });
3829
- return _.orderBy(dataSet, fields, directions);
3829
+ return lodashEs.orderBy(dataSet, fields, directions);
3830
3830
  };
3831
3831
  /**
3832
3832
  * Returns an array of object, each object contain the DataSetItem whose key, value, label are extracted from object keys.
@@ -3835,10 +3835,10 @@
3835
3835
  const data = [];
3836
3836
  // if the dataset is instance of object (not an array) or the first item in the dataset array is an object,
3837
3837
  // then we extract the keys from the object and prepare the dataset items.
3838
- if (_.isObject(dataSet[0]) || (_.isObject(dataSet) && !(dataSet instanceof Array))) {
3838
+ if (lodashEs.isObject(dataSet[0]) || (lodashEs.isObject(dataSet) && !(dataSet instanceof Array))) {
3839
3839
  // getting keys of the object
3840
3840
  const objectKeys = Object.keys(dataSet[0] || dataSet);
3841
- _.forEach(objectKeys, (objKey, index) => {
3841
+ lodashEs.forEach(objectKeys, (objKey, index) => {
3842
3842
  data.push({
3843
3843
  key: objKey,
3844
3844
  label: objKey,
@@ -3851,21 +3851,21 @@
3851
3851
  };
3852
3852
  // Converts any type of data to array.
3853
3853
  const extractDataAsArray = data => {
3854
- if (_.isUndefined(data) || _.isNull(data) || _.trim(data) === '') {
3854
+ if (lodashEs.isUndefined(data) || lodashEs.isNull(data) || lodashEs.trim(data) === '') {
3855
3855
  return [];
3856
3856
  }
3857
- if (_.isString(data)) {
3858
- data = _.split(data, ',').map(str => str.trim());
3857
+ if (lodashEs.isString(data)) {
3858
+ data = lodashEs.split(data, ',').map(str => str.trim());
3859
3859
  }
3860
- if (!_.isArray(data)) {
3860
+ if (!lodashEs.isArray(data)) {
3861
3861
  data = [data];
3862
3862
  }
3863
3863
  return data;
3864
3864
  };
3865
3865
  // This function return always an object containing dataset details.
3866
3866
  const convertDataToObject = dataResult => {
3867
- if (_.isString(dataResult)) {
3868
- dataResult = _.split(dataResult, ',').map(str => str.trim());
3867
+ if (lodashEs.isString(dataResult)) {
3868
+ dataResult = lodashEs.split(dataResult, ',').map(str => str.trim());
3869
3869
  }
3870
3870
  return dataResult;
3871
3871
  };
@@ -3877,7 +3877,7 @@
3877
3877
  const setGroupbyKey = (scope, context, dataSetItem, innerItem) => {
3878
3878
  if (scope && isSeachWidget(scope.widgetType)) {
3879
3879
  if (scope.groupby) {
3880
- if (_.includes(scope.groupby, '(')) {
3880
+ if (lodashEs.includes(scope.groupby, '(')) {
3881
3881
  //[Todo-CSP]: can generate expr fn in page based on groupby property on widget
3882
3882
  const groupDataByUserDefinedFn = i1.$parseEvent(scope.groupby);
3883
3883
  dataSetItem.groupby = groupDataByUserDefinedFn(context, { 'row': dataSetItem.dataObject || dataSetItem });
@@ -3908,10 +3908,10 @@
3908
3908
  }
3909
3909
  dataSet = convertDataToObject(dataSet);
3910
3910
  // startIndex is the index of the next new item.
3911
- if (_.isUndefined(startIndex)) {
3911
+ if (lodashEs.isUndefined(startIndex)) {
3912
3912
  startIndex = 1;
3913
3913
  }
3914
- if (_.isString(dataSet)) {
3914
+ if (lodashEs.isString(dataSet)) {
3915
3915
  dataSet = dataSet.split(',').map(str => str.trim());
3916
3916
  dataSet.forEach((option, index) => {
3917
3917
  const dataSetItem = { key: option, value: option, label: (i1.isDefined(option) && option !== null) ? option.toString() : '', index: startIndex + index };
@@ -3919,16 +3919,20 @@
3919
3919
  data.push(dataSetItem);
3920
3920
  });
3921
3921
  }
3922
- else if (_.isArray(dataSet) && !_.isObject(dataSet[0])) { // array of primitive values only
3922
+ else if (lodashEs.isArray(dataSet) && !lodashEs.isObject(dataSet[0])) { // array of primitive values only
3923
3923
  dataSet.forEach((option, index) => {
3924
3924
  const dataSetItem = { key: option, value: option, label: (i1.isDefined(option) && option !== null) ? option.toString() : '', index: startIndex + index };
3925
3925
  setGroupbyKey(scope, context, dataSetItem, 'value');
3926
3926
  data.push(dataSetItem);
3927
3927
  });
3928
3928
  }
3929
- else if (!(dataSet instanceof Array) && _.isObject(dataSet)) {
3930
- _.forEach(dataSet, (value, key) => {
3931
- const dataSetItem = { key: _.trim(key), value: key, label: (i1.isDefined(value) && value !== null) ? value.toString() : '', index: startIndex, dataObject: dataSet };
3929
+ else if (!(dataSet instanceof Array) && lodashEs.isObject(dataSet)) {
3930
+ lodashEs.forEach(dataSet, (value, key) => {
3931
+ // @ts-ignore
3932
+ const dataSetItem = { key: lodashEs.trim(key), value: key, label: (i1.isDefined(value) && value !== null) ? value.toString() : '',
3933
+ index: startIndex,
3934
+ dataObject: dataSet
3935
+ };
3932
3936
  setGroupbyKey(scope, context, dataSetItem, 'value');
3933
3937
  data.push(dataSetItem);
3934
3938
  });
@@ -3940,7 +3944,7 @@
3940
3944
  dataSet.forEach((option, index) => {
3941
3945
  const key = myDataField === ALLFIELDS ? startIndex + index : getObjValueByKey(option, myDataField);
3942
3946
  // Omit all the items whose datafield (key) is null or undefined.
3943
- if (!_.isUndefined(key) && !_.isNull(key)) {
3947
+ if (!lodashEs.isUndefined(key) && !lodashEs.isNull(key)) {
3944
3948
  const label = getEvaluatedData(option, {
3945
3949
  field: displayOptions.displayField,
3946
3950
  expression: displayOptions.displayExpr,
@@ -3972,16 +3976,16 @@
3972
3976
  const getUniqObjsByDataField = (data, dataField, displayField, allowEmptyFields) => {
3973
3977
  let uniqData;
3974
3978
  const isAllFields = dataField === ALLFIELDS;
3975
- uniqData = isAllFields ? _.uniqWith(data, _.isEqual) : _.uniqBy(data, 'key');
3979
+ uniqData = isAllFields ? lodashEs.uniqWith(data, lodashEs.isEqual) : lodashEs.uniqBy(data, 'key');
3976
3980
  if (!displayField || allowEmptyFields) {
3977
3981
  return uniqData;
3978
3982
  }
3979
3983
  // return objects having non empty datafield and display field values.
3980
- return _.filter(uniqData, (obj) => {
3984
+ return lodashEs.filter(uniqData, (obj) => {
3981
3985
  if (isAllFields) {
3982
- return _.trim(obj.label);
3986
+ return lodashEs.trim(obj.label);
3983
3987
  }
3984
- return _.trim(obj.key) && _.trim(obj.label);
3988
+ return lodashEs.trim(obj.key) && lodashEs.trim(obj.label);
3985
3989
  });
3986
3990
  };
3987
3991
  /**
@@ -3993,7 +3997,7 @@
3993
3997
  */
3994
3998
  const setItemByCompare = (datasetItems, compareWithDataObj, compareByField) => {
3995
3999
  // compare the fields based on fields given to compareby property.
3996
- _.forEach(datasetItems, opt => {
4000
+ lodashEs.forEach(datasetItems, opt => {
3997
4001
  if (i1.isEqualWithFields(opt.value, compareWithDataObj, compareByField)) {
3998
4002
  opt.selected = true;
3999
4003
  return false;
@@ -4010,13 +4014,13 @@
4010
4014
  */
4011
4015
  const getSortedGroupedData = (groupedLiData, groupBy, orderby) => {
4012
4016
  const _groupedData = [];
4013
- _.forEach(_.keys(groupedLiData), (groupkey, index) => {
4017
+ lodashEs.forEach(lodashEs.keys(groupedLiData), (groupkey, index) => {
4014
4018
  const liData = getOrderedDataset(groupedLiData[groupkey], orderby, 'dataObject');
4015
4019
  _groupedData.push({
4016
4020
  key: groupkey,
4017
- data: _.sortBy(liData, data => {
4021
+ data: lodashEs.sortBy(liData, data => {
4018
4022
  data._groupIndex = index + 1;
4019
- return _.get(data, groupBy) || _.get(data.dataObject, groupBy);
4023
+ return lodashEs.get(data, groupBy) || lodashEs.get(data.dataObject, groupBy);
4020
4024
  })
4021
4025
  });
4022
4026
  });
@@ -4036,10 +4040,11 @@
4036
4040
  */
4037
4041
  const groupData = (compRef, data, groupby, match, orderby, dateformat, datePipe, innerItem, AppDefaults) => {
4038
4042
  let groupedLiData = {};
4039
- if (_.includes(groupby, '(')) {
4043
+ if (lodashEs.includes(groupby, '(')) {
4040
4044
  //[Todo-CSP]: can generate expr fn in page based on groupby property on widget
4041
4045
  const groupDataByUserDefinedFn = i1.$parseEvent(groupby);
4042
- groupedLiData = _.groupBy(data, val => {
4046
+ groupedLiData = lodashEs.groupBy(data, val => {
4047
+ // @ts-ignore
4043
4048
  return groupDataByUserDefinedFn(compRef.viewParent, { 'row': val.dataObject || val });
4044
4049
  });
4045
4050
  }
@@ -4065,14 +4070,14 @@
4065
4070
  }
4066
4071
  // handling case-in-sensitive scenario
4067
4072
  // ordering the data based on groupby field. If there is innerItem then apply orderby using the innerItem's containing the groupby field.
4068
- fieldDefs = _.orderBy(fieldDefs, fieldDef => {
4069
- const groupKey = _.get(innerItem ? fieldDef[innerItem] : fieldDef, groupby);
4073
+ fieldDefs = lodashEs.orderBy(fieldDefs, fieldDef => {
4074
+ const groupKey = lodashEs.get(innerItem ? fieldDef[innerItem] : fieldDef, groupby);
4070
4075
  if (groupKey) {
4071
- return _.toLower(groupKey);
4076
+ return lodashEs.toLower(groupKey);
4072
4077
  }
4073
4078
  });
4074
4079
  // extract the grouped data based on the field obtained from 'groupDataByField'.
4075
- const groupedLiData = _.groupBy(fieldDefs, groupDataByField.bind(undefined, groupby, match, innerItem, dateFormat, datePipe, AppDefaults));
4080
+ const groupedLiData = lodashEs.groupBy(fieldDefs, groupDataByField.bind(undefined, groupby, match, innerItem, dateFormat, datePipe, AppDefaults));
4076
4081
  momentLocale._calendar = momentCalendarOptions; // Reset to default moment calendar options
4077
4082
  return groupedLiData;
4078
4083
  };
@@ -4138,9 +4143,9 @@
4138
4143
  // groups the fields based on the groupby value.
4139
4144
  const groupDataByField = (groupby, match, innerItem, dateFormat, datePipe, AppDefaults, liData) => {
4140
4145
  // get the groupby field value from the liData or innerItem in the liData.
4141
- let concatStr = _.get(innerItem ? liData[innerItem] : liData, groupby);
4146
+ let concatStr = lodashEs.get(innerItem ? liData[innerItem] : liData, groupby);
4142
4147
  // by default set the undefined groupKey as 'others'
4143
- if (_.isUndefined(concatStr) || _.isNull(concatStr) || concatStr.toString().trim() === '') {
4148
+ if (lodashEs.isUndefined(concatStr) || lodashEs.isNull(concatStr) || concatStr.toString().trim() === '') {
4144
4149
  return GROUP_BY_OPTIONS.OTHERS;
4145
4150
  }
4146
4151
  // if match prop is alphabetic ,get the starting alphabet of the word as key.
@@ -4148,7 +4153,7 @@
4148
4153
  concatStr = concatStr.substr(0, 1);
4149
4154
  }
4150
4155
  // if match contains the time options then get the concatStr using 'getTimeRolledUpString'
4151
- if (_.includes(_.values(TIME_ROLLUP_OPTIONS), match)) {
4156
+ if (lodashEs.includes(lodashEs.values(TIME_ROLLUP_OPTIONS), match)) {
4152
4157
  concatStr = getTimeRolledUpString(concatStr, match, dateFormat, datePipe, AppDefaults);
4153
4158
  }
4154
4159
  return concatStr;
@@ -4163,13 +4168,13 @@
4163
4168
  // toggle the collapse icon on list header.
4164
4169
  const groupIcons = groups.find('li.list-group-header .app-icon');
4165
4170
  if (groupIcons) {
4166
- _.forEach(groupIcons, (icon) => {
4167
- icon = $(icon);
4168
- if (icon.hasClass('wi-chevron-down')) {
4169
- icon.removeClass('wi-chevron-down').addClass('wi-chevron-up');
4171
+ lodashEs.forEach(groupIcons, (icon) => {
4172
+ const $icon = $(icon);
4173
+ if ($icon.hasClass('wi-chevron-down')) {
4174
+ $icon.removeClass('wi-chevron-down').addClass('wi-chevron-up');
4170
4175
  }
4171
4176
  else {
4172
- icon.removeClass('wi-chevron-up').addClass('wi-chevron-down');
4177
+ $icon.removeClass('wi-chevron-up').addClass('wi-chevron-down');
4173
4178
  }
4174
4179
  });
4175
4180
  }
@@ -4234,8 +4239,8 @@
4234
4239
  };
4235
4240
  // Method to set the header config of the data table
4236
4241
  const setHeaderConfig = (headerConfig, config, field, index) => {
4237
- _.forEach(headerConfig, cols => {
4238
- if (_.get(cols, 'isGroup')) {
4242
+ lodashEs.forEach(headerConfig, cols => {
4243
+ if (lodashEs.get(cols, 'isGroup')) {
4239
4244
  if (cols.field === field) {
4240
4245
  cols.columns[index] = config;
4241
4246
  }
@@ -4291,8 +4296,8 @@
4291
4296
  }
4292
4297
  else if (captionWidth) {
4293
4298
  // handling itemsperrow containing string of classes
4294
- _.forEach(_.split(captionWidth, ' '), function (cls) {
4295
- const keys = _.split(cls, '-'), tier = keys[0];
4299
+ lodashEs.forEach(lodashEs.split(captionWidth, ' '), function (cls) {
4300
+ const keys = lodashEs.split(cls, '-'), tier = keys[0];
4296
4301
  let _captionWidth, widgetWidth;
4297
4302
  _captionWidth = parseInt(keys[1], 10);
4298
4303
  widgetWidth = 12 - _captionWidth;
@@ -4307,7 +4312,7 @@
4307
4312
  };
4308
4313
  };
4309
4314
  const getDefaultViewModeWidget = widget => {
4310
- if (_.includes(['checkbox', 'toggle', 'rating'], widget)) {
4315
+ if (lodashEs.includes(['checkbox', 'toggle', 'rating'], widget)) {
4311
4316
  return VIEW_MODE_OPTIONS.DEFAULT;
4312
4317
  }
4313
4318
  return VIEW_MODE_OPTIONS.LABEL;
@@ -4377,7 +4382,7 @@
4377
4382
  if (type === i1.DataType.BOOLEAN) {
4378
4383
  widget = i1.FormWidgetType.SELECT;
4379
4384
  }
4380
- if (_.includes([i1.FormWidgetType.TEXT, i1.FormWidgetType.NUMBER, i1.FormWidgetType.SELECT, i1.FormWidgetType.AUTOCOMPLETE,
4385
+ if (lodashEs.includes([i1.FormWidgetType.TEXT, i1.FormWidgetType.NUMBER, i1.FormWidgetType.SELECT, i1.FormWidgetType.AUTOCOMPLETE,
4381
4386
  i1.FormWidgetType.DATE, i1.FormWidgetType.TIME, i1.FormWidgetType.DATETIME], widget)) {
4382
4387
  return widget;
4383
4388
  }
@@ -4435,10 +4440,10 @@
4435
4440
  const routRegex = /^(\/|#\/|#)(?!\W).*/;
4436
4441
  if (link) {
4437
4442
  if (routRegex.test(link)) {
4438
- link = _.first(link.match(/[\w]+.*/g)) || '';
4443
+ link = lodashEs.first(link.match(/[\w]+.*/g)) || '';
4439
4444
  return `#/${link}`;
4440
4445
  }
4441
- if (_.startsWith(link, 'www.')) {
4446
+ if (lodashEs.startsWith(link, 'www.')) {
4442
4447
  return `//${link}`;
4443
4448
  }
4444
4449
  return link;
@@ -4450,7 +4455,7 @@
4450
4455
  this.nodes = [];
4451
4456
  this.nodes$ = new rxjs.Subject();
4452
4457
  // debounce function for reset nodes functions.
4453
- this._resetNodes = _.debounce(this.resetNodes, 50);
4458
+ this._resetNodes = lodashEs.debounce(this.resetNodes, 50);
4454
4459
  this.securityService = this.inj.get(security.SecurityService);
4455
4460
  this.binditemlabel = this.nativeElement.getAttribute('itemlabel.bind');
4456
4461
  this.binditemicon = this.nativeElement.getAttribute('itemicon.bind');
@@ -4470,24 +4475,49 @@
4470
4475
  */
4471
4476
  getNode(fields, node) {
4472
4477
  const context = this.viewParent.pageScope || this.viewParent;
4473
- const children = getEvaluatedData(node, { field: this.itemchildren, bindExpression: this.binditemchildren }, context) || _.get(node, fields.childrenField);
4478
+ const children = getEvaluatedData(node, {
4479
+ field: this.itemchildren,
4480
+ bindExpression: this.binditemchildren
4481
+ }, context) || lodashEs.get(node, fields.childrenField);
4474
4482
  const navNode = {
4475
- action: getEvaluatedData(node, { field: this.itemaction, bindExpression: this.binditemaction }, context) || _.get(node, fields.actionField),
4476
- badge: getEvaluatedData(node, { field: this.itembadge, bindExpression: this.binditembadge }, context) || _.get(node, fields.badgeField),
4483
+ action: getEvaluatedData(node, {
4484
+ field: this.itemaction,
4485
+ bindExpression: this.binditemaction
4486
+ }, context) || lodashEs.get(node, fields.actionField),
4487
+ badge: getEvaluatedData(node, {
4488
+ field: this.itembadge,
4489
+ bindExpression: this.binditembadge
4490
+ }, context) || lodashEs.get(node, fields.badgeField),
4477
4491
  children: Array.isArray(children) ? this.getNodes(children) : [],
4478
- class: _.get(node, fields.classField),
4492
+ class: lodashEs.get(node, fields.classField),
4479
4493
  disabled: node.disabled,
4480
- icon: getEvaluatedData(node, { field: this.itemicon, bindExpression: this.binditemicon }, context) || _.get(node, fields.iconField),
4481
- id: getEvaluatedData(node, { field: this.itemid, bindExpression: this.binditemid }, context) || _.get(node, fields.idField),
4482
- label: getEvaluatedData(node, { field: this.itemlabel, bindExpression: this.binditemlabel }, context) || _.get(node, fields.labelField),
4483
- link: getValidLink(getEvaluatedData(node, { field: this.itemlink, bindExpression: this.binditemlink }, context) || _.get(node, fields.linkField)),
4484
- target: getValidLink(getEvaluatedData(node, { field: this.itemtarget, bindExpression: this.binditemtarget }, context) || _.get(node, fields.targetField)),
4494
+ icon: getEvaluatedData(node, {
4495
+ field: this.itemicon,
4496
+ bindExpression: this.binditemicon
4497
+ }, context) || lodashEs.get(node, fields.iconField),
4498
+ id: getEvaluatedData(node, {
4499
+ field: this.itemid,
4500
+ bindExpression: this.binditemid
4501
+ }, context) || lodashEs.get(node, fields.idField),
4502
+ label: getEvaluatedData(node, {
4503
+ field: this.itemlabel,
4504
+ bindExpression: this.binditemlabel
4505
+ }, context) || lodashEs.get(node, fields.labelField),
4506
+ link: getValidLink(getEvaluatedData(node, {
4507
+ field: this.itemlink,
4508
+ bindExpression: this.binditemlink
4509
+ }, context) || lodashEs.get(node, fields.linkField)),
4510
+ target: getValidLink(getEvaluatedData(node, {
4511
+ field: this.itemtarget,
4512
+ bindExpression: this.binditemtarget
4513
+ }, context) || lodashEs.get(node, fields.targetField)),
4485
4514
  role: getEvaluatedData(node, { field: this.userrole, bindExpression: this.binduserrole }, context),
4486
4515
  isactive: getEvaluatedData(node, { field: this.isactive, bindExpression: this.bindisactive }, context),
4487
4516
  // older projects have display field & data field property for menu.
4488
4517
  value: this.datafield ? (this.datafield === 'All Fields' ? node : i1.findValueOf(node, this.datafield)) : node
4489
4518
  };
4490
- return _.omitBy(navNode, _.isUndefined);
4519
+ // @ts-ignore
4520
+ return lodashEs.omitBy(navNode, lodashEs.isUndefined);
4491
4521
  }
4492
4522
  resetItemFieldMap() {
4493
4523
  this._itemFieldMap = null;
@@ -4625,7 +4655,7 @@
4625
4655
  if (this.instance.regexp) {
4626
4656
  _validator.push(forms.Validators.pattern(this.instance.regexp));
4627
4657
  }
4628
- if (this.formwidget && _.isFunction(this.formwidget.validate)) {
4658
+ if (this.formwidget && lodashEs.isFunction(this.formwidget.validate)) {
4629
4659
  _validator.push(this.formwidget.validate.bind(this.formwidget));
4630
4660
  }
4631
4661
  return _validator;
@@ -4652,7 +4682,7 @@
4652
4682
  }
4653
4683
  getPromiseList(validators) {
4654
4684
  const arr = [];
4655
- _.forEach(validators, (fn, index) => {
4685
+ lodashEs.forEach(validators, (fn, index) => {
4656
4686
  let promise = fn;
4657
4687
  if (fn instanceof Function && fn.bind) {
4658
4688
  promise = fn(this.widgetControl, this.widgetContext);
@@ -4674,10 +4704,11 @@
4674
4704
  // if err obj has validationMessage key, then set validationMessage using this value
4675
4705
  // else return the value of the first key in the err object as validation message.
4676
4706
  if (err.hasOwnProperty('errorMessage')) {
4677
- this.instance.validationmessage = _.get(err, 'errorMessage');
4707
+ this.instance.validationmessage = lodashEs.get(err, 'errorMessage');
4678
4708
  }
4679
4709
  else {
4680
- const keys = _.keys(err);
4710
+ // @ts-ignore
4711
+ const keys = keys(err);
4681
4712
  this.instance.validationmessage = (err[keys[0]]).toString();
4682
4713
  }
4683
4714
  return err;
@@ -4710,7 +4741,7 @@
4710
4741
  }
4711
4742
  }
4712
4743
  isDefaultValidator(type) {
4713
- return _.get(i1.VALIDATOR, _.toUpper(type));
4744
+ return lodashEs.get(i1.VALIDATOR, lodashEs.toUpper(type));
4714
4745
  }
4715
4746
  // default validator is bound to a function then watch for value changes
4716
4747
  // otherwise set the value of default validator directly
@@ -4726,10 +4757,10 @@
4726
4757
  }
4727
4758
  // sets the default validation on the form field
4728
4759
  setValidators(validators) {
4729
- let _cloneValidators = _.cloneDeep(validators);
4760
+ let _cloneValidators = lodashEs.cloneDeep(validators);
4730
4761
  this.hasValidators = true;
4731
4762
  this._syncValidators = [];
4732
- _.forEach(_cloneValidators, (obj, index) => {
4763
+ lodashEs.forEach(_cloneValidators, (obj, index) => {
4733
4764
  // custom validation is bound to function.
4734
4765
  if (obj && obj instanceof Function) {
4735
4766
  // passing formfield and form as arguments to the obj (i.e. validator function)
@@ -4738,17 +4769,17 @@
4738
4769
  }
4739
4770
  else {
4740
4771
  // checks for default validator like required, maxchars etc.
4741
- const key = _.get(obj, 'type');
4742
- this.defaultValidatorMessages[key] = _.get(obj, 'errorMessage');
4772
+ const key = lodashEs.get(obj, 'type');
4773
+ this.defaultValidatorMessages[key] = lodashEs.get(obj, 'errorMessage');
4743
4774
  if (this.isDefaultValidator(key)) {
4744
- const value = _.get(obj, 'validator');
4775
+ const value = lodashEs.get(obj, 'validator');
4745
4776
  this.setDefaultValidator(key, value);
4746
4777
  _cloneValidators[index] = '';
4747
4778
  }
4748
4779
  }
4749
4780
  });
4750
4781
  // _syncValidators contains all the custom validations on the form field. will not include default validators.
4751
- this._syncValidators = _.filter(_cloneValidators, val => {
4782
+ this._syncValidators = lodashEs.filter(_cloneValidators, val => {
4752
4783
  if (val) {
4753
4784
  return val;
4754
4785
  }
@@ -4756,8 +4787,8 @@
4756
4787
  this.applyDefaultValidators();
4757
4788
  }
4758
4789
  observeOn(fields, context) {
4759
- _.forEach(fields, field => {
4760
- const formfield = _.find(this.widgetContext[context], { 'key': field });
4790
+ lodashEs.forEach(fields, field => {
4791
+ const formfield = lodashEs.find(this.widgetContext[context], { 'key': field });
4761
4792
  if (formfield) {
4762
4793
  if (!formfield.notifyForFields) {
4763
4794
  formfield.notifyForFields = [];
@@ -4788,13 +4819,13 @@
4788
4819
  const watchName = `${this.instance.widgetId}_` + key + '_formField';
4789
4820
  i1.$unwatch(watchName);
4790
4821
  //[Todo-CSP]: Need clarity generate this expr fn if form is present in the page
4791
- this.instance.registerDestroyListener(i1.$watch('boundFn(fn)', _.extend(this.instance, this.instance.viewParent), { fn }, (nv, ov) => {
4822
+ this.instance.registerDestroyListener(i1.$watch('boundFn(fn)', lodashEs.extend(this.instance, this.instance.viewParent), { fn }, (nv, ov) => {
4792
4823
  this.instance.widget[key] = nv;
4793
4824
  this.applyDefaultValidators();
4794
4825
  }, watchName));
4795
4826
  }
4796
4827
  isNullOrEmptyOrFalsy(value) {
4797
- return _.isEmpty(value);
4828
+ return lodashEs.isEmpty(value);
4798
4829
  }
4799
4830
  // invokes both custom sync validations and default validations.
4800
4831
  applyDefaultValidators() {
@@ -4805,7 +4836,7 @@
4805
4836
  if (this.formwidget && (this.instance.value === this.formwidget.prevDatavalue || this.isNullOrEmptyOrFalsy(this.instance.value))) {
4806
4837
  opt['emitEvent'] = false;
4807
4838
  }
4808
- this.widgetControl.setValidators(_.concat(this._syncValidators || [], validators));
4839
+ this.widgetControl.setValidators(lodashEs.concat(this._syncValidators || [], validators));
4809
4840
  this.widgetControl.updateValueAndValidity(opt);
4810
4841
  this.setCustomValidationMessage();
4811
4842
  }
@@ -4815,14 +4846,15 @@
4815
4846
  return;
4816
4847
  }
4817
4848
  if (fieldErrors.hasOwnProperty('errorMessage')) {
4818
- this.instance.validationmessage = _.get(fieldErrors, 'errorMessage');
4849
+ this.instance.validationmessage = lodashEs.get(fieldErrors, 'errorMessage');
4819
4850
  }
4820
4851
  else {
4821
- const keys = _.keys(fieldErrors);
4852
+ // @ts-ignore
4853
+ const keys = keys(fieldErrors);
4822
4854
  const key = keys[0];
4823
- const validationMsgKey = _.get(DEFAULT_VALIDATOR, key) || this.formwidget.validateType;
4855
+ const validationMsgKey = lodashEs.get(DEFAULT_VALIDATOR, key) || this.formwidget.validateType;
4824
4856
  if (validationMsgKey) {
4825
- const msg = _.get(this.defaultValidatorMessages, validationMsgKey) || this.instance.validationmessage;
4857
+ const msg = lodashEs.get(this.defaultValidatorMessages, validationMsgKey) || this.instance.validationmessage;
4826
4858
  if (msg && msg instanceof Function) {
4827
4859
  // passing formfield and form as arguments to the errorMessage function.
4828
4860
  this.instance.validationmessage = msg(this.widgetControl, this.widgetContext);