@wavemaker-ai/react-runtime 1.0.0-rc.312 → 1.0.0-rc.317

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 (593) hide show
  1. package/.npmignore +4 -0
  2. package/actions/base-action.js +12 -29
  3. package/actions/login-action.js +35 -52
  4. package/actions/logout-action.js +21 -38
  5. package/actions/navigation-action.d.ts +1 -0
  6. package/actions/navigation-action.js +275 -345
  7. package/actions/notification-action.js +121 -149
  8. package/actions/timer-action.js +95 -151
  9. package/actions/toast-provider.js +62 -76
  10. package/actions/toast.js +95 -91
  11. package/actions/toast.service.js +59 -79
  12. package/actions/types/index.js +6 -9
  13. package/components/advanced/carousel/index.js +358 -366
  14. package/components/advanced/carousel/props.js +0 -5
  15. package/components/advanced/carousel/template.js +102 -80
  16. package/components/advanced/login/index.js +227 -285
  17. package/components/advanced/login/props.js +0 -5
  18. package/components/advanced/marquee/index.js +169 -163
  19. package/components/advanced/marquee/props.js +0 -5
  20. package/components/auth/RoleAuthGuard.d.ts +6 -0
  21. package/components/auth/RoleAuthGuard.js +65 -0
  22. package/components/basic/anchor/index.js +207 -187
  23. package/components/basic/anchor/props.js +0 -5
  24. package/components/basic/audio/index.js +110 -72
  25. package/components/basic/audio/props.js +0 -5
  26. package/components/basic/html/index.js +163 -203
  27. package/components/basic/html/props.js +0 -5
  28. package/components/basic/html/utils.js +30 -28
  29. package/components/basic/icon/index.js +98 -84
  30. package/components/basic/icon/props.js +0 -5
  31. package/components/basic/iframe/iframe.utils.js +7 -16
  32. package/components/basic/iframe/index.js +97 -103
  33. package/components/basic/iframe/props.js +0 -5
  34. package/components/basic/label/index.js +156 -134
  35. package/components/basic/label/props.js +0 -5
  36. package/components/basic/message/index.js +129 -113
  37. package/components/basic/message/props.js +0 -5
  38. package/components/basic/picture/index.js +156 -127
  39. package/components/basic/picture/props.js +0 -5
  40. package/components/basic/progress-bar/index.js +240 -176
  41. package/components/basic/progress-bar/props.js +5 -31
  42. package/components/basic/progress-circle/index.js +166 -183
  43. package/components/basic/progress-circle/props.js +14 -34
  44. package/components/basic/richtexteditor/index.js +430 -396
  45. package/components/basic/richtexteditor/props.js +0 -5
  46. package/components/basic/search/index.js +813 -931
  47. package/components/basic/search/props.js +0 -5
  48. package/components/basic/search/providers.js +233 -380
  49. package/components/basic/spinner/index.js +210 -200
  50. package/components/basic/spinner/props.js +4 -22
  51. package/components/basic/tile/index.js +73 -81
  52. package/components/basic/tile/props.js +0 -5
  53. package/components/basic/tree/Components/TreeNodeComponent.d.ts +1 -1
  54. package/components/basic/tree/Components/TreeNodeComponent.js +244 -170
  55. package/components/basic/tree/hooks/useTreePartialNodeApi.js +143 -135
  56. package/components/basic/tree/hooks/useTreePersistedState.d.ts +3 -0
  57. package/components/basic/tree/hooks/useTreePersistedState.js +38 -0
  58. package/components/basic/tree/index.d.ts +1 -0
  59. package/components/basic/tree/index.js +453 -454
  60. package/components/basic/tree/props.d.ts +18 -1
  61. package/components/basic/tree/props.js +0 -5
  62. package/components/basic/tree/utils.d.ts +16 -1
  63. package/components/basic/tree/utils.js +240 -185
  64. package/components/basic/video/index.js +161 -107
  65. package/components/basic/video/props.js +0 -5
  66. package/components/chart/index.js +42 -50
  67. package/components/chart/props.js +31 -37
  68. package/components/chart/src/ChartRenderer.js +172 -154
  69. package/components/chart/src/chart.js +391 -213
  70. package/components/chart/src/chartStyles.generated.js +6 -14
  71. package/components/chart/src/chartUtils.js +228 -272
  72. package/components/chart/src/constants.d.ts +13 -0
  73. package/components/chart/src/constants.js +316 -90
  74. package/components/chart/src/d3Setup.js +11 -30
  75. package/components/chart/src/dataUtils.js +363 -447
  76. package/components/chart/src/formatUtils.js +47 -38
  77. package/components/chart/src/index.js +11 -19
  78. package/components/chart/src/nvd3Source.generated.js +5 -13
  79. package/components/chart/src/pieDonutResponsiveLayout.d.ts +5 -0
  80. package/components/chart/src/pieDonutResponsiveLayout.js +76 -96
  81. package/components/chart/src/types.js +0 -5
  82. package/components/common/AppSpinner.js +17 -33
  83. package/components/common/app-spinner.js +11 -22
  84. package/components/common/customTemplate/index.d.ts +3 -0
  85. package/components/common/customTemplate/index.js +6 -0
  86. package/components/common/customTemplate/props.d.ts +20 -0
  87. package/components/common/customTemplate/props.js +0 -0
  88. package/components/common/customTemplate/template.d.ts +3 -0
  89. package/components/common/customTemplate/template.js +27 -0
  90. package/components/common/customTemplate/useCustomTemplate.d.ts +8 -0
  91. package/components/common/customTemplate/useCustomTemplate.js +17 -0
  92. package/components/common/customTemplate/utils.d.ts +6 -0
  93. package/components/common/customTemplate/utils.js +12 -0
  94. package/components/common/index.js +4 -12
  95. package/components/constants.js +81 -77
  96. package/components/container/accordion/accordion-pane/index.js +105 -118
  97. package/components/container/accordion/accordion-pane/props.js +5 -21
  98. package/components/container/accordion/index.js +225 -243
  99. package/components/container/accordion/props.js +5 -16
  100. package/components/container/index.js +210 -155
  101. package/components/container/layout-grid/grid-column/index.js +69 -43
  102. package/components/container/layout-grid/grid-column/props.js +0 -5
  103. package/components/container/layout-grid/grid-row/index.js +12 -29
  104. package/components/container/layout-grid/grid-row/props.js +0 -5
  105. package/components/container/layout-grid/index.js +53 -38
  106. package/components/container/layout-grid/props.js +0 -5
  107. package/components/container/linear-layout/index.js +56 -60
  108. package/components/container/linear-layout/linear-layout-item/index.js +43 -47
  109. package/components/container/linear-layout/linear-layout-item/props.js +0 -5
  110. package/components/container/linear-layout/props.js +0 -5
  111. package/components/container/panel/components/panel-content/index.js +7 -16
  112. package/components/container/panel/components/panel-header/index.js +166 -146
  113. package/components/container/panel/components/panel-header/props.js +0 -5
  114. package/components/container/panel/hooks.js +76 -102
  115. package/components/container/panel/index.js +289 -252
  116. package/components/container/panel/props.js +0 -5
  117. package/components/container/props.js +0 -5
  118. package/components/container/repeat-template/index.js +65 -44
  119. package/components/container/repeat-template/props.js +0 -5
  120. package/components/container/tabs/index.js +517 -526
  121. package/components/container/tabs/props.js +5 -28
  122. package/components/container/tabs/tab-pane/index.js +105 -100
  123. package/components/container/tabs/tab-pane/props.js +0 -5
  124. package/components/container/tabs/utils.js +30 -35
  125. package/components/container/wizard/WizardContext.js +9 -11
  126. package/components/container/wizard/components/StepComponents.js +76 -99
  127. package/components/container/wizard/components/WizardStep.js +107 -85
  128. package/components/container/wizard/index.js +791 -921
  129. package/components/container/wizard/props.js +0 -5
  130. package/components/container/wizard/utils.js +97 -131
  131. package/components/container/wizard/wizard-action/index.js +41 -81
  132. package/components/container/wizard/wizard-step/index.js +140 -120
  133. package/components/data/card/card-actions/index.js +13 -31
  134. package/components/data/card/card-content/index.js +27 -36
  135. package/components/data/card/card-footer/index.js +13 -31
  136. package/components/data/card/index.js +192 -199
  137. package/components/data/card/props.js +0 -5
  138. package/components/data/form/base-form/constant.js +5 -8
  139. package/components/data/form/base-form/hooks/index.js +26 -77
  140. package/components/data/form/base-form/hooks/useFormDataSync.js +106 -212
  141. package/components/data/form/base-form/hooks/useFormOperations.js +109 -161
  142. package/components/data/form/base-form/hooks/useFormSubmission.js +220 -280
  143. package/components/data/form/base-form/hooks/useFormValidation.js +119 -168
  144. package/components/data/form/base-form/hooks/useParentFormRelationship.js +67 -103
  145. package/components/data/form/base-form/index.js +534 -647
  146. package/components/data/form/base-form/props.js +74 -151
  147. package/components/data/form/base-form/utils.js +210 -323
  148. package/components/data/form/dynamic-fields/constant.js +43 -53
  149. package/components/data/form/dynamic-fields/index.js +135 -144
  150. package/components/data/form/dynamic-fields/props.js +0 -5
  151. package/components/data/form/dynamic-fields/utils.js +99 -158
  152. package/components/data/form/form-action/index.js +107 -85
  153. package/components/data/form/form-body/index.js +52 -26
  154. package/components/data/form/form-context.js +43 -59
  155. package/components/data/form/form-controller/hooks/index.js +43 -57
  156. package/components/data/form/form-controller/props.js +5 -8
  157. package/components/data/form/form-controller/utils.js +54 -49
  158. package/components/data/form/form-controller/validation-contrustor.js +203 -426
  159. package/components/data/form/form-controller/withFormController.js +320 -274
  160. package/components/data/form/form-dynamic-section/index.js +47 -41
  161. package/components/data/form/form-dynamic-section/props.js +0 -5
  162. package/components/data/form/form-field/base-field.js +97 -109
  163. package/components/data/form/form-field/index.js +91 -82
  164. package/components/data/form/form-field/props.js +0 -5
  165. package/components/data/form/form-footer/index.js +52 -25
  166. package/components/data/form/form-header/index.js +61 -58
  167. package/components/data/form/index.js +95 -74
  168. package/components/data/form/props.js +0 -5
  169. package/components/data/list/components/GroupHeader.js +34 -33
  170. package/components/data/list/components/GroupedListItems.js +108 -104
  171. package/components/data/list/components/ListContainer.js +22 -27
  172. package/components/data/list/components/ListDND.js +193 -185
  173. package/components/data/list/components/ListHeader.js +32 -49
  174. package/components/data/list/components/ListItem.js +153 -146
  175. package/components/data/list/components/ListItemWithTemplate.js +87 -105
  176. package/components/data/list/components/ListItems.js +180 -194
  177. package/components/data/list/components/ListPagination.js +127 -153
  178. package/components/data/list/components/LoadMoreButton.js +25 -33
  179. package/components/data/list/components/NoDataMessage.js +9 -22
  180. package/components/data/list/components/StandardListItems.js +79 -85
  181. package/components/data/list/components/index.js +31 -119
  182. package/components/data/list/components/props.js +0 -5
  183. package/components/data/list/hooks/index.js +22 -75
  184. package/components/data/list/hooks/props.js +0 -5
  185. package/components/data/list/hooks/useCurrentPageItems.js +20 -38
  186. package/components/data/list/hooks/useGroupedData.js +19 -33
  187. package/components/data/list/hooks/useListData.js +17 -47
  188. package/components/data/list/hooks/useListEffects.js +168 -237
  189. package/components/data/list/hooks/useListEventHandlers.js +301 -285
  190. package/components/data/list/hooks/useListPagination.js +90 -136
  191. package/components/data/list/hooks/useListState.js +49 -91
  192. package/components/data/list/hooks/useListStateManager.js +104 -159
  193. package/components/data/list/hooks/usePaginatedGroupedData.js +74 -110
  194. package/components/data/list/index.d.ts +1 -0
  195. package/components/data/list/index.js +579 -621
  196. package/components/data/list/props.d.ts +4 -0
  197. package/components/data/list/props.js +0 -5
  198. package/components/data/list/templates/media-template.js +29 -50
  199. package/components/data/list/utils/constants.js +20 -32
  200. package/components/data/list/utils/list-helpers.d.ts +2 -1
  201. package/components/data/list/utils/list-helpers.js +71 -115
  202. package/components/data/list/utils/list-widget-methods.js +56 -76
  203. package/components/data/list/utils/widget-instance-utils.js +20 -57
  204. package/components/data/live-filter/index.js +219 -271
  205. package/components/data/live-filter/props.js +5 -12
  206. package/components/data/live-form/index.js +68 -91
  207. package/components/data/live-form/props.js +5 -12
  208. package/components/data/pagination/components/BasicPagination.js +124 -104
  209. package/components/data/pagination/components/ClassicPagination.js +167 -190
  210. package/components/data/pagination/components/InlinePagination.js +97 -98
  211. package/components/data/pagination/components/LoadingComponent.js +17 -30
  212. package/components/data/pagination/components/PageSizeSelector.js +176 -169
  213. package/components/data/pagination/components/PagerNavigation.js +84 -105
  214. package/components/data/pagination/components/TotalRecords.js +48 -47
  215. package/components/data/pagination/components/index.js +14 -47
  216. package/components/data/pagination/components/props.js +0 -5
  217. package/components/data/pagination/hooks/index.js +6 -19
  218. package/components/data/pagination/hooks/props.js +0 -5
  219. package/components/data/pagination/hooks/useNavigationSize.js +12 -21
  220. package/components/data/pagination/hooks/usePagination.js +701 -905
  221. package/components/data/pagination/index.js +336 -389
  222. package/components/data/table/components/AddNewRow.js +122 -154
  223. package/components/data/table/components/EditableCell.js +68 -75
  224. package/components/data/table/components/FieldValidationError.js +19 -20
  225. package/components/data/table/components/RowCells.js +97 -80
  226. package/components/data/table/components/RowExpansionButton.js +43 -39
  227. package/components/data/table/components/SummaryCell.js +54 -88
  228. package/components/data/table/components/SummaryRow.js +45 -52
  229. package/components/data/table/components/SummaryRowFooter.js +35 -42
  230. package/components/data/table/components/TableBody.js +222 -218
  231. package/components/data/table/components/TableDataRow.js +113 -106
  232. package/components/data/table/components/TableFilters.js +391 -390
  233. package/components/data/table/components/TableFooterActions.js +25 -32
  234. package/components/data/table/components/TableHeader.js +460 -435
  235. package/components/data/table/components/TablePanelHeading.js +157 -181
  236. package/components/data/table/components/index.js +27 -95
  237. package/components/data/table/hooks/index.js +21 -230
  238. package/components/data/table/hooks/use-edited-rows.js +59 -94
  239. package/components/data/table/hooks/useCellState.js +58 -83
  240. package/components/data/table/hooks/useCustomExpressionColumns.js +65 -86
  241. package/components/data/table/hooks/useDynamicColumns.js +59 -92
  242. package/components/data/table/hooks/useEditingState.js +30 -41
  243. package/components/data/table/hooks/useFormWidget.js +163 -172
  244. package/components/data/table/hooks/usePaginationState.js +67 -77
  245. package/components/data/table/hooks/usePanelStructure.js +47 -41
  246. package/components/data/table/hooks/useResponsiveColumns.js +14 -20
  247. package/components/data/table/hooks/useRowExpansion.js +131 -127
  248. package/components/data/table/hooks/useRowHandlers.js +56 -69
  249. package/components/data/table/hooks/useRowSelection.js +249 -329
  250. package/components/data/table/hooks/useServerSideSorting.js +109 -175
  251. package/components/data/table/hooks/useTableColumns.js +322 -331
  252. package/components/data/table/hooks/useTableData.js +111 -166
  253. package/components/data/table/hooks/useTableEdit.js +526 -564
  254. package/components/data/table/hooks/useTableEffects.js +60 -107
  255. package/components/data/table/hooks/useTableFilter.js +244 -237
  256. package/components/data/table/hooks/useTableInitialization.js +44 -76
  257. package/components/data/table/hooks/useTableState.js +39 -61
  258. package/components/data/table/hooks/useTableStateManager.js +295 -468
  259. package/components/data/table/index.js +1556 -1713
  260. package/components/data/table/live-table/index.js +157 -219
  261. package/components/data/table/props.js +0 -5
  262. package/components/data/table/table-action/index.js +97 -75
  263. package/components/data/table/table-column/index.js +48 -42
  264. package/components/data/table/table-group/index.js +7 -25
  265. package/components/data/table/table-row/index.js +63 -55
  266. package/components/data/table/table-row-action/index.js +102 -77
  267. package/components/data/table/utils/buildSelectionColumns.js +86 -137
  268. package/components/data/table/utils/columnBuilder.d.ts +1 -1
  269. package/components/data/table/utils/columnBuilder.js +121 -160
  270. package/components/data/table/utils/columnProxy.js +48 -66
  271. package/components/data/table/utils/columnWidthDistribution.js +40 -64
  272. package/components/data/table/utils/constants.js +92 -40
  273. package/components/data/table/utils/crud-handlers.js +292 -473
  274. package/components/data/table/utils/dynamic-columns.js +99 -144
  275. package/components/data/table/utils/groupHeaderUtils.js +36 -61
  276. package/components/data/table/utils/index.d.ts +17 -13
  277. package/components/data/table/utils/index.js +483 -639
  278. package/components/data/table/utils/renderDisplayCell.js +127 -169
  279. package/components/data/table/utils/script-page-size-broadcast.js +17 -29
  280. package/components/data/table/utils/selectionUtils.js +59 -113
  281. package/components/data/table/utils/table-helpers.js +38 -74
  282. package/components/data/table/utils/validation.js +35 -78
  283. package/components/data/table/utils/widgetMapping.d.ts +5 -0
  284. package/components/data/table/utils/widgetMapping.js +41 -0
  285. package/components/data/types.js +112 -112
  286. package/components/data/utils/field-data-utils.js +38 -42
  287. package/components/data/utils/filter-field-util.js +42 -44
  288. package/components/data/utils/index.js +112 -111
  289. package/components/dialogs/alert-dialog/index.js +83 -78
  290. package/components/dialogs/alert-dialog/props.js +0 -5
  291. package/components/dialogs/confirm-dialog/index.js +102 -92
  292. package/components/dialogs/confirm-dialog/props.js +0 -5
  293. package/components/dialogs/dialog/index.js +93 -69
  294. package/components/dialogs/dialog/props.js +0 -5
  295. package/components/dialogs/dialog-actions/index.js +12 -26
  296. package/components/dialogs/dialog-actions/props.js +0 -5
  297. package/components/dialogs/dialog-body/index.js +13 -30
  298. package/components/dialogs/dialog-body/props.js +0 -5
  299. package/components/dialogs/dialog-content/index.js +48 -41
  300. package/components/dialogs/dialog-content/props.js +0 -5
  301. package/components/dialogs/dialog-header/index.js +88 -101
  302. package/components/dialogs/dialog-header/props.js +0 -5
  303. package/components/dialogs/iframe-dialog/index.js +136 -128
  304. package/components/dialogs/iframe-dialog/props.js +0 -5
  305. package/components/dialogs/index.js +104 -101
  306. package/components/dialogs/login-dialog/index.js +285 -347
  307. package/components/dialogs/login-dialog/props.js +0 -5
  308. package/components/dialogs/page-dialog/index.js +95 -86
  309. package/components/dialogs/page-dialog/props.js +0 -5
  310. package/components/dialogs/props.js +0 -5
  311. package/components/dialogs/withDialogWrapper.js +110 -83
  312. package/components/form/button/index.js +296 -245
  313. package/components/form/button/props.js +0 -5
  314. package/components/form/button-group/index.js +80 -69
  315. package/components/form/button-group/props.js +0 -5
  316. package/components/input/calendar/index.js +409 -362
  317. package/components/input/calendar/props.js +0 -5
  318. package/components/input/calendar/utils.js +164 -172
  319. package/components/input/chips/SortableChip/index.js +109 -100
  320. package/components/input/chips/SortableChip/props.js +0 -5
  321. package/components/input/chips/index.js +663 -570
  322. package/components/input/chips/props.js +0 -5
  323. package/components/input/chips/utils.js +131 -122
  324. package/components/input/color-picker/index.js +536 -594
  325. package/components/input/color-picker/props.js +0 -5
  326. package/components/input/composite/index.js +71 -110
  327. package/components/input/composite/props.js +0 -5
  328. package/components/input/currency/index.js +277 -224
  329. package/components/input/currency/props.js +0 -5
  330. package/components/input/default/checkbox/index.js +329 -250
  331. package/components/input/default/checkbox/props.js +0 -5
  332. package/components/input/default/checkboxset/index.d.ts +2 -0
  333. package/components/input/default/checkboxset/index.js +529 -446
  334. package/components/input/default/checkboxset/props.d.ts +4 -0
  335. package/components/input/default/checkboxset/props.js +0 -5
  336. package/components/input/default/checkboxset/utils.js +15 -25
  337. package/components/input/default/radioset/index.d.ts +2 -0
  338. package/components/input/default/radioset/index.js +409 -350
  339. package/components/input/default/radioset/props.d.ts +6 -0
  340. package/components/input/default/radioset/props.js +0 -5
  341. package/components/input/default/switch/index.js +494 -458
  342. package/components/input/default/switch/prop.js +0 -5
  343. package/components/input/epoch/date/components/DatePickerPopover.js +242 -193
  344. package/components/input/epoch/date/index.js +638 -518
  345. package/components/input/epoch/date/props.js +0 -5
  346. package/components/input/epoch/date/styled.js +61 -70
  347. package/components/input/epoch/date/utils.js +67 -115
  348. package/components/input/epoch/datetime/index.js +758 -695
  349. package/components/input/epoch/datetime/props.js +0 -5
  350. package/components/input/epoch/datetime/utils.js +121 -186
  351. package/components/input/epoch/time/index.js +441 -415
  352. package/components/input/epoch/time/props.js +0 -5
  353. package/components/input/epoch/time/utils.js +101 -112
  354. package/components/input/fileupload/Utils.js +70 -97
  355. package/components/input/fileupload/components/ListItems.js +132 -130
  356. package/components/input/fileupload/components/MultiUpload.js +80 -77
  357. package/components/input/fileupload/components/SingleUpload.js +57 -57
  358. package/components/input/fileupload/index.js +253 -178
  359. package/components/input/fileupload/props.js +0 -5
  360. package/components/input/fileupload/useFileUpload.js +209 -258
  361. package/components/input/number/index.js +434 -393
  362. package/components/input/number/props.js +0 -5
  363. package/components/input/rating/index.js +401 -394
  364. package/components/input/rating/props.js +0 -5
  365. package/components/input/select/index.js +408 -463
  366. package/components/input/select/props.js +0 -5
  367. package/components/input/slider/index.js +339 -332
  368. package/components/input/slider/props.js +0 -5
  369. package/components/input/text/index.d.ts +3 -3
  370. package/components/input/text/index.js +438 -475
  371. package/components/input/text/props.d.ts +1 -1
  372. package/components/input/text/props.js +0 -5
  373. package/components/input/text/util.js +82 -222
  374. package/components/input/textarea/index.js +322 -358
  375. package/components/input/textarea/props.js +0 -5
  376. package/components/input/upload/index.js +135 -131
  377. package/components/input/upload/props.js +0 -5
  378. package/components/input/util/index.js +9 -11
  379. package/components/layout/footer/index.js +12 -35
  380. package/components/layout/footer/props.js +0 -5
  381. package/components/layout/header/index.js +12 -38
  382. package/components/layout/header/props.js +0 -5
  383. package/components/layout/leftnav/index.js +57 -44
  384. package/components/layout/leftnav/props.d.ts +9 -0
  385. package/components/layout/leftnav/props.js +0 -5
  386. package/components/layout/leftnav/utils/page-class-util.d.ts +9 -0
  387. package/components/layout/leftnav/utils/page-class-util.js +28 -0
  388. package/components/layout/rightnav/index.js +12 -36
  389. package/components/layout/rightnav/props.js +0 -5
  390. package/components/layout/topnav/index.js +24 -38
  391. package/components/layout/topnav/props.js +0 -5
  392. package/components/navbar/index.js +119 -98
  393. package/components/navbar/nav/index.js +236 -232
  394. package/components/navbar/nav/props.js +0 -5
  395. package/components/navbar/nav-item/index.js +74 -65
  396. package/components/navbar/nav-item/props.js +0 -5
  397. package/components/navigation/breadcrumb/index.js +38 -61
  398. package/components/navigation/breadcrumb/props.js +0 -5
  399. package/components/navigation/menu/components/ListItems.js +76 -67
  400. package/components/navigation/menu/constants.js +27 -42
  401. package/components/navigation/menu/hooks/useHoverState.hook.js +20 -47
  402. package/components/navigation/menu/hooks/useKeyboardMovements.hook.js +34 -28
  403. package/components/navigation/menu/hooks/useTransformedDataset.hook.js +21 -14
  404. package/components/navigation/menu/index.js +911 -846
  405. package/components/navigation/menu/props.js +0 -5
  406. package/components/navigation/menu/utils/action-task.js +6 -9
  407. package/components/navigation/menu/utils/role-filter.js +41 -56
  408. package/components/navigation/popover/index.js +192 -205
  409. package/components/navigation/popover/props.js +5 -8
  410. package/components/page/content/index.js +9 -31
  411. package/components/page/content/props.js +0 -5
  412. package/components/page/error-boundary/index.js +115 -105
  413. package/components/page/error-boundary/props.js +0 -5
  414. package/components/page/index.js +100 -102
  415. package/components/page/page-content/index.js +21 -30
  416. package/components/page/page-content/props.js +0 -5
  417. package/components/page/page-context.d.ts +4 -0
  418. package/components/page/page-context.js +5 -0
  419. package/components/page/partial/index.js +50 -45
  420. package/components/page/partial/props.js +0 -5
  421. package/components/page/partial-container/index.js +78 -107
  422. package/components/page/partial-container/props.d.ts +1 -1
  423. package/components/page/partial-container/props.js +0 -5
  424. package/components/page/props.js +0 -5
  425. package/components/page/toast-container/index.js +20 -41
  426. package/components/page/toast-container/props.js +0 -5
  427. package/components/prefab/container/index.js +60 -53
  428. package/components/prefab/container/props.js +0 -5
  429. package/components/prefab/index.js +76 -61
  430. package/components/prefab/props.js +0 -5
  431. package/context/AppContext.d.ts +1 -1
  432. package/context/AppContext.js +17 -18
  433. package/context/AppSpinnerProvider.js +19 -34
  434. package/context/LayoutProvider.js +54 -57
  435. package/context/LocalizationProvider.js +34 -49
  436. package/context/PrefabContext.js +68 -119
  437. package/context/WidgetProvider.js +160 -166
  438. package/core/app-config.js +0 -1
  439. package/core/app.service.js +200 -327
  440. package/core/appVariablesStore.js +10 -15
  441. package/core/appstore.js +37 -53
  442. package/core/constants/currency-constant.js +81 -83
  443. package/core/constants/events.js +34 -44
  444. package/core/constants/index.js +21 -31
  445. package/core/dialog.service.js +52 -72
  446. package/core/event-notifier.js +94 -131
  447. package/core/formatter/array-formatters.js +18 -32
  448. package/core/formatter/date-formatters.js +140 -204
  449. package/core/formatter/index.js +64 -117
  450. package/core/formatter/number-formatters.js +115 -159
  451. package/core/formatter/security-formatters.js +233 -283
  452. package/core/formatter/string-formatters.js +23 -45
  453. package/core/formatter/types.js +12 -18
  454. package/core/formatters.js +6 -24
  455. package/core/proxy-service.js +242 -306
  456. package/core/script-registry.js +87 -134
  457. package/core/security.service.js +8 -11
  458. package/core/util/compare.js +13 -25
  459. package/core/util/dom.js +32 -63
  460. package/core/util/index.js +92 -98
  461. package/core/util/safe-is-equal.js +42 -94
  462. package/core/util/security.js +114 -153
  463. package/core/util/utils.d.ts +4 -1
  464. package/core/util/utils.js +88 -159
  465. package/core/widget-observer.js +34 -61
  466. package/higherOrder/BaseApp.js +328 -502
  467. package/higherOrder/BaseAppProps.d.ts +1 -0
  468. package/higherOrder/BaseAppProps.js +0 -5
  469. package/higherOrder/BaseDateTime.js +277 -231
  470. package/higherOrder/BasePage.js +474 -740
  471. package/higherOrder/BasePartial.js +87 -114
  472. package/higherOrder/BasePrefab.js +190 -206
  473. package/higherOrder/DataNav.js +287 -302
  474. package/higherOrder/helper.js +62 -48
  475. package/higherOrder/props.js +0 -5
  476. package/higherOrder/withBaseWrapper.js +123 -168
  477. package/higherOrder/withStandalone.js +28 -26
  478. package/hooks/useAccess.js +113 -289
  479. package/hooks/useAppConfig.js +15 -40
  480. package/hooks/useAuth.js +256 -495
  481. package/hooks/useDataSourceSubscription.d.ts +3 -3
  482. package/hooks/useDataSourceSubscription.js +99 -109
  483. package/hooks/useDebounce.js +28 -56
  484. package/hooks/useDeviceVisibility.js +14 -23
  485. package/hooks/useHttp.d.ts +1 -0
  486. package/hooks/useHttp.js +314 -493
  487. package/libs/index.js +4 -13
  488. package/libs/prefab/index.js +6 -20
  489. package/mui-config/theme-provider.js +9 -17
  490. package/mui-config/theme.js +6 -9
  491. package/package-lock.json +816 -3207
  492. package/package.json +3 -19
  493. package/providers/AppProviders.js +21 -24
  494. package/runtime-dynamic/App.js +65 -93
  495. package/runtime-dynamic/app-initializer.js +193 -411
  496. package/runtime-dynamic/components/ErrorBoundary.js +59 -76
  497. package/runtime-dynamic/components/PageWrapper.js +23 -35
  498. package/runtime-dynamic/components/PrefabPreview.js +40 -69
  499. package/runtime-dynamic/components/partial-content.d.ts +2 -3
  500. package/runtime-dynamic/components/partial-content.js +66 -45
  501. package/runtime-dynamic/components/prefab-content.js +37 -30
  502. package/runtime-dynamic/components/use-dynamic-component.js +55 -157
  503. package/runtime-dynamic/factories/build-base-page-like-component.d.ts +1 -1
  504. package/runtime-dynamic/factories/build-base-page-like-component.js +44 -58
  505. package/runtime-dynamic/factories/dynamic-component.d.ts +9 -0
  506. package/runtime-dynamic/factories/dynamic-component.js +91 -0
  507. package/runtime-dynamic/factories/prefab-factory.d.ts +1 -1
  508. package/runtime-dynamic/factories/prefab-factory.js +60 -81
  509. package/runtime-dynamic/factories/startup-info.js +12 -25
  510. package/runtime-dynamic/factories/utils.d.ts +2 -10
  511. package/runtime-dynamic/factories/utils.js +47 -129
  512. package/runtime-dynamic/index.js +56 -191
  513. package/runtime-dynamic/main.js +42 -70
  514. package/runtime-dynamic/preview-mode.js +14 -29
  515. package/runtime-dynamic/preview-navigation.js +21 -30
  516. package/runtime-dynamic/preview-path.d.ts +5 -0
  517. package/runtime-dynamic/preview-path.js +13 -0
  518. package/runtime-dynamic/preview-resource-base.js +15 -31
  519. package/runtime-dynamic/registry/component-registry.js +269 -334
  520. package/runtime-dynamic/registry/custom-widget-registry.js +11 -15
  521. package/runtime-dynamic/registry/index.js +24 -63
  522. package/runtime-dynamic/registry/store.d.ts +1 -0
  523. package/runtime-dynamic/registry/store.js +18 -23
  524. package/runtime-dynamic/routes.js +53 -81
  525. package/runtime-dynamic/services/app-extension-provider.js +17 -44
  526. package/runtime-dynamic/services/autolayout-inject.d.ts +4 -0
  527. package/runtime-dynamic/services/autolayout-inject.js +27 -0
  528. package/runtime-dynamic/services/compile-render.d.ts +9 -0
  529. package/runtime-dynamic/services/compile-render.js +142 -0
  530. package/runtime-dynamic/services/component-ref-provider.d.ts +18 -3
  531. package/runtime-dynamic/services/component-ref-provider.js +52 -129
  532. package/runtime-dynamic/services/css-scoping.js +23 -28
  533. package/runtime-dynamic/services/fragment-url.js +37 -50
  534. package/runtime-dynamic/services/index.d.ts +2 -3
  535. package/runtime-dynamic/services/index.js +31 -152
  536. package/runtime-dynamic/services/markup-transpiler.d.ts +2 -2
  537. package/runtime-dynamic/services/markup-transpiler.js +39 -231
  538. package/runtime-dynamic/services/prefab-resources.js +40 -118
  539. package/runtime-dynamic/services/resource-manager.d.ts +2 -2
  540. package/runtime-dynamic/services/resource-manager.js +24 -65
  541. package/runtime-dynamic/services/script-executor.js +46 -63
  542. package/runtime-dynamic/services/variable-factory.js +141 -184
  543. package/runtime-dynamic/services/variable-registry.js +65 -115
  544. package/runtime-dynamic/services/variable-transpiler.js +73 -103
  545. package/runtime-dynamic/shims/next-image.js +79 -50
  546. package/runtime-dynamic/shims/next-link.js +58 -32
  547. package/runtime-dynamic/shims/next-navigation.js +17 -34
  548. package/runtime-dynamic/utils/index.js +15 -30
  549. package/store/bindActions/i18nActions.js +16 -18
  550. package/store/index.js +29 -35
  551. package/store/middleware/navigationMiddleware.js +25 -45
  552. package/store/middleware/pendingTabNavigationIntentMiddleware.js +20 -25
  553. package/store/slices/appConfigSlice.js +65 -94
  554. package/store/slices/authSlice.js +317 -471
  555. package/store/slices/i18nSlice.js +169 -168
  556. package/store/slices/navigationSlice.js +22 -20
  557. package/store/util/resolve-path.d.ts +1 -0
  558. package/store/util/resolve-path.js +7 -0
  559. package/store/viewport.service.js +150 -194
  560. package/types/index.js +10 -15
  561. package/utils/attr.js +191 -41
  562. package/utils/custom-expression/index.js +58 -151
  563. package/utils/custom-expression/parser.js +108 -182
  564. package/utils/dataset-util.js +113 -154
  565. package/utils/eval-expression.js +10 -19
  566. package/utils/form-state.util.js +60 -118
  567. package/utils/form-utils.js +49 -190
  568. package/utils/format-util.js +113 -184
  569. package/utils/layoutsize-util.js +11 -17
  570. package/utils/lib-error-skipper.js +54 -52
  571. package/utils/page-params-util.js +50 -40
  572. package/utils/pending-tab-navigation-intent.js +7 -17
  573. package/utils/resource-url.js +8 -19
  574. package/utils/state-persistance.d.ts +1 -1
  575. package/utils/state-persistance.js +136 -253
  576. package/utils/style-utils.js +24 -78
  577. package/utils/transformedDataset-utils.js +353 -381
  578. package/utils/widget-cleanup-util.js +42 -74
  579. package/utils/widgets.js +19 -31
  580. package/variables/base-variable.js +117 -166
  581. package/variables/constants.js +5 -8
  582. package/variables/crud-variable.js +150 -181
  583. package/variables/live-variable.d.ts +1 -1
  584. package/variables/live-variable.js +140 -174
  585. package/variables/metadata.service.js +74 -116
  586. package/variables/model-variable.js +68 -78
  587. package/variables/service-variable.js +171 -285
  588. package/wm-namespace.js +11 -14
  589. package/components/chart/src/css.d.js +0 -1
  590. package/runtime-dynamic/services/cache.d.ts +0 -29
  591. package/runtime-dynamic/services/cache.js +0 -57
  592. package/tsconfig.declaration.tsbuildinfo +0 -1
  593. package/types/global.d.js +0 -3
