@solidxai/core-ui 0.1.9-beta.20 → 0.1.9-beta.21

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 (470) hide show
  1. package/README.md +1 -1
  2. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  3. package/dist/components/auth/AuthLayout.js +23 -19
  4. package/dist/components/auth/AuthLayout.js.map +1 -1
  5. package/dist/components/auth/AuthLayout.tsx +62 -52
  6. package/dist/components/auth/ForgotPasswordThankYou.js +1 -1
  7. package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
  8. package/dist/components/auth/ForgotPasswordThankYou.tsx +2 -2
  9. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts +2 -0
  10. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.d.ts.map +1 -0
  11. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js +112 -0
  12. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.js.map +1 -0
  13. package/dist/components/auth/MicrosoftActiveDirectoryAuthChecking.tsx +78 -0
  14. package/dist/components/auth/SolidChangeForcePassword.js +2 -2
  15. package/dist/components/auth/SolidChangeForcePassword.js.map +1 -1
  16. package/dist/components/auth/SolidChangeForcePassword.tsx +13 -13
  17. package/dist/components/auth/SolidForgotPassword.js +1 -1
  18. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  19. package/dist/components/auth/SolidForgotPassword.tsx +3 -3
  20. package/dist/components/auth/SolidInitialLoginOtp.js +1 -1
  21. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  22. package/dist/components/auth/SolidInitialLoginOtp.tsx +2 -2
  23. package/dist/components/auth/SolidInitiateRegisterOtp.js +1 -1
  24. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  25. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +2 -2
  26. package/dist/components/auth/SolidLogin.js +4 -4
  27. package/dist/components/auth/SolidLogin.js.map +1 -1
  28. package/dist/components/auth/SolidLogin.tsx +11 -11
  29. package/dist/components/auth/SolidRegister.js +6 -6
  30. package/dist/components/auth/SolidRegister.js.map +1 -1
  31. package/dist/components/auth/SolidRegister.tsx +14 -14
  32. package/dist/components/auth/SolidResetPassword.js +2 -2
  33. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  34. package/dist/components/auth/SolidResetPassword.tsx +8 -8
  35. package/dist/components/common/BackButton.js +1 -1
  36. package/dist/components/common/BackButton.js.map +1 -1
  37. package/dist/components/common/BackButton.tsx +1 -1
  38. package/dist/components/common/CancelButton.js +2 -2
  39. package/dist/components/common/CancelButton.js.map +1 -1
  40. package/dist/components/common/CancelButton.tsx +3 -3
  41. package/dist/components/common/GeneralSettings.js +18 -18
  42. package/dist/components/common/GeneralSettings.js.map +1 -1
  43. package/dist/components/common/GeneralSettings.tsx +136 -136
  44. package/dist/components/common/SolidExport.d.ts +1 -1
  45. package/dist/components/common/SolidExport.d.ts.map +1 -1
  46. package/dist/components/common/SolidExport.js +10 -3
  47. package/dist/components/common/SolidExport.js.map +1 -1
  48. package/dist/components/common/SolidExport.tsx +10 -2
  49. package/dist/components/common/SolidFormHeader.js +1 -1
  50. package/dist/components/common/SolidFormHeader.js.map +1 -1
  51. package/dist/components/common/SolidFormHeader.tsx +1 -1
  52. package/dist/components/common/SolidModuleHome.js +2 -2
  53. package/dist/components/common/SolidModuleHome.js.map +1 -1
  54. package/dist/components/common/SolidModuleHome.tsx +7 -7
  55. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +3 -3
  56. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
  57. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +6 -6
  58. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js +1 -1
  59. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.js.map +1 -1
  60. package/dist/components/common/SolidSettings/LlmSettings/AnthropicProviderComponent.tsx +4 -4
  61. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js +1 -1
  62. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.js.map +1 -1
  63. package/dist/components/common/SolidSettings/LlmSettings/OpenAiProviderComponent.tsx +4 -4
  64. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js +1 -1
  65. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.js.map +1 -1
  66. package/dist/components/common/SolidSettings/SettingDropzoneActivePlaceholder.tsx +1 -1
  67. package/dist/components/core/card/SolidCardView.js +1 -1
  68. package/dist/components/core/card/SolidCardView.js.map +1 -1
  69. package/dist/components/core/card/SolidCardView.tsx +5 -5
  70. package/dist/components/core/card/SolidCardViewConfigure.d.ts.map +1 -1
  71. package/dist/components/core/card/SolidCardViewConfigure.js +1 -1
  72. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  73. package/dist/components/core/card/SolidCardViewConfigure.tsx +5 -1
  74. package/dist/components/core/chatter/SolidChatter.js +5 -5
  75. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  76. package/dist/components/core/chatter/SolidChatter.tsx +8 -8
  77. package/dist/components/core/chatter/SolidChatterAuditMessage.js +1 -1
  78. package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
  79. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +2 -2
  80. package/dist/components/core/chatter/SolidChatterHeader.js +2 -2
  81. package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
  82. package/dist/components/core/chatter/SolidChatterHeader.tsx +6 -6
  83. package/dist/components/core/chatter/SolidChatterMessageBox.js +4 -4
  84. package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
  85. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +12 -12
  86. package/dist/components/core/chatter/SolidMessageComposer.js +1 -1
  87. package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -1
  88. package/dist/components/core/chatter/SolidMessageComposer.tsx +7 -7
  89. package/dist/components/core/common/SolidCreateButton.d.ts.map +1 -1
  90. package/dist/components/core/common/SolidCreateButton.js +16 -1
  91. package/dist/components/core/common/SolidCreateButton.js.map +1 -1
  92. package/dist/components/core/common/SolidCreateButton.tsx +18 -1
  93. package/dist/components/core/common/SolidGenericImport/SolidImport.module.css +60 -0
  94. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js +1 -1
  95. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.js.map +1 -1
  96. package/dist/components/core/common/SolidGenericImport/SolidImportDropzone.tsx +2 -2
  97. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.d.ts.map +1 -1
  98. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js +19 -1
  99. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.js.map +1 -1
  100. package/dist/components/core/common/SolidGenericImport/SolidImportInstructions.tsx +16 -3
  101. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.d.ts.map +1 -1
  102. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js +168 -26
  103. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.js.map +1 -1
  104. package/dist/components/core/common/SolidGenericImport/SolidImportTransaction.tsx +174 -10
  105. package/dist/components/core/common/SolidGlobalSearchElement.d.ts.map +1 -1
  106. package/dist/components/core/common/SolidGlobalSearchElement.js +46 -36
  107. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  108. package/dist/components/core/common/SolidGlobalSearchElement.tsx +77 -40
  109. package/dist/components/core/common/SolidLayoutViews.js +2 -2
  110. package/dist/components/core/common/SolidLayoutViews.js.map +1 -1
  111. package/dist/components/core/common/SolidLayoutViews.tsx +4 -4
  112. package/dist/components/core/common/SolidListViewOptions.js +1 -1
  113. package/dist/components/core/common/SolidListViewOptions.js.map +1 -1
  114. package/dist/components/core/common/SolidListViewOptions.tsx +1 -1
  115. package/dist/components/core/common/SolidPasswordHelperText.js +2 -2
  116. package/dist/components/core/common/SolidPasswordHelperText.js.map +1 -1
  117. package/dist/components/core/common/SolidPasswordHelperText.tsx +4 -4
  118. package/dist/components/core/common/SolidSearchBox.js +1 -1
  119. package/dist/components/core/common/SolidSearchBox.js.map +1 -1
  120. package/dist/components/core/common/SolidSearchBox.tsx +1 -1
  121. package/dist/components/core/common/SolidXAiIframe.js +1 -1
  122. package/dist/components/core/common/SolidXAiIframe.js.map +1 -1
  123. package/dist/components/core/common/SolidXAiIframe.tsx +1 -1
  124. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js +1 -1
  125. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js.map +1 -1
  126. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.tsx +2 -2
  127. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js +2 -2
  128. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.js.map +1 -1
  129. package/dist/components/core/extension/solid-core/roleMetadata/RolePermissionsManyToManyFieldWidget.tsx +4 -4
  130. package/dist/components/core/field/FieldListViewData.js +2 -2
  131. package/dist/components/core/field/FieldListViewData.js.map +1 -1
  132. package/dist/components/core/field/FieldListViewData.tsx +5 -5
  133. package/dist/components/core/filter/fields/SolidBooleanField.d.ts.map +1 -1
  134. package/dist/components/core/filter/fields/SolidBooleanField.js +2 -2
  135. package/dist/components/core/filter/fields/SolidBooleanField.js.map +1 -1
  136. package/dist/components/core/filter/fields/SolidBooleanField.tsx +3 -12
  137. package/dist/components/core/filter/fields/SolidDateField.js +2 -2
  138. package/dist/components/core/filter/fields/SolidDateField.js.map +1 -1
  139. package/dist/components/core/filter/fields/SolidDateField.tsx +3 -3
  140. package/dist/components/core/filter/fields/SolidDatetimeField.js +2 -2
  141. package/dist/components/core/filter/fields/SolidDatetimeField.js.map +1 -1
  142. package/dist/components/core/filter/fields/SolidDatetimeField.tsx +3 -3
  143. package/dist/components/core/filter/fields/SolidExternalIdField.js +2 -2
  144. package/dist/components/core/filter/fields/SolidExternalIdField.js.map +1 -1
  145. package/dist/components/core/filter/fields/SolidExternalIdField.tsx +3 -3
  146. package/dist/components/core/filter/fields/SolidIdField.js +2 -2
  147. package/dist/components/core/filter/fields/SolidIdField.js.map +1 -1
  148. package/dist/components/core/filter/fields/SolidIdField.tsx +2 -2
  149. package/dist/components/core/filter/fields/SolidIntField.js +2 -2
  150. package/dist/components/core/filter/fields/SolidIntField.js.map +1 -1
  151. package/dist/components/core/filter/fields/SolidIntField.tsx +3 -3
  152. package/dist/components/core/filter/fields/SolidMediaMultipleField.js +2 -2
  153. package/dist/components/core/filter/fields/SolidMediaMultipleField.js.map +1 -1
  154. package/dist/components/core/filter/fields/SolidMediaMultipleField.tsx +3 -3
  155. package/dist/components/core/filter/fields/SolidMediaSingleField.js +2 -2
  156. package/dist/components/core/filter/fields/SolidMediaSingleField.js.map +1 -1
  157. package/dist/components/core/filter/fields/SolidMediaSingleField.tsx +3 -3
  158. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js +2 -2
  159. package/dist/components/core/filter/fields/SolidSelectionDynamicField.js.map +1 -1
  160. package/dist/components/core/filter/fields/SolidSelectionDynamicField.tsx +3 -3
  161. package/dist/components/core/filter/fields/SolidSelectionStaticField.js +2 -2
  162. package/dist/components/core/filter/fields/SolidSelectionStaticField.js.map +1 -1
  163. package/dist/components/core/filter/fields/SolidSelectionStaticField.tsx +3 -3
  164. package/dist/components/core/filter/fields/SolidShortTextField.js +2 -2
  165. package/dist/components/core/filter/fields/SolidShortTextField.js.map +1 -1
  166. package/dist/components/core/filter/fields/SolidShortTextField.tsx +3 -3
  167. package/dist/components/core/filter/fields/SolidTimeField.js +2 -2
  168. package/dist/components/core/filter/fields/SolidTimeField.js.map +1 -1
  169. package/dist/components/core/filter/fields/SolidTimeField.tsx +3 -3
  170. package/dist/components/core/filter/fields/SolidUuidField.js +2 -2
  171. package/dist/components/core/filter/fields/SolidUuidField.js.map +1 -1
  172. package/dist/components/core/filter/fields/SolidUuidField.tsx +4 -4
  173. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js +2 -2
  174. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  175. package/dist/components/core/filter/fields/relations/SolidRelationManyToManyField.tsx +3 -3
  176. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js +2 -2
  177. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  178. package/dist/components/core/filter/fields/relations/SolidRelationManyToOneField.tsx +3 -3
  179. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js +2 -2
  180. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  181. package/dist/components/core/filter/fields/relations/SolidRelationOneToManyField.tsx +3 -3
  182. package/dist/components/core/form/SolidFormActionHeader.js +8 -8
  183. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  184. package/dist/components/core/form/SolidFormActionHeader.tsx +13 -13
  185. package/dist/components/core/form/SolidFormFieldRender.js +1 -1
  186. package/dist/components/core/form/SolidFormFieldRender.js.map +1 -1
  187. package/dist/components/core/form/SolidFormFieldRender.tsx +1 -1
  188. package/dist/components/core/form/SolidFormFooter.d.ts.map +1 -1
  189. package/dist/components/core/form/SolidFormFooter.js +12 -5
  190. package/dist/components/core/form/SolidFormFooter.js.map +1 -1
  191. package/dist/components/core/form/SolidFormFooter.tsx +14 -5
  192. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  193. package/dist/components/core/form/SolidFormView.js +200 -65
  194. package/dist/components/core/form/SolidFormView.js.map +1 -1
  195. package/dist/components/core/form/SolidFormView.tsx +188 -41
  196. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.d.ts.map +1 -1
  197. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js +5 -1
  198. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.js.map +1 -1
  199. package/dist/components/core/form/SolidFormViewContextMenuHeaderButton.tsx +5 -1
  200. package/dist/components/core/form/SolidFormViewNormalHeaderButton.d.ts.map +1 -1
  201. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js +5 -1
  202. package/dist/components/core/form/SolidFormViewNormalHeaderButton.js.map +1 -1
  203. package/dist/components/core/form/SolidFormViewNormalHeaderButton.tsx +5 -1
  204. package/dist/components/core/form/SolidFormViewShimmerLoading.js +1 -1
  205. package/dist/components/core/form/SolidFormViewShimmerLoading.js.map +1 -1
  206. package/dist/components/core/form/SolidFormViewShimmerLoading.tsx +46 -46
  207. package/dist/components/core/form/fields/SolidBooleanField.js +3 -3
  208. package/dist/components/core/form/fields/SolidBooleanField.js.map +1 -1
  209. package/dist/components/core/form/fields/SolidBooleanField.tsx +3 -3
  210. package/dist/components/core/form/fields/SolidComputedField.js +1 -1
  211. package/dist/components/core/form/fields/SolidComputedField.js.map +1 -1
  212. package/dist/components/core/form/fields/SolidComputedField.tsx +1 -1
  213. package/dist/components/core/form/fields/SolidDateField.js +2 -2
  214. package/dist/components/core/form/fields/SolidDateField.js.map +1 -1
  215. package/dist/components/core/form/fields/SolidDateField.tsx +2 -2
  216. package/dist/components/core/form/fields/SolidDateTimeField.js +2 -2
  217. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  218. package/dist/components/core/form/fields/SolidDateTimeField.tsx +2 -2
  219. package/dist/components/core/form/fields/SolidDecimalField.js +1 -1
  220. package/dist/components/core/form/fields/SolidDecimalField.js.map +1 -1
  221. package/dist/components/core/form/fields/SolidDecimalField.tsx +1 -1
  222. package/dist/components/core/form/fields/SolidEmailField.js +1 -1
  223. package/dist/components/core/form/fields/SolidEmailField.js.map +1 -1
  224. package/dist/components/core/form/fields/SolidEmailField.tsx +1 -1
  225. package/dist/components/core/form/fields/SolidIntegerField.js +3 -3
  226. package/dist/components/core/form/fields/SolidIntegerField.js.map +1 -1
  227. package/dist/components/core/form/fields/SolidIntegerField.tsx +3 -3
  228. package/dist/components/core/form/fields/SolidJsonField.js +3 -3
  229. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  230. package/dist/components/core/form/fields/SolidJsonField.tsx +3 -3
  231. package/dist/components/core/form/fields/SolidLongTextField.js +6 -6
  232. package/dist/components/core/form/fields/SolidLongTextField.js.map +1 -1
  233. package/dist/components/core/form/fields/SolidLongTextField.tsx +12 -12
  234. package/dist/components/core/form/fields/SolidMediaMultipleField.js +11 -11
  235. package/dist/components/core/form/fields/SolidMediaMultipleField.js.map +1 -1
  236. package/dist/components/core/form/fields/SolidMediaMultipleField.tsx +28 -28
  237. package/dist/components/core/form/fields/SolidMediaSingleField.js +5 -5
  238. package/dist/components/core/form/fields/SolidMediaSingleField.js.map +1 -1
  239. package/dist/components/core/form/fields/SolidMediaSingleField.tsx +9 -9
  240. package/dist/components/core/form/fields/SolidPasswordField.d.ts.map +1 -1
  241. package/dist/components/core/form/fields/SolidPasswordField.js +12 -6
  242. package/dist/components/core/form/fields/SolidPasswordField.js.map +1 -1
  243. package/dist/components/core/form/fields/SolidPasswordField.tsx +13 -6
  244. package/dist/components/core/form/fields/SolidRichTextField.js +2 -2
  245. package/dist/components/core/form/fields/SolidRichTextField.js.map +1 -1
  246. package/dist/components/core/form/fields/SolidRichTextField.tsx +2 -2
  247. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +2 -2
  248. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  249. package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +2 -2
  250. package/dist/components/core/form/fields/SolidSelectionStaticField.js +1 -1
  251. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  252. package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +1 -1
  253. package/dist/components/core/form/fields/SolidShortTextField.js +1 -1
  254. package/dist/components/core/form/fields/SolidShortTextField.js.map +1 -1
  255. package/dist/components/core/form/fields/SolidShortTextField.tsx +1 -1
  256. package/dist/components/core/form/fields/SolidTimeField.js +2 -2
  257. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  258. package/dist/components/core/form/fields/SolidTimeField.tsx +2 -2
  259. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts +7 -11
  260. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.d.ts.map +1 -1
  261. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js +18 -63
  262. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.js.map +1 -1
  263. package/dist/components/core/form/fields/relations/RolesGroupedByModuleWidget.tsx +63 -164
  264. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.d.ts.map +1 -1
  265. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js +6 -6
  266. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.js.map +1 -1
  267. package/dist/components/core/form/fields/relations/SolidRelationManyToManyField.tsx +38 -36
  268. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +6 -6
  269. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  270. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +6 -6
  271. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.d.ts.map +1 -1
  272. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js +10 -10
  273. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.js.map +1 -1
  274. package/dist/components/core/form/fields/relations/SolidRelationOneToManyField.tsx +20 -25
  275. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js +1 -1
  276. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.js.map +1 -1
  277. package/dist/components/core/form/fields/widgets/SolidAiInteractionMessageFieldFormWidget.tsx +1 -1
  278. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js +1 -1
  279. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.js.map +1 -1
  280. package/dist/components/core/form/fields/widgets/SolidAiInteractionMetadataFieldFormWidget.tsx +1 -1
  281. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js +5 -5
  282. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.js.map +1 -1
  283. package/dist/components/core/form/fields/widgets/SolidIconEditWidget.tsx +17 -17
  284. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js +1 -1
  285. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.js.map +1 -1
  286. package/dist/components/core/form/fields/widgets/SolidRelationFieldAvatarFormWidget.tsx +1 -1
  287. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js +1 -1
  288. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.js.map +1 -1
  289. package/dist/components/core/form/fields/widgets/SolidShortTextFieldAvatarWidget.tsx +1 -1
  290. package/dist/components/core/kanban/KanbanBoard.d.ts +1 -1
  291. package/dist/components/core/kanban/KanbanBoard.d.ts.map +1 -1
  292. package/dist/components/core/kanban/KanbanBoard.js +2 -2
  293. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  294. package/dist/components/core/kanban/KanbanBoard.tsx +2 -1
  295. package/dist/components/core/kanban/KanbanCard.d.ts +1 -0
  296. package/dist/components/core/kanban/KanbanCard.d.ts.map +1 -1
  297. package/dist/components/core/kanban/KanbanCard.js +15 -4
  298. package/dist/components/core/kanban/KanbanCard.js.map +1 -1
  299. package/dist/components/core/kanban/KanbanCard.tsx +27 -4
  300. package/dist/components/core/kanban/KanbanColumn.d.ts +2 -1
  301. package/dist/components/core/kanban/KanbanColumn.d.ts.map +1 -1
  302. package/dist/components/core/kanban/KanbanColumn.js +4 -4
  303. package/dist/components/core/kanban/KanbanColumn.js.map +1 -1
  304. package/dist/components/core/kanban/KanbanColumn.tsx +5 -4
  305. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  306. package/dist/components/core/kanban/SolidKanbanView.js +44 -39
  307. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  308. package/dist/components/core/kanban/SolidKanbanView.tsx +22 -10
  309. package/dist/components/core/kanban/SolidKanbanViewConfigure.d.ts.map +1 -1
  310. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +1 -1
  311. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  312. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +5 -1
  313. package/dist/components/core/list/ListViewRowActionPopup.js +1 -1
  314. package/dist/components/core/list/ListViewRowActionPopup.js.map +1 -1
  315. package/dist/components/core/list/ListViewRowActionPopup.tsx +1 -2
  316. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js +1 -1
  317. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.js.map +1 -1
  318. package/dist/components/core/list/SolidColumnSelector/SolidListColumnSelector.tsx +3 -3
  319. package/dist/components/core/list/SolidDataTable.js +1 -1
  320. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  321. package/dist/components/core/list/SolidDataTable.tsx +1 -1
  322. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  323. package/dist/components/core/list/SolidListView.js +14 -6
  324. package/dist/components/core/list/SolidListView.js.map +1 -1
  325. package/dist/components/core/list/SolidListView.tsx +21 -13
  326. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  327. package/dist/components/core/list/SolidListViewConfigure.js +1 -1
  328. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  329. package/dist/components/core/list/SolidListViewConfigure.tsx +5 -1
  330. package/dist/components/core/list/SolidListViewHeaderButton.d.ts.map +1 -1
  331. package/dist/components/core/list/SolidListViewHeaderButton.js +5 -1
  332. package/dist/components/core/list/SolidListViewHeaderButton.js.map +1 -1
  333. package/dist/components/core/list/SolidListViewHeaderButton.tsx +5 -1
  334. package/dist/components/core/list/SolidListingHeader.js +1 -1
  335. package/dist/components/core/list/SolidListingHeader.js.map +1 -1
  336. package/dist/components/core/list/SolidListingHeader.tsx +4 -4
  337. package/dist/components/core/list/SolidTableRowCell.js +1 -1
  338. package/dist/components/core/list/SolidTableRowCell.js.map +1 -1
  339. package/dist/components/core/list/SolidTableRowCell.tsx +1 -1
  340. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js +5 -5
  341. package/dist/components/core/list/columns/SolidMediaMultipleColumn.js.map +1 -1
  342. package/dist/components/core/list/columns/SolidMediaMultipleColumn.tsx +8 -8
  343. package/dist/components/core/list/columns/SolidMediaSingleColumn.js +3 -3
  344. package/dist/components/core/list/columns/SolidMediaSingleColumn.js.map +1 -1
  345. package/dist/components/core/list/columns/SolidMediaSingleColumn.tsx +3 -3
  346. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js +1 -1
  347. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.js.map +1 -1
  348. package/dist/components/core/list/widgets/SolidManyToManyRelationAvatarListWidget.tsx +1 -1
  349. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js +1 -1
  350. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.js.map +1 -1
  351. package/dist/components/core/list/widgets/SolidShortTextFieldImageRenderModeWidget.tsx +1 -2
  352. package/dist/components/core/locales/SolidLocale.js +3 -3
  353. package/dist/components/core/locales/SolidLocale.js.map +1 -1
  354. package/dist/components/core/locales/SolidLocale.tsx +7 -7
  355. package/dist/components/core/locales/solid-locale.css +5 -4
  356. package/dist/components/core/model/FieldMetaData.js +2 -2
  357. package/dist/components/core/model/FieldMetaData.js.map +1 -1
  358. package/dist/components/core/model/FieldMetaData.tsx +2 -2
  359. package/dist/components/core/model/FieldMetaDataForm.d.ts.map +1 -1
  360. package/dist/components/core/model/FieldMetaDataForm.js +50 -50
  361. package/dist/components/core/model/FieldMetaDataForm.js.map +1 -1
  362. package/dist/components/core/model/FieldMetaDataForm.tsx +74 -229
  363. package/dist/components/core/model/ModelListViewData.js +4 -4
  364. package/dist/components/core/model/ModelListViewData.js.map +1 -1
  365. package/dist/components/core/model/ModelListViewData.tsx +7 -7
  366. package/dist/components/core/model/ModelMetaData.d.ts.map +1 -1
  367. package/dist/components/core/model/ModelMetaData.js +2 -2
  368. package/dist/components/core/model/ModelMetaData.js.map +1 -1
  369. package/dist/components/core/model/ModelMetaData.tsx +3 -58
  370. package/dist/components/core/module/CreateModule.d.ts.map +1 -1
  371. package/dist/components/core/module/CreateModule.js +3 -17
  372. package/dist/components/core/module/CreateModule.js.map +1 -1
  373. package/dist/components/core/module/CreateModule.tsx +18 -32
  374. package/dist/components/core/module/ModuleListViewData.js +5 -5
  375. package/dist/components/core/module/ModuleListViewData.js.map +1 -1
  376. package/dist/components/core/module/ModuleListViewData.tsx +8 -8
  377. package/dist/components/core/module/ModuleMetadataExplorer.js +1 -1
  378. package/dist/components/core/module/ModuleMetadataExplorer.js.map +1 -1
  379. package/dist/components/core/module/ModuleMetadataExplorer.tsx +1 -1
  380. package/dist/components/core/solid-ai/SolidAiChat.module.css +2 -2
  381. package/dist/components/core/tree/SolidTreeTable.js +1 -1
  382. package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
  383. package/dist/components/core/tree/SolidTreeTable.tsx +1 -1
  384. package/dist/components/core/tree/SolidTreeView.d.ts.map +1 -1
  385. package/dist/components/core/tree/SolidTreeView.js +3 -3
  386. package/dist/components/core/tree/SolidTreeView.js.map +1 -1
  387. package/dist/components/core/tree/SolidTreeView.tsx +14 -10
  388. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  389. package/dist/components/core/users/CreateUser.js +8 -10
  390. package/dist/components/core/users/CreateUser.js.map +1 -1
  391. package/dist/components/core/users/CreateUser.tsx +18 -36
  392. package/dist/components/core/users/CreateUserRole.js +2 -2
  393. package/dist/components/core/users/CreateUserRole.js.map +1 -1
  394. package/dist/components/core/users/CreateUserRole.tsx +9 -9
  395. package/dist/components/core/users/UserListView.js +4 -4
  396. package/dist/components/core/users/UserListView.js.map +1 -1
  397. package/dist/components/core/users/UserListView.tsx +6 -6
  398. package/dist/components/layout/AdminHeaderActions.d.ts +1 -0
  399. package/dist/components/layout/AdminHeaderActions.d.ts.map +1 -1
  400. package/dist/components/layout/AdminHeaderActions.js +1 -1
  401. package/dist/components/layout/AdminHeaderActions.js.map +1 -1
  402. package/dist/components/layout/AdminHeaderActions.tsx +1 -1
  403. package/dist/components/layout/AdminSidebar.js +1 -1
  404. package/dist/components/layout/AdminSidebar.js.map +1 -1
  405. package/dist/components/layout/AdminSidebar.tsx +1 -1
  406. package/dist/components/layout/AdminTopHeader.d.ts.map +1 -1
  407. package/dist/components/layout/AdminTopHeader.js +21 -3
  408. package/dist/components/layout/AdminTopHeader.js.map +1 -1
  409. package/dist/components/layout/AdminTopHeader.tsx +64 -2
  410. package/dist/components/layout/CustomPagination.js +0 -1
  411. package/dist/components/layout/CustomPagination.js.map +1 -1
  412. package/dist/components/layout/CustomPagination.tsx +0 -1
  413. package/dist/components/layout/FilterMenu.js +1 -1
  414. package/dist/components/layout/FilterMenu.js.map +1 -1
  415. package/dist/components/layout/FilterMenu.tsx +4 -4
  416. package/dist/components/layout/Footer.js +1 -1
  417. package/dist/components/layout/Footer.js.map +1 -1
  418. package/dist/components/layout/Footer.tsx +1 -1
  419. package/dist/components/layout/GlobalSearch.js +1 -1
  420. package/dist/components/layout/GlobalSearch.js.map +1 -1
  421. package/dist/components/layout/GlobalSearch.tsx +1 -1
  422. package/dist/components/layout/ListingHeader.js +3 -3
  423. package/dist/components/layout/ListingHeader.js.map +1 -1
  424. package/dist/components/layout/ListingHeader.tsx +4 -4
  425. package/dist/components/layout/Loader.js +1 -1
  426. package/dist/components/layout/Loader.js.map +1 -1
  427. package/dist/components/layout/Loader.tsx +1 -1
  428. package/dist/components/layout/UserSidebar.js +1 -1
  429. package/dist/components/layout/UserSidebar.js.map +1 -1
  430. package/dist/components/layout/UserSidebar.tsx +1 -1
  431. package/dist/components/layout/navbar-one.js +2 -2
  432. package/dist/components/layout/navbar-one.js.map +1 -1
  433. package/dist/components/layout/navbar-one.tsx +8 -8
  434. package/dist/components/layout/navbar-two-menu.js +2 -2
  435. package/dist/components/layout/navbar-two-menu.js.map +1 -1
  436. package/dist/components/layout/navbar-two-menu.tsx +7 -7
  437. package/dist/components/shad-cn-ui/SolidCodeEditor.d.ts.map +1 -1
  438. package/dist/components/shad-cn-ui/SolidCodeEditor.js +3 -1
  439. package/dist/components/shad-cn-ui/SolidCodeEditor.js.map +1 -1
  440. package/dist/components/shad-cn-ui/SolidCodeEditor.tsx +3 -0
  441. package/dist/components/shad-cn-ui/SolidPopover.d.ts +1 -0
  442. package/dist/components/shad-cn-ui/SolidPopover.d.ts.map +1 -1
  443. package/dist/components/shad-cn-ui/SolidPopover.js +124 -5
  444. package/dist/components/shad-cn-ui/SolidPopover.js.map +1 -1
  445. package/dist/components/shad-cn-ui/SolidPopover.tsx +173 -10
  446. package/dist/constants/error-messages.d.ts +13 -0
  447. package/dist/constants/error-messages.d.ts.map +1 -1
  448. package/dist/constants/error-messages.js +17 -0
  449. package/dist/constants/error-messages.js.map +1 -1
  450. package/dist/constants/error-messages.ts +15 -0
  451. package/dist/resources/globals.css +32 -1
  452. package/dist/resources/solid-custom.css +6565 -0
  453. package/dist/resources/solid-primereact.css +14 -12
  454. package/dist/resources/solid-responsive.css +25 -2
  455. package/dist/resources/solid-tailwind-generated.css +1 -0
  456. package/dist/resources/solid-tailwind.css +3 -0
  457. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts +2 -0
  458. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.d.ts.map +1 -0
  459. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js +6 -0
  460. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.js.map +1 -0
  461. package/dist/routes/pages/auth/InitiateMicrosoftActiveDirectoryOauthPage.tsx +5 -0
  462. package/dist/routes/pages/auth/SsoPage.js +1 -1
  463. package/dist/routes/pages/auth/SsoPage.js.map +1 -1
  464. package/dist/routes/pages/auth/SsoPage.tsx +1 -1
  465. package/dist/styles.d.ts +2 -1
  466. package/dist/styles.d.ts.map +1 -1
  467. package/dist/styles.js +2 -1
  468. package/dist/styles.js.map +1 -1
  469. package/dist/styles.ts +2 -1
  470. package/package.json +6 -3
