@wavemaker-ai/react-runtime 1.0.0-rc.647499 → 1.0.0-rc.647565

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 (574) 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.js +251 -346
  6. package/actions/notification-action.js +121 -149
  7. package/actions/timer-action.js +95 -151
  8. package/actions/toast-provider.js +62 -76
  9. package/actions/toast.js +95 -91
  10. package/actions/toast.service.js +59 -79
  11. package/actions/types/index.js +6 -9
  12. package/components/advanced/carousel/index.js +358 -366
  13. package/components/advanced/carousel/props.js +0 -5
  14. package/components/advanced/carousel/template.js +102 -80
  15. package/components/advanced/login/index.js +227 -285
  16. package/components/advanced/login/props.js +0 -5
  17. package/components/advanced/marquee/index.js +169 -163
  18. package/components/advanced/marquee/props.js +0 -5
  19. package/components/basic/anchor/index.js +207 -187
  20. package/components/basic/anchor/props.js +0 -5
  21. package/components/basic/audio/index.js +110 -72
  22. package/components/basic/audio/props.js +0 -5
  23. package/components/basic/html/index.js +163 -203
  24. package/components/basic/html/props.js +0 -5
  25. package/components/basic/html/utils.js +30 -28
  26. package/components/basic/icon/index.js +98 -84
  27. package/components/basic/icon/props.js +0 -5
  28. package/components/basic/iframe/iframe.utils.js +7 -16
  29. package/components/basic/iframe/index.js +97 -103
  30. package/components/basic/iframe/props.js +0 -5
  31. package/components/basic/label/index.js +156 -134
  32. package/components/basic/label/props.js +0 -5
  33. package/components/basic/message/index.js +129 -113
  34. package/components/basic/message/props.js +0 -5
  35. package/components/basic/picture/index.js +156 -127
  36. package/components/basic/picture/props.js +0 -5
  37. package/components/basic/progress-bar/index.js +240 -176
  38. package/components/basic/progress-bar/props.js +5 -31
  39. package/components/basic/progress-circle/index.js +166 -183
  40. package/components/basic/progress-circle/props.js +14 -34
  41. package/components/basic/richtexteditor/index.js +430 -396
  42. package/components/basic/richtexteditor/props.js +0 -5
  43. package/components/basic/search/index.js +812 -931
  44. package/components/basic/search/props.js +0 -5
  45. package/components/basic/search/providers.js +233 -380
  46. package/components/basic/spinner/index.js +210 -200
  47. package/components/basic/spinner/props.js +4 -22
  48. package/components/basic/tile/index.js +73 -81
  49. package/components/basic/tile/props.js +0 -5
  50. package/components/basic/tree/Components/TreeNodeComponent.js +238 -170
  51. package/components/basic/tree/hooks/useTreePartialNodeApi.js +143 -135
  52. package/components/basic/tree/index.js +378 -454
  53. package/components/basic/tree/props.js +0 -5
  54. package/components/basic/tree/utils.js +129 -185
  55. package/components/basic/video/index.js +161 -107
  56. package/components/basic/video/props.js +0 -5
  57. package/components/chart/index.js +42 -50
  58. package/components/chart/props.js +31 -37
  59. package/components/chart/src/ChartRenderer.js +172 -154
  60. package/components/chart/src/chart.js +391 -213
  61. package/components/chart/src/chartStyles.generated.js +6 -14
  62. package/components/chart/src/chartUtils.js +228 -272
  63. package/components/chart/src/constants.d.ts +13 -0
  64. package/components/chart/src/constants.js +316 -90
  65. package/components/chart/src/d3Setup.js +11 -30
  66. package/components/chart/src/dataUtils.js +362 -446
  67. package/components/chart/src/formatUtils.js +47 -38
  68. package/components/chart/src/index.js +11 -19
  69. package/components/chart/src/nvd3Source.generated.js +5 -13
  70. package/components/chart/src/pieDonutResponsiveLayout.d.ts +5 -0
  71. package/components/chart/src/pieDonutResponsiveLayout.js +76 -96
  72. package/components/chart/src/types.js +0 -5
  73. package/components/common/AppSpinner.js +17 -33
  74. package/components/common/app-spinner.js +11 -22
  75. package/components/common/customTemplate/index.d.ts +3 -0
  76. package/components/common/customTemplate/index.js +6 -0
  77. package/components/common/customTemplate/props.d.ts +20 -0
  78. package/components/common/customTemplate/props.js +0 -0
  79. package/components/common/customTemplate/template.d.ts +3 -0
  80. package/components/common/customTemplate/template.js +27 -0
  81. package/components/common/customTemplate/useCustomTemplate.d.ts +8 -0
  82. package/components/common/customTemplate/useCustomTemplate.js +17 -0
  83. package/components/common/customTemplate/utils.d.ts +6 -0
  84. package/components/common/customTemplate/utils.js +12 -0
  85. package/components/common/index.js +4 -12
  86. package/components/constants.js +81 -77
  87. package/components/container/accordion/accordion-pane/index.js +105 -118
  88. package/components/container/accordion/accordion-pane/props.js +5 -21
  89. package/components/container/accordion/index.js +225 -243
  90. package/components/container/accordion/props.js +5 -16
  91. package/components/container/index.js +214 -150
  92. package/components/container/layout-grid/grid-column/index.js +68 -43
  93. package/components/container/layout-grid/grid-column/props.js +0 -5
  94. package/components/container/layout-grid/grid-row/index.js +12 -29
  95. package/components/container/layout-grid/grid-row/props.js +0 -5
  96. package/components/container/layout-grid/index.js +53 -38
  97. package/components/container/layout-grid/props.js +0 -5
  98. package/components/container/linear-layout/index.js +56 -60
  99. package/components/container/linear-layout/linear-layout-item/index.js +43 -47
  100. package/components/container/linear-layout/linear-layout-item/props.js +0 -5
  101. package/components/container/linear-layout/props.js +0 -5
  102. package/components/container/panel/components/panel-content/index.js +7 -16
  103. package/components/container/panel/components/panel-header/index.js +166 -146
  104. package/components/container/panel/components/panel-header/props.js +0 -5
  105. package/components/container/panel/hooks.js +76 -102
  106. package/components/container/panel/index.js +289 -252
  107. package/components/container/panel/props.js +0 -5
  108. package/components/container/props.js +0 -5
  109. package/components/container/repeat-template/index.js +65 -44
  110. package/components/container/repeat-template/props.js +0 -5
  111. package/components/container/tabs/index.js +517 -526
  112. package/components/container/tabs/props.js +5 -28
  113. package/components/container/tabs/tab-pane/index.js +105 -100
  114. package/components/container/tabs/tab-pane/props.js +0 -5
  115. package/components/container/tabs/utils.js +30 -35
  116. package/components/container/wizard/WizardContext.js +9 -11
  117. package/components/container/wizard/components/StepComponents.js +76 -99
  118. package/components/container/wizard/components/WizardStep.js +107 -85
  119. package/components/container/wizard/index.js +791 -921
  120. package/components/container/wizard/props.js +0 -5
  121. package/components/container/wizard/utils.js +97 -131
  122. package/components/container/wizard/wizard-action/index.js +41 -81
  123. package/components/container/wizard/wizard-step/index.js +140 -120
  124. package/components/data/card/card-actions/index.js +13 -31
  125. package/components/data/card/card-content/index.js +27 -36
  126. package/components/data/card/card-footer/index.js +13 -31
  127. package/components/data/card/index.js +192 -199
  128. package/components/data/card/props.js +0 -5
  129. package/components/data/form/base-form/constant.js +5 -8
  130. package/components/data/form/base-form/hooks/index.js +26 -77
  131. package/components/data/form/base-form/hooks/useFormDataSync.js +106 -212
  132. package/components/data/form/base-form/hooks/useFormOperations.js +109 -161
  133. package/components/data/form/base-form/hooks/useFormSubmission.js +220 -280
  134. package/components/data/form/base-form/hooks/useFormValidation.js +119 -168
  135. package/components/data/form/base-form/hooks/useParentFormRelationship.js +67 -103
  136. package/components/data/form/base-form/index.js +531 -646
  137. package/components/data/form/base-form/props.js +74 -151
  138. package/components/data/form/base-form/utils.js +210 -323
  139. package/components/data/form/dynamic-fields/constant.js +43 -53
  140. package/components/data/form/dynamic-fields/index.js +135 -144
  141. package/components/data/form/dynamic-fields/props.js +0 -5
  142. package/components/data/form/dynamic-fields/utils.js +99 -158
  143. package/components/data/form/form-action/index.js +107 -85
  144. package/components/data/form/form-body/index.js +52 -26
  145. package/components/data/form/form-context.js +43 -59
  146. package/components/data/form/form-controller/hooks/index.js +43 -57
  147. package/components/data/form/form-controller/props.js +5 -8
  148. package/components/data/form/form-controller/utils.js +54 -49
  149. package/components/data/form/form-controller/validation-contrustor.js +203 -426
  150. package/components/data/form/form-controller/withFormController.js +319 -269
  151. package/components/data/form/form-dynamic-section/index.js +47 -41
  152. package/components/data/form/form-dynamic-section/props.js +0 -5
  153. package/components/data/form/form-field/base-field.js +97 -109
  154. package/components/data/form/form-field/index.js +91 -82
  155. package/components/data/form/form-field/props.js +0 -5
  156. package/components/data/form/form-footer/index.js +52 -25
  157. package/components/data/form/form-header/index.js +61 -58
  158. package/components/data/form/index.js +95 -74
  159. package/components/data/form/props.js +0 -5
  160. package/components/data/list/components/GroupHeader.js +34 -33
  161. package/components/data/list/components/GroupedListItems.js +108 -104
  162. package/components/data/list/components/ListContainer.js +22 -27
  163. package/components/data/list/components/ListDND.js +193 -185
  164. package/components/data/list/components/ListHeader.js +32 -49
  165. package/components/data/list/components/ListItem.js +153 -146
  166. package/components/data/list/components/ListItemWithTemplate.js +87 -105
  167. package/components/data/list/components/ListItems.js +180 -194
  168. package/components/data/list/components/ListPagination.js +127 -153
  169. package/components/data/list/components/LoadMoreButton.js +25 -33
  170. package/components/data/list/components/NoDataMessage.js +9 -22
  171. package/components/data/list/components/StandardListItems.js +79 -85
  172. package/components/data/list/components/index.js +31 -119
  173. package/components/data/list/components/props.js +0 -5
  174. package/components/data/list/hooks/index.js +22 -75
  175. package/components/data/list/hooks/props.js +0 -5
  176. package/components/data/list/hooks/useCurrentPageItems.js +20 -38
  177. package/components/data/list/hooks/useGroupedData.js +19 -33
  178. package/components/data/list/hooks/useListData.js +17 -47
  179. package/components/data/list/hooks/useListEffects.js +168 -237
  180. package/components/data/list/hooks/useListEventHandlers.js +301 -285
  181. package/components/data/list/hooks/useListPagination.js +90 -136
  182. package/components/data/list/hooks/useListState.js +49 -91
  183. package/components/data/list/hooks/useListStateManager.js +104 -159
  184. package/components/data/list/hooks/usePaginatedGroupedData.js +74 -110
  185. package/components/data/list/index.d.ts +1 -0
  186. package/components/data/list/index.js +579 -621
  187. package/components/data/list/props.d.ts +4 -0
  188. package/components/data/list/props.js +0 -5
  189. package/components/data/list/templates/media-template.js +29 -50
  190. package/components/data/list/utils/constants.js +20 -32
  191. package/components/data/list/utils/list-helpers.d.ts +2 -1
  192. package/components/data/list/utils/list-helpers.js +71 -115
  193. package/components/data/list/utils/list-widget-methods.js +56 -76
  194. package/components/data/list/utils/widget-instance-utils.js +20 -57
  195. package/components/data/live-filter/index.js +219 -271
  196. package/components/data/live-filter/props.js +5 -12
  197. package/components/data/live-form/index.js +68 -91
  198. package/components/data/live-form/props.js +5 -12
  199. package/components/data/pagination/components/BasicPagination.js +124 -104
  200. package/components/data/pagination/components/ClassicPagination.js +167 -190
  201. package/components/data/pagination/components/InlinePagination.js +97 -98
  202. package/components/data/pagination/components/LoadingComponent.js +17 -30
  203. package/components/data/pagination/components/PageSizeSelector.js +176 -169
  204. package/components/data/pagination/components/PagerNavigation.js +84 -105
  205. package/components/data/pagination/components/TotalRecords.js +48 -47
  206. package/components/data/pagination/components/index.js +14 -47
  207. package/components/data/pagination/components/props.js +0 -5
  208. package/components/data/pagination/hooks/index.js +6 -19
  209. package/components/data/pagination/hooks/props.js +0 -5
  210. package/components/data/pagination/hooks/useNavigationSize.js +12 -21
  211. package/components/data/pagination/hooks/usePagination.js +702 -905
  212. package/components/data/pagination/index.js +336 -389
  213. package/components/data/table/components/AddNewRow.js +122 -154
  214. package/components/data/table/components/EditableCell.js +68 -75
  215. package/components/data/table/components/FieldValidationError.js +19 -20
  216. package/components/data/table/components/RowCells.js +97 -80
  217. package/components/data/table/components/RowExpansionButton.js +43 -39
  218. package/components/data/table/components/SummaryCell.js +54 -88
  219. package/components/data/table/components/SummaryRow.js +45 -52
  220. package/components/data/table/components/SummaryRowFooter.js +35 -42
  221. package/components/data/table/components/TableBody.js +222 -218
  222. package/components/data/table/components/TableDataRow.js +113 -106
  223. package/components/data/table/components/TableFilters.js +391 -390
  224. package/components/data/table/components/TableFooterActions.js +25 -32
  225. package/components/data/table/components/TableHeader.js +460 -435
  226. package/components/data/table/components/TablePanelHeading.js +157 -181
  227. package/components/data/table/components/index.js +27 -95
  228. package/components/data/table/hooks/index.js +21 -230
  229. package/components/data/table/hooks/use-edited-rows.js +59 -94
  230. package/components/data/table/hooks/useCellState.js +58 -83
  231. package/components/data/table/hooks/useCustomExpressionColumns.js +65 -86
  232. package/components/data/table/hooks/useDynamicColumns.js +59 -92
  233. package/components/data/table/hooks/useEditingState.js +30 -41
  234. package/components/data/table/hooks/useFormWidget.js +163 -172
  235. package/components/data/table/hooks/usePaginationState.js +67 -77
  236. package/components/data/table/hooks/usePanelStructure.js +47 -41
  237. package/components/data/table/hooks/useResponsiveColumns.js +14 -20
  238. package/components/data/table/hooks/useRowExpansion.js +131 -127
  239. package/components/data/table/hooks/useRowHandlers.js +56 -69
  240. package/components/data/table/hooks/useRowSelection.js +249 -329
  241. package/components/data/table/hooks/useServerSideSorting.js +109 -175
  242. package/components/data/table/hooks/useTableColumns.js +322 -331
  243. package/components/data/table/hooks/useTableData.js +111 -166
  244. package/components/data/table/hooks/useTableEdit.js +526 -564
  245. package/components/data/table/hooks/useTableEffects.js +60 -107
  246. package/components/data/table/hooks/useTableFilter.js +244 -237
  247. package/components/data/table/hooks/useTableInitialization.js +44 -76
  248. package/components/data/table/hooks/useTableState.js +39 -61
  249. package/components/data/table/hooks/useTableStateManager.js +295 -468
  250. package/components/data/table/index.js +1553 -1713
  251. package/components/data/table/live-table/index.js +157 -219
  252. package/components/data/table/props.js +0 -5
  253. package/components/data/table/table-action/index.js +97 -75
  254. package/components/data/table/table-column/index.js +48 -42
  255. package/components/data/table/table-group/index.js +7 -25
  256. package/components/data/table/table-row/index.js +63 -55
  257. package/components/data/table/table-row-action/index.js +102 -77
  258. package/components/data/table/utils/buildSelectionColumns.js +86 -137
  259. package/components/data/table/utils/columnBuilder.js +116 -158
  260. package/components/data/table/utils/columnProxy.js +48 -66
  261. package/components/data/table/utils/columnWidthDistribution.js +40 -64
  262. package/components/data/table/utils/constants.js +92 -40
  263. package/components/data/table/utils/crud-handlers.js +292 -473
  264. package/components/data/table/utils/dynamic-columns.js +99 -144
  265. package/components/data/table/utils/groupHeaderUtils.js +36 -61
  266. package/components/data/table/utils/index.d.ts +8 -5
  267. package/components/data/table/utils/index.js +419 -639
  268. package/components/data/table/utils/renderDisplayCell.js +127 -169
  269. package/components/data/table/utils/script-page-size-broadcast.js +17 -29
  270. package/components/data/table/utils/selectionUtils.js +59 -113
  271. package/components/data/table/utils/table-helpers.js +38 -74
  272. package/components/data/table/utils/validation.js +35 -78
  273. package/components/data/table/utils/widgetMapping.d.ts +5 -0
  274. package/components/data/table/utils/widgetMapping.js +41 -0
  275. package/components/data/types.js +112 -112
  276. package/components/data/utils/field-data-utils.js +38 -42
  277. package/components/data/utils/filter-field-util.js +42 -44
  278. package/components/data/utils/index.js +112 -111
  279. package/components/dialogs/alert-dialog/index.js +83 -78
  280. package/components/dialogs/alert-dialog/props.js +0 -5
  281. package/components/dialogs/confirm-dialog/index.js +102 -92
  282. package/components/dialogs/confirm-dialog/props.js +0 -5
  283. package/components/dialogs/dialog/index.js +93 -69
  284. package/components/dialogs/dialog/props.js +0 -5
  285. package/components/dialogs/dialog-actions/index.js +12 -26
  286. package/components/dialogs/dialog-actions/props.js +0 -5
  287. package/components/dialogs/dialog-body/index.js +13 -30
  288. package/components/dialogs/dialog-body/props.js +0 -5
  289. package/components/dialogs/dialog-content/index.js +48 -41
  290. package/components/dialogs/dialog-content/props.js +0 -5
  291. package/components/dialogs/dialog-header/index.js +88 -101
  292. package/components/dialogs/dialog-header/props.js +0 -5
  293. package/components/dialogs/iframe-dialog/index.js +136 -128
  294. package/components/dialogs/iframe-dialog/props.js +0 -5
  295. package/components/dialogs/index.js +104 -101
  296. package/components/dialogs/login-dialog/index.js +285 -347
  297. package/components/dialogs/login-dialog/props.js +0 -5
  298. package/components/dialogs/page-dialog/index.js +95 -86
  299. package/components/dialogs/page-dialog/props.js +0 -5
  300. package/components/dialogs/props.js +0 -5
  301. package/components/dialogs/withDialogWrapper.js +110 -83
  302. package/components/form/button/index.js +296 -245
  303. package/components/form/button/props.js +0 -5
  304. package/components/form/button-group/index.js +80 -69
  305. package/components/form/button-group/props.js +0 -5
  306. package/components/input/calendar/index.js +409 -362
  307. package/components/input/calendar/props.js +0 -5
  308. package/components/input/calendar/utils.js +164 -172
  309. package/components/input/chips/SortableChip/index.js +109 -100
  310. package/components/input/chips/SortableChip/props.js +0 -5
  311. package/components/input/chips/index.js +663 -570
  312. package/components/input/chips/props.js +0 -5
  313. package/components/input/chips/utils.js +131 -122
  314. package/components/input/color-picker/index.js +536 -594
  315. package/components/input/color-picker/props.js +0 -5
  316. package/components/input/composite/index.js +71 -110
  317. package/components/input/composite/props.js +0 -5
  318. package/components/input/currency/index.js +277 -224
  319. package/components/input/currency/props.js +0 -5
  320. package/components/input/default/checkbox/index.js +329 -250
  321. package/components/input/default/checkbox/props.js +0 -5
  322. package/components/input/default/checkboxset/index.d.ts +2 -0
  323. package/components/input/default/checkboxset/index.js +529 -446
  324. package/components/input/default/checkboxset/props.d.ts +4 -0
  325. package/components/input/default/checkboxset/props.js +0 -5
  326. package/components/input/default/checkboxset/utils.js +15 -25
  327. package/components/input/default/radioset/index.d.ts +2 -0
  328. package/components/input/default/radioset/index.js +409 -350
  329. package/components/input/default/radioset/props.d.ts +6 -0
  330. package/components/input/default/radioset/props.js +0 -5
  331. package/components/input/default/switch/index.js +494 -458
  332. package/components/input/default/switch/prop.js +0 -5
  333. package/components/input/epoch/date/components/DatePickerPopover.js +242 -193
  334. package/components/input/epoch/date/index.js +638 -518
  335. package/components/input/epoch/date/props.js +0 -5
  336. package/components/input/epoch/date/styled.js +61 -70
  337. package/components/input/epoch/date/utils.js +67 -115
  338. package/components/input/epoch/datetime/index.js +758 -695
  339. package/components/input/epoch/datetime/props.js +0 -5
  340. package/components/input/epoch/datetime/utils.js +121 -186
  341. package/components/input/epoch/time/index.js +441 -415
  342. package/components/input/epoch/time/props.js +0 -5
  343. package/components/input/epoch/time/utils.js +101 -112
  344. package/components/input/fileupload/Utils.js +70 -97
  345. package/components/input/fileupload/components/ListItems.js +132 -130
  346. package/components/input/fileupload/components/MultiUpload.js +80 -77
  347. package/components/input/fileupload/components/SingleUpload.js +57 -57
  348. package/components/input/fileupload/index.js +253 -178
  349. package/components/input/fileupload/props.js +0 -5
  350. package/components/input/fileupload/useFileUpload.js +209 -258
  351. package/components/input/number/index.js +434 -393
  352. package/components/input/number/props.js +0 -5
  353. package/components/input/rating/index.js +401 -394
  354. package/components/input/rating/props.js +0 -5
  355. package/components/input/select/index.js +408 -463
  356. package/components/input/select/props.js +0 -5
  357. package/components/input/slider/index.js +339 -332
  358. package/components/input/slider/props.js +0 -5
  359. package/components/input/text/index.d.ts +3 -3
  360. package/components/input/text/index.js +438 -475
  361. package/components/input/text/props.d.ts +1 -1
  362. package/components/input/text/props.js +0 -5
  363. package/components/input/text/util.js +82 -222
  364. package/components/input/textarea/index.js +322 -358
  365. package/components/input/textarea/props.js +0 -5
  366. package/components/input/upload/index.js +135 -131
  367. package/components/input/upload/props.js +0 -5
  368. package/components/input/util/index.js +9 -11
  369. package/components/layout/footer/index.js +12 -35
  370. package/components/layout/footer/props.js +0 -5
  371. package/components/layout/header/index.js +12 -38
  372. package/components/layout/header/props.js +0 -5
  373. package/components/layout/leftnav/index.js +38 -44
  374. package/components/layout/leftnav/props.js +0 -5
  375. package/components/layout/rightnav/index.js +12 -36
  376. package/components/layout/rightnav/props.js +0 -5
  377. package/components/layout/topnav/index.js +24 -38
  378. package/components/layout/topnav/props.js +0 -5
  379. package/components/navbar/index.js +119 -98
  380. package/components/navbar/nav/index.js +236 -232
  381. package/components/navbar/nav/props.js +0 -5
  382. package/components/navbar/nav-item/index.js +74 -65
  383. package/components/navbar/nav-item/props.js +0 -5
  384. package/components/navigation/breadcrumb/index.js +38 -61
  385. package/components/navigation/breadcrumb/props.js +0 -5
  386. package/components/navigation/menu/components/ListItems.js +76 -67
  387. package/components/navigation/menu/constants.js +27 -42
  388. package/components/navigation/menu/hooks/useHoverState.hook.js +20 -47
  389. package/components/navigation/menu/hooks/useKeyboardMovements.hook.js +34 -28
  390. package/components/navigation/menu/hooks/useTransformedDataset.hook.js +21 -14
  391. package/components/navigation/menu/index.js +911 -846
  392. package/components/navigation/menu/props.js +0 -5
  393. package/components/navigation/menu/utils/action-task.js +6 -9
  394. package/components/navigation/menu/utils/role-filter.js +41 -56
  395. package/components/navigation/popover/index.js +191 -205
  396. package/components/navigation/popover/props.js +5 -8
  397. package/components/page/content/index.js +9 -31
  398. package/components/page/content/props.js +0 -5
  399. package/components/page/error-boundary/index.js +115 -105
  400. package/components/page/error-boundary/props.js +0 -5
  401. package/components/page/index.js +84 -102
  402. package/components/page/page-content/index.js +21 -30
  403. package/components/page/page-content/props.js +0 -5
  404. package/components/page/partial/index.js +50 -45
  405. package/components/page/partial/props.js +0 -5
  406. package/components/page/partial-container/index.js +81 -107
  407. package/components/page/partial-container/props.d.ts +1 -1
  408. package/components/page/partial-container/props.js +0 -5
  409. package/components/page/props.js +0 -5
  410. package/components/page/toast-container/index.js +20 -41
  411. package/components/page/toast-container/props.js +0 -5
  412. package/components/prefab/container/index.js +60 -53
  413. package/components/prefab/container/props.js +0 -5
  414. package/components/prefab/index.js +76 -61
  415. package/components/prefab/props.js +0 -5
  416. package/context/AppContext.d.ts +1 -1
  417. package/context/AppContext.js +17 -18
  418. package/context/AppSpinnerProvider.js +19 -34
  419. package/context/LayoutProvider.js +54 -57
  420. package/context/LocalizationProvider.js +34 -49
  421. package/context/PrefabContext.js +68 -119
  422. package/context/WidgetProvider.js +160 -166
  423. package/core/app-config.js +0 -1
  424. package/core/app.service.js +200 -327
  425. package/core/appVariablesStore.js +10 -15
  426. package/core/appstore.js +37 -53
  427. package/core/constants/currency-constant.js +81 -83
  428. package/core/constants/events.js +34 -44
  429. package/core/constants/index.js +21 -31
  430. package/core/dialog.service.js +52 -72
  431. package/core/event-notifier.js +94 -131
  432. package/core/formatter/array-formatters.js +18 -32
  433. package/core/formatter/date-formatters.js +140 -204
  434. package/core/formatter/index.js +64 -117
  435. package/core/formatter/number-formatters.js +115 -159
  436. package/core/formatter/security-formatters.js +233 -283
  437. package/core/formatter/string-formatters.js +23 -45
  438. package/core/formatter/types.js +12 -18
  439. package/core/formatters.js +6 -24
  440. package/core/proxy-service.js +242 -306
  441. package/core/script-registry.js +87 -134
  442. package/core/security.service.js +8 -11
  443. package/core/util/compare.js +13 -25
  444. package/core/util/dom.js +32 -63
  445. package/core/util/index.d.ts +5 -0
  446. package/core/util/index.js +95 -95
  447. package/core/util/safe-is-equal.js +42 -94
  448. package/core/util/security.js +114 -153
  449. package/core/util/utils.d.ts +8 -1
  450. package/core/util/utils.js +124 -132
  451. package/core/widget-observer.js +34 -61
  452. package/higherOrder/BaseApp.js +327 -500
  453. package/higherOrder/BaseAppProps.js +0 -5
  454. package/higherOrder/BaseDateTime.js +277 -231
  455. package/higherOrder/BasePage.js +479 -735
  456. package/higherOrder/BasePartial.js +87 -114
  457. package/higherOrder/BasePrefab.js +190 -206
  458. package/higherOrder/DataNav.js +287 -302
  459. package/higherOrder/helper.js +62 -48
  460. package/higherOrder/props.js +0 -5
  461. package/higherOrder/withBaseWrapper.js +123 -168
  462. package/higherOrder/withStandalone.js +28 -26
  463. package/hooks/useAccess.js +113 -289
  464. package/hooks/useAppConfig.js +15 -40
  465. package/hooks/useAuth.js +256 -495
  466. package/hooks/useDataSourceSubscription.d.ts +3 -3
  467. package/hooks/useDataSourceSubscription.js +99 -109
  468. package/hooks/useDebounce.js +28 -56
  469. package/hooks/useDeviceVisibility.js +14 -23
  470. package/hooks/useHttp.d.ts +1 -0
  471. package/hooks/useHttp.js +318 -493
  472. package/libs/index.js +4 -13
  473. package/libs/prefab/index.js +6 -20
  474. package/mui-config/theme-provider.js +9 -17
  475. package/mui-config/theme.js +6 -9
  476. package/package-lock.json +808 -3177
  477. package/package.json +3 -19
  478. package/providers/AppProviders.js +21 -24
  479. package/runtime-dynamic/App.js +65 -93
  480. package/runtime-dynamic/app-initializer.js +207 -400
  481. package/runtime-dynamic/components/ErrorBoundary.js +59 -76
  482. package/runtime-dynamic/components/PageWrapper.js +23 -35
  483. package/runtime-dynamic/components/PrefabPreview.js +40 -69
  484. package/runtime-dynamic/components/partial-content.d.ts +2 -3
  485. package/runtime-dynamic/components/partial-content.js +66 -48
  486. package/runtime-dynamic/components/prefab-content.js +37 -30
  487. package/runtime-dynamic/components/use-dynamic-component.js +62 -150
  488. package/runtime-dynamic/factories/build-base-page-like-component.js +44 -58
  489. package/runtime-dynamic/factories/dynamic-component.d.ts +9 -0
  490. package/runtime-dynamic/factories/dynamic-component.js +83 -0
  491. package/runtime-dynamic/factories/prefab-factory.js +60 -81
  492. package/runtime-dynamic/factories/startup-info.js +12 -25
  493. package/runtime-dynamic/factories/utils.d.ts +1 -9
  494. package/runtime-dynamic/factories/utils.js +47 -130
  495. package/runtime-dynamic/index.js +56 -191
  496. package/runtime-dynamic/main.js +42 -70
  497. package/runtime-dynamic/preview-mode.js +14 -29
  498. package/runtime-dynamic/preview-navigation.js +21 -30
  499. package/runtime-dynamic/preview-path.d.ts +5 -0
  500. package/runtime-dynamic/preview-path.js +13 -0
  501. package/runtime-dynamic/preview-resource-base.js +15 -31
  502. package/runtime-dynamic/registry/component-registry.js +269 -334
  503. package/runtime-dynamic/registry/custom-widget-registry.js +11 -15
  504. package/runtime-dynamic/registry/index.js +24 -63
  505. package/runtime-dynamic/registry/store.d.ts +1 -0
  506. package/runtime-dynamic/registry/store.js +18 -23
  507. package/runtime-dynamic/routes.js +53 -81
  508. package/runtime-dynamic/services/app-extension-provider.js +17 -44
  509. package/runtime-dynamic/services/autolayout-inject.d.ts +4 -0
  510. package/runtime-dynamic/services/autolayout-inject.js +27 -0
  511. package/runtime-dynamic/services/cache.js +27 -33
  512. package/runtime-dynamic/services/compile-render.d.ts +9 -0
  513. package/runtime-dynamic/services/compile-render.js +142 -0
  514. package/runtime-dynamic/services/component-ref-provider.js +70 -124
  515. package/runtime-dynamic/services/css-scoping.js +27 -28
  516. package/runtime-dynamic/services/fragment-url.js +37 -50
  517. package/runtime-dynamic/services/index.js +48 -152
  518. package/runtime-dynamic/services/markup-transpiler.d.ts +2 -2
  519. package/runtime-dynamic/services/markup-transpiler.js +39 -231
  520. package/runtime-dynamic/services/prefab-resources.js +42 -130
  521. package/runtime-dynamic/services/resource-manager.d.ts +2 -1
  522. package/runtime-dynamic/services/resource-manager.js +32 -63
  523. package/runtime-dynamic/services/script-executor.js +50 -61
  524. package/runtime-dynamic/services/variable-factory.js +141 -184
  525. package/runtime-dynamic/services/variable-registry.js +69 -115
  526. package/runtime-dynamic/services/variable-transpiler.js +73 -103
  527. package/runtime-dynamic/shims/next-image.js +79 -50
  528. package/runtime-dynamic/shims/next-link.js +58 -32
  529. package/runtime-dynamic/shims/next-navigation.js +17 -34
  530. package/runtime-dynamic/utils/index.d.ts +2 -0
  531. package/runtime-dynamic/utils/index.js +22 -24
  532. package/store/bindActions/i18nActions.js +16 -18
  533. package/store/index.js +29 -35
  534. package/store/middleware/navigationMiddleware.js +25 -45
  535. package/store/middleware/pendingTabNavigationIntentMiddleware.js +20 -25
  536. package/store/slices/appConfigSlice.js +65 -94
  537. package/store/slices/authSlice.js +317 -471
  538. package/store/slices/i18nSlice.js +169 -168
  539. package/store/slices/navigationSlice.js +22 -20
  540. package/store/util/resolve-path.d.ts +1 -0
  541. package/store/util/resolve-path.js +7 -0
  542. package/store/viewport.service.js +150 -194
  543. package/types/index.js +10 -15
  544. package/utils/attr.js +198 -41
  545. package/utils/custom-expression/index.js +55 -151
  546. package/utils/custom-expression/parser.js +106 -182
  547. package/utils/dataset-util.js +113 -154
  548. package/utils/eval-expression.js +10 -19
  549. package/utils/form-state.util.js +60 -118
  550. package/utils/form-utils.js +49 -190
  551. package/utils/format-util.js +113 -184
  552. package/utils/layoutsize-util.js +11 -17
  553. package/utils/lib-error-skipper.js +54 -52
  554. package/utils/page-params-util.js +50 -40
  555. package/utils/pending-tab-navigation-intent.js +7 -17
  556. package/utils/resource-url.js +8 -19
  557. package/utils/state-persistance.js +136 -253
  558. package/utils/style-utils.d.ts +2 -0
  559. package/utils/style-utils.js +25 -74
  560. package/utils/transformedDataset-utils.js +353 -381
  561. package/utils/widget-cleanup-util.js +42 -74
  562. package/utils/widgets.js +19 -31
  563. package/variables/base-variable.js +117 -166
  564. package/variables/constants.js +5 -8
  565. package/variables/crud-variable.js +150 -181
  566. package/variables/live-variable.d.ts +1 -1
  567. package/variables/live-variable.js +140 -174
  568. package/variables/metadata.service.js +74 -116
  569. package/variables/model-variable.js +68 -78
  570. package/variables/service-variable.js +171 -285
  571. package/wm-namespace.js +11 -14
  572. package/components/chart/src/css.d.js +0 -1
  573. package/tsconfig.declaration.tsbuildinfo +0 -1
  574. package/types/global.d.js +0 -3
