@wavemaker-ai/react-runtime 1.0.0-next.27766

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 (1081) hide show
  1. package/.npmignore +4 -0
  2. package/actions/base-action.d.ts +7 -0
  3. package/actions/base-action.js +13 -0
  4. package/actions/login-action.d.ts +11 -0
  5. package/actions/login-action.js +37 -0
  6. package/actions/logout-action.d.ts +10 -0
  7. package/actions/logout-action.js +22 -0
  8. package/actions/navigation-action.d.ts +36 -0
  9. package/actions/navigation-action.js +311 -0
  10. package/actions/notification-action.d.ts +20 -0
  11. package/actions/notification-action.js +136 -0
  12. package/actions/timer-action.d.ts +27 -0
  13. package/actions/timer-action.js +106 -0
  14. package/actions/toast-provider.d.ts +12 -0
  15. package/actions/toast-provider.js +97 -0
  16. package/actions/toast.d.ts +7 -0
  17. package/actions/toast.js +121 -0
  18. package/actions/toast.service.d.ts +17 -0
  19. package/actions/toast.service.js +73 -0
  20. package/actions/types/index.d.ts +26 -0
  21. package/actions/types/index.js +8 -0
  22. package/components/advanced/carousel/index.d.ts +75 -0
  23. package/components/advanced/carousel/index.js +459 -0
  24. package/components/advanced/carousel/props.d.ts +40 -0
  25. package/components/advanced/carousel/props.js +0 -0
  26. package/components/advanced/carousel/template.d.ts +75 -0
  27. package/components/advanced/carousel/template.js +105 -0
  28. package/components/advanced/login/index.d.ts +78 -0
  29. package/components/advanced/login/index.js +259 -0
  30. package/components/advanced/login/props.d.ts +41 -0
  31. package/components/advanced/login/props.js +0 -0
  32. package/components/advanced/marquee/index.d.ts +71 -0
  33. package/components/advanced/marquee/index.js +175 -0
  34. package/components/advanced/marquee/props.d.ts +32 -0
  35. package/components/advanced/marquee/props.js +0 -0
  36. package/components/auth/RoleAuthGuard.d.ts +6 -0
  37. package/components/auth/RoleAuthGuard.js +66 -0
  38. package/components/basic/anchor/index.d.ts +86 -0
  39. package/components/basic/anchor/index.js +280 -0
  40. package/components/basic/anchor/props.d.ts +76 -0
  41. package/components/basic/anchor/props.js +0 -0
  42. package/components/basic/audio/index.d.ts +75 -0
  43. package/components/basic/audio/index.js +111 -0
  44. package/components/basic/audio/props.d.ts +48 -0
  45. package/components/basic/audio/props.js +0 -0
  46. package/components/basic/html/index.d.ts +72 -0
  47. package/components/basic/html/index.js +184 -0
  48. package/components/basic/html/props.d.ts +32 -0
  49. package/components/basic/html/props.js +0 -0
  50. package/components/basic/html/utils.d.ts +4 -0
  51. package/components/basic/html/utils.js +38 -0
  52. package/components/basic/icon/index.d.ts +74 -0
  53. package/components/basic/icon/index.js +104 -0
  54. package/components/basic/icon/props.d.ts +46 -0
  55. package/components/basic/icon/props.js +0 -0
  56. package/components/basic/iframe/iframe.utils.d.ts +2 -0
  57. package/components/basic/iframe/iframe.utils.js +8 -0
  58. package/components/basic/iframe/index.d.ts +70 -0
  59. package/components/basic/iframe/index.js +105 -0
  60. package/components/basic/iframe/props.d.ts +27 -0
  61. package/components/basic/iframe/props.js +0 -0
  62. package/components/basic/label/index.d.ts +75 -0
  63. package/components/basic/label/index.js +183 -0
  64. package/components/basic/label/props.d.ts +54 -0
  65. package/components/basic/label/props.js +0 -0
  66. package/components/basic/message/index.d.ts +18 -0
  67. package/components/basic/message/index.js +162 -0
  68. package/components/basic/message/props.d.ts +51 -0
  69. package/components/basic/message/props.js +0 -0
  70. package/components/basic/picture/index.d.ts +78 -0
  71. package/components/basic/picture/index.js +180 -0
  72. package/components/basic/picture/props.d.ts +57 -0
  73. package/components/basic/picture/props.js +0 -0
  74. package/components/basic/progress-bar/index.d.ts +76 -0
  75. package/components/basic/progress-bar/index.js +247 -0
  76. package/components/basic/progress-bar/props.d.ts +66 -0
  77. package/components/basic/progress-bar/props.js +15 -0
  78. package/components/basic/progress-circle/index.d.ts +81 -0
  79. package/components/basic/progress-circle/index.js +181 -0
  80. package/components/basic/progress-circle/props.d.ts +80 -0
  81. package/components/basic/progress-circle/props.js +19 -0
  82. package/components/basic/richtexteditor/index.d.ts +149 -0
  83. package/components/basic/richtexteditor/index.js +548 -0
  84. package/components/basic/richtexteditor/props.d.ts +89 -0
  85. package/components/basic/richtexteditor/props.js +0 -0
  86. package/components/basic/search/index.d.ts +188 -0
  87. package/components/basic/search/index.js +1199 -0
  88. package/components/basic/search/props.d.ts +237 -0
  89. package/components/basic/search/props.js +0 -0
  90. package/components/basic/search/providers.d.ts +53 -0
  91. package/components/basic/search/providers.js +268 -0
  92. package/components/basic/spinner/index.d.ts +78 -0
  93. package/components/basic/spinner/index.js +217 -0
  94. package/components/basic/spinner/props.d.ts +68 -0
  95. package/components/basic/spinner/props.js +9 -0
  96. package/components/basic/tile/index.d.ts +71 -0
  97. package/components/basic/tile/index.js +96 -0
  98. package/components/basic/tile/props.d.ts +11 -0
  99. package/components/basic/tile/props.js +0 -0
  100. package/components/basic/tree/Components/TreeNodeComponent.d.ts +4 -0
  101. package/components/basic/tree/Components/TreeNodeComponent.js +248 -0
  102. package/components/basic/tree/hooks/useTreePartialNodeApi.d.ts +17 -0
  103. package/components/basic/tree/hooks/useTreePartialNodeApi.js +165 -0
  104. package/components/basic/tree/hooks/useTreePersistedState.d.ts +3 -0
  105. package/components/basic/tree/hooks/useTreePersistedState.js +38 -0
  106. package/components/basic/tree/index.d.ts +87 -0
  107. package/components/basic/tree/index.js +528 -0
  108. package/components/basic/tree/props.d.ts +144 -0
  109. package/components/basic/tree/props.js +0 -0
  110. package/components/basic/tree/utils.d.ts +54 -0
  111. package/components/basic/tree/utils.js +327 -0
  112. package/components/basic/video/index.d.ts +82 -0
  113. package/components/basic/video/index.js +162 -0
  114. package/components/basic/video/props.d.ts +77 -0
  115. package/components/basic/video/props.js +0 -0
  116. package/components/chart/index.d.ts +133 -0
  117. package/components/chart/index.js +50 -0
  118. package/components/chart/props.d.ts +189 -0
  119. package/components/chart/props.js +75 -0
  120. package/components/chart/src/ChartRenderer.d.ts +14 -0
  121. package/components/chart/src/ChartRenderer.js +244 -0
  122. package/components/chart/src/chart.d.ts +4 -0
  123. package/components/chart/src/chart.js +473 -0
  124. package/components/chart/src/chartStyles.generated.d.ts +7 -0
  125. package/components/chart/src/chartStyles.generated.js +6 -0
  126. package/components/chart/src/chartUtils.d.ts +26 -0
  127. package/components/chart/src/chartUtils.js +417 -0
  128. package/components/chart/src/constants.d.ts +41 -0
  129. package/components/chart/src/constants.js +365 -0
  130. package/components/chart/src/d3Setup.d.ts +11 -0
  131. package/components/chart/src/d3Setup.js +18 -0
  132. package/components/chart/src/dataUtils.d.ts +79 -0
  133. package/components/chart/src/dataUtils.js +528 -0
  134. package/components/chart/src/formatUtils.d.ts +5 -0
  135. package/components/chart/src/formatUtils.js +72 -0
  136. package/components/chart/src/index.d.ts +3 -0
  137. package/components/chart/src/index.js +17 -0
  138. package/components/chart/src/nvd3Source.generated.d.ts +6 -0
  139. package/components/chart/src/nvd3Source.generated.js +5 -0
  140. package/components/chart/src/pieDonutResponsiveLayout.d.ts +35 -0
  141. package/components/chart/src/pieDonutResponsiveLayout.js +135 -0
  142. package/components/chart/src/types.d.ts +117 -0
  143. package/components/chart/src/types.js +0 -0
  144. package/components/common/AppSpinner.d.ts +9 -0
  145. package/components/common/AppSpinner.js +20 -0
  146. package/components/common/WmAppIcon/index.d.ts +15 -0
  147. package/components/common/WmAppIcon/index.js +130 -0
  148. package/components/common/WmAppIcon/props.d.ts +17 -0
  149. package/components/common/WmAppIcon/props.js +0 -0
  150. package/components/common/app-spinner.d.ts +5 -0
  151. package/components/common/app-spinner.js +15 -0
  152. package/components/common/customTemplate/index.d.ts +3 -0
  153. package/components/common/customTemplate/index.js +6 -0
  154. package/components/common/customTemplate/props.d.ts +20 -0
  155. package/components/common/customTemplate/props.js +0 -0
  156. package/components/common/customTemplate/template.d.ts +3 -0
  157. package/components/common/customTemplate/template.js +27 -0
  158. package/components/common/customTemplate/useCustomTemplate.d.ts +8 -0
  159. package/components/common/customTemplate/useCustomTemplate.js +17 -0
  160. package/components/common/customTemplate/utils.d.ts +6 -0
  161. package/components/common/customTemplate/utils.js +12 -0
  162. package/components/common/index.d.ts +5 -0
  163. package/components/common/index.js +16 -0
  164. package/components/common/wm-skeleton.d.ts +102 -0
  165. package/components/common/wm-skeleton.js +356 -0
  166. package/components/constants.d.ts +1135 -0
  167. package/components/constants.js +1215 -0
  168. package/components/container/accordion/accordion-pane/index.d.ts +85 -0
  169. package/components/container/accordion/accordion-pane/index.js +122 -0
  170. package/components/container/accordion/accordion-pane/props.d.ts +89 -0
  171. package/components/container/accordion/accordion-pane/props.js +8 -0
  172. package/components/container/accordion/index.d.ts +81 -0
  173. package/components/container/accordion/index.js +258 -0
  174. package/components/container/accordion/props.d.ts +67 -0
  175. package/components/container/accordion/props.js +10 -0
  176. package/components/container/index.d.ts +87 -0
  177. package/components/container/index.js +245 -0
  178. package/components/container/layout-grid/grid-column/index.d.ts +73 -0
  179. package/components/container/layout-grid/grid-column/index.js +71 -0
  180. package/components/container/layout-grid/grid-column/props.d.ts +27 -0
  181. package/components/container/layout-grid/grid-column/props.js +0 -0
  182. package/components/container/layout-grid/grid-row/index.d.ts +69 -0
  183. package/components/container/layout-grid/grid-row/index.js +14 -0
  184. package/components/container/layout-grid/grid-row/props.d.ts +6 -0
  185. package/components/container/layout-grid/grid-row/props.js +0 -0
  186. package/components/container/layout-grid/index.d.ts +71 -0
  187. package/components/container/layout-grid/index.js +55 -0
  188. package/components/container/layout-grid/props.d.ts +6 -0
  189. package/components/container/layout-grid/props.js +0 -0
  190. package/components/container/linear-layout/index.d.ts +70 -0
  191. package/components/container/linear-layout/index.js +79 -0
  192. package/components/container/linear-layout/linear-layout-item/index.d.ts +67 -0
  193. package/components/container/linear-layout/linear-layout-item/index.js +50 -0
  194. package/components/container/linear-layout/linear-layout-item/props.d.ts +14 -0
  195. package/components/container/linear-layout/linear-layout-item/props.js +0 -0
  196. package/components/container/linear-layout/props.d.ts +41 -0
  197. package/components/container/linear-layout/props.js +0 -0
  198. package/components/container/panel/components/panel-content/index.d.ts +8 -0
  199. package/components/container/panel/components/panel-content/index.js +9 -0
  200. package/components/container/panel/components/panel-header/index.d.ts +4 -0
  201. package/components/container/panel/components/panel-header/index.js +169 -0
  202. package/components/container/panel/components/panel-header/props.d.ts +50 -0
  203. package/components/container/panel/components/panel-header/props.js +0 -0
  204. package/components/container/panel/hooks.d.ts +22 -0
  205. package/components/container/panel/hooks.js +118 -0
  206. package/components/container/panel/index.d.ts +121 -0
  207. package/components/container/panel/index.js +344 -0
  208. package/components/container/panel/props.d.ts +158 -0
  209. package/components/container/panel/props.js +0 -0
  210. package/components/container/props.d.ts +72 -0
  211. package/components/container/props.js +0 -0
  212. package/components/container/repeat-template/index.d.ts +85 -0
  213. package/components/container/repeat-template/index.js +66 -0
  214. package/components/container/repeat-template/props.d.ts +6 -0
  215. package/components/container/repeat-template/props.js +0 -0
  216. package/components/container/tabs/index.d.ts +89 -0
  217. package/components/container/tabs/index.js +569 -0
  218. package/components/container/tabs/props.d.ts +115 -0
  219. package/components/container/tabs/props.js +17 -0
  220. package/components/container/tabs/tab-pane/index.d.ts +95 -0
  221. package/components/container/tabs/tab-pane/index.js +138 -0
  222. package/components/container/tabs/tab-pane/props.d.ts +85 -0
  223. package/components/container/tabs/tab-pane/props.js +0 -0
  224. package/components/container/tabs/utils.d.ts +17 -0
  225. package/components/container/tabs/utils.js +46 -0
  226. package/components/container/wizard/WizardContext.d.ts +4 -0
  227. package/components/container/wizard/WizardContext.js +14 -0
  228. package/components/container/wizard/components/StepComponents.d.ts +16 -0
  229. package/components/container/wizard/components/StepComponents.js +86 -0
  230. package/components/container/wizard/components/WizardStep.d.ts +5 -0
  231. package/components/container/wizard/components/WizardStep.js +118 -0
  232. package/components/container/wizard/index.d.ts +176 -0
  233. package/components/container/wizard/index.js +861 -0
  234. package/components/container/wizard/props.d.ts +295 -0
  235. package/components/container/wizard/props.js +0 -0
  236. package/components/container/wizard/utils.d.ts +12 -0
  237. package/components/container/wizard/utils.js +144 -0
  238. package/components/container/wizard/wizard-action/index.d.ts +18 -0
  239. package/components/container/wizard/wizard-action/index.js +57 -0
  240. package/components/container/wizard/wizard-step/index.d.ts +66 -0
  241. package/components/container/wizard/wizard-step/index.js +150 -0
  242. package/components/data/card/card-actions/index.d.ts +70 -0
  243. package/components/data/card/card-actions/index.js +14 -0
  244. package/components/data/card/card-content/index.d.ts +70 -0
  245. package/components/data/card/card-content/index.js +29 -0
  246. package/components/data/card/card-footer/index.d.ts +70 -0
  247. package/components/data/card/card-footer/index.js +14 -0
  248. package/components/data/card/index.d.ts +92 -0
  249. package/components/data/card/index.js +253 -0
  250. package/components/data/card/props.d.ts +131 -0
  251. package/components/data/card/props.js +0 -0
  252. package/components/data/form/base-form/constant.d.ts +33 -0
  253. package/components/data/form/base-form/constant.js +36 -0
  254. package/components/data/form/base-form/hooks/index.d.ts +7 -0
  255. package/components/data/form/base-form/hooks/index.js +26 -0
  256. package/components/data/form/base-form/hooks/useFormDataSync.d.ts +16 -0
  257. package/components/data/form/base-form/hooks/useFormDataSync.js +132 -0
  258. package/components/data/form/base-form/hooks/useFormOperations.d.ts +13 -0
  259. package/components/data/form/base-form/hooks/useFormOperations.js +123 -0
  260. package/components/data/form/base-form/hooks/useFormSubmission.d.ts +11 -0
  261. package/components/data/form/base-form/hooks/useFormSubmission.js +233 -0
  262. package/components/data/form/base-form/hooks/useFormValidation.d.ts +11 -0
  263. package/components/data/form/base-form/hooks/useFormValidation.js +127 -0
  264. package/components/data/form/base-form/hooks/useParentFormRelationship.d.ts +12 -0
  265. package/components/data/form/base-form/hooks/useParentFormRelationship.js +91 -0
  266. package/components/data/form/base-form/index.d.ts +3 -0
  267. package/components/data/form/base-form/index.js +691 -0
  268. package/components/data/form/base-form/props.d.ts +300 -0
  269. package/components/data/form/base-form/props.js +103 -0
  270. package/components/data/form/base-form/utils.d.ts +75 -0
  271. package/components/data/form/base-form/utils.js +298 -0
  272. package/components/data/form/dynamic-fields/constant.d.ts +1 -0
  273. package/components/data/form/dynamic-fields/constant.js +43 -0
  274. package/components/data/form/dynamic-fields/index.d.ts +2 -0
  275. package/components/data/form/dynamic-fields/index.js +162 -0
  276. package/components/data/form/dynamic-fields/props.d.ts +70 -0
  277. package/components/data/form/dynamic-fields/props.js +0 -0
  278. package/components/data/form/dynamic-fields/utils.d.ts +46 -0
  279. package/components/data/form/dynamic-fields/utils.js +213 -0
  280. package/components/data/form/form-action/index.d.ts +143 -0
  281. package/components/data/form/form-action/index.js +118 -0
  282. package/components/data/form/form-body/index.d.ts +5 -0
  283. package/components/data/form/form-body/index.js +54 -0
  284. package/components/data/form/form-context.d.ts +91 -0
  285. package/components/data/form/form-context.js +49 -0
  286. package/components/data/form/form-controller/hooks/index.d.ts +7 -0
  287. package/components/data/form/form-controller/hooks/index.js +119 -0
  288. package/components/data/form/form-controller/props.d.ts +139 -0
  289. package/components/data/form/form-controller/props.js +16 -0
  290. package/components/data/form/form-controller/utils.d.ts +5 -0
  291. package/components/data/form/form-controller/utils.js +140 -0
  292. package/components/data/form/form-controller/validation-contrustor.d.ts +3 -0
  293. package/components/data/form/form-controller/validation-contrustor.js +350 -0
  294. package/components/data/form/form-controller/withFormController.d.ts +3 -0
  295. package/components/data/form/form-controller/withFormController.js +367 -0
  296. package/components/data/form/form-dynamic-section/index.d.ts +5 -0
  297. package/components/data/form/form-dynamic-section/index.js +52 -0
  298. package/components/data/form/form-dynamic-section/props.d.ts +5 -0
  299. package/components/data/form/form-dynamic-section/props.js +0 -0
  300. package/components/data/form/form-field/base-field.d.ts +3 -0
  301. package/components/data/form/form-field/base-field.js +158 -0
  302. package/components/data/form/form-field/index.d.ts +14 -0
  303. package/components/data/form/form-field/index.js +187 -0
  304. package/components/data/form/form-field/props.d.ts +215 -0
  305. package/components/data/form/form-field/props.js +0 -0
  306. package/components/data/form/form-footer/index.d.ts +6 -0
  307. package/components/data/form/form-footer/index.js +54 -0
  308. package/components/data/form/form-header/index.d.ts +12 -0
  309. package/components/data/form/form-header/index.js +73 -0
  310. package/components/data/form/index.d.ts +4 -0
  311. package/components/data/form/index.js +112 -0
  312. package/components/data/form/props.d.ts +131 -0
  313. package/components/data/form/props.js +0 -0
  314. package/components/data/list/components/GroupHeader.d.ts +6 -0
  315. package/components/data/list/components/GroupHeader.js +36 -0
  316. package/components/data/list/components/GroupedListItems.d.ts +6 -0
  317. package/components/data/list/components/GroupedListItems.js +112 -0
  318. package/components/data/list/components/ListContainer.d.ts +6 -0
  319. package/components/data/list/components/ListContainer.js +22 -0
  320. package/components/data/list/components/ListDND.d.ts +39 -0
  321. package/components/data/list/components/ListDND.js +254 -0
  322. package/components/data/list/components/ListHeader.d.ts +7 -0
  323. package/components/data/list/components/ListHeader.js +49 -0
  324. package/components/data/list/components/ListItem.d.ts +18 -0
  325. package/components/data/list/components/ListItem.js +173 -0
  326. package/components/data/list/components/ListItemWithTemplate.d.ts +6 -0
  327. package/components/data/list/components/ListItemWithTemplate.js +102 -0
  328. package/components/data/list/components/ListItems.d.ts +7 -0
  329. package/components/data/list/components/ListItems.js +221 -0
  330. package/components/data/list/components/ListPagination.d.ts +7 -0
  331. package/components/data/list/components/ListPagination.js +157 -0
  332. package/components/data/list/components/LoadMoreButton.d.ts +6 -0
  333. package/components/data/list/components/LoadMoreButton.js +39 -0
  334. package/components/data/list/components/NoDataMessage.d.ts +6 -0
  335. package/components/data/list/components/NoDataMessage.js +9 -0
  336. package/components/data/list/components/StandardListItems.d.ts +6 -0
  337. package/components/data/list/components/StandardListItems.js +82 -0
  338. package/components/data/list/components/index.d.ts +12 -0
  339. package/components/data/list/components/index.js +31 -0
  340. package/components/data/list/components/props.d.ts +251 -0
  341. package/components/data/list/components/props.js +0 -0
  342. package/components/data/list/hooks/index.d.ts +11 -0
  343. package/components/data/list/hooks/index.js +22 -0
  344. package/components/data/list/hooks/props.d.ts +89 -0
  345. package/components/data/list/hooks/props.js +0 -0
  346. package/components/data/list/hooks/useCurrentPageItems.d.ts +6 -0
  347. package/components/data/list/hooks/useCurrentPageItems.js +30 -0
  348. package/components/data/list/hooks/useGroupedData.d.ts +9 -0
  349. package/components/data/list/hooks/useGroupedData.js +23 -0
  350. package/components/data/list/hooks/useListData.d.ts +9 -0
  351. package/components/data/list/hooks/useListData.js +30 -0
  352. package/components/data/list/hooks/useListEffects.d.ts +67 -0
  353. package/components/data/list/hooks/useListEffects.js +286 -0
  354. package/components/data/list/hooks/useListEventHandlers.d.ts +9 -0
  355. package/components/data/list/hooks/useListEventHandlers.js +340 -0
  356. package/components/data/list/hooks/useListPagination.d.ts +8 -0
  357. package/components/data/list/hooks/useListPagination.js +117 -0
  358. package/components/data/list/hooks/useListState.d.ts +28 -0
  359. package/components/data/list/hooks/useListState.js +72 -0
  360. package/components/data/list/hooks/useListStateManager.d.ts +26 -0
  361. package/components/data/list/hooks/useListStateManager.js +140 -0
  362. package/components/data/list/hooks/usePaginatedGroupedData.d.ts +6 -0
  363. package/components/data/list/hooks/usePaginatedGroupedData.js +98 -0
  364. package/components/data/list/index.d.ts +186 -0
  365. package/components/data/list/index.js +688 -0
  366. package/components/data/list/props.d.ts +428 -0
  367. package/components/data/list/props.js +0 -0
  368. package/components/data/list/templates/media-template.d.ts +2 -0
  369. package/components/data/list/templates/media-template.js +29 -0
  370. package/components/data/list/utils/constants.d.ts +51 -0
  371. package/components/data/list/utils/constants.js +68 -0
  372. package/components/data/list/utils/list-helpers.d.ts +46 -0
  373. package/components/data/list/utils/list-helpers.js +153 -0
  374. package/components/data/list/utils/list-widget-methods.d.ts +4 -0
  375. package/components/data/list/utils/list-widget-methods.js +139 -0
  376. package/components/data/list/utils/widget-instance-utils.d.ts +33 -0
  377. package/components/data/list/utils/widget-instance-utils.js +46 -0
  378. package/components/data/live-filter/index.d.ts +15 -0
  379. package/components/data/live-filter/index.js +252 -0
  380. package/components/data/live-filter/props.d.ts +96 -0
  381. package/components/data/live-filter/props.js +9 -0
  382. package/components/data/live-form/index.d.ts +15 -0
  383. package/components/data/live-form/index.js +120 -0
  384. package/components/data/live-form/props.d.ts +50 -0
  385. package/components/data/live-form/props.js +13 -0
  386. package/components/data/pagination/components/BasicPagination.d.ts +3 -0
  387. package/components/data/pagination/components/BasicPagination.js +153 -0
  388. package/components/data/pagination/components/ClassicPagination.d.ts +3 -0
  389. package/components/data/pagination/components/ClassicPagination.js +168 -0
  390. package/components/data/pagination/components/InlinePagination.d.ts +11 -0
  391. package/components/data/pagination/components/InlinePagination.js +98 -0
  392. package/components/data/pagination/components/LoadingComponent.d.ts +3 -0
  393. package/components/data/pagination/components/LoadingComponent.js +18 -0
  394. package/components/data/pagination/components/PageSizeSelector.d.ts +3 -0
  395. package/components/data/pagination/components/PageSizeSelector.js +89 -0
  396. package/components/data/pagination/components/PagerNavigation.d.ts +3 -0
  397. package/components/data/pagination/components/PagerNavigation.js +84 -0
  398. package/components/data/pagination/components/TotalRecords.d.ts +3 -0
  399. package/components/data/pagination/components/TotalRecords.js +49 -0
  400. package/components/data/pagination/components/index.d.ts +6 -0
  401. package/components/data/pagination/components/index.js +14 -0
  402. package/components/data/pagination/components/props.d.ts +54 -0
  403. package/components/data/pagination/components/props.js +0 -0
  404. package/components/data/pagination/hooks/index.d.ts +2 -0
  405. package/components/data/pagination/hooks/index.js +6 -0
  406. package/components/data/pagination/hooks/props.d.ts +232 -0
  407. package/components/data/pagination/hooks/props.js +0 -0
  408. package/components/data/pagination/hooks/useNavigationSize.d.ts +5 -0
  409. package/components/data/pagination/hooks/useNavigationSize.js +35 -0
  410. package/components/data/pagination/hooks/usePagination.d.ts +35 -0
  411. package/components/data/pagination/hooks/usePagination.js +914 -0
  412. package/components/data/pagination/index.d.ts +13 -0
  413. package/components/data/pagination/index.js +401 -0
  414. package/components/data/table/components/AddNewRow.d.ts +3 -0
  415. package/components/data/table/components/AddNewRow.js +162 -0
  416. package/components/data/table/components/EditableCell.d.ts +4 -0
  417. package/components/data/table/components/EditableCell.js +85 -0
  418. package/components/data/table/components/FieldValidationError.d.ts +4 -0
  419. package/components/data/table/components/FieldValidationError.js +23 -0
  420. package/components/data/table/components/RowCells.d.ts +29 -0
  421. package/components/data/table/components/RowCells.js +115 -0
  422. package/components/data/table/components/RowExpansionButton.d.ts +4 -0
  423. package/components/data/table/components/RowExpansionButton.js +78 -0
  424. package/components/data/table/components/SummaryCell.d.ts +3 -0
  425. package/components/data/table/components/SummaryCell.js +77 -0
  426. package/components/data/table/components/SummaryRow.d.ts +3 -0
  427. package/components/data/table/components/SummaryRow.js +47 -0
  428. package/components/data/table/components/SummaryRowFooter.d.ts +3 -0
  429. package/components/data/table/components/SummaryRowFooter.js +39 -0
  430. package/components/data/table/components/TableBody.d.ts +3 -0
  431. package/components/data/table/components/TableBody.js +284 -0
  432. package/components/data/table/components/TableDataRow.d.ts +27 -0
  433. package/components/data/table/components/TableDataRow.js +139 -0
  434. package/components/data/table/components/TableFilters.d.ts +24 -0
  435. package/components/data/table/components/TableFilters.js +430 -0
  436. package/components/data/table/components/TableFooterActions.d.ts +3 -0
  437. package/components/data/table/components/TableFooterActions.js +41 -0
  438. package/components/data/table/components/TableHeader.d.ts +3 -0
  439. package/components/data/table/components/TableHeader.js +477 -0
  440. package/components/data/table/components/TablePanelHeading.d.ts +3 -0
  441. package/components/data/table/components/TablePanelHeading.js +190 -0
  442. package/components/data/table/components/index.d.ts +12 -0
  443. package/components/data/table/components/index.js +27 -0
  444. package/components/data/table/hooks/index.d.ts +19 -0
  445. package/components/data/table/hooks/index.js +22 -0
  446. package/components/data/table/hooks/use-edited-rows.d.ts +16 -0
  447. package/components/data/table/hooks/use-edited-rows.js +106 -0
  448. package/components/data/table/hooks/useCellState.d.ts +10 -0
  449. package/components/data/table/hooks/useCellState.js +85 -0
  450. package/components/data/table/hooks/useCustomExpressionColumns.d.ts +16 -0
  451. package/components/data/table/hooks/useCustomExpressionColumns.js +67 -0
  452. package/components/data/table/hooks/useDynamicColumns.d.ts +34 -0
  453. package/components/data/table/hooks/useDynamicColumns.js +74 -0
  454. package/components/data/table/hooks/useEditingState.d.ts +5 -0
  455. package/components/data/table/hooks/useEditingState.js +36 -0
  456. package/components/data/table/hooks/useFormWidget.d.ts +2 -0
  457. package/components/data/table/hooks/useFormWidget.js +181 -0
  458. package/components/data/table/hooks/usePaginationState.d.ts +6 -0
  459. package/components/data/table/hooks/usePaginationState.js +71 -0
  460. package/components/data/table/hooks/usePanelStructure.d.ts +2 -0
  461. package/components/data/table/hooks/usePanelStructure.js +49 -0
  462. package/components/data/table/hooks/useResponsiveColumns.d.ts +87 -0
  463. package/components/data/table/hooks/useResponsiveColumns.js +28 -0
  464. package/components/data/table/hooks/useRowExpansion.d.ts +5 -0
  465. package/components/data/table/hooks/useRowExpansion.js +154 -0
  466. package/components/data/table/hooks/useRowHandlers.d.ts +5 -0
  467. package/components/data/table/hooks/useRowHandlers.js +58 -0
  468. package/components/data/table/hooks/useRowSelection.d.ts +2 -0
  469. package/components/data/table/hooks/useRowSelection.js +348 -0
  470. package/components/data/table/hooks/useServerSideSorting.d.ts +26 -0
  471. package/components/data/table/hooks/useServerSideSorting.js +136 -0
  472. package/components/data/table/hooks/useTableColumns.d.ts +2 -0
  473. package/components/data/table/hooks/useTableColumns.js +359 -0
  474. package/components/data/table/hooks/useTableData.d.ts +2 -0
  475. package/components/data/table/hooks/useTableData.js +172 -0
  476. package/components/data/table/hooks/useTableEdit.d.ts +4 -0
  477. package/components/data/table/hooks/useTableEdit.js +612 -0
  478. package/components/data/table/hooks/useTableEffects.d.ts +25 -0
  479. package/components/data/table/hooks/useTableEffects.js +110 -0
  480. package/components/data/table/hooks/useTableFilter.d.ts +26 -0
  481. package/components/data/table/hooks/useTableFilter.js +396 -0
  482. package/components/data/table/hooks/useTableInitialization.d.ts +5 -0
  483. package/components/data/table/hooks/useTableInitialization.js +73 -0
  484. package/components/data/table/hooks/useTableState.d.ts +2 -0
  485. package/components/data/table/hooks/useTableState.js +53 -0
  486. package/components/data/table/hooks/useTableStateManager.d.ts +38 -0
  487. package/components/data/table/hooks/useTableStateManager.js +460 -0
  488. package/components/data/table/index.d.ts +299 -0
  489. package/components/data/table/index.js +1734 -0
  490. package/components/data/table/live-table/index.d.ts +78 -0
  491. package/components/data/table/live-table/index.js +220 -0
  492. package/components/data/table/props.d.ts +1391 -0
  493. package/components/data/table/props.js +0 -0
  494. package/components/data/table/table-action/index.d.ts +68 -0
  495. package/components/data/table/table-action/index.js +116 -0
  496. package/components/data/table/table-column/index.d.ts +68 -0
  497. package/components/data/table/table-column/index.js +50 -0
  498. package/components/data/table/table-group/index.d.ts +13 -0
  499. package/components/data/table/table-group/index.js +8 -0
  500. package/components/data/table/table-row/index.d.ts +68 -0
  501. package/components/data/table/table-row/index.js +66 -0
  502. package/components/data/table/table-row-action/index.d.ts +72 -0
  503. package/components/data/table/table-row-action/index.js +120 -0
  504. package/components/data/table/utils/buildSelectionColumns.d.ts +3 -0
  505. package/components/data/table/utils/buildSelectionColumns.js +134 -0
  506. package/components/data/table/utils/columnBuilder.d.ts +62 -0
  507. package/components/data/table/utils/columnBuilder.js +200 -0
  508. package/components/data/table/utils/columnProxy.d.ts +21 -0
  509. package/components/data/table/utils/columnProxy.js +99 -0
  510. package/components/data/table/utils/columnWidthDistribution.d.ts +22 -0
  511. package/components/data/table/utils/columnWidthDistribution.js +87 -0
  512. package/components/data/table/utils/constants.d.ts +48 -0
  513. package/components/data/table/utils/constants.js +129 -0
  514. package/components/data/table/utils/crud-handlers.d.ts +11 -0
  515. package/components/data/table/utils/crud-handlers.js +342 -0
  516. package/components/data/table/utils/dynamic-columns.d.ts +38 -0
  517. package/components/data/table/utils/dynamic-columns.js +172 -0
  518. package/components/data/table/utils/expansionColumn.d.ts +23 -0
  519. package/components/data/table/utils/expansionColumn.js +56 -0
  520. package/components/data/table/utils/groupHeaderUtils.d.ts +18 -0
  521. package/components/data/table/utils/groupHeaderUtils.js +77 -0
  522. package/components/data/table/utils/index.d.ts +119 -0
  523. package/components/data/table/utils/index.js +733 -0
  524. package/components/data/table/utils/renderDisplayCell.d.ts +11 -0
  525. package/components/data/table/utils/renderDisplayCell.js +141 -0
  526. package/components/data/table/utils/script-page-size-broadcast.d.ts +2 -0
  527. package/components/data/table/utils/script-page-size-broadcast.js +33 -0
  528. package/components/data/table/utils/selectionUtils.d.ts +37 -0
  529. package/components/data/table/utils/selectionUtils.js +111 -0
  530. package/components/data/table/utils/table-helpers.d.ts +62 -0
  531. package/components/data/table/utils/table-helpers.js +64 -0
  532. package/components/data/table/utils/validation.d.ts +13 -0
  533. package/components/data/table/utils/validation.js +82 -0
  534. package/components/data/table/utils/widgetMapping.d.ts +5 -0
  535. package/components/data/table/utils/widgetMapping.js +41 -0
  536. package/components/data/types.d.ts +104 -0
  537. package/components/data/types.js +113 -0
  538. package/components/data/utils/field-data-utils.d.ts +7 -0
  539. package/components/data/utils/field-data-utils.js +62 -0
  540. package/components/data/utils/filter-field-util.d.ts +13 -0
  541. package/components/data/utils/filter-field-util.js +79 -0
  542. package/components/data/utils/index.d.ts +90 -0
  543. package/components/data/utils/index.js +217 -0
  544. package/components/dialogs/alert-dialog/index.d.ts +164 -0
  545. package/components/dialogs/alert-dialog/index.js +95 -0
  546. package/components/dialogs/alert-dialog/props.d.ts +43 -0
  547. package/components/dialogs/alert-dialog/props.js +0 -0
  548. package/components/dialogs/confirm-dialog/index.d.ts +166 -0
  549. package/components/dialogs/confirm-dialog/index.js +125 -0
  550. package/components/dialogs/confirm-dialog/props.d.ts +47 -0
  551. package/components/dialogs/confirm-dialog/props.js +0 -0
  552. package/components/dialogs/dialog/index.d.ts +176 -0
  553. package/components/dialogs/dialog/index.js +98 -0
  554. package/components/dialogs/dialog/props.d.ts +66 -0
  555. package/components/dialogs/dialog/props.js +0 -0
  556. package/components/dialogs/dialog-actions/index.d.ts +70 -0
  557. package/components/dialogs/dialog-actions/index.js +14 -0
  558. package/components/dialogs/dialog-actions/props.d.ts +14 -0
  559. package/components/dialogs/dialog-actions/props.js +0 -0
  560. package/components/dialogs/dialog-body/index.d.ts +69 -0
  561. package/components/dialogs/dialog-body/index.js +15 -0
  562. package/components/dialogs/dialog-body/props.d.ts +15 -0
  563. package/components/dialogs/dialog-body/props.js +0 -0
  564. package/components/dialogs/dialog-content/index.d.ts +72 -0
  565. package/components/dialogs/dialog-content/index.js +50 -0
  566. package/components/dialogs/dialog-content/props.d.ts +27 -0
  567. package/components/dialogs/dialog-content/props.js +0 -0
  568. package/components/dialogs/dialog-header/index.d.ts +87 -0
  569. package/components/dialogs/dialog-header/index.js +90 -0
  570. package/components/dialogs/dialog-header/props.d.ts +73 -0
  571. package/components/dialogs/dialog-header/props.js +0 -0
  572. package/components/dialogs/iframe-dialog/index.d.ts +184 -0
  573. package/components/dialogs/iframe-dialog/index.js +139 -0
  574. package/components/dialogs/iframe-dialog/props.d.ts +83 -0
  575. package/components/dialogs/iframe-dialog/props.js +0 -0
  576. package/components/dialogs/index.d.ts +4 -0
  577. package/components/dialogs/index.js +142 -0
  578. package/components/dialogs/login-dialog/index.d.ts +171 -0
  579. package/components/dialogs/login-dialog/index.js +309 -0
  580. package/components/dialogs/login-dialog/props.d.ts +99 -0
  581. package/components/dialogs/login-dialog/props.js +0 -0
  582. package/components/dialogs/page-dialog/index.d.ts +170 -0
  583. package/components/dialogs/page-dialog/index.js +115 -0
  584. package/components/dialogs/page-dialog/props.d.ts +60 -0
  585. package/components/dialogs/page-dialog/props.js +0 -0
  586. package/components/dialogs/props.d.ts +41 -0
  587. package/components/dialogs/props.js +0 -0
  588. package/components/dialogs/withDialogWrapper.d.ts +59 -0
  589. package/components/dialogs/withDialogWrapper.js +151 -0
  590. package/components/form/button/index.d.ts +80 -0
  591. package/components/form/button/index.js +311 -0
  592. package/components/form/button/props.d.ts +71 -0
  593. package/components/form/button/props.js +0 -0
  594. package/components/form/button-group/index.d.ts +72 -0
  595. package/components/form/button-group/index.js +85 -0
  596. package/components/form/button-group/props.d.ts +24 -0
  597. package/components/form/button-group/props.js +0 -0
  598. package/components/input/calendar/index.d.ts +136 -0
  599. package/components/input/calendar/index.js +614 -0
  600. package/components/input/calendar/props.d.ts +105 -0
  601. package/components/input/calendar/props.js +0 -0
  602. package/components/input/calendar/utils.d.ts +51 -0
  603. package/components/input/calendar/utils.js +328 -0
  604. package/components/input/chips/SortableChip/index.d.ts +4 -0
  605. package/components/input/chips/SortableChip/index.js +124 -0
  606. package/components/input/chips/SortableChip/props.d.ts +16 -0
  607. package/components/input/chips/SortableChip/props.js +0 -0
  608. package/components/input/chips/index.d.ts +230 -0
  609. package/components/input/chips/index.js +682 -0
  610. package/components/input/chips/props.d.ts +232 -0
  611. package/components/input/chips/props.js +0 -0
  612. package/components/input/chips/utils.d.ts +27 -0
  613. package/components/input/chips/utils.js +330 -0
  614. package/components/input/color-picker/index.d.ts +157 -0
  615. package/components/input/color-picker/index.js +642 -0
  616. package/components/input/color-picker/props.d.ts +131 -0
  617. package/components/input/color-picker/props.js +0 -0
  618. package/components/input/composite/index.d.ts +72 -0
  619. package/components/input/composite/index.js +109 -0
  620. package/components/input/composite/props.d.ts +23 -0
  621. package/components/input/composite/props.js +0 -0
  622. package/components/input/currency/index.d.ts +181 -0
  623. package/components/input/currency/index.js +318 -0
  624. package/components/input/currency/props.d.ts +154 -0
  625. package/components/input/currency/props.js +0 -0
  626. package/components/input/default/checkbox/index.d.ts +160 -0
  627. package/components/input/default/checkbox/index.js +362 -0
  628. package/components/input/default/checkbox/props.d.ts +86 -0
  629. package/components/input/default/checkbox/props.js +0 -0
  630. package/components/input/default/checkboxset/index.d.ts +199 -0
  631. package/components/input/default/checkboxset/index.js +563 -0
  632. package/components/input/default/checkboxset/props.d.ts +203 -0
  633. package/components/input/default/checkboxset/props.js +0 -0
  634. package/components/input/default/checkboxset/utils.d.ts +2 -0
  635. package/components/input/default/checkboxset/utils.js +20 -0
  636. package/components/input/default/radioset/index.d.ts +190 -0
  637. package/components/input/default/radioset/index.js +425 -0
  638. package/components/input/default/radioset/props.d.ts +178 -0
  639. package/components/input/default/radioset/props.js +0 -0
  640. package/components/input/default/switch/index.d.ts +184 -0
  641. package/components/input/default/switch/index.js +586 -0
  642. package/components/input/default/switch/prop.d.ts +155 -0
  643. package/components/input/default/switch/prop.js +0 -0
  644. package/components/input/epoch/date/components/DatePickerPopover.d.ts +4 -0
  645. package/components/input/epoch/date/components/DatePickerPopover.js +267 -0
  646. package/components/input/epoch/date/index.d.ts +89 -0
  647. package/components/input/epoch/date/index.js +742 -0
  648. package/components/input/epoch/date/props.d.ts +274 -0
  649. package/components/input/epoch/date/props.js +0 -0
  650. package/components/input/epoch/date/styled.d.ts +3 -0
  651. package/components/input/epoch/date/styled.js +61 -0
  652. package/components/input/epoch/date/utils.d.ts +20 -0
  653. package/components/input/epoch/date/utils.js +153 -0
  654. package/components/input/epoch/datetime/index.d.ts +89 -0
  655. package/components/input/epoch/datetime/index.js +784 -0
  656. package/components/input/epoch/datetime/props.d.ts +212 -0
  657. package/components/input/epoch/datetime/props.js +0 -0
  658. package/components/input/epoch/datetime/utils.d.ts +20 -0
  659. package/components/input/epoch/datetime/utils.js +218 -0
  660. package/components/input/epoch/time/index.d.ts +89 -0
  661. package/components/input/epoch/time/index.js +510 -0
  662. package/components/input/epoch/time/props.d.ts +155 -0
  663. package/components/input/epoch/time/props.js +0 -0
  664. package/components/input/epoch/time/utils.d.ts +24 -0
  665. package/components/input/epoch/time/utils.js +229 -0
  666. package/components/input/fileupload/Utils.d.ts +14 -0
  667. package/components/input/fileupload/Utils.js +112 -0
  668. package/components/input/fileupload/components/ListItems.d.ts +15 -0
  669. package/components/input/fileupload/components/ListItems.js +159 -0
  670. package/components/input/fileupload/components/MultiUpload.d.ts +4 -0
  671. package/components/input/fileupload/components/MultiUpload.js +92 -0
  672. package/components/input/fileupload/components/SingleUpload.d.ts +4 -0
  673. package/components/input/fileupload/components/SingleUpload.js +69 -0
  674. package/components/input/fileupload/index.d.ts +97 -0
  675. package/components/input/fileupload/index.js +265 -0
  676. package/components/input/fileupload/props.d.ts +330 -0
  677. package/components/input/fileupload/props.js +0 -0
  678. package/components/input/fileupload/useFileUpload.d.ts +36 -0
  679. package/components/input/fileupload/useFileUpload.js +365 -0
  680. package/components/input/number/index.d.ts +170 -0
  681. package/components/input/number/index.js +448 -0
  682. package/components/input/number/props.d.ts +119 -0
  683. package/components/input/number/props.js +0 -0
  684. package/components/input/rating/index.d.ts +218 -0
  685. package/components/input/rating/index.js +473 -0
  686. package/components/input/rating/props.d.ts +203 -0
  687. package/components/input/rating/props.js +0 -0
  688. package/components/input/select/index.d.ts +179 -0
  689. package/components/input/select/index.js +436 -0
  690. package/components/input/select/props.d.ts +134 -0
  691. package/components/input/select/props.js +0 -0
  692. package/components/input/slider/index.d.ts +172 -0
  693. package/components/input/slider/index.js +363 -0
  694. package/components/input/slider/props.d.ts +103 -0
  695. package/components/input/slider/props.js +0 -0
  696. package/components/input/text/index.d.ts +187 -0
  697. package/components/input/text/index.js +489 -0
  698. package/components/input/text/props.d.ts +149 -0
  699. package/components/input/text/props.js +0 -0
  700. package/components/input/text/util.d.ts +42 -0
  701. package/components/input/text/util.js +194 -0
  702. package/components/input/textarea/index.d.ts +157 -0
  703. package/components/input/textarea/index.js +335 -0
  704. package/components/input/textarea/props.d.ts +85 -0
  705. package/components/input/textarea/props.js +0 -0
  706. package/components/input/textarea/util.d.ts +1 -0
  707. package/components/input/textarea/util.js +17 -0
  708. package/components/input/upload/index.d.ts +148 -0
  709. package/components/input/upload/index.js +139 -0
  710. package/components/input/upload/props.d.ts +61 -0
  711. package/components/input/upload/props.js +0 -0
  712. package/components/input/util/index.d.ts +1 -0
  713. package/components/input/util/index.js +9 -0
  714. package/components/layout/footer/index.d.ts +15 -0
  715. package/components/layout/footer/index.js +14 -0
  716. package/components/layout/footer/props.d.ts +8 -0
  717. package/components/layout/footer/props.js +0 -0
  718. package/components/layout/header/index.d.ts +15 -0
  719. package/components/layout/header/index.js +14 -0
  720. package/components/layout/header/props.d.ts +8 -0
  721. package/components/layout/header/props.js +0 -0
  722. package/components/layout/leftnav/index.d.ts +15 -0
  723. package/components/layout/leftnav/index.js +67 -0
  724. package/components/layout/leftnav/props.d.ts +34 -0
  725. package/components/layout/leftnav/props.js +0 -0
  726. package/components/layout/leftnav/utils/page-class-util.d.ts +9 -0
  727. package/components/layout/leftnav/utils/page-class-util.js +28 -0
  728. package/components/layout/rightnav/index.d.ts +15 -0
  729. package/components/layout/rightnav/index.js +14 -0
  730. package/components/layout/rightnav/props.d.ts +13 -0
  731. package/components/layout/rightnav/props.js +0 -0
  732. package/components/layout/topnav/index.d.ts +15 -0
  733. package/components/layout/topnav/index.js +26 -0
  734. package/components/layout/topnav/props.d.ts +8 -0
  735. package/components/layout/topnav/props.js +0 -0
  736. package/components/navbar/index.d.ts +79 -0
  737. package/components/navbar/index.js +136 -0
  738. package/components/navbar/nav/index.d.ts +93 -0
  739. package/components/navbar/nav/index.js +248 -0
  740. package/components/navbar/nav/props.d.ts +56 -0
  741. package/components/navbar/nav/props.js +0 -0
  742. package/components/navbar/nav-item/index.d.ts +66 -0
  743. package/components/navbar/nav-item/index.js +75 -0
  744. package/components/navbar/nav-item/props.d.ts +29 -0
  745. package/components/navbar/nav-item/props.js +0 -0
  746. package/components/navigation/breadcrumb/index.d.ts +69 -0
  747. package/components/navigation/breadcrumb/index.js +44 -0
  748. package/components/navigation/breadcrumb/props.d.ts +6 -0
  749. package/components/navigation/breadcrumb/props.js +0 -0
  750. package/components/navigation/menu/components/ListItems.d.ts +23 -0
  751. package/components/navigation/menu/components/ListItems.js +80 -0
  752. package/components/navigation/menu/constants.d.ts +53 -0
  753. package/components/navigation/menu/constants.js +87 -0
  754. package/components/navigation/menu/hooks/useHoverState.hook.d.ts +17 -0
  755. package/components/navigation/menu/hooks/useHoverState.hook.js +21 -0
  756. package/components/navigation/menu/hooks/useKeyboardMovements.hook.d.ts +12 -0
  757. package/components/navigation/menu/hooks/useKeyboardMovements.hook.js +43 -0
  758. package/components/navigation/menu/hooks/useTransformedDataset.hook.d.ts +5 -0
  759. package/components/navigation/menu/hooks/useTransformedDataset.hook.js +22 -0
  760. package/components/navigation/menu/index.d.ts +109 -0
  761. package/components/navigation/menu/index.js +1114 -0
  762. package/components/navigation/menu/props.d.ts +75 -0
  763. package/components/navigation/menu/props.js +0 -0
  764. package/components/navigation/menu/utils/action-task.d.ts +1 -0
  765. package/components/navigation/menu/utils/action-task.js +11 -0
  766. package/components/navigation/menu/utils/role-filter.d.ts +9 -0
  767. package/components/navigation/menu/utils/role-filter.js +61 -0
  768. package/components/navigation/popover/index.d.ts +100 -0
  769. package/components/navigation/popover/index.js +311 -0
  770. package/components/navigation/popover/props.d.ts +28 -0
  771. package/components/navigation/popover/props.js +10 -0
  772. package/components/page/content/index.d.ts +15 -0
  773. package/components/page/content/index.js +13 -0
  774. package/components/page/content/props.d.ts +6 -0
  775. package/components/page/content/props.js +0 -0
  776. package/components/page/error-boundary/index.d.ts +13 -0
  777. package/components/page/error-boundary/index.js +129 -0
  778. package/components/page/error-boundary/props.d.ts +30 -0
  779. package/components/page/error-boundary/props.js +0 -0
  780. package/components/page/index.d.ts +15 -0
  781. package/components/page/index.js +149 -0
  782. package/components/page/page-content/index.d.ts +15 -0
  783. package/components/page/page-content/index.js +29 -0
  784. package/components/page/page-content/props.d.ts +16 -0
  785. package/components/page/page-content/props.js +0 -0
  786. package/components/page/page-context.d.ts +4 -0
  787. package/components/page/page-context.js +5 -0
  788. package/components/page/partial/index.d.ts +64 -0
  789. package/components/page/partial/index.js +51 -0
  790. package/components/page/partial/props.d.ts +6 -0
  791. package/components/page/partial/props.js +0 -0
  792. package/components/page/partial-container/index.d.ts +13 -0
  793. package/components/page/partial-container/index.js +84 -0
  794. package/components/page/partial-container/props.d.ts +38 -0
  795. package/components/page/partial-container/props.js +0 -0
  796. package/components/page/props.d.ts +33 -0
  797. package/components/page/props.js +0 -0
  798. package/components/page/toast-container/index.d.ts +13 -0
  799. package/components/page/toast-container/index.js +22 -0
  800. package/components/page/toast-container/props.d.ts +8 -0
  801. package/components/page/toast-container/props.js +0 -0
  802. package/components/prefab/container/index.d.ts +12 -0
  803. package/components/prefab/container/index.js +71 -0
  804. package/components/prefab/container/props.d.ts +23 -0
  805. package/components/prefab/container/props.js +0 -0
  806. package/components/prefab/index.d.ts +12 -0
  807. package/components/prefab/index.js +85 -0
  808. package/components/prefab/props.d.ts +19 -0
  809. package/components/prefab/props.js +0 -0
  810. package/context/AppContext.d.ts +11 -0
  811. package/context/AppContext.js +43 -0
  812. package/context/AppSpinnerProvider.d.ts +15 -0
  813. package/context/AppSpinnerProvider.js +28 -0
  814. package/context/LayoutProvider.d.ts +7 -0
  815. package/context/LayoutProvider.js +63 -0
  816. package/context/LocalizationProvider.d.ts +4 -0
  817. package/context/LocalizationProvider.js +65 -0
  818. package/context/PrefabContext.d.ts +15 -0
  819. package/context/PrefabContext.js +144 -0
  820. package/context/WidgetProvider.d.ts +19 -0
  821. package/context/WidgetProvider.js +266 -0
  822. package/core/app-config.js +0 -0
  823. package/core/app.service.d.ts +19 -0
  824. package/core/app.service.js +239 -0
  825. package/core/appVariablesStore.d.ts +5 -0
  826. package/core/appVariablesStore.js +18 -0
  827. package/core/appstore.d.ts +45 -0
  828. package/core/appstore.js +80 -0
  829. package/core/constants/currency-constant.d.ts +11 -0
  830. package/core/constants/currency-constant.js +1069 -0
  831. package/core/constants/events.d.ts +27 -0
  832. package/core/constants/events.js +65 -0
  833. package/core/constants/index.d.ts +10 -0
  834. package/core/constants/index.js +39 -0
  835. package/core/dialog.service.d.ts +31 -0
  836. package/core/dialog.service.js +55 -0
  837. package/core/event-notifier.d.ts +20 -0
  838. package/core/event-notifier.js +113 -0
  839. package/core/formatter/array-formatters.d.ts +4 -0
  840. package/core/formatter/array-formatters.js +19 -0
  841. package/core/formatter/date-formatters.d.ts +9 -0
  842. package/core/formatter/date-formatters.js +181 -0
  843. package/core/formatter/index.d.ts +19 -0
  844. package/core/formatter/index.js +80 -0
  845. package/core/formatter/number-formatters.d.ts +20 -0
  846. package/core/formatter/number-formatters.js +137 -0
  847. package/core/formatter/security-formatters.d.ts +25 -0
  848. package/core/formatter/security-formatters.js +271 -0
  849. package/core/formatter/string-formatters.d.ts +10 -0
  850. package/core/formatter/string-formatters.js +27 -0
  851. package/core/formatter/types.d.ts +33 -0
  852. package/core/formatter/types.js +12 -0
  853. package/core/formatters.d.ts +3 -0
  854. package/core/formatters.js +6 -0
  855. package/core/proxy-service.d.ts +9 -0
  856. package/core/proxy-service.js +583 -0
  857. package/core/script-registry.d.ts +23 -0
  858. package/core/script-registry.js +102 -0
  859. package/core/security.service.d.ts +12 -0
  860. package/core/security.service.js +8 -0
  861. package/core/util/compare.d.ts +1 -0
  862. package/core/util/compare.js +24 -0
  863. package/core/util/dom.d.ts +4 -0
  864. package/core/util/dom.js +76 -0
  865. package/core/util/index.d.ts +72 -0
  866. package/core/util/index.js +222 -0
  867. package/core/util/safe-is-equal.js +104 -0
  868. package/core/util/security.d.ts +64 -0
  869. package/core/util/security.js +144 -0
  870. package/core/util/utils.d.ts +41 -0
  871. package/core/util/utils.js +220 -0
  872. package/core/widget-observer.d.ts +3 -0
  873. package/core/widget-observer.js +71 -0
  874. package/higherOrder/BaseApp.d.ts +13 -0
  875. package/higherOrder/BaseApp.js +440 -0
  876. package/higherOrder/BaseAppProps.d.ts +38 -0
  877. package/higherOrder/BaseAppProps.js +0 -0
  878. package/higherOrder/BaseDateTime.d.ts +62 -0
  879. package/higherOrder/BaseDateTime.js +314 -0
  880. package/higherOrder/BasePage.d.ts +10 -0
  881. package/higherOrder/BasePage.js +721 -0
  882. package/higherOrder/BasePartial.d.ts +7 -0
  883. package/higherOrder/BasePartial.js +98 -0
  884. package/higherOrder/BasePrefab.d.ts +17 -0
  885. package/higherOrder/BasePrefab.js +218 -0
  886. package/higherOrder/DataNav.d.ts +53 -0
  887. package/higherOrder/DataNav.js +446 -0
  888. package/higherOrder/helper.d.ts +32 -0
  889. package/higherOrder/helper.js +95 -0
  890. package/higherOrder/props.d.ts +127 -0
  891. package/higherOrder/props.js +0 -0
  892. package/higherOrder/useActivePageReactivity.d.ts +21 -0
  893. package/higherOrder/useActivePageReactivity.js +57 -0
  894. package/higherOrder/withBaseWrapper.d.ts +5 -0
  895. package/higherOrder/withBaseWrapper.js +180 -0
  896. package/higherOrder/withRenderLogger.d.ts +15 -0
  897. package/higherOrder/withRenderLogger.js +53 -0
  898. package/higherOrder/withStandalone.d.ts +11 -0
  899. package/higherOrder/withStandalone.js +31 -0
  900. package/hooks/useAccess.d.ts +18 -0
  901. package/hooks/useAccess.js +145 -0
  902. package/hooks/useAppConfig.d.ts +3 -0
  903. package/hooks/useAppConfig.js +17 -0
  904. package/hooks/useAuth.d.ts +55 -0
  905. package/hooks/useAuth.js +338 -0
  906. package/hooks/useDataSourceSubscription.d.ts +15 -0
  907. package/hooks/useDataSourceSubscription.js +115 -0
  908. package/hooks/useDebounce.d.ts +21 -0
  909. package/hooks/useDebounce.js +48 -0
  910. package/hooks/useDeviceVisibility.d.ts +4 -0
  911. package/hooks/useDeviceVisibility.js +40 -0
  912. package/hooks/useHttp.d.ts +58 -0
  913. package/hooks/useHttp.js +352 -0
  914. package/hooks/useLayoutSize.d.ts +6 -0
  915. package/hooks/useLayoutSize.js +12 -0
  916. package/libs/index.js +4 -0
  917. package/libs/prefab/index.js +6 -0
  918. package/mui-config/theme-provider.d.ts +3 -0
  919. package/mui-config/theme-provider.js +9 -0
  920. package/mui-config/theme.d.ts +2 -0
  921. package/mui-config/theme.js +361 -0
  922. package/package-lock.json +14122 -0
  923. package/package.json +120 -0
  924. package/providers/AppProviders.js +24 -0
  925. package/runtime-dynamic/App.d.ts +7 -0
  926. package/runtime-dynamic/App.js +116 -0
  927. package/runtime-dynamic/app-initializer.d.ts +15 -0
  928. package/runtime-dynamic/app-initializer.js +254 -0
  929. package/runtime-dynamic/components/ErrorBoundary.d.ts +18 -0
  930. package/runtime-dynamic/components/ErrorBoundary.js +76 -0
  931. package/runtime-dynamic/components/PageWrapper.d.ts +1 -0
  932. package/runtime-dynamic/components/PageWrapper.js +31 -0
  933. package/runtime-dynamic/components/PrefabPreview.d.ts +1 -0
  934. package/runtime-dynamic/components/PrefabPreview.js +55 -0
  935. package/runtime-dynamic/components/partial-content.d.ts +14 -0
  936. package/runtime-dynamic/components/partial-content.js +70 -0
  937. package/runtime-dynamic/components/prefab-content.d.ts +10 -0
  938. package/runtime-dynamic/components/prefab-content.js +38 -0
  939. package/runtime-dynamic/components/use-dynamic-component.d.ts +10 -0
  940. package/runtime-dynamic/components/use-dynamic-component.js +58 -0
  941. package/runtime-dynamic/factories/build-base-page-like-component.d.ts +8 -0
  942. package/runtime-dynamic/factories/build-base-page-like-component.js +45 -0
  943. package/runtime-dynamic/factories/dynamic-component.d.ts +9 -0
  944. package/runtime-dynamic/factories/dynamic-component.js +127 -0
  945. package/runtime-dynamic/factories/prefab-factory.d.ts +3 -0
  946. package/runtime-dynamic/factories/prefab-factory.js +61 -0
  947. package/runtime-dynamic/factories/startup-info.d.ts +6 -0
  948. package/runtime-dynamic/factories/startup-info.js +15 -0
  949. package/runtime-dynamic/factories/utils.d.ts +15 -0
  950. package/runtime-dynamic/factories/utils.js +54 -0
  951. package/runtime-dynamic/index.d.ts +14 -0
  952. package/runtime-dynamic/index.js +56 -0
  953. package/runtime-dynamic/main.d.ts +2 -0
  954. package/runtime-dynamic/main.js +54 -0
  955. package/runtime-dynamic/preview-mode.d.ts +15 -0
  956. package/runtime-dynamic/preview-mode.js +16 -0
  957. package/runtime-dynamic/preview-navigation.d.ts +6 -0
  958. package/runtime-dynamic/preview-navigation.js +29 -0
  959. package/runtime-dynamic/preview-path.d.ts +5 -0
  960. package/runtime-dynamic/preview-path.js +13 -0
  961. package/runtime-dynamic/preview-resource-base.d.ts +12 -0
  962. package/runtime-dynamic/preview-resource-base.js +49 -0
  963. package/runtime-dynamic/registry/component-registry.d.ts +3 -0
  964. package/runtime-dynamic/registry/component-registry.js +288 -0
  965. package/runtime-dynamic/registry/custom-widget-registry.d.ts +7 -0
  966. package/runtime-dynamic/registry/custom-widget-registry.js +14 -0
  967. package/runtime-dynamic/registry/index.d.ts +2 -0
  968. package/runtime-dynamic/registry/index.js +24 -0
  969. package/runtime-dynamic/registry/store.d.ts +10 -0
  970. package/runtime-dynamic/registry/store.js +21 -0
  971. package/runtime-dynamic/routes.d.ts +2 -0
  972. package/runtime-dynamic/routes.js +79 -0
  973. package/runtime-dynamic/services/app-extension-provider.d.ts +1 -0
  974. package/runtime-dynamic/services/app-extension-provider.js +18 -0
  975. package/runtime-dynamic/services/autolayout-inject.d.ts +4 -0
  976. package/runtime-dynamic/services/autolayout-inject.js +27 -0
  977. package/runtime-dynamic/services/compile-render.d.ts +9 -0
  978. package/runtime-dynamic/services/compile-render.js +143 -0
  979. package/runtime-dynamic/services/component-ref-provider.d.ts +27 -0
  980. package/runtime-dynamic/services/component-ref-provider.js +75 -0
  981. package/runtime-dynamic/services/css-scoping.d.ts +4 -0
  982. package/runtime-dynamic/services/css-scoping.js +71 -0
  983. package/runtime-dynamic/services/fragment-url.d.ts +16 -0
  984. package/runtime-dynamic/services/fragment-url.js +61 -0
  985. package/runtime-dynamic/services/index.d.ts +9 -0
  986. package/runtime-dynamic/services/index.js +31 -0
  987. package/runtime-dynamic/services/markup-transpiler.d.ts +12 -0
  988. package/runtime-dynamic/services/markup-transpiler.js +58 -0
  989. package/runtime-dynamic/services/prefab-resources.d.ts +18 -0
  990. package/runtime-dynamic/services/prefab-resources.js +71 -0
  991. package/runtime-dynamic/services/resource-manager.d.ts +2 -0
  992. package/runtime-dynamic/services/resource-manager.js +31 -0
  993. package/runtime-dynamic/services/script-executor.d.ts +8 -0
  994. package/runtime-dynamic/services/script-executor.js +76 -0
  995. package/runtime-dynamic/services/variable-factory.d.ts +2 -0
  996. package/runtime-dynamic/services/variable-factory.js +217 -0
  997. package/runtime-dynamic/services/variable-registry.d.ts +12 -0
  998. package/runtime-dynamic/services/variable-registry.js +71 -0
  999. package/runtime-dynamic/services/variable-transpiler.d.ts +5 -0
  1000. package/runtime-dynamic/services/variable-transpiler.js +129 -0
  1001. package/runtime-dynamic/shims/next-image.d.ts +35 -0
  1002. package/runtime-dynamic/shims/next-image.js +89 -0
  1003. package/runtime-dynamic/shims/next-link.d.ts +25 -0
  1004. package/runtime-dynamic/shims/next-link.js +59 -0
  1005. package/runtime-dynamic/shims/next-navigation.d.ts +16 -0
  1006. package/runtime-dynamic/shims/next-navigation.js +35 -0
  1007. package/runtime-dynamic/utils/index.d.ts +11 -0
  1008. package/runtime-dynamic/utils/index.js +38 -0
  1009. package/store/bindActions/i18nActions.d.ts +7 -0
  1010. package/store/bindActions/i18nActions.js +16 -0
  1011. package/store/index.d.ts +18 -0
  1012. package/store/index.js +34 -0
  1013. package/store/middleware/navigationMiddleware.d.ts +10 -0
  1014. package/store/middleware/navigationMiddleware.js +28 -0
  1015. package/store/middleware/pendingTabNavigationIntentMiddleware.d.ts +6 -0
  1016. package/store/middleware/pendingTabNavigationIntentMiddleware.js +20 -0
  1017. package/store/slices/appConfigSlice.d.ts +21 -0
  1018. package/store/slices/appConfigSlice.js +76 -0
  1019. package/store/slices/authSlice.d.ts +54 -0
  1020. package/store/slices/authSlice.js +372 -0
  1021. package/store/slices/i18nSlice.d.ts +27 -0
  1022. package/store/slices/i18nSlice.js +209 -0
  1023. package/store/slices/navigationSlice.d.ts +7 -0
  1024. package/store/slices/navigationSlice.js +37 -0
  1025. package/store/util/resolve-path.d.ts +1 -0
  1026. package/store/util/resolve-path.js +7 -0
  1027. package/store/viewport.service.d.ts +45 -0
  1028. package/store/viewport.service.js +211 -0
  1029. package/types/index.d.ts +70 -0
  1030. package/types/index.js +10 -0
  1031. package/utils/attr.d.ts +1 -0
  1032. package/utils/attr.js +244 -0
  1033. package/utils/custom-expression/index.d.ts +43 -0
  1034. package/utils/custom-expression/index.js +68 -0
  1035. package/utils/custom-expression/parser.d.ts +15 -0
  1036. package/utils/custom-expression/parser.js +137 -0
  1037. package/utils/dataset-util.d.ts +31 -0
  1038. package/utils/dataset-util.js +132 -0
  1039. package/utils/eval-expression.js +23 -0
  1040. package/utils/form-utils.d.ts +84 -0
  1041. package/utils/form-utils.js +91 -0
  1042. package/utils/format-util.d.ts +25 -0
  1043. package/utils/format-util.js +228 -0
  1044. package/utils/layoutsize-util.d.ts +1 -0
  1045. package/utils/layoutsize-util.js +51 -0
  1046. package/utils/lib-error-skipper.d.ts +11 -0
  1047. package/utils/lib-error-skipper.js +77 -0
  1048. package/utils/page-params-util.d.ts +20 -0
  1049. package/utils/page-params-util.js +66 -0
  1050. package/utils/pending-tab-navigation-intent.d.ts +4 -0
  1051. package/utils/pending-tab-navigation-intent.js +15 -0
  1052. package/utils/resource-url.d.ts +1 -0
  1053. package/utils/resource-url.js +16 -0
  1054. package/utils/state-persistance.d.ts +27 -0
  1055. package/utils/state-persistance.js +294 -0
  1056. package/utils/style-utils.d.ts +30 -0
  1057. package/utils/style-utils.js +43 -0
  1058. package/utils/svg-icon.d.ts +27 -0
  1059. package/utils/svg-icon.js +75 -0
  1060. package/utils/transformedDataset-utils.d.ts +67 -0
  1061. package/utils/transformedDataset-utils.js +616 -0
  1062. package/utils/widget-cleanup-util.d.ts +32 -0
  1063. package/utils/widget-cleanup-util.js +77 -0
  1064. package/utils/widgets.d.ts +3 -0
  1065. package/utils/widgets.js +85 -0
  1066. package/variables/base-variable.d.ts +61 -0
  1067. package/variables/base-variable.js +131 -0
  1068. package/variables/constants.d.ts +21 -0
  1069. package/variables/constants.js +24 -0
  1070. package/variables/crud-variable.d.ts +39 -0
  1071. package/variables/crud-variable.js +196 -0
  1072. package/variables/live-variable.d.ts +58 -0
  1073. package/variables/live-variable.js +192 -0
  1074. package/variables/metadata.service.d.ts +24 -0
  1075. package/variables/metadata.service.js +80 -0
  1076. package/variables/model-variable.d.ts +12 -0
  1077. package/variables/model-variable.js +76 -0
  1078. package/variables/service-variable.d.ts +41 -0
  1079. package/variables/service-variable.js +242 -0
  1080. package/wm-namespace.d.ts +11 -0
  1081. package/wm-namespace.js +11 -0
