@solidxai/core-ui 0.1.5-beta.8 → 0.1.6
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/auth/AuthTabs.d.ts +14 -0
- package/dist/components/auth/AuthTabs.d.ts.map +1 -0
- package/dist/components/auth/AuthTabs.js +19 -0
- package/dist/components/auth/AuthTabs.js.map +1 -0
- package/dist/components/auth/AuthTabs.tsx +38 -0
- package/dist/components/auth/GoogleAuthChecking.d.ts.map +1 -1
- package/dist/components/auth/GoogleAuthChecking.js +10 -10
- package/dist/components/auth/GoogleAuthChecking.js.map +1 -1
- package/dist/components/auth/GoogleAuthChecking.tsx +8 -9
- package/dist/components/auth/SolidChangeForcePassword.d.ts.map +1 -1
- package/dist/components/auth/SolidChangeForcePassword.js +9 -10
- package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
- package/dist/components/auth/SolidChangeForcePassword.tsx +6 -9
- package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
- package/dist/components/auth/SolidForgotPassword.js +8 -8
- package/dist/components/auth/SolidForgotPassword.js.map +1 -1
- package/dist/components/auth/SolidForgotPassword.tsx +6 -8
- package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.js +57 -57
- package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
- package/dist/components/auth/SolidInitialLoginOtp.tsx +10 -11
- package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.js +57 -57
- package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
- package/dist/components/auth/SolidInitiateRegisterOtp.tsx +10 -11
- package/dist/components/auth/SolidLogin.d.ts.map +1 -1
- package/dist/components/auth/SolidLogin.js +12 -12
- package/dist/components/auth/SolidLogin.js.map +1 -1
- package/dist/components/auth/SolidLogin.tsx +11 -16
- package/dist/components/auth/SolidRegister.d.ts.map +1 -1
- package/dist/components/auth/SolidRegister.js +19 -19
- package/dist/components/auth/SolidRegister.js.map +1 -1
- package/dist/components/auth/SolidRegister.tsx +18 -23
- package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
- package/dist/components/auth/SolidResetPassword.js +15 -15
- package/dist/components/auth/SolidResetPassword.js.map +1 -1
- package/dist/components/auth/SolidResetPassword.tsx +7 -8
- package/dist/components/common/GeneralSettings.d.ts.map +1 -1
- package/dist/components/common/GeneralSettings.js +87 -120
- package/dist/components/common/GeneralSettings.js.map +1 -1
- package/dist/components/common/GeneralSettings.tsx +12 -42
- package/dist/components/common/GlobalToast.d.ts +2 -0
- package/dist/components/common/GlobalToast.d.ts.map +1 -0
- package/dist/components/common/GlobalToast.js +25 -0
- package/dist/components/common/GlobalToast.js.map +1 -0
- package/dist/components/common/GlobalToast.tsx +25 -0
- package/dist/components/common/SolidErrorStatePage.d.ts +12 -0
- package/dist/components/common/SolidErrorStatePage.d.ts.map +1 -0
- package/dist/components/common/SolidErrorStatePage.js +16 -0
- package/dist/components/common/SolidErrorStatePage.js.map +1 -0
- package/dist/components/common/SolidErrorStatePage.tsx +55 -0
- package/dist/components/common/SolidExport.d.ts.map +1 -1
- package/dist/components/common/SolidExport.js +19 -31
- package/dist/components/common/SolidExport.js.map +1 -1
- package/dist/components/common/SolidExport.tsx +7 -19
- package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
- package/dist/components/common/SolidFormStepper.js +41 -41
- package/dist/components/common/SolidFormStepper.js.map +1 -1
- package/dist/components/common/SolidFormStepper.tsx +5 -6
- package/dist/components/core/chatter/SolidChatterDateDivider.d.ts.map +1 -1
- package/dist/components/core/chatter/SolidChatterDateDivider.js +4 -1
- package/dist/components/core/chatter/SolidChatterDateDivider.js.map +1 -1
- package/dist/components/core/chatter/SolidChatterDateDivider.tsx +5 -1
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +9 -9
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +8 -9
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +8 -8
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +7 -9
- package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.d.ts.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js +11 -11
- package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js.map +1 -1
- package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx +10 -11
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +9 -9
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +8 -9
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +7 -7
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
- package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +6 -7
- package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.js +78 -21
- package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
- package/dist/components/core/common/SolidGlobalSearchElement.tsx +65 -10
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js +6 -8
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +5 -9
- package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js +9 -11
- package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +5 -10
- package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js +5 -6
- package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx +5 -8
- package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js +10 -12
- package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js.map +1 -1
- package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +6 -11
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +11 -6
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
- package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +13 -1
- package/dist/components/core/form/SolidFormUserViewLayout.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormUserViewLayout.js +7 -8
- package/dist/components/core/form/SolidFormUserViewLayout.js.map +1 -1
- package/dist/components/core/form/SolidFormUserViewLayout.tsx +5 -7
- package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
- package/dist/components/core/form/SolidFormView.js +12 -21
- package/dist/components/core/form/SolidFormView.js.map +1 -1
- package/dist/components/core/form/SolidFormView.tsx +11 -33
- package/dist/components/core/form/fields/SolidMediaSingleField.d.ts.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.js +22 -15
- package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
- package/dist/components/core/form/fields/SolidMediaSingleField.tsx +14 -2
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +37 -26
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +38 -5
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +11 -11
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
- package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +9 -11
- package/dist/components/core/kanban/KanbanUserViewLayout.d.ts.map +1 -1
- package/dist/components/core/kanban/KanbanUserViewLayout.js +7 -8
- package/dist/components/core/kanban/KanbanUserViewLayout.js.map +1 -1
- package/dist/components/core/kanban/KanbanUserViewLayout.tsx +4 -6
- package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.js +5 -7
- package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
- package/dist/components/core/kanban/SolidKanbanView.tsx +4 -9
- package/dist/components/core/list/PLAN.md +92 -0
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.d.ts.map +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +13 -13
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
- package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +5 -6
- package/dist/components/core/list/SolidDataTable.d.ts +58 -0
- package/dist/components/core/list/SolidDataTable.d.ts.map +1 -0
- package/dist/components/core/list/SolidDataTable.js +141 -0
- package/dist/components/core/list/SolidDataTable.js.map +1 -0
- package/dist/components/core/list/SolidDataTable.tsx +314 -0
- package/dist/components/core/list/SolidListView.d.ts.map +1 -1
- package/dist/components/core/list/SolidListView.js +20 -67
- package/dist/components/core/list/SolidListView.js.map +1 -1
- package/dist/components/core/list/SolidListView.tsx +9 -76
- package/dist/components/core/model/CreateModel.d.ts.map +1 -1
- package/dist/components/core/model/CreateModel.js +15 -25
- package/dist/components/core/model/CreateModel.js.map +1 -1
- package/dist/components/core/model/CreateModel.tsx +12 -32
- package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
- package/dist/components/core/model/FieldMetaData.js +6 -17
- package/dist/components/core/model/FieldMetaData.js.map +1 -1
- package/dist/components/core/model/FieldMetaData.tsx +5 -26
- package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
- package/dist/components/core/model/ModelMetaData.js +48 -55
- package/dist/components/core/model/ModelMetaData.js.map +1 -1
- package/dist/components/core/model/ModelMetaData.tsx +4 -22
- package/dist/components/core/module/CreateModule.d.ts.map +1 -1
- package/dist/components/core/module/CreateModule.js +42 -44
- package/dist/components/core/module/CreateModule.js.map +1 -1
- package/dist/components/core/module/CreateModule.tsx +13 -27
- package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
- package/dist/components/core/module/ModuleListViewData.js +11 -7
- package/dist/components/core/module/ModuleListViewData.js.map +1 -1
- package/dist/components/core/module/ModuleListViewData.tsx +10 -8
- package/dist/components/core/solid-ai/SolidAiChat.d.ts +3 -0
- package/dist/components/core/solid-ai/SolidAiChat.d.ts.map +1 -0
- package/dist/components/core/solid-ai/SolidAiChat.js +1043 -0
- package/dist/components/core/solid-ai/SolidAiChat.js.map +1 -0
- package/dist/components/core/solid-ai/SolidAiChat.module.css +1339 -0
- package/dist/components/core/solid-ai/SolidAiChat.tsx +1237 -0
- package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
- package/dist/components/core/tree/SolidTreeView.js +32 -69
- package/dist/components/core/tree/SolidTreeView.js.map +1 -1
- package/dist/components/core/tree/SolidTreeView.tsx +8 -47
- package/dist/components/core/users/CreateUser.d.ts.map +1 -1
- package/dist/components/core/users/CreateUser.js +24 -37
- package/dist/components/core/users/CreateUser.js.map +1 -1
- package/dist/components/core/users/CreateUser.tsx +8 -46
- package/dist/components/core/users/UserListView.d.ts.map +1 -1
- package/dist/components/core/users/UserListView.js +9 -16
- package/dist/components/core/users/UserListView.js.map +1 -1
- package/dist/components/core/users/UserListView.tsx +5 -21
- package/dist/components/layout/AdminLayout.d.ts.map +1 -1
- package/dist/components/layout/AdminLayout.js +4 -2
- package/dist/components/layout/AdminLayout.js.map +1 -1
- package/dist/components/layout/AdminLayout.tsx +4 -2
- package/dist/components/layout/AdminTopHeader.d.ts +2 -0
- package/dist/components/layout/AdminTopHeader.d.ts.map +1 -0
- package/dist/components/layout/AdminTopHeader.js +80 -0
- package/dist/components/layout/AdminTopHeader.js.map +1 -0
- package/dist/components/layout/AdminTopHeader.tsx +165 -0
- package/dist/components/layout/AppSidebar.d.ts.map +1 -1
- package/dist/components/layout/AppSidebar.js +1 -2
- package/dist/components/layout/AppSidebar.js.map +1 -1
- package/dist/components/layout/AppSidebar.tsx +0 -2
- package/dist/components/layout/Layout.d.ts.map +1 -1
- package/dist/components/layout/Layout.js +2 -1
- package/dist/components/layout/Layout.js.map +1 -1
- package/dist/components/layout/Layout.tsx +2 -0
- package/dist/components/layout/SolidAiStudioLayout.d.ts +10 -0
- package/dist/components/layout/SolidAiStudioLayout.d.ts.map +1 -0
- package/dist/components/layout/SolidAiStudioLayout.js +159 -0
- package/dist/components/layout/SolidAiStudioLayout.js.map +1 -0
- package/dist/components/layout/SolidAiStudioLayout.tsx +333 -0
- package/dist/components/layout/navbar-one.d.ts.map +1 -1
- package/dist/components/layout/navbar-one.js +1 -2
- package/dist/components/layout/navbar-one.js.map +1 -1
- package/dist/components/layout/navbar-one.tsx +0 -2
- package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
- package/dist/components/layout/navbar-two-menu.js +50 -24
- package/dist/components/layout/navbar-two-menu.js.map +1 -1
- package/dist/components/layout/navbar-two-menu.tsx +48 -30
- package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts +24 -0
- package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidAutocomplete.js +224 -0
- package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +339 -0
- package/dist/components/shad-cn-ui/SolidButton.d.ts +14 -0
- package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidButton.js +36 -0
- package/dist/components/shad-cn-ui/SolidButton.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidButton.tsx +54 -0
- package/dist/components/shad-cn-ui/SolidInput.d.ts +5 -0
- package/dist/components/shad-cn-ui/SolidInput.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidInput.js +35 -0
- package/dist/components/shad-cn-ui/SolidInput.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidInput.tsx +12 -0
- package/dist/components/shad-cn-ui/SolidNumberInput.d.ts +10 -0
- package/dist/components/shad-cn-ui/SolidNumberInput.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidNumberInput.js +33 -0
- package/dist/components/shad-cn-ui/SolidNumberInput.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidNumberInput.tsx +24 -0
- package/dist/components/shad-cn-ui/SolidSelect.d.ts +16 -0
- package/dist/components/shad-cn-ui/SolidSelect.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidSelect.js +26 -0
- package/dist/components/shad-cn-ui/SolidSelect.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidSelect.tsx +65 -0
- package/dist/components/shad-cn-ui/SolidTabs.d.ts +18 -0
- package/dist/components/shad-cn-ui/SolidTabs.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/SolidTabs.js +22 -0
- package/dist/components/shad-cn-ui/SolidTabs.js.map +1 -0
- package/dist/components/shad-cn-ui/SolidTabs.tsx +73 -0
- package/dist/components/shad-cn-ui/index.d.ts +7 -0
- package/dist/components/shad-cn-ui/index.d.ts.map +1 -0
- package/dist/components/shad-cn-ui/index.js +7 -0
- package/dist/components/shad-cn-ui/index.js.map +1 -0
- package/dist/components/shad-cn-ui/index.ts +6 -0
- package/dist/helpers/studioSandbox.d.ts +31 -0
- package/dist/helpers/studioSandbox.d.ts.map +1 -0
- package/dist/helpers/studioSandbox.js +104 -0
- package/dist/helpers/studioSandbox.js.map +1 -0
- package/dist/helpers/studioSandbox.ts +117 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/index.ts +4 -0
- package/dist/redux/features/solidStudioSlice.d.ts +9 -0
- package/dist/redux/features/solidStudioSlice.d.ts.map +1 -0
- package/dist/redux/features/solidStudioSlice.js +72 -0
- package/dist/redux/features/solidStudioSlice.js.map +1 -0
- package/dist/redux/features/solidStudioSlice.ts +78 -0
- package/dist/redux/features/toastSlice.d.ts +15 -0
- package/dist/redux/features/toastSlice.d.ts.map +1 -0
- package/dist/redux/features/toastSlice.js +20 -0
- package/dist/redux/features/toastSlice.js.map +1 -0
- package/dist/redux/features/toastSlice.ts +35 -0
- package/dist/redux/store/defaultStoreConfig.d.ts +1 -0
- package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
- package/dist/redux/store/defaultStoreConfig.js +2 -1
- package/dist/redux/store/defaultStoreConfig.js.map +1 -1
- package/dist/redux/store/defaultStoreConfig.ts +2 -0
- package/dist/resources/images/errors/error-astronaut-404.png +0 -0
- package/dist/resources/shadcn-base.css +4171 -0
- package/dist/routes/SolidLayoutRegistry.d.ts +51 -0
- package/dist/routes/SolidLayoutRegistry.d.ts.map +1 -0
- package/dist/routes/SolidLayoutRegistry.js +108 -0
- package/dist/routes/SolidLayoutRegistry.js.map +1 -0
- package/dist/routes/SolidLayoutRegistry.tsx +157 -0
- package/dist/routes/guards/AdminGuard.d.ts +2 -0
- package/dist/routes/guards/AdminGuard.d.ts.map +1 -0
- package/dist/routes/guards/AdminGuard.js +16 -0
- package/dist/routes/guards/AdminGuard.js.map +1 -0
- package/dist/routes/guards/AdminGuard.tsx +17 -0
- package/dist/routes/pages/studio/StudioHomePage.d.ts +2 -0
- package/dist/routes/pages/studio/StudioHomePage.d.ts.map +1 -0
- package/dist/routes/pages/studio/StudioHomePage.js +22 -0
- package/dist/routes/pages/studio/StudioHomePage.js.map +1 -0
- package/dist/routes/pages/studio/StudioHomePage.tsx +106 -0
- package/dist/routes/pages/studio/StudioLandingPage.d.ts +2 -0
- package/dist/routes/pages/studio/StudioLandingPage.d.ts.map +1 -0
- package/dist/routes/pages/studio/StudioLandingPage.js +78 -0
- package/dist/routes/pages/studio/StudioLandingPage.js.map +1 -0
- package/dist/routes/pages/studio/StudioLandingPage.tsx +320 -0
- package/package.json +1 -1
|
@@ -2,10 +2,10 @@ import { OverlayPanel } from 'primereact/overlaypanel';
|
|
|
2
2
|
import { useEffect, useRef, useState } from 'react'
|
|
3
3
|
import { createSolidEntityApi } from '../../redux/api/solidEntityApi';
|
|
4
4
|
import { useFormik } from 'formik';
|
|
5
|
-
import { Toast } from 'primereact/toast';
|
|
6
5
|
import { useSearchParams } from "../../hooks/useSearchParams";
|
|
7
6
|
import { ERROR_MESSAGES } from '../../constants/error-messages';
|
|
8
|
-
import
|
|
7
|
+
import { useDispatch } from 'react-redux';
|
|
8
|
+
import { showToast } from '../../redux/features/toastSlice';
|
|
9
9
|
|
|
10
10
|
interface Props {
|
|
11
11
|
solidFormViewMetaData?: any;
|
|
@@ -19,7 +19,7 @@ interface Props {
|
|
|
19
19
|
|
|
20
20
|
export const SolidFormStepper = (props: Props) => {
|
|
21
21
|
const { solidFormViewMetaData, modelName, initialEntityData, id, solidWorkflowFieldValue, setSolidWorkflowFieldValue, onStepperUpdate } = props;
|
|
22
|
-
const
|
|
22
|
+
const dispatch = useDispatch();
|
|
23
23
|
const formStepperOverlay = useRef(null);
|
|
24
24
|
const containerRef = useRef<HTMLDivElement>(null);
|
|
25
25
|
const leftFormStepperOverlay = useRef(null);
|
|
@@ -144,7 +144,7 @@ export const SolidFormStepper = (props: Props) => {
|
|
|
144
144
|
try {
|
|
145
145
|
const result = await updateStepper({ id: values.id, data: { [solidWorkflowFieldKey]: values[solidWorkflowFieldKey] } }).unwrap();
|
|
146
146
|
if (result?.statusCode === 200) {
|
|
147
|
-
showToast(
|
|
147
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.FIELD_UPDATE(defaultWorkflowFieldDisplayName), detail: ERROR_MESSAGES.FIELD_UPDATE_SUCCESSFULLY(defaultWorkflowFieldDisplayName) }));
|
|
148
148
|
if (result?.data?.[solidWorkflowFieldKey]) {
|
|
149
149
|
setSolidWorkflowFieldValue(result.data[solidWorkflowFieldKey]);
|
|
150
150
|
}
|
|
@@ -154,7 +154,7 @@ export const SolidFormStepper = (props: Props) => {
|
|
|
154
154
|
}
|
|
155
155
|
} catch (error) {
|
|
156
156
|
console.error(ERROR_MESSAGES.UPDATING_STEPPER, error);
|
|
157
|
-
showToast(
|
|
157
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.UPDATE_FAILED, detail: ERROR_MESSAGES.FAILED_UPDATE_FROM }));
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
|
|
@@ -211,7 +211,6 @@ export const SolidFormStepper = (props: Props) => {
|
|
|
211
211
|
|
|
212
212
|
return (
|
|
213
213
|
<>
|
|
214
|
-
<Toast ref={toast} />
|
|
215
214
|
<div ref={containerRef} className='arrow-stepper-container'>
|
|
216
215
|
{hasPreviousSteps && (
|
|
217
216
|
<div style={{ display: 'flex', alignItems: 'center' }}>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChatterDateDivider.d.ts","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatterDateDivider.tsx"],"names":[],"mappings":"AAGA,UAAU,KAAK;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,uBAAuB,aAAc,KAAK,
|
|
1
|
+
{"version":3,"file":"SolidChatterDateDivider.d.ts","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatterDateDivider.tsx"],"names":[],"mappings":"AAGA,UAAU,KAAK;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,uBAAuB,aAAc,KAAK,4CAYtD,CAAA"}
|
|
@@ -2,6 +2,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import styles from './chatter.module.css';
|
|
3
3
|
export var SolidChatterDateDivider = function (_a) {
|
|
4
4
|
var date = _a.date;
|
|
5
|
-
|
|
5
|
+
var displayDate = (date === 'Today' || date === 'Yesterday')
|
|
6
|
+
? date
|
|
7
|
+
: new Date(date).toLocaleDateString(undefined, { year: 'numeric', month: 'long', day: 'numeric' });
|
|
8
|
+
return (_jsx("div", { className: styles.chatterDatetimeDivider, children: _jsx("div", { className: "".concat(styles.chatterDividerContent, " absolute"), children: displayDate }) }));
|
|
6
9
|
};
|
|
7
10
|
//# sourceMappingURL=SolidChatterDateDivider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChatterDateDivider.js","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatterDateDivider.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAM1C,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,EAAe;QAAb,IAAI,UAAA;IAC1C,
|
|
1
|
+
{"version":3,"file":"SolidChatterDateDivider.js","sourceRoot":"","sources":["../../../../src/components/core/chatter/SolidChatterDateDivider.tsx"],"names":[],"mappings":";AACA,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAM1C,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,EAAe;QAAb,IAAI,UAAA;IAC1C,IAAM,WAAW,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW,CAAC;QAC1D,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,kBAAkB,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;IAEvG,OAAO,CACH,cAAK,SAAS,EAAE,MAAM,CAAC,sBAAsB,YACzC,cAAK,SAAS,EAAE,UAAG,MAAM,CAAC,qBAAqB,cAAW,YACrD,WAAW,GACV,GACJ,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["\nimport styles from './chatter.module.css';\n\ninterface Props {\n date: string;\n}\n\nexport const SolidChatterDateDivider = ({ date }: Props) => {\n const displayDate = (date === 'Today' || date === 'Yesterday')\n ? date\n : new Date(date).toLocaleDateString(undefined, { year: 'numeric', month: 'long', day: 'numeric' });\n\n return (\n <div className={styles.chatterDatetimeDivider}>\n <div className={`${styles.chatterDividerContent} absolute`}>\n {displayDate}\n </div>\n </div>\n )\n}"]}
|
|
@@ -6,10 +6,14 @@ interface Props {
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
export const SolidChatterDateDivider = ({ date }: Props) => {
|
|
9
|
+
const displayDate = (date === 'Today' || date === 'Yesterday')
|
|
10
|
+
? date
|
|
11
|
+
: new Date(date).toLocaleDateString(undefined, { year: 'numeric', month: 'long', day: 'numeric' });
|
|
12
|
+
|
|
9
13
|
return (
|
|
10
14
|
<div className={styles.chatterDatetimeDivider}>
|
|
11
15
|
<div className={`${styles.chatterDividerContent} absolute`}>
|
|
12
|
-
{
|
|
16
|
+
{displayDate}
|
|
13
17
|
</div>
|
|
14
18
|
</div>
|
|
15
19
|
)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChangePassword.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidChangePassword.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,mBAAmB,0BAA2B,GAAG,
|
|
1
|
+
{"version":3,"file":"SolidChangePassword.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidChangePassword.tsx"],"names":[],"mappings":"AAeA,eAAO,MAAM,mBAAmB,0BAA2B,GAAG,4CAkK7D,CAAA"}
|
|
@@ -42,17 +42,17 @@ import { useSession } from "../../../../hooks/useSession";
|
|
|
42
42
|
import { Button } from 'primereact/button';
|
|
43
43
|
import { Message } from 'primereact/message';
|
|
44
44
|
import { Password } from 'primereact/password';
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
45
|
+
import { useMemo } from 'react';
|
|
46
|
+
import { useDispatch } from 'react-redux';
|
|
47
|
+
import { showToast } from '../../../../redux/features/toastSlice';
|
|
47
48
|
import * as Yup from 'yup';
|
|
48
49
|
import { SolidPasswordHelperText } from '../SolidPasswordHelperText';
|
|
49
50
|
import { ERROR_MESSAGES } from '../../../../constants/error-messages';
|
|
50
51
|
import { env } from "../../../../adapters/env";
|
|
51
|
-
import showToast from "../../../../helpers/showToast";
|
|
52
52
|
export var SolidChangePassword = function (_a) {
|
|
53
53
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
54
54
|
var solidSettingsData = _a.solidSettingsData;
|
|
55
|
-
var
|
|
55
|
+
var dispatch = useDispatch();
|
|
56
56
|
var changePassword = useChangePasswordMutation()[0];
|
|
57
57
|
var session = useSession();
|
|
58
58
|
var envPasswordRegex = env("NEXT_PUBLIC_PASSWORD_REGEX");
|
|
@@ -125,7 +125,7 @@ export var SolidChangePassword = function (_a) {
|
|
|
125
125
|
case 1:
|
|
126
126
|
response = _k.sent();
|
|
127
127
|
if (response === null || response === void 0 ? void 0 : response.error) {
|
|
128
|
-
showToast(
|
|
128
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.ERROR, detail: response.error }));
|
|
129
129
|
setErrors({
|
|
130
130
|
currentPassword: ERROR_MESSAGES.INCORRECT_CURRENT,
|
|
131
131
|
newPassword: ERROR_MESSAGES.MUST_MATCH,
|
|
@@ -133,14 +133,14 @@ export var SolidChangePassword = function (_a) {
|
|
|
133
133
|
});
|
|
134
134
|
}
|
|
135
135
|
else {
|
|
136
|
-
showToast(
|
|
137
|
-
handleLogout(
|
|
136
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.PASSWORD_CHANGE, detail: ERROR_MESSAGES.PASSWORD_CHANGE }));
|
|
137
|
+
handleLogout(null);
|
|
138
138
|
resetForm();
|
|
139
139
|
}
|
|
140
140
|
return [3 /*break*/, 3];
|
|
141
141
|
case 2:
|
|
142
142
|
err_1 = _k.sent();
|
|
143
|
-
showToast(
|
|
143
|
+
dispatch(showToast({ severity: "error", summary: (_d = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _d === void 0 ? void 0 : _d.message, detail: ((_f = (_e = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _e === void 0 ? void 0 : _e.data) === null || _f === void 0 ? void 0 : _f.message) ? (_h = (_g = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _g === void 0 ? void 0 : _g.data) === null || _h === void 0 ? void 0 : _h.message : (_j = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _j === void 0 ? void 0 : _j.message }));
|
|
144
144
|
return [3 /*break*/, 3];
|
|
145
145
|
case 3: return [2 /*return*/];
|
|
146
146
|
}
|
|
@@ -151,6 +151,6 @@ export var SolidChangePassword = function (_a) {
|
|
|
151
151
|
var isFormFieldValid = function (formik, fieldName) {
|
|
152
152
|
return formik.touched[fieldName] && formik.errors[fieldName];
|
|
153
153
|
};
|
|
154
|
-
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [
|
|
154
|
+
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [_jsxs("div", { children: [_jsx("div", { className: 'grid', children: _jsxs("div", { className: 'col-12 md-col-8 lg:col-5', children: [_jsxs("div", { className: "flex flex-column gap-2", children: [_jsx("label", { htmlFor: "currentPassword", className: "solid-auth-input-label", children: "Current Password" }), _jsx(Password, { id: "currentPassword", name: "currentPassword", value: formik.values.currentPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggleMask: true, invalid: !!formik.errors.currentPassword, inputClassName: "w-full", feedback: false }), isFormFieldValid(formik, "currentPassword") && _jsx(Message, { className: "text-red-500 text-sm", severity: "error", text: (_g = (_f = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _f === void 0 ? void 0 : _f.currentPassword) === null || _g === void 0 ? void 0 : _g.toString() })] }), _jsxs("div", { className: "flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "New Password" }), _jsx(Password, { id: "newPassword", name: "newPassword", value: formik.values.newPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggleMask: true, invalid: !!formik.errors.newPassword, inputClassName: "w-full", feedback: false }), isFormFieldValid(formik, "newPassword") && _jsx(Message, { className: "text-red-500 text-sm", severity: "error", text: (_j = (_h = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _h === void 0 ? void 0 : _h.newPassword) === null || _j === void 0 ? void 0 : _j.toString() })] }), _jsxs("div", { className: "flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "Confirm New Password" }), _jsx(Password, { id: "confirmPassword", name: "confirmPassword", value: formik.values.confirmPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggleMask: true, invalid: !!formik.errors.confirmPassword, inputClassName: "w-full", feedback: false }), isFormFieldValid(formik, "confirmPassword") && _jsx(Message, { className: "text-red-500 text-sm", severity: "error", text: (_l = (_k = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _k === void 0 ? void 0 : _k.confirmPassword) === null || _l === void 0 ? void 0 : _l.toString() })] })] }) }), _jsx(SolidPasswordHelperText, { text: (_m = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _m === void 0 ? void 0 : _m.authenticationPasswordComplexityDescription })] }), _jsx("div", { children: _jsx(Button, { type: 'submit', size: 'small', label: "Change Password", disabled: formik.isSubmitting, loading: formik.isSubmitting }) })] }));
|
|
155
155
|
};
|
|
156
156
|
//# sourceMappingURL=SolidChangePassword.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidChangePassword.js","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidChangePassword.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,SAAS,MAAM,+BAA+B,CAAC;AAEtD,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAAC,EAA0B;;QAAxB,iBAAiB,uBAAA;IACnD,IAAM,KAAK,GAAG,MAAM,CAAQ,IAAI,CAAC,CAAC;IAC3B,IAAA,cAAc,GAAI,yBAAyB,EAAE,GAA/B,CAAgC;IAErD,IAAM,OAAO,GAAQ,UAAU,EAAE,CAAC;IAElC,IAAM,gBAAgB,GAAG,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE3D,mDAAmD;IACnD,IAAM,cAAc,GAAG,OAAO,CAAC;;QAC3B,IAAI;YACA,IAAM,YAAY,GAAG,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,2BAA2B,CAAC;YAC1E,IAAI,YAAY,EAAE;gBACd,qDAAqD;gBACrD,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;aACnC;YACD,IAAI,gBAAgB,EAAE;gBAClB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAI,gBAAgB,OAAG,CAAC,CAAC;gBACtD,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;aAChC;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;SAC9D;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE1C,IAAM,gBAAgB,GAAG,OAAO,CAAC;;QAC7B,IAAM,qBAAqB,GAAG,cAAc;YACxC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE;iBACT,OAAO,CACJ,cAAc,EACd,CAAA,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,uCAAuC;gBAChE,cAAc,CAAC,oBAAoB,CACtC;iBACA,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAC5D,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE;iBACT,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;iBAC5C,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;QAEjE,OAAO,GAAG,CAAC,MAAM,CAAC;YACd,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACxH,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE;iBACxB,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;iBAC5C,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YAChE,WAAW,EAAE,qBAAqB;YAClC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE;iBACxB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;iBAC1D,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YAChE,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;SAC5E,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAExC,IAAM,MAAM,GAAG,SAAS,CAAC;QACrB,aAAa,EAAE;YACX,KAAK,EAAE,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,IAAI,0CAAE,KAAK;YACjC,eAAe,EAAE,EAAE;YACnB,WAAW,EAAE,EAAE;YACf,eAAe,EAAE,EAAE;YACnB,EAAE,EAAE,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,IAAI,0CAAE,EAAE;SAC9B;QACD,gBAAgB,kBAAA;QAChB,QAAQ,EAAE,UAAO,MAAM,EAAE,EAAwB;gBAAtB,SAAS,eAAA,EAAE,SAAS,eAAA;;;;;;;;4BAEjC,OAAO,GAAG;gCACZ,EAAE,EAAE,MAAM,CAAC,EAAE;gCACb,KAAK,EAAE,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,IAAI,0CAAE,KAAK;gCACjC,eAAe,EAAE,MAAM,CAAC,eAAe;gCACvC,WAAW,EAAE,MAAM,CAAC,WAAW;6BAClC,CAAC;4BAEe,qBAAM,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAA;;4BAAjD,QAAQ,GAAG,SAAsC;4BACvD,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,EAAE;gCACjB,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;gCAC/D,SAAS,CAAC;oCACN,eAAe,EAAE,cAAc,CAAC,iBAAiB;oCACjD,WAAW,EAAE,cAAc,CAAC,UAAU;oCACtC,eAAe,EAAE,cAAc,CAAC,UAAU;iCAC7C,CAAC,CAAA;6BACL;iCAAM;gCACH,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC;gCAC5F,YAAY,CAAC,KAAK,CAAC,CAAA;gCACnB,SAAS,EAAE,CAAC;6BACf;;;;4BAED,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,OAAO,EAAE,CAAA,MAAA,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,IAAI,0CAAE,OAAO,EAAC,CAAC,CAAC,MAAA,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,IAAI,0CAAE,OAAO,CAAC,CAAC,CAAC,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,OAAO,CAAC,CAAC;;;;;;SAE/H;KACJ,CAAC,CAAC;IACH,IAAM,gBAAgB,GAAG,UAAC,MAAW,EAAE,SAAiB;QACpD,OAAA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;IAArD,CAAqD,CAAC;IAE1D,OAAO,CACH,gBAAM,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,EAAC,iDAAiD,aAC5F,KAAC,KAAK,IAAC,GAAG,EAAE,KAAK,GAAI,EACrB,0BACI,cAAK,SAAS,EAAC,MAAM,YACjB,eAAK,SAAS,EAAC,0BAA0B,aACrC,eAAK,SAAS,EAAC,wBAAwB,aACnC,gBAAO,OAAO,EAAC,iBAAiB,EAAC,SAAS,EAAC,wBAAwB,iCAAyB,EAC5F,KAAC,QAAQ,IACL,EAAE,EAAC,iBAAiB,EACpB,IAAI,EAAC,iBAAiB,EACtB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,EACpC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAC7B,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,UAAU,QACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,EACxC,cAAc,EAAC,QAAQ,EACvB,QAAQ,EAAE,KAAK,GACjB,EACD,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,KAAC,OAAO,IACpD,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAE,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,eAAe,0CAAE,QAAQ,EAAE,GACnD,IACA,EACN,eAAK,SAAS,EAAC,qDAAqD,aAChE,gBAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,wBAAwB,6BAAqB,EACjF,KAAC,QAAQ,IACL,EAAE,EAAC,aAAa,EAChB,IAAI,EAAC,aAAa,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,EAChC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAC7B,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,UAAU,QACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EACpC,cAAc,EAAC,QAAQ,EACvB,QAAQ,EAAE,KAAK,GACjB,EACD,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,KAAC,OAAO,IAChD,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAE,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,WAAW,0CAAE,QAAQ,EAAE,GAC/C,IACA,EACN,eAAK,SAAS,EAAC,qDAAqD,aAChE,gBAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,wBAAwB,qCAA6B,EACzF,KAAC,QAAQ,IACL,EAAE,EAAC,iBAAiB,EACpB,IAAI,EAAC,iBAAiB,EACtB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,EACpC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAC7B,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,UAAU,QACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,EACxC,cAAc,EAAC,QAAQ,EACvB,QAAQ,EAAE,KAAK,GACjB,EACD,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,KAAC,OAAO,IACpD,SAAS,EAAC,sBAAsB,EAChC,QAAQ,EAAC,OAAO,EAChB,IAAI,EAAE,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,eAAe,0CAAE,QAAQ,EAAE,GACnD,IACA,IACJ,GACJ,EACN,KAAC,uBAAuB,IAAC,IAAI,EAAE,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,2CAA2C,GAAI,IACrG,EACN,wBACI,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,iBAAiB,EAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,YAAY,GAAI,GACxH,IACH,CACV,CAAA;AACL,CAAC,CAAA","sourcesContent":["import { handleLogout } from \"../../../../adapters/auth/handleLogout\";\nimport { useChangePasswordMutation } from '../../../../redux/api/authApi';\nimport { useFormik } from 'formik';\nimport { useSession } from \"../../../../hooks/useSession\";\nimport { Button } from 'primereact/button';\nimport { Message } from 'primereact/message';\nimport { Password } from 'primereact/password';\nimport { Toast } from 'primereact/toast';\nimport { useMemo, useRef } from 'react';\nimport * as Yup from 'yup';\nimport { SolidPasswordHelperText } from '../SolidPasswordHelperText';\nimport { ERROR_MESSAGES } from '../../../../constants/error-messages';\nimport { env } from \"../../../../adapters/env\";\nimport showToast from \"../../../../helpers/showToast\";\n\nexport const SolidChangePassword = ({ solidSettingsData }: any) => {\n const toast = useRef<Toast>(null);\n const [changePassword] = useChangePasswordMutation();\n\n const session: any = useSession();\n\n const envPasswordRegex = env(\"NEXT_PUBLIC_PASSWORD_REGEX\");\n\n // Try backend regex first, then env, then fallback\n const effectiveRegex = useMemo(() => {\n try {\n const backendRegex = solidSettingsData?.data?.authenticationPasswordRegex;\n if (backendRegex) {\n // const unescaped = JSON.parse(`\"${backendRegex}\"`);\n return new RegExp(backendRegex);\n }\n if (envPasswordRegex) {\n const unescaped = JSON.parse(`\"${envPasswordRegex}\"`);\n return new RegExp(unescaped);\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.INVALID_PASSWORD_REGX, error);\n }\n return null;\n }, [solidSettingsData, envPasswordRegex]);\n\n const validationSchema = useMemo(() => {\n const newPasswordValidation = effectiveRegex\n ? Yup.string()\n .matches(\n effectiveRegex,\n solidSettingsData?.data?.authenticationPasswordRegexErrorMessage ||\n ERROR_MESSAGES.PASSWORD_DO_NOT_MEET\n )\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'))\n : Yup.string()\n .min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'));\n\n return Yup.object({\n email: Yup.string().email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email')).required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n currentPassword: Yup.string()\n .min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Current password')),\n newPassword: newPasswordValidation,\n confirmPassword: Yup.string()\n .oneOf([Yup.ref(\"newPassword\")], ERROR_MESSAGES.MUST_MATCH)\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Confirm password')),\n id: Yup.number().required(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('User ID')),\n });\n }, [effectiveRegex, solidSettingsData]);\n\n const formik = useFormik({\n initialValues: {\n email: session?.data?.user?.email,\n currentPassword: \"\",\n newPassword: \"\",\n confirmPassword: \"\",\n id: session?.data?.user?.id,\n },\n validationSchema,\n onSubmit: async (values, { setErrors, resetForm }) => {\n try {\n const payload = {\n id: values.id,\n email: session?.data?.user?.email,\n currentPassword: values.currentPassword,\n newPassword: values.newPassword,\n };\n\n const response = await changePassword(payload).unwrap();\n if (response?.error) {\n showToast(toast, \"error\", ERROR_MESSAGES.ERROR, response.error)\n setErrors({\n currentPassword: ERROR_MESSAGES.INCORRECT_CURRENT,\n newPassword: ERROR_MESSAGES.MUST_MATCH,\n confirmPassword: ERROR_MESSAGES.MUST_MATCH,\n })\n } else {\n showToast(toast, \"success\", ERROR_MESSAGES.PASSWORD_CHANGE, ERROR_MESSAGES.PASSWORD_CHANGE);\n handleLogout(toast)\n resetForm();\n }\n } catch (err: any) {\n showToast(toast, \"error\", err?.data?.message, err?.data?.data?.message ? err?.data?.data?.message : err?.data?.message);\n }\n },\n });\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <form onSubmit={formik.handleSubmit} className=\"h-full flex flex-column justify-content-between\">\n <Toast ref={toast} />\n <div>\n <div className='grid'>\n <div className='col-12 md-col-8 lg:col-5'>\n <div className=\"flex flex-column gap-2\">\n <label htmlFor=\"currentPassword\" className=\"solid-auth-input-label\">Current Password</label>\n <Password\n id=\"currentPassword\"\n name=\"currentPassword\"\n value={formik.values.currentPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.currentPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"currentPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.currentPassword?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\">\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">New Password</label>\n <Password\n id=\"newPassword\"\n name=\"newPassword\"\n value={formik.values.newPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.newPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"newPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.newPassword?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\">\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Confirm New Password</label>\n <Password\n id=\"confirmPassword\"\n name=\"confirmPassword\"\n value={formik.values.confirmPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.confirmPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"confirmPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.confirmPassword?.toString()}\n />}\n </div>\n </div>\n </div>\n <SolidPasswordHelperText text={solidSettingsData?.data?.authenticationPasswordComplexityDescription} />\n </div>\n <div>\n <Button type='submit' size='small' label=\"Change Password\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </form>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SolidChangePassword.js","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidChangePassword.tsx"],"names":[],"mappings":"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","sourcesContent":["import { handleLogout } from \"../../../../adapters/auth/handleLogout\";\nimport { useChangePasswordMutation } from '../../../../redux/api/authApi';\nimport { useFormik } from 'formik';\nimport { useSession } from \"../../../../hooks/useSession\";\nimport { Button } from 'primereact/button';\nimport { Message } from 'primereact/message';\nimport { Password } from 'primereact/password';\nimport { useMemo } from 'react';\nimport { useDispatch } from 'react-redux';\nimport { showToast } from '../../../../redux/features/toastSlice';\nimport * as Yup from 'yup';\nimport { SolidPasswordHelperText } from '../SolidPasswordHelperText';\nimport { ERROR_MESSAGES } from '../../../../constants/error-messages';\nimport { env } from \"../../../../adapters/env\";\n\nexport const SolidChangePassword = ({ solidSettingsData }: any) => {\n const dispatch = useDispatch();\n const [changePassword] = useChangePasswordMutation();\n\n const session: any = useSession();\n\n const envPasswordRegex = env(\"NEXT_PUBLIC_PASSWORD_REGEX\");\n\n // Try backend regex first, then env, then fallback\n const effectiveRegex = useMemo(() => {\n try {\n const backendRegex = solidSettingsData?.data?.authenticationPasswordRegex;\n if (backendRegex) {\n // const unescaped = JSON.parse(`\"${backendRegex}\"`);\n return new RegExp(backendRegex);\n }\n if (envPasswordRegex) {\n const unescaped = JSON.parse(`\"${envPasswordRegex}\"`);\n return new RegExp(unescaped);\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.INVALID_PASSWORD_REGX, error);\n }\n return null;\n }, [solidSettingsData, envPasswordRegex]);\n\n const validationSchema = useMemo(() => {\n const newPasswordValidation = effectiveRegex\n ? Yup.string()\n .matches(\n effectiveRegex,\n solidSettingsData?.data?.authenticationPasswordRegexErrorMessage ||\n ERROR_MESSAGES.PASSWORD_DO_NOT_MEET\n )\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'))\n : Yup.string()\n .min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'));\n\n return Yup.object({\n email: Yup.string().email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email')).required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n currentPassword: Yup.string()\n .min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Current password')),\n newPassword: newPasswordValidation,\n confirmPassword: Yup.string()\n .oneOf([Yup.ref(\"newPassword\")], ERROR_MESSAGES.MUST_MATCH)\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Confirm password')),\n id: Yup.number().required(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('User ID')),\n });\n }, [effectiveRegex, solidSettingsData]);\n\n const formik = useFormik({\n initialValues: {\n email: session?.data?.user?.email,\n currentPassword: \"\",\n newPassword: \"\",\n confirmPassword: \"\",\n id: session?.data?.user?.id,\n },\n validationSchema,\n onSubmit: async (values, { setErrors, resetForm }) => {\n try {\n const payload = {\n id: values.id,\n email: session?.data?.user?.email,\n currentPassword: values.currentPassword,\n newPassword: values.newPassword,\n };\n\n const response = await changePassword(payload).unwrap();\n if (response?.error) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.ERROR, detail: response.error }))\n setErrors({\n currentPassword: ERROR_MESSAGES.INCORRECT_CURRENT,\n newPassword: ERROR_MESSAGES.MUST_MATCH,\n confirmPassword: ERROR_MESSAGES.MUST_MATCH,\n })\n } else {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.PASSWORD_CHANGE, detail: ERROR_MESSAGES.PASSWORD_CHANGE }));\n handleLogout(null)\n resetForm();\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: err?.data?.message, detail: err?.data?.data?.message ? err?.data?.data?.message : err?.data?.message }));\n }\n },\n });\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <form onSubmit={formik.handleSubmit} className=\"h-full flex flex-column justify-content-between\">\n <div>\n <div className='grid'>\n <div className='col-12 md-col-8 lg:col-5'>\n <div className=\"flex flex-column gap-2\">\n <label htmlFor=\"currentPassword\" className=\"solid-auth-input-label\">Current Password</label>\n <Password\n id=\"currentPassword\"\n name=\"currentPassword\"\n value={formik.values.currentPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.currentPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"currentPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.currentPassword?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\">\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">New Password</label>\n <Password\n id=\"newPassword\"\n name=\"newPassword\"\n value={formik.values.newPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.newPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"newPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.newPassword?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\">\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Confirm New Password</label>\n <Password\n id=\"confirmPassword\"\n name=\"confirmPassword\"\n value={formik.values.confirmPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggleMask\n invalid={!!formik.errors.confirmPassword}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"confirmPassword\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.confirmPassword?.toString()}\n />}\n </div>\n </div>\n </div>\n <SolidPasswordHelperText text={solidSettingsData?.data?.authenticationPasswordComplexityDescription} />\n </div>\n <div>\n <Button type='submit' size='small' label=\"Change Password\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </form>\n )\n}\n"]}
|
|
@@ -5,16 +5,16 @@ import { useSession } from "../../../../hooks/useSession";
|
|
|
5
5
|
import { Button } from 'primereact/button';
|
|
6
6
|
import { Message } from 'primereact/message';
|
|
7
7
|
import { Password } from 'primereact/password';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
8
|
+
import { useMemo } from 'react';
|
|
9
|
+
import { useDispatch } from 'react-redux';
|
|
10
|
+
import { showToast } from '../../../../redux/features/toastSlice';
|
|
10
11
|
import * as Yup from 'yup';
|
|
11
12
|
import { SolidPasswordHelperText } from '../SolidPasswordHelperText';
|
|
12
13
|
import { ERROR_MESSAGES } from '../../../../constants/error-messages';
|
|
13
14
|
import { env } from "../../../../adapters/env";
|
|
14
|
-
import showToast from "../../../../helpers/showToast";
|
|
15
15
|
|
|
16
16
|
export const SolidChangePassword = ({ solidSettingsData }: any) => {
|
|
17
|
-
const
|
|
17
|
+
const dispatch = useDispatch();
|
|
18
18
|
const [changePassword] = useChangePasswordMutation();
|
|
19
19
|
|
|
20
20
|
const session: any = useSession();
|
|
@@ -85,19 +85,19 @@ export const SolidChangePassword = ({ solidSettingsData }: any) => {
|
|
|
85
85
|
|
|
86
86
|
const response = await changePassword(payload).unwrap();
|
|
87
87
|
if (response?.error) {
|
|
88
|
-
showToast(
|
|
88
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.ERROR, detail: response.error }))
|
|
89
89
|
setErrors({
|
|
90
90
|
currentPassword: ERROR_MESSAGES.INCORRECT_CURRENT,
|
|
91
91
|
newPassword: ERROR_MESSAGES.MUST_MATCH,
|
|
92
92
|
confirmPassword: ERROR_MESSAGES.MUST_MATCH,
|
|
93
93
|
})
|
|
94
94
|
} else {
|
|
95
|
-
showToast(
|
|
96
|
-
handleLogout(
|
|
95
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.PASSWORD_CHANGE, detail: ERROR_MESSAGES.PASSWORD_CHANGE }));
|
|
96
|
+
handleLogout(null)
|
|
97
97
|
resetForm();
|
|
98
98
|
}
|
|
99
99
|
} catch (err: any) {
|
|
100
|
-
showToast(
|
|
100
|
+
dispatch(showToast({ severity: "error", summary: err?.data?.message, detail: err?.data?.data?.message ? err?.data?.data?.message : err?.data?.message }));
|
|
101
101
|
}
|
|
102
102
|
},
|
|
103
103
|
});
|
|
@@ -106,7 +106,6 @@ export const SolidChangePassword = ({ solidSettingsData }: any) => {
|
|
|
106
106
|
|
|
107
107
|
return (
|
|
108
108
|
<form onSubmit={formik.handleSubmit} className="h-full flex flex-column justify-content-between">
|
|
109
|
-
<Toast ref={toast} />
|
|
110
109
|
<div>
|
|
111
110
|
<div className='grid'>
|
|
112
111
|
<div className='col-12 md-col-8 lg:col-5'>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidNotifications.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidNotifications.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SolidNotifications.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidNotifications.tsx"],"names":[],"mappings":"AASA,eAAO,MAAM,kBAAkB,+CAqH9B,CAAA"}
|
|
@@ -40,16 +40,16 @@ import { useBulkUpdateSolidUserSettingsMutation, useGetSolidSettingsQuery } from
|
|
|
40
40
|
import { useFormik } from 'formik';
|
|
41
41
|
import { Button } from 'primereact/button';
|
|
42
42
|
import { InputSwitch } from 'primereact/inputswitch';
|
|
43
|
-
import {
|
|
44
|
-
import {
|
|
45
|
-
import showToast from
|
|
43
|
+
import { useEffect } from 'react';
|
|
44
|
+
import { useDispatch } from 'react-redux';
|
|
45
|
+
import { showToast } from '../../../../redux/features/toastSlice';
|
|
46
46
|
export var SolidNotifications = function () {
|
|
47
47
|
var _a, _b;
|
|
48
48
|
var _c = useGetSolidSettingsQuery(undefined), solidSettingsData = _c.data, isLoading = _c.isLoading, error = _c.error, refetch = _c.refetch;
|
|
49
49
|
useEffect(function () {
|
|
50
50
|
refetch();
|
|
51
51
|
}, []);
|
|
52
|
-
var
|
|
52
|
+
var dispatch = useDispatch();
|
|
53
53
|
var bulkUpdateSolidSettings = useBulkUpdateSolidUserSettingsMutation()[0];
|
|
54
54
|
var initialValues = {
|
|
55
55
|
enableNotification: (_b = (_a = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _a === void 0 ? void 0 : _a.enableNotification) !== null && _b !== void 0 ? _b : true
|
|
@@ -92,7 +92,7 @@ export var SolidNotifications = function () {
|
|
|
92
92
|
}
|
|
93
93
|
});
|
|
94
94
|
if (updatedSettingsArray_1.length === 0) {
|
|
95
|
-
showToast(
|
|
95
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.NO_CHANGE, detail: ERROR_MESSAGES.NO_SETTING_UPDATE }));
|
|
96
96
|
return [2 /*return*/];
|
|
97
97
|
}
|
|
98
98
|
// Append settings array to formData
|
|
@@ -101,19 +101,19 @@ export var SolidNotifications = function () {
|
|
|
101
101
|
case 1:
|
|
102
102
|
response = _b.sent();
|
|
103
103
|
if (response.statusCode === 200) {
|
|
104
|
-
showToast(
|
|
104
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.UPDATED, detail: ERROR_MESSAGES.SETTING_UPDATED }));
|
|
105
105
|
}
|
|
106
106
|
return [3 /*break*/, 3];
|
|
107
107
|
case 2:
|
|
108
108
|
error_1 = _b.sent();
|
|
109
|
-
showToast(
|
|
109
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.SOMETHING_WRONG }));
|
|
110
110
|
return [3 /*break*/, 3];
|
|
111
111
|
case 3: return [2 /*return*/];
|
|
112
112
|
}
|
|
113
113
|
});
|
|
114
114
|
}); },
|
|
115
115
|
});
|
|
116
|
-
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [_jsx(
|
|
116
|
+
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [_jsx("div", { children: _jsxs("div", { className: "flex align-items-start justify-content-between pb-3", children: [_jsxs("div", { children: [_jsx("label", { className: "form-field-label mb-2", children: "Enable Notification" }), _jsx("div", { style: { color: 'var(--solid-grey-500)' }, children: "Decide whether you want to be notified of new messages or updates." })] }), _jsx("div", { children: _jsx(InputSwitch, { name: "enableNotification", checked: formik.values.enableNotification, onChange: function (e) {
|
|
117
117
|
formik.setFieldValue("enableNotification", e.value);
|
|
118
118
|
// formik.submitForm();
|
|
119
119
|
} }) })] }) }), _jsx("div", { children: _jsx(Button, { type: 'submit', size: 'small', label: "Save", disabled: formik.isSubmitting, loading: formik.isSubmitting }) })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidNotifications.js","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidNotifications.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,sCAAsC,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAC1H,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,
|
|
1
|
+
{"version":3,"file":"SolidNotifications.js","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidNotifications.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,sCAAsC,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAC1H,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACxC,OAAO,EAAE,WAAW,EAAe,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAClE,MAAM,CAAC,IAAM,kBAAkB,GAAG;;IACxB,IAAA,KAKF,wBAAwB,CAAC,SAAS,CAAC,EAJ7B,iBAAiB,UAAA,EACvB,SAAS,eAAA,EACT,KAAK,WAAA,EACL,OAAO,aAC4B,CAAC;IAExC,SAAS,CAAC;QACN,OAAO,EAAE,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IACxB,IAAA,uBAAuB,GAAI,sCAAsC,EAAE,GAA5C,CAA6C;IAE3E,IAAM,aAAa,GAAG;QAClB,kBAAkB,EAAE,MAAA,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,kBAAkB,mCAAI,IAAI;KAC1E,CAAA;IAED,IAAM,MAAM,GAAG,SAAS,CAAC;QACrB,aAAa,EAAE,aAAa;QAC5B,kBAAkB,EAAE,IAAI;QACxB,QAAQ,EAAE,UAAO,MAAM;;;;;;;wBAET,yBAA4E,EAAE,CAAC;wBAC/E,oBAAkB,CAAA,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,0CAAE,IAAI,KAAI,EAAE,CAAC;wBAEtD,aAAW,IAAI,QAAQ,EAAE,CAAC;wBAEhC,yBAAyB;wBACzB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gCAAX,GAAG,QAAA,EAAE,KAAK,QAAA;4BACvC,IAAM,YAAY,GAAG,iBAAe,CAAC,GAAG,CAAC,CAAC;4BAE1C,IAAM,iBAAiB,GAAG,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE,CAAC;4BAC7C,IAAM,eAAe,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;4BAEpC,IAAI,iBAAiB,KAAK,eAAe,EAAE;gCACvC,IAAI,KAAK,YAAY,IAAI,EAAE;oCACvB,UAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oCAC5B,sBAAoB,CAAC,IAAI,CAAC;wCACtB,GAAG,KAAA;wCACH,KAAK,EAAE,EAAE;wCACT,IAAI,EAAE,MAAM;qCACf,CAAC,CAAC;iCACN;qCAAM;oCACH,sBAAoB,CAAC,IAAI,CAAC;wCACtB,GAAG,KAAA;wCACH,KAAK,EAAE,KAAK;wCACZ,IAAI,EAAE,MAAM;qCACf,CAAC,CAAC;iCACN;6BACJ;wBACL,CAAC,CAAC,CAAC;wBAEH,IAAI,sBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;4BACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;4BAC1H,sBAAO;yBACV;wBAED,oCAAoC;wBACpC,UAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,sBAAoB,CAAC,CAAC,CAAC;wBAGjD,qBAAM,uBAAuB,CAAC,EAAE,IAAI,EAAE,UAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,EAAA;;wBAArE,QAAQ,GAAG,SAA0D;wBAE3E,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;4BAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;yBACzH;;;;wBAGD,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;;;;;aAE1H;KACJ,CAAC,CAAA;IAGF,OAAO,CACH,gBAAM,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,EAAC,iDAAiD,aAC5F,wBACI,eAAK,SAAS,EAAC,qDAAqD,aAChE,0BACI,gBAAO,SAAS,EAAC,uBAAuB,oCAA4B,EACpE,cAAK,KAAK,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,mFAA0E,IACtH,EACN,wBACI,KAAC,WAAW,IACR,IAAI,EAAC,oBAAoB,EACzB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,kBAAkB,EACzC,QAAQ,EAAE,UAAC,CAAC;oCACR,MAAM,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oCACpD,uBAAuB;gCAC3B,CAAC,GACH,GACA,IACJ,GAiBJ,EACN,wBACI,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,YAAY,GAAI,GAC7G,IACH,CACV,CAAA;AACL,CAAC,CAAA","sourcesContent":["\nimport { ERROR_MESSAGES } from '../../../../constants/error-messages';\nimport { useBulkUpdateSolidUserSettingsMutation, useGetSolidSettingsQuery } from '../../../../redux/api/solidSettingsApi';\nimport { useFormik } from 'formik';\nimport { Button } from 'primereact/button';\nimport { InputSwitch } from 'primereact/inputswitch';\nimport React, { useEffect } from 'react'\nimport { useDispatch, useSelector } from 'react-redux';\nimport { showToast } from '../../../../redux/features/toastSlice';\nexport const SolidNotifications = () => {\n const {\n data: solidSettingsData,\n isLoading,\n error,\n refetch,\n } = useGetSolidSettingsQuery(undefined);\n\n useEffect(() => {\n refetch();\n }, []);\n\n const dispatch = useDispatch();\n const [bulkUpdateSolidSettings] = useBulkUpdateSolidUserSettingsMutation();\n\n const initialValues = {\n enableNotification: solidSettingsData?.data?.enableNotification ?? true\n }\n\n const formik = useFormik({\n initialValues: initialValues,\n enableReinitialize: true,\n onSubmit: async (values) => {\n try {\n const updatedSettingsArray: Array<{ key: string; value: string; type: string }> = [];\n const currentSettings = solidSettingsData?.data?.user || {};\n\n const formData = new FormData();\n\n // Compare changed fields\n Object.entries(values).forEach(([key, value]) => {\n const currentValue = currentSettings[key];\n\n const normalizedCurrent = currentValue ?? \"\";\n const normalizedValue = value ?? \"\";\n\n if (normalizedCurrent !== normalizedValue) {\n if (value instanceof File) {\n formData.append(key, value);\n updatedSettingsArray.push({\n key,\n value: \"\",\n type: \"user\",\n });\n } else {\n updatedSettingsArray.push({\n key,\n value: value,\n type: \"user\",\n });\n }\n }\n });\n\n if (updatedSettingsArray.length === 0) {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.NO_CHANGE, detail: ERROR_MESSAGES.NO_SETTING_UPDATE }));\n return;\n }\n\n // Append settings array to formData\n formData.append(\"settings\", JSON.stringify(updatedSettingsArray));\n\n // Call API\n const response = await bulkUpdateSolidSettings({ data: formData }).unwrap();\n\n if (response.statusCode === 200) {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.UPDATED, detail: ERROR_MESSAGES.SETTING_UPDATED }));\n }\n\n } catch (error) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.SOMETHING_WRONG }));\n }\n },\n })\n\n\n return (\n <form onSubmit={formik.handleSubmit} className=\"h-full flex flex-column justify-content-between\">\n <div>\n <div className=\"flex align-items-start justify-content-between pb-3\">\n <div>\n <label className=\"form-field-label mb-2\">Enable Notification</label>\n <div style={{ color: 'var(--solid-grey-500)' }}>Decide whether you want to be notified of new messages or updates.</div>\n </div>\n <div>\n <InputSwitch\n name=\"enableNotification\"\n checked={formik.values.enableNotification}\n onChange={(e) => {\n formik.setFieldValue(\"enableNotification\", e.value);\n // formik.submitForm();\n }}\n />\n </div>\n </div>\n {/* <div className=\"flex align-items-start justify-content-between pb-3 mt-3\" style={{ borderBottom: '1px dashed var(--primary-light-color)' }}>\n <div>\n <label className=\"form-field-label mb-2\">Enable Notification</label>\n <div style={{ color: 'var(--solid-grey-500)' }}>Decide whether you want to be notified of new messages or updates.</div>\n </div>\n <div>\n <InputSwitch\n name=\"enableNotification\"\n checked={formik.values.enableNotification}\n onChange={(e) => {\n formik.setFieldValue(\"enableNotification\", e.value);\n formik.submitForm();\n }}\n />\n </div>\n </div> */}\n </div>\n <div>\n <Button type='submit' size='small' label=\"Save\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </form>\n )\n}"]}
|
|
@@ -4,10 +4,9 @@ import { useBulkUpdateSolidUserSettingsMutation, useGetSolidSettingsQuery } from
|
|
|
4
4
|
import { useFormik } from 'formik';
|
|
5
5
|
import { Button } from 'primereact/button';
|
|
6
6
|
import { InputSwitch } from 'primereact/inputswitch';
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
import showToast from "../../../../helpers/showToast";
|
|
7
|
+
import React, { useEffect } from 'react'
|
|
8
|
+
import { useDispatch, useSelector } from 'react-redux';
|
|
9
|
+
import { showToast } from '../../../../redux/features/toastSlice';
|
|
11
10
|
export const SolidNotifications = () => {
|
|
12
11
|
const {
|
|
13
12
|
data: solidSettingsData,
|
|
@@ -20,7 +19,7 @@ export const SolidNotifications = () => {
|
|
|
20
19
|
refetch();
|
|
21
20
|
}, []);
|
|
22
21
|
|
|
23
|
-
const
|
|
22
|
+
const dispatch = useDispatch();
|
|
24
23
|
const [bulkUpdateSolidSettings] = useBulkUpdateSolidUserSettingsMutation();
|
|
25
24
|
|
|
26
25
|
const initialValues = {
|
|
@@ -63,7 +62,7 @@ export const SolidNotifications = () => {
|
|
|
63
62
|
});
|
|
64
63
|
|
|
65
64
|
if (updatedSettingsArray.length === 0) {
|
|
66
|
-
showToast(
|
|
65
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.NO_CHANGE, detail: ERROR_MESSAGES.NO_SETTING_UPDATE }));
|
|
67
66
|
return;
|
|
68
67
|
}
|
|
69
68
|
|
|
@@ -74,11 +73,11 @@ export const SolidNotifications = () => {
|
|
|
74
73
|
const response = await bulkUpdateSolidSettings({ data: formData }).unwrap();
|
|
75
74
|
|
|
76
75
|
if (response.statusCode === 200) {
|
|
77
|
-
showToast(
|
|
76
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.UPDATED, detail: ERROR_MESSAGES.SETTING_UPDATED }));
|
|
78
77
|
}
|
|
79
78
|
|
|
80
79
|
} catch (error) {
|
|
81
|
-
showToast(
|
|
80
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.SOMETHING_WRONG }));
|
|
82
81
|
}
|
|
83
82
|
},
|
|
84
83
|
})
|
|
@@ -86,7 +85,6 @@ export const SolidNotifications = () => {
|
|
|
86
85
|
|
|
87
86
|
return (
|
|
88
87
|
<form onSubmit={formik.handleSubmit} className="h-full flex flex-column justify-content-between">
|
|
89
|
-
<Toast ref={toast} />
|
|
90
88
|
<div>
|
|
91
89
|
<div className="flex align-items-start justify-content-between pb-3">
|
|
92
90
|
<div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidPersonalInfo.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx"],"names":[],"mappings":"AAiBA,eAAO,MAAM,iBAAiB,+
|
|
1
|
+
{"version":3,"file":"SolidPersonalInfo.d.ts","sourceRoot":"","sources":["../../../../../src/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx"],"names":[],"mappings":"AAiBA,eAAO,MAAM,iBAAiB,+CA6R7B,CAAA"}
|
|
@@ -43,16 +43,16 @@ import { Avatar } from "primereact/avatar";
|
|
|
43
43
|
import { Button } from "primereact/button";
|
|
44
44
|
import { Dialog } from "primereact/dialog";
|
|
45
45
|
import { InputText } from "primereact/inputtext";
|
|
46
|
-
import { Toast } from "primereact/toast";
|
|
47
46
|
import { useRef, useState } from "react";
|
|
47
|
+
import { useDispatch } from 'react-redux';
|
|
48
|
+
import { showToast } from '../../../../redux/features/toastSlice';
|
|
48
49
|
import styles from './SolidAccountSettings.module.css';
|
|
49
50
|
import { ERROR_MESSAGES } from "../../../../constants/error-messages";
|
|
50
|
-
import showToast from "../../../../helpers/showToast";
|
|
51
51
|
import { useSession } from '../../../../hooks/useSession';
|
|
52
52
|
export var SolidPersonalInfo = function () {
|
|
53
53
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
54
54
|
var fileInputRef = useRef(null);
|
|
55
|
-
var
|
|
55
|
+
var dispatch = useDispatch();
|
|
56
56
|
var _x = useState(null), previewImage = _x[0], setPreviewImage = _x[1];
|
|
57
57
|
var _y = useState(false), deleteDialogVisible = _y[0], setDeleteDialogVisible = _y[1];
|
|
58
58
|
var _z = useState(false), replaceDialogVisible = _z[0], setReplaceDialogVisible = _z[1];
|
|
@@ -84,25 +84,25 @@ export var SolidPersonalInfo = function () {
|
|
|
84
84
|
formData.append("profilePicture", values.profilePicture);
|
|
85
85
|
}
|
|
86
86
|
if (!formData.has("fullName") && !formData.has("profilePicture")) {
|
|
87
|
-
showToast(
|
|
87
|
+
dispatch(showToast({ severity: "info", summary: ERROR_MESSAGES.NO_CHANGE, detail: ERROR_MESSAGES.NO_UPDATE_MADE }));
|
|
88
88
|
return [2 /*return*/];
|
|
89
89
|
}
|
|
90
90
|
return [4 /*yield*/, updateUser({ data: formData }).unwrap()];
|
|
91
91
|
case 1:
|
|
92
92
|
response = _a.sent();
|
|
93
93
|
if ((response === null || response === void 0 ? void 0 : response.statusCode) === 200) {
|
|
94
|
-
showToast(
|
|
94
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.PROFILE_SAVED, detail: ERROR_MESSAGES.PROFILE_SAVED_SUCCESSFULLY }));
|
|
95
95
|
refetch();
|
|
96
96
|
formik.resetForm();
|
|
97
97
|
setPreviewImage(null);
|
|
98
98
|
}
|
|
99
99
|
else {
|
|
100
|
-
showToast(
|
|
100
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.FAILED_UPDATED_PROFILE }));
|
|
101
101
|
}
|
|
102
102
|
return [3 /*break*/, 3];
|
|
103
103
|
case 2:
|
|
104
104
|
error_1 = _a.sent();
|
|
105
|
-
showToast(
|
|
105
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.SOMETHING_WRONG }));
|
|
106
106
|
return [3 /*break*/, 3];
|
|
107
107
|
case 3: return [2 /*return*/];
|
|
108
108
|
}
|
|
@@ -175,7 +175,7 @@ export var SolidPersonalInfo = function () {
|
|
|
175
175
|
return [3 /*break*/, 5];
|
|
176
176
|
case 4:
|
|
177
177
|
error_2 = _d.sent();
|
|
178
|
-
showToast(
|
|
178
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.FAILED, detail: ERROR_MESSAGES.FAILED_DELETED_IMAGE }));
|
|
179
179
|
return [3 /*break*/, 5];
|
|
180
180
|
case 5:
|
|
181
181
|
setReplaceDialogVisible(false);
|
|
@@ -198,12 +198,12 @@ export var SolidPersonalInfo = function () {
|
|
|
198
198
|
return [4 /*yield*/, deleteMedia(existing.id).unwrap()];
|
|
199
199
|
case 2:
|
|
200
200
|
_e.sent();
|
|
201
|
-
showToast(
|
|
201
|
+
dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.DELETED, detail: ERROR_MESSAGES.PROFILE_PICTURE_REMOVE }));
|
|
202
202
|
refetch();
|
|
203
203
|
return [3 /*break*/, 4];
|
|
204
204
|
case 3:
|
|
205
205
|
_a = _e.sent();
|
|
206
|
-
showToast(
|
|
206
|
+
dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.ERROR, detail: ERROR_MESSAGES.FAILED_DELETED_IMAGE }));
|
|
207
207
|
return [3 /*break*/, 4];
|
|
208
208
|
case 4:
|
|
209
209
|
formik.setFieldValue("profilePicture", null);
|
|
@@ -213,7 +213,7 @@ export var SolidPersonalInfo = function () {
|
|
|
213
213
|
}
|
|
214
214
|
});
|
|
215
215
|
}); };
|
|
216
|
-
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [
|
|
216
|
+
return (_jsxs("form", { onSubmit: formik.handleSubmit, className: "h-full flex flex-column justify-content-between", children: [_jsxs("div", { children: [_jsxs("div", { children: [_jsx("label", { className: "form-field-label mb-2 font-bold", children: "Profile Picture" }), _jsxs("div", { className: "flex align-items-center gap-3", children: [previewImage ? (_jsx(Avatar, { image: previewImage, shape: "circle", style: {
|
|
217
217
|
height: '5rem',
|
|
218
218
|
width: '5rem'
|
|
219
219
|
} })) : ((_l = (_k = (_j = (_h = userData === null || userData === void 0 ? void 0 : userData.data) === null || _h === void 0 ? void 0 : _h._media) === null || _j === void 0 ? void 0 : _j.profilePicture) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l._full_url) ? (_jsxs("div", { className: "relative", children: [_jsx(Avatar, { image: (_q = (_p = (_o = (_m = userData === null || userData === void 0 ? void 0 : userData.data) === null || _m === void 0 ? void 0 : _m._media) === null || _o === void 0 ? void 0 : _o.profilePicture) === null || _p === void 0 ? void 0 : _p[0]) === null || _q === void 0 ? void 0 : _q._full_url, shape: "circle", style: {
|