@solidxai/core-ui 0.1.9-beta.9 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/adapters/auth/handleLogout.d.ts +1 -1
- package/dist/adapters/auth/handleLogout.d.ts.map +1 -1
- package/dist/adapters/auth/handleLogout.js +20 -32
- package/dist/adapters/auth/handleLogout.js.map +1 -1
- package/dist/adapters/auth/handleLogout.ts +7 -14
- package/dist/components/auth/AuthLayout.d.ts.map +1 -1
- package/dist/components/auth/AuthLayout.js +23 -19
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +62 -52
- package/dist/components/auth/ForgotPasswordThankYou.js +1 -1
- package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
- package/dist/components/auth/ForgotPasswordThankYou.tsx +2 -2
- package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts +2 -0
- package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts.map +1 -0
- package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js +112 -0
- package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js.map +1 -0
- package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.tsx +78 -0
- package/dist/components/auth/SolidChangeForcePassword.js +2 -2
- package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
- package/dist/components/auth/SolidChangeForcePassword.tsx +13 -13
- package/dist/components/auth/SolidForgotPassword.js +1 -1
- package/dist/components/auth/SolidForgotPassword.js.map +1 -1
- package/dist/components/auth/SolidForgotPassword.tsx +3 -3
- package/dist/components/auth/SolidInitialLoginOtp.js +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.tsx +2 -2
- package/dist/components/auth/SolidInitiateRegisterOtp.js +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.tsx +2 -2
- package/dist/components/auth/SolidLogin.js +4 -4
- package/dist/components/auth/SolidLogin.js.map +1 -1
- package/dist/components/auth/SolidLogin.tsx +13 -13
- package/dist/components/auth/SolidOTPVerify.d.ts +3 -0
- package/dist/components/auth/SolidOTPVerify.d.ts.map +1 -0
- package/dist/components/auth/SolidOTPVerify.js +67 -0
- package/dist/components/auth/SolidOTPVerify.js.map +1 -0
- package/dist/components/auth/SolidOTPVerify.tsx +133 -0
- package/dist/components/auth/SolidRegister.js +6 -6
- package/dist/components/auth/SolidRegister.js.map +1 -1
- package/dist/components/auth/SolidRegister.tsx +15 -15
- package/dist/components/auth/SolidResetPassword.js +2 -2
- package/dist/components/auth/SolidResetPassword.js.map +1 -1
- package/dist/components/auth/SolidResetPassword.tsx +8 -8
- package/dist/components/common/AuthBanner.js.map +1 -1
- package/dist/components/common/BackButton.js +1 -1
- package/dist/components/common/BackButton.js.map +1 -1
- package/dist/components/common/BackButton.tsx +1 -1
- package/dist/components/common/CancelButton.js +2 -2
- package/dist/components/common/CancelButton.js.map +1 -1
- package/dist/components/common/CancelButton.tsx +3 -3
- package/dist/components/common/GeneralSettings.js +18 -18
- package/dist/components/common/GeneralSettings.js.map +1 -1
- package/dist/components/common/GeneralSettings.tsx +137 -137
- package/dist/components/common/SettingsComponent.d.ts.map +1 -1
- package/dist/components/common/SettingsComponent.js +4 -1
- package/dist/components/common/SettingsComponent.js.map +1 -1
- package/dist/components/common/SettingsComponent.module.css +95 -2
- package/dist/components/common/SettingsComponent.tsx +4 -1
- package/dist/components/common/SocialMediaLogin.d.ts.map +1 -1
- package/dist/components/common/SocialMediaLogin.js +1 -1
- package/dist/components/common/SocialMediaLogin.js.map +1 -1
- package/dist/components/common/SocialMediaLogin.tsx +4 -0
- package/dist/components/common/SolidExport.d.ts +1 -1
- package/dist/components/common/SolidExport.d.ts.map +1 -1
- package/dist/components/common/SolidExport.js +11 -4
- package/dist/components/common/SolidExport.js.map +1 -1
- package/dist/components/common/SolidExport.tsx +12 -2
- package/dist/components/common/SolidFaviconProvider.d.ts +3 -0
- package/dist/components/common/SolidFaviconProvider.d.ts.map +1 -0
- package/dist/components/common/SolidFaviconProvider.js +102 -0
- package/dist/components/common/SolidFaviconProvider.js.map +1 -0
- package/dist/components/common/SolidFaviconProvider.tsx +55 -0
- package/dist/components/common/SolidFormHeader.js +1 -1
- package/dist/components/common/SolidFormHeader.js.map +1 -1
- package/dist/components/common/SolidFormHeader.tsx +1 -1
- package/dist/components/common/SolidModuleHome.js +2 -2
- package/dist/components/common/SolidModuleHome.js.map +1 -1
- package/dist/components/common/SolidModuleHome.tsx +7 -7
- package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +3 -3
- package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
- package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +6 -6
- package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js +1 -1
- package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js.map +1 -1
- package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.tsx +4 -4
- package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js +1 -1
- package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js.map +1 -1
- package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.tsx +4 -4
- package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js +1 -1
- package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js.map +1 -1
- package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.tsx +1 -1
- package/dist/components/core/card/SolidCardView.js +1 -1
- package/dist/components/core/card/SolidCardView.js.map +1 -1
- package/dist/components/core/card/SolidCardView.tsx +6 -6
- package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.js +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
- package/dist/components/core/card/SolidCardViewConfigure.tsx +5 -1
- package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
- package/dist/components/core/chatter/SolidChatter.js +29 -16
- package/dist/components/core/chatter/SolidChatter.js.map +1 -1
- package/dist/components/core/chatter/SolidChatter.tsx +28 -14
- package/dist/components/core/chatter/SolidChatterAuditMessage.js +1 -1
- package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
- package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +2 -2
- package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -1
- package/dist/components/core/chatter/SolidChatterHeader.js +2 -2
- package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
- package/dist/components/core/chatter/SolidChatterHeader.tsx +10 -6
- package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +1 -0
- package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -1
- package/dist/components/core/chatter/SolidChatterMessageBox.js +151 -12
- package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
- package/dist/components/core/chatter/SolidChatterMessageBox.tsx +256 -15
- package/dist/components/core/chatter/SolidMessageComposer.d.ts.map +1 -1
- package/dist/components/core/chatter/SolidMessageComposer.js +3 -2
- package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -1
- package/dist/components/core/chatter/SolidMessageComposer.tsx +11 -9
- package/dist/components/core/chatter/chatter.module.css +1 -1
- package/dist/components/core/common/FilterComponent.d.ts.map +1 -1
- package/dist/components/core/common/FilterComponent.js +5 -3
- package/dist/components/core/common/FilterComponent.js.map +1 -1
- package/dist/components/core/common/FilterComponent.tsx +6 -2
- package/dist/components/core/common/GroupingComponent.d.ts.map +1 -1
- package/dist/components/core/common/GroupingComponent.js +2 -2
- package/dist/components/core/common/GroupingComponent.js.map +1 -1
- package/dist/components/core/common/GroupingComponent.tsx +2 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +2 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +1 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.js +50 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.js.map +1 -0
- package/dist/components/core/common/LoadDynamicJsxComponent.tsx +70 -0
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +1 -10
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +1 -8
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +6 -11
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +5 -31
- package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
- package/dist/components/core/common/SolidCreateButton.js +16 -1
- package/dist/components/core/common/SolidCreateButton.js.map +1 -1
- package/dist/components/core/common/SolidCreateButton.tsx +18 -1
- package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +61 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +3 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +4 -2
- package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.d.ts.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js +19 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.tsx +16 -3
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +168 -26
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +174 -10
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +180 -90
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +167 -49
- package/dist/components/core/common/SolidLayoutViews.js +2 -2
- package/dist/components/core/common/SolidLayoutViews.js.map +1 -1
- package/dist/components/core/common/SolidLayoutViews.tsx +4 -4
- package/dist/components/core/common/SolidListViewOptions.js +1 -1
- package/dist/components/core/common/SolidListViewOptions.js.map +1 -1
- package/dist/components/core/common/SolidListViewOptions.tsx +1 -1
- package/dist/components/core/common/SolidPasswordHelperText.js +2 -2
- package/dist/components/core/common/SolidPasswordHelperText.js.map +1 -1
- package/dist/components/core/common/SolidPasswordHelperText.tsx +4 -4
- package/dist/components/core/common/SolidSaveCustomFilterForm.d.ts.map +1 -1
- package/dist/components/core/common/SolidSaveCustomFilterForm.js +1 -1
- package/dist/components/core/common/SolidSaveCustomFilterForm.js.map +1 -1
- package/dist/components/core/common/SolidSaveCustomFilterForm.tsx +0 -1
- package/dist/components/core/common/SolidSearchBox.js +1 -1
- package/dist/components/core/common/SolidSearchBox.js.map +1 -1
- package/dist/components/core/common/SolidSearchBox.tsx +1 -1
- package/dist/components/core/common/SolidXAiIframe.js +1 -1
- package/dist/components/core/common/SolidXAiIframe.js.map +1 -1
- package/dist/components/core/common/SolidXAiIframe.tsx +1 -1
- package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts +4 -0
- package/dist/components/core/dashboard/mappers/echartsOptionMapper.d.ts.map +1 -0
- package/dist/components/core/dashboard/mappers/echartsOptionMapper.js +79 -0
- package/dist/components/core/dashboard/mappers/echartsOptionMapper.js.map +1 -0
- package/dist/components/core/dashboard/mappers/echartsOptionMapper.ts +81 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js +17 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardBarChartWidget.tsx +6 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js +41 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardChartWidget.tsx +56 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js +14 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardKpiWidget.tsx +19 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js +17 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardLineChartWidget.tsx +6 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js +17 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardPieChartWidget.tsx +6 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js +12 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardTableWidget.tsx +39 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js +7 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/DefaultDashboardUnknownWidget.tsx +9 -0
- package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts +3 -0
- package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.d.ts.map +1 -0
- package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js +203 -0
- package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.js.map +1 -0
- package/dist/components/core/dashboard/widgets/QueueSlaHeatmapWidget.tsx +251 -0
- package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js +1 -1
- package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.tsx +2 -2
- package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts +16 -0
- package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.d.ts.map +1 -0
- package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js +31 -0
- package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.js.map +1 -0
- package/dist/components/core/extension/solid-core/metadata/MetadataExplorerFormWidget.tsx +43 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts +3 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.d.ts.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js +141 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.js.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ClearModulePackageRuntimeHeaderAction.tsx +205 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts +4 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.d.ts.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js +112 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.js.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ExportModulePackageRowAction.tsx +146 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts +11 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.d.ts.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js +22 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.js.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/ModuleImportListHeaderAction.tsx +36 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts +3 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.d.ts.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js +133 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.js.map +1 -0
- package/dist/components/core/extension/solid-core/moduleMetadata/list/moduleMetadataListOnLoad.ts +76 -0
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +2 -2
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +5 -5
- package/dist/components/core/field/FieldListViewData.js +2 -2
- package/dist/components/core/field/FieldListViewData.js.map +1 -1
- package/dist/components/core/field/FieldListViewData.tsx +5 -5
- package/dist/components/core/filter/fields/SolidBooleanField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidBooleanField.js +2 -2
- package/dist/components/core/filter/fields/SolidBooleanField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidBooleanField.tsx +5 -13
- package/dist/components/core/filter/fields/SolidDateField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidDateField.js +2 -2
- package/dist/components/core/filter/fields/SolidDateField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidDateField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidDatetimeField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidDatetimeField.js +2 -2
- package/dist/components/core/filter/fields/SolidDatetimeField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidDatetimeField.tsx +5 -4
- package/dist/components/core/filter/fields/SolidExternalIdField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidExternalIdField.js +2 -2
- package/dist/components/core/filter/fields/SolidExternalIdField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidExternalIdField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidIdField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidIdField.js +2 -2
- package/dist/components/core/filter/fields/SolidIdField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidIdField.tsx +3 -2
- package/dist/components/core/filter/fields/SolidIntField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidIntField.js +2 -2
- package/dist/components/core/filter/fields/SolidIntField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidIntField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidMediaMultipleField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidMediaMultipleField.js +2 -2
- package/dist/components/core/filter/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidMediaSingleField.js +2 -2
- package/dist/components/core/filter/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidSelectionDynamicField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidSelectionDynamicField.js +2 -2
- package/dist/components/core/filter/fields/SolidSelectionDynamicField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +5 -4
- package/dist/components/core/filter/fields/SolidSelectionStaticField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidSelectionStaticField.js +2 -2
- package/dist/components/core/filter/fields/SolidSelectionStaticField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +5 -4
- package/dist/components/core/filter/fields/SolidShortTextField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidShortTextField.js +2 -2
- package/dist/components/core/filter/fields/SolidShortTextField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidShortTextField.tsx +4 -3
- package/dist/components/core/filter/fields/SolidTimeField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidTimeField.js +2 -2
- package/dist/components/core/filter/fields/SolidTimeField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidTimeField.tsx +5 -4
- package/dist/components/core/filter/fields/SolidUuidField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/SolidUuidField.js +2 -2
- package/dist/components/core/filter/fields/SolidUuidField.js.map +1 -1
- package/dist/components/core/filter/fields/SolidUuidField.tsx +5 -4
- package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js +2 -2
- package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.tsx +5 -4
- package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js +2 -2
- package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +5 -4
- package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js +2 -2
- package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js.map +1 -1
- package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.tsx +5 -4
- package/dist/components/core/form/SolidFormActionHeader.js +8 -8
- package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
- package/dist/components/core/form/SolidFormActionHeader.tsx +13 -13
- package/dist/components/core/form/SolidFormFieldRender.js +1 -1
- package/dist/components/core/form/SolidFormFieldRender.js.map +1 -1
- package/dist/components/core/form/SolidFormFieldRender.tsx +1 -1
- package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormFooter.js +14 -7
- package/dist/components/core/form/SolidFormFooter.js.map +1 -1
- package/dist/components/core/form/SolidFormFooter.tsx +16 -7
- package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormView.js +207 -68
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +197 -45
- package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js +16 -3
- package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js.map +1 -1
- package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.tsx +25 -16
- package/dist/components/core/form/SolidFormViewNormalHeaderButton.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormViewNormalHeaderButton.js +19 -5
- package/dist/components/core/form/SolidFormViewNormalHeaderButton.js.map +1 -1
- package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +25 -9
- package/dist/components/core/form/SolidFormViewShimmerLoading.js +1 -1
- package/dist/components/core/form/SolidFormViewShimmerLoading.js.map +1 -1
- package/dist/components/core/form/SolidFormViewShimmerLoading.tsx +46 -46
- package/dist/components/core/form/field-quality-check-fixes.md +201 -0
- package/dist/components/core/form/fields/SolidBooleanField.js +3 -3
- package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
- package/dist/components/core/form/fields/SolidBooleanField.tsx +3 -3
- package/dist/components/core/form/fields/SolidComputedField.js +1 -1
- package/dist/components/core/form/fields/SolidComputedField.js.map +1 -1
- package/dist/components/core/form/fields/SolidComputedField.tsx +1 -1
- package/dist/components/core/form/fields/SolidDateField.js +2 -2
- package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDateField.tsx +2 -2
- package/dist/components/core/form/fields/SolidDateTimeField.js +2 -2
- package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDateTimeField.tsx +2 -2
- package/dist/components/core/form/fields/SolidDecimalField.js +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDecimalField.tsx +1 -1
- package/dist/components/core/form/fields/SolidEmailField.js +1 -1
- package/dist/components/core/form/fields/SolidEmailField.js.map +1 -1
- package/dist/components/core/form/fields/SolidEmailField.tsx +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.js +3 -3
- package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.tsx +3 -3
- package/dist/components/core/form/fields/SolidJsonField.js +3 -3
- package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
- package/dist/components/core/form/fields/SolidJsonField.tsx +3 -3
- package/dist/components/core/form/fields/SolidLongTextField.d.ts +0 -1
- package/dist/components/core/form/fields/SolidLongTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.js +6 -58
- package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidLongTextField.tsx +12 -107
- package/dist/components/core/form/fields/SolidMediaMultipleField.js +11 -11
- package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +28 -28
- package/dist/components/core/form/fields/SolidMediaSingleField.js +5 -5
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +9 -9
- package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.js +12 -6
- package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
- package/dist/components/core/form/fields/SolidPasswordField.tsx +13 -6
- package/dist/components/core/form/fields/SolidRichTextField.js +2 -2
- package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidRichTextField.tsx +2 -2
- package/dist/components/core/form/fields/SolidSelectionDynamicField.js +2 -2
- package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +2 -2
- package/dist/components/core/form/fields/SolidSelectionStaticField.js +1 -1
- package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
- package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.js +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.tsx +1 -1
- package/dist/components/core/form/fields/SolidTimeField.js +2 -2
- package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidTimeField.tsx +2 -2
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts +8 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +123 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -0
- package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +140 -0
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +20 -18
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +47 -37
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +18 -18
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +17 -13
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +19 -17
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +28 -27
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.tsx +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.tsx +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +5 -5
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +17 -17
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js +1 -1
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +1 -1
- package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js +1 -1
- package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.tsx +1 -1
- package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
- package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanBoard.js +2 -2
- package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
- package/dist/components/core/kanban/KanbanBoard.tsx +2 -1
- package/dist/components/core/kanban/KanbanCard.d.ts +1 -0
- package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanCard.js +15 -4
- package/dist/components/core/kanban/KanbanCard.js.map +1 -1
- package/dist/components/core/kanban/KanbanCard.tsx +27 -4
- package/dist/components/core/kanban/KanbanColumn.d.ts +2 -1
- package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanColumn.js +4 -4
- package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
- package/dist/components/core/kanban/KanbanColumn.tsx +5 -4
- package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +44 -39
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +22 -10
- package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.js +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +5 -1
- package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -1
- package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +2 -1
- package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +2 -2
- package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +10 -21
- package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +2 -2
- package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +10 -18
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +6 -3
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +24 -30
- package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +2 -2
- package/dist/components/core/list/ListViewRowActionPopup.js +1 -1
- package/dist/components/core/list/ListViewRowActionPopup.js.map +1 -1
- package/dist/components/core/list/ListViewRowActionPopup.tsx +1 -2
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +3 -3
- package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
- package/dist/components/core/list/SolidDataTable.js +3 -2
- package/dist/components/core/list/SolidDataTable.js.map +1 -1
- package/dist/components/core/list/SolidDataTable.tsx +9 -10
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +3 -0
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +2 -0
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +123 -100
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +70 -41
- package/dist/components/core/list/SolidListViewColumn.d.ts +3 -1
- package/dist/components/core/list/SolidListViewColumn.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.js +27 -2
- package/dist/components/core/list/SolidListViewColumn.js.map +1 -1
- package/dist/components/core/list/SolidListViewColumn.tsx +16 -3
- package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewConfigure.js +11 -10
- package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
- package/dist/components/core/list/SolidListViewConfigure.tsx +9 -3
- package/dist/components/core/list/SolidListViewHeaderButton.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewHeaderButton.js +13 -3
- package/dist/components/core/list/SolidListViewHeaderButton.js.map +1 -1
- package/dist/components/core/list/SolidListViewHeaderButton.tsx +16 -7
- package/dist/components/core/list/SolidListViewHeaderContextMenuButton.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js +19 -7
- package/dist/components/core/list/SolidListViewHeaderContextMenuButton.js.map +1 -1
- package/dist/components/core/list/SolidListViewHeaderContextMenuButton.tsx +19 -6
- package/dist/components/core/list/SolidListViewRowActionMenuItem.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewRowActionMenuItem.js +14 -5
- package/dist/components/core/list/SolidListViewRowActionMenuItem.js.map +1 -1
- package/dist/components/core/list/SolidListViewRowActionMenuItem.tsx +17 -6
- package/dist/components/core/list/SolidListViewRowActionsMenu.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewRowActionsMenu.js +7 -1
- package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
- package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +5 -1
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +1 -1
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -1
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +7 -6
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -1
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +10 -9
- package/dist/components/core/list/SolidListingHeader.js +1 -1
- package/dist/components/core/list/SolidListingHeader.js.map +1 -1
- package/dist/components/core/list/SolidListingHeader.tsx +4 -4
- package/dist/components/core/list/SolidTableRowCell.js +1 -1
- package/dist/components/core/list/SolidTableRowCell.js.map +1 -1
- package/dist/components/core/list/SolidTableRowCell.tsx +1 -1
- package/dist/components/core/list/columns/SolidBooleanColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidBooleanColumn.js +4 -6
- package/dist/components/core/list/columns/SolidBooleanColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidBooleanColumn.tsx +1 -3
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +8 -7
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +11 -10
- package/dist/components/core/list/columns/SolidMediaSingleColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidMediaSingleColumn.js +6 -5
- package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +6 -5
- package/dist/components/core/list/columns/SolidRelationColumn.d.ts +1 -1
- package/dist/components/core/list/columns/SolidRelationColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/SolidRelationColumn.js +2 -2
- package/dist/components/core/list/columns/SolidRelationColumn.js.map +1 -1
- package/dist/components/core/list/columns/SolidRelationColumn.tsx +2 -2
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts +2 -2
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.d.ts.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +9 -4
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
- package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +14 -4
- package/dist/components/core/list/field-quality-check-fixes.md +178 -0
- package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js +1 -1
- package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js.map +1 -1
- package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.tsx +1 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js +1 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js.map +1 -1
- package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +1 -2
- package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts +3 -0
- package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.d.ts.map +1 -0
- package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js +39 -0
- package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.js.map +1 -0
- package/dist/components/core/list/widgets/SolidUserBlockedStatusListWidget.tsx +50 -0
- package/dist/components/core/locales/SolidLocale.js +3 -3
- package/dist/components/core/locales/SolidLocale.js.map +1 -1
- package/dist/components/core/locales/SolidLocale.tsx +7 -7
- package/dist/components/core/locales/solid-locale.css +5 -4
- package/dist/components/core/model/CreateModel.css +48 -0
- package/dist/components/core/model/CreateModel.d.ts +1 -0
- package/dist/components/core/model/CreateModel.d.ts.map +1 -1
- package/dist/components/core/model/CreateModel.js +80 -128
- package/dist/components/core/model/CreateModel.js.map +1 -1
- package/dist/components/core/model/CreateModel.tsx +102 -226
- package/dist/components/core/model/FieldMetaData.d.ts +1 -1
- package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaData.js +7 -23
- package/dist/components/core/model/FieldMetaData.js.map +1 -1
- package/dist/components/core/model/FieldMetaData.tsx +17 -50
- package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.js +198 -224
- package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
- package/dist/components/core/model/FieldMetaDataForm.tsx +75 -302
- package/dist/components/core/model/ModelListViewData.js +4 -4
- package/dist/components/core/model/ModelListViewData.js.map +1 -1
- package/dist/components/core/model/ModelListViewData.tsx +7 -7
- package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
- package/dist/components/core/model/ModelMetaData.js +13 -25
- package/dist/components/core/model/ModelMetaData.js.map +1 -1
- package/dist/components/core/model/ModelMetaData.tsx +18 -79
- package/dist/components/core/module/CreateModule.css +44 -0
- package/dist/components/core/module/CreateModule.d.ts +1 -0
- package/dist/components/core/module/CreateModule.d.ts.map +1 -1
- package/dist/components/core/module/CreateModule.js +40 -57
- package/dist/components/core/module/CreateModule.js.map +1 -1
- package/dist/components/core/module/CreateModule.tsx +246 -264
- package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
- package/dist/components/core/module/ModuleListViewData.js +48 -8
- package/dist/components/core/module/ModuleListViewData.js.map +1 -1
- package/dist/components/core/module/ModuleListViewData.tsx +65 -7
- package/dist/components/core/module/ModuleMetadataExplorer.css +638 -0
- package/dist/components/core/module/ModuleMetadataExplorer.d.ts +15 -0
- package/dist/components/core/module/ModuleMetadataExplorer.d.ts.map +1 -0
- package/dist/components/core/module/ModuleMetadataExplorer.js +666 -0
- package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -0
- package/dist/components/core/module/ModuleMetadataExplorer.tsx +1000 -0
- package/dist/components/core/module/ModulePackageDialog.css +540 -0
- package/dist/components/core/module/ModulePackageDialog.d.ts +16 -0
- package/dist/components/core/module/ModulePackageDialog.d.ts.map +1 -0
- package/dist/components/core/module/ModulePackageDialog.js +625 -0
- package/dist/components/core/module/ModulePackageDialog.js.map +1 -0
- package/dist/components/core/module/ModulePackageDialog.tsx +906 -0
- package/dist/components/core/solid-ai/SolidAiChat.module.css +2 -2
- package/dist/components/core/tree/SolidTreeTable.js +1 -1
- package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
- package/dist/components/core/tree/SolidTreeTable.tsx +1 -1
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +4 -4
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +16 -12
- package/dist/components/core/users/CreateUser.d.ts.map +1 -1
- package/dist/components/core/users/CreateUser.js +51 -27
- package/dist/components/core/users/CreateUser.js.map +1 -1
- package/dist/components/core/users/CreateUser.tsx +47 -68
- package/dist/components/core/users/CreateUserRole.js +2 -2
- package/dist/components/core/users/CreateUserRole.js.map +1 -1
- package/dist/components/core/users/CreateUserRole.tsx +9 -9
- package/dist/components/core/users/UserListView.js +4 -4
- package/dist/components/core/users/UserListView.js.map +1 -1
- package/dist/components/core/users/UserListView.tsx +6 -6
- package/dist/components/layout/AdminHeaderActions.d.ts +8 -0
- package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -0
- package/dist/components/layout/AdminHeaderActions.js +77 -0
- package/dist/components/layout/AdminHeaderActions.js.map +1 -0
- package/dist/components/layout/AdminHeaderActions.tsx +155 -0
- package/dist/components/layout/AdminSidebar.js +1 -1
- package/dist/components/layout/AdminSidebar.js.map +1 -1
- package/dist/components/layout/AdminSidebar.tsx +1 -1
- package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
- package/dist/components/layout/AdminTopHeader.js +14 -5
- package/dist/components/layout/AdminTopHeader.js.map +1 -1
- package/dist/components/layout/AdminTopHeader.tsx +35 -28
- package/dist/components/layout/AppSidebar.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.js +2 -1
- package/dist/components/layout/AppSidebar.js.map +1 -1
- package/dist/components/layout/AppSidebar.tsx +2 -0
- package/dist/components/layout/CustomPagination.js +0 -1
- package/dist/components/layout/CustomPagination.js.map +1 -1
- package/dist/components/layout/CustomPagination.tsx +0 -1
- package/dist/components/layout/FilterMenu.js +1 -1
- package/dist/components/layout/FilterMenu.js.map +1 -1
- package/dist/components/layout/FilterMenu.tsx +4 -4
- package/dist/components/layout/Footer.js +1 -1
- package/dist/components/layout/Footer.js.map +1 -1
- package/dist/components/layout/Footer.tsx +1 -1
- package/dist/components/layout/GlobalSearch.js +1 -1
- package/dist/components/layout/GlobalSearch.js.map +1 -1
- package/dist/components/layout/GlobalSearch.tsx +1 -1
- package/dist/components/layout/ListingHeader.js +3 -3
- package/dist/components/layout/ListingHeader.js.map +1 -1
- package/dist/components/layout/ListingHeader.tsx +4 -4
- package/dist/components/layout/Loader.js +1 -1
- package/dist/components/layout/Loader.js.map +1 -1
- package/dist/components/layout/Loader.tsx +1 -1
- package/dist/components/layout/UserSidebar.js +1 -1
- package/dist/components/layout/UserSidebar.js.map +1 -1
- package/dist/components/layout/UserSidebar.tsx +1 -1
- package/dist/components/layout/navbar-one.js +2 -2
- package/dist/components/layout/navbar-one.js.map +1 -1
- package/dist/components/layout/navbar-one.tsx +8 -8
- package/dist/components/layout/navbar-two-menu.js +2 -2
- package/dist/components/layout/navbar-two-menu.js.map +1 -1
- package/dist/components/layout/navbar-two-menu.tsx +7 -7
- package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
- package/dist/components/layout/user-profile-menu.js +57 -33
- package/dist/components/layout/user-profile-menu.js.map +1 -1
- package/dist/components/layout/user-profile-menu.tsx +11 -59
- package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts +2 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.js +60 -6
- package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +81 -22
- package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidButton.js +10 -2
- package/dist/components/shad-cn-ui/SolidButton.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidButton.tsx +10 -2
- package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.js +3 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +3 -0
- package/dist/components/shad-cn-ui/SolidDatePicker.d.ts +1 -1
- package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidDatePicker.js +2 -2
- package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidDatePicker.tsx +4 -0
- package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidDialog.js +38 -4
- package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidDialog.tsx +47 -3
- package/dist/components/shad-cn-ui/SolidIcon.d.ts +2 -1
- package/dist/components/shad-cn-ui/SolidIcon.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidIcon.js +1 -0
- package/dist/components/shad-cn-ui/SolidIcon.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidIcon.tsx +1 -0
- package/dist/components/shad-cn-ui/SolidPasswordInput.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidPasswordInput.js +1 -1
- package/dist/components/shad-cn-ui/SolidPasswordInput.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidPasswordInput.tsx +1 -0
- package/dist/components/shad-cn-ui/SolidPopover.d.ts +1 -0
- package/dist/components/shad-cn-ui/SolidPopover.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidPopover.js +124 -5
- package/dist/components/shad-cn-ui/SolidPopover.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidPopover.tsx +173 -10
- package/dist/components/shad-cn-ui/SolidSelect.d.ts +2 -1
- package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidSelect.js +51 -1
- package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidSelect.tsx +95 -0
- package/dist/constants/error-messages.d.ts +13 -0
- package/dist/constants/error-messages.d.ts.map +1 -1
- package/dist/constants/error-messages.js +17 -0
- package/dist/constants/error-messages.js.map +1 -1
- package/dist/constants/error-messages.ts +15 -0
- package/dist/helpers/buttonEnvironment.d.ts +5 -0
- package/dist/helpers/buttonEnvironment.d.ts.map +1 -0
- package/dist/helpers/buttonEnvironment.js +30 -0
- package/dist/helpers/buttonEnvironment.js.map +1 -0
- package/dist/helpers/buttonEnvironment.ts +35 -0
- package/dist/helpers/buttonPresentation.d.ts +24 -0
- package/dist/helpers/buttonPresentation.d.ts.map +1 -0
- package/dist/helpers/buttonPresentation.js +28 -0
- package/dist/helpers/buttonPresentation.js.map +1 -0
- package/dist/helpers/buttonPresentation.ts +53 -0
- package/dist/helpers/fileTypeIcon.d.ts +12 -0
- package/dist/helpers/fileTypeIcon.d.ts.map +1 -0
- package/dist/helpers/fileTypeIcon.js +37 -0
- package/dist/helpers/fileTypeIcon.js.map +1 -0
- package/dist/helpers/fileTypeIcon.tsx +65 -0
- package/dist/helpers/registry.d.ts.map +1 -1
- package/dist/helpers/registry.js +28 -10
- package/dist/helpers/registry.js.map +1 -1
- package/dist/helpers/registry.ts +31 -13
- package/dist/helpers/waitForBackendAvailability.d.ts +7 -0
- package/dist/helpers/waitForBackendAvailability.d.ts.map +1 -0
- package/dist/helpers/waitForBackendAvailability.js +86 -0
- package/dist/helpers/waitForBackendAvailability.js.map +1 -0
- package/dist/helpers/waitForBackendAvailability.ts +37 -0
- package/dist/index.d.ts +8 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -8
- package/dist/index.js.map +1 -1
- package/dist/index.ts +32 -13
- package/dist/nextAuth/authProviders.d.ts +4 -0
- package/dist/nextAuth/authProviders.d.ts.map +1 -0
- package/dist/nextAuth/authProviders.js +198 -0
- package/dist/nextAuth/authProviders.js.map +1 -0
- package/dist/nextAuth/authProviders.tsx +232 -0
- package/dist/nextAuth/handleLogout.d.ts +2 -0
- package/dist/nextAuth/handleLogout.d.ts.map +1 -0
- package/dist/nextAuth/handleLogout.js +36 -0
- package/dist/nextAuth/handleLogout.js.map +1 -0
- package/dist/nextAuth/handleLogout.tsx +39 -0
- package/dist/nextAuth/refreshAccessToken.d.ts +2 -0
- package/dist/nextAuth/refreshAccessToken.d.ts.map +1 -0
- package/dist/nextAuth/refreshAccessToken.js +24 -0
- package/dist/nextAuth/refreshAccessToken.js.map +1 -0
- package/dist/nextAuth/refreshAccessToken.tsx +28 -0
- package/dist/redux/api/dashboardRuntimeApi.d.ts +34 -0
- package/dist/redux/api/dashboardRuntimeApi.d.ts.map +1 -0
- package/dist/redux/api/dashboardRuntimeApi.js +79 -0
- package/dist/redux/api/dashboardRuntimeApi.js.map +1 -0
- package/dist/redux/api/dashboardRuntimeApi.ts +75 -0
- package/dist/redux/api/moduleApi.d.ts +26 -1
- package/dist/redux/api/moduleApi.d.ts.map +1 -1
- package/dist/redux/api/moduleApi.js +237 -1
- package/dist/redux/api/moduleApi.js.map +1 -1
- package/dist/redux/api/moduleApi.ts +181 -1
- package/dist/redux/api/solidChatterMessageApi.d.ts +2 -1
- package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
- package/dist/redux/api/solidChatterMessageApi.js +11 -1
- package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
- package/dist/redux/api/solidChatterMessageApi.ts +10 -1
- package/dist/redux/features/settingsSlice.d.ts +20 -0
- package/dist/redux/features/settingsSlice.d.ts.map +1 -0
- package/dist/redux/features/settingsSlice.js +39 -0
- package/dist/redux/features/settingsSlice.js.map +1 -0
- package/dist/redux/features/settingsSlice.ts +60 -0
- package/dist/redux/store/defaultStoreConfig.d.ts +57 -9
- package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
- package/dist/redux/store/defaultStoreConfig.js +2 -6
- package/dist/redux/store/defaultStoreConfig.js.map +1 -1
- package/dist/redux/store/defaultStoreConfig.ts +2 -6
- package/dist/redux/store/solidEntityApiPool.d.ts +1 -0
- package/dist/redux/store/solidEntityApiPool.d.ts.map +1 -1
- package/dist/redux/store/solidEntityApiPool.js +4 -0
- package/dist/redux/store/solidEntityApiPool.js.map +1 -1
- package/dist/redux/store/solidEntityApiPool.ts +4 -0
- package/dist/resources/globals.css +195 -20
- package/dist/resources/shadcn-base.css +392 -175
- package/dist/resources/solid-custom.css +6565 -0
- package/dist/resources/solid-primereact.css +14 -12
- package/dist/resources/solid-responsive.css +259 -51
- package/dist/resources/solid-tailwind-generated.css +1 -0
- package/dist/resources/solid-tailwind.css +3 -0
- package/dist/routes/AppEventListener.d.ts.map +1 -1
- package/dist/routes/AppEventListener.js +58 -8
- package/dist/routes/AppEventListener.js.map +1 -1
- package/dist/routes/AppEventListener.tsx +69 -8
- package/dist/routes/pages/admin/core/DashboardPage.d.ts +1 -0
- package/dist/routes/pages/admin/core/DashboardPage.d.ts.map +1 -1
- package/dist/routes/pages/admin/core/DashboardPage.js +860 -5
- package/dist/routes/pages/admin/core/DashboardPage.js.map +1 -1
- package/dist/routes/pages/admin/core/DashboardPage.module.css +219 -0
- package/dist/routes/pages/admin/core/DashboardPage.tsx +1025 -7
- package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts +2 -0
- package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts.map +1 -0
- package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js +6 -0
- package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js.map +1 -0
- package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.tsx +5 -0
- package/dist/routes/pages/auth/SsoPage.js +1 -1
- package/dist/routes/pages/auth/SsoPage.js.map +1 -1
- package/dist/routes/pages/auth/SsoPage.tsx +1 -1
- package/dist/routes/solidRoutes.d.ts.map +1 -1
- package/dist/routes/solidRoutes.js +2 -2
- package/dist/routes/solidRoutes.js.map +1 -1
- package/dist/routes/solidRoutes.tsx +2 -2
- package/dist/routes/types.d.ts +1 -1
- package/dist/routes/types.d.ts.map +1 -1
- package/dist/routes/types.js.map +1 -1
- package/dist/routes/types.ts +1 -1
- package/dist/styles.d.ts +2 -1
- package/dist/styles.d.ts.map +1 -1
- package/dist/styles.js +2 -1
- package/dist/styles.js.map +1 -1
- package/dist/styles.ts +2 -1
- package/dist/types/dashboard.d.ts +16 -0
- package/dist/types/dashboard.d.ts.map +1 -0
- package/dist/types/dashboard.js +2 -0
- package/dist/types/dashboard.js.map +1 -0
- package/dist/types/dashboard.ts +23 -0
- package/dist/types/extension-registry.d.ts +1 -0
- package/dist/types/extension-registry.d.ts.map +1 -1
- package/dist/types/extension-registry.js +1 -0
- package/dist/types/extension-registry.js.map +1 -1
- package/dist/types/extension-registry.ts +1 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/jsoneditor.d.ts +4 -0
- package/dist/types/solid-core.d.ts +1 -0
- package/package.json +9 -3
- package/dist/components/core/list/SolidDataTablePagination.d.ts +0 -15
- package/dist/components/core/list/SolidDataTablePagination.d.ts.map +0 -1
- package/dist/components/core/list/SolidDataTablePagination.js +0 -22
- package/dist/components/core/list/SolidDataTablePagination.js.map +0 -1
- package/dist/components/core/list/SolidDataTablePagination.tsx +0 -71
- package/dist/components/solid-ui/SolidButton.d.ts +0 -14
- package/dist/components/solid-ui/SolidButton.d.ts.map +0 -1
- package/dist/components/solid-ui/SolidButton.js +0 -36
- package/dist/components/solid-ui/SolidButton.js.map +0 -1
- package/dist/components/solid-ui/SolidButton.tsx +0 -54
- package/dist/components/solid-ui/SolidTabs.d.ts +0 -18
- package/dist/components/solid-ui/SolidTabs.d.ts.map +0 -1
- package/dist/components/solid-ui/SolidTabs.js +0 -22
- package/dist/components/solid-ui/SolidTabs.js.map +0 -1
- package/dist/components/solid-ui/SolidTabs.tsx +0 -73
- package/dist/components/solid-ui/index.d.ts +0 -3
- package/dist/components/solid-ui/index.d.ts.map +0 -1
- package/dist/components/solid-ui/index.js +0 -3
- package/dist/components/solid-ui/index.js.map +0 -1
- package/dist/components/solid-ui/index.ts +0 -2
|
@@ -213,17 +213,17 @@ export var ModelListViewData = function () {
|
|
|
213
213
|
if (record.isSystem) {
|
|
214
214
|
return null;
|
|
215
215
|
}
|
|
216
|
-
return (_jsx("button", { type: "button", className: "
|
|
216
|
+
return (_jsx("button", { type: "button", className: "border-0 bg-transparent text-[var(--primary-color)] cursor-pointer", onClick: function () {
|
|
217
217
|
setGenerateCodeForModel(record.id);
|
|
218
218
|
setGenerateCodeVisible(true);
|
|
219
219
|
}, children: _jsx(SolidIcon, { name: "si-cog", style: { fontSize: "1rem" }, "aria-hidden": true }) }));
|
|
220
220
|
};
|
|
221
|
-
return (_jsxs("div", { className: "solid-model-list w-full", children: [_jsxs("div", { className: "flex gap-
|
|
221
|
+
return (_jsxs("div", { className: "solid-model-list w-full", children: [_jsxs("div", { className: "flex gap-4 mb-6 items-center flex-wrap", children: [_jsx(CreateButton, {}), selectedMenus.length > 0 && (_jsx(SolidButton, { type: "button", label: "Delete", size: "small", severity: "danger", className: "small-button", onClick: function () { return setDialogVisible(true); } }))] }), _jsxs("div", { className: "flex flex-col md:flex-row items-start gap-4 mb-4", children: [_jsx(SolidInput, { value: (_a = pendingFilters.displayName.value) !== null && _a !== void 0 ? _a : "", onChange: function (event) { return handleFilterInputChange("displayName", event.currentTarget.value); }, placeholder: "Search by model name", className: "w-full md:w-20rem" }), _jsx(SolidInput, { value: (_b = pendingFilters["module.displayName"].value) !== null && _b !== void 0 ? _b : "", onChange: function (event) { return handleFilterInputChange("module.displayName", event.currentTarget.value); }, placeholder: "Search by module", className: "w-full md:w-20rem" }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(SolidButton, { size: "small", onClick: applyFilters, label: "Apply" }), _jsx(SolidButton, { size: "small", variant: "ghost", onClick: clearFilters, label: "Clear" })] })] }), (loading || isLoading) && (_jsx("div", { className: "flex justify-center my-4", children: _jsx(SolidSpinner, {}) })), _jsxs(SolidDataTable, { value: modelMetadata, size: "small", paginator: true, rows: rows, rowsPerPageOptions: [10, 25, 50], dataKey: "id", emptyMessage: "No Models found", totalRecords: totalRecords, first: first, onPage: onPageChange, onSort: onSort, sortField: sortField, sortOrder: sortOrder, selection: selectedMenus, onSelectionChange: function (_a) {
|
|
222
222
|
var value = _a.value;
|
|
223
223
|
return setSelectedMenus(value);
|
|
224
|
-
}, children: [_jsx(Column, { selectionMode: "multiple", headerStyle: { width: "3em" } }), _jsx(Column, { field: "id", header: "Id", className: "text-sm", sortable: true, headerClassName: "table-header-fs" }), _jsx(Column, { field: "displayName", header: "Display Name", className: "text-sm", sortable: true, style: { minWidth: "12rem" }, headerClassName: "table-header-fs" }), _jsx(Column, { field: "module.displayName", header: "Module Name", className: "text-sm", style: { minWidth: "12rem" }, headerClassName: "table-header-fs" }), _jsx(Column, { header: "Edit", body: detailsBodyTemplate }), _jsx(Column, { header: "Code", body: generateCodeBodyTemplate })] }), _jsxs(SolidDialog, { visible: isDialogVisible, header: "Confirm Delete", modal: true, className: "solid-confirm-dialog", onHide: function () { return setDialogVisible(false); }, children: [_jsx("p", { children: "Are you sure you want to delete the selected Models?" }), _jsxs("div", { className: "flex justify-
|
|
224
|
+
}, children: [_jsx(Column, { selectionMode: "multiple", headerStyle: { width: "3em" } }), _jsx(Column, { field: "id", header: "Id", className: "text-sm", sortable: true, headerClassName: "table-header-fs" }), _jsx(Column, { field: "displayName", header: "Display Name", className: "text-sm", sortable: true, style: { minWidth: "12rem" }, headerClassName: "table-header-fs" }), _jsx(Column, { field: "module.displayName", header: "Module Name", className: "text-sm", style: { minWidth: "12rem" }, headerClassName: "table-header-fs" }), _jsx(Column, { header: "Edit", body: detailsBodyTemplate }), _jsx(Column, { header: "Code", body: generateCodeBodyTemplate })] }), _jsxs(SolidDialog, { visible: isDialogVisible, header: "Confirm Delete", modal: true, className: "solid-confirm-dialog", onHide: function () { return setDialogVisible(false); }, children: [_jsx("p", { children: "Are you sure you want to delete the selected Models?" }), _jsxs("div", { className: "flex justify-center gap-4 mt-4", children: [_jsx(SolidButton, { label: "Yes", className: "small-button", severity: "danger", autoFocus: true, onClick: deleteBulk }), _jsx(SolidButton, { label: "No", className: "small-button", variant: "ghost", onClick: onDeleteClose })] })] }), _jsxs(SolidDialog, { visible: isGenerateCodeVisible, header: "Generate Code", modal: true, className: "solid-confirm-dialog", onHide: function () {
|
|
225
225
|
setGenerateCodeVisible(false);
|
|
226
226
|
setGenerateCodeForModel(null);
|
|
227
|
-
}, children: [_jsx("p", { className: "text-center", children: "Proceed with model code generation? Existing files will be overwritten." }), _jsx("p", { children: "Below is the list of files that will be created:" }), _jsxs("ul", { children: [_jsx("li", { children: "Model Entity File" }), _jsx("li", { children: "Model Controller File" }), _jsx("li", { children: "Model Service File" }), _jsx("li", { children: "Model Create and Update DTO files" })] }), _jsxs("div", { className: "flex justify-
|
|
227
|
+
}, children: [_jsx("p", { className: "text-center", children: "Proceed with model code generation? Existing files will be overwritten." }), _jsx("p", { children: "Below is the list of files that will be created:" }), _jsxs("ul", { children: [_jsx("li", { children: "Model Entity File" }), _jsx("li", { children: "Model Controller File" }), _jsx("li", { children: "Model Service File" }), _jsx("li", { children: "Model Create and Update DTO files" })] }), _jsxs("div", { className: "flex justify-center gap-4 mt-4", children: [_jsx(SolidButton, { label: "Yes", className: "small-button", severity: "danger", autoFocus: true, onClick: handleGenerateCode }), _jsx(SolidButton, { label: "No", className: "small-button", variant: "ghost", onClick: function () { return setGenerateCodeVisible(false); } })] })] })] }));
|
|
228
228
|
};
|
|
229
229
|
//# sourceMappingURL=ModelListViewData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelListViewData.js","sourceRoot":"","sources":["../../../../src/components/core/model/ModelListViewData.tsx"],"names":[],"mappings":"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","sourcesContent":["import { CreateButton } from \"../../../components/common/CreateButton\";\nimport {\n useDeleteMultipleModelsMutation,\n useGenerateCodeForModelMutation,\n useLazyGetModelsQuery,\n} from \"../../../redux/api/modelApi\";\nimport Link from \"../../common/Link\";\nimport qs from \"qs\";\nimport { useEffect, useState } from \"react\";\nimport { FilterMatchMode } from \"../filter/filterMatchMode\";\nimport { SolidButton, SolidDialog, SolidIcon, SolidInput, SolidSpinner } from \"../../shad-cn-ui\";\nimport { Column, DataTableStateEvent, SolidDataTable } from \"../list/SolidDataTable\";\n\nexport interface ModelMetaData {\n id: string;\n displayName: string;\n module: string;\n isSystem: boolean;\n}\n\ntype FilterMeta = Record<string, { value: string | null; matchMode: string }>;\n\nconst createDefaultFilters = (): FilterMeta => ({\n displayName: { value: null, matchMode: FilterMatchMode.STARTS_WITH },\n \"module.displayName\": { value: null, matchMode: FilterMatchMode.STARTS_WITH },\n});\n\nexport const ModelListViewData = () => {\n const [modelMetadata, setModelMetadata] = useState<ModelMetaData[]>([]);\n const [filters, setFilters] = useState<FilterMeta>(() => createDefaultFilters());\n const [pendingFilters, setPendingFilters] = useState<FilterMeta>(() => createDefaultFilters());\n const [first, setFirst] = useState(0);\n const [rows, setRows] = useState(25);\n const [totalRecords, setTotalRecords] = useState(0);\n const [sortField, setSortField] = useState(\"\");\n const [sortOrder, setSortOrder] = useState<1 | -1 | 0>(0);\n const [selectedMenus, setSelectedMenus] = useState<ModelMetaData[]>([]);\n const [loading, setLoading] = useState<boolean>(true);\n const [isDialogVisible, setDialogVisible] = useState(false);\n const [isGenerateCodeVisible, setGenerateCodeVisible] = useState(false);\n const [generateCodeForModel, setGenerateCodeForModel] = useState<string | null>(null);\n\n const [triggerGetModels, { data: model, isLoading }] = useLazyGetModelsQuery();\n const [generateCode] = useGenerateCodeForModelMutation();\n const [deleteManyModel] = useDeleteMultipleModelsMutation();\n\n useEffect(() => {\n if (model) {\n setModelMetadata(model?.records ?? []);\n setTotalRecords(model?.meta?.totalRecords ?? 0);\n setLoading(false);\n }\n }, [model]);\n\n useEffect(() => {\n const queryData = {\n offset: 0,\n limit: rows,\n sort: [`id:desc`],\n };\n const queryString = qs.stringify(queryData, { encodeValuesOnly: true });\n triggerGetModels(queryString);\n setSelectedMenus([]);\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n const onPageChange = (event: { first: number; rows: number }) => {\n setFirst(event.first);\n setRows(event.rows);\n setQueryString(event.first, event.rows, sortField, sortOrder, filters);\n };\n\n const onSort = (event: DataTableStateEvent) => {\n const nextSortField = event.sortField ?? \"\";\n const validSortOrder = event.sortOrder === 1 || event.sortOrder === -1 ? event.sortOrder : 0;\n setSortField(nextSortField);\n setSortOrder(validSortOrder);\n setFirst(0);\n setQueryString(0, rows, nextSortField, validSortOrder, filters);\n };\n\n const setQueryString = async (\n offset?: number,\n rowCount?: number,\n field?: string,\n order?: 1 | -1 | 0,\n filterQuery?: FilterMeta\n ) => {\n const formattedFilters: Record<string, any> = {};\n\n Object.keys(filterQuery ?? {}).forEach((fieldName) => {\n const filterValue = filterQuery?.[fieldName]?.value;\n const matchMode = filterQuery?.[fieldName]?.matchMode;\n\n if (filterValue !== null && filterValue !== undefined && matchMode) {\n let operator = matchMode;\n switch (matchMode) {\n case FilterMatchMode.CONTAINS:\n operator = \"$containsi\";\n break;\n case FilterMatchMode.STARTS_WITH:\n operator = \"$startsWithi\";\n break;\n case FilterMatchMode.EQUALS:\n operator = \"$eqi\";\n break;\n case FilterMatchMode.NOT_CONTAINS:\n operator = \"$notContainsi\";\n break;\n case FilterMatchMode.NOT_EQUALS:\n operator = \"$nei\";\n break;\n case FilterMatchMode.ENDS_WITH:\n operator = \"$endsWithi\";\n break;\n default:\n operator = matchMode;\n }\n\n if (fieldName.includes(\".\")) {\n const [parent, child] = fieldName.split(\".\");\n if (!formattedFilters[parent]) {\n formattedFilters[parent] = {};\n }\n formattedFilters[parent][child] = { [operator]: filterValue };\n } else {\n formattedFilters[fieldName] = { [operator]: filterValue };\n }\n }\n });\n\n const queryData: Record<string, any> = {\n offset: offset ?? first,\n limit: rowCount ?? rows,\n filters: formattedFilters,\n };\n\n if (field) {\n queryData.sort = [`${field}:${order === 0 ? null : order === 1 ? \"asc\" : \"desc\"}`];\n }\n\n const queryString = qs.stringify(queryData, { encodeValuesOnly: true });\n return triggerGetModels(queryString);\n };\n\n const handleFilterInputChange = (fieldName: string, value: string) => {\n setPendingFilters((prev) => ({\n ...prev,\n [fieldName]: { ...prev[fieldName], value },\n }));\n };\n\n const applyFilters = () => {\n setFirst(0);\n setFilters(pendingFilters);\n setQueryString(0, rows, sortField, sortOrder, pendingFilters);\n };\n\n const clearFilters = () => {\n const defaults = createDefaultFilters();\n setPendingFilters(defaults);\n setFilters(defaults);\n setFirst(0);\n setQueryString(0, rows, sortField, sortOrder, defaults);\n };\n\n const deleteBulk = () => {\n const deleteList = selectedMenus.map((element) => element.id);\n deleteManyModel(deleteList);\n setDialogVisible(false);\n setSelectedMenus([]);\n };\n\n const onDeleteClose = () => {\n setDialogVisible(false);\n setSelectedMenus([]);\n };\n\n const handleGenerateCode = async () => {\n if (!generateCodeForModel) return;\n await generateCode({ id: generateCodeForModel });\n setGenerateCodeVisible(false);\n setGenerateCodeForModel(null);\n };\n\n const detailsBodyTemplate = (record: ModelMetaData) => (\n <Link\n href={`${record.id}`}\n rel=\"noopener noreferrer\"\n className=\"text-sm font-bold p-0\"\n style={{ color: \"#12415D\" }}\n >\n {record.isSystem ? (\n <SolidIcon name=\"si-eye\" style={{ fontSize: \"1rem\" }} aria-hidden />\n ) : (\n <SolidIcon name=\"si-pencil\" style={{ fontSize: \"1rem\" }} aria-hidden />\n )}\n </Link>\n );\n\n const generateCodeBodyTemplate = (record: ModelMetaData) => {\n if (record.isSystem) {\n return null;\n }\n return (\n <button\n type=\"button\"\n className=\"text-primary border-0 bg-transparent cursor-pointer\"\n onClick={() => {\n setGenerateCodeForModel(record.id);\n setGenerateCodeVisible(true);\n }}\n >\n <SolidIcon name=\"si-cog\" style={{ fontSize: \"1rem\" }} aria-hidden />\n </button>\n );\n };\n\n return (\n <div className=\"solid-model-list w-full\">\n <div className=\"flex gap-3 mb-4 align-items-center flex-wrap\">\n <CreateButton />\n {selectedMenus.length > 0 && (\n <SolidButton\n type=\"button\"\n label=\"Delete\"\n size=\"small\"\n severity=\"danger\"\n className=\"small-button\"\n onClick={() => setDialogVisible(true)}\n />\n )}\n </div>\n\n <div className=\"flex flex-column md:flex-row align-items-start gap-3 mb-3\">\n <SolidInput\n value={pendingFilters.displayName.value ?? \"\"}\n onChange={(event) => handleFilterInputChange(\"displayName\", event.currentTarget.value)}\n placeholder=\"Search by model name\"\n className=\"w-full md:w-20rem\"\n />\n <SolidInput\n value={pendingFilters[\"module.displayName\"].value ?? \"\"}\n onChange={(event) => handleFilterInputChange(\"module.displayName\", event.currentTarget.value)}\n placeholder=\"Search by module\"\n className=\"w-full md:w-20rem\"\n />\n <div className=\"flex align-items-center gap-2\">\n <SolidButton size=\"small\" onClick={applyFilters} label=\"Apply\" />\n <SolidButton size=\"small\" variant=\"ghost\" onClick={clearFilters} label=\"Clear\" />\n </div>\n </div>\n\n {(loading || isLoading) && (\n <div className=\"flex justify-content-center my-3\">\n <SolidSpinner />\n </div>\n )}\n\n <SolidDataTable\n value={modelMetadata}\n size=\"small\"\n paginator\n rows={rows}\n rowsPerPageOptions={[10, 25, 50]}\n dataKey=\"id\"\n emptyMessage=\"No Models found\"\n totalRecords={totalRecords}\n first={first}\n onPage={onPageChange}\n onSort={onSort}\n sortField={sortField}\n sortOrder={sortOrder}\n selection={selectedMenus}\n onSelectionChange={({ value }) => setSelectedMenus(value)}\n >\n <Column selectionMode=\"multiple\" headerStyle={{ width: \"3em\" }} />\n <Column field=\"id\" header=\"Id\" className=\"text-sm\" sortable headerClassName=\"table-header-fs\" />\n <Column\n field=\"displayName\"\n header=\"Display Name\"\n className=\"text-sm\"\n sortable\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n <Column\n field=\"module.displayName\"\n header=\"Module Name\"\n className=\"text-sm\"\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n <Column header=\"Edit\" body={detailsBodyTemplate} />\n <Column header=\"Code\" body={generateCodeBodyTemplate} />\n </SolidDataTable>\n\n <SolidDialog\n visible={isDialogVisible}\n header=\"Confirm Delete\"\n modal\n className=\"solid-confirm-dialog\"\n onHide={() => setDialogVisible(false)}\n >\n <p>Are you sure you want to delete the selected Models?</p>\n <div className=\"flex justify-content-center gap-3 mt-3\">\n <SolidButton label=\"Yes\" className=\"small-button\" severity=\"danger\" autoFocus onClick={deleteBulk} />\n <SolidButton label=\"No\" className=\"small-button\" variant=\"ghost\" onClick={onDeleteClose} />\n </div>\n </SolidDialog>\n\n <SolidDialog\n visible={isGenerateCodeVisible}\n header=\"Generate Code\"\n modal\n className=\"solid-confirm-dialog\"\n onHide={() => {\n setGenerateCodeVisible(false);\n setGenerateCodeForModel(null);\n }}\n >\n <p className=\"text-center\">Proceed with model code generation? Existing files will be overwritten.</p>\n <p>Below is the list of files that will be created:</p>\n <ul>\n <li>Model Entity File</li>\n <li>Model Controller File</li>\n <li>Model Service File</li>\n <li>Model Create and Update DTO files</li>\n </ul>\n <div className=\"flex justify-content-center gap-3 mt-3\">\n <SolidButton label=\"Yes\" className=\"small-button\" severity=\"danger\" autoFocus onClick={handleGenerateCode} />\n <SolidButton label=\"No\" className=\"small-button\" variant=\"ghost\" onClick={() => setGenerateCodeVisible(false)} />\n </div>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ModelListViewData.js","sourceRoot":"","sources":["../../../../src/components/core/model/ModelListViewData.tsx"],"names":[],"mappings":"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","sourcesContent":["import { CreateButton } from \"../../../components/common/CreateButton\";\nimport {\n useDeleteMultipleModelsMutation,\n useGenerateCodeForModelMutation,\n useLazyGetModelsQuery,\n} from \"../../../redux/api/modelApi\";\nimport Link from \"../../common/Link\";\nimport qs from \"qs\";\nimport { useEffect, useState } from \"react\";\nimport { FilterMatchMode } from \"../filter/filterMatchMode\";\nimport { SolidButton, SolidDialog, SolidIcon, SolidInput, SolidSpinner } from \"../../shad-cn-ui\";\nimport { Column, DataTableStateEvent, SolidDataTable } from \"../list/SolidDataTable\";\n\nexport interface ModelMetaData {\n id: string;\n displayName: string;\n module: string;\n isSystem: boolean;\n}\n\ntype FilterMeta = Record<string, { value: string | null; matchMode: string }>;\n\nconst createDefaultFilters = (): FilterMeta => ({\n displayName: { value: null, matchMode: FilterMatchMode.STARTS_WITH },\n \"module.displayName\": { value: null, matchMode: FilterMatchMode.STARTS_WITH },\n});\n\nexport const ModelListViewData = () => {\n const [modelMetadata, setModelMetadata] = useState<ModelMetaData[]>([]);\n const [filters, setFilters] = useState<FilterMeta>(() => createDefaultFilters());\n const [pendingFilters, setPendingFilters] = useState<FilterMeta>(() => createDefaultFilters());\n const [first, setFirst] = useState(0);\n const [rows, setRows] = useState(25);\n const [totalRecords, setTotalRecords] = useState(0);\n const [sortField, setSortField] = useState(\"\");\n const [sortOrder, setSortOrder] = useState<1 | -1 | 0>(0);\n const [selectedMenus, setSelectedMenus] = useState<ModelMetaData[]>([]);\n const [loading, setLoading] = useState<boolean>(true);\n const [isDialogVisible, setDialogVisible] = useState(false);\n const [isGenerateCodeVisible, setGenerateCodeVisible] = useState(false);\n const [generateCodeForModel, setGenerateCodeForModel] = useState<string | null>(null);\n\n const [triggerGetModels, { data: model, isLoading }] = useLazyGetModelsQuery();\n const [generateCode] = useGenerateCodeForModelMutation();\n const [deleteManyModel] = useDeleteMultipleModelsMutation();\n\n useEffect(() => {\n if (model) {\n setModelMetadata(model?.records ?? []);\n setTotalRecords(model?.meta?.totalRecords ?? 0);\n setLoading(false);\n }\n }, [model]);\n\n useEffect(() => {\n const queryData = {\n offset: 0,\n limit: rows,\n sort: [`id:desc`],\n };\n const queryString = qs.stringify(queryData, { encodeValuesOnly: true });\n triggerGetModels(queryString);\n setSelectedMenus([]);\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n const onPageChange = (event: { first: number; rows: number }) => {\n setFirst(event.first);\n setRows(event.rows);\n setQueryString(event.first, event.rows, sortField, sortOrder, filters);\n };\n\n const onSort = (event: DataTableStateEvent) => {\n const nextSortField = event.sortField ?? \"\";\n const validSortOrder = event.sortOrder === 1 || event.sortOrder === -1 ? event.sortOrder : 0;\n setSortField(nextSortField);\n setSortOrder(validSortOrder);\n setFirst(0);\n setQueryString(0, rows, nextSortField, validSortOrder, filters);\n };\n\n const setQueryString = async (\n offset?: number,\n rowCount?: number,\n field?: string,\n order?: 1 | -1 | 0,\n filterQuery?: FilterMeta\n ) => {\n const formattedFilters: Record<string, any> = {};\n\n Object.keys(filterQuery ?? {}).forEach((fieldName) => {\n const filterValue = filterQuery?.[fieldName]?.value;\n const matchMode = filterQuery?.[fieldName]?.matchMode;\n\n if (filterValue !== null && filterValue !== undefined && matchMode) {\n let operator = matchMode;\n switch (matchMode) {\n case FilterMatchMode.CONTAINS:\n operator = \"$containsi\";\n break;\n case FilterMatchMode.STARTS_WITH:\n operator = \"$startsWithi\";\n break;\n case FilterMatchMode.EQUALS:\n operator = \"$eqi\";\n break;\n case FilterMatchMode.NOT_CONTAINS:\n operator = \"$notContainsi\";\n break;\n case FilterMatchMode.NOT_EQUALS:\n operator = \"$nei\";\n break;\n case FilterMatchMode.ENDS_WITH:\n operator = \"$endsWithi\";\n break;\n default:\n operator = matchMode;\n }\n\n if (fieldName.includes(\".\")) {\n const [parent, child] = fieldName.split(\".\");\n if (!formattedFilters[parent]) {\n formattedFilters[parent] = {};\n }\n formattedFilters[parent][child] = { [operator]: filterValue };\n } else {\n formattedFilters[fieldName] = { [operator]: filterValue };\n }\n }\n });\n\n const queryData: Record<string, any> = {\n offset: offset ?? first,\n limit: rowCount ?? rows,\n filters: formattedFilters,\n };\n\n if (field) {\n queryData.sort = [`${field}:${order === 0 ? null : order === 1 ? \"asc\" : \"desc\"}`];\n }\n\n const queryString = qs.stringify(queryData, { encodeValuesOnly: true });\n return triggerGetModels(queryString);\n };\n\n const handleFilterInputChange = (fieldName: string, value: string) => {\n setPendingFilters((prev) => ({\n ...prev,\n [fieldName]: { ...prev[fieldName], value },\n }));\n };\n\n const applyFilters = () => {\n setFirst(0);\n setFilters(pendingFilters);\n setQueryString(0, rows, sortField, sortOrder, pendingFilters);\n };\n\n const clearFilters = () => {\n const defaults = createDefaultFilters();\n setPendingFilters(defaults);\n setFilters(defaults);\n setFirst(0);\n setQueryString(0, rows, sortField, sortOrder, defaults);\n };\n\n const deleteBulk = () => {\n const deleteList = selectedMenus.map((element) => element.id);\n deleteManyModel(deleteList);\n setDialogVisible(false);\n setSelectedMenus([]);\n };\n\n const onDeleteClose = () => {\n setDialogVisible(false);\n setSelectedMenus([]);\n };\n\n const handleGenerateCode = async () => {\n if (!generateCodeForModel) return;\n await generateCode({ id: generateCodeForModel });\n setGenerateCodeVisible(false);\n setGenerateCodeForModel(null);\n };\n\n const detailsBodyTemplate = (record: ModelMetaData) => (\n <Link\n href={`${record.id}`}\n rel=\"noopener noreferrer\"\n className=\"text-sm font-bold p-0\"\n style={{ color: \"#12415D\" }}\n >\n {record.isSystem ? (\n <SolidIcon name=\"si-eye\" style={{ fontSize: \"1rem\" }} aria-hidden />\n ) : (\n <SolidIcon name=\"si-pencil\" style={{ fontSize: \"1rem\" }} aria-hidden />\n )}\n </Link>\n );\n\n const generateCodeBodyTemplate = (record: ModelMetaData) => {\n if (record.isSystem) {\n return null;\n }\n return (\n <button\n type=\"button\"\n className=\"border-0 bg-transparent text-[var(--primary-color)] cursor-pointer\"\n onClick={() => {\n setGenerateCodeForModel(record.id);\n setGenerateCodeVisible(true);\n }}\n >\n <SolidIcon name=\"si-cog\" style={{ fontSize: \"1rem\" }} aria-hidden />\n </button>\n );\n };\n\n return (\n <div className=\"solid-model-list w-full\">\n <div className=\"flex gap-4 mb-6 items-center flex-wrap\">\n <CreateButton />\n {selectedMenus.length > 0 && (\n <SolidButton\n type=\"button\"\n label=\"Delete\"\n size=\"small\"\n severity=\"danger\"\n className=\"small-button\"\n onClick={() => setDialogVisible(true)}\n />\n )}\n </div>\n\n <div className=\"flex flex-col md:flex-row items-start gap-4 mb-4\">\n <SolidInput\n value={pendingFilters.displayName.value ?? \"\"}\n onChange={(event) => handleFilterInputChange(\"displayName\", event.currentTarget.value)}\n placeholder=\"Search by model name\"\n className=\"w-full md:w-20rem\"\n />\n <SolidInput\n value={pendingFilters[\"module.displayName\"].value ?? \"\"}\n onChange={(event) => handleFilterInputChange(\"module.displayName\", event.currentTarget.value)}\n placeholder=\"Search by module\"\n className=\"w-full md:w-20rem\"\n />\n <div className=\"flex items-center gap-2\">\n <SolidButton size=\"small\" onClick={applyFilters} label=\"Apply\" />\n <SolidButton size=\"small\" variant=\"ghost\" onClick={clearFilters} label=\"Clear\" />\n </div>\n </div>\n\n {(loading || isLoading) && (\n <div className=\"flex justify-center my-4\">\n <SolidSpinner />\n </div>\n )}\n\n <SolidDataTable\n value={modelMetadata}\n size=\"small\"\n paginator\n rows={rows}\n rowsPerPageOptions={[10, 25, 50]}\n dataKey=\"id\"\n emptyMessage=\"No Models found\"\n totalRecords={totalRecords}\n first={first}\n onPage={onPageChange}\n onSort={onSort}\n sortField={sortField}\n sortOrder={sortOrder}\n selection={selectedMenus}\n onSelectionChange={({ value }) => setSelectedMenus(value)}\n >\n <Column selectionMode=\"multiple\" headerStyle={{ width: \"3em\" }} />\n <Column field=\"id\" header=\"Id\" className=\"text-sm\" sortable headerClassName=\"table-header-fs\" />\n <Column\n field=\"displayName\"\n header=\"Display Name\"\n className=\"text-sm\"\n sortable\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n <Column\n field=\"module.displayName\"\n header=\"Module Name\"\n className=\"text-sm\"\n style={{ minWidth: \"12rem\" }}\n headerClassName=\"table-header-fs\"\n />\n <Column header=\"Edit\" body={detailsBodyTemplate} />\n <Column header=\"Code\" body={generateCodeBodyTemplate} />\n </SolidDataTable>\n\n <SolidDialog\n visible={isDialogVisible}\n header=\"Confirm Delete\"\n modal\n className=\"solid-confirm-dialog\"\n onHide={() => setDialogVisible(false)}\n >\n <p>Are you sure you want to delete the selected Models?</p>\n <div className=\"flex justify-center gap-4 mt-4\">\n <SolidButton label=\"Yes\" className=\"small-button\" severity=\"danger\" autoFocus onClick={deleteBulk} />\n <SolidButton label=\"No\" className=\"small-button\" variant=\"ghost\" onClick={onDeleteClose} />\n </div>\n </SolidDialog>\n\n <SolidDialog\n visible={isGenerateCodeVisible}\n header=\"Generate Code\"\n modal\n className=\"solid-confirm-dialog\"\n onHide={() => {\n setGenerateCodeVisible(false);\n setGenerateCodeForModel(null);\n }}\n >\n <p className=\"text-center\">Proceed with model code generation? Existing files will be overwritten.</p>\n <p>Below is the list of files that will be created:</p>\n <ul>\n <li>Model Entity File</li>\n <li>Model Controller File</li>\n <li>Model Service File</li>\n <li>Model Create and Update DTO files</li>\n </ul>\n <div className=\"flex justify-center gap-4 mt-4\">\n <SolidButton label=\"Yes\" className=\"small-button\" severity=\"danger\" autoFocus onClick={handleGenerateCode} />\n <SolidButton label=\"No\" className=\"small-button\" variant=\"ghost\" onClick={() => setGenerateCodeVisible(false)} />\n </div>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
@@ -204,7 +204,7 @@ export const ModelListViewData = () => {
|
|
|
204
204
|
return (
|
|
205
205
|
<button
|
|
206
206
|
type="button"
|
|
207
|
-
className="
|
|
207
|
+
className="border-0 bg-transparent text-[var(--primary-color)] cursor-pointer"
|
|
208
208
|
onClick={() => {
|
|
209
209
|
setGenerateCodeForModel(record.id);
|
|
210
210
|
setGenerateCodeVisible(true);
|
|
@@ -217,7 +217,7 @@ export const ModelListViewData = () => {
|
|
|
217
217
|
|
|
218
218
|
return (
|
|
219
219
|
<div className="solid-model-list w-full">
|
|
220
|
-
<div className="flex gap-
|
|
220
|
+
<div className="flex gap-4 mb-6 items-center flex-wrap">
|
|
221
221
|
<CreateButton />
|
|
222
222
|
{selectedMenus.length > 0 && (
|
|
223
223
|
<SolidButton
|
|
@@ -231,7 +231,7 @@ export const ModelListViewData = () => {
|
|
|
231
231
|
)}
|
|
232
232
|
</div>
|
|
233
233
|
|
|
234
|
-
<div className="flex flex-
|
|
234
|
+
<div className="flex flex-col md:flex-row items-start gap-4 mb-4">
|
|
235
235
|
<SolidInput
|
|
236
236
|
value={pendingFilters.displayName.value ?? ""}
|
|
237
237
|
onChange={(event) => handleFilterInputChange("displayName", event.currentTarget.value)}
|
|
@@ -244,14 +244,14 @@ export const ModelListViewData = () => {
|
|
|
244
244
|
placeholder="Search by module"
|
|
245
245
|
className="w-full md:w-20rem"
|
|
246
246
|
/>
|
|
247
|
-
<div className="flex
|
|
247
|
+
<div className="flex items-center gap-2">
|
|
248
248
|
<SolidButton size="small" onClick={applyFilters} label="Apply" />
|
|
249
249
|
<SolidButton size="small" variant="ghost" onClick={clearFilters} label="Clear" />
|
|
250
250
|
</div>
|
|
251
251
|
</div>
|
|
252
252
|
|
|
253
253
|
{(loading || isLoading) && (
|
|
254
|
-
<div className="flex justify-
|
|
254
|
+
<div className="flex justify-center my-4">
|
|
255
255
|
<SolidSpinner />
|
|
256
256
|
</div>
|
|
257
257
|
)}
|
|
@@ -302,7 +302,7 @@ export const ModelListViewData = () => {
|
|
|
302
302
|
onHide={() => setDialogVisible(false)}
|
|
303
303
|
>
|
|
304
304
|
<p>Are you sure you want to delete the selected Models?</p>
|
|
305
|
-
<div className="flex justify-
|
|
305
|
+
<div className="flex justify-center gap-4 mt-4">
|
|
306
306
|
<SolidButton label="Yes" className="small-button" severity="danger" autoFocus onClick={deleteBulk} />
|
|
307
307
|
<SolidButton label="No" className="small-button" variant="ghost" onClick={onDeleteClose} />
|
|
308
308
|
</div>
|
|
@@ -326,7 +326,7 @@ export const ModelListViewData = () => {
|
|
|
326
326
|
<li>Model Service File</li>
|
|
327
327
|
<li>Model Create and Update DTO files</li>
|
|
328
328
|
</ul>
|
|
329
|
-
<div className="flex justify-
|
|
329
|
+
<div className="flex justify-center gap-4 mt-4">
|
|
330
330
|
<SolidButton label="Yes" className="small-button" severity="danger" autoFocus onClick={handleGenerateCode} />
|
|
331
331
|
<SolidButton label="No" className="small-button" variant="ghost" onClick={() => setGenerateCodeVisible(false)} />
|
|
332
332
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelMetaData.d.ts","sourceRoot":"","sources":["../../../../src/components/core/model/ModelMetaData.tsx"],"names":[],"mappings":"AASA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAuB3D,QAAA,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"ModelMetaData.d.ts","sourceRoot":"","sources":["../../../../src/components/core/model/ModelMetaData.tsx"],"names":[],"mappings":"AASA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAuB3D,QAAA,MAAM,aAAa,kFA+oBjB,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -118,19 +118,7 @@ var ModelMetaData = React.forwardRef(function (_a, ref) {
|
|
|
118
118
|
parentModelId: modelMetaData ? (_c = modelMetaData === null || modelMetaData === void 0 ? void 0 : modelMetaData.parentModel) === null || _c === void 0 ? void 0 : _c.id : "",
|
|
119
119
|
parentModel: modelMetaData ? modelMetaData === null || modelMetaData === void 0 ? void 0 : modelMetaData.parentModel : "",
|
|
120
120
|
isLegacyTable: modelMetaData ? modelMetaData === null || modelMetaData === void 0 ? void 0 : modelMetaData.isLegacyTable : false,
|
|
121
|
-
|
|
122
|
-
// isLegacyTable: modelMetaData
|
|
123
|
-
// ? (modelMetaData.isLegacyTable && modelMetaData.isLegacyTableWithId && params.id !== 'new')
|
|
124
|
-
// ? true
|
|
125
|
-
// : modelMetaData.isLegacyTableWithId
|
|
126
|
-
// ? true
|
|
127
|
-
// : false
|
|
128
|
-
// : false,
|
|
129
|
-
// isLegacyTableWithId: modelMetaData
|
|
130
|
-
// ? (modelMetaData.isLegacyTable && modelMetaData.isLegacyTableWithId && params.id !== 'new')
|
|
131
|
-
// ? true
|
|
132
|
-
// : false
|
|
133
|
-
// : false,
|
|
121
|
+
hasExistingId: modelMetaData ? modelMetaData === null || modelMetaData === void 0 ? void 0 : modelMetaData.hasExistingId : false,
|
|
134
122
|
};
|
|
135
123
|
var _j = useState(false), showTableName = _j[0], setShowTableName = _j[1];
|
|
136
124
|
var _k = useState(false), showParentModel = _k[0], setShowParentModel = _k[1];
|
|
@@ -190,7 +178,7 @@ var ModelMetaData = React.forwardRef(function (_a, ref) {
|
|
|
190
178
|
}
|
|
191
179
|
}),
|
|
192
180
|
isLegacyTable: Yup.boolean(),
|
|
193
|
-
|
|
181
|
+
hasExistingId: Yup.boolean(),
|
|
194
182
|
});
|
|
195
183
|
var isFormFieldValid = function (formik, fieldName) {
|
|
196
184
|
return formik.touched[fieldName] && formik.errors[fieldName];
|
|
@@ -232,7 +220,7 @@ var ModelMetaData = React.forwardRef(function (_a, ref) {
|
|
|
232
220
|
modelData_1 = __assign(__assign(__assign(__assign({}, modelMetaData), { singularName: values.singularName, pluralName: values.pluralName, displayName: values.displayName, description: values.description, dataSource: values.dataSource, dataSourceType: values.dataSourceType, tableName: (values === null || values === void 0 ? void 0 : values.tableName) || tableName, moduleId: values.moduleId, module: values.module, isSystem: values.isSystem ? values.isSystem === true : '', enableSoftDelete: values.enableSoftDelete === true ? true : '', enableAuditTracking: values.enableAuditTracking === true ? true : '', internationalisation: values.internationalisation === true ? true : '', draftPublishWorkflow: values.draftPublishWorkflow === true ? true : '', isChild: values.isChild === true ? true : '' }), (values.isChild == true && {
|
|
233
221
|
parentModelId: values.parentModelId,
|
|
234
222
|
parentModel: values.parentModel,
|
|
235
|
-
})), { isLegacyTable: values.isLegacyTable === true ? true : false,
|
|
223
|
+
})), { isLegacyTable: values.isLegacyTable === true ? true : false, hasExistingId: values.hasExistingId === true ? true : false });
|
|
236
224
|
setModelMetaData(modelData_1);
|
|
237
225
|
nextTab();
|
|
238
226
|
}
|
|
@@ -431,25 +419,25 @@ var ModelMetaData = React.forwardRef(function (_a, ref) {
|
|
|
431
419
|
existingData: formik.values.parentModel,
|
|
432
420
|
relationField: true,
|
|
433
421
|
});
|
|
434
|
-
return (_jsx(_Fragment, { children: _jsx("form", { onSubmit: formik.handleSubmit, children: _jsx("div", { className: "", children: _jsxs("div", { className: "
|
|
422
|
+
return (_jsx(_Fragment, { children: _jsx("form", { onSubmit: formik.handleSubmit, children: _jsx("div", { className: "", children: _jsxs("div", { className: "flex flex-wrap -mx-2 -mt-2", children: [_jsxs("div", { className: "field w-full px-2 pt-2 lg:w-1/2 lg:pr-4", children: [_jsxs(SolidPanel, { header: "Basic Info", className: "solid-column-panel", children: [_jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "moduleId", className: styles.fieldLabel, children: "Module" }), _jsx("div", { className: cx("solid-standard-autocomplete w-full", fieldHasError("module", "moduleId") && styles.fieldInvalidControl), children: _jsx(SolidAutocomplete, { disabled: params.id !== "new", value: moduleField.selectedItem, suggestions: moduleField.filteredItems, completeMethod: moduleField.searchItems, onChange: moduleField.handleChange, dropdown: true, field: "displayName", className: "w-full" }) }), renderFieldError("module", "moduleId")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "dataSource", className: styles.fieldLabel, children: "Data Source" }), _jsx("div", { className: cx("solid-standard-autocomplete w-full", fieldHasError("dataSource") && styles.fieldInvalidControl), children: _jsx(SolidAutocomplete, { disabled: params.id !== "new", value: dataSourceField.selectedItem, suggestions: dataSourceField.filteredItems, completeMethod: dataSourceField.searchItems, onChange: dataSourceField.handleChange, dropdown: true, field: "label", className: "w-full" }) }), formik.values.dataSourceType && (_jsxs("p", { className: "form-field-label text-sm", children: ["Your datasource will connect to a ", formik.values.dataSourceType, " database"] })), renderFieldError("dataSource")] })] }), _jsxs(SolidPanel, { header: "Configurations", className: "solid-column-panel mt-3 mb-3 lg:mt-5", children: [_jsxs("div", { className: "mt-2", children: [_jsx(SolidCheckbox, { name: "enableSoftDelete", disabled: params.id !== "new", checked: !!formik.values.enableSoftDelete, onChange: function (event) {
|
|
435
423
|
formik.setFieldValue("enableSoftDelete", event.currentTarget.checked);
|
|
436
424
|
}, label: "Enable Soft Delete" }), params.id !== "new" && (_jsx("p", { className: "form-field-label mt-1 text-sm", children: "Soft-delete can only be set during initial creation to maintain data integrity" })), renderFieldError("enableSoftDelete")] }), _jsxs("div", { className: "mt-3", children: [_jsx(SolidCheckbox, { name: "isChild", disabled: params.id !== "new", checked: !!formik.values.isChild, onChange: function (event) {
|
|
437
425
|
formik.setFieldValue("isChild", event.currentTarget.checked);
|
|
438
|
-
}, label: "Is Child" }), params.id !== "new" && (_jsx("p", { className: "form-field-label mt-1 text-sm", children: "Is Current Model child of another Model" })), renderFieldError("isChild")] }), showParentModel && (_jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "parentModelId", className: styles.fieldLabel, children: "Parent Model" }), _jsx("div", { className: cx("solid-standard-autocomplete w-full", fieldHasError("parentModel", "parentModelId") && styles.fieldInvalidControl), children: _jsx(SolidAutocomplete, { disabled: params.id !== "new", value: parentModelField.selectedItem, suggestions: parentModelField.filteredItems, completeMethod: parentModelField.searchItems, onChange: parentModelField.handleChange, dropdown: true, field: "displayName", className: "w-full" }) }), renderFieldError("parentModel", "parentModelId")] })), _jsxs("div", { className: "mt-3", children: [_jsx(SolidCheckbox, { name: "enableAuditTracking", checked: !!formik.values.enableAuditTracking, onChange: function (event) {
|
|
426
|
+
}, label: "Is Child" }), params.id !== "new" && (_jsx("p", { className: "form-field-label mt-1 text-sm", children: "Is Current Model child of another Model" })), renderFieldError("isChild")] }), showParentModel && (_jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "parentModelId", className: styles.fieldLabel, children: "Parent Model" }), _jsx("div", { className: cx("solid-standard-autocomplete w-full", fieldHasError("parentModel", "parentModelId") && styles.fieldInvalidControl), children: _jsx(SolidAutocomplete, { disabled: params.id !== "new", value: parentModelField.selectedItem, suggestions: parentModelField.filteredItems, completeMethod: parentModelField.searchItems, onChange: parentModelField.handleChange, dropdown: true, field: "displayName", className: "w-full" }) }), renderFieldError("parentModel", "parentModelId")] })), _jsxs("div", { className: "mt-3", children: [_jsx(SolidCheckbox, { name: "enableAuditTracking", disabled: params.id !== "new", checked: !!formik.values.enableAuditTracking, onChange: function (event) {
|
|
439
427
|
formik.setFieldValue("enableAuditTracking", event.currentTarget.checked);
|
|
440
|
-
}, label: "Enable Audit Tracking" }), renderFieldError("enableAuditTracking")] }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "internationalisation", checked: !!formik.values.internationalisation, onChange: function (event) {
|
|
428
|
+
}, label: "Enable Audit Tracking" }), renderFieldError("enableAuditTracking")] }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "internationalisation", disabled: params.id !== "new", checked: !!formik.values.internationalisation, onChange: function (event) {
|
|
441
429
|
formik.setFieldValue("internationalisation", event.currentTarget.checked);
|
|
442
|
-
}, label: "Is Internationalisation Enabled" }) }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "draftPublishWorkflow", checked: !!formik.values.draftPublishWorkflow, onChange: function (event) {
|
|
430
|
+
}, label: "Is Internationalisation Enabled" }) }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "draftPublishWorkflow", disabled: params.id !== "new", checked: !!formik.values.draftPublishWorkflow, onChange: function (event) {
|
|
443
431
|
formik.setFieldValue("draftPublishWorkflow", event.currentTarget.checked);
|
|
444
|
-
}, label: "Draft/Publish Workflow" }) }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "isLegacyTable", checked: !!formik.values.isLegacyTable, onChange: function (event) {
|
|
432
|
+
}, label: "Draft/Publish Workflow" }) }), _jsx("div", { className: "mt-3", children: _jsx(SolidCheckbox, { name: "isLegacyTable", disabled: params.id !== "new", checked: !!formik.values.isLegacyTable, onChange: function (event) {
|
|
445
433
|
var isChecked = event.currentTarget.checked;
|
|
446
434
|
formik.setFieldValue("isLegacyTable", isChecked);
|
|
447
435
|
if (!isChecked) {
|
|
448
|
-
formik.setFieldValue("
|
|
436
|
+
formik.setFieldValue("hasExistingId", false);
|
|
449
437
|
}
|
|
450
|
-
}, label: "Is Legacy Table" }) }), formik.values.isLegacyTable && (_jsxs(_Fragment, { children: [_jsx("div", { className: "ml-4 mt-2", children: _jsx(SolidCheckbox, { name: "
|
|
451
|
-
formik.setFieldValue("
|
|
452
|
-
}, label: "Has existing Id" }) }), _jsx("p", { className: "form-field-label mt-2 text-sm", children: "Note: Legacy tables require at least one field marked as Primary Key during model creation" })] }))] })] }), _jsx("div", { className: "field
|
|
438
|
+
}, label: "Is Legacy Table" }) }), formik.values.isLegacyTable && (_jsxs(_Fragment, { children: [_jsx("div", { className: "ml-4 mt-2", children: _jsx(SolidCheckbox, { name: "hasExistingId", disabled: params.id !== "new", checked: !!formik.values.hasExistingId, onChange: function (event) {
|
|
439
|
+
formik.setFieldValue("hasExistingId", event.currentTarget.checked);
|
|
440
|
+
}, label: "Has existing Id" }) }), _jsx("p", { className: "form-field-label mt-2 text-sm", children: "Note: Legacy tables require at least one field marked as Primary Key during model creation" })] }))] })] }), _jsx("div", { className: "field w-full px-2 pt-2 lg:w-1/2 lg:pl-4", children: _jsxs(SolidPanel, { header: "Basic Settings", className: "solid-column-panel", children: [_jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "displayName", className: styles.fieldLabel, children: "Display Name" }), _jsx(SolidInput, { type: "text", id: "displayName", name: "displayName", className: styles.fieldInput, value: formik.values.displayName, disabled: params.id !== "new", onChange: function (e) {
|
|
453
441
|
formik.handleChange(e);
|
|
454
442
|
var _a = getSingularAndPlural(e.target.value), toCamelCase = _a.toCamelCase, toSnakeCase = _a.toSnakeCase, toPluralCamelCase = _a.toPluralCamelCase;
|
|
455
443
|
if (params.id === "new") {
|
|
@@ -457,7 +445,7 @@ var ModelMetaData = React.forwardRef(function (_a, ref) {
|
|
|
457
445
|
formik.setFieldValue("pluralName", toPluralCamelCase);
|
|
458
446
|
formik.setFieldValue("tableName", toSnakeCase);
|
|
459
447
|
}
|
|
460
|
-
} }), renderFieldError("displayName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "singularName", className: styles.fieldLabel, children: "Singular Name" }), _jsx(SolidInput, { type: "text", id: "singularName", name: "singularName", className: styles.fieldInput, value: formik.values.singularName, disabled: true, onChange: formik.handleChange }), renderFieldError("singularName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "pluralName", className: styles.fieldLabel, children: "Plural Name" }), _jsx(SolidInput, { type: "text", id: "pluralName", name: "pluralName", className: styles.fieldInput, value: formik.values.pluralName, disabled: true, onChange: formik.handleChange }), renderFieldError("pluralName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "tableName", className: styles.fieldLabel, children: "Table Name" }), _jsx(SolidInput, { type: "text", id: "tableName", name: "tableName", className: styles.fieldInput, value: formik.values.tableName, disabled: params.id !== "new", onChange: formik.handleChange }), renderFieldError("tableName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "description", className: styles.fieldLabel, children: "Description" }), _jsx(SolidTextarea, { id: "description", name: "description", className: styles.fieldTextarea, value: formik.values.description, rows: 5, onChange: formik.handleChange }), renderFieldError("description")] })] }) })] }) }) }) }));
|
|
448
|
+
} }), renderFieldError("displayName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "singularName", className: styles.fieldLabel, children: "Singular Name" }), _jsx(SolidInput, { type: "text", id: "singularName", name: "singularName", className: styles.fieldInput, value: formik.values.singularName, disabled: true, onChange: formik.handleChange }), renderFieldError("singularName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "pluralName", className: styles.fieldLabel, children: "Plural Name" }), _jsx(SolidInput, { type: "text", id: "pluralName", name: "pluralName", className: styles.fieldInput, value: formik.values.pluralName, disabled: true, onChange: formik.handleChange }), renderFieldError("pluralName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "tableName", className: styles.fieldLabel, children: "Table Name" }), _jsx(SolidInput, { type: "text", id: "tableName", name: "tableName", className: styles.fieldInput, value: formik.values.tableName, disabled: params.id !== "new", onChange: formik.handleChange }), renderFieldError("tableName")] }), _jsxs("div", { className: styles.fieldWrapper, children: [_jsx("label", { htmlFor: "description", className: styles.fieldLabel, children: "Description" }), _jsx(SolidTextarea, { id: "description", name: "description", className: styles.fieldTextarea, value: formik.values.description, rows: 5, disabled: params.id !== "new", onChange: formik.handleChange }), renderFieldError("description")] })] }) })] }) }) }) }));
|
|
461
449
|
});
|
|
462
450
|
export default ModelMetaData;
|
|
463
451
|
//# sourceMappingURL=ModelMetaData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelMetaData.js","sourceRoot":"","sources":["../../../../src/components/core/model/ModelMetaData.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { getSingularAndPlural } from \"../../../helpers/helpers\";\nimport { useGetFieldDefaultMetaDataQuery } from \"../../../redux/api/fieldApi\";\nimport { useLazyGetModelsQuery } from \"../../../redux/api/modelApi\";\nimport { useLazyGetmodulesQuery } from \"../../../redux/api/moduleApi\";\nimport { useFormik } from \"formik\";\nimport { snakeCase } from \"lodash\";\nimport qs from \"qs\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../redux/features/toastSlice\";\nimport * as Yup from \"yup\";\nimport { SolidAutocomplete, SolidCheckbox, SolidInput, SolidPanel, SolidTextarea } from \"../../shad-cn-ui\";\nimport { useSolidAutocompleteField } from \"../../../hooks/useSolidAutocompleteField\";\nimport styles from \"../form/fields/solidFields.module.css\";\n\nconst cx = (...parts: Array<string | false | null | undefined | Record<string, boolean>>) => {\n const classes: string[] = [];\n parts.forEach((part) => {\n if (!part) return;\n if (typeof part === \"string\") {\n classes.push(part);\n return;\n }\n Object.entries(part).forEach(([key, value]) => {\n if (value) classes.push(key);\n });\n });\n return classes.join(\" \");\n};\n\nconst ModelMetaData = React.forwardRef(({ modelMetaData, setModelMetaData, allModelsNames, deleteModelFunction, nextTab, formikModelMetadataRef, params, formErrors, setIsDirty }: any, ref) => {\n\n // const ModelMetaData = ({ modelMetaData, setModelMetaData, deleteModelFunction, nextTab, formikModelMetadataRef }: any) => { \n\n const dispatch = useDispatch();\n\n const [triggerGetModules, { data: moduleData, isFetching: isModuleFetching, error: moduleError }] = useLazyGetmodulesQuery();\n const [triggerGetModels, { data: modelData, isFetching: isModelFetching, error: modelError }] = useLazyGetModelsQuery();\n const { data: fieldDefaultMetaData, isLoading, error, refetch } = useGetFieldDefaultMetaDataQuery(null);\n \n\n const initialValues = {\n singularName: modelMetaData ? modelMetaData?.singularName : \"\",\n pluralName: modelMetaData ? modelMetaData?.pluralName : \"\",\n displayName: modelMetaData ? modelMetaData?.displayName : \"\",\n description: modelMetaData ? modelMetaData?.description : \"\",\n dataSource: modelMetaData ? modelMetaData?.dataSource : \"\",\n dataSourceType: modelMetaData ? modelMetaData?.dataSourceType : \"\",\n tableName: modelMetaData ? modelMetaData?.tableName : null,\n moduleId: modelMetaData ? modelMetaData?.module?.id : \"\",\n module: modelMetaData ? modelMetaData?.module : \"\",\n isSystem: modelMetaData ? modelMetaData?.isSystem : false,\n enableSoftDelete: modelMetaData ? modelMetaData?.enableSoftDelete : \"\",\n enableAuditTracking: modelMetaData ? modelMetaData?.enableAuditTracking : true,\n internationalisation: modelMetaData ? modelMetaData?.internationalisation : \"\",\n draftPublishWorkflow: modelMetaData ? modelMetaData?.draftPublishWorkflow : \"\",\n isChild: modelMetaData ? modelMetaData?.isChild : \"\",\n parentModelId: modelMetaData ? modelMetaData?.parentModel?.id : \"\",\n parentModel: modelMetaData ? modelMetaData?.parentModel : \"\",\n isLegacyTable: modelMetaData ? modelMetaData?.isLegacyTable : false,\n isLegacyTableWithId: modelMetaData ? modelMetaData?.isLegacyTableWithId : false,\n // isLegacyTable: modelMetaData \n // ? (modelMetaData.isLegacyTable && modelMetaData.isLegacyTableWithId && params.id !== 'new') \n // ? true \n // : modelMetaData.isLegacyTableWithId \n // ? true \n // : false \n // : false,\n \n // isLegacyTableWithId: modelMetaData \n // ? (modelMetaData.isLegacyTable && modelMetaData.isLegacyTableWithId && params.id !== 'new') \n // ? true \n // : false \n // : false,\n };\n\n const [showTableName, setShowTableName] = useState<any>(false);\n const [showParentModel, setShowParentModel] = useState<any>(false);\n const [selectedModule, setSelectedModule] = useState<any>(null);\n\n\n useEffect(() => {\n if (modelMetaData && modelMetaData.tableName) {\n setShowTableName(true)\n }\n if (modelMetaData && modelMetaData.isChild) {\n setShowParentModel(true)\n }\n else if (modelMetaData && !modelMetaData.isChild) {\n setShowParentModel(false)\n }\n }, [modelMetaData])\n\n const validationSchema = Yup.object({\n singularName: Yup.string()\n // .matches(\n // /^[a-z]+(-[a-z]+)*$/,\n // \"Invalid format. Use lowercase letters and hyphens only\"\n // )\n .notOneOf(allModelsNames, ERROR_MESSAGES.FIELD_ALREADY_USE('Name', 'name'))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Singular Name')),\n pluralName: Yup.string()\n // .matches(\n // /^[a-z]+(-[a-z]+)*$/,\n // \"Invalid format. Use lowercase letters and hyphens only\"\n // )\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Plural Name')),\n // tableName: Yup.string().required().matches(/^[a-z0-9_]+$/, ERROR_MESSAGES.SNAKE_CASE('Tabale')),\n displayName: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Display Name\")),\n description: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Description Name\")),\n dataSource: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Data Source\")),\n dataSourceType: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Data Source Type\")),\n moduleId: Yup.number().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Module Id\")),\n module: Yup.object().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Module\")),\n isSystem: Yup.boolean(),\n enableSoftDelete: Yup.boolean(),\n enableAuditTracking: Yup.boolean(),\n internationalisation: Yup.boolean(),\n draftPublishWorkflow: Yup.boolean(),\n isChild: Yup.boolean(),\n parentModelId: Yup.number().when(\"isChild\", (isChild: any, schema) => {\n if (isChild.length > 0 && isChild[0] == true) {\n return schema.required(ERROR_MESSAGES.FIELD_REUQIRED('Parent Model Id'))\n } else {\n return schema.notRequired().nullable();\n }\n }),\n parentModel: Yup.object().when(\"isChild\", (isChild: any, schema) => {\n if (isChild.length > 0 && isChild[0] == true) {\n return schema.required(ERROR_MESSAGES.FIELD_REUQIRED('Parent Model'))\n } else {\n return schema.notRequired().nullable();\n }\n }),\n isLegacyTable: Yup.boolean(),\n isLegacyTableWithId: Yup.boolean(),\n });\n\n\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const getFieldErrorMessage = (fieldName: string, fallbackField?: string) => {\n const errors = formik.errors as Record<string, any>;\n const message =\n errors[fieldName] ??\n (fallbackField ? errors[fallbackField] : undefined) ??\n formErrors[fieldName] ??\n (fallbackField ? formErrors[fallbackField] : undefined);\n return message;\n };\n\n const fieldHasError = (fieldName: string, fallbackField?: string) => {\n return Boolean(\n isFormFieldValid(formik, fieldName) ||\n (fallbackField && isFormFieldValid(formik, fallbackField)) ||\n formErrors[fieldName] ||\n (fallbackField && formErrors[fallbackField])\n );\n };\n\n const renderFieldError = (fieldName: string, fallbackField?: string) => {\n if (!fieldHasError(fieldName, fallbackField)) {\n return null;\n }\n\n const message = getFieldErrorMessage(fieldName, fallbackField);\n\n if (!message) {\n return null;\n }\n\n const errorText = Array.isArray(message) ? message.join(\", \") : String(message);\n return <p className={styles.fieldError}>{errorText}</p>;\n };\n\n const formik = useFormik({\n initialValues,\n validationSchema,\n validateOnChange: true, // This ensures validation runs when a field value is changed\n enableReinitialize: true,\n innerRef: formikModelMetadataRef,\n onSubmit: async (values) => {\n const tableName = generateTableName(values.module.displayName, values.singularName);\n\n try {\n const modelData = {\n ...modelMetaData,\n singularName: values.singularName,\n pluralName: values.pluralName,\n displayName: values.displayName,\n description: values.description,\n dataSource: values.dataSource,\n dataSourceType: values.dataSourceType,\n tableName: values?.tableName || tableName,\n moduleId: values.moduleId,\n module: values.module,\n isSystem: values.isSystem ? values.isSystem === true : '',\n enableSoftDelete: values.enableSoftDelete === true ? true : '',\n enableAuditTracking: values.enableAuditTracking === true ? true : '',\n internationalisation: values.internationalisation === true ? true : '',\n draftPublishWorkflow: values.draftPublishWorkflow === true ? true : '',\n isChild: values.isChild === true ? true : '',\n ...(values.isChild == true && {\n parentModelId: values.parentModelId,\n parentModel: values.parentModel,\n }),\n isLegacyTable:values.isLegacyTable === true ? true : false,\n isLegacyTableWithId:values.isLegacyTableWithId === true ? true :false\n \n };\n setModelMetaData(modelData);\n nextTab()\n\n } catch (err) {\n console.error(ERROR_MESSAGES.CREATE_MODEL, err);\n }\n },\n });\n\n function generateTableName(moduleSlug: string, modelName: string): string {\n const snakeCaseModelName = snakeCase(modelName);\n const sankeCaseModuleName = snakeCase(moduleSlug);\n return `${sankeCaseModuleName}_${snakeCaseModelName}`;\n }\n\n const showError = async () => {\n const errors = await formik.validateForm(); // Trigger validation and get the updated errors\n const errorMessages = Object.values(errors);\n if (errorMessages.length > 0) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.SEND_REPORT, detail: errorMessages.map(String).join(', '), life: 3000 }));\n }\n };\n\n\n const searchModule = async (event: any) => {\n try {\n const query = event.query;\n const queryData = {\n limit: 10,\n offset: 0,\n filters: {\n name: {\n $containsi: query,\n },\n },\n };\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n\n const result = await triggerGetModules(queryString).unwrap();\n\n if (result && result.records) {\n const updatedSuggestion = [...result.records];\n return updatedSuggestion\n } else {\n return []\n }\n } catch (error) {\n return []\n }\n };\n\n\n const searchModel = async (event: any) => {\n try {\n const query = event.query;\n const queryData = {\n limit: 10,\n offset: 0,\n filters: {\n singularName: {\n $containsi: query,\n },\n },\n };\n\n // Add module filter dynamically\n if (selectedModule?.name) {\n (queryData.filters as any)[\"module\"] = {\n name: { $containsi: selectedModule.name },\n };\n }\n\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n\n const result = await triggerGetModels(queryString).unwrap();\n\n if (result && result.records) {\n const updatedSuggestion = [...result.records];\n return updatedSuggestion\n } else {\n return []\n }\n } catch (error) {\n return []\n }\n };\n\n\n const serachDataSource = async (event: any) => {\n const query = event.query;\n try {\n const filterredData: any = fieldDefaultMetaData.data.dataSource.filter((t: any) => t.name.toLowerCase().startsWith(query.toLowerCase()));\n const transformedData = filterredData.map((e: any) => ({ label: e.name, value: e.name, type: e.type }));\n return transformedData\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_ITEMS, error);\n return []\n }\n };\n\n\n const serachDataSourceType = async (event: any) => {\n const query = event.query;\n try {\n\n const filterredData: any = fieldDefaultMetaData.data.dataSource.filter((t: any) => t.type.toLowerCase().startsWith(query.toLowerCase()));\n const transformedData = filterredData.map((e: any) => ({ label: e.type, value: e.type }))\n return transformedData;\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_ITEMS, error);\n return [];\n\n }\n };\n\n\n // useEffect(() => {\n // if (modelMetaData) {\n // setModelMetaData(modelMetaData.parentCategoryId);\n\n // // formik.setFieldValue(\"parentCategoryId\", modelMetaData.parentCategoryId);\n // }\n // }, [modelMetaData])\n\n\n // Set the formik reference to the formik instance\n // Set the formik reference to the formik instance\n useEffect(() => {\n if (formikModelMetadataRef) {\n formikModelMetadataRef.current = formik; // Assign the formik instance to the ref\n }\n }, [formik, formikModelMetadataRef]);\n\n\n const renderCount = useRef(0);\n\n useEffect(() => {\n renderCount.current += 1; // Increment count on every render\n });\n\n\n useEffect(() => {\n formik.validateForm();\n setModelMetaData(formik.values);\n\n }, [formik.values])\n\n useEffect(() => {\n if (formik.dirty) {\n setIsDirty(true);\n }\n }, [formik.dirty]);\n\n const moduleField = useSolidAutocompleteField({\n formik,\n fieldName: \"module\",\n fieldNameId: \"moduleId\",\n labelKey: \"displayName\",\n valueKey: \"id\",\n searchData: searchModule,\n existingData: formik.values.module,\n relationField: true,\n additionalAction: (e: any) => setSelectedModule(e.value),\n });\n\n const dataSourceField = useSolidAutocompleteField({\n formik,\n fieldName: \"dataSource\",\n labelKey: \"label\",\n valueKey: \"value\",\n searchData: serachDataSource,\n existingData: formik.values.dataSource,\n additionalAction: (e: any) => formik.setFieldValue(\"dataSourceType\", e.target.value.type),\n });\n\n const parentModelField = useSolidAutocompleteField({\n formik,\n fieldName: \"parentModel\",\n fieldNameId: \"parentModelId\",\n labelKey: \"displayName\",\n valueKey: \"id\",\n searchData: searchModel,\n existingData: formik.values.parentModel,\n relationField: true,\n });\n\n return (\n\n <>\n <form onSubmit={formik.handleSubmit}>\n <div className=\"\">\n <div className=\"grid formgrid\">\n <div className=\"field col-12 lg:col-6 lg:pr-3\">\n <SolidPanel header={\"Basic Info\"} className=\"solid-column-panel\">\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"moduleId\" className={styles.fieldLabel}>\n Module\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"module\", \"moduleId\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={moduleField.selectedItem}\n suggestions={moduleField.filteredItems}\n completeMethod={moduleField.searchItems}\n onChange={moduleField.handleChange}\n dropdown\n field=\"displayName\"\n className=\"w-full\"\n />\n </div>\n {renderFieldError(\"module\", \"moduleId\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"dataSource\" className={styles.fieldLabel}>\n Data Source\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"dataSource\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={dataSourceField.selectedItem}\n suggestions={dataSourceField.filteredItems}\n completeMethod={dataSourceField.searchItems}\n onChange={dataSourceField.handleChange}\n dropdown\n field=\"label\"\n className=\"w-full\"\n />\n </div>\n {formik.values.dataSourceType && (\n <p className=\"form-field-label text-sm\">\n Your datasource will connect to a {formik.values.dataSourceType} database\n </p>\n )}\n {renderFieldError(\"dataSource\")}\n </div>\n </SolidPanel>\n\n <SolidPanel header={\"Configurations\"} className=\"solid-column-panel mt-3 mb-3 lg:mt-5\">\n <div className=\"mt-2\">\n <SolidCheckbox\n name=\"enableSoftDelete\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.enableSoftDelete}\n onChange={(event) => {\n formik.setFieldValue(\"enableSoftDelete\", event.currentTarget.checked);\n }}\n label=\"Enable Soft Delete\"\n />\n {params.id !== \"new\" && (\n <p className=\"form-field-label mt-1 text-sm\">\n Soft-delete can only be set during initial creation to maintain data integrity\n </p>\n )}\n {renderFieldError(\"enableSoftDelete\")}\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"isChild\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.isChild}\n onChange={(event) => {\n formik.setFieldValue(\"isChild\", event.currentTarget.checked);\n }}\n label=\"Is Child\"\n />\n {params.id !== \"new\" && (\n <p className=\"form-field-label mt-1 text-sm\">\n Is Current Model child of another Model\n </p>\n )}\n {renderFieldError(\"isChild\")}\n </div>\n\n {showParentModel && (\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"parentModelId\" className={styles.fieldLabel}>\n Parent Model\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"parentModel\", \"parentModelId\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={parentModelField.selectedItem}\n suggestions={parentModelField.filteredItems}\n completeMethod={parentModelField.searchItems}\n onChange={parentModelField.handleChange}\n dropdown\n field=\"displayName\"\n className=\"w-full\"\n />\n </div>\n {renderFieldError(\"parentModel\", \"parentModelId\")}\n </div>\n )}\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"enableAuditTracking\"\n checked={!!formik.values.enableAuditTracking}\n onChange={(event) => {\n formik.setFieldValue(\"enableAuditTracking\", event.currentTarget.checked);\n }}\n label=\"Enable Audit Tracking\"\n />\n {renderFieldError(\"enableAuditTracking\")}\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"internationalisation\"\n checked={!!formik.values.internationalisation}\n onChange={(event) => {\n formik.setFieldValue(\"internationalisation\", event.currentTarget.checked);\n }}\n label=\"Is Internationalisation Enabled\"\n />\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"draftPublishWorkflow\"\n checked={!!formik.values.draftPublishWorkflow}\n onChange={(event) => {\n formik.setFieldValue(\"draftPublishWorkflow\", event.currentTarget.checked);\n }}\n label=\"Draft/Publish Workflow\"\n />\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"isLegacyTable\"\n checked={!!formik.values.isLegacyTable}\n onChange={(event) => {\n const isChecked = event.currentTarget.checked;\n formik.setFieldValue(\"isLegacyTable\", isChecked);\n if (!isChecked) {\n formik.setFieldValue(\"isLegacyTableWithId\", false);\n }\n }}\n label=\"Is Legacy Table\"\n />\n </div>\n\n {formik.values.isLegacyTable && (\n <>\n <div className=\"ml-4 mt-2\">\n <SolidCheckbox\n name=\"isLegacyTableWithId\"\n checked={!!formik.values.isLegacyTableWithId}\n onChange={(event) => {\n formik.setFieldValue(\"isLegacyTableWithId\", event.currentTarget.checked);\n }}\n label=\"Has existing Id\"\n />\n </div>\n <p className=\"form-field-label mt-2 text-sm\">\n Note: Legacy tables require at least one field marked as Primary Key during model creation\n </p>\n </>\n )}\n </SolidPanel>\n </div>\n <div className=\"field col-12 lg:col-6 lg:pl-3\">\n <SolidPanel header={\"Basic Settings\"} className=\"solid-column-panel\">\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"displayName\" className={styles.fieldLabel}>\n Display Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"displayName\"\n name=\"displayName\"\n className={styles.fieldInput}\n value={formik.values.displayName}\n onChange={(e) => {\n formik.handleChange(e);\n const { toCamelCase, toSnakeCase, toPluralCamelCase } = getSingularAndPlural(e.target.value);\n if (params.id === \"new\") {\n formik.setFieldValue(\"singularName\", toCamelCase);\n formik.setFieldValue(\"pluralName\", toPluralCamelCase);\n formik.setFieldValue(\"tableName\", toSnakeCase);\n }\n }}\n />\n {renderFieldError(\"displayName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"singularName\" className={styles.fieldLabel}>\n Singular Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"singularName\"\n name=\"singularName\"\n className={styles.fieldInput}\n value={formik.values.singularName}\n disabled\n onChange={formik.handleChange}\n />\n {renderFieldError(\"singularName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"pluralName\" className={styles.fieldLabel}>\n Plural Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"pluralName\"\n name=\"pluralName\"\n className={styles.fieldInput}\n value={formik.values.pluralName}\n disabled\n onChange={formik.handleChange}\n />\n {renderFieldError(\"pluralName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"tableName\" className={styles.fieldLabel}>\n Table Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"tableName\"\n name=\"tableName\"\n className={styles.fieldInput}\n value={formik.values.tableName}\n disabled={params.id !== \"new\"}\n onChange={formik.handleChange}\n />\n {renderFieldError(\"tableName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"description\" className={styles.fieldLabel}>\n Description\n </label>\n <SolidTextarea\n id=\"description\"\n name=\"description\"\n className={styles.fieldTextarea}\n value={formik.values.description}\n rows={5}\n onChange={formik.handleChange}\n />\n {renderFieldError(\"description\")}\n </div>\n </SolidPanel>\n </div>\n\n {/* <div className=\"md:col-6 sm:col-12\">\n <div className=\"field\">\n <label htmlFor=\"pluralName\" className=\"form-label form-field-label\">\n Plural Name\n </label>\n <InputText\n type=\"text\"\n id=\"pluralName\"\n name=\"pluralName\"\n onChange={formik.handleChange}\n value={formik.values.pluralName}\n className={cx(\"p-inputtext-sm w-full small-input\", {\n \"p-invalid\": isFormFieldValid(formik, \"pluralName\"),\n })}\n />\n {isFormFieldValid(formik, \"pluralName\") && (\n <Message severity=\"error\" text={formik?.errors?.pluralName?.toString()} />\n )}\n </div>\n </div> */}\n\n\n {/* <div className=\"md:col-6 sm:col-12\">\n <div className=\"field form-dropdown-select\">\n <label htmlFor=\"dataSourceType\" className=\"form-labe form-field-label\">\n Data Source\n </label>\n <Dropdown\n id=\"dataSourceType\"\n name=\"dataSourceType\"\n value={formik.values.dataSourceType}\n options={dataSourceTypes}\n onChange={(e) => {\n formik.setFieldValue(\"dataSourceType\", e.value);\n // if (e.value == \"mariadb\") {\n // formik.setFieldValue(\"dataSourceType\", \"mongodb\");\n // }\n // else {\n // formik.setFieldValue(\"dataSourceType\", \"rdbms\");\n // }\n }\n }\n placeholder=\"Select a Data Source\"\n className={cx(\"p-inputtext-sm w-full\", {\n \"p-invalid\": isFormFieldValid(formik, \"dataSource\"),\n })}\n />\n {isFormFieldValid(formik, \"dataSource\") && (\n <Message severity=\"error\" text={formik?.errors?.dataSource?.toString()} />\n )}\n </div>\n </div> */}\n\n\n </div>\n </div>\n </form>\n </>\n );\n});\n\nexport default ModelMetaData;\n"]}
|
|
1
|
+
{"version":3,"file":"ModelMetaData.js","sourceRoot":"","sources":["../../../../src/components/core/model/ModelMetaData.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { ERROR_MESSAGES } from \"../../../constants/error-messages\";\nimport { getSingularAndPlural } from \"../../../helpers/helpers\";\nimport { useGetFieldDefaultMetaDataQuery } from \"../../../redux/api/fieldApi\";\nimport { useLazyGetModelsQuery } from \"../../../redux/api/modelApi\";\nimport { useLazyGetmodulesQuery } from \"../../../redux/api/moduleApi\";\nimport { useFormik } from \"formik\";\nimport { snakeCase } from \"lodash\";\nimport qs from \"qs\";\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { showToast } from \"../../../redux/features/toastSlice\";\nimport * as Yup from \"yup\";\nimport { SolidAutocomplete, SolidCheckbox, SolidInput, SolidPanel, SolidTextarea } from \"../../shad-cn-ui\";\nimport { useSolidAutocompleteField } from \"../../../hooks/useSolidAutocompleteField\";\nimport styles from \"../form/fields/solidFields.module.css\";\n\nconst cx = (...parts: Array<string | false | null | undefined | Record<string, boolean>>) => {\n const classes: string[] = [];\n parts.forEach((part) => {\n if (!part) return;\n if (typeof part === \"string\") {\n classes.push(part);\n return;\n }\n Object.entries(part).forEach(([key, value]) => {\n if (value) classes.push(key);\n });\n });\n return classes.join(\" \");\n};\n\nconst ModelMetaData = React.forwardRef(({ modelMetaData, setModelMetaData, allModelsNames, deleteModelFunction, nextTab, formikModelMetadataRef, params, formErrors, setIsDirty }: any, ref) => {\n\n // const ModelMetaData = ({ modelMetaData, setModelMetaData, deleteModelFunction, nextTab, formikModelMetadataRef }: any) => { \n\n const dispatch = useDispatch();\n\n const [triggerGetModules, { data: moduleData, isFetching: isModuleFetching, error: moduleError }] = useLazyGetmodulesQuery();\n const [triggerGetModels, { data: modelData, isFetching: isModelFetching, error: modelError }] = useLazyGetModelsQuery();\n const { data: fieldDefaultMetaData, isLoading, error, refetch } = useGetFieldDefaultMetaDataQuery(null);\n \n\n const initialValues = {\n singularName: modelMetaData ? modelMetaData?.singularName : \"\",\n pluralName: modelMetaData ? modelMetaData?.pluralName : \"\",\n displayName: modelMetaData ? modelMetaData?.displayName : \"\",\n description: modelMetaData ? modelMetaData?.description : \"\",\n dataSource: modelMetaData ? modelMetaData?.dataSource : \"\",\n dataSourceType: modelMetaData ? modelMetaData?.dataSourceType : \"\",\n tableName: modelMetaData ? modelMetaData?.tableName : null,\n moduleId: modelMetaData ? modelMetaData?.module?.id : \"\",\n module: modelMetaData ? modelMetaData?.module : \"\",\n isSystem: modelMetaData ? modelMetaData?.isSystem : false,\n enableSoftDelete: modelMetaData ? modelMetaData?.enableSoftDelete : \"\",\n enableAuditTracking: modelMetaData ? modelMetaData?.enableAuditTracking : true,\n internationalisation: modelMetaData ? modelMetaData?.internationalisation : \"\",\n draftPublishWorkflow: modelMetaData ? modelMetaData?.draftPublishWorkflow : \"\",\n isChild: modelMetaData ? modelMetaData?.isChild : \"\",\n parentModelId: modelMetaData ? modelMetaData?.parentModel?.id : \"\",\n parentModel: modelMetaData ? modelMetaData?.parentModel : \"\",\n isLegacyTable: modelMetaData ? modelMetaData?.isLegacyTable : false,\n hasExistingId: modelMetaData ? modelMetaData?.hasExistingId : false,\n };\n\n const [showTableName, setShowTableName] = useState<any>(false);\n const [showParentModel, setShowParentModel] = useState<any>(false);\n const [selectedModule, setSelectedModule] = useState<any>(null);\n\n\n useEffect(() => {\n if (modelMetaData && modelMetaData.tableName) {\n setShowTableName(true)\n }\n if (modelMetaData && modelMetaData.isChild) {\n setShowParentModel(true)\n }\n else if (modelMetaData && !modelMetaData.isChild) {\n setShowParentModel(false)\n }\n }, [modelMetaData])\n\n const validationSchema = Yup.object({\n singularName: Yup.string()\n // .matches(\n // /^[a-z]+(-[a-z]+)*$/,\n // \"Invalid format. Use lowercase letters and hyphens only\"\n // )\n .notOneOf(allModelsNames, ERROR_MESSAGES.FIELD_ALREADY_USE('Name', 'name'))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Singular Name')),\n pluralName: Yup.string()\n // .matches(\n // /^[a-z]+(-[a-z]+)*$/,\n // \"Invalid format. Use lowercase letters and hyphens only\"\n // )\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Plural Name')),\n // tableName: Yup.string().required().matches(/^[a-z0-9_]+$/, ERROR_MESSAGES.SNAKE_CASE('Tabale')),\n displayName: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Display Name\")),\n description: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Description Name\")),\n dataSource: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Data Source\")),\n dataSourceType: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Data Source Type\")),\n moduleId: Yup.number().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Module Id\")),\n module: Yup.object().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Module\")),\n isSystem: Yup.boolean(),\n enableSoftDelete: Yup.boolean(),\n enableAuditTracking: Yup.boolean(),\n internationalisation: Yup.boolean(),\n draftPublishWorkflow: Yup.boolean(),\n isChild: Yup.boolean(),\n parentModelId: Yup.number().when(\"isChild\", (isChild: any, schema) => {\n if (isChild.length > 0 && isChild[0] == true) {\n return schema.required(ERROR_MESSAGES.FIELD_REUQIRED('Parent Model Id'))\n } else {\n return schema.notRequired().nullable();\n }\n }),\n parentModel: Yup.object().when(\"isChild\", (isChild: any, schema) => {\n if (isChild.length > 0 && isChild[0] == true) {\n return schema.required(ERROR_MESSAGES.FIELD_REUQIRED('Parent Model'))\n } else {\n return schema.notRequired().nullable();\n }\n }),\n isLegacyTable: Yup.boolean(),\n hasExistingId: Yup.boolean(),\n });\n\n\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const getFieldErrorMessage = (fieldName: string, fallbackField?: string) => {\n const errors = formik.errors as Record<string, any>;\n const message =\n errors[fieldName] ??\n (fallbackField ? errors[fallbackField] : undefined) ??\n formErrors[fieldName] ??\n (fallbackField ? formErrors[fallbackField] : undefined);\n return message;\n };\n\n const fieldHasError = (fieldName: string, fallbackField?: string) => {\n return Boolean(\n isFormFieldValid(formik, fieldName) ||\n (fallbackField && isFormFieldValid(formik, fallbackField)) ||\n formErrors[fieldName] ||\n (fallbackField && formErrors[fallbackField])\n );\n };\n\n const renderFieldError = (fieldName: string, fallbackField?: string) => {\n if (!fieldHasError(fieldName, fallbackField)) {\n return null;\n }\n\n const message = getFieldErrorMessage(fieldName, fallbackField);\n\n if (!message) {\n return null;\n }\n\n const errorText = Array.isArray(message) ? message.join(\", \") : String(message);\n return <p className={styles.fieldError}>{errorText}</p>;\n };\n\n const formik = useFormik({\n initialValues,\n validationSchema,\n validateOnChange: true, // This ensures validation runs when a field value is changed\n enableReinitialize: true,\n innerRef: formikModelMetadataRef,\n onSubmit: async (values) => {\n const tableName = generateTableName(values.module.displayName, values.singularName);\n\n try {\n const modelData = {\n ...modelMetaData,\n singularName: values.singularName,\n pluralName: values.pluralName,\n displayName: values.displayName,\n description: values.description,\n dataSource: values.dataSource,\n dataSourceType: values.dataSourceType,\n tableName: values?.tableName || tableName,\n moduleId: values.moduleId,\n module: values.module,\n isSystem: values.isSystem ? values.isSystem === true : '',\n enableSoftDelete: values.enableSoftDelete === true ? true : '',\n enableAuditTracking: values.enableAuditTracking === true ? true : '',\n internationalisation: values.internationalisation === true ? true : '',\n draftPublishWorkflow: values.draftPublishWorkflow === true ? true : '',\n isChild: values.isChild === true ? true : '',\n ...(values.isChild == true && {\n parentModelId: values.parentModelId,\n parentModel: values.parentModel,\n }),\n isLegacyTable: values.isLegacyTable === true ? true : false,\n hasExistingId: values.hasExistingId === true ? true : false,\n \n };\n setModelMetaData(modelData);\n nextTab()\n\n } catch (err) {\n console.error(ERROR_MESSAGES.CREATE_MODEL, err);\n }\n },\n });\n\n function generateTableName(moduleSlug: string, modelName: string): string {\n const snakeCaseModelName = snakeCase(modelName);\n const sankeCaseModuleName = snakeCase(moduleSlug);\n return `${sankeCaseModuleName}_${snakeCaseModelName}`;\n }\n\n const showError = async () => {\n const errors = await formik.validateForm(); // Trigger validation and get the updated errors\n const errorMessages = Object.values(errors);\n if (errorMessages.length > 0) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.SEND_REPORT, detail: errorMessages.map(String).join(', '), life: 3000 }));\n }\n };\n\n\n const searchModule = async (event: any) => {\n try {\n const query = event.query;\n const queryData = {\n limit: 10,\n offset: 0,\n filters: {\n name: {\n $containsi: query,\n },\n },\n };\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n\n const result = await triggerGetModules(queryString).unwrap();\n\n if (result && result.records) {\n const updatedSuggestion = [...result.records];\n return updatedSuggestion\n } else {\n return []\n }\n } catch (error) {\n return []\n }\n };\n\n\n const searchModel = async (event: any) => {\n try {\n const query = event.query;\n const queryData = {\n limit: 10,\n offset: 0,\n filters: {\n singularName: {\n $containsi: query,\n },\n },\n };\n\n // Add module filter dynamically\n if (selectedModule?.name) {\n (queryData.filters as any)[\"module\"] = {\n name: { $containsi: selectedModule.name },\n };\n }\n\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n\n const result = await triggerGetModels(queryString).unwrap();\n\n if (result && result.records) {\n const updatedSuggestion = [...result.records];\n return updatedSuggestion\n } else {\n return []\n }\n } catch (error) {\n return []\n }\n };\n\n\n const serachDataSource = async (event: any) => {\n const query = event.query;\n try {\n const filterredData: any = fieldDefaultMetaData.data.dataSource.filter((t: any) => t.name.toLowerCase().startsWith(query.toLowerCase()));\n const transformedData = filterredData.map((e: any) => ({ label: e.name, value: e.name, type: e.type }));\n return transformedData\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_ITEMS, error);\n return []\n }\n };\n\n\n const serachDataSourceType = async (event: any) => {\n const query = event.query;\n try {\n\n const filterredData: any = fieldDefaultMetaData.data.dataSource.filter((t: any) => t.type.toLowerCase().startsWith(query.toLowerCase()));\n const transformedData = filterredData.map((e: any) => ({ label: e.type, value: e.type }))\n return transformedData;\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_ITEMS, error);\n return [];\n\n }\n };\n\n\n // useEffect(() => {\n // if (modelMetaData) {\n // setModelMetaData(modelMetaData.parentCategoryId);\n\n // // formik.setFieldValue(\"parentCategoryId\", modelMetaData.parentCategoryId);\n // }\n // }, [modelMetaData])\n\n\n // Set the formik reference to the formik instance\n // Set the formik reference to the formik instance\n useEffect(() => {\n if (formikModelMetadataRef) {\n formikModelMetadataRef.current = formik; // Assign the formik instance to the ref\n }\n }, [formik, formikModelMetadataRef]);\n\n\n const renderCount = useRef(0);\n\n useEffect(() => {\n renderCount.current += 1; // Increment count on every render\n });\n\n\n useEffect(() => {\n formik.validateForm();\n setModelMetaData(formik.values);\n\n }, [formik.values])\n\n useEffect(() => {\n if (formik.dirty) {\n setIsDirty(true);\n }\n }, [formik.dirty]);\n\n const moduleField = useSolidAutocompleteField({\n formik,\n fieldName: \"module\",\n fieldNameId: \"moduleId\",\n labelKey: \"displayName\",\n valueKey: \"id\",\n searchData: searchModule,\n existingData: formik.values.module,\n relationField: true,\n additionalAction: (e: any) => setSelectedModule(e.value),\n });\n\n const dataSourceField = useSolidAutocompleteField({\n formik,\n fieldName: \"dataSource\",\n labelKey: \"label\",\n valueKey: \"value\",\n searchData: serachDataSource,\n existingData: formik.values.dataSource,\n additionalAction: (e: any) => formik.setFieldValue(\"dataSourceType\", e.target.value.type),\n });\n\n const parentModelField = useSolidAutocompleteField({\n formik,\n fieldName: \"parentModel\",\n fieldNameId: \"parentModelId\",\n labelKey: \"displayName\",\n valueKey: \"id\",\n searchData: searchModel,\n existingData: formik.values.parentModel,\n relationField: true,\n });\n\n return (\n\n <>\n <form onSubmit={formik.handleSubmit}>\n <div className=\"\">\n <div className=\"flex flex-wrap -mx-2 -mt-2\">\n <div className=\"field w-full px-2 pt-2 lg:w-1/2 lg:pr-4\">\n <SolidPanel header={\"Basic Info\"} className=\"solid-column-panel\">\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"moduleId\" className={styles.fieldLabel}>\n Module\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"module\", \"moduleId\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={moduleField.selectedItem}\n suggestions={moduleField.filteredItems}\n completeMethod={moduleField.searchItems}\n onChange={moduleField.handleChange}\n dropdown\n field=\"displayName\"\n className=\"w-full\"\n />\n </div>\n {renderFieldError(\"module\", \"moduleId\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"dataSource\" className={styles.fieldLabel}>\n Data Source\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"dataSource\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={dataSourceField.selectedItem}\n suggestions={dataSourceField.filteredItems}\n completeMethod={dataSourceField.searchItems}\n onChange={dataSourceField.handleChange}\n dropdown\n field=\"label\"\n className=\"w-full\"\n />\n </div>\n {formik.values.dataSourceType && (\n <p className=\"form-field-label text-sm\">\n Your datasource will connect to a {formik.values.dataSourceType} database\n </p>\n )}\n {renderFieldError(\"dataSource\")}\n </div>\n </SolidPanel>\n\n <SolidPanel header={\"Configurations\"} className=\"solid-column-panel mt-3 mb-3 lg:mt-5\">\n <div className=\"mt-2\">\n <SolidCheckbox\n name=\"enableSoftDelete\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.enableSoftDelete}\n onChange={(event) => {\n formik.setFieldValue(\"enableSoftDelete\", event.currentTarget.checked);\n }}\n label=\"Enable Soft Delete\"\n />\n {params.id !== \"new\" && (\n <p className=\"form-field-label mt-1 text-sm\">\n Soft-delete can only be set during initial creation to maintain data integrity\n </p>\n )}\n {renderFieldError(\"enableSoftDelete\")}\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"isChild\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.isChild}\n onChange={(event) => {\n formik.setFieldValue(\"isChild\", event.currentTarget.checked);\n }}\n label=\"Is Child\"\n />\n {params.id !== \"new\" && (\n <p className=\"form-field-label mt-1 text-sm\">\n Is Current Model child of another Model\n </p>\n )}\n {renderFieldError(\"isChild\")}\n </div>\n\n {showParentModel && (\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"parentModelId\" className={styles.fieldLabel}>\n Parent Model\n </label>\n <div\n className={cx(\n \"solid-standard-autocomplete w-full\",\n fieldHasError(\"parentModel\", \"parentModelId\") && styles.fieldInvalidControl\n )}\n >\n <SolidAutocomplete\n disabled={params.id !== \"new\"}\n value={parentModelField.selectedItem}\n suggestions={parentModelField.filteredItems}\n completeMethod={parentModelField.searchItems}\n onChange={parentModelField.handleChange}\n dropdown\n field=\"displayName\"\n className=\"w-full\"\n />\n </div>\n {renderFieldError(\"parentModel\", \"parentModelId\")}\n </div>\n )}\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"enableAuditTracking\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.enableAuditTracking}\n onChange={(event) => {\n formik.setFieldValue(\"enableAuditTracking\", event.currentTarget.checked);\n }}\n label=\"Enable Audit Tracking\"\n />\n {renderFieldError(\"enableAuditTracking\")}\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"internationalisation\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.internationalisation}\n onChange={(event) => {\n formik.setFieldValue(\"internationalisation\", event.currentTarget.checked);\n }}\n label=\"Is Internationalisation Enabled\"\n />\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"draftPublishWorkflow\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.draftPublishWorkflow}\n onChange={(event) => {\n formik.setFieldValue(\"draftPublishWorkflow\", event.currentTarget.checked);\n }}\n label=\"Draft/Publish Workflow\"\n />\n </div>\n\n <div className=\"mt-3\">\n <SolidCheckbox\n name=\"isLegacyTable\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.isLegacyTable}\n onChange={(event) => {\n const isChecked = event.currentTarget.checked;\n formik.setFieldValue(\"isLegacyTable\", isChecked);\n if (!isChecked) {\n formik.setFieldValue(\"hasExistingId\", false);\n }\n }}\n label=\"Is Legacy Table\"\n />\n </div>\n\n {formik.values.isLegacyTable && (\n <>\n <div className=\"ml-4 mt-2\">\n <SolidCheckbox\n name=\"hasExistingId\"\n disabled={params.id !== \"new\"}\n checked={!!formik.values.hasExistingId}\n onChange={(event) => {\n formik.setFieldValue(\"hasExistingId\", event.currentTarget.checked);\n }}\n label=\"Has existing Id\"\n />\n </div>\n <p className=\"form-field-label mt-2 text-sm\">\n Note: Legacy tables require at least one field marked as Primary Key during model creation\n </p>\n </>\n )}\n </SolidPanel>\n </div>\n <div className=\"field w-full px-2 pt-2 lg:w-1/2 lg:pl-4\">\n <SolidPanel header={\"Basic Settings\"} className=\"solid-column-panel\">\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"displayName\" className={styles.fieldLabel}>\n Display Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"displayName\"\n name=\"displayName\"\n className={styles.fieldInput}\n value={formik.values.displayName}\n disabled={params.id !== \"new\"}\n onChange={(e) => {\n formik.handleChange(e);\n const { toCamelCase, toSnakeCase, toPluralCamelCase } = getSingularAndPlural(e.target.value);\n if (params.id === \"new\") {\n formik.setFieldValue(\"singularName\", toCamelCase);\n formik.setFieldValue(\"pluralName\", toPluralCamelCase);\n formik.setFieldValue(\"tableName\", toSnakeCase);\n }\n }}\n />\n {renderFieldError(\"displayName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"singularName\" className={styles.fieldLabel}>\n Singular Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"singularName\"\n name=\"singularName\"\n className={styles.fieldInput}\n value={formik.values.singularName}\n disabled\n onChange={formik.handleChange}\n />\n {renderFieldError(\"singularName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"pluralName\" className={styles.fieldLabel}>\n Plural Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"pluralName\"\n name=\"pluralName\"\n className={styles.fieldInput}\n value={formik.values.pluralName}\n disabled\n onChange={formik.handleChange}\n />\n {renderFieldError(\"pluralName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"tableName\" className={styles.fieldLabel}>\n Table Name\n </label>\n <SolidInput\n type=\"text\"\n id=\"tableName\"\n name=\"tableName\"\n className={styles.fieldInput}\n value={formik.values.tableName}\n disabled={params.id !== \"new\"}\n onChange={formik.handleChange}\n />\n {renderFieldError(\"tableName\")}\n </div>\n\n <div className={styles.fieldWrapper}>\n <label htmlFor=\"description\" className={styles.fieldLabel}>\n Description\n </label>\n <SolidTextarea\n id=\"description\"\n name=\"description\"\n className={styles.fieldTextarea}\n value={formik.values.description}\n rows={5}\n disabled={params.id !== \"new\"}\n onChange={formik.handleChange}\n />\n {renderFieldError(\"description\")}\n </div>\n </SolidPanel>\n </div>\n </div>\n </div>\n </form>\n </>\n );\n});\n\nexport default ModelMetaData;\n"]}
|