@solidxai/core-ui 0.1.5-beta.11 → 0.1.5-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/dist/components/auth/GoogleAuthChecking.d.ts.map +1 -1
  2. package/dist/components/auth/GoogleAuthChecking.js +10 -10
  3. package/dist/components/auth/GoogleAuthChecking.js.map +1 -1
  4. package/dist/components/auth/GoogleAuthChecking.tsx +8 -9
  5. package/dist/components/auth/SolidChangeForcePassword.d.ts.map +1 -1
  6. package/dist/components/auth/SolidChangeForcePassword.js +9 -10
  7. package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
  8. package/dist/components/auth/SolidChangeForcePassword.tsx +6 -9
  9. package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
  10. package/dist/components/auth/SolidForgotPassword.js +8 -8
  11. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  12. package/dist/components/auth/SolidForgotPassword.tsx +6 -8
  13. package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
  14. package/dist/components/auth/SolidInitialLoginOtp.js +57 -57
  15. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  16. package/dist/components/auth/SolidInitialLoginOtp.tsx +10 -11
  17. package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
  18. package/dist/components/auth/SolidInitiateRegisterOtp.js +57 -57
  19. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  20. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +10 -11
  21. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  22. package/dist/components/auth/SolidLogin.js +12 -12
  23. package/dist/components/auth/SolidLogin.js.map +1 -1
  24. package/dist/components/auth/SolidLogin.tsx +11 -16
  25. package/dist/components/auth/SolidRegister.d.ts.map +1 -1
  26. package/dist/components/auth/SolidRegister.js +19 -19
  27. package/dist/components/auth/SolidRegister.js.map +1 -1
  28. package/dist/components/auth/SolidRegister.tsx +18 -23
  29. package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
  30. package/dist/components/auth/SolidResetPassword.js +15 -15
  31. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  32. package/dist/components/auth/SolidResetPassword.tsx +7 -8
  33. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  34. package/dist/components/common/GeneralSettings.js +87 -120
  35. package/dist/components/common/GeneralSettings.js.map +1 -1
  36. package/dist/components/common/GeneralSettings.tsx +12 -42
  37. package/dist/components/common/GlobalToast.d.ts +2 -0
  38. package/dist/components/common/GlobalToast.d.ts.map +1 -0
  39. package/dist/components/common/GlobalToast.js +25 -0
  40. package/dist/components/common/GlobalToast.js.map +1 -0
  41. package/dist/components/common/GlobalToast.tsx +25 -0
  42. package/dist/components/common/SolidExport.d.ts.map +1 -1
  43. package/dist/components/common/SolidExport.js +19 -31
  44. package/dist/components/common/SolidExport.js.map +1 -1
  45. package/dist/components/common/SolidExport.tsx +7 -19
  46. package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
  47. package/dist/components/common/SolidFormStepper.js +41 -41
  48. package/dist/components/common/SolidFormStepper.js.map +1 -1
  49. package/dist/components/common/SolidFormStepper.tsx +5 -6
  50. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.d.ts.map +1 -1
  51. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js +9 -9
  52. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.js.map +1 -1
  53. package/dist/components/core/common/SolidAccountSettings/SolidChangePassword.tsx +8 -9
  54. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  55. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +8 -8
  56. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  57. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +7 -9
  58. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.d.ts.map +1 -1
  59. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js +11 -11
  60. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.js.map +1 -1
  61. package/dist/components/core/common/SolidAccountSettings/SolidPersonalInfo.tsx +10 -11
  62. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.d.ts.map +1 -1
  63. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +9 -9
  64. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
  65. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +8 -9
  66. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
  67. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +7 -7
  68. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
  69. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +6 -7
  70. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  71. package/dist/components/core/common/SolidGlobalSearchElement.js +78 -21
  72. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  73. package/dist/components/core/common/SolidGlobalSearchElement.tsx +65 -10
  74. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.d.ts.map +1 -1
  75. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js +6 -8
  76. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.js.map +1 -1
  77. package/dist/components/core/extension/solid-core/modelMetadata/list/DeleteModelRowAction.tsx +5 -9
  78. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.d.ts.map +1 -1
  79. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js +9 -11
  80. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.js.map +1 -1
  81. package/dist/components/core/extension/solid-core/modelMetadata/list/GenerateModelCodeRowAction.tsx +5 -10
  82. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.d.ts.map +1 -1
  83. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js +5 -6
  84. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.js.map +1 -1
  85. package/dist/components/core/extension/solid-core/moduleMetadata/list/DeleteModuleRowAction.tsx +5 -8
  86. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.d.ts.map +1 -1
  87. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js +10 -12
  88. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.js.map +1 -1
  89. package/dist/components/core/extension/solid-core/moduleMetadata/list/GenerateModuleCodeRowAction.tsx +6 -11
  90. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.d.ts.map +1 -1
  91. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +11 -6
  92. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
  93. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +13 -1
  94. package/dist/components/core/form/SolidFormUserViewLayout.d.ts.map +1 -1
  95. package/dist/components/core/form/SolidFormUserViewLayout.js +7 -8
  96. package/dist/components/core/form/SolidFormUserViewLayout.js.map +1 -1
  97. package/dist/components/core/form/SolidFormUserViewLayout.tsx +5 -7
  98. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  99. package/dist/components/core/form/SolidFormView.js +12 -21
  100. package/dist/components/core/form/SolidFormView.js.map +1 -1
  101. package/dist/components/core/form/SolidFormView.tsx +11 -33
  102. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  103. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +37 -26
  104. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  105. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +38 -5
  106. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.d.ts.map +1 -1
  107. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +11 -11
  108. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  109. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +9 -11
  110. package/dist/components/core/kanban/KanbanUserViewLayout.d.ts.map +1 -1
  111. package/dist/components/core/kanban/KanbanUserViewLayout.js +7 -8
  112. package/dist/components/core/kanban/KanbanUserViewLayout.js.map +1 -1
  113. package/dist/components/core/kanban/KanbanUserViewLayout.tsx +4 -6
  114. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  115. package/dist/components/core/kanban/SolidKanbanView.js +5 -7
  116. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  117. package/dist/components/core/kanban/SolidKanbanView.tsx +4 -9
  118. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.d.ts.map +1 -1
  119. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +13 -13
  120. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
  121. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +5 -6
  122. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  123. package/dist/components/core/list/SolidListView.js +20 -67
  124. package/dist/components/core/list/SolidListView.js.map +1 -1
  125. package/dist/components/core/list/SolidListView.tsx +9 -76
  126. package/dist/components/core/model/CreateModel.d.ts.map +1 -1
  127. package/dist/components/core/model/CreateModel.js +15 -25
  128. package/dist/components/core/model/CreateModel.js.map +1 -1
  129. package/dist/components/core/model/CreateModel.tsx +12 -32
  130. package/dist/components/core/model/FieldMetaData.d.ts.map +1 -1
  131. package/dist/components/core/model/FieldMetaData.js +6 -17
  132. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  133. package/dist/components/core/model/FieldMetaData.tsx +5 -26
  134. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  135. package/dist/components/core/model/ModelMetaData.js +48 -55
  136. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  137. package/dist/components/core/model/ModelMetaData.tsx +4 -22
  138. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  139. package/dist/components/core/module/CreateModule.js +42 -44
  140. package/dist/components/core/module/CreateModule.js.map +1 -1
  141. package/dist/components/core/module/CreateModule.tsx +13 -27
  142. package/dist/components/core/module/ModuleListViewData.d.ts.map +1 -1
  143. package/dist/components/core/module/ModuleListViewData.js +11 -7
  144. package/dist/components/core/module/ModuleListViewData.js.map +1 -1
  145. package/dist/components/core/module/ModuleListViewData.tsx +10 -8
  146. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  147. package/dist/components/core/tree/SolidTreeView.js +32 -69
  148. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  149. package/dist/components/core/tree/SolidTreeView.tsx +8 -47
  150. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  151. package/dist/components/core/users/CreateUser.js +24 -37
  152. package/dist/components/core/users/CreateUser.js.map +1 -1
  153. package/dist/components/core/users/CreateUser.tsx +8 -46
  154. package/dist/components/core/users/UserListView.d.ts.map +1 -1
  155. package/dist/components/core/users/UserListView.js +9 -16
  156. package/dist/components/core/users/UserListView.js.map +1 -1
  157. package/dist/components/core/users/UserListView.tsx +5 -21
  158. package/dist/components/layout/AdminLayout.d.ts.map +1 -1
  159. package/dist/components/layout/AdminLayout.js +4 -2
  160. package/dist/components/layout/AdminLayout.js.map +1 -1
  161. package/dist/components/layout/AdminLayout.tsx +4 -2
  162. package/dist/components/layout/AppSidebar.d.ts.map +1 -1
  163. package/dist/components/layout/AppSidebar.js +1 -2
  164. package/dist/components/layout/AppSidebar.js.map +1 -1
  165. package/dist/components/layout/AppSidebar.tsx +0 -2
  166. package/dist/components/layout/Layout.d.ts.map +1 -1
  167. package/dist/components/layout/Layout.js +2 -1
  168. package/dist/components/layout/Layout.js.map +1 -1
  169. package/dist/components/layout/Layout.tsx +2 -0
  170. package/dist/components/layout/navbar-one.d.ts.map +1 -1
  171. package/dist/components/layout/navbar-one.js +1 -2
  172. package/dist/components/layout/navbar-one.js.map +1 -1
  173. package/dist/components/layout/navbar-one.tsx +0 -2
  174. package/dist/components/layout/navbar-two-menu.d.ts.map +1 -1
  175. package/dist/components/layout/navbar-two-menu.js +50 -24
  176. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  177. package/dist/components/layout/navbar-two-menu.tsx +48 -30
  178. package/dist/index.d.ts +4 -0
  179. package/dist/index.d.ts.map +1 -1
  180. package/dist/index.js +3 -0
  181. package/dist/index.js.map +1 -1
  182. package/dist/index.ts +4 -0
  183. package/dist/redux/features/toastSlice.d.ts +15 -0
  184. package/dist/redux/features/toastSlice.d.ts.map +1 -0
  185. package/dist/redux/features/toastSlice.js +20 -0
  186. package/dist/redux/features/toastSlice.js.map +1 -0
  187. package/dist/redux/features/toastSlice.ts +35 -0
  188. package/dist/redux/store/defaultStoreConfig.d.ts +1 -0
  189. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  190. package/dist/redux/store/defaultStoreConfig.js +2 -1
  191. package/dist/redux/store/defaultStoreConfig.js.map +1 -1
  192. package/dist/redux/store/defaultStoreConfig.ts +2 -0
  193. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SolidInitiateRegisterOtp.js","sourceRoot":"","sources":["../../../src/components/auth/SolidInitiateRegisterOtp.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useConfirmOtpRegisterMutation, useInitateRegisterMutation } from \"../../redux/api/authApi\";\nimport { Form, Formik } from \"formik\";\nimport Image from \"../common/Image\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { Button } from \"primereact/button\";\nimport { InputOtp } from \"primereact/inputotp\";\nimport { Message } from \"primereact/message\";\nimport { Toast } from \"primereact/toast\";\nimport { useEffect, useRef, useState } from \"react\";\nimport * as Yup from \"yup\";\nimport SolidLogo from '../../resources/images/SolidXLogo.svg'\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { useLazyGetAuthSettingsQuery } from \"../../redux/api/solidSettingsApi\";\nimport { env } from \"../../adapters/env\";\nimport showToast from \"../../helpers/showToast\";\n\nconst SolidInitiateRegisterOtp = () => {\n const searchParams = useSearchParams();\n const tempEmail = searchParams.get('email');\n const email = tempEmail ? decodeURIComponent(tempEmail) : '';\n const RESEND_OTP_KEY = `resendOtpRegister_${email}`;\n const RESEND_OTP_TIMER_MIN = parseFloat(env(\"NEXT_PUBLIC_RESEND_OTP_TIMER\") || '0.5');\n const RESEND_OTP_TIMER = Math.round(RESEND_OTP_TIMER_MIN * 60);\n const username = searchParams.get('username') || '';\n const [trigger, { data: solidSettingsData }] = useLazyGetAuthSettingsQuery();\n useEffect(() => {\n trigger(\"\") // Fetch settings on mount\n }, [trigger])\n\n\n const [initiateResendOTP] = useInitateRegisterMutation();\n const [initiateOtpRegister] = useConfirmOtpRegisterMutation();\n const toast = useRef<Toast>(null);\n const router = useRouter();\n const [timeLeft, setTimeLeft] = useState(RESEND_OTP_TIMER);\n const [resendEnabled, setResendEnabled] = useState(false);\n\n useEffect(() => {\n\n // Set timer if not already set (e.g., after login)\n const storedTime = localStorage.getItem(RESEND_OTP_KEY);\n if (!storedTime) {\n localStorage.setItem(RESEND_OTP_KEY, Date.now().toString());\n }\n\n const lastSent = storedTime ? parseInt(storedTime, 10) : Date.now();\n const elapsed = Math.floor((Date.now() - lastSent) / 1000);\n const remaining = RESEND_OTP_TIMER - elapsed;\n\n if (remaining > 0) {\n setTimeLeft(remaining);\n setResendEnabled(false);\n } else {\n setTimeLeft(0);\n setResendEnabled(true);\n }\n }, [email]);\n\n useEffect(() => {\n if (resendEnabled || timeLeft <= 0) return;\n\n const interval = setInterval(() => {\n setTimeLeft((prev) => {\n if (prev <= 1) {\n clearInterval(interval);\n setResendEnabled(true);\n return 0;\n }\n return prev - 1;\n });\n }, 1000);\n\n return () => clearInterval(interval);\n }, [resendEnabled, timeLeft]);\n\n const validationSchema = Yup.object({\n otp: Yup.string()\n .matches(/^\\d{6}$/, ERROR_MESSAGES.OTP_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('OTP')),\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const handleResendOtp = async () => {\n try {\n const payload = {\n username: username,\n email: email,\n validationSources: [\"email\"]\n };\n\n const response = await initiateResendOTP(payload).unwrap();\n\n if (response?.statusCode === 200) {\n showToast(toast, \"success\", ERROR_MESSAGES.OPT_RESEND, response?.data?.message);\n localStorage.setItem(RESEND_OTP_KEY, Date.now().toString());\n setTimeLeft(RESEND_OTP_TIMER);\n setResendEnabled(false);\n } else {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, response.error);\n }\n } catch (err: any) {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, err?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG);\n }\n };\n\n return (\n <>\n <Toast ref={toast} />\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`} style={{ minWidth: 480 }}>\n {solidSettingsData?.data?.authPagesLayout === 'center' &&\n <div className=\"flex justify-content-center\">\n <div className={`solid-logo flex align-items-center ${solidSettingsData?.data?.appLogoPosition}`}>\n <Image\n alt=\"solid logo\"\n src={solidSettingsData?.data?.appLogo || SolidLogo}\n className=\"relative\"\n fill\n />\n </div>\n </div>\n }\n <h2 className={`solid-auth-title ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'text-center' : 'text-left'}`}>OTP Verification</h2>\n <p className=\"solid-auth-subtitle text-sm\">\n Please enter the OTP sent to your email to complete verification\n </p>\n <>\n <Formik\n initialValues={{\n otp: \"\",\n }}\n validationSchema={validationSchema}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const payload = {\n type: \"email\",\n identifier: email,\n otp: values.otp\n };\n\n const response = await initiateOtpRegister(payload).unwrap(); // Call mutation trigger\n\n if (response?.statusCode === 200) {\n localStorage.removeItem(`resendOtpRegister_${email}`);\n showToast(toast, \"success\", ERROR_MESSAGES.LOGIN_SUCCESSFULLY, \"Login\");\n router.push(`/auth/login`);\n } else {\n showToast(toast, \"error\", ERROR_MESSAGES.INAVLID_OTP, response.error);\n setErrors({\n otp: ERROR_MESSAGES.INAVLID_OTP,\n });\n }\n } catch (err: any) {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);\n } finally {\n setSubmitting(false);\n }\n }}\n >\n {(formik) => (\n <Form>\n <div className=\"flex flex-column gap-2\">\n <label htmlFor=\"otp\" className=\"solid-auth-input-label\">Enter OTP</label>\n <InputOtp\n value={formik.values.otp}\n onChange={(e) => formik.setFieldValue(\"otp\", e.value)}\n length={6}\n style={{ width: '100%' }}\n invalid={!!formik.errors.otp}\n />\n {isFormFieldValid(formik, \"otp\") && (\n <Message className=\"text-red-500 text-sm\" severity=\"error\" text={formik.errors.otp?.toString()} />\n )}\n <div className=\"flex align-items-center justify-content-between\">\n <Button type=\"button\" icon='pi pi-refresh' iconPos=\"left\" link label=\"Resend Code\" className=\"px-0 text-sm font-normal\"\n onClick={handleResendOtp}\n disabled={!resendEnabled}\n />\n <p className=\"m-0 text-sm text-color\">\n {resendEnabled\n ? \"You can resend now\"\n : `Time left: ${Math.floor(timeLeft / 60)\n .toString()\n .padStart(2, \"0\")}:${(timeLeft % 60).toString().padStart(2, \"0\")}`}\n </p>\n </div>\n </div>\n <div className=\"mt-4\">\n <Button type=\"submit\" className=\"w-full font-light auth-submit-button\" label=\"Verify\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n <Button type=\"button\" label=\"Back\" className=\"w-full auth-back-button text-center mt-1\" link onClick={() => (window.location.href = '/auth/login')} />\n </div>\n </Form>\n )}\n </Formik>\n </>\n </div>\n {/* <div className=\"text-center mt-5\">\n <div className=\"text-sm text-400 secondary-dark-color\">\n {'<'} Back to <Link className=\"font-bold\" href=\"/auth/login\">Sign In</Link>\n </div>\n </div> */}\n </>\n );\n};\n\nexport default SolidInitiateRegisterOtp;\n"]}