@@ -1,183 +1,141 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.renderDisplayCell = void 0;
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _button = require("@wavemaker-ai/react-runtime/components/form/button");
11
- var _index = require("@wavemaker-ai/react-runtime/components/input/default/checkbox/index");
12
- var _label = require("@wavemaker-ai/react-runtime/components/basic/label");
13
- var _index2 = require("./index");
14
- var _anchor = require("@wavemaker-ai/react-runtime/components/basic/anchor");
15
- var _icon = require("@wavemaker-ai/react-runtime/components/basic/icon");
16
- var _picture = require("@wavemaker-ai/react-runtime/components/basic/picture");
17
- var _lodashEs = require("lodash-es");
18
- var _hooks = require("../hooks");
19
- var __jsx = _react["default"].createElement;
20
- /**
21
- * Extracts common props from column configuration
22
- */
23
- var extractCellProps = function extractCellProps(column, rowData) {
24
- var fieldName = (0, _lodashEs.toString)((0, _lodashEs.get)(column, "field", ""));
25
- var value = (0, _lodashEs.get)(rowData, fieldName, "");
26
-
27
- // Extract props from column children if it's a React element
28
- var childProps = /*#__PURE__*/_react["default"].isValidElement(column.children) ? (0, _lodashEs.get)(column.children, "props", {}) : {};
29
- return {
30
- fieldName: fieldName,
31
- value: value,
32
- caption: (0, _lodashEs.get)(childProps, "caption", value),
33
- className: (0, _lodashEs.get)(childProps, "className", ""),
34
- iconclass: (0, _lodashEs.get)(childProps, "iconclass", ""),
35
- onClick: (0, _lodashEs.get)(childProps, "onClick", _lodashEs.noop)
36
- };
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
37
18
  };
