@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,238 @@
1
+ export const ERROR_MESSAGES = {
2
+
3
+ /* ----------------------------- AUTHENTICATION ----------------------------- */
4
+ NO_AUTH_TOKEN_FOUND: 'No auth token found.',
5
+ AUTHENICATION__FAILED: 'Authentication failed.',
6
+ INVALID_CREDENTIALS: 'Invalid Credentials',
7
+ SESSION_EXPIRED: 'Session Expired. Please Login Again.',
8
+ FAILED_REFRESH_TOKEN: 'Failed to refresh access token: ',
9
+ LOGIN_ERROR: 'Login Error',
10
+ LOGIN_SUCCESS: 'Login Success',
11
+ PLEASE_WAIT: "Please wait",
12
+ SOMETHING_WRONG: 'Something Went Wrong !',
13
+ LOGOUT_FAILED: 'Logout Failed !',
14
+ LOGIN_SUCCESSFULLY : 'Login Successfully',
15
+
16
+ /* -------------------------------- PASSWORD -------------------------------- */
17
+ FAILED_TO_UPDATE_PASSWORD: 'Failed to update password.',
18
+ INVALID_PASSWORD_REGX: 'Invalid password regex in .env:',
19
+ INCORRECT_CURRENT: "Incorrect Current Password",
20
+ MUST_MATCH: "Passwords must match",
21
+ FORCE_PASSWORD_CHANGE: "Force Password Change Success",
22
+ PASSWORD_CHANGE: 'Password Change Successfully',
23
+
24
+ /* ---------------------------------- OTP ----------------------------------- */
25
+ INAVLID_OTP: "Invalid OTP",
26
+ OPT_FORMAT: (formatted: string) =>
27
+ `You can request a new OTP in ${formatted} second(s)`,
28
+
29
+ /* ---------------------------- AUTH / DASHBOARD ----------------------------- */
30
+ DASHBOARD_REDIRECTING: "Redirecting to dashboard...",
31
+
32
+ /* ------------------------------- FILE ERRORS ------------------------------- */
33
+ FILE_DOWNLOAD_FAILED: 'File download failed.',
34
+ FAILED_TO_DOWNLOAD: 'Failed to download.',
35
+ FAILED_TO_FETCH_FILE: 'Failed to fetch file.',
36
+ DOWNLOAD_FAILED: 'Download failed',
37
+ FILE_LARGE: 'File too large',
38
+ MAX_FILE_SIZE: 'Maximum file size is 2MB',
39
+ FILE_TOO_LAREG: (fileSize: string) =>
40
+ `File is too large. Max size is ${fileSize} KB.`,
41
+ FILE_NOT_ACCEPT: 'File not accepted.',
42
+ FAILED_UPLOAD_FILE: 'Fail to upload file',
43
+ MISSING_FILE: 'Missing File',
44
+ ERROR_DELETING_FILE: 'Error deleting file:',
45
+ FAILED_DELETED_IMAGE: 'Failed to delete image.',
46
+ PROFILE_PICTURE_REMOVE: "Profile picture removed.",
47
+ FILE_UPLOAD: 'File Uploaded',
48
+ FILE_UPLOAD_SUCCESSFULLY: 'File Uploaded Successfully',
49
+
50
+ /* ------------------------------- USER / ENTITY ------------------------------ */
51
+ NO_ENTITY_SELECTED: 'No entity selected.',
52
+ FAILED_UPDATED_PROFILE: 'Failed to update profile',
53
+ ENTITY_FAILED: 'Failed to create Entity:',
54
+ ENTITY_DELETE: 'Entity deleted successfully',
55
+ RECORD_DELETE: 'Records deleted successfully',
56
+ MODEL_DELETE: 'Model Deleted',
57
+ MODEL_DELETE_SUCCESSFULLY: (modelName: string) =>
58
+ `Model ${modelName} has been deleted successfully`,
59
+ DELETE_FAIELD: "Delete Failed",
60
+ EMAIL_ALREADY_TAKEN: 'Email is already taken,',
61
+ UPDATED: 'Updated',
62
+ SETTING_UPDATED: 'Settings updated',
63
+ USER_REGISTER : 'User Registered',
64
+ NO_CHANGE : 'No Change',
65
+ NO_SETTING_UPDATE : 'No settings were updated',
66
+ UPDATING_USER : 'Error updating user view:',
67
+
68
+ /* ---------------------------- RELATION & FILTER ---------------------------- */
69
+ INVALID_FILTER_STRUCTURE: 'Invalid filter structure.',
70
+ INVALID_RELATION_TYPE: (relationType: string, fieldName: string) =>
71
+ `Invalid relationType ${relationType} on field ${fieldName}`,
72
+ INVALID_JSON_WHERECLAUSE: 'Invalid whereClause JSON:',
73
+ FIXED_FILTER_NOT_APPLIED: 'Fixed filter not applied due to parsing issues or invalid data.',
74
+ SELECT_RELEVANT_FIELD: 'Please select relevant fields used in fixed filter',
75
+ SKIPPING_EMPTY_FIXED_FILTER: 'Skipping invalid/empty fixed filter : ',
76
+ FIELD_NOT_SELECT: 'Fields Not selected!',
77
+ FIELD_NOT_IN_METADATA: (label: string) =>
78
+ `${label} is not present in metadata`,
79
+ SAVE_FILTER_UNDEFINED_NULL: 'Saved filter ID is undefined or null.',
80
+
81
+ /* -------------------------------- FORM / UI -------------------------------- */
82
+ FAILED_UPDATE_FROM: "Failed to update the form.",
83
+ UPDATING_STEPPER: 'Error updating stepper : ',
84
+ DYNAMIC_FUNCTION_ERROR: 'Error in DynamicFunctionComponent : ',
85
+ ON_FORM_LOAD: 'Error in onFormLoad handler:',
86
+ UNABLE_LOAD_DYNAMIC_MODULE: 'Unable to load dynamic module: ',
87
+ LOADING_COMPONENT: 'Error loading component',
88
+ FORM_LAYOUT_UPDATE : 'Form Layout Updated successfully!',
89
+ LAYOUT : 'Layout',
90
+ MARK_PUBLISH : 'Marked as publish !',
91
+ MARK_UNPUBLISH : 'Marked as unpublish !',
92
+ SAVED : 'Saved',
93
+ FORM_UPDATE : 'Form Updated',
94
+ FORM_UPDATE_SUCCESSFULLY : 'Form updated successfully!',
95
+ FORM_SAVED : 'Form Saved',
96
+ FORM_SAVED_SUCCESSFULLY : 'Form saved successfully!',
97
+ PROFILE_SAVED : 'Profile Saved',
98
+ PROFILE_SAVED_SUCCESSFULLY : 'Profile saved successfully!',
99
+ NO_UPDATE_MADE :'No updates were made.',
100
+
101
+
102
+
103
+ /* ------------------------------ INTERACTIONS ------------------------------ */
104
+ INTERATCTION_MESSGAE: (message: string, err: any) =>
105
+ `Error handling interaction.message: ${message || String(err)}`,
106
+ APPLY_FAILED: 'Apply Failed',
107
+ APPLY_SUCCESS: 'Apply Successful',
108
+ PREVIEW_INTERACTION: 'Preview clicked for interaction:',
109
+ FAILED_APPLY_INTERACTION: (error: string) =>
110
+ `Failed to apply interaction - ${error}`,
111
+
112
+ /* --------------------------- PROCESS / BACKEND ---------------------------- */
113
+ BACKEND_UNAVAILABLE: 'Backend Unavailable',
114
+ SEEDER_NOT_TRIGGERED: 'Seeder not triggered. Could not reach backend.',
115
+ IS_SEEDER_ERROR: 'isSeederError',
116
+ IS_SEEDER_SUCCESS: 'isSeederSuccess',
117
+ SEEDER_ERROR: 'Seeder Error',
118
+ SEEDER_NOT_RUN: 'Could not run seeder. Please try again.',
119
+ BACKEND_NOT_ALIVE: 'Backend is not alive, cannot run seeder',
120
+ FAILED_TRIGGER_MCP_CLIENT_JOB: 'Failed to trigger MCP client job',
121
+
122
+ /* --------------------------------- NETWORK --------------------------------- */
123
+ API_ERROR: 'API error: ',
124
+ ERROR_OCCURED: "An error occurred",
125
+ FETCHING_MESSAGE: 'Error fetching messages:',
126
+ FETCHING_USER: 'Error fetching users:',
127
+ FETCHING_ITEMS: 'Error fetching items',
128
+ LOAD_MORE_DATA: 'Failed to load more data:',
129
+ NETWORK_ERROR: 'Network error occurred. Please try again.',
130
+ NETWORK_OR_SERVER_ERROR: 'Network or server error occurred.',
131
+ DELETE_ERROR: 'Delete error',
132
+
133
+ /* ----------------------------- IMPORT / EXPORT ----------------------------- */
134
+ IMPORT_ERROR: 'Import Error',
135
+ EXPORT_SUCCESSFULLY: 'File Exported Successfully.',
136
+ SEND_REPORT: 'Can you send me the report?',
137
+
138
+ /* ----------------------------------- MISC ---------------------------------- */
139
+ ERROR: 'Error',
140
+ FAILED: 'Failed',
141
+ IS_SUCCESS: 'Success',
142
+ DELETED: 'Deleted',
143
+ UPDATE_FAILED: 'Update failed',
144
+ FAILED_CREATE_MENU: 'Failed to create menu',
145
+ ORM_TYPE_REQUIRED: 'Orm Type is required!',
146
+ ACTION_FUNCTION: (action: string) =>
147
+ `Action function "${action}" not found.`,
148
+ DUPLICATE_KEY: "Duplicate Key",
149
+ ERROR_DECODING: 'Error decoding or parsing query string from local storage:',
150
+ CREATE_MODEL: 'Failed to create Model',
151
+ TEMPLATE_FAILED: 'Failed to create template',
152
+ SELECT_FROMAT: 'Please Select Format',
153
+ PARSED_FIELD: 'Failed to parse fields:',
154
+ CODE_GENERTAE_SUCCESSFULLY: 'Code Generated Successfully',
155
+ RESPONSE_GENERATE_CODE_HANDLER: "response generate code handler",
156
+ KANBAN_UPDATED: "Kanban View Updated!",
157
+ TRY_AGAIN: 'Please try again later',
158
+ REMOVE_ROOT_NODE: "Cannot remove the root node.",
159
+ ATTEMPT_FETCH_MESSAGE_STATUS: (queryString: string) =>
160
+ `Attempting to fetch mq message status with query string: ${queryString}`,
161
+ FAILED_FETCH_MESSAGE: "Failed to fetch MQ message status:",
162
+ FAILED_CREATE_INVOICE: "Failed to create Invoice:",
163
+
164
+ /* ----------------------------------- CRUD ---------------------------------- */
165
+ ADD_ATLEAST_ONE_FIELD: "Please add at least one field",
166
+
167
+
168
+ /* ----------------------------------- Validation ---------------------------------- */
169
+
170
+ // -------------------- REQUIRED / BASIC FIELD ERRORS --------------------
171
+ FIELD_REUQIRED: (field: string) => `${field} is required`,
172
+ FIELD_INAVLID_FORMAT: (field: string) => `Invalid ${field} format`,
173
+ FIELD_INVALID: (field: string) => `Invalid ${field}`,
174
+ ENTER_VALID_FIELD: (field: string) => `Please enter a valid ${field}.`,
175
+ FIELD_INVALID_DATA: (field: string) => `${field} has invalid data.`,
176
+ FIELD_MUST_MATCH: (field: string) => `${field}s must match.`,
177
+ FIELD_ALREADY_USE: (field: string, field1: string) =>
178
+ `${field} Already in use. Please choose a different ${field1}.`,
179
+ FIELD_MUST_BE_AN: (field: string, type: string) =>
180
+ `${field} must be an ${type}"`,
181
+ REQUIRED_REALTION: 'required-relation',
182
+ VALIDATE_SELECTION: 'valid-selection',
183
+
184
+ // -------------------- PASSWORD VALIDATION --------------------
185
+ PASSWORD_DO_NOT_MEET: 'Password does not meet complexity requirements',
186
+ PASSWORD_CHARACTER: (count: Number) =>
187
+ `Password must be at least ${count} characters`,
188
+ PASSWORD_CONTAIN: (contain: string, type = 'letter') =>
189
+ `Password must contain at least one ${contain} ${type}`,
190
+
191
+ // -------------------- LENGTH VALIDATION --------------------
192
+ FIELD_MINIMUM_CHARACTER: (field: string, characters: Number) =>
193
+ `${field} should be at-least ${characters} characters long.`,
194
+ FIELD_MAXIMUM_CHARACTER: (field: string, characters: Number) =>
195
+ `${field} should not be more than ${characters} characters long.`,
196
+
197
+ // -------------------- OTP --------------------
198
+ OTP_CHARACTER: (count: Number) =>
199
+ `OTP must be a ${count}-digit number`,
200
+ OPT_RESEND : 'OTP Resent Successfully',
201
+ OPT_SEND : 'OTP Sent Successfully',
202
+
203
+ // -------------------- UPDATE MESSAGES --------------------
204
+ FIELD_UPDATE: (field: string) => `${field} Updated`,
205
+ FIELD_UPDATE_SUCCESSFULLY: (field: string) =>
206
+ `${field} Updated Successfully`,
207
+
208
+ // -------------------- FILE / OBJECT VALIDATION --------------------
209
+ MUST_BE_FILE_OBJECT: (field: string) =>
210
+ `${field} must be a file, an object, or empty`,
211
+ FILE_OBJECT: 'file-or-object',
212
+ EMPTY_VALID_ARRAY: 'is-empty-or-valid-array',
213
+ CONTAIN_EMPTY_ARRAY_OR_FILE_OBECT: (field: string) =>
214
+ `${field} must be an empty array or contain only files/objects.`,
215
+
216
+ // -------------------- SELECTION VALIDATION --------------------
217
+ FIELD_MUST_HAVE_ITEM: (field: string) =>
218
+ `${field} must have at least one item.`,
219
+ SELECT_ATLEAST_ONE: (field: string) =>
220
+ `You must select at least one ${field}.`,
221
+ SELECT_VALID_FROM_DROPDOWN: (field: string) =>
222
+ `Please select a valid ${field} from the dropdown.`,
223
+ SELECT_ONE_OPERATION: 'Select at least one operation',
224
+
225
+ // -------------------- JSON VALIDATION --------------------
226
+ IS_VALID_JSON: 'is-valid-json',
227
+ COMPUTED_FIELD_VALIDATE_JSON:
228
+ 'Computed Field Value Provider Context Value must be valid JSON',
229
+
230
+ // -------------------- OTHER RULES --------------------
231
+ GREATER_THAN_MIN: 'greater-than-min',
232
+ RELATION_CASCADE: 'Relation Cascade Value is required for one-to-one relationships',
233
+ SNAKE_CASE: (name: string) =>
234
+ `${name} name must be in snake_case (lowercase letters, numbers, and underscores only).`,
235
+
236
+
237
+
238
+ };
@@ -0,0 +1,22 @@
1
+ declare module '*.png' {
2
+ const value: string;
3
+ export default value;
4
+ }
5
+
6
+ declare module '*.jpg' {
7
+ const value: string;
8
+ export default value;
9
+ }
10
+
11
+ declare module '*.jpeg' {
12
+ const value: string;
13
+ export default value;
14
+ }
15
+
16
+ declare module '*.svg' {
17
+ const content: any;
18
+ export default content;
19
+ }
20
+
21
+ // src/declarations.d.ts or types/declarations.d.ts
22
+ declare module '@solidstarters/solid-core-ui';
@@ -0,0 +1,12 @@
1
+ export const AppTitle = ({ title }: { title: any }) => {
2
+ const appTitle = title ? title?.data?.appTitle : "Solid Starters";
3
+ return (
4
+ <div>
5
+ <p className="solid-logo-title">
6
+ {appTitle?.split(" ").map((word: string, index: number) => (
7
+ <div key={index}>{word}</div>
8
+ ))}
9
+ </p>
10
+ </div>
11
+ )
12
+ }
@@ -0,0 +1,94 @@
1
+ "use client";
2
+ import { ERROR_MESSAGES } from '../constants/error-messages';
3
+ import { FetchBaseQueryError } from '@reduxjs/toolkit/dist/query';
4
+ import { Toast } from 'primereact/toast';
5
+ import React, { useRef } from 'react';
6
+
7
+
8
+ interface ErrorResponseData {
9
+ message: string;
10
+ statusCode: number;
11
+ error: string;
12
+ }
13
+
14
+
15
+ let toastRef: React.MutableRefObject<Toast | null> | null = null;
16
+
17
+ export const ToastContainer = () => {
18
+ toastRef = useRef(null);
19
+
20
+ return <Toast ref={toastRef} />;
21
+ };
22
+
23
+ function isFetchBaseQueryErrorWithErrorResponse(error: any): error is FetchBaseQueryError & { data: ErrorResponseData } {
24
+ return error && typeof error === 'object' && 'data' in error && 'message' in error.data;
25
+ }
26
+ const extractErrorMessages = (errorObj: Record<string, string>): string[] => {
27
+ return Object.values(errorObj);
28
+ };
29
+
30
+
31
+ export const handleError = (errorToast: any) => {
32
+ let errorMessage: any = errorToast ? errorToast : [ERROR_MESSAGES.ERROR_OCCURED];
33
+
34
+
35
+ if (typeof errorMessage == 'object') {
36
+ if (isFetchBaseQueryErrorWithErrorResponse(errorToast)) {
37
+ errorMessage = errorToast.data.message;
38
+ }
39
+ }
40
+ // if (isFetchBaseQueryErrorWithErrorResponse(errorToast)) {
41
+ // errorMessage = errorToast.data.message;
42
+ // } else {
43
+ // errorMessage = ['Something went wrong'];
44
+ // }
45
+
46
+ toastRef?.current?.show({
47
+ severity: 'error',
48
+ summary: ERROR_MESSAGES.ERROR,
49
+ detail: errorMessage,
50
+ life: 3000,
51
+ //@ts-ignore
52
+ content: (props) => (
53
+ <div className="flex flex-column align-items-left" style={{ flex: "1" }}>
54
+ {Array.isArray(errorMessage) ? (
55
+ errorMessage.map((message, index) => (
56
+ <div className="flex align-items-center gap-2" key={index}>
57
+ <span className="font-bold text-900">{message.trim()}</span>
58
+ </div>
59
+ ))
60
+ ) : (
61
+ <div className="flex align-items-center gap-2">
62
+ <span className="font-bold text-900">{errorMessage?.trim()}</span>
63
+ </div>
64
+ )}
65
+ </div>
66
+ ),
67
+ });
68
+ };
69
+
70
+ export const handleSuccess = (successMessage: any) => {
71
+
72
+ toastRef?.current?.show({
73
+ severity: 'error',
74
+ summary: ERROR_MESSAGES.IS_SUCCESS,
75
+ detail: successMessage,
76
+ life: 3000,
77
+ //@ts-ignore
78
+ content: (props) => (
79
+ <div className="flex flex-column align-items-left" style={{ flex: "1" }}>
80
+ {Array.isArray(successMessage) ? (
81
+ successMessage.map((message, index) => (
82
+ <div className="flex align-items-center gap-2" key={index}>
83
+ <span className="font-bold text-900">{message.trim()}</span>
84
+ </div>
85
+ ))
86
+ ) : (
87
+ <div className="flex align-items-center gap-2">
88
+ <span className="font-bold text-900">{successMessage?.trim()}</span>
89
+ </div>
90
+ )}
91
+ </div>
92
+ ),
93
+ });
94
+ };
@@ -0,0 +1,41 @@
1
+ type GetVirtualScrollerOptionsParams = {
2
+ itemsLength: number;
3
+ maxVisibleItems?: number;
4
+ itemHeight?: number;
5
+ extraHeight?: number;
6
+ lazy?: boolean;
7
+ onLazyLoad?: (event: any) => void;
8
+ };
9
+
10
+ export const getVirtualScrollerOptions = ({
11
+ itemsLength,
12
+ maxVisibleItems = 5,
13
+ itemHeight = 38,
14
+ extraHeight = 24,
15
+ lazy = false,
16
+ onLazyLoad,
17
+ }: GetVirtualScrollerOptionsParams) => {
18
+
19
+ if (itemsLength === 0) {
20
+ return undefined;
21
+ }
22
+
23
+ const visibleItems = Math.min(itemsLength, maxVisibleItems);
24
+
25
+ const options: any = {
26
+ itemSize: itemHeight,
27
+ scrollHeight: `${
28
+ visibleItems * itemHeight + extraHeight
29
+ }px`,
30
+ };
31
+
32
+ // Lazy loading support
33
+ if (lazy) {
34
+ options.lazy = true;
35
+ if (onLazyLoad) {
36
+ options.onLazyLoad = onLazyLoad;
37
+ }
38
+ }
39
+
40
+ return options;
41
+ };