@wavemaker/app-ng-runtime 12.0.0-next.45503 → 12.0.0-rc.5849

Sign up to get free protection for your applications and to get access to all the features.
Files changed (288) hide show
  1. app-ng-runtime/build-task/bundles/index.umd.js +46 -38
  2. app-ng-runtime/build-task/esm2022/basic/default/anchor/anchor.build.mjs +2 -2
  3. app-ng-runtime/build-task/esm2022/basic/default/html/html.build.mjs +2 -2
  4. app-ng-runtime/build-task/esm2022/basic/default/icon/icon.build.mjs +2 -2
  5. app-ng-runtime/build-task/esm2022/basic/default/label/label.build.mjs +2 -2
  6. app-ng-runtime/build-task/esm2022/basic/default/picture/picture.build.mjs +2 -2
  7. app-ng-runtime/build-task/esm2022/basic/default/spinner/spinner.build.mjs +2 -2
  8. app-ng-runtime/build-task/esm2022/basic/progress/progress-circle/progress-circle.build.mjs +7 -2
  9. app-ng-runtime/build-task/esm2022/basic/rich-text-editor/rich-text-editor.build.mjs +2 -2
  10. app-ng-runtime/build-task/esm2022/containers/tile/tile.build.mjs +2 -2
  11. app-ng-runtime/build-task/esm2022/data/form/form-field/form-field.build.mjs +2 -2
  12. app-ng-runtime/build-task/esm2022/device/barcode-scanner/barcode-scanner.build.mjs +2 -2
  13. app-ng-runtime/build-task/esm2022/device/camera/camera.build.mjs +2 -2
  14. app-ng-runtime/build-task/esm2022/dialogs/alert-dialog/alert-dialog.build.mjs +2 -2
  15. app-ng-runtime/build-task/esm2022/input/calendar/calendar.build.mjs +2 -2
  16. app-ng-runtime/build-task/esm2022/input/color-picker/color-picker.build.mjs +3 -3
  17. app-ng-runtime/build-task/esm2022/input/currency/currency.build.mjs +3 -3
  18. app-ng-runtime/build-task/esm2022/input/default/button/button.build.mjs +2 -2
  19. app-ng-runtime/build-task/esm2022/input/default/button-group/button-group.build.mjs +2 -2
  20. app-ng-runtime/build-task/esm2022/input/default/switch/switch.build.mjs +2 -2
  21. app-ng-runtime/build-task/esm2022/input/file-upload/file-upload.build.mjs +5 -1
  22. app-ng-runtime/build-task/esm2022/page/footer/footer.build.mjs +2 -2
  23. app-ng-runtime/build-task/esm2022/page/header/header.build.mjs +2 -2
  24. app-ng-runtime/build-task/esm2022/page/layout.build.mjs +2 -2
  25. app-ng-runtime/build-task/esm2022/page/left-panel/left-panel.build.mjs +2 -2
  26. app-ng-runtime/build-task/esm2022/page/page.build.mjs +2 -2
  27. app-ng-runtime/build-task/esm2022/page/right-panel/right-panel.build.mjs +2 -2
  28. app-ng-runtime/build-task/esm2022/page/top-nav/top-nav.build.mjs +2 -2
  29. app-ng-runtime/build-task/fesm2022/index.mjs +46 -38
  30. app-ng-runtime/build-task/fesm2022/index.mjs.map +1 -1
  31. app-ng-runtime/components/advanced/carousel/bundles/index.umd.js +1 -1
  32. app-ng-runtime/components/advanced/carousel/esm2022/carousel.animator.mjs +2 -2
  33. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs +1 -1
  34. app-ng-runtime/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
  35. app-ng-runtime/components/base/bundles/index.umd.js +8 -2
  36. app-ng-runtime/components/base/esm2022/pipes/custom-pipes.mjs +3 -3
  37. app-ng-runtime/components/base/esm2022/utils/live-utils.mjs +8 -2
  38. app-ng-runtime/components/base/fesm2022/index.mjs +8 -2
  39. app-ng-runtime/components/base/fesm2022/index.mjs.map +1 -1
  40. app-ng-runtime/components/base/pipes/custom-pipes.d.ts +1 -1
  41. app-ng-runtime/components/basic/default/anchor/anchor.component.d.ts +1 -0
  42. app-ng-runtime/components/basic/default/audio/audio.component.d.ts +1 -0
  43. app-ng-runtime/components/basic/default/bundles/index.umd.js +27 -18
  44. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.component.mjs +4 -4
  45. app-ng-runtime/components/basic/default/esm2022/anchor/anchor.props.mjs +2 -1
  46. app-ng-runtime/components/basic/default/esm2022/audio/audio.component.mjs +5 -5
  47. app-ng-runtime/components/basic/default/esm2022/audio/audio.props.mjs +2 -1
  48. app-ng-runtime/components/basic/default/esm2022/html/html.props.mjs +2 -1
  49. app-ng-runtime/components/basic/default/esm2022/icon/icon.component.mjs +6 -7
  50. app-ng-runtime/components/basic/default/esm2022/icon/icon.props.mjs +2 -1
  51. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.component.mjs +3 -3
  52. app-ng-runtime/components/basic/default/esm2022/iframe/iframe.props.mjs +3 -2
  53. app-ng-runtime/components/basic/default/esm2022/label/label.props.mjs +1 -1
  54. app-ng-runtime/components/basic/default/esm2022/picture/picture.directive.mjs +2 -2
  55. app-ng-runtime/components/basic/default/esm2022/picture/picture.props.mjs +3 -1
  56. app-ng-runtime/components/basic/default/esm2022/spinner/spinner.props.mjs +3 -2
  57. app-ng-runtime/components/basic/default/esm2022/video/video.component.mjs +5 -4
  58. app-ng-runtime/components/basic/default/esm2022/video/video.props.mjs +2 -1
  59. app-ng-runtime/components/basic/default/fesm2022/index.mjs +27 -18
  60. app-ng-runtime/components/basic/default/fesm2022/index.mjs.map +1 -1
  61. app-ng-runtime/components/basic/default/icon/icon.component.d.ts +1 -0
  62. app-ng-runtime/components/basic/default/iframe/iframe.component.d.ts +1 -0
  63. app-ng-runtime/components/basic/default/picture/picture.directive.d.ts +2 -1
  64. app-ng-runtime/components/basic/default/video/video.component.d.ts +1 -0
  65. app-ng-runtime/components/basic/progress/bundles/index.umd.js +12 -8
  66. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +4 -4
  67. app-ng-runtime/components/basic/progress/esm2022/progress-bar/progress-bar.props.mjs +2 -1
  68. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +8 -6
  69. app-ng-runtime/components/basic/progress/esm2022/progress-circle/progress-circle.props.mjs +2 -1
  70. app-ng-runtime/components/basic/progress/fesm2022/index.mjs +12 -8
  71. app-ng-runtime/components/basic/progress/fesm2022/index.mjs.map +1 -1
  72. app-ng-runtime/components/basic/progress/progress-bar/progress-bar.component.d.ts +1 -0
  73. app-ng-runtime/components/basic/progress/progress-circle/progress-circle.component.d.ts +3 -1
  74. app-ng-runtime/components/basic/rich-text-editor/bundles/index.umd.js +2 -0
  75. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +2 -1
  76. app-ng-runtime/components/basic/rich-text-editor/esm2022/rich-text-editor.props.mjs +2 -1
  77. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs +2 -0
  78. app-ng-runtime/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
  79. app-ng-runtime/components/basic/search/bundles/index.umd.js +11 -9
  80. app-ng-runtime/components/basic/search/esm2022/search.component.mjs +14 -13
  81. app-ng-runtime/components/basic/search/esm2022/search.props.mjs +2 -1
  82. app-ng-runtime/components/basic/search/fesm2022/index.mjs +11 -9
  83. app-ng-runtime/components/basic/search/fesm2022/index.mjs.map +1 -1
  84. app-ng-runtime/components/basic/search/search.component.d.ts +1 -0
  85. app-ng-runtime/components/containers/accordion/bundles/index.umd.js +3 -3
  86. app-ng-runtime/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +4 -4
  87. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs +3 -3
  88. app-ng-runtime/components/containers/accordion/fesm2022/index.mjs.map +1 -1
  89. app-ng-runtime/components/containers/panel/bundles/index.umd.js +14 -14
  90. app-ng-runtime/components/containers/panel/esm2022/panel.component.mjs +15 -15
  91. app-ng-runtime/components/containers/panel/fesm2022/index.mjs +14 -14
  92. app-ng-runtime/components/containers/panel/fesm2022/index.mjs.map +1 -1
  93. app-ng-runtime/components/containers/tabs/bundles/index.umd.js +2 -2
  94. app-ng-runtime/components/containers/tabs/esm2022/tabs.component.mjs +3 -3
  95. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs +2 -2
  96. app-ng-runtime/components/containers/tabs/fesm2022/index.mjs.map +1 -1
  97. app-ng-runtime/components/data/form/bundles/index.umd.js +4 -0
  98. app-ng-runtime/components/data/form/esm2022/form-field/form-field.directive.mjs +5 -1
  99. app-ng-runtime/components/data/form/fesm2022/index.mjs +4 -0
  100. app-ng-runtime/components/data/form/fesm2022/index.mjs.map +1 -1
  101. app-ng-runtime/components/data/form/form-field/form-field.directive.d.ts +1 -0
  102. app-ng-runtime/components/data/live-table/bundles/index.umd.js +2 -2
  103. app-ng-runtime/components/data/live-table/esm2022/live-table.component.mjs +3 -3
  104. app-ng-runtime/components/data/live-table/fesm2022/index.mjs +2 -2
  105. app-ng-runtime/components/data/live-table/fesm2022/index.mjs.map +1 -1
  106. app-ng-runtime/components/data/pagination/bundles/index.umd.js +2 -0
  107. app-ng-runtime/components/data/pagination/esm2022/pagination.component.mjs +3 -1
  108. app-ng-runtime/components/data/pagination/fesm2022/index.mjs +2 -0
  109. app-ng-runtime/components/data/pagination/fesm2022/index.mjs.map +1 -1
  110. app-ng-runtime/components/data/table/bundles/index.umd.js +44 -10
  111. app-ng-runtime/components/data/table/esm2022/table-column/table-column.directive.mjs +14 -5
  112. app-ng-runtime/components/data/table/esm2022/table.component.mjs +30 -7
  113. app-ng-runtime/components/data/table/esm2022/table.props.mjs +3 -1
  114. app-ng-runtime/components/data/table/fesm2022/index.mjs +45 -11
  115. app-ng-runtime/components/data/table/fesm2022/index.mjs.map +1 -1
  116. app-ng-runtime/components/data/table/table.component.d.ts +8 -1
  117. app-ng-runtime/components/dialogs/alert-dialog/bundles/index.umd.js +6 -4
  118. app-ng-runtime/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +7 -5
  119. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs +6 -4
  120. app-ng-runtime/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
  121. app-ng-runtime/components/dialogs/confirm-dialog/bundles/index.umd.js +8 -5
  122. app-ng-runtime/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +9 -6
  123. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs +8 -5
  124. app-ng-runtime/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
  125. app-ng-runtime/components/dialogs/default/bundles/index.umd.js +9 -3
  126. app-ng-runtime/components/dialogs/default/dialog-header/dialog-header.component.d.ts +2 -1
  127. app-ng-runtime/components/dialogs/default/esm2022/base-dialog.mjs +2 -1
  128. app-ng-runtime/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +9 -4
  129. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs +9 -3
  130. app-ng-runtime/components/dialogs/default/fesm2022/index.mjs.map +1 -1
  131. app-ng-runtime/components/dialogs/design-dialog/bundles/index.umd.js +4 -4
  132. app-ng-runtime/components/dialogs/design-dialog/esm2022/dialog.component.mjs +5 -5
  133. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs +4 -4
  134. app-ng-runtime/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
  135. app-ng-runtime/components/dialogs/iframe-dialog/bundles/index.umd.js +9 -5
  136. app-ng-runtime/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +10 -6
  137. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs +9 -5
  138. app-ng-runtime/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
  139. app-ng-runtime/components/dialogs/partial-dialog/bundles/index.umd.js +9 -5
  140. app-ng-runtime/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +10 -6
  141. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs +9 -5
  142. app-ng-runtime/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
  143. app-ng-runtime/components/input/calendar/bundles/index.umd.js +2 -4
  144. app-ng-runtime/components/input/calendar/esm2022/calendar.component.mjs +3 -5
  145. app-ng-runtime/components/input/calendar/fesm2022/index.mjs +2 -4
  146. app-ng-runtime/components/input/calendar/fesm2022/index.mjs.map +1 -1
  147. app-ng-runtime/components/input/chips/bundles/index.umd.js +3 -2
  148. app-ng-runtime/components/input/chips/esm2022/chips.component.mjs +3 -3
  149. app-ng-runtime/components/input/chips/esm2022/chips.props.mjs +2 -1
  150. app-ng-runtime/components/input/chips/fesm2022/index.mjs +3 -2
  151. app-ng-runtime/components/input/chips/fesm2022/index.mjs.map +1 -1
  152. app-ng-runtime/components/input/color-picker/bundles/index.umd.js +5 -3
  153. app-ng-runtime/components/input/color-picker/color-picker.component.d.ts +1 -0
  154. app-ng-runtime/components/input/color-picker/esm2022/color-picker.component.mjs +6 -5
  155. app-ng-runtime/components/input/color-picker/esm2022/color-picker.props.mjs +2 -1
  156. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs +5 -3
  157. app-ng-runtime/components/input/color-picker/fesm2022/index.mjs.map +1 -1
  158. app-ng-runtime/components/input/currency/bundles/index.umd.js +4 -3
  159. app-ng-runtime/components/input/currency/currency.component.d.ts +1 -0
  160. app-ng-runtime/components/input/currency/esm2022/currency.component.mjs +6 -6
  161. app-ng-runtime/components/input/currency/esm2022/currency.props.mjs +2 -1
  162. app-ng-runtime/components/input/currency/fesm2022/index.mjs +4 -3
  163. app-ng-runtime/components/input/currency/fesm2022/index.mjs.map +1 -1
  164. app-ng-runtime/components/input/default/bundles/index.umd.js +166 -103
  165. app-ng-runtime/components/input/default/button/button.component.d.ts +1 -0
  166. app-ng-runtime/components/input/default/checkbox/checkbox.component.d.ts +1 -0
  167. app-ng-runtime/components/input/default/esm2022/button/button.component.mjs +1 -1
  168. app-ng-runtime/components/input/default/esm2022/button/button.props.mjs +2 -1
  169. app-ng-runtime/components/input/default/esm2022/caption-position.directive.mjs +8 -7
  170. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.component.mjs +7 -7
  171. app-ng-runtime/components/input/default/esm2022/checkbox/checkbox.props.mjs +2 -1
  172. app-ng-runtime/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +21 -16
  173. app-ng-runtime/components/input/default/esm2022/number/number.component.mjs +5 -5
  174. app-ng-runtime/components/input/default/esm2022/number/number.props.mjs +3 -1
  175. app-ng-runtime/components/input/default/esm2022/radioset/radioset.component.mjs +28 -23
  176. app-ng-runtime/components/input/default/esm2022/select/select.component.mjs +20 -18
  177. app-ng-runtime/components/input/default/esm2022/select/select.props.mjs +2 -1
  178. app-ng-runtime/components/input/default/esm2022/switch/switch.component.mjs +6 -5
  179. app-ng-runtime/components/input/default/esm2022/switch/switch.props.mjs +2 -1
  180. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +5 -5
  181. app-ng-runtime/components/input/default/esm2022/text/calendar/input-calendar.props.mjs +2 -1
  182. app-ng-runtime/components/input/default/esm2022/text/color/input-color.component.mjs +5 -5
  183. app-ng-runtime/components/input/default/esm2022/text/color/input-color.props.mjs +2 -1
  184. app-ng-runtime/components/input/default/esm2022/text/email/input-email.component.mjs +5 -5
  185. app-ng-runtime/components/input/default/esm2022/text/email/input-email.props.mjs +2 -1
  186. app-ng-runtime/components/input/default/esm2022/text/locale/number-locale.mjs +50 -13
  187. app-ng-runtime/components/input/default/esm2022/text/number/input-number.component.mjs +5 -5
  188. app-ng-runtime/components/input/default/esm2022/text/number/input-number.props.mjs +2 -1
  189. app-ng-runtime/components/input/default/esm2022/text/text/input-text.component.mjs +5 -5
  190. app-ng-runtime/components/input/default/esm2022/text/text/input-text.props.mjs +2 -1
  191. app-ng-runtime/components/input/default/esm2022/textarea/textarea.component.mjs +6 -6
  192. app-ng-runtime/components/input/default/esm2022/textarea/textarea.props.mjs +2 -1
  193. app-ng-runtime/components/input/default/fesm2022/index.mjs +166 -103
  194. app-ng-runtime/components/input/default/fesm2022/index.mjs.map +1 -1
  195. app-ng-runtime/components/input/default/number/number.component.d.ts +1 -0
  196. app-ng-runtime/components/input/default/select/select.component.d.ts +2 -0
  197. app-ng-runtime/components/input/default/text/calendar/input-calendar.component.d.ts +1 -0
  198. app-ng-runtime/components/input/default/text/color/input-color.component.d.ts +1 -0
  199. app-ng-runtime/components/input/default/text/email/input-email.component.d.ts +1 -0
  200. app-ng-runtime/components/input/default/text/locale/number-locale.d.ts +1 -0
  201. app-ng-runtime/components/input/default/text/number/input-number.component.d.ts +1 -0
  202. app-ng-runtime/components/input/default/text/text/input-text.component.d.ts +1 -0
  203. app-ng-runtime/components/input/default/textarea/textarea.component.d.ts +1 -0
  204. app-ng-runtime/components/input/epoch/bundles/index.umd.js +12 -9
  205. app-ng-runtime/components/input/epoch/date/date.component.d.ts +1 -0
  206. app-ng-runtime/components/input/epoch/date-time/date-time.component.d.ts +2 -1
  207. app-ng-runtime/components/input/epoch/esm2022/date/date.component.mjs +6 -6
  208. app-ng-runtime/components/input/epoch/esm2022/date/date.props.mjs +2 -1
  209. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.component.mjs +7 -7
  210. app-ng-runtime/components/input/epoch/esm2022/date-time/date-time.props.mjs +2 -1
  211. app-ng-runtime/components/input/epoch/esm2022/time/time.component.mjs +7 -7
  212. app-ng-runtime/components/input/epoch/esm2022/time/time.props.mjs +2 -1
  213. app-ng-runtime/components/input/epoch/fesm2022/index.mjs +12 -9
  214. app-ng-runtime/components/input/epoch/fesm2022/index.mjs.map +1 -1
  215. app-ng-runtime/components/input/epoch/time/time.component.d.ts +1 -0
  216. app-ng-runtime/components/input/file-upload/bundles/index.umd.js +187 -100
  217. app-ng-runtime/components/input/file-upload/esm2022/file-upload.component.mjs +184 -102
  218. app-ng-runtime/components/input/file-upload/esm2022/file-upload.props.mjs +6 -1
  219. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs +187 -100
  220. app-ng-runtime/components/input/file-upload/fesm2022/index.mjs.map +1 -1
  221. app-ng-runtime/components/input/file-upload/file-upload.component.d.ts +12 -10
  222. app-ng-runtime/components/input/slider/bundles/index.umd.js +5 -6
  223. app-ng-runtime/components/input/slider/esm2022/slider.component.mjs +6 -8
  224. app-ng-runtime/components/input/slider/esm2022/slider.props.mjs +2 -1
  225. app-ng-runtime/components/input/slider/fesm2022/index.mjs +5 -6
  226. app-ng-runtime/components/input/slider/fesm2022/index.mjs.map +1 -1
  227. app-ng-runtime/components/input/slider/slider.component.d.ts +1 -0
  228. app-ng-runtime/components/navigation/menu/bundles/index.umd.js +8 -6
  229. app-ng-runtime/components/navigation/menu/esm2022/menu.component.mjs +8 -7
  230. app-ng-runtime/components/navigation/menu/esm2022/menu.props.mjs +2 -1
  231. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs +8 -6
  232. app-ng-runtime/components/navigation/menu/fesm2022/index.mjs.map +1 -1
  233. app-ng-runtime/components/navigation/menu/menu.component.d.ts +1 -0
  234. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +121 -13
  235. app-ng-runtime/components/navigation/popover/esm2022/popover.component.mjs +122 -15
  236. app-ng-runtime/components/navigation/popover/esm2022/popover.props.mjs +2 -1
  237. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs +121 -13
  238. app-ng-runtime/components/navigation/popover/fesm2022/index.mjs.map +1 -1
  239. app-ng-runtime/components/navigation/popover/popover.component.d.ts +15 -3
  240. app-ng-runtime/components/page/default/bundles/index.umd.js +2 -1
  241. app-ng-runtime/components/page/default/esm2022/page.props.mjs +4 -3
  242. app-ng-runtime/components/page/default/fesm2022/index.mjs +2 -1
  243. app-ng-runtime/components/page/default/fesm2022/index.mjs.map +1 -1
  244. app-ng-runtime/components/page/footer/bundles/index.umd.js +2 -1
  245. app-ng-runtime/components/page/footer/esm2022/footer.props.mjs +3 -2
  246. app-ng-runtime/components/page/footer/fesm2022/index.mjs +2 -1
  247. app-ng-runtime/components/page/footer/fesm2022/index.mjs.map +1 -1
  248. app-ng-runtime/components/page/header/bundles/index.umd.js +2 -1
  249. app-ng-runtime/components/page/header/esm2022/header.props.mjs +3 -2
  250. app-ng-runtime/components/page/header/fesm2022/index.mjs +2 -1
  251. app-ng-runtime/components/page/header/fesm2022/index.mjs.map +1 -1
  252. app-ng-runtime/components/page/left-panel/bundles/index.umd.js +2 -1
  253. app-ng-runtime/components/page/left-panel/esm2022/left-panel.props.mjs +3 -2
  254. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs +2 -1
  255. app-ng-runtime/components/page/left-panel/fesm2022/index.mjs.map +1 -1
  256. app-ng-runtime/components/page/right-panel/bundles/index.umd.js +2 -1
  257. app-ng-runtime/components/page/right-panel/esm2022/right-panel.props.mjs +3 -2
  258. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs +2 -1
  259. app-ng-runtime/components/page/right-panel/fesm2022/index.mjs.map +1 -1
  260. app-ng-runtime/components/page/top-nav/bundles/index.umd.js +2 -1
  261. app-ng-runtime/components/page/top-nav/esm2022/top-nav.props.mjs +3 -2
  262. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs +2 -1
  263. app-ng-runtime/components/page/top-nav/fesm2022/index.mjs.map +1 -1
  264. app-ng-runtime/core/bundles/index.umd.js +15 -13
  265. app-ng-runtime/core/esm2022/public_api.mjs +2 -2
  266. app-ng-runtime/core/esm2022/utils/build-utils.mjs +7 -7
  267. app-ng-runtime/core/esm2022/utils/utils.mjs +4 -5
  268. app-ng-runtime/core/fesm2022/index.mjs +11 -11
  269. app-ng-runtime/core/fesm2022/index.mjs.map +1 -1
  270. app-ng-runtime/core/public_api.d.ts +1 -1
  271. app-ng-runtime/core/utils/utils.d.ts +1 -1
  272. app-ng-runtime/mobile/components/device/barcode-scanner/bundles/index.umd.js +2 -1
  273. app-ng-runtime/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.props.mjs +3 -2
  274. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs +2 -1
  275. app-ng-runtime/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +1 -1
  276. app-ng-runtime/mobile/components/device/camera/bundles/index.umd.js +2 -1
  277. app-ng-runtime/mobile/components/device/camera/esm2022/camera.props.mjs +3 -2
  278. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs +2 -1
  279. app-ng-runtime/mobile/components/device/camera/fesm2022/index.mjs.map +1 -1
  280. app-ng-runtime/package.json +1 -1
  281. app-ng-runtime/runtime/base/bundles/index.umd.js +6 -4
  282. app-ng-runtime/runtime/base/components/app-component/app.component.d.ts +2 -3
  283. app-ng-runtime/runtime/base/esm2022/components/app-component/app.component.mjs +5 -5
  284. app-ng-runtime/runtime/base/esm2022/guards/can-deactivate-page.guard.mjs +5 -4
  285. app-ng-runtime/runtime/base/fesm2022/index.mjs +6 -4
  286. app-ng-runtime/runtime/base/fesm2022/index.mjs.map +1 -1
  287. app-ng-runtime/runtime/base/guards/can-deactivate-page.guard.d.ts +2 -1
  288. app-ng-runtime/scripts/datatable/datatable.js +24 -27
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/data/pagination/src/pagination.props.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.component.html","../../../../../projects/components/widgets/data/pagination/src/pagination.component.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.module.ts","../../../../../projects/components/widgets/data/pagination/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-pagination',\n new Map(\n [\n ['boundarylinks', {value: false, ...PROP_BOOLEAN}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['directionlinks', {value: true, ...PROP_BOOLEAN}],\n ['forceellipses', {value: true, ...PROP_BOOLEAN}],\n ['maxResults', PROP_NUMBER],\n ['maxsize', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['navigation', {value: 'Basic', ...PROP_STRING}],\n ['navigationalign', {value: 'left', ...PROP_STRING}],\n ['navigationsize', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showrecordcount', PROP_BOOLEAN],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n )\n );\n};\n","\n<ul class=\"pagination advanced {{navigationClass}}\" *ngIf=\"navcontrols === 'Classic'\">\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li *ngIf=\"showrecordcount\" class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n<ul class=\"pager {{navigationClass}}\" *ngIf=\"navcontrols === 'Pager'\">\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n</ul>\n\n<pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" *ngIf=\"navcontrols === 'Basic'\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n\n<ul *ngIf=\"navcontrols === 'Basic' && showrecordcount\" class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n <span class=\"sr-only\" *ngIf=\"page.active\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n","import {Component, EventEmitter, Inject, Injector, Output, SkipSelf, AfterViewInit, Optional} from '@angular/core';\n\nimport {\n $appDigest,\n $watch,\n AppConstants,\n DataSource,\n debounce,\n isDefined,\n switchClass,\n triggerFn\n} from '@wm/core';\nimport { DEBOUNCE_TIMES, getOrderByExpr, provideAsWidgetRef, StylableComponent, styler, WidgetRef, unsupportedStatePersistenceTypes} from '@wm/components/base';\nimport { registerProps } from './pagination.props';\nimport {forEach, get, isArray, isEmpty, isNull, isString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-datanavigator clearfix';\nconst WIDGET_CONFIG = {widgetType: 'wm-pagination', hostClass: DEFAULT_CLS};\n\nconst sizeClasses = {\n 'Pager': {\n 'small': 'pager-sm',\n 'large': 'pager-lg'\n },\n 'Basic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n },\n 'Classic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n }\n};\n@Component({\n selector: '[wmPagination]',\n templateUrl: './pagination.component.html',\n providers: [\n provideAsWidgetRef(PaginationComponent)\n ]\n})\nexport class PaginationComponent extends StylableComponent implements AfterViewInit {\n static initializeProps = registerProps();\n @Output() resultEmitter: EventEmitter<any> = new EventEmitter();\n @Output() maxResultsEmitter: EventEmitter<any> = new EventEmitter();\n\n datasource;\n maxResults;\n navigationsize;\n showrecordcount;\n\n navcontrols;\n navigation;\n\n boundarylinks;\n directionlinks;\n\n navigationClass;\n dn = {\n currentPage: 1\n };\n\n pageCount = 0;\n isDisableNext = true;\n isDisablePrevious = true;\n isDisableFirst = true;\n isDisableLast = true;\n isDisableCurrent;\n dataSize;\n prevshowrecordcount;\n isDisableCount;\n firstRow;\n result;\n __fullData;\n dataset;\n options;\n statehandler;\n filterFields;\n sortOptions;\n binddataset;\n pagination;\n logicalOp;\n\n private _debouncedApplyDataset = debounce(() => this.widget.dataset = this.dataset, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n private _debouncedPageChanged = debounce(event => {\n const currentPage = event && event.page;\n // Do not call goToPage if page has not changed\n if (currentPage !== this.dn.currentPage) {\n const inst = (this as any).parent || this;\n this.dn.currentPage = currentPage;\n inst.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n this.goToPage();\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n }\n }, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n\n private _setAriaForBasicNavigation() {\n forEach(this.nativeElement.getElementsByTagName('a'), (item) => {\n item.setAttribute('href', 'javascript:void(0);');\n const childNode = item.querySelector('span');\n if (childNode?.dataset.isacitvepage === \"true\") {\n item.setAttribute('aria-current', 'true');\n }\n if(childNode?.dataset.isdisabled === \"true\") {\n item.setAttribute('aria-disabled', 'true');\n } else {\n item.removeAttribute('aria-disabled');\n }\n });\n }\n\n constructor(inj: Injector, @SkipSelf() @Inject(WidgetRef) public parent, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n }\n\n setResult(result) {\n // TODO: Emit event only if result is changed\n this.result = result;\n this.resultEmitter.emit(this.result);\n }\n\n // Update navigationClass based on navigation and navigationSize props\n private updateNavSize() {\n const sizeCls = sizeClasses[this.navcontrols];\n if (sizeCls && this.navigationsize) {\n this.navigationClass = sizeCls[this.navigationsize];\n } else {\n this.navigationClass = '';\n }\n }\n\n // Function to reset the paging values to default.\n resetPageNavigation() {\n this.pageCount = 0;\n this.dn.currentPage = 1;\n this.dataSize = 0;\n }\n\n /*Function to calculate the paging values.*/\n calculatePagingValues() {\n this.pageCount = (this.dataSize > this.maxResults) ? (Math.ceil(this.dataSize / this.maxResults)) : (this.dataSize < 0 ? 0 : 1);\n this.dn.currentPage = this.dn.currentPage || 1;\n }\n\n /*Function to set default values to the paging parameters*/\n setDefaultPagingValues(dataSize, maxResults, currentPage) {\n /*If neither 'dataSize' nor 'maxResults' is set, then set default values to the paging parameters.*/\n if (!dataSize && !maxResults) {\n this.pageCount = 1;\n this.dn.currentPage = 1;\n this.maxResults = dataSize;\n this.dataSize = dataSize;\n } else { /*Else, set the specified values and recalculate paging parameters.*/\n this.maxResults = maxResults || this.maxResults;\n this.dataSize = isDefined(dataSize) ? dataSize : this.dataSize;\n this.dn.currentPage = currentPage || this.dn.currentPage;\n this.calculatePagingValues();\n }\n this.maxResultsEmitter.emit(this.maxResults);\n }\n\n /*Function to check the dataSize and manipulate the navigator accordingly.*/\n checkDataSize(dataSize, numberOfElements?, size?) {\n /*If the dataSize is -1 or Integer.MAX_VALUE( which is 2147483647), then the total number of records is not known.\n * Hence,\n * 1. Hide the 'Total Record Count'.\n * 2. Disable the 'GoToLastPage' link as the page number of the last page is not known.*/\n if (dataSize === -1 || dataSize === AppConstants.INT_MAX_VALUE) {\n this.prevshowrecordcount = this.showrecordcount;\n this.isDisableLast = true;\n this.isDisableCount = true;\n this.showrecordcount = false;\n // If number of records in current page is less than the max records size, this is the last page. So disable next button.\n if (numberOfElements < size) {\n this.isDisableNext = true;\n }\n } else {\n this.isDisableCount = false;\n this.showrecordcount = this.prevshowrecordcount || this.showrecordcount;\n }\n }\n\n /*Function to disable navigation based on the current and total pages.*/\n disableNavigation() {\n const isCurrentPageFirst = (this.dn.currentPage === 1),\n isCurrentPageLast = (this.dn.currentPage === this.pageCount);\n if (!this.pagination?.next) {\n this.isDisableFirst = this.isDisablePrevious = isCurrentPageFirst;\n this.isDisableNext = this.isDisableLast = isCurrentPageLast;\n } else {\n // WMS-18867: In case of server side pagination, for pager type pagination depend on prev and next flags which are set by developer\n this.isDisableFirst = this.isDisablePrevious = !this.pagination.prev;\n this.isDisableNext = this.isDisableLast = !this.pagination.next;\n }\n this.isDisableCurrent = isCurrentPageFirst && isCurrentPageLast;\n // In case of client side pagination, when load more reaches last page hide the on-demand grid ele\n if (this.dataset && this.dataset.length && this.isDisableNext && this.parent.onDemandLoad && this.parent.widgetType === 'wm-table') {\n this.parent.callDataGridMethod('hideLoadingIndicator', this.isDisableNext, this.parent.infScroll);\n }\n }\n\n /*Function to check if the variable bound to the data-navigator has paging.*/\n isDataSourceHasPaging() {\n return this.datasource && this.datasource.execute(DataSource.Operation.IS_PAGEABLE);\n }\n\n // Set the result for client side pagination\n setNonPageableData(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex;\n dataSize = isArray(newVal) ? newVal.length : (isEmpty(newVal) ? 0 : 1);\n maxResults = (this.options && this.options.maxResults) || dataSize;\n\n // For static variable, keep the current page. For other variables without pagination reset the page to 1\n // Fix for [WMS-23263]: gridOptions.isNextPageData flag is false when dataset is changed from script, so setting current page to 1\n if (this.datasource && (this.datasource.execute(DataSource.Operation.IS_API_AWARE) || (this.parent.widgetType === 'wm-table' && (this.parent.gridOptions.isNavTypeScrollOrOndemand() && (get(this.parent, 'gridOptions.lastActionPerformed') === this.parent.gridOptions.ACTIONS.DATASET_UPDATE || !get(this.parent, 'gridOptions.isNextPageData')))))) {\n currentPage = 1;\n } else {\n currentPage = this.dn.currentPage || 1;\n }\n\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.setResult(isArray(newVal) ? newVal.slice(startIndex, startIndex + this.maxResults) : newVal);\n }\n\n /*Function to set the values needed for pagination*/\n private setPagingValues(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n dataSource;\n let variableOptions: any = {};\n // Store the data in __fullData. This is used for client side searching witvah out modifying the actual dataset.\n this.__fullData = newVal;\n /*Check for sanity*/\n if (this.binddataset) {\n dataSource = this.datasource || {};\n variableOptions = dataSource._options || {};\n /*Check for number of elements in the data set*/\n if (newVal) {\n if (this.isDataSourceHasPaging()) {\n this.pagination = this.datasource.execute(DataSource.Operation.GET_PAGING_OPTIONS) || {};\n // If \"filterFields\" and \"sortOptions\" have been set, then set them so that the filters can be retained while fetching data upon page navigation.\n this.filterFields = variableOptions.filterFields || {};\n this.logicalOp = variableOptions.logicalOp || '';\n this.sortOptions = variableOptions.orderBy ||\n (isArray(this.pagination.sort) ? getOrderByExpr(this.pagination.sort) : '');\n dataSize = this.pagination.totalElements;\n maxResults = this.pagination.size;\n if (this.pagination.numberOfElements > 0) {\n if (isDefined(this.pagination.number)) { // number is page number received from backend\n this.dn.currentPage = this.pagination.number + 1;\n }\n currentPage = this.dn.currentPage || 1;\n } else {\n currentPage = 1;\n }\n /* Sending pageCount undefined to calculate it again for query.*/\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n this.checkDataSize(dataSize, this.pagination.numberOfElements, this.pagination.size);\n this.setResult(newVal);\n } else if (!isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n } else {\n this.setResult(newVal);\n this.resetPageNavigation();\n }\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n } else {\n if (newVal && !isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n }\n }\n\n /*Function to check if the current page is the first page*/\n isFirstPage() {\n return (this.dn.currentPage === 1 || !this.dn.currentPage);\n }\n\n /*Function to check if the current page is the last page*/\n isLastPage() {\n return (this.dn.currentPage === this.pageCount);\n }\n\n /*Function to navigate to the last page*/\n goToLastPage(isRefresh, event, callback) {\n if (!this.isLastPage()) {\n this.dn.currentPage = this.pageCount;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the first page*/\n goToFirstPage(isRefresh, event, callback) {\n if (!this.isFirstPage()) {\n this.dn.currentPage = 1;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the current page*/\n goToPage(event?, callback?) {\n this.firstRow = (this.dn.currentPage - 1) * this.maxResults;\n const mode = this.parent.statePersistence.computeMode(this.statehandler);\n if (mode && mode.toLowerCase() !== 'none' && (this.parent.widgetType === 'wm-table' || this.parent.widgetType === 'wm-list')) {\n this.parent._selectedItemsExist = true;\n if (this.isFirstPage()) {\n this.parent.statePersistence.removeWidgetState(this.parent, 'pagination');\n } else {\n if (unsupportedStatePersistenceTypes.indexOf(this.parent.navigation) < 0) {\n this.parent.statePersistence.setWidgetState(this.parent, {pagination: this.dn.currentPage});\n } else if (this.parent.widgetType === 'wm-list' ||this.parent.widgetType === 'wm-table' ) {\n console.warn('Retain State handling on Widget ' + this.parent.name + ' is not supported for current pagination type.');\n }\n }\n }\n // call getPageData after checking state config so that Static Variables can use it\n this.getPageData(event, callback);\n }\n\n /*Function to be invoked after the data of the page has been fetched.*/\n onPageDataReady(event, data, callback) {\n this.disableNavigation();\n this.invokeSetRecord(event, data);\n triggerFn(callback);\n }\n\n /*Function to get data for the current page*/\n getPageData(event, callback) {\n let data,\n startIndex;\n\n if (this.isDataSourceHasPaging()) {\n /**\n * In table component, in case of on demand and scroll pagination\n * When there is a change in data item which is not in current page\n * Fetch the items of the page where the change is made\n * */\n let pageIndex = this.dn.currentPage;\n if (this.isEditNotInCurrentPage() && this.parent.gridOptions.lastActionPerformed !== 'delete') {\n pageIndex = this.parent.actionRowPage;\n }\n this.datasource.execute(DataSource.Operation.LIST_RECORDS, {\n 'page': pageIndex,\n 'filterFields': this.filterFields,\n 'orderBy': this.sortOptions,\n 'logicalOp': this.logicalOp,\n 'matchMode': 'anywhereignorecase'\n }).then(response => {\n this.onPageDataReady(event, response && response.data, callback);\n $appDigest();\n }, error => {\n // If error is undefined, do not show any message as this may be discarded request\n if (error) {\n // TODO: Handle Error\n // wmToaster.show('error', 'ERROR', 'Unable to get data of page -' + this.dn.currentPage + ':' + error);\n }\n });\n } else {\n if (this.isEditNotInCurrentPage()) {\n startIndex = (this.parent.actionRowPage - 1) * this.maxResults;\n } else {\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n }\n data = isArray(this.__fullData) ? this.__fullData.slice(startIndex, startIndex + this.maxResults) : this.__fullData;\n this.setResult(data);\n this.onPageDataReady(event, data, callback);\n }\n }\n\n /*\n Function to check if the edit action is performed on the previous page data of the table\n */\n isEditNotInCurrentPage() {\n const pageIndex = this.dn.currentPage;\n return this.parent.widgetType === 'wm-table' && pageIndex === this.parent.currentPage &&\n this.parent.actionRowPage && this.parent.actionRowPage < pageIndex;\n }\n\n invokeSetRecord(event, data) {\n // Trigger the event handler if exists.\n const pageInfo = {\n currentPage: this.dn.currentPage,\n size: this.maxResults,\n totalElements: this.dataSize,\n totalPages: this.pageCount\n };\n if (this.parent) {\n this.parent.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n } else {\n this.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n }\n }\n\n /*Function to validate the page input.\n In case of invalid input, navigate to the appropriate page; also return false.\n In case of valid input, return true.*/\n validateCurrentPage(event, callback?) {\n /*If the value entered is greater than the last page number or invalid value, then highlighting the field showing error.*/\n if (event && (isNaN(this.dn.currentPage) || this.dn.currentPage <= 0 || (this.pageCount && (this.dn.currentPage > this.pageCount || isNull(this.dn.currentPage))))) {\n if (this.dn.currentPage <= 0) {\n this.dn.currentPage = 1;\n } else if (this.dn.currentPage > this.pageCount) {\n this.dn.currentPage = this.pageCount;\n }\n return false;\n }\n return true;\n }\n\n onModelChange(event) {\n if (!this.validateCurrentPage(event)) {\n return;\n }\n this.goToPage(event);\n }\n\n onKeyDown(event) {\n const targetEle = $(event.target).closest('a');\n if (event.code === 'KeyE') {\n targetEle.addClass('ng-invalid');\n return false;\n }\n targetEle.removeClass('ng-invalid');\n return true;\n }\n\n pageChanged(event: any) {\n this._debouncedPageChanged(event);\n }\n\n /*Function to navigate to the respective pages.*/\n navigatePage(index, event, isRefresh, callback) {\n // when navigated to next page turn on the isDataLoading flag to show the loading indicator\n if (isDefined(this.parent.isDataLoading) && !this.isDisableNext) {\n this.parent.isDataLoading = true;\n // In case of infinite scroll calling the showLoadingIndicator method to update the loading message immediately when navigated to next page\n if (this.parent.infScroll) {\n this.parent.variableInflight = true;\n this.parent.callDataGridMethod('showLoadingIndicator', this.parent.loadingdatamsg, true);\n }\n }\n // reset the last action performed to \"scroll\" and isDatasetUpdated to false\n if (this.parent.widgetType === 'wm-table' && this.parent.gridOptions.isNavTypeScrollOrOndemand()) {\n this.parent.gridOptions.setLastActionPerformed(this.parent.gridOptions.ACTIONS.DEFAULT);\n this.parent.gridOptions.setIsDatasetUpdated(false);\n }\n this.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n\n // Convert the current page to a valid page number.\n this.dn.currentPage = +this.dn.currentPage;\n\n switch (index) {\n case 'first':\n this.goToFirstPage(isRefresh, event, callback);\n return;\n case 'prev':\n /*Return if already on the first page.*/\n if (!this.pagination?.next && (this.isFirstPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isNext flag in pagination metadata\n this.datasource.pagination.isNext = false;\n this.datasource.pagination.isPrev = true;\n }\n /*Decrement the current page by 1.*/\n this.dn.currentPage -= 1;\n break;\n case 'next':\n /*Return if already on the last page.*/\n if (!this.pagination?.next && (this.isLastPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isPrev flag in pagination metadata\n this.datasource.pagination.isNext = true;\n this.datasource.pagination.isPrev = false;\n }\n /*Increment the current page by 1.*/\n this.dn.currentPage += 1;\n break;\n case 'last':\n this.goToLastPage(isRefresh, event, callback);\n return;\n default:\n break;\n }\n\n /*Navigate to the current page.*/\n this.goToPage(event, callback);\n }\n\n setBindDataSet(binddataset, parent, dataSource, dataset?, binddatasource?, datasetBoundExpr?, statehandler?) {\n const parts = binddataset.split('.');\n let bindPagingOptions;\n this.statehandler = statehandler;\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n bindPagingOptions = `${parts[0]}.${parts[1]}.pagination`;\n }\n if (!binddatasource && dataset && !datasetBoundExpr) {\n this.dataset = dataset;\n this._debouncedApplyDataset();\n return;\n }\n this.binddataset = binddataset;\n setTimeout(() => {\n // watching for dataset changes even when dataset is bound to \"item.\" (i.e. by checking for datasetBoundExpr)\n // item context is passed as dataSource here\n // [Todo-CSP]: check if same expr fn is generated by parent widget (list, table)\n this.registerDestroyListener(\n $watch(\n binddataset,\n parent,\n datasetBoundExpr ? dataSource : {},\n nv => {\n if (nv) {\n this.dataset = nv;\n this._debouncedApplyDataset();\n } else {\n // WMS-19285: Setting dataset on proxy only to handle propertychange handler call for undefined cases\n this.widget.dataset = nv;\n }\n }\n )\n );\n\n // Register a watch on paging options. Call dataset property change handler even if paging options changes to reflect pagination state\n if (!bindPagingOptions) {\n return;\n }\n //[Todo-CSP]: either generate watch expr fn or register an event from the datasource itself\n this.registerDestroyListener(\n $watch(\n bindPagingOptions,\n parent,\n {},\n () => this._debouncedApplyDataset()\n )\n );\n });\n // apply datasource only when dataset is not bound to \"item.FIELD\"\n if (!datasetBoundExpr) {\n this.datasource = dataSource;\n }\n }\n\n // Set the datasource of pagination from the parent widget\n setDataSource(dataSource) {\n this.datasource = dataSource;\n }\n\n onPropertyChange(key: string, nv, ov) {\n if (key === 'dataset') {\n let data;\n if (this.parent && this.parent.onDataNavigatorDataSetChange) {\n data = this.parent.onDataNavigatorDataSetChange(nv);\n } else {\n data = nv;\n }\n // Set last action performed to \"dataset_update\" whenever dataset is changed in table component\n if (this.parent.widgetType === 'wm-table') {\n this.parent._triggeredByUser = false;\n }\n // When the dataset is not in current page, but in previous ones directly set the result without setting page values\n if (this.isEditNotInCurrentPage()) {\n this.setResult(data);\n } else {\n this.setPagingValues(data);\n }\n } else if (key === 'navigation') {\n if (nv === 'Advanced') { // Support for older projects where navigation type was advanced instead of clasic\n this.navigation = 'Classic';\n }\n this.updateNavSize();\n this.navcontrols = nv;\n } else if (key === 'navigationsize') {\n this.updateNavSize();\n } else if (key === 'navigationalign') {\n switchClass(this.nativeElement, `text-${nv}`, `text-${ov}`);\n } else if (key === 'maxResults') {\n this.setPagingValues(this.dataset);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngAfterViewInit() {\n const paginationElem = this.nativeElement as HTMLElement;\n paginationElem.onclick = (event) => {\n event.stopPropagation();\n };\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { PaginationModule as ngxPaginationModule } from 'ngx-bootstrap/pagination';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { PaginationComponent } from './pagination.component';\n\nconst components = [\n PaginationComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ngxPaginationModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PaginationModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ngxPaginationModule"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/data/pagination/src/pagination.props.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.component.html","../../../../../projects/components/widgets/data/pagination/src/pagination.component.ts","../../../../../projects/components/widgets/data/pagination/src/pagination.module.ts","../../../../../projects/components/widgets/data/pagination/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-pagination',\n new Map(\n [\n ['boundarylinks', {value: false, ...PROP_BOOLEAN}],\n ['class', PROP_STRING],\n ['dataset', PROP_ANY],\n ['directionlinks', {value: true, ...PROP_BOOLEAN}],\n ['forceellipses', {value: true, ...PROP_BOOLEAN}],\n ['maxResults', PROP_NUMBER],\n ['maxsize', {value: 5, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['navigation', {value: 'Basic', ...PROP_STRING}],\n ['navigationalign', {value: 'left', ...PROP_STRING}],\n ['navigationsize', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showrecordcount', PROP_BOOLEAN],\n ['tabindex', {value: 0, ...PROP_NUMBER}]\n ]\n )\n );\n};\n","\n<ul class=\"pagination advanced {{navigationClass}}\" *ngIf=\"navcontrols === 'Classic'\">\n <li [ngClass]=\"{'disabled':isDisableFirst}\">\n <a [title]=\"appLocale.LABEL_FIRST\" name=\"first\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableFirst\"\n (click)=\"navigatePage('first', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-first-page\"></i></span>\n <span class=\"sr-only\">Go to first page {{ isDisableFirst ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a [title]=\"appLocale.LABEL_PREVIOUS\" name=\"prev\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisablePrevious\"\n (click)=\"navigatePage('prev', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n <span class=\"sr-only\">Go to previous page {{ isDisablePrevious ? ', Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"pagecount disabled\">\n <a href=\"javascript:void(0);\">\n <input [(ngModel)]=\"dn.currentPage\" [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount\" [disabled]=\"isDisableCurrent\"\n [ngModelOptions]=\"{standalone: true}\"\n type=\"number\"\n (keydown)=\"onKeyDown($event)\" (change)=\"onModelChange($event)\" class=\"form-control\"/>\n </a>\n </li>\n <li class=\"disabled\">\n <a [hidden]=\"isDisableCount\"> / {{pageCount}}</a>\n </li>\n <li [ngClass]=\"{'disabled':isDisableNext}\">\n <a [title]=\"appLocale.LABEL_NEXT\" name=\"next\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableNext\"\n (click)=\"navigatePage('next', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n <span class=\"sr-only\">Go to next page {{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li [ngClass]=\"{'disabled':isDisableLast}\">\n <a [title]=\"appLocale.LABEL_LAST\" name=\"last\" href=\"javascript:void(0);\"\n [attr.aria-disabled]=\"isDisableLast\"\n (click)=\"navigatePage('last', $event)\">\n <span aria-hidden=\"true\"><i class=\"wi wi-last-page\"></i></span>\n <span class=\"sr-only\">Go to last page {{ isDisableLast ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li *ngIf=\"showrecordcount\" class=\"totalcount disabled\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n<ul class=\"pager {{navigationClass}}\" *ngIf=\"navcontrols === 'Pager'\">\n <li class=\"previous\" [ngClass]=\"{'disabled':isDisablePrevious}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('prev', $event)\"\n [attr.aria-disabled]=\"isDisablePrevious\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-left\"></i></span>\n {{appLocale.LABEL_PREVIOUS}}\n <span class=\"sr-only\">{{ isDisablePrevious ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n <li class=\"next\" [ngClass]=\"{'disabled':isDisableNext}\">\n <a href=\"javascript:void(0);\" (click)=\"navigatePage('next', $event)\"\n [attr.aria-disabled]=\"isDisableNext\">\n <span aria-hidden=\"true\"><i class=\"wi wi-chevron-right\"></i></span>\n {{appLocale.LABEL_NEXT}}\n <span class=\"sr-only\">{{ isDisableNext ? ' , Disabled' : ''}}</span>\n </a>\n </li>\n</ul>\n\n<pagination class=\"pagination basic\" [ngClass]=\"navigationClass\" *ngIf=\"navcontrols === 'Basic'\" role=\"navigation\"\n [itemsPerPage]=\"maxResults\" [totalItems]=\"dataSize\"\n (pageChanged)=\"pageChanged($event)\" [ngModelOptions]=\"{standalone:true}\" [ngModel]=\"dn.currentPage\"\n [attr.aria-label]=\"'Showing Page ' + dn.currentPage + ' of ' + pageCount + ' pages'\"\n [boundaryLinks]=\"boundarylinks\" [maxSize]=\"maxsize\"\n [directionLinks]=\"directionlinks\"\n firstText=\"Firtst\" lastText=\"Last\"\n [customPreviousTemplate]=\"prevTemplate\"\n [customNextTemplate]=\"nextTemplate\"\n [customPageTemplate]=\"pageTemplate\"></pagination>\n\n<ul *ngIf=\"navcontrols === 'Basic' && showrecordcount\" class=\"pagination\">\n <li class=\"totalcount disabled basiccount\">\n <a href=\"javascript:void(0);\" tabindex=\"-1\" aria-disabled=\"true\">{{appLocale.LABEL_TOTAL_RECORDS}}: {{dataSize}}</a>\n </li>\n</ul>\n\n<ng-template #pageTemplate let-page>\n <span class=\"sr-only\" [attr.data-isacitvepage]=\"page.active\">{{'Page '}}</span>\n {{page.number}}\n <span class=\"sr-only\" *ngIf=\"page.active\"> {{', Showing page ' + page.number + ' of ' + pageCount}}</span>\n</ng-template>\n<ng-template #prevTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Previous page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n<ng-template #nextTemplate let-disabled=\"disabled\">\n <span class=\"sr-only\" [attr.data-isdisabled]=\"disabled\">Go to Next page {{disabled ? ', Disabled' : ''}}</span>\n</ng-template>\n","import {Component, EventEmitter, Inject, Injector, Output, SkipSelf, AfterViewInit, Optional} from '@angular/core';\n\nimport {\n $appDigest,\n $watch,\n AppConstants,\n DataSource,\n debounce,\n isDefined,\n switchClass,\n triggerFn\n} from '@wm/core';\nimport { DEBOUNCE_TIMES, getOrderByExpr, provideAsWidgetRef, StylableComponent, styler, WidgetRef, unsupportedStatePersistenceTypes} from '@wm/components/base';\nimport { registerProps } from './pagination.props';\nimport {forEach, get, isArray, isEmpty, isNull, isString} from \"lodash-es\";\n\nconst DEFAULT_CLS = 'app-datanavigator clearfix';\nconst WIDGET_CONFIG = {widgetType: 'wm-pagination', hostClass: DEFAULT_CLS};\n\nconst sizeClasses = {\n 'Pager': {\n 'small': 'pager-sm',\n 'large': 'pager-lg'\n },\n 'Basic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n },\n 'Classic': {\n 'small': 'pagination-sm',\n 'large': 'pagination-lg'\n }\n};\n@Component({\n selector: '[wmPagination]',\n templateUrl: './pagination.component.html',\n providers: [\n provideAsWidgetRef(PaginationComponent)\n ]\n})\nexport class PaginationComponent extends StylableComponent implements AfterViewInit {\n static initializeProps = registerProps();\n @Output() resultEmitter: EventEmitter<any> = new EventEmitter();\n @Output() maxResultsEmitter: EventEmitter<any> = new EventEmitter();\n\n datasource;\n maxResults;\n navigationsize;\n showrecordcount;\n\n navcontrols;\n navigation;\n\n boundarylinks;\n directionlinks;\n\n navigationClass;\n dn = {\n currentPage: 1\n };\n\n pageCount = 0;\n isDisableNext = true;\n isDisablePrevious = true;\n isDisableFirst = true;\n isDisableLast = true;\n isDisableCurrent;\n dataSize;\n prevshowrecordcount;\n isDisableCount;\n firstRow;\n result;\n __fullData;\n dataset;\n options;\n statehandler;\n filterFields;\n sortOptions;\n binddataset;\n pagination;\n logicalOp;\n\n private _debouncedApplyDataset = debounce(() => this.widget.dataset = this.dataset, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n private _debouncedPageChanged = debounce(event => {\n const currentPage = event && event.page;\n // Do not call goToPage if page has not changed\n if (currentPage !== this.dn.currentPage) {\n const inst = (this as any).parent || this;\n this.dn.currentPage = currentPage;\n inst.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n this.goToPage();\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n }\n }, DEBOUNCE_TIMES.PAGINATION_DEBOUNCE_TIME);\n\n private _setAriaForBasicNavigation() {\n forEach(this.nativeElement.getElementsByTagName('a'), (item) => {\n item.setAttribute('href', 'javascript:void(0);');\n const childNode = item.querySelector('span');\n if (childNode?.dataset.isacitvepage === \"true\") {\n item.setAttribute('aria-current', 'true');\n }\n if(childNode?.dataset.isdisabled === \"true\") {\n item.setAttribute('aria-disabled', 'true');\n } else {\n item.removeAttribute('aria-disabled');\n }\n });\n }\n\n constructor(inj: Injector, @SkipSelf() @Inject(WidgetRef) public parent, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n }\n\n setResult(result) {\n // TODO: Emit event only if result is changed\n this.result = result;\n this.resultEmitter.emit(this.result);\n }\n\n // Update navigationClass based on navigation and navigationSize props\n private updateNavSize() {\n const sizeCls = sizeClasses[this.navcontrols];\n if (sizeCls && this.navigationsize) {\n this.navigationClass = sizeCls[this.navigationsize];\n } else {\n this.navigationClass = '';\n }\n }\n\n // Function to reset the paging values to default.\n resetPageNavigation() {\n this.pageCount = 0;\n this.dn.currentPage = 1;\n this.dataSize = 0;\n }\n\n /*Function to calculate the paging values.*/\n calculatePagingValues() {\n this.pageCount = (this.dataSize > this.maxResults) ? (Math.ceil(this.dataSize / this.maxResults)) : (this.dataSize < 0 ? 0 : 1);\n this.dn.currentPage = this.dn.currentPage || 1;\n }\n\n /*Function to set default values to the paging parameters*/\n setDefaultPagingValues(dataSize, maxResults, currentPage) {\n /*If neither 'dataSize' nor 'maxResults' is set, then set default values to the paging parameters.*/\n if (!dataSize && !maxResults) {\n this.pageCount = 1;\n this.dn.currentPage = 1;\n this.maxResults = dataSize;\n this.dataSize = dataSize;\n } else { /*Else, set the specified values and recalculate paging parameters.*/\n this.maxResults = maxResults || this.maxResults;\n this.dataSize = isDefined(dataSize) ? dataSize : this.dataSize;\n this.dn.currentPage = currentPage || this.dn.currentPage;\n this.calculatePagingValues();\n }\n this.maxResultsEmitter.emit(this.maxResults);\n }\n\n /*Function to check the dataSize and manipulate the navigator accordingly.*/\n checkDataSize(dataSize, numberOfElements?, size?) {\n /*If the dataSize is -1 or Integer.MAX_VALUE( which is 2147483647), then the total number of records is not known.\n * Hence,\n * 1. Hide the 'Total Record Count'.\n * 2. Disable the 'GoToLastPage' link as the page number of the last page is not known.*/\n if (dataSize === -1 || dataSize === AppConstants.INT_MAX_VALUE) {\n this.prevshowrecordcount = this.showrecordcount;\n this.isDisableLast = true;\n this.isDisableCount = true;\n this.showrecordcount = false;\n // If number of records in current page is less than the max records size, this is the last page. So disable next button.\n if (numberOfElements < size) {\n this.isDisableNext = true;\n }\n } else {\n this.isDisableCount = false;\n this.showrecordcount = this.prevshowrecordcount || this.showrecordcount;\n }\n }\n\n /*Function to disable navigation based on the current and total pages.*/\n disableNavigation() {\n const isCurrentPageFirst = (this.dn.currentPage === 1),\n isCurrentPageLast = (this.dn.currentPage === this.pageCount);\n if (!this.pagination?.next) {\n this.isDisableFirst = this.isDisablePrevious = isCurrentPageFirst;\n this.isDisableNext = this.isDisableLast = isCurrentPageLast;\n } else {\n // WMS-18867: In case of server side pagination, for pager type pagination depend on prev and next flags which are set by developer\n this.isDisableFirst = this.isDisablePrevious = !this.pagination.prev;\n this.isDisableNext = this.isDisableLast = !this.pagination.next;\n }\n this.isDisableCurrent = isCurrentPageFirst && isCurrentPageLast;\n // In case of client side pagination, when load more reaches last page hide the on-demand grid ele\n if (this.dataset && this.dataset.length && this.isDisableNext && this.parent.onDemandLoad && this.parent.widgetType === 'wm-table') {\n this.parent.callDataGridMethod('hideLoadingIndicator', this.isDisableNext, this.parent.infScroll);\n }\n }\n\n /*Function to check if the variable bound to the data-navigator has paging.*/\n isDataSourceHasPaging() {\n return this.datasource && this.datasource.execute(DataSource.Operation.IS_PAGEABLE);\n }\n\n // Set the result for client side pagination\n setNonPageableData(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n startIndex;\n dataSize = isArray(newVal) ? newVal.length : (isEmpty(newVal) ? 0 : 1);\n maxResults = (this.options && this.options.maxResults) || dataSize;\n\n // For static variable, keep the current page. For other variables without pagination reset the page to 1\n // Fix for [WMS-23263]: gridOptions.isNextPageData flag is false when dataset is changed from script, so setting current page to 1\n if (this.datasource && (this.datasource.execute(DataSource.Operation.IS_API_AWARE) || (this.parent.widgetType === 'wm-table' && (this.parent.gridOptions.isNavTypeScrollOrOndemand() && (get(this.parent, 'gridOptions.lastActionPerformed') === this.parent.gridOptions.ACTIONS.DATASET_UPDATE || !get(this.parent, 'gridOptions.isNextPageData')))))) {\n currentPage = 1;\n } else {\n currentPage = this.dn.currentPage || 1;\n }\n\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n this.setResult(isArray(newVal) ? newVal.slice(startIndex, startIndex + this.maxResults) : newVal);\n }\n\n /*Function to set the values needed for pagination*/\n private setPagingValues(newVal) {\n let dataSize,\n maxResults,\n currentPage,\n dataSource;\n let variableOptions: any = {};\n // Store the data in __fullData. This is used for client side searching witvah out modifying the actual dataset.\n this.__fullData = newVal;\n /*Check for sanity*/\n if (this.binddataset) {\n dataSource = this.datasource || {};\n variableOptions = dataSource._options || {};\n /*Check for number of elements in the data set*/\n if (newVal) {\n if (this.isDataSourceHasPaging()) {\n this.pagination = this.datasource.execute(DataSource.Operation.GET_PAGING_OPTIONS) || {};\n // If \"filterFields\" and \"sortOptions\" have been set, then set them so that the filters can be retained while fetching data upon page navigation.\n this.filterFields = variableOptions.filterFields || {};\n this.logicalOp = variableOptions.logicalOp || '';\n this.sortOptions = variableOptions.orderBy ||\n (isArray(this.pagination.sort) ? getOrderByExpr(this.pagination.sort) : '');\n dataSize = this.pagination.totalElements;\n maxResults = this.pagination.size;\n if (this.pagination.numberOfElements > 0) {\n if (isDefined(this.pagination.number)) { // number is page number received from backend\n this.dn.currentPage = this.pagination.number + 1;\n }\n currentPage = this.dn.currentPage || 1;\n } else {\n currentPage = 1;\n }\n /* Sending pageCount undefined to calculate it again for query.*/\n this.setDefaultPagingValues(dataSize, maxResults, currentPage);\n this.disableNavigation();\n this.checkDataSize(dataSize, this.pagination.numberOfElements, this.pagination.size);\n this.setResult(newVal);\n } else if (!isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n } else {\n this.setResult(newVal);\n this.resetPageNavigation();\n }\n if (this.navigation === 'Basic') {\n this._setAriaForBasicNavigation();\n }\n } else {\n if (newVal && !isString(newVal)) {\n this.setNonPageableData(newVal);\n }\n }\n }\n\n /*Function to check if the current page is the first page*/\n isFirstPage() {\n return (this.dn.currentPage === 1 || !this.dn.currentPage);\n }\n\n /*Function to check if the current page is the last page*/\n isLastPage() {\n return (this.dn.currentPage === this.pageCount);\n }\n\n /*Function to navigate to the last page*/\n goToLastPage(isRefresh, event, callback) {\n if (!this.isLastPage()) {\n this.dn.currentPage = this.pageCount;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the first page*/\n goToFirstPage(isRefresh, event, callback) {\n if (!this.isFirstPage()) {\n this.dn.currentPage = 1;\n this.goToPage(event, callback);\n } else if (isRefresh) {\n this.goToPage(event, callback);\n }\n }\n\n /*Function to navigate to the current page*/\n goToPage(event?, callback?) {\n this.firstRow = (this.dn.currentPage - 1) * this.maxResults;\n const mode = this.parent.statePersistence.computeMode(this.statehandler);\n if (mode && mode.toLowerCase() !== 'none' && (this.parent.widgetType === 'wm-table' || this.parent.widgetType === 'wm-list')) {\n this.parent._selectedItemsExist = true;\n if (this.isFirstPage()) {\n this.parent.statePersistence.removeWidgetState(this.parent, 'pagination');\n } else {\n if (unsupportedStatePersistenceTypes.indexOf(this.parent.navigation) < 0) {\n this.parent.statePersistence.setWidgetState(this.parent, {pagination: this.dn.currentPage});\n } else if (this.parent.widgetType === 'wm-list' ||this.parent.widgetType === 'wm-table' ) {\n console.warn('Retain State handling on Widget ' + this.parent.name + ' is not supported for current pagination type.');\n }\n }\n this.parent.currentpage = this.dn.currentPage;\n this.parent.nativeElement?.setAttribute('currentpage', this.dn.currentPage);\n }\n // call getPageData after checking state config so that Static Variables can use it\n this.getPageData(event, callback);\n }\n\n /*Function to be invoked after the data of the page has been fetched.*/\n onPageDataReady(event, data, callback) {\n this.disableNavigation();\n this.invokeSetRecord(event, data);\n triggerFn(callback);\n }\n\n /*Function to get data for the current page*/\n getPageData(event, callback) {\n let data,\n startIndex;\n\n if (this.isDataSourceHasPaging()) {\n /**\n * In table component, in case of on demand and scroll pagination\n * When there is a change in data item which is not in current page\n * Fetch the items of the page where the change is made\n * */\n let pageIndex = this.dn.currentPage;\n if (this.isEditNotInCurrentPage() && this.parent.gridOptions.lastActionPerformed !== 'delete') {\n pageIndex = this.parent.actionRowPage;\n }\n this.datasource.execute(DataSource.Operation.LIST_RECORDS, {\n 'page': pageIndex,\n 'filterFields': this.filterFields,\n 'orderBy': this.sortOptions,\n 'logicalOp': this.logicalOp,\n 'matchMode': 'anywhereignorecase'\n }).then(response => {\n this.onPageDataReady(event, response && response.data, callback);\n $appDigest();\n }, error => {\n // If error is undefined, do not show any message as this may be discarded request\n if (error) {\n // TODO: Handle Error\n // wmToaster.show('error', 'ERROR', 'Unable to get data of page -' + this.dn.currentPage + ':' + error);\n }\n });\n } else {\n if (this.isEditNotInCurrentPage()) {\n startIndex = (this.parent.actionRowPage - 1) * this.maxResults;\n } else {\n startIndex = (this.dn.currentPage - 1) * this.maxResults;\n }\n data = isArray(this.__fullData) ? this.__fullData.slice(startIndex, startIndex + this.maxResults) : this.__fullData;\n this.setResult(data);\n this.onPageDataReady(event, data, callback);\n }\n }\n\n /*\n Function to check if the edit action is performed on the previous page data of the table\n */\n isEditNotInCurrentPage() {\n const pageIndex = this.dn.currentPage;\n return this.parent.widgetType === 'wm-table' && pageIndex === this.parent.currentPage &&\n this.parent.actionRowPage && this.parent.actionRowPage < pageIndex;\n }\n\n invokeSetRecord(event, data) {\n // Trigger the event handler if exists.\n const pageInfo = {\n currentPage: this.dn.currentPage,\n size: this.maxResults,\n totalElements: this.dataSize,\n totalPages: this.pageCount\n };\n if (this.parent) {\n this.parent.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n } else {\n this.invokeEventCallback('setrecord', {$event: event, $data: data, $index: this.dn.currentPage, pageInfo, data});\n }\n }\n\n /*Function to validate the page input.\n In case of invalid input, navigate to the appropriate page; also return false.\n In case of valid input, return true.*/\n validateCurrentPage(event, callback?) {\n /*If the value entered is greater than the last page number or invalid value, then highlighting the field showing error.*/\n if (event && (isNaN(this.dn.currentPage) || this.dn.currentPage <= 0 || (this.pageCount && (this.dn.currentPage > this.pageCount || isNull(this.dn.currentPage))))) {\n if (this.dn.currentPage <= 0) {\n this.dn.currentPage = 1;\n } else if (this.dn.currentPage > this.pageCount) {\n this.dn.currentPage = this.pageCount;\n }\n return false;\n }\n return true;\n }\n\n onModelChange(event) {\n if (!this.validateCurrentPage(event)) {\n return;\n }\n this.goToPage(event);\n }\n\n onKeyDown(event) {\n const targetEle = $(event.target).closest('a');\n if (event.code === 'KeyE') {\n targetEle.addClass('ng-invalid');\n return false;\n }\n targetEle.removeClass('ng-invalid');\n return true;\n }\n\n pageChanged(event: any) {\n this._debouncedPageChanged(event);\n }\n\n /*Function to navigate to the respective pages.*/\n navigatePage(index, event, isRefresh, callback) {\n // when navigated to next page turn on the isDataLoading flag to show the loading indicator\n if (isDefined(this.parent.isDataLoading) && !this.isDisableNext) {\n this.parent.isDataLoading = true;\n // In case of infinite scroll calling the showLoadingIndicator method to update the loading message immediately when navigated to next page\n if (this.parent.infScroll) {\n this.parent.variableInflight = true;\n this.parent.callDataGridMethod('showLoadingIndicator', this.parent.loadingdatamsg, true);\n }\n }\n // reset the last action performed to \"scroll\" and isDatasetUpdated to false\n if (this.parent.widgetType === 'wm-table' && this.parent.gridOptions.isNavTypeScrollOrOndemand()) {\n this.parent.gridOptions.setLastActionPerformed(this.parent.gridOptions.ACTIONS.DEFAULT);\n this.parent.gridOptions.setIsDatasetUpdated(false);\n }\n this.invokeEventCallback('paginationchange', {$event: undefined, $index: this.dn.currentPage});\n\n // Convert the current page to a valid page number.\n this.dn.currentPage = +this.dn.currentPage;\n\n switch (index) {\n case 'first':\n this.goToFirstPage(isRefresh, event, callback);\n return;\n case 'prev':\n /*Return if already on the first page.*/\n if (!this.pagination?.next && (this.isFirstPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isNext flag in pagination metadata\n this.datasource.pagination.isNext = false;\n this.datasource.pagination.isPrev = true;\n }\n /*Decrement the current page by 1.*/\n this.dn.currentPage -= 1;\n break;\n case 'next':\n /*Return if already on the last page.*/\n if (!this.pagination?.next && (this.isLastPage() || !this.validateCurrentPage(event, callback))) {\n return;\n } else if (this.pagination?.next) { // WMS-18867: For server side pagination, skipping the regular flow and enabling isPrev flag in pagination metadata\n this.datasource.pagination.isNext = true;\n this.datasource.pagination.isPrev = false;\n }\n /*Increment the current page by 1.*/\n this.dn.currentPage += 1;\n break;\n case 'last':\n this.goToLastPage(isRefresh, event, callback);\n return;\n default:\n break;\n }\n\n /*Navigate to the current page.*/\n this.goToPage(event, callback);\n }\n\n setBindDataSet(binddataset, parent, dataSource, dataset?, binddatasource?, datasetBoundExpr?, statehandler?) {\n const parts = binddataset.split('.');\n let bindPagingOptions;\n this.statehandler = statehandler;\n if (parts[0] === 'Variables' || parts[0] === 'Widgets') {\n bindPagingOptions = `${parts[0]}.${parts[1]}.pagination`;\n }\n if (!binddatasource && dataset && !datasetBoundExpr) {\n this.dataset = dataset;\n this._debouncedApplyDataset();\n return;\n }\n this.binddataset = binddataset;\n setTimeout(() => {\n // watching for dataset changes even when dataset is bound to \"item.\" (i.e. by checking for datasetBoundExpr)\n // item context is passed as dataSource here\n // [Todo-CSP]: check if same expr fn is generated by parent widget (list, table)\n this.registerDestroyListener(\n $watch(\n binddataset,\n parent,\n datasetBoundExpr ? dataSource : {},\n nv => {\n if (nv) {\n this.dataset = nv;\n this._debouncedApplyDataset();\n } else {\n // WMS-19285: Setting dataset on proxy only to handle propertychange handler call for undefined cases\n this.widget.dataset = nv;\n }\n }\n )\n );\n\n // Register a watch on paging options. Call dataset property change handler even if paging options changes to reflect pagination state\n if (!bindPagingOptions) {\n return;\n }\n //[Todo-CSP]: either generate watch expr fn or register an event from the datasource itself\n this.registerDestroyListener(\n $watch(\n bindPagingOptions,\n parent,\n {},\n () => this._debouncedApplyDataset()\n )\n );\n });\n // apply datasource only when dataset is not bound to \"item.FIELD\"\n if (!datasetBoundExpr) {\n this.datasource = dataSource;\n }\n }\n\n // Set the datasource of pagination from the parent widget\n setDataSource(dataSource) {\n this.datasource = dataSource;\n }\n\n onPropertyChange(key: string, nv, ov) {\n if (key === 'dataset') {\n let data;\n if (this.parent && this.parent.onDataNavigatorDataSetChange) {\n data = this.parent.onDataNavigatorDataSetChange(nv);\n } else {\n data = nv;\n }\n // Set last action performed to \"dataset_update\" whenever dataset is changed in table component\n if (this.parent.widgetType === 'wm-table') {\n this.parent._triggeredByUser = false;\n }\n // When the dataset is not in current page, but in previous ones directly set the result without setting page values\n if (this.isEditNotInCurrentPage()) {\n this.setResult(data);\n } else {\n this.setPagingValues(data);\n }\n } else if (key === 'navigation') {\n if (nv === 'Advanced') { // Support for older projects where navigation type was advanced instead of clasic\n this.navigation = 'Classic';\n }\n this.updateNavSize();\n this.navcontrols = nv;\n } else if (key === 'navigationsize') {\n this.updateNavSize();\n } else if (key === 'navigationalign') {\n switchClass(this.nativeElement, `text-${nv}`, `text-${ov}`);\n } else if (key === 'maxResults') {\n this.setPagingValues(this.dataset);\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngAfterViewInit() {\n const paginationElem = this.nativeElement as HTMLElement;\n paginationElem.onclick = (event) => {\n event.stopPropagation();\n };\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { PaginationModule as ngxPaginationModule } from 'ngx-bootstrap/pagination';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { PaginationComponent } from './pagination.component';\n\nconst components = [\n PaginationComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ngxPaginationModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PaginationModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["ngxPaginationModule"],"mappings":"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"}
@@ -38,6 +38,7 @@
38
38
  ['boundarylinks', { value: false, ...i4.PROP_BOOLEAN }],