1
+ {"version":3,"file":"SolidInitiateRegisterOtp.js","sourceRoot":"","sources":["../../../src/components/auth/SolidInitiateRegisterOtp.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useConfirmOtpRegisterMutation, useInitateRegisterMutation } from \"../../redux/api/authApi\";\nimport { Form, Formik } from \"formik\";\nimport Image from \"../common/Image\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { Button } from \"primereact/button\";\nimport { InputOtp } from \"primereact/inputotp\";\nimport { Message } from \"primereact/message\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from \"yup\";\nimport SolidLogo from '../../resources/images/SolidXLogo.svg'\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { useLazyGetAuthSettingsQuery } from \"../../redux/api/solidSettingsApi\";\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\n\nconst SolidInitiateRegisterOtp = () => {\n const searchParams = useSearchParams();\n const tempEmail = searchParams.get('email');\n const email = tempEmail ? decodeURIComponent(tempEmail) : '';\n const RESEND_OTP_KEY = `resendOtpRegister_${email}`;\n const RESEND_OTP_TIMER_MIN = parseFloat(env(\"NEXT_PUBLIC_RESEND_OTP_TIMER\") || '0.5');\n const RESEND_OTP_TIMER = Math.round(RESEND_OTP_TIMER_MIN * 60);\n const username = searchParams.get('username') || '';\n const [trigger, { data: solidSettingsData }] = useLazyGetAuthSettingsQuery();\n useEffect(() => {\n trigger(\"\") // Fetch settings on mount\n }, [trigger])\n\n\n const [initiateResendOTP] = useInitateRegisterMutation();\n const [initiateOtpRegister] = useConfirmOtpRegisterMutation();\n const dispatch = useDispatch();\n const router = useRouter();\n const [timeLeft, setTimeLeft] = useState(RESEND_OTP_TIMER);\n const [resendEnabled, setResendEnabled] = useState(false);\n\n useEffect(() => {\n\n // Set timer if not already set (e.g., after login)\n const storedTime = localStorage.getItem(RESEND_OTP_KEY);\n if (!storedTime) {\n localStorage.setItem(RESEND_OTP_KEY, Date.now().toString());\n }\n\n const lastSent = storedTime ? parseInt(storedTime, 10) : Date.now();\n const elapsed = Math.floor((Date.now() - lastSent) / 1000);\n const remaining = RESEND_OTP_TIMER - elapsed;\n\n if (remaining > 0) {\n setTimeLeft(remaining);\n setResendEnabled(false);\n } else {\n setTimeLeft(0);\n setResendEnabled(true);\n }\n }, [email]);\n\n useEffect(() => {\n if (resendEnabled || timeLeft <= 0) return;\n\n const interval = setInterval(() => {\n setTimeLeft((prev) => {\n if (prev <= 1) {\n clearInterval(interval);\n setResendEnabled(true);\n return 0;\n }\n return prev - 1;\n });\n }, 1000);\n\n return () => clearInterval(interval);\n }, [resendEnabled, timeLeft]);\n\n const validationSchema = Yup.object({\n otp: Yup.string()\n .matches(/^\\d{6}$/, ERROR_MESSAGES.OTP_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('OTP')),\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const handleResendOtp = async () => {\n try {\n const payload = {\n username: username,\n email: email,\n validationSources: [\"email\"]\n };\n\n const response = await initiateResendOTP(payload).unwrap();\n\n if (response?.statusCode === 200) {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.OPT_RESEND, detail: response?.data?.message }));\n localStorage.setItem(RESEND_OTP_KEY, Date.now().toString());\n setTimeLeft(RESEND_OTP_TIMER);\n setResendEnabled(false);\n } else {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG }));\n }\n };\n\n return (\n <>\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`} style={{ minWidth: 480 }}>\n {solidSettingsData?.data?.authPagesLayout === 'center' &&\n <div className=\"flex justify-content-center\">\n <div className={`solid-logo flex align-items-center ${solidSettingsData?.data?.appLogoPosition}`}>\n <Image\n alt=\"solid logo\"\n src={solidSettingsData?.data?.appLogo || SolidLogo}\n className=\"relative\"\n fill\n />\n </div>\n </div>\n }\n <h2 className={`solid-auth-title ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'text-center' : 'text-left'}`}>OTP Verification</h2>\n <p className=\"solid-auth-subtitle text-sm\">\n Please enter the OTP sent to your email to complete verification\n </p>\n <>\n <Formik\n initialValues={{\n otp: \"\",\n }}\n validationSchema={validationSchema}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const payload = {\n type: \"email\",\n identifier: email,\n otp: values.otp\n };\n\n const response = await initiateOtpRegister(payload).unwrap(); // Call mutation trigger\n\n if (response?.statusCode === 200) {\n localStorage.removeItem(`resendOtpRegister_${email}`);\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.LOGIN_SUCCESSFULLY, detail: \"Login\" }));\n router.push(`/auth/login`);\n } else {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.INAVLID_OTP, detail: response.error }));\n setErrors({\n otp: ERROR_MESSAGES.INAVLID_OTP,\n });\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));\n } finally {\n setSubmitting(false);\n }\n }}\n >\n {(formik) => (\n <Form>\n <div className=\"flex flex-column gap-2\">\n <label htmlFor=\"otp\" className=\"solid-auth-input-label\">Enter OTP</label>\n <InputOtp\n value={formik.values.otp}\n onChange={(e) => formik.setFieldValue(\"otp\", e.value)}\n length={6}\n style={{ width: '100%' }}\n invalid={!!formik.errors.otp}\n />\n {isFormFieldValid(formik, \"otp\") && (\n <Message className=\"text-red-500 text-sm\" severity=\"error\" text={formik.errors.otp?.toString()} />\n )}\n <div className=\"flex align-items-center justify-content-between\">\n <Button type=\"button\" icon='pi pi-refresh' iconPos=\"left\" link label=\"Resend Code\" className=\"px-0 text-sm font-normal\"\n onClick={handleResendOtp}\n disabled={!resendEnabled}\n />\n <p className=\"m-0 text-sm text-color\">\n {resendEnabled\n ? \"You can resend now\"\n : `Time left: ${Math.floor(timeLeft / 60)\n .toString()\n .padStart(2, \"0\")}:${(timeLeft % 60).toString().padStart(2, \"0\")}`}\n </p>\n </div>\n </div>\n <div className=\"mt-4\">\n <Button type=\"submit\" className=\"w-full font-light auth-submit-button\" label=\"Verify\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n <Button type=\"button\" label=\"Back\" className=\"w-full auth-back-button text-center mt-1\" link onClick={() => (window.location.href = '/auth/login')} />\n </div>\n </Form>\n )}\n </Formik>\n </>\n </div>\n {/* <div className=\"text-center mt-5\">\n <div className=\"text-sm text-400 secondary-dark-color\">\n {'<'} Back to <Link className=\"font-bold\" href=\"/auth/login\">Sign In</Link>\n </div>\n </div> */}\n </>\n );\n};\n\nexport default SolidInitiateRegisterOtp;\n"]}
@@ -6,14 +6,14 @@ import { useSearchParams } from "../../hooks/useSearchParams";
6
6
  import { Button } from "primereact/button";
