@solidxai/core-ui 0.1.9-beta.9 → 0.1.9

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 (871) hide show
  1. package/README.md +1 -1
  2. package/dist/adapters/auth/handleLogout.d.ts +1 -1
  3. package/dist/adapters/auth/handleLogout.d.ts.map +1 -1
  4. package/dist/adapters/auth/handleLogout.js +20 -32
  5. package/dist/adapters/auth/handleLogout.js.map +1 -1
  6. package/dist/adapters/auth/handleLogout.ts +7 -14
  7. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  8. package/dist/components/auth/AuthLayout.js +23 -19
  9. package/dist/components/auth/AuthLayout.js.map +1 -1
  10. package/dist/components/auth/AuthLayout.tsx +62 -52
  11. package/dist/components/auth/ForgotPasswordThankYou.js +1 -1
  12. package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
  13. package/dist/components/auth/ForgotPasswordThankYou.tsx +2 -2
  14. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts +2 -0
  15. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts.map +1 -0
  16. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js +112 -0
  17. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js.map +1 -0
  18. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.tsx +78 -0
  19. package/dist/components/auth/SolidChangeForcePassword.js +2 -2
  20. package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
  21. package/dist/components/auth/SolidChangeForcePassword.tsx +13 -13
  22. package/dist/components/auth/SolidForgotPassword.js +1 -1
  23. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  24. package/dist/components/auth/SolidForgotPassword.tsx +3 -3
  25. package/dist/components/auth/SolidInitialLoginOtp.js +1 -1
  26. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  27. package/dist/components/auth/SolidInitialLoginOtp.tsx +2 -2
  28. package/dist/components/auth/SolidInitiateRegisterOtp.js +1 -1
  29. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  30. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +2 -2
  31. package/dist/components/auth/SolidLogin.js +4 -4
  32. package/dist/components/auth/SolidLogin.js.map +1 -1
  33. package/dist/components/auth/SolidLogin.tsx +13 -13
  34. package/dist/components/auth/SolidOTPVerify.d.ts +3 -0
  35. package/dist/components/auth/SolidOTPVerify.d.ts.map +1 -0
  36. package/dist/components/auth/SolidOTPVerify.js +67 -0
  37. package/dist/components/auth/SolidOTPVerify.js.map +1 -0
  38. package/dist/components/auth/SolidOTPVerify.tsx +133 -0
  39. package/dist/components/auth/SolidRegister.js +6 -6
  40. package/dist/components/auth/SolidRegister.js.map +1 -1
  41. package/dist/components/auth/SolidRegister.tsx +15 -15
  42. package/dist/components/auth/SolidResetPassword.js +2 -2
  43. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  44. package/dist/components/auth/SolidResetPassword.tsx +8 -8
  45. package/dist/components/common/AuthBanner.js.map +1 -1
  46. package/dist/components/common/BackButton.js +1 -1
  47. package/dist/components/common/BackButton.js.map +1 -1
  48. package/dist/components/common/BackButton.tsx +1 -1
  49. package/dist/components/common/CancelButton.js +2 -2
  50. package/dist/components/common/CancelButton.js.map +1 -1
  51. package/dist/components/common/CancelButton.tsx +3 -3
  52. package/dist/components/common/GeneralSettings.js +18 -18
  53. package/dist/components/common/GeneralSettings.js.map +1 -1
  54. package/dist/components/common/GeneralSettings.tsx +137 -137
  55. package/dist/components/common/SettingsComponent.d.ts.map +1 -1
  56. package/dist/components/common/SettingsComponent.js +4 -1
  57. package/dist/components/common/SettingsComponent.js.map +1 -1
  58. package/dist/components/common/SettingsComponent.module.css +95 -2
  59. package/dist/components/common/SettingsComponent.tsx +4 -1
  60. package/dist/components/common/SocialMediaLogin.d.ts.map +1 -1
  61. package/dist/components/common/SocialMediaLogin.js +1 -1
  62. package/dist/components/common/SocialMediaLogin.js.map +1 -1
  63. package/dist/components/common/SocialMediaLogin.tsx +4 -0
  64. package/dist/components/common/SolidExport.d.ts +1 -1
  65. package/dist/components/common/SolidExport.d.ts.map +1 -1
  66. package/dist/components/common/SolidExport.js +11 -4
  67. package/dist/components/common/SolidExport.js.map +1 -1
  68. package/dist/components/common/SolidExport.tsx +12 -2
  69. package/dist/components/common/SolidFaviconProvider.d.ts +3 -0
  70. package/dist/components/common/SolidFaviconProvider.d.ts.map +1 -0
  71. package/dist/components/common/SolidFaviconProvider.js +102 -0
  72. package/dist/components/common/SolidFaviconProvider.js.map +1 -0
  73. package/dist/components/common/SolidFaviconProvider.tsx +55 -0
  74. package/dist/components/common/SolidFormHeader.js +1 -1
  75. package/dist/components/common/SolidFormHeader.js.map +1 -1
  76. package/dist/components/common/SolidFormHeader.tsx +1 -1
  77. package/dist/components/common/SolidModuleHome.js +2 -2
  78. package/dist/components/common/SolidModuleHome.js.map +1 -1
  79. package/dist/components/common/SolidModuleHome.tsx +7 -7
  80. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +3 -3
  81. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
  82. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +6 -6
  83. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js +1 -1
  84. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js.map +1 -1
  85. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.tsx +4 -4
  86. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js +1 -1
  87. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js.map +1 -1
  88. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.tsx +4 -4
  89. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js +1 -1
  90. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js.map +1 -1
  91. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.tsx +1 -1
  92. package/dist/components/core/card/SolidCardView.js +1 -1
  93. package/dist/components/core/card/SolidCardView.js.map +1 -1
  94. package/dist/components/core/card/SolidCardView.tsx +6 -6
  95. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  96. package/dist/components/core/card/SolidCardViewConfigure.js +1 -1
  97. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  98. package/dist/components/core/card/SolidCardViewConfigure.tsx +5 -1
  99. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  100. package/dist/components/core/chatter/SolidChatter.js +29 -16
  101. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  102. package/dist/components/core/chatter/SolidChatter.tsx +28 -14
  103. package/dist/components/core/chatter/SolidChatterAuditMessage.js +1 -1
  104. package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
  105. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +2 -2
  106. package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -1
  107. package/dist/components/core/chatter/SolidChatterHeader.js +2 -2
  108. package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
  109. package/dist/components/core/chatter/SolidChatterHeader.tsx +10 -6
  110. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +1 -0
  111. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -1
  112. package/dist/components/core/chatter/SolidChatterMessageBox.js +151 -12
  113. package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
  114. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +256 -15
  115. package/dist/components/core/chatter/SolidMessageComposer.d.ts.map +1 -1
  116. package/dist/components/core/chatter/SolidMessageComposer.js +3 -2
  117. package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -1
  118. package/dist/components/core/chatter/SolidMessageComposer.tsx +11 -9
  119. package/dist/components/core/chatter/chatter.module.css +1 -1
  120. package/dist/components/core/common/FilterComponent.d.ts.map +1 -1
  121. package/dist/components/core/common/FilterComponent.js +5 -3
  122. package/dist/components/core/common/FilterComponent.js.map +1 -1
  123. package/dist/components/core/common/FilterComponent.tsx +6 -2
  124. package/dist/components/core/common/GroupingComponent.d.ts.map +1 -1
  125. package/dist/components/core/common/GroupingComponent.js +2 -2
  126. package/dist/components/core/common/GroupingComponent.js.map +1 -1
  127. package/dist/components/core/common/GroupingComponent.tsx +2 -0
  128. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +2 -0
  129. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +1 -0
  130. package/dist/components/core/common/LoadDynamicJsxComponent.js +50 -0
  131. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +1 -0
  132. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
  133. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
  134. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +1 -10
  135. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
  136. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +1 -8
  137. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  138. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +6 -11
  139. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  140. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +5 -31
  141. package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
  142. package/dist/components/core/common/SolidCreateButton.js +16 -1
  143. package/dist/components/core/common/SolidCreateButton.js.map +1 -1
  144. package/dist/components/core/common/SolidCreateButton.tsx +18 -1
  145. package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +61 -1
  146. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
  147. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +3 -1
  148. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
  149. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +4 -2
  150. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.d.ts.map +1 -1
  151. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js +19 -1
  152. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js.map +1 -1
  153. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.tsx +16 -3
  154. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
  155. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +168 -26
  156. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
  157. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +174 -10
  158. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  159. package/dist/components/core/common/SolidGlobalSearchElement.js +180 -90
  160. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  161. package/dist/components/core/common/SolidGlobalSearchElement.tsx +167 -49
  162. package/dist/components/core/common/SolidLayoutViews.js +2 -2
  163. package/dist/components/core/common/SolidLayoutViews.js.map +1 -1
  164. package/dist/components/core/common/SolidLayoutViews.tsx +4 -4
  165. package/dist/components/core/common/SolidListViewOptions.js +1 -1
  166. package/dist/components/core/common/SolidListViewOptions.js.map +1 -1
  167. package/dist/components/core/common/SolidListViewOptions.tsx +1 -1
  168. package/dist/components/core/common/SolidPasswordHelperText.js +2 -2
  169. package/dist/components/core/common/SolidPasswordHelperText.js.map +1 -1
  170. package/dist/components/core/common/SolidPasswordHelperText.tsx +4 -4
  171. package/dist/components/core/common/SolidSaveCustomFilterForm.d.ts.map +1 -1
  172. package/dist/components/core/common/SolidSaveCustomFilterForm.js +1 -1
  173. package/dist/components/core/common/SolidSaveCustomFilterForm.js.map +1 -1
  174. package/dist/components/core/common/SolidSaveCustomFilterForm.tsx +0 -1
  175. package/dist/components/core/common/SolidSearchBox.js +1 -1
  176. package/dist/components/core/common/SolidSearchBox.js.map +1 -1
  177. package/dist/components/core/common/SolidSearchBox.tsx +1 -1
  178. package/dist/components/core/common/SolidXAiIframe.js +1 -1
  179. package/dist/components/core/common/SolidXAiIframe.js.map +1 -1
  180. package/dist/components/core/common/SolidXAiIframe.tsx +1 -1
  181. package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts +4 -0
  182. package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts.map +1 -0
  183. package/dist/components/core/dashboard/mappers/echartsOptionMapper.js +79 -0
  184. package/dist/components/core/dashboard/mappers/echartsOptionMapper.js.map +1 -0
  185. package/dist/components/core/dashboard/mappers/echartsOptionMapper.ts +81 -0
  186. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts +3 -0
  187. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts.map +1 -0
  188. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js +17 -0
  189. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js.map +1 -0
  190. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.tsx +6 -0
  191. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts +3 -0
  192. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts.map +1 -0
  193. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js +41 -0
  194. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js.map +1 -0
  195. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.tsx +56 -0
  196. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts +3 -0
  197. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts.map +1 -0
  198. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js +14 -0
  199. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js.map +1 -0
  200. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.tsx +19 -0
  201. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts +3 -0
  202. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts.map +1 -0
  203. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js +17 -0
  204. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js.map +1 -0
  205. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.tsx +6 -0
  206. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts +3 -0
  207. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts.map +1 -0
  208. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js +17 -0
  209. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js.map +1 -0
  210. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.tsx +6 -0
  211. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts +3 -0
  212. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts.map +1 -0
  213. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js +12 -0
  214. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js.map +1 -0
  215. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.tsx +39 -0
  216. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts +3 -0
  217. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts.map +1 -0
  218. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js +7 -0
  219. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js.map +1 -0
  220. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.tsx +9 -0
  221. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts +3 -0
  222. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts.map +1 -0
  223. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js +203 -0
  224. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js.map +1 -0
  225. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.tsx +251 -0
  226. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js +1 -1
  227. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js.map +1 -1
  228. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.tsx +2 -2
  229. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts +16 -0
  230. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts.map +1 -0
  231. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js +31 -0
  232. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js.map +1 -0
  233. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.tsx +43 -0
  234. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts +3 -0
  235. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts.map +1 -0
  236. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js +141 -0
  237. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js.map +1 -0
  238. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.tsx +205 -0
  239. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts +4 -0
  240. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts.map +1 -0
  241. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js +112 -0
  242. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js.map +1 -0
  243. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.tsx +146 -0
  244. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts +11 -0
  245. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts.map +1 -0
  246. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js +22 -0
  247. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js.map +1 -0
  248. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.tsx +36 -0
  249. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts +3 -0
  250. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts.map +1 -0
  251. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js +133 -0
  252. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js.map +1 -0
  253. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.ts +76 -0
  254. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +2 -2
  255. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
  256. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +5 -5
  257. package/dist/components/core/field/FieldListViewData.js +2 -2
  258. package/dist/components/core/field/FieldListViewData.js.map +1 -1
  259. package/dist/components/core/field/FieldListViewData.tsx +5 -5
  260. package/dist/components/core/filter/fields/SolidBooleanField.d.ts.map +1 -1
  261. package/dist/components/core/filter/fields/SolidBooleanField.js +2 -2
  262. package/dist/components/core/filter/fields/SolidBooleanField.js.map +1 -1
  263. package/dist/components/core/filter/fields/SolidBooleanField.tsx +5 -13
  264. package/dist/components/core/filter/fields/SolidDateField.d.ts.map +1 -1
  265. package/dist/components/core/filter/fields/SolidDateField.js +2 -2
  266. package/dist/components/core/filter/fields/SolidDateField.js.map +1 -1
  267. package/dist/components/core/filter/fields/SolidDateField.tsx +4 -3
  268. package/dist/components/core/filter/fields/SolidDatetimeField.d.ts.map +1 -1
  269. package/dist/components/core/filter/fields/SolidDatetimeField.js +2 -2
  270. package/dist/components/core/filter/fields/SolidDatetimeField.js.map +1 -1
  271. package/dist/components/core/filter/fields/SolidDatetimeField.tsx +5 -4
  272. package/dist/components/core/filter/fields/SolidExternalIdField.d.ts.map +1 -1
  273. package/dist/components/core/filter/fields/SolidExternalIdField.js +2 -2
  274. package/dist/components/core/filter/fields/SolidExternalIdField.js.map +1 -1
  275. package/dist/components/core/filter/fields/SolidExternalIdField.tsx +4 -3
  276. package/dist/components/core/filter/fields/SolidIdField.d.ts.map +1 -1
  277. package/dist/components/core/filter/fields/SolidIdField.js +2 -2
  278. package/dist/components/core/filter/fields/SolidIdField.js.map +1 -1
  279. package/dist/components/core/filter/fields/SolidIdField.tsx +3 -2
  280. package/dist/components/core/filter/fields/SolidIntField.d.ts.map +1 -1
  281. package/dist/components/core/filter/fields/SolidIntField.js +2 -2
  282. package/dist/components/core/filter/fields/SolidIntField.js.map +1 -1
  283. package/dist/components/core/filter/fields/SolidIntField.tsx +4 -3
  284. package/dist/components/core/filter/fields/SolidMediaMultipleField.d.ts.map +1 -1
  285. package/dist/components/core/filter/fields/SolidMediaMultipleField.js +2 -2
  286. package/dist/components/core/filter/fields/SolidMediaMultipleField.js.map +1 -1
  287. package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +4 -3
  288. package/dist/components/core/filter/fields/SolidMediaSingleField.d.ts.map +1 -1
  289. package/dist/components/core/filter/fields/SolidMediaSingleField.js +2 -2
  290. package/dist/components/core/filter/fields/SolidMediaSingleField.js.map +1 -1
  291. package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +4 -3
  292. package/dist/components/core/filter/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  293. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js +2 -2
  294. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js.map +1 -1
  295. package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +5 -4
  296. package/dist/components/core/filter/fields/SolidSelectionStaticField.d.ts.map +1 -1
  297. package/dist/components/core/filter/fields/SolidSelectionStaticField.js +2 -2
  298. package/dist/components/core/filter/fields/SolidSelectionStaticField.js.map +1 -1
  299. package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +5 -4
  300. package/dist/components/core/filter/fields/SolidShortTextField.d.ts.map +1 -1
  301. package/dist/components/core/filter/fields/SolidShortTextField.js +2 -2
  302. package/dist/components/core/filter/fields/SolidShortTextField.js.map +1 -1
  303. package/dist/components/core/filter/fields/SolidShortTextField.tsx +4 -3
  304. package/dist/components/core/filter/fields/SolidTimeField.d.ts.map +1 -1
  305. package/dist/components/core/filter/fields/SolidTimeField.js +2 -2
  306. package/dist/components/core/filter/fields/SolidTimeField.js.map +1 -1
  307. package/dist/components/core/filter/fields/SolidTimeField.tsx +5 -4
  308. package/dist/components/core/filter/fields/SolidUuidField.d.ts.map +1 -1
  309. package/dist/components/core/filter/fields/SolidUuidField.js +2 -2
  310. package/dist/components/core/filter/fields/SolidUuidField.js.map +1 -1
  311. package/dist/components/core/filter/fields/SolidUuidField.tsx +5 -4
  312. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  313. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js +2 -2
  314. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  315. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.tsx +5 -4
  316. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  317. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js +2 -2
  318. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  319. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +5 -4
  320. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  321. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js +2 -2
  322. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  323. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.tsx +5 -4
  324. package/dist/components/core/form/SolidFormActionHeader.js +8 -8
  325. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  326. package/dist/components/core/form/SolidFormActionHeader.tsx +13 -13
  327. package/dist/components/core/form/SolidFormFieldRender.js +1 -1
  328. package/dist/components/core/form/SolidFormFieldRender.js.map +1 -1
  329. package/dist/components/core/form/SolidFormFieldRender.tsx +1 -1
  330. package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
  331. package/dist/components/core/form/SolidFormFooter.js +14 -7
  332. package/dist/components/core/form/SolidFormFooter.js.map +1 -1
  333. package/dist/components/core/form/SolidFormFooter.tsx +16 -7
  334. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  335. package/dist/components/core/form/SolidFormView.js +207 -68
  336. package/dist/components/core/form/SolidFormView.js.map +1 -1
  337. package/dist/components/core/form/SolidFormView.tsx +197 -45
  338. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.d.ts.map +1 -1
  339. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js +16 -3
  340. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js.map +1 -1
  341. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.tsx +25 -16
  342. package/dist/components/core/form/SolidFormViewNormalHeaderButton.d.ts.map +1 -1
  343. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js +19 -5
  344. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js.map +1 -1
  345. package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +25 -9
  346. package/dist/components/core/form/SolidFormViewShimmerLoading.js +1 -1
  347. package/dist/components/core/form/SolidFormViewShimmerLoading.js.map +1 -1
  348. package/dist/components/core/form/SolidFormViewShimmerLoading.tsx +46 -46
  349. package/dist/components/core/form/field-quality-check-fixes.md +201 -0
  350. package/dist/components/core/form/fields/SolidBooleanField.js +3 -3
  351. package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
  352. package/dist/components/core/form/fields/SolidBooleanField.tsx +3 -3
  353. package/dist/components/core/form/fields/SolidComputedField.js +1 -1
  354. package/dist/components/core/form/fields/SolidComputedField.js.map +1 -1
  355. package/dist/components/core/form/fields/SolidComputedField.tsx +1 -1
  356. package/dist/components/core/form/fields/SolidDateField.js +2 -2
  357. package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
  358. package/dist/components/core/form/fields/SolidDateField.tsx +2 -2
  359. package/dist/components/core/form/fields/SolidDateTimeField.js +2 -2
  360. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  361. package/dist/components/core/form/fields/SolidDateTimeField.tsx +2 -2
  362. package/dist/components/core/form/fields/SolidDecimalField.js +1 -1
  363. package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
  364. package/dist/components/core/form/fields/SolidDecimalField.tsx +1 -1
  365. package/dist/components/core/form/fields/SolidEmailField.js +1 -1
  366. package/dist/components/core/form/fields/SolidEmailField.js.map +1 -1
  367. package/dist/components/core/form/fields/SolidEmailField.tsx +1 -1
  368. package/dist/components/core/form/fields/SolidIntegerField.js +3 -3
  369. package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
  370. package/dist/components/core/form/fields/SolidIntegerField.tsx +3 -3
  371. package/dist/components/core/form/fields/SolidJsonField.js +3 -3
  372. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  373. package/dist/components/core/form/fields/SolidJsonField.tsx +3 -3
  374. package/dist/components/core/form/fields/SolidLongTextField.d.ts +0 -1
  375. package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
  376. package/dist/components/core/form/fields/SolidLongTextField.js +6 -58
  377. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  378. package/dist/components/core/form/fields/SolidLongTextField.tsx +12 -107
  379. package/dist/components/core/form/fields/SolidMediaMultipleField.js +11 -11
  380. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  381. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +28 -28
  382. package/dist/components/core/form/fields/SolidMediaSingleField.js +5 -5
  383. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  384. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +9 -9
  385. package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
  386. package/dist/components/core/form/fields/SolidPasswordField.js +12 -6
  387. package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
  388. package/dist/components/core/form/fields/SolidPasswordField.tsx +13 -6
  389. package/dist/components/core/form/fields/SolidRichTextField.js +2 -2
  390. package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
  391. package/dist/components/core/form/fields/SolidRichTextField.tsx +2 -2
  392. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +2 -2
  393. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  394. package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +2 -2
  395. package/dist/components/core/form/fields/SolidSelectionStaticField.js +1 -1
  396. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  397. package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +1 -1
  398. package/dist/components/core/form/fields/SolidShortTextField.js +1 -1
  399. package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
  400. package/dist/components/core/form/fields/SolidShortTextField.tsx +1 -1
  401. package/dist/components/core/form/fields/SolidTimeField.js +2 -2
  402. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  403. package/dist/components/core/form/fields/SolidTimeField.tsx +2 -2
  404. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts +8 -0
  405. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -0
  406. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +123 -0
  407. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -0
  408. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +140 -0
  409. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  410. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +20 -18
  411. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  412. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +47 -37
  413. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  414. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +18 -18
  415. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  416. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +17 -13
  417. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  418. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +19 -17
  419. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  420. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +28 -27
  421. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +1 -1
  422. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map +1 -1
  423. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +1 -1
  424. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js +1 -1
  425. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js.map +1 -1
  426. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.tsx +1 -1
  427. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js +1 -1
  428. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js.map +1 -1
  429. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.tsx +1 -1
  430. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +5 -5
  431. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
  432. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +17 -17
  433. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js +1 -1
  434. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js.map +1 -1
  435. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +1 -1
  436. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js +1 -1
  437. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js.map +1 -1
  438. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.tsx +1 -1
  439. package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
  440. package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
  441. package/dist/components/core/kanban/KanbanBoard.js +2 -2
  442. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  443. package/dist/components/core/kanban/KanbanBoard.tsx +2 -1
  444. package/dist/components/core/kanban/KanbanCard.d.ts +1 -0
  445. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  446. package/dist/components/core/kanban/KanbanCard.js +15 -4
  447. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  448. package/dist/components/core/kanban/KanbanCard.tsx +27 -4
  449. package/dist/components/core/kanban/KanbanColumn.d.ts +2 -1
  450. package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
  451. package/dist/components/core/kanban/KanbanColumn.js +4 -4
  452. package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
  453. package/dist/components/core/kanban/KanbanColumn.tsx +5 -4
  454. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  455. package/dist/components/core/kanban/SolidKanbanView.js +44 -39
  456. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  457. package/dist/components/core/kanban/SolidKanbanView.tsx +22 -10
  458. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  459. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +1 -1
  460. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  461. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +5 -1
  462. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -1
  463. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -1
  464. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +2 -1
  465. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -1
  466. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +2 -2
  467. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -1
  468. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +10 -21
  469. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -1
  470. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +2 -2
  471. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -1
  472. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +10 -18
  473. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -1
  474. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +6 -3
  475. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
  476. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +24 -30
  477. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -1
  478. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +2 -2
  479. package/dist/components/core/list/ListViewRowActionPopup.js +1 -1
  480. package/dist/components/core/list/ListViewRowActionPopup.js.map +1 -1
  481. package/dist/components/core/list/ListViewRowActionPopup.tsx +1 -2
  482. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +1 -1
  483. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
  484. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +3 -3
  485. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  486. package/dist/components/core/list/SolidDataTable.js +3 -2
  487. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  488. package/dist/components/core/list/SolidDataTable.tsx +9 -10
  489. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  490. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +3 -0
  491. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  492. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -0
  493. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  494. package/dist/components/core/list/SolidListView.js +123 -100
  495. package/dist/components/core/list/SolidListView.js.map +1 -1
  496. package/dist/components/core/list/SolidListView.tsx +70 -41
  497. package/dist/components/core/list/SolidListViewColumn.d.ts +3 -1
  498. package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
  499. package/dist/components/core/list/SolidListViewColumn.js +27 -2
  500. package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
  501. package/dist/components/core/list/SolidListViewColumn.tsx +16 -3
  502. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  503. package/dist/components/core/list/SolidListViewConfigure.js +11 -10
  504. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  505. package/dist/components/core/list/SolidListViewConfigure.tsx +9 -3
  506. package/dist/components/core/list/SolidListViewHeaderButton.d.ts.map +1 -1
  507. package/dist/components/core/list/SolidListViewHeaderButton.js +13 -3
  508. package/dist/components/core/list/SolidListViewHeaderButton.js.map +1 -1
  509. package/dist/components/core/list/SolidListViewHeaderButton.tsx +16 -7
  510. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.d.ts.map +1 -1
  511. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js +19 -7
  512. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js.map +1 -1
  513. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.tsx +19 -6
  514. package/dist/components/core/list/SolidListViewRowActionMenuItem.d.ts.map +1 -1
  515. package/dist/components/core/list/SolidListViewRowActionMenuItem.js +14 -5
  516. package/dist/components/core/list/SolidListViewRowActionMenuItem.js.map +1 -1
  517. package/dist/components/core/list/SolidListViewRowActionMenuItem.tsx +17 -6
  518. package/dist/components/core/list/SolidListViewRowActionsMenu.d.ts.map +1 -1
  519. package/dist/components/core/list/SolidListViewRowActionsMenu.js +7 -1
  520. package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
  521. package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +5 -1
  522. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +1 -1
  523. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -1
  524. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +7 -6
  525. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -1
  526. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +10 -9
  527. package/dist/components/core/list/SolidListingHeader.js +1 -1
  528. package/dist/components/core/list/SolidListingHeader.js.map +1 -1
  529. package/dist/components/core/list/SolidListingHeader.tsx +4 -4
  530. package/dist/components/core/list/SolidTableRowCell.js +1 -1
  531. package/dist/components/core/list/SolidTableRowCell.js.map +1 -1
  532. package/dist/components/core/list/SolidTableRowCell.tsx +1 -1
  533. package/dist/components/core/list/columns/SolidBooleanColumn.d.ts.map +1 -1
  534. package/dist/components/core/list/columns/SolidBooleanColumn.js +4 -6
  535. package/dist/components/core/list/columns/SolidBooleanColumn.js.map +1 -1
  536. package/dist/components/core/list/columns/SolidBooleanColumn.tsx +1 -3
  537. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  538. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +8 -7
  539. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  540. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +11 -10
  541. package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
  542. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +6 -5
  543. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  544. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +6 -5
  545. package/dist/components/core/list/columns/SolidRelationColumn.d.ts +1 -1
  546. package/dist/components/core/list/columns/SolidRelationColumn.d.ts.map +1 -1
  547. package/dist/components/core/list/columns/SolidRelationColumn.js +2 -2
  548. package/dist/components/core/list/columns/SolidRelationColumn.js.map +1 -1
  549. package/dist/components/core/list/columns/SolidRelationColumn.tsx +2 -2
  550. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts +2 -2
  551. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
  552. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +9 -4
  553. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  554. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +14 -4
  555. package/dist/components/core/list/field-quality-check-fixes.md +178 -0
  556. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js +1 -1
  557. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js.map +1 -1
  558. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.tsx +1 -1
  559. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js +1 -1
  560. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js.map +1 -1
  561. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +1 -2
  562. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts +3 -0
  563. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts.map +1 -0
  564. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js +39 -0
  565. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js.map +1 -0
  566. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.tsx +50 -0
  567. package/dist/components/core/locales/SolidLocale.js +3 -3
  568. package/dist/components/core/locales/SolidLocale.js.map +1 -1
  569. package/dist/components/core/locales/SolidLocale.tsx +7 -7
  570. package/dist/components/core/locales/solid-locale.css +5 -4
  571. package/dist/components/core/model/CreateModel.css +48 -0
  572. package/dist/components/core/model/CreateModel.d.ts +1 -0
  573. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  574. package/dist/components/core/model/CreateModel.js +80 -128
  575. package/dist/components/core/model/CreateModel.js.map +1 -1
  576. package/dist/components/core/model/CreateModel.tsx +102 -226
  577. package/dist/components/core/model/FieldMetaData.d.ts +1 -1
  578. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  579. package/dist/components/core/model/FieldMetaData.js +7 -23
  580. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  581. package/dist/components/core/model/FieldMetaData.tsx +17 -50
  582. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  583. package/dist/components/core/model/FieldMetaDataForm.js +198 -224
  584. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  585. package/dist/components/core/model/FieldMetaDataForm.tsx +75 -302
  586. package/dist/components/core/model/ModelListViewData.js +4 -4
  587. package/dist/components/core/model/ModelListViewData.js.map +1 -1
  588. package/dist/components/core/model/ModelListViewData.tsx +7 -7
  589. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  590. package/dist/components/core/model/ModelMetaData.js +13 -25
  591. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  592. package/dist/components/core/model/ModelMetaData.tsx +18 -79
  593. package/dist/components/core/module/CreateModule.css +44 -0
  594. package/dist/components/core/module/CreateModule.d.ts +1 -0
  595. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  596. package/dist/components/core/module/CreateModule.js +40 -57
  597. package/dist/components/core/module/CreateModule.js.map +1 -1
  598. package/dist/components/core/module/CreateModule.tsx +246 -264
  599. package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
  600. package/dist/components/core/module/ModuleListViewData.js +48 -8
  601. package/dist/components/core/module/ModuleListViewData.js.map +1 -1
  602. package/dist/components/core/module/ModuleListViewData.tsx +65 -7
  603. package/dist/components/core/module/ModuleMetadataExplorer.css +638 -0
  604. package/dist/components/core/module/ModuleMetadataExplorer.d.ts +15 -0
  605. package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -0
  606. package/dist/components/core/module/ModuleMetadataExplorer.js +666 -0
  607. package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -0
  608. package/dist/components/core/module/ModuleMetadataExplorer.tsx +1000 -0
  609. package/dist/components/core/module/ModulePackageDialog.css +540 -0
  610. package/dist/components/core/module/ModulePackageDialog.d.ts +16 -0
  611. package/dist/components/core/module/ModulePackageDialog.d.ts.map +1 -0
  612. package/dist/components/core/module/ModulePackageDialog.js +625 -0
  613. package/dist/components/core/module/ModulePackageDialog.js.map +1 -0
  614. package/dist/components/core/module/ModulePackageDialog.tsx +906 -0
  615. package/dist/components/core/solid-ai/SolidAiChat.module.css +2 -2
  616. package/dist/components/core/tree/SolidTreeTable.js +1 -1
  617. package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
  618. package/dist/components/core/tree/SolidTreeTable.tsx +1 -1
  619. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  620. package/dist/components/core/tree/SolidTreeView.js +4 -4
  621. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  622. package/dist/components/core/tree/SolidTreeView.tsx +16 -12
  623. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  624. package/dist/components/core/users/CreateUser.js +51 -27
  625. package/dist/components/core/users/CreateUser.js.map +1 -1
  626. package/dist/components/core/users/CreateUser.tsx +47 -68
  627. package/dist/components/core/users/CreateUserRole.js +2 -2
  628. package/dist/components/core/users/CreateUserRole.js.map +1 -1
  629. package/dist/components/core/users/CreateUserRole.tsx +9 -9
  630. package/dist/components/core/users/UserListView.js +4 -4
  631. package/dist/components/core/users/UserListView.js.map +1 -1
  632. package/dist/components/core/users/UserListView.tsx +6 -6
  633. package/dist/components/layout/AdminHeaderActions.d.ts +8 -0
  634. package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -0
  635. package/dist/components/layout/AdminHeaderActions.js +77 -0
  636. package/dist/components/layout/AdminHeaderActions.js.map +1 -0
  637. package/dist/components/layout/AdminHeaderActions.tsx +155 -0
  638. package/dist/components/layout/AdminSidebar.js +1 -1
  639. package/dist/components/layout/AdminSidebar.js.map +1 -1
  640. package/dist/components/layout/AdminSidebar.tsx +1 -1
  641. package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
  642. package/dist/components/layout/AdminTopHeader.js +14 -5
  643. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  644. package/dist/components/layout/AdminTopHeader.tsx +35 -28
  645. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  646. package/dist/components/layout/AppSidebar.js +2 -1
  647. package/dist/components/layout/AppSidebar.js.map +1 -1
  648. package/dist/components/layout/AppSidebar.tsx +2 -0
  649. package/dist/components/layout/CustomPagination.js +0 -1
  650. package/dist/components/layout/CustomPagination.js.map +1 -1
  651. package/dist/components/layout/CustomPagination.tsx +0 -1
  652. package/dist/components/layout/FilterMenu.js +1 -1
  653. package/dist/components/layout/FilterMenu.js.map +1 -1
  654. package/dist/components/layout/FilterMenu.tsx +4 -4
  655. package/dist/components/layout/Footer.js +1 -1
  656. package/dist/components/layout/Footer.js.map +1 -1
  657. package/dist/components/layout/Footer.tsx +1 -1
  658. package/dist/components/layout/GlobalSearch.js +1 -1
  659. package/dist/components/layout/GlobalSearch.js.map +1 -1
  660. package/dist/components/layout/GlobalSearch.tsx +1 -1
  661. package/dist/components/layout/ListingHeader.js +3 -3
  662. package/dist/components/layout/ListingHeader.js.map +1 -1
  663. package/dist/components/layout/ListingHeader.tsx +4 -4
  664. package/dist/components/layout/Loader.js +1 -1
  665. package/dist/components/layout/Loader.js.map +1 -1
  666. package/dist/components/layout/Loader.tsx +1 -1
  667. package/dist/components/layout/UserSidebar.js +1 -1
  668. package/dist/components/layout/UserSidebar.js.map +1 -1
  669. package/dist/components/layout/UserSidebar.tsx +1 -1
  670. package/dist/components/layout/navbar-one.js +2 -2
  671. package/dist/components/layout/navbar-one.js.map +1 -1
  672. package/dist/components/layout/navbar-one.tsx +8 -8
  673. package/dist/components/layout/navbar-two-menu.js +2 -2
  674. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  675. package/dist/components/layout/navbar-two-menu.tsx +7 -7
  676. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  677. package/dist/components/layout/user-profile-menu.js +57 -33
  678. package/dist/components/layout/user-profile-menu.js.map +1 -1
  679. package/dist/components/layout/user-profile-menu.tsx +11 -59
  680. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts +2 -1
  681. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
  682. package/dist/components/shad-cn-ui/SolidAutocomplete.js +60 -6
  683. package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
  684. package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +81 -22
  685. package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -1
  686. package/dist/components/shad-cn-ui/SolidButton.js +10 -2
  687. package/dist/components/shad-cn-ui/SolidButton.js.map +1 -1
  688. package/dist/components/shad-cn-ui/SolidButton.tsx +10 -2
  689. package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
  690. package/dist/components/shad-cn-ui/SolidCodeEditor.js +3 -1
  691. package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
  692. package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +3 -0
  693. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts +1 -1
  694. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
  695. package/dist/components/shad-cn-ui/SolidDatePicker.js +2 -2
  696. package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
  697. package/dist/components/shad-cn-ui/SolidDatePicker.tsx +4 -0
  698. package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
  699. package/dist/components/shad-cn-ui/SolidDialog.js +38 -4
  700. package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
  701. package/dist/components/shad-cn-ui/SolidDialog.tsx +47 -3
  702. package/dist/components/shad-cn-ui/SolidIcon.d.ts +2 -1
  703. package/dist/components/shad-cn-ui/SolidIcon.d.ts.map +1 -1
  704. package/dist/components/shad-cn-ui/SolidIcon.js +1 -0
  705. package/dist/components/shad-cn-ui/SolidIcon.js.map +1 -1
  706. package/dist/components/shad-cn-ui/SolidIcon.tsx +1 -0
  707. package/dist/components/shad-cn-ui/SolidPasswordInput.d.ts.map +1 -1
  708. package/dist/components/shad-cn-ui/SolidPasswordInput.js +1 -1
  709. package/dist/components/shad-cn-ui/SolidPasswordInput.js.map +1 -1
  710. package/dist/components/shad-cn-ui/SolidPasswordInput.tsx +1 -0
  711. package/dist/components/shad-cn-ui/SolidPopover.d.ts +1 -0
  712. package/dist/components/shad-cn-ui/SolidPopover.d.ts.map +1 -1
  713. package/dist/components/shad-cn-ui/SolidPopover.js +124 -5
  714. package/dist/components/shad-cn-ui/SolidPopover.js.map +1 -1
  715. package/dist/components/shad-cn-ui/SolidPopover.tsx +173 -10
  716. package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
  717. package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
  718. package/dist/components/shad-cn-ui/SolidSelect.js +51 -1
  719. package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
  720. package/dist/components/shad-cn-ui/SolidSelect.tsx +95 -0
  721. package/dist/constants/error-messages.d.ts +13 -0
  722. package/dist/constants/error-messages.d.ts.map +1 -1
  723. package/dist/constants/error-messages.js +17 -0
  724. package/dist/constants/error-messages.js.map +1 -1
  725. package/dist/constants/error-messages.ts +15 -0
  726. package/dist/helpers/buttonEnvironment.d.ts +5 -0
  727. package/dist/helpers/buttonEnvironment.d.ts.map +1 -0
  728. package/dist/helpers/buttonEnvironment.js +30 -0
  729. package/dist/helpers/buttonEnvironment.js.map +1 -0
  730. package/dist/helpers/buttonEnvironment.ts +35 -0
  731. package/dist/helpers/buttonPresentation.d.ts +24 -0
  732. package/dist/helpers/buttonPresentation.d.ts.map +1 -0
  733. package/dist/helpers/buttonPresentation.js +28 -0
  734. package/dist/helpers/buttonPresentation.js.map +1 -0
  735. package/dist/helpers/buttonPresentation.ts +53 -0
  736. package/dist/helpers/fileTypeIcon.d.ts +12 -0
  737. package/dist/helpers/fileTypeIcon.d.ts.map +1 -0
  738. package/dist/helpers/fileTypeIcon.js +37 -0
  739. package/dist/helpers/fileTypeIcon.js.map +1 -0
  740. package/dist/helpers/fileTypeIcon.tsx +65 -0
  741. package/dist/helpers/registry.d.ts.map +1 -1
  742. package/dist/helpers/registry.js +28 -10
  743. package/dist/helpers/registry.js.map +1 -1
  744. package/dist/helpers/registry.ts +31 -13
  745. package/dist/helpers/waitForBackendAvailability.d.ts +7 -0
  746. package/dist/helpers/waitForBackendAvailability.d.ts.map +1 -0
  747. package/dist/helpers/waitForBackendAvailability.js +86 -0
  748. package/dist/helpers/waitForBackendAvailability.js.map +1 -0
  749. package/dist/helpers/waitForBackendAvailability.ts +37 -0
  750. package/dist/index.d.ts +8 -9
  751. package/dist/index.d.ts.map +1 -1
  752. package/dist/index.js +6 -8
  753. package/dist/index.js.map +1 -1
  754. package/dist/index.ts +32 -13
  755. package/dist/nextAuth/authProviders.d.ts +4 -0
  756. package/dist/nextAuth/authProviders.d.ts.map +1 -0
  757. package/dist/nextAuth/authProviders.js +198 -0
  758. package/dist/nextAuth/authProviders.js.map +1 -0
  759. package/dist/nextAuth/authProviders.tsx +232 -0
  760. package/dist/nextAuth/handleLogout.d.ts +2 -0
  761. package/dist/nextAuth/handleLogout.d.ts.map +1 -0
  762. package/dist/nextAuth/handleLogout.js +36 -0
  763. package/dist/nextAuth/handleLogout.js.map +1 -0
  764. package/dist/nextAuth/handleLogout.tsx +39 -0
  765. package/dist/nextAuth/refreshAccessToken.d.ts +2 -0
  766. package/dist/nextAuth/refreshAccessToken.d.ts.map +1 -0
  767. package/dist/nextAuth/refreshAccessToken.js +24 -0
  768. package/dist/nextAuth/refreshAccessToken.js.map +1 -0
  769. package/dist/nextAuth/refreshAccessToken.tsx +28 -0
  770. package/dist/redux/api/dashboardRuntimeApi.d.ts +34 -0
  771. package/dist/redux/api/dashboardRuntimeApi.d.ts.map +1 -0
  772. package/dist/redux/api/dashboardRuntimeApi.js +79 -0
  773. package/dist/redux/api/dashboardRuntimeApi.js.map +1 -0
  774. package/dist/redux/api/dashboardRuntimeApi.ts +75 -0
  775. package/dist/redux/api/moduleApi.d.ts +26 -1
  776. package/dist/redux/api/moduleApi.d.ts.map +1 -1
  777. package/dist/redux/api/moduleApi.js +237 -1
  778. package/dist/redux/api/moduleApi.js.map +1 -1
  779. package/dist/redux/api/moduleApi.ts +181 -1
  780. package/dist/redux/api/solidChatterMessageApi.d.ts +2 -1
  781. package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
  782. package/dist/redux/api/solidChatterMessageApi.js +11 -1
  783. package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
  784. package/dist/redux/api/solidChatterMessageApi.ts +10 -1
  785. package/dist/redux/features/settingsSlice.d.ts +20 -0
  786. package/dist/redux/features/settingsSlice.d.ts.map +1 -0
  787. package/dist/redux/features/settingsSlice.js +39 -0
  788. package/dist/redux/features/settingsSlice.js.map +1 -0
  789. package/dist/redux/features/settingsSlice.ts +60 -0
  790. package/dist/redux/store/defaultStoreConfig.d.ts +57 -9
  791. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  792. package/dist/redux/store/defaultStoreConfig.js +2 -6
  793. package/dist/redux/store/defaultStoreConfig.js.map +1 -1
  794. package/dist/redux/store/defaultStoreConfig.ts +2 -6
  795. package/dist/redux/store/solidEntityApiPool.d.ts +1 -0
  796. package/dist/redux/store/solidEntityApiPool.d.ts.map +1 -1
  797. package/dist/redux/store/solidEntityApiPool.js +4 -0
  798. package/dist/redux/store/solidEntityApiPool.js.map +1 -1
  799. package/dist/redux/store/solidEntityApiPool.ts +4 -0
  800. package/dist/resources/globals.css +195 -20
  801. package/dist/resources/shadcn-base.css +392 -175
  802. package/dist/resources/solid-custom.css +6565 -0
  803. package/dist/resources/solid-primereact.css +14 -12
  804. package/dist/resources/solid-responsive.css +259 -51
  805. package/dist/resources/solid-tailwind-generated.css +1 -0
  806. package/dist/resources/solid-tailwind.css +3 -0
  807. package/dist/routes/AppEventListener.d.ts.map +1 -1
  808. package/dist/routes/AppEventListener.js +58 -8
  809. package/dist/routes/AppEventListener.js.map +1 -1
  810. package/dist/routes/AppEventListener.tsx +69 -8
  811. package/dist/routes/pages/admin/core/DashboardPage.d.ts +1 -0
  812. package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
  813. package/dist/routes/pages/admin/core/DashboardPage.js +860 -5
  814. package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
  815. package/dist/routes/pages/admin/core/DashboardPage.module.css +219 -0
  816. package/dist/routes/pages/admin/core/DashboardPage.tsx +1025 -7
  817. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts +2 -0
  818. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts.map +1 -0
  819. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js +6 -0
  820. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js.map +1 -0
  821. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.tsx +5 -0
  822. package/dist/routes/pages/auth/SsoPage.js +1 -1
  823. package/dist/routes/pages/auth/SsoPage.js.map +1 -1
  824. package/dist/routes/pages/auth/SsoPage.tsx +1 -1
  825. package/dist/routes/solidRoutes.d.ts.map +1 -1
  826. package/dist/routes/solidRoutes.js +2 -2
  827. package/dist/routes/solidRoutes.js.map +1 -1
  828. package/dist/routes/solidRoutes.tsx +2 -2
  829. package/dist/routes/types.d.ts +1 -1
  830. package/dist/routes/types.d.ts.map +1 -1
  831. package/dist/routes/types.js.map +1 -1
  832. package/dist/routes/types.ts +1 -1
  833. package/dist/styles.d.ts +2 -1
  834. package/dist/styles.d.ts.map +1 -1
  835. package/dist/styles.js +2 -1
  836. package/dist/styles.js.map +1 -1
  837. package/dist/styles.ts +2 -1
  838. package/dist/types/dashboard.d.ts +16 -0
  839. package/dist/types/dashboard.d.ts.map +1 -0
  840. package/dist/types/dashboard.js +2 -0
  841. package/dist/types/dashboard.js.map +1 -0
  842. package/dist/types/dashboard.ts +23 -0
  843. package/dist/types/extension-registry.d.ts +1 -0
  844. package/dist/types/extension-registry.d.ts.map +1 -1
  845. package/dist/types/extension-registry.js +1 -0
  846. package/dist/types/extension-registry.js.map +1 -1
  847. package/dist/types/extension-registry.ts +1 -0
  848. package/dist/types/index.d.ts +3 -0
  849. package/dist/types/jsoneditor.d.ts +4 -0
  850. package/dist/types/solid-core.d.ts +1 -0
  851. package/package.json +9 -3
  852. package/dist/components/core/list/SolidDataTablePagination.d.ts +0 -15
  853. package/dist/components/core/list/SolidDataTablePagination.d.ts.map +0 -1
  854. package/dist/components/core/list/SolidDataTablePagination.js +0 -22
  855. package/dist/components/core/list/SolidDataTablePagination.js.map +0 -1
  856. package/dist/components/core/list/SolidDataTablePagination.tsx +0 -71
  857. package/dist/components/solid-ui/SolidButton.d.ts +0 -14
  858. package/dist/components/solid-ui/SolidButton.d.ts.map +0 -1
  859. package/dist/components/solid-ui/SolidButton.js +0 -36
  860. package/dist/components/solid-ui/SolidButton.js.map +0 -1
  861. package/dist/components/solid-ui/SolidButton.tsx +0 -54
  862. package/dist/components/solid-ui/SolidTabs.d.ts +0 -18
  863. package/dist/components/solid-ui/SolidTabs.d.ts.map +0 -1
  864. package/dist/components/solid-ui/SolidTabs.js +0 -22
  865. package/dist/components/solid-ui/SolidTabs.js.map +0 -1
  866. package/dist/components/solid-ui/SolidTabs.tsx +0 -73
  867. package/dist/components/solid-ui/index.d.ts +0 -3
  868. package/dist/components/solid-ui/index.d.ts.map +0 -1
  869. package/dist/components/solid-ui/index.js +0 -3
  870. package/dist/components/solid-ui/index.js.map +0 -1
  871. package/dist/components/solid-ui/index.ts +0 -2