@@ -1,167 +1,109 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.unregisterFormField = exports.shouldRegisterFormField = exports.registerFormFieldSafe = exports.registerFormField = void 0;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _get = _interopRequireDefault(require("lodash-es/get"));
10
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /**
12
- * Form State Utility
13
- *
14
- * Handles form field registration and management within the widget context.
15
- * This utility provides centralized logic for registering form fields and form widgets
16
- * to their parent form context.
17
- */
18
- /**
19
- * Interface for widget properties related to form field registration
20
- */
21
-
22
- /**
23
- * Interface for the context structure where form fields are registered
24
- */
25
-
26
- /**
27
- * Checks if a widget is a form field (not a formWidget wrapper)
28
- * @param widgetName - The name of the widget
29
- * @returns true if the widget is NOT a formWidget wrapper
30
- */
31
- var isFormField = function isFormField(widgetName) {
32
- return !(widgetName !== null && widgetName !== void 0 && widgetName.includes("formWidget"));
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
33
16
  };
34
-
35
- /**
36
- * Checks if a widget should be registered as a form field
37
- * @param widget - The widget object to check
38
- * @returns true if the widget should be registered as a form field
39
- */
40
- var shouldRegisterFormField = exports.shouldRegisterFormField = function shouldRegisterFormField(widget) {
41
- var isField = (0, _get["default"])(widget, "field", "false") === "true";
42
- var hasFormName = Boolean(widget.formName);
43
- var isNotFormWidget = isFormField(widget.name);
17
+ import get from "lodash-es/get";
18
+ const isFormField = (widgetName) => {
19
+ return !(widgetName == null ? void 0 : widgetName.includes("formWidget"));
20
+ };
21
+ const shouldRegisterFormField = (widget) => {
22
+ const isField = get(widget, "field", "false") === "true";
23
+ const hasFormName = Boolean(widget.formName);
24
+ const isNotFormWidget = isFormField(widget.name);
44
25
  return isField && hasFormName && isNotFormWidget;
45
26
  };
46
- var hasParentForm = function hasParentForm(formName) {
27
+ const hasParentForm = (formName) => {
47
28
  return Boolean();
48
29
  };
49
-
50
- /**
51
- * Registers a form field widget with its parent form in the context
52
- * This creates references in both formfields and formWidgets collections
53
- *
54
- * @param widgetsContext - The Widgets context object where forms are stored
55
- * @param widget - The widget/proxy to register
56
- * @param widgetProps - The widget properties containing form metadata
57
- */
58
- var registerFormField = exports.registerFormField = function registerFormField(widgetsContext, widget, widgetProps, newContext) {
59
- var _widgetsContext$formN;
60
- var formName = widgetProps === null || widgetProps === void 0 ? void 0 : widgetProps.formName;
30
+ const registerFormField = (widgetsContext, widget, widgetProps, newContext) => {
31
+ var _a;
32
+ const formName = widgetProps == null ? void 0 : widgetProps.formName;
61
33
  if (!formName || !shouldRegisterFormField(widgetProps)) {
62
34
  return;
63
35
  }
64
- var formKey = widgetProps.formKey || widgetProps.fieldName;
65
- var fieldName = widgetProps.fieldName;
36
+ const formKey = widgetProps.formKey || widgetProps.fieldName;
37
+ const fieldName = widgetProps.fieldName;
66
38
  if (!formKey || !fieldName) {
67
39
  return;
68
40
  }
69
-
70
- // Ensure the form structure exists in the context
71
41
  if (!widgetsContext[formName]) {
72
42
  return;
73
43
  }
74
44
  widgetsContext[formName].formfields = widgetsContext[formName].formfields || {};
75
45
  widgetsContext[formName].formWidgets = widgetsContext[formName].formWidgets || {};
76
-
77
- // Register the field using the formKey (primary key)
78
46
  widgetsContext[formName].formfields[formKey] = widget;
79
-
80
- // Register using fieldName for direct access
81
47
  widgetsContext[formName].formWidgets[fieldName] = widget;
82
-
83
- // Register formWidget variants (for form field wrapper components)
84
- widgetsContext[formName].formfields["".concat(fieldName, "_formWidget")] = widget;
85
- widgetsContext[formName].formWidgets["".concat(fieldName, "_formWidget")] = widget;
86
- var parentFormName = (_widgetsContext$formN = widgetsContext[formName]) === null || _widgetsContext$formN === void 0 ? void 0 : _widgetsContext$formN.parentForm;
87
- // NOTE: Prefab form field registration via CHILD_FORM_FIELD_REGISTER_EMIT has been removed.
88
- // Prefab forms now use ParentFormDataContext.registerChildField callback instead,
89
- // which is called by the form component when it registers fields in its context.
90
- // For non-prefab parent forms, direct registration below still works.
48
+ widgetsContext[formName].formfields[`${fieldName}_formWidget`] = widget;
49
+ widgetsContext[formName].formWidgets[`${fieldName}_formWidget`] = widget;
50
+ const parentFormName = (_a = widgetsContext[formName]) == null ? void 0 : _a.parentForm;
91
51
  if (parentFormName && widgetsContext[parentFormName]) {
92
52
  widgetsContext[parentFormName].formfields = widgetsContext[parentFormName].formfields || {};
93
53
  widgetsContext[parentFormName].formWidgets = widgetsContext[parentFormName].formWidgets || {};
94
54
  widgetsContext[parentFormName].formfields[formKey] = widget;
95
55
  widgetsContext[parentFormName].formWidgets[fieldName] = widget;
96
- widgetsContext[parentFormName].formfields["".concat(formKey, "_formWidget")] = widget;
97
- widgetsContext[parentFormName].formWidgets["".concat(fieldName, "_formWidget")] = widget;
56
+ widgetsContext[parentFormName].formfields[`${formKey}_formWidget`] = widget;
57
+ widgetsContext[parentFormName].formWidgets[`${fieldName}_formWidget`] = widget;
98
58
  }
99
59
  };
100
-
101
- /**
102
- * Ensures the form structure exists in the widgets context and registers a form field
103
- * with safe object spreading to merge properties
104
- *
105
- * @param widgetsContext - The Widgets context object where forms are stored
106
- * @param fieldProps - The field properties to register
107
- */
108
- var registerFormFieldSafe = exports.registerFormFieldSafe = function registerFormFieldSafe(widgetsContext, fieldProps) {
109
- var _widgetsContext$formN7;
110
- var formName = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.formName;
60
+ const registerFormFieldSafe = (widgetsContext, fieldProps) => {
61
+ var _a;
62
+ const formName = fieldProps == null ? void 0 : fieldProps.formName;
111
63
  if (!formName || !shouldRegisterFormField(fieldProps)) {
112
64
  return;
113
65
  }
114
- var formKey = fieldProps.formKey || fieldProps.fieldName;
115
- var fieldName = fieldProps.fieldName;
66
+ const formKey = fieldProps.formKey || fieldProps.fieldName;
67
+ const fieldName = fieldProps.fieldName;
116
68
  if (!formKey || !fieldName) {
117
69
  return;
118
70
  }
119
- function register(formName, formKey, fieldName, fieldProps) {
120
- var _widgetsContext$formN2, _widgetsContext$formN3, _widgetsContext$formN4, _widgetsContext$formN5, _widgetsContext$formN6;
121
- // Ensure all nested structures exist using nullish coalescing
122
- (_widgetsContext$formN2 = widgetsContext[formName]) !== null && _widgetsContext$formN2 !== void 0 ? _widgetsContext$formN2 : widgetsContext[formName] = {
71
+ function register(formName2, formKey2, fieldName2, fieldProps2) {
72
+ var _a2, _b, _c, _d, _e;
73
+ (_a2 = widgetsContext[formName2]) != null ? _a2 : widgetsContext[formName2] = {
123
74
  formfields: {},
124
75
  formWidgets: {}
125
76
  };
126
- (_widgetsContext$formN4 = (_widgetsContext$formN3 = widgetsContext[formName]).formfields) !== null && _widgetsContext$formN4 !== void 0 ? _widgetsContext$formN4 : _widgetsContext$formN3.formfields = {};
127
- (_widgetsContext$formN6 = (_widgetsContext$formN5 = widgetsContext[formName]).formWidgets) !== null && _widgetsContext$formN6 !== void 0 ? _widgetsContext$formN6 : _widgetsContext$formN5.formWidgets = {};
128
-
129
- // Only add if not already present
130
- widgetsContext[formName].formfields[formKey] = _objectSpread({}, fieldProps);
131
- widgetsContext[formName].formWidgets[fieldName] = _objectSpread({}, fieldProps);
132
- widgetsContext[formName].formfields["".concat(fieldName, "_formWidget")] = _objectSpread({}, fieldProps);
133
- widgetsContext[formName].formWidgets["".concat(fieldName, "_formWidget")] = _objectSpread({}, fieldProps);
77
+ (_c = (_b = widgetsContext[formName2]).formfields) != null ? _c : _b.formfields = {};
78
+ (_e = (_d = widgetsContext[formName2]).formWidgets) != null ? _e : _d.formWidgets = {};
79
+ widgetsContext[formName2].formfields[formKey2] = __spreadValues({}, fieldProps2);
80
+ widgetsContext[formName2].formWidgets[fieldName2] = __spreadValues({}, fieldProps2);
81
+ widgetsContext[formName2].formfields[`${fieldName2}_formWidget`] = __spreadValues({}, fieldProps2);
82
+ widgetsContext[formName2].formWidgets[`${fieldName2}_formWidget`] = __spreadValues({}, fieldProps2);
134
83
  }
135
84
  register(formName, formKey, fieldName, fieldProps);
136
- var parentForm = (_widgetsContext$formN7 = widgetsContext[formName]) === null || _widgetsContext$formN7 === void 0 ? void 0 : _widgetsContext$formN7.parentForm;
85
+ const parentForm = (_a = widgetsContext[formName]) == null ? void 0 : _a.parentForm;
137
86
  if (parentForm) {
138
87
  register(parentForm, formKey, fieldName, fieldProps);
139
88
  }
140
89
  };
141
-
142
- /**
143
- * Unregisters a form field from its parent form
144
- *
145
- * @param widgetsContext - The Widgets context object where forms are stored
146
- * @param formName - The name of the parent form
147
- * @param fieldName - The name of the field to unregister
148
- * @param formKey - Optional form key (defaults to fieldName if not provided)
149
- */
150
- var unregisterFormField = exports.unregisterFormField = function unregisterFormField(widgetsContext, formName, fieldName, formKey) {
90
+ const unregisterFormField = (widgetsContext, formName, fieldName, formKey) => {
151
91
  if (!widgetsContext[formName]) {
152
92
  return;
153
93
  }
154
- var keyToRemove = formKey || fieldName;
155
-
156
- // Remove from formfields
94
+ const keyToRemove = formKey || fieldName;
157
95
  if (widgetsContext[formName].formfields) {
158
96
  delete widgetsContext[formName].formfields[keyToRemove];
159
- delete widgetsContext[formName].formfields["".concat(fieldName, "_formWidget")];
97
+ delete widgetsContext[formName].formfields[`${fieldName}_formWidget`];
160
98
  }
161
-
162
- // Remove from formWidgets
163
99
  if (widgetsContext[formName].formWidgets) {
164
100
  delete widgetsContext[formName].formWidgets[fieldName];
165
- delete widgetsContext[formName].formWidgets["".concat(fieldName, "_formWidget")];
101
+ delete widgetsContext[formName].formWidgets[`${fieldName}_formWidget`];
166
102
  }
167
- };
103
+ };
104
+ export {
105
+ registerFormField,
106
+ registerFormFieldSafe,
107
+ shouldRegisterFormField,
108
+ unregisterFormField
109
+ };
@@ -1,232 +1,91 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.shouldSkipFieldKey = exports.loginErrorMessage = exports.invokeFormEvent = exports.getFormWidget = exports.getFormProps = exports.getFormData = exports.getErrorTypes = exports.formValidate = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
- var _keys = _interopRequireDefault(require("lodash-es/keys"));
12
- /**
13
- * Form utility functions for centralizing form operations across widgets
14
- */
15
-
16
- /**
17
- * The `loginErrorMessage` function handles various scenarios to generate an appropriate error message
18
- * for login failures, including extracting from standard error response structures and providing
19
- * fallback options.
20
- * @param {any} error - The `error` parameter in the `loginErrorMessage` function is used to handle
21
- * different types of errors that may occur during the login process. It can be of any type, such as a
22
- * string, object, or other data types, and the function provides different logic to extract and handle
23
- * error messages based
24
- * @param [appLocale] - The `appLocale` parameter is an optional object that contains localized strings
25
- * for different languages or regions. It is used to provide localized error messages based on the
26
- * user's preferred language or region. If a specific error message is not provided, the function will
27
- * fallback to a default error message stored in the `
28
- * @param {string} [errorMessage] - The `errorMessage` parameter in the `loginErrorMessage` function is
29
- * a string that can be passed directly to override any other error message handling logic in the
30
- * function. If a value is provided for `errorMessage`, it will be returned immediately without going
31
- * through the other error handling steps in the function.
32
- * @returns The function `loginErrorMessage` returns a string message based on the provided error
33
- * object, appLocale object, and optional errorMessage string. The function follows these steps to
34
- * determine the message to return:
35
- */
36
- var loginErrorMessage = exports.loginErrorMessage = function loginErrorMessage(error, appLocale, errorMessage) {
37
- // 1. If a direct error message is passed, use it
1
+ import keys from "lodash-es/keys";
2
+ const loginErrorMessage = (error, appLocale, errorMessage) => {
3
+ var _a, _b, _c;
38
4
  if (errorMessage) return errorMessage;
39
-
40
- // 2. If it's a plain string error
41
5
  if (typeof error === "string") {
42
6
  return error;
43
7
  }
44
-
45
- // 3. Try extracting from standard error response structure
46
- if (error && (0, _typeof2["default"])(error) === "object") {
47
- var _error$data;
48
- var serverError = error === null || error === void 0 || (_error$data = error.data) === null || _error$data === void 0 || (_error$data = _error$data.errors) === null || _error$data === void 0 || (_error$data = _error$data.error) === null || _error$data === void 0 ? void 0 : _error$data[0];
8
+ if (error && typeof error === "object") {
9
+ const serverError = (_c = (_b = (_a = error == null ? void 0 : error.data) == null ? void 0 : _a.errors) == null ? void 0 : _b.error) == null ? void 0 : _c[0];
49
10
  if (serverError) {
50
- var message = serverError.message,
51
- _serverError$paramete = serverError.parameters,
52
- parameters = _serverError$paramete === void 0 ? [] : _serverError$paramete;
11
+ const { message, parameters = [] } = serverError;
53
12
  if (typeof message === "string") {
54
- // Replace {0}, {1}, {2}, ... with corresponding parameters dynamically
55
- return message.replace(/{(\d+)}/g, function (match, index) {
56
- var param = parameters[+index];
57
- return param !== undefined ? param : match;
13
+ return message.replace(/{(\d+)}/g, (match, index) => {
14
+ const param = parameters[+index];
15
+ return param !== void 0 ? param : match;
58
16
  });
59
17
  }
60
-
61
- // If no message, but parameters exist, just join them
62
18
  if (parameters.length) {
63
19
  return parameters.join(", ");
64
20
  }
65
21
  }
66
-
67
- // Fallback to error.message or .toString()
68
22
  return error.message || error.toString();
69
23
  }
70
-
71
- // 4. Fallback to localized or default error message
72
- return (appLocale === null || appLocale === void 0 ? void 0 : appLocale.LABEL_INVALID_USERNAME_OR_PASSWORD) || "Invalid username or password";
24
+ return (appLocale == null ? void 0 : appLocale.LABEL_INVALID_USERNAME_OR_PASSWORD) || "Invalid username or password";
73
25
  };
74
-
75
- /**
76
- * Get form properties safely from a form reference
77
- */
78
- var getFormProps = exports.getFormProps = function getFormProps(formRef) {
79
- var _formRef$current;
80
- if (!((_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && _formRef$current.getProps)) {
26
+ const getFormProps = (formRef) => {
27
+ var _a;
28
+ if (!((_a = formRef.current) == null ? void 0 : _a.getProps)) {
81
29
  return null;
82
30
  }
83
31
  return formRef.current.getProps();
84
32
  };
85
-
86
- /**
87
- * Get form widget from listener widgets collection
88
- */
89
- var getFormWidget = exports.getFormWidget = function getFormWidget(formName, listener) {
90
- var _listener$Widgets;
91
- return listener === null || listener === void 0 || (_listener$Widgets = listener.Widgets) === null || _listener$Widgets === void 0 ? void 0 : _listener$Widgets[formName];
33
+ const getFormWidget = (formName, listener) => {
34
+ var _a;
35
+ return (_a = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _a[formName];
92
36
  };
93
-
94
- /**
95
- * Get form data from form reference with fallback
96
- */
97
- var getFormData = exports.getFormData = function getFormData(formRef) {
98
- if (!formRef.current) return {
99
- values: {},
100
- isValid: false
101
- };
37
+ const getFormData = (formRef) => {
38
+ if (!formRef.current) return { values: {}, isValid: false };
102
39
  if (formRef.current.getFormData) {
103
40
  return formRef.current.getFormData();
104
41
  }
105
-
106
- // Fallback for legacy forms
107
42
  return {
108
43
  values: {},
109
44
  isValid: true
110
45
  };
111
46
  };
112
- var formValidate = exports.formValidate = /*#__PURE__*/function () {
113
- var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(formRef) {
114
- var _formRef$current$vali, _formRef$current2;
115
- return _regenerator["default"].wrap(function _callee$(_context) {
116
- while (1) switch (_context.prev = _context.next) {
117
- case 0:
118
- if (formRef.current) {
119
- _context.next = 2;
120
- break;
121
- }
122
- return _context.abrupt("return", false);
123
- case 2:
124
- _context.next = 4;
125
- return (_formRef$current$vali = (_formRef$current2 = formRef.current).validateForm) === null || _formRef$current$vali === void 0 ? void 0 : _formRef$current$vali.call(_formRef$current2);
126
- case 4:
127
- _context.t0 = _context.sent;
128
- if (_context.t0) {
129
- _context.next = 7;
130
- break;
131
- }
132
- _context.t0 = false;
133
- case 7:
134
- return _context.abrupt("return", _context.t0);
135
- case 8:
136
- case "end":
137
- return _context.stop();
138
- }
139
- }, _callee);
140
- }));
141
- return function formValidate(_x) {
142
- return _ref.apply(this, arguments);
143
- };
144
- }();
145
-
146
- /**
147
- * Invoke form events in a centralized way
148
- * @param formRef - Reference to the form element
149
- * @param listener - Widget listener containing form widgets
150
- * @param eventName - Name of the event to invoke ('onSubmit', 'onBeforeSubmit', etc.)
151
- * @param event - The event object
152
- * @param formData - Optional form data to pass to the event handler
153
- * @returns The result from the event handler (boolean, string, object, or undefined)
154
- */
155
- var invokeFormEvent = exports.invokeFormEvent = /*#__PURE__*/function () {
156
- var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(formRef, listener, eventName, event, formData) {
157
- var formProps, formName, eventHandler, formWidget, result;
158
- return _regenerator["default"].wrap(function _callee2$(_context2) {
159
- while (1) switch (_context2.prev = _context2.next) {
160
- case 0:
161
- formProps = getFormProps(formRef);
162
- if (formProps) {
163
- _context2.next = 3;
164
- break;
165
- }
166
- return _context2.abrupt("return");
167
- case 3:
168
- formName = formProps.name, eventHandler = formProps[eventName];
169
- if (!(eventHandler && formName)) {
170
- _context2.next = 10;
171
- break;
172
- }
173
- formWidget = getFormWidget(formName, listener);
174
- _context2.next = 8;
175
- return eventHandler(event, formWidget, formData.values || {});
176
- case 8:
177
- result = _context2.sent;
178
- return _context2.abrupt("return", result);
179
- case 10:
180
- case "end":
181
- return _context2.stop();
182
- }
183
- }, _callee2);
184
- }));
185
- return function invokeFormEvent(_x2, _x3, _x4, _x5, _x6) {
186
- return _ref2.apply(this, arguments);
187
- };
188
- }();
189
-
190
- /**
191
- * Extracts error types from react-hook-form error object.
192
- * react-hook-form error structure: { type: 'required', message: '...' }
193
- * or { types: { required: '...', minLength: '...' } }
194
- * @param fieldErrors - The error object from react-hook-form
195
- * @returns Array of error type strings
196
- */
197
- var getErrorTypes = exports.getErrorTypes = function getErrorTypes(fieldErrors) {
47
+ const formValidate = async (formRef) => {
48
+ var _a, _b;
49
+ if (!formRef.current) return false;
50
+ return await ((_b = (_a = formRef.current).validateForm) == null ? void 0 : _b.call(_a)) || false;
51
+ };
52
+ const invokeFormEvent = async (formRef, listener, eventName, event, formData) => {
53
+ const formProps = getFormProps(formRef);
54
+ if (!formProps) return;
55
+ const { name: formName, [eventName]: eventHandler } = formProps;
56
+ if (eventHandler && formName) {
57
+ const formWidget = getFormWidget(formName, listener);
58
+ const result = await eventHandler(event, formWidget, formData.values || {});
59
+ return result;
60
+ }
61
+ };
62
+ const getErrorTypes = (fieldErrors) => {
198
63
  if (!fieldErrors) return [];
199
-
200
- // Handle multiple errors (when using criteriaMode: 'all')
201
64
  if (fieldErrors.types) {
202
- return (0, _keys["default"])(fieldErrors.types);
65
+ return keys(fieldErrors.types);
203
66
  }
204
-
205
- // Handle single error
206
67
  if (fieldErrors.type) {
207
68
  return [fieldErrors.type];
208
69
  }
209
- return (0, _keys["default"])(fieldErrors);
70
+ return keys(fieldErrors);
210
71
  };
211
-
212
- /**
213
- * Checks if a field key should be skipped during validation messages iteration.
214
- * - Skips formWidget entries (duplicates)
215
- * - Skips underscore variants if dot notation exists (e.g., Department_deptCode when Department.deptCode exists)
216
- * @param fieldKey - The field key to check
217
- * @param allFieldKeys - All field keys in the form
218
- * @returns true if the field should be skipped
219
- */
220
- var shouldSkipFieldKey = exports.shouldSkipFieldKey = function shouldSkipFieldKey(fieldKey, allFieldKeys) {
221
- // Skip formWidget entries (they are duplicates)
72
+ const shouldSkipFieldKey = (fieldKey, allFieldKeys) => {
222
73
  if (fieldKey.includes("formWidget")) return true;
223
-
224
- // Skip underscore variants if dot notation exists (avoid duplicates)
225
74
  if (fieldKey.includes("_")) {
226
- var dotNotationKey = fieldKey.replace(/_/g, ".");
75
+ const dotNotationKey = fieldKey.replace(/_/g, ".");
227
76
  if (allFieldKeys.includes(dotNotationKey)) {
228
77
  return true;
229
78
  }
230
79
  }
231
80
  return false;
232
- };
81
+ };
82
+ export {
83
+ formValidate,
84
+ getErrorTypes,
85
+ getFormData,
86
+ getFormProps,
87
+ getFormWidget,
88
+ invokeFormEvent,
89
+ loginErrorMessage,
90
+ shouldSkipFieldKey
91
+ };