@solidxai/core-ui 0.1.9-beta.9 → 0.1.10
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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidCardView.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { useGetSolidViewLayoutQuery } from \"../../../redux/api/solidViewApi\";\nimport { useLazyCheckIfPermissionExistsQuery } from \"../../../redux/api/userApi\";\nimport qs from \"qs\";\nimport { ChangeEvent, useEffect, useRef, useState } from \"react\";\nimport { SolidLightbox } from \"../../shad-cn-ui/SolidLightbox\";\nimport type { SolidLightboxSlide } from \"../../shad-cn-ui/SolidLightbox\";\nimport { getMediaTypeFromUrl } from \"../../../helpers/mediaType\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { showNavbar, toggleNavbar } from \"../../../redux/features/navbarSlice\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { SolidHeaderRequestStatus } from \"../../common/SolidHeaderRequestStatus\";\nimport { SolidCreateButton } from \"../common/SolidCreateButton\";\nimport { SolidGlobalSearchElement } from \"../common/SolidGlobalSearchElement\";\nimport { SolidEmptyListViewPlaceholder } from \"../list/SolidEmptyListViewPlaceholder\";\nimport { getFilterObjectFromLocalStorage, setFilterObjectToLocalStorage } from \"../list/SolidListView\";\nimport { normalizeSolidListTreeKanbanActionPath } from \"../../../helpers/routePaths\";\nimport { SolidCardViewConfigure } from \"./SolidCardViewConfigure\";\nimport { CardGrid } from \"./CardGrid\";\nimport { CardUserViewLayout } from \"./CardUserViewLayout\";\nimport {\n SolidButton,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\ntype SolidCardViewParams = {\n moduleName: string;\n modelName: string;\n embeded: boolean;\n};\n\nconst deriveCardViewConfig = (solidCardViewMetaData: any) => {\n const solidView = solidCardViewMetaData?.data?.solidView;\n const solidFieldsMetadata = solidCardViewMetaData?.data?.solidFieldsMetadata || {};\n const layoutAttrs = solidView?.layout?.attrs || {};\n const toPopulate: string[] = [];\n const toPopulateMedia: string[] = [];\n\n const findCardNode = (nodes: any[] = []): any => {\n for (const node of nodes) {\n if (!node) continue;\n if (node.type === \"card\") return node;\n if (Array.isArray(node.children) && node.children.length > 0) {\n const nestedCard = findCardNode(node.children);\n if (nestedCard) return nestedCard;\n }\n }\n\n return null;\n };\n\n const extractFields = (nodes: any, result: any[] = []) => {\n if (!nodes) return result;\n\n if (Array.isArray(nodes)) {\n nodes.forEach((node: any) => extractFields(node, result));\n return result;\n }\n\n if (nodes.type === \"field\") {\n result.push(nodes);\n }\n if (Array.isArray(nodes.children)) {\n nodes.children.forEach((child: any) => extractFields(child, result));\n }\n return result;\n };\n\n const cardNode = findCardNode(solidView?.layout?.children || []);\n const fieldSource = cardNode?.children?.length ? cardNode.children : solidView?.layout?.children || [];\n const layoutFields = extractFields(fieldSource);\n layoutFields.forEach((column: any) => {\n const fieldMetadata = solidFieldsMetadata[column?.attrs?.name];\n if (!fieldMetadata) return;\n\n if (fieldMetadata.type === \"relation\") {\n toPopulate.push(fieldMetadata.name);\n }\n if (fieldMetadata.type === \"mediaSingle\" || fieldMetadata.type === \"mediaMultiple\") {\n toPopulateMedia.push(fieldMetadata.name);\n }\n });\n\n return {\n rows: layoutAttrs.pageSize || 24,\n pageSizeOptions: layoutAttrs.pageSizeOptions || [12, 24, 48],\n toPopulate,\n toPopulateMedia,\n };\n};\n\nexport const SolidCardView = (params: SolidCardViewParams) => {\n const visibleNavbar = useSelector((state: any) => state.navbarState?.visibleNavbar);\n const dispatch = useDispatch();\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const solidGlobalSearchElementRef = useRef<any>();\n\n const [actionsAllowed, setActionsAllowed] = useState<string[]>([]);\n const [showGlobalSearchElement, setShowGlobalSearchElement] = useState(false);\n const [viewModes, setViewModes] = useState<any[]>([]);\n const [filters, setFilters] = useState<any>({ $and: [] });\n const [cards, setCards] = useState<any[]>([]);\n const [toPopulate, setToPopulate] = useState<string[]>([]);\n const [toPopulateMedia, setToPopulateMedia] = useState<string[]>([]);\n const [rows, setRows] = useState(24);\n const [rowsPerPageOptions, setRowsPerPageOptions] = useState<any[]>([12, 24, 48]);\n const [first, setFirst] = useState(0);\n const [totalRecords, setTotalRecords] = useState(0);\n const [loading, setLoading] = useState(true);\n const [showSaveFilterPopup, setShowSaveFilterPopup] = useState(false);\n const [createButtonUrl, setCreateButtonUrl] = useState<string>();\n const [editButtonUrl, setEditButtonUrl] = useState<string>();\n const [createActionQueryParams, setCreateActionQueryParams] = useState<Record<string, string>>({});\n const [openLightbox, setOpenLightbox] = useState(false);\n const [lightboxUrls, setLightboxUrls] = useState<any[]>([]);\n const [isLayoutDialogVisible, setLayoutDialogVisible] = useState(false);\n const [queryDataLoaded, setQueryDataLoaded] = useState(false);\n const [solidCardViewMetaData, setSolidCardViewMetaData] = useState<any>();\n const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();\n\n const lightboxSlides: SolidLightboxSlide[] = Array.isArray(lightboxUrls)\n ? lightboxUrls\n .map((item: any) => {\n const src = item?.src || item?.downloadUrl || \"\";\n if (!src) {\n return null;\n }\n const mediaType = getMediaTypeFromUrl(src);\n const slide: SolidLightboxSlide = { src };\n if (mediaType !== \"image\") {\n slide.type = mediaType;\n }\n return slide;\n })\n .filter((slide): slide is SolidLightboxSlide => !!slide)\n : [];\n\n const entityApi = createSolidEntityApi(params.modelName);\n const { useLazyGetSolidEntitiesQuery } = entityApi;\n const [triggerGetSolidEntities] = useLazyGetSolidEntitiesQuery();\n\n const menuItemId = searchParams.get(\"menuItemId\");\n const menuItemName = searchParams.get(\"menuItemName\");\n const actionId = searchParams.get(\"actionId\");\n const actionName = searchParams.get(\"actionName\");\n\n const cardViewMetaDataQs = qs.stringify(\n {\n modelName: params.modelName,\n moduleName: params.moduleName,\n viewType: \"card\",\n menuItemId,\n menuItemName,\n actionId,\n actionName,\n },\n {\n encodeValuesOnly: true,\n }\n );\n\n const { data: solidCardViewMetaDataResponse } = useGetSolidViewLayoutQuery(cardViewMetaDataQs);\n\n const editBaseUrl = normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || \"form\");\n const rowsOptions = rowsPerPageOptions && rowsPerPageOptions.length > 0 ? rowsPerPageOptions : [12, 24, 48];\n const paginationStart = totalRecords === 0 ? 0 : first + 1;\n const paginationEnd = Math.min(first + rows, totalRecords);\n const totalPages = rows > 0 ? Math.max(1, Math.ceil(totalRecords / rows)) : 1;\n const currentPage = rows > 0 ? Math.floor(first / rows) + 1 : 1;\n const paginationReport = `${paginationStart} - ${paginationEnd} of ${totalRecords}`;\n const canGoPrev = currentPage > 1;\n const canGoNext = currentPage < totalPages;\n\n const handleRowsChange = (event: ChangeEvent<HTMLSelectElement>) => {\n const nextRows = Number(event.target.value);\n setRows(nextRows);\n setFirst(0);\n };\n\n const handlePrevPage = () => {\n if (!canGoPrev) return;\n setFirst(Math.max(0, first - rows));\n };\n\n const handleNextPage = () => {\n if (!canGoNext) return;\n setFirst(Math.min((totalPages - 1) * rows, first + rows));\n };\n\n useEffect(() => {\n const fetchPermissions = async () => {\n if (!params.modelName) return;\n\n const permissionNames = [\n permissionExpression(params.modelName, \"create\"),\n permissionExpression(params.modelName, \"update\"),\n permissionExpression(params.modelName, \"findMany\"),\n permissionExpression(\"importTransaction\", \"create\"),\n permissionExpression(\"exportTransaction\", \"create\"),\n permissionExpression(\"userViewMetadata\", \"create\"),\n permissionExpression(\"savedFilters\", \"create\"),\n ];\n\n const queryString = qs.stringify(\n { permissionNames },\n { encodeValuesOnly: true }\n );\n const response = await triggerCheckIfPermissionExists(queryString);\n setActionsAllowed(response.data?.data || []);\n };\n\n fetchPermissions();\n }, [params.modelName]);\n\n useEffect(() => {\n if (!solidCardViewMetaDataResponse) return;\n\n setSolidCardViewMetaData(solidCardViewMetaDataResponse);\n setViewModes(solidCardViewMetaDataResponse?.data?.viewModes || []);\n\n const { rows, pageSizeOptions, toPopulate, toPopulateMedia } = deriveCardViewConfig(solidCardViewMetaDataResponse);\n const persistedFilterObject = typeof window !== \"undefined\" ? getFilterObjectFromLocalStorage() : null;\n const restoredFilter = { $and: [] as any[] };\n\n if (persistedFilterObject?.custom_filter_predicate) {\n restoredFilter.$and.push(persistedFilterObject.custom_filter_predicate);\n }\n if (persistedFilterObject?.search_predicate) {\n restoredFilter.$and.push(persistedFilterObject.search_predicate);\n }\n if (persistedFilterObject?.saved_filter_predicate) {\n restoredFilter.$and.push(persistedFilterObject.saved_filter_predicate);\n }\n if (persistedFilterObject?.predefined_search_predicate) {\n restoredFilter.$and.push(persistedFilterObject.predefined_search_predicate);\n }\n\n setRows(Number(persistedFilterObject?.limit) || rows);\n setRowsPerPageOptions(pageSizeOptions);\n setFirst(Number(persistedFilterObject?.offset) || 0);\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n setFilters(restoredFilter.$and.length > 0 ? restoredFilter : { $and: [] });\n setQueryDataLoaded(true);\n\n const layoutAttrs = solidCardViewMetaDataResponse?.data?.solidView?.layout?.attrs;\n const createActionUrl = layoutAttrs?.createAction && layoutAttrs?.createAction?.type === \"custom\"\n ? layoutAttrs?.createAction?.customComponent\n : \"form/new\";\n const editActionUrl = layoutAttrs?.editAction && layoutAttrs?.editAction?.type === \"custom\"\n ? layoutAttrs?.editAction?.customComponent\n : \"form\";\n\n if (layoutAttrs?.createAction) {\n setCreateActionQueryParams({\n actionName: layoutAttrs.createAction.name,\n actionType: layoutAttrs.createAction.type,\n actionContext: layoutAttrs.createAction.context,\n });\n }\n\n setCreateButtonUrl(createActionUrl);\n setEditButtonUrl(editActionUrl);\n }, [solidCardViewMetaDataResponse]);\n\n useEffect(() => {\n const fetchCards = async () => {\n if (!queryDataLoaded || !solidCardViewMetaDataResponse) return;\n\n setLoading(true);\n\n const queryData = {\n offset: first,\n limit: rows,\n populate: toPopulate,\n populateMedia: toPopulateMedia,\n filters,\n };\n\n try {\n const data: any = await triggerGetSolidEntities(\n qs.stringify(queryData, { encodeValuesOnly: true })\n ).unwrap();\n\n setCards(data?.records || []);\n setTotalRecords(data?.meta?.totalRecords || 0);\n } finally {\n setLoading(false);\n }\n };\n\n fetchCards();\n }, [queryDataLoaded, first, rows, toPopulate, toPopulateMedia, filters, solidCardViewMetaDataResponse]);\n\n const handleApplyCustomFilter = async (filterPredicates: any) => {\n const updatedFilter = { $and: [] as any[] };\n\n if (filterPredicates.custom_filter_predicate) {\n updatedFilter.$and.push(filterPredicates.custom_filter_predicate);\n }\n if (filterPredicates.search_predicate) {\n updatedFilter.$and.push(filterPredicates.search_predicate);\n }\n if (filterPredicates.saved_filter_predicate) {\n updatedFilter.$and.push(filterPredicates.saved_filter_predicate);\n }\n if (filterPredicates.predefined_search_predicate) {\n updatedFilter.$and.push(filterPredicates.predefined_search_predicate);\n }\n\n setFirst(0);\n setFilters(updatedFilter);\n setFilterObjectToLocalStorage({\n offset: 0,\n limit: rows,\n custom_filter_predicate: filterPredicates.custom_filter_predicate || {},\n search_predicate: filterPredicates.search_predicate || {},\n saved_filter_predicate: filterPredicates.saved_filter_predicate || {},\n predefined_search_predicate: filterPredicates.predefined_search_predicate || {},\n });\n };\n\n const handleFetchUpdatedRecords = () => {\n setQueryDataLoaded((current) => !current);\n };\n\n const toggleBothSidebars = () => {\n if (visibleNavbar) {\n dispatch(toggleNavbar());\n } else {\n dispatch(showNavbar());\n }\n };\n\n const cardViewTitle = solidCardViewMetaDataResponse?.data?.solidView?.displayName;\n const showEmptyState = !loading && cards.length === 0;\n const headerRequestStatusLabel = loading || !queryDataLoaded ? \"Loading...\" : null;\n\n return (\n <div className=\"page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden\">\n <div className=\"solid-list-content h-full flex flex-column flex-grow-1\">\n <div className=\"solid-list-surface solid-card-surface flex flex-column flex-1 min-h-0\">\n <div className=\"page-header solid-list-toolbar solid-card-toolbar flex-column lg:flex-row\">\n <div className=\"flex justify-content-between w-full\">\n <div className=\"flex gap-3 align-items-center w-full solid-list-toolbar-left\">\n {params.embeded !== true && (\n <div className=\"apps-icon block md:hidden cursor-pointer\" onClick={toggleBothSidebars}>\n <SolidIcon name=\"si-th-large\" aria-hidden />\n </div>\n )}\n <p className=\"m-0 view-title solid-text-wrapper\">{cardViewTitle}</p>\n <div className=\"hidden lg:flex\">\n <SolidGlobalSearchElement\n viewType=\"card\"\n showSaveFilterPopup={showSaveFilterPopup}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n ref={solidGlobalSearchElementRef}\n viewData={solidCardViewMetaDataResponse}\n handleApplyCustomFilter={handleApplyCustomFilter}\n />\n </div>\n </div>\n\n <div className=\"flex align-items-center solid-header-buttons-wrapper solid-list-toolbar-actions\">\n <SolidHeaderRequestStatus label={headerRequestStatusLabel} />\n <div className=\"flex lg:hidden\">\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-icon-button\"\n onClick={() => setShowGlobalSearchElement(!showGlobalSearchElement)}\n aria-label=\"Toggle search\"\n leftIcon={<SolidIcon name=\"si-search\" aria-hidden />}\n />\n </div>\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, \"create\")}`) &&\n solidCardViewMetaDataResponse?.data?.solidView?.layout?.attrs?.create !== false && (\n <SolidCreateButton\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n responsiveIconOnly={true}\n />\n )}\n\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-icon-button\"\n onClick={() => handleFetchUpdatedRecords()}\n aria-label=\"Refresh cards\"\n leftIcon={<SolidIcon name=\"si-refresh\" aria-hidden />}\n />\n\n <SolidCardViewConfigure\n solidCardViewMetaData={solidCardViewMetaDataResponse}\n modelName={params.modelName}\n actionsAllowed={actionsAllowed}\n viewModes={viewModes}\n setLayoutDialogVisible={setLayoutDialogVisible}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n filters={filters}\n handleRefreshView={handleFetchUpdatedRecords}\n />\n </div>\n </div>\n\n {showGlobalSearchElement && (\n <div className=\"flex lg:hidden\">\n <SolidGlobalSearchElement\n viewType=\"card\"\n showSaveFilterPopup={showSaveFilterPopup}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n ref={solidGlobalSearchElementRef}\n viewData={solidCardViewMetaDataResponse}\n handleApplyCustomFilter={handleApplyCustomFilter}\n />\n </div>\n )}\n </div>\n\n <div className=\"solid-card-view-content\">\n <div className=\"solid-card-view-body\">\n {showEmptyState ? (\n <SolidEmptyListViewPlaceholder\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n actionsAllowed={actionsAllowed}\n params={params}\n solidListViewMetaData={solidCardViewMetaDataResponse}\n handleFetchUpdatedRecords={handleFetchUpdatedRecords}\n />\n ) : (\n <CardGrid\n records={cards}\n solidCardViewMetaData={solidCardViewMetaDataResponse?.data}\n editButtonUrl={editBaseUrl}\n setLightboxUrls={setLightboxUrls}\n setOpenLightbox={setOpenLightbox}\n />\n )}\n </div>\n\n {totalRecords > 0 && (\n <div className=\"solid-card-view-pagination\">\n <div className=\"solid-card-view-pagination-bar solid-table-paginator flex items-center justify-center gap-3 text-sm rounded-md border border-border/60 px-3 py-1.5 bg-background\">\n <div className=\"solid-paginator-meta flex items-center gap-2\">\n <span className=\"solid-paginator-label\">Records</span>\n <select\n value={rows}\n onChange={handleRowsChange}\n className=\"solid-paginator-select\"\n >\n {rowsOptions.map((option) => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n <span className=\"solid-paginator-report\">{paginationReport}</span>\n </div>\n <div className=\"solid-paginator-actions flex items-center gap-2\">\n <button\n type=\"button\"\n className=\"solid-paginator-btn\"\n onClick={handlePrevPage}\n disabled={!canGoPrev}\n >\n Previous\n </button>\n <button\n type=\"button\"\n className=\"solid-paginator-btn\"\n onClick={handleNextPage}\n disabled={!canGoNext}\n >\n Next\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n\n {openLightbox && (\n <SolidLightbox\n open={openLightbox}\n slides={lightboxSlides}\n onClose={() => setOpenLightbox(false)}\n />\n )}\n\n <SolidDialog\n open={isLayoutDialogVisible}\n onOpenChange={setLayoutDialogVisible}\n className=\"solid-kanban-layout-dialog\"\n style={{ width: \"min(800px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader>\n <SolidDialogTitle>Change Card Layout</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-layout-dialog-body\">\n <CardUserViewLayout solidCardViewMetaData={solidCardViewMetaDataResponse} setLayoutDialogVisible={setLayoutDialogVisible} />\n </SolidDialogBody>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidCardView.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardView.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { createSolidEntityApi } from \"../../../redux/api/solidEntityApi\";\nimport { useGetSolidViewLayoutQuery } from \"../../../redux/api/solidViewApi\";\nimport { useLazyCheckIfPermissionExistsQuery } from \"../../../redux/api/userApi\";\nimport qs from \"qs\";\nimport { ChangeEvent, useEffect, useRef, useState } from \"react\";\nimport { SolidLightbox } from \"../../shad-cn-ui/SolidLightbox\";\nimport type { SolidLightboxSlide } from \"../../shad-cn-ui/SolidLightbox\";\nimport { getMediaTypeFromUrl } from \"../../../helpers/mediaType\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { showNavbar, toggleNavbar } from \"../../../redux/features/navbarSlice\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { SolidHeaderRequestStatus } from \"../../common/SolidHeaderRequestStatus\";\nimport { SolidCreateButton } from \"../common/SolidCreateButton\";\nimport { SolidGlobalSearchElement } from \"../common/SolidGlobalSearchElement\";\nimport { SolidEmptyListViewPlaceholder } from \"../list/SolidEmptyListViewPlaceholder\";\nimport { getFilterObjectFromLocalStorage, setFilterObjectToLocalStorage } from \"../list/SolidListView\";\nimport { normalizeSolidListTreeKanbanActionPath } from \"../../../helpers/routePaths\";\nimport { SolidCardViewConfigure } from \"./SolidCardViewConfigure\";\nimport { CardGrid } from \"./CardGrid\";\nimport { CardUserViewLayout } from \"./CardUserViewLayout\";\nimport {\n SolidButton,\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\ntype SolidCardViewParams = {\n moduleName: string;\n modelName: string;\n embeded: boolean;\n};\n\nconst deriveCardViewConfig = (solidCardViewMetaData: any) => {\n const solidView = solidCardViewMetaData?.data?.solidView;\n const solidFieldsMetadata = solidCardViewMetaData?.data?.solidFieldsMetadata || {};\n const layoutAttrs = solidView?.layout?.attrs || {};\n const toPopulate: string[] = [];\n const toPopulateMedia: string[] = [];\n\n const findCardNode = (nodes: any[] = []): any => {\n for (const node of nodes) {\n if (!node) continue;\n if (node.type === \"card\") return node;\n if (Array.isArray(node.children) && node.children.length > 0) {\n const nestedCard = findCardNode(node.children);\n if (nestedCard) return nestedCard;\n }\n }\n\n return null;\n };\n\n const extractFields = (nodes: any, result: any[] = []) => {\n if (!nodes) return result;\n\n if (Array.isArray(nodes)) {\n nodes.forEach((node: any) => extractFields(node, result));\n return result;\n }\n\n if (nodes.type === \"field\") {\n result.push(nodes);\n }\n if (Array.isArray(nodes.children)) {\n nodes.children.forEach((child: any) => extractFields(child, result));\n }\n return result;\n };\n\n const cardNode = findCardNode(solidView?.layout?.children || []);\n const fieldSource = cardNode?.children?.length ? cardNode.children : solidView?.layout?.children || [];\n const layoutFields = extractFields(fieldSource);\n layoutFields.forEach((column: any) => {\n const fieldMetadata = solidFieldsMetadata[column?.attrs?.name];\n if (!fieldMetadata) return;\n\n if (fieldMetadata.type === \"relation\") {\n toPopulate.push(fieldMetadata.name);\n }\n if (fieldMetadata.type === \"mediaSingle\" || fieldMetadata.type === \"mediaMultiple\") {\n toPopulateMedia.push(fieldMetadata.name);\n }\n });\n\n return {\n rows: layoutAttrs.pageSize || 24,\n pageSizeOptions: layoutAttrs.pageSizeOptions || [12, 24, 48],\n toPopulate,\n toPopulateMedia,\n };\n};\n\nexport const SolidCardView = (params: SolidCardViewParams) => {\n const visibleNavbar = useSelector((state: any) => state.navbarState?.visibleNavbar);\n const dispatch = useDispatch();\n const pathname = usePathname();\n const searchParams = useSearchParams();\n const solidGlobalSearchElementRef = useRef<any>();\n\n const [actionsAllowed, setActionsAllowed] = useState<string[]>([]);\n const [showGlobalSearchElement, setShowGlobalSearchElement] = useState(false);\n const [viewModes, setViewModes] = useState<any[]>([]);\n const [filters, setFilters] = useState<any>({ $and: [] });\n const [cards, setCards] = useState<any[]>([]);\n const [toPopulate, setToPopulate] = useState<string[]>([]);\n const [toPopulateMedia, setToPopulateMedia] = useState<string[]>([]);\n const [rows, setRows] = useState(24);\n const [rowsPerPageOptions, setRowsPerPageOptions] = useState<any[]>([12, 24, 48]);\n const [first, setFirst] = useState(0);\n const [totalRecords, setTotalRecords] = useState(0);\n const [loading, setLoading] = useState(true);\n const [showSaveFilterPopup, setShowSaveFilterPopup] = useState(false);\n const [createButtonUrl, setCreateButtonUrl] = useState<string>();\n const [editButtonUrl, setEditButtonUrl] = useState<string>();\n const [createActionQueryParams, setCreateActionQueryParams] = useState<Record<string, string>>({});\n const [openLightbox, setOpenLightbox] = useState(false);\n const [lightboxUrls, setLightboxUrls] = useState<any[]>([]);\n const [isLayoutDialogVisible, setLayoutDialogVisible] = useState(false);\n const [queryDataLoaded, setQueryDataLoaded] = useState(false);\n const [solidCardViewMetaData, setSolidCardViewMetaData] = useState<any>();\n const [triggerCheckIfPermissionExists] = useLazyCheckIfPermissionExistsQuery();\n\n const lightboxSlides: SolidLightboxSlide[] = Array.isArray(lightboxUrls)\n ? lightboxUrls\n .map((item: any) => {\n const src = item?.src || item?.downloadUrl || \"\";\n if (!src) {\n return null;\n }\n const mediaType = getMediaTypeFromUrl(src);\n const slide: SolidLightboxSlide = { src };\n if (mediaType !== \"image\") {\n slide.type = mediaType;\n }\n return slide;\n })\n .filter((slide): slide is SolidLightboxSlide => !!slide)\n : [];\n\n const entityApi = createSolidEntityApi(params.modelName);\n const { useLazyGetSolidEntitiesQuery } = entityApi;\n const [triggerGetSolidEntities] = useLazyGetSolidEntitiesQuery();\n\n const menuItemId = searchParams.get(\"menuItemId\");\n const menuItemName = searchParams.get(\"menuItemName\");\n const actionId = searchParams.get(\"actionId\");\n const actionName = searchParams.get(\"actionName\");\n\n const cardViewMetaDataQs = qs.stringify(\n {\n modelName: params.modelName,\n moduleName: params.moduleName,\n viewType: \"card\",\n menuItemId,\n menuItemName,\n actionId,\n actionName,\n },\n {\n encodeValuesOnly: true,\n }\n );\n\n const { data: solidCardViewMetaDataResponse } = useGetSolidViewLayoutQuery(cardViewMetaDataQs);\n\n const editBaseUrl = normalizeSolidListTreeKanbanActionPath(pathname, editButtonUrl || \"form\");\n const rowsOptions = rowsPerPageOptions && rowsPerPageOptions.length > 0 ? rowsPerPageOptions : [12, 24, 48];\n const paginationStart = totalRecords === 0 ? 0 : first + 1;\n const paginationEnd = Math.min(first + rows, totalRecords);\n const totalPages = rows > 0 ? Math.max(1, Math.ceil(totalRecords / rows)) : 1;\n const currentPage = rows > 0 ? Math.floor(first / rows) + 1 : 1;\n const paginationReport = `${paginationStart} - ${paginationEnd} of ${totalRecords}`;\n const canGoPrev = currentPage > 1;\n const canGoNext = currentPage < totalPages;\n\n const handleRowsChange = (event: ChangeEvent<HTMLSelectElement>) => {\n const nextRows = Number(event.target.value);\n setRows(nextRows);\n setFirst(0);\n };\n\n const handlePrevPage = () => {\n if (!canGoPrev) return;\n setFirst(Math.max(0, first - rows));\n };\n\n const handleNextPage = () => {\n if (!canGoNext) return;\n setFirst(Math.min((totalPages - 1) * rows, first + rows));\n };\n\n useEffect(() => {\n const fetchPermissions = async () => {\n if (!params.modelName) return;\n\n const permissionNames = [\n permissionExpression(params.modelName, \"create\"),\n permissionExpression(params.modelName, \"update\"),\n permissionExpression(params.modelName, \"findMany\"),\n permissionExpression(\"importTransaction\", \"create\"),\n permissionExpression(\"exportTransaction\", \"create\"),\n permissionExpression(\"userViewMetadata\", \"create\"),\n permissionExpression(\"savedFilters\", \"create\"),\n ];\n\n const queryString = qs.stringify(\n { permissionNames },\n { encodeValuesOnly: true }\n );\n const response = await triggerCheckIfPermissionExists(queryString);\n setActionsAllowed(response.data?.data || []);\n };\n\n fetchPermissions();\n }, [params.modelName]);\n\n useEffect(() => {\n if (!solidCardViewMetaDataResponse) return;\n\n setSolidCardViewMetaData(solidCardViewMetaDataResponse);\n setViewModes(solidCardViewMetaDataResponse?.data?.viewModes || []);\n\n const { rows, pageSizeOptions, toPopulate, toPopulateMedia } = deriveCardViewConfig(solidCardViewMetaDataResponse);\n const persistedFilterObject = typeof window !== \"undefined\" ? getFilterObjectFromLocalStorage() : null;\n const restoredFilter = { $and: [] as any[] };\n\n if (persistedFilterObject?.custom_filter_predicate) {\n restoredFilter.$and.push(persistedFilterObject.custom_filter_predicate);\n }\n if (persistedFilterObject?.search_predicate) {\n restoredFilter.$and.push(persistedFilterObject.search_predicate);\n }\n if (persistedFilterObject?.saved_filter_predicate) {\n restoredFilter.$and.push(persistedFilterObject.saved_filter_predicate);\n }\n if (persistedFilterObject?.predefined_search_predicate) {\n restoredFilter.$and.push(persistedFilterObject.predefined_search_predicate);\n }\n\n setRows(Number(persistedFilterObject?.limit) || rows);\n setRowsPerPageOptions(pageSizeOptions);\n setFirst(Number(persistedFilterObject?.offset) || 0);\n setToPopulate(toPopulate);\n setToPopulateMedia(toPopulateMedia);\n setFilters(restoredFilter.$and.length > 0 ? restoredFilter : { $and: [] });\n setQueryDataLoaded(true);\n\n const layoutAttrs = solidCardViewMetaDataResponse?.data?.solidView?.layout?.attrs;\n const createActionUrl = layoutAttrs?.createAction && layoutAttrs?.createAction?.type === \"custom\"\n ? layoutAttrs?.createAction?.customComponent\n : \"form/new\";\n const editActionUrl = layoutAttrs?.editAction && layoutAttrs?.editAction?.type === \"custom\"\n ? layoutAttrs?.editAction?.customComponent\n : \"form\";\n\n if (layoutAttrs?.createAction) {\n setCreateActionQueryParams({\n actionName: layoutAttrs.createAction.name,\n actionType: layoutAttrs.createAction.type,\n actionContext: layoutAttrs.createAction.context,\n });\n }\n\n setCreateButtonUrl(createActionUrl);\n setEditButtonUrl(editActionUrl);\n }, [solidCardViewMetaDataResponse]);\n\n useEffect(() => {\n const fetchCards = async () => {\n if (!queryDataLoaded || !solidCardViewMetaDataResponse) return;\n\n setLoading(true);\n\n const queryData = {\n offset: first,\n limit: rows,\n populate: toPopulate,\n populateMedia: toPopulateMedia,\n filters,\n };\n\n try {\n const data: any = await triggerGetSolidEntities(\n qs.stringify(queryData, { encodeValuesOnly: true })\n ).unwrap();\n\n setCards(data?.records || []);\n setTotalRecords(data?.meta?.totalRecords || 0);\n } finally {\n setLoading(false);\n }\n };\n\n fetchCards();\n }, [queryDataLoaded, first, rows, toPopulate, toPopulateMedia, filters, solidCardViewMetaDataResponse]);\n\n const handleApplyCustomFilter = async (filterPredicates: any) => {\n const updatedFilter = { $and: [] as any[] };\n\n if (filterPredicates.custom_filter_predicate) {\n updatedFilter.$and.push(filterPredicates.custom_filter_predicate);\n }\n if (filterPredicates.search_predicate) {\n updatedFilter.$and.push(filterPredicates.search_predicate);\n }\n if (filterPredicates.saved_filter_predicate) {\n updatedFilter.$and.push(filterPredicates.saved_filter_predicate);\n }\n if (filterPredicates.predefined_search_predicate) {\n updatedFilter.$and.push(filterPredicates.predefined_search_predicate);\n }\n\n setFirst(0);\n setFilters(updatedFilter);\n setFilterObjectToLocalStorage({\n offset: 0,\n limit: rows,\n custom_filter_predicate: filterPredicates.custom_filter_predicate || {},\n search_predicate: filterPredicates.search_predicate || {},\n saved_filter_predicate: filterPredicates.saved_filter_predicate || {},\n predefined_search_predicate: filterPredicates.predefined_search_predicate || {},\n });\n };\n\n const handleFetchUpdatedRecords = () => {\n setQueryDataLoaded((current) => !current);\n };\n\n const toggleBothSidebars = () => {\n if (visibleNavbar) {\n dispatch(toggleNavbar());\n } else {\n dispatch(showNavbar());\n }\n };\n\n const cardViewTitle = solidCardViewMetaDataResponse?.data?.solidView?.displayName;\n const showEmptyState = !loading && cards.length === 0;\n const headerRequestStatusLabel = loading || !queryDataLoaded ? \"Loading...\" : null;\n\n return (\n <div className=\"page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden\">\n <div className=\"solid-list-content h-full flex way to flex-grow-1\">\n <div className=\"solid-list-surface solid-card-surface flex flex-col flex-1 min-h-0\">\n <div className=\"page-header solid-list-toolbar solid-card-toolbar flex-col lg:flex-row\">\n <div className=\"flex justify-between w-full\">\n <div className=\"flex gap-4 items-center w-full solid-list-toolbar-left\">\n {params.embeded !== true && (\n <div className=\"apps-icon block md:hidden cursor-pointer\" onClick={toggleBothSidebars}>\n <SolidIcon name=\"si-th-large\" aria-hidden />\n </div>\n )}\n <p className=\"m-0 view-title solid-text-wrapper\">{cardViewTitle}</p>\n <div className=\"hidden lg:flex\">\n <SolidGlobalSearchElement\n viewType=\"card\"\n showSaveFilterPopup={showSaveFilterPopup}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n ref={solidGlobalSearchElementRef}\n viewData={solidCardViewMetaDataResponse}\n handleApplyCustomFilter={handleApplyCustomFilter}\n />\n </div>\n </div>\n\n <div className=\"flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions\">\n <SolidHeaderRequestStatus label={headerRequestStatusLabel} />\n <div className=\"flex lg:hidden\">\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-icon-button\"\n onClick={() => setShowGlobalSearchElement(!showGlobalSearchElement)}\n aria-label=\"Toggle search\"\n leftIcon={<SolidIcon name=\"si-search\" aria-hidden />}\n />\n </div>\n\n {actionsAllowed.includes(`${permissionExpression(params.modelName, \"create\")}`) &&\n solidCardViewMetaDataResponse?.data?.solidView?.layout?.attrs?.create !== false && (\n <SolidCreateButton\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n responsiveIconOnly={true}\n />\n )}\n\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-icon-button\"\n onClick={() => handleFetchUpdatedRecords()}\n aria-label=\"Refresh cards\"\n leftIcon={<SolidIcon name=\"si-refresh\" aria-hidden />}\n />\n\n <SolidCardViewConfigure\n solidCardViewMetaData={solidCardViewMetaDataResponse}\n modelName={params.modelName}\n actionsAllowed={actionsAllowed}\n viewModes={viewModes}\n setLayoutDialogVisible={setLayoutDialogVisible}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n filters={filters}\n handleRefreshView={handleFetchUpdatedRecords}\n />\n </div>\n </div>\n\n {showGlobalSearchElement && (\n <div className=\"flex lg:hidden\">\n <SolidGlobalSearchElement\n viewType=\"card\"\n showSaveFilterPopup={showSaveFilterPopup}\n setShowSaveFilterPopup={setShowSaveFilterPopup}\n ref={solidGlobalSearchElementRef}\n viewData={solidCardViewMetaDataResponse}\n handleApplyCustomFilter={handleApplyCustomFilter}\n />\n </div>\n )}\n </div>\n\n <div className=\"solid-card-view-content\">\n <div className=\"solid-card-view-body\">\n {showEmptyState ? (\n <SolidEmptyListViewPlaceholder\n createButtonUrl={createButtonUrl}\n createActionQueryParams={createActionQueryParams}\n actionsAllowed={actionsAllowed}\n params={params}\n solidListViewMetaData={solidCardViewMetaDataResponse}\n handleFetchUpdatedRecords={handleFetchUpdatedRecords}\n />\n ) : (\n <CardGrid\n records={cards}\n solidCardViewMetaData={solidCardViewMetaDataResponse?.data}\n editButtonUrl={editBaseUrl}\n setLightboxUrls={setLightboxUrls}\n setOpenLightbox={setOpenLightbox}\n />\n )}\n </div>\n\n {totalRecords > 0 && (\n <div className=\"solid-card-view-pagination\">\n <div className=\"solid-card-view-pagination-bar solid-table-paginator flex items-center justify-center gap-3 text-sm rounded-md border border-border/60 px-3 py-1.5 bg-background\">\n <div className=\"solid-paginator-meta flex items-center gap-2\">\n <span className=\"solid-paginator-label\">Records</span>\n <select\n value={rows}\n onChange={handleRowsChange}\n className=\"solid-paginator-select\"\n >\n {rowsOptions.map((option) => (\n <option key={option} value={option}>\n {option}\n </option>\n ))}\n </select>\n <span className=\"solid-paginator-report\">{paginationReport}</span>\n </div>\n <div className=\"solid-paginator-actions flex items-center gap-2\">\n <button\n type=\"button\"\n className=\"solid-paginator-btn\"\n onClick={handlePrevPage}\n disabled={!canGoPrev}\n >\n Previous\n </button>\n <button\n type=\"button\"\n className=\"solid-paginator-btn\"\n onClick={handleNextPage}\n disabled={!canGoNext}\n >\n Next\n </button>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n\n {openLightbox && (\n <SolidLightbox\n open={openLightbox}\n slides={lightboxSlides}\n onClose={() => setOpenLightbox(false)}\n />\n )}\n\n <SolidDialog\n open={isLayoutDialogVisible}\n onOpenChange={setLayoutDialogVisible}\n className=\"solid-kanban-layout-dialog\"\n style={{ width: \"min(800px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader>\n <SolidDialogTitle>Change Card Layout</SolidDialogTitle>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-layout-dialog-body\">\n <CardUserViewLayout solidCardViewMetaData={solidCardViewMetaDataResponse} setLayoutDialogVisible={setLayoutDialogVisible} />\n </SolidDialogBody>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
@@ -347,11 +347,11 @@ export const SolidCardView = (params: SolidCardViewParams) => {
|
|
|
347
347
|
|
|
348
348
|
return (
|
|
349
349
|
<div className="page-parent-wrapper solid-list-page-wrapper flex h-full min-h-0 overflow-hidden">
|
|
350
|
-
<div className="solid-list-content h-full flex
|
|
351
|
-
<div className="solid-list-surface solid-card-surface flex flex-
|
|
352
|
-
<div className="page-header solid-list-toolbar solid-card-toolbar flex-
|
|
353
|
-
<div className="flex justify-
|
|
354
|
-
<div className="flex gap-
|
|
350
|
+
<div className="solid-list-content h-full flex way to flex-grow-1">
|
|
351
|
+
<div className="solid-list-surface solid-card-surface flex flex-col flex-1 min-h-0">
|
|
352
|
+
<div className="page-header solid-list-toolbar solid-card-toolbar flex-col lg:flex-row">
|
|
353
|
+
<div className="flex justify-between w-full">
|
|
354
|
+
<div className="flex gap-4 items-center w-full solid-list-toolbar-left">
|
|
355
355
|
{params.embeded !== true && (
|
|
356
356
|
<div className="apps-icon block md:hidden cursor-pointer" onClick={toggleBothSidebars}>
|
|
357
357
|
<SolidIcon name="si-th-large" aria-hidden />
|
|
@@ -370,7 +370,7 @@ export const SolidCardView = (params: SolidCardViewParams) => {
|
|
|
370
370
|
</div>
|
|
371
371
|
</div>
|
|
372
372
|
|
|
373
|
-
<div className="flex
|
|
373
|
+
<div className="flex items-center solid-header-buttons-wrapper solid-list-toolbar-actions">
|
|
374
374
|
<SolidHeaderRequestStatus label={headerRequestStatusLabel} />
|
|
375
375
|
<div className="flex lg:hidden">
|
|
376
376
|
<SolidButton
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidCardViewConfigure.d.ts","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"AAqDA,eAAO,MAAM,sBAAsB,iJAShC,GAAG,
|
|
1
|
+
{"version":3,"file":"SolidCardViewConfigure.d.ts","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"AAqDA,eAAO,MAAM,sBAAsB,iJAShC,GAAG,4CAiNL,CAAC"}
|
|
@@ -117,6 +117,6 @@ export var SolidCardViewConfigure = function (_a) {
|
|
|
117
117
|
}, children: [_jsx(SolidIcon, { name: "si-save", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Save Custom Filter" })] })), _jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item", onSelect: function () {
|
|
118
118
|
clearLocalstorageCache();
|
|
119
119
|
setIsCogMenuOpen(false);
|
|
120
|
-
}, children: [_jsx(SolidIcon, { name: "si-trash", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Clear cache" })] })] })] }), _jsxs(SolidDialog, { open: exportView, onOpenChange: setExportView, className: "solid-kanban-export-dialog", style: { width: "min(960px, calc(100vw - 32px))" }, children: [_jsxs(SolidDialogHeader, { className: "solid-export-dialog-header", children: [_jsxs("div", { children: [_jsx(SolidDialogTitle, { children: "Export" }), _jsx(SolidDialogDescription, { className: "solid-filter-dialog-subtitle m-0", children: "Choose the file format, refine the field set, and save reusable export templates." })] }), _jsx(SolidDialogClose, {})] }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { className: "solid-kanban-export-dialog-body", children: _jsx(SolidExport, { listViewMetaData: solidCardViewMetaData, filters: filters }) })] }), openImportDialog && (_jsx(SolidGenericImport, { openImportDialog: openImportDialog, setOpenImportDialog: setOpenImportDialog, listViewMetaData: solidCardViewMetaData, handleFetchUpdatedRecords: handleRefreshView }))] }));
|
|
120
|
+
}, children: [_jsx(SolidIcon, { name: "si-trash", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Clear cache" })] })] })] }), _jsxs(SolidDialog, { open: exportView, onOpenChange: setExportView, className: "solid-kanban-export-dialog", style: { width: "min(960px, calc(100vw - 32px))" }, children: [_jsxs(SolidDialogHeader, { className: "solid-export-dialog-header", children: [_jsxs("div", { children: [_jsx(SolidDialogTitle, { children: "Export" }), _jsx(SolidDialogDescription, { className: "solid-filter-dialog-subtitle m-0", children: "Choose the file format, refine the field set, and save reusable export templates." })] }), _jsx(SolidDialogClose, {})] }), _jsx(SolidDialogSeparator, {}), _jsx(SolidDialogBody, { className: "solid-kanban-export-dialog-body", children: _jsx(SolidExport, { listViewMetaData: solidCardViewMetaData, filters: filters, onExportComplete: function () { return setExportView(false); } }) })] }), openImportDialog && (_jsx(SolidGenericImport, { openImportDialog: openImportDialog, setOpenImportDialog: setOpenImportDialog, listViewMetaData: solidCardViewMetaData, handleFetchUpdatedRecords: handleRefreshView }))] }));
|
|
121
121
|
};
|
|
122
122
|
//# sourceMappingURL=SolidCardViewConfigure.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidCardViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EACL,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC3B,0BAA0B,EAC1B,0BAA0B,EAC1B,oBAAoB,EACpB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,EACxB,SAAS,GACV,MAAM,kBAAkB,CAAC;AAE1B,IAAM,kBAAkB,GAAG,UAAC,SAAqB;IAArB,0BAAA,EAAA,cAAqB;IAC/C,OAAO,SAAS;SACb,GAAG,CAAC,UAAC,MAAW;QACf,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEzB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACxD,CAAC;SACH;QAED,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,6BACK,MAAM,KACT,IAAI,MAAA,EACJ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IACrE;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,EASjC;QARJ,qBAAqB,2BAAA,EACrB,SAAS,eAAA,EACT,cAAc,oBAAA,EACd,SAAS,eAAA,EACT,sBAAsB,4BAAA,EACtB,sBAAsB,4BAAA,EACtB,OAAO,aAAA,EACP,iBAAiB,uBAAA;IAEjB,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACjC,IAAA,KAAkB,QAAQ,CAAS,EAAE,CAAC,EAArC,IAAI,QAAA,EAAE,OAAO,QAAwB,CAAC;IACvC,IAAA,KAAoC,QAAQ,CAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IACpD,IAAA,KAA0C,QAAQ,CAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAC1D,IAAA,KAA8B,QAAQ,CAAC,KAAK,CAAC,EAA5C,UAAU,QAAA,EAAE,aAAa,QAAmB,CAAC;IAEpD,IAAM,gBAAgB,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvF,IAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnD,SAAS,CAAC;QACR,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,IAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;aAChD;SACF;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,gBAAgB,GAAG,UAAC,WAAmB;;QAC3C,IAAI,IAAI,KAAK,WAAW;YAAE,OAAO;QAEjC,IAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAC,MAAW,IAAK,OAAA,MAAM,CAAC,IAAI,KAAK,WAAW,EAA3B,CAA2B,CAAC,CAAC;QACrF,IAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpD,IAAM,gBAAgB,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtE,IAAM,YAAY,GAAG;YACnB,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;YAC1C,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC;YAC9C,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;YACtC,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC;SAC3C,CAAC;QAEF,IAAM,WAAW,GAAG;YAClB,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,YAAY,CAAC,UAAU;YAC3D,YAAY,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,mCAAI,YAAY,CAAC,YAAY;YACjE,QAAQ,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,mCAAI,YAAY,CAAC,QAAQ;YACrD,UAAU,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,YAAY,CAAC,UAAU;SAC5D,CAAC;QAEF,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAC9C,IAAI,KAAK,EAAE;gBACT,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAClC;iBAAM;gBACL,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QAEH,IAAM,OAAO,GAAG,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,UAAG,OAAO,cAAI,eAAe,CAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC3E,CAAC,CAAC;IAEF,IAAM,sBAAsB,GAAG;QAC7B,IAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAChD,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC,CAAC;IAEF,IAAM,SAAS,GACb,OAAO,CAAC,SAAS,CAAC;QAClB,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAE,CAAC;QACvE,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAEpF,IAAM,SAAS,GACb,OAAO,CAAC,SAAS,CAAC;QAClB,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAE,CAAC;QACzE,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAEpF,IAAM,kBAAkB,GAAG,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAC5G,IAAM,mBAAmB,GAAG,cAAc,CAAC,QAAQ,CAAC,UAAG,oBAAoB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAE,CAAC,CAAC;IAEzG,OAAO,CACL,eAAK,SAAS,EAAC,mBAAmB,aAChC,MAAC,iBAAiB,IAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,aACpE,KAAC,wBAAwB,IAAC,OAAO,kBAC/B,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,4CAA4C,gBAC3C,mBAAmB,YAE9B,KAAC,SAAS,IAAC,IAAI,EAAC,QAAQ,wBAAe,GAChC,GACgB,EAC3B,MAAC,wBAAwB,IAAC,SAAS,EAAC,yBAAyB,aAC1D,SAAS,IAAI,CACZ,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,mBAAmB,CAAC,IAAI,CAAC,CAAC;oCAC1B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,aAAa,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACxF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IAC1C,CACzB,EAEA,SAAS,IAAI,CACZ,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,aAAa,CAAC,IAAI,CAAC,CAAC;oCACpB,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,WAAW,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACtF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IAC1C,CACzB,EAEA,CAAC,kBAAkB,IAAI,mBAAmB,CAAC,IAAI,KAAC,0BAA0B,KAAG,EAE7E,kBAAkB,IAAI,CACrB,MAAC,oBAAoB,eACnB,MAAC,2BAA2B,IAAC,SAAS,EAAC,4BAA4B,aACjE,KAAC,SAAS,IAAC,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACzF,eAAM,SAAS,EAAC,kCAAkC,uBAAc,IACpC,EAC9B,MAAC,2BAA2B,IAAC,SAAS,EAAC,wBAAwB,aAC5D,cAAc,IAAI,CACjB,8BACE,KAAC,sBAAsB,8BAAqC,EAC5D,KAAC,2BAA2B,IAAC,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,YACtE,gBAAgB,CAAC,GAAG,CAAC,UAAC,MAAW,IAAK,OAAA,CACrC,KAAC,0BAA0B,IAAmB,KAAK,EAAE,MAAM,CAAC,IAAI,YAC7D,MAAM,CAAC,KAAK,IADkB,MAAM,CAAC,IAAI,CAEf,CAC9B,EAJsC,CAItC,CAAC,GAC0B,EAC9B,KAAC,0BAA0B,KAAG,IAC7B,CACJ,EACD,MAAC,qBAAqB,IACpB,QAAQ,EAAE;oDACR,sBAAsB,CAAC,IAAI,CAAC,CAAC;oDAC7B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gDAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACpF,eAAM,SAAS,EAAC,kCAAkC,8BAAqB,IACjD,IACI,IACT,CACxB,EAEA,mBAAmB,IAAI,CACtB,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,sBAAsB,CAAC,IAAI,CAAC,CAAC;oCAC7B,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACpF,eAAM,SAAS,EAAC,kCAAkC,mCAA0B,IACtD,CACzB,EAED,MAAC,qBAAqB,IACpB,SAAS,EAAC,4BAA4B,EACtC,QAAQ,EAAE;oCACR,sBAAsB,EAAE,CAAC;oCACzB,gBAAgB,CAAC,KAAK,CAAC,CAAC;gCAC1B,CAAC,aAED,KAAC,SAAS,IAAC,IAAI,EAAC,UAAU,EAAC,SAAS,EAAC,iCAAiC,wBAAe,EACrF,eAAM,SAAS,EAAC,kCAAkC,4BAAmB,IAC/C,IACC,IACT,EAEpB,MAAC,WAAW,IACV,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,aAAa,EAC3B,SAAS,EAAC,4BAA4B,EACtC,KAAK,EAAE,EAAE,KAAK,EAAE,gCAAgC,EAAE,aAElD,MAAC,iBAAiB,IAAC,SAAS,EAAC,4BAA4B,aACvD,0BACE,KAAC,gBAAgB,yBAA0B,EAC3C,KAAC,sBAAsB,IAAC,SAAS,EAAC,kCAAkC,kGAE3C,IACrB,EACN,KAAC,gBAAgB,KAAG,IACF,EACpB,KAAC,oBAAoB,KAAG,EACxB,KAAC,eAAe,IAAC,SAAS,EAAC,iCAAiC,YAC1D,KAAC,WAAW,IAAC,gBAAgB,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,GAAI,GAC1D,IACN,EAEb,gBAAgB,IAAI,CACnB,KAAC,kBAAkB,IACjB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,gBAAgB,EAAE,qBAAqB,EACvC,yBAAyB,EAAE,iBAAiB,GAC5C,CACH,IACG,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidDropdownMenu,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidCardViewConfigure = ({\n solidCardViewMetaData,\n modelName,\n actionsAllowed,\n viewModes,\n setLayoutDialogVisible,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n router.push(nextQueryString ? `${newPath}?${nextQueryString}` : newPath);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"create\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"importTransaction\", \"create\")}`);\n\n const canExport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"findMany\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"exportTransaction\", \"create\")}`);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open card options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport listViewMetaData={solidCardViewMetaData} filters={filters} />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidCardViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidCardViewConfigure.js","sourceRoot":"","sources":["../../../../src/components/core/card/SolidCardViewConfigure.tsx"],"names":[],"mappings":"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","sourcesContent":["import { permissionExpression } from \"../../../helpers/permissions\";\nimport { usePathname } from \"../../../hooks/usePathname\";\nimport { useRouter } from \"../../../hooks/useRouter\";\nimport { useSearchParams } from \"../../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { SolidExport } from \"../../../components/common/SolidExport\";\nimport { SolidGenericImport } from \"../common/SolidGenericImport/SolidGenericImport\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogDescription,\n SolidDialogHeader,\n SolidDialogSeparator,\n SolidDialogTitle,\n SolidDropdownMenu,\n SolidDropdownMenuContent,\n SolidDropdownMenuItem,\n SolidDropdownMenuLabel,\n SolidDropdownMenuRadioGroup,\n SolidDropdownMenuRadioItem,\n SolidDropdownMenuSeparator,\n SolidDropdownMenuSub,\n SolidDropdownMenuSubContent,\n SolidDropdownMenuSubTrigger,\n SolidDropdownMenuTrigger,\n SolidIcon,\n} from \"../../shad-cn-ui\";\n\nconst normalizeViewModes = (viewModes: any[] = []) => {\n return viewModes\n .map((option: any) => {\n if (!option) return null;\n\n if (typeof option === \"string\") {\n return {\n type: option,\n label: option.charAt(0).toUpperCase() + option.slice(1),\n };\n }\n\n const type = option.type || option.value;\n if (!type) return null;\n\n return {\n ...option,\n type,\n label: option.label || (type.charAt(0).toUpperCase() + type.slice(1)),\n };\n })\n .filter(Boolean);\n};\n\nexport const SolidCardViewConfigure = ({\n solidCardViewMetaData,\n modelName,\n actionsAllowed,\n viewModes,\n setLayoutDialogVisible,\n setShowSaveFilterPopup,\n filters,\n handleRefreshView,\n}: any) => {\n const pathname = usePathname();\n const router = useRouter();\n const searchParams = useSearchParams();\n const [view, setView] = useState<string>(\"\");\n const [isCogMenuOpen, setIsCogMenuOpen] = useState(false);\n const [openImportDialog, setOpenImportDialog] = useState(false);\n const [exportView, setExportView] = useState(false);\n\n const visibleViewModes = normalizeViewModes(Array.isArray(viewModes) ? viewModes : []);\n const showSwitchType = visibleViewModes.length > 1;\n\n useEffect(() => {\n if (typeof pathname === \"string\") {\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n if (pathSegments.length > 0) {\n setView(pathSegments[pathSegments.length - 1]);\n }\n }\n }, [pathname]);\n\n const handleViewChange = (newViewType: string) => {\n if (view === newViewType) return;\n\n const nextView = visibleViewModes.find((option: any) => option.type === newViewType);\n const pathSegments = pathname.split(\"/\").filter(Boolean);\n pathSegments[pathSegments.length - 1] = newViewType;\n const nextSearchParams = new URLSearchParams(searchParams.toString());\n const currentQuery = {\n menuItemId: searchParams.get(\"menuItemId\"),\n menuItemName: searchParams.get(\"menuItemName\"),\n actionId: searchParams.get(\"actionId\"),\n actionName: searchParams.get(\"actionName\"),\n };\n\n const queryFields = {\n menuItemId: nextView?.menuItemId ?? currentQuery.menuItemId,\n menuItemName: nextView?.menuItemName ?? currentQuery.menuItemName,\n actionId: nextView?.actionId ?? currentQuery.actionId,\n actionName: nextView?.actionName ?? currentQuery.actionName,\n };\n\n Object.entries(queryFields).forEach(([key, value]) => {\n if (value) {\n nextSearchParams.set(key, value);\n } else {\n nextSearchParams.delete(key);\n }\n });\n\n const newPath = \"/\" + pathSegments.join(\"/\");\n const nextQueryString = nextSearchParams.toString();\n router.push(nextQueryString ? `${newPath}?${nextQueryString}` : newPath);\n };\n\n const clearLocalstorageCache = () => {\n const currentPageUrl = window.location.pathname;\n localStorage.removeItem(currentPageUrl);\n window.location.reload();\n };\n\n const canImport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"create\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"importTransaction\", \"create\")}`);\n\n const canExport =\n Boolean(modelName) &&\n actionsAllowed.includes(`${permissionExpression(modelName, \"findMany\")}`) &&\n actionsAllowed.includes(`${permissionExpression(\"exportTransaction\", \"create\")}`);\n\n const canCustomizeLayout = actionsAllowed.includes(`${permissionExpression(\"userViewMetadata\", \"create\")}`);\n const canSaveCustomFilter = actionsAllowed.includes(`${permissionExpression(\"savedFilters\", \"create\")}`);\n\n return (\n <div className=\"position-relative\">\n <SolidDropdownMenu open={isCogMenuOpen} onOpenChange={setIsCogMenuOpen}>\n <SolidDropdownMenuTrigger asChild>\n <button\n type=\"button\"\n className=\"solid-icon-button solid-header-cog-trigger\"\n aria-label=\"Open card options\"\n >\n <SolidIcon name=\"si-cog\" aria-hidden />\n </button>\n </SolidDropdownMenuTrigger>\n <SolidDropdownMenuContent className=\"listview-cogwheel-panel\">\n {canImport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setOpenImportDialog(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-download\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Import</span>\n </SolidDropdownMenuItem>\n )}\n\n {canExport && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setExportView(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-upload\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Export</span>\n </SolidDropdownMenuItem>\n )}\n\n {(canCustomizeLayout || canSaveCustomFilter) && <SolidDropdownMenuSeparator />}\n\n {canCustomizeLayout && (\n <SolidDropdownMenuSub>\n <SolidDropdownMenuSubTrigger className=\"solid-header-dropdown-item\">\n <SolidIcon name=\"si-sliders-h\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout</span>\n </SolidDropdownMenuSubTrigger>\n <SolidDropdownMenuSubContent className=\"customize-layout-panel\">\n {showSwitchType && (\n <>\n <SolidDropdownMenuLabel>Switch Type</SolidDropdownMenuLabel>\n <SolidDropdownMenuRadioGroup value={view} onValueChange={handleViewChange}>\n {visibleViewModes.map((option: any) => (\n <SolidDropdownMenuRadioItem key={option.type} value={option.type}>\n {option.label}\n </SolidDropdownMenuRadioItem>\n ))}\n </SolidDropdownMenuRadioGroup>\n <SolidDropdownMenuSeparator />\n </>\n )}\n <SolidDropdownMenuItem\n onSelect={() => {\n setLayoutDialogVisible(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-code\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Layout Editor</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuSubContent>\n </SolidDropdownMenuSub>\n )}\n\n {canSaveCustomFilter && (\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n setShowSaveFilterPopup(true);\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-save\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Save Custom Filter</span>\n </SolidDropdownMenuItem>\n )}\n\n <SolidDropdownMenuItem\n className=\"solid-header-dropdown-item\"\n onSelect={() => {\n clearLocalstorageCache();\n setIsCogMenuOpen(false);\n }}\n >\n <SolidIcon name=\"si-trash\" className=\"solid-header-action-button-icon\" aria-hidden />\n <span className=\"solid-header-action-button-label\">Clear cache</span>\n </SolidDropdownMenuItem>\n </SolidDropdownMenuContent>\n </SolidDropdownMenu>\n\n <SolidDialog\n open={exportView}\n onOpenChange={setExportView}\n className=\"solid-kanban-export-dialog\"\n style={{ width: \"min(960px, calc(100vw - 32px))\" }}\n >\n <SolidDialogHeader className=\"solid-export-dialog-header\">\n <div>\n <SolidDialogTitle>Export</SolidDialogTitle>\n <SolidDialogDescription className=\"solid-filter-dialog-subtitle m-0\">\n Choose the file format, refine the field set, and save reusable export templates.\n </SolidDialogDescription>\n </div>\n <SolidDialogClose />\n </SolidDialogHeader>\n <SolidDialogSeparator />\n <SolidDialogBody className=\"solid-kanban-export-dialog-body\">\n <SolidExport\n listViewMetaData={solidCardViewMetaData}\n filters={filters}\n onExportComplete={() => setExportView(false)}\n />\n </SolidDialogBody>\n </SolidDialog>\n\n {openImportDialog && (\n <SolidGenericImport\n openImportDialog={openImportDialog}\n setOpenImportDialog={setOpenImportDialog}\n listViewMetaData={solidCardViewMetaData}\n handleFetchUpdatedRecords={handleRefreshView}\n />\n )}\n </div>\n );\n};\n"]}
|
|
@@ -251,7 +251,11 @@ export const SolidCardViewConfigure = ({
|
|
|
251
251
|
</SolidDialogHeader>
|
|
252
252
|
<SolidDialogSeparator />
|
|
253
253
|
<SolidDialogBody className="solid-kanban-export-dialog-body">
|
|
254
|
-
<SolidExport
|
|
254
|
+
<SolidExport
|
|
255
|
+
listViewMetaData={solidCardViewMetaData}
|
|
256
|
+
filters={filters}
|
|
257
|
+
onExportComplete={() => setExportView(false)}
|
|
258
|
+
/>
|
|
255
259
|
</SolidDialogBody>
|
|
256
260
|
</SolidDialog>
|
|
257
261
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChatter.d.ts","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatter.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,YAAY;uBAA+I,GAAG;QAAM,GAAG;2BAAyB,OAAO;sCAAoC,OAAO,KAAK,IAAI;;;;
|
|
1
|
+
{"version":3,"file":"SolidChatter.d.ts","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatter.tsx"],"names":[],"mappings":"AA0BA,eAAO,MAAM,YAAY;uBAA+I,GAAG;QAAM,GAAG;2BAAyB,OAAO;sCAAoC,OAAO,KAAK,IAAI;;;;6CA+RvQ,CAAA"}
|
|
@@ -106,7 +106,7 @@ export var SolidChatter = function (_a) {
|
|
|
106
106
|
}
|
|
107
107
|
};
|
|
108
108
|
var fetchData = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
109
|
-
var queryData, queryString, response, processedMessages, error_1;
|
|
109
|
+
var queryData, startOfDay, endOfDay, queryString, response, processedMessages, error_1;
|
|
110
110
|
var _a, _b;
|
|
111
111
|
return __generator(this, function (_c) {
|
|
112
112
|
switch (_c.label) {
|
|
@@ -120,19 +120,29 @@ export var SolidChatter = function (_a) {
|
|
|
120
120
|
queryData.filters = queryData.filters || {};
|
|
121
121
|
queryData.filters['user'] = { fullName: { $containsi: filters.name } };
|
|
122
122
|
}
|
|
123
|
+
startOfDay = function (d) {
|
|
124
|
+
var x = new Date(d);
|
|
125
|
+
x.setHours(0, 0, 0, 0);
|
|
126
|
+
return x;
|
|
127
|
+
};
|
|
128
|
+
endOfDay = function (d) {
|
|
129
|
+
var x = new Date(d);
|
|
130
|
+
x.setHours(23, 59, 59, 999);
|
|
131
|
+
return x;
|
|
132
|
+
};
|
|
123
133
|
if (filters.startDate && filters.endDate) {
|
|
124
134
|
queryData.filters = queryData.filters || {};
|
|
125
135
|
queryData.filters.createdAt = {
|
|
126
|
-
$between: [filters.startDate.toISOString(), filters.endDate.toISOString()]
|
|
136
|
+
$between: [startOfDay(filters.startDate).toISOString(), endOfDay(filters.endDate).toISOString()]
|
|
127
137
|
};
|
|
128
138
|
}
|
|
129
139
|
else if (filters.startDate) {
|
|
130
140
|
queryData.filters = queryData.filters || {};
|
|
131
|
-
queryData.filters.createdAt = { $gte: filters.startDate.toISOString() };
|
|
141
|
+
queryData.filters.createdAt = { $gte: startOfDay(filters.startDate).toISOString() };
|
|
132
142
|
}
|
|
133
143
|
else if (filters.endDate) {
|
|
134
144
|
queryData.filters = queryData.filters || {};
|
|
135
|
-
queryData.filters.createdAt = { $lte: filters.endDate.toISOString() };
|
|
145
|
+
queryData.filters.createdAt = { $lte: endOfDay(filters.endDate).toISOString() };
|
|
136
146
|
}
|
|
137
147
|
queryString = qs.stringify(queryData, {
|
|
138
148
|
encodeValuesOnly: true,
|
|
@@ -145,17 +155,19 @@ export var SolidChatter = function (_a) {
|
|
|
145
155
|
case 1:
|
|
146
156
|
response = _c.sent();
|
|
147
157
|
processedMessages = response.data.records.map(function (msg) {
|
|
148
|
-
var _a, _b, _c;
|
|
158
|
+
var _a, _b, _c, _d, _e;
|
|
149
159
|
if (msg.messageType === 'custom') {
|
|
160
|
+
var displayTimeSource = msg.updatedAt || msg.createdAt;
|
|
150
161
|
// Custom message
|
|
151
162
|
return {
|
|
152
163
|
id: msg.id,
|
|
153
164
|
user: ((_a = msg.user) === null || _a === void 0 ? void 0 : _a.fullName) || "System",
|
|
165
|
+
userId: (_b = msg.user) === null || _b === void 0 ? void 0 : _b.id,
|
|
154
166
|
messageType: "custom",
|
|
155
167
|
message: msg.messageBody,
|
|
156
|
-
time: new Date(
|
|
157
|
-
createdAt:
|
|
158
|
-
date: formatDate(
|
|
168
|
+
time: new Date(displayTimeSource).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),
|
|
169
|
+
createdAt: displayTimeSource,
|
|
170
|
+
date: formatDate(displayTimeSource),
|
|
159
171
|
media: msg._media,
|
|
160
172
|
messageSubType: msg.messageSubType,
|
|
161
173
|
status: msg.status,
|
|
@@ -165,7 +177,7 @@ export var SolidChatter = function (_a) {
|
|
|
165
177
|
}
|
|
166
178
|
else {
|
|
167
179
|
// Audit message
|
|
168
|
-
var auditRecord = ((
|
|
180
|
+
var auditRecord = ((_c = msg.chatterMessageDetails) === null || _c === void 0 ? void 0 : _c.map(function (detail) { return ({
|
|
169
181
|
field: detail.fieldName,
|
|
170
182
|
fieldDisplayName: detail.fieldDisplayName,
|
|
171
183
|
fieldType: detail.fieldType,
|
|
@@ -184,7 +196,8 @@ export var SolidChatter = function (_a) {
|
|
|
184
196
|
}
|
|
185
197
|
return {
|
|
186
198
|
id: msg.id,
|
|
187
|
-
user: ((
|
|
199
|
+
user: ((_d = msg.user) === null || _d === void 0 ? void 0 : _d.fullName) || "System",
|
|
200
|
+
userId: (_e = msg.user) === null || _e === void 0 ? void 0 : _e.id,
|
|
188
201
|
messageType: "audit",
|
|
189
202
|
time: new Date(msg.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),
|
|
190
203
|
auditRecord: auditRecord,
|
|
@@ -220,16 +233,16 @@ export var SolidChatter = function (_a) {
|
|
|
220
233
|
setLimit(function (prevLimit) { return prevLimit + 25; });
|
|
221
234
|
};
|
|
222
235
|
var canViewMessages = actionsAllowed.includes("".concat(permissionExpression('chatterMessage', 'findMany')));
|
|
223
|
-
var renderLoadingState = function () { return (_jsxs("div", { className: 'flex flex-
|
|
236
|
+
var renderLoadingState = function () { return (_jsxs("div", { className: 'flex h-full flex-col items-center justify-center gap-2 text-center text-color-secondary', children: [_jsx(Loader2, { size: 20, className: 'animate-spin text-[var(--primary-color)]' }), _jsx("span", { className: 'text-sm', children: "Loading recent activity\u2026" })] })); };
|
|
224
237
|
var renderEmptyState = function () {
|
|
225
238
|
var isLogComposerOpen = visibleBox === 'log';
|
|
226
|
-
return (_jsx("div", { className: 'flex
|
|
239
|
+
return (_jsx("div", { className: 'flex h-full items-center justify-center', children: _jsxs("div", { className: 'flex flex-col items-center gap-2 px-3 text-center text-color-secondary', children: [_jsx("div", { className: 'rounded bg-[var(--primary-color-text)] p-2 text-[var(--primary-color)]', children: _jsx(Inbox, { size: 20 }) }), _jsx("p", { className: 'm-0 text-base font-medium text-color', children: "No activity yet" }), _jsx("p", { className: 'm-0 text-sm', children: "Log your first internal note or send a message to get things started." }), _jsx(SolidButton, { size: 'sm', variant: 'outline', onClick: function () { return handleTabClick('log'); }, children: isLogComposerOpen ? 'Cancel' : 'Log a note' })] }) }));
|
|
227
240
|
};
|
|
228
|
-
var permissionError = function () { return (_jsx("div", { className: 'p-3', children: _jsx(SolidMessage, { severity: 'warn', text: "You do not have permission to view these messages.", className: 'justify-
|
|
229
|
-
var renderMessages = function () { return (_jsxs("div", { className: 'flex flex-
|
|
241
|
+
var permissionError = function () { return (_jsx("div", { className: 'p-3', children: _jsx(SolidMessage, { severity: 'warn', text: "You do not have permission to view these messages.", className: 'justify-start' }) })); };
|
|
242
|
+
var renderMessages = function () { return (_jsxs("div", { className: 'flex flex-col gap-4', children: [messages.map(function (message, index) {
|
|
230
243
|
var showDateDivider = index === 0 || message.date !== messages[index - 1].date;
|
|
231
|
-
return (_jsxs("div", { children: [showDateDivider && _jsx(SolidChatterDateDivider, { date: message.date }), _jsx(SolidChatterMessageBox, { messageId: message.id, user: message.user, messageType: message.messageType, message: message.message, time: message.time, auditRecord: message.auditRecord, media: message.media, messageSubType: message.messageSubType, status: message.status, modelDisplayName: message.modelDisplayName, modelUserKey: message.modelUserKey, onRefresh: fetchData })] }, message.id));
|
|
232
|
-
}), totalRecords > messages.length && (_jsx("div", { className: 'flex justify-
|
|
244
|
+
return (_jsxs("div", { children: [showDateDivider && _jsx(SolidChatterDateDivider, { date: message.date }), _jsx(SolidChatterMessageBox, { messageId: message.id, user: message.user, userId: message.userId, messageType: message.messageType, message: message.message, time: message.time, auditRecord: message.auditRecord, media: message.media, messageSubType: message.messageSubType, status: message.status, modelDisplayName: message.modelDisplayName, modelUserKey: message.modelUserKey, onRefresh: fetchData })] }, message.id));
|
|
245
|
+
}), totalRecords > messages.length && (_jsx("div", { className: 'flex justify-center', children: _jsx(SolidButton, { type: 'button', size: 'sm', variant: 'outline', onClick: handleLoadMore, children: "Load more" }) }))] })); };
|
|
233
246
|
return (_jsxs("div", { className: 'h-full', children: [_jsx(SolidChatterHeader, { id: id, refetch: fetchData, modelSingularName: modelSingularName, activeTab: activeTab, handleTabClick: handleTabClick, visibleBox: visibleBox, onFilterChange: handleFilterChange, onComposerCancel: function () { return setVisibleBox(null); }, title: title, modelUserKey: modelUserKey }), _jsx("div", { className: 'solid-chatter-body', style: {
|
|
234
247
|
height: isMobileViewport
|
|
235
248
|
? (visibleBox === 'email-message'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChatter.js","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatter.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport React, { useState, useEffect } from 'react'\nimport { SolidChatterHeader } from './SolidChatterHeader'\nimport { SolidChatterDateDivider } from './SolidChatterDateDivider'\nimport { SolidChatterMessageBox } from './SolidChatterMessageBox'\nimport { useLazyGetchatterMessageQuery } from '../../../redux/api/solidChatterMessageApi'\nimport qs from \"qs\";\nimport { ERROR_MESSAGES } from '../../../constants/error-messages'\nimport { permissionExpression } from '../../../helpers/permissions'\nimport { SolidButton, SolidMessage } from '../../shad-cn-ui'\nimport { Inbox, Loader2 } from 'lucide-react'\n\ninterface FilterState {\n name: string;\n startDate: Date | null;\n endDate: Date | null;\n}\n\nconst isEmptyAuditValue = (value: string | null | undefined) => {\n if (value == null) return true;\n if (typeof value !== 'string') return false;\n\n const normalizedValue = value.trim().toLowerCase();\n return normalizedValue === '' || normalizedValue === 'none' || normalizedValue === 'null';\n};\n\nexport const SolidChatter = ({ modelSingularName, id, refreshChatterMessage, setRefreshChatterMessage, actionsAllowed = [], title, modelUserKey }: { modelSingularName: any, id: any, refreshChatterMessage: boolean, setRefreshChatterMessage: (value: boolean) => void, actionsAllowed?: string[], title?: string, modelUserKey?: string }) => {\n const [activeTab, setActiveTab] = useState<'email-message' | 'log' | null>('email-message');\n const [visibleBox, setVisibleBox] = useState<'email-message' | 'log' | null>(null);\n const [messages, setMessages] = useState<any[]>([]);\n const [limit, setLimit] = useState<number>(25);\n const [totalRecords, setTotalRecords] = useState<number>(0);\n const [filters, setFilters] = useState<FilterState>({\n name: '',\n startDate: null,\n endDate: null\n });\n const [isMobileViewport, setIsMobileViewport] = useState(false);\n\n const [getchatterMessage, { isLoading: isChatterLoading }] = useLazyGetchatterMessageQuery();\n\n useEffect(() => {\n const updateViewport = () => setIsMobileViewport(window.innerWidth <= 1199);\n updateViewport();\n window.addEventListener('resize', updateViewport);\n return () => window.removeEventListener('resize', updateViewport);\n }, []);\n\n useEffect(() => {\n if (refreshChatterMessage) {\n if (id !== 'new') {\n fetchData();\n setRefreshChatterMessage(false);\n }\n }\n }, [refreshChatterMessage]);\n\n useEffect(() => {\n if (id !== 'new') {\n fetchData();\n }\n }, [filters, limit]);\n\n const handleTabClick = (tab: 'email-message' | 'log') => {\n setActiveTab(tab);\n setVisibleBox(prev => (prev === tab ? null : tab));\n }\n\n const formatDate = (dateString: string) => {\n const date = new Date(dateString);\n const today = new Date();\n const yesterday = new Date(today);\n yesterday.setDate(yesterday.getDate() - 1);\n\n if (date.toDateString() === today.toDateString()) {\n return 'Today';\n } else if (date.toDateString() === yesterday.toDateString()) {\n return 'Yesterday';\n } else {\n return dateString;\n }\n };\n\n const fetchData = async () => {\n try {\n const queryData: any = {\n populate: ['user', 'chatterMessageDetails'],\n limit: limit\n };\n\n if (filters.name) {\n queryData.filters = queryData.filters || {};\n queryData.filters['user'] = { fullName: { $containsi: filters.name }};\n }\n if (filters.startDate && filters.endDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = {\n $between: [filters.startDate.toISOString(), filters.endDate.toISOString()]\n };\n } else if (filters.startDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = { $gte: filters.startDate.toISOString() };\n } else if (filters.endDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = { $lte: filters.endDate.toISOString() };\n }\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n const response = await getchatterMessage({\n entityId: id,\n entityName: modelSingularName,\n qs: queryString\n }).unwrap();\n const processedMessages = response.data.records.map((msg: any) => {\n if (msg.messageType === 'custom') {\n // Custom message\n return {\n id: msg.id,\n user: msg.user?.fullName || \"System\",\n messageType: \"custom\",\n message: msg.messageBody,\n time: new Date(msg.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),\n createdAt: msg.createdAt,\n date: formatDate(msg.createdAt),\n media: msg._media,\n messageSubType: msg.messageSubType,\n status: msg.status,\n modelDisplayName: msg.modelDisplayName,\n modelUserKey: msg.modelUserKey\n };\n } else {\n // Audit message\n const auditRecord = msg.chatterMessageDetails?.map((detail: any) => ({\n field: detail.fieldName,\n fieldDisplayName: detail.fieldDisplayName,\n fieldType: detail.fieldType,\n previous: detail.oldValue,\n current: detail.newValue,\n previousDisplay: detail.oldValueDisplay,\n currentDisplay: detail.newValueDisplay,\n })).filter((detail: any) => {\n const previousValue = detail.previousDisplay ?? detail.previous;\n const currentValue = detail.currentDisplay ?? detail.current;\n\n return !(isEmptyAuditValue(previousValue) && isEmptyAuditValue(currentValue));\n }) || [];\n\n if (auditRecord.length === 0) {\n return null;\n }\n\n return {\n id: msg.id,\n user: msg.user?.fullName || \"System\",\n messageType: \"audit\",\n time: new Date(msg.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),\n auditRecord: auditRecord,\n createdAt: msg.createdAt,\n date: formatDate(msg.createdAt),\n messageSubType: msg.messageSubType,\n modelDisplayName: msg.modelDisplayName,\n modelUserKey: msg.modelUserKey,\n message: msg.messageBody,\n };\n }\n }).filter(Boolean);\n setMessages(processedMessages);\n setTotalRecords(response?.data?.meta?.totalRecords || 0);\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_MESSAGE, error);\n }\n }\n\n const handleFilterChange = (newFilters: FilterState) => {\n setFilters({\n name: newFilters.name,\n startDate: newFilters.startDate,\n endDate: newFilters.endDate\n });\n setLimit(25);\n };\n\n const handleLoadMore = () => {\n setLimit(prevLimit => prevLimit + 25);\n };\n\n const canViewMessages = actionsAllowed.includes(`${permissionExpression('chatterMessage', 'findMany')}`);\n\n const renderLoadingState = () => (\n <div className='flex flex-column align-items-center justify-content-center gap-2 h-full text-center text-color-secondary'>\n <Loader2 size={20} className='text-primary animate-spin' />\n <span className='text-sm'>Loading recent activity…</span>\n </div>\n );\n\n const renderEmptyState = () => {\n const isLogComposerOpen = visibleBox === 'log';\n return (\n <div className='flex align-items-center justify-content-center h-full'>\n <div className='flex flex-column align-items-center gap-2 text-center text-color-secondary px-3'>\n <div className='p-2 border-round bg-primary-reverse text-primary'>\n <Inbox size={20} />\n </div>\n <p className='m-0 text-base font-medium text-color'>No activity yet</p>\n <p className='m-0 text-sm'>Log your first internal note or send a message to get things started.</p>\n <SolidButton size='sm' variant='outline' onClick={() => handleTabClick('log')}>\n {isLogComposerOpen ? 'Cancel' : 'Log a note'}\n </SolidButton>\n </div>\n </div>\n );\n };\n\n const permissionError = () => (\n <div className='p-3'>\n <SolidMessage severity='warn' text=\"You do not have permission to view these messages.\" className='justify-content-start' />\n </div>\n );\n\n const renderMessages = () => (\n <div className='flex flex-column gap-3'>\n {messages.map((message, index) => {\n const showDateDivider = index === 0 || message.date !== messages[index - 1].date;\n return (\n <div key={message.id}>\n {showDateDivider && <SolidChatterDateDivider date={message.date} />}\n <SolidChatterMessageBox\n messageId={message.id}\n user={message.user}\n messageType={message.messageType}\n message={message.message}\n time={message.time}\n auditRecord={message.auditRecord}\n media={message.media}\n messageSubType={message.messageSubType}\n status={message.status}\n modelDisplayName={message.modelDisplayName}\n modelUserKey={message.modelUserKey}\n onRefresh={fetchData}\n />\n </div>\n );\n })}\n {totalRecords > messages.length && (\n <div className='flex justify-content-center'>\n <SolidButton\n type='button'\n size='sm'\n variant='outline'\n onClick={handleLoadMore}\n >\n Load more\n </SolidButton>\n </div>\n )}\n </div>\n );\n\n return (\n <div className='h-full'>\n <SolidChatterHeader\n id={id}\n refetch={fetchData}\n modelSingularName={modelSingularName}\n activeTab={activeTab}\n handleTabClick={handleTabClick}\n visibleBox={visibleBox}\n onFilterChange={handleFilterChange}\n onComposerCancel={() => setVisibleBox(null)}\n title={title}\n modelUserKey={modelUserKey}\n />\n <div className='solid-chatter-body' style={{\n height:\n isMobileViewport\n ? (visibleBox === 'email-message'\n ? 'calc(100dvh - 248px)'\n : visibleBox === 'log'\n ? 'calc(100dvh - 210px)'\n : 'calc(100dvh - 60px)')\n : (visibleBox === 'email-message'\n ? 'calc(100vh - 196px)'\n : visibleBox === 'log'\n ? 'calc(100vh - 292px)'\n : 'calc(100vh - 127px)'),\n }}>\n {isChatterLoading\n ? renderLoadingState()\n : !canViewMessages\n ? permissionError()\n : messages.length === 0\n ? renderEmptyState()\n : renderMessages()\n }\n </div>\n </div>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SolidChatter.js","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatter.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport React, { useState, useEffect } from 'react'\nimport { SolidChatterHeader } from './SolidChatterHeader'\nimport { SolidChatterDateDivider } from './SolidChatterDateDivider'\nimport { SolidChatterMessageBox } from './SolidChatterMessageBox'\nimport { useLazyGetchatterMessageQuery } from '../../../redux/api/solidChatterMessageApi'\nimport qs from \"qs\";\nimport { ERROR_MESSAGES } from '../../../constants/error-messages'\nimport { permissionExpression } from '../../../helpers/permissions'\nimport { SolidButton, SolidMessage } from '../../shad-cn-ui'\nimport { Inbox, Loader2 } from 'lucide-react'\n\ninterface FilterState {\n name: string;\n startDate: Date | null;\n endDate: Date | null;\n}\n\nconst isEmptyAuditValue = (value: string | null | undefined) => {\n if (value == null) return true;\n if (typeof value !== 'string') return false;\n\n const normalizedValue = value.trim().toLowerCase();\n return normalizedValue === '' || normalizedValue === 'none' || normalizedValue === 'null';\n};\n\nexport const SolidChatter = ({ modelSingularName, id, refreshChatterMessage, setRefreshChatterMessage, actionsAllowed = [], title, modelUserKey }: { modelSingularName: any, id: any, refreshChatterMessage: boolean, setRefreshChatterMessage: (value: boolean) => void, actionsAllowed?: string[], title?: string, modelUserKey?: string }) => {\n const [activeTab, setActiveTab] = useState<'email-message' | 'log' | null>('email-message');\n const [visibleBox, setVisibleBox] = useState<'email-message' | 'log' | null>(null);\n const [messages, setMessages] = useState<any[]>([]);\n const [limit, setLimit] = useState<number>(25);\n const [totalRecords, setTotalRecords] = useState<number>(0);\n const [filters, setFilters] = useState<FilterState>({\n name: '',\n startDate: null,\n endDate: null\n });\n const [isMobileViewport, setIsMobileViewport] = useState(false);\n\n const [getchatterMessage, { isLoading: isChatterLoading }] = useLazyGetchatterMessageQuery();\n\n useEffect(() => {\n const updateViewport = () => setIsMobileViewport(window.innerWidth <= 1199);\n updateViewport();\n window.addEventListener('resize', updateViewport);\n return () => window.removeEventListener('resize', updateViewport);\n }, []);\n\n useEffect(() => {\n if (refreshChatterMessage) {\n if (id !== 'new') {\n fetchData();\n setRefreshChatterMessage(false);\n }\n }\n }, [refreshChatterMessage]);\n\n useEffect(() => {\n if (id !== 'new') {\n fetchData();\n }\n }, [filters, limit]);\n\n const handleTabClick = (tab: 'email-message' | 'log') => {\n setActiveTab(tab);\n setVisibleBox(prev => (prev === tab ? null : tab));\n }\n\n const formatDate = (dateString: string) => {\n const date = new Date(dateString);\n const today = new Date();\n const yesterday = new Date(today);\n yesterday.setDate(yesterday.getDate() - 1);\n\n if (date.toDateString() === today.toDateString()) {\n return 'Today';\n } else if (date.toDateString() === yesterday.toDateString()) {\n return 'Yesterday';\n } else {\n return dateString;\n }\n };\n\n const fetchData = async () => {\n try {\n const queryData: any = {\n populate: ['user', 'chatterMessageDetails'],\n limit: limit\n };\n\n if (filters.name) {\n queryData.filters = queryData.filters || {};\n queryData.filters['user'] = { fullName: { $containsi: filters.name }};\n }\n const startOfDay = (d: Date) => {\n const x = new Date(d);\n x.setHours(0, 0, 0, 0);\n return x;\n };\n const endOfDay = (d: Date) => {\n const x = new Date(d);\n x.setHours(23, 59, 59, 999);\n return x;\n };\n if (filters.startDate && filters.endDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = {\n $between: [startOfDay(filters.startDate).toISOString(), endOfDay(filters.endDate).toISOString()]\n };\n } else if (filters.startDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = { $gte: startOfDay(filters.startDate).toISOString() };\n } else if (filters.endDate) {\n queryData.filters = queryData.filters || {};\n queryData.filters.createdAt = { $lte: endOfDay(filters.endDate).toISOString() };\n }\n\n const queryString = qs.stringify(queryData, {\n encodeValuesOnly: true,\n });\n const response = await getchatterMessage({\n entityId: id,\n entityName: modelSingularName,\n qs: queryString\n }).unwrap();\n const processedMessages = response.data.records.map((msg: any) => {\n if (msg.messageType === 'custom') {\n const displayTimeSource = msg.updatedAt || msg.createdAt;\n // Custom message\n return {\n id: msg.id,\n user: msg.user?.fullName || \"System\",\n userId: msg.user?.id,\n messageType: \"custom\",\n message: msg.messageBody,\n time: new Date(displayTimeSource).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),\n createdAt: displayTimeSource,\n date: formatDate(displayTimeSource),\n media: msg._media,\n messageSubType: msg.messageSubType,\n status: msg.status,\n modelDisplayName: msg.modelDisplayName,\n modelUserKey: msg.modelUserKey\n };\n } else {\n // Audit message\n const auditRecord = msg.chatterMessageDetails?.map((detail: any) => ({\n field: detail.fieldName,\n fieldDisplayName: detail.fieldDisplayName,\n fieldType: detail.fieldType,\n previous: detail.oldValue,\n current: detail.newValue,\n previousDisplay: detail.oldValueDisplay,\n currentDisplay: detail.newValueDisplay,\n })).filter((detail: any) => {\n const previousValue = detail.previousDisplay ?? detail.previous;\n const currentValue = detail.currentDisplay ?? detail.current;\n\n return !(isEmptyAuditValue(previousValue) && isEmptyAuditValue(currentValue));\n }) || [];\n\n if (auditRecord.length === 0) {\n return null;\n }\n\n return {\n id: msg.id,\n user: msg.user?.fullName || \"System\",\n userId: msg.user?.id,\n messageType: \"audit\",\n time: new Date(msg.createdAt).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }),\n auditRecord: auditRecord,\n createdAt: msg.createdAt,\n date: formatDate(msg.createdAt),\n messageSubType: msg.messageSubType,\n modelDisplayName: msg.modelDisplayName,\n modelUserKey: msg.modelUserKey,\n message: msg.messageBody,\n };\n }\n }).filter(Boolean);\n setMessages(processedMessages);\n setTotalRecords(response?.data?.meta?.totalRecords || 0);\n } catch (error) {\n console.error(ERROR_MESSAGES.FETCHING_MESSAGE, error);\n }\n }\n\n const handleFilterChange = (newFilters: FilterState) => {\n setFilters({\n name: newFilters.name,\n startDate: newFilters.startDate,\n endDate: newFilters.endDate\n });\n setLimit(25);\n };\n\n const handleLoadMore = () => {\n setLimit(prevLimit => prevLimit + 25);\n };\n\n const canViewMessages = actionsAllowed.includes(`${permissionExpression('chatterMessage', 'findMany')}`);\n\n const renderLoadingState = () => (\n <div className='flex h-full flex-col items-center justify-center gap-2 text-center text-color-secondary'>\n <Loader2 size={20} className='animate-spin text-[var(--primary-color)]' />\n <span className='text-sm'>Loading recent activity…</span>\n </div>\n );\n\n const renderEmptyState = () => {\n const isLogComposerOpen = visibleBox === 'log';\n return (\n <div className='flex h-full items-center justify-center'>\n <div className='flex flex-col items-center gap-2 px-3 text-center text-color-secondary'>\n <div className='rounded bg-[var(--primary-color-text)] p-2 text-[var(--primary-color)]'>\n <Inbox size={20} />\n </div>\n <p className='m-0 text-base font-medium text-color'>No activity yet</p>\n <p className='m-0 text-sm'>Log your first internal note or send a message to get things started.</p>\n <SolidButton size='sm' variant='outline' onClick={() => handleTabClick('log')}>\n {isLogComposerOpen ? 'Cancel' : 'Log a note'}\n </SolidButton>\n </div>\n </div>\n );\n };\n\n const permissionError = () => (\n <div className='p-3'>\n <SolidMessage severity='warn' text=\"You do not have permission to view these messages.\" className='justify-start' />\n </div>\n );\n\n const renderMessages = () => (\n <div className='flex flex-col gap-4'>\n {messages.map((message, index) => {\n const showDateDivider = index === 0 || message.date !== messages[index - 1].date;\n return (\n <div key={message.id}>\n {showDateDivider && <SolidChatterDateDivider date={message.date} />}\n <SolidChatterMessageBox\n messageId={message.id}\n user={message.user}\n userId={message.userId}\n messageType={message.messageType}\n message={message.message}\n time={message.time}\n auditRecord={message.auditRecord}\n media={message.media}\n messageSubType={message.messageSubType}\n status={message.status}\n modelDisplayName={message.modelDisplayName}\n modelUserKey={message.modelUserKey}\n onRefresh={fetchData}\n />\n </div>\n );\n })}\n {totalRecords > messages.length && (\n <div className='flex justify-center'>\n <SolidButton\n type='button'\n size='sm'\n variant='outline'\n onClick={handleLoadMore}\n >\n Load more\n </SolidButton>\n </div>\n )}\n </div>\n );\n\n return (\n <div className='h-full'>\n <SolidChatterHeader\n id={id}\n refetch={fetchData}\n modelSingularName={modelSingularName}\n activeTab={activeTab}\n handleTabClick={handleTabClick}\n visibleBox={visibleBox}\n onFilterChange={handleFilterChange}\n onComposerCancel={() => setVisibleBox(null)}\n title={title}\n modelUserKey={modelUserKey}\n />\n <div className='solid-chatter-body' style={{\n height:\n isMobileViewport\n ? (visibleBox === 'email-message'\n ? 'calc(100dvh - 248px)'\n : visibleBox === 'log'\n ? 'calc(100dvh - 210px)'\n : 'calc(100dvh - 60px)')\n : (visibleBox === 'email-message'\n ? 'calc(100vh - 196px)'\n : visibleBox === 'log'\n ? 'calc(100vh - 292px)'\n : 'calc(100vh - 127px)'),\n }}>\n {isChatterLoading\n ? renderLoadingState()\n : !canViewMessages\n ? permissionError()\n : messages.length === 0\n ? renderEmptyState()\n : renderMessages()\n }\n </div>\n </div>\n )\n}\n"]}
|