@@ -0,0 +1,112 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { jsx as _jsx } from "react/jsx-runtime";
38
+ import { ERROR_MESSAGES } from "../../constants/error-messages";
39
+ import { signInWithOAuthAccessCode } from "../../adapters/auth/index";
40
+ import { useRouter } from "../../hooks/useRouter";
41
+ import { useSearchParams } from "../../hooks/useSearchParams";
42
+ import { useEffect, useState } from "react";
43
+ import { useDispatch } from "react-redux";
44
+ import { env } from "../../adapters/env";
45
+ import { showToast } from "../../redux/features/toastSlice";
46
+ import { SolidSpinner } from "../shad-cn-ui";
47
+ export var MicrosoftActiveDirectoryAuthChecking = function () {
48
+ var searchParams = useSearchParams();
49
+ var accessCode = searchParams.get("accessCode");
50
+ var router = useRouter();
51
+ var _a = useState(null), error = _a[0], setError = _a[1];
52
+ var dispatch = useDispatch();
53
+ useEffect(function () {
54
+ var handleOAuthAuthentication = function () { return __awaiter(void 0, void 0, void 0, function () {
55
+ var response, redirectUrl, err_1, message;
56
+ var _a;
57
+ return __generator(this, function (_b) {
58
+ switch (_b.label) {
59
+ case 0:
60
+ if (!accessCode) {
61
+ dispatch(showToast({
62
+ severity: "error",
63
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
64
+ detail: ERROR_MESSAGES.AUTHENICATION__FAILED,
65
+ }));
66
+ setError(ERROR_MESSAGES.AUTHENICATION__FAILED);
67
+ return [2 /*return*/];
68
+ }
69
+ _b.label = 1;
70
+ case 1:
71
+ _b.trys.push([1, 3, , 4]);
72
+ return [4 /*yield*/, signInWithOAuthAccessCode({
73
+ accessCode: accessCode,
74
+ provider: "microsoft-active-directory",
75
+ })];
76
+ case 2:
77
+ response = _b.sent();
78
+ if (response === null || response === void 0 ? void 0 : response.error) {
79
+ dispatch(showToast({
80
+ severity: "error",
81
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
82
+ detail: response.error,
83
+ }));
84
+ setError(response.error || ERROR_MESSAGES.AUTHENICATION__FAILED);
85
+ }
86
+ else {
87
+ redirectUrl = env("NEXT_PUBLIC_LOGIN_REDIRECT_URL") || "/admin";
88
+ router.push(redirectUrl);
89
+ }
90
+ return [3 /*break*/, 4];
91
+ case 3:
92
+ err_1 = _b.sent();
93
+ message = ((_a = err_1 === null || err_1 === void 0 ? void 0 : err_1.data) === null || _a === void 0 ? void 0 : _a.message) || ERROR_MESSAGES.AUTHENICATION__FAILED;
94
+ dispatch(showToast({
95
+ severity: "error",
96
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
97
+ detail: message,
98
+ }));
99
+ setError(message);
100
+ return [3 /*break*/, 4];
101
+ case 4: return [2 /*return*/];
102
+ }
103
+ });
104
+ }); };
105
+ handleOAuthAuthentication();
106
+ }, [accessCode, dispatch, router]);
107
+ if (error) {
108
+ return (_jsx("div", { className: "flex items-center justify-center min-h-screen", children: _jsx("h2", { className: "text-red-500 text-xl font-semibold", children: error }) }));
109
+ }
110
+ return _jsx(SolidSpinner, { className: "flex items-center justify-center min-h-screen" });
111
+ };
112
+ //# sourceMappingURL=MicrosoftActiveDirectoryAuthChecking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MicrosoftActiveDirectoryAuthChecking.js","sourceRoot":"","sources":["../../../src/components/auth/MicrosoftActiveDirectoryAuthChecking.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,CAAC,IAAM,oCAAoC,GAAG;IAClD,IAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAElD,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IACrB,IAAA,KAAoB,QAAQ,CAAgB,IAAI,CAAC,EAAhD,KAAK,QAAA,EAAE,QAAQ,QAAiC,CAAC;IACxD,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,SAAS,CAAC;QACR,IAAM,yBAAyB,GAAG;;;;;;wBAChC,IAAI,CAAC,UAAU,EAAE;4BACf,QAAQ,CACN,SAAS,CAAC;gCACR,QAAQ,EAAE,OAAO;gCACjB,OAAO,EAAE,cAAc,CAAC,WAAW;gCACnC,MAAM,EAAE,cAAc,CAAC,qBAAqB;6BAC7C,CAAC,CACH,CAAC;4BACF,QAAQ,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC;4BAC/C,sBAAO;yBACR;;;;wBAGkB,qBAAM,yBAAyB,CAAC;gCAC/C,UAAU,EAAE,UAAU;gCACtB,QAAQ,EAAE,4BAA4B;6BACvC,CAAC,EAAA;;wBAHI,QAAQ,GAAG,SAGf;wBAEF,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,EAAE;4BACnB,QAAQ,CACN,SAAS,CAAC;gCACR,QAAQ,EAAE,OAAO;gCACjB,OAAO,EAAE,cAAc,CAAC,WAAW;gCACnC,MAAM,EAAE,QAAQ,CAAC,KAAK;6BACvB,CAAC,CACH,CAAC;4BACF,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,cAAc,CAAC,qBAAqB,CAAC,CAAC;yBAClE;6BAAM;4BACC,WAAW,GAAG,GAAG,CAAC,gCAAgC,CAAC,IAAI,QAAQ,CAAC;4BACtE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;yBAC1B;;;;wBAEK,OAAO,GACX,CAAA,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,OAAO,KAAI,cAAc,CAAC,qBAAqB,CAAC;wBAC7D,QAAQ,CACN,SAAS,CAAC;4BACR,QAAQ,EAAE,OAAO;4BACjB,OAAO,EAAE,cAAc,CAAC,WAAW;4BACnC,MAAM,EAAE,OAAO;yBAChB,CAAC,CACH,CAAC;wBACF,QAAQ,CAAC,OAAO,CAAC,CAAC;;;;;aAErB,CAAC;QAEF,yBAAyB,EAAE,CAAC;IAC9B,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAEnC,IAAI,KAAK,EAAE;QACT,OAAO,CACL,cAAK,SAAS,EAAC,+CAA+C,YAC5D,aAAI,SAAS,EAAC,oCAAoC,YAAE,KAAK,GAAM,GAC3D,CACP,CAAC;KACH;IAED,OAAO,KAAC,YAAY,IAAC,SAAS,EAAC,+CAA+C,GAAG,CAAC;AACpF,CAAC,CAAC","sourcesContent":["import { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { signInWithOAuthAccessCode } from \"../../adapters/auth/index\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from \"react-redux\";\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { SolidSpinner } from \"../shad-cn-ui\";\n\nexport const MicrosoftActiveDirectoryAuthChecking = () => {\n const searchParams = useSearchParams();\n const accessCode = searchParams.get(\"accessCode\");\n\n const router = useRouter();\n const [error, setError] = useState<string | null>(null);\n const dispatch = useDispatch();\n\n useEffect(() => {\n const handleOAuthAuthentication = async () => {\n if (!accessCode) {\n dispatch(\n showToast({\n severity: \"error\",\n summary: ERROR_MESSAGES.LOGIN_ERROR,\n detail: ERROR_MESSAGES.AUTHENICATION__FAILED,\n }),\n );\n setError(ERROR_MESSAGES.AUTHENICATION__FAILED);\n return;\n }\n\n try {\n const response = await signInWithOAuthAccessCode({\n accessCode: accessCode,\n provider: \"microsoft-active-directory\",\n });\n\n if (response?.error) {\n dispatch(\n showToast({\n severity: \"error\",\n summary: ERROR_MESSAGES.LOGIN_ERROR,\n detail: response.error,\n }),\n );\n setError(response.error || ERROR_MESSAGES.AUTHENICATION__FAILED);\n } else {\n const redirectUrl = env(\"NEXT_PUBLIC_LOGIN_REDIRECT_URL\") || \"/admin\";\n router.push(redirectUrl);\n }\n } catch (err: any) {\n const message =\n err?.data?.message || ERROR_MESSAGES.AUTHENICATION__FAILED;\n dispatch(\n showToast({\n severity: \"error\",\n summary: ERROR_MESSAGES.LOGIN_ERROR,\n detail: message,\n }),\n );\n setError(message);\n }\n };\n\n handleOAuthAuthentication();\n }, [accessCode, dispatch, router]);\n\n if (error) {\n return (\n <div className=\"flex items-center justify-center min-h-screen\">\n <h2 className=\"text-red-500 text-xl font-semibold\">{error}</h2>\n </div>\n );\n }\n\n return <SolidSpinner className=\"flex items-center justify-center min-h-screen\" />;\n};\n"]}
@@ -0,0 +1,78 @@
1
+ import { ERROR_MESSAGES } from "../../constants/error-messages";
2
+ import { signInWithOAuthAccessCode } from "../../adapters/auth/index";
3
+ import { useRouter } from "../../hooks/useRouter";
4
+ import { useSearchParams } from "../../hooks/useSearchParams";
5
+ import { useEffect, useState } from "react";
6
+ import { useDispatch } from "react-redux";
7
+ import { env } from "../../adapters/env";
8
+ import { showToast } from "../../redux/features/toastSlice";
9
+ import { SolidSpinner } from "../shad-cn-ui";
10
+
11
+ export const MicrosoftActiveDirectoryAuthChecking = () => {
12
+ const searchParams = useSearchParams();
13
+ const accessCode = searchParams.get("accessCode");
14
+
15
+ const router = useRouter();
16
+ const [error, setError] = useState<string | null>(null);
17
+ const dispatch = useDispatch();
18
+
19
+ useEffect(() => {
20
+ const handleOAuthAuthentication = async () => {
21
+ if (!accessCode) {
22
+ dispatch(
23
+ showToast({
24
+ severity: "error",
25
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
26
+ detail: ERROR_MESSAGES.AUTHENICATION__FAILED,
27
+ }),
28
+ );
29
+ setError(ERROR_MESSAGES.AUTHENICATION__FAILED);
30
+ return;
31
+ }
32
+
33
+ try {
34
+ const response = await signInWithOAuthAccessCode({
35
+ accessCode: accessCode,
36
+ provider: "microsoft-active-directory",
37
+ });
38
+
39
+ if (response?.error) {
40
+ dispatch(
41
+ showToast({
42
+ severity: "error",
43
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
44
+ detail: response.error,
45
+ }),
46
+ );
47
+ setError(response.error || ERROR_MESSAGES.AUTHENICATION__FAILED);
48
+ } else {
49
+ const redirectUrl = env("NEXT_PUBLIC_LOGIN_REDIRECT_URL") || "/admin";
50
+ router.push(redirectUrl);
51
+ }
52
+ } catch (err: any) {
53
+ const message =
54
+ err?.data?.message || ERROR_MESSAGES.AUTHENICATION__FAILED;
55
+ dispatch(
56
+ showToast({
57
+ severity: "error",
58
+ summary: ERROR_MESSAGES.LOGIN_ERROR,
59
+ detail: message,
60
+ }),
61
+ );
62
+ setError(message);
63
+ }
64
+ };
65
+
66
+ handleOAuthAuthentication();
67
+ }, [accessCode, dispatch, router]);
68
+
69
+ if (error) {
70
+ return (
71
+ <div className="flex items-center justify-center min-h-screen">
72
+ <h2 className="text-red-500 text-xl font-semibold">{error}</h2>
73
+ </div>
74
+ );
75
+ }
76
+
77
+ return <SolidSpinner className="flex items-center justify-center min-h-screen" />;
78
+ };
@@ -150,9 +150,9 @@ var SolidChangeForcePassword = function () {
150
150
  policy: "One special character(!, @, #, $)"
151
151
  },