38
-
39
- /**
40
- * Creates common props for all widget components
41
- */
42
- var createBaseProps = function createBaseProps(fieldName, suffix, className, listener) {
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { Fragment, jsx } from "react/jsx-runtime";
21
+ import React from "react";
22
+ import { WmButton } from "../../../form/button";
23
+ import { WmCheckbox } from "../../../input/default/checkbox/index";
24
+ import { WmLabel } from "../../../basic/label";
25
+ import { getWidgetMappingForType } from "./widgetMapping";
26
+ import { WmAnchor } from "../../../basic/anchor";
27
+ import { WmIcon } from "../../../basic/icon";
28
+ import { WmPicture } from "../../../basic/picture";
29
+ import { get, toString, isUndefined, noop } from "lodash-es";
30
+ import {
31
+ getCellValue as getCellStateValue,
32
+ setCellValue as setCellStateValue
33
+ } from "../hooks/useCellState";
34
+ const extractCellProps = (column, rowData) => {
35
+ const fieldName = toString(get(column, "field", ""));
36
+ const value = get(rowData, fieldName, "");
37
+ const childProps = React.isValidElement(column.children) ? get(column.children, "props", {}) : {};
43
38
  return {
44
- name: "".concat(fieldName, "_").concat(suffix),
45
- className: className,
46
- listener: listener
39
+ fieldName,
40
+ value,
41
+ caption: get(childProps, "caption", value),
42
+ className: get(childProps, "className", ""),
43
+ iconclass: get(childProps, "iconclass", ""),
44
+ onClick: get(childProps, "onClick", noop)
47
45
  };
48
46
  };
49
-
50
- /**
51
- * Widget renderer factory functions
52
- */
53
- var widgetRenderers = {
54
- WmButton: function WmButton(_ref) {
55
- var column = _ref.column,
56
- rowData = _ref.rowData,
57
- listener = _ref.listener;
58
- var _extractCellProps = extractCellProps(column, rowData),
59
- fieldName = _extractCellProps.fieldName,
60
- caption = _extractCellProps.caption,
61
- className = _extractCellProps.className,
62
- iconclass = _extractCellProps.iconclass,
63
- _onClick = _extractCellProps.onClick;
64
- var value = rowData[fieldName] || caption;
65
- return __jsx(_button.WmButton, (0, _extends2["default"])({}, createBaseProps(fieldName, "button", className, listener), {
66
- iconclass: iconclass,
67
- caption: value || "Button",
68
- onClick: function onClick(event) {
69
- event.preventDefault();
70
- event.stopPropagation();
71
- _onClick(rowData);
72
- }
73
- }));
47
+ const createBaseProps = (fieldName, suffix, className, listener) => ({
48
+ name: `${fieldName}_${suffix}`,
49
+ className,
50
+ listener
51
+ });
52
+ const widgetRenderers = {
53
+ WmButton: ({ column, rowData, listener }) => {
54
+ const { fieldName, caption, className, iconclass, onClick } = extractCellProps(column, rowData);
55
+ const value = rowData[fieldName] || caption;
56
+ return /* @__PURE__ */ jsx(
57
+ WmButton,
58
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "button", className, listener)), {
59
+ iconclass,
60
+ caption: value || "Button",
61
+ onClick: (event) => {
62
+ event.preventDefault();
63
+ event.stopPropagation();
64
+ onClick(rowData);
65
+ }
66
+ })
67
+ );
74
68
  },
75
- WmCheckbox: function WmCheckbox(_ref2) {
76
- var column = _ref2.column,
77
- rowData = _ref2.rowData,
78
- listener = _ref2.listener,
79
- cellState = _ref2.cellState;
80
- var _extractCellProps2 = extractCellProps(column, rowData),
81
- fieldName = _extractCellProps2.fieldName,
82
- value = _extractCellProps2.value,
83
- className = _extractCellProps2.className;
84
- var rowId = rowData._wmTableRowId || String(rowData.id) || "";
85
-
86
- // Use cell state manager if available, otherwise use the value from data
87
- var checkboxValue = cellState ? (0, _hooks.getCellValue)(cellState, rowId, fieldName, !!value) : !!value;
88
- return __jsx(_index.WmCheckbox, (0, _extends2["default"])({}, createBaseProps(fieldName, "checkbox", className, listener), {
89
- datavalue: checkboxValue,
90
- onChange: function onChange(event, widget, newValue) {
91
- if (cellState) {
92
- (0, _hooks.setCellValue)(cellState, rowId, fieldName, newValue);
69
+ WmCheckbox: ({ column, rowData, listener, cellState }) => {
70
+ const { fieldName, value, className } = extractCellProps(column, rowData);
71
+ const rowId = rowData._wmTableRowId || String(rowData.id) || "";
72
+ const checkboxValue = cellState ? getCellStateValue(cellState, rowId, fieldName, !!value) : !!value;
73
+ return /* @__PURE__ */ jsx(
74
+ WmCheckbox,
75
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "checkbox", className, listener)), {
76
+ datavalue: checkboxValue,
77
+ onChange: (event, widget, newValue) => {
78
+ if (cellState) {
79
+ setCellStateValue(cellState, rowId, fieldName, newValue);
80
+ }
93
81
  }
94
- }
95
- }));
82
+ })
83
+ );
96
84
  },