39
39
  ['class', i4.PROP_STRING],
40
40
  ['confirmdelete', { value: 'Are you sure you want to delete this?', ...i4.PROP_STRING }],
41
+ ['currentpage', { value: 1, ...i4.PROP_NUMBER }],
41
42
  ['datasource', i4.PROP_STRING],
42
43
  ['dataset', i4.PROP_ANY],
43
44
  ['deletecanceltext', i4.PROP_STRING],
@@ -62,6 +63,7 @@
62
63
  ['insertmessage', { value: 'Record added successfully', ...i4.PROP_STRING }],
63
64
  ['isdynamictable', i4.PROP_BOOLEAN], // internal property to determine dynamic table
64
65
  ['isrowexpansionenabled', i4.PROP_BOOLEAN],
66
+ ['isrowselectable', { value: false, ...i4.PROP_BOOLEAN }],
65
67
  ['loadingdatamsg', { value: 'Loading...', ...i4.PROP_STRING }],
66
68
  ['loadingicon', { value: 'fa fa-circle-o-notch fa-spin', ...i4.PROP_STRING }],
67
69
  ['maxsize', { value: 5, ...i4.PROP_NUMBER }],
@@ -393,6 +395,7 @@
393
395
  },
394
396
  filtermode: '',
395
397
  filteronkeypress: false,