152
152
  ];
153
- return (_jsx(_Fragment, { children: _jsxs("form", { onSubmit: formik.handleSubmit, className: 'd-flex flex-column gap-3 auth-form', children: [_jsxs("div", { className: "flex flex-column gap-2 mt-2", style: {}, children: [_jsx("label", { htmlFor: "currentPassword", className: "solid-auth-input-label", children: "Current Password" }), _jsx(SolidPasswordInput, { id: "currentPassword", name: "currentPassword", value: formik.values.currentPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.currentPassword, className: "w-full" }), isFormFieldValid(formik, "currentPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_f = (_e = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _e === void 0 ? void 0 : _e.currentPassword) === null || _f === void 0 ? void 0 : _f.toString() }))] }), _jsxs("div", { className: "flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", style: {}, children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "New Password" }), _jsx(SolidPasswordInput, { id: "newPassword", name: "newPassword", value: formik.values.newPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.newPassword, className: "w-full" }), isFormFieldValid(formik, "newPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_h = (_g = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _g === void 0 ? void 0 : _g.newPassword) === null || _h === void 0 ? void 0 : _h.toString() }))] }), _jsxs("div", { className: "flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", style: {}, children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "Confirm Password" }), _jsx(SolidPasswordInput, { id: "confirmPassword", name: "confirmPassword", value: formik.values.confirmPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.confirmPassword, className: "w-full" }), isFormFieldValid(formik, "confirmPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_k = (_j = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _j === void 0 ? void 0 : _j.confirmPassword) === null || _k === void 0 ? void 0 : _k.toString() }))] }), envPasswordHelperText && (_jsx("div", { className: "mt-4", children: _jsx("div", { className: "grid", children: envPasswordHelperText
153
+ return (_jsx(_Fragment, { children: _jsxs("form", { onSubmit: formik.handleSubmit, className: 'flex flex-col gap-4 auth-form', children: [_jsxs("div", { className: "flex flex-col gap-2 mt-2", style: {}, children: [_jsx("label", { htmlFor: "currentPassword", className: "solid-auth-input-label", children: "Current Password" }), _jsx(SolidPasswordInput, { id: "currentPassword", name: "currentPassword", value: formik.values.currentPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.currentPassword, className: "w-full" }), isFormFieldValid(formik, "currentPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_f = (_e = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _e === void 0 ? void 0 : _e.currentPassword) === null || _f === void 0 ? void 0 : _f.toString() }))] }), _jsxs("div", { className: "flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", style: {}, children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "New Password" }), _jsx(SolidPasswordInput, { id: "newPassword", name: "newPassword", value: formik.values.newPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.newPassword, className: "w-full" }), isFormFieldValid(formik, "newPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_h = (_g = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _g === void 0 ? void 0 : _g.newPassword) === null || _h === void 0 ? void 0 : _h.toString() }))] }), _jsxs("div", { className: "flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4", style: {}, children: [_jsx("label", { htmlFor: "password", className: "solid-auth-input-label", children: "Confirm Password" }), _jsx(SolidPasswordInput, { id: "confirmPassword", name: "confirmPassword", value: formik.values.confirmPassword, onChange: formik.handleChange, onBlur: formik.handleBlur, toggle: true, "aria-invalid": !!formik.errors.confirmPassword, className: "w-full" }), isFormFieldValid(formik, "confirmPassword") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_k = (_j = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _j === void 0 ? void 0 : _j.confirmPassword) === null || _k === void 0 ? void 0 : _k.toString() }))] }), envPasswordHelperText && (_jsx("div", { className: "mt-6", children: _jsx("div", { className: "flex flex-wrap -mx-2 gap-y-2", children: envPasswordHelperText
154
154
  .split('\\n')
155
- .map(function (text, idx) { return (_jsx("div", { className: "col-6 pt-0", children: _jsxs("div", { className: 'flex gap-2', children: [_jsx("span", { children: "\u2022" }), _jsx("span", { children: text })] }) }, idx)); }) }) })), _jsx("div", { className: "mt-4", children: _jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Change Password", disabled: formik.isSubmitting, loading: formik.isSubmitting }) })] }) }));
155
+ .map(function (text, idx) { return (_jsx("div", { className: "w-1/2 px-2 pt-0", children: _jsxs("div", { className: 'flex gap-2', children: [_jsx("span", { children: "\u2022" }), _jsx("span", { children: text })] }) }, idx)); }) }) })), _jsx("div", { className: "mt-6", children: _jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Change Password", disabled: formik.isSubmitting, loading: formik.isSubmitting }) })] }) }));
156
156
  };
157
157
  export default SolidChangeForcePassword;
158
158
  //# sourceMappingURL=SolidChangeForcePassword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidChangeForcePassword.js","sourceRoot":"","sources":["../../../src/components/auth/SolidChangeForcePassword.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ERROR_MESSAGES } from '../../constants/error-messages';\nimport { useChangePasswordMutation } from '../../redux/api/authApi';\nimport { useFormik } from 'formik';\nimport { signOut } from \"../../adapters/auth/index\";\nimport { useSession } from \"../../hooks/useSession\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from 'yup';\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { SolidButton, SolidMessage, SolidPasswordInput } from \"../shad-cn-ui\";\n\nconst SolidChangeForcePassword = () => {\n const dispatch = useDispatch();\n const [changePassword] = useChangePasswordMutation();\n\n const session: any = useSession();\n\n const envPasswordRegex = env(\"NEXT_PUBLIC_PASSWORD_REGEX\");\n const envPasswordHelperText = env(\"NEXT_PUBLIC_PASSWORD_COMPLEXITY_DESC\");\n let passwordRegex: RegExp | null = null;\n try {\n if (envPasswordRegex) {\n const unescaped = JSON.parse(`\"${envPasswordRegex}\"`);\n passwordRegex = new RegExp(unescaped);\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.INVALID_PASSWORD_REGX, error);\n }\n\n const newPasswordValidation = passwordRegex\n ? Yup.string()\n .matches(passwordRegex, ERROR_MESSAGES.PASSWORD_DO_NOT_MEET)\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'))\n : Yup.string().min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'));\n\n const validationSchema = Yup.object({\n email: Yup.string().email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email')).required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n currentPassword: Yup.string().min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6)).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_REUQIRED('User ID')),\n });\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 }) => {\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 // Call the mutation and handle the response\n const response = await changePassword(payload).unwrap(); // Await the API call and unwrap to handle errors.\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.FORCE_PASSWORD_CHANGE, detail: ERROR_MESSAGES.PASSWORD_CHANGE }));\n signOut({ callbackUrl: \"/auth/login\" })\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data?.message }));\n // setErrors({\n // currentPassword: \"Incorrect Current Password\",\n // })\n }\n },\n });\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const passwordPolicies = [\n {\n policy: \"8 characters minimum\"\n },\n {\n policy: \"No Spaces Allowed\"\n },\n {\n policy: \"One uppercase letter\"\n },\n {\n policy: \"One lowercase letter\"\n },\n {\n policy: \"One numeric digit\"\n },\n {\n policy: \"One special character(!, @, #, $)\"\n },\n ]\n\n return (\n <>\n <form onSubmit={formik.handleSubmit} className='d-flex flex-column gap-3 auth-form'>\n <div className=\"flex flex-column gap-2 mt-2\" style={{}}>\n <label htmlFor=\"currentPassword\" className=\"solid-auth-input-label\">Current Password</label>\n <SolidPasswordInput\n id=\"currentPassword\"\n name=\"currentPassword\"\n value={formik.values.currentPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.currentPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"currentPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.currentPassword?.toString()}\n />\n )}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">New Password</label>\n <SolidPasswordInput\n id=\"newPassword\"\n name=\"newPassword\"\n value={formik.values.newPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.newPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"newPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.newPassword?.toString()}\n />\n )}\n </div>\n <div className=\"flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Confirm Password</label>\n <SolidPasswordInput\n id=\"confirmPassword\"\n name=\"confirmPassword\"\n value={formik.values.confirmPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.confirmPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"confirmPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.confirmPassword?.toString()}\n />\n )}\n </div>\n {/* <div className='mt-4'>\n <div className='grid'>\n {passwordPolicies.map((policy, index) => {\n return (\n <div key={index} className='col-6'>\n <p className=\"solid-auth-input-label flex align-items-center gap-2\">\n <div className='flex align-items-center justify-content-center' style={{ height: 14, width: 14, borderRadius: '50%', backgroundColor: '#A4A4A4' }}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M4.86813 8.72999L2.28979 6.15166L2.91396 5.52749L4.86813 7.48166L9.08563 3.26416L9.7098 3.88833L4.86813 8.72999Z\" fill=\"#E8EAED\" />\n </svg>\n </div>\n {policy.policy}\n </p>\n </div>\n )\n })}\n </div>\n </div> */}\n {envPasswordHelperText && (\n <div className=\"mt-4\">\n <div className=\"grid\">\n {envPasswordHelperText\n .split('\\\\n')\n .map((text, idx) => (\n <div key={idx} className=\"col-6 pt-0\">\n <div className='flex gap-2'><span>•</span><span>{text}</span></div>\n </div>\n ))}\n </div>\n </div>\n )}\n <div className=\"mt-4\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Change Password\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n </div>\n </form>\n </>\n )\n}\nexport default SolidChangeForcePassword\n"]}
1
+ {"version":3,"file":"SolidChangeForcePassword.js","sourceRoot":"","sources":["../../../src/components/auth/SolidChangeForcePassword.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE9E,IAAM,wBAAwB,GAAG;;IAC7B,IAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IACxB,IAAA,cAAc,GAAI,yBAAyB,EAAE,GAA/B,CAAgC;IAErD,IAAM,OAAO,GAAQ,UAAU,EAAE,CAAC;IAElC,IAAM,gBAAgB,GAAG,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC3D,IAAM,qBAAqB,GAAG,GAAG,CAAC,sCAAsC,CAAC,CAAC;IAC1E,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI;QACA,IAAI,gBAAgB,EAAE;YAClB,IAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAI,gBAAgB,OAAG,CAAC,CAAC;YACtD,aAAa,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;SACzC;KACJ;IAAC,OAAO,KAAK,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;KAC9D;IAED,IAAM,qBAAqB,GAAG,aAAa;QACvC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE;aACT,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,oBAAoB,CAAC;aAC3D,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC5D,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;aACtD,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,CAAC;IAEjE,IAAM,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC;QAChC,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;QACxH,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACtI,WAAW,EAAE,qBAAqB;QAClC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE;aACxB,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC;aAC1D,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAChE,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;KACtE,CAAC,CAAC;IAEH,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,EAAa;gBAAX,SAAS,eAAA;;;;;;;;4BAEtB,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;4BAGe,qBAAM,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAA;;4BAAjD,QAAQ,GAAG,SAAsC;4BACvD,IAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,EAAE;gCACjB,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;gCACjG,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,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,qBAAqB,EAAE,MAAM,EAAE,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gCACpI,OAAO,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAA;6BAC1C;;;;4BAED,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAA,KAAG,aAAH,KAAG,uBAAH,KAAG,CAAE,IAAI,0CAAE,OAAO,EAAE,CAAC,CAAC,CAAC;;;;;;SAKnH;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,IAAM,gBAAgB,GAAG;QACrB;YACI,MAAM,EAAE,sBAAsB;SACjC;QACD;YACI,MAAM,EAAE,mBAAmB;SAC9B;QACD;YACI,MAAM,EAAE,sBAAsB;SACjC;QACD;YACI,MAAM,EAAE,sBAAsB;SACjC;QACD;YACI,MAAM,EAAE,mBAAmB;SAC9B;QACD;YACI,MAAM,EAAE,mCAAmC;SAC9C;KACJ,CAAA;IAED,OAAO,CACH,4BACI,gBAAM,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,EAAC,+BAA+B,aAC1E,eAAK,SAAS,EAAC,0BAA0B,EAAC,KAAK,EAAE,EAAE,aAC/C,gBAAO,OAAO,EAAC,iBAAiB,EAAC,SAAS,EAAC,wBAAwB,iCAAyB,EAC5F,KAAC,kBAAkB,IACf,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,MAAM,wBACQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,EAC7C,SAAS,EAAC,QAAQ,GACpB,EACD,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAC5C,KAAC,YAAY,IACT,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,CACL,IACC,EACN,eAAK,SAAS,EAAC,kDAAkD,EAAC,KAAK,EAAE,EAAE,aACvE,gBAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,wBAAwB,6BAAqB,EACjF,KAAC,kBAAkB,IACf,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,MAAM,wBACQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EACzC,SAAS,EAAC,QAAQ,GACpB,EACD,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CACxC,KAAC,YAAY,IACT,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,CACL,IACC,EACN,eAAK,SAAS,EAAC,kDAAkD,EAAC,KAAK,EAAE,EAAE,aACvE,gBAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAC,wBAAwB,iCAAyB,EACrF,KAAC,kBAAkB,IACf,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,MAAM,wBACQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,EAC7C,SAAS,EAAC,QAAQ,GACpB,EACD,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAC5C,KAAC,YAAY,IACT,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,CACL,IACC,EAmBL,qBAAqB,IAAI,CACtB,cAAK,SAAS,EAAC,MAAM,YACjB,cAAK,SAAS,EAAC,8BAA8B,YACxC,qBAAqB;6BACjB,KAAK,CAAC,KAAK,CAAC;6BACZ,GAAG,CAAC,UAAC,IAAI,EAAE,GAAG,IAAK,OAAA,CAChB,cAAe,SAAS,EAAC,iBAAiB,YACtC,eAAK,SAAS,EAAC,YAAY,aAAC,oCAAc,EAAA,yBAAO,IAAI,GAAQ,IAAM,IAD7D,GAAG,CAEP,CACT,EAJmB,CAInB,CAAC,GACJ,GACJ,CACT,EACD,cAAK,SAAS,EAAC,MAAM,YACjB,KAAC,WAAW,IACR,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,sCAAsC,EAChD,KAAK,EAAC,iBAAiB,EACvB,QAAQ,EAAE,MAAM,CAAC,YAAY,EAC7B,OAAO,EAAE,MAAM,CAAC,YAAY,GAC9B,GACA,IACH,GACR,CACN,CAAA;AACL,CAAC,CAAA;AACD,eAAe,wBAAwB,CAAA","sourcesContent":["import { ERROR_MESSAGES } from '../../constants/error-messages';\nimport { useChangePasswordMutation } from '../../redux/api/authApi';\nimport { useFormik } from 'formik';\nimport { signOut } from \"../../adapters/auth/index\";\nimport { useSession } from \"../../hooks/useSession\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from 'yup';\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { SolidButton, SolidMessage, SolidPasswordInput } from \"../shad-cn-ui\";\n\nconst SolidChangeForcePassword = () => {\n const dispatch = useDispatch();\n const [changePassword] = useChangePasswordMutation();\n\n const session: any = useSession();\n\n const envPasswordRegex = env(\"NEXT_PUBLIC_PASSWORD_REGEX\");\n const envPasswordHelperText = env(\"NEXT_PUBLIC_PASSWORD_COMPLEXITY_DESC\");\n let passwordRegex: RegExp | null = null;\n try {\n if (envPasswordRegex) {\n const unescaped = JSON.parse(`\"${envPasswordRegex}\"`);\n passwordRegex = new RegExp(unescaped);\n }\n } catch (error) {\n console.error(ERROR_MESSAGES.INVALID_PASSWORD_REGX, error);\n }\n\n const newPasswordValidation = passwordRegex\n ? Yup.string()\n .matches(passwordRegex, ERROR_MESSAGES.PASSWORD_DO_NOT_MEET)\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'))\n : Yup.string().min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('New password'));\n\n const validationSchema = Yup.object({\n email: Yup.string().email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email')).required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n currentPassword: Yup.string().min(6, ERROR_MESSAGES.PASSWORD_CHARACTER(6)).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_REUQIRED('User ID')),\n });\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 }) => {\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 // Call the mutation and handle the response\n const response = await changePassword(payload).unwrap(); // Await the API call and unwrap to handle errors.\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.FORCE_PASSWORD_CHANGE, detail: ERROR_MESSAGES.PASSWORD_CHANGE }));\n signOut({ callbackUrl: \"/auth/login\" })\n }\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.LOGIN_ERROR, detail: err?.data?.message }));\n // setErrors({\n // currentPassword: \"Incorrect Current Password\",\n // })\n }\n },\n });\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n const passwordPolicies = [\n {\n policy: \"8 characters minimum\"\n },\n {\n policy: \"No Spaces Allowed\"\n },\n {\n policy: \"One uppercase letter\"\n },\n {\n policy: \"One lowercase letter\"\n },\n {\n policy: \"One numeric digit\"\n },\n {\n policy: \"One special character(!, @, #, $)\"\n },\n ]\n\n return (\n <>\n <form onSubmit={formik.handleSubmit} className='flex flex-col gap-4 auth-form'>\n <div className=\"flex flex-col gap-2 mt-2\" style={{}}>\n <label htmlFor=\"currentPassword\" className=\"solid-auth-input-label\">Current Password</label>\n <SolidPasswordInput\n id=\"currentPassword\"\n name=\"currentPassword\"\n value={formik.values.currentPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.currentPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"currentPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.currentPassword?.toString()}\n />\n )}\n </div>\n <div className=\"flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">New Password</label>\n <SolidPasswordInput\n id=\"newPassword\"\n name=\"newPassword\"\n value={formik.values.newPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.newPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"newPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.newPassword?.toString()}\n />\n )}\n </div>\n <div className=\"flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4\" style={{}}>\n <label htmlFor=\"password\" className=\"solid-auth-input-label\">Confirm Password</label>\n <SolidPasswordInput\n id=\"confirmPassword\"\n name=\"confirmPassword\"\n value={formik.values.confirmPassword}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n toggle\n aria-invalid={!!formik.errors.confirmPassword}\n className=\"w-full\"\n />\n {isFormFieldValid(formik, \"confirmPassword\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.confirmPassword?.toString()}\n />\n )}\n </div>\n {/* <div className='mt-6'>\n <div className='flex flex-wrap -mx-2 gap-y-2'>\n {passwordPolicies.map((policy, index) => {\n return (\n <div key={index} className='w-1/2 px-2'>\n <p className=\"solid-auth-input-label flex items-center gap-2\">\n <div className='flex items-center justify-center' style={{ height: 14, width: 14, borderRadius: '50%', backgroundColor: '#A4A4A4' }}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M4.86813 8.72999L2.28979 6.15166L2.91396 5.52749L4.86813 7.48166L9.08563 3.26416L9.7098 3.88833L4.86813 8.72999Z\" fill=\"#E8EAED\" />\n </svg>\n </div>\n {policy.policy}\n </p>\n </div>\n )\n })}\n </div>\n </div> */}\n {envPasswordHelperText && (\n <div className=\"mt-6\">\n <div className=\"flex flex-wrap -mx-2 gap-y-2\">\n {envPasswordHelperText\n .split('\\\\n')\n .map((text, idx) => (\n <div key={idx} className=\"w-1/2 px-2 pt-0\">\n <div className='flex gap-2'><span>•</span><span>{text}</span></div>\n </div>\n ))}\n </div>\n </div>\n )}\n <div className=\"mt-6\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Change Password\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n </div>\n </form>\n </>\n )\n}\nexport default SolidChangeForcePassword\n"]}
@@ -109,8 +109,8 @@ const SolidChangeForcePassword = () => {
109
109
 
110
110
  return (
111
111
  <>
112
- <form onSubmit={formik.handleSubmit} className='d-flex flex-column gap-3 auth-form'>
113
- <div className="flex flex-column gap-2 mt-2" style={{}}>
112
+ <form onSubmit={formik.handleSubmit} className='flex flex-col gap-4 auth-form'>
113
+ <div className="flex flex-col gap-2 mt-2" style={{}}>
114
114
  <label htmlFor="currentPassword" className="solid-auth-input-label">Current Password</label>
115
115
  <SolidPasswordInput
116
116
  id="currentPassword"
@@ -130,7 +130,7 @@ const SolidChangeForcePassword = () => {
130
130
  />
131
131
  )}
132
132
  </div>
133
- <div className="flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4" style={{}}>
133
+ <div className="flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4" style={{}}>
134
134
  <label htmlFor="password" className="solid-auth-input-label">New Password</label>
135
135
  <SolidPasswordInput
136
136
  id="newPassword"
@@ -150,7 +150,7 @@ const SolidChangeForcePassword = () => {
150
150
  />
151
151
  )}