@@ -198,7 +198,7 @@ export const UserListView = () => {
198
198
 
199
199
  return (
200
200
  <div className="solid-user-list w-full">
201
- <div className="flex gap-3 mb-4 align-items-center flex-wrap">
201
+ <div className="flex gap-4 mb-6 items-center flex-wrap">
202
202
  <CreateButton />
203
203
  {selectedUsers.length > 0 && (
204
204
  <SolidButton
@@ -212,14 +212,14 @@ export const UserListView = () => {
212
212
  )}
213
213
  </div>
214
214
 
215
- <div className="grid formgrid mb-3">
215
+ <div className="flex flex-wrap -mx-2 -mt-2 mb-4">
216
216
  {[
217
217
  { key: "fullName", placeholder: "Search by full name" },
218
218
  { key: "username", placeholder: "Search by username" },
219
219
  { key: "email", placeholder: "Search by email" },
220
220
  { key: "mobile", placeholder: "Search by mobile" },
221
221
  ].map((filter) => (
222
- <div className="field col-12 md:col-3" key={filter.key}>
222
+ <div className="field w-full md:w-1/4 px-2 pt-2" key={filter.key}>
223
223
  <SolidInput
224
224
  value={pendingFilters[filter.key as keyof FilterMeta].value ?? ""}
225
225
  onChange={(event) =>
@@ -229,14 +229,14 @@ export const UserListView = () => {
229
229
  />
230
230
  </div>
231
231
  ))}
232
- <div className="field col-12 flex align-items-center gap-2">
232
+ <div className="field w-full px-2 pt-2 flex items-center gap-2">
233
233
  <SolidButton size="small" onClick={applyFilters} label="Apply" />
234
234
  <SolidButton size="small" variant="ghost" onClick={clearFilters} label="Clear" />
235
235
  </div>
236
236
  </div>
237
237
 
238
238
  {(loading || isLoading) && (
239
- <div className="flex justify-content-center my-3">
239
+ <div className="flex justify-center my-4">
240
240
  <SolidSpinner />
241
241
  </div>
242
242
  )}
@@ -306,7 +306,7 @@ export const UserListView = () => {
306
306
  onHide={() => setDialogVisible(false)}
307
307
  >
308
308
  <p>Are you sure you want to delete the selected Users?</p>
309
- <div className="flex justify-content-center gap-3 mt-3">
309
+ <div className="flex justify-center gap-4 mt-4">
310
310
  <SolidButton label="Yes" className="small-button" severity="danger" autoFocus onClick={deleteBulk} />
311
311
  <SolidButton label="No" className="small-button" variant="ghost" onClick={() => setDialogVisible(false)} />
312
312
  </div>
@@ -0,0 +1,8 @@
1
+ type AdminHeaderActionsProps = {
2
+ variant: "header" | "sidebar";
3
+ className?: string;
4
+ };
5
+ export declare const StudioSparkleIcon: () => import("react/jsx-runtime").JSX.Element;
6
+ export declare const AdminHeaderActions: ({ variant, className }: AdminHeaderActionsProps) => import("react/jsx-runtime").JSX.Element | null;
7
+ export {};
8
+ //# sourceMappingURL=AdminHeaderActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminHeaderActions.d.ts","sourceRoot":"","sources":["../../../src/components/layout/AdminHeaderActions.tsx"],"names":[],"mappings":"AAUA,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAUF,eAAO,MAAM,iBAAiB,+CAK7B,CAAC;AAYF,eAAO,MAAM,kBAAkB,2BAAiC,uBAAuB,mDAkHtF,CAAC"}
@@ -0,0 +1,77 @@
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
2
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
3
+ if (ar || !(i in from)) {
4
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5
+ ar[i] = from[i];
6
+ }
7
+ }
8
+ return to.concat(ar || Array.prototype.slice.call(from));
9
+ };
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ import { useContext } from "react";
12
+ import { useDispatch, useSelector } from "react-redux";
13
+ import { usePathname } from "../../hooks/usePathname";
14
+ import { useRouter } from "../../hooks/useRouter";
15
+ import { useSession } from "../../hooks/useSession";
16
+ import { env } from "../../adapters/env";
17
+ import { hasAnyRole } from "../../helpers/rolesHelper";
18
+ import { enterStudioMode } from "../../redux/features/solidStudioSlice";
19
+ import { LayoutContext } from "./context/layoutcontext";
20
+ export var StudioSparkleIcon = function () { return (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: [_jsx("path", { d: "M7 1v2M7 11v2M1 7h2M11 7h2M2.93 2.93l1.41 1.41M9.66 9.66l1.41 1.41M2.93 11.07l1.41-1.41M9.66 4.34l1.41-1.41", stroke: "currentColor", strokeWidth: "1.4", strokeLinecap: "round" }), _jsx("circle", { cx: "7", cy: "7", r: "2", stroke: "currentColor", strokeWidth: "1.4" })] })); };
21
+ var ThemeToggleIcon = function () { return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [_jsx("path", { d: "M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 3l0 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 9l4.65 -4.65", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 14.3l7.37 -7.37", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 19.6l8.85 -8.85", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] })); };
22
+ export var AdminHeaderActions = function (_a) {
23
+ var variant = _a.variant, _b = _a.className, className = _b === void 0 ? "" : _b;
24
+ var pathname = usePathname();
25
+ var router = useRouter();
26
+ var dispatch = useDispatch();
27
+ var session = useSession().data;
28
+ var _c = useContext(LayoutContext), toggleThemeMode = _c.toggleThemeMode, themeMode = _c.themeMode;
29
+ var user = session === null || session === void 0 ? void 0 : session.user;
30
+ var isAdmin = hasAnyRole(user === null || user === void 0 ? void 0 : user.roles, ["Admin"]);
31
+ var isStudioMode = useSelector(function (state) { var _a, _b; return (_b = (_a = state.solidStudio) === null || _a === void 0 ? void 0 : _a.isStudioMode) !== null && _b !== void 0 ? _b : false; });
32
+ var isDev = env("VITE_SOLIDX_ENV") === "dev";
33
+ var showBack = /\/admin\/core\/[^/]+\/[^/]+\/form\/[^/]+/.test(pathname);
34
+ var actions = __spreadArray(__spreadArray(__spreadArray([], (isAdmin && isDev && !isStudioMode
35
+ ? [{
36
+ key: "studio",
37
+ label: "Studio",
38
+ onClick: function () {
39
+ dispatch(enterStudioMode());
40
+ router.push("/studio");
41
+ },
42
+ title: "Enter SolidX Studio",
43
+ icon: _jsx(StudioSparkleIcon, {}),
44
+ }]
45
+ : []), true), [
46
+ {
47
+ key: "theme",
48
+ label: themeMode === "dark" ? "Light Mode" : "Dark Mode",
49
+ onClick: toggleThemeMode,
50
+ title: "Toggle theme",
51
+ icon: _jsx(ThemeToggleIcon, {}),
52
+ }
53
+ ], false), (showBack
54
+ ? [{
55
+ key: "back",
56
+ label: "Back",
57
+ onClick: function () { return router.back(); },
58
+ title: "Go back",
59
+ }]
60
+ : []), true);
61
+ if (!actions.length) {
62
+ return null;
63
+ }
64
+ if (variant === "sidebar") {
65
+ return (_jsx("div", { className: "solid-sidebar-mobile-actions md:hidden ".concat(className).trim(), children: actions.map(function (action) { return (_jsx("button", { type: "button", className: "solid-sidebar-mobile-action", onClick: action.onClick, title: action.title, "aria-label": action.title, children: action.label }, action.key)); }) }));
66
+ }
67
+ return (_jsx("div", { className: "solid-admin-header-actions hidden md:flex ".concat(className).trim(), children: actions.map(function (action) {
68
+ if (action.key === "studio") {
69
+ return (_jsxs("button", { type: "button", className: "solid-studio-trigger-btn", onClick: action.onClick, title: action.title, "aria-label": action.title, children: [action.icon, _jsx("span", { className: "solid-studio-trigger-label", children: action.label })] }, action.key));
70
+ }
71
+ if (action.key === "theme") {
72
+ return (_jsxs("button", { type: "button", className: "solid-admin-theme-toggle", onClick: action.onClick, "aria-label": action.title, title: action.title, children: [action.icon, _jsx("span", { className: "solid-sr-only", children: action.label })] }, action.key));
73
+ }
74
+ return (_jsx("button", { type: "button", className: "solid-admin-back-btn", onClick: action.onClick, "aria-label": action.title, children: action.label }, action.key));
75
+ }) }));
76
+ };
77
+ //# sourceMappingURL=AdminHeaderActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AdminHeaderActions.js","sourceRoot":"","sources":["../../../src/components/layout/AdminHeaderActions.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ReactNode, useContext } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { usePathname } from \"../../hooks/usePathname\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSession } from \"../../hooks/useSession\";\nimport { env } from \"../../adapters/env\";\nimport { hasAnyRole } from \"../../helpers/rolesHelper\";\nimport { enterStudioMode } from \"../../redux/features/solidStudioSlice\";\nimport { LayoutContext } from \"./context/layoutcontext\";\n\ntype AdminHeaderActionsProps = {\n variant: \"header\" | \"sidebar\";\n className?: string;\n};\n\ntype AdminAction = {\n key: string;\n label: string;\n onClick: () => void;\n title: string;\n icon?: ReactNode;\n};\n\nexport const StudioSparkleIcon = () => (\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\">\n <path d=\"M7 1v2M7 11v2M1 7h2M11 7h2M2.93 2.93l1.41 1.41M9.66 9.66l1.41 1.41M2.93 11.07l1.41-1.41M9.66 4.34l1.41-1.41\" stroke=\"currentColor\" strokeWidth=\"1.4\" strokeLinecap=\"round\" />\n <circle cx=\"7\" cy=\"7\" r=\"2\" stroke=\"currentColor\" strokeWidth=\"1.4\" />\n </svg>\n);\n\nconst ThemeToggleIcon = () => (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 3l0 18\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 9l4.65 -4.65\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 14.3l7.37 -7.37\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 19.6l8.85 -8.85\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n);\n\nexport const AdminHeaderActions = ({ variant, className = \"\" }: AdminHeaderActionsProps) => {\n const pathname = usePathname();\n const router = useRouter();\n const dispatch = useDispatch();\n const { data: session } = useSession();\n const { toggleThemeMode, themeMode } = useContext(LayoutContext);\n const user = session?.user;\n const isAdmin = hasAnyRole(user?.roles, [\"Admin\"]);\n const isStudioMode = useSelector((state: any) => state.solidStudio?.isStudioMode ?? false);\n const isDev = env(\"VITE_SOLIDX_ENV\") === \"dev\";\n const showBack = /\\/admin\\/core\\/[^/]+\\/[^/]+\\/form\\/[^/]+/.test(pathname);\n\n const actions: AdminAction[] = [\n ...(isAdmin && isDev && !isStudioMode\n ? [{\n key: \"studio\",\n label: \"Studio\",\n onClick: () => {\n dispatch(enterStudioMode());\n router.push(\"/studio\");\n },\n title: \"Enter SolidX Studio\",\n icon: <StudioSparkleIcon />,\n }]\n : []),\n {\n key: \"theme\",\n label: themeMode === \"dark\" ? \"Light Mode\" : \"Dark Mode\",\n onClick: toggleThemeMode,\n title: \"Toggle theme\",\n icon: <ThemeToggleIcon />,\n },\n ...(showBack\n ? [{\n key: \"back\",\n label: \"Back\",\n onClick: () => router.back(),\n title: \"Go back\",\n }]\n : []),\n ];\n\n if (!actions.length) {\n return null;\n }\n\n if (variant === \"sidebar\") {\n return (\n <div className={`solid-sidebar-mobile-actions md:hidden ${className}`.trim()}>\n {actions.map((action) => (\n <button\n key={action.key}\n type=\"button\"\n className=\"solid-sidebar-mobile-action\"\n onClick={action.onClick}\n title={action.title}\n aria-label={action.title}\n >\n {action.label}\n </button>\n ))}\n </div>\n );\n }\n\n return (\n <div className={`solid-admin-header-actions hidden md:flex ${className}`.trim()}>\n {actions.map((action) => {\n if (action.key === \"studio\") {\n return (\n <button\n key={action.key}\n type=\"button\"\n className=\"solid-studio-trigger-btn\"\n onClick={action.onClick}\n title={action.title}\n aria-label={action.title}\n >\n {action.icon}\n <span className=\"solid-studio-trigger-label\">{action.label}</span>\n </button>\n );\n }\n\n if (action.key === \"theme\") {\n return (\n <button\n key={action.key}\n type=\"button\"\n className=\"solid-admin-theme-toggle\"\n onClick={action.onClick}\n aria-label={action.title}\n title={action.title}\n >\n {action.icon}\n <span className=\"solid-sr-only\">{action.label}</span>\n </button>\n );\n }\n\n return (\n <button\n key={action.key}\n type=\"button\"\n className=\"solid-admin-back-btn\"\n onClick={action.onClick}\n aria-label={action.title}\n >\n {action.label}\n </button>\n );\n })}\n </div>\n );\n};\n"]}
@@ -0,0 +1,155 @@
1
+ import { ReactNode, useContext } from "react";
2
+ import { useDispatch, useSelector } from "react-redux";
3
+ import { usePathname } from "../../hooks/usePathname";
4
+ import { useRouter } from "../../hooks/useRouter";
5
+ import { useSession } from "../../hooks/useSession";
6
+ import { env } from "../../adapters/env";
7
+ import { hasAnyRole } from "../../helpers/rolesHelper";
8
+ import { enterStudioMode } from "../../redux/features/solidStudioSlice";
9
+ import { LayoutContext } from "./context/layoutcontext";
10
+
11
+ type AdminHeaderActionsProps = {
12
+ variant: "header" | "sidebar";
13
+ className?: string;
14
+ };
15
+
16
+ type AdminAction = {
17
+ key: string;
18
+ label: string;
19
+ onClick: () => void;
20
+ title: string;
21
+ icon?: ReactNode;
22
+ };
23
+
24
+ export const StudioSparkleIcon = () => (
25
+ <svg width="14" height="14" viewBox="0 0 14 14" fill="none" aria-hidden="true">
26
+ <path d="M7 1v2M7 11v2M1 7h2M11 7h2M2.93 2.93l1.41 1.41M9.66 9.66l1.41 1.41M2.93 11.07l1.41-1.41M9.66 4.34l1.41-1.41" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" />
27
+ <circle cx="7" cy="7" r="2" stroke="currentColor" strokeWidth="1.4" />
28
+ </svg>
29
+ );
30
+
31
+ const ThemeToggleIcon = () => (
32
+ <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" aria-hidden="true">
33
+ <path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
34
+ <path d="M12 3l0 18" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
35
+ <path d="M12 9l4.65 -4.65" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
36
+ <path d="M12 14.3l7.37 -7.37" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
37
+ <path d="M12 19.6l8.85 -8.85" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" />
38
+ </svg>
39
+ );
40
+
41
+ export const AdminHeaderActions = ({ variant, className = "" }: AdminHeaderActionsProps) => {
42
+ const pathname = usePathname();
43
+ const router = useRouter();
44
+ const dispatch = useDispatch();
45
+ const { data: session } = useSession();
46
+ const { toggleThemeMode, themeMode } = useContext(LayoutContext);
47
+ const user = session?.user;
48
+ const isAdmin = hasAnyRole(user?.roles, ["Admin"]);
49
+ const isStudioMode = useSelector((state: any) => state.solidStudio?.isStudioMode ?? false);
50
+ const isDev = env("VITE_SOLIDX_ENV") === "dev";
51
+ const showBack = /\/admin\/core\/[^/]+\/[^/]+\/form\/[^/]+/.test(pathname);
52
+
53
+ const actions: AdminAction[] = [
54
+ ...(isAdmin && isDev && !isStudioMode
55
+ ? [{
56
+ key: "studio",
57
+ label: "Studio",
58
+ onClick: () => {
59
+ dispatch(enterStudioMode());
60
+ router.push("/studio");
61
+ },
62
+ title: "Enter SolidX Studio",
63
+ icon: <StudioSparkleIcon />,
64
+ }]
65
+ : []),
66
+ {
67
+ key: "theme",
68
+ label: themeMode === "dark" ? "Light Mode" : "Dark Mode",
69
+ onClick: toggleThemeMode,
70
+ title: "Toggle theme",
71
+ icon: <ThemeToggleIcon />,
72
+ },
73
+ ...(showBack
74
+ ? [{
75
+ key: "back",
76
+ label: "Back",
77
+ onClick: () => router.back(),
78
+ title: "Go back",
79
+ }]
80
+ : []),
81
+ ];
82
+
83
+ if (!actions.length) {
84
+ return null;
85
+ }
86
+
87
+ if (variant === "sidebar") {
88
+ return (
89
+ <div className={`solid-sidebar-mobile-actions md:hidden ${className}`.trim()}>
90
+ {actions.map((action) => (
91
+ <button
92
+ key={action.key}
93
+ type="button"
94
+ className="solid-sidebar-mobile-action"
95
+ onClick={action.onClick}
96
+ title={action.title}
97
+ aria-label={action.title}
98
+ >
99
+ {action.label}
100
+ </button>
101
+ ))}
102
+ </div>
103
+ );
104
+ }
105
+
106
+ return (
107
+ <div className={`solid-admin-header-actions hidden md:flex ${className}`.trim()}>
108
+ {actions.map((action) => {
109
+ if (action.key === "studio") {
110
+ return (
111
+ <button
112
+ key={action.key}
113
+ type="button"
114
+ className="solid-studio-trigger-btn"
115
+ onClick={action.onClick}
116
+ title={action.title}
117
+ aria-label={action.title}
118
+ >
119
+ {action.icon}
120
+ <span className="solid-studio-trigger-label">{action.label}</span>
121
+ </button>
122
+ );
123
+ }
124
+
125
+ if (action.key === "theme") {
126
+ return (
127
+ <button
128
+ key={action.key}
129
+ type="button"
130
+ className="solid-admin-theme-toggle"
131
+ onClick={action.onClick}
132
+ aria-label={action.title}
133
+ title={action.title}
134
+ >
135
+ {action.icon}
136
+ <span className="solid-sr-only">{action.label}</span>
137
+ </button>
138
+ );
139
+ }
140
+
141
+ return (
142
+ <button
143
+ key={action.key}
144
+ type="button"
145
+ className="solid-admin-back-btn"
146
+ onClick={action.onClick}
147
+ aria-label={action.title}
148
+ >
149
+ {action.label}
150
+ </button>
151
+ );
152
+ })}
153
+ </div>
154
+ );
155
+ };
@@ -35,7 +35,7 @@ var AdminSidebar = function () {
35
35
  var handleMenuItemClick = function (menuItem) {
36
36
  setActiveMenuItem(menuItem);
37
37
  };
38
- return (_jsx("div", { className: "list-group mt-5 pl-4", children: menuItem.map(function (menuItem, index) { return (_jsxs(Link, { href: menuItem.url, className: "fw-bold list-group-item list-group-item-action ".concat(activeMenuItem.includes(menuItem.url) ? "active" : ""), onClick: function () { return handleMenuItemClick(menuItem.url); }, "aria-current": activeMenuItem.includes(menuItem.url) ? "true" : "false", children: [_jsx("i", { className: "".concat(menuItem.icon, " fa-fw pe-2") }), " ", menuItem.name] }, index)); }) }));
38
+ return (_jsx("div", { className: "list-group mt-8 pl-6", children: menuItem.map(function (menuItem, index) { return (_jsxs(Link, { href: menuItem.url, className: "fw-bold list-group-item list-group-item-action ".concat(activeMenuItem.includes(menuItem.url) ? "active" : ""), onClick: function () { return handleMenuItemClick(menuItem.url); }, "aria-current": activeMenuItem.includes(menuItem.url) ? "true" : "false", children: [_jsx("i", { className: "".concat(menuItem.icon, " fa-fw pe-2") }), " ", menuItem.name] }, index)); }) }));
39
39
  };
40
40
  export default AdminSidebar;
41
41
  //# sourceMappingURL=AdminSidebar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdminSidebar.js","sourceRoot":"","sources":["../../../src/components/layout/AdminSidebar.tsx"],"names":[],"mappings":";AAEA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,IAAM,YAAY,GAAG;IACnB,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,IAAM,QAAQ,GAAG;QACf;YACE,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,kBAAkB;YACvB,IAAI,EAAE,uBAAuB;SAC9B;QACD;YACE,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,cAAc;YACnB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,iBAAiB;YACtB,IAAI,EAAE,gBAAgB;SACvB;QACD;YACE,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,cAAc;YACnB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,gBAAgB;YACrB,IAAI,EAAE,aAAa;SACpB;KACF,CAAC;IAEI,IAAA,KAAsC,QAAQ,CAAC,QAAQ,CAAC,EAAvD,cAAc,QAAA,EAAE,iBAAiB,QAAsB,CAAC;IAE/D,IAAM,mBAAmB,GAAG,UAAC,QAAgB;QAC3C,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,sBAAsB,YAClC,QAAQ,CAAC,GAAG,CAAC,UAAC,QAAQ,EAAE,KAAK,IAAK,OAAA,CACjC,MAAC,IAAI,IAEH,IAAI,EAAE,QAAQ,CAAC,GAAG,EAClB,SAAS,EAAE,yDAAkD,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAC9G,EACJ,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAjC,CAAiC,kBAE9C,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,aAG1D,YAAG,SAAS,EAAE,UAAG,QAAQ,CAAC,IAAI,gBAAa,GAAM,OAAE,QAAQ,CAAC,IAAI,KAT3D,KAAK,CAUL,CACR,EAbkC,CAalC,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["\n\nimport Link from \"../common/Link\";\nimport { usePathname } from \"../../hooks/usePathname\";\nimport { useState } from \"react\";\n\nconst AdminSidebar = () => {\n const pathname = usePathname();\n\n const menuItem = [\n {\n name: \"Dashboard\",\n url: \"/admin/dashboard\",\n icon: \"fas fa-tachometer-alt\",\n },\n {\n name: \"Rooms\",\n url: \"/admin/rooms\",\n icon: \"fas fa-hotel\",\n },\n {\n name: \"Bookings\",\n url: \"/admin/bookings\",\n icon: \"fas fa-receipt\",\n },\n {\n name: \"Users\",\n url: \"/admin/users\",\n icon: \"fas fa-user\",\n },\n {\n name: \"Reviews\",\n url: \"/admin/reviews\",\n icon: \"fas fa-star\",\n },\n ];\n\n const [activeMenuItem, setActiveMenuItem] = useState(pathname);\n\n const handleMenuItemClick = (menuItem: string) => {\n setActiveMenuItem(menuItem);\n };\n\n return (\n <div className=\"list-group mt-5 pl-4\">\n {menuItem.map((menuItem, index) => (\n <Link\n key={index}\n href={menuItem.url}\n className={`fw-bold list-group-item list-group-item-action ${activeMenuItem.includes(menuItem.url) ? \"active\" : \"\"\n }`}\n onClick={() => handleMenuItemClick(menuItem.url)}\n aria-current={\n activeMenuItem.includes(menuItem.url) ? \"true\" : \"false\"\n }\n >\n <i className={`${menuItem.icon} fa-fw pe-2`}></i> {menuItem.name}\n </Link>\n ))}\n </div>\n );\n};\n\nexport default AdminSidebar;\n"]}
1
+ {"version":3,"file":"AdminSidebar.js","sourceRoot":"","sources":["../../../src/components/layout/AdminSidebar.tsx"],"names":[],"mappings":";AAEA,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,IAAM,YAAY,GAAG;IACnB,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,IAAM,QAAQ,GAAG;QACf;YACE,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,kBAAkB;YACvB,IAAI,EAAE,uBAAuB;SAC9B;QACD;YACE,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,cAAc;YACnB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,iBAAiB;YACtB,IAAI,EAAE,gBAAgB;SACvB;QACD;YACE,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,cAAc;YACnB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,gBAAgB;YACrB,IAAI,EAAE,aAAa;SACpB;KACF,CAAC;IAEI,IAAA,KAAsC,QAAQ,CAAC,QAAQ,CAAC,EAAvD,cAAc,QAAA,EAAE,iBAAiB,QAAsB,CAAC;IAE/D,IAAM,mBAAmB,GAAG,UAAC,QAAgB;QAC3C,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,sBAAsB,YAClC,QAAQ,CAAC,GAAG,CAAC,UAAC,QAAQ,EAAE,KAAK,IAAK,OAAA,CACjC,MAAC,IAAI,IAEH,IAAI,EAAE,QAAQ,CAAC,GAAG,EAClB,SAAS,EAAE,yDAAkD,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAC9G,EACJ,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAjC,CAAiC,kBAE9C,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,aAG1D,YAAG,SAAS,EAAE,UAAG,QAAQ,CAAC,IAAI,gBAAa,GAAM,OAAE,QAAQ,CAAC,IAAI,KAT3D,KAAK,CAUL,CACR,EAbkC,CAalC,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["\n\nimport Link from \"../common/Link\";\nimport { usePathname } from \"../../hooks/usePathname\";\nimport { useState } from \"react\";\n\nconst AdminSidebar = () => {\n const pathname = usePathname();\n\n const menuItem = [\n {\n name: \"Dashboard\",\n url: \"/admin/dashboard\",\n icon: \"fas fa-tachometer-alt\",\n },\n {\n name: \"Rooms\",\n url: \"/admin/rooms\",\n icon: \"fas fa-hotel\",\n },\n {\n name: \"Bookings\",\n url: \"/admin/bookings\",\n icon: \"fas fa-receipt\",\n },\n {\n name: \"Users\",\n url: \"/admin/users\",\n icon: \"fas fa-user\",\n },\n {\n name: \"Reviews\",\n url: \"/admin/reviews\",\n icon: \"fas fa-star\",\n },\n ];\n\n const [activeMenuItem, setActiveMenuItem] = useState(pathname);\n\n const handleMenuItemClick = (menuItem: string) => {\n setActiveMenuItem(menuItem);\n };\n\n return (\n <div className=\"list-group mt-8 pl-6\">\n {menuItem.map((menuItem, index) => (\n <Link\n key={index}\n href={menuItem.url}\n className={`fw-bold list-group-item list-group-item-action ${activeMenuItem.includes(menuItem.url) ? \"active\" : \"\"\n }`}\n onClick={() => handleMenuItemClick(menuItem.url)}\n aria-current={\n activeMenuItem.includes(menuItem.url) ? \"true\" : \"false\"\n }\n >\n <i className={`${menuItem.icon} fa-fw pe-2`}></i> {menuItem.name}\n </Link>\n ))}\n </div>\n );\n};\n\nexport default AdminSidebar;\n"]}
@@ -42,7 +42,7 @@ const AdminSidebar = () => {
42
42
  };