7
7
  import { InputOtp } from "primereact/inputotp";
8
8
  import { Message } from "primereact/message";
9
- import { Toast } from "primereact/toast";
10
- import { useEffect, useRef, useState } from "react";
9
+ import { useEffect, useState } from "react";
10
+ import { useDispatch } from 'react-redux';
11
11
  import * as Yup from "yup";
12
12
  import SolidLogo from '../../resources/images/SolidXLogo.svg'
13
13
  import { ERROR_MESSAGES } from "../../constants/error-messages";
14
14
  import { useLazyGetAuthSettingsQuery } from "../../redux/api/solidSettingsApi";
15
15
  import { env } from "../../adapters/env";
16
- import showToast from "../../helpers/showToast";
16
+ import { showToast } from "../../redux/features/toastSlice";
17
17
 
18
18
  const SolidInitiateRegisterOtp = () => {
19
19
  const searchParams = useSearchParams();
@@ -31,7 +31,7 @@ const SolidInitiateRegisterOtp = () => {
31
31
 
32
32
  const [initiateResendOTP] = useInitateRegisterMutation();
33
33
  const [initiateOtpRegister] = useConfirmOtpRegisterMutation();
34
- const toast = useRef<Toast>(null);
34
+ const dispatch = useDispatch();
35
35
  const router = useRouter();
36
36
  const [timeLeft, setTimeLeft] = useState(RESEND_OTP_TIMER);
37
37
  const [resendEnabled, setResendEnabled] = useState(false);
@@ -94,21 +94,20 @@ const SolidInitiateRegisterOtp = () => {
94
94
  const response = await initiateResendOTP(payload).unwrap();
95
95
 
96
96
  if (response?.statusCode === 200) {
97
- showToast(toast, "success", ERROR_MESSAGES.OPT_RESEND, response?.data?.message);
97
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.OPT_RESEND, detail: response?.data?.message }));
98
98
  localStorage.setItem(RESEND_OTP_KEY, Date.now().toString());
99
99
  setTimeLeft(RESEND_OTP_TIMER);
100
100
  setResendEnabled(false);
101
101
  } else {
102
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, response.error);
102
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));
103
103
  }