152
152
  </div>
153
- <div className="flex flex-column gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4" style={{}}>
153
+ <div className="flex flex-col gap-2 mt-1 sm:mt-2 md:mt-3 lg:mt-4" style={{}}>
154
154
  <label htmlFor="password" className="solid-auth-input-label">Confirm Password</label>
155
155
  <SolidPasswordInput
156
156
  id="confirmPassword"
@@ -170,13 +170,13 @@ const SolidChangeForcePassword = () => {
170
170
  />
171
171
  )}
172
172
  </div>
173
- {/* <div className='mt-4'>
174
- <div className='grid'>
173
+ {/* <div className='mt-6'>
174
+ <div className='flex flex-wrap -mx-2 gap-y-2'>
175
175
  {passwordPolicies.map((policy, index) => {
176
176
  return (
177
- <div key={index} className='col-6'>
178
- <p className="solid-auth-input-label flex align-items-center gap-2">
179
- <div className='flex align-items-center justify-content-center' style={{ height: 14, width: 14, borderRadius: '50%', backgroundColor: '#A4A4A4' }}>
177
+ <div key={index} className='w-1/2 px-2'>
178
+ <p className="solid-auth-input-label flex items-center gap-2">
179
+ <div className='flex items-center justify-center' style={{ height: 14, width: 14, borderRadius: '50%', backgroundColor: '#A4A4A4' }}>
180
180
  <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
181
181
  <path d="M4.86813 8.72999L2.28979 6.15166L2.91396 5.52749L4.86813 7.48166L9.08563 3.26416L9.7098 3.88833L4.86813 8.72999Z" fill="#E8EAED" />
182
182
  </svg>
@@ -189,19 +189,19 @@ const SolidChangeForcePassword = () => {
189
189
  </div>
190
190
  </div> */}