43
43
 
44
44
  return (
45
- <div className="list-group mt-5 pl-4">
45
+ <div className="list-group mt-8 pl-6">
46
46
  {menuItem.map((menuItem, index) => (
47
47
  <Link
48
48
  key={index}
@@ -1 +1 @@
1
- {"version":3,"file":"AdminTopHeader.d.ts","sourceRoot":"","sources":["../../../src/components/layout/AdminTopHeader.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,cAAc,+CA+K1B,CAAC"}
1
+ {"version":3,"file":"AdminTopHeader.d.ts","sourceRoot":"","sources":["../../../src/components/layout/AdminTopHeader.tsx"],"names":[],"mappings":"AAsBA,eAAO,MAAM,cAAc,+CA0L1B,CAAC"}
@@ -1,22 +1,24 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useContext, useMemo } from "react";
3
- import { useDispatch, useSelector } from "react-redux";
4
3
  import { usePathname } from "../../hooks/usePathname";
5
4
  import { useSearchParams } from "../../hooks/useSearchParams";
6
5
  import { useRouter } from "../../hooks/useRouter";
7
- import { useSession } from "../../hooks/useSession";
8
6
  import { useGetSolidActionByIdQuery } from "../../redux/api/solidActionApi";
7
+ import { useGetSolidSettingsQuery } from "../../redux/api/solidSettingsApi";
9
8
  import { LayoutContext } from "./context/layoutcontext";
10
9
  import { enterStudioMode } from "../../redux/features/solidStudioSlice";
11
10
  import { hasAnyRole } from "../../helpers/rolesHelper";
11
+ import { getSettingsMap } from "../../helpers/settingsPayload";
12
12
  import { env } from "../../adapters/env";
13
+ import { AdminHeaderActions, StudioSparkleIcon } from "./AdminHeaderActions";
14
+ import { useDispatch, useSelector } from "react-redux";
15
+ import { useSession } from "../../hooks/useSession";
13
16
  var SIDEBAR_TOGGLE_EVENT = "solidx:sidebar-toggle";
14
17
  var toLabel = function (value) {
15
18
  return decodeURIComponent(value)
16
19
  .replace(/[-_]/g, " ")
17
20
  .replace(/\b\w/g, function (m) { return m.toUpperCase(); });
18
21
  };
19
- var StudioSparkleIcon = function () { return (_jsxs("svg", { width: "14", height: "14", viewBox: "0 0 14 14", fill: "none", "aria-hidden": "true", children: [_jsx("path", { d: "M7 1v2M7 11v2M1 7h2M11 7h2M2.93 2.93l1.41 1.41M9.66 9.66l1.41 1.41M2.93 11.07l1.41-1.41M9.66 4.34l1.41-1.41", stroke: "currentColor", strokeWidth: "1.4", strokeLinecap: "round" }), _jsx("circle", { cx: "7", cy: "7", r: "2", stroke: "currentColor", strokeWidth: "1.4" })] })); };
20
22
  export var AdminTopHeader = function () {
21
23
  var pathname = usePathname();
22
24
  var searchParams = useSearchParams();
@@ -24,10 +26,13 @@ export var AdminTopHeader = function () {
24
26
  var dispatch = useDispatch();
25
27
  var toggleThemeMode = useContext(LayoutContext).toggleThemeMode;
26
28
  var session = useSession().data;
29
+ var solidSettingsData = useGetSolidSettingsQuery(undefined).data;
27
30
  var user = session === null || session === void 0 ? void 0 : session.user;
28
31
  var isAdmin = hasAnyRole(user === null || user === void 0 ? void 0 : user.roles, ["Admin"]);
29
32
  var isStudioMode = useSelector(function (state) { var _a, _b; return (_b = (_a = state.solidStudio) === null || _a === void 0 ? void 0 : _a.isStudioMode) !== null && _b !== void 0 ? _b : false; });
30
33
  var isDev = env("VITE_SOLIDX_ENV") === "dev";
34
+ var settingsMap = useMemo(function () { return getSettingsMap(solidSettingsData); }, [solidSettingsData]);
35
+ var isDarkModeEnabled = (settingsMap === null || settingsMap === void 0 ? void 0 : settingsMap.enableDarkMode) === true || (settingsMap === null || settingsMap === void 0 ? void 0 : settingsMap.enableDarkMode) === "true";
31
36
  // We treat actionId as the source of truth for breadcrumb labels.
32
37
  // If present, we resolve module/model/action via action-metadata API
33
38
  // so breadcrumbs are consistent across list/form/tree/kanban pages.
@@ -60,7 +65,11 @@ export var AdminTopHeader = function () {
60
65
  var moduleName = segments[2];
61
66
  var modelName = segments[3];
62
67
  var viewName = segments[4];
63
- var next = [moduleName, modelName, viewName].filter(Boolean).map(function (item) { return toLabel(item); });
68
+ var next = [
69
+ moduleName ? toLabel(moduleName) : null,
70
+ modelFromApi ? decodeURIComponent(modelFromApi) : modelName ? toLabel(modelName) : null,
71
+ viewName ? toLabel(viewName) : null,
72
+ ].filter(Boolean);
64
73
  return next.length ? next : ["Admin"];
65
74
  }
66
75
  var menuItemName = searchParams.get("menuItemName");
@@ -99,6 +108,6 @@ export var AdminTopHeader = function () {
99
108
  }
100
109
  }
101
110
  };
102
- return (_jsx("header", { className: "solid-admin-header", children: _jsxs("div", { className: "solid-admin-header-inner", children: [_jsx("button", { type: "button", className: "solid-admin-sidebar-trigger", onClick: triggerSidebar, "aria-label": "Toggle sidebar", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [_jsx("rect", { x: "1.5", y: "2", width: "13", height: "12", rx: "2", stroke: "currentColor" }), _jsx("path", { d: "M5.5 2V14", stroke: "currentColor" }), _jsx("rect", { x: "8", y: "5.25", width: "4.5", height: "5.5", rx: "0.9", stroke: "currentColor" })] }) }), _jsx("div", { className: "solid-admin-header-sep" }), _jsx("nav", { className: "solid-admin-breadcrumbs", "aria-label": "Breadcrumb", children: crumbs.map(function (crumb, index) { return (_jsxs("span", { className: "solid-admin-crumb", children: [index > 0 && _jsx("span", { className: "solid-admin-crumb-sep", children: "\u203A" }), index === 1 && showBack ? (_jsx("button", { type: "button", className: "solid-admin-crumb-link", onClick: function () { return handleBreadcrumbClick(index); }, style: { background: "none", border: "none", cursor: "pointer", color: "inherit", textDecoration: "underline" }, children: crumb })) : (_jsx("span", { children: crumb }))] }, "".concat(crumb, "-").concat(index))); }) }), _jsxs("div", { className: "solid-admin-header-actions", children: [isAdmin && isDev && !isStudioMode && (_jsxs("button", { type: "button", className: "solid-studio-trigger-btn", onClick: function () { dispatch(enterStudioMode()); router.push("/studio"); }, title: "Enter SolidX Studio", children: [_jsx(StudioSparkleIcon, {}), "Studio"] })), _jsxs("button", { type: "button", className: "solid-admin-theme-toggle", onClick: toggleThemeMode, "aria-label": "Toggle theme", title: "Toggle theme", children: [_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [_jsx("path", { d: "M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 3l0 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 9l4.65 -4.65", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 14.3l7.37 -7.37", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 19.6l8.85 -8.85", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { className: "solid-sr-only", children: "Toggle theme" })] }), showBack && (_jsx("button", { type: "button", className: "solid-admin-back-btn", onClick: function () { return router.back(); }, "aria-label": "Go back", children: "Back" }))] })] }) }));
111
+ return (_jsx("header", { className: "solid-admin-header", children: _jsxs("div", { className: "solid-admin-header-inner", children: [_jsx("button", { type: "button", className: "solid-admin-sidebar-trigger", onClick: triggerSidebar, "aria-label": "Toggle sidebar", children: _jsxs("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true", children: [_jsx("rect", { x: "1.5", y: "2", width: "13", height: "12", rx: "2", stroke: "currentColor" }), _jsx("path", { d: "M5.5 2V14", stroke: "currentColor" }), _jsx("rect", { x: "8", y: "5.25", width: "4.5", height: "5.5", rx: "0.9", stroke: "currentColor" })] }) }), _jsx("div", { className: "solid-admin-header-sep" }), _jsx("nav", { className: "solid-admin-breadcrumbs", "aria-label": "Breadcrumb", children: crumbs.map(function (crumb, index) { return (_jsxs("span", { className: "solid-admin-crumb", children: [index > 0 && _jsx("span", { className: "solid-admin-crumb-sep", children: "\u203A" }), index === 1 && showBack ? (_jsx("button", { type: "button", className: "solid-admin-crumb-link", onClick: function () { return handleBreadcrumbClick(index); }, style: { background: "none", border: "none", cursor: "pointer", color: "inherit", textDecoration: "underline" }, children: crumb })) : (_jsx("span", { className: "solid-bread-crum-text-wrapper", children: crumb }))] }, "".concat(crumb, "-").concat(index))); }) }), _jsxs("div", { className: "solid-admin-header-actions", children: [isAdmin && isDev && !isStudioMode && (_jsxs("button", { type: "button", className: "solid-studio-trigger-btn", onClick: function () { dispatch(enterStudioMode()); router.push("/studio"); }, title: "Enter SolidX Studio", "aria-label": "Enter SolidX Studio", children: [_jsx(StudioSparkleIcon, {}), _jsx("span", { className: "solid-studio-trigger-label", children: "Studio" })] })), isDarkModeEnabled && (_jsxs("button", { type: "button", className: "solid-admin-theme-toggle", onClick: toggleThemeMode, "aria-label": "Toggle theme", title: "Toggle theme", children: [_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [_jsx("path", { d: "M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 3l0 18", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 9l4.65 -4.65", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 14.3l7.37 -7.37", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { d: "M12 19.6l8.85 -8.85", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] }), _jsx("span", { className: "solid-sr-only", children: "Toggle theme" })] })), showBack && (_jsx("button", { type: "button", className: "solid-admin-back-btn", onClick: function () { return router.back(); }, "aria-label": "Go back", children: "Back" }))] }), _jsx(AdminHeaderActions, { variant: "header" })] }) }));
103
112
  };
104
113
  //# sourceMappingURL=AdminTopHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdminTopHeader.js","sourceRoot":"","sources":["../../../src/components/layout/AdminTopHeader.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useMemo } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { usePathname } from \"../../hooks/usePathname\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSession } from \"../../hooks/useSession\";\nimport { useGetSolidActionByIdQuery } from \"../../redux/api/solidActionApi\";\nimport { LayoutContext } from \"./context/layoutcontext\";\nimport { enterStudioMode } from \"../../redux/features/solidStudioSlice\";\nimport { hasAnyRole } from \"../../helpers/rolesHelper\";\nimport { env } from \"../../adapters/env\";\n\nconst SIDEBAR_TOGGLE_EVENT = \"solidx:sidebar-toggle\";\n\nconst toLabel = (value: string) =>\n decodeURIComponent(value)\n .replace(/[-_]/g, \" \")\n .replace(/\\b\\w/g, (m) => m.toUpperCase());\n\nconst StudioSparkleIcon = () => (\n <svg width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"none\" aria-hidden=\"true\">\n <path d=\"M7 1v2M7 11v2M1 7h2M11 7h2M2.93 2.93l1.41 1.41M9.66 9.66l1.41 1.41M2.93 11.07l1.41-1.41M9.66 4.34l1.41-1.41\" stroke=\"currentColor\" strokeWidth=\"1.4\" strokeLinecap=\"round\" />\n <circle cx=\"7\" cy=\"7\" r=\"2\" stroke=\"currentColor\" strokeWidth=\"1.4\" />\n </svg>\n);\n\nexport const AdminTopHeader = () => {\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const router = useRouter();\n const dispatch = useDispatch();\n const { toggleThemeMode } = useContext(LayoutContext);\n const { data: session } = useSession();\n const user = session?.user;\n const isAdmin = hasAnyRole(user?.roles, [\"Admin\"]);\n const isStudioMode = useSelector((state: any) => state.solidStudio?.isStudioMode ?? false);\n const isDev = env(\"VITE_SOLIDX_ENV\") === \"dev\";\n\n // We treat actionId as the source of truth for breadcrumb labels.\n // If present, we resolve module/model/action via action-metadata API\n // so breadcrumbs are consistent across list/form/tree/kanban pages.\n const actionId = searchParams.get(\"actionId\");\n const { data: actionResponse } = useGetSolidActionByIdQuery(actionId as string, {\n skip: !actionId,\n });\n\n const crumbs = useMemo(() => {\n // API response shapes vary by adapter layer, so normalize defensively.\n const actionData = actionResponse?.data?.data ?? actionResponse?.data ?? actionResponse;\n const moduleFromApi = actionData?.module?.displayName || actionData?.module?.name;\n const modelFromApi = actionData?.model?.displayName || actionData?.model?.name;\n const actionFromApi = actionData?.displayName || actionData?.name;\n const actionDataId = actionData?.id != null ? String(actionData.id) : null;\n const hasMatchingActionData = Boolean(actionId) && actionDataId === actionId;\n\n // Priority 1: exact business breadcrumb contract requested:\n // <module> > <model> > <action>.\n // We only trust API crumbs when they belong to the current URL's actionId.\n // This avoids stale list breadcrumbs bleeding into form routes that do not\n // carry actionId in their query string.\n if (hasMatchingActionData && (moduleFromApi || modelFromApi || actionFromApi)) {\n return [moduleFromApi, modelFromApi, actionFromApi].filter(Boolean);\n }\n\n const segments = pathname.split(\"/\").filter(Boolean);\n // Priority 2: derive from route segments when API data is unavailable.\n // This is intentionally ahead of query fallback so form pages don't\n // inherit stale list query labels after list -> form navigation.\n if (segments[0] === \"admin\" && segments[1] === \"core\") {\n const moduleName = segments[2];\n const modelName = segments[3];\n const viewName = segments[4];\n const next = [moduleName, modelName, viewName].filter(Boolean).map((item) => toLabel(item!));\n return next.length ? next : [\"Admin\"];\n }\n\n const menuItemName = searchParams.get(\"menuItemName\");\n const actionName = searchParams.get(\"actionName\");\n\n // Priority 3: legacy URL-query fallback for older links/pages.\n if (menuItemName || actionName) {\n return [menuItemName, actionName].filter(Boolean).map((item) => toLabel(item!));\n }\n\n return [\"Admin\"];\n }, [actionId, actionResponse, pathname, searchParams]);\n\n const showBack = /\\/admin\\/core\\/[^/]+\\/[^/]+\\/form\\/[^/]+/.test(pathname);\n\n const triggerSidebar = () => {\n window.dispatchEvent(new CustomEvent(SIDEBAR_TOGGLE_EVENT));\n };\n\n const handleBreadcrumbClick = (crumbIndex: number) => {\n // When on a form view, clicking the model name (second crumb) should navigate back to list\n // Index 1 is the model name in a breadcrumb like: Module > Model > Action\n if (crumbIndex === 1 && showBack) {\n if (typeof window !== \"undefined\") {\n // First, try to use the full stored URL (preserves all query params)\n const storedFullUrl = sessionStorage.getItem(\"fromViewUrl\");\n if (storedFullUrl) {\n router.push(storedFullUrl);\n return;\n }\n }\n \n // Fallback: construct URL from current path and stored view\n const segments = pathname.split(\"/\").filter(Boolean);\n if (segments[0] === \"admin\" && segments[1] === \"core\") {\n const moduleName = segments[2];\n const modelName = segments[3];\n const fromView = typeof window !== \"undefined\" \n ? sessionStorage.getItem(\"fromView\") || \"list\" \n : \"list\";\n router.push(`/admin/core/${moduleName}/${modelName}/${fromView}`);\n }\n }\n };\n\n return (\n <header className=\"solid-admin-header\">\n <div className=\"solid-admin-header-inner\">\n <button\n type=\"button\"\n className=\"solid-admin-sidebar-trigger\"\n onClick={triggerSidebar}\n aria-label=\"Toggle sidebar\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <rect x=\"1.5\" y=\"2\" width=\"13\" height=\"12\" rx=\"2\" stroke=\"currentColor\" />\n <path d=\"M5.5 2V14\" stroke=\"currentColor\" />\n <rect x=\"8\" y=\"5.25\" width=\"4.5\" height=\"5.5\" rx=\"0.9\" stroke=\"currentColor\" />\n </svg>\n </button>\n\n <div className=\"solid-admin-header-sep\" />\n\n <nav className=\"solid-admin-breadcrumbs\" aria-label=\"Breadcrumb\">\n {crumbs.map((crumb, index) => (\n <span key={`${crumb}-${index}`} className=\"solid-admin-crumb\">\n {index > 0 && <span className=\"solid-admin-crumb-sep\">›</span>}\n {index === 1 && showBack ? (\n <button\n type=\"button\"\n className=\"solid-admin-crumb-link\"\n onClick={() => handleBreadcrumbClick(index)}\n style={{ background: \"none\", border: \"none\", cursor: \"pointer\", color: \"inherit\", textDecoration: \"underline\" }}\n >\n {crumb}\n </button>\n ) : (\n <span>{crumb}</span>\n )}\n </span>\n ))}\n </nav>\n\n <div className=\"solid-admin-header-actions\">\n {isAdmin && isDev && !isStudioMode && (\n <button\n type=\"button\"\n className=\"solid-studio-trigger-btn\"\n onClick={() => { dispatch(enterStudioMode()); router.push(\"/studio\"); }}\n title=\"Enter SolidX Studio\"\n >\n <StudioSparkleIcon />\n Studio\n </button>\n )}\n\n <button\n type=\"button\"\n className=\"solid-admin-theme-toggle\"\n onClick={toggleThemeMode}\n aria-label=\"Toggle theme\"\n title=\"Toggle theme\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 3l0 18\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 9l4.65 -4.65\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 14.3l7.37 -7.37\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 19.6l8.85 -8.85\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n <span className=\"solid-sr-only\">Toggle theme</span>\n </button>\n\n {showBack && (\n <button\n type=\"button\"\n className=\"solid-admin-back-btn\"\n onClick={() => router.back()}\n aria-label=\"Go back\"\n >\n Back\n </button>\n )}\n </div>\n </div>\n </header>\n );\n};\n"]}
1
+ {"version":3,"file":"AdminTopHeader.js","sourceRoot":"","sources":["../../../src/components/layout/AdminTopHeader.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useMemo } from \"react\";\nimport { usePathname } from \"../../hooks/usePathname\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useGetSolidActionByIdQuery } from \"../../redux/api/solidActionApi\";\nimport { useGetSolidSettingsQuery } from \"../../redux/api/solidSettingsApi\";\nimport { LayoutContext } from \"./context/layoutcontext\";\nimport { enterStudioMode } from \"../../redux/features/solidStudioSlice\";\nimport { hasAnyRole } from \"../../helpers/rolesHelper\";\nimport { getSettingsMap } from \"../../helpers/settingsPayload\";\nimport { env } from \"../../adapters/env\";\nimport { AdminHeaderActions, StudioSparkleIcon } from \"./AdminHeaderActions\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useSession } from \"@/hooks/useSession\";\n\nconst SIDEBAR_TOGGLE_EVENT = \"solidx:sidebar-toggle\";\n\nconst toLabel = (value: string) =>\n decodeURIComponent(value)\n .replace(/[-_]/g, \" \")\n .replace(/\\b\\w/g, (m) => m.toUpperCase());\n\nexport const AdminTopHeader = () => {\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const router = useRouter();\n const dispatch = useDispatch();\n const { toggleThemeMode } = useContext(LayoutContext);\n const { data: session } = useSession();\n const { data: solidSettingsData } = useGetSolidSettingsQuery(undefined);\n const user = session?.user;\n const isAdmin = hasAnyRole(user?.roles, [\"Admin\"]);\n const isStudioMode = useSelector((state: any) => state.solidStudio?.isStudioMode ?? false);\n const isDev = env(\"VITE_SOLIDX_ENV\") === \"dev\";\n const settingsMap = useMemo(() => getSettingsMap(solidSettingsData), [solidSettingsData]);\n const isDarkModeEnabled = settingsMap?.enableDarkMode === true || settingsMap?.enableDarkMode === \"true\";\n\n // We treat actionId as the source of truth for breadcrumb labels.\n // If present, we resolve module/model/action via action-metadata API\n // so breadcrumbs are consistent across list/form/tree/kanban pages.\n const actionId = searchParams.get(\"actionId\");\n const { data: actionResponse } = useGetSolidActionByIdQuery(actionId as string, {\n skip: !actionId,\n });\n\n const crumbs = useMemo(() => {\n // API response shapes vary by adapter layer, so normalize defensively.\n const actionData = actionResponse?.data?.data ?? actionResponse?.data ?? actionResponse;\n const moduleFromApi = actionData?.module?.displayName || actionData?.module?.name;\n const modelFromApi = actionData?.model?.displayName || actionData?.model?.name;\n const actionFromApi = actionData?.displayName || actionData?.name;\n const actionDataId = actionData?.id != null ? String(actionData.id) : null;\n const hasMatchingActionData = Boolean(actionId) && actionDataId === actionId;\n\n // Priority 1: exact business breadcrumb contract requested:\n // <module> > <model> > <action>.\n // We only trust API crumbs when they belong to the current URL's actionId.\n // This avoids stale list breadcrumbs bleeding into form routes that do not\n // carry actionId in their query string.\n if (hasMatchingActionData && (moduleFromApi || modelFromApi || actionFromApi)) {\n return [moduleFromApi, modelFromApi, actionFromApi].filter(Boolean);\n }\n\n const segments = pathname.split(\"/\").filter(Boolean);\n // Priority 2: derive from route segments when API data is unavailable.\n // This is intentionally ahead of query fallback so form pages don't\n // inherit stale list query labels after list -> form navigation.\n if (segments[0] === \"admin\" && segments[1] === \"core\") {\n const moduleName = segments[2];\n const modelName = segments[3];\n const viewName = segments[4];\n const next = [\n moduleName ? toLabel(moduleName) : null,\n modelFromApi ? decodeURIComponent(modelFromApi) : modelName ? toLabel(modelName) : null,\n viewName ? toLabel(viewName) : null,\n ].filter(Boolean) as string[];\n return next.length ? next : [\"Admin\"];\n }\n\n const menuItemName = searchParams.get(\"menuItemName\");\n const actionName = searchParams.get(\"actionName\");\n\n // Priority 3: legacy URL-query fallback for older links/pages.\n if (menuItemName || actionName) {\n return [menuItemName, actionName].filter(Boolean).map((item) => toLabel(item!));\n }\n\n return [\"Admin\"];\n }, [actionId, actionResponse, pathname, searchParams]);\n\n const showBack = /\\/admin\\/core\\/[^/]+\\/[^/]+\\/form\\/[^/]+/.test(pathname);\n\n const triggerSidebar = () => {\n window.dispatchEvent(new CustomEvent(SIDEBAR_TOGGLE_EVENT));\n };\n\n const handleBreadcrumbClick = (crumbIndex: number) => {\n // When on a form view, clicking the model name (second crumb) should navigate back to list\n // Index 1 is the model name in a breadcrumb like: Module > Model > Action\n if (crumbIndex === 1 && showBack) {\n if (typeof window !== \"undefined\") {\n // First, try to use the full stored URL (preserves all query params)\n const storedFullUrl = sessionStorage.getItem(\"fromViewUrl\");\n if (storedFullUrl) {\n router.push(storedFullUrl);\n return;\n }\n }\n \n // Fallback: construct URL from current path and stored view\n const segments = pathname.split(\"/\").filter(Boolean);\n if (segments[0] === \"admin\" && segments[1] === \"core\") {\n const moduleName = segments[2];\n const modelName = segments[3];\n const fromView = typeof window !== \"undefined\" \n ? sessionStorage.getItem(\"fromView\") || \"list\" \n : \"list\";\n router.push(`/admin/core/${moduleName}/${modelName}/${fromView}`);\n }\n }\n };\n\n return (\n <header className=\"solid-admin-header\">\n <div className=\"solid-admin-header-inner\">\n <button\n type=\"button\"\n className=\"solid-admin-sidebar-trigger\"\n onClick={triggerSidebar}\n aria-label=\"Toggle sidebar\"\n >\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <rect x=\"1.5\" y=\"2\" width=\"13\" height=\"12\" rx=\"2\" stroke=\"currentColor\" />\n <path d=\"M5.5 2V14\" stroke=\"currentColor\" />\n <rect x=\"8\" y=\"5.25\" width=\"4.5\" height=\"5.5\" rx=\"0.9\" stroke=\"currentColor\" />\n </svg>\n </button>\n\n <div className=\"solid-admin-header-sep\" />\n\n <nav className=\"solid-admin-breadcrumbs\" aria-label=\"Breadcrumb\">\n {crumbs.map((crumb, index) => (\n <span key={`${crumb}-${index}`} className=\"solid-admin-crumb\">\n {index > 0 && <span className=\"solid-admin-crumb-sep\">›</span>}\n {index === 1 && showBack ? (\n <button\n type=\"button\"\n className=\"solid-admin-crumb-link\"\n onClick={() => handleBreadcrumbClick(index)}\n style={{ background: \"none\", border: \"none\", cursor: \"pointer\", color: \"inherit\", textDecoration: \"underline\" }}\n >\n {crumb}\n </button>\n ) : (\n <span className=\"solid-bread-crum-text-wrapper\">{crumb}</span>\n )}\n </span>\n ))}\n </nav>\n\n <div className=\"solid-admin-header-actions\">\n {isAdmin && isDev && !isStudioMode && (\n <button\n type=\"button\"\n className=\"solid-studio-trigger-btn\"\n onClick={() => { dispatch(enterStudioMode()); router.push(\"/studio\"); }}\n title=\"Enter SolidX Studio\"\n aria-label=\"Enter SolidX Studio\"\n >\n <StudioSparkleIcon />\n <span className=\"solid-studio-trigger-label\">Studio</span>\n </button>\n )}\n\n {isDarkModeEnabled && (\n <button\n type=\"button\"\n className=\"solid-admin-theme-toggle\"\n onClick={toggleThemeMode}\n aria-label=\"Toggle theme\"\n title=\"Toggle theme\"\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path d=\"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 3l0 18\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 9l4.65 -4.65\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 14.3l7.37 -7.37\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n <path d=\"M12 19.6l8.85 -8.85\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n <span className=\"solid-sr-only\">Toggle theme</span>\n </button>\n )}\n\n {showBack && (\n <button\n type=\"button\"\n className=\"solid-admin-back-btn\"\n onClick={() => router.back()}\n aria-label=\"Go back\"\n >\n Back\n </button>\n )}\n </div>\n <AdminHeaderActions variant=\"header\" />\n </div>\n </header>\n );\n};\n"]}