@solidxai/core-ui 0.1.9-beta.2 → 0.1.9-beta.20

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 (577) hide show
  1. package/dist/adapters/auth/handleLogout.d.ts +1 -1
  2. package/dist/adapters/auth/handleLogout.d.ts.map +1 -1
  3. package/dist/adapters/auth/handleLogout.js +20 -32
  4. package/dist/adapters/auth/handleLogout.js.map +1 -1
  5. package/dist/adapters/auth/handleLogout.ts +7 -14
  6. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  7. package/dist/components/auth/AuthLayout.js +2 -1
  8. package/dist/components/auth/AuthLayout.js.map +1 -1
  9. package/dist/components/auth/AuthLayout.tsx +2 -0
  10. package/dist/components/auth/ForgotPasswordThankYou.js +1 -1
  11. package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
  12. package/dist/components/auth/ForgotPasswordThankYou.tsx +2 -2
  13. package/dist/components/auth/SolidForgotPassword.js +1 -1
  14. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  15. package/dist/components/auth/SolidForgotPassword.tsx +2 -2
  16. package/dist/components/auth/SolidInitialLoginOtp.js +8 -8
  17. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  18. package/dist/components/auth/SolidInitialLoginOtp.tsx +1 -1
  19. package/dist/components/auth/SolidInitiateRegisterOtp.js +8 -8
  20. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  21. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +1 -1
  22. package/dist/components/auth/SolidLogin.js +9 -10
  23. package/dist/components/auth/SolidLogin.js.map +1 -1
  24. package/dist/components/auth/SolidLogin.tsx +3 -3
  25. package/dist/components/auth/SolidRegister.js +10 -10
  26. package/dist/components/auth/SolidRegister.js.map +1 -1
  27. package/dist/components/auth/SolidRegister.tsx +3 -3
  28. package/dist/components/common/GeneralSettings.js +1 -1
  29. package/dist/components/common/GeneralSettings.js.map +1 -1
  30. package/dist/components/common/GeneralSettings.tsx +1 -1
  31. package/dist/components/common/SettingsComponent.d.ts.map +1 -1
  32. package/dist/components/common/SettingsComponent.js +4 -1
  33. package/dist/components/common/SettingsComponent.js.map +1 -1
  34. package/dist/components/common/SettingsComponent.module.css +95 -2
  35. package/dist/components/common/SettingsComponent.tsx +4 -1
  36. package/dist/components/common/SocialMediaLogin.d.ts.map +1 -1
  37. package/dist/components/common/SocialMediaLogin.js +2 -2
  38. package/dist/components/common/SocialMediaLogin.js.map +1 -1
  39. package/dist/components/common/SocialMediaLogin.tsx +8 -4
  40. package/dist/components/common/SolidExport.d.ts.map +1 -1
  41. package/dist/components/common/SolidExport.js +1 -1
  42. package/dist/components/common/SolidExport.js.map +1 -1
  43. package/dist/components/common/SolidExport.tsx +2 -0
  44. package/dist/components/common/SolidFaviconProvider.d.ts +3 -0
  45. package/dist/components/common/SolidFaviconProvider.d.ts.map +1 -0
  46. package/dist/components/common/SolidFaviconProvider.js +102 -0
  47. package/dist/components/common/SolidFaviconProvider.js.map +1 -0
  48. package/dist/components/common/SolidFaviconProvider.tsx +55 -0
  49. package/dist/components/core/card/SolidCardView.js +1 -1
  50. package/dist/components/core/card/SolidCardView.js.map +1 -1
  51. package/dist/components/core/card/SolidCardView.tsx +1 -1
  52. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  53. package/dist/components/core/chatter/SolidChatter.js +24 -11
  54. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  55. package/dist/components/core/chatter/SolidChatter.tsx +20 -6
  56. package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -1
  57. package/dist/components/core/chatter/SolidChatterHeader.js +1 -1
  58. package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
  59. package/dist/components/core/chatter/SolidChatterHeader.tsx +4 -0
  60. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +1 -0
  61. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -1
  62. package/dist/components/core/chatter/SolidChatterMessageBox.js +150 -11
  63. package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
  64. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +252 -11
  65. package/dist/components/core/chatter/SolidMessageComposer.d.ts.map +1 -1
  66. package/dist/components/core/chatter/SolidMessageComposer.js +3 -2
  67. package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -1
  68. package/dist/components/core/chatter/SolidMessageComposer.tsx +4 -2
  69. package/dist/components/core/chatter/chatter.module.css +1 -1
  70. package/dist/components/core/common/FilterComponent.d.ts.map +1 -1
  71. package/dist/components/core/common/FilterComponent.js +5 -3
  72. package/dist/components/core/common/FilterComponent.js.map +1 -1
  73. package/dist/components/core/common/FilterComponent.tsx +6 -2
  74. package/dist/components/core/common/GroupingComponent.d.ts.map +1 -1
  75. package/dist/components/core/common/GroupingComponent.js +2 -2
  76. package/dist/components/core/common/GroupingComponent.js.map +1 -1
  77. package/dist/components/core/common/GroupingComponent.tsx +2 -0
  78. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
  79. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +1 -10
  80. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
  81. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +1 -8
  82. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  83. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +6 -11
  84. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  85. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +5 -31
  86. package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +1 -1
  87. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
  88. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +2 -0
  89. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
  90. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +2 -0
  91. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  92. package/dist/components/core/common/SolidGlobalSearchElement.js +137 -57
  93. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  94. package/dist/components/core/common/SolidGlobalSearchElement.tsx +92 -11
  95. package/dist/components/core/common/SolidSaveCustomFilterForm.d.ts.map +1 -1
  96. package/dist/components/core/common/SolidSaveCustomFilterForm.js +1 -1
  97. package/dist/components/core/common/SolidSaveCustomFilterForm.js.map +1 -1
  98. package/dist/components/core/common/SolidSaveCustomFilterForm.tsx +0 -1
  99. package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts +4 -0
  100. package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts.map +1 -0
  101. package/dist/components/core/dashboard/mappers/echartsOptionMapper.js +79 -0
  102. package/dist/components/core/dashboard/mappers/echartsOptionMapper.js.map +1 -0
  103. package/dist/components/core/dashboard/mappers/echartsOptionMapper.ts +81 -0
  104. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts +3 -0
  105. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts.map +1 -0
  106. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js +17 -0
  107. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js.map +1 -0
  108. package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.tsx +6 -0
  109. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts +3 -0
  110. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts.map +1 -0
  111. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js +41 -0
  112. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js.map +1 -0
  113. package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.tsx +56 -0
  114. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts +3 -0
  115. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts.map +1 -0
  116. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js +14 -0
  117. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js.map +1 -0
  118. package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.tsx +19 -0
  119. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts +3 -0
  120. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts.map +1 -0
  121. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js +17 -0
  122. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js.map +1 -0
  123. package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.tsx +6 -0
  124. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts +3 -0
  125. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts.map +1 -0
  126. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js +17 -0
  127. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js.map +1 -0
  128. package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.tsx +6 -0
  129. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts +3 -0
  130. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts.map +1 -0
  131. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js +12 -0
  132. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js.map +1 -0
  133. package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.tsx +39 -0
  134. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts +3 -0
  135. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts.map +1 -0
  136. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js +7 -0
  137. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js.map +1 -0
  138. package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.tsx +9 -0
  139. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts +3 -0
  140. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts.map +1 -0
  141. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js +203 -0
  142. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js.map +1 -0
  143. package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.tsx +251 -0
  144. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts +16 -0
  145. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts.map +1 -0
  146. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js +31 -0
  147. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js.map +1 -0
  148. package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.tsx +43 -0
  149. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts +3 -0
  150. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts.map +1 -0
  151. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js +141 -0
  152. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js.map +1 -0
  153. package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.tsx +205 -0
  154. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts +4 -0
  155. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts.map +1 -0
  156. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js +112 -0
  157. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js.map +1 -0
  158. package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.tsx +146 -0
  159. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts +11 -0
  160. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts.map +1 -0
  161. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js +22 -0
  162. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js.map +1 -0
  163. package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.tsx +36 -0
  164. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts +3 -0
  165. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts.map +1 -0
  166. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js +133 -0
  167. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js.map +1 -0
  168. package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.ts +76 -0
  169. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +1 -1
  170. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
  171. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +1 -1
  172. package/dist/components/core/filter/fields/SolidBooleanField.d.ts.map +1 -1
  173. package/dist/components/core/filter/fields/SolidBooleanField.js +1 -1
  174. package/dist/components/core/filter/fields/SolidBooleanField.js.map +1 -1
  175. package/dist/components/core/filter/fields/SolidBooleanField.tsx +3 -2
  176. package/dist/components/core/filter/fields/SolidDateField.d.ts.map +1 -1
  177. package/dist/components/core/filter/fields/SolidDateField.js +1 -1
  178. package/dist/components/core/filter/fields/SolidDateField.js.map +1 -1
  179. package/dist/components/core/filter/fields/SolidDateField.tsx +2 -1
  180. package/dist/components/core/filter/fields/SolidDatetimeField.d.ts.map +1 -1
  181. package/dist/components/core/filter/fields/SolidDatetimeField.js +1 -1
  182. package/dist/components/core/filter/fields/SolidDatetimeField.js.map +1 -1
  183. package/dist/components/core/filter/fields/SolidDatetimeField.tsx +3 -2
  184. package/dist/components/core/filter/fields/SolidExternalIdField.d.ts.map +1 -1
  185. package/dist/components/core/filter/fields/SolidExternalIdField.js +1 -1
  186. package/dist/components/core/filter/fields/SolidExternalIdField.js.map +1 -1
  187. package/dist/components/core/filter/fields/SolidExternalIdField.tsx +2 -1
  188. package/dist/components/core/filter/fields/SolidIdField.d.ts.map +1 -1
  189. package/dist/components/core/filter/fields/SolidIdField.js +1 -1
  190. package/dist/components/core/filter/fields/SolidIdField.js.map +1 -1
  191. package/dist/components/core/filter/fields/SolidIdField.tsx +1 -0
  192. package/dist/components/core/filter/fields/SolidIntField.d.ts.map +1 -1
  193. package/dist/components/core/filter/fields/SolidIntField.js +1 -1
  194. package/dist/components/core/filter/fields/SolidIntField.js.map +1 -1
  195. package/dist/components/core/filter/fields/SolidIntField.tsx +2 -1
  196. package/dist/components/core/filter/fields/SolidMediaMultipleField.d.ts.map +1 -1
  197. package/dist/components/core/filter/fields/SolidMediaMultipleField.js +1 -1
  198. package/dist/components/core/filter/fields/SolidMediaMultipleField.js.map +1 -1
  199. package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +2 -1
  200. package/dist/components/core/filter/fields/SolidMediaSingleField.d.ts.map +1 -1
  201. package/dist/components/core/filter/fields/SolidMediaSingleField.js +1 -1
  202. package/dist/components/core/filter/fields/SolidMediaSingleField.js.map +1 -1
  203. package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +2 -1
  204. package/dist/components/core/filter/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  205. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js +1 -1
  206. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js.map +1 -1
  207. package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +3 -2
  208. package/dist/components/core/filter/fields/SolidSelectionStaticField.d.ts.map +1 -1
  209. package/dist/components/core/filter/fields/SolidSelectionStaticField.js +1 -1
  210. package/dist/components/core/filter/fields/SolidSelectionStaticField.js.map +1 -1
  211. package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +3 -2
  212. package/dist/components/core/filter/fields/SolidShortTextField.d.ts.map +1 -1
  213. package/dist/components/core/filter/fields/SolidShortTextField.js +1 -1
  214. package/dist/components/core/filter/fields/SolidShortTextField.js.map +1 -1
  215. package/dist/components/core/filter/fields/SolidShortTextField.tsx +2 -1
  216. package/dist/components/core/filter/fields/SolidTimeField.d.ts.map +1 -1
  217. package/dist/components/core/filter/fields/SolidTimeField.js +1 -1
  218. package/dist/components/core/filter/fields/SolidTimeField.js.map +1 -1
  219. package/dist/components/core/filter/fields/SolidTimeField.tsx +3 -2
  220. package/dist/components/core/filter/fields/SolidUuidField.d.ts.map +1 -1
  221. package/dist/components/core/filter/fields/SolidUuidField.js +1 -1
  222. package/dist/components/core/filter/fields/SolidUuidField.js.map +1 -1
  223. package/dist/components/core/filter/fields/SolidUuidField.tsx +2 -1
  224. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  225. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js +1 -1
  226. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  227. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.tsx +3 -2
  228. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  229. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js +1 -1
  230. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  231. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +3 -2
  232. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  233. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js +1 -1
  234. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  235. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.tsx +3 -2
  236. package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
  237. package/dist/components/core/form/SolidFormActionHeader.js +1 -0
  238. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  239. package/dist/components/core/form/SolidFormActionHeader.tsx +2 -1
  240. package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
  241. package/dist/components/core/form/SolidFormFooter.js +16 -9
  242. package/dist/components/core/form/SolidFormFooter.js.map +1 -1
  243. package/dist/components/core/form/SolidFormFooter.tsx +16 -8
  244. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  245. package/dist/components/core/form/SolidFormView.js +12 -7
  246. package/dist/components/core/form/SolidFormView.js.map +1 -1
  247. package/dist/components/core/form/SolidFormView.tsx +11 -5
  248. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.d.ts.map +1 -1
  249. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js +12 -3
  250. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js.map +1 -1
  251. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.tsx +21 -16
  252. package/dist/components/core/form/SolidFormViewNormalHeaderButton.d.ts.map +1 -1
  253. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js +15 -5
  254. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js.map +1 -1
  255. package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +21 -9
  256. package/dist/components/core/form/field-quality-check-fixes.md +201 -0
  257. package/dist/components/core/form/fields/SolidBooleanField.d.ts.map +1 -1
  258. package/dist/components/core/form/fields/SolidBooleanField.js +10 -1
  259. package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
  260. package/dist/components/core/form/fields/SolidBooleanField.tsx +13 -1
  261. package/dist/components/core/form/fields/SolidDecimalField.d.ts.map +1 -1
  262. package/dist/components/core/form/fields/SolidDecimalField.js +7 -1
  263. package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
  264. package/dist/components/core/form/fields/SolidDecimalField.tsx +10 -1
  265. package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
  266. package/dist/components/core/form/fields/SolidIntegerField.js +14 -2
  267. package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
  268. package/dist/components/core/form/fields/SolidIntegerField.tsx +20 -2
  269. package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
  270. package/dist/components/core/form/fields/SolidJsonField.js +9 -1
  271. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  272. package/dist/components/core/form/fields/SolidJsonField.tsx +12 -1
  273. package/dist/components/core/form/fields/SolidLongTextField.d.ts +0 -1
  274. package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
  275. package/dist/components/core/form/fields/SolidLongTextField.js +16 -48
  276. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  277. package/dist/components/core/form/fields/SolidLongTextField.tsx +22 -88
  278. package/dist/components/core/form/fields/SolidMediaMultipleField.d.ts.map +1 -1
  279. package/dist/components/core/form/fields/SolidMediaMultipleField.js +15 -2
  280. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  281. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +20 -4
  282. package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
  283. package/dist/components/core/form/fields/SolidMediaSingleField.js +21 -3
  284. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  285. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +30 -3
  286. package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
  287. package/dist/components/core/form/fields/SolidPasswordField.js +2 -1
  288. package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
  289. package/dist/components/core/form/fields/SolidPasswordField.tsx +13 -1
  290. package/dist/components/core/form/fields/SolidRichTextField.d.ts.map +1 -1
  291. package/dist/components/core/form/fields/SolidRichTextField.js +9 -1
  292. package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
  293. package/dist/components/core/form/fields/SolidRichTextField.tsx +12 -1
  294. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts +12 -0
  295. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -0
  296. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +168 -0
  297. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -0
  298. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +241 -0
  299. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  300. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +17 -15
  301. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  302. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +10 -2
  303. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  304. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +14 -14
  305. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  306. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +19 -9
  307. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  308. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +9 -7
  309. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  310. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +8 -2
  311. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +1 -1
  312. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map +1 -1
  313. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +1 -1
  314. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.d.ts.map +1 -1
  315. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +14 -3
  316. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
  317. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +20 -3
  318. package/dist/components/core/kanban/SolidKanbanView.js +1 -1
  319. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  320. package/dist/components/core/kanban/SolidKanbanView.tsx +1 -1
  321. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  322. package/dist/components/core/list/SolidDataTable.js +2 -1
  323. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  324. package/dist/components/core/list/SolidDataTable.tsx +8 -9
  325. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  326. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +3 -0
  327. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  328. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -0
  329. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  330. package/dist/components/core/list/SolidListView.js +180 -101
  331. package/dist/components/core/list/SolidListView.js.map +1 -1
  332. package/dist/components/core/list/SolidListView.tsx +119 -33
  333. package/dist/components/core/list/SolidListViewColumn.d.ts +3 -1
  334. package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
  335. package/dist/components/core/list/SolidListViewColumn.js +27 -2
  336. package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
  337. package/dist/components/core/list/SolidListViewColumn.tsx +16 -3
  338. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  339. package/dist/components/core/list/SolidListViewConfigure.js +11 -10
  340. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  341. package/dist/components/core/list/SolidListViewConfigure.tsx +4 -2
  342. package/dist/components/core/list/SolidListViewHeaderButton.d.ts.map +1 -1
  343. package/dist/components/core/list/SolidListViewHeaderButton.js +9 -3
  344. package/dist/components/core/list/SolidListViewHeaderButton.js.map +1 -1
  345. package/dist/components/core/list/SolidListViewHeaderButton.tsx +12 -7
  346. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.d.ts.map +1 -1
  347. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js +19 -7
  348. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js.map +1 -1
  349. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.tsx +19 -6
  350. package/dist/components/core/list/SolidListViewRowActionMenuItem.d.ts.map +1 -1
  351. package/dist/components/core/list/SolidListViewRowActionMenuItem.js +14 -5
  352. package/dist/components/core/list/SolidListViewRowActionMenuItem.js.map +1 -1
  353. package/dist/components/core/list/SolidListViewRowActionMenuItem.tsx +17 -6
  354. package/dist/components/core/list/SolidListViewRowActionsMenu.d.ts.map +1 -1
  355. package/dist/components/core/list/SolidListViewRowActionsMenu.js +7 -1
  356. package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
  357. package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +5 -1
  358. package/dist/components/core/list/columns/SolidBooleanColumn.d.ts.map +1 -1
  359. package/dist/components/core/list/columns/SolidBooleanColumn.js +4 -6
  360. package/dist/components/core/list/columns/SolidBooleanColumn.js.map +1 -1
  361. package/dist/components/core/list/columns/SolidBooleanColumn.tsx +1 -3
  362. package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
  363. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +4 -3
  364. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  365. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +4 -3
  366. package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
  367. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +3 -2
  368. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  369. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +3 -2
  370. package/dist/components/core/list/columns/SolidRelationColumn.d.ts +1 -1
  371. package/dist/components/core/list/columns/SolidRelationColumn.d.ts.map +1 -1
  372. package/dist/components/core/list/columns/SolidRelationColumn.js +2 -2
  373. package/dist/components/core/list/columns/SolidRelationColumn.js.map +1 -1
  374. package/dist/components/core/list/columns/SolidRelationColumn.tsx +2 -2
  375. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts +2 -2
  376. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
  377. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +9 -4
  378. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  379. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +14 -4
  380. package/dist/components/core/list/field-quality-check-fixes.md +178 -0
  381. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts +3 -0
  382. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts.map +1 -0
  383. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js +39 -0
  384. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js.map +1 -0
  385. package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.tsx +50 -0
  386. package/dist/components/core/model/CreateModel.css +48 -0
  387. package/dist/components/core/model/CreateModel.d.ts +1 -0
  388. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  389. package/dist/components/core/model/CreateModel.js +80 -128
  390. package/dist/components/core/model/CreateModel.js.map +1 -1
  391. package/dist/components/core/model/CreateModel.tsx +102 -226
  392. package/dist/components/core/model/FieldMetaData.d.ts +1 -1
  393. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  394. package/dist/components/core/model/FieldMetaData.js +6 -22
  395. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  396. package/dist/components/core/model/FieldMetaData.tsx +16 -49
  397. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  398. package/dist/components/core/model/FieldMetaDataForm.js +196 -222
  399. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  400. package/dist/components/core/model/FieldMetaDataForm.tsx +1 -73
  401. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  402. package/dist/components/core/model/ModelMetaData.js +12 -24
  403. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  404. package/dist/components/core/model/ModelMetaData.tsx +15 -21
  405. package/dist/components/core/module/CreateModule.css +44 -0
  406. package/dist/components/core/module/CreateModule.d.ts +1 -0
  407. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  408. package/dist/components/core/module/CreateModule.js +40 -43
  409. package/dist/components/core/module/CreateModule.js.map +1 -1
  410. package/dist/components/core/module/CreateModule.tsx +243 -247
  411. package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
  412. package/dist/components/core/module/ModuleListViewData.js +47 -7
  413. package/dist/components/core/module/ModuleListViewData.js.map +1 -1
  414. package/dist/components/core/module/ModuleListViewData.tsx +58 -0
  415. package/dist/components/core/module/ModuleMetadataExplorer.css +638 -0
  416. package/dist/components/core/module/ModuleMetadataExplorer.d.ts +15 -0
  417. package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -0
  418. package/dist/components/core/module/ModuleMetadataExplorer.js +666 -0
  419. package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -0
  420. package/dist/components/core/module/ModuleMetadataExplorer.tsx +1000 -0
  421. package/dist/components/core/module/ModulePackageDialog.css +540 -0
  422. package/dist/components/core/module/ModulePackageDialog.d.ts +16 -0
  423. package/dist/components/core/module/ModulePackageDialog.d.ts.map +1 -0
  424. package/dist/components/core/module/ModulePackageDialog.js +625 -0
  425. package/dist/components/core/module/ModulePackageDialog.js.map +1 -0
  426. package/dist/components/core/module/ModulePackageDialog.tsx +906 -0
  427. package/dist/components/core/tree/SolidTreeView.js +2 -2
  428. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  429. package/dist/components/core/tree/SolidTreeView.tsx +3 -3
  430. package/dist/components/core/users/CreateUser.css +27 -2
  431. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  432. package/dist/components/core/users/CreateUser.js +52 -24
  433. package/dist/components/core/users/CreateUser.js.map +1 -1
  434. package/dist/components/core/users/CreateUser.tsx +47 -34
  435. package/dist/components/layout/AdminHeaderActions.d.ts +7 -0
  436. package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -0
  437. package/dist/components/layout/AdminHeaderActions.js +77 -0
  438. package/dist/components/layout/AdminHeaderActions.js.map +1 -0
  439. package/dist/components/layout/AdminHeaderActions.tsx +155 -0
  440. package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
  441. package/dist/components/layout/AdminTopHeader.js +8 -17
  442. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  443. package/dist/components/layout/AdminTopHeader.tsx +9 -64
  444. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  445. package/dist/components/layout/AppSidebar.js +2 -1
  446. package/dist/components/layout/AppSidebar.js.map +1 -1
  447. package/dist/components/layout/AppSidebar.tsx +2 -0
  448. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  449. package/dist/components/layout/user-profile-menu.js +57 -33
  450. package/dist/components/layout/user-profile-menu.js.map +1 -1
  451. package/dist/components/layout/user-profile-menu.tsx +11 -59
  452. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts +2 -1
  453. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
  454. package/dist/components/shad-cn-ui/SolidAutocomplete.js +60 -6
  455. package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
  456. package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +81 -22
  457. package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -1
  458. package/dist/components/shad-cn-ui/SolidButton.js +10 -2
  459. package/dist/components/shad-cn-ui/SolidButton.js.map +1 -1
  460. package/dist/components/shad-cn-ui/SolidButton.tsx +10 -2
  461. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts +1 -1
  462. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
  463. package/dist/components/shad-cn-ui/SolidDatePicker.js +2 -2
  464. package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
  465. package/dist/components/shad-cn-ui/SolidDatePicker.tsx +4 -0
  466. package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
  467. package/dist/components/shad-cn-ui/SolidDialog.js +38 -4
  468. package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
  469. package/dist/components/shad-cn-ui/SolidDialog.tsx +47 -3
  470. package/dist/components/shad-cn-ui/SolidIcon.d.ts +2 -1
  471. package/dist/components/shad-cn-ui/SolidIcon.d.ts.map +1 -1
  472. package/dist/components/shad-cn-ui/SolidIcon.js +1 -0
  473. package/dist/components/shad-cn-ui/SolidIcon.js.map +1 -1
  474. package/dist/components/shad-cn-ui/SolidIcon.tsx +1 -0
  475. package/dist/components/shad-cn-ui/SolidPasswordInput.d.ts.map +1 -1
  476. package/dist/components/shad-cn-ui/SolidPasswordInput.js +1 -1
  477. package/dist/components/shad-cn-ui/SolidPasswordInput.js.map +1 -1
  478. package/dist/components/shad-cn-ui/SolidPasswordInput.tsx +1 -0
  479. package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
  480. package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
  481. package/dist/components/shad-cn-ui/SolidSelect.js +51 -1
  482. package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
  483. package/dist/components/shad-cn-ui/SolidSelect.tsx +95 -0
  484. package/dist/helpers/buttonEnvironment.d.ts +5 -0
  485. package/dist/helpers/buttonEnvironment.d.ts.map +1 -0
  486. package/dist/helpers/buttonEnvironment.js +30 -0
  487. package/dist/helpers/buttonEnvironment.js.map +1 -0
  488. package/dist/helpers/buttonEnvironment.ts +35 -0
  489. package/dist/helpers/buttonPresentation.d.ts +24 -0
  490. package/dist/helpers/buttonPresentation.d.ts.map +1 -0
  491. package/dist/helpers/buttonPresentation.js +28 -0
  492. package/dist/helpers/buttonPresentation.js.map +1 -0
  493. package/dist/helpers/buttonPresentation.ts +53 -0
  494. package/dist/helpers/fileTypeIcon.d.ts +12 -0
  495. package/dist/helpers/fileTypeIcon.d.ts.map +1 -0
  496. package/dist/helpers/fileTypeIcon.js +37 -0
  497. package/dist/helpers/fileTypeIcon.js.map +1 -0
  498. package/dist/helpers/fileTypeIcon.tsx +65 -0
  499. package/dist/helpers/registry.d.ts.map +1 -1
  500. package/dist/helpers/registry.js +28 -10
  501. package/dist/helpers/registry.js.map +1 -1
  502. package/dist/helpers/registry.ts +31 -13
  503. package/dist/helpers/waitForBackendAvailability.d.ts +7 -0
  504. package/dist/helpers/waitForBackendAvailability.d.ts.map +1 -0
  505. package/dist/helpers/waitForBackendAvailability.js +86 -0
  506. package/dist/helpers/waitForBackendAvailability.js.map +1 -0
  507. package/dist/helpers/waitForBackendAvailability.ts +37 -0
  508. package/dist/index.d.ts +10 -9
  509. package/dist/index.d.ts.map +1 -1
  510. package/dist/index.js +7 -8
  511. package/dist/index.js.map +1 -1
  512. package/dist/index.ts +34 -13
  513. package/dist/redux/api/dashboardRuntimeApi.d.ts +34 -0
  514. package/dist/redux/api/dashboardRuntimeApi.d.ts.map +1 -0
  515. package/dist/redux/api/dashboardRuntimeApi.js +79 -0
  516. package/dist/redux/api/dashboardRuntimeApi.js.map +1 -0
  517. package/dist/redux/api/dashboardRuntimeApi.ts +75 -0
  518. package/dist/redux/api/moduleApi.d.ts +26 -1
  519. package/dist/redux/api/moduleApi.d.ts.map +1 -1
  520. package/dist/redux/api/moduleApi.js +237 -1
  521. package/dist/redux/api/moduleApi.js.map +1 -1
  522. package/dist/redux/api/moduleApi.ts +181 -1
  523. package/dist/redux/api/solidChatterMessageApi.d.ts +2 -1
  524. package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
  525. package/dist/redux/api/solidChatterMessageApi.js +11 -1
  526. package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
  527. package/dist/redux/api/solidChatterMessageApi.ts +10 -1
  528. package/dist/redux/store/defaultStoreConfig.d.ts +57 -9
  529. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  530. package/dist/redux/store/defaultStoreConfig.js +2 -6
  531. package/dist/redux/store/defaultStoreConfig.js.map +1 -1
  532. package/dist/redux/store/defaultStoreConfig.ts +2 -6
  533. package/dist/redux/store/solidEntityApiPool.d.ts +1 -0
  534. package/dist/redux/store/solidEntityApiPool.d.ts.map +1 -1
  535. package/dist/redux/store/solidEntityApiPool.js +4 -0
  536. package/dist/redux/store/solidEntityApiPool.js.map +1 -1
  537. package/dist/redux/store/solidEntityApiPool.ts +4 -0
  538. package/dist/resources/globals.css +163 -19
  539. package/dist/resources/shadcn-base.css +408 -183
  540. package/dist/resources/solid-responsive.css +235 -50
  541. package/dist/routes/AppEventListener.d.ts.map +1 -1
  542. package/dist/routes/AppEventListener.js +58 -8
  543. package/dist/routes/AppEventListener.js.map +1 -1
  544. package/dist/routes/AppEventListener.tsx +69 -8
  545. package/dist/routes/SolidRouteMetadataBoundary.d.ts +5 -0
  546. package/dist/routes/SolidRouteMetadataBoundary.d.ts.map +1 -0
  547. package/dist/routes/SolidRouteMetadataBoundary.js +72 -0
  548. package/dist/routes/SolidRouteMetadataBoundary.js.map +1 -0
  549. package/dist/routes/SolidRouteMetadataBoundary.tsx +77 -0
  550. package/dist/routes/pages/admin/core/DashboardPage.d.ts +1 -0
  551. package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
  552. package/dist/routes/pages/admin/core/DashboardPage.js +860 -5
  553. package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
  554. package/dist/routes/pages/admin/core/DashboardPage.module.css +219 -0
  555. package/dist/routes/pages/admin/core/DashboardPage.tsx +1025 -7
  556. package/dist/routes/solidRoutes.d.ts.map +1 -1
  557. package/dist/routes/solidRoutes.js +48 -27
  558. package/dist/routes/solidRoutes.js.map +1 -1
  559. package/dist/routes/solidRoutes.tsx +48 -27
  560. package/dist/routes/types.d.ts +8 -1
  561. package/dist/routes/types.d.ts.map +1 -1
  562. package/dist/routes/types.js.map +1 -1
  563. package/dist/routes/types.ts +9 -1
  564. package/dist/types/dashboard.d.ts +16 -0
  565. package/dist/types/dashboard.d.ts.map +1 -0
  566. package/dist/types/dashboard.js +2 -0
  567. package/dist/types/dashboard.js.map +1 -0
  568. package/dist/types/dashboard.ts +23 -0
  569. package/dist/types/extension-registry.d.ts +1 -0
  570. package/dist/types/extension-registry.d.ts.map +1 -1
  571. package/dist/types/extension-registry.js +1 -0
  572. package/dist/types/extension-registry.js.map +1 -1
  573. package/dist/types/extension-registry.ts +1 -0
  574. package/dist/types/index.d.ts +3 -0
  575. package/dist/types/jsoneditor.d.ts +4 -0
  576. package/dist/types/solid-core.d.ts +1 -0
  577. package/package.json +4 -1
