@wavemaker-ai/react-runtime 1.0.0-rc.309 → 1.0.0-rc.314

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 +822 -3191
  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,208 +1,207 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof3 = require("@babel/runtime/helpers/typeof");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = exports.WmRating = void 0;
9
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- var _react = _interopRequireWildcard(require("react"));
12
- var _clsx = _interopRequireDefault(require("clsx"));
13
- var _Tooltip = _interopRequireDefault(require("@mui/material/Tooltip"));
14
- var _lodashEs = require("lodash-es");
15
- var _withBaseWrapper = require("@wavemaker-ai/react-runtime/higherOrder/withBaseWrapper");
16
- var _material = require("@mui/material");
17
- var _transformedDatasetUtils = require("@wavemaker-ai/react-runtime/utils/transformedDataset-utils");
18
- var _withFormController = _interopRequireDefault(require("@wavemaker-ai/react-runtime/components/data/form/form-controller/withFormController"));
19
- var _withStandalone = _interopRequireDefault(require("@wavemaker-ai/react-runtime/higherOrder/withStandalone"));
20
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof3(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
21
- var __jsx = _react["default"].createElement;
22
- 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; }
23
- 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; }
24
- var DEFAULT_MAX_VALUE = 5;
25
- var DEFAULT_ICON_CLASS = {
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;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { jsx, jsxs } from "react/jsx-runtime";
21
+ import { memo, useState, useEffect, useRef, useCallback } from "react";
22
+ import clsx from "clsx";
23
+ import Tooltip from "@mui/material/Tooltip";
24
+ import { isEmpty, isEqual } from "lodash-es";
25
+ import { withBaseWrapper } from "../../../higherOrder/withBaseWrapper";
26
+ import { Box } from "@mui/material";
27
+ import { transformDataset } from "../../../utils/transformedDataset-utils";
28
+ import withFormController from "../../data/form/form-controller/withFormController";
29
+ import withStandalone from "../../../higherOrder/withStandalone";
30
+ const DEFAULT_MAX_VALUE = 5;
31
+ const DEFAULT_ICON_CLASS = {
26
32
  active: "wi wi-star",
27
33
  inactive: "wi wi-star-border"
28
34
  };
29
- var DEFAULT_COLORS = {
35
+ const DEFAULT_COLORS = {
30
36
  inactive: "#ccc"
31
37
  };
32
- var WmRating = /*#__PURE__*/(0, _react.memo)(function (props) {
33
- var _props$tabindex;
34
- var _props$maxvalue = props.maxvalue,
35
- maxvalue = _props$maxvalue === void 0 ? DEFAULT_MAX_VALUE : _props$maxvalue,
36
- name = props.name,
37
- caption = props.caption,
38
- readonly = props.readonly,
39
- _props$showcaptions = props.showcaptions,
40
- showcaptions = _props$showcaptions === void 0 ? true : _props$showcaptions,
41
- _props$show = props.show,
42
- show = _props$show === void 0 ? true : _props$show,
43
- iconcolor = props.iconcolor,
44
- iconsize = props.iconsize,
45
- _props$activeiconclas = props.activeiconclass,
46
- activeiconclass = _props$activeiconclas === void 0 ? DEFAULT_ICON_CLASS.active : _props$activeiconclas,
47
- _props$inactiveiconcl = props.inactiveiconclass,
48
- inactiveiconclass = _props$inactiveiconcl === void 0 ? DEFAULT_ICON_CLASS.inactive : _props$inactiveiconcl,
49
- _props$datasetItems = props.datasetItems,
50
- datasetItems = _props$datasetItems === void 0 ? [] : _props$datasetItems,
51
- value = props.value,
52
- _props$datafield = props.datafield,
53
- datafield = _props$datafield === void 0 ? "index" : _props$datafield,
54
- displayfield = props.displayfield,
55
- displaylabel = props.displaylabel,
56
- onChange = props.onChange,
57
- displayexpression = props.displayexpression,
58
- _props$invokeEventCal = props.invokeEventCallback,
59
- invokeEventCallback = _props$invokeEventCal === void 0 ? function () {} : _props$invokeEventCal,
60
- propsSetDatasetItems = props.setDatasetItems,
61
- width = props.width,
62
- datavalue = props.datavalue,
63
- height = props.height,
64
- dataset = props.dataset,
65
- styles = props.styles,
66
- listener = props.listener;
67
-
68
- // State management
69
- var _useState = (0, _react.useState)(0),
70
- selectedRatingValue = _useState[0],
71
- setSelectedRatingValue = _useState[1];
72
- var _useState2 = (0, _react.useState)(null),
73
- hoveredRatingValue = _useState2[0],
74
- setHoveredRatingValue = _useState2[1];
75
- var _useState3 = (0, _react.useState)([]),
76
- ratingItems = _useState3[0],
77
- setRatingItems = _useState3[1];
78
- var _useState4 = (0, _react.useState)(caption || ""),
79
- currentCaption = _useState4[0],
80
- setCurrentCaption = _useState4[1];
81
- var _useState5 = (0, _react.useState)([]),
82
- processedDataset = _useState5[0],
83
- setProcessedDataset = _useState5[1];
84
- var _useState6 = (0, _react.useState)(false),
85
- hover = _useState6[0],
86
- setHover = _useState6[1];
87
- var ratingsRef = (0, _react.useRef)(null);
88
- var previousValue = (0, _react.useRef)(value);
89
- var isInternalChange = (0, _react.useRef)(false); // Track internal changes to prevent double listener.onChange calls
90
-
91
- // Helper functions
92
- var setDatasetItems = (0, _react.useCallback)(function (items) {
93
- if (propsSetDatasetItems) {
94
- propsSetDatasetItems(items);
95
- }
96
- }, [propsSetDatasetItems]);
97
- var updateCaptionElement = (0, _react.useCallback)(function (text) {
38
+ const WmRating = memo((props) => {
39
+ var _a;
40
+ const {
41
+ maxvalue = DEFAULT_MAX_VALUE,
42
+ name,
43
+ caption,
44
+ readonly,
45
+ showcaptions = true,
46
+ show = true,
47
+ iconcolor,
48
+ iconsize,
49
+ activeiconclass = DEFAULT_ICON_CLASS.active,
50
+ inactiveiconclass = DEFAULT_ICON_CLASS.inactive,
51
+ datasetItems = [],
52
+ value,
53
+ datafield = "index",
54
+ displayfield,
55
+ displaylabel,
56
+ onChange,
57
+ displayexpression,
58
+ invokeEventCallback = () => {
59
+ },
60
+ setDatasetItems: propsSetDatasetItems,
61
+ width,
62
+ datavalue,
63
+ height,
64
+ dataset,
65
+ styles,
66
+ listener
67
+ } = props;
68
+ const [selectedRatingValue, setSelectedRatingValue] = useState(0);
69
+ const [hoveredRatingValue, setHoveredRatingValue] = useState(null);
70
+ const [ratingItems, setRatingItems] = useState([]);
71
+ const [currentCaption, setCurrentCaption] = useState(caption || "");
72
+ const [processedDataset, setProcessedDataset] = useState([]);
73
+ const [hover, setHover] = useState(false);
74
+ const ratingsRef = useRef(null);
75
+ const previousValue = useRef(value);
76
+ const isInternalChange = useRef(false);
77
+ const setDatasetItems = useCallback(
78
+ (items) => {
79
+ if (propsSetDatasetItems) {
80
+ propsSetDatasetItems(items);
81
+ }
82
+ },
83
+ [propsSetDatasetItems]
84
+ );
85
+ const updateCaptionElement = useCallback((text) => {
98
86
  setCurrentCaption(text);
99
87
  }, []);
100
- var isStarActive = (0, _react.useCallback)(function (index) {
101
- return index <= datavalue;
102
- }, [datavalue]);
103
- var isStarHovered = (0, _react.useCallback)(function (index) {
104
- return hoveredRatingValue !== null && index <= hoveredRatingValue;
105
- }, [hoveredRatingValue]);
106
- var getStarState = (0, _react.useCallback)(function (index) {
107
- var isActive = isStarActive(index);
108
- var isHovered = isStarHovered(index);
109
- var labelColor = isActive ? iconcolor !== null && iconcolor !== void 0 ? iconcolor : DEFAULT_COLORS.inactive : DEFAULT_COLORS.inactive;
110
- var borderColorVar = isHovered ? iconcolor !== null && iconcolor !== void 0 ? iconcolor : "transparent" : "transparent";
111
- var starStyle = _objectSpread({
112
- "--wm-rating-star-color": labelColor,
113
- "--wm-rating-star-border-color": borderColorVar
114
- }, iconsize ? {
115
- "--wm-rating-star-font-size": iconsize
116
- } : {});
117
- return {
118
- isActive: isActive,
119
- isHovered: isHovered,
120
- iconClass: isActive ? activeiconclass : inactiveiconclass,
121
- starStyle: starStyle
122
- };
123
- }, [isStarActive, isStarHovered, iconcolor, activeiconclass, inactiveiconclass, iconsize]);
124
-
125
- // Event handlers
126
- var invokeOnChange = (0, _react.useCallback)(function (newValue) {
127
- var _listener$Widgets;
128
- var oldValue = previousValue.current;
129
- if (invokeEventCallback) {
130
- invokeEventCallback("change", {
131
- value: newValue,
132
- oldValue: oldValue
133
- });
134
- }
135
- onChange === null || onChange === void 0 || onChange(undefined, listener === null || listener === void 0 || (_listener$Widgets = listener.Widgets) === null || _listener$Widgets === void 0 ? void 0 : _listener$Widgets[name], newValue, oldValue);
136
- }, [onChange, invokeEventCallback]);
137
- var handleMouseLeave = (0, _react.useCallback)(function () {
88
+ const isStarActive = useCallback(
89
+ (index) => {
90
+ return index <= datavalue;
91
+ },
92
+ [datavalue]
93
+ );
94
+ const isStarHovered = useCallback(
95
+ (index) => {
96
+ return hoveredRatingValue !== null && index <= hoveredRatingValue;
97
+ },
98
+ [hoveredRatingValue]
99
+ );
100
+ const getStarState = useCallback(
101
+ (index) => {
102
+ const isActive = isStarActive(index);
103
+ const isHovered = isStarHovered(index);
104
+ const labelColor = isActive ? iconcolor != null ? iconcolor : DEFAULT_COLORS.inactive : DEFAULT_COLORS.inactive;
105
+ const borderColorVar = isHovered ? iconcolor != null ? iconcolor : "transparent" : "transparent";
106
+ const starStyle = __spreadValues({
107
+ "--wm-rating-star-color": labelColor,
108
+ "--wm-rating-star-border-color": borderColorVar
109
+ }, iconsize ? { "--wm-rating-star-font-size": iconsize } : {});
110
+ return {
111
+ isActive,
112
+ isHovered,
113
+ iconClass: isActive ? activeiconclass : inactiveiconclass,
114
+ starStyle
115
+ };
116
+ },
117
+ [isStarActive, isStarHovered, iconcolor, activeiconclass, inactiveiconclass, iconsize]
118
+ );
119
+ const invokeOnChange = useCallback(
120
+ (newValue) => {
121
+ var _a2;
122
+ const oldValue = previousValue.current;
123
+ if (invokeEventCallback) {
124
+ invokeEventCallback("change", { value: newValue, oldValue });
125
+ }
126
+ onChange == null ? void 0 : onChange(
127
+ void 0,
128
+ (_a2 = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _a2[name],
129
+ newValue,
130
+ oldValue
131
+ );
132
+ },
133
+ [onChange, invokeEventCallback]
134
+ );
135
+ const handleMouseLeave = useCallback(() => {
138
136
  setHoveredRatingValue(null);
139
- var selectedItem = ratingItems.find(function (item) {
140
- return item.index === selectedRatingValue;
141
- });
137
+ const selectedItem = ratingItems.find((item) => item.index === selectedRatingValue);
142
138
  updateCaptionElement(selectedItem ? selectedItem.label : currentCaption || caption || "");
143
139
  }, [ratingItems, selectedRatingValue, currentCaption, updateCaptionElement, caption]);
144
- var handleMouseOver = (0, _react.useCallback)(function (rate) {
145
- if (readonly) return;
146
- setHoveredRatingValue(rate.index);
147
- updateCaptionElement(rate.label);
148
- }, [readonly, updateCaptionElement]);
149
- var handleRatingClick = (0, _react.useCallback)(function (rate) {
150
- var _listener$onChange;
151
- if (readonly) return;
152
- var newRating = rate.index === selectedRatingValue ? 0 : rate.index;
153
-
154
- // Mark this as an internal change to prevent duplicate listener.onChange from onDatavalueChange
155
- isInternalChange.current = true;
156
- setSelectedRatingValue(newRating);
157
- listener === null || listener === void 0 || (_listener$onChange = listener.onChange) === null || _listener$onChange === void 0 || _listener$onChange.call(listener, name, {
158
- prevDatavalue: previousValue.current,
159
- _selectedRatingValue: newRating,
160
- ratingsWidth: calculateRatingsWidth()
161
- });
162
- if (showcaptions) {
163
- var selectedItem = newRating > 0 ? ratingItems.find(function (item) {
164
- return item.index === newRating;
165
- }) : null;
166
- var newCaption = selectedItem ? selectedItem.label : caption || "";
167
- setCurrentCaption(newCaption);
168
- updateCaptionElement(newCaption);
169
- }
170
- var effectiveDataset = processedDataset.length > 0 ? processedDataset : datasetItems;
171
- var selectedDatasetItem = newRating > 0 ? effectiveDataset.find(function (item) {
172
- return item.index === newRating;
173
- }) : null;
174
- if (effectiveDataset.length) {
175
- var updatedDatasetItems = effectiveDataset.map(function (item) {
176
- return _objectSpread(_objectSpread({}, item), {}, {
177
- selected: item.index === newRating
178
- });
140
+ const handleMouseOver = useCallback(
141
+ (rate) => {
142
+ if (readonly) return;
143
+ setHoveredRatingValue(rate.index);
144
+ updateCaptionElement(rate.label);
145
+ },
146
+ [readonly, updateCaptionElement]
147
+ );
148
+ const handleRatingClick = useCallback(
149
+ (rate) => {
150
+ var _a2;
151
+ if (readonly) return;
152
+ const newRating = rate.index === selectedRatingValue ? 0 : rate.index;
153
+ isInternalChange.current = true;
154
+ setSelectedRatingValue(newRating);
155
+ (_a2 = listener == null ? void 0 : listener.onChange) == null ? void 0 : _a2.call(listener, name, {
156
+ prevDatavalue: previousValue.current,
157
+ _selectedRatingValue: newRating,
158
+ ratingsWidth: calculateRatingsWidth()
179
159
  });
180
- setDatasetItems(updatedDatasetItems);
181
- }
182
- var newValue = newRating > 0 ? (selectedDatasetItem === null || selectedDatasetItem === void 0 ? void 0 : selectedDatasetItem.value) || rate.value : 0;
183
- invokeOnChange(newValue);
184
- previousValue.current = newValue;
185
- }, [readonly, selectedRatingValue, showcaptions, ratingItems, datasetItems, processedDataset, setDatasetItems, updateCaptionElement, invokeOnChange, caption]);
186
-
187
- // Data processing
188
- var processDataset = (0, _react.useCallback)(function () {
160
+ if (showcaptions) {
161
+ const selectedItem = newRating > 0 ? ratingItems.find((item) => item.index === newRating) : null;
162
+ const newCaption = selectedItem ? selectedItem.label : caption || "";
163
+ setCurrentCaption(newCaption);
164
+ updateCaptionElement(newCaption);
165
+ }
166
+ const effectiveDataset = processedDataset.length > 0 ? processedDataset : datasetItems;
167
+ const selectedDatasetItem = newRating > 0 ? effectiveDataset.find((item) => item.index === newRating) : null;
168
+ if (effectiveDataset.length) {
169
+ const updatedDatasetItems = effectiveDataset.map((item) => __spreadProps(__spreadValues({}, item), {
170
+ selected: item.index === newRating
171
+ }));
172
+ setDatasetItems(updatedDatasetItems);
173
+ }
174
+ const newValue = newRating > 0 ? (selectedDatasetItem == null ? void 0 : selectedDatasetItem.value) || rate.value : 0;
175
+ invokeOnChange(newValue);
176
+ previousValue.current = newValue;
177
+ },
178
+ [
179
+ readonly,
180
+ selectedRatingValue,
181
+ showcaptions,
182
+ ratingItems,
183
+ datasetItems,
184
+ processedDataset,
185
+ setDatasetItems,
186
+ updateCaptionElement,
187
+ invokeOnChange,
188
+ caption
189
+ ]
190
+ );
191
+ const processDataset = useCallback(() => {
189
192
  if (!dataset) return;
190
- var processedData = [];
193
+ let processedData = [];
191
194
  if (Array.isArray(dataset)) {
192
- dataset.forEach(function (item, idx) {
195
+ dataset.forEach((item, idx) => {
193
196
  if (typeof item === "string") {
194
197
  if (item.includes(",")) {
195
- var parts = item.split(",").map(function (part) {
196
- return part.trim();
197
- });
198
- processedData = parts.map(function (part, index) {
199
- return {
200
- index: index + 1,
201
- value: index + 1,
202
- label: part,
203
- key: index + 1
204
- };
205
- });
198
+ const parts = item.split(",").map((part) => part.trim());
199
+ processedData = parts.map((part, index) => ({
200
+ index: index + 1,
201
+ value: index + 1,
202
+ label: part,
203
+ key: index + 1
204
+ }));
206
205
  } else {
207
206
  processedData.push({
208
207
  index: idx + 1,
@@ -211,251 +210,259 @@ var WmRating = /*#__PURE__*/(0, _react.memo)(function (props) {
211
210
  key: idx + 1
212
211
  });
213
212
  }
214
- } else if ((0, _typeof2["default"])(item) === "object" && item !== null) {
213
+ } else if (typeof item === "object" && item !== null) {
215
214
  processedData.push(item);
216
215
  }
217
216
  });
218
217
  }
219
218
  setProcessedDataset(processedData);
220
219
  }, [dataset]);
221
- var prepareRatingDataset = (0, _react.useCallback)(function () {
222
- var data = processedDataset.length > 0 ? processedDataset : datasetItems || [];
223
- var maxVal = Math.min(maxvalue || data.length, 10) || DEFAULT_MAX_VALUE;
224
-
225
- // Use transformDataset utility to create the dataset
226
- var transformedItems = (0, _transformedDatasetUtils.transformDataset)(data, datafield, displayfield, displaylabel, displayexpression, undefined, undefined, undefined);
227
-
228
- // If no data provided, create default numeric rating items
220
+ const prepareRatingDataset = useCallback(() => {
221
+ var _a2, _b;
222
+ const data = processedDataset.length > 0 ? processedDataset : datasetItems || [];
223
+ const maxVal = Math.min(maxvalue || data.length, 10) || DEFAULT_MAX_VALUE;
224
+ let transformedItems = transformDataset(
225
+ data,
226
+ datafield,
227
+ displayfield,
228
+ displaylabel,
229
+ displayexpression,
230
+ void 0,
231
+ void 0,
232
+ void 0
233
+ );
229
234
  if (!data.length) {
230
- transformedItems = Array.from({
231
- length: maxVal
232
- }, function (_, i) {
233
- return {
234
- key: maxVal - i,
235
- value: maxVal - i,
236
- index: maxVal - i,
237
- label: "".concat(maxVal - i)
238
- };
239
- });
235
+ transformedItems = Array.from({ length: maxVal }, (_, i) => ({
236
+ key: maxVal - i,
237
+ value: maxVal - i,
238
+ index: maxVal - i,
239
+ label: `${maxVal - i}`
240
+ }));
240
241
  } else {
241
- // Limit transformed items to maxVal when dataset exists
242
- // Sort first to ensure we keep items with lowest indices
243
- transformedItems.sort(function (a, b) {
244
- return a.index - b.index;
245
- });
242
+ transformedItems.sort((a, b) => a.index - b.index);
246
243
  transformedItems = transformedItems.slice(0, maxVal);
247
-
248
- // Convert 0-based indices to 1-based to match the isStarActive logic
249
- // The isStarActive function expects 1-based indices where index <= selectedRatingValue
250
- transformedItems = transformedItems.map(function (item, idx) {
251
- return _objectSpread(_objectSpread({}, item), {}, {
252
- index: idx + 1,
253
- // Convert to 1-based index
254
- key: idx + 1
255
- });
256
- });
244
+ transformedItems = transformedItems.map((item, idx) => __spreadProps(__spreadValues({}, item), {
245
+ index: idx + 1,
246
+ // Convert to 1-based index
247
+ key: idx + 1
248
+ }));
257
249
  }
258
-
259
- // Sort items by index in descending order to maintain left-to-right star activation
260
- transformedItems.sort(function (a, b) {
261
- return b.index - a.index;
262
- });
263
- if (!(0, _lodashEs.isEqual)(transformedItems, ratingItems)) {
264
- var _listener$onChange2, _listener$onChange3;
265
- listener === null || listener === void 0 || (_listener$onChange2 = listener.onChange) === null || _listener$onChange2 === void 0 || _listener$onChange2.call(listener, props.fieldName || name, {
250
+ transformedItems.sort((a, b) => b.index - a.index);
251
+ if (!isEqual(transformedItems, ratingItems)) {
252
+ (_a2 = listener == null ? void 0 : listener.onChange) == null ? void 0 : _a2.call(listener, props.fieldName || name, {
266
253
  ratingItems: transformedItems
267
254
  });
268
255
  setRatingItems(transformedItems);
269
- listener === null || listener === void 0 || (_listener$onChange3 = listener.onChange) === null || _listener$onChange3 === void 0 || _listener$onChange3.call(listener, name, {
256
+ (_b = listener == null ? void 0 : listener.onChange) == null ? void 0 : _b.call(listener, name, {
270
257
  ratingItems: transformedItems
271
258
  });
272
259
  if (!data.length || processedDataset.length > 0 && data === processedDataset) {
273
- var currentDatasetItems = processedDataset.length > 0 ? processedDataset : datasetItems;
274
- if (!(0, _lodashEs.isEqual)(transformedItems, currentDatasetItems)) {
260
+ const currentDatasetItems = processedDataset.length > 0 ? processedDataset : datasetItems;
261
+ if (!isEqual(transformedItems, currentDatasetItems)) {
275
262
  setDatasetItems(transformedItems);
276
263
  }
277
264
  }
278
265
  }
279
- }, [datasetItems, processedDataset, maxvalue, datafield, displayexpression, setDatasetItems, ratingItems, displaylabel, displayfield]);
280
- var calculateRatingsWidth = (0, _react.useCallback)(function (selectedDefaultRating) {
281
- var selectedRating = selectedDefaultRating || selectedRatingValue;
282
- var starWidth = 0.925;
283
- var maxValue = maxvalue || datasetItems.length || DEFAULT_MAX_VALUE;
284
- if (selectedRating <= maxValue && selectedRating >= 0) {
285
- return selectedRating * starWidth + "em";
286
- }
287
- if (selectedRating > maxValue) {
288
- return maxValue * starWidth + "em";
289
- }
290
- }, [selectedRatingValue, maxvalue, datasetItems]);
291
- var onDatavalueChange = (0, _react.useCallback)(function (dataVal) {
292
- // Skip ALL updates if this was triggered by an internal click (we already set state in handleRatingClick)
293
- if (isInternalChange.current) {
294
- isInternalChange.current = false; // Reset the flag
295
- return; // Early return - skip all processing for internal changes
296
- }
297
- var effectiveDataset = processedDataset.length > 0 ? processedDataset : datasetItems;
298
- if (!(0, _lodashEs.isEmpty)(effectiveDataset)) {
299
- var selectedItem = effectiveDataset.find(function (item) {
300
- return item.selected;
301
- });
302
- if (!selectedItem && dataVal !== undefined) {
303
- selectedItem = effectiveDataset.find(function (item) {
304
- var _item$index, _item$value;
305
- return ((_item$index = item.index) === null || _item$index === void 0 ? void 0 : _item$index.toString()) === (dataVal === null || dataVal === void 0 ? void 0 : dataVal.toString()) || ((_item$value = item.value) === null || _item$value === void 0 ? void 0 : _item$value.toString()) === (dataVal === null || dataVal === void 0 ? void 0 : dataVal.toString());
306
- });
307
- if (selectedItem) {
308
- var updatedDatasetItems = effectiveDataset.map(function (item) {
309
- return _objectSpread(_objectSpread({}, item), {}, {
266
+ }, [
267
+ datasetItems,
268
+ processedDataset,
269
+ maxvalue,
270
+ datafield,
271
+ displayexpression,
272
+ setDatasetItems,
273
+ ratingItems,
274
+ displaylabel,
275
+ displayfield
276
+ ]);
277
+ const calculateRatingsWidth = useCallback(
278
+ (selectedDefaultRating) => {
279
+ const selectedRating = selectedDefaultRating || selectedRatingValue;
280
+ const starWidth = 0.925;
281
+ const maxValue = maxvalue || datasetItems.length || DEFAULT_MAX_VALUE;
282
+ if (selectedRating <= maxValue && selectedRating >= 0) {
283
+ return selectedRating * starWidth + "em";
284
+ }
285
+ if (selectedRating > maxValue) {
286
+ return maxValue * starWidth + "em";
287
+ }
288
+ },
289
+ [selectedRatingValue, maxvalue, datasetItems]
290
+ );
291
+ const onDatavalueChange = useCallback(
292
+ (dataVal) => {
293
+ var _a2, _b, _c, _d;
294
+ if (isInternalChange.current) {
295
+ isInternalChange.current = false;
296
+ return;
297
+ }
298
+ const effectiveDataset = processedDataset.length > 0 ? processedDataset : datasetItems;
299
+ if (!isEmpty(effectiveDataset)) {
300
+ let selectedItem = effectiveDataset.find((item) => item.selected);
301
+ if (!selectedItem && dataVal !== void 0) {
302
+ selectedItem = effectiveDataset.find(
303
+ (item) => {
304
+ var _a3, _b2;
305
+ return ((_a3 = item.index) == null ? void 0 : _a3.toString()) === (dataVal == null ? void 0 : dataVal.toString()) || ((_b2 = item.value) == null ? void 0 : _b2.toString()) === (dataVal == null ? void 0 : dataVal.toString());
306
+ }
307
+ );
308
+ if (selectedItem) {
309
+ const updatedDatasetItems = effectiveDataset.map((item) => __spreadProps(__spreadValues({}, item), {
310
310
  selected: item === selectedItem
311
- });
311
+ }));
312
+ setDatasetItems(updatedDatasetItems);
313
+ }
314
+ }
315
+ if (!selectedItem) {
316
+ setSelectedRatingValue(0);
317
+ (_a2 = listener == null ? void 0 : listener.onChange) == null ? void 0 : _a2.call(listener, props.fieldName || name, {
318
+ _selectedRatingValue: 0,
319
+ datavalue: 0
320
+ });
321
+ setCurrentCaption(caption || "");
322
+ updateCaptionElement(caption || "");
323
+ } else {
324
+ setSelectedRatingValue(selectedItem.index);
325
+ (_b = listener == null ? void 0 : listener.onChange) == null ? void 0 : _b.call(listener, props.fieldName || name, {
326
+ selectedRatingValue: selectedItem.index,
327
+ _selectedRatingValue: selectedItem.index,
328
+ ratingsWidth: calculateRatingsWidth(selectedItem.index),
329
+ datavalue: selectedItem.index
312
330
  });
313
- setDatasetItems(updatedDatasetItems);
331
+ setCurrentCaption(selectedItem.label);
332
+ updateCaptionElement(selectedItem.label);
314
333
  }
315
- }
316
- if (!selectedItem) {
317
- var _listener$onChange4;
318
- setSelectedRatingValue(0);
319
- listener === null || listener === void 0 || (_listener$onChange4 = listener.onChange) === null || _listener$onChange4 === void 0 || _listener$onChange4.call(listener, props.fieldName || name, {
320
- _selectedRatingValue: 0,
321
- datavalue: 0
322
- });
323
- setCurrentCaption(caption || "");
324
- updateCaptionElement(caption || "");
325
334
  } else {
326
- var _listener$onChange5;
327
- setSelectedRatingValue(selectedItem.index);
328
- listener === null || listener === void 0 || (_listener$onChange5 = listener.onChange) === null || _listener$onChange5 === void 0 || _listener$onChange5.call(listener, props.fieldName || name, {
329
- selectedRatingValue: selectedItem.index,
330
- _selectedRatingValue: selectedItem.index,
331
- ratingsWidth: calculateRatingsWidth(selectedItem.index),
332
- datavalue: selectedItem.index
333
- });
334
- setCurrentCaption(selectedItem.label);
335
- updateCaptionElement(selectedItem.label);
336
- }
337
- } else {
338
- if (!isNaN(Number(dataVal))) {
339
- var _listener$onChange6;
340
- var rating = Math.min(Math.max(parseFloat(dataVal), 0), maxvalue || DEFAULT_MAX_VALUE);
341
- setSelectedRatingValue(rating);
342
- listener === null || listener === void 0 || (_listener$onChange6 = listener.onChange) === null || _listener$onChange6 === void 0 || _listener$onChange6.call(listener, props.fieldName || name, {
343
- _selectedRatingValue: rating,
344
- ratingsWidth: calculateRatingsWidth(rating),
345
- datavalue: rating
346
- });
347
- var _selectedItem = ratingItems.find(function (item) {
348
- return item.index === rating;
349
- });
350
- if (_selectedItem) {
351
- setCurrentCaption(_selectedItem.label);
352
- updateCaptionElement(_selectedItem.label);
335
+ if (!isNaN(Number(dataVal))) {
336
+ const rating = Math.min(
337
+ Math.max(parseFloat(dataVal), 0),
338
+ maxvalue || DEFAULT_MAX_VALUE
339
+ );
340
+ setSelectedRatingValue(rating);
341
+ (_c = listener == null ? void 0 : listener.onChange) == null ? void 0 : _c.call(listener, props.fieldName || name, {
342
+ _selectedRatingValue: rating,
343
+ ratingsWidth: calculateRatingsWidth(rating),
344
+ datavalue: rating
345
+ });
346
+ const selectedItem = ratingItems.find((item) => item.index === rating);
347
+ if (selectedItem) {
348
+ setCurrentCaption(selectedItem.label);
349
+ updateCaptionElement(selectedItem.label);
350
+ } else {
351
+ setCurrentCaption(caption || "");
352
+ updateCaptionElement(caption || "");
353
+ }
353
354
  } else {
355
+ setSelectedRatingValue(0);
356
+ (_d = listener == null ? void 0 : listener.onChange) == null ? void 0 : _d.call(listener, props.fieldName || name, {
357
+ _selectedRatingValue: 0,
358
+ ratingsWidth: calculateRatingsWidth(),
359
+ datavalue: 0
360
+ });
354
361
  setCurrentCaption(caption || "");
355
362
  updateCaptionElement(caption || "");
356
363
  }
357
- } else {
358
- var _listener$onChange7;
359
- setSelectedRatingValue(0);
360
- listener === null || listener === void 0 || (_listener$onChange7 = listener.onChange) === null || _listener$onChange7 === void 0 || _listener$onChange7.call(listener, props.fieldName || name, {
361
- _selectedRatingValue: 0,
362
- ratingsWidth: calculateRatingsWidth(),
363
- datavalue: 0
364
- });
365
- setCurrentCaption(caption || "");
366
- updateCaptionElement(caption || "");
367
364
  }
368
- }
369
- }, [datasetItems, processedDataset, maxvalue, ratingItems, setDatasetItems, updateCaptionElement, caption]);
370
-
371
- // Effects
372
- (0, _react.useEffect)(function () {
365
+ },
366
+ [
367
+ datasetItems,
368
+ processedDataset,
369
+ maxvalue,
370
+ ratingItems,
371
+ setDatasetItems,
372
+ updateCaptionElement,
373
+ caption
374
+ ]
375
+ );
376
+ useEffect(() => {
373
377
  processDataset();
374
378
  }, [processDataset]);
375
- (0, _react.useEffect)(function () {
379
+ useEffect(() => {
376
380
  prepareRatingDataset();
377
381
  }, [prepareRatingDataset]);
378
- (0, _react.useEffect)(function () {
379
- var _listener$onChange8;
380
- if (datavalue !== undefined) {
382
+ useEffect(() => {
383
+ var _a2;
384
+ if (datavalue !== void 0) {
381
385
  onDatavalueChange(datavalue);
382
386
  }
383
- listener === null || listener === void 0 || (_listener$onChange8 = listener.onChange) === null || _listener$onChange8 === void 0 || _listener$onChange8.call(listener, props.fieldName || name, {
387
+ (_a2 = listener == null ? void 0 : listener.onChange) == null ? void 0 : _a2.call(listener, props.fieldName || name, {
384
388
  ratingEl: ratingsRef.current,
385
- datavalue: datavalue
389
+ datavalue
386
390
  });
387
391
  }, [datavalue]);
388
-
389
- // Render methods
390
- var renderStar = function renderStar(rate) {
391
- var _getStarState = getStarState(rate.index),
392
- isActive = _getStarState.isActive,
393
- iconClass = _getStarState.iconClass,
394
- starStyle = _getStarState.starStyle;
395
- return __jsx(_Tooltip["default"], {
396
- key: rate.key,
397
- title: rate.label,
398
- enterDelay: 500,
399
- enterNextDelay: 500
400
- }, __jsx(_material.Box, {
401
- component: "label",
402
- onClick: function onClick(e) {
403
- e.preventDefault();
404
- e.stopPropagation();
405
- handleRatingClick(rate);
406
- },
407
- onMouseOver: function onMouseOver() {
408
- return handleMouseOver(rate);
409
- },
410
- onMouseLeave: handleMouseLeave,
411
- style: starStyle,
412
- className: (0, _clsx["default"])("app-icon-container", "wm-rating-star", readonly && "wm-rating-star-readonly", isActive && "active")
413
- }, __jsx(_material.Box, {
414
- component: "i",
415
- className: (0, _clsx["default"])("app-icon", "wm-rating-star-icon", iconClass),
416
- "aria-hidden": "true"
417
- }), __jsx("input", {
418
- type: "radio",
419
- role: "radio",
420
- name: name,
421
- "aria-label": (rate.label || rate.index) + " out of " + ratingItems.length + " ratings",
422
- "aria-checked": isStarActive(rate.index) ? "true" : "false"
423
- })));
392
+ const renderStar = (rate) => {
393
+ const { isActive, iconClass, starStyle } = getStarState(rate.index);
394
+ return /* @__PURE__ */ jsx(Tooltip, { title: rate.label, enterDelay: 500, enterNextDelay: 500, children: /* @__PURE__ */ jsxs(
395
+ Box,
396
+ {
397
+ component: "label",
398
+ onClick: (e) => {
399
+ e.preventDefault();
400
+ e.stopPropagation();
401
+ handleRatingClick(rate);
402
+ },
403
+ onMouseOver: () => handleMouseOver(rate),
404
+ onMouseLeave: handleMouseLeave,
405
+ style: starStyle,
406
+ className: clsx(
407
+ "app-icon-container",
408
+ "wm-rating-star",
409
+ readonly && "wm-rating-star-readonly",
410
+ isActive && "active"
411
+ ),
412
+ children: [
413
+ /* @__PURE__ */ jsx(
414
+ Box,
415
+ {
416
+ component: "i",
417
+ className: clsx("app-icon", "wm-rating-star-icon", iconClass),
418
+ "aria-hidden": "true"
419
+ }
420
+ ),
421
+ /* @__PURE__ */ jsx(
422
+ "input",
423
+ {
424
+ type: "radio",
425
+ role: "radio",
426
+ name,
427
+ "aria-label": (rate.label || rate.index) + " out of " + ratingItems.length + " ratings",
428
+ "aria-checked": isStarActive(rate.index) ? "true" : "false"
429
+ }
430
+ )
431
+ ]
432
+ }
433
+ ) }, rate.key);
424
434
  };
425
435
  function showHideOnHover() {
426
436
  setHover(!hover);
427
437
  }
428
- return __jsx(_material.Box, {
429
- hidden: props.hidden,
430
- sx: _objectSpread(_objectSpread({}, styles), {}, {
431
- height: height,
432
- width: width
433
- }),
434
- className: (0, _clsx["default"])("app-ratings", {
435
- disabled: readonly
436
- }),
437
- ref: ratingsRef,
438
- tabIndex: (_props$tabindex = props.tabindex) !== null && _props$tabindex !== void 0 ? _props$tabindex : 0
439
- }, __jsx(_material.Box, {
440
- className: "ratings-wrapper",
441
- onMouseEnter: showHideOnHover,
442
- onMouseLeave: showHideOnHover
443
- }, __jsx(_material.Box, {
444
- className: "rating-style"
445
- }, ratingItems.map(renderStar)), showcaptions && (selectedRatingValue !== 0 || hover) && __jsx("label", {
446
- className: "caption"
447
- }, currentCaption || caption || (showcaptions ? datavalue : ""))));
438
+ return /* @__PURE__ */ jsx(
439
+ Box,
440
+ {
441
+ hidden: props.hidden,
442
+ sx: __spreadProps(__spreadValues({}, styles), { height, width }),
443
+ className: clsx("app-ratings", { disabled: readonly }),
444
+ ref: ratingsRef,
445
+ tabIndex: (_a = props.tabindex) != null ? _a : 0,
446
+ children: /* @__PURE__ */ jsxs(
447
+ Box,
448
+ {
449
+ className: "ratings-wrapper",
450
+ onMouseEnter: showHideOnHover,
451
+ onMouseLeave: showHideOnHover,
452
+ children: [
453
+ /* @__PURE__ */ jsx(Box, { className: "rating-style", children: ratingItems.map(renderStar) }),
454
+ showcaptions && (selectedRatingValue !== 0 || hover) && /* @__PURE__ */ jsx("label", { className: "caption", children: currentCaption || caption || (showcaptions ? datavalue : "") })
455
+ ]
456
+ }
457
+ )
458
+ }
459
+ );
448
460
  });
449
461
  WmRating.displayName = "WmRating";
450
- var WithForm = (0, _withFormController["default"])(WmRating);
451
- var WmRatingStandalone = exports.WmRating = (0, _withStandalone["default"])(WithForm);
452
- /**
453
- * The WmRating component provides a star-based rating input with captions and customizable icons.
454
- *
455
- * - [Playground](https://react-components.wavemaker.ai/?path=/story/input-rating--showcase)
456
- *
457
- * - [Docs](https://react-components.wavemaker.ai/?path=/story/input-rating--docs)
458
- *
459
- * @param props - {@link WmRatingProps}
460
- */
461
- var _default = exports["default"] = (0, _withBaseWrapper.withBaseWrapper)(WithForm);
462
+ const WithForm = withFormController(WmRating);
463
+ const WmRatingStandalone = withStandalone(WithForm);
464
+ var rating_default = withBaseWrapper(WithForm);
465
+ export {
466
+ WmRatingStandalone as WmRating,
467
+ rating_default as default
468
+ };