@solidstarters/solid-core-ui 1.1.211 → 1.1.212

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 (373) hide show
  1. package/dist/components/Svg/DevDocs.tsx +9 -0
  2. package/dist/components/Svg/DocsSvg.tsx +9 -0
  3. package/dist/components/Svg/ExcelSvg.tsx +15 -0
  4. package/dist/components/Svg/FieldSvg.tsx +9 -0
  5. package/dist/components/Svg/FileSvg.tsx +18 -0
  6. package/dist/components/Svg/HomePageModuleSvg.tsx +179 -0
  7. package/dist/components/Svg/ModelSvg.tsx +9 -0
  8. package/dist/components/Svg/ModuleSvg.tsx +9 -0
  9. package/dist/components/Svg/PDFSvg.tsx +15 -0
  10. package/dist/components/Svg/RightArrowSvg.tsx +9 -0
  11. package/dist/components/Svg/SettingsSvg.tsx +9 -0
  12. package/dist/components/auth/AuthLayout.tsx +223 -0
  13. package/dist/components/auth/ForgotPasswordThankYou.tsx +33 -0
  14. package/dist/components/auth/GoogleAuthChecking.tsx +63 -0
  15. package/dist/components/auth/SolidChangeForcePassword.tsx +222 -0
  16. package/dist/components/auth/SolidForgotPassword.tsx +127 -0
  17. package/dist/components/auth/SolidInitialLoginOtp.tsx +271 -0
  18. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +218 -0
  19. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  20. package/dist/components/auth/SolidLogin.js +14 -8
  21. package/dist/components/auth/SolidLogin.js.map +1 -1
  22. package/dist/components/auth/SolidLogin.tsx +428 -0
  23. package/dist/components/auth/SolidOTPVerify.tsx +133 -0
  24. package/dist/components/auth/SolidRegister.tsx +454 -0
  25. package/dist/components/auth/SolidResetPassword.tsx +194 -0
  26. package/dist/components/common/AuthBanner.tsx +41 -0
  27. package/dist/components/common/AutoCompleteField.tsx +79 -0
  28. package/dist/components/common/BackButton.tsx +72 -0
  29. package/dist/components/common/CancelButton.tsx +61 -0
  30. package/dist/components/common/CodeEditor.tsx +38 -0
  31. package/dist/components/common/CreateButton.tsx +17 -0
  32. package/dist/components/common/DownloadProgressToast.tsx +55 -0
  33. package/dist/components/common/DropzonePlaceholder.tsx +31 -0
  34. package/dist/components/common/DropzoneUpload.tsx +11 -0
  35. package/dist/components/common/FileReaderExt.tsx +20 -0
  36. package/dist/components/common/GeneralSettings.tsx +1225 -0
  37. package/dist/components/common/HeaderDynamicTitles.tsx +13 -0
  38. package/dist/components/common/MarkdownViewer.tsx +84 -0
  39. package/dist/components/common/MultipleSelectAutoCompleteField.tsx +64 -0
  40. package/dist/components/common/NotFound.tsx +22 -0
  41. package/dist/components/common/SingleSelectAutoCompleteField.tsx +73 -0
  42. package/dist/components/common/SocialMediaLogin.tsx +53 -0
  43. package/dist/components/common/SolidAdmin.tsx +6 -0
  44. package/dist/components/common/SolidBreadcrumb.tsx +129 -0
  45. package/dist/components/common/SolidExport.tsx +563 -0
  46. package/dist/components/common/SolidExportStepper.tsx +135 -0
  47. package/dist/components/common/SolidFieldTooltip.tsx +23 -0
  48. package/dist/components/common/SolidFormHeader.tsx +25 -0
  49. package/dist/components/common/SolidFormStepper.tsx +350 -0
  50. package/dist/components/common/SolidModuleHome.tsx +128 -0
  51. package/dist/components/common/SolidPopupContainer.tsx +37 -0
  52. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.tsx +45 -0
  53. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.tsx +45 -0
  54. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.tsx +20 -0
  55. package/dist/components/common/SolidSettings/SettingsImageRemoveButton.tsx +15 -0
  56. package/dist/components/common/SolidSettings/SolidUploadedImage.tsx +16 -0
  57. package/dist/components/common/SolidThemeLink.tsx +6 -0
  58. package/dist/components/common/SolidThemeProvider.tsx +44 -0
  59. package/dist/components/common/StepperArrows/ActiveArrowStep.tsx +18 -0
  60. package/dist/components/common/StepperArrows/ActiveBeforeStepArrow.tsx +18 -0
  61. package/dist/components/common/StepperArrows/InactiveStepArrow.tsx +19 -0
  62. package/dist/components/common/error.tsx +30 -0
  63. package/dist/components/common/useHandleFormCustomButtonClick.ts +40 -0
  64. package/dist/components/common/useHandleListCustomButtonClick.ts +42 -0
  65. package/dist/components/core/chatter/SolidChatter.tsx +248 -0
  66. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +35 -0
  67. package/dist/components/core/chatter/SolidChatterCustomMessage.tsx +46 -0
  68. package/dist/components/core/chatter/SolidChatterDateDivider.tsx +16 -0
  69. package/dist/components/core/chatter/SolidChatterHeader.tsx +218 -0
  70. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +163 -0
  71. package/dist/components/core/chatter/SolidMessageComposer.tsx +146 -0
  72. package/dist/components/core/common/AvatarWidget.tsx +55 -0
  73. package/dist/components/core/common/DateFieldViewComponent.tsx +36 -0
  74. package/dist/components/core/common/FilterComponent.tsx +458 -0
  75. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
  76. package/dist/components/core/common/PDFViewer.tsx +117 -0
  77. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.tsx +89 -0
  78. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +188 -0
  79. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +139 -0
  80. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx +311 -0
  81. package/dist/components/core/common/SolidCreateButton.tsx +48 -0
  82. package/dist/components/core/common/SolidGenericImport/DocumentSvg.tsx +15 -0
  83. package/dist/components/core/common/SolidGenericImport/SolidGenericImport.tsx +64 -0
  84. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +125 -0
  85. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.tsx +122 -0
  86. package/dist/components/core/common/SolidGenericImport/SolidImportStepper.tsx +217 -0
  87. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +205 -0
  88. package/dist/components/core/common/SolidGenericImport/SolidImportTransactionStatus.tsx +158 -0
  89. package/dist/components/core/common/SolidGenericImport/SolidImportWrapper.tsx +29 -0
  90. package/dist/components/core/common/SolidGlobalSearchElement.tsx +1470 -0
  91. package/dist/components/core/common/SolidLayoutViews.tsx +87 -0
  92. package/dist/components/core/common/SolidListViewOptions.tsx +31 -0
  93. package/dist/components/core/common/SolidLoaders/SolidCircularLoader.tsx +7 -0
  94. package/dist/components/core/common/SolidPasswordHelperText.tsx +34 -0
  95. package/dist/components/core/common/SolidSaveCustomFilterForm.tsx +75 -0
  96. package/dist/components/core/common/SolidSearchBox.tsx +17 -0
  97. package/dist/components/core/common/SolidViewLayoutManager.ts +421 -0
  98. package/dist/components/core/common/SolidXAiIframe.tsx +77 -0
  99. package/dist/components/core/dashboard/SolidDashboard.tsx +332 -0
  100. package/dist/components/core/dashboard/SolidDashboardBody.tsx +117 -0
  101. package/dist/components/core/dashboard/SolidDashboardFilterRequired.tsx +28 -0
  102. package/dist/components/core/dashboard/SolidDashboardHeader.tsx +10 -0
  103. package/dist/components/core/dashboard/SolidDashboardLoading.tsx +55 -0
  104. package/dist/components/core/dashboard/SolidDashboardNotAvailable.tsx +32 -0
  105. package/dist/components/core/dashboard/SolidDashboardRenderError.tsx +29 -0
  106. package/dist/components/core/dashboard/SolidDashboardVariable.tsx +256 -0
  107. package/dist/components/core/dashboard/SolidQuestionRenderer.tsx +78 -0
  108. package/dist/components/core/dashboard/chart-renderers/ChartJsRenderer.tsx +18 -0
  109. package/dist/components/core/dashboard/chart-renderers/PrimeReactDatatableRenderer.tsx +54 -0
  110. package/dist/components/core/dashboard/chart-renderers/init-chartjs.ts +25 -0
  111. package/dist/components/core/dashboard/dashboard-utils.ts +39 -0
  112. package/dist/components/core/extension/solid-core/CustomIcon/StatusIcon.tsx +17 -0
  113. package/dist/components/core/extension/solid-core/dashboardQuestion/ChartFormPreviewWidget.tsx +36 -0
  114. package/dist/components/core/extension/solid-core/emailTemplate/emailFormTypeChangeHandler.ts +18 -0
  115. package/dist/components/core/extension/solid-core/emailTemplate/emailFormTypeLoad.ts +18 -0
  116. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +114 -0
  117. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +213 -0
  118. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx +138 -0
  119. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +209 -0
  120. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +131 -0
  121. package/dist/components/core/field/FieldListViewData.tsx +313 -0
  122. package/dist/components/core/filter/SolidBooleanFilterElement.tsx +30 -0
  123. package/dist/components/core/filter/SolidFilterFields.tsx +131 -0
  124. package/dist/components/core/filter/SolidManyToManyFilterElement.tsx +64 -0
  125. package/dist/components/core/filter/SolidManyToOneFilterElement.tsx +61 -0
  126. package/dist/components/core/filter/SolidSelectionDynamicFilterElement.tsx +50 -0
  127. package/dist/components/core/filter/SolidSelectionStaticFilterElement.tsx +32 -0
  128. package/dist/components/core/filter/SolidVarInputsFilterElement.tsx +209 -0
  129. package/dist/components/core/filter/fields/SolidBigintField.tsx +9 -0
  130. package/dist/components/core/filter/fields/SolidBooleanField.tsx +68 -0
  131. package/dist/components/core/filter/fields/SolidComputedField.tsx +23 -0
  132. package/dist/components/core/filter/fields/SolidDateField.tsx +63 -0
  133. package/dist/components/core/filter/fields/SolidDatetimeField.tsx +54 -0
  134. package/dist/components/core/filter/fields/SolidDecimalField.tsx +9 -0
  135. package/dist/components/core/filter/fields/SolidExternalIdField.tsx +52 -0
  136. package/dist/components/core/filter/fields/SolidFloatField.tsx +9 -0
  137. package/dist/components/core/filter/fields/SolidIdField.tsx +46 -0
  138. package/dist/components/core/filter/fields/SolidIntField.tsx +61 -0
  139. package/dist/components/core/filter/fields/SolidLongTextField.tsx +9 -0
  140. package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +60 -0
  141. package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +62 -0
  142. package/dist/components/core/filter/fields/SolidRelationField.tsx +17 -0
  143. package/dist/components/core/filter/fields/SolidRichTextField.tsx +9 -0
  144. package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +52 -0
  145. package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +54 -0
  146. package/dist/components/core/filter/fields/SolidShortTextField.tsx +60 -0
  147. package/dist/components/core/filter/fields/SolidTimeField.tsx +48 -0
  148. package/dist/components/core/filter/fields/SolidUuidField.tsx +51 -0
  149. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.tsx +62 -0
  150. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +84 -0
  151. package/dist/components/core/form/SolidFormActionHeader.tsx +497 -0
  152. package/dist/components/core/form/SolidFormFieldRender.tsx +53 -0
  153. package/dist/components/core/form/SolidFormFieldRenderExtension.tsx +26 -0
  154. package/dist/components/core/form/SolidFormFooter.tsx +162 -0
  155. package/dist/components/core/form/SolidFormLayouts.tsx +104 -0
  156. package/dist/components/core/form/SolidFormUserViewLayout.tsx +84 -0
  157. package/dist/components/core/form/SolidFormView.tsx +1856 -0
  158. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.tsx +52 -0
  159. package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +52 -0
  160. package/dist/components/core/form/SolidFormViewShimmerLoading.tsx +109 -0
  161. package/dist/components/core/form/fields/ISolidField.tsx +71 -0
  162. package/dist/components/core/form/fields/SolidBooleanField.tsx +434 -0
  163. package/dist/components/core/form/fields/SolidDateField.tsx +247 -0
  164. package/dist/components/core/form/fields/SolidDateTimeField.tsx +229 -0
  165. package/dist/components/core/form/fields/SolidDecimalField.tsx +171 -0
  166. package/dist/components/core/form/fields/SolidEmailField.tsx +176 -0
  167. package/dist/components/core/form/fields/SolidIntegerField.tsx +282 -0
  168. package/dist/components/core/form/fields/SolidJsonField.tsx +185 -0
  169. package/dist/components/core/form/fields/SolidLongTextField.tsx +618 -0
  170. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +663 -0
  171. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +547 -0
  172. package/dist/components/core/form/fields/SolidPasswordField.tsx +390 -0
  173. package/dist/components/core/form/fields/SolidRelationField.tsx +56 -0
  174. package/dist/components/core/form/fields/SolidRichTextField.tsx +188 -0
  175. package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +340 -0
  176. package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +462 -0
  177. package/dist/components/core/form/fields/SolidShortTextField.tsx +399 -0
  178. package/dist/components/core/form/fields/SolidTimeField.tsx +245 -0
  179. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +453 -0
  180. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +1036 -0
  181. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +627 -0
  182. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +38 -0
  183. package/dist/components/core/form/fields/relations/widgets/helpers/useRelationEntityHandler.ts +64 -0
  184. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.tsx +135 -0
  185. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.tsx +144 -0
  186. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +265 -0
  187. package/dist/components/core/form/fields/widgets/SolidIconViewWidget.tsx +32 -0
  188. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +50 -0
  189. package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.tsx +222 -0
  190. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.tsx +70 -0
  191. package/dist/components/core/form/widgets/CustomHtml.tsx +20 -0
  192. package/dist/components/core/kanban/KanbanBoard.tsx +150 -0
  193. package/dist/components/core/kanban/KanbanCard.tsx +279 -0
  194. package/dist/components/core/kanban/KanbanColumn.tsx +139 -0
  195. package/dist/components/core/kanban/KanbanUserViewLayout.tsx +84 -0
  196. package/dist/components/core/kanban/SolidKanbanView.tsx +894 -0
  197. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +154 -0
  198. package/dist/components/core/kanban/SolidKanbanViewFields.tsx +164 -0
  199. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +59 -0
  200. package/dist/components/core/kanban/SolidSelectionDynamicFilterElement.tsx +50 -0
  201. package/dist/components/core/kanban/SolidSelectionStaticFilterElement.tsx +32 -0
  202. package/dist/components/core/kanban/SolidVarInputsFilterElement.tsx +184 -0
  203. package/dist/components/core/kanban/kanban-fields/SolidBigintKanbanField.tsx +9 -0
  204. package/dist/components/core/kanban/kanban-fields/SolidBooleanKanbanField.tsx +16 -0
  205. package/dist/components/core/kanban/kanban-fields/SolidComputedKanbanField.tsx +23 -0
  206. package/dist/components/core/kanban/kanban-fields/SolidDateKanbanField.tsx +14 -0
  207. package/dist/components/core/kanban/kanban-fields/SolidDatetimeKanbanField.tsx +13 -0
  208. package/dist/components/core/kanban/kanban-fields/SolidDecimalKanbanField.tsx +9 -0
  209. package/dist/components/core/kanban/kanban-fields/SolidExternalIdKanbanField.tsx +12 -0
  210. package/dist/components/core/kanban/kanban-fields/SolidFloatKanbanField.tsx +9 -0
  211. package/dist/components/core/kanban/kanban-fields/SolidIdKanbanField.tsx +14 -0
  212. package/dist/components/core/kanban/kanban-fields/SolidIntKanbanField.tsx +20 -0
  213. package/dist/components/core/kanban/kanban-fields/SolidLongTextKanbanField.tsx +9 -0
  214. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +140 -0
  215. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +164 -0
  216. package/dist/components/core/kanban/kanban-fields/SolidRelationKanbanField.tsx +13 -0
  217. package/dist/components/core/kanban/kanban-fields/SolidRichTextKanbanField.tsx +9 -0
  218. package/dist/components/core/kanban/kanban-fields/SolidSelectionDynamicKanbanField.tsx +14 -0
  219. package/dist/components/core/kanban/kanban-fields/SolidSelectionStaticKanbanField.tsx +14 -0
  220. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +121 -0
  221. package/dist/components/core/kanban/kanban-fields/SolidTimeKanbanField.tsx +12 -0
  222. package/dist/components/core/kanban/kanban-fields/SolidUuidKanbanField.tsx +13 -0
  223. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +16 -0
  224. package/dist/components/core/list/ListViewRowActionPopup.tsx +41 -0
  225. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +242 -0
  226. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +111 -0
  227. package/dist/components/core/list/SolidListView.tsx +2007 -0
  228. package/dist/components/core/list/SolidListViewColumn.tsx +165 -0
  229. package/dist/components/core/list/SolidListViewConfigure.tsx +339 -0
  230. package/dist/components/core/list/SolidListViewHeaderButton.tsx +31 -0
  231. package/dist/components/core/list/SolidListViewHeaderContextMenuButton.tsx +30 -0
  232. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +41 -0
  233. package/dist/components/core/list/SolidListViewShimmerLoading.tsx +78 -0
  234. package/dist/components/core/list/SolidListingHeader.tsx +42 -0
  235. package/dist/components/core/list/SolidManyToOneFilterElement.tsx +60 -0
  236. package/dist/components/core/list/SolidSelectionDynamicFilterElement.tsx +50 -0
  237. package/dist/components/core/list/SolidSelectionStaticFilterElement.tsx +32 -0
  238. package/dist/components/core/list/SolidTableRowCell.tsx +35 -0
  239. package/dist/components/core/list/SolidVarInputsFilterElement.tsx +184 -0
  240. package/dist/components/core/list/columns/SolidBigintColumn.tsx +9 -0
  241. package/dist/components/core/list/columns/SolidBooleanColumn.tsx +90 -0
  242. package/dist/components/core/list/columns/SolidComputedColumn.tsx +27 -0
  243. package/dist/components/core/list/columns/SolidDateColumn.tsx +90 -0
  244. package/dist/components/core/list/columns/SolidDatetimeColumn.tsx +79 -0
  245. package/dist/components/core/list/columns/SolidDecimalColumn.tsx +9 -0
  246. package/dist/components/core/list/columns/SolidExternalIdColumn.tsx +80 -0
  247. package/dist/components/core/list/columns/SolidFloatColumn.tsx +9 -0
  248. package/dist/components/core/list/columns/SolidIdColumn.tsx +79 -0
  249. package/dist/components/core/list/columns/SolidIntColumn.tsx +87 -0
  250. package/dist/components/core/list/columns/SolidLongTextColumn.tsx +9 -0
  251. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +301 -0
  252. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +170 -0
  253. package/dist/components/core/list/columns/SolidRelationColumn.tsx +21 -0
  254. package/dist/components/core/list/columns/SolidRichTextColumn.tsx +9 -0
  255. package/dist/components/core/list/columns/SolidSelectionDynamicColumn.tsx +80 -0
  256. package/dist/components/core/list/columns/SolidSelectionStaticColumn.tsx +81 -0
  257. package/dist/components/core/list/columns/SolidShortTextColumn.tsx +160 -0
  258. package/dist/components/core/list/columns/SolidTimeColumn.tsx +78 -0
  259. package/dist/components/core/list/columns/SolidUuidColumn.tsx +79 -0
  260. package/dist/components/core/list/columns/relations/SolidRelationManyToManyColumn.tsx +106 -0
  261. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +117 -0
  262. package/dist/components/core/list/columns/relations/SolidRelationOneToManyColumn.tsx +110 -0
  263. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.tsx +30 -0
  264. package/dist/components/core/list/widgets/SolidManyToOneRelationAvatarListWidget.tsx +30 -0
  265. package/dist/components/core/list/widgets/SolidShortTextAvatarWidget.tsx +70 -0
  266. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +21 -0
  267. package/dist/components/core/locales/SolidChatterLocaleTabView.tsx +91 -0
  268. package/dist/components/core/locales/SolidLocale.tsx +127 -0
  269. package/dist/components/core/model/CreateModel.tsx +495 -0
  270. package/dist/components/core/model/FieldMetaData.tsx +263 -0
  271. package/dist/components/core/model/FieldMetaDataForm.tsx +3509 -0
  272. package/dist/components/core/model/FieldSelector.tsx +62 -0
  273. package/dist/components/core/model/ModelListViewData.tsx +384 -0
  274. package/dist/components/core/model/ModelMetaData.tsx +921 -0
  275. package/dist/components/core/module/CreateModule.tsx +617 -0
  276. package/dist/components/core/module/ModuleListViewData.tsx +431 -0
  277. package/dist/components/core/solid-ai/SolidAiMainWrapper.tsx +8 -0
  278. package/dist/components/core/solid-ai/SolidXAIIcon.tsx +37 -0
  279. package/dist/components/core/users/CreateUser.tsx +467 -0
  280. package/dist/components/core/users/CreateUserRole.tsx +212 -0
  281. package/dist/components/core/users/UserListView.tsx +376 -0
  282. package/dist/components/layout/AdminLayout.tsx +57 -0
  283. package/dist/components/layout/AdminSidebar.tsx +65 -0
  284. package/dist/components/layout/AppConfig.tsx +104 -0
  285. package/dist/components/layout/AppSidebar.tsx +232 -0
  286. package/dist/components/layout/ButtonLoader.tsx +7 -0
  287. package/dist/components/layout/CustomPagination.tsx +55 -0
  288. package/dist/components/layout/DashboardHeader.tsx +89 -0
  289. package/dist/components/layout/FilterMenu.tsx +122 -0
  290. package/dist/components/layout/Footer.tsx +13 -0
  291. package/dist/components/layout/GlobalSearch.tsx +37 -0
  292. package/dist/components/layout/Header.tsx +8 -0
  293. package/dist/components/layout/Layout.tsx +205 -0
  294. package/dist/components/layout/ListingHeader.tsx +204 -0
  295. package/dist/components/layout/Loader.tsx +16 -0
  296. package/dist/components/layout/UserSidebar.tsx +53 -0
  297. package/dist/components/layout/context/layoutcontext.tsx +52 -0
  298. package/dist/components/layout/navbar-one.tsx +258 -0
  299. package/dist/components/layout/navbar-two-menu.tsx +72 -0
  300. package/dist/components/layout/navbar-two.tsx +37 -0
  301. package/dist/components/layout/user-profile-menu.tsx +213 -0
  302. package/dist/components/layout/user-profile.tsx +7 -0
  303. package/dist/components/modelsComponents/filterIcon.tsx +9 -0
  304. package/dist/constants/error-messages.ts +238 -0
  305. package/dist/declarations.d.ts +22 -0
  306. package/dist/helpers/AppTitle.tsx +12 -0
  307. package/dist/helpers/ToastContainer.tsx +94 -0
  308. package/dist/helpers/autoCompleteVirtualScroll.ts +41 -0
  309. package/dist/helpers/countries.tsx +260 -0
  310. package/dist/helpers/downloadFileWithProgress.ts +91 -0
  311. package/dist/helpers/downloadMediaFile.tsx +21 -0
  312. package/dist/helpers/getAcceptedFileTypes.tsx +22 -0
  313. package/dist/helpers/getRandomColors.tsx +68 -0
  314. package/dist/helpers/helpers.ts +61 -0
  315. package/dist/helpers/hydrateRelationRules.ts +120 -0
  316. package/dist/helpers/permissions.ts +7 -0
  317. package/dist/helpers/registry.ts +337 -0
  318. package/dist/helpers/resendOtpHelper.tsx +5 -0
  319. package/dist/helpers/revalidate.ts +7 -0
  320. package/dist/helpers/rolesHelper.ts +17 -0
  321. package/dist/helpers/solidIcons.tsx +1831 -0
  322. package/dist/helpers/updatePasswordField.ts +41 -0
  323. package/dist/index.ts +421 -0
  324. package/dist/nextAuth/authProviders.d.ts.map +1 -1
  325. package/dist/nextAuth/authProviders.js +6 -5
  326. package/dist/nextAuth/authProviders.js.map +1 -1
  327. package/dist/nextAuth/authProviders.tsx +232 -0
  328. package/dist/nextAuth/handleLogout.tsx +39 -0
  329. package/dist/nextAuth/refreshAccessToken.tsx +28 -0
  330. package/dist/redux/api/aiInteractionApi.ts +59 -0
  331. package/dist/redux/api/authApi.ts +131 -0
  332. package/dist/redux/api/dashboardApi.ts +56 -0
  333. package/dist/redux/api/dashboardQuestionApi.ts +17 -0
  334. package/dist/redux/api/exportTemplateApi.tsx +59 -0
  335. package/dist/redux/api/fetchBaseQuery.tsx +118 -0
  336. package/dist/redux/api/fieldApi.ts +86 -0
  337. package/dist/redux/api/importTransactionApi.tsx +69 -0
  338. package/dist/redux/api/mediaApi.ts +55 -0
  339. package/dist/redux/api/mediaStorageProviderApi.ts +55 -0
  340. package/dist/redux/api/modelApi.ts +80 -0
  341. package/dist/redux/api/moduleApi.ts +72 -0
  342. package/dist/redux/api/permissionApi.ts +32 -0
  343. package/dist/redux/api/pincodeApi.tsx +56 -0
  344. package/dist/redux/api/roleApi.ts +58 -0
  345. package/dist/redux/api/solidActionApi.ts +66 -0
  346. package/dist/redux/api/solidChatterMessageApi.ts +25 -0
  347. package/dist/redux/api/solidEntityApi.tsx +164 -0
  348. package/dist/redux/api/solidMenuApi.ts +71 -0
  349. package/dist/redux/api/solidServiceApi.ts +31 -0
  350. package/dist/redux/api/solidSettingsApi.tsx +83 -0
  351. package/dist/redux/api/solidViewApi.ts +73 -0
  352. package/dist/redux/api/stateApi.tsx +56 -0
  353. package/dist/redux/api/testApi.ts +21 -0
  354. package/dist/redux/api/userApi.ts +135 -0
  355. package/dist/redux/features/authSlice.ts +19 -0
  356. package/dist/redux/features/dataViewSlice.ts +26 -0
  357. package/dist/redux/features/navbarSlice.ts +21 -0
  358. package/dist/redux/features/popupSlice.ts +37 -0
  359. package/dist/redux/features/settingsSlice.ts +60 -0
  360. package/dist/redux/features/themeSlice.ts +17 -0
  361. package/dist/redux/features/userSlice.ts +28 -0
  362. package/dist/redux/hooks/useSolidPopup.ts +20 -0
  363. package/dist/redux/store/defaultStoreConfig.ts +62 -0
  364. package/dist/styles.ts +4 -0
  365. package/dist/types/handlebars.d.ts +4 -0
  366. package/dist/types/index.d.ts +76 -0
  367. package/dist/types/layout.d.ts +94 -0
  368. package/dist/types/next-auth.d.ts +0 -0
  369. package/dist/types/next.d.ts +46 -0
  370. package/dist/types/solid-core.d.ts +320 -0
  371. package/package.json +1 -1
  372. package/src/components/auth/SolidLogin.tsx +26 -13
  373. package/src/nextAuth/authProviders.tsx +9 -5
