@solidxai/core-ui 0.1.8-beta.9 → 0.1.9-alpha.0

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 (457) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/auth/getSession.d.ts.map +1 -1
  3. package/dist/adapters/auth/getSession.js +1 -1
  4. package/dist/adapters/auth/getSession.js.map +1 -1
  5. package/dist/adapters/auth/getSession.ts +1 -0
  6. package/dist/adapters/auth/helper.d.ts.map +1 -1
  7. package/dist/adapters/auth/helper.js +1 -0
  8. package/dist/adapters/auth/helper.js.map +1 -1
  9. package/dist/adapters/auth/helper.ts +3 -1
  10. package/dist/adapters/auth/signIn.d.ts.map +1 -1
  11. package/dist/adapters/auth/signIn.js +1 -0
  12. package/dist/adapters/auth/signIn.js.map +1 -1
  13. package/dist/adapters/auth/signIn.ts +3 -1
  14. package/dist/adapters/auth/signInWithOAuthAccessCode.d.ts +1 -0
  15. package/dist/adapters/auth/signInWithOAuthAccessCode.d.ts.map +1 -1
  16. package/dist/adapters/auth/signInWithOAuthAccessCode.js +10 -9
  17. package/dist/adapters/auth/signInWithOAuthAccessCode.js.map +1 -1
  18. package/dist/adapters/auth/signInWithOAuthAccessCode.ts +6 -3
  19. package/dist/adapters/auth/signOut.d.ts.map +1 -1
  20. package/dist/adapters/auth/signOut.js +7 -1
  21. package/dist/adapters/auth/signOut.js.map +1 -1
  22. package/dist/adapters/auth/signOut.ts +7 -1
  23. package/dist/adapters/auth/types.d.ts +1 -0
  24. package/dist/adapters/auth/types.d.ts.map +1 -1
  25. package/dist/adapters/auth/types.js.map +1 -1
  26. package/dist/adapters/auth/types.ts +1 -0
  27. package/dist/components/auth/AuthLayout.d.ts +1 -1
  28. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  29. package/dist/components/auth/AuthLayout.js +92 -22
  30. package/dist/components/auth/AuthLayout.js.map +1 -1
  31. package/dist/components/auth/AuthLayout.tsx +38 -12
  32. package/dist/components/auth/AuthSettingsContext.d.ts +10 -0
  33. package/dist/components/auth/AuthSettingsContext.d.ts.map +1 -0
  34. package/dist/components/auth/AuthSettingsContext.js +49 -0
  35. package/dist/components/auth/AuthSettingsContext.js.map +1 -0
  36. package/dist/components/auth/AuthSettingsContext.tsx +19 -0
  37. package/dist/components/auth/FacebookAuthChecking.d.ts +2 -0
  38. package/dist/components/auth/FacebookAuthChecking.d.ts.map +1 -0
  39. package/dist/components/auth/FacebookAuthChecking.js +98 -0
  40. package/dist/components/auth/FacebookAuthChecking.js.map +1 -0
  41. package/dist/components/auth/FacebookAuthChecking.tsx +59 -0
  42. package/dist/components/auth/ForgotPasswordThankYou.d.ts.map +1 -1
  43. package/dist/components/auth/ForgotPasswordThankYou.js +3 -7
  44. package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
  45. package/dist/components/auth/ForgotPasswordThankYou.tsx +4 -9
  46. package/dist/components/auth/GoogleAuthChecking.d.ts.map +1 -1
  47. package/dist/components/auth/GoogleAuthChecking.js +10 -16
  48. package/dist/components/auth/GoogleAuthChecking.js.map +1 -1
  49. package/dist/components/auth/GoogleAuthChecking.tsx +2 -7
  50. package/dist/components/auth/MicrosoftAuthChecking.d.ts +2 -0
  51. package/dist/components/auth/MicrosoftAuthChecking.d.ts.map +1 -0
  52. package/dist/components/auth/MicrosoftAuthChecking.js +98 -0
  53. package/dist/components/auth/MicrosoftAuthChecking.js.map +1 -0
  54. package/dist/components/auth/MicrosoftAuthChecking.tsx +59 -0
  55. package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
  56. package/dist/components/auth/SolidForgotPassword.js +3 -7
  57. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  58. package/dist/components/auth/SolidForgotPassword.tsx +4 -9
  59. package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
  60. package/dist/components/auth/SolidInitialLoginOtp.js +21 -30
  61. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  62. package/dist/components/auth/SolidInitialLoginOtp.tsx +5 -13
  63. package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
  64. package/dist/components/auth/SolidInitiateRegisterOtp.js +35 -22
  65. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  66. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +28 -16
  67. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  68. package/dist/components/auth/SolidLogin.js +25 -31
  69. package/dist/components/auth/SolidLogin.js.map +1 -1
  70. package/dist/components/auth/SolidLogin.tsx +19 -16
  71. package/dist/components/auth/SolidRegister.d.ts.map +1 -1
  72. package/dist/components/auth/SolidRegister.js +59 -31
  73. package/dist/components/auth/SolidRegister.js.map +1 -1
  74. package/dist/components/auth/SolidRegister.tsx +91 -38
  75. package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
  76. package/dist/components/auth/SolidResetPassword.js +2 -6
  77. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  78. package/dist/components/auth/SolidResetPassword.tsx +2 -6
  79. package/dist/components/common/AuthBanner.js.map +1 -1
  80. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  81. package/dist/components/common/GeneralSettings.js +235 -151
  82. package/dist/components/common/GeneralSettings.js.map +1 -1
  83. package/dist/components/common/GeneralSettings.tsx +1109 -776
  84. package/dist/components/common/SettingsComponent.d.ts +2 -0
  85. package/dist/components/common/SettingsComponent.d.ts.map +1 -0
  86. package/dist/components/common/SettingsComponent.js +351 -0
  87. package/dist/components/common/SettingsComponent.js.map +1 -0
  88. package/dist/components/common/SettingsComponent.module.css +421 -0
  89. package/dist/components/common/SettingsComponent.tsx +582 -0
  90. package/dist/components/common/SocialMediaLogin.d.ts +8 -1
  91. package/dist/components/common/SocialMediaLogin.d.ts.map +1 -1
  92. package/dist/components/common/SocialMediaLogin.js +6 -13
  93. package/dist/components/common/SocialMediaLogin.js.map +1 -1
  94. package/dist/components/common/SocialMediaLogin.tsx +120 -58
  95. package/dist/components/common/SolidExport.d.ts.map +1 -1
  96. package/dist/components/common/SolidExport.js +1 -1
  97. package/dist/components/common/SolidExport.js.map +1 -1
  98. package/dist/components/common/SolidExport.tsx +2 -1
  99. package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
  100. package/dist/components/common/SolidFormStepper.js +2 -1
  101. package/dist/components/common/SolidFormStepper.js.map +1 -1
  102. package/dist/components/common/SolidFormStepper.tsx +2 -1
  103. package/dist/components/common/solid-export.css +26 -0
  104. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  105. package/dist/components/core/card/SolidCardView.js +24 -25
  106. package/dist/components/core/card/SolidCardView.js.map +1 -1
  107. package/dist/components/core/card/SolidCardView.tsx +22 -27
  108. package/dist/components/core/card/SolidCardViewConfigure.js +1 -1
  109. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  110. package/dist/components/core/card/SolidCardViewConfigure.tsx +1 -1
  111. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  112. package/dist/components/core/chatter/SolidChatter.js +39 -9
  113. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  114. package/dist/components/core/chatter/SolidChatter.tsx +42 -7
  115. package/dist/components/core/chatter/SolidChatterAuditMessage.d.ts.map +1 -1
  116. package/dist/components/core/chatter/SolidChatterAuditMessage.js +19 -1
  117. package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
  118. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +22 -1
  119. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +3 -0
  120. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -1
  121. package/dist/components/core/chatter/SolidChatterMessageBox.js +68 -4
  122. package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
  123. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +45 -3
  124. package/dist/components/core/chatter/chatter.module.css +0 -3
  125. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.d.ts.map +1 -1
  126. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.js +3 -1
  127. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.js.map +1 -1
  128. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +149 -0
  129. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.tsx +3 -1
  130. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  131. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +9 -8
  132. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  133. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +4 -2
  134. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.d.ts.map +1 -1
  135. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js +21 -4
  136. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js.map +1 -1
  137. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.tsx +128 -1
  138. package/dist/components/core/common/SolidGlobalSearchElement.js +1 -1
  139. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  140. package/dist/components/core/common/SolidGlobalSearchElement.tsx +1 -1
  141. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.d.ts +7 -0
  142. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.d.ts.map +1 -0
  143. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.js +75 -0
  144. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.js.map +1 -0
  145. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.ts +45 -0
  146. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.d.ts +3 -0
  147. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.d.ts.map +1 -0
  148. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.js +81 -0
  149. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.js.map +1 -0
  150. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.tsx +114 -0
  151. package/dist/components/core/form/SolidFormActionHeader.d.ts +1 -1
  152. package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
  153. package/dist/components/core/form/SolidFormActionHeader.js +10 -5
  154. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  155. package/dist/components/core/form/SolidFormActionHeader.tsx +33 -4
  156. package/dist/components/core/form/SolidFormLayouts.js +1 -1
  157. package/dist/components/core/form/SolidFormLayouts.js.map +1 -1
  158. package/dist/components/core/form/SolidFormLayouts.tsx +1 -1
  159. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  160. package/dist/components/core/form/SolidFormView.js +122 -28
  161. package/dist/components/core/form/SolidFormView.js.map +1 -1
  162. package/dist/components/core/form/SolidFormView.tsx +111 -10
  163. package/dist/components/core/form/fields/SolidComputedField.d.ts +25 -0
  164. package/dist/components/core/form/fields/SolidComputedField.d.ts.map +1 -0
  165. package/dist/components/core/form/fields/SolidComputedField.js +128 -0
  166. package/dist/components/core/form/fields/SolidComputedField.js.map +1 -0
  167. package/dist/components/core/form/fields/SolidComputedField.tsx +134 -0
  168. package/dist/components/core/form/fields/SolidDateTimeField.js +1 -1
  169. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  170. package/dist/components/core/form/fields/SolidDateTimeField.tsx +1 -1
  171. package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
  172. package/dist/components/core/form/fields/SolidJsonField.js +4 -1
  173. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  174. package/dist/components/core/form/fields/SolidJsonField.tsx +4 -1
  175. package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  176. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +35 -24
  177. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  178. package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +30 -14
  179. package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts.map +1 -1
  180. package/dist/components/core/form/fields/SolidSelectionStaticField.js +29 -28
  181. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  182. package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +17 -12
  183. package/dist/components/core/form/fields/SolidTimeField.js +1 -1
  184. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  185. package/dist/components/core/form/fields/SolidTimeField.tsx +1 -1
  186. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +2 -2
  187. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  188. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +2 -2
  189. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.d.ts.map +1 -1
  190. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +3 -3
  191. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map +1 -1
  192. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +0 -5
  193. package/dist/components/core/kanban/KanbanBoard.js +1 -1
  194. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  195. package/dist/components/core/kanban/KanbanBoard.tsx +1 -1
  196. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  197. package/dist/components/core/kanban/SolidKanbanView.js +216 -102
  198. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  199. package/dist/components/core/kanban/SolidKanbanView.tsx +204 -72
  200. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +1 -1
  201. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  202. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +1 -1
  203. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -1
  204. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -1
  205. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +1 -2
  206. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -1
  207. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +2 -2
  208. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -1
  209. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +21 -10
  210. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -1
  211. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +2 -2
  212. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -1
  213. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +18 -10
  214. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -1
  215. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +3 -6
  216. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
  217. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +30 -24
  218. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -1
  219. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +2 -2
  220. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  221. package/dist/components/core/list/SolidDataTable.js +6 -5
  222. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  223. package/dist/components/core/list/SolidDataTable.tsx +6 -5
  224. package/dist/components/core/list/SolidDataTablePagination.d.ts +15 -0
  225. package/dist/components/core/list/SolidDataTablePagination.d.ts.map +1 -0
  226. package/dist/components/core/list/SolidDataTablePagination.js +22 -0
  227. package/dist/components/core/list/SolidDataTablePagination.js.map +1 -0
  228. package/dist/components/core/list/SolidDataTablePagination.tsx +71 -0
  229. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  230. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +3 -3
  231. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  232. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +1 -0
  233. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  234. package/dist/components/core/list/SolidListView.js +60 -63
  235. package/dist/components/core/list/SolidListView.js.map +1 -1
  236. package/dist/components/core/list/SolidListView.tsx +43 -48
  237. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  238. package/dist/components/core/list/SolidListViewConfigure.js +32 -3
  239. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  240. package/dist/components/core/list/SolidListViewConfigure.tsx +35 -3
  241. package/dist/components/core/list/SolidListViewRowActionsMenu.js +2 -2
  242. package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
  243. package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +2 -2
  244. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +1 -1
  245. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -1
  246. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +6 -7
  247. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -1
  248. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +9 -10
  249. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +1 -1
  250. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  251. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +1 -1
  252. package/dist/components/core/tree/SolidTreeTable.d.ts +1 -1
  253. package/dist/components/core/tree/SolidTreeTable.d.ts.map +1 -1
  254. package/dist/components/core/tree/SolidTreeTable.js +78 -78
  255. package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
  256. package/dist/components/core/tree/SolidTreeTable.tsx +1 -10
  257. package/dist/components/core/users/CreateUser.css +27 -2
  258. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  259. package/dist/components/core/users/CreateUser.js +14 -12
  260. package/dist/components/core/users/CreateUser.js.map +1 -1
  261. package/dist/components/core/users/CreateUser.tsx +18 -2
  262. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  263. package/dist/components/layout/user-profile-menu.js +17 -15
  264. package/dist/components/layout/user-profile-menu.js.map +1 -1
  265. package/dist/components/layout/user-profile-menu.tsx +30 -33
  266. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
  267. package/dist/components/shad-cn-ui/SolidAutocomplete.js +9 -1
  268. package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
  269. package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +10 -1
  270. package/dist/components/shad-cn-ui/SolidButton.d.ts +14 -15
  271. package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -1
  272. package/dist/components/shad-cn-ui/SolidButton.js +13 -3
  273. package/dist/components/shad-cn-ui/SolidButton.js.map +1 -1
  274. package/dist/components/shad-cn-ui/SolidButton.tsx +24 -4
  275. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
  276. package/dist/components/shad-cn-ui/SolidDatePicker.js +1 -1
  277. package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
  278. package/dist/components/shad-cn-ui/SolidDatePicker.tsx +2 -0
  279. package/dist/components/shad-cn-ui/SolidDialog.d.ts +1 -1
  280. package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
  281. package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
  282. package/dist/components/shad-cn-ui/SolidDialog.tsx +1 -1
  283. package/dist/components/shad-cn-ui/SolidIcon.d.ts +2 -2
  284. package/dist/components/shad-cn-ui/SolidIcon.d.ts.map +1 -1
  285. package/dist/components/shad-cn-ui/SolidIcon.js +3 -4
  286. package/dist/components/shad-cn-ui/SolidIcon.js.map +1 -1
  287. package/dist/components/shad-cn-ui/SolidIcon.tsx +12 -15
  288. package/dist/components/shad-cn-ui/SolidRichTextEditor.d.ts.map +1 -1
  289. package/dist/components/shad-cn-ui/SolidRichTextEditor.js +9 -1
  290. package/dist/components/shad-cn-ui/SolidRichTextEditor.js.map +1 -1
  291. package/dist/components/shad-cn-ui/SolidRichTextEditor.tsx +8 -1
  292. package/dist/components/shad-cn-ui/SolidTabs.d.ts +2 -1
  293. package/dist/components/shad-cn-ui/SolidTabs.d.ts.map +1 -1
  294. package/dist/components/shad-cn-ui/SolidTabs.js +2 -2
  295. package/dist/components/shad-cn-ui/SolidTabs.js.map +1 -1
  296. package/dist/components/shad-cn-ui/SolidTabs.tsx +12 -1
  297. package/dist/components/solid-ui/SolidButton.d.ts +14 -0
  298. package/dist/components/solid-ui/SolidButton.d.ts.map +1 -0
  299. package/dist/components/solid-ui/SolidButton.js +36 -0
  300. package/dist/components/solid-ui/SolidButton.js.map +1 -0
  301. package/dist/components/solid-ui/SolidButton.tsx +54 -0
  302. package/dist/components/solid-ui/SolidTabs.d.ts +18 -0
  303. package/dist/components/solid-ui/SolidTabs.d.ts.map +1 -0
  304. package/dist/components/solid-ui/SolidTabs.js +22 -0
  305. package/dist/components/solid-ui/SolidTabs.js.map +1 -0
  306. package/dist/components/solid-ui/SolidTabs.tsx +73 -0
  307. package/dist/components/solid-ui/index.d.ts +3 -0
  308. package/dist/components/solid-ui/index.d.ts.map +1 -0
  309. package/dist/components/solid-ui/index.js +3 -0
  310. package/dist/components/solid-ui/index.js.map +1 -0
  311. package/dist/components/solid-ui/index.ts +2 -0
  312. package/dist/helpers/hydrateRelationRules.js +1 -1
  313. package/dist/helpers/hydrateRelationRules.js.map +1 -1
  314. package/dist/helpers/hydrateRelationRules.ts +1 -1
  315. package/dist/helpers/permissions.js +2 -2
  316. package/dist/helpers/permissions.js.map +1 -1
  317. package/dist/helpers/permissions.ts +2 -2
  318. package/dist/helpers/registry.d.ts +2 -2
  319. package/dist/helpers/registry.d.ts.map +1 -1
  320. package/dist/helpers/registry.js +6 -0
  321. package/dist/helpers/registry.js.map +1 -1
  322. package/dist/helpers/registry.ts +9 -2
  323. package/dist/helpers/settingsPayload.d.ts +32 -0
  324. package/dist/helpers/settingsPayload.d.ts.map +1 -0
  325. package/dist/helpers/settingsPayload.js +72 -0
  326. package/dist/helpers/settingsPayload.js.map +1 -0
  327. package/dist/helpers/settingsPayload.ts +125 -0
  328. package/dist/index.d.ts +7 -0
  329. package/dist/index.d.ts.map +1 -1
  330. package/dist/index.js +6 -0
  331. package/dist/index.js.map +1 -1
  332. package/dist/index.ts +7 -0
  333. package/dist/redux/api/solidChatterMessageApi.d.ts +2 -1
  334. package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
  335. package/dist/redux/api/solidChatterMessageApi.js +11 -1
  336. package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
  337. package/dist/redux/api/solidChatterMessageApi.ts +10 -1
  338. package/dist/redux/api/solidEntityApi.d.ts.map +1 -1
  339. package/dist/redux/api/solidEntityApi.js +14 -1
  340. package/dist/redux/api/solidEntityApi.js.map +1 -1
  341. package/dist/redux/api/solidEntityApi.tsx +17 -1
  342. package/dist/redux/store/createSolidStore.d.ts +1 -1
  343. package/dist/redux/store/createSolidStore.d.ts.map +1 -1
  344. package/dist/redux/store/createSolidStore.js +20 -11
  345. package/dist/redux/store/createSolidStore.js.map +1 -1
  346. package/dist/redux/store/createSolidStore.ts +20 -11
  347. package/dist/redux/store/defaultStoreConfig.d.ts +1 -0
  348. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  349. package/dist/redux/store/dynamicEntityApiMiddleware.d.ts +10 -0
  350. package/dist/redux/store/dynamicEntityApiMiddleware.d.ts.map +1 -0
  351. package/dist/redux/store/dynamicEntityApiMiddleware.js +44 -0
  352. package/dist/redux/store/dynamicEntityApiMiddleware.js.map +1 -0
  353. package/dist/redux/store/dynamicEntityApiMiddleware.ts +58 -0
  354. package/dist/redux/store/dynamicReducerManager.d.ts +10 -0
  355. package/dist/redux/store/dynamicReducerManager.d.ts.map +1 -0
  356. package/dist/redux/store/dynamicReducerManager.js +51 -0
  357. package/dist/redux/store/dynamicReducerManager.js.map +1 -0
  358. package/dist/redux/store/dynamicReducerManager.ts +51 -0
  359. package/dist/redux/store/solidEntityApiPool.d.ts +31 -0
  360. package/dist/redux/store/solidEntityApiPool.d.ts.map +1 -0
  361. package/dist/redux/store/solidEntityApiPool.js +123 -0
  362. package/dist/redux/store/solidEntityApiPool.js.map +1 -0
  363. package/dist/redux/store/solidEntityApiPool.ts +167 -0
  364. package/dist/resources/globals.css +26 -6
  365. package/dist/resources/shadcn-base.css +269 -92
  366. package/dist/resources/solid-responsive.css +22 -4
  367. package/dist/routes/AppEventListener.js +1 -1
  368. package/dist/routes/AppEventListener.js.map +1 -1
  369. package/dist/routes/AppEventListener.tsx +1 -1
  370. package/dist/routes/SolidRouteMetadataBoundary.d.ts +5 -0
  371. package/dist/routes/SolidRouteMetadataBoundary.d.ts.map +1 -0
  372. package/dist/routes/SolidRouteMetadataBoundary.js +72 -0
  373. package/dist/routes/SolidRouteMetadataBoundary.js.map +1 -0
  374. package/dist/routes/SolidRouteMetadataBoundary.tsx +77 -0
  375. package/dist/routes/pages/admin/core/CardPage.js +1 -1
  376. package/dist/routes/pages/admin/core/CardPage.js.map +1 -1
  377. package/dist/routes/pages/admin/core/CardPage.tsx +1 -1
  378. package/dist/routes/pages/admin/core/DiagnosticsPage.d.ts +2 -0
  379. package/dist/routes/pages/admin/core/DiagnosticsPage.d.ts.map +1 -0
  380. package/dist/routes/pages/admin/core/DiagnosticsPage.js +48 -0
  381. package/dist/routes/pages/admin/core/DiagnosticsPage.js.map +1 -0
  382. package/dist/routes/pages/admin/core/DiagnosticsPage.tsx +167 -0
  383. package/dist/routes/pages/admin/core/FormPage.js +1 -1
  384. package/dist/routes/pages/admin/core/FormPage.js.map +1 -1
  385. package/dist/routes/pages/admin/core/FormPage.tsx +1 -1
  386. package/dist/routes/pages/admin/core/KanbanPage.js +1 -1
  387. package/dist/routes/pages/admin/core/KanbanPage.js.map +1 -1
  388. package/dist/routes/pages/admin/core/KanbanPage.tsx +1 -1
  389. package/dist/routes/pages/admin/core/ListPage.js +1 -1
  390. package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
  391. package/dist/routes/pages/admin/core/ListPage.tsx +1 -1
  392. package/dist/routes/pages/admin/core/SettingsPage.js +2 -2
  393. package/dist/routes/pages/admin/core/SettingsPage.js.map +1 -1
  394. package/dist/routes/pages/admin/core/SettingsPage.tsx +2 -2
  395. package/dist/routes/pages/admin/core/TreePage.js +1 -1
  396. package/dist/routes/pages/admin/core/TreePage.js.map +1 -1
  397. package/dist/routes/pages/admin/core/TreePage.tsx +1 -1
  398. package/dist/routes/pages/auth/InitiateFacebookOauthPage.d.ts +2 -0
  399. package/dist/routes/pages/auth/InitiateFacebookOauthPage.d.ts.map +1 -0
  400. package/dist/routes/pages/auth/InitiateFacebookOauthPage.js +6 -0
  401. package/dist/routes/pages/auth/InitiateFacebookOauthPage.js.map +1 -0
  402. package/dist/routes/pages/auth/InitiateFacebookOauthPage.tsx +5 -0
  403. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.d.ts +2 -0
  404. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.d.ts.map +1 -0
  405. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.js +6 -0
  406. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.js.map +1 -0
  407. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.tsx +5 -0
  408. package/dist/routes/pages/studio/StudioLandingPage.d.ts.map +1 -1
  409. package/dist/routes/pages/studio/StudioLandingPage.js +35 -7
  410. package/dist/routes/pages/studio/StudioLandingPage.js.map +1 -1
  411. package/dist/routes/pages/studio/StudioLandingPage.tsx +42 -6
  412. package/dist/routes/solidRoutes.d.ts.map +1 -1
  413. package/dist/routes/solidRoutes.js +49 -24
  414. package/dist/routes/solidRoutes.js.map +1 -1
  415. package/dist/routes/solidRoutes.tsx +49 -24
  416. package/dist/routes/types.d.ts +8 -1
  417. package/dist/routes/types.d.ts.map +1 -1
  418. package/dist/routes/types.js.map +1 -1
  419. package/dist/routes/types.ts +10 -0
  420. package/dist/types/extension-registry.d.ts +1 -0
  421. package/dist/types/extension-registry.d.ts.map +1 -1
  422. package/dist/types/extension-registry.js +1 -0
  423. package/dist/types/extension-registry.js.map +1 -1
  424. package/dist/types/extension-registry.ts +1 -0
  425. package/dist/types/index.d.ts +2 -0
  426. package/dist/types/solid-core.d.ts +11 -0
  427. package/package.json +1 -2
  428. package/dist/components/auth/SolidOTPVerify.d.ts +0 -3
  429. package/dist/components/auth/SolidOTPVerify.d.ts.map +0 -1
  430. package/dist/components/auth/SolidOTPVerify.js +0 -67
  431. package/dist/components/auth/SolidOTPVerify.js.map +0 -1
  432. package/dist/components/auth/SolidOTPVerify.tsx +0 -133
  433. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +0 -2
  434. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +0 -1
  435. package/dist/components/core/common/LoadDynamicJsxComponent.js +0 -50
  436. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +0 -1
  437. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +0 -70
  438. package/dist/nextAuth/authProviders.d.ts +0 -4
  439. package/dist/nextAuth/authProviders.d.ts.map +0 -1
  440. package/dist/nextAuth/authProviders.js +0 -198
  441. package/dist/nextAuth/authProviders.js.map +0 -1
  442. package/dist/nextAuth/authProviders.tsx +0 -232
  443. package/dist/nextAuth/handleLogout.d.ts +0 -2
  444. package/dist/nextAuth/handleLogout.d.ts.map +0 -1
  445. package/dist/nextAuth/handleLogout.js +0 -36
  446. package/dist/nextAuth/handleLogout.js.map +0 -1
  447. package/dist/nextAuth/handleLogout.tsx +0 -39
  448. package/dist/nextAuth/refreshAccessToken.d.ts +0 -2
  449. package/dist/nextAuth/refreshAccessToken.d.ts.map +0 -1
  450. package/dist/nextAuth/refreshAccessToken.js +0 -24
  451. package/dist/nextAuth/refreshAccessToken.js.map +0 -1
  452. package/dist/nextAuth/refreshAccessToken.tsx +0 -28
  453. package/dist/redux/features/settingsSlice.d.ts +0 -20
  454. package/dist/redux/features/settingsSlice.d.ts.map +0 -1
  455. package/dist/redux/features/settingsSlice.js +0 -39
  456. package/dist/redux/features/settingsSlice.js.map +0 -1
  457. package/dist/redux/features/settingsSlice.ts +0 -60