@@ -0,0 +1,1114 @@
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
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import { jsx, jsxs } from "react/jsx-runtime";
33
+ import React, { memo, useEffect, useRef, useState, useMemo, useCallback } from "react";
34
+ import clsx from "clsx";
35
+ import Box from "@mui/material/Box";
36
+ import Button from "@mui/material/Button";
37
+ import Tooltip from "@mui/material/Tooltip";
38
+ import { withBaseWrapper } from "../../../higherOrder/withBaseWrapper";
39
+ import { WmAppIcon } from "../../common/WmAppIcon";
40
+ import { transformDataset } from "../../../utils/transformedDataset-utils";
41
+ import {
42
+ POSITION,
43
+ LAYOUT,
44
+ AUTO_OPEN,
45
+ AUTO_CLOSE,
46
+ TOOLTIP_ENTER_DELAY,
47
+ CARET_CLS,
48
+ menuAlignClass
49
+ } from "./constants";
50
+ import { isEmpty, cloneDeep } from "lodash";
51
+ import Link from "@mui/material/Link";
52
+ import { buildMenuListClasses, CollapsibleMenu, MenuList } from "./components/ListItems";
53
+ import {
54
+ getRouteNameFromLink,
55
+ triggerItemAction
56
+ } from "../../../core/util/utils";
57
+ import { usePathname } from "next/navigation";
58
+ import { executeActionTaskFromItem } from "./utils/action-task";
59
+ import { filterMenuNodesByRole } from "./utils/role-filter";
60
+ import { useKeyboardMovements } from "./hooks/useKeyboardMovements.hook";
61
+ import { useTransformedDataset } from "./hooks/useTransformedDataset.hook";
62
+ import { useHoverState } from "./hooks/useHoverState.hook";
63
+ import { hyperLinkMofify } from "../../../core/constants";
64
+ import { removeInvalidAttributes } from "../../../utils/attr";
65
+ const isPathMatchingLink = (path, link) => {
66
+ const cleanLink = link.replace(/^#\/?/, "").split("?")[0].trim();
67
+ if (!cleanLink) return false;
68
+ return new RegExp(`(^|/)${cleanLink}($|/)`, "i").test(path);
69
+ };
70
+ const hasLinkToCurrentPage = (nodes, currentPath) => {
71
+ if (!nodes || !Array.isArray(nodes)) return false;
72
+ return nodes.some((node) => {
73
+ if (node.link === currentPath) return true;
74
+ return node.children && hasLinkToCurrentPage(node.children, currentPath);
75
+ });
76
+ };
77
+ const WmMenu = memo((props) => {
78
+ var _b, _c;
79
+ const _a = props, {
80
+ menualign = "left",
81
+ menuposition: initialMenuPosition = "down,right",
82
+ menulayout = "vertical",
83
+ menuclass,
84
+ linktarget = "_self",
85
+ iconclass,
86
+ iconurl,
87
+ type = "button",
88
+ animateitems,
89
+ disableMenuContext = false,
90
+ showonhover = false,
91
+ panelPosition,
92
+ autoclose = "outsideClick",
93
+ autoopen = "never",
94
+ hint,
95
+ arialabel,
96
+ width,
97
+ height,
98
+ iconposition = "left",
99
+ caption,
100
+ shortcutkey,
101
+ onClick,
102
+ onSelect,
103
+ navNodes = [],
104
+ styles,
105
+ conditionalstyles,
106
+ className,
107
+ children,
108
+ listener,
109
+ name,
110
+ resetNavNodes,
111
+ nodes$,
112
+ dataset,
113
+ orderby,
114
+ itemlabel = "label",
115
+ itemlink = "Link",
116
+ itemicon = "Icon",
117
+ itemaction,
118
+ userrole,
119
+ loggedInUser,
120
+ itemchildren = "children",
121
+ isactive,
122
+ displayValue,
123
+ onActionsclick,
124
+ dataPath,
125
+ isFromNav = false,
126
+ onNavItemActivate,
127
+ isNavItemActive = false
128
+ } = _a, restProps = __objRest(_a, [
129
+ "menualign",
130
+ "menuposition",
131
+ "menulayout",
132
+ "menuclass",
133
+ "linktarget",
134
+ "iconclass",
135
+ "iconurl",
136
+ "type",
137
+ "animateitems",
138
+ "disableMenuContext",
139
+ "showonhover",
140
+ "panelPosition",
141
+ "autoclose",
142
+ "autoopen",
143
+ "hint",
144
+ "arialabel",
145
+ "width",
146
+ "height",
147
+ "iconposition",
148
+ "caption",
149
+ "shortcutkey",
150
+ "onClick",
151
+ "onSelect",
152
+ "navNodes",
153
+ "styles",
154
+ "conditionalstyles",
155
+ "className",
156
+ "children",
157
+ "listener",
158
+ "name",
159
+ "resetNavNodes",
160
+ "nodes$",
161
+ "dataset",
162
+ "orderby",
163
+ "itemlabel",
164
+ "itemlink",
165
+ "itemicon",
166
+ "itemaction",
167
+ "userrole",
168
+ "loggedInUser",
169
+ "itemchildren",
170
+ "isactive",
171
+ "displayValue",
172
+ "onActionsclick",
173
+ "dataPath",
174
+ "isFromNav",
175
+ "onNavItemActivate",
176
+ "isNavItemActive"
177
+ ]);
178
+ const deepCloneDataset = cloneDeep(dataset);
179
+ const itemLabelWrapper = typeof itemlabel === "function" ? (rest) => itemlabel(__spreadValues({ App: listener == null ? void 0 : listener.App }, rest)) : itemlabel;
180
+ const path = usePathname();
181
+ const user = useMemo(
182
+ () => {
183
+ var _a2, _b2;
184
+ return (_b2 = loggedInUser != null ? loggedInUser : (_a2 = listener == null ? void 0 : listener.appConfig) == null ? void 0 : _a2.loggedInUser) != null ? _b2 : null;
185
+ },
186
+ [loggedInUser, (_b = listener == null ? void 0 : listener.appConfig) == null ? void 0 : _b.loggedInUser]
187
+ );
188
+ const [open, setOpen] = useState(false);
189
+ const [activeItem, setActiveItem] = useState(null);
190
+ const [focusedIndex, setFocusedIndex] = useState(-1);
191
+ const [menuPosition, setMenuPosition] = useState(initialMenuPosition);
192
+ const buttonRef = useRef(null);
193
+ const menuRef = useRef(null);
194
+ const keyboardMovements = useKeyboardMovements(menuPosition);
195
+ const transformedDataset = useTransformedDataset(
196
+ deepCloneDataset,
197
+ itemLabelWrapper,
198
+ orderby,
199
+ itemchildren,
200
+ dataPath
201
+ );
202
+ const filteredDataset = useMemo(() => {
203
+ if (!userrole || !transformedDataset) {
204
+ return transformedDataset;
205
+ }
206
+ const userRoles = (user == null ? void 0 : user.roles) || [];
207
+ return filterMenuNodesByRole(transformedDataset, userRoles, userrole);
208
+ }, [transformedDataset, userrole, user == null ? void 0 : user.roles]);
209
+ const { hoveredPaths, handlePathMouseEnter, handlePathMouseLeave } = useHoverState();
210
+ const handleContainerMouseEnter = useCallback(() => {
211
+ if (showonhover) {
212
+ setOpen(true);
213
+ }
214
+ }, [showonhover]);
215
+ const handleContainerMouseLeave = useCallback(
216
+ (event) => {
217
+ var _a2, _b2, _c2;
218
+ if (!showonhover) return;
219
+ const relatedTarget = event == null ? void 0 : event.relatedTarget;
220
+ const isMovingToMenu = relatedTarget && (((_a2 = relatedTarget.classList) == null ? void 0 : _a2.contains("dropdown-menu")) || ((_b2 = relatedTarget.closest) == null ? void 0 : _b2.call(relatedTarget, ".dropdown-menu")) !== null || ((_c2 = relatedTarget.closest) == null ? void 0 : _c2.call(relatedTarget, ".app-menu")) !== null);
221
+ if (!isMovingToMenu) {
222
+ setOpen(false);
223
+ setFocusedIndex(-1);
224
+ setActiveItem(null);
225
+ }
226
+ },
227
+ [showonhover]
228
+ );
229
+ const transformChildrenDataset = useCallback(
230
+ (children2) => {
231
+ if (!children2 || !Array.isArray(children2)) return [];
232
+ return transformDataset(
233
+ children2,
234
+ "",
235
+ itemLabelWrapper,
236
+ void 0,
237
+ void 0,
238
+ orderby,
239
+ void 0,
240
+ void 0,
241
+ itemchildren
242
+ );
243
+ },
244
+ [itemLabelWrapper, orderby]
245
+ );
246
+ const createRefsForNodes = useCallback(
247
+ (nodes) => {
248
+ if (!nodes || !Array.isArray(nodes)) return [];
249
+ return nodes.map((node) => {
250
+ var _a2, _b2;
251
+ const nodeWithRef = __spreadValues({}, node);
252
+ if (!nodeWithRef.nodeRef) {
253
+ nodeWithRef.nodeRef = React.createRef();
254
+ }
255
+ const existingChildren = nodeWithRef.children || ((_a2 = nodeWithRef.dataObject) == null ? void 0 : _a2.children);
256
+ if (existingChildren && existingChildren.length) {
257
+ const alreadyTransformed = ((_b2 = existingChildren[0]) == null ? void 0 : _b2.dataObject) !== void 0;
258
+ const processedChildren = alreadyTransformed ? existingChildren : transformChildrenDataset(existingChildren);
259
+ nodeWithRef.children = createRefsForNodes(processedChildren);
260
+ }
261
+ return nodeWithRef;
262
+ });
263
+ },
264
+ [transformChildrenDataset]
265
+ );
266
+ const nodesWithRefs = useMemo(
267
+ () => createRefsForNodes(filteredDataset),
268
+ [filteredDataset, createRefsForNodes]
269
+ );
270
+ const flattenNodes = useCallback((nodes) => {
271
+ if (!nodes || !Array.isArray(nodes)) return [];
272
+ return nodes.reduce((acc, node) => {
273
+ acc.push(node);
274
+ if (node.children && node.children.length) {
275
+ acc.push(...flattenNodes(node.children));
276
+ }
277
+ return acc;
278
+ }, []);
279
+ }, []);
280
+ const flattenedNodes = useMemo(() => flattenNodes(nodesWithRefs), [nodesWithRefs, flattenNodes]);
281
+ const getNodeProperties = useCallback(
282
+ (node) => {
283
+ const dataObject = node.dataObject || {};
284
+ let label;
285
+ let children2;
286
+ if (typeof itemLabelWrapper === "function") {
287
+ try {
288
+ label = itemLabelWrapper(dataObject);
289
+ } catch (error) {
290
+ console.warn("Error evaluating itemlabel expression:", error);
291
+ label = (node == null ? void 0 : node["label"]) || dataObject["label"];
292
+ }
293
+ } else {
294
+ label = (node == null ? void 0 : node[itemLabelWrapper]) || dataObject[itemLabelWrapper];
295
+ }
296
+ if (typeof itemchildren === "function") {
297
+ try {
298
+ const childrenData = itemchildren(dataObject);
299
+ if (Array.isArray(childrenData)) {
300
+ children2 = transformChildrenDataset(childrenData);
301
+ } else {
302
+ children2 = childrenData;
303
+ }
304
+ } catch (error) {
305
+ console.warn("Error evaluating itemchildren expression:", error);
306
+ children2 = (node == null ? void 0 : node["children"]) || dataObject["children"];
307
+ }
308
+ } else {
309
+ children2 = (node == null ? void 0 : node.children) || (dataObject == null ? void 0 : dataObject.children) || (node == null ? void 0 : node[itemchildren]) || (dataObject == null ? void 0 : dataObject[itemchildren]);
310
+ }
311
+ return {
312
+ label,
313
+ icon: (node == null ? void 0 : node[itemicon]) || dataObject[itemicon],
314
+ link: (node == null ? void 0 : node[itemlink]) || dataObject[itemlink] || dataObject["link"],
315
+ hint: (node == null ? void 0 : node[hint]) || dataObject[hint],
316
+ disabled: (node == null ? void 0 : node.disabled) || dataObject.disabled,
317
+ children: children2
318
+ };
319
+ },
320
+ [itemlabel, itemicon, itemlink, hint, itemchildren]
321
+ );
322
+ const buttonStyles = useMemo(
323
+ () => __spreadValues(__spreadValues(__spreadValues(__spreadValues({}, styles), conditionalstyles), width !== void 0 && { width: typeof width === "number" ? `${width}px` : width }), height !== void 0 && { height: typeof height === "number" ? `${height}px` : height }),
324
+ [styles, conditionalstyles, width, height]
325
+ );
326
+ const menuContainerStyles = useMemo(
327
+ () => ({
328
+ textAlign: menualign,
329
+ position: "relative"
330
+ }),
331
+ [menualign]
332
+ );
333
+ const getMenuLayoutStyles = useCallback(() => {
334
+ switch (menulayout) {
335
+ case LAYOUT.HORIZONTAL:
336
+ return {
337
+ display: "flex",
338
+ flexDirection: "row"
339
+ };
340
+ case LAYOUT.GRID:
341
+ return {
342
+ display: "grid",
343
+ gridTemplateColumns: "repeat(auto-fill, minmax(150px, 1fr))",
344
+ gap: "8px"
345
+ };
346
+ case LAYOUT.VERTICAL:
347
+ default:
348
+ return {
349
+ display: "block"
350
+ };
351
+ }
352
+ }, [menulayout]);
353
+ const handleMenuClick = useCallback(
354
+ (event) => {
355
+ event.preventDefault();
356
+ if (onClick && (listener == null ? void 0 : listener.Widgets) && name && listener.Widgets[name]) {
357
+ onClick(event, listener.Widgets[name]);
358
+ }
359
+ setOpen((prevState) => !prevState);
360
+ if (!open) {
361
+ setActiveItem(null);
362
+ setFocusedIndex(-1);
363
+ }
364
+ if (isFromNav && onNavItemActivate) {
365
+ onNavItemActivate();
366
+ }
367
+ },
368
+ [onClick, listener, name, open, isFromNav, onNavItemActivate]
369
+ );
370
+ const handleMenuItemClick = useCallback(
371
+ (event, item) => {
372
+ var _a2, _b2, _c2, _d, _e, _f;
373
+ event = event.nativeEvent;
374
+ const { label, icon, link } = getNodeProperties(item);
375
+ if (item.children && item.children.length > 0 || !link || link === "#") {
376
+ event.preventDefault();
377
+ }
378
+ setActiveItem(item);
379
+ const index = flattenedNodes.findIndex((node) => node === item);
380
+ if (index !== -1) {
381
+ setFocusedIndex(index);
382
+ }
383
+ executeActionTaskFromItem(item, listener);
384
+ if (item.children && item.children.length > 0) {
385
+ item.expanded = !item.expanded;
386
+ }
387
+ const simplifiedItem = __spreadValues(__spreadProps(__spreadValues({}, item.dataObject || {}), {
388
+ name: ((_a2 = item.dataObject) == null ? void 0 : _a2.name) || name,
389
+ label,
390
+ dataValue: ((_b2 = item.dataObject) == null ? void 0 : _b2.dataValue) || label,
391
+ value: ((_c2 = item.dataObject) == null ? void 0 : _c2.dataValue) || label,
392
+ icon: ((_d = item.dataObject) == null ? void 0 : _d.icon) || icon,
393
+ link,
394
+ target: (_e = item.dataObject) == null ? void 0 : _e.target
395
+ }), typeof (item == null ? void 0 : item.value) === "object" && (item == null ? void 0 : item.value) !== null ? item.value : {});
396
+ if (onSelect) {
397
+ onSelect(event, props, simplifiedItem);
398
+ }
399
+ if (isFromNav && onNavItemActivate) {
400
+ onNavItemActivate();
401
+ }
402
+ if (name && ((_f = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _f[name])) {
403
+ listener.Widgets[name].displayValue = label;
404
+ }
405
+ if (listener == null ? void 0 : listener.onChange) {
406
+ listener.onChange(name, {
407
+ datavalue: label
408
+ });
409
+ }
410
+ const routeName = hyperLinkMofify(getRouteNameFromLink((simplifiedItem == null ? void 0 : simplifiedItem.link) || ""));
411
+ const currentPath = window.location.pathname;
412
+ if (routeName !== currentPath) {
413
+ setTimeout(() => {
414
+ triggerItemAction(simplifiedItem);
415
+ }, 0);
416
+ }
417
+ if (autoclose === AUTO_CLOSE.ALWAYS && (!item.children || item.children.length === 0)) {
418
+ setOpen(false);
419
+ setFocusedIndex(-1);
420
+ }
421
+ onActionsclick == null ? void 0 : onActionsclick(item);
422
+ },
423
+ [
424
+ flattenedNodes,
425
+ onSelect,
426
+ props,
427
+ name,
428
+ listener,
429
+ autoclose,
430
+ getNodeProperties,
431
+ isFromNav,
432
+ onNavItemActivate
433
+ ]
434
+ );
435
+ const focusNode = useCallback(
436
+ (index) => {
437
+ var _a2, _b2;
438
+ if ((_b2 = (_a2 = flattenedNodes[index]) == null ? void 0 : _a2.nodeRef) == null ? void 0 : _b2.current) {
439
+ flattenedNodes[index].nodeRef.current.focus();
440
+ }
441
+ },
442
+ [flattenedNodes]
443
+ );
444
+ const closeMenu = useCallback(() => {
445
+ var _a2;
446
+ setOpen(false);
447
+ setFocusedIndex(-1);
448
+ setActiveItem(null);
449
+ (_a2 = buttonRef.current) == null ? void 0 : _a2.focus();
450
+ }, []);
451
+ const toggleMenu = useCallback(() => {
452
+ setOpen((prevOpen) => !prevOpen);
453
+ }, []);
454
+ const handleArrowDown = useCallback(
455
+ (event) => {
456
+ if (keyboardMovements.MOVE_DOWN !== "DOWN-ARROW") return;
457
+ event.preventDefault();
458
+ if (!open) {
459
+ setOpen(true);
460
+ return;
461
+ }
462
+ const nextIndex = focusedIndex < 0 ? 0 : (focusedIndex + 1) % flattenedNodes.length;
463
+ setFocusedIndex(nextIndex);
464
+ focusNode(nextIndex);
465
+ },
466
+ [keyboardMovements, open, focusedIndex, flattenedNodes.length, focusNode]
467
+ );
468
+ const handleArrowUp = useCallback(
469
+ (event) => {
470
+ if (keyboardMovements.MOVE_UP !== "UP-ARROW") return;
471
+ event.preventDefault();
472
+ if (!open) {
473
+ setOpen(true);
474
+ return;
475
+ }
476
+ if (focusedIndex === 0) {
477
+ closeMenu();
478
+ return;
479
+ }
480
+ const prevIndex = focusedIndex <= 0 ? flattenedNodes.length - 1 : (focusedIndex - 1) % flattenedNodes.length;
481
+ setFocusedIndex(prevIndex);
482
+ focusNode(prevIndex);
483
+ },
484
+ [keyboardMovements, open, focusedIndex, flattenedNodes.length, focusNode, closeMenu]
485
+ );
486
+ const handleEnterOrSpace = useCallback(
487
+ (event) => {
488
+ if (keyboardMovements.ON_ENTER !== "ENTER") return;
489
+ event.preventDefault();
490
+ if (focusedIndex >= 0 && flattenedNodes[focusedIndex]) {
491
+ handleMenuItemClick(event, flattenedNodes[focusedIndex]);
492
+ } else if (open) {
493
+ closeMenu();
494
+ }
495
+ },
496
+ [keyboardMovements, focusedIndex, flattenedNodes, handleMenuItemClick, open, closeMenu]
497
+ );
498
+ const handleEscape = useCallback(
499
+ (event) => {
500
+ if (keyboardMovements.ON_ESCAPE !== "ESC") return;
501
+ event.preventDefault();
502
+ closeMenu();
503
+ },
504
+ [keyboardMovements, closeMenu]
505
+ );
506
+ const moveFocusHorizontally = useCallback(
507
+ (direction) => {
508
+ const nextIndex = (focusedIndex + direction + flattenedNodes.length) % flattenedNodes.length;
509
+ setFocusedIndex(nextIndex);
510
+ focusNode(nextIndex);
511
+ },
512
+ [focusedIndex, flattenedNodes.length, focusNode]
513
+ );
514
+ const expandAndFocusChild = useCallback(
515
+ (currentItem) => {
516
+ currentItem.expanded = true;
517
+ const firstChild = currentItem.children[0];
518
+ const childIndex = flattenedNodes.findIndex((node) => node === firstChild);
519
+ if (childIndex !== -1) {
520
+ setFocusedIndex(childIndex);
521
+ setActiveItem(flattenedNodes[childIndex]);
522
+ focusNode(childIndex);
523
+ }
524
+ },
525
+ [flattenedNodes, focusNode]
526
+ );
527
+ const collapseAndFocusParent = useCallback(
528
+ (currentItem) => {
529
+ const parentIndex = flattenedNodes.findIndex(
530
+ (node) => {
531
+ var _a2;
532
+ return (_a2 = node.children) == null ? void 0 : _a2.some((child) => child === currentItem);
533
+ }
534
+ );
535
+ if (parentIndex !== -1) {
536
+ flattenedNodes[parentIndex].expanded = false;
537
+ setFocusedIndex(parentIndex);
538
+ setActiveItem(flattenedNodes[parentIndex]);
539
+ focusNode(parentIndex);
540
+ }
541
+ },
542
+ [flattenedNodes, focusNode]
543
+ );
544
+ const handleArrowRight = useCallback(
545
+ (event) => {
546
+ if (menulayout === LAYOUT.HORIZONTAL || keyboardMovements.MOVE_RIGHT !== "RIGHT-ARROW")
547
+ return;
548
+ event.preventDefault();
549
+ if (focusedIndex >= 0 && flattenedNodes[focusedIndex]) {
550
+ const currentItem = flattenedNodes[focusedIndex];
551
+ if (currentItem.children && currentItem.children.length > 0) {
552
+ expandAndFocusChild(currentItem);
553
+ } else if (menulayout === LAYOUT.HORIZONTAL) {
554
+ moveFocusHorizontally(1);
555
+ }
556
+ }
557
+ },
558
+ [
559
+ menulayout,
560
+ keyboardMovements,
561
+ focusedIndex,
562
+ flattenedNodes,
563
+ expandAndFocusChild,
564
+ moveFocusHorizontally
565
+ ]
566
+ );
567
+ const handleArrowLeft = useCallback(
568
+ (event) => {
569
+ if (menulayout === LAYOUT.HORIZONTAL || keyboardMovements.MOVE_LEFT !== "LEFT-ARROW") return;
570
+ event.preventDefault();
571
+ if (focusedIndex >= 0 && flattenedNodes[focusedIndex]) {
572
+ const currentItem = flattenedNodes[focusedIndex];
573
+ if (menulayout === LAYOUT.HORIZONTAL) {
574
+ moveFocusHorizontally(-1);
575
+ } else {
576
+ collapseAndFocusParent(currentItem);
577
+ }
578
+ }
579
+ },
580
+ [
581
+ menulayout,
582
+ keyboardMovements,
583
+ focusedIndex,
584
+ flattenedNodes,
585
+ moveFocusHorizontally,
586
+ collapseAndFocusParent
587
+ ]
588
+ );
589
+ const handleKeyDown = useCallback(
590
+ (event) => {
591
+ const key = event.key;
592
+ if (key === "Enter" && document.activeElement === buttonRef.current) {
593
+ event.preventDefault();
594
+ toggleMenu();
595
+ return;
596
+ }
597
+ if (!open && key === "Enter") {
598
+ event.preventDefault();
599
+ setOpen(true);
600
+ return;
601
+ }
602
+ if (!open && !["ArrowDown", "ArrowUp", "Enter", " "].includes(key)) {
603
+ return;
604
+ }
605
+ if (flattenedNodes.length === 0 && open) return;
606
+ const keyHandlers = {
607
+ ArrowDown: handleArrowDown,
608
+ ArrowUp: handleArrowUp,
609
+ Enter: handleEnterOrSpace,
610
+ " ": handleEnterOrSpace,
611
+ Escape: handleEscape,
612
+ Tab: closeMenu,
613
+ ArrowRight: handleArrowRight,
614
+ ArrowLeft: handleArrowLeft
615
+ };
616
+ const handler = keyHandlers[key];
617
+ if (handler) {
618
+ handler(event);
619
+ }
620
+ },
621
+ [
622
+ open,
623
+ flattenedNodes.length,
624
+ toggleMenu,
625
+ handleArrowDown,
626
+ handleArrowUp,
627
+ handleEnterOrSpace,
628
+ handleEscape,
629
+ closeMenu,
630
+ handleArrowRight,
631
+ handleArrowLeft
632
+ ]
633
+ );
634
+ const renderMenuItems = useCallback(
635
+ (nodes, pathPrefix = "") => {
636
+ if (!nodes || !Array.isArray(nodes)) return null;
637
+ return nodes.map((node, index) => {
638
+ var _a2;
639
+ const { label, icon, link, hint: hint2, disabled, children: children2 } = getNodeProperties(node);
640
+ const itemPath = pathPrefix ? `${pathPrefix}-${index}` : `${index}`;
641
+ const nodeValueLink = (_a2 = node == null ? void 0 : node.value) == null ? void 0 : _a2.link;
642
+ const isActive = nodeValueLink && typeof nodeValueLink === "string" ? isPathMatchingLink(path, nodeValueLink) : link ? isPathMatchingLink(path, link) : false;
643
+ const [verticalPos2, horizontalPos2] = menuPosition.split(",");
644
+ const isHovered = hoveredPaths.has(itemPath);
645
+ const isSubmenuOpen = node.expanded || isHovered;
646
+ const submenuClassName = buildMenuListClasses(
647
+ iconposition,
648
+ menulayout,
649
+ horizontalPos2,
650
+ panelPosition,
651
+ animateitems,
652
+ menuPosition,
653
+ isHovered
654
+ );
655
+ return /* @__PURE__ */ jsxs(
656
+ Box,
657
+ {
658
+ component: "li",
659
+ className: clsx(
660
+ children2 && children2.length > 0 && "dropdown-submenu",
661
+ "app-menu-item",
662
+ {
663
+ active: isActive,
664
+ hovered: isHovered
665
+ }
666
+ ),
667
+ onMouseEnter: () => handlePathMouseEnter(itemPath),
668
+ onMouseLeave: (e) => handlePathMouseLeave(itemPath, e),
669
+ style: { position: "relative" },
670
+ children: [
671
+ /* @__PURE__ */ jsxs(
672
+ Link,
673
+ {
674
+ title: label,
675
+ className: disabled ? "disabled" : "",
676
+ onClick: (event) => {
677
+ handleMenuItemClick(event, node);
678
+ },
679
+ children: [
680
+ children2 && children2.length > 0 && /* @__PURE__ */ jsx(
681
+ "span",
682
+ {
683
+ className: clsx(
684
+ "pull-right fa caret",
685
+ menuAlignClass[menualign] || "fa-caret-right"
686
+ )
687
+ }
688
+ ),
689
+ icon && /* @__PURE__ */ jsx("i", { className: `app-icon ${icon}` }),
690
+ /* @__PURE__ */ jsx("span", { className: "anchor-caption", children: label })
691
+ ]
692
+ }
693
+ ),
694
+ children2 && children2.length > 0 && (type !== "anchor" ? /* @__PURE__ */ jsx(
695
+ CollapsibleMenu,
696
+ {
697
+ isOpen: isSubmenuOpen,
698
+ verticalPos: verticalPos2,
699
+ className: submenuClassName,
700
+ style: getMenuLayoutStyles(),
701
+ onMouseEnter: () => handlePathMouseEnter(itemPath),
702
+ onMouseLeave: (e) => handlePathMouseLeave(itemPath, e),
703
+ children: renderMenuItems(children2, itemPath)
704
+ }
705
+ ) : isSubmenuOpen && open && /* @__PURE__ */ jsx(
706
+ MenuList,
707
+ {
708
+ iconposition,
709
+ className: submenuClassName,
710
+ style: getMenuLayoutStyles(),
711
+ onMouseEnter: () => handlePathMouseEnter(itemPath),
712
+ onMouseLeave: (e) => handlePathMouseLeave(itemPath, e),
713
+ onClick: (event) => onActionsclick == null ? void 0 : onActionsclick(node),
714
+ children: renderMenuItems(children2, itemPath)
715
+ }
716
+ ))
717
+ ]
718
+ },
719
+ index
720
+ );
721
+ });
722
+ },
723
+ [
724
+ getNodeProperties,
725
+ menuPosition,
726
+ hoveredPaths,
727
+ handlePathMouseEnter,
728
+ handlePathMouseLeave,
729
+ hint,
730
+ handleMenuItemClick,
731
+ activeItem,
732
+ linktarget,
733
+ iconposition,
734
+ animateitems,
735
+ menualign,
736
+ getMenuLayoutStyles,
737
+ type,
738
+ open,
739
+ panelPosition
740
+ ]
741
+ );
742
+ useEffect(() => {
743
+ if (!open) return;
744
+ setActiveItem(null);
745
+ setFocusedIndex(-1);
746
+ }, [open]);
747
+ useEffect(() => {
748
+ if (autoopen === AUTO_OPEN.ALWAYS) {
749
+ setOpen(true);
750
+ } else if (autoopen === AUTO_OPEN.ACTIVE_PAGE) {
751
+ const hasActiveItem = filteredDataset.some(
752
+ (node) => hasLinkToCurrentPage([node], window.location.pathname)
753
+ );
754
+ if (hasActiveItem) {
755
+ setOpen(true);
756
+ }
757
+ }
758
+ }, [filteredDataset, autoopen]);
759
+ const notifiedPathRef = useRef(null);
760
+ useEffect(() => {
761
+ if (!isFromNav || !onNavItemActivate || !filteredDataset || filteredDataset.length === 0) {
762
+ return;
763
+ }
764
+ const checkIfActive = (nodes) => {
765
+ if (!nodes || !Array.isArray(nodes)) return false;
766
+ return nodes.some((node) => {
767
+ var _a2;
768
+ const { link, children: children2 } = getNodeProperties(node);
769
+ const nodeValueLink = (_a2 = node == null ? void 0 : node.value) == null ? void 0 : _a2.link;
770
+ const isActive = nodeValueLink && typeof nodeValueLink === "string" ? isPathMatchingLink(path, nodeValueLink) : link ? isPathMatchingLink(path, link) : false;
771
+ if (isActive) return true;
772
+ if (children2 && children2.length > 0) {
773
+ return checkIfActive(children2);
774
+ }
775
+ return false;
776
+ });
777
+ };
778
+ const hasActiveItem = checkIfActive(filteredDataset);
779
+ if (hasActiveItem && notifiedPathRef.current !== path) {
780
+ onNavItemActivate();
781
+ notifiedPathRef.current = path;
782
+ setOpen(true);
783
+ } else if (!hasActiveItem) {
784
+ notifiedPathRef.current = null;
785
+ }
786
+ }, [path, filteredDataset, isFromNav, onNavItemActivate, getNodeProperties]);
787
+ useEffect(() => {
788
+ if (!open || autoclose === AUTO_CLOSE.NEVER || autoclose === AUTO_CLOSE.DISABLED) return;
789
+ const handleOutsideClick = (event) => {
790
+ var _a2, _b2, _c2;
791
+ if (!event.target) return;
792
+ const clickedInsideMenu = (_a2 = menuRef.current) == null ? void 0 : _a2.contains(event.target);
793
+ const clickedOnButton = (_b2 = buttonRef.current) == null ? void 0 : _b2.contains(event.target);
794
+ if (!clickedInsideMenu && !clickedOnButton) {
795
+ setOpen(false);
796
+ setFocusedIndex(-1);
797
+ setActiveItem(null);
798
+ (_c2 = buttonRef.current) == null ? void 0 : _c2.focus();
799
+ }
800
+ };
801
+ document.addEventListener("mousedown", handleOutsideClick);
802
+ return () => {
803
+ document.removeEventListener("mousedown", handleOutsideClick);
804
+ };
805
+ }, [open, autoclose]);
806
+ useEffect(() => {
807
+ if (!shortcutkey) return;
808
+ const handleShortcutKey = (event) => {
809
+ var _a2;
810
+ const isModifierKey = event.altKey || navigator.platform.indexOf("Mac") !== -1 && event.ctrlKey && event.altKey;
811
+ if (isModifierKey && event.key.toLowerCase() === shortcutkey.toLowerCase()) {
812
+ event.preventDefault();
813
+ setOpen((prev) => !prev);
814
+ (_a2 = buttonRef.current) == null ? void 0 : _a2.focus();
815
+ }
816
+ };
817
+ window.addEventListener("keydown", handleShortcutKey);
818
+ return () => {
819
+ window.removeEventListener("keydown", handleShortcutKey);
820
+ };
821
+ }, [shortcutkey]);
822
+ const executedInitialActiveRef = useRef(false);
823
+ useEffect(() => {
824
+ if (nodes$ && typeof nodes$.subscribe === "function") return;
825
+ if (executedInitialActiveRef.current) return;
826
+ if (!transformedDataset || transformedDataset.length === 0) return;
827
+ let itemFound = false;
828
+ const getItem = (nodes) => {
829
+ if (!nodes || !Array.isArray(nodes)) return;
830
+ nodes.forEach((item) => {
831
+ var _a2;
832
+ if (itemFound) return;
833
+ if ((item == null ? void 0 : item.isactive) || ((_a2 = item == null ? void 0 : item.dataObject) == null ? void 0 : _a2.isactive)) {
834
+ itemFound = true;
835
+ if ((listener == null ? void 0 : listener.Widgets) && name && onSelect) {
836
+ const widget = listener.Widgets[name];
837
+ if (widget) {
838
+ onSelect({}, widget, item);
839
+ }
840
+ }
841
+ executeActionTaskFromItem(item, listener);
842
+ }
843
+ if (item.children && !isEmpty(item.children)) {
844
+ getItem(item.children);
845
+ }
846
+ });
847
+ };
848
+ getItem(transformedDataset);
849
+ if (itemFound) {
850
+ executedInitialActiveRef.current = true;
851
+ }
852
+ }, []);
853
+ useEffect(() => {
854
+ if (!nodes$ || typeof nodes$.subscribe !== "function") return;
855
+ const datasetSubscription = nodes$.subscribe(() => {
856
+ if (!dataset) return;
857
+ let itemFound = false;
858
+ const getItem = (nodes) => {
859
+ if (!nodes || !Array.isArray(nodes)) return;
860
+ nodes.forEach((item) => {
861
+ if (itemFound) return;
862
+ if (item.isactive) {
863
+ itemFound = true;
864
+ if ((listener == null ? void 0 : listener.Widgets) && name && onSelect) {
865
+ const widget = listener.Widgets[name];
866
+ if (widget) {
867
+ onSelect({}, widget, item);
868
+ }
869
+ }
870
+ return false;
871
+ }
872
+ if (item.children && !isEmpty(item.children)) {
873
+ getItem(item.children);
874
+ }
875
+ });
876
+ };
877
+ getItem(dataset);
878
+ });
879
+ return () => {
880
+ if (datasetSubscription && typeof datasetSubscription.unsubscribe === "function") {
881
+ datasetSubscription.unsubscribe();
882
+ }
883
+ };
884
+ }, [dataset, nodes$, name, listener, onSelect]);
885
+ const onShowCallback = useCallback(() => {
886
+ if (open && flattenedNodes.length > 0 && focusedIndex === 0) {
887
+ setTimeout(() => {
888
+ var _a2, _b2, _c2;
889
+ (_c2 = (_b2 = (_a2 = flattenedNodes[0]) == null ? void 0 : _a2.nodeRef) == null ? void 0 : _b2.current) == null ? void 0 : _c2.focus();
890
+ }, 0);
891
+ }
892
+ setOpen(true);
893
+ }, [open, flattenedNodes, focusedIndex, props, listener, name]);
894
+ const onHideCallback = useCallback(() => {
895
+ setFocusedIndex(-1);
896
+ setActiveItem(null);
897
+ setMenuPosition(initialMenuPosition);
898
+ setOpen(false);
899
+ }, [initialMenuPosition, props, listener, name]);
900
+ const resetNodesMethod = useCallback(() => {
901
+ if (resetNavNodes) {
902
+ resetNavNodes();
903
+ }
904
+ if (autoopen === AUTO_OPEN.ACTIVE_PAGE && hasLinkToCurrentPage(transformedDataset, path)) {
905
+ setOpen(true);
906
+ } else if (autoopen === AUTO_OPEN.ALWAYS) {
907
+ setOpen(true);
908
+ }
909
+ }, [resetNavNodes, autoopen, transformedDataset, path]);
910
+ const setMenuPositionMethod = useCallback((position) => {
911
+ const validPositions = [
912
+ POSITION.DOWN_RIGHT,
913
+ POSITION.DOWN_LEFT,
914
+ POSITION.UP_RIGHT,
915
+ POSITION.UP_LEFT,
916
+ POSITION.INLINE
917
+ ];
918
+ if (validPositions.includes(position)) {
919
+ setMenuPosition(position);
920
+ } else {
921
+ console.warn(
922
+ `Invalid menu position: ${position}. Valid positions are: ${validPositions.join(", ")}`
923
+ );
924
+ }
925
+ }, []);
926
+ const onKeyDownMethod = useCallback(
927
+ (event, eventAction) => {
928
+ if (eventAction) {
929
+ }
930
+ handleKeyDown(event);
931
+ },
932
+ [handleKeyDown]
933
+ );
934
+ const onMenuItemSelectMethod = useCallback(
935
+ (event, item) => {
936
+ var _a2;
937
+ if (onSelect && ((_a2 = listener == null ? void 0 : listener.Widgets) == null ? void 0 : _a2[name])) {
938
+ onSelect(event, listener.Widgets[name], item);
939
+ }
940
+ },
941
+ [onSelect, listener, name]
942
+ );
943
+ useEffect(() => {
944
+ if ((listener == null ? void 0 : listener.onChange) && name) {
945
+ Object.defineProperty(onShowCallback, "name", { value: "onShow", writable: false });
946
+ Object.defineProperty(onHideCallback, "name", { value: "onHide", writable: false });
947
+ Object.defineProperty(onKeyDownMethod, "name", { value: "onKeyDown", writable: false });
948
+ Object.defineProperty(resetNodesMethod, "name", { value: "resetNodes", writable: false });
949
+ Object.defineProperty(setMenuPositionMethod, "name", {
950
+ value: "setMenuPosition",
951
+ writable: false
952
+ });
953
+ Object.defineProperty(onMenuItemSelectMethod, "name", {
954
+ value: "onMenuItemSelect",
955
+ writable: false
956
+ });
957
+ listener.onChange(name, {
958
+ onShow: onShowCallback,
959
+ onHide: onHideCallback,
960
+ onKeyDown: onKeyDownMethod,
961
+ resetNodes: resetNodesMethod,
962
+ setMenuPosition: setMenuPositionMethod,
963
+ onMenuItemSelect: onMenuItemSelectMethod
964
+ });
965
+ }
966
+ }, []);
967
+ const [verticalPos, horizontalPos] = menuPosition.split(",");
968
+ const mainMenuClassName = useMemo(
969
+ () => buildMenuListClasses(
970
+ iconposition,
971
+ menulayout,
972
+ horizontalPos,
973
+ panelPosition,
974
+ animateitems,
975
+ menuPosition
976
+ ),
977
+ [iconposition, menulayout, horizontalPos, panelPosition, animateitems, menuPosition]
978
+ );
979
+ const hoverEventHandlers = showonhover ? {
980
+ onMouseEnter: handleContainerMouseEnter,
981
+ onMouseLeave: handleContainerMouseLeave
982
+ } : {};
983
+ return /* @__PURE__ */ jsxs(
984
+ "div",
985
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({
986
+ caption,
987
+ ref: menuRef,
988
+ className: clsx("dropdown", "app-menu", { open }, className)
989
+ }, hoverEventHandlers), {
990
+ onKeyDown: handleKeyDown,
991
+ role: "menu",
992
+ "aria-label": arialabel || "Menu",
993
+ "aria-expanded": open
994
+ }), { type, name }), {
995
+ children: [
996
+ /* @__PURE__ */ jsx(Tooltip, { title: hint || "", enterDelay: TOOLTIP_ENTER_DELAY, disableHoverListener: !hint, children: type === "anchor" ? /* @__PURE__ */ jsxs(
997
+ "a",
998
+ __spreadProps(__spreadValues({
999
+ className: clsx("dropdown-toggle app-anchor", isNavItemActive && "active"),
1000
+ "icon-position": "left",
1001
+ role: "button",
1002
+ onClick: handleMenuClick,
1003
+ "aria-label": arialabel || "Menu",
1004
+ "aria-expanded": open,
1005
+ "aria-haspopup": "true",
1006
+ accessKey: shortcutkey,
1007
+ tabIndex: props.tabindex,
1008
+ style: {
1009
+ width: width !== void 0 ? typeof width === "number" ? `${width}px` : width : void 0,
1010
+ height: height !== void 0 ? typeof height === "number" ? `${height}px` : height : void 0,
1011
+ textAlign: menualign
1012
+ }
1013
+ }, removeInvalidAttributes(restProps)), {
1014
+ children: [
1015
+ (iconclass || iconurl) && /* @__PURE__ */ jsx(
1016
+ WmAppIcon,
1017
+ {
1018
+ iconclass,
1019
+ iconurl,
1020
+ prefabName: props.prefabName,
1021
+ alt: "Menu icon"
1022
+ }
1023
+ ),
1024
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: `${caption} ${(_c = listener == null ? void 0 : listener.appLocale) == null ? void 0 : _c.LABEL_ICON}` }),
1025
+ /* @__PURE__ */ jsx("span", { className: "anchor-caption", children: caption || "" }),
1026
+ /* @__PURE__ */ jsx(
1027
+ "span",
1028
+ {
1029
+ className: clsx(
1030
+ "pull-right caret fa",
1031
+ (menuPosition == null ? void 0 : menuPosition.startsWith("up")) ? CARET_CLS.UP : CARET_CLS.DOWN
1032
+ )
1033
+ }
1034
+ )
1035
+ ]
1036
+ })
1037
+ ) : /* @__PURE__ */ jsxs(
1038
+ Button,
1039
+ __spreadProps(__spreadValues({
1040
+ className: clsx(
1041
+ "btn dropdown-toggle",
1042
+ "app-button",
1043
+ menuclass,
1044
+ `menu-layout-${menulayout}`,
1045
+ `menu-align-${menualign}`,
1046
+ open ? "open" : "",
1047
+ (menuPosition == null ? void 0 : menuPosition.startsWith("up")) ? "dropup" : "",
1048
+ menuPosition === POSITION.INLINE ? "dropinline-menu" : ""
1049
+ ),
1050
+ ref: buttonRef,
1051
+ onClick: handleMenuClick,
1052
+ "aria-haspopup": "true",
1053
+ "aria-expanded": open,
1054
+ "aria-label": arialabel || "Menu",
1055
+ accessKey: shortcutkey,
1056
+ tabIndex: props.tabindex,
1057
+ style: __spreadValues(__spreadValues({
1058
+ width: width !== void 0 ? typeof width === "number" ? `${width}px` : width : void 0,
1059
+ height: height !== void 0 ? typeof height === "number" ? `${height}px` : height : void 0
1060
+ }, buttonStyles), menuContainerStyles)
1061
+ }, removeInvalidAttributes(restProps)), {
1062
+ children: [
1063
+ (iconclass || iconurl) && /* @__PURE__ */ jsx(
1064
+ WmAppIcon,
1065
+ {
1066
+ iconclass,
1067
+ iconurl,
1068
+ prefabName: props.prefabName,
1069
+ alt: "Menu icon"
1070
+ }
1071
+ ),
1072
+ /* @__PURE__ */ jsx("span", { className: "btn-caption", children: caption }),
1073
+ /* @__PURE__ */ jsx(
1074
+ "span",
1075
+ {
1076
+ className: clsx(
1077
+ "pull-right caret fa",
1078
+ (menuPosition == null ? void 0 : menuPosition.startsWith("up")) ? CARET_CLS.UP : CARET_CLS.DOWN
1079
+ )
1080
+ }
1081
+ )
1082
+ ]
1083
+ })
1084
+ ) }),
1085
+ type !== "anchor" ? /* @__PURE__ */ jsx(
1086
+ CollapsibleMenu,
1087
+ __spreadProps(__spreadValues({
1088
+ isOpen: open,
1089
+ verticalPos,
1090
+ className: mainMenuClassName,
1091
+ style: getMenuLayoutStyles()
1092
+ }, hoverEventHandlers), {
1093
+ children: renderMenuItems(nodesWithRefs)
1094
+ })
1095
+ ) : open && /* @__PURE__ */ jsx(
1096
+ MenuList,
1097
+ __spreadProps(__spreadValues({
1098
+ iconposition,
1099
+ className: mainMenuClassName,
1100
+ style: getMenuLayoutStyles()
1101
+ }, hoverEventHandlers), {
1102
+ children: renderMenuItems(nodesWithRefs)
1103
+ })
1104
+ )
1105
+ ]
1106
+ })
1107
+ );
1108
+ });
1109
+ WmMenu.displayName = "WmMenu";
1110
+ var menu_default = withBaseWrapper(WmMenu);
1111
+ export {
1112
+ WmMenu,
1113
+ menu_default as default
1114
+ };