@@ -172,8 +172,17 @@ const transformRulesToFilters = (input: any, viewData: any) => {
172
172
  const processRule = (rule: any) => {
173
173
  if (rule.value !== undefined && rule.value !== null) {
174
174
 
175
- // Ensure rule.value is always an array
176
- let values = typeof rule.value[0] === "object" ? rule.value.map((i: any) => i?.value ? i?.value : i) : rule?.value;
175
+ // Ensure rule.value is always an array of primitive values.
176
+ // Mixed arrays like ["failed", { label: "pending", value: "pending" }]
177
+ // must be normalized before query serialization.
178
+ const rawValues = Array.isArray(rule?.value) ? rule.value : [rule?.value];
179
+ let values = rawValues.map((item: any) => {
180
+ if (item && typeof item === "object") {
181
+ if (Object.prototype.hasOwnProperty.call(item, "value")) return item.value;
182
+ if (Object.prototype.hasOwnProperty.call(item, "label")) return item.label;
183
+ }
184
+ return item;
185
+ });
177
186
  if (rule.matchMode !== '$in' && rule.matchMode !== '$notIn' && rule.matchMode !== '$between' && rule.matchMode !== '$null' && rule.matchMode !== '$notNull') {
178
187
  values = values[0];
179
188
  }
@@ -533,7 +542,9 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
533
542
  type OverlayOption =
534
543
  | { id: string; kind: "field"; field: any }
535
544
  | { id: string; kind: "predefined"; predefined: any }
536
- | { id: string; kind: "saved"; saved: any };
545
+ | { id: string; kind: "saved"; saved: any }
546
+ | { id: string; kind: "custom" }
547
+ | { id: string; kind: "grouping" };
537
548
  type ManagedChipItem = {
538
549
  id: string;
539
550
  type: "saved" | "search" | "predefined" | "custom" | "grouping";
@@ -648,10 +659,17 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
648
659
  const [savedFilterQueryString, setSavedFilterQueryString] = useState<string>();
649
660
  const [showOverlay, setShowOverlay] = useState(false);
650
661
  const overlayRef = useRef<HTMLDivElement | null>(null);
662
+ const searchInputRef = useRef<HTMLInputElement | null>(null);
651
663
  const [showChipManager, setShowChipManager] = useState(false);
652
664
  const chipManagerRef = useRef<HTMLDivElement | null>(null);
653
665
  const chipManagerTriggerRef = useRef<HTMLButtonElement | null>(null);
654
666
 
667
+ const focusSearchInput = () => {
668
+ requestAnimationFrame(() => {
669
+ searchInputRef.current?.focus();
670
+ });
671
+ };
672
+
655
673
  useEffect(() => {
656
674
  if (focusedIndex >= 0 && showOverlay) {
657
675
  const activeElement = document.querySelector(`.solid-search-overlay-option-active`);
@@ -909,12 +927,20 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
909
927
  const fieldElements = extractFields(layoutChildren);
910
928
 
911
929
 
912
- const fieldsList = Object.entries(fieldsData ?? {}).map(([key, value]: any) => {
930
+ // Build one entry per layout column (not per field name), so multiple columns
931
+ // sharing the same field name (e.g. several viewMetadata columns with different
932
+ // searchFields/labels) each appear as a separate searchable option.
933
+ const seenKeys = new Set<string>();
934
+ const fieldsList: any[] = [];
935
+
936
+ // First pass: one entry per unique field name (for non-searchable / filter use)
937
+ Object.entries(fieldsData ?? {}).forEach(([key, value]: any) => {
913
938
  const viewFieldElement = fieldElements.find(
914
939
  (f: any) => f?.attrs?.name === key
915
940
  );
916
- return {
917
- name: value.displayName,
941
+ seenKeys.add(key);
942
+ fieldsList.push({
943
+ name: viewFieldElement?.attrs?.label ?? value.displayName,
918
944
  value: key,
919
945
  type: value.type,
920
946
  ormType: value.ormType,
@@ -922,7 +948,33 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
922
948
  searchField: viewFieldElement?.attrs?.searchField ?? null,
923
949
  isSearchable: viewFieldElement?.attrs?.isSearchable ?? false,
924
950
  relationType: value?.relationType ?? null,
925
- };
951
+ });
952
+ });
953
+
954
+ // Second pass: for any layout column that shares a field name but has a
955
+ // distinct searchField, add it as an additional searchable entry.
956
+ fieldElements.forEach((fieldElement: any) => {
957
+ const key = fieldElement?.attrs?.name;
958
+ const searchField = fieldElement?.attrs?.searchField;
959
+ const isSearchable = fieldElement?.attrs?.isSearchable ?? false;
960
+ if (!isSearchable || !searchField) return;
961
+ // Already covered by the first pass entry for this key?
962
+ const existingEntry = fieldsList.find(
963
+ (e: any) => e.value === key && e.searchField === searchField
964
+ );
965
+ if (existingEntry) return; // already in list
966
+ const value: any = (fieldsData ?? {})[key];
967
+ if (!value) return;
968
+ fieldsList.push({
969
+ name: fieldElement?.attrs?.label ?? value.displayName,
970
+ value: key,
971
+ type: value.type,
972
+ ormType: value.ormType,
973
+ matchMode: fieldElement?.attrs?.searchMatchMode,
974
+ searchField: searchField,
975
+ isSearchable: true,
976
+ relationType: value?.relationType ?? null,
977
+ });
926
978
  });
927
979
 
928
980
  const filterableFieldsList = fieldsList.filter((field: any) => {
@@ -1593,9 +1645,20 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
1593
1645
  kind: "saved" as const,
1594
1646
  saved: s,
1595
1647
  }));
1648
+ const custom: OverlayOption[] = [{
1649
+ id: "footer:custom",
1650
+ kind: "custom" as const,
1651
+ }];
1652
+ const grouping: OverlayOption[] =
1653
+ viewType === "tree"
1654
+ ? [{
1655
+ id: "footer:grouping",
1656
+ kind: "grouping" as const,
1657
+ }]
1658
+ : [];
1596
1659
 
1597
- return [...fields, ...predefined, ...saved];
1598
- }, [inputValue, searchableFields, predefinedSearches, savedFilters]);
1660
+ return [...fields, ...predefined, ...saved, ...custom, ...grouping];
1661
+ }, [inputValue, searchableFields, predefinedSearches, savedFilters, viewType]);
1599
1662
 
1600
1663
  const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {
1601
1664
  const currentValue = inputValue?.trim() || "";
@@ -1640,6 +1703,10 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
1640
1703
  handlePredefinedSearch(activeOption.predefined);
1641
1704
  } else if (activeOption?.kind === "saved") {
1642
1705
  applySavedFilter(activeOption.saved);
1706
+ } else if (activeOption?.kind === "custom") {
1707
+ openCustomFilterDialog();
1708
+ } else if (activeOption?.kind === "grouping") {
1709
+ openGroupingDialog();
1643
1710
  } else if (currentValue) {
1644
1711
  handleAddChip();
1645
1712
  setShowOverlay(false);
@@ -1822,6 +1889,7 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
1822
1889
  <li ref={chipsRef} className="solid-global-search-input-item">
1823
1890
  <div className="relative solid-global-search-element-wrapper">
1824
1891
  <SolidInput
1892
+ ref={searchInputRef}
1825
1893
  className="solid-global-search-input"
1826
1894
  value={inputValue || ""}
1827
1895
  placeholder="Search."
@@ -1845,9 +1913,14 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
1845
1913
  <SolidButton
1846
1914
  variant="outline"
1847
1915
  size="sm"
1916
+ onMouseDown={(e) => {
1917
+ // Preserve input focus so overlay keyboard navigation continues to work.
1918
+ e.preventDefault();
1919
+ }}
1848
1920
  onClick={() => {
1849
1921
  setShowChipManager(false);
1850
1922
  setShowOverlay(true);
1923
+ focusSearchInput();
1851
1924
  }}
1852
1925
  className="custom-filter-button solid-global-search-trigger"
1853
1926
  >
@@ -2035,8 +2108,12 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
2035
2108
  <div className="solid-search-overlay-footer">
2036
2109
  <button
2037
2110
  type="button"
2038
- className="px-3 py-2 flex flex-column solid-search-overlay-footer-action"
2111
+ className={`px-3 py-2 flex flex-column solid-search-overlay-footer-action ${overlayOptions[focusedIndex]?.id === "footer:custom" ? "solid-search-overlay-option-active" : ""}`}
2039
2112
  onClick={openCustomFilterDialog}
2113
+ onMouseEnter={() => {
2114
+ const optIndex = overlayOptions.findIndex((o) => o.id === "footer:custom");
2115
+ if (optIndex !== -1) setFocusedIndex(optIndex);
2116
+ }}
2040
2117
  >
2041
2118
  <div className="solid-search-overlay-footer-action-main">
2042
2119
  <div className="solid-search-overlay-panel-callout-icon">
@@ -2055,8 +2132,12 @@ export const SolidGlobalSearchElement = forwardRef(({ viewData, viewType, handle
2055
2132
  {viewType === "tree" && (
2056
2133
  <button
2057
2134
  type="button"
2058
- className="px-3 py-2 flex flex-column solid-search-overlay-footer-action solid-search-overlay-footer-action-secondary"
2135
+ className={`px-3 py-2 flex flex-column solid-search-overlay-footer-action solid-search-overlay-footer-action-secondary ${overlayOptions[focusedIndex]?.id === "footer:grouping" ? "solid-search-overlay-option-active" : ""}`}
2059
2136
  onClick={openGroupingDialog}
2137
+ onMouseEnter={() => {
2138
+ const optIndex = overlayOptions.findIndex((o) => o.id === "footer:grouping");
2139
+ if (optIndex !== -1) setFocusedIndex(optIndex);
2140
+ }}
2060
2141
  >
2061
2142
  <div className="solid-search-overlay-footer-action-main">
2062
2143
  <div className="solid-search-overlay-panel-callout-icon">
@@ -1 +1 @@
1
- {"version":3,"file":"SolidSaveCustomFilterForm.d.ts","sourceRoot":"","sources":["../../../../src/components/core/common/SolidSaveCustomFilterForm.tsx"],"names":[],"mappings":";AAIA,UAAU,8BAA8B;IACpC,sBAAsB,EAAE,GAAG,CAAC;IAC5B,gBAAgB,EAAE,CAAC,EAAG,IAAA,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,GAAG,CAAA;CACnB;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAmE9E,CAAC"}
1
+ {"version":3,"file":"SolidSaveCustomFilterForm.d.ts","sourceRoot":"","sources":["../../../../src/components/core/common/SolidSaveCustomFilterForm.tsx"],"names":[],"mappings":";AAIA,UAAU,8BAA8B;IACpC,sBAAsB,EAAE,GAAG,CAAC;IAC5B,gBAAgB,EAAE,CAAC,EAAG,IAAA,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,GAAG,CAAA;CACnB;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAkE9E,CAAC"}
@@ -32,6 +32,6 @@ export var SolidSaveCustomFilterForm = function (_a) {
32
32
  };
33
33
  handleSaveFilter(formData);
34
34
  };
35
- return (_jsxs("form", { onSubmit: handleSubmit, className: "solid-save-filter-form", children: [_jsxs("div", { className: "solid-save-filter-field", children: [_jsx("label", { htmlFor: "name", className: "solid-save-filter-label", children: "Name" }), _jsx(SolidInput, { id: "name", name: "name", placeholder: "Filter Title", value: formValues.name, onChange: handleChange, readOnly: currentSavedFilterData, className: "solid-save-filter-input" })] }), _jsxs("label", { htmlFor: "isPrivate", className: "solid-save-filter-checkbox-row", children: [_jsx("input", { id: "isPrivate", name: "isPrivate", type: "checkbox", className: "solid-save-filter-checkbox", checked: formValues.isPrivate, onChange: handleChange }), _jsxs("span", { className: "solid-save-filter-checkbox-copy", children: [_jsx("span", { className: "solid-save-filter-label", children: "Private Filter" }), _jsx("span", { className: "solid-save-filter-hint", children: "Only you will be able to access this saved filter." })] })] }), _jsxs("div", { className: "solid-save-filter-actions", children: [_jsx(SolidButton, { type: "submit", size: "sm", children: currentSavedFilterData ? "Update" : "Save" }), _jsx(SolidButton, { type: "button", size: "sm", variant: "outline", onClick: function () { return closeDialog(); }, children: "Cancel" })] })] }));
35
+ return (_jsxs("form", { onSubmit: handleSubmit, className: "solid-save-filter-form", children: [_jsxs("div", { className: "solid-save-filter-field", children: [_jsx("label", { htmlFor: "name", className: "solid-save-filter-label", children: "Name" }), _jsx(SolidInput, { id: "name", name: "name", placeholder: "Filter Title", value: formValues.name, onChange: handleChange, className: "solid-save-filter-input" })] }), _jsxs("label", { htmlFor: "isPrivate", className: "solid-save-filter-checkbox-row", children: [_jsx("input", { id: "isPrivate", name: "isPrivate", type: "checkbox", className: "solid-save-filter-checkbox", checked: formValues.isPrivate, onChange: handleChange }), _jsxs("span", { className: "solid-save-filter-checkbox-copy", children: [_jsx("span", { className: "solid-save-filter-label", children: "Private Filter" }), _jsx("span", { className: "solid-save-filter-hint", children: "Only you will be able to access this saved filter." })] })] }), _jsxs("div", { className: "solid-save-filter-actions", children: [_jsx(SolidButton, { type: "submit", size: "sm", children: currentSavedFilterData ? "Update" : "Save" }), _jsx(SolidButton, { type: "button", size: "sm", variant: "outline", onClick: function () { return closeDialog(); }, children: "Cancel" })] })] }));
36
36
  };
37
37
  //# sourceMappingURL=SolidSaveCustomFilterForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidSaveCustomFilterForm.js","sourceRoot":"","sources":["../../../../src/components/core/common/SolidSaveCustomFilterForm.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAQzD,MAAM,CAAC,IAAM,yBAAyB,GAA6C,UAAC,EAAyD;QAAvD,sBAAsB,4BAAA,EAAE,gBAAgB,sBAAA,EAAE,WAAW,iBAAA;IACjI,IAAA,KAA8B,QAAQ,CAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAxL,UAAU,QAAA,EAAE,aAAa,QAA+J,CAAC;IAEhM,IAAM,YAAY,GAAG,UAAC,CAAsC;QAClD,IAAA,KAAiC,CAAC,CAAC,MAAM,EAAvC,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,IAAI,UAAA,EAAE,OAAO,aAAa,CAAC;QAChD,aAAa,CAAC,UAAC,IAAI;;YAAK,OAAA,uBACjB,IAAI,gBACN,IAAI,IAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAC/C;QAHsB,CAGtB,CAAC,CAAC;IACR,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,CAAkB;QACpC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAM,QAAQ,GAAG;YACb,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAC7D,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,SAAS,EAAE,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;SACvD,CAAA;QACD,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,CACH,gBAAM,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC,wBAAwB,aAC5D,eAAK,SAAS,EAAC,yBAAyB,aACpC,gBAAO,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,yBAAyB,qBAAa,EACtE,KAAC,UAAU,IACP,EAAE,EAAC,MAAM,EACT,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,cAAc,EAC1B,KAAK,EAAE,UAAU,CAAC,IAAI,EACtB,QAAQ,EAAE,YAAY,EACtB,QAAQ,EAAE,sBAAsB,EAChC,SAAS,EAAC,yBAAyB,GACrC,IACA,EACN,iBAAO,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,gCAAgC,aACjE,gBACI,EAAE,EAAC,WAAW,EACd,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,UAAU,EACf,SAAS,EAAC,4BAA4B,EACtC,OAAO,EAAE,UAAU,CAAC,SAAS,EAC7B,QAAQ,EAAE,YAAY,GACxB,EACF,gBAAM,SAAS,EAAC,iCAAiC,aAC7C,eAAM,SAAS,EAAC,yBAAyB,+BAAsB,EAC/D,eAAM,SAAS,EAAC,wBAAwB,mEAA0D,IAC/F,IACH,EACR,eAAK,SAAS,EAAC,2BAA2B,aACtC,KAAC,WAAW,IACR,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,YAER,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GACjC,EACd,KAAC,WAAW,IACR,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,uBAGlB,IACZ,IACH,CACV,CAAC;AACN,CAAC,CAAC","sourcesContent":["import { useState } from \"react\";\nimport { SolidButton } from \"../../shad-cn-ui/SolidButton\";\nimport { SolidInput } from \"../../shad-cn-ui/SolidInput\";\n\ninterface SolidSaveCustomFilterFormProps {\n currentSavedFilterData: any,\n handleSaveFilter: ({ }) => void;\n closeDialog: any\n}\n\nexport const SolidSaveCustomFilterForm: React.FC<SolidSaveCustomFilterFormProps> = ({ currentSavedFilterData, handleSaveFilter, closeDialog }) => {\n const [formValues, setFormValues] = useState({ name: currentSavedFilterData ? currentSavedFilterData.name : \"\", isPrivate: currentSavedFilterData ? currentSavedFilterData.isPrivate : false });\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const { name, value, type, checked } = e.target;\n setFormValues((prev) => ({\n ...prev,\n [name]: type === \"checkbox\" ? checked : value,\n }));\n };\n\n const handleSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n const formData = {\n id: currentSavedFilterData ? currentSavedFilterData.id : null,\n name: formValues.name,\n isPrivate: formValues.isPrivate === true ? true : \"\",\n }\n handleSaveFilter(formData);\n };\n\n return (\n <form onSubmit={handleSubmit} className=\"solid-save-filter-form\">\n <div className=\"solid-save-filter-field\">\n <label htmlFor=\"name\" className=\"solid-save-filter-label\">Name</label>\n <SolidInput\n id=\"name\"\n name=\"name\"\n placeholder=\"Filter Title\"\n value={formValues.name}\n onChange={handleChange}\n readOnly={currentSavedFilterData}\n className=\"solid-save-filter-input\"\n />\n </div>\n <label htmlFor=\"isPrivate\" className=\"solid-save-filter-checkbox-row\">\n <input\n id=\"isPrivate\"\n name=\"isPrivate\"\n type=\"checkbox\"\n className=\"solid-save-filter-checkbox\"\n checked={formValues.isPrivate}\n onChange={handleChange}\n />\n <span className=\"solid-save-filter-checkbox-copy\">\n <span className=\"solid-save-filter-label\">Private Filter</span>\n <span className=\"solid-save-filter-hint\">Only you will be able to access this saved filter.</span>\n </span>\n </label>\n <div className=\"solid-save-filter-actions\">\n <SolidButton\n type=\"submit\"\n size=\"sm\"\n >\n {currentSavedFilterData ? \"Update\" : \"Save\"}\n </SolidButton>\n <SolidButton\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n onClick={() => closeDialog()}\n >\n Cancel\n </SolidButton>\n </div>\n </form>\n );\n};\n"]}
1
+ {"version":3,"file":"SolidSaveCustomFilterForm.js","sourceRoot":"","sources":["../../../../src/components/core/common/SolidSaveCustomFilterForm.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAQzD,MAAM,CAAC,IAAM,yBAAyB,GAA6C,UAAC,EAAyD;QAAvD,sBAAsB,4BAAA,EAAE,gBAAgB,sBAAA,EAAE,WAAW,iBAAA;IACjI,IAAA,KAA8B,QAAQ,CAAC,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAxL,UAAU,QAAA,EAAE,aAAa,QAA+J,CAAC;IAEhM,IAAM,YAAY,GAAG,UAAC,CAAsC;QAClD,IAAA,KAAiC,CAAC,CAAC,MAAM,EAAvC,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,IAAI,UAAA,EAAE,OAAO,aAAa,CAAC;QAChD,aAAa,CAAC,UAAC,IAAI;;YAAK,OAAA,uBACjB,IAAI,gBACN,IAAI,IAAG,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,OAC/C;QAHsB,CAGtB,CAAC,CAAC;IACR,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,CAAkB;QACpC,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAM,QAAQ,GAAG;YACb,EAAE,EAAE,sBAAsB,CAAC,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAC7D,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,SAAS,EAAE,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;SACvD,CAAA;QACD,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,OAAO,CACH,gBAAM,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAC,wBAAwB,aAC5D,eAAK,SAAS,EAAC,yBAAyB,aACpC,gBAAO,OAAO,EAAC,MAAM,EAAC,SAAS,EAAC,yBAAyB,qBAAa,EACtE,KAAC,UAAU,IACP,EAAE,EAAC,MAAM,EACT,IAAI,EAAC,MAAM,EACX,WAAW,EAAC,cAAc,EAC1B,KAAK,EAAE,UAAU,CAAC,IAAI,EACtB,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAC,yBAAyB,GACrC,IACA,EACN,iBAAO,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,gCAAgC,aACjE,gBACI,EAAE,EAAC,WAAW,EACd,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,UAAU,EACf,SAAS,EAAC,4BAA4B,EACtC,OAAO,EAAE,UAAU,CAAC,SAAS,EAC7B,QAAQ,EAAE,YAAY,GACxB,EACF,gBAAM,SAAS,EAAC,iCAAiC,aAC7C,eAAM,SAAS,EAAC,yBAAyB,+BAAsB,EAC/D,eAAM,SAAS,EAAC,wBAAwB,mEAA0D,IAC/F,IACH,EACR,eAAK,SAAS,EAAC,2BAA2B,aACtC,KAAC,WAAW,IACR,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,YAER,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GACjC,EACd,KAAC,WAAW,IACR,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,uBAGlB,IACZ,IACH,CACV,CAAC;AACN,CAAC,CAAC","sourcesContent":["import { useState } from \"react\";\nimport { SolidButton } from \"../../shad-cn-ui/SolidButton\";\nimport { SolidInput } from \"../../shad-cn-ui/SolidInput\";\n\ninterface SolidSaveCustomFilterFormProps {\n currentSavedFilterData: any,\n handleSaveFilter: ({ }) => void;\n closeDialog: any\n}\n\nexport const SolidSaveCustomFilterForm: React.FC<SolidSaveCustomFilterFormProps> = ({ currentSavedFilterData, handleSaveFilter, closeDialog }) => {\n const [formValues, setFormValues] = useState({ name: currentSavedFilterData ? currentSavedFilterData.name : \"\", isPrivate: currentSavedFilterData ? currentSavedFilterData.isPrivate : false });\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const { name, value, type, checked } = e.target;\n setFormValues((prev) => ({\n ...prev,\n [name]: type === \"checkbox\" ? checked : value,\n }));\n };\n\n const handleSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n const formData = {\n id: currentSavedFilterData ? currentSavedFilterData.id : null,\n name: formValues.name,\n isPrivate: formValues.isPrivate === true ? true : \"\",\n }\n handleSaveFilter(formData);\n };\n\n return (\n <form onSubmit={handleSubmit} className=\"solid-save-filter-form\">\n <div className=\"solid-save-filter-field\">\n <label htmlFor=\"name\" className=\"solid-save-filter-label\">Name</label>\n <SolidInput\n id=\"name\"\n name=\"name\"\n placeholder=\"Filter Title\"\n value={formValues.name}\n onChange={handleChange}\n className=\"solid-save-filter-input\"\n />\n </div>\n <label htmlFor=\"isPrivate\" className=\"solid-save-filter-checkbox-row\">\n <input\n id=\"isPrivate\"\n name=\"isPrivate\"\n type=\"checkbox\"\n className=\"solid-save-filter-checkbox\"\n checked={formValues.isPrivate}\n onChange={handleChange}\n />\n <span className=\"solid-save-filter-checkbox-copy\">\n <span className=\"solid-save-filter-label\">Private Filter</span>\n <span className=\"solid-save-filter-hint\">Only you will be able to access this saved filter.</span>\n </span>\n </label>\n <div className=\"solid-save-filter-actions\">\n <SolidButton\n type=\"submit\"\n size=\"sm\"\n >\n {currentSavedFilterData ? \"Update\" : \"Save\"}\n </SolidButton>\n <SolidButton\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n onClick={() => closeDialog()}\n >\n Cancel\n </SolidButton>\n </div>\n </form>\n );\n};\n"]}
@@ -39,7 +39,6 @@ export const SolidSaveCustomFilterForm: React.FC<SolidSaveCustomFilterFormProps>
39
39
  placeholder="Filter Title"
40
40
  value={formValues.name}
41
41
  onChange={handleChange}
42
- readOnly={currentSavedFilterData}
43
42
  className="solid-save-filter-input"
44
43
  />
45
44
  </div>
@@ -0,0 +1,4 @@
1
+ import type { EChartsOption } from "echarts";
2
+ export declare const resolveChartType: (definition: any) => "line" | "bar" | "pie" | "unknown";
3
+ export declare const toEChartsOption: (definition: any, runtimeData: any) => EChartsOption;
4
+ //# sourceMappingURL=echartsOptionMapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"echartsOptionMapper.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/mappers/echartsOptionMapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAY7C,eAAO,MAAM,gBAAgB,eAAgB,GAAG,KAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,SAM3E,CAAC;AAYF,eAAO,MAAM,eAAe,eAAgB,GAAG,eAAe,GAAG,KAAG,aAkDnE,CAAC"}
@@ -0,0 +1,79 @@
1
+ var readType = function (definition) {
2
+ var _a, _b, _c, _d, _e, _f;
3
+ var raw = (_f = (_e = (_d = (_b = (_a = definition === null || definition === void 0 ? void 0 : definition.visualization) === null || _a === void 0 ? void 0 : _a.type) !== null && _b !== void 0 ? _b : (_c = definition === null || definition === void 0 ? void 0 : definition.visualization) === null || _c === void 0 ? void 0 : _c.chartType) !== null && _d !== void 0 ? _d : definition === null || definition === void 0 ? void 0 : definition.type) !== null && _e !== void 0 ? _e : definition === null || definition === void 0 ? void 0 : definition.widgetType) !== null && _f !== void 0 ? _f : "";
4
+ return "".concat(raw).toLowerCase();
5
+ };
6
+ export var resolveChartType = function (definition) {
7
+ var type = readType(definition);
8
+ if (type.includes("line"))
9
+ return "line";
10
+ if (type.includes("bar"))
11
+ return "bar";
12
+ if (type.includes("pie") || type.includes("donut") || type.includes("doughnut"))
13
+ return "pie";
14
+ return "unknown";
15
+ };
16
+ var seriesFromRuntime = function (runtimeData, forcedType) {
17
+ var source = Array.isArray(runtimeData === null || runtimeData === void 0 ? void 0 : runtimeData.series) ? runtimeData.series : [];
18
+ return source.map(function (entry) {
19
+ var _a;
20
+ return ({
21
+ name: (_a = entry === null || entry === void 0 ? void 0 : entry.name) !== null && _a !== void 0 ? _a : "",
22
+ type: forcedType,
23
+ smooth: forcedType === "line",
24
+ data: Array.isArray(entry === null || entry === void 0 ? void 0 : entry.data) ? entry.data : [],
25
+ });
26
+ });
27
+ };
28
+ export var toEChartsOption = function (definition, runtimeData) {
29
+ var chartType = resolveChartType(definition);
30
+ if (chartType === "pie") {
31
+ var items = Array.isArray(runtimeData === null || runtimeData === void 0 ? void 0 : runtimeData.items) ? runtimeData.items : [];
32
+ return {
33
+ tooltip: { trigger: "item" },
34
+ legend: { top: 0, type: "scroll" },
35
+ series: [
36
+ {
37
+ type: "pie",
38
+ radius: ["42%", "70%"],
39
+ avoidLabelOverlap: true,
40
+ itemStyle: { borderRadius: 6, borderColor: "#fff", borderWidth: 1 },
41
+ label: { show: true, formatter: "{b}: {d}%" },
42
+ data: items.map(function (item) {
43
+ var _a, _b, _c;
44
+ return ({
45
+ name: (_b = (_a = item === null || item === void 0 ? void 0 : item.name) !== null && _a !== void 0 ? _a : item === null || item === void 0 ? void 0 : item.label) !== null && _b !== void 0 ? _b : "",
46
+ value: (_c = item === null || item === void 0 ? void 0 : item.value) !== null && _c !== void 0 ? _c : 0,
47
+ });
48
+ }),
49
+ },
50
+ ],
51
+ };
52
+ }
53
+ if (chartType === "line" || chartType === "bar") {
54
+ return {
55
+ tooltip: { trigger: "axis" },
56
+ legend: { top: 0, type: "scroll" },
57
+ grid: { left: 20, right: 20, bottom: 24, top: 36, containLabel: true },
58
+ xAxis: {
59
+ type: "category",
60
+ boundaryGap: chartType === "bar",
61
+ data: Array.isArray(runtimeData === null || runtimeData === void 0 ? void 0 : runtimeData.categories) ? runtimeData.categories : [],
62
+ axisLabel: {
63
+ hideOverlap: true,
64
+ },
65
+ },
66
+ yAxis: { type: "value" },
67
+ series: seriesFromRuntime(runtimeData, chartType),
68
+ };
69
+ }
70
+ return {
71
+ title: {
72
+ text: "Unsupported chart type",
73
+ left: "center",
74
+ top: "middle",
75
+ textStyle: { fontSize: 12, fontWeight: "normal", color: "#64748b" },
76
+ },
77
+ };
78
+ };
79
+ //# sourceMappingURL=echartsOptionMapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"echartsOptionMapper.js","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/mappers/echartsOptionMapper.ts"],"names":[],"mappings":"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","sourcesContent":["import type { EChartsOption } from \"echarts\";\n\nconst readType = (definition: any): string => {\n const raw =\n definition?.visualization?.type ??\n definition?.visualization?.chartType ??\n definition?.type ??\n definition?.widgetType ??\n \"\";\n return `${raw}`.toLowerCase();\n};\n\nexport const resolveChartType = (definition: any): \"line\" | \"bar\" | \"pie\" | \"unknown\" => {\n const type = readType(definition);\n if (type.includes(\"line\")) return \"line\";\n if (type.includes(\"bar\")) return \"bar\";\n if (type.includes(\"pie\") || type.includes(\"donut\") || type.includes(\"doughnut\")) return \"pie\";\n return \"unknown\";\n};\n\nconst seriesFromRuntime = (runtimeData: any, forcedType: \"line\" | \"bar\"): any[] => {\n const source = Array.isArray(runtimeData?.series) ? runtimeData.series : [];\n return source.map((entry: any) => ({\n name: entry?.name ?? \"\",\n type: forcedType,\n smooth: forcedType === \"line\",\n data: Array.isArray(entry?.data) ? entry.data : [],\n }));\n};\n\nexport const toEChartsOption = (definition: any, runtimeData: any): EChartsOption => {\n const chartType = resolveChartType(definition);\n\n if (chartType === \"pie\") {\n const items = Array.isArray(runtimeData?.items) ? runtimeData.items : [];\n return {\n tooltip: { trigger: \"item\" },\n legend: { top: 0, type: \"scroll\" },\n series: [\n {\n type: \"pie\",\n radius: [\"42%\", \"70%\"],\n avoidLabelOverlap: true,\n itemStyle: { borderRadius: 6, borderColor: \"#fff\", borderWidth: 1 },\n label: { show: true, formatter: \"{b}: {d}%\" },\n data: items.map((item: any) => ({\n name: item?.name ?? item?.label ?? \"\",\n value: item?.value ?? 0,\n })),\n },\n ],\n };\n }\n\n if (chartType === \"line\" || chartType === \"bar\") {\n return {\n tooltip: { trigger: \"axis\" },\n legend: { top: 0, type: \"scroll\" },\n grid: { left: 20, right: 20, bottom: 24, top: 36, containLabel: true },\n xAxis: {\n type: \"category\",\n boundaryGap: chartType === \"bar\",\n data: Array.isArray(runtimeData?.categories) ? runtimeData.categories : [],\n axisLabel: {\n hideOverlap: true,\n },\n },\n yAxis: { type: \"value\" },\n series: seriesFromRuntime(runtimeData, chartType),\n };\n }\n\n return {\n title: {\n text: \"Unsupported chart type\",\n left: \"center\",\n top: \"middle\",\n textStyle: { fontSize: 12, fontWeight: \"normal\", color: \"#64748b\" },\n },\n };\n};\n"]}
@@ -0,0 +1,81 @@
1
+ import type { EChartsOption } from "echarts";
2
+
3
+ const readType = (definition: any): string => {
4
+ const raw =
5
+ definition?.visualization?.type ??
6
+ definition?.visualization?.chartType ??
7
+ definition?.type ??
8
+ definition?.widgetType ??
9
+ "";
10
+ return `${raw}`.toLowerCase();
11
+ };
12
+
13
+ export const resolveChartType = (definition: any): "line" | "bar" | "pie" | "unknown" => {
14
+ const type = readType(definition);
15
+ if (type.includes("line")) return "line";
16
+ if (type.includes("bar")) return "bar";
17
+ if (type.includes("pie") || type.includes("donut") || type.includes("doughnut")) return "pie";
18
+ return "unknown";
19
+ };
20
+
21
+ const seriesFromRuntime = (runtimeData: any, forcedType: "line" | "bar"): any[] => {
22
+ const source = Array.isArray(runtimeData?.series) ? runtimeData.series : [];
23
+ return source.map((entry: any) => ({
24
+ name: entry?.name ?? "",
25
+ type: forcedType,
26
+ smooth: forcedType === "line",
27
+ data: Array.isArray(entry?.data) ? entry.data : [],
28
+ }));
29
+ };
30
+
31
+ export const toEChartsOption = (definition: any, runtimeData: any): EChartsOption => {
32
+ const chartType = resolveChartType(definition);
33
+
34
+ if (chartType === "pie") {
35
+ const items = Array.isArray(runtimeData?.items) ? runtimeData.items : [];
36
+ return {
37
+ tooltip: { trigger: "item" },
38
+ legend: { top: 0, type: "scroll" },
39
+ series: [
40
+ {
41
+ type: "pie",
42
+ radius: ["42%", "70%"],
43
+ avoidLabelOverlap: true,
44
+ itemStyle: { borderRadius: 6, borderColor: "#fff", borderWidth: 1 },
45
+ label: { show: true, formatter: "{b}: {d}%" },
46
+ data: items.map((item: any) => ({
47
+ name: item?.name ?? item?.label ?? "",
48
+ value: item?.value ?? 0,
49
+ })),
50
+ },
51
+ ],
52
+ };
53
+ }
54
+
55
+ if (chartType === "line" || chartType === "bar") {
56
+ return {
57
+ tooltip: { trigger: "axis" },
58
+ legend: { top: 0, type: "scroll" },
59
+ grid: { left: 20, right: 20, bottom: 24, top: 36, containLabel: true },
60
+ xAxis: {
61
+ type: "category",
62
+ boundaryGap: chartType === "bar",
63
+ data: Array.isArray(runtimeData?.categories) ? runtimeData.categories : [],
64
+ axisLabel: {
65
+ hideOverlap: true,
66
+ },
67
+ },
68
+ yAxis: { type: "value" },
69
+ series: seriesFromRuntime(runtimeData, chartType),
70
+ };
71
+ }
72
+
73
+ return {
74
+ title: {
75
+ text: "Unsupported chart type",
76
+ left: "center",
77
+ top: "middle",
78
+ textStyle: { fontSize: 12, fontWeight: "normal", color: "#64748b" },
79
+ },
80
+ };
81
+ };
@@ -0,0 +1,3 @@
1
+ import type { DashboardWidgetComponentProps } from "../../../../types/dashboard";
2
+ export declare function DefaultDashboardBarChartWidget(props: DashboardWidgetComponentProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DefaultDashboardBarChartWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardBarChartWidget.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAGjF,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,6BAA6B,2CAElF"}
@@ -0,0 +1,17 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { DefaultDashboardChartWidget } from "./DefaultDashboardChartWidget";
14
+ export function DefaultDashboardBarChartWidget(props) {
15
+ return _jsx(DefaultDashboardChartWidget, __assign({}, props));
16
+ }
17
+ //# sourceMappingURL=DefaultDashboardBarChartWidget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardBarChartWidget.js","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,MAAM,UAAU,8BAA8B,CAAC,KAAoC;IACjF,OAAO,KAAC,2BAA2B,eAAK,KAAK,EAAI,CAAC;AACpD,CAAC","sourcesContent":["import type { DashboardWidgetComponentProps } from \"../../../../types/dashboard\";\nimport { DefaultDashboardChartWidget } from \"./DefaultDashboardChartWidget\";\n\nexport function DefaultDashboardBarChartWidget(props: DashboardWidgetComponentProps) {\n return <DefaultDashboardChartWidget {...props} />;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import type { DashboardWidgetComponentProps } from "../../../../types/dashboard";
2
+ import { DefaultDashboardChartWidget } from "./DefaultDashboardChartWidget";
3
+
4
+ export function DefaultDashboardBarChartWidget(props: DashboardWidgetComponentProps) {
5
+ return <DefaultDashboardChartWidget {...props} />;
6
+ }
@@ -0,0 +1,3 @@
1
+ import type { DashboardWidgetComponentProps } from "../../../../types/dashboard";
2
+ export declare function DefaultDashboardChartWidget({ definition, runtime }: DashboardWidgetComponentProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DefaultDashboardChartWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardChartWidget.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardChartWidget.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAGjF,wBAAgB,2BAA2B,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,6BAA6B,2CAkDjG"}
@@ -0,0 +1,41 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEffect, useRef } from "react";
3
+ import ReactECharts from "echarts-for-react";
4
+ import { toEChartsOption } from "../mappers/echartsOptionMapper";
5
+ export function DefaultDashboardChartWidget(_a) {
6
+ var _b, _c;
7
+ var definition = _a.definition, runtime = _a.runtime;
8
+ var chartRef = useRef(null);
9
+ var containerRef = useRef(null);
10
+ var option = toEChartsOption(definition, (_c = (_b = runtime === null || runtime === void 0 ? void 0 : runtime.data) !== null && _b !== void 0 ? _b : runtime) !== null && _c !== void 0 ? _c : {});
11
+ useEffect(function () {
12
+ var _a, _b;
13
+ var resizeChart = function () {
14
+ var _a, _b, _c, _d;
15
+ try {
16
+ (_d = (_c = (_b = (_a = chartRef.current) === null || _a === void 0 ? void 0 : _a.getEchartsInstance) === null || _b === void 0 ? void 0 : _b.call(_a)) === null || _c === void 0 ? void 0 : _c.resize) === null || _d === void 0 ? void 0 : _d.call(_c, { width: "auto", height: "auto" });
17
+ }
18
+ catch (_e) {
19
+ // no-op: chart may not be ready yet
20
+ }
21
+ };
22
+ var observedElement = (_b = (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.closest(".grid-stack-item-content")) !== null && _b !== void 0 ? _b : containerRef.current;
23
+ var observer = typeof ResizeObserver !== "undefined" && observedElement
24
+ ? new ResizeObserver(function () { return resizeChart(); })
25
+ : null;
26
+ if (observer && observedElement) {
27
+ observer.observe(observedElement);
28
+ }
29
+ var rafId = window.requestAnimationFrame(resizeChart);
30
+ var timeoutId = window.setTimeout(resizeChart, 120);
31
+ var timeoutIdLong = window.setTimeout(resizeChart, 320);
32
+ return function () {
33
+ window.cancelAnimationFrame(rafId);
34
+ window.clearTimeout(timeoutId);
35
+ window.clearTimeout(timeoutIdLong);
36
+ observer === null || observer === void 0 ? void 0 : observer.disconnect();
37
+ };
38
+ }, [option]);
39
+ return (_jsx("div", { ref: containerRef, style: { width: "100%", height: "100%", minHeight: 240, flex: 1 }, children: _jsx(ReactECharts, { ref: chartRef, option: option, style: { width: "100%", height: "100%", minHeight: 240 }, notMerge: true, lazyUpdate: true, autoResize: true }) }));
40
+ }
41
+ //# sourceMappingURL=DefaultDashboardChartWidget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardChartWidget.js","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardChartWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,MAAM,UAAU,2BAA2B,CAAC,EAAsD;;QAApD,UAAU,gBAAA,EAAE,OAAO,aAAA;IAC/D,IAAM,QAAQ,GAAG,MAAM,CAAM,IAAI,CAAC,CAAC;IACnC,IAAM,YAAY,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACzD,IAAM,MAAM,GAAG,eAAe,CAAC,UAAU,EAAE,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,OAAO,mCAAI,EAAE,CAAC,CAAC;IAE3E,SAAS,CAAC;;QACR,IAAM,WAAW,GAAG;;YAClB,IAAI;gBACF,MAAA,MAAA,MAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,kBAAkB,kDAAI,0CAAE,MAAM,mDAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;aACvF;YAAC,WAAM;gBACN,oCAAoC;aACrC;QACH,CAAC,CAAC;QAEF,IAAM,eAAe,GACnB,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,OAAO,CAAC,0BAA0B,CAAuB,mCAC/E,YAAY,CAAC,OAAO,CAAC;QAEvB,IAAM,QAAQ,GAAG,OAAO,cAAc,KAAK,WAAW,IAAI,eAAe;YACvE,CAAC,CAAC,IAAI,cAAc,CAAC,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,CAAC;YACzC,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,QAAQ,IAAI,eAAe,EAAE;YAC/B,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;SACnC;QAED,IAAM,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;QACxD,IAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACtD,IAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAE1D,OAAO;YACL,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YACnC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,EAAE,CAAC;QACzB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,cAAK,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,YACvF,KAAC,YAAY,IACX,GAAG,EAAE,QAAQ,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,EACxD,QAAQ,QACR,UAAU,QACV,UAAU,SACV,GACE,CACP,CAAC;AACJ,CAAC","sourcesContent":["import { useEffect, useRef } from \"react\";\nimport ReactECharts from \"echarts-for-react\";\nimport type { DashboardWidgetComponentProps } from \"../../../../types/dashboard\";\nimport { toEChartsOption } from \"../mappers/echartsOptionMapper\";\n\nexport function DefaultDashboardChartWidget({ definition, runtime }: DashboardWidgetComponentProps) {\n const chartRef = useRef<any>(null);\n const containerRef = useRef<HTMLDivElement | null>(null);\n const option = toEChartsOption(definition, runtime?.data ?? runtime ?? {});\n\n useEffect(() => {\n const resizeChart = () => {\n try {\n chartRef.current?.getEchartsInstance?.()?.resize?.({ width: \"auto\", height: \"auto\" });\n } catch {\n // no-op: chart may not be ready yet\n }\n };\n\n const observedElement =\n containerRef.current?.closest(\".grid-stack-item-content\") as HTMLElement | null ??\n containerRef.current;\n\n const observer = typeof ResizeObserver !== \"undefined\" && observedElement\n ? new ResizeObserver(() => resizeChart())\n : null;\n\n if (observer && observedElement) {\n observer.observe(observedElement);\n }\n\n const rafId = window.requestAnimationFrame(resizeChart);\n const timeoutId = window.setTimeout(resizeChart, 120);\n const timeoutIdLong = window.setTimeout(resizeChart, 320);\n\n return () => {\n window.cancelAnimationFrame(rafId);\n window.clearTimeout(timeoutId);\n window.clearTimeout(timeoutIdLong);\n observer?.disconnect();\n };\n }, [option]);\n\n return (\n <div ref={containerRef} style={{ width: \"100%\", height: \"100%\", minHeight: 240, flex: 1 }}>\n <ReactECharts\n ref={chartRef}\n option={option}\n style={{ width: \"100%\", height: \"100%\", minHeight: 240 }}\n notMerge\n lazyUpdate\n autoResize\n />\n </div>\n );\n}\n"]}
@@ -0,0 +1,56 @@
1
+ import { useEffect, useRef } from "react";
2
+ import ReactECharts from "echarts-for-react";
3
+ import type { DashboardWidgetComponentProps } from "../../../../types/dashboard";
4
+ import { toEChartsOption } from "../mappers/echartsOptionMapper";
5
+
6
+ export function DefaultDashboardChartWidget({ definition, runtime }: DashboardWidgetComponentProps) {
7
+ const chartRef = useRef<any>(null);
8
+ const containerRef = useRef<HTMLDivElement | null>(null);
9
+ const option = toEChartsOption(definition, runtime?.data ?? runtime ?? {});
10
+
11
+ useEffect(() => {
12
+ const resizeChart = () => {
13
+ try {
14
+ chartRef.current?.getEchartsInstance?.()?.resize?.({ width: "auto", height: "auto" });
15
+ } catch {
16
+ // no-op: chart may not be ready yet
17
+ }
18
+ };
19
+
20
+ const observedElement =
21
+ containerRef.current?.closest(".grid-stack-item-content") as HTMLElement | null ??
22
+ containerRef.current;
23
+
24
+ const observer = typeof ResizeObserver !== "undefined" && observedElement
25
+ ? new ResizeObserver(() => resizeChart())
26
+ : null;
27
+
28
+ if (observer && observedElement) {
29
+ observer.observe(observedElement);
30
+ }
31
+
32
+ const rafId = window.requestAnimationFrame(resizeChart);
33
+ const timeoutId = window.setTimeout(resizeChart, 120);
34
+ const timeoutIdLong = window.setTimeout(resizeChart, 320);
35
+
36
+ return () => {
37
+ window.cancelAnimationFrame(rafId);
38
+ window.clearTimeout(timeoutId);
39
+ window.clearTimeout(timeoutIdLong);
40
+ observer?.disconnect();
41
+ };
42
+ }, [option]);
43
+
44
+ return (
45
+ <div ref={containerRef} style={{ width: "100%", height: "100%", minHeight: 240, flex: 1 }}>
46
+ <ReactECharts
47
+ ref={chartRef}
48
+ option={option}
49
+ style={{ width: "100%", height: "100%", minHeight: 240 }}
50
+ notMerge
51
+ lazyUpdate
52
+ autoResize
53
+ />
54
+ </div>
55
+ );
56
+ }
@@ -0,0 +1,3 @@
1
+ import type { DashboardWidgetComponentProps } from "../../../../types/dashboard";
2
+ export declare function DefaultDashboardKpiWidget({ runtime }: DashboardWidgetComponentProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=DefaultDashboardKpiWidget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardKpiWidget.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardKpiWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAEjF,wBAAgB,yBAAyB,CAAC,EAAE,OAAO,EAAE,EAAE,6BAA6B,2CAgBnF"}
@@ -0,0 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export function DefaultDashboardKpiWidget(_a) {
3
+ var _b, _c, _d, _e, _f;
4
+ var runtime = _a.runtime;
5
+ var value = (_d = (_c = (_b = runtime === null || runtime === void 0 ? void 0 : runtime.data) === null || _b === void 0 ? void 0 : _b.value) !== null && _c !== void 0 ? _c : runtime === null || runtime === void 0 ? void 0 : runtime.value) !== null && _d !== void 0 ? _d : "--";
6
+ var suffix = (_f = (_e = runtime === null || runtime === void 0 ? void 0 : runtime.uiHints) === null || _e === void 0 ? void 0 : _e.suffix) !== null && _f !== void 0 ? _f : "";
7
+ var isMobileViewport = typeof window !== "undefined" && window.innerWidth < 768;
8
+ return (_jsx("div", { style: {
9
+ fontSize: isMobileViewport ? "1.55rem" : "1.9rem",
10
+ fontWeight: 700,
11
+ lineHeight: 1.1,
12
+ }, children: "".concat(value).concat(suffix) }));
13
+ }
14
+ //# sourceMappingURL=DefaultDashboardKpiWidget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultDashboardKpiWidget.js","sourceRoot":"","sources":["../../../../../src/components/core/dashboard/widgets/DefaultDashboardKpiWidget.tsx"],"names":[],"mappings":";AAEA,MAAM,UAAU,yBAAyB,CAAC,EAA0C;;QAAxC,OAAO,aAAA;IACjD,IAAM,KAAK,GAAG,MAAA,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,KAAK,mCAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,IAAI,CAAC;IAC7D,IAAM,MAAM,GAAG,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,0CAAE,MAAM,mCAAI,EAAE,CAAC;IAC9C,IAAM,gBAAgB,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC;IAElF,OAAO,CACL,cACE,KAAK,EAAE;YACL,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;YACjD,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,GAAG;SAChB,YAEA,UAAG,KAAK,SAAG,MAAM,CAAE,GAChB,CACP,CAAC;AACJ,CAAC","sourcesContent":["import type { DashboardWidgetComponentProps } from \"../../../../types/dashboard\";\n\nexport function DefaultDashboardKpiWidget({ runtime }: DashboardWidgetComponentProps) {\n const value = runtime?.data?.value ?? runtime?.value ?? \"--\";\n const suffix = runtime?.uiHints?.suffix ?? \"\";\n const isMobileViewport = typeof window !== \"undefined\" && window.innerWidth < 768;\n\n return (\n <div\n style={{\n fontSize: isMobileViewport ? \"1.55rem\" : \"1.9rem\",\n fontWeight: 700,\n lineHeight: 1.1,\n }}\n >\n {`${value}${suffix}`}\n </div>\n );\n}\n"]}