398
+ isrowselectable: false,
396
399
  searchLabel: '',
397
400
  rowActions: [],
398
401
  headerConfig: [],
@@ -504,6 +507,15 @@
504
507
  }
505
508
  });
506
509
  },
510
+ getParentTableData: () => {
511
+ // Function to get the row index and current page of parent table in row expansion (nested table) scenario
512
+ const parentTrElement = $(this.nativeElement).closest('tr');
513
+ const parentObj = {
514
+ 'parentId': parentTrElement.prev('tr.app-datagrid-row')?.attr('data-row-id'),
515
+ 'parentPage': parentTrElement.closest('div.app-grid.app-panel.panel')?.attr('currentpage') || 1
516
+ };
517
+ return parentObj;
518
+ },
507
519
  onRowSelect: (row, e) => {
508
520
  this.ngZone.run(() => {
509
521
  this.selectedItems = this.callDataGridMethod('getSelectedRows');
@@ -512,7 +524,9 @@
512
524
  }
513
525
  const rowData = this.addRowIndex(row);
514
526
  if (this.selectedItems.length && rowData.$index && this.getConfiguredState() !== 'none' && this.dataNavigator && i4.unsupportedStatePersistenceTypes.indexOf(this.navigation) < 0) {
515
- const obj = { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1 };
527
+ // check if table has a parent table
528
+ const parentObj = this.gridOptions.getParentTableData();
529
+ const obj = parentObj.parentId ? { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1, parentRowIndex: parentObj.parentId, parentCurrentPage: parentObj.parentPage } : { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1 };
516
530
  const widgetState = this.statePersistence.getWidgetState(this);
517
531
  if (lodashEs.get(widgetState, 'selectedItem') && this.multiselect) {
518
532
  if (!lodashEs.some(widgetState.selectedItem, obj)) {
@@ -564,7 +578,8 @@
564
578
  this.invokeEventCallback('rowdeselect', { $data: row, $event: e, row });
565
579
  const rowData = this.addRowIndex(row);
566
580
  if (this.getConfiguredState() !== 'none' && i4.unsupportedStatePersistenceTypes.indexOf(this.navigation) < 0) {
567
- const obj = { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1 };
581
+ const parentObj = this.gridOptions.getParentTableData();
582
+ const obj = parentObj.parentId ? { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1, parentRowIndex: parentObj.parentId, parentCurrentPage: parentObj.parentPage } : { page: this.dataNavigator.dn.currentPage, index: rowData.$index - 1 };
568
583
  const widgetState = this.statePersistence.getWidgetState(this);
569
584
  if (lodashEs.get(widgetState, 'selectedItem')) {
570
585
  lodashEs.remove(widgetState.selectedItem, function (selectedItem) {
@@ -673,12 +688,12 @@
673
688
  this.callDataGridMethod('applyRowNgClass', i4.getConditionalClasses(nv, ov), index);
674
689
  }, watchName));
675
690
  },
676
- registerColNgClassWatcher: (rowData, colDef, rowIndex, colIndex) => {
691
+ registerColNgClassWatcher: (rowData, colDef, rowIndex, colIndex, summaryRow) => {
677
692
  if (!colDef['col-ng-class']) {
678
693
  return;
679
694
  }
680
695
  const row = this.getClonedRowObject(rowData);
681
- const watchName = `${this.widgetId}_colNgClass_${rowIndex}_${colIndex}`;
696
+ const watchName = summaryRow ? `${this.widgetId}_summaryRow_colNgClass_${rowIndex}_${colIndex}` : `${this.widgetId}_colNgClass_${rowIndex}_${colIndex}`;
682
697
  i2.$unwatch(watchName);
683
698
  //[Todo-CSP]: generate watcher expr in page if col-ng-class attr is present for table
684
699
  this.registerDestroyListener(i2.$watch(colDef['col-ng-class'], this.viewParent, { row }, (nv, ov) => {
@@ -1079,7 +1094,8 @@
1079
1094
  showheader: 'showHeader',
1080
1095
  enablecolumnselection: 'enableColumnSelection',
1081
1096
  shownewrow: 'showNewRow',
1082
- gridfirstrowselect: 'selectFirstRow'
1097
+ gridfirstrowselect: 'selectFirstRow',
1098
+ isrowselectable: 'isrowselectable'
1083
1099
  };
1084
1100
  if (this._liveTableParent) {
1085
1101
  this.isPartOfLiveGrid = true;
@@ -1105,6 +1121,7 @@
1105
1121
  this.gridOptions.formPosition = this.formposition;
1106
1122
  this.gridOptions.filtermode = this.filtermode;
1107
1123
  this.gridOptions.filteronkeypress = this.filteronkeypress;
1124
+ this.gridOptions.isrowselectable = this.isrowselectable;
1108
1125
  this.gridOptions.searchLabel = this.searchlabel;
1109
1126
  this.gridOptions.isMobile = i2.isMobile();
1110
1127
  this.gridOptions.name = this.name;
@@ -1636,6 +1653,8 @@
1636
1653
  const widgetState = this.statePersistence.getWidgetState(this);
1637
1654
  let currentPageItems;
1638
1655
  if (lodashEs.get(widgetState, 'selectedItem')) {
1656
+ // check if table has a parent table
1657
+ const parentObj = this.gridOptions.getParentTableData();
1639
1658
  currentPageItems = widgetState.selectedItem.filter(val => {
1640
1659
  return val.page === this.dataNavigator.dn.currentPage;
1641
1660
  });
@@ -1645,7 +1664,10 @@
1645
1664
  // don't reassign this.selecteditem if selected items already exist.
1646
1665
  if (lodashEs.isArray(this.selecteditem)) {
1647
1666
  currentPageItems.forEach((item) => {
1648
- this.selectItem(item.index, undefined);
1667
+ // select a row only if it's respective parent row index and parent's current page matches with statepersistence url
1668
+ if (!parentObj.parentId || (parentObj.parentId && item.parentRowIndex === parentObj.parentId && item.parentCurrentPage === parentObj.parentPage)) {
1669
+ this.selectItem(item.index, undefined);
1670
+ }
1649
1671
  });
1650
1672
  }
1651
1673
  else {
@@ -1874,6 +1896,9 @@
1874
1896
  this.dataNavigator.widget.maxResults = nv;
1875
1897
  this.dataNavigator.maxResults = nv;
1876
1898
  break;
1899
+ case 'currentpage':
1900
+ this.nativeElement?.setAttribute('currentpage', nv);
1901
+ break;
1877
1902
  case 'ondemandmessage':
1878
1903
  if (nv) {
1879
1904
  this.$element.find('.on-demand-datagrid > a').text(nv);
@@ -4194,10 +4219,19 @@
4194
4219
  const fieldName = this.group && this.group.name;
4195
4220
  const index = fieldName ? parseInt(this.getAttr('index'), 10) : parseInt(this.getAttr('headerIndex'), 10);
4196
4221
  // Register column with header config to create group structure
4197
- i4.setHeaderConfigForTable(this.table.headerConfig, {
4198
- field: this.field,
4199
- displayName: this.displayName
4200
- }, fieldName, index);
4222
+ if (!this.table.headerConfig.some(value => this.field == value.field)) {
4223
+ i4.setHeaderConfigForTable(this.table.headerConfig, {
4224
+ field: this.field,
4225
+ displayName: this.displayName
4226
+ }, fieldName, index);
4227
+ }
4228
+ else {
4229
+ this.table.headerConfig.map(value => {
4230
+ if (this.field == value.field) {
4231
+ value.displayName = this.displayName;
4232
+ }
4233
+ });
4234
+ }
4201
4235
  break;
4202
4236
  case 'defaultvalue':
4203
4237
  this.defaultvalue = i4.getDefaultValue(this.defaultvalue, this.type, this.editWidgetType);