@@ -35,9 +35,10 @@ var SolidSelectionStaticField = /** @class */ (function () {
35
35
  configurable: true,
36
36
  writable: true,
37
37
  value: function (value, formData) {
38
+ var _a;
38
39
  var fieldLayoutInfo = this.fieldContext.field;
39
40
  var fieldMetadata = this.fieldContext.fieldMetadata;
40
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
41
+ var isMultiSelect = (_a = fieldLayoutInfo.attrs.multiSelect) !== null && _a !== void 0 ? _a : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
41
42
  if (isMultiSelect && Array.isArray(value)) {
42
43
  formData.append(fieldLayoutInfo.attrs.name, JSON.stringify(value.map(function (v) { return v.value; })));
43
44
  }
@@ -54,12 +55,13 @@ var SolidSelectionStaticField = /** @class */ (function () {
54
55
  configurable: true,
55
56
  writable: true,
56
57
  value: function () {
57
- var _a;
58
+ var _a, _b;
58
59
  // Get field name and metadata
59
- var fieldName = this.fieldContext.field.attrs.name;
60
+ var fieldLayoutInfo = this.fieldContext.field;
61
+ var fieldName = fieldLayoutInfo.attrs.name;
60
62
  var fieldMetadata = this.fieldContext.fieldMetadata;
61
63
  var fieldDefaultValue = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.defaultValue;
62
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
64
+ var isMultiSelect = (_a = fieldLayoutInfo.attrs.multiSelect) !== null && _a !== void 0 ? _a : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
63
65
  // Get existing value from form data
64
66
  var existingValue = this.fieldContext.data[fieldName];
65
67
  // Function to get display value based on selectionStaticValues
@@ -79,7 +81,10 @@ var SolidSelectionStaticField = /** @class */ (function () {
79
81
  return match ? match.split(':')[1] : value;
80
82
  };
81
83
  // Determine the final value to use (existing value or default value)
82
- var finalValue = (_a = existingValue !== null && existingValue !== void 0 ? existingValue : fieldDefaultValue) !== null && _a !== void 0 ? _a : '';
84
+ var finalValue = (_b = existingValue !== null && existingValue !== void 0 ? existingValue : fieldDefaultValue) !== null && _b !== void 0 ? _b : '';
85
+ if (finalValue === '' || finalValue === null || finalValue === undefined || (Array.isArray(finalValue) && finalValue.length === 0)) {
86
+ return null;
87
+ }
83
88
  if (isMultiSelect) {
84
89
  var values = [];
85
90
  if (Array.isArray(finalValue)) {
@@ -91,7 +96,7 @@ var SolidSelectionStaticField = /** @class */ (function () {
91
96
  if (Array.isArray(parsed))
92
97
  values = parsed;
93
98
  }
94
- catch (_b) { }
99
+ catch (_c) { }
95
100
  }
96
101
  return values.map(function (val) { return ({
97
102
  label: getDisplayValue(val),
@@ -108,11 +113,11 @@ var SolidSelectionStaticField = /** @class */ (function () {
108
113
  configurable: true,
109
114
  writable: true,
110
115
  value: function () {
111
- var _a;
116
+ var _a, _b;
112
117
  var fieldMetadata = this.fieldContext.fieldMetadata;
113
118
  var fieldLayoutInfo = this.fieldContext.field;
114
119
  var fieldLabel = (_a = fieldLayoutInfo.attrs.label) !== null && _a !== void 0 ? _a : fieldMetadata.displayName;
115
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
120
+ var isMultiSelect = (_b = fieldLayoutInfo.attrs.multiSelect) !== null && _b !== void 0 ? _b : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
116
121
  // let schema = Yup.object({
117
122
  // value: Yup.string().required(`${fieldLabel} is required.`)
118
123
  // });
@@ -193,7 +198,7 @@ var SolidSelectionStaticField = /** @class */ (function () {
193
198
  }());
194
199
  export { SolidSelectionStaticField };
195
200
  export var DefaultSelectionStaticAutocompleteFormEditWidget = function (_a) {
196
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
201
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
197
202
  var formik = _a.formik, fieldContext = _a.fieldContext;
198
203
  var fieldMetadata = fieldContext.fieldMetadata;
199
204
  var fieldLayoutInfo = fieldContext.field;
@@ -205,8 +210,8 @@ export var DefaultSelectionStaticAutocompleteFormEditWidget = function (_a) {
205
210
  var fieldReadonly = (_e = fieldLayoutInfo.attrs) === null || _e === void 0 ? void 0 : _e.readonly;
206
211
  var formDisabled = (_h = (_g = (_f = solidFormViewMetaData.data.solidView) === null || _f === void 0 ? void 0 : _f.layout) === null || _g === void 0 ? void 0 : _g.attrs) === null || _h === void 0 ? void 0 : _h.disabled;
207
212
  var formReadonly = (_l = (_k = (_j = solidFormViewMetaData.data.solidView) === null || _j === void 0 ? void 0 : _j.layout) === null || _k === void 0 ? void 0 : _k.attrs) === null || _l === void 0 ? void 0 : _l.readonly;
208
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
209
- var _t = useState([]), selectionStaticItems = _t[0], setSelectionStaticItems = _t[1];
213
+ var isMultiSelect = (_m = fieldLayoutInfo.attrs.multiSelect) !== null && _m !== void 0 ? _m : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
214
+ var _u = useState([]), selectionStaticItems = _u[0], setSelectionStaticItems = _u[1];
210
215
  var selectionStaticSearch = function (event) {
211
216
  var selectionStaticData = fieldMetadata.selectionStaticValues.map(function (i) {
212
217
  return {
@@ -225,16 +230,12 @@ export var DefaultSelectionStaticAutocompleteFormEditWidget = function (_a) {
225
230
  return;
226
231
  var syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text");
227
232
  fieldContext.onChange(syntheticEvent, "onFieldChange");
228
- }, onSelect: function (_a) {
229
- var value = _a.value;
230
- var syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text");
231
- fieldContext.onChange(syntheticEvent, "onFieldChange");
232
- } }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("p", { className: styles.fieldError, children: typeof formik.errors[(_m = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _m === void 0 ? void 0 : _m.name] === 'object'
233
- ? (_q = (_p = formik.errors[(_o = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _o === void 0 ? void 0 : _o.name]) === null || _p === void 0 ? void 0 : _p.value) === null || _q === void 0 ? void 0 : _q.toString()
234
- : (_s = formik.errors[(_r = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _r === void 0 ? void 0 : _r.name]) === null || _s === void 0 ? void 0 : _s.toString() }))] }));
233
+ } }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("p", { className: styles.fieldError, children: typeof formik.errors[(_o = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _o === void 0 ? void 0 : _o.name] === 'object'
234
+ ? (_r = (_q = formik.errors[(_p = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _p === void 0 ? void 0 : _p.name]) === null || _q === void 0 ? void 0 : _q.value) === null || _r === void 0 ? void 0 : _r.toString()
235
+ : (_t = formik.errors[(_s = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _s === void 0 ? void 0 : _s.name]) === null || _t === void 0 ? void 0 : _t.toString() }))] }));
235
236
  };
236
237
  export var SolidSelectionStaticRadioFormEditWidget = function (_a) {
237
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
238
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
238
239
  var formik = _a.formik, fieldContext = _a.fieldContext;
239
240
  var fieldMetadata = fieldContext.fieldMetadata;
240
241
  var fieldLayoutInfo = fieldContext.field;
@@ -246,7 +247,7 @@ export var SolidSelectionStaticRadioFormEditWidget = function (_a) {
246
247
  var formDisabled = (_h = (_g = (_f = fieldContext.solidFormViewMetaData.data.solidView) === null || _f === void 0 ? void 0 : _f.layout) === null || _g === void 0 ? void 0 : _g.attrs) === null || _h === void 0 ? void 0 : _h.disabled;
247
248
  var formReadonly = (_l = (_k = (_j = fieldContext.solidFormViewMetaData.data.solidView) === null || _j === void 0 ? void 0 : _j.layout) === null || _k === void 0 ? void 0 : _k.attrs) === null || _l === void 0 ? void 0 : _l.readonly;
248
249
  var fieldName = fieldLayoutInfo.attrs.name;
249
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
250
+ var isMultiSelect = (_m = fieldLayoutInfo.attrs.multiSelect) !== null && _m !== void 0 ? _m : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
250
251
  // Convert selectionStaticValues to usable radio options
251
252
  var radioOptions = fieldMetadata.selectionStaticValues.map(function (i) {
252
253
  var _a = i.split(":"), value = _a[0], label = _a[1];
@@ -258,17 +259,17 @@ export var SolidSelectionStaticRadioFormEditWidget = function (_a) {
258
259
  if (isMultiSelect) {
259
260
  return (_jsx("p", { className: styles.fieldError, children: "This render mode is not supported for multi select." }));
260
261
  }
261
- return (_jsxs("div", { className: styles.fieldWrapper, children: [showFieldLabel !== false && (_jsxs("label", { htmlFor: fieldName, className: styles.fieldLabel, children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: "*" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] })), _jsx(SolidRadioGroup, { name: fieldName, options: radioOptions, value: (_o = (_m = formik.values[fieldName]) === null || _m === void 0 ? void 0 : _m.value) !== null && _o !== void 0 ? _o : formik.values[fieldName], disabled: formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled, onChange: function (nextValue) {
262
+ return (_jsxs("div", { className: styles.fieldWrapper, children: [showFieldLabel !== false && (_jsxs("label", { htmlFor: fieldName, className: styles.fieldLabel, children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: "*" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] })), _jsx(SolidRadioGroup, { name: fieldName, options: radioOptions, value: (_p = (_o = formik.values[fieldName]) === null || _o === void 0 ? void 0 : _o.value) !== null && _p !== void 0 ? _p : formik.values[fieldName], disabled: formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled, onChange: function (nextValue) {
262
263
  var selectedOption = radioOptions.find(function (opt) { return opt.value === nextValue; });
263
264
  if (selectedOption) {
264
265
  formik.setFieldValue(fieldName, selectedOption);
265
266
  var syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, "radio");
266
267
  fieldContext.onChange(syntheticEvent, "onFieldChange");
267
268
  }
268
- } }), isFormFieldValid(formik, fieldName) && (_jsx("p", { className: styles.fieldError, children: (_p = formik === null || formik === void 0 ? void 0 : formik.errors[fieldName]) === null || _p === void 0 ? void 0 : _p.toString() }))] }));
269
+ } }), isFormFieldValid(formik, fieldName) && (_jsx("p", { className: styles.fieldError, children: (_q = formik === null || formik === void 0 ? void 0 : formik.errors[fieldName]) === null || _q === void 0 ? void 0 : _q.toString() }))] }));
269
270
  };
270
271
  export var SolidSelectionStaticSelectButtonFormEditWidget = function (_a) {
271
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
272
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
272
273
  var formik = _a.formik, fieldContext = _a.fieldContext;
273
274
  var fieldMetadata = fieldContext.fieldMetadata;
274
275
  var fieldLayoutInfo = fieldContext.field;
@@ -280,7 +281,7 @@ export var SolidSelectionStaticSelectButtonFormEditWidget = function (_a) {
280
281
  var formDisabled = (_h = (_g = (_f = fieldContext.solidFormViewMetaData.data.solidView) === null || _f === void 0 ? void 0 : _f.layout) === null || _g === void 0 ? void 0 : _g.attrs) === null || _h === void 0 ? void 0 : _h.disabled;
281
282
  var formReadonly = (_l = (_k = (_j = fieldContext.solidFormViewMetaData.data.solidView) === null || _j === void 0 ? void 0 : _j.layout) === null || _k === void 0 ? void 0 : _k.attrs) === null || _l === void 0 ? void 0 : _l.readonly;
282
283
  var fieldName = fieldLayoutInfo.attrs.name;
283
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
284
+ var isMultiSelect = (_m = fieldLayoutInfo.attrs.multiSelect) !== null && _m !== void 0 ? _m : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
284
285
  var isFormFieldValid = function (formik, fieldName) {
285
286
  return formik.errors[fieldName];
286
287
  };
@@ -300,17 +301,17 @@ export var SolidSelectionStaticSelectButtonFormEditWidget = function (_a) {
300
301
  var syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, "button");
301
302
  fieldContext.onChange(syntheticEvent, "onFieldChange");
302
303
  }
303
- } }), isFormFieldValid(formik, fieldName) && (_jsx("p", { className: styles.fieldError, children: (_m = formik.errors[fieldName]) === null || _m === void 0 ? void 0 : _m.toString() }))] }));
304
+ } }), isFormFieldValid(formik, fieldName) && (_jsx("p", { className: styles.fieldError, children: (_o = formik.errors[fieldName]) === null || _o === void 0 ? void 0 : _o.toString() }))] }));
304
305
  };
305
306
  export var DefaultSelectionStaticFormViewWidget = function (_a) {
306
- var _b, _c;
307
+ var _b, _c, _d;
307
308
  var formik = _a.formik, fieldContext = _a.fieldContext;
308
309
  var fieldMetadata = fieldContext.fieldMetadata;
309
310
  var fieldLayoutInfo = fieldContext.field;
310
311
  var fieldLabel = (_b = fieldLayoutInfo.attrs.label) !== null && _b !== void 0 ? _b : fieldMetadata.displayName;
311
312
  var value = formik.values[fieldLayoutInfo.attrs.name];
312
- var isMultiSelect = fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
313
- var showFieldLabel = (_c = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _c === void 0 ? void 0 : _c.showLabel;
313
+ var isMultiSelect = (_c = fieldLayoutInfo.attrs.multiSelect) !== null && _c !== void 0 ? _c : fieldMetadata === null || fieldMetadata === void 0 ? void 0 : fieldMetadata.isMultiSelect;
314
+ var showFieldLabel = (_d = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.showLabel;
314
315
  return (_jsxs("div", { className: styles.fieldViewWrapper, children: [showFieldLabel !== false && (_jsx("p", { className: "".concat(styles.fieldViewLabel, " form-field-label"), children: fieldLabel })), _jsx("p", { className: styles.fieldViewValue, children: isMultiSelect
315
316
  ? Array.isArray(value)
316
317
  ? value.map(function (v) { return v === null || v === void 0 ? void 0 : v.label; }).filter(Boolean).join(', ')
@@ -1 +1 @@
1
- {"version":3,"file":"SolidSelectionStaticField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidSelectionStaticField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidAutocomplete } from \"../../../shad-cn-ui/SolidAutocomplete\";\nimport { SolidRadioGroup } from \"../../../shad-cn-ui/SolidRadioGroup\";\nimport { SolidSegmentedControl } from \"../../../shad-cn-ui/SolidSegmentedControl\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport styles from './solidFields.module.css';\nimport { useMemo, useState } from \"react\";\nimport * as Yup from 'yup';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\n\ntype AutoCompleteCompleteEvent = { query: string };\n\nexport class SolidSelectionStaticField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n if (isMultiSelect && Array.isArray(value)) {\n formData.append(fieldLayoutInfo.attrs.name, JSON.stringify(value.map(v => v.value)));\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value.value);\n }\n // if (value) {\n // formData.append(fieldLayoutInfo.attrs.name, value.value);\n // }\n }\n\n initialValue(): any {\n // Get field name and metadata\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldDefaultValue = fieldMetadata?.defaultValue;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n // Get existing value from form data\n const existingValue = this.fieldContext.data[fieldName];\n\n // Function to get display value based on selectionStaticValues\n // const getDisplayValue = (value: string | null): string | null => {\n // if (!value) return null;\n // for (const item of fieldMetadata.selectionStaticValues) {\n // const [lhs, rhs] = item.split(':');\n // if (lhs === value) {\n // return rhs;\n // }\n // }\n // return null;\n // };\n\n // Function to get display value based on selectionStaticValues\n const getDisplayValue = (value: string): string => {\n const match = fieldMetadata.selectionStaticValues.find((item: string) => item.startsWith(value + ':'));\n return match ? match.split(':')[1] : value;\n };\n\n // Determine the final value to use (existing value or default value)\n const finalValue = existingValue ?? fieldDefaultValue ?? '';\n\n if (isMultiSelect) {\n let values: string[] = [];\n\n if (Array.isArray(finalValue)) {\n values = finalValue;\n } else {\n try {\n const parsed = JSON.parse(finalValue);\n if (Array.isArray(parsed)) values = parsed;\n } catch { }\n }\n\n return values.map(val => ({\n label: getDisplayValue(val),\n value: val\n }));\n }\n\n // Get display value for the final value\n // const displayValue = getDisplayValue(finalValue);\n\n return { label: getDisplayValue(finalValue), value: finalValue };\n }\n\n\n validationSchema(): Yup.Schema {\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n\n // let schema = Yup.object({\n // value: Yup.string().required(`${fieldLabel} is required.`)\n // });\n let schema: Yup.Schema;\n\n if (isMultiSelect) {\n // For multi-select, create array schema\n if (fieldMetadata.required) {\n schema = Yup.array()\n .of(Yup.object({\n value: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n }))\n .min(1, ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n .required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = Yup.array()\n .of(Yup.object({\n value: Yup.string()\n }))\n .nullable(); // Allow null/undefined for non-required fields\n }\n } else {\n // For single select, create object schema\n if (fieldMetadata.required) {\n schema = Yup.object({\n value: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n }).required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = Yup.object({\n value: Yup.string()\n }).nullable(); // Allow null/undefined for non-required fields\n }\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultSelectionStaticAutocompleteFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultSelectionStaticFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n}\n\nexport const DefaultSelectionStaticAutocompleteFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n\n const [selectionStaticItems, setSelectionStaticItems] = useState([]);\n const selectionStaticSearch = (event: AutoCompleteCompleteEvent) => {\n const selectionStaticData = fieldMetadata.selectionStaticValues.map((i: string) => {\n return {\n label: i.split(\":\")[1],\n value: i.split(\":\")[0]\n }\n });\n const suggestionData = selectionStaticData.filter((t: any) => t.value.toLowerCase().startsWith(event.query.toLowerCase()));\n setSelectionStaticItems(suggestionData)\n }\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className={`${styles.fieldWrapper} ${isFormFieldValid(formik, fieldLayoutInfo.attrs.name) ? styles.fieldInvalid : \"\"}`}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidAutocomplete\n multiple={isMultiSelect}\n dropdown\n field=\"label\"\n className={`solid-standard-autocomplete ${isFormFieldValid(formik, fieldLayoutInfo.attrs.name) ? styles.fieldInvalidControl : \"\"}`}\n value={formik.values[fieldLayoutInfo.attrs.name] || (isMultiSelect ? [] : null)}\n suggestions={selectionStaticItems}\n completeMethod={(e) => selectionStaticSearch(e)}\n onChange={({ value }) => {\n if (formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled) return;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, \"text\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n onSelect={({ value }) => {\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, \"text\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>\n {typeof formik.errors[fieldLayoutInfo?.attrs?.name] === 'object'\n ? (formik.errors[fieldLayoutInfo?.attrs?.name] as any)?.value?.toString()\n : formik.errors[fieldLayoutInfo?.attrs?.name]?.toString()}\n </p>\n )}\n </div>\n );\n}\n\nexport const SolidSelectionStaticRadioFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formDisabled = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n // Convert selectionStaticValues to usable radio options\n const radioOptions = fieldMetadata.selectionStaticValues.map((i: string) => {\n const [value, label] = i.split(\":\");\n return { label, value };\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.errors[fieldName];\n\n if (isMultiSelect) {\n return (\n <p className={styles.fieldError}>This render mode is not supported for multi select.</p>\n );\n }\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldName} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n <SolidRadioGroup\n name={fieldName}\n options={radioOptions}\n value={formik.values[fieldName]?.value ?? formik.values[fieldName]}\n disabled={formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled}\n onChange={(nextValue) => {\n const selectedOption = radioOptions.find((opt: any) => opt.value === nextValue);\n if (selectedOption) {\n formik.setFieldValue(fieldName, selectedOption);\n const syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, \"radio\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }\n }}\n />\n {isFormFieldValid(formik, fieldName) && (\n <p className={styles.fieldError}>{formik?.errors[fieldName]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const SolidSelectionStaticSelectButtonFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formDisabled = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.errors[fieldName];\n\n if (isMultiSelect) {\n return (\n <p className={styles.fieldError}>This render mode is not supported for multi select.</p>\n );\n }\n\n const options = fieldMetadata.selectionStaticValues.map((i: string) => {\n const [value, label] = i.split(\":\");\n return { label, value };\n });\n\n const currentValue = formik.values[fieldName];\n const buttonValue =\n typeof currentValue === \"object\" ? currentValue.value : currentValue || null;\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldName} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n </label>\n )}\n <SolidSegmentedControl\n options={options}\n value={buttonValue}\n disabled={formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled}\n onChange={(nextValue) => {\n const selectedOption = options.find((opt: any) => opt.value === nextValue);\n if (selectedOption) {\n formik.setFieldValue(fieldName, selectedOption);\n const syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, \"button\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }\n }}\n />\n {isFormFieldValid(formik, fieldName) && (\n <p className={styles.fieldError}>{formik.errors[fieldName]?.toString()}</p>\n )}\n </div>\n );\n};\n\n\nexport const DefaultSelectionStaticFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n const isMultiSelect = fieldMetadata?.isMultiSelect;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>\n {isMultiSelect\n ? Array.isArray(value)\n ? value.map((v: any) => v?.label).filter(Boolean).join(', ')\n : ''\n : value?.label || ''}\n </p>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"SolidSelectionStaticField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidSelectionStaticField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidAutocomplete } from \"../../../shad-cn-ui/SolidAutocomplete\";\nimport { SolidRadioGroup } from \"../../../shad-cn-ui/SolidRadioGroup\";\nimport { SolidSegmentedControl } from \"../../../shad-cn-ui/SolidSegmentedControl\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport styles from './solidFields.module.css';\nimport { useMemo, useState } from \"react\";\nimport * as Yup from 'yup';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\n\ntype AutoCompleteCompleteEvent = { query: string };\n\nexport class SolidSelectionStaticField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n if (isMultiSelect && Array.isArray(value)) {\n formData.append(fieldLayoutInfo.attrs.name, JSON.stringify(value.map(v => v.value)));\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value.value);\n }\n // if (value) {\n // formData.append(fieldLayoutInfo.attrs.name, value.value);\n // }\n }\n\n initialValue(): any {\n // Get field name and metadata\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldName = fieldLayoutInfo.attrs.name;\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldDefaultValue = fieldMetadata?.defaultValue;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n // Get existing value from form data\n const existingValue = this.fieldContext.data[fieldName];\n\n // Function to get display value based on selectionStaticValues\n // const getDisplayValue = (value: string | null): string | null => {\n // if (!value) return null;\n // for (const item of fieldMetadata.selectionStaticValues) {\n // const [lhs, rhs] = item.split(':');\n // if (lhs === value) {\n // return rhs;\n // }\n // }\n // return null;\n // };\n\n // Function to get display value based on selectionStaticValues\n const getDisplayValue = (value: string): string => {\n const match = fieldMetadata.selectionStaticValues.find((item: string) => item.startsWith(value + ':'));\n return match ? match.split(':')[1] : value;\n };\n\n // Determine the final value to use (existing value or default value)\n const finalValue = existingValue ?? fieldDefaultValue ?? '';\n\n if (finalValue === '' || finalValue === null || finalValue === undefined || (Array.isArray(finalValue) && finalValue.length === 0)) {\n return null;\n }\n\n if (isMultiSelect) {\n let values: string[] = [];\n\n if (Array.isArray(finalValue)) {\n values = finalValue;\n } else {\n try {\n const parsed = JSON.parse(finalValue);\n if (Array.isArray(parsed)) values = parsed;\n } catch { }\n }\n\n return values.map(val => ({\n label: getDisplayValue(val),\n value: val\n }));\n }\n\n // Get display value for the final value\n // const displayValue = getDisplayValue(finalValue);\n\n return { label: getDisplayValue(finalValue), value: finalValue };\n }\n\n\n validationSchema(): Yup.Schema {\n\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n\n // let schema = Yup.object({\n // value: Yup.string().required(`${fieldLabel} is required.`)\n // });\n let schema: Yup.Schema;\n\n if (isMultiSelect) {\n // For multi-select, create array schema\n if (fieldMetadata.required) {\n schema = Yup.array()\n .of(Yup.object({\n value: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n }))\n .min(1, ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n .required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = Yup.array()\n .of(Yup.object({\n value: Yup.string()\n }))\n .nullable(); // Allow null/undefined for non-required fields\n }\n } else {\n // For single select, create object schema\n if (fieldMetadata.required) {\n schema = Yup.object({\n value: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel))\n }).required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = Yup.object({\n value: Yup.string()\n }).nullable(); // Allow null/undefined for non-required fields\n }\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultSelectionStaticAutocompleteFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultSelectionStaticFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n\n}\n\nexport const DefaultSelectionStaticAutocompleteFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n\n const [selectionStaticItems, setSelectionStaticItems] = useState([]);\n const selectionStaticSearch = (event: AutoCompleteCompleteEvent) => {\n const selectionStaticData = fieldMetadata.selectionStaticValues.map((i: string) => {\n return {\n label: i.split(\":\")[1],\n value: i.split(\":\")[0]\n }\n });\n const suggestionData = selectionStaticData.filter((t: any) => t.value.toLowerCase().startsWith(event.query.toLowerCase()));\n setSelectionStaticItems(suggestionData)\n }\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <div className={`${styles.fieldWrapper} ${isFormFieldValid(formik, fieldLayoutInfo.attrs.name) ? styles.fieldInvalid : \"\"}`}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidAutocomplete\n multiple={isMultiSelect}\n dropdown\n field=\"label\"\n className={`solid-standard-autocomplete ${isFormFieldValid(formik, fieldLayoutInfo.attrs.name) ? styles.fieldInvalidControl : \"\"}`}\n value={formik.values[fieldLayoutInfo.attrs.name] || (isMultiSelect ? [] : null)}\n suggestions={selectionStaticItems}\n completeMethod={(e) => selectionStaticSearch(e)}\n onChange={({ value }) => {\n if (formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled) return;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, \"text\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n // onSelect={({ value }) => {\n // const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, \"text\");\n // fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n // }}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>\n {typeof formik.errors[fieldLayoutInfo?.attrs?.name] === 'object'\n ? (formik.errors[fieldLayoutInfo?.attrs?.name] as any)?.value?.toString()\n : formik.errors[fieldLayoutInfo?.attrs?.name]?.toString()}\n </p>\n )}\n </div>\n );\n}\n\nexport const SolidSelectionStaticRadioFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formDisabled = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n // Convert selectionStaticValues to usable radio options\n const radioOptions = fieldMetadata.selectionStaticValues.map((i: string) => {\n const [value, label] = i.split(\":\");\n return { label, value };\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.errors[fieldName];\n\n if (isMultiSelect) {\n return (\n <p className={styles.fieldError}>This render mode is not supported for multi select.</p>\n );\n }\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldName} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n <SolidRadioGroup\n name={fieldName}\n options={radioOptions}\n value={formik.values[fieldName]?.value ?? formik.values[fieldName]}\n disabled={formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled}\n onChange={(nextValue) => {\n const selectedOption = radioOptions.find((opt: any) => opt.value === nextValue);\n if (selectedOption) {\n formik.setFieldValue(fieldName, selectedOption);\n const syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, \"radio\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }\n }}\n />\n {isFormFieldValid(formik, fieldName) && (\n <p className={styles.fieldError}>{formik?.errors[fieldName]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const SolidSelectionStaticSelectButtonFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formDisabled = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.errors[fieldName];\n\n if (isMultiSelect) {\n return (\n <p className={styles.fieldError}>This render mode is not supported for multi select.</p>\n );\n }\n\n const options = fieldMetadata.selectionStaticValues.map((i: string) => {\n const [value, label] = i.split(\":\");\n return { label, value };\n });\n\n const currentValue = formik.values[fieldName];\n const buttonValue =\n typeof currentValue === \"object\" ? currentValue.value : currentValue || null;\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldName} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n </label>\n )}\n <SolidSegmentedControl\n options={options}\n value={buttonValue}\n disabled={formReadonly || fieldReadonly || readOnlyPermission || formDisabled || fieldDisabled}\n onChange={(nextValue) => {\n const selectedOption = options.find((opt: any) => opt.value === nextValue);\n if (selectedOption) {\n formik.setFieldValue(fieldName, selectedOption);\n const syntheticEvent = buildSyntheticChangeEvent(fieldName, selectedOption, \"button\");\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }\n }}\n />\n {isFormFieldValid(formik, fieldName) && (\n <p className={styles.fieldError}>{formik.errors[fieldName]?.toString()}</p>\n )}\n </div>\n );\n};\n\n\nexport const DefaultSelectionStaticFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>\n {isMultiSelect\n ? Array.isArray(value)\n ? value.map((v: any) => v?.label).filter(Boolean).join(', ')\n : ''\n : value?.label || ''}\n </p>\n </div>\n );\n}\n"]}
@@ -25,7 +25,7 @@ export class SolidSelectionStaticField implements ISolidField {
25
25
  updateFormData(value: any, formData: FormData): any {
26
26
  const fieldLayoutInfo = this.fieldContext.field;
27
27
  const fieldMetadata = this.fieldContext.fieldMetadata;
28
- const isMultiSelect = fieldMetadata?.isMultiSelect;
28
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
29
29
  if (isMultiSelect && Array.isArray(value)) {
30
30
  formData.append(fieldLayoutInfo.attrs.name, JSON.stringify(value.map(v => v.value)));
31
31
  } else if (value) {
@@ -38,10 +38,11 @@ export class SolidSelectionStaticField implements ISolidField {
38
38
 
39
39
  initialValue(): any {
40
40
  // Get field name and metadata
41
- const fieldName = this.fieldContext.field.attrs.name;
41
+ const fieldLayoutInfo = this.fieldContext.field;
42
+ const fieldName = fieldLayoutInfo.attrs.name;
42
43
  const fieldMetadata = this.fieldContext.fieldMetadata;
43
44
  const fieldDefaultValue = fieldMetadata?.defaultValue;
44
- const isMultiSelect = fieldMetadata?.isMultiSelect;
45
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
45
46
  // Get existing value from form data
46
47
  const existingValue = this.fieldContext.data[fieldName];
47
48
 
@@ -66,6 +67,10 @@ export class SolidSelectionStaticField implements ISolidField {
66
67
  // Determine the final value to use (existing value or default value)
67
68
  const finalValue = existingValue ?? fieldDefaultValue ?? '';
68
69
 
70
+ if (finalValue === '' || finalValue === null || finalValue === undefined || (Array.isArray(finalValue) && finalValue.length === 0)) {
71
+ return null;
72
+ }
73
+
69
74
  if (isMultiSelect) {
70
75
  let values: string[] = [];
71
76
 
@@ -96,7 +101,7 @@ export class SolidSelectionStaticField implements ISolidField {
96
101
  const fieldMetadata = this.fieldContext.fieldMetadata;
97
102
  const fieldLayoutInfo = this.fieldContext.field;
98
103
  const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
99
- const isMultiSelect = fieldMetadata?.isMultiSelect;
104
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
100
105
 
101
106
  // let schema = Yup.object({
102
107
  // value: Yup.string().required(`${fieldLabel} is required.`)
@@ -195,7 +200,7 @@ export const DefaultSelectionStaticAutocompleteFormEditWidget = ({ formik, field
195
200
 
196
201
  const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;
197
202
  const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;
198
- const isMultiSelect = fieldMetadata?.isMultiSelect;
203
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
199
204
 
200
205
  const [selectionStaticItems, setSelectionStaticItems] = useState([]);
201
206
  const selectionStaticSearch = (event: AutoCompleteCompleteEvent) => {
@@ -232,10 +237,10 @@ export const DefaultSelectionStaticAutocompleteFormEditWidget = ({ formik, field
232
237
  const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text");
233
238
  fieldContext.onChange(syntheticEvent, "onFieldChange");
234
239
  }}
235
- onSelect={({ value }) => {
236
- const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text");
237
- fieldContext.onChange(syntheticEvent, "onFieldChange");
238
- }}
240
+ // onSelect={({ value }) => {
241
+ // const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text");
242
+ // fieldContext.onChange(syntheticEvent, "onFieldChange");
243
+ // }}
239
244
  />
240
245
  {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (
241
246
  <p className={styles.fieldError}>
@@ -261,7 +266,7 @@ export const SolidSelectionStaticRadioFormEditWidget = ({ formik, fieldContext }
261
266
  const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;
262
267
 
263
268
  const fieldName = fieldLayoutInfo.attrs.name;
264
- const isMultiSelect = fieldMetadata?.isMultiSelect;
269
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
265
270
  // Convert selectionStaticValues to usable radio options
266
271
  const radioOptions = fieldMetadata.selectionStaticValues.map((i: string) => {
267
272
  const [value, label] = i.split(":");
@@ -320,7 +325,7 @@ export const SolidSelectionStaticSelectButtonFormEditWidget = ({ formik, fieldCo
320
325
  const formReadonly = fieldContext.solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;
321
326
 
322
327
  const fieldName = fieldLayoutInfo.attrs.name;
323
- const isMultiSelect = fieldMetadata?.isMultiSelect;
328
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
324
329
 
325
330
  const isFormFieldValid = (formik: any, fieldName: string) =>
326
331
  formik.errors[fieldName];
@@ -375,7 +380,7 @@ export const DefaultSelectionStaticFormViewWidget = ({ formik, fieldContext }: S
375
380
  const fieldLayoutInfo = fieldContext.field;
376
381
  const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;
377
382
  const value = formik.values[fieldLayoutInfo.attrs.name];
378
- const isMultiSelect = fieldMetadata?.isMultiSelect;
383
+ const isMultiSelect = fieldLayoutInfo.attrs.multiSelect ?? fieldMetadata?.isMultiSelect;
379
384
  const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;
380
385
  return (
381
386
  <div className={styles.fieldViewWrapper}>
@@ -189,7 +189,7 @@ export var DefaultTimeFormViewWidget = function (_a) {
189
189
  var fieldLabel = (_b = fieldLayoutInfo.attrs.label) !== null && _b !== void 0 ? _b : fieldMetadata.displayName;
190
190
  var showFieldLabel = (_c = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _c === void 0 ? void 0 : _c.showLabel;
191
191
  var rawValue = formik.values[fieldName];
192
- var format = (_d = fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.format;
192
+ var format = ((_d = fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.format) || "HH:mm:ss";
193
193
  var parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;
194
194
  var displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : "-";
195
195
  return (_jsxs("div", { className: styles.fieldViewWrapper, children: [showFieldLabel !== false && (_jsx("p", { className: "".concat(styles.fieldViewLabel, " form-field-label"), children: fieldLabel })), _jsx("p", { className: styles.fieldViewValue, children: _jsx(DateFieldViewComponent, { value: rawValue, format: format, fallback: "-" }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"SolidTimeField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidTimeField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidDatePicker } from \"../../../shad-cn-ui/SolidDatePicker\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport { useRef } from \"react\";\nimport * as Yup from 'yup';\nimport dayjs from 'dayjs';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { DateFieldViewComponent } from '../../../../components/core/common/DateFieldViewComponent';\nimport styles from \"./solidFields.module.css\";\n\n\n// Converts multiple time formats into a JavaScript Date object\nfunction parseTimeStringToDate(timeStr: string): Date | null {\n if (!timeStr) return null;\n\n // CASE 1: HH:mm:ss\n if (typeof timeStr === \"string\" && /^\\d{2}:\\d{2}:\\d{2}$/.test(timeStr)) {\n const [h, m, s] = timeStr.split(\":\").map(Number);\n const d = new Date();\n d.setHours(h, m, s, 0);\n return d;\n }\n\n // CASE 2: timestamp or timestamptz\n try {\n const d = new Date(timeStr); // ← AUTO UTC → LOCAL conversion\n if (!isNaN(d.getTime())) return d;\n } catch (e) {\n console.error(`${ERROR_MESSAGES.FIELD_INAVLID_FORMAT('Date')}:,${e}`)\n }\n\n return null;\n}\n\n// Formats a Date object to a HH:mm:ss string for display\nfunction formatTime(date: Date | null): string {\n if (!date) return \"\";\n return date.toLocaleTimeString();\n}\n\n\nexport class SolidTimeField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value instanceof Date) {\n // Use local date with selected time\n const now = new Date();\n const localDate = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n value.getHours(),\n value.getMinutes(),\n value.getSeconds()\n );\n\n formData.append(fieldLayoutInfo.attrs.name, localDate.toISOString());\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const existingValue = this.fieldContext.data[fieldName];\n\n if (existingValue) {\n if (existingValue instanceof Date) {\n return existingValue;\n }\n if (typeof existingValue === \"string\") {\n const parsed = parseTimeStringToDate(existingValue);\n if (parsed) return parsed;\n }\n }\n\n return fieldDefaultValue ? new Date(fieldDefaultValue) : null;\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.date().nullable();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultTimeFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultTimeFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\n\nexport const DefaultTimeFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const calendarRef = useRef<any>(null); // Reference for the Calendar component\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n\n const fieldValue = formik.values[fieldLayoutInfo.attrs.name];\n\n\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* &nbsp; {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidDatePicker\n selected={fieldValue instanceof Date ? fieldValue : typeof fieldValue === \"string\" ? parseTimeStringToDate(fieldValue) ?? undefined : undefined}\n onChange={(date: Date | null) => {\n const nextValue = (date as Date | null) ?? null;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, nextValue, \"time\", nextValue ? true : undefined);\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n disabled={formDisabled || fieldDisabled || readOnlyPermission}\n readOnly={readOnlyPermission}\n timeOnly\n showTimeSelect\n dateFormat=\"HH:mm\"\n className=\"\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\nexport const DefaultTimeFormViewWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const fieldLabel =\n fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const rawValue = formik.values[fieldName];\n const format = fieldLayoutInfo.attrs?.format;\n\n const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;\n const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : \"-\";\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>\n {fieldLabel}\n </p>\n )}\n <p className={styles.fieldViewValue}>\n <DateFieldViewComponent value={rawValue} format={format} fallback=\"-\"></DateFieldViewComponent>\n </p>\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidTimeField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidTimeField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidDatePicker } from \"../../../shad-cn-ui/SolidDatePicker\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport { useRef } from \"react\";\nimport * as Yup from 'yup';\nimport dayjs from 'dayjs';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { DateFieldViewComponent } from '../../../../components/core/common/DateFieldViewComponent';\nimport styles from \"./solidFields.module.css\";\n\n\n// Converts multiple time formats into a JavaScript Date object\nfunction parseTimeStringToDate(timeStr: string): Date | null {\n if (!timeStr) return null;\n\n // CASE 1: HH:mm:ss\n if (typeof timeStr === \"string\" && /^\\d{2}:\\d{2}:\\d{2}$/.test(timeStr)) {\n const [h, m, s] = timeStr.split(\":\").map(Number);\n const d = new Date();\n d.setHours(h, m, s, 0);\n return d;\n }\n\n // CASE 2: timestamp or timestamptz\n try {\n const d = new Date(timeStr); // ← AUTO UTC → LOCAL conversion\n if (!isNaN(d.getTime())) return d;\n } catch (e) {\n console.error(`${ERROR_MESSAGES.FIELD_INAVLID_FORMAT('Date')}:,${e}`)\n }\n\n return null;\n}\n\n// Formats a Date object to a HH:mm:ss string for display\nfunction formatTime(date: Date | null): string {\n if (!date) return \"\";\n return date.toLocaleTimeString();\n}\n\n\nexport class SolidTimeField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value instanceof Date) {\n // Use local date with selected time\n const now = new Date();\n const localDate = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n value.getHours(),\n value.getMinutes(),\n value.getSeconds()\n );\n\n formData.append(fieldLayoutInfo.attrs.name, localDate.toISOString());\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const existingValue = this.fieldContext.data[fieldName];\n\n if (existingValue) {\n if (existingValue instanceof Date) {\n return existingValue;\n }\n if (typeof existingValue === \"string\") {\n const parsed = parseTimeStringToDate(existingValue);\n if (parsed) return parsed;\n }\n }\n\n return fieldDefaultValue ? new Date(fieldDefaultValue) : null;\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.date().nullable();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultTimeFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultTimeFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\n\nexport const DefaultTimeFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const calendarRef = useRef<any>(null); // Reference for the Calendar component\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n\n const fieldValue = formik.values[fieldLayoutInfo.attrs.name];\n\n\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* &nbsp; {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidDatePicker\n selected={fieldValue instanceof Date ? fieldValue : typeof fieldValue === \"string\" ? parseTimeStringToDate(fieldValue) ?? undefined : undefined}\n onChange={(date: Date | null) => {\n const nextValue = (date as Date | null) ?? null;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, nextValue, \"time\", nextValue ? true : undefined);\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n disabled={formDisabled || fieldDisabled || readOnlyPermission}\n readOnly={readOnlyPermission}\n timeOnly\n showTimeSelect\n dateFormat=\"HH:mm\"\n className=\"\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\nexport const DefaultTimeFormViewWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const fieldLabel =\n fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const rawValue = formik.values[fieldName];\n const format = fieldLayoutInfo.attrs?.format || \"HH:mm:ss\";\n\n const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;\n const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : \"-\";\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>\n {fieldLabel}\n </p>\n )}\n <p className={styles.fieldViewValue}>\n <DateFieldViewComponent value={rawValue} format={format} fallback=\"-\"></DateFieldViewComponent>\n </p>\n </div>\n );\n};\n"]}
@@ -222,7 +222,7 @@ export const DefaultTimeFormViewWidget = ({
222
222
  const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;
223
223
 
224
224
  const rawValue = formik.values[fieldName];
225
- const format = fieldLayoutInfo.attrs?.format;
225
+ const format = fieldLayoutInfo.attrs?.format || "HH:mm:ss";
226
226
 
227
227
  const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;
228
228
  const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : "-";
@@ -458,7 +458,7 @@ export var DefaultRelationManyToOneFormEditWidget = function (_a) {
458
458
  }, onSelect: function (_a) {
459
459
  var value = _a.value;
460
460
  return fieldContext.onChange(buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text"), 'onFieldChange');
461
- }, className: "w-full solid-standard-autocomplete",
461
+ }, className: "w-full min-w-0 solid-standard-autocomplete",
462
462
  // virtualScrollerOptions={{
463
463
  // itemSize: 38,
464
464
  // lazy: true,
@@ -893,7 +893,7 @@ export var PseudoRelationManyToOneFormWidget = function (_a) {
893
893
  }, onSelect: function (_a) {
894
894
  var value = _a.value;
895
895
  return fieldContext.onChange(buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, value, "text"), 'onFieldChange');
896
- }, className: "w-full solid-standard-autocomplete",
896
+ }, className: "w-full min-w-0 solid-standard-autocomplete",
897
897
  // virtualScrollerOptions={{
898
898
  // itemSize: 38,
899
899
  // lazy: true,