@@ -0,0 +1,62 @@
1
+ 'use client';
2
+ import { useState } from 'react';
3
+
4
+ const FieldSelector = ({ handleTypeSelect, modelMetaData }: any) => {
5
+
6
+ const [selectedField, setSelectedField] = useState(null); // To store the selected field
7
+
8
+ const solidFieldOptions = [
9
+ { label: 'Integer', description: 'A whole number (int)', icon: 'pi pi-hashtag', value: 'int' },
10
+ { label: 'Big Integer', description: 'A large whole number (bigint)', icon: 'pi pi-hashtag', value: 'bigint' },
11
+ // { label: 'Float', description: 'A floating-point number', icon: 'pi pi-sort-numeric-up', value: 'float' },
12
+ { label: 'Decimal', description: '64-bit floating-point numbers', icon: 'pi pi-sort-numeric-up', value: 'decimal' },
13
+ { label: 'Short Text', description: 'Small text field', icon: 'pi pi-align-left', value: 'shortText' },
14
+ { label: 'Long Text', description: 'A larger text field', icon: 'pi pi-align-justify', value: 'longText' },
15
+ { label: 'Rich Text', description: 'A rich text editor', icon: 'pi pi-pencil', value: 'richText' },
16
+ { label: 'JSON', description: 'JSON data format', icon: 'pi pi-code', value: 'json' },
17
+ { label: 'Boolean', description: 'True or false value', icon: 'pi pi-check', value: 'boolean' },
18
+ { label: 'Date', description: 'Date field', icon: 'pi pi-calendar', value: 'date' },
19
+ { label: 'Datetime', description: 'Date and time field', icon: 'pi pi-clock', value: 'datetime' },
20
+ { label: 'Time', description: 'Time picker', icon: 'pi pi-clock', value: 'time' },
21
+ { label: 'Relation', description: 'Reference to another entity', icon: 'pi pi-sitemap', value: 'relation' },
22
+ { label: 'Single Media', description: 'Single file upload (image, video)', icon: 'pi pi-image', value: 'mediaSingle' },
23
+ { label: 'Multiple Media', description: 'Multiple file upload', icon: 'pi pi-images', value: 'mediaMultiple' },
24
+ { label: 'Email', description: 'Email field', icon: 'pi pi-envelope', value: 'email' },
25
+ { label: 'Password', description: 'Password input field', icon: 'pi pi-lock', value: 'password' },
26
+ { label: 'Static Selection', description: 'Predefined selection of values', icon: 'pi pi-list', value: 'selectionStatic' },
27
+ { label: 'Dynamic Selection', description: 'Selection from a dynamic list', icon: 'pi pi-list', value: 'selectionDynamic' },
28
+ { label: 'Computed', description: 'A computed field based on other data', icon: 'pi pi-cog', value: 'computed' },
29
+ // { label: 'External ID', description: 'An external identifier', icon: 'pi pi-key', value: 'externalId' },
30
+ { label: 'UUID', description: 'Unique Identifier', icon: 'pi pi-key', value: 'uuid' }
31
+
32
+ ];
33
+
34
+
35
+ const handleFieldSelect = (fieldValue: any) => {
36
+ setSelectedField(fieldValue);
37
+ };
38
+
39
+ return (
40
+ <div className='p-4' style={{ height: '80vh', overflowY: 'scroll' }}>
41
+ <p className="form-wrapper-heading text-base m-0">Select Field Type</p>
42
+ <div className='formgrid grid'>
43
+ {solidFieldOptions.map((field, index) => (
44
+ <div className="field col-12 md:col-6 mt-3" key={index}>
45
+ <div
46
+ className={`flex align-items-center gap-3 type-field-card ${selectedField === field.value ? 'selected' : ''}`}
47
+ onClick={() => handleTypeSelect(field.value, field.label)}
48
+ >
49
+ <i className={`pi ${field.icon}`}></i>
50
+ <div className=''>
51
+ <p className='text-sm m-0 font-bold'>{field.label}</p>
52
+ <p className='text-xs'>{field.description}</p>
53
+ </div>
54
+ </div>
55
+ </div>
56
+ ))}
57
+ </div>
58
+ </div>
59
+ );
60
+ };
61
+
62
+ export default FieldSelector;
@@ -0,0 +1,384 @@
1
+ "use client";
2
+ import { CreateButton } from "../../../components/common/CreateButton";
3
+ import {
4
+ useDeleteMultipleModelsMutation,
5
+ useGenerateCodeForModelMutation,
6
+ useLazyGetModelsQuery,
7
+ } from "../../../redux/api/modelApi";
8
+ import Link from "next/link";
9
+ import { FilterMatchMode } from "primereact/api";
10
+ import { Button } from "primereact/button";
11
+ import { Column } from "primereact/column";
12
+ import {
13
+ DataTable,
14
+ DataTableFilterMeta,
15
+ DataTableStateEvent,
16
+ } from "primereact/datatable";
17
+ import { Dialog } from "primereact/dialog";
18
+ import qs from "qs";
19
+ import { useEffect, useState } from "react";
20
+
21
+ export interface ModelMetaData {
22
+ id: string;
23
+ displayName: string;
24
+ module: string;
25
+ isSystem: boolean;
26
+ }
27
+
28
+ export const ModelListViewData = () => {
29
+ const [modelMetadata, setModelMetadata] = useState<ModelMetaData[]>([]);
30
+
31
+ const [filters, setFilters] = useState<DataTableFilterMeta>({
32
+ displayName: { value: null, matchMode: FilterMatchMode.STARTS_WITH },
33
+ "module.displayName": {
34
+ value: null,
35
+ matchMode: FilterMatchMode.STARTS_WITH,
36
+ },
37
+ });
38
+ // Lazy loading datatable
39
+ const [first, setFirst] = useState(0);
40
+ const [rows, setRows] = useState(25);
41
+ const [totalRecords, setTotalRecords] = useState(0);
42
+ const [sortField, setSortField] = useState("");
43
+ const [sortOrder, setSortOrder] = useState(0);
44
+ const [selectedMenus, setSelectedMenus] = useState<ModelMetaData[]>([]);
45
+ const [loading, setLoading] = useState<boolean>(true);
46
+ const [isDialogVisible, setDialogVisible] = useState(false);
47
+ const [triggerGetModels, { data: model, isLoading, error }] =
48
+ useLazyGetModelsQuery();
49
+
50
+ const [isGenerateCodeVisible, setGenerateCodeVisible] = useState(false);
51
+ const [generateCodeForModel, setGenerateCodeForModel] = useState<any>();
52
+
53
+
54
+ const [
55
+ generateCode,
56
+ { isLoading: isGenerateCodeUpdating, isSuccess: isGenerateCodeSuceess, isError: isGenerateCodeError, error: generateCodeError, data: generateCodeData },
57
+ ] = useGenerateCodeForModelMutation();
58
+
59
+
60
+
61
+ const [
62
+ deleteManyModel,
63
+ {
64
+ isLoading: isModelDeleted,
65
+ isSuccess: isDeleteModelSuceess,
66
+ isError: isModelDeleteError,
67
+ error: ModelDeleteError,
68
+ data: DeletedModel,
69
+ },
70
+ ] = useDeleteMultipleModelsMutation();
71
+
72
+ useEffect(() => {
73
+ if (model) {
74
+ setModelMetadata(model?.records);
75
+ setTotalRecords(model?.meta.totalRecords);
76
+ setLoading(false);
77
+ }
78
+ }, [model]);
79
+
80
+ useEffect(() => {
81
+ const queryData = {
82
+ offset: 0,
83
+ limit: 25,
84
+ sort: [`id:desc`],
85
+ };
86
+ const queryString = qs.stringify(queryData, {
87
+ encodeValuesOnly: true
88
+ });
89
+ triggerGetModels(queryString);
90
+ setSelectedMenus([]);
91
+ }, [isDeleteModelSuceess]);
92
+
93
+ const onPageChange = (event: any) => {
94
+ setFirst(event.first);
95
+ setRows(event.rows);
96
+ setQueryString(event.first, event.rows, sortField, sortOrder, filters);
97
+ };
98
+
99
+ const onSort = (event: DataTableStateEvent) => {
100
+ const { sortField, sortOrder } = event;
101
+ const validSortOrder = sortOrder === 1 || sortOrder === -1 ? sortOrder : 0;
102
+ setSortField(sortField);
103
+ setSortOrder(validSortOrder);
104
+ setFirst(0);
105
+ setQueryString(
106
+ 0,
107
+ rows,
108
+ sortField,
109
+ sortOrder === 1 || sortOrder === -1 ? sortOrder : 0,
110
+ filters
111
+ );
112
+ };
113
+
114
+ const onSelectionChange = (event: any) => {
115
+ const value = event.value;
116
+ setSelectedMenus(value);
117
+ };
118
+
119
+
120
+
121
+ // Filter fuctions
122
+ const setQueryString = async (
123
+ offset?: number,
124
+ row?: number,
125
+ field?: string,
126
+ order?: number,
127
+ filterQuery?: any
128
+ ) => {
129
+ const formattedFilters: any = {};
130
+
131
+ Object.keys(filterQuery).forEach((field) => {
132
+ const filterValue = filterQuery[field].value;
133
+ const matchMode = filterQuery[field].matchMode;
134
+
135
+ if (filterValue !== null && filterValue !== undefined) {
136
+ let operator = matchMode;
137
+ switch (matchMode) {
138
+ case FilterMatchMode.CONTAINS:
139
+ operator = "$containsi";
140
+ break;
141
+ case FilterMatchMode.STARTS_WITH:
142
+ operator = "$startsWithi";
143
+ break;
144
+ case FilterMatchMode.EQUALS:
145
+ operator = "$eqi";
146
+ break;
147
+ case FilterMatchMode.NOT_CONTAINS:
148
+ operator = "$notContainsi";
149
+ break;
150
+ case FilterMatchMode.NOT_EQUALS:
151
+ operator = "$nei";
152
+ break;
153
+ case FilterMatchMode.ENDS_WITH:
154
+ operator = "$endsWithi";
155
+ break;
156
+ default:
157
+ operator = matchMode;
158
+ }
159
+
160
+ if (field.includes(".")) {
161
+ const fieldParts = field.split(".");
162
+ if (!formattedFilters[fieldParts[0]]) {
163
+ formattedFilters[fieldParts[0]] = {};
164
+ }
165
+ formattedFilters[fieldParts[0]][fieldParts[1]] = {
166
+ [operator]: filterValue,
167
+ };
168
+ } else {
169
+ formattedFilters[field] = { [operator]: filterValue };
170
+ }
171
+ }
172
+ });
173
+
174
+ const queryData: any = {
175
+ offset: offset ?? first,
176
+ limit: row ?? rows,
177
+ filters: formattedFilters,
178
+ };
179
+
180
+ if (field) {
181
+ queryData.sort = [
182
+ `${field}:${order == 0 ? null : order == 1 ? "asc" : "desc"}`,
183
+ ];
184
+ }
185
+
186
+ const queryString = qs.stringify(queryData, {
187
+ encodeValuesOnly: true,
188
+ });
189
+
190
+ triggerGetModels(queryString);
191
+ };
192
+
193
+ const onFilter = (e: any) => {
194
+ setFilters(e.filters);
195
+ setQueryString(
196
+ 0,
197
+ rows,
198
+ sortField,
199
+ sortOrder === 1 || sortOrder === -1 ? sortOrder : 0,
200
+ e.filters
201
+ );
202
+ };
203
+
204
+ const detailsBodyTemplate = (modelMetadata: ModelMetaData) => {
205
+ return (
206
+ <Link
207
+ href={`${modelMetadata.id}`}
208
+ rel="noopener noreferrer"
209
+ className="text-sm font-bold p-0"
210
+ style={{ color: "#12415D" }}
211
+ >
212
+ {modelMetadata.isSystem === true &&
213
+ < i className="pi pi-eye" style={{ fontSize: "1rem" }}></i>
214
+ }
215
+ {modelMetadata.isSystem === false &&
216
+ < i className="pi pi-pencil" style={{ fontSize: "1rem" }}></i>
217
+ }
218
+ </Link>
219
+ );
220
+ };
221
+
222
+ const generateCodeBodyTemplate = (modelMetadata: ModelMetaData) => {
223
+
224
+ return (
225
+ <a onClick={() => {
226
+ setGenerateCodeForModel(modelMetadata.id);
227
+ setGenerateCodeVisible(true);
228
+ }}
229
+ rel="noopener noreferrer"
230
+ className="text-sm font-bold p-0"
231
+ style={{ color: "#12415D" }}
232
+ >
233
+ {modelMetadata.isSystem === false &&
234
+ < i className="pi pi-cog" style={{ fontSize: "1rem" }}></i>
235
+ }
236
+ </a >
237
+ );
238
+ };
239
+
240
+ const deleteBulk = () => {
241
+ let deleteList: any = [];
242
+ selectedMenus.forEach((element: ModelMetaData) => {
243
+ deleteList.push(element.id);
244
+ });
245
+ deleteManyModel(deleteList);
246
+ setDialogVisible(false);
247
+ };
248
+
249
+ const onDeleteClose = () => {
250
+ setDialogVisible(false);
251
+ setSelectedMenus([]);
252
+ }
253
+
254
+ const onGenerateCodeClose = () => {
255
+ setGenerateCodeVisible(false);
256
+ setSelectedMenus([]);
257
+
258
+ }
259
+ return (
260
+ <div className="">
261
+ <div className="flex gap-3 mb-4">
262
+ <CreateButton />
263
+ {selectedMenus.length > 0 && <Button
264
+ type="button"
265
+ label="Delete"
266
+ size="small"
267
+ onClick={() => setDialogVisible(true)}
268
+ className="small-button"
269
+ severity="danger"
270
+ />}
271
+ {/* <Button
272
+ type="button"
273
+ icon="pi pi-filter-slash"
274
+ label="Clear"
275
+ size="small"
276
+ outlined
277
+ // onClick={clearFilter}
278
+ className="small-button"
279
+ /> */}
280
+ </div>
281
+ <style>{`
282
+ .p-datatable .p-datatable-loading-overlay {
283
+ background-color: rgba(0, 0, 0, 0.0);
284
+ }
285
+ `}</style>
286
+ <DataTable
287
+ value={modelMetadata}
288
+ lazy
289
+ size="small"
290
+ paginator
291
+ rows={rows}
292
+ rowsPerPageOptions={[10, 25, 50]}
293
+ dataKey="id"
294
+ filters={filters}
295
+ emptyMessage="No Models found."
296
+ onFilter={onFilter}
297
+ filterDisplay="row"
298
+ totalRecords={totalRecords}
299
+ first={first}
300
+ onPage={onPageChange}
301
+ onSort={(e: DataTableStateEvent) => onSort(e)}
302
+ sortField={sortField}
303
+ sortOrder={sortOrder === 1 || sortOrder === -1 ? sortOrder : 0}
304
+ loading={loading || isLoading}
305
+ loadingIcon="pi pi-spinner"
306
+ selection={selectedMenus}
307
+ onSelectionChange={onSelectionChange}
308
+ selectionMode="multiple"
309
+ removableSort
310
+ >
311
+ <Column selectionMode="multiple" headerStyle={{ width: "3em" }} />
312
+ <Column field="id" header="Id" className="text-sm" sortable headerClassName="table-header-fs"></Column>
313
+ <Column
314
+ field="displayName"
315
+ header="displayName"
316
+ className="text-sm"
317
+ sortable
318
+ filter
319
+ filterPlaceholder="Search model by name"
320
+ style={{ minWidth: "12rem" }}
321
+ headerClassName="table-header-fs"
322
+ ></Column>
323
+ <Column
324
+ field="module.displayName"
325
+ header="Module Name"
326
+ className="text-sm"
327
+ // sortable
328
+ filter
329
+ filterPlaceholder="Search model by module name"
330
+ style={{ minWidth: "12rem" }}
331
+ headerClassName="table-header-fs"
332
+ ></Column>
333
+ <Column
334
+ header="Edit"
335
+ body={detailsBodyTemplate}></Column>
336
+ <Column
337
+ header="Code"
338
+ body={generateCodeBodyTemplate}></Column>
339
+
340
+ </DataTable>
341
+ <Dialog
342
+ visible={isDialogVisible}
343
+ header="Confirm Delete"
344
+ modal
345
+ className="solid-confirm-dialog"
346
+ footer={() => (
347
+ <div className="flex justify-content-center">
348
+ <Button label="Yes" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={deleteBulk} />
349
+ <Button label="No" icon="pi pi-times" className='small-button' onClick={onDeleteClose} />
350
+ </div>
351
+ )}
352
+ onHide={() => setDialogVisible(false)}
353
+ >
354
+ <p>Are you sure you want to delete the selected Models?</p>
355
+ </Dialog>
356
+ <Dialog
357
+ visible={isGenerateCodeVisible}
358
+ header="Generate Code"
359
+ headerClassName="text-center"
360
+ modal
361
+ footer={() => (
362
+ <div className="flex justify-content-center">
363
+ <Button label="Yes" icon="pi pi-check" className='small-button' severity="danger" autoFocus onClick={() => {
364
+ generateCode({ id: generateCodeForModel })
365
+ setGenerateCodeVisible(false)
366
+ }} />
367
+ <Button label="No" icon="pi pi-times" className='small-button' onClick={onGenerateCodeClose} />
368
+ </div>
369
+ )}
370
+ onHide={() => setGenerateCodeVisible(false)}
371
+ >
372
+ <p className="">Proceed with model code generation? Existing files will be overwritten.</p>
373
+ <p>Below is the list of files that will be created </p>
374
+ <ul>
375
+ <li>Model Entity File</li>
376
+ <li>Model Controller File</li>
377
+ <li>Model Service File</li>
378
+ <li>Model Create and Update Dto files</li>
379
+ </ul>
380
+ <ul></ul>
381
+ </Dialog>
382
+ </div>
383
+ );
384
+ };