97
- WmAnchor: function WmAnchor(_ref3) {
98
- var column = _ref3.column,
99
- rowData = _ref3.rowData,
100
- listener = _ref3.listener;
101
- var _extractCellProps3 = extractCellProps(column, rowData),
102
- fieldName = _extractCellProps3.fieldName,
103
- className = _extractCellProps3.className,
104
- caption = _extractCellProps3.caption;
105
- var href = (0, _lodashEs.get)(rowData, column.field);
106
- return __jsx(_anchor.WmAnchor, (0, _extends2["default"])({}, createBaseProps(fieldName, "anchor", className, listener), {
107
- hyperlink: href || "",
108
- caption: caption || href
109
- }));
85
+ WmAnchor: ({ column, rowData, listener }) => {
86
+ const { fieldName, className, caption } = extractCellProps(column, rowData);
87
+ const href = get(rowData, column.field);
88
+ return /* @__PURE__ */ jsx(
89
+ WmAnchor,
90
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "anchor", className, listener)), {
91
+ hyperlink: href || "",
92
+ caption: caption || href
93
+ })
94
+ );
110
95
  },
111
- WmIcon: function WmIcon(_ref4) {
112
- var column = _ref4.column,
113
- rowData = _ref4.rowData,
114
- listener = _ref4.listener;
115
- var _extractCellProps4 = extractCellProps(column, rowData),
116
- fieldName = _extractCellProps4.fieldName,
117
- value = _extractCellProps4.value,
118
- className = _extractCellProps4.className;
119
- return __jsx(_icon.WmIcon, (0, _extends2["default"])({}, createBaseProps(fieldName, "icon", className, listener), {
120
- iconclass: !(0, _lodashEs.isUndefined)(value) ? (0, _lodashEs.toString)(value) : "",
121
- caption: !(0, _lodashEs.isUndefined)(value) ? (0, _lodashEs.toString)(value) : "Icon"
122
- }));
96
+ WmIcon: ({ column, rowData, listener }) => {
97
+ const { fieldName, value, className } = extractCellProps(column, rowData);
98
+ return /* @__PURE__ */ jsx(
99
+ WmIcon,
100
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "icon", className, listener)), {
101
+ iconclass: !isUndefined(value) ? toString(value) : "",
102
+ caption: !isUndefined(value) ? toString(value) : "Icon"
103
+ })
104
+ );
123
105
  },