191
191
  {envPasswordHelperText && (
192
- <div className="mt-4">
193
- <div className="grid">
192
+ <div className="mt-6">
193
+ <div className="flex flex-wrap -mx-2 gap-y-2">
194
194
  {envPasswordHelperText
195
195
  .split('\\n')
196
196
  .map((text, idx) => (
197
- <div key={idx} className="col-6 pt-0">
197
+ <div key={idx} className="w-1/2 px-2 pt-0">
198
198
  <div className='flex gap-2'><span>•</span><span>{text}</span></div>
199
199
  </div>
200
200
  ))}
201
201
  </div>
202
202
  </div>
203
203
  )}
204
- <div className="mt-4">
204
+ <div className="mt-6">
205
205
  <SolidButton
206
206
  type="submit"
207
207
  className="w-full font-light auth-submit-button"
@@ -100,7 +100,7 @@ var SolidForgotPassword = function (_a) {
100
100
  var isFormFieldValid = function (formik, fieldName) {
101
101
  return formik.touched[fieldName] && formik.errors[fieldName];
102
102
  };
103
- return (_jsx(_Fragment, { 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: [_jsx("h2", { className: "solid-auth-title", children: "Forgot password" }), _jsxs("p", { className: "solid-auth-helper", children: ["Enter your email. ", _jsx("br", {}), "Please note that you will receive an email with password reset instructions if an account exists for the corresponding masked email address."] }), _jsxs("form", { onSubmit: formik.handleSubmit, children: [_jsxs("div", { className: "flex flex-column gap-2", children: [_jsx("label", { htmlFor: "email", className: "solid-auth-input-label", children: signInValidatorLabel ? signInValidatorLabel : "Email" }), _jsx(SolidInput, { id: "email", name: "email", placeholder: signInValidatorPlaceholder ? signInValidatorPlaceholder : "Email ID", value: formik.values.email, onChange: formik.handleChange, onBlur: formik.handleBlur, autoComplete: "off" }), isFormFieldValid(formik, "email") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_d = (_c = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _c === void 0 ? void 0 : _c.email) === null || _d === void 0 ? void 0 : _d.toString() }))] }), _jsxs("div", { className: "mt-4", children: [_jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Continue", disabled: formik.isSubmitting, loading: formik.isSubmitting }), _jsx(SolidButton, { type: "button", label: "Back", className: "w-full auth-back-button text-center mt-1", text: true, onClick: function () { return (window.location.href = '/auth/login'); } })] })] })] }) }));
103
+ return (_jsx(_Fragment, { 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: [_jsx("h2", { className: "solid-auth-title", children: "Forgot password" }), _jsxs("p", { className: "solid-auth-helper", children: ["Enter your email. ", _jsx("br", {}), "Please note that you will receive an email with password reset instructions if an account exists for the corresponding masked email address."] }), _jsxs("form", { onSubmit: formik.handleSubmit, children: [_jsxs("div", { className: "flex flex-col gap-2", children: [_jsx("label", { htmlFor: "email", className: "solid-auth-input-label", children: signInValidatorLabel ? signInValidatorLabel : "Email" }), _jsx(SolidInput, { id: "email", name: "email", placeholder: signInValidatorPlaceholder ? signInValidatorPlaceholder : "Email ID", value: formik.values.email, onChange: formik.handleChange, onBlur: formik.handleBlur, autoComplete: "off" }), isFormFieldValid(formik, "email") && (_jsx(SolidMessage, { className: "text-red-500 text-sm", severity: "error", text: (_d = (_c = formik === null || formik === void 0 ? void 0 : formik.errors) === null || _c === void 0 ? void 0 : _c.email) === null || _d === void 0 ? void 0 : _d.toString() }))] }), _jsxs("div", { className: "mt-6", children: [_jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Continue", disabled: formik.isSubmitting, loading: formik.isSubmitting }), _jsx(SolidButton, { type: "button", label: "Back", className: "w-full auth-back-button text-center mt-1", text: true, onClick: function () { return (window.location.href = '/auth/login'); } })] })] })] }) }));
104
104
  };
105
105
  export default SolidForgotPassword;
106
106
  //# sourceMappingURL=SolidForgotPassword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SolidForgotPassword.js","sourceRoot":"","sources":["../../../src/components/auth/SolidForgotPassword.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useInitiateChangePasswordMutation } from \"../../redux/api/authApi\";\nimport { useFormik } from \"formik\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport * as Yup from \"yup\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { useDispatch } from \"react-redux\";\nimport { SolidButton, SolidInput, SolidMessage } from \"../shad-cn-ui\";\nimport { useAuthSettings } from \"./AuthSettingsContext\";\n\nconst SolidForgotPassword = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) => {\n const { solidSettingsData } = useAuthSettings();\n\n const dispatch = useDispatch();\n const router = useRouter();\n const [initiateChangePassword] = useInitiateChangePasswordMutation();\n const validationSchema = Yup.object({\n email: Yup.string()\n .email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email'))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n });\n function maskEmail(email: string) {\n const [localPart, domain] = email.split('@');\n const maskedLocal = localPart.slice(0, 3) + '*'.repeat(localPart.length - 3);\n const maskedDomain = domain.slice(-8).padStart(domain.length, '*');\n return `${maskedLocal}@${maskedDomain}`;\n }\n\n const formik = useFormik({\n initialValues: {\n email: \"\",\n },\n validationSchema,\n onSubmit: async (values) => {\n try {\n const payload = {\n email: values.email,\n };\n const response = await initiateChangePassword(payload).unwrap();\n if (response?.statusCode === 200) {\n const email = values?.email;\n const maskedEmail = maskEmail(email);\n router.push(`/auth/initiate-forgot-password-thank-you?email=${maskedEmail}`)\n } else (\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.ERROR, detail: response.error }))\n )\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));\n }\n },\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <>\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n <h2 className=\"solid-auth-title\">Forgot password</h2>\n <p className=\"solid-auth-helper\">Enter your email. <br></br>Please note that you will receive an email with password reset instructions if an account exists for the corresponding masked email address.</p>\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 <form onSubmit={formik.handleSubmit}>\n <div className=\"flex flex-column gap-2\">\n <label htmlFor=\"email\" className=\"solid-auth-input-label\">{signInValidatorLabel ? signInValidatorLabel : \"Email\"}</label>\n <SolidInput\n id=\"email\"\n name=\"email\"\n placeholder={signInValidatorPlaceholder ? signInValidatorPlaceholder : \"Email ID\"}\n value={formik.values.email}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n autoComplete=\"off\"\n />\n {isFormFieldValid(formik, \"email\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.email?.toString()}\n />\n )}\n </div>\n <div className=\"mt-4\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Continue\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n <SolidButton\n type=\"button\"\n label=\"Back\"\n className=\"w-full auth-back-button text-center mt-1\"\n text\n onClick={() => (window.location.href = '/auth/login')}\n />\n </div>\n </form>\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 SolidForgotPassword;\n"]}
1
+ {"version":3,"file":"SolidForgotPassword.js","sourceRoot":"","sources":["../../../src/components/auth/SolidForgotPassword.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useInitiateChangePasswordMutation } from \"../../redux/api/authApi\";\nimport { useFormik } from \"formik\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport * as Yup from \"yup\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { useDispatch } from \"react-redux\";\nimport { SolidButton, SolidInput, SolidMessage } from \"../shad-cn-ui\";\nimport { useAuthSettings } from \"./AuthSettingsContext\";\n\nconst SolidForgotPassword = ({ signInValidatorLabel, signInValidatorPlaceholder }: any) => {\n const { solidSettingsData } = useAuthSettings();\n\n const dispatch = useDispatch();\n const router = useRouter();\n const [initiateChangePassword] = useInitiateChangePasswordMutation();\n const validationSchema = Yup.object({\n email: Yup.string()\n .email(ERROR_MESSAGES.FIELD_INAVLID_FORMAT('email'))\n .required(ERROR_MESSAGES.FIELD_REUQIRED('Email')),\n });\n function maskEmail(email: string) {\n const [localPart, domain] = email.split('@');\n const maskedLocal = localPart.slice(0, 3) + '*'.repeat(localPart.length - 3);\n const maskedDomain = domain.slice(-8).padStart(domain.length, '*');\n return `${maskedLocal}@${maskedDomain}`;\n }\n\n const formik = useFormik({\n initialValues: {\n email: \"\",\n },\n validationSchema,\n onSubmit: async (values) => {\n try {\n const payload = {\n email: values.email,\n };\n const response = await initiateChangePassword(payload).unwrap();\n if (response?.statusCode === 200) {\n const email = values?.email;\n const maskedEmail = maskEmail(email);\n router.push(`/auth/initiate-forgot-password-thank-you?email=${maskedEmail}`)\n } else (\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.ERROR, detail: response.error }))\n )\n } catch (err: any) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.ERROR, detail: err?.data ? err?.data?.message : ERROR_MESSAGES.SOMETHING_WRONG }));\n }\n },\n });\n\n const isFormFieldValid = (formik: any, fieldName: string) =>\n formik.touched[fieldName] && formik.errors[fieldName];\n\n return (\n <>\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n <h2 className=\"solid-auth-title\">Forgot password</h2>\n <p className=\"solid-auth-helper\">Enter your email. <br></br>Please note that you will receive an email with password reset instructions if an account exists for the corresponding masked email address.</p>\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 <form onSubmit={formik.handleSubmit}>\n <div className=\"flex flex-col gap-2\">\n <label htmlFor=\"email\" className=\"solid-auth-input-label\">{signInValidatorLabel ? signInValidatorLabel : \"Email\"}</label>\n <SolidInput\n id=\"email\"\n name=\"email\"\n placeholder={signInValidatorPlaceholder ? signInValidatorPlaceholder : \"Email ID\"}\n value={formik.values.email}\n onChange={formik.handleChange}\n onBlur={formik.handleBlur}\n autoComplete=\"off\"\n />\n {isFormFieldValid(formik, \"email\") && (\n <SolidMessage\n className=\"text-red-500 text-sm\"\n severity=\"error\"\n text={formik?.errors?.email?.toString()}\n />\n )}\n </div>\n <div className=\"mt-6\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Continue\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n <SolidButton\n type=\"button\"\n label=\"Back\"\n className=\"w-full auth-back-button text-center mt-1\"\n text\n onClick={() => (window.location.href = '/auth/login')}\n />\n </div>\n </form>\n </div>\n {/* <div className=\"text-center mt-8\">\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 SolidForgotPassword;\n"]}
@@ -60,7 +60,7 @@ const SolidForgotPassword = ({ signInValidatorLabel, signInValidatorPlaceholder
60
60
  <p className="solid-auth-helper">Enter your email. <br></br>Please note that you will receive an email with password reset instructions if an account exists for the corresponding masked email address.</p>
61
61
  {/* <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> */}
62
62
  <form onSubmit={formik.handleSubmit}>
63
- <div className="flex flex-column gap-2">
63
+ <div className="flex flex-col gap-2">
64
64
  <label htmlFor="email" className="solid-auth-input-label">{signInValidatorLabel ? signInValidatorLabel : "Email"}</label>
65
65
  <SolidInput
66
66
  id="email"
@@ -79,7 +79,7 @@ const SolidForgotPassword = ({ signInValidatorLabel, signInValidatorPlaceholder
79
79
  />
80
80
  )}
81
81
  </div>
82
- <div className="mt-4">
82
+ <div className="mt-6">
83
83
  <SolidButton
84
84
  type="submit"
85
85
  className="w-full font-light auth-submit-button"
@@ -97,7 +97,7 @@ const SolidForgotPassword = ({ signInValidatorLabel, signInValidatorPlaceholder
97
97
  </div>
98
98
  </form>
99
99
  </div>
100
- {/* <div className="text-center mt-5">
100
+ {/* <div className="text-center mt-8">
101
101
  <div className="text-sm text-400 secondary-dark-color">
102
102
  {'<'} Back to <Link className="font-bold" href="/auth/login">Sign In</Link>
103
103
  </div>
@@ -199,7 +199,7 @@ var SolidInitialLoginOtp = function () {
199
199
  ? "You can resend now."
200
200
  : "Time left: ".concat(Math.floor(timeLeft / 60)
201
201
  .toString()
202
- .padStart(2, "0"), ":").concat((timeLeft % 60).toString().padStart(2, "0")) })] }), _jsxs("div", { className: "mt-4", children: [_jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Verify", disabled: formik.isSubmitting, loading: formik.isSubmitting }), _jsx(SolidButton, { type: "button", label: "Back", className: "w-full auth-back-button text-center mt-1", text: true, onClick: function () { return (window.location.href = '/auth/login'); } })] })] }));
202
+ .padStart(2, "0"), ":").concat((timeLeft % 60).toString().padStart(2, "0")) })] }), _jsxs("div", { className: "mt-6", children: [_jsx(SolidButton, { type: "submit", className: "w-full font-light auth-submit-button", label: "Verify", disabled: formik.isSubmitting, loading: formik.isSubmitting }), _jsx(SolidButton, { type: "button", label: "Back", className: "w-full auth-back-button text-center mt-1", text: true, onClick: function () { return (window.location.href = '/auth/login'); } })] })] }));
203
203
  } }) })] }) }));
204
204
  };
205
205
  export default SolidInitialLoginOtp;
@@ -1 +1 @@
1
- {"version":3,"file":"SolidInitialLoginOtp.js","sourceRoot":"","sources":["../../../src/components/auth/SolidInitialLoginOtp.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useInitateLoginMutation } from \"../../redux/api/authApi\";\nimport { Form, Formik } from \"formik\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from \"yup\";\nimport { signInWithOtp } from \"../../adapters/auth/index\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { SolidButton, SolidIcon, SolidMessage, SolidOtpInput } from \"../shad-cn-ui\";\nimport { useAuthSettings } from \"./AuthSettingsContext\";\n\n\nconst SolidInitialLoginOtp = () => {\n const searchParams = useSearchParams();\n const tempIdentifier = searchParams.get('identifier');\n const type = searchParams.get('type') || 'email';\n const identifier = tempIdentifier ? decodeURIComponent(tempIdentifier) : '';\n\n const RESEND_OTP_KEY = `resendOtpLogin_${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 const { solidSettingsData } = useAuthSettings();\n\n const [initiateResendOTP] = useInitateLoginMutation();\n const dispatch = useDispatch();\n const router = useRouter();\n const [timeLeft, setTimeLeft] = useState(RESEND_OTP_TIMER);\n const [resendEnabled, setResendEnabled] = useState(false);\n\n const getDisplayText = () => {\n switch (type) {\n case \"mobile\":\n return {\n title: \"OTP Verification\",\n subtitle: \"Please enter the OTP sent to your mobile number to complete verification\"\n };\n case \"email\":\n default:\n return {\n title: \"OTP Verification\",\n subtitle: \"Please enter the OTP sent to your email to complete verification\"\n };\n }\n };\n\n const displayText = getDisplayText();\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 }, [identifier]);\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\n const handleResendOtp = async () => {\n try {\n const payload = {\n type: type,\n identifier: identifier,\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\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n <h2 className=\"solid-auth-title\">{displayText.title}</h2>\n <p className=\"solid-auth-helper\">\n {displayText.subtitle}{\" \"}\n <span className=\"solid-auth-helper-emphasis\">{identifier}</span>\n </p>\n <>\n <Formik\n initialValues={{\n otp: \"\",\n }}\n validationSchema={validationSchema}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const response = await signInWithOtp({\n type: type,\n identifier: identifier,\n otp: values.otp,\n });\n\n if (response?.error) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.INAVLID_OTP, detail: response.error }));\n setErrors({\n otp: ERROR_MESSAGES.INAVLID_OTP,\n });\n } else {\n localStorage.removeItem(`resendOtpLogin_${identifier}`);\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 (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=\"solid-auth-otp-field\">\n <div className=\"solid-auth-otp-top\">\n <label htmlFor=\"otp\" className=\"solid-auth-input-label\">Verification code</label>\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-auth-otp-resend\"\n onClick={handleResendOtp}\n disabled={!resendEnabled}\n leftIcon={<SolidIcon name=\"si-refresh\" aria-hidden />}\n >\n Resend code\n </SolidButton>\n </div>\n <SolidOtpInput\n id=\"otp\"\n className=\"solid-auth-otp-input\"\n value={formik.values.otp}\n onChange={(nextValue) => formik.setFieldValue(\"otp\", nextValue)}\n length={6}\n integerOnly\n invalid={!!formik.errors.otp}\n />\n {isFormFieldValid(formik, \"otp\") && (\n <SolidMessage className=\"text-red-500 text-sm\" severity=\"error\" text={formik.errors.otp?.toString()} />\n )}\n <p className=\"solid-auth-otp-time\">\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 className=\"mt-4\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Verify\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n <SolidButton\n type=\"button\"\n label=\"Back\"\n className=\"w-full auth-back-button text-center mt-1\"\n text\n onClick={() => (window.location.href = '/auth/login')}\n />\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\">Back</Link>\n </div>\n </div> */}\n </>\n );\n};\n\nexport default SolidInitialLoginOtp;\n"]}
1
+ {"version":3,"file":"SolidInitialLoginOtp.js","sourceRoot":"","sources":["../../../src/components/auth/SolidInitialLoginOtp.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useInitateLoginMutation } from \"../../redux/api/authApi\";\nimport { Form, Formik } from \"formik\";\nimport { useRouter } from \"../../hooks/useRouter\";\nimport { useSearchParams } from \"../../hooks/useSearchParams\";\nimport { useEffect, useState } from \"react\";\nimport { useDispatch } from 'react-redux';\nimport * as Yup from \"yup\";\nimport { signInWithOtp } from \"../../adapters/auth/index\";\nimport { ERROR_MESSAGES } from \"../../constants/error-messages\";\nimport { env } from \"../../adapters/env\";\nimport { showToast } from \"../../redux/features/toastSlice\";\nimport { SolidButton, SolidIcon, SolidMessage, SolidOtpInput } from \"../shad-cn-ui\";\nimport { useAuthSettings } from \"./AuthSettingsContext\";\n\n\nconst SolidInitialLoginOtp = () => {\n const searchParams = useSearchParams();\n const tempIdentifier = searchParams.get('identifier');\n const type = searchParams.get('type') || 'email';\n const identifier = tempIdentifier ? decodeURIComponent(tempIdentifier) : '';\n\n const RESEND_OTP_KEY = `resendOtpLogin_${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 const { solidSettingsData } = useAuthSettings();\n\n const [initiateResendOTP] = useInitateLoginMutation();\n const dispatch = useDispatch();\n const router = useRouter();\n const [timeLeft, setTimeLeft] = useState(RESEND_OTP_TIMER);\n const [resendEnabled, setResendEnabled] = useState(false);\n\n const getDisplayText = () => {\n switch (type) {\n case \"mobile\":\n return {\n title: \"OTP Verification\",\n subtitle: \"Please enter the OTP sent to your mobile number to complete verification\"\n };\n case \"email\":\n default:\n return {\n title: \"OTP Verification\",\n subtitle: \"Please enter the OTP sent to your email to complete verification\"\n };\n }\n };\n\n const displayText = getDisplayText();\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 }, [identifier]);\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\n const handleResendOtp = async () => {\n try {\n const payload = {\n type: type,\n identifier: identifier,\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\n <div className={`auth-container ${solidSettingsData?.data?.authPagesLayout === 'center' ? 'center' : 'side'}`}>\n <h2 className=\"solid-auth-title\">{displayText.title}</h2>\n <p className=\"solid-auth-helper\">\n {displayText.subtitle}{\" \"}\n <span className=\"solid-auth-helper-emphasis\">{identifier}</span>\n </p>\n <>\n <Formik\n initialValues={{\n otp: \"\",\n }}\n validationSchema={validationSchema}\n onSubmit={async (values, { setSubmitting, setErrors }) => {\n try {\n const response = await signInWithOtp({\n type: type,\n identifier: identifier,\n otp: values.otp,\n });\n\n if (response?.error) {\n dispatch(showToast({ severity: \"error\", summary: ERROR_MESSAGES.INAVLID_OTP, detail: response.error }));\n setErrors({\n otp: ERROR_MESSAGES.INAVLID_OTP,\n });\n } else {\n localStorage.removeItem(`resendOtpLogin_${identifier}`);\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 (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=\"solid-auth-otp-field\">\n <div className=\"solid-auth-otp-top\">\n <label htmlFor=\"otp\" className=\"solid-auth-input-label\">Verification code</label>\n <SolidButton\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n className=\"solid-auth-otp-resend\"\n onClick={handleResendOtp}\n disabled={!resendEnabled}\n leftIcon={<SolidIcon name=\"si-refresh\" aria-hidden />}\n >\n Resend code\n </SolidButton>\n </div>\n <SolidOtpInput\n id=\"otp\"\n className=\"solid-auth-otp-input\"\n value={formik.values.otp}\n onChange={(nextValue) => formik.setFieldValue(\"otp\", nextValue)}\n length={6}\n integerOnly\n invalid={!!formik.errors.otp}\n />\n {isFormFieldValid(formik, \"otp\") && (\n <SolidMessage className=\"text-red-500 text-sm\" severity=\"error\" text={formik.errors.otp?.toString()} />\n )}\n <p className=\"solid-auth-otp-time\">\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 className=\"mt-6\">\n <SolidButton\n type=\"submit\"\n className=\"w-full font-light auth-submit-button\"\n label=\"Verify\"\n disabled={formik.isSubmitting}\n loading={formik.isSubmitting}\n />\n <SolidButton\n type=\"button\"\n label=\"Back\"\n className=\"w-full auth-back-button text-center mt-1\"\n text\n onClick={() => (window.location.href = '/auth/login')}\n />\n </div>\n </Form>\n )}\n </Formik>\n </>\n </div>\n {/* <div className=\"text-center mt-8\">\n <div className=\"text-sm text-400 secondary-dark-color\">\n {'<'} Back to <Link className=\"font-bold\" href=\"/auth/login\">Back</Link>\n </div>\n </div> */}\n </>\n );\n};\n\nexport default SolidInitialLoginOtp;\n"]}
@@ -196,7 +196,7 @@ const SolidInitialLoginOtp = () => {
196
196
  .padStart(2, "0")}:${(timeLeft % 60).toString().padStart(2, "0")}`}
197
197
  </p>
198
198
  </div>
199
- <div className="mt-4">
199
+ <div className="mt-6">
200
200
  <SolidButton
201
201
  type="submit"
202
202
  className="w-full font-light auth-submit-button"
@@ -217,7 +217,7 @@ const SolidInitialLoginOtp = () => {
217
217
  </Formik>
218
218
  </>
219
219
  </div>
220
- {/* <div className="text-center mt-5">
220
+ {/* <div className="text-center mt-8">
221
221
  <div className="text-sm text-400 secondary-dark-color">
222
222
  {'<'} Back to <Link className="font-bold" href="/auth/login">Back</Link>
223
223
  </div>