@solidxai/core-ui 0.1.8-beta.0 → 0.1.8-beta.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/dist/components/Svg/FileSvg.js +1 -1
- package/dist/components/Svg/FileSvg.js.map +1 -1
- package/dist/components/Svg/FileSvg.tsx +1 -1
- package/dist/components/auth/AuthLayout.d.ts.map +1 -1
- package/dist/components/auth/AuthLayout.js +94 -38
- package/dist/components/auth/AuthLayout.js.map +1 -1
- package/dist/components/auth/AuthLayout.tsx +49 -39
- package/dist/components/auth/AuthSettingsContext.d.ts +10 -0
- package/dist/components/auth/AuthSettingsContext.d.ts.map +1 -0
- package/dist/components/auth/AuthSettingsContext.js +49 -0
- package/dist/components/auth/AuthSettingsContext.js.map +1 -0
- package/dist/components/auth/AuthSettingsContext.tsx +19 -0
- package/dist/components/auth/AuthTabs.d.ts.map +1 -1
- package/dist/components/auth/AuthTabs.js +9 -9
- package/dist/components/auth/AuthTabs.js.map +1 -1
- package/dist/components/auth/AuthTabs.tsx +14 -15
- package/dist/components/auth/ForgotPasswordThankYou.d.ts.map +1 -1
- package/dist/components/auth/ForgotPasswordThankYou.js +2 -6
- package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
- package/dist/components/auth/ForgotPasswordThankYou.tsx +2 -7
- package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
- package/dist/components/auth/SolidForgotPassword.js +3 -7
- package/dist/components/auth/SolidForgotPassword.js.map +1 -1
- package/dist/components/auth/SolidForgotPassword.tsx +3 -7
- package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.js +4 -7
- package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.tsx +2 -5
- package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.js +4 -7
- package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.tsx +2 -5
- package/dist/components/auth/SolidLogin.d.ts.map +1 -1
- package/dist/components/auth/SolidLogin.js +5 -8
- package/dist/components/auth/SolidLogin.js.map +1 -1
- package/dist/components/auth/SolidLogin.tsx +5 -6
- package/dist/components/auth/SolidRegister.d.ts.map +1 -1
- package/dist/components/auth/SolidRegister.js +9 -12
- package/dist/components/auth/SolidRegister.js.map +1 -1
- package/dist/components/auth/SolidRegister.tsx +21 -11
- package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
- package/dist/components/auth/SolidResetPassword.js +2 -6
- package/dist/components/auth/SolidResetPassword.js.map +1 -1
- package/dist/components/auth/SolidResetPassword.tsx +2 -6
- package/dist/components/common/AuthBanner.js.map +1 -1
- package/dist/components/common/GeneralSettings.d.ts.map +1 -1
- package/dist/components/common/GeneralSettings.js +48 -51
- package/dist/components/common/GeneralSettings.js.map +1 -1
- package/dist/components/common/GeneralSettings.tsx +8 -25
- package/dist/components/common/SolidAdmin.js +1 -1
- package/dist/components/common/SolidAdmin.js.map +1 -1
- package/dist/components/common/SolidAdmin.tsx +1 -1
- package/dist/components/common/SolidFormStepper.js +1 -1
- package/dist/components/common/SolidFormStepper.js.map +1 -1
- package/dist/components/common/SolidFormStepper.tsx +1 -1
- package/dist/components/common/SolidThemeProvider.d.ts.map +1 -1
- package/dist/components/common/SolidThemeProvider.js +5 -21
- package/dist/components/common/SolidThemeProvider.js.map +1 -1
- package/dist/components/common/SolidThemeProvider.tsx +6 -24
- package/dist/components/common/solidModuleHome.module.css +1 -2
- 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 +1 -1
- package/dist/components/core/chatter/chatter.module.css +7 -7
- package/dist/components/core/common/PDFViewer.js +1 -1
- package/dist/components/core/common/PDFViewer.js.map +1 -1
- package/dist/components/core/common/PDFViewer.tsx +2 -2
- package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +3 -4
- package/dist/components/core/common/SolidGlobalSearchElement.js +3 -3
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +3 -3
- package/dist/components/core/common/dndCompat.d.ts +8 -0
- package/dist/components/core/common/dndCompat.d.ts.map +1 -0
- package/dist/components/core/common/dndCompat.js +5 -0
- package/dist/components/core/common/dndCompat.js.map +1 -0
- package/dist/components/core/common/dndCompat.ts +9 -0
- package/dist/components/core/dashboard/SolidDashboardFilterRequired.js +2 -2
- package/dist/components/core/dashboard/SolidDashboardFilterRequired.js.map +1 -1
- package/dist/components/core/dashboard/SolidDashboardFilterRequired.tsx +2 -2
- package/dist/components/core/dashboard/SolidDashboardNotAvailable.js +2 -2
- package/dist/components/core/dashboard/SolidDashboardNotAvailable.js.map +1 -1
- package/dist/components/core/dashboard/SolidDashboardNotAvailable.tsx +2 -2
- package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.js +1 -1
- package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +1 -1
- package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.js +1 -1
- package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.js +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.tsx +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.js +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.js.map +1 -1
- package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.tsx +1 -1
- package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormActionHeader.js +4 -0
- package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
- package/dist/components/core/form/SolidFormActionHeader.tsx +12 -0
- package/dist/components/core/form/SolidFormView.js +42 -41
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +16 -16
- package/dist/components/core/form/fields/SolidDateTimeField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidDateTimeField.js +8 -2
- package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidDateTimeField.tsx +8 -2
- package/dist/components/core/form/fields/SolidEmailField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidEmailField.js +5 -4
- package/dist/components/core/form/fields/SolidEmailField.js.map +1 -1
- package/dist/components/core/form/fields/SolidEmailField.tsx +17 -15
- package/dist/components/core/form/fields/SolidIntegerField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.js +5 -4
- package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
- package/dist/components/core/form/fields/SolidIntegerField.tsx +3 -1
- package/dist/components/core/form/fields/SolidShortTextField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.js +8 -6
- package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
- package/dist/components/core/form/fields/SolidShortTextField.tsx +7 -1
- package/dist/components/core/form/fields/SolidTimeField.js +1 -1
- package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
- package/dist/components/core/form/fields/SolidTimeField.tsx +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +3 -3
- 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 +0 -5
- package/dist/components/core/form/fields/solidFields.module.css +0 -3
- package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.d.ts +1 -1
- package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.js +1 -1
- package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.js.map +1 -1
- package/dist/components/core/form/fields/widgets/SolidS3FileViewerWidget.tsx +1 -1
- package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanCard.js +2 -2
- package/dist/components/core/kanban/KanbanCard.js.map +1 -1
- package/dist/components/core/kanban/KanbanCard.tsx +4 -3
- package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanColumn.js +3 -3
- 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 +42 -45
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +17 -26
- 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 +1 -2
- 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 +21 -10
- 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 +18 -10
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +3 -6
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
- package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +30 -24
- 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/SolidColumnSelector/SolidListColumnSelector.d.ts.map +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +4 -3
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +13 -12
- package/dist/components/core/list/SolidDataTablePagination.d.ts +15 -0
- package/dist/components/core/list/SolidDataTablePagination.d.ts.map +1 -0
- package/dist/components/core/list/SolidDataTablePagination.js +22 -0
- package/dist/components/core/list/SolidDataTablePagination.js.map +1 -0
- package/dist/components/core/list/SolidDataTablePagination.tsx +71 -0
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +1 -1
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
- package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +6 -4
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +5 -12
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +29 -49
- package/dist/components/core/list/SolidListViewRowActionsMenu.js +2 -2
- package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
- package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +2 -2
- 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 +6 -7
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -1
- package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +9 -10
- package/dist/components/core/module/CreateModule.js +1 -1
- package/dist/components/core/module/CreateModule.js.map +1 -1
- package/dist/components/core/module/CreateModule.tsx +1 -1
- package/dist/components/core/solid-ai/SolidAiChat.module.css +3 -3
- package/dist/components/core/tree/SolidTreeView.js +1 -1
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +1 -1
- package/dist/components/core/users/ApiKeysTab/ApiKeysTab.css +283 -9
- package/dist/components/core/users/ApiKeysTab/ApiKeysTab.d.ts.map +1 -1
- package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js +35 -28
- package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js.map +1 -1
- package/dist/components/core/users/ApiKeysTab/ApiKeysTab.tsx +64 -62
- package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts +2 -1
- package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts.map +1 -1
- package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js +4 -4
- package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js.map +1 -1
- package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.tsx +17 -10
- package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.d.ts.map +1 -1
- package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.js +2 -19
- package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.js.map +1 -1
- package/dist/components/core/users/ApiKeysTab/RevealApiKeyModal.tsx +24 -43
- package/dist/components/core/users/CreateUser.css +114 -0
- package/dist/components/core/users/CreateUser.d.ts +1 -0
- package/dist/components/core/users/CreateUser.d.ts.map +1 -1
- package/dist/components/core/users/CreateUser.js +4 -3
- package/dist/components/core/users/CreateUser.js.map +1 -1
- package/dist/components/core/users/CreateUser.tsx +32 -26
- package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
- package/dist/components/layout/AdminTopHeader.js +25 -1
- package/dist/components/layout/AdminTopHeader.js.map +1 -1
- package/dist/components/layout/AdminTopHeader.tsx +38 -1
- package/dist/components/layout/context/layoutcontext.js +2 -2
- package/dist/components/layout/context/layoutcontext.js.map +1 -1
- package/dist/components/layout/context/layoutcontext.tsx +2 -2
- package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.js +9 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +10 -1
- package/dist/components/shad-cn-ui/SolidConfirmDialog.d.ts +6 -1
- package/dist/components/shad-cn-ui/SolidConfirmDialog.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidConfirmDialog.js +3 -3
- package/dist/components/shad-cn-ui/SolidConfirmDialog.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidConfirmDialog.tsx +15 -3
- package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidDatePicker.js +12 -2
- package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidDatePicker.tsx +13 -2
- package/dist/components/shad-cn-ui/SolidTabs.d.ts.map +1 -1
- package/dist/components/shad-cn-ui/SolidTabs.js +5 -2
- package/dist/components/shad-cn-ui/SolidTabs.js.map +1 -1
- package/dist/components/shad-cn-ui/SolidTabs.tsx +51 -25
- package/dist/components/solid-ui/SolidButton.d.ts +14 -0
- package/dist/components/solid-ui/SolidButton.d.ts.map +1 -0
- package/dist/components/solid-ui/SolidButton.js +36 -0
- package/dist/components/solid-ui/SolidButton.js.map +1 -0
- package/dist/components/solid-ui/SolidButton.tsx +54 -0
- package/dist/components/solid-ui/SolidTabs.d.ts +18 -0
- package/dist/components/solid-ui/SolidTabs.d.ts.map +1 -0
- package/dist/components/solid-ui/SolidTabs.js +22 -0
- package/dist/components/solid-ui/SolidTabs.js.map +1 -0
- package/dist/components/solid-ui/SolidTabs.tsx +73 -0
- package/dist/components/solid-ui/index.d.ts +3 -0
- package/dist/components/solid-ui/index.d.ts.map +1 -0
- package/dist/components/solid-ui/index.js +3 -0
- package/dist/components/solid-ui/index.js.map +1 -0
- package/dist/components/solid-ui/index.ts +2 -0
- package/dist/helpers/downloadMediaFile.d.ts +1 -1
- package/dist/helpers/downloadMediaFile.d.ts.map +1 -1
- package/dist/helpers/downloadMediaFile.js +8 -66
- package/dist/helpers/downloadMediaFile.js.map +1 -1
- package/dist/helpers/downloadMediaFile.tsx +8 -18
- package/dist/resources/globals.css +104 -84
- package/dist/resources/images/Background.svg +5 -1
- package/dist/resources/images/Navigation/SolidSettinsIcon.svg +7 -1
- package/dist/resources/images/errors/error.svg +14 -10
- package/dist/resources/shadcn-base.css +120 -354
- package/dist/resources/themes/solid-dark-purple/theme.css +26 -36
- package/dist/resources/themes/solid-light-purple/theme.css +129 -129
- package/dist/routes/SolidLayoutRegistry.d.ts.map +1 -1
- package/dist/routes/SolidLayoutRegistry.js +3 -1
- package/dist/routes/SolidLayoutRegistry.js.map +1 -1
- package/dist/routes/SolidLayoutRegistry.tsx +3 -1
- package/dist/routes/guards/AuthGuard.d.ts.map +1 -1
- package/dist/routes/guards/AuthGuard.js +4 -1
- package/dist/routes/guards/AuthGuard.js.map +1 -1
- package/dist/routes/guards/AuthGuard.tsx +6 -1
- package/package.json +1 -1
- package/dist/components/auth/SolidOTPVerify.d.ts +0 -3
- package/dist/components/auth/SolidOTPVerify.d.ts.map +0 -1
- package/dist/components/auth/SolidOTPVerify.js +0 -67
- package/dist/components/auth/SolidOTPVerify.js.map +0 -1
- package/dist/components/auth/SolidOTPVerify.tsx +0 -133
- package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +0 -2
- package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +0 -1
- package/dist/components/core/common/LoadDynamicJsxComponent.js +0 -50
- package/dist/components/core/common/LoadDynamicJsxComponent.js.map +0 -1
- package/dist/components/core/common/LoadDynamicJsxComponent.tsx +0 -70
- package/dist/nextAuth/authProviders.d.ts +0 -4
- package/dist/nextAuth/authProviders.d.ts.map +0 -1
- package/dist/nextAuth/authProviders.js +0 -198
- package/dist/nextAuth/authProviders.js.map +0 -1
- package/dist/nextAuth/authProviders.tsx +0 -232
- package/dist/nextAuth/handleLogout.d.ts +0 -2
- package/dist/nextAuth/handleLogout.d.ts.map +0 -1
- package/dist/nextAuth/handleLogout.js +0 -36
- package/dist/nextAuth/handleLogout.js.map +0 -1
- package/dist/nextAuth/handleLogout.tsx +0 -39
- package/dist/nextAuth/refreshAccessToken.d.ts +0 -2
- package/dist/nextAuth/refreshAccessToken.d.ts.map +0 -1
- package/dist/nextAuth/refreshAccessToken.js +0 -24
- package/dist/nextAuth/refreshAccessToken.js.map +0 -1
- package/dist/nextAuth/refreshAccessToken.tsx +0 -28
- package/dist/redux/features/settingsSlice.d.ts +0 -20
- package/dist/redux/features/settingsSlice.d.ts.map +0 -1
- package/dist/redux/features/settingsSlice.js +0 -39
- package/dist/redux/features/settingsSlice.js.map +0 -1
- package/dist/redux/features/settingsSlice.ts +0 -60
|
@@ -196,7 +196,7 @@ var SolidShortTextField = /** @class */ (function () {
|
|
|
196
196
|
}());
|
|
197
197
|
export { SolidShortTextField };
|
|
198
198
|
export var DefaultShortTextFormEditWidget = function (_a) {
|
|
199
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
199
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
200
200
|
var formik = _a.formik, fieldContext = _a.fieldContext;
|
|
201
201
|
var fieldMetadata = fieldContext.fieldMetadata;
|
|
202
202
|
var fieldLayoutInfo = fieldContext.field;
|
|
@@ -211,8 +211,9 @@ export var DefaultShortTextFormEditWidget = function (_a) {
|
|
|
211
211
|
var fieldReadonly = (_f = fieldLayoutInfo.attrs) === null || _f === void 0 ? void 0 : _f.readonly;
|
|
212
212
|
var formDisabled = (_j = (_h = (_g = solidFormViewMetaData.data.solidView) === null || _g === void 0 ? void 0 : _g.layout) === null || _h === void 0 ? void 0 : _h.attrs) === null || _j === void 0 ? void 0 : _j.disabled;
|
|
213
213
|
var formReadonly = (_m = (_l = (_k = solidFormViewMetaData.data.solidView) === null || _k === void 0 ? void 0 : _k.layout) === null || _l === void 0 ? void 0 : _l.attrs) === null || _m === void 0 ? void 0 : _m.readonly;
|
|
214
|
+
var autoComplete = ((_o = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _o === void 0 ? void 0 : _o.autoComplete) || 'on';
|
|
214
215
|
return (_jsxs("div", { className: styles.fieldWrapper, children: [showFieldLabel != false &&
|
|
215
|
-
_jsxs("label", { htmlFor: fieldLayoutInfo.attrs.name, className: "".concat(styles.fieldLabel, " form-field-label"), children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: "*" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] }), _jsx(SolidInput, { type: "text", readOnly: formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey, disabled: formDisabled || fieldDisabled || isPrimaryKey, id: fieldLayoutInfo.attrs.name, name: fieldMetadata.name, "aria-describedby": "".concat(fieldLayoutInfo.attrs.name, "-help"), onChange: function (e) { return fieldContext.onChange(e, 'onFieldChange'); }, onBlur: function (e) { return fieldContext.onBlur(e, 'onFieldBlur'); }, value: formik.values[fieldLayoutInfo.attrs.name] || '', className: styles.fieldInput }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("p", { className: styles.fieldError, children: (
|
|
216
|
+
_jsxs("label", { htmlFor: fieldLayoutInfo.attrs.name, className: "".concat(styles.fieldLabel, " form-field-label"), children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: "*" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] }), _jsx(SolidInput, { type: "text", readOnly: formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey, disabled: formDisabled || fieldDisabled || isPrimaryKey, id: fieldLayoutInfo.attrs.name, name: fieldMetadata.name, "aria-describedby": "".concat(fieldLayoutInfo.attrs.name, "-help"), onChange: function (e) { return fieldContext.onChange(e, 'onFieldChange'); }, onBlur: function (e) { return fieldContext.onBlur(e, 'onFieldBlur'); }, value: formik.values[fieldLayoutInfo.attrs.name] || '', className: styles.fieldInput, autoComplete: autoComplete }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("p", { className: styles.fieldError, children: (_p = formik === null || formik === void 0 ? void 0 : formik.errors[fieldLayoutInfo.attrs.name]) === null || _p === void 0 ? void 0 : _p.toString() }))] }));
|
|
216
217
|
};
|
|
217
218
|
export var DefaultShortTextFormViewWidget = function (_a) {
|
|
218
219
|
var _b, _c;
|
|
@@ -246,7 +247,7 @@ export var MaskedShortTextFormViewWidget = function (_a) {
|
|
|
246
247
|
};
|
|
247
248
|
// Masked ShortText - EDIT
|
|
248
249
|
export var MaskedShortTextFormEditWidget = function (_a) {
|
|
249
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
250
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
250
251
|
var formik = _a.formik, fieldContext = _a.fieldContext;
|
|
251
252
|
var fieldMetadata = fieldContext.fieldMetadata;
|
|
252
253
|
var fieldLayoutInfo = fieldContext.field;
|
|
@@ -260,8 +261,9 @@ export var MaskedShortTextFormEditWidget = function (_a) {
|
|
|
260
261
|
};
|
|
261
262
|
var fieldDisabled = (_d = fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.disabled;
|
|
262
263
|
var fieldReadonly = (_e = fieldLayoutInfo.attrs) === null || _e === void 0 ? void 0 : _e.readonly;
|
|
263
|
-
var
|
|
264
|
-
var
|
|
265
|
-
|
|
264
|
+
var autoComplete = ((_f = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _f === void 0 ? void 0 : _f.autoComplete) || 'on';
|
|
265
|
+
var formDisabled = (_j = (_h = (_g = solidFormViewMetaData.data.solidView) === null || _g === void 0 ? void 0 : _g.layout) === null || _h === void 0 ? void 0 : _h.attrs) === null || _j === void 0 ? void 0 : _j.disabled;
|
|
266
|
+
var formReadonly = (_m = (_l = (_k = solidFormViewMetaData.data.solidView) === null || _k === void 0 ? void 0 : _k.layout) === null || _l === void 0 ? void 0 : _l.attrs) === null || _m === void 0 ? void 0 : _m.readonly;
|
|
267
|
+
return (_jsxs("div", { className: styles.fieldWrapper, children: [showFieldLabel !== false && (_jsxs("label", { htmlFor: fieldLayoutInfo.attrs.name, className: styles.fieldLabel, children: [fieldLabel, fieldMetadata.required && _jsx("span", { className: "text-red-500", children: "*" }), _jsx(SolidFieldTooltip, { fieldContext: fieldContext })] })), _jsx(SolidPasswordInput, { toggle: true, readOnly: formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey, disabled: formDisabled || fieldDisabled || isPrimaryKey, id: fieldLayoutInfo.attrs.name, name: fieldMetadata.name, "aria-describedby": "".concat(fieldLayoutInfo.attrs.name, "-help"), onChange: function (e) { return fieldContext.onChange(e, 'onFieldChange'); }, onBlur: function (e) { return fieldContext.onBlur(e, 'onFieldBlur'); }, value: formik.values[fieldLayoutInfo.attrs.name] || '', className: "w-full", autoComplete: autoComplete }), isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (_jsx("p", { className: styles.fieldError, children: (_o = formik === null || formik === void 0 ? void 0 : formik.errors[fieldLayoutInfo.attrs.name]) === null || _o === void 0 ? void 0 : _o.toString() }))] }));
|
|
266
268
|
};
|
|
267
269
|
//# sourceMappingURL=SolidShortTextField.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidShortTextField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidShortTextField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport * as Yup from 'yup';\nimport styles from './solidFields.module.css';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidListFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { useState } from \"react\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidInput, SolidPasswordInput } from \"../../../shad-cn-ui\";\n\nexport class SolidShortTextField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n if (value?.solidManyToOneValue) {\n formData.append(fieldLayoutInfo?.attrs?.name, value.solidManyToOneValue);\n }\n } else {\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo?.attrs?.name, value);\n }\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const fieldLayoutInfo = this.fieldContext.field;\n\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n\n if (this.fieldContext.parentData && this.fieldContext.parentData[fieldName]) {\n const parentDataForKey = this.fieldContext.parentData[fieldName];\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n if (parentDataForKey) {\n return { solidManyToOneLabel: this.fieldContext.parentData[fieldName], solidManyToOneValue: this.fieldContext.parentData[fieldName] };\n }\n } else {\n if (parentDataForKey && typeof parentDataForKey !== 'object') {\n return this.fieldContext.parentData[fieldName]\n }\n }\n }\n let existingValue = this.fieldContext.data[fieldName];\n\n if (editWidget === \"PseudoRelationManyToOneFormWidget\" && this.fieldContext.data[fieldName]) {\n existingValue = { solidManyToOneLabel: this.fieldContext.data[fieldName], solidManyToOneValue: this.fieldContext.data[fieldName] };\n\n }\n\n return existingValue !== undefined && existingValue !== null ? existingValue : fieldDefaultValue || '';\n }\n\n validationSchema(): Yup.Schema {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo?.attrs?.label ?? fieldMetadata.displayName;\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n let schema = Yup.mixed();\n\n // Custom validation for relation field\n if (fieldMetadata.required) {\n schema = schema.test(\n ERROR_MESSAGES.REQUIRED_REALTION,\n ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel),\n function (value: any) {\n // Handle empty values\n if (!value) return false;\n\n // If it's an object with solidManyToOneValue, check if it's valid\n if (typeof value === 'object' && value !== null && (value as any).solidManyToOneValue) {\n return true;\n }\n\n // If it's a string (user typed but didn't select), it's invalid for required field\n if (typeof value === 'string') {\n return false;\n }\n\n return false;\n }\n );\n }\n\n // Add validation to ensure valid selection\n schema = schema.test(\n ERROR_MESSAGES.VALIDATE_SELECTION,\n ERROR_MESSAGES.SELECT_VALID_FROM_DROPDOWN(fieldLabel),\n function (value: any) {\n // If not required and empty, it's valid\n if (!fieldMetadata.required && (!value || value === '')) {\n return true;\n }\n\n // If it's an object with solidManyToOneValue, it's a valid selection\n if (typeof value === 'object' && value !== null && (value as any).solidManyToOneValue) {\n return true;\n }\n\n // If it's a string (user typed but didn't select), it's invalid\n if (typeof value === 'string' && value.trim() !== '') {\n return false;\n }\n\n // Empty value for non-required field\n return !fieldMetadata.required;\n }\n );\n return schema;\n } else {\n\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n // 1. required \n // 1. required\n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n // 2. length (min/max)\n if (fieldMetadata.min && fieldMetadata.min > 0) {\n schema = schema.min(fieldMetadata.min, ERROR_MESSAGES.FIELD_MINIMUM_CHARACTER(fieldLabel, fieldMetadata.min));\n }\n if (fieldMetadata.max && fieldMetadata.max > 0) {\n schema = schema.max(fieldMetadata.max, ERROR_MESSAGES.FIELD_MAXIMUM_CHARACTER(fieldLabel, fieldMetadata.max));\n }\n // 3. regular expression\n if (fieldMetadata.regexPattern) {\n const regexPatternNotMatchingErrorMsg = fieldMetadata.regexPatternNotMatchingErrorMsg ?? ERROR_MESSAGES.FIELD_INVALID_DATA(fieldLabel)\n schema = schema.matches(fieldMetadata.regexPattern, regexPatternNotMatchingErrorMsg);\n }\n return schema;\n }\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultShortTextFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultShortTextFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\nexport const DefaultShortTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const isPrimaryKey = fieldMetadata.isPrimaryKey || false;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidInput\n type=\"text\"\n readOnly={formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey}\n disabled={formDisabled || fieldDisabled || isPrimaryKey}\n id={fieldLayoutInfo.attrs.name}\n name={fieldMetadata.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => fieldContext.onChange(e, 'onFieldChange')}\n onBlur={(e: React.FocusEvent<HTMLInputElement>) => fieldContext.onBlur(e, 'onFieldBlur')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n className={styles.fieldInput}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const DefaultShortTextFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>{value && typeof value === \"string\" ? value : ''}</p>\n </div>\n );\n}\n\n// Masked ShortText - LIST\nexport const MaskedShortTextListViewWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const colVal = rowData[column.attrs.name];\n // Mask it (show same number of * as characters, or fixed length if you want)\n const maskedValue = colVal ? '*'.repeat(colVal.length) : '';\n return (\n <span>{maskedValue}</span>\n );\n};\n\n// Masked ShortText - VIEW\nexport const MaskedShortTextFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const rawValue: string = formik.values[fieldLayoutInfo.attrs.name] || '';\n const maskedValue = rawValue ? '*'.repeat(rawValue.length) : '';\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>{maskedValue}</p>\n </div>\n );\n};\n\n// Masked ShortText - EDIT\nexport const MaskedShortTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const isPrimaryKey = fieldMetadata.isPrimaryKey || false;\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldLayoutInfo.attrs.name} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n <SolidPasswordInput\n toggle\n readOnly={formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey}\n disabled={formDisabled || fieldDisabled || isPrimaryKey}\n id={fieldLayoutInfo.attrs.name}\n name={fieldMetadata.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e) => fieldContext.onChange(e, 'onFieldChange')}\n onBlur={(e) => fieldContext.onBlur(e, 'onFieldBlur')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidShortTextField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidShortTextField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport * as Yup from 'yup';\nimport styles from './solidFields.module.css';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps, SolidListFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { useState } from \"react\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { SolidInput, SolidPasswordInput } from \"../../../shad-cn-ui\";\n\nexport class SolidShortTextField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n if (value?.solidManyToOneValue) {\n formData.append(fieldLayoutInfo?.attrs?.name, value.solidManyToOneValue);\n }\n } else {\n if (value !== undefined && value !== null) {\n formData.append(fieldLayoutInfo?.attrs?.name, value);\n }\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const fieldLayoutInfo = this.fieldContext.field;\n\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n\n if (this.fieldContext.parentData && this.fieldContext.parentData[fieldName]) {\n const parentDataForKey = this.fieldContext.parentData[fieldName];\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n if (parentDataForKey) {\n return { solidManyToOneLabel: this.fieldContext.parentData[fieldName], solidManyToOneValue: this.fieldContext.parentData[fieldName] };\n }\n } else {\n if (parentDataForKey && typeof parentDataForKey !== 'object') {\n return this.fieldContext.parentData[fieldName]\n }\n }\n }\n let existingValue = this.fieldContext.data[fieldName];\n\n if (editWidget === \"PseudoRelationManyToOneFormWidget\" && this.fieldContext.data[fieldName]) {\n existingValue = { solidManyToOneLabel: this.fieldContext.data[fieldName], solidManyToOneValue: this.fieldContext.data[fieldName] };\n\n }\n\n return existingValue !== undefined && existingValue !== null ? existingValue : fieldDefaultValue || '';\n }\n\n validationSchema(): Yup.Schema {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo?.attrs?.label ?? fieldMetadata.displayName;\n const editWidget = fieldLayoutInfo?.attrs?.editWidget;\n if (editWidget === \"PseudoRelationManyToOneFormWidget\") {\n let schema = Yup.mixed();\n\n // Custom validation for relation field\n if (fieldMetadata.required) {\n schema = schema.test(\n ERROR_MESSAGES.REQUIRED_REALTION,\n ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel),\n function (value: any) {\n // Handle empty values\n if (!value) return false;\n\n // If it's an object with solidManyToOneValue, check if it's valid\n if (typeof value === 'object' && value !== null && (value as any).solidManyToOneValue) {\n return true;\n }\n\n // If it's a string (user typed but didn't select), it's invalid for required field\n if (typeof value === 'string') {\n return false;\n }\n\n return false;\n }\n );\n }\n\n // Add validation to ensure valid selection\n schema = schema.test(\n ERROR_MESSAGES.VALIDATE_SELECTION,\n ERROR_MESSAGES.SELECT_VALID_FROM_DROPDOWN(fieldLabel),\n function (value: any) {\n // If not required and empty, it's valid\n if (!fieldMetadata.required && (!value || value === '')) {\n return true;\n }\n\n // If it's an object with solidManyToOneValue, it's a valid selection\n if (typeof value === 'object' && value !== null && (value as any).solidManyToOneValue) {\n return true;\n }\n\n // If it's a string (user typed but didn't select), it's invalid\n if (typeof value === 'string' && value.trim() !== '') {\n return false;\n }\n\n // Empty value for non-required field\n return !fieldMetadata.required;\n }\n );\n return schema;\n } else {\n\n let schema: Yup.StringSchema<string | null | undefined> = Yup.string();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n // 1. required \n // 1. required\n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n } else {\n schema = schema.nullable(); // Allow null when not required\n }\n // 2. length (min/max)\n if (fieldMetadata.min && fieldMetadata.min > 0) {\n schema = schema.min(fieldMetadata.min, ERROR_MESSAGES.FIELD_MINIMUM_CHARACTER(fieldLabel, fieldMetadata.min));\n }\n if (fieldMetadata.max && fieldMetadata.max > 0) {\n schema = schema.max(fieldMetadata.max, ERROR_MESSAGES.FIELD_MAXIMUM_CHARACTER(fieldLabel, fieldMetadata.max));\n }\n // 3. regular expression\n if (fieldMetadata.regexPattern) {\n const regexPatternNotMatchingErrorMsg = fieldMetadata.regexPatternNotMatchingErrorMsg ?? ERROR_MESSAGES.FIELD_INVALID_DATA(fieldLabel)\n schema = schema.matches(fieldMetadata.regexPattern, regexPatternNotMatchingErrorMsg);\n }\n return schema;\n }\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const solidFormViewMetaData = this.fieldContext.solidFormViewMetaData;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultShortTextFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultShortTextFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\nexport const DefaultShortTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const isPrimaryKey = fieldMetadata.isPrimaryKey || false;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n const autoComplete = fieldLayoutInfo?.attrs?.autoComplete || 'on';\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n }\n <SolidInput\n type=\"text\"\n readOnly={formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey}\n disabled={formDisabled || fieldDisabled || isPrimaryKey}\n id={fieldLayoutInfo.attrs.name}\n name={fieldMetadata.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => fieldContext.onChange(e, 'onFieldChange')}\n onBlur={(e: React.FocusEvent<HTMLInputElement>) => fieldContext.onBlur(e, 'onFieldBlur')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n className={styles.fieldInput}\n autoComplete={autoComplete}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n}\n\nexport const DefaultShortTextFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>{value && typeof value === \"string\" ? value : ''}</p>\n </div>\n );\n}\n\n// Masked ShortText - LIST\nexport const MaskedShortTextListViewWidget = ({ rowData, solidListViewMetaData, fieldMetadata, column }: SolidListFieldWidgetProps) => {\n const colVal = rowData[column.attrs.name];\n // Mask it (show same number of * as characters, or fixed length if you want)\n const maskedValue = colVal ? '*'.repeat(colVal.length) : '';\n return (\n <span>{maskedValue}</span>\n );\n};\n\n// Masked ShortText - VIEW\nexport const MaskedShortTextFormViewWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const rawValue: string = formik.values[fieldLayoutInfo.attrs.name] || '';\n const maskedValue = rawValue ? '*'.repeat(rawValue.length) : '';\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>{fieldLabel}</p>\n )}\n <p className={styles.fieldViewValue}>{maskedValue}</p>\n </div>\n );\n};\n\n// Masked ShortText - EDIT\nexport const MaskedShortTextFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n const isPrimaryKey = fieldMetadata.isPrimaryKey || false;\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const fieldReadonly = fieldLayoutInfo.attrs?.readonly;\n const autoComplete = fieldLayoutInfo?.attrs?.autoComplete || 'on';\n\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;\n\n return (\n <div className={styles.fieldWrapper}>\n {showFieldLabel !== false && (\n <label htmlFor={fieldLayoutInfo.attrs.name} className={styles.fieldLabel}>\n {fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\">*</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n </label>\n )}\n <SolidPasswordInput\n toggle\n readOnly={formReadonly || fieldReadonly || readOnlyPermission || isPrimaryKey}\n disabled={formDisabled || fieldDisabled || isPrimaryKey}\n id={fieldLayoutInfo.attrs.name}\n name={fieldMetadata.name}\n aria-describedby={`${fieldLayoutInfo.attrs.name}-help`}\n onChange={(e) => fieldContext.onChange(e, 'onFieldChange')}\n onBlur={(e) => fieldContext.onBlur(e, 'onFieldBlur')}\n value={formik.values[fieldLayoutInfo.attrs.name] || ''}\n className=\"w-full\"\n autoComplete={autoComplete}\n />\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>\n )}\n </div>\n );\n};\n"]}
|
|
@@ -53,7 +53,7 @@ export class SolidShortTextField implements ISolidField {
|
|
|
53
53
|
let existingValue = this.fieldContext.data[fieldName];
|
|
54
54
|
|
|
55
55
|
if (editWidget === "PseudoRelationManyToOneFormWidget" && this.fieldContext.data[fieldName]) {
|
|
56
|
-
existingValue =
|
|
56
|
+
existingValue = { solidManyToOneLabel: this.fieldContext.data[fieldName], solidManyToOneValue: this.fieldContext.data[fieldName] };
|
|
57
57
|
|
|
58
58
|
}
|
|
59
59
|
|
|
@@ -213,6 +213,8 @@ export const DefaultShortTextFormEditWidget = ({ formik, fieldContext }: SolidFo
|
|
|
213
213
|
|
|
214
214
|
const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;
|
|
215
215
|
const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;
|
|
216
|
+
const autoComplete = fieldLayoutInfo?.attrs?.autoComplete || 'on';
|
|
217
|
+
|
|
216
218
|
return (
|
|
217
219
|
<div className={styles.fieldWrapper}>
|
|
218
220
|
{showFieldLabel != false &&
|
|
@@ -233,6 +235,7 @@ export const DefaultShortTextFormEditWidget = ({ formik, fieldContext }: SolidFo
|
|
|
233
235
|
onBlur={(e: React.FocusEvent<HTMLInputElement>) => fieldContext.onBlur(e, 'onFieldBlur')}
|
|
234
236
|
value={formik.values[fieldLayoutInfo.attrs.name] || ''}
|
|
235
237
|
className={styles.fieldInput}
|
|
238
|
+
autoComplete={autoComplete}
|
|
236
239
|
/>
|
|
237
240
|
{isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (
|
|
238
241
|
<p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>
|
|
@@ -302,6 +305,8 @@ export const MaskedShortTextFormEditWidget = ({ formik, fieldContext }: SolidFor
|
|
|
302
305
|
|
|
303
306
|
const fieldDisabled = fieldLayoutInfo.attrs?.disabled;
|
|
304
307
|
const fieldReadonly = fieldLayoutInfo.attrs?.readonly;
|
|
308
|
+
const autoComplete = fieldLayoutInfo?.attrs?.autoComplete || 'on';
|
|
309
|
+
|
|
305
310
|
const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;
|
|
306
311
|
const formReadonly = solidFormViewMetaData.data.solidView?.layout?.attrs?.readonly;
|
|
307
312
|
|
|
@@ -325,6 +330,7 @@ export const MaskedShortTextFormEditWidget = ({ formik, fieldContext }: SolidFor
|
|
|
325
330
|
onBlur={(e) => fieldContext.onBlur(e, 'onFieldBlur')}
|
|
326
331
|
value={formik.values[fieldLayoutInfo.attrs.name] || ''}
|
|
327
332
|
className="w-full"
|
|
333
|
+
autoComplete={autoComplete}
|
|
328
334
|
/>
|
|
329
335
|
{isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (
|
|
330
336
|
<p className={styles.fieldError}>{formik?.errors[fieldLayoutInfo.attrs.name]?.toString()}</p>
|
|
@@ -189,7 +189,7 @@ export var DefaultTimeFormViewWidget = function (_a) {
|
|
|
189
189
|
var fieldLabel = (_b = fieldLayoutInfo.attrs.label) !== null && _b !== void 0 ? _b : fieldMetadata.displayName;
|
|
190
190
|
var showFieldLabel = (_c = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _c === void 0 ? void 0 : _c.showLabel;
|
|
191
191
|
var rawValue = formik.values[fieldName];
|
|
192
|
-
var format = (_d = fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.format;
|
|
192
|
+
var format = ((_d = fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.format) || "HH:mm:ss";
|
|
193
193
|
var parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;
|
|
194
194
|
var displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : "-";
|
|
195
195
|
return (_jsxs("div", { className: styles.fieldViewWrapper, children: [showFieldLabel !== false && (_jsx("p", { className: "".concat(styles.fieldViewLabel, " form-field-label"), children: fieldLabel })), _jsx("p", { className: styles.fieldViewValue, children: _jsx(DateFieldViewComponent, { value: rawValue, format: format, fallback: "-" }) })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidTimeField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidTimeField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidDatePicker } from \"../../../shad-cn-ui/SolidDatePicker\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport { useRef } from \"react\";\nimport * as Yup from 'yup';\nimport dayjs from 'dayjs';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { DateFieldViewComponent } from '../../../../components/core/common/DateFieldViewComponent';\nimport styles from \"./solidFields.module.css\";\n\n\n// Converts multiple time formats into a JavaScript Date object\nfunction parseTimeStringToDate(timeStr: string): Date | null {\n if (!timeStr) return null;\n\n // CASE 1: HH:mm:ss\n if (typeof timeStr === \"string\" && /^\\d{2}:\\d{2}:\\d{2}$/.test(timeStr)) {\n const [h, m, s] = timeStr.split(\":\").map(Number);\n const d = new Date();\n d.setHours(h, m, s, 0);\n return d;\n }\n\n // CASE 2: timestamp or timestamptz\n try {\n const d = new Date(timeStr); // ← AUTO UTC → LOCAL conversion\n if (!isNaN(d.getTime())) return d;\n } catch (e) {\n console.error(`${ERROR_MESSAGES.FIELD_INAVLID_FORMAT('Date')}:,${e}`)\n }\n\n return null;\n}\n\n// Formats a Date object to a HH:mm:ss string for display\nfunction formatTime(date: Date | null): string {\n if (!date) return \"\";\n return date.toLocaleTimeString();\n}\n\n\nexport class SolidTimeField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value instanceof Date) {\n // Use local date with selected time\n const now = new Date();\n const localDate = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n value.getHours(),\n value.getMinutes(),\n value.getSeconds()\n );\n\n formData.append(fieldLayoutInfo.attrs.name, localDate.toISOString());\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const existingValue = this.fieldContext.data[fieldName];\n\n if (existingValue) {\n if (existingValue instanceof Date) {\n return existingValue;\n }\n if (typeof existingValue === \"string\") {\n const parsed = parseTimeStringToDate(existingValue);\n if (parsed) return parsed;\n }\n }\n\n return fieldDefaultValue ? new Date(fieldDefaultValue) : null;\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.date().nullable();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultTimeFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultTimeFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\n\nexport const DefaultTimeFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const calendarRef = useRef<any>(null); // Reference for the Calendar component\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n\n const fieldValue = formik.values[fieldLayoutInfo.attrs.name];\n\n\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidDatePicker\n selected={fieldValue instanceof Date ? fieldValue : typeof fieldValue === \"string\" ? parseTimeStringToDate(fieldValue) ?? undefined : undefined}\n onChange={(date: Date | null) => {\n const nextValue = (date as Date | null) ?? null;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, nextValue, \"time\", nextValue ? true : undefined);\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n disabled={formDisabled || fieldDisabled || readOnlyPermission}\n readOnly={readOnlyPermission}\n timeOnly\n showTimeSelect\n dateFormat=\"HH:mm\"\n className=\"\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\nexport const DefaultTimeFormViewWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const fieldLabel =\n fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const rawValue = formik.values[fieldName];\n const format = fieldLayoutInfo.attrs?.format;\n\n const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;\n const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : \"-\";\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>\n {fieldLabel}\n </p>\n )}\n <p className={styles.fieldViewValue}>\n <DateFieldViewComponent value={rawValue} format={format} fallback=\"-\"></DateFieldViewComponent>\n </p>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidTimeField.js","sourceRoot":"","sources":["../../../../../src/components/core/form/fields/SolidTimeField.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { SolidDatePicker } from \"../../../shad-cn-ui/SolidDatePicker\";\nimport { SolidMessage } from \"../../../shad-cn-ui/SolidMessage\";\nimport { buildSyntheticChangeEvent } from \"./fieldEventUtils\";\nimport { useRef } from \"react\";\nimport * as Yup from 'yup';\nimport dayjs from 'dayjs';\nimport { FormikObject, ISolidField, SolidFieldProps } from \"./ISolidField\";\nimport { getExtensionComponent } from \"../../../../helpers/registry\";\nimport { SolidFormFieldWidgetProps } from \"../../../../types/solid-core\";\nimport { SolidFieldTooltip } from \"../../../../components/common/SolidFieldTooltip\";\nimport { ERROR_MESSAGES } from \"../../../../constants/error-messages\";\nimport { DateFieldViewComponent } from '../../../../components/core/common/DateFieldViewComponent';\nimport styles from \"./solidFields.module.css\";\n\n\n// Converts multiple time formats into a JavaScript Date object\nfunction parseTimeStringToDate(timeStr: string): Date | null {\n if (!timeStr) return null;\n\n // CASE 1: HH:mm:ss\n if (typeof timeStr === \"string\" && /^\\d{2}:\\d{2}:\\d{2}$/.test(timeStr)) {\n const [h, m, s] = timeStr.split(\":\").map(Number);\n const d = new Date();\n d.setHours(h, m, s, 0);\n return d;\n }\n\n // CASE 2: timestamp or timestamptz\n try {\n const d = new Date(timeStr); // ← AUTO UTC → LOCAL conversion\n if (!isNaN(d.getTime())) return d;\n } catch (e) {\n console.error(`${ERROR_MESSAGES.FIELD_INAVLID_FORMAT('Date')}:,${e}`)\n }\n\n return null;\n}\n\n// Formats a Date object to a HH:mm:ss string for display\nfunction formatTime(date: Date | null): string {\n if (!date) return \"\";\n return date.toLocaleTimeString();\n}\n\n\nexport class SolidTimeField implements ISolidField {\n\n private fieldContext: SolidFieldProps;\n\n constructor(fieldContext: SolidFieldProps) {\n this.fieldContext = fieldContext;\n }\n\n updateFormData(value: any, formData: FormData): any {\n const fieldLayoutInfo = this.fieldContext.field;\n if (value instanceof Date) {\n // Use local date with selected time\n const now = new Date();\n const localDate = new Date(\n now.getFullYear(),\n now.getMonth(),\n now.getDate(),\n value.getHours(),\n value.getMinutes(),\n value.getSeconds()\n );\n\n formData.append(fieldLayoutInfo.attrs.name, localDate.toISOString());\n } else if (value) {\n formData.append(fieldLayoutInfo.attrs.name, value);\n }\n }\n\n initialValue(): any {\n const fieldName = this.fieldContext.field.attrs.name;\n const fieldDefaultValue = this.fieldContext?.fieldMetadata?.defaultValue;\n const existingValue = this.fieldContext.data[fieldName];\n\n if (existingValue) {\n if (existingValue instanceof Date) {\n return existingValue;\n }\n if (typeof existingValue === \"string\") {\n const parsed = parseTimeStringToDate(existingValue);\n if (parsed) return parsed;\n }\n }\n\n return fieldDefaultValue ? new Date(fieldDefaultValue) : null;\n }\n\n validationSchema(): Yup.Schema {\n let schema = Yup.date().nullable();\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n\n // 1. required \n if (fieldMetadata.required) {\n schema = schema.required(ERROR_MESSAGES.FIELD_REUQIRED(fieldLabel));\n }\n return schema;\n }\n\n render(formik: FormikObject) {\n const fieldMetadata = this.fieldContext.fieldMetadata;\n const fieldLayoutInfo = this.fieldContext.field;\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n\n\n let viewWidget = fieldLayoutInfo.attrs.viewWidget;\n let editWidget = fieldLayoutInfo.attrs.editWidget;\n if (!editWidget) {\n editWidget = 'DefaultTimeFormEditWidget';\n }\n if (!viewWidget) {\n viewWidget = 'DefaultTimeFormViewWidget';\n }\n const viewMode: string = this.fieldContext.viewMode;\n\n return (\n <>\n <div className={className}>\n {viewMode === \"view\" &&\n this.renderExtensionRenderMode(viewWidget, formik)\n }\n {viewMode === \"edit\" &&\n <>\n {editWidget &&\n this.renderExtensionRenderMode(editWidget, formik)\n }\n </>\n }\n </div>\n </>\n );\n }\n\n renderExtensionRenderMode(widget: string, formik: FormikObject) {\n let DynamicWidget = getExtensionComponent(widget);\n const widgetProps: SolidFormFieldWidgetProps = {\n formik: formik,\n fieldContext: this.fieldContext,\n }\n return (\n <>\n {DynamicWidget && <DynamicWidget {...widgetProps} />}\n </>\n )\n }\n}\n\n\n\nexport const DefaultTimeFormEditWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const className = fieldLayoutInfo.attrs?.className || 'field col-12';\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const calendarRef = useRef<any>(null); // Reference for the Calendar component\n const fieldDescription = fieldLayoutInfo.attrs.description ?? fieldMetadata.description;\n const solidFormViewMetaData = fieldContext.solidFormViewMetaData;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n const readOnlyPermission = fieldContext.readOnly;\n\n const isFormFieldValid = (formik: any, fieldName: string) => formik.touched[fieldName] && formik.errors[fieldName];\n\n const fieldDisabled = fieldLayoutInfo.attrs?.disabled;\n const formDisabled = solidFormViewMetaData.data.solidView?.layout?.attrs?.disabled;\n\n const fieldValue = formik.values[fieldLayoutInfo.attrs.name];\n\n\n\n return (\n <div className=\"relative\">\n <div className={styles.fieldWrapper}>\n {showFieldLabel != false &&\n <label htmlFor={fieldLayoutInfo.attrs.name} className={`${styles.fieldLabel} form-field-label`}>{fieldLabel}\n {fieldMetadata.required && <span className=\"text-red-500\"> *</span>}\n <SolidFieldTooltip fieldContext={fieldContext} />\n {/* {fieldDescription && <span className=\"form_field_help\">({fieldDescription}) </span>} */}\n </label>\n }\n <SolidDatePicker\n selected={fieldValue instanceof Date ? fieldValue : typeof fieldValue === \"string\" ? parseTimeStringToDate(fieldValue) ?? undefined : undefined}\n onChange={(date: Date | null) => {\n const nextValue = (date as Date | null) ?? null;\n const syntheticEvent = buildSyntheticChangeEvent(fieldLayoutInfo.attrs.name, nextValue, \"time\", nextValue ? true : undefined);\n fieldContext.onChange(syntheticEvent, \"onFieldChange\");\n }}\n disabled={formDisabled || fieldDisabled || readOnlyPermission}\n readOnly={readOnlyPermission}\n timeOnly\n showTimeSelect\n dateFormat=\"HH:mm\"\n className=\"\"\n />\n </div>\n {isFormFieldValid(formik, fieldLayoutInfo.attrs.name) && (\n <div className=\"absolute mt-1\">\n <SolidMessage severity=\"error\" text={formik?.errors[fieldLayoutInfo.attrs.name]?.toString()} />\n </div>\n )}\n </div>\n );\n}\n\n\nexport const DefaultTimeFormViewWidget = ({\n formik,\n fieldContext,\n}: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n\n const fieldName = fieldLayoutInfo.attrs.name;\n const fieldLabel =\n fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;\n\n const rawValue = formik.values[fieldName];\n const format = fieldLayoutInfo.attrs?.format || \"HH:mm:ss\";\n\n const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;\n const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : \"-\";\n\n return (\n <div className={styles.fieldViewWrapper}>\n {showFieldLabel !== false && (\n <p className={`${styles.fieldViewLabel} form-field-label`}>\n {fieldLabel}\n </p>\n )}\n <p className={styles.fieldViewValue}>\n <DateFieldViewComponent value={rawValue} format={format} fallback=\"-\"></DateFieldViewComponent>\n </p>\n </div>\n );\n};\n"]}
|
|
@@ -222,7 +222,7 @@ export const DefaultTimeFormViewWidget = ({
|
|
|
222
222
|
const showFieldLabel = fieldLayoutInfo?.attrs?.showLabel;
|
|
223
223
|
|
|
224
224
|
const rawValue = formik.values[fieldName];
|
|
225
|
-
const format = fieldLayoutInfo.attrs?.format;
|
|
225
|
+
const format = fieldLayoutInfo.attrs?.format || "HH:mm:ss";
|
|
226
226
|
|
|
227
227
|
const parsedTime = rawValue ? parseTimeStringToDate(rawValue) : null;
|
|
228
228
|
const displayValue = parsedTime ? (format ? dayjs(parsedTime).format(format) : formatTime(parsedTime)) : "-";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InlineRelationEntityDialog.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InlineRelationEntityDialog.d.ts","sourceRoot":"","sources":["../../../../../../../../src/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,0BAA0B,oDAAqD,GAAG,4CAgC9F,CAAC"}
|
package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js
CHANGED
|
@@ -9,8 +9,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
-
import { jsx as _jsx
|
|
13
|
-
import { SolidDialog, SolidDialogBody,
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { SolidDialog, SolidDialogBody, } from "../../../../../../shad-cn-ui/SolidDialog";
|
|
14
14
|
import { camelCase } from "lodash";
|
|
15
15
|
import SolidFormView from "../../../../../../../components/core/form/SolidFormView";
|
|
16
16
|
export var InlineRelationEntityDialog = function (_a) {
|
|
@@ -32,6 +32,6 @@ export var InlineRelationEntityDialog = function (_a) {
|
|
|
32
32
|
};
|
|
33
33
|
var dialogWidth = (_g = (_f = (_e = (_d = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _d === void 0 ? void 0 : _d.inlineCreateLayout) === null || _e === void 0 ? void 0 : _e.attrs) === null || _f === void 0 ? void 0 : _f.width) !== null && _g !== void 0 ? _g : "60vw";
|
|
34
34
|
var dialogHeight = (_l = (_k = (_j = (_h = fieldLayoutInfo === null || fieldLayoutInfo === void 0 ? void 0 : fieldLayoutInfo.attrs) === null || _h === void 0 ? void 0 : _h.inlineCreateLayout) === null || _j === void 0 ? void 0 : _j.attrs) === null || _k === void 0 ? void 0 : _k.height) !== null && _l !== void 0 ? _l : "auto";
|
|
35
|
-
return (
|
|
35
|
+
return (_jsx(SolidDialog, { open: visible, onOpenChange: setVisible, className: "solid-dialog", style: { width: dialogWidth, height: dialogHeight }, children: _jsx(SolidDialogBody, { children: _jsx(SolidFormView, __assign({}, params)) }) }));
|
|
36
36
|
};
|
|
37
37
|
//# sourceMappingURL=InlineRelationEntityDialog.js.map
|
package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InlineRelationEntityDialog.js","sourceRoot":"","sources":["../../../../../../../../src/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EACL,WAAW,EACX,eAAe,
|
|
1
|
+
{"version":3,"file":"InlineRelationEntityDialog.js","sourceRoot":"","sources":["../../../../../../../../src/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EACL,WAAW,EACX,eAAe,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,aAAa,MAAM,yDAAyD,CAAC;AAEpF,MAAM,CAAC,IAAM,0BAA0B,GAAG,UAAC,EAAoD;;QAAlD,OAAO,aAAA,EAAE,UAAU,gBAAA,EAAE,YAAY,kBAAA,EAAE,QAAQ,cAAA;IACtF,IAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC;IAE3C,IAAM,MAAM,GAAG;QACb,UAAU,EAAE,YAAY,CAAC,aAAa,CAAC,uBAAuB;QAC9D,EAAE,EAAE,KAAK;QACT,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB;QACxD,mBAAmB,EAAE,UAAC,MAAW;YAC/B,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QACD,oBAAoB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,oBAAoB;QAClE,gBAAgB,EAAE,cAAM,OAAA,UAAU,CAAC,KAAK,CAAC,EAAjB,CAAiB;QACzC,SAAS,EAAE,SAAS,CAAC,YAAY,CAAC,aAAa,CAAC,2BAA2B,CAAC;KAC7E,CAAC;IAEF,IAAM,WAAW,GAAG,MAAA,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB,0CAAE,KAAK,0CAAE,KAAK,mCAAI,MAAM,CAAC;IACvF,IAAM,YAAY,GAAG,MAAA,MAAA,MAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,KAAK,0CAAE,kBAAkB,0CAAE,KAAK,0CAAE,MAAM,mCAAI,MAAM,CAAC;IAEzF,OAAO,CACL,KAAC,WAAW,IACV,IAAI,EAAE,OAAO,EACb,YAAY,EAAE,UAAU,EACxB,SAAS,EAAC,cAAc,EACxB,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,YAEnD,KAAC,eAAe,cACd,KAAC,aAAa,eAAK,MAAM,EAAI,GACb,GACN,CACf,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import {\n SolidDialog,\n SolidDialogBody,\n} from \"../../../../../../shad-cn-ui/SolidDialog\";\nimport { camelCase } from \"lodash\";\nimport SolidFormView from \"../../../../../../../components/core/form/SolidFormView\";\n\nexport const InlineRelationEntityDialog = ({ visible, setVisible, fieldContext, onCreate }: any) => {\n const fieldLayoutInfo = fieldContext.field;\n\n const params = {\n moduleName: fieldContext.fieldMetadata.relationModelModuleName,\n id: \"new\",\n embeded: true,\n customLayout: fieldLayoutInfo?.attrs?.inlineCreateLayout,\n customCreateHandler: (values: any) => {\n setVisible(false);\n onCreate(values);\n },\n inlineCreateAutoSave: fieldLayoutInfo?.attrs?.inlineCreateAutoSave,\n handlePopupClose: () => setVisible(false),\n modelName: camelCase(fieldContext.fieldMetadata.relationCoModelSingularName)\n };\n\n const dialogWidth = fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.width ?? \"60vw\";\n const dialogHeight = fieldLayoutInfo?.attrs?.inlineCreateLayout?.attrs?.height ?? \"auto\";\n\n return (\n <SolidDialog\n open={visible}\n onOpenChange={setVisible}\n className=\"solid-dialog\"\n style={{ width: dialogWidth, height: dialogHeight }}\n >\n <SolidDialogBody>\n <SolidFormView {...params} />\n </SolidDialogBody>\n </SolidDialog>\n );\n};\n"]}
|
package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SolidDialog,
|
|
3
3
|
SolidDialogBody,
|
|
4
|
-
SolidDialogClose,
|
|
5
|
-
SolidDialogHeader,
|
|
6
4
|
} from "../../../../../../shad-cn-ui/SolidDialog";
|
|
7
5
|
import { camelCase } from "lodash";
|
|
8
6
|
import SolidFormView from "../../../../../../../components/core/form/SolidFormView";
|
|
@@ -34,9 +32,6 @@ export const InlineRelationEntityDialog = ({ visible, setVisible, fieldContext,
|
|
|
34
32
|
className="solid-dialog"
|
|
35
33
|
style={{ width: dialogWidth, height: dialogHeight }}
|
|
36
34
|
>
|
|
37
|
-
<SolidDialogHeader>
|
|
38
|
-
<SolidDialogClose aria-label="Close dialog" />
|
|
39
|
-
</SolidDialogHeader>
|
|
40
35
|
<SolidDialogBody>
|
|
41
36
|
<SolidFormView {...params} />
|
|
42
37
|
</SolidDialogBody>
|
|
@@ -44,7 +44,6 @@
|
|
|
44
44
|
.fieldInput:focus-visible {
|
|
45
45
|
outline: none !important;
|
|
46
46
|
border-color: color-mix(in srgb, var(--primary-color, var(--primary)) 65%, var(--border)) !important;
|
|
47
|
-
box-shadow: 0 0 0 3px var(--ring) !important;
|
|
48
47
|
}
|
|
49
48
|
|
|
50
49
|
.fieldInput:disabled {
|
|
@@ -71,7 +70,6 @@
|
|
|
71
70
|
.fieldTextarea:focus-visible {
|
|
72
71
|
outline: none !important;
|
|
73
72
|
border-color: color-mix(in srgb, var(--primary-color, var(--primary)) 65%, var(--border)) !important;
|
|
74
|
-
box-shadow: 0 0 0 3px var(--ring) !important;
|
|
75
73
|
}
|
|
76
74
|
|
|
77
75
|
.fieldTextarea:disabled {
|
|
@@ -105,7 +103,6 @@
|
|
|
105
103
|
.fieldNumberWrapper :global(.p-inputnumber-input):focus {
|
|
106
104
|
outline: none !important;
|
|
107
105
|
border-color: color-mix(in srgb, var(--primary-color, var(--primary)) 65%, var(--border)) !important;
|
|
108
|
-
box-shadow: 0 0 0 3px var(--ring) !important;
|
|
109
106
|
}
|
|
110
107
|
|
|
111
108
|
.fieldNumberWrapper :global(.p-inputnumber-input):disabled {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SolidFormFieldWidgetProps } from "../../../../../types/solid-core";
|
|
2
2
|
import "viewerjs/dist/viewer.css";
|
|
3
3
|
/**
|
|
4
|
-
* SolidS3FileViewerWidget
|
|
4
|
+
* SolidS3FileViewerWidget
|
|
5
5
|
*/
|
|
6
6
|
export declare const SolidS3FileViewerWidget: ({ formik, fieldContext }: SolidFormFieldWidgetProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
7
|
//# sourceMappingURL=SolidS3FileViewerWidget.d.ts.map
|
|
@@ -43,7 +43,7 @@ import "viewerjs/dist/viewer.css";
|
|
|
43
43
|
import { SolidImageViewer } from "../../../../../components/core/common/SolidImageViewer";
|
|
44
44
|
import { fetchS3Url } from "../../../../..//helpers/fetchS3Url";
|
|
45
45
|
/**
|
|
46
|
-
* SolidS3FileViewerWidget
|
|
46
|
+
* SolidS3FileViewerWidget
|
|
47
47
|
*/
|
|
48
48
|
export var SolidS3FileViewerWidget = function (_a) {
|
|
49
49
|
var _b, _c;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidS3FileViewerWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/widgets/SolidS3FileViewerWidget.tsx"],"names":[],"mappings":"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","sourcesContent":["\nimport { useRef, useState } from \"react\";\nimport { SolidFormFieldWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogHeader,\n SolidDialogTitle,\n} from \"../../../../shad-cn-ui/SolidDialog\";\nimport { useResolveS3UrlMutation } from \"../../../../../redux/api/fieldApi\";\nimport Viewer from \"viewerjs\";\nimport \"viewerjs/dist/viewer.css\";\nimport { SolidImageViewer } from \"../../../../../components/core/common/SolidImageViewer\";\nimport { fetchS3Url, type FetchS3UrlOptions } from \"../../../../..//helpers/fetchS3Url\";\n\n/**\n * SolidS3FileViewerWidget (PrimeReact version)\n */\nexport const SolidS3FileViewerWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n const fileType = fieldLayoutInfo.attrs.fileType?.toLowerCase();\n const downloadAllowed = fieldLayoutInfo.attrs.downloadAllowed !== false;\n const bucketName = fieldLayoutInfo.attrs.bucketName;\n const mediaStorageProviderUserKey = fieldLayoutInfo.attrs.mediaStorageProviderUserKey;\n const isPrivate = fieldLayoutInfo.attrs.isPrivate ? fieldLayoutInfo.attrs.isPrivate : \"false\";\n\n const imageRef = useRef<HTMLImageElement | null>(null);\n const viewerRef = useRef<Viewer | null>(null);\n\n const [previewUrl, setPreviewUrl] = useState<string>(\"\");\n const [isLoading, setIsLoading] = useState(false);\n const [open, setOpen] = useState(false);\n const [shouldShowViewer, setShouldShowViewer] = useState(false);\n\n const [resolveS3Url] = useResolveS3UrlMutation();\n\n const resolveFileUrl = async () => {\n setIsLoading(true);\n\n const options: FetchS3UrlOptions = {\n s3Key: value,\n fileType: fileType,\n bucketName: bucketName,\n mediaStorageProviderUserKey: mediaStorageProviderUserKey,\n isPrivate: isPrivate\n };\n\n const url = await fetchS3Url(resolveS3Url, options);\n setIsLoading(false);\n return url;\n };\n\n const handleDownload = async () => {\n if (isLoading) return;\n const url = await resolveFileUrl();\n if (!url) return;\n const a = document.createElement(\"a\");\n a.href = url;\n a.download = value?.split(\"/\").pop() || \"file\";\n a.target = \"_blank\";\n a.rel = \"noopener noreferrer\";\n a.click();\n };\n\n const handleView = async () => {\n console.log(\"isLoading in view\", isLoading);\n if (isLoading) return;\n\n const url = await resolveFileUrl();\n console.log(\"url after fetch success\", url);\n if (!url) return;\n\n setPreviewUrl(url);\n\n if (isImage) {\n // Trigger viewer to show after state update\n setShouldShowViewer(true);\n } else {\n setOpen(true);\n }\n };\n\n const isImage = [\"jpeg\", \"jpg\", \"png\", \"gif\", \"webp\"].includes(fileType);\n const isPDF = fileType === \"pdf\";\n const isDownloadOnly = [\"xlsx\", \"xls\", \"csv\", \"doc\", \"docx\"].includes(fileType);\n\n // 🔹 Initialize Viewer.js once image exists\n // useEffect(() => {\n // if (imageRef.current && previewUrl && isImage) {\n // // Destroy existing viewer if any\n // if (viewerRef.current) {\n // viewerRef.current.destroy();\n // }\n\n // // Create new viewer instance\n // viewerRef.current = new Viewer(imageRef.current, {\n // toolbar: {\n // zoomIn: 1,\n // zoomOut: 1,\n // rotateLeft: 1,\n // rotateRight: 1,\n // reset: 1,\n // },\n // navbar: false,\n // title: false,\n // transition: true,\n // movable: true,\n // scalable: true,\n // rotatable: true,\n // zoomable: true,\n // zIndex: 9999,\n // // Add hidden event to reset state\n // hidden: () => {\n // setShouldShowViewer(false);\n // }\n // });\n\n // console.log(\"Viewer initialized\");\n // }\n\n // return () => {\n // if (viewerRef.current) {\n // viewerRef.current.destroy();\n // viewerRef.current = null;\n // }\n // };\n // }, [previewUrl, isImage]);\n\n // 🔹 Show viewer when shouldShowViewer becomes true\n // useEffect(() => {\n // if (shouldShowViewer && viewerRef.current) {\n // console.log(\"Showing viewer\");\n // viewerRef.current.show();\n // }\n // }, [shouldShowViewer]);\n\n return (\n <div className=\"mt-2 flex flex-col gap-2\">\n <p className=\"m-0 form-field-label font-medium\">{fieldLabel}</p>\n\n {value ? (\n <div className=\"flex gap-3 items-center\">\n {(isImage || isPDF) && (\n <SolidButton\n icon=\"si si-eye\"\n type=\"button\"\n style={{ minWidth: 66 }}\n loading={isLoading}\n tooltip={value}\n disabled={isLoading}\n size=\"sm\"\n iconPos=\"left\"\n onClick={handleView}\n >\n {`View ${fileType}`}\n </SolidButton>\n )}\n {downloadAllowed && (\n <SolidButton\n size=\"sm\"\n type=\"button\"\n icon=\"si si-download\"\n tooltip={`Download ${value?.split(\"/\").pop()}`}\n loading={isLoading}\n onClick={handleDownload}\n disabled={isLoading}\n className='solid-icon-button' />\n )}\n </div>\n ) : (\n <p className=\"text-sm text-muted-foreground\">No file uploaded</p>\n )}\n\n {/* Hidden image for Viewer.js - keep visibility hidden instead of display none */}\n {isImage && previewUrl && (\n // <img\n // ref={imageRef}\n // src={previewUrl}\n // alt={value}\n // style={{\n // position: \"absolute\",\n // visibility: \"hidden\",\n // width: \"1px\",\n // height: \"1px\"\n // }}\n // />\n <SolidImageViewer\n images={[previewUrl]}\n open={shouldShowViewer}\n onClose={() => setShouldShowViewer(false)}\n viewerOptions={{\n toolbar: {\n zoomIn: 1,\n zoomOut: 1,\n rotateLeft: 1,\n rotateRight: 1,\n reset: 1,\n },\n }}\n />\n\n )}\n\n <SolidDialog\n open={open}\n onOpenChange={setOpen}\n className=\"solid-confirm-dialog\"\n style={{ width: \"80vw\", maxHeight: \"90vh\" }}\n >\n <SolidDialogHeader className=\"p-1 form-wrapper-title\">\n <SolidDialogTitle>{value}</SolidDialogTitle>\n <SolidDialogClose aria-label=\"Close preview\" />\n </SolidDialogHeader>\n <SolidDialogBody className=\"p-0\">\n {previewUrl && isPDF && (\n <div\n style={{\n width: \"100%\",\n height: \"75vh\",\n overflow: \"hidden\",\n borderRadius: 6,\n }}\n >\n <iframe\n src={previewUrl}\n style={{ width: \"100%\", height: \"100%\", border: \"none\" }}\n />\n </div>\n )}\n </SolidDialogBody>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
1
|
+
{"version":3,"file":"SolidS3FileViewerWidget.js","sourceRoot":"","sources":["../../../../../../src/components/core/form/fields/widgets/SolidS3FileViewerWidget.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EACL,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,OAAO,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wDAAwD,CAAC;AAC1F,OAAO,EAAE,UAAU,EAA0B,MAAM,oCAAoC,CAAC;AAExF;;GAEG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,EAAmD;;QAAjD,MAAM,YAAA,EAAE,YAAY,kBAAA;IAC1D,IAAM,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;IACjD,IAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC;IAC3C,IAAM,UAAU,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,KAAK,mCAAI,aAAa,CAAC,WAAW,CAAC;IAC5E,IAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxD,IAAM,QAAQ,GAAG,MAAA,eAAe,CAAC,KAAK,CAAC,QAAQ,0CAAE,WAAW,EAAE,CAAC;IAC/D,IAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,eAAe,KAAK,KAAK,CAAC;IACxE,IAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC;IACpD,IAAM,2BAA2B,GAAG,eAAe,CAAC,KAAK,CAAC,2BAA2B,CAAC;IACtF,IAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAE9F,IAAM,QAAQ,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IACvD,IAAM,SAAS,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAExC,IAAA,KAA8B,QAAQ,CAAS,EAAE,CAAC,EAAjD,UAAU,QAAA,EAAE,aAAa,QAAwB,CAAC;IACnD,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAkB,QAAQ,CAAC,KAAK,CAAC,EAAhC,IAAI,QAAA,EAAE,OAAO,QAAmB,CAAC;IAClC,IAAA,KAA0C,QAAQ,CAAC,KAAK,CAAC,EAAxD,gBAAgB,QAAA,EAAE,mBAAmB,QAAmB,CAAC;IAEzD,IAAA,YAAY,GAAI,uBAAuB,EAAE,GAA7B,CAA8B;IAEjD,IAAM,cAAc,GAAG;;;;;oBACnB,YAAY,CAAC,IAAI,CAAC,CAAC;oBAEb,OAAO,GAAsB;wBAC/B,KAAK,EAAE,KAAK;wBACZ,QAAQ,EAAE,QAAQ;wBAClB,UAAU,EAAE,UAAU;wBACtB,2BAA2B,EAAE,2BAA2B;wBACxD,SAAS,EAAE,SAAS;qBACvB,CAAC;oBAEU,qBAAM,UAAU,CAAC,YAAY,EAAE,OAAO,CAAC,EAAA;;oBAA7C,GAAG,GAAG,SAAuC;oBACnD,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,sBAAO,GAAG,EAAC;;;SACd,CAAC;IAEF,IAAM,cAAc,GAAG;;;;;oBACnB,IAAI,SAAS;wBAAE,sBAAO;oBACV,qBAAM,cAAc,EAAE,EAAA;;oBAA5B,GAAG,GAAG,SAAsB;oBAClC,IAAI,CAAC,GAAG;wBAAE,sBAAO;oBACX,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBACtC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC;oBACb,CAAC,CAAC,QAAQ,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,KAAI,MAAM,CAAC;oBAC/C,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC;oBACpB,CAAC,CAAC,GAAG,GAAG,qBAAqB,CAAC;oBAC9B,CAAC,CAAC,KAAK,EAAE,CAAC;;;;SACb,CAAC;IAEF,IAAM,UAAU,GAAG;;;;;oBACf,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;oBAC5C,IAAI,SAAS;wBAAE,sBAAO;oBAEV,qBAAM,cAAc,EAAE,EAAA;;oBAA5B,GAAG,GAAG,SAAsB;oBAClC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;oBAC5C,IAAI,CAAC,GAAG;wBAAE,sBAAO;oBAEjB,aAAa,CAAC,GAAG,CAAC,CAAC;oBAEnB,IAAI,OAAO,EAAE;wBACT,4CAA4C;wBAC5C,mBAAmB,CAAC,IAAI,CAAC,CAAC;qBAC7B;yBAAM;wBACH,OAAO,CAAC,IAAI,CAAC,CAAC;qBACjB;;;;SACJ,CAAC;IAEF,IAAM,OAAO,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzE,IAAM,KAAK,GAAG,QAAQ,KAAK,KAAK,CAAC;IACjC,IAAM,cAAc,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhF,4CAA4C;IAC5C,oBAAoB;IACpB,uDAAuD;IACvD,4CAA4C;IAC5C,mCAAmC;IACnC,2CAA2C;IAC3C,YAAY;IAEZ,wCAAwC;IACxC,6DAA6D;IAC7D,yBAAyB;IACzB,6BAA6B;IAC7B,8BAA8B;IAC9B,iCAAiC;IACjC,kCAAkC;IAClC,4BAA4B;IAC5B,iBAAiB;IACjB,6BAA6B;IAC7B,4BAA4B;IAC5B,gCAAgC;IAChC,6BAA6B;IAC7B,8BAA8B;IAC9B,+BAA+B;IAC/B,8BAA8B;IAC9B,4BAA4B;IAC5B,iDAAiD;IACjD,8BAA8B;IAC9B,8CAA8C;IAC9C,gBAAgB;IAChB,cAAc;IAEd,6CAA6C;IAC7C,QAAQ;IAER,qBAAqB;IACrB,mCAAmC;IACnC,2CAA2C;IAC3C,wCAAwC;IACxC,YAAY;IACZ,SAAS;IACT,6BAA6B;IAE7B,oDAAoD;IACpD,oBAAoB;IACpB,mDAAmD;IACnD,yCAAyC;IACzC,oCAAoC;IACpC,QAAQ;IACR,0BAA0B;IAE1B,OAAO,CACH,eAAK,SAAS,EAAC,0BAA0B,aACrC,YAAG,SAAS,EAAC,kCAAkC,YAAE,UAAU,GAAK,EAE/D,KAAK,CAAC,CAAC,CAAC,CACL,eAAK,SAAS,EAAC,yBAAyB,aACnC,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,CACnB,KAAC,WAAW,IACR,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,EACvB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,SAAS,EACnB,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,UAAU,YAElB,eAAQ,QAAQ,CAAE,GACT,CACjB,EACA,eAAe,IAAI,CAChB,KAAC,WAAW,IACR,IAAI,EAAC,IAAI,EACT,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,gBAAgB,EACrB,OAAO,EAAE,mBAAY,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,CAAE,EAC9C,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAC,mBAAmB,GAAG,CACvC,IACC,CACT,CAAC,CAAC,CAAC,CACA,YAAG,SAAS,EAAC,+BAA+B,iCAAqB,CACpE,EAGA,OAAO,IAAI,UAAU,IAAI;YACtB,OAAO;YACP,qBAAqB;YACrB,uBAAuB;YACvB,kBAAkB;YAClB,eAAe;YACf,gCAAgC;YAChC,gCAAgC;YAChC,wBAAwB;YACxB,wBAAwB;YACxB,SAAS;YACT,KAAK;YACL,KAAC,gBAAgB,IACb,MAAM,EAAE,CAAC,UAAU,CAAC,EACpB,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,KAAK,CAAC,EAA1B,CAA0B,EACzC,aAAa,EAAE;oBACX,OAAO,EAAE;wBACL,MAAM,EAAE,CAAC;wBACT,OAAO,EAAE,CAAC;wBACV,UAAU,EAAE,CAAC;wBACb,WAAW,EAAE,CAAC;wBACd,KAAK,EAAE,CAAC;qBACX;iBACJ,GACH,CAEL,EAED,MAAC,WAAW,IACR,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,OAAO,EACrB,SAAS,EAAC,sBAAsB,EAChC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAE3C,MAAC,iBAAiB,IAAC,SAAS,EAAC,wBAAwB,aACjD,KAAC,gBAAgB,cAAE,KAAK,GAAoB,EAC5C,KAAC,gBAAgB,kBAAY,eAAe,GAAG,IAC/B,EACpB,KAAC,eAAe,IAAC,SAAS,EAAC,KAAK,YAC3B,UAAU,IAAI,KAAK,IAAI,CACpB,cACI,KAAK,EAAE;gCACH,KAAK,EAAE,MAAM;gCACb,MAAM,EAAE,MAAM;gCACd,QAAQ,EAAE,QAAQ;gCAClB,YAAY,EAAE,CAAC;6BAClB,YAED,iBACI,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAC1D,GACA,CACT,GACa,IACR,IACZ,CACT,CAAC;AACN,CAAC,CAAC","sourcesContent":["\nimport { useRef, useState } from \"react\";\nimport { SolidFormFieldWidgetProps } from \"../../../../../types/solid-core\";\nimport { SolidButton } from \"../../../../shad-cn-ui/SolidButton\";\nimport {\n SolidDialog,\n SolidDialogBody,\n SolidDialogClose,\n SolidDialogHeader,\n SolidDialogTitle,\n} from \"../../../../shad-cn-ui/SolidDialog\";\nimport { useResolveS3UrlMutation } from \"../../../../../redux/api/fieldApi\";\nimport Viewer from \"viewerjs\";\nimport \"viewerjs/dist/viewer.css\";\nimport { SolidImageViewer } from \"../../../../../components/core/common/SolidImageViewer\";\nimport { fetchS3Url, type FetchS3UrlOptions } from \"../../../../..//helpers/fetchS3Url\";\n\n/**\n * SolidS3FileViewerWidget\n */\nexport const SolidS3FileViewerWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {\n const fieldMetadata = fieldContext.fieldMetadata;\n const fieldLayoutInfo = fieldContext.field;\n const fieldLabel = fieldLayoutInfo.attrs.label ?? fieldMetadata.displayName;\n const value = formik.values[fieldLayoutInfo.attrs.name];\n const fileType = fieldLayoutInfo.attrs.fileType?.toLowerCase();\n const downloadAllowed = fieldLayoutInfo.attrs.downloadAllowed !== false;\n const bucketName = fieldLayoutInfo.attrs.bucketName;\n const mediaStorageProviderUserKey = fieldLayoutInfo.attrs.mediaStorageProviderUserKey;\n const isPrivate = fieldLayoutInfo.attrs.isPrivate ? fieldLayoutInfo.attrs.isPrivate : \"false\";\n\n const imageRef = useRef<HTMLImageElement | null>(null);\n const viewerRef = useRef<Viewer | null>(null);\n\n const [previewUrl, setPreviewUrl] = useState<string>(\"\");\n const [isLoading, setIsLoading] = useState(false);\n const [open, setOpen] = useState(false);\n const [shouldShowViewer, setShouldShowViewer] = useState(false);\n\n const [resolveS3Url] = useResolveS3UrlMutation();\n\n const resolveFileUrl = async () => {\n setIsLoading(true);\n\n const options: FetchS3UrlOptions = {\n s3Key: value,\n fileType: fileType,\n bucketName: bucketName,\n mediaStorageProviderUserKey: mediaStorageProviderUserKey,\n isPrivate: isPrivate\n };\n\n const url = await fetchS3Url(resolveS3Url, options);\n setIsLoading(false);\n return url;\n };\n\n const handleDownload = async () => {\n if (isLoading) return;\n const url = await resolveFileUrl();\n if (!url) return;\n const a = document.createElement(\"a\");\n a.href = url;\n a.download = value?.split(\"/\").pop() || \"file\";\n a.target = \"_blank\";\n a.rel = \"noopener noreferrer\";\n a.click();\n };\n\n const handleView = async () => {\n console.log(\"isLoading in view\", isLoading);\n if (isLoading) return;\n\n const url = await resolveFileUrl();\n console.log(\"url after fetch success\", url);\n if (!url) return;\n\n setPreviewUrl(url);\n\n if (isImage) {\n // Trigger viewer to show after state update\n setShouldShowViewer(true);\n } else {\n setOpen(true);\n }\n };\n\n const isImage = [\"jpeg\", \"jpg\", \"png\", \"gif\", \"webp\"].includes(fileType);\n const isPDF = fileType === \"pdf\";\n const isDownloadOnly = [\"xlsx\", \"xls\", \"csv\", \"doc\", \"docx\"].includes(fileType);\n\n // 🔹 Initialize Viewer.js once image exists\n // useEffect(() => {\n // if (imageRef.current && previewUrl && isImage) {\n // // Destroy existing viewer if any\n // if (viewerRef.current) {\n // viewerRef.current.destroy();\n // }\n\n // // Create new viewer instance\n // viewerRef.current = new Viewer(imageRef.current, {\n // toolbar: {\n // zoomIn: 1,\n // zoomOut: 1,\n // rotateLeft: 1,\n // rotateRight: 1,\n // reset: 1,\n // },\n // navbar: false,\n // title: false,\n // transition: true,\n // movable: true,\n // scalable: true,\n // rotatable: true,\n // zoomable: true,\n // zIndex: 9999,\n // // Add hidden event to reset state\n // hidden: () => {\n // setShouldShowViewer(false);\n // }\n // });\n\n // console.log(\"Viewer initialized\");\n // }\n\n // return () => {\n // if (viewerRef.current) {\n // viewerRef.current.destroy();\n // viewerRef.current = null;\n // }\n // };\n // }, [previewUrl, isImage]);\n\n // 🔹 Show viewer when shouldShowViewer becomes true\n // useEffect(() => {\n // if (shouldShowViewer && viewerRef.current) {\n // console.log(\"Showing viewer\");\n // viewerRef.current.show();\n // }\n // }, [shouldShowViewer]);\n\n return (\n <div className=\"mt-2 flex flex-col gap-2\">\n <p className=\"m-0 form-field-label font-medium\">{fieldLabel}</p>\n\n {value ? (\n <div className=\"flex gap-3 items-center\">\n {(isImage || isPDF) && (\n <SolidButton\n icon=\"si si-eye\"\n type=\"button\"\n style={{ minWidth: 66 }}\n loading={isLoading}\n tooltip={value}\n disabled={isLoading}\n size=\"sm\"\n iconPos=\"left\"\n onClick={handleView}\n >\n {`View ${fileType}`}\n </SolidButton>\n )}\n {downloadAllowed && (\n <SolidButton\n size=\"sm\"\n type=\"button\"\n icon=\"si si-download\"\n tooltip={`Download ${value?.split(\"/\").pop()}`}\n loading={isLoading}\n onClick={handleDownload}\n disabled={isLoading}\n className='solid-icon-button' />\n )}\n </div>\n ) : (\n <p className=\"text-sm text-muted-foreground\">No file uploaded</p>\n )}\n\n {/* Hidden image for Viewer.js - keep visibility hidden instead of display none */}\n {isImage && previewUrl && (\n // <img\n // ref={imageRef}\n // src={previewUrl}\n // alt={value}\n // style={{\n // position: \"absolute\",\n // visibility: \"hidden\",\n // width: \"1px\",\n // height: \"1px\"\n // }}\n // />\n <SolidImageViewer\n images={[previewUrl]}\n open={shouldShowViewer}\n onClose={() => setShouldShowViewer(false)}\n viewerOptions={{\n toolbar: {\n zoomIn: 1,\n zoomOut: 1,\n rotateLeft: 1,\n rotateRight: 1,\n reset: 1,\n },\n }}\n />\n\n )}\n\n <SolidDialog\n open={open}\n onOpenChange={setOpen}\n className=\"solid-confirm-dialog\"\n style={{ width: \"80vw\", maxHeight: \"90vh\" }}\n >\n <SolidDialogHeader className=\"p-1 form-wrapper-title\">\n <SolidDialogTitle>{value}</SolidDialogTitle>\n <SolidDialogClose aria-label=\"Close preview\" />\n </SolidDialogHeader>\n <SolidDialogBody className=\"p-0\">\n {previewUrl && isPDF && (\n <div\n style={{\n width: \"100%\",\n height: \"75vh\",\n overflow: \"hidden\",\n borderRadius: 6,\n }}\n >\n <iframe\n src={previewUrl}\n style={{ width: \"100%\", height: \"100%\", border: \"none\" }}\n />\n </div>\n )}\n </SolidDialogBody>\n </SolidDialog>\n </div>\n );\n};\n"]}
|
|
@@ -16,7 +16,7 @@ import { SolidImageViewer } from "../../../../../components/core/common/SolidIma
|
|
|
16
16
|
import { fetchS3Url, type FetchS3UrlOptions } from "../../../../..//helpers/fetchS3Url";
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
|
-
* SolidS3FileViewerWidget
|
|
19
|
+
* SolidS3FileViewerWidget
|
|
20
20
|
*/
|
|
21
21
|
export const SolidS3FileViewerWidget = ({ formik, fieldContext }: SolidFormFieldWidgetProps) => {
|
|
22
22
|
const fieldMetadata = fieldContext.fieldMetadata;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KanbanCard.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanCard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"KanbanCard.d.ts","sourceRoot":"","sources":["../../../../src/components/core/kanban/KanbanCard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,UAAU,IAAI;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,IAAI,CAAC;IACX,uBAAuB,EAAE,GAAG,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,iBAAiB,CAAC,EAAE,GAAG,CAAC;CACzB;AAED,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAuFzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
};
|
|
12
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
13
|
import { useRouter } from "../../../hooks/useRouter";
|
|
14
|
-
import {
|
|
14
|
+
import { CompatibleDraggable } from "../common/dndCompat";
|
|
15
15
|
import { SolidDropdownMenu, SolidDropdownMenuContent, SolidDropdownMenuItem, SolidDropdownMenuTrigger, SolidIcon, } from "../../shad-cn-ui";
|
|
16
16
|
var KanbanCard = function (_a) {
|
|
17
17
|
var data = _a.data, solidKanbanViewMetaData = _a.solidKanbanViewMetaData, index = _a.index, _b = _a.isDragDisabled, isDragDisabled = _b === void 0 ? false : _b, setLightboxUrls = _a.setLightboxUrls, setOpenLightbox = _a.setOpenLightbox, editButtonUrl = _a.editButtonUrl, groupByFieldName = _a.groupByFieldName, group = _a.group, cardNode = _a.cardNode, DynamicCardWidget = _a.DynamicCardWidget;
|
|
@@ -28,7 +28,7 @@ var KanbanCard = function (_a) {
|
|
|
28
28
|
var renderKanbanAction = function (data) {
|
|
29
29
|
return (_jsx("div", { className: "solid-kanban-action", onClick: function (e) { return e.stopPropagation(); }, children: _jsxs(SolidDropdownMenu, { children: [_jsx(SolidDropdownMenuTrigger, { asChild: true, children: _jsx("button", { type: "button", className: "solid-header-cog-trigger solid-kanban-action-trigger", "aria-label": "Open card actions", children: _jsx(SolidIcon, { name: "si-ellipsis-v", "aria-hidden": true }) }) }), _jsx(SolidDropdownMenuContent, { className: "solid-custom-overlay", align: "end", children: _jsxs(SolidDropdownMenuItem, { className: "solid-header-dropdown-item", onSelect: function () { return router.push("".concat(editButtonUrl, "/").concat(data === null || data === void 0 ? void 0 : data.id)); }, children: [_jsx(SolidIcon, { name: "si-pencil", className: "solid-header-action-button-icon", "aria-hidden": true }), _jsx("span", { className: "solid-header-action-button-label", children: "Edit" })] }) })] }) }));
|
|
30
30
|
};
|
|
31
|
-
return (_jsx(
|
|
31
|
+
return (_jsx(CompatibleDraggable, { draggableId: String(data.id), index: index, isDragDisabled: isDragDisabled, children: function (provided, snapshot) {
|
|
32
32
|
var _a, _b;
|
|
33
33
|
return (_jsx("div", __assign({ className: "", ref: provided.innerRef }, provided.draggableProps, (!isDragDisabled ? provided.dragHandleProps : {}), { style: __assign({ marginTop: "1rem" }, provided.draggableProps.style), className: "kanban-card-container", children: _jsxs("div", { style: {
|
|
34
34
|
opacity: snapshot.isDragging ? 0.9 : 1,
|