104
104
  } catch (err: any) {
105
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, err?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG);
105
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data?.message || ERROR_MESSAGES.SOMETHING_WRONG }));
106
106
  }
107
107
  };
108
108
 
109
109
  return (
110
110
  <>
111
- <Toast ref={toast} />
112
111
  <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`} style={{ minWidth: 480 }}>
113
112
  {solidSettingsData?.data?.authPagesLayout === 'center' &&
114
113
  <div className="flex justify-content-center">
@@ -144,16 +143,16 @@ const SolidInitiateRegisterOtp = () => {
144
143
 
145
144
  if (response?.statusCode === 200) {
146
145
  localStorage.removeItem(`resendOtpRegister_${email}`);
147
- showToast(toast, "success", ERROR_MESSAGES.LOGIN_SUCCESSFULLY, "Login");
146
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.LOGIN_SUCCESSFULLY, detail: "Login" }));
148
147
  router.push(`/auth/login`);
149
148
  } else {
150
- showToast(toast, "error", ERROR_MESSAGES.INAVLID_OTP, response.error);
149
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.INAVLID_OTP, detail: response.error }));
151
150
  setErrors({
152
151
  otp: ERROR_MESSAGES.INAVLID_OTP,
153
152
  });
154
153
  }
155
154
  } catch (err: any) {
156
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);
155
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));
157
156
  } finally {
158
157
  setSubmitting(false);
159
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SolidLogin.d.ts","sourceRoot":"","sources":["../../../src/components/auth/SolidLogin.tsx"],"names":[],"mappings":"AA4BA,QAAA,MAAM,UAAU,yDAA0D,GAAG,4CAqY5E,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"SolidLogin.d.ts","sourceRoot":"","sources":["../../../src/components/auth/SolidLogin.tsx"],"names":[],"mappings":"AA4BA,QAAA,MAAM,UAAU,yDAA0D,GAAG,4CAgY5E,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -45,8 +45,8 @@ import { InputText } from "primereact/inputtext";
45
45
  import { Message } from "primereact/message";
46
46
  import { Password } from "primereact/password";
47
47
  import { TabPanel, TabView } from 'primereact/tabview';
48
- import { Toast } from "primereact/toast";
49
- import { useEffect, useRef, useState } from "react";
48
+ import { useEffect, useState } from "react";
49
+ import { useDispatch } from 'react-redux';
50
50
  import * as Yup from "yup";
51
51
  import { SocialMediaLogin } from "../common/SocialMediaLogin";
52
52
  import { useInitateLoginMutation } from "../../redux/api/authApi";
@@ -57,7 +57,7 @@ import { ERROR_MESSAGES } from "../../constants/error-messages";
57
57
  import { RadioButton } from "primereact/radiobutton";
58
58
  import { useLazyGetAuthSettingsQuery } from "../../redux/api/solidSettingsApi";
59
59
  import { env } from "../../adapters/env";
60
- import showToast from "../../helpers/showToast";
60
+ import { showToast } from "../../redux/features/toastSlice";
61
61
  var SolidLogin = function (_a) {
62
62
  var _b, _c, _d, _e, _f, _g, _h, _j, _k;
63
63
  var signInValidatorLabel = _a.signInValidatorLabel, signInValidatorPlaceholder = _a.signInValidatorPlaceholder;
@@ -70,7 +70,7 @@ var SolidLogin = function (_a) {
70
70
  useEffect(function () {
71
71
  sessionStorage.removeItem("app-mounted");
72
72
  }, []);
73
- var toast = useRef(null);
73
+ var dispatch = useDispatch();
74
74
  var router = useRouter();
75
75
  var isFormFieldValid = function (formik, fieldName) {
76
76
  return formik.touched[fieldName] && formik.errors[fieldName];
@@ -109,21 +109,21 @@ var SolidLogin = function (_a) {
109
109
  case 1:
110
110
  response = _c.sent();
111
111
  if (response === null || response === void 0 ? void 0 : response.error) {
112
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, response.error);
112
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));
113
113
  setErrors({
114
114
  identifier: ERROR_MESSAGES.INVALID_CREDENTIALS,
115
115
  password: ERROR_MESSAGES.INVALID_CREDENTIALS,
116
116
  });
117
117
  }
118
118
  else {
119
- showToast(toast, "success", ERROR_MESSAGES.LOGIN_SUCCESS, ERROR_MESSAGES.DASHBOARD_REDIRECTING);
119
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.LOGIN_SUCCESS, detail: ERROR_MESSAGES.DASHBOARD_REDIRECTING }));
120
120
  redirectUrl = env("NEXT_PUBLIC_LOGIN_REDIRECT_URL") || "/admin";
121
121
  router.push(redirectUrl);
122
122
  }
123
123
  return [3 /*break*/, 4];
124
124
  case 2:
125
125
  error_1 = _c.sent();
126
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, (error_1 === null || error_1 === void 0 ? void 0 : error_1.data) ? (_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.data) === null || _b === void 0 ? void 0 : _b.message : ERROR_MESSAGES.SOMETHING_WRONG);
126
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: (error_1 === null || error_1 === void 0 ? void 0 : error_1.data) ? (_b = error_1 === null || error_1 === void 0 ? void 0 : error_1.data) === null || _b === void 0 ? void 0 : _b.message : ERROR_MESSAGES.SOMETHING_WRONG }));
127
127
  return [3 /*break*/, 4];
128
128
  case 3:
129
129
  setSubmitting(false); // Re-enable the button after submission
@@ -226,7 +226,7 @@ var SolidLogin = function (_a) {
226
226
  remaining = RESEND_OTP_TIMER - elapsed;
227
227
  if (remaining > 0) {
228
228
  formatted = formatTimeLeft(remaining);
229
- showToast(toast, "error", ERROR_MESSAGES.PLEASE_WAIT, ERROR_MESSAGES.OPT_FORMAT(formatted));
229
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.PLEASE_WAIT, detail: ERROR_MESSAGES.OPT_FORMAT(formatted) }));
230
230
  setSubmitting(false);
231
231
  return [2 /*return*/]; // Prevent request
232
232
  }
@@ -235,18 +235,18 @@ var SolidLogin = function (_a) {
235
235
  case 1:
236
236
  response = _d.sent();
237
237
  if ((response === null || response === void 0 ? void 0 : response.statusCode) === 200) {
238
- showToast(toast, "success", ERROR_MESSAGES.OPT_RESEND, (_b = response === null || response === void 0 ? void 0 : response.data) === null || _b === void 0 ? void 0 : _b.message);
238
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.OPT_RESEND, detail: (_b = response === null || response === void 0 ? void 0 : response.data) === null || _b === void 0 ? void 0 : _b.message }));
239
239
  identifier = values.identifier;
240
240
  localStorage.setItem("resendOtpLogin_".concat(identifier), Date.now().toString());
241
241
  router.push("/auth/initiate-login?identifier=".concat(encodeURIComponent(identifier), "&type=").concat(authType));
242
242
  }
243
243
  else {
244
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, response.error);
244
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));
245
245
  }
246
246
  return [3 /*break*/, 4];
247
247
  case 2:
248
248
  err_1 = _d.sent();
249
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, (err_1 === null || err_1 === void 0 ? void 0 : err_1.data) ? (_c = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _c === void 0 ? void 0 : _c.message : ERROR_MESSAGES.SOMETHING_WRONG);
249
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: (err_1 === null || err_1 === void 0 ? void 0 : err_1.data) ? (_c = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _c === void 0 ? void 0 : _c.message : ERROR_MESSAGES.SOMETHING_WRONG }));
250
250
  setErrors({
251
251
  identifier: "Invalid Credentials",
252
252
  });
@@ -284,7 +284,7 @@ var SolidLogin = function (_a) {
284
284
  return _jsx("p", { children: "No authentication method available" });
285
285
  }
286
286
  };
287
- return (_jsxs("div", { className: "", children: [_jsx(Toast, { ref: toast }), _jsxs("div", { className: "auth-container ".concat(((_b = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _b === void 0 ? void 0 : _b.authPagesLayout) === 'center' ? 'center' : 'side'), children: [((_c = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _c === void 0 ? void 0 : _c.authPagesLayout) === 'center' &&
287
+ return (_jsxs("div", { className: "", children: [_jsxs("div", { className: "auth-container ".concat(((_b = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _b === void 0 ? void 0 : _b.authPagesLayout) === 'center' ? 'center' : 'side'), children: [((_c = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _c === void 0 ? void 0 : _c.authPagesLayout) === 'center' &&
288
288
  _jsx("div", { className: "flex justify-content-center", children: _jsx("div", { className: "solid-logo flex align-items-center ".concat((_d = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _d === void 0 ? void 0 : _d.appLogoPosition), children: _jsx(Image, { alt: "solid logo", src: ((_e = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _e === void 0 ? void 0 : _e.appLogo) || SolidLogo, className: "relative", fill: true }) }) }), _jsx("h2", { className: "solid-auth-title ".concat(((_f = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _f === void 0 ? void 0 : _f.authPagesLayout) === 'center' ? 'text-center mt-2 md:mt-4' : 'text-left'), children: "Sign In To Your Account" }), _jsx(AuthTabs, { passwordBasedAuth: (_g = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _g === void 0 ? void 0 : _g.passwordBasedAuth, passwordLessAuth: (_h = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _h === void 0 ? void 0 : _h.passwordLessAuth }), ((_j = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _j === void 0 ? void 0 : _j.iamGoogleOAuthEnabled) &&
289
289
  _jsxs(_Fragment, { children: [_jsx(Divider, { align: "center", children: _jsx("div", { className: "inline-flex align-items-center", children: "OR" }) }), _jsx(SocialMediaLogin, {})] })] }), ((_k = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _k === void 0 ? void 0 : _k.allowPublicRegistration) && _jsx("div", { className: "mt-3 md:mt-5", children: _jsxs("div", { className: "text-sm text-center text-400 secondary-dark-color", children: ["Don\u2019t have an account ? ", _jsx(Link, { className: "font-bold", href: "/auth/register", children: "Sign Up" })] }) })] }));
290
290
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SolidLogin.js","sourceRoot":"","sources":["../../../src/components/auth/SolidLogin.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Form, Formik } from \"formik\";\nimport { signIn } from \"../../adapters/auth/index\";\nimport Link from \"../common/Link\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { Button } from \"primereact/button\";\nimport { Divider } from \"primereact/divider\";\nimport { InputText } from \"primereact/inputtext\";\nimport { Message } from \"primereact/message\";\nimport { Password } from \"primereact/password\";\nimport { TabPanel, TabView } from 'primereact/tabview';\nimport { Toast } from \"primereact/toast\";\nimport { useEffect, useRef, useState } from \"react\";\nimport * as Yup from \"yup\";\nimport { SocialMediaLogin } from \"../common/SocialMediaLogin\";\nimport { useInitateLoginMutation } from \"../../redux/api/authApi\";\nimport Image from \"../common/Image\";\nimport SolidLogo from '../../resources/images/SolidXLogo.svg'\nimport { formatTimeLeft } from \"../../helpers/resendOtpHelper\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { RadioButton } from \"primereact/radiobutton\";\nimport { useLazyGetAuthSettingsQuery } from \"../../redux/api/solidSettingsApi\";\nimport { env } from \"../../adapters/env\";\nimport showToast from \"../../helpers/showToast\";\n\ninterface AuthTabsProps {\n passwordBasedAuth: boolean;\n passwordLessAuth: boolean;\n}\nconst SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) => {\n\n const [trigger, { data: solidSettingsData }] = useLazyGetAuthSettingsQuery();\n useEffect(() => {\n trigger(\"\") // Fetch settings on mount\n }, [trigger])\n\n const [initiateLogin] = useInitateLoginMutation();\n const [activeIndex, setActiveIndex] = useState(0);\n useEffect(() => {\n sessionStorage.removeItem(\"app-mounted\");\n }, [])\n const toast = useRef<Toast>(null);\n const router = useRouter();\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n const emailOrUsernameRegex = /^[a-zA-Z0-9._]{2,30}$/;\n\n const PasswordLogin = () => {\n return (\n <Formik\n initialValues={{\n identifier: \"\",\n // email: initialEmail,\n password: \"\",\n // rememberMe: rememberMe,\n }}\n enableReinitialize={false}\n validationSchema={Yup.object({\n identifier: Yup.string()\n .required(ERROR_MESSAGES.FIELD_REUQIRED(\"Email or Username\"))\n .test(\n \"email-or-username\",\n ERROR_MESSAGES.FIELD_INVALID(\"email or username\"),\n (value) => {\n // if (!value) return false;\n\n const isEmail = Yup.string().email().isValidSync(value);\n const isUsername = emailOrUsernameRegex.test(value);\n\n return isEmail || isUsername;\n }\n ),\n password: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Password\")),\n })}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n // Handle Remember Me\n // if (values.rememberMe) {\n // localStorage.setItem(\"rememberedEmail\", values.email);\n // } else {\n // localStorage.removeItem(\"rememberedEmail\");\n // }\n const response = await signIn(\"credentials\", {\n redirect: false,\n identifier: values.identifier,\n password: values.password,\n });\n\n if (response?.error) {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, response.error);\n setErrors({\n identifier: ERROR_MESSAGES.INVALID_CREDENTIALS,\n password: ERROR_MESSAGES.INVALID_CREDENTIALS,\n });\n } else {\n showToast(toast, \"success\", ERROR_MESSAGES.LOGIN_SUCCESS, ERROR_MESSAGES.DASHBOARD_REDIRECTING);\n const redirectUrl = env(\"NEXT_PUBLIC_LOGIN_REDIRECT_URL\") || \"/admin\";\n router.push(redirectUrl);\n }\n } catch (error: any) {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, error?.data ? error?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);\n } finally {\n setSubmitting(false); // Re-enable the button after submission\n }\n }}\n >\n {(formik) => (\n <Form>\n <div className=\"flex flex-column gap-2 mt-3\">\n <label htmlFor=\"email\" className=\"solid-auth-input-label\">{signInValidatorLabel ? signInValidatorLabel : \"Username or Email\"}</label>\n <InputText\n id=\"identifier\"\n name=\"identifier\"\n placeholder={signInValidatorPlaceholder ? signInValidatorPlaceholder : \"Email or Username\"}\n onChange={formik.handleChange}\n value={formik.values.identifier}\n invalid={!!formik.errors.identifier}\n onBlur={formik.handleBlur}\n />\n {isFormFieldValid(formik, \"identifier\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.identifier?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-1 mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Password</label>\n <Password\n id=\"password\"\n name=\"password\"\n value={formik.values.password}\n onChange={formik.handleChange}\n toggleMask\n invalid={!!formik.errors.password}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"password\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.password?.toString()}\n />}\n </div>\n {/* <div className=\"flex align-items-center mt-4\">\n <Checkbox inputId=\"remember\" onChange={(e: any) => setChecked(e.checked)} checked={checked} />\n <label htmlFor=\"remember\" className=\"ml-2\">Remember me</label>\n </div> */}\n <div className=\"mt-4 flex align-items-center justify-content-between\">\n {/* <div className=\"flex align-items-center gap-2\">\n <Checkbox\n inputId=\"rememberMe\"\n name=\"rememberMe\"\n checked={formik.values.rememberMe}\n onChange={formik.handleChange}\n />\n <label htmlFor=\"rememberMe\" className=\"solid-auth-input-label\">Remember me</label>\n </div> */}\n <div></div>\n <Link href={\"/auth/initiate-forgot-password\"} className=\"solid-auth-input-label font-bold\">Forgot Password?</Link>\n </div>\n <div className=\"mt-4\">\n <Button className=\"w-full font-light auth-submit-button\" label=\"Sign In\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </Form>\n )}\n </Formik>\n )\n }\n\n const PasswordLessLogin = () => {\n const validationType = solidSettingsData?.data?.passwordlessLoginValidateWhat || \"email\";\n const [selectedAuthMethod, setSelectedAuthMethod] = useState<\"email\" | \"mobile\">(\"email\");\n\n const getFieldConfig = () => {\n if (validationType === \"selectable\") {\n if (selectedAuthMethod === \"mobile\") {\n return {\n label: \"Mobile Number / Username\",\n placeholder: \"Enter your mobile number or username\",\n type: \"mobile\",\n // validationSchema: Yup.string()\n // .matches(/^[0-9]{10}$/, ERROR_MESSAGES.FIELD_INVALID('mobile number'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Mobile number'))\n };\n } else {\n return {\n label: \"Email Address / Username\",\n placeholder: \"Enter your email or username\",\n type: \"email\",\n // validationSchema: Yup.string()\n // .email(ERROR_MESSAGES.FIELD_INVALID('email address'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Email'))\n };\n }\n }\n switch (validationType) {\n case \"mobile\":\n return {\n label: signInValidatorLabel || \"Mobile Number / Username\",\n placeholder: signInValidatorPlaceholder || \"Enter your mobile number / username\",\n type: \"mobile\",\n // validationSchema: Yup.string()\n // .matches(/^[0-9]{10}$/, ERROR_MESSAGES.FIELD_INVALID('mobile number'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Mobile number'))\n };\n case \"email\":\n default:\n return {\n label: signInValidatorLabel || \"Email / Username\",\n placeholder: signInValidatorPlaceholder || \"Email ID / username\",\n type: \"email\",\n // validationSchema: Yup.string()\n // .email(ERROR_MESSAGES.FIELD_INVALID('email address'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Email'))\n };\n }\n };\n\n const fieldConfig = getFieldConfig();\n return (\n <Formik\n initialValues={{\n identifier: \"\",\n }}\n // validationSchema={\n // fieldConfig.validationSchema \n // ? Yup.object({\n // identifier: fieldConfig.validationSchema\n // })\n // : Yup.object({\n // identifier: Yup.string().required(\"required\"),\n // })\n // }\n validationSchema={\n Yup.object({ identifier: Yup.string().required(\"required\") })\n }\n enableReinitialize={false}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const RESEND_OTP_KEY = `resendOtpLogin_${values.identifier}`;\n const RESEND_OTP_TIMER_MIN = parseFloat(env(\"NEXT_PUBLIC_RESEND_OTP_TIMER\") || '0.5');\n const RESEND_OTP_TIMER = Math.round(RESEND_OTP_TIMER_MIN * 60);\n\n // Use selectedAuthMethod for selectable, otherwise use fieldConfig.type\n const authType = validationType === \"selectable\" ? selectedAuthMethod : fieldConfig.type;\n\n const payload: { identifier: string; type?: string } = {\n identifier: values.identifier,\n };\n if (validationType === \"selectable\") {\n payload.type = selectedAuthMethod;\n }\n\n const storedTimeStr = localStorage.getItem(RESEND_OTP_KEY);\n const now = Date.now();\n if (storedTimeStr) {\n const lastSent = parseInt(storedTimeStr, 10);\n const elapsed = Math.floor((now - lastSent) / 1000);\n const remaining = RESEND_OTP_TIMER - elapsed;\n\n if (remaining > 0) {\n const formatted = formatTimeLeft(remaining);\n showToast(toast, \n \"error\",\n ERROR_MESSAGES.PLEASE_WAIT,\n ERROR_MESSAGES.OPT_FORMAT(formatted)\n );\n setSubmitting(false);\n return; // Prevent request\n }\n }\n const response = await initiateLogin(payload).unwrap(); // Call mutation trigger\n\n if (response?.statusCode === 200) {\n showToast(toast, \"success\", ERROR_MESSAGES.OPT_RESEND, response?.data?.message);\n const identifier = values.identifier;\n localStorage.setItem(`resendOtpLogin_${identifier}`, Date.now().toString());\n router.push(`/auth/initiate-login?identifier=${encodeURIComponent(identifier)}&type=${authType}`);\n } else {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, response.error);\n }\n } catch (err: any) {\n showToast(toast, \"error\", ERROR_MESSAGES.LOGIN_ERROR, err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);\n setErrors({\n identifier: \"Invalid Credentials\",\n });\n } finally {\n setSubmitting(false);\n }\n }}\n >\n {(formik) => (\n <Form>\n {/* Radio buttons for selectable type */}\n {validationType === \"selectable\" && (\n <div className=\"flex flex-column gap-3 mt-3\">\n <label className=\"solid-auth-input-label\">Select Authentication Method</label>\n <div className=\"flex gap-4\">\n <div className=\"flex align-items-center\">\n <RadioButton\n inputId=\"auth-email\"\n name=\"authMethod\"\n value=\"email\"\n checked={selectedAuthMethod === \"email\"}\n onChange={(e) => {\n setSelectedAuthMethod(\"email\");\n formik.setFieldValue(\"identifier\", \"\");\n }}\n className=\"mr-2\"\n />\n <label htmlFor=\"auth-email\" className=\"solid-auth-input-label cursor-pointer\">Email / Username</label>\n </div>\n <div className=\"flex align-items-center\">\n <RadioButton\n inputId=\"auth-mobile\"\n name=\"authMethod\"\n value=\"mobile\"\n checked={selectedAuthMethod === \"mobile\"}\n onChange={(e) => {\n setSelectedAuthMethod(\"mobile\");\n formik.setFieldValue(\"identifier\", \"\");\n }}\n className=\"mr-2\"\n />\n <label htmlFor=\"auth-mobile\" className=\"solid-auth-input-label cursor-pointer\">Mobile / Username</label>\n </div>\n </div>\n </div>\n )}\n <div className=\"flex flex-column gap-2 mt-3\">\n <label htmlFor=\"identifier\" className=\"solid-auth-input-label\">{fieldConfig.label}</label>\n <InputText\n id=\"identifier\"\n name=\"identifier\"\n placeholder={fieldConfig.placeholder}\n onChange={formik.handleChange}\n value={formik.values.identifier}\n invalid={!!formik.errors.identifier}\n onBlur={formik.handleBlur}\n />\n {isFormFieldValid(formik, \"identifier\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.identifier?.toString()}\n />}\n </div>\n <div className=\"mt-4\">\n <Button className=\"w-full font-light auth-submit-button\" label=\"Sign In\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </Form>\n )}\n </Formik>\n )\n }\n\n const AuthTabs: React.FC<AuthTabsProps> = ({ passwordBasedAuth, passwordLessAuth }) => {\n if (passwordBasedAuth && passwordLessAuth) {\n return (\n <TabView className=\"solid-auth-tabview\"\n activeIndex={activeIndex}\n onTabChange={(e) => setActiveIndex(e.index)}\n >\n <TabPanel header=\"With Password\">\n <PasswordLogin />\n </TabPanel>\n <TabPanel header=\"Without Password\">\n <PasswordLessLogin />\n </TabPanel>\n </TabView>\n );\n } else if (passwordBasedAuth) {\n return <PasswordLogin />;\n } else if (passwordLessAuth) {\n return <PasswordLessLogin />;\n } else {\n return <p>No authentication method available</p>;\n }\n };\n\n return (\n <div className=\"\">\n <Toast ref={toast} />\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n {solidSettingsData?.data?.authPagesLayout === 'center' &&\n <div className=\"flex justify-content-center\">\n <div className={`solid-logo flex align-items-center ${solidSettingsData?.data?.appLogoPosition}`}>\n <Image\n alt=\"solid logo\"\n src={solidSettingsData?.data?.appLogo || SolidLogo}\n className=\"relative\"\n fill\n />\n </div>\n </div>\n }\n <h2 className={`solid-auth-title ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'text-center mt-2 md:mt-4' : 'text-left'}`}>Sign In To Your Account</h2>\n {/* <p className=\"solid-auth-subtitle text-sm\">By continuing, you agree to the <Link href={'#'}>Terms of Service</Link> and acknowledge you’ve read our <Link href={'#'}>Privacy Policy.</Link> </p> */}\n\n <AuthTabs passwordBasedAuth={solidSettingsData?.data?.passwordBasedAuth} passwordLessAuth={solidSettingsData?.data?.passwordLessAuth} />\n {solidSettingsData?.data?.iamGoogleOAuthEnabled &&\n <>\n <Divider align=\"center\">\n <div className=\"inline-flex align-items-center\">\n OR\n </div>\n </Divider>\n <SocialMediaLogin />\n </>\n }\n </div>\n {solidSettingsData?.data?.allowPublicRegistration && <div className=\"mt-3 md:mt-5\">\n <div className=\"text-sm text-center text-400 secondary-dark-color\">\n Don’t have an account ? <Link className=\"font-bold\" href=\"/auth/register\">Sign Up</Link>\n </div>\n </div>}\n </div>\n );\n};\n\nexport default SolidLogin;\n"]}
1
+ {"version":3,"file":"SolidLogin.js","sourceRoot":"","sources":["../../../src/components/auth/SolidLogin.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Form, Formik } from \"formik\";\nimport { signIn } from \"../../adapters/auth/index\";\nimport Link from \"../common/Link\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { Button } from \"primereact/button\";\nimport { Divider } from \"primereact/divider\";\nimport { InputText } from \"primereact/inputtext\";\nimport { Message } from \"primereact/message\";\nimport { Password } from \"primereact/password\";\nimport { TabPanel, TabView } from 'primereact/tabview';\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from \"yup\";\nimport { SocialMediaLogin } from \"../common/SocialMediaLogin\";\nimport { useInitateLoginMutation } from \"../../redux/api/authApi\";\nimport Image from \"../common/Image\";\nimport SolidLogo from '../../resources/images/SolidXLogo.svg'\nimport { formatTimeLeft } from \"../../helpers/resendOtpHelper\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { RadioButton } from \"primereact/radiobutton\";\nimport { useLazyGetAuthSettingsQuery } from \"../../redux/api/solidSettingsApi\";\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\n\ninterface AuthTabsProps {\n passwordBasedAuth: boolean;\n passwordLessAuth: boolean;\n}\nconst SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) => {\n\n const [trigger, { data: solidSettingsData }] = useLazyGetAuthSettingsQuery();\n useEffect(() => {\n trigger(\"\") // Fetch settings on mount\n }, [trigger])\n\n const [initiateLogin] = useInitateLoginMutation();\n const [activeIndex, setActiveIndex] = useState(0);\n useEffect(() => {\n sessionStorage.removeItem(\"app-mounted\");\n }, [])\n const dispatch = useDispatch();\n const router = useRouter();\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n const emailOrUsernameRegex = /^[a-zA-Z0-9._]{2,30}$/;\n\n const PasswordLogin = () => {\n return (\n <Formik\n initialValues={{\n identifier: \"\",\n // email: initialEmail,\n password: \"\",\n // rememberMe: rememberMe,\n }}\n enableReinitialize={false}\n validationSchema={Yup.object({\n identifier: Yup.string()\n .required(ERROR_MESSAGES.FIELD_REUQIRED(\"Email or Username\"))\n .test(\n \"email-or-username\",\n ERROR_MESSAGES.FIELD_INVALID(\"email or username\"),\n (value) => {\n // if (!value) return false;\n\n const isEmail = Yup.string().email().isValidSync(value);\n const isUsername = emailOrUsernameRegex.test(value);\n\n return isEmail || isUsername;\n }\n ),\n password: Yup.string().required(ERROR_MESSAGES.FIELD_REUQIRED(\"Password\")),\n })}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n // Handle Remember Me\n // if (values.rememberMe) {\n // localStorage.setItem(\"rememberedEmail\", values.email);\n // } else {\n // localStorage.removeItem(\"rememberedEmail\");\n // }\n const response = await signIn(\"credentials\", {\n redirect: false,\n identifier: values.identifier,\n password: values.password,\n });\n\n if (response?.error) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));\n setErrors({\n identifier: ERROR_MESSAGES.INVALID_CREDENTIALS,\n password: ERROR_MESSAGES.INVALID_CREDENTIALS,\n });\n } else {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.LOGIN_SUCCESS, detail: ERROR_MESSAGES.DASHBOARD_REDIRECTING }));\n const redirectUrl = env(\"NEXT_PUBLIC_LOGIN_REDIRECT_URL\") || \"/admin\";\n router.push(redirectUrl);\n }\n } catch (error: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: error?.data ? error?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));\n } finally {\n setSubmitting(false); // Re-enable the button after submission\n }\n }}\n >\n {(formik) => (\n <Form>\n <div className=\"flex flex-column gap-2 mt-3\">\n <label htmlFor=\"email\" className=\"solid-auth-input-label\">{signInValidatorLabel ? signInValidatorLabel : \"Username or Email\"}</label>\n <InputText\n id=\"identifier\"\n name=\"identifier\"\n placeholder={signInValidatorPlaceholder ? signInValidatorPlaceholder : \"Email or Username\"}\n onChange={formik.handleChange}\n value={formik.values.identifier}\n invalid={!!formik.errors.identifier}\n onBlur={formik.handleBlur}\n />\n {isFormFieldValid(formik, \"identifier\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.identifier?.toString()}\n />}\n </div>\n <div className=\"flex flex-column gap-1 mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Password</label>\n <Password\n id=\"password\"\n name=\"password\"\n value={formik.values.password}\n onChange={formik.handleChange}\n toggleMask\n invalid={!!formik.errors.password}\n inputClassName=\"w-full\"\n feedback={false}\n />\n {isFormFieldValid(formik, \"password\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.password?.toString()}\n />}\n </div>\n {/* <div className=\"flex align-items-center mt-4\">\n <Checkbox inputId=\"remember\" onChange={(e: any) => setChecked(e.checked)} checked={checked} />\n <label htmlFor=\"remember\" className=\"ml-2\">Remember me</label>\n </div> */}\n <div className=\"mt-4 flex align-items-center justify-content-between\">\n {/* <div className=\"flex align-items-center gap-2\">\n <Checkbox\n inputId=\"rememberMe\"\n name=\"rememberMe\"\n checked={formik.values.rememberMe}\n onChange={formik.handleChange}\n />\n <label htmlFor=\"rememberMe\" className=\"solid-auth-input-label\">Remember me</label>\n </div> */}\n <div></div>\n <Link href={\"/auth/initiate-forgot-password\"} className=\"solid-auth-input-label font-bold\">Forgot Password?</Link>\n </div>\n <div className=\"mt-4\">\n <Button className=\"w-full font-light auth-submit-button\" label=\"Sign In\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </Form>\n )}\n </Formik>\n )\n }\n\n const PasswordLessLogin = () => {\n const validationType = solidSettingsData?.data?.passwordlessLoginValidateWhat || \"email\";\n const [selectedAuthMethod, setSelectedAuthMethod] = useState<\"email\" | \"mobile\">(\"email\");\n\n const getFieldConfig = () => {\n if (validationType === \"selectable\") {\n if (selectedAuthMethod === \"mobile\") {\n return {\n label: \"Mobile Number / Username\",\n placeholder: \"Enter your mobile number or username\",\n type: \"mobile\",\n // validationSchema: Yup.string()\n // .matches(/^[0-9]{10}$/, ERROR_MESSAGES.FIELD_INVALID('mobile number'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Mobile number'))\n };\n } else {\n return {\n label: \"Email Address / Username\",\n placeholder: \"Enter your email or username\",\n type: \"email\",\n // validationSchema: Yup.string()\n // .email(ERROR_MESSAGES.FIELD_INVALID('email address'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Email'))\n };\n }\n }\n switch (validationType) {\n case \"mobile\":\n return {\n label: signInValidatorLabel || \"Mobile Number / Username\",\n placeholder: signInValidatorPlaceholder || \"Enter your mobile number / username\",\n type: \"mobile\",\n // validationSchema: Yup.string()\n // .matches(/^[0-9]{10}$/, ERROR_MESSAGES.FIELD_INVALID('mobile number'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Mobile number'))\n };\n case \"email\":\n default:\n return {\n label: signInValidatorLabel || \"Email / Username\",\n placeholder: signInValidatorPlaceholder || \"Email ID / username\",\n type: \"email\",\n // validationSchema: Yup.string()\n // .email(ERROR_MESSAGES.FIELD_INVALID('email address'))\n // .required(ERROR_MESSAGES.FIELD_REUQIRED('Email'))\n };\n }\n };\n\n const fieldConfig = getFieldConfig();\n return (\n <Formik\n initialValues={{\n identifier: \"\",\n }}\n // validationSchema={\n // fieldConfig.validationSchema \n // ? Yup.object({\n // identifier: fieldConfig.validationSchema\n // })\n // : Yup.object({\n // identifier: Yup.string().required(\"required\"),\n // })\n // }\n validationSchema={\n Yup.object({ identifier: Yup.string().required(\"required\") })\n }\n enableReinitialize={false}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const RESEND_OTP_KEY = `resendOtpLogin_${values.identifier}`;\n const RESEND_OTP_TIMER_MIN = parseFloat(env(\"NEXT_PUBLIC_RESEND_OTP_TIMER\") || '0.5');\n const RESEND_OTP_TIMER = Math.round(RESEND_OTP_TIMER_MIN * 60);\n\n // Use selectedAuthMethod for selectable, otherwise use fieldConfig.type\n const authType = validationType === \"selectable\" ? selectedAuthMethod : fieldConfig.type;\n\n const payload: { identifier: string; type?: string } = {\n identifier: values.identifier,\n };\n if (validationType === \"selectable\") {\n payload.type = selectedAuthMethod;\n }\n\n const storedTimeStr = localStorage.getItem(RESEND_OTP_KEY);\n const now = Date.now();\n if (storedTimeStr) {\n const lastSent = parseInt(storedTimeStr, 10);\n const elapsed = Math.floor((now - lastSent) / 1000);\n const remaining = RESEND_OTP_TIMER - elapsed;\n\n if (remaining > 0) {\n const formatted = formatTimeLeft(remaining);\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.PLEASE_WAIT, detail: ERROR_MESSAGES.OPT_FORMAT(formatted) }));\n setSubmitting(false);\n return; // Prevent request\n }\n }\n const response = await initiateLogin(payload).unwrap(); // Call mutation trigger\n\n if (response?.statusCode === 200) {\n dispatch(showToast({ severity: \"success\", summary: ERROR_MESSAGES.OPT_RESEND, detail: response?.data?.message }));\n const identifier = values.identifier;\n localStorage.setItem(`resendOtpLogin_${identifier}`, Date.now().toString());\n router.push(`/auth/initiate-login?identifier=${encodeURIComponent(identifier)}&type=${authType}`);\n } else {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));\n setErrors({\n identifier: \"Invalid Credentials\",\n });\n } finally {\n setSubmitting(false);\n }\n }}\n >\n {(formik) => (\n <Form>\n {/* Radio buttons for selectable type */}\n {validationType === \"selectable\" && (\n <div className=\"flex flex-column gap-3 mt-3\">\n <label className=\"solid-auth-input-label\">Select Authentication Method</label>\n <div className=\"flex gap-4\">\n <div className=\"flex align-items-center\">\n <RadioButton\n inputId=\"auth-email\"\n name=\"authMethod\"\n value=\"email\"\n checked={selectedAuthMethod === \"email\"}\n onChange={(e) => {\n setSelectedAuthMethod(\"email\");\n formik.setFieldValue(\"identifier\", \"\");\n }}\n className=\"mr-2\"\n />\n <label htmlFor=\"auth-email\" className=\"solid-auth-input-label cursor-pointer\">Email / Username</label>\n </div>\n <div className=\"flex align-items-center\">\n <RadioButton\n inputId=\"auth-mobile\"\n name=\"authMethod\"\n value=\"mobile\"\n checked={selectedAuthMethod === \"mobile\"}\n onChange={(e) => {\n setSelectedAuthMethod(\"mobile\");\n formik.setFieldValue(\"identifier\", \"\");\n }}\n className=\"mr-2\"\n />\n <label htmlFor=\"auth-mobile\" className=\"solid-auth-input-label cursor-pointer\">Mobile / Username</label>\n </div>\n </div>\n </div>\n )}\n <div className=\"flex flex-column gap-2 mt-3\">\n <label htmlFor=\"identifier\" className=\"solid-auth-input-label\">{fieldConfig.label}</label>\n <InputText\n id=\"identifier\"\n name=\"identifier\"\n placeholder={fieldConfig.placeholder}\n onChange={formik.handleChange}\n value={formik.values.identifier}\n invalid={!!formik.errors.identifier}\n onBlur={formik.handleBlur}\n />\n {isFormFieldValid(formik, \"identifier\") && <Message\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.identifier?.toString()}\n />}\n </div>\n <div className=\"mt-4\">\n <Button className=\"w-full font-light auth-submit-button\" label=\"Sign In\" disabled={formik.isSubmitting} loading={formik.isSubmitting} />\n </div>\n </Form>\n )}\n </Formik>\n )\n }\n\n const AuthTabs: React.FC<AuthTabsProps> = ({ passwordBasedAuth, passwordLessAuth }) => {\n if (passwordBasedAuth && passwordLessAuth) {\n return (\n <TabView className=\"solid-auth-tabview\"\n activeIndex={activeIndex}\n onTabChange={(e) => setActiveIndex(e.index)}\n >\n <TabPanel header=\"With Password\">\n <PasswordLogin />\n </TabPanel>\n <TabPanel header=\"Without Password\">\n <PasswordLessLogin />\n </TabPanel>\n </TabView>\n );\n } else if (passwordBasedAuth) {\n return <PasswordLogin />;\n } else if (passwordLessAuth) {\n return <PasswordLessLogin />;\n } else {\n return <p>No authentication method available</p>;\n }\n };\n\n return (\n <div className=\"\">\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n {solidSettingsData?.data?.authPagesLayout === 'center' &&\n <div className=\"flex justify-content-center\">\n <div className={`solid-logo flex align-items-center ${solidSettingsData?.data?.appLogoPosition}`}>\n <Image\n alt=\"solid logo\"\n src={solidSettingsData?.data?.appLogo || SolidLogo}\n className=\"relative\"\n fill\n />\n </div>\n </div>\n }\n <h2 className={`solid-auth-title ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'text-center mt-2 md:mt-4' : 'text-left'}`}>Sign In To Your Account</h2>\n {/* <p className=\"solid-auth-subtitle text-sm\">By continuing, you agree to the <Link href={'#'}>Terms of Service</Link> and acknowledge you’ve read our <Link href={'#'}>Privacy Policy.</Link> </p> */}\n\n <AuthTabs passwordBasedAuth={solidSettingsData?.data?.passwordBasedAuth} passwordLessAuth={solidSettingsData?.data?.passwordLessAuth} />\n {solidSettingsData?.data?.iamGoogleOAuthEnabled &&\n <>\n <Divider align=\"center\">\n <div className=\"inline-flex align-items-center\">\n OR\n </div>\n </Divider>\n <SocialMediaLogin />\n </>\n }\n </div>\n {solidSettingsData?.data?.allowPublicRegistration && <div className=\"mt-3 md:mt-5\">\n <div className=\"text-sm text-center text-400 secondary-dark-color\">\n Don’t have an account ? <Link className=\"font-bold\" href=\"/auth/register\">Sign Up</Link>\n </div>\n </div>}\n </div>\n );\n};\n\nexport default SolidLogin;\n"]}
@@ -8,8 +8,8 @@ import { InputText } from "primereact/inputtext";
8
8
  import { Message } from "primereact/message";
9
9
  import { Password } from "primereact/password";
10
10
  import { TabPanel, TabView } from 'primereact/tabview';
11
- import { Toast } from "primereact/toast";
12
- import { useEffect, useRef, useState } from "react";
11
+ import { useEffect, useState } from "react";
12
+ import { useDispatch } from 'react-redux';
13
13
  import * as Yup from "yup";
14
14
  import { SocialMediaLogin } from "../common/SocialMediaLogin";
15
15
  import { useInitateLoginMutation } from "../../redux/api/authApi";
@@ -20,7 +20,7 @@ import { ERROR_MESSAGES } from "../../constants/error-messages";
20
20
  import { RadioButton } from "primereact/radiobutton";
21
21
  import { useLazyGetAuthSettingsQuery } from "../../redux/api/solidSettingsApi";
22
22
  import { env } from "../../adapters/env";
23
- import showToast from "../../helpers/showToast";
23
+ import { showToast } from "../../redux/features/toastSlice";
24
24
 
25
25
  interface AuthTabsProps {
26
26
  passwordBasedAuth: boolean;
@@ -38,7 +38,7 @@ const SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) =
38
38
  useEffect(() => {
39
39
  sessionStorage.removeItem("app-mounted");
40
40
  }, [])
41
- const toast = useRef<Toast>(null);
41
+ const dispatch = useDispatch();
42
42
  const router = useRouter();
43
43
 
44
44
  const isFormFieldValid = (formik: any, fieldName: string) =>
@@ -87,18 +87,18 @@ const SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) =
87
87
  });
88
88
 
89
89
  if (response?.error) {
90
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, response.error);
90
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));
91
91
  setErrors({
92
92
  identifier: ERROR_MESSAGES.INVALID_CREDENTIALS,
93
93
  password: ERROR_MESSAGES.INVALID_CREDENTIALS,
94
94
  });
95
95
  } else {
96
- showToast(toast, "success", ERROR_MESSAGES.LOGIN_SUCCESS, ERROR_MESSAGES.DASHBOARD_REDIRECTING);
96
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.LOGIN_SUCCESS, detail: ERROR_MESSAGES.DASHBOARD_REDIRECTING }));
97
97
  const redirectUrl = env("NEXT_PUBLIC_LOGIN_REDIRECT_URL") || "/admin";
98
98
  router.push(redirectUrl);
99
99
  }
100
100
  } catch (error: any) {
101
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, error?.data ? error?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);
101
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: error?.data ? error?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));
102
102
  } finally {
103
103
  setSubmitting(false); // Re-enable the button after submission
104
104
  }
@@ -260,11 +260,7 @@ const SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) =
260
260
 
261
261
  if (remaining > 0) {
262
262
  const formatted = formatTimeLeft(remaining);
263
- showToast(toast,
264
- "error",
265
- ERROR_MESSAGES.PLEASE_WAIT,
266
- ERROR_MESSAGES.OPT_FORMAT(formatted)
267
- );
263
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.PLEASE_WAIT, detail: ERROR_MESSAGES.OPT_FORMAT(formatted) }));
268
264
  setSubmitting(false);
269
265
  return; // Prevent request
270
266
  }
@@ -272,15 +268,15 @@ const SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) =
272
268
  const response = await initiateLogin(payload).unwrap(); // Call mutation trigger
273
269
 
274
270
  if (response?.statusCode === 200) {
275
- showToast(toast, "success", ERROR_MESSAGES.OPT_RESEND, response?.data?.message);
271
+ dispatch(showToast({ severity: "success", summary: ERROR_MESSAGES.OPT_RESEND, detail: response?.data?.message }));
276
272
  const identifier = values.identifier;
277
273
  localStorage.setItem(`resendOtpLogin_${identifier}`, Date.now().toString());
278
274
  router.push(`/auth/initiate-login?identifier=${encodeURIComponent(identifier)}&type=${authType}`);
279
275
  } else {
280
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, response.error);
276
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: response.error }));
281
277
  }
282
278
  } catch (err: any) {
283
- showToast(toast, "error", ERROR_MESSAGES.LOGIN_ERROR, err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG);
279
+ dispatch(showToast({ severity: "error", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));
284
280
  setErrors({
285
281
  identifier: "Invalid Credentials",
286
282
  });
@@ -379,7 +375,6 @@ const SolidLogin = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) =
379
375
 
380
376
  return (
381
377
  <div className="">
382
- <Toast ref={toast} />
383
378
  <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>
384
379
  {solidSettingsData?.data?.authPagesLayout === 'center' &&
385
380
  <div className="flex justify-content-center">
@@ -1 +1 @@
1
- {"version":3,"file":"SolidRegister.d.ts","sourceRoot":"","sources":["../../../src/components/auth/SolidRegister.tsx"],"names":[],"mappings":"AA8BA,QAAA,MAAM,aAAa,+CAyZlB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"SolidRegister.d.ts","sourceRoot":"","sources":["../../../src/components/auth/SolidRegister.tsx"],"names":[],"mappings":"AA8BA,QAAA,MAAM,aAAa,+CAoZlB,CAAC;AAEF,eAAe,aAAa,CAAC"}