124
- WmPicture: function WmPicture(_ref5) {
125
- var column = _ref5.column,
126
- rowData = _ref5.rowData,
127
- listener = _ref5.listener;
128
- var _extractCellProps5 = extractCellProps(column, rowData),
129
- fieldName = _extractCellProps5.fieldName,
130
- value = _extractCellProps5.value,
131
- caption = _extractCellProps5.caption,
132
- className = _extractCellProps5.className;
133
- return __jsx(_picture.WmPicture, (0, _extends2["default"])({}, createBaseProps(fieldName, "picture", className, listener), {
134
- picturesource: !(0, _lodashEs.isUndefined)(value) ? (0, _lodashEs.toString)(value) : "",
135
- alttext: caption || "Image alt text not provided"
136
- }));
106
+ WmPicture: ({ column, rowData, listener }) => {
107
+ const { fieldName, value, caption, className } = extractCellProps(column, rowData);
108
+ return /* @__PURE__ */ jsx(
109
+ WmPicture,
110
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "picture", className, listener)), {
111
+ picturesource: !isUndefined(value) ? toString(value) : "",
112
+ alttext: caption || "Image alt text not provided"
113
+ })
114
+ );
137
115
  },
138
- WmLabel: function WmLabel(_ref6) {
139
- var column = _ref6.column,
140
- rowData = _ref6.rowData,
141
- listener = _ref6.listener;
142
- var _extractCellProps6 = extractCellProps(column, rowData),
143
- fieldName = _extractCellProps6.fieldName,
144
- value = _extractCellProps6.value,
145
- className = _extractCellProps6.className;
146
- return __jsx(_label.WmLabel, (0, _extends2["default"])({}, createBaseProps(fieldName, "label", className, listener), {
147
- caption: !(0, _lodashEs.isUndefined)(value) ? (0, _lodashEs.toString)(value) : "Label",
148
- type: "p"
149
- }));
116
+ WmLabel: ({ column, rowData, listener }) => {
117
+ const { fieldName, value, className } = extractCellProps(column, rowData);
118
+ return /* @__PURE__ */ jsx(
119
+ WmLabel,
120
+ __spreadProps(__spreadValues({}, createBaseProps(fieldName, "label", className, listener)), {
121
+ caption: !isUndefined(value) ? toString(value) : "Label",
122
+ type: "p"
123
+ })
124
+ );
150
125
  },
151
126
  // Special renderer for dynamic columns - renders raw text like Angular
152
- "dynamic-text": function dynamicText(_ref7) {
153
- var column = _ref7.column,
154
- rowData = _ref7.rowData;
155
- var fieldName = (0, _lodashEs.toString)((0, _lodashEs.get)(column, "field", ""));
156
- var value = (0, _lodashEs.get)(rowData, fieldName, "");
157
-
158
- // Return raw text content directly (no WmLabel wrapper)
159
- return __jsx(_react["default"].Fragment, null, !(0, _lodashEs.isUndefined)(value) ? (0, _lodashEs.toString)(value) : "");
127
+ "dynamic-text": ({ column, rowData }) => {
128
+ const fieldName = toString(get(column, "field", ""));
129
+ const value = get(rowData, fieldName, "");
130
+ return /* @__PURE__ */ jsx(Fragment, { children: !isUndefined(value) ? toString(value) : "" });
160
131
  }
161
132
  };
162
-
163
- /**
164
- * Renders a table cell based on the widget-type property of the column
165
- * @param column - The column configuration
166
- * @param rowData - The row data object
167
- * @param listener - Optional event listener
168
- * @param cellState - Optional cell state manager
169
- * @returns React element for the cell content
170
- */
171
- var renderDisplayCell = exports.renderDisplayCell = function renderDisplayCell(column, rowData, listener, cellState) {
172
- var widgetType = (0, _lodashEs.get)(column, "widgetType", "label");
173
- var mappedWidgetType = column.field ? (0, _index2.getWidgetMappingForType)(widgetType) : "dynamic-text";
174
-
175
- // Get the appropriate renderer, defaulting to WmLabel
176
- var renderer = (0, _lodashEs.get)(widgetRenderers, mappedWidgetType) || widgetRenderers.WmLabel;
177
- return renderer({
178
- column: column,
179
- rowData: rowData,
180
- listener: listener,
181
- cellState: cellState
182
- });
183
- };
133
+ const renderDisplayCell = (column, rowData, listener, cellState) => {
134
+ const widgetType = get(column, "widgetType", "label");
135
+ const mappedWidgetType = column.field ? getWidgetMappingForType(widgetType) : "dynamic-text";
136
+ const renderer = get(widgetRenderers, mappedWidgetType) || widgetRenderers.WmLabel;
137
+ return renderer({ column, rowData, listener, cellState });
138
+ };
139
+ export {
140
+ renderDisplayCell
141
+ };
@@ -1,45 +1,33 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.broadcastScriptPageSize = broadcastScriptPageSize;
7
- exports.subscribeToScriptPageSizeBroadcast = subscribeToScriptPageSizeBroadcast;
8
- /**
9
- * When script calls selectPageSize on one tab's table, the widget name is shared
10
- * so only the last-mounted table receives the call. This broadcasts the value
11
- * to all tables with the same name so the first/active tab also gets the update.
12
- */
13
-
14
- var listenersByTableName = new Map();
1
+ const listenersByTableName = /* @__PURE__ */ new Map();
15
2
  function subscribeToScriptPageSizeBroadcast(name, storageKey, onUpdate) {
16
- var key = name;
3
+ const key = name;
17
4
  if (!listenersByTableName.has(key)) {
18
- listenersByTableName.set(key, new Set());
5
+ listenersByTableName.set(key, /* @__PURE__ */ new Set());
19
6
  }
20
- var entry = {
21
- storageKey: storageKey,
22
- cb: function cb(value, callerStorageKey) {
7
+ const entry = {
8
+ storageKey,
9
+ cb: (value, callerStorageKey) => {
23
10
  if (callerStorageKey !== storageKey) {
24
11
  onUpdate(value);
25
12
  }
26
13
  }
27
14
  };
28
- var listeners = listenersByTableName.get(name);
15
+ const listeners = listenersByTableName.get(name);
29
16
  if (listeners) {
30
17
  listeners.add(entry);
31
18
  }
32
- return function () {
33
- var _listenersByTableName;
34
- (_listenersByTableName = listenersByTableName.get(key)) === null || _listenersByTableName === void 0 || _listenersByTableName["delete"](entry);
19
+ return () => {
20
+ var _a;
21
+ (_a = listenersByTableName.get(key)) == null ? void 0 : _a.delete(entry);
35
22
  };
36
23
  }
37
24
  function broadcastScriptPageSize(name, callerStorageKey, value) {
38
- var entries = listenersByTableName.get(name);
25
+ const entries = listenersByTableName.get(name);
39
26
  if (entries) {
40
- entries.forEach(function (_ref) {
41
- var cb = _ref.cb;
42
- return cb(value, callerStorageKey);
43
- });
27
+ entries.forEach(({ cb }) => cb(value, callerStorageKey));
44
28
  }
45
- }
29
+ }
30
+ export {
31
+ broadcastScriptPageSize,
32
+ subscribeToScriptPageSizeBroadcast
33
+ };
@@ -1,88 +1,44 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.selectionStateHelpers = exports.rowExistsInDataset = exports.isInteractiveElement = exports.hasInteractiveClass = exports.hasInteractiveAttributes = exports.getRowIdsFromDataset = void 0;
8
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
- var _hooks = require("../hooks");
10
- var _constants = require("./constants");
11
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
12
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
13
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
14
- /**
15
- * Check if an element has any of the interactive classes
16
- */
17
- var hasInteractiveClass = exports.hasInteractiveClass = function hasInteractiveClass(element) {
1
+ import { getSelectedRowIds, setSelectedRowIds } from "../hooks/useCellState";
2
+ import {
3
+ INTERACTIVE_CLASSES,
4
+ INTERACTIVE_ROLES,
5
+ INTERACTIVE_DATA_ROLES,
6
+ INTERACTIVE_TAG_NAMES
7
+ } from "./constants";
8
+ const hasInteractiveClass = (element) => {
18
9
  if (!element.className || typeof element.className !== "string") return false;
19
- var className = element.className;
20
- var _iterator = _createForOfIteratorHelper(_constants.INTERACTIVE_CLASSES),
21
- _step;
22
- try {
23
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
24
- var interactiveClass = _step.value;
25
- if (className.includes(interactiveClass)) {
26
- return true;
27
- }
10
+ const className = element.className;
11
+ for (const interactiveClass of INTERACTIVE_CLASSES) {
12
+ if (className.includes(interactiveClass)) {
13
+ return true;
28
14
  }
29
- } catch (err) {
30
- _iterator.e(err);
31
- } finally {
32
- _iterator.f();
33
15
  }
34
16
  return false;
35
17
  };
36
-
37
- /**
38
- * Check if an element has interactive attributes
39
- */
40
- var hasInteractiveAttributes = exports.hasInteractiveAttributes = function hasInteractiveAttributes(element) {
41
- // Check contenteditable
18
+ const hasInteractiveAttributes = (element) => {
42
19
  if (element.getAttribute("contenteditable") === "true") {
43
20
  return true;
44
21
  }
45
-
46
- // Check role attribute
47
- var role = element.getAttribute("role");
48
- if (role && _constants.INTERACTIVE_ROLES.includes(role)) {
22
+ const role = element.getAttribute("role");
23
+ if (role && INTERACTIVE_ROLES.includes(role)) {
49
24
  return true;
50
25
  }
51
-
52
- // Check data-role attribute
53
- var dataRole = element.getAttribute("data-role");
26
+ const dataRole = element.getAttribute("data-role");
54
27
  if (dataRole) {
55
- var _iterator2 = _createForOfIteratorHelper(_constants.INTERACTIVE_DATA_ROLES),
56
- _step2;
57
- try {
58
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
59
- var interactiveRole = _step2.value;
60
- if (dataRole.includes(interactiveRole)) {
61
- return true;
62
- }
28
+ for (const interactiveRole of INTERACTIVE_DATA_ROLES) {
29
+ if (dataRole.includes(interactiveRole)) {
30
+ return true;
63
31
  }
64
- } catch (err) {
65
- _iterator2.e(err);
66
- } finally {
67
- _iterator2.f();
68
32
  }
69
33
  }
70
34
  return false;
71
35
  };
72
-
73
- /**
74
- * Check if element or its ancestors are interactive
75
- */
76
- var isInteractiveElement = exports.isInteractiveElement = function isInteractiveElement(event) {
77
- var target = event.target;
78
-
79
- // Check if it's a standard interactive HTML element
80
- if (_constants.INTERACTIVE_TAG_NAMES.includes(target.tagName)) {
36
+ const isInteractiveElement = (event) => {
37
+ const target = event.target;
38
+ if (INTERACTIVE_TAG_NAMES.includes(target.tagName)) {
81
39
  return true;
82
40
  }
83
-
84
- // Check element and its ancestors
85
- var element = target;
41
+ let element = target;
86
42
  while (element) {
87
43
  if (hasInteractiveClass(element) || hasInteractiveAttributes(element)) {
88
44
  return true;
@@ -91,58 +47,40 @@ var isInteractiveElement = exports.isInteractiveElement = function isInteractive
91
47
  }
92
48
  return false;
93
49
  };
94
-
95
- /**
96
- * Get row IDs from dataset
97
- */
98
- var getRowIdsFromDataset = exports.getRowIdsFromDataset = function getRowIdsFromDataset(dataset) {
99
- return dataset.map(function (row) {
100
- return row._wmTableRowId || String(row.id);
101
- });
50
+ const getRowIdsFromDataset = (dataset) => {
51
+ return dataset.map((row) => row._wmTableRowId || String(row.id));
102
52
  };
103
-
104
- /**
105
- * Check if a row exists in dataset
106
- */
107
- var rowExistsInDataset = exports.rowExistsInDataset = function rowExistsInDataset(rowId, dataset) {
108
- return dataset.some(function (row) {
109
- return row._wmTableRowId === rowId || String(row.id) === rowId;
110
- });
53
+ const rowExistsInDataset = (rowId, dataset) => {
54
+ return dataset.some((row) => row._wmTableRowId === rowId || String(row.id) === rowId);
111
55
  };
112
-
113
- /**
114
- * Unified selection state management functions
115
- * Uses a single selectedRowIds array for both radio and multiselect modes:
116
- * - Radio select: array contains at most 1 item (replaces on new selection)
117
- * - Multiselect: array can contain multiple items (add/remove on selection)
118
- */
119
- var selectionStateHelpers = exports.selectionStateHelpers = {
56
+ const selectionStateHelpers = {
120
57
  // Get current selection (works for both modes)
121
- getSelection: function getSelection(cellState) {
122
- return (0, _hooks.getSelectedRowIds)(cellState);
58
+ getSelection: (cellState) => {
59
+ return getSelectedRowIds(cellState);
123
60
  },
124
61
  // Set selection - replaces entire selection (for radio select)
125
- setSelection: function setSelection(cellState, rowId) {
126
- (0, _hooks.setSelectedRowIds)(cellState, [rowId]);
62
+ setSelection: (cellState, rowId) => {
63
+ setSelectedRowIds(cellState, [rowId]);
127
64
  },
128
65
  // Add to selection (for multiselect)
129
- addToSelection: function addToSelection(cellState, rowId) {
130
- var current = (0, _hooks.getSelectedRowIds)(cellState);
66
+ addToSelection: (cellState, rowId) => {
67
+ const current = getSelectedRowIds(cellState);
131
68
  if (!current.includes(rowId)) {
132
- (0, _hooks.setSelectedRowIds)(cellState, [].concat((0, _toConsumableArray2["default"])(current), [rowId]));
69
+ setSelectedRowIds(cellState, [...current, rowId]);
133
70
  }
134
71
  },
135
72
  // Remove from selection (for multiselect)
136
- removeFromSelection: function removeFromSelection(cellState, rowId) {
137
- var current = (0, _hooks.getSelectedRowIds)(cellState);
138
- (0, _hooks.setSelectedRowIds)(cellState, current.filter(function (id) {
139
- return id !== rowId;
140
- }));
73
+ removeFromSelection: (cellState, rowId) => {
74
+ const current = getSelectedRowIds(cellState);
75
+ setSelectedRowIds(
76
+ cellState,
77
+ current.filter((id) => id !== rowId)
78
+ );
141
79
  },
142
80
  // Toggle selection (for multiselect - adds if not present, removes if present)
143
- toggleSelection: function toggleSelection(cellState, rowId) {
144
- var current = (0, _hooks.getSelectedRowIds)(cellState);
145
- var isSelected = current.includes(rowId);
81
+ toggleSelection: (cellState, rowId) => {
82
+ const current = getSelectedRowIds(cellState);
83
+ const isSelected = current.includes(rowId);
146
84
  if (isSelected) {
147
85
  selectionStateHelpers.removeFromSelection(cellState, rowId);
148
86
  } else {
@@ -151,15 +89,23 @@ var selectionStateHelpers = exports.selectionStateHelpers = {
151
89
  return !isSelected;
152
90
  },
153
91
  // Set all selections (for select all in multiselect)
154
- setAllSelection: function setAllSelection(cellState, rowIds) {
155
- (0, _hooks.setSelectedRowIds)(cellState, rowIds);
92
+ setAllSelection: (cellState, rowIds) => {
93
+ setSelectedRowIds(cellState, rowIds);
156
94
  },
157
95
  // Clear all selections
158
- clearSelection: function clearSelection(cellState) {
159
- (0, _hooks.setSelectedRowIds)(cellState, []);
96
+ clearSelection: (cellState) => {
97
+ setSelectedRowIds(cellState, []);
160
98
  },
161
99
  // Check if a row is selected
162
- isRowSelected: function isRowSelected(cellState, rowId) {
163
- return (0, _hooks.getSelectedRowIds)(cellState).includes(rowId);
100
+ isRowSelected: (cellState, rowId) => {
101
+ return getSelectedRowIds(cellState).includes(rowId);
164
102
  }
165
- };
103
+ };
104
+ export {
105
+ getRowIdsFromDataset,
106
+ hasInteractiveAttributes,
107
+ hasInteractiveClass,
108
+ isInteractiveElement,
109
+ rowExistsInDataset,
110
+ selectionStateHelpers
111
+ };