@contember/react-client-tenant 2.1.0-beta.2 → 2.2.0-alpha.2

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 (557) hide show
  1. package/dist/development/index.cjs +18 -0
  2. package/dist/development/index.cjs.map +1 -1
  3. package/dist/development/index.js +19 -1
  4. package/dist/development/index.js.map +1 -1
  5. package/dist/development/src/components/IdentityProvider.cjs.map +1 -1
  6. package/dist/development/src/components/IdentityProvider.js.map +1 -1
  7. package/dist/development/src/components/IdentityState.cjs.map +1 -1
  8. package/dist/development/src/components/IdentityState.js.map +1 -1
  9. package/dist/development/src/components/forms/ChangeMyPasswordForm.cjs.map +1 -1
  10. package/dist/development/src/components/forms/ChangeMyPasswordForm.js.map +1 -1
  11. package/dist/development/src/components/forms/ConfirmEmailChangeForm.cjs +52 -0
  12. package/dist/development/src/components/forms/ConfirmEmailChangeForm.cjs.map +1 -0
  13. package/dist/development/src/components/forms/ConfirmEmailChangeForm.js +52 -0
  14. package/dist/development/src/components/forms/ConfirmEmailChangeForm.js.map +1 -0
  15. package/dist/development/src/components/forms/CreateApiKeyForm.cjs.map +1 -1
  16. package/dist/development/src/components/forms/CreateApiKeyForm.js.map +1 -1
  17. package/dist/development/src/components/forms/CreateSessionTokenForm.cjs.map +1 -1
  18. package/dist/development/src/components/forms/CreateSessionTokenForm.js.map +1 -1
  19. package/dist/development/src/components/forms/InviteForm.cjs.map +1 -1
  20. package/dist/development/src/components/forms/InviteForm.js.map +1 -1
  21. package/dist/development/src/components/forms/LoginForm.cjs +3 -1
  22. package/dist/development/src/components/forms/LoginForm.cjs.map +1 -1
  23. package/dist/development/src/components/forms/LoginForm.js +3 -1
  24. package/dist/development/src/components/forms/LoginForm.js.map +1 -1
  25. package/dist/development/src/components/forms/OtpConfirmForm.cjs.map +1 -1
  26. package/dist/development/src/components/forms/OtpConfirmForm.js.map +1 -1
  27. package/dist/development/src/components/forms/OtpPrepareForm.cjs.map +1 -1
  28. package/dist/development/src/components/forms/OtpPrepareForm.js.map +1 -1
  29. package/dist/development/src/components/forms/PasswordResetForm.cjs.map +1 -1
  30. package/dist/development/src/components/forms/PasswordResetForm.js.map +1 -1
  31. package/dist/development/src/components/forms/PasswordResetRequestForm.cjs +3 -1
  32. package/dist/development/src/components/forms/PasswordResetRequestForm.cjs.map +1 -1
  33. package/dist/development/src/components/forms/PasswordResetRequestForm.js +3 -1
  34. package/dist/development/src/components/forms/PasswordResetRequestForm.js.map +1 -1
  35. package/dist/development/src/components/forms/PasswordlessSignInForm.cjs +2 -1
  36. package/dist/development/src/components/forms/PasswordlessSignInForm.cjs.map +1 -1
  37. package/dist/development/src/components/forms/PasswordlessSignInForm.js +2 -1
  38. package/dist/development/src/components/forms/PasswordlessSignInForm.js.map +1 -1
  39. package/dist/development/src/components/forms/PasswordlessSignInInitForm.cjs +3 -1
  40. package/dist/development/src/components/forms/PasswordlessSignInInitForm.cjs.map +1 -1
  41. package/dist/development/src/components/forms/PasswordlessSignInInitForm.js +3 -1
  42. package/dist/development/src/components/forms/PasswordlessSignInInitForm.js.map +1 -1
  43. package/dist/development/src/components/forms/RequestEmailVerificationForm.cjs +50 -0
  44. package/dist/development/src/components/forms/RequestEmailVerificationForm.cjs.map +1 -0
  45. package/dist/development/src/components/forms/RequestEmailVerificationForm.js +50 -0
  46. package/dist/development/src/components/forms/RequestEmailVerificationForm.js.map +1 -0
  47. package/dist/development/src/components/forms/TenantForm.cjs.map +1 -1
  48. package/dist/development/src/components/forms/TenantForm.js.map +1 -1
  49. package/dist/development/src/components/forms/UpdateProjectMemberForm.cjs.map +1 -1
  50. package/dist/development/src/components/forms/UpdateProjectMemberForm.js.map +1 -1
  51. package/dist/development/src/components/forms/VerifyEmailForm.cjs +50 -0
  52. package/dist/development/src/components/forms/VerifyEmailForm.cjs.map +1 -0
  53. package/dist/development/src/components/forms/VerifyEmailForm.js +50 -0
  54. package/dist/development/src/components/forms/VerifyEmailForm.js.map +1 -0
  55. package/dist/development/src/components/idp/IDP.cjs.map +1 -1
  56. package/dist/development/src/components/idp/IDP.js.map +1 -1
  57. package/dist/development/src/components/idp/IDPInitTrigger.cjs.map +1 -1
  58. package/dist/development/src/components/idp/IDPInitTrigger.js.map +1 -1
  59. package/dist/development/src/components/idp/IDPState.cjs.map +1 -1
  60. package/dist/development/src/components/idp/IDPState.js.map +1 -1
  61. package/dist/development/src/components/triggers/DisableOtpTrigger.cjs.map +1 -1
  62. package/dist/development/src/components/triggers/DisableOtpTrigger.js.map +1 -1
  63. package/dist/development/src/components/triggers/LogoutTrigger.cjs +3 -3
  64. package/dist/development/src/components/triggers/LogoutTrigger.cjs.map +1 -1
  65. package/dist/development/src/components/triggers/LogoutTrigger.js +3 -3
  66. package/dist/development/src/components/triggers/LogoutTrigger.js.map +1 -1
  67. package/dist/development/src/components/triggers/RemoveProjectMemberTrigger.cjs.map +1 -1
  68. package/dist/development/src/components/triggers/RemoveProjectMemberTrigger.js.map +1 -1
  69. package/dist/development/src/contexts.cjs.map +1 -1
  70. package/dist/development/src/contexts.js.map +1 -1
  71. package/dist/development/src/hooks/mutations/apiKey/useCreateApiKeyMutation.cjs.map +1 -1
  72. package/dist/development/src/hooks/mutations/apiKey/useCreateApiKeyMutation.js.map +1 -1
  73. package/dist/development/src/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.cjs.map +1 -1
  74. package/dist/development/src/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.js.map +1 -1
  75. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs.map +1 -1
  76. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js.map +1 -1
  77. package/dist/development/src/hooks/mutations/apiKey/useDisableApiKeyMutation.cjs.map +1 -1
  78. package/dist/development/src/hooks/mutations/apiKey/useDisableApiKeyMutation.js.map +1 -1
  79. package/dist/development/src/hooks/mutations/auth/useChangeMyPasswordMutation.cjs.map +1 -1
  80. package/dist/development/src/hooks/mutations/auth/useChangeMyPasswordMutation.js.map +1 -1
  81. package/dist/development/src/hooks/mutations/auth/useSignInMutation.cjs.map +1 -1
  82. package/dist/development/src/hooks/mutations/auth/useSignInMutation.js.map +1 -1
  83. package/dist/development/src/hooks/mutations/auth/useSignOutMutation.cjs.map +1 -1
  84. package/dist/development/src/hooks/mutations/auth/useSignOutMutation.js.map +1 -1
  85. package/dist/development/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.cjs +32 -0
  86. package/dist/development/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.cjs.map +1 -0
  87. package/dist/development/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.js +15 -0
  88. package/dist/development/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.js.map +1 -0
  89. package/dist/development/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.cjs +32 -0
  90. package/dist/development/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.cjs.map +1 -0
  91. package/dist/development/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.js +15 -0
  92. package/dist/development/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.js.map +1 -0
  93. package/dist/development/src/hooks/mutations/emailVerification/useVerifyEmailMutation.cjs +32 -0
  94. package/dist/development/src/hooks/mutations/emailVerification/useVerifyEmailMutation.cjs.map +1 -0
  95. package/dist/development/src/hooks/mutations/emailVerification/useVerifyEmailMutation.js +15 -0
  96. package/dist/development/src/hooks/mutations/emailVerification/useVerifyEmailMutation.js.map +1 -0
  97. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs.map +1 -1
  98. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.js.map +1 -1
  99. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.cjs.map +1 -1
  100. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.js.map +1 -1
  101. package/dist/development/src/hooks/mutations/invite/useInviteMutation.cjs.map +1 -1
  102. package/dist/development/src/hooks/mutations/invite/useInviteMutation.js.map +1 -1
  103. package/dist/development/src/hooks/mutations/memberships/useAddProjectMemberMutation.cjs.map +1 -1
  104. package/dist/development/src/hooks/mutations/memberships/useAddProjectMemberMutation.js.map +1 -1
  105. package/dist/development/src/hooks/mutations/memberships/useRemoveProjectMemberMutation.cjs.map +1 -1
  106. package/dist/development/src/hooks/mutations/memberships/useRemoveProjectMemberMutation.js.map +1 -1
  107. package/dist/development/src/hooks/mutations/memberships/useUpdateProjectMemberMutation.cjs.map +1 -1
  108. package/dist/development/src/hooks/mutations/memberships/useUpdateProjectMemberMutation.js.map +1 -1
  109. package/dist/development/src/hooks/mutations/otp/useConfirmOtpMutation.cjs.map +1 -1
  110. package/dist/development/src/hooks/mutations/otp/useConfirmOtpMutation.js.map +1 -1
  111. package/dist/development/src/hooks/mutations/otp/useDisableOtpMutation.cjs.map +1 -1
  112. package/dist/development/src/hooks/mutations/otp/useDisableOtpMutation.js.map +1 -1
  113. package/dist/development/src/hooks/mutations/otp/usePrepareOtpMutation.cjs.map +1 -1
  114. package/dist/development/src/hooks/mutations/otp/usePrepareOtpMutation.js.map +1 -1
  115. package/dist/development/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.cjs.map +1 -1
  116. package/dist/development/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.js.map +1 -1
  117. package/dist/development/src/hooks/mutations/passwordReset/useResetPasswordMutation.cjs.map +1 -1
  118. package/dist/development/src/hooks/mutations/passwordReset/useResetPasswordMutation.js.map +1 -1
  119. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs.map +1 -1
  120. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js.map +1 -1
  121. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs.map +1 -1
  122. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js.map +1 -1
  123. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs.map +1 -1
  124. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js.map +1 -1
  125. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs.map +1 -1
  126. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js.map +1 -1
  127. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs.map +1 -1
  128. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js.map +1 -1
  129. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.cjs.map +1 -1
  130. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.js.map +1 -1
  131. package/dist/development/src/hooks/mutations/profile/useChangeProfile.cjs.map +1 -1
  132. package/dist/development/src/hooks/mutations/profile/useChangeProfile.js.map +1 -1
  133. package/dist/development/src/hooks/queries/useMeQuery.cjs.map +1 -1
  134. package/dist/development/src/hooks/queries/useMeQuery.js.map +1 -1
  135. package/dist/development/src/hooks/queries/useProjectMembersQuery.cjs.map +1 -1
  136. package/dist/development/src/hooks/queries/useProjectMembersQuery.js.map +1 -1
  137. package/dist/development/src/hooks/queries/useProjectMembershipsQuery.cjs.map +1 -1
  138. package/dist/development/src/hooks/queries/useProjectMembershipsQuery.js.map +1 -1
  139. package/dist/development/src/hooks/queries/useProjectRolesDefinitionQuery.cjs.map +1 -1
  140. package/dist/development/src/hooks/queries/useProjectRolesDefinitionQuery.js.map +1 -1
  141. package/dist/development/src/hooks/useFetchIdentity.cjs.map +1 -1
  142. package/dist/development/src/hooks/useFetchIdentity.js.map +1 -1
  143. package/dist/development/src/hooks/useLogout.cjs.map +1 -1
  144. package/dist/development/src/hooks/useLogout.js.map +1 -1
  145. package/dist/development/src/hooks/usePasswordlessOtpActivator.cjs.map +1 -1
  146. package/dist/development/src/hooks/usePasswordlessOtpActivator.js.map +1 -1
  147. package/dist/development/src/hooks/useTenantMutation.cjs.map +1 -1
  148. package/dist/development/src/hooks/useTenantMutation.js.map +1 -1
  149. package/dist/development/src/internal/hooks/useHandleIDPResponse.cjs.map +1 -1
  150. package/dist/development/src/internal/hooks/useHandleIDPResponse.js.map +1 -1
  151. package/dist/development/src/internal/hooks/useInitIDPRedirect.cjs.map +1 -1
  152. package/dist/development/src/internal/hooks/useInitIDPRedirect.js.map +1 -1
  153. package/dist/development/src/internal/hooks/useLogoutInternal.cjs +12 -7
  154. package/dist/development/src/internal/hooks/useLogoutInternal.cjs.map +1 -1
  155. package/dist/development/src/internal/hooks/useLogoutInternal.js +13 -8
  156. package/dist/development/src/internal/hooks/useLogoutInternal.js.map +1 -1
  157. package/dist/development/src/internal/hooks/useRedirectToBacklink.cjs.map +1 -1
  158. package/dist/development/src/internal/hooks/useRedirectToBacklink.js.map +1 -1
  159. package/dist/production/index.cjs +18 -0
  160. package/dist/production/index.cjs.map +1 -1
  161. package/dist/production/index.js +19 -1
  162. package/dist/production/index.js.map +1 -1
  163. package/dist/production/src/components/IdentityProvider.cjs.map +1 -1
  164. package/dist/production/src/components/IdentityProvider.js.map +1 -1
  165. package/dist/production/src/components/IdentityState.cjs.map +1 -1
  166. package/dist/production/src/components/IdentityState.js.map +1 -1
  167. package/dist/production/src/components/forms/ChangeMyPasswordForm.cjs.map +1 -1
  168. package/dist/production/src/components/forms/ChangeMyPasswordForm.js.map +1 -1
  169. package/dist/production/src/components/forms/ConfirmEmailChangeForm.cjs +44 -0
  170. package/dist/production/src/components/forms/ConfirmEmailChangeForm.cjs.map +1 -0
  171. package/dist/production/src/components/forms/ConfirmEmailChangeForm.js +44 -0
  172. package/dist/production/src/components/forms/ConfirmEmailChangeForm.js.map +1 -0
  173. package/dist/production/src/components/forms/CreateApiKeyForm.cjs.map +1 -1
  174. package/dist/production/src/components/forms/CreateApiKeyForm.js.map +1 -1
  175. package/dist/production/src/components/forms/CreateSessionTokenForm.cjs.map +1 -1
  176. package/dist/production/src/components/forms/CreateSessionTokenForm.js.map +1 -1
  177. package/dist/production/src/components/forms/InviteForm.cjs.map +1 -1
  178. package/dist/production/src/components/forms/InviteForm.js.map +1 -1
  179. package/dist/production/src/components/forms/LoginForm.cjs +3 -1
  180. package/dist/production/src/components/forms/LoginForm.cjs.map +1 -1
  181. package/dist/production/src/components/forms/LoginForm.js +3 -1
  182. package/dist/production/src/components/forms/LoginForm.js.map +1 -1
  183. package/dist/production/src/components/forms/OtpConfirmForm.cjs.map +1 -1
  184. package/dist/production/src/components/forms/OtpConfirmForm.js.map +1 -1
  185. package/dist/production/src/components/forms/OtpPrepareForm.cjs.map +1 -1
  186. package/dist/production/src/components/forms/OtpPrepareForm.js.map +1 -1
  187. package/dist/production/src/components/forms/PasswordResetForm.cjs.map +1 -1
  188. package/dist/production/src/components/forms/PasswordResetForm.js.map +1 -1
  189. package/dist/production/src/components/forms/PasswordResetRequestForm.cjs +3 -1
  190. package/dist/production/src/components/forms/PasswordResetRequestForm.cjs.map +1 -1
  191. package/dist/production/src/components/forms/PasswordResetRequestForm.js +3 -1
  192. package/dist/production/src/components/forms/PasswordResetRequestForm.js.map +1 -1
  193. package/dist/production/src/components/forms/PasswordlessSignInForm.cjs +2 -1
  194. package/dist/production/src/components/forms/PasswordlessSignInForm.cjs.map +1 -1
  195. package/dist/production/src/components/forms/PasswordlessSignInForm.js +2 -1
  196. package/dist/production/src/components/forms/PasswordlessSignInForm.js.map +1 -1
  197. package/dist/production/src/components/forms/PasswordlessSignInInitForm.cjs +3 -1
  198. package/dist/production/src/components/forms/PasswordlessSignInInitForm.cjs.map +1 -1
  199. package/dist/production/src/components/forms/PasswordlessSignInInitForm.js +3 -1
  200. package/dist/production/src/components/forms/PasswordlessSignInInitForm.js.map +1 -1
  201. package/dist/production/src/components/forms/RequestEmailVerificationForm.cjs +42 -0
  202. package/dist/production/src/components/forms/RequestEmailVerificationForm.cjs.map +1 -0
  203. package/dist/production/src/components/forms/RequestEmailVerificationForm.js +42 -0
  204. package/dist/production/src/components/forms/RequestEmailVerificationForm.js.map +1 -0
  205. package/dist/production/src/components/forms/TenantForm.cjs.map +1 -1
  206. package/dist/production/src/components/forms/TenantForm.js.map +1 -1
  207. package/dist/production/src/components/forms/UpdateProjectMemberForm.cjs.map +1 -1
  208. package/dist/production/src/components/forms/UpdateProjectMemberForm.js.map +1 -1
  209. package/dist/production/src/components/forms/VerifyEmailForm.cjs +42 -0
  210. package/dist/production/src/components/forms/VerifyEmailForm.cjs.map +1 -0
  211. package/dist/production/src/components/forms/VerifyEmailForm.js +42 -0
  212. package/dist/production/src/components/forms/VerifyEmailForm.js.map +1 -0
  213. package/dist/production/src/components/idp/IDP.cjs.map +1 -1
  214. package/dist/production/src/components/idp/IDP.js.map +1 -1
  215. package/dist/production/src/components/idp/IDPInitTrigger.cjs.map +1 -1
  216. package/dist/production/src/components/idp/IDPInitTrigger.js.map +1 -1
  217. package/dist/production/src/components/idp/IDPState.cjs.map +1 -1
  218. package/dist/production/src/components/idp/IDPState.js.map +1 -1
  219. package/dist/production/src/components/triggers/DisableOtpTrigger.cjs.map +1 -1
  220. package/dist/production/src/components/triggers/DisableOtpTrigger.js.map +1 -1
  221. package/dist/production/src/components/triggers/LogoutTrigger.cjs +2 -2
  222. package/dist/production/src/components/triggers/LogoutTrigger.cjs.map +1 -1
  223. package/dist/production/src/components/triggers/LogoutTrigger.js +2 -2
  224. package/dist/production/src/components/triggers/LogoutTrigger.js.map +1 -1
  225. package/dist/production/src/components/triggers/RemoveProjectMemberTrigger.cjs.map +1 -1
  226. package/dist/production/src/components/triggers/RemoveProjectMemberTrigger.js.map +1 -1
  227. package/dist/production/src/contexts.cjs.map +1 -1
  228. package/dist/production/src/contexts.js.map +1 -1
  229. package/dist/production/src/hooks/mutations/apiKey/useCreateApiKeyMutation.cjs.map +1 -1
  230. package/dist/production/src/hooks/mutations/apiKey/useCreateApiKeyMutation.js.map +1 -1
  231. package/dist/production/src/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.cjs.map +1 -1
  232. package/dist/production/src/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.js.map +1 -1
  233. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs.map +1 -1
  234. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js.map +1 -1
  235. package/dist/production/src/hooks/mutations/apiKey/useDisableApiKeyMutation.cjs.map +1 -1
  236. package/dist/production/src/hooks/mutations/apiKey/useDisableApiKeyMutation.js.map +1 -1
  237. package/dist/production/src/hooks/mutations/auth/useChangeMyPasswordMutation.cjs.map +1 -1
  238. package/dist/production/src/hooks/mutations/auth/useChangeMyPasswordMutation.js.map +1 -1
  239. package/dist/production/src/hooks/mutations/auth/useSignInMutation.cjs.map +1 -1
  240. package/dist/production/src/hooks/mutations/auth/useSignInMutation.js.map +1 -1
  241. package/dist/production/src/hooks/mutations/auth/useSignOutMutation.cjs.map +1 -1
  242. package/dist/production/src/hooks/mutations/auth/useSignOutMutation.js.map +1 -1
  243. package/dist/production/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.cjs +32 -0
  244. package/dist/production/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.cjs.map +1 -0
  245. package/dist/production/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.js +15 -0
  246. package/dist/production/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.js.map +1 -0
  247. package/dist/production/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.cjs +32 -0
  248. package/dist/production/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.cjs.map +1 -0
  249. package/dist/production/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.js +15 -0
  250. package/dist/production/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.js.map +1 -0
  251. package/dist/production/src/hooks/mutations/emailVerification/useVerifyEmailMutation.cjs +32 -0
  252. package/dist/production/src/hooks/mutations/emailVerification/useVerifyEmailMutation.cjs.map +1 -0
  253. package/dist/production/src/hooks/mutations/emailVerification/useVerifyEmailMutation.js +15 -0
  254. package/dist/production/src/hooks/mutations/emailVerification/useVerifyEmailMutation.js.map +1 -0
  255. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs.map +1 -1
  256. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.js.map +1 -1
  257. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.cjs.map +1 -1
  258. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.js.map +1 -1
  259. package/dist/production/src/hooks/mutations/invite/useInviteMutation.cjs.map +1 -1
  260. package/dist/production/src/hooks/mutations/invite/useInviteMutation.js.map +1 -1
  261. package/dist/production/src/hooks/mutations/memberships/useAddProjectMemberMutation.cjs.map +1 -1
  262. package/dist/production/src/hooks/mutations/memberships/useAddProjectMemberMutation.js.map +1 -1
  263. package/dist/production/src/hooks/mutations/memberships/useRemoveProjectMemberMutation.cjs.map +1 -1
  264. package/dist/production/src/hooks/mutations/memberships/useRemoveProjectMemberMutation.js.map +1 -1
  265. package/dist/production/src/hooks/mutations/memberships/useUpdateProjectMemberMutation.cjs.map +1 -1
  266. package/dist/production/src/hooks/mutations/memberships/useUpdateProjectMemberMutation.js.map +1 -1
  267. package/dist/production/src/hooks/mutations/otp/useConfirmOtpMutation.cjs.map +1 -1
  268. package/dist/production/src/hooks/mutations/otp/useConfirmOtpMutation.js.map +1 -1
  269. package/dist/production/src/hooks/mutations/otp/useDisableOtpMutation.cjs.map +1 -1
  270. package/dist/production/src/hooks/mutations/otp/useDisableOtpMutation.js.map +1 -1
  271. package/dist/production/src/hooks/mutations/otp/usePrepareOtpMutation.cjs.map +1 -1
  272. package/dist/production/src/hooks/mutations/otp/usePrepareOtpMutation.js.map +1 -1
  273. package/dist/production/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.cjs.map +1 -1
  274. package/dist/production/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.js.map +1 -1
  275. package/dist/production/src/hooks/mutations/passwordReset/useResetPasswordMutation.cjs.map +1 -1
  276. package/dist/production/src/hooks/mutations/passwordReset/useResetPasswordMutation.js.map +1 -1
  277. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs.map +1 -1
  278. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js.map +1 -1
  279. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs.map +1 -1
  280. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js.map +1 -1
  281. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs.map +1 -1
  282. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js.map +1 -1
  283. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs.map +1 -1
  284. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js.map +1 -1
  285. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs.map +1 -1
  286. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js.map +1 -1
  287. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.cjs.map +1 -1
  288. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.js.map +1 -1
  289. package/dist/production/src/hooks/mutations/profile/useChangeProfile.cjs.map +1 -1
  290. package/dist/production/src/hooks/mutations/profile/useChangeProfile.js.map +1 -1
  291. package/dist/production/src/hooks/queries/useMeQuery.cjs.map +1 -1
  292. package/dist/production/src/hooks/queries/useMeQuery.js.map +1 -1
  293. package/dist/production/src/hooks/queries/useProjectMembersQuery.cjs.map +1 -1
  294. package/dist/production/src/hooks/queries/useProjectMembersQuery.js.map +1 -1
  295. package/dist/production/src/hooks/queries/useProjectMembershipsQuery.cjs.map +1 -1
  296. package/dist/production/src/hooks/queries/useProjectMembershipsQuery.js.map +1 -1
  297. package/dist/production/src/hooks/queries/useProjectRolesDefinitionQuery.cjs.map +1 -1
  298. package/dist/production/src/hooks/queries/useProjectRolesDefinitionQuery.js.map +1 -1
  299. package/dist/production/src/hooks/useFetchIdentity.cjs.map +1 -1
  300. package/dist/production/src/hooks/useFetchIdentity.js.map +1 -1
  301. package/dist/production/src/hooks/useLogout.cjs.map +1 -1
  302. package/dist/production/src/hooks/useLogout.js.map +1 -1
  303. package/dist/production/src/hooks/usePasswordlessOtpActivator.cjs.map +1 -1
  304. package/dist/production/src/hooks/usePasswordlessOtpActivator.js.map +1 -1
  305. package/dist/production/src/hooks/useTenantMutation.cjs.map +1 -1
  306. package/dist/production/src/hooks/useTenantMutation.js.map +1 -1
  307. package/dist/production/src/internal/hooks/useHandleIDPResponse.cjs.map +1 -1
  308. package/dist/production/src/internal/hooks/useHandleIDPResponse.js.map +1 -1
  309. package/dist/production/src/internal/hooks/useInitIDPRedirect.cjs.map +1 -1
  310. package/dist/production/src/internal/hooks/useInitIDPRedirect.js.map +1 -1
  311. package/dist/production/src/internal/hooks/useLogoutInternal.cjs +12 -7
  312. package/dist/production/src/internal/hooks/useLogoutInternal.cjs.map +1 -1
  313. package/dist/production/src/internal/hooks/useLogoutInternal.js +13 -8
  314. package/dist/production/src/internal/hooks/useLogoutInternal.js.map +1 -1
  315. package/dist/production/src/internal/hooks/useRedirectToBacklink.cjs.map +1 -1
  316. package/dist/production/src/internal/hooks/useRedirectToBacklink.js.map +1 -1
  317. package/dist/types/components/IdentityState.d.ts +1 -1
  318. package/dist/types/components/IdentityState.d.ts.map +1 -1
  319. package/dist/types/components/forms/ChangeMyPasswordForm.d.ts +1 -1
  320. package/dist/types/components/forms/ChangeMyPasswordForm.d.ts.map +1 -1
  321. package/dist/types/components/forms/ConfirmEmailChangeForm.d.ts +18 -0
  322. package/dist/types/components/forms/ConfirmEmailChangeForm.d.ts.map +1 -0
  323. package/dist/types/components/forms/CreateApiKeyForm.d.ts +2 -2
  324. package/dist/types/components/forms/CreateApiKeyForm.d.ts.map +1 -1
  325. package/dist/types/components/forms/CreateSessionTokenForm.d.ts +2 -2
  326. package/dist/types/components/forms/CreateSessionTokenForm.d.ts.map +1 -1
  327. package/dist/types/components/forms/InviteForm.d.ts +2 -2
  328. package/dist/types/components/forms/InviteForm.d.ts.map +1 -1
  329. package/dist/types/components/forms/LoginForm.d.ts +1 -1
  330. package/dist/types/components/forms/LoginForm.d.ts.map +1 -1
  331. package/dist/types/components/forms/OtpConfirmForm.d.ts +1 -1
  332. package/dist/types/components/forms/OtpConfirmForm.d.ts.map +1 -1
  333. package/dist/types/components/forms/OtpPrepareForm.d.ts +2 -2
  334. package/dist/types/components/forms/OtpPrepareForm.d.ts.map +1 -1
  335. package/dist/types/components/forms/PasswordResetForm.d.ts +1 -1
  336. package/dist/types/components/forms/PasswordResetForm.d.ts.map +1 -1
  337. package/dist/types/components/forms/PasswordResetRequestForm.d.ts +1 -1
  338. package/dist/types/components/forms/PasswordResetRequestForm.d.ts.map +1 -1
  339. package/dist/types/components/forms/PasswordlessSignInForm.d.ts +1 -1
  340. package/dist/types/components/forms/PasswordlessSignInForm.d.ts.map +1 -1
  341. package/dist/types/components/forms/PasswordlessSignInInitForm.d.ts +2 -2
  342. package/dist/types/components/forms/PasswordlessSignInInitForm.d.ts.map +1 -1
  343. package/dist/types/components/forms/RequestEmailVerificationForm.d.ts +17 -0
  344. package/dist/types/components/forms/RequestEmailVerificationForm.d.ts.map +1 -0
  345. package/dist/types/components/forms/TenantForm.d.ts +1 -1
  346. package/dist/types/components/forms/TenantForm.d.ts.map +1 -1
  347. package/dist/types/components/forms/UpdateProjectMemberForm.d.ts +1 -1
  348. package/dist/types/components/forms/UpdateProjectMemberForm.d.ts.map +1 -1
  349. package/dist/types/components/forms/VerifyEmailForm.d.ts +18 -0
  350. package/dist/types/components/forms/VerifyEmailForm.d.ts.map +1 -0
  351. package/dist/types/components/forms/index.d.ts +15 -12
  352. package/dist/types/components/forms/index.d.ts.map +1 -1
  353. package/dist/types/components/idp/IDP.d.ts +1 -1
  354. package/dist/types/components/idp/IDP.d.ts.map +1 -1
  355. package/dist/types/components/idp/IDPState.d.ts +1 -1
  356. package/dist/types/components/idp/IDPState.d.ts.map +1 -1
  357. package/dist/types/components/idp/index.d.ts +3 -3
  358. package/dist/types/components/idp/index.d.ts.map +1 -1
  359. package/dist/types/components/index.d.ts +5 -5
  360. package/dist/types/components/index.d.ts.map +1 -1
  361. package/dist/types/components/triggers/LogoutTrigger.d.ts +7 -1
  362. package/dist/types/components/triggers/LogoutTrigger.d.ts.map +1 -1
  363. package/dist/types/components/triggers/RemoveProjectMemberTrigger.d.ts +1 -1
  364. package/dist/types/components/triggers/RemoveProjectMemberTrigger.d.ts.map +1 -1
  365. package/dist/types/components/triggers/index.d.ts +3 -3
  366. package/dist/types/components/triggers/index.d.ts.map +1 -1
  367. package/dist/types/contexts.d.ts +1 -1
  368. package/dist/types/contexts.d.ts.map +1 -1
  369. package/dist/types/hooks/index.d.ts +8 -8
  370. package/dist/types/hooks/index.d.ts.map +1 -1
  371. package/dist/types/hooks/mutations/apiKey/index.d.ts +4 -4
  372. package/dist/types/hooks/mutations/apiKey/index.d.ts.map +1 -1
  373. package/dist/types/hooks/mutations/apiKey/useCreateApiKeyMutation.d.ts +4 -2
  374. package/dist/types/hooks/mutations/apiKey/useCreateApiKeyMutation.d.ts.map +1 -1
  375. package/dist/types/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.d.ts +4 -2
  376. package/dist/types/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.d.ts.map +1 -1
  377. package/dist/types/hooks/mutations/apiKey/useCreateSessionTokenMutation.d.ts +4 -2
  378. package/dist/types/hooks/mutations/apiKey/useCreateSessionTokenMutation.d.ts.map +1 -1
  379. package/dist/types/hooks/mutations/apiKey/useDisableApiKeyMutation.d.ts +2 -2
  380. package/dist/types/hooks/mutations/apiKey/useDisableApiKeyMutation.d.ts.map +1 -1
  381. package/dist/types/hooks/mutations/auth/index.d.ts +3 -3
  382. package/dist/types/hooks/mutations/auth/index.d.ts.map +1 -1
  383. package/dist/types/hooks/mutations/auth/useChangeMyPasswordMutation.d.ts +2 -2
  384. package/dist/types/hooks/mutations/auth/useChangeMyPasswordMutation.d.ts.map +1 -1
  385. package/dist/types/hooks/mutations/auth/useSignInMutation.d.ts +12 -2
  386. package/dist/types/hooks/mutations/auth/useSignInMutation.d.ts.map +1 -1
  387. package/dist/types/hooks/mutations/auth/useSignOutMutation.d.ts +4 -2
  388. package/dist/types/hooks/mutations/auth/useSignOutMutation.d.ts.map +1 -1
  389. package/dist/types/hooks/mutations/emailVerification/index.d.ts +4 -0
  390. package/dist/types/hooks/mutations/emailVerification/index.d.ts.map +1 -0
  391. package/dist/types/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.d.ts +19 -0
  392. package/dist/types/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.d.ts.map +1 -0
  393. package/dist/types/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.d.ts +23 -0
  394. package/dist/types/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.d.ts.map +1 -0
  395. package/dist/types/hooks/mutations/emailVerification/useVerifyEmailMutation.d.ts +19 -0
  396. package/dist/types/hooks/mutations/emailVerification/useVerifyEmailMutation.d.ts.map +1 -0
  397. package/dist/types/hooks/mutations/idp/index.d.ts +2 -2
  398. package/dist/types/hooks/mutations/idp/index.d.ts.map +1 -1
  399. package/dist/types/hooks/mutations/idp/useInitSignInIDPMutation.d.ts +1 -1
  400. package/dist/types/hooks/mutations/idp/useSignInIdpMutation.d.ts +2 -1
  401. package/dist/types/hooks/mutations/idp/useSignInIdpMutation.d.ts.map +1 -1
  402. package/dist/types/hooks/mutations/index.d.ts +10 -9
  403. package/dist/types/hooks/mutations/index.d.ts.map +1 -1
  404. package/dist/types/hooks/mutations/invite/index.d.ts +1 -1
  405. package/dist/types/hooks/mutations/invite/index.d.ts.map +1 -1
  406. package/dist/types/hooks/mutations/invite/useInviteMutation.d.ts +2 -2
  407. package/dist/types/hooks/mutations/memberships/index.d.ts +3 -3
  408. package/dist/types/hooks/mutations/memberships/index.d.ts.map +1 -1
  409. package/dist/types/hooks/mutations/memberships/useAddProjectMemberMutation.d.ts +2 -2
  410. package/dist/types/hooks/mutations/memberships/useAddProjectMemberMutation.d.ts.map +1 -1
  411. package/dist/types/hooks/mutations/memberships/useRemoveProjectMemberMutation.d.ts +2 -2
  412. package/dist/types/hooks/mutations/memberships/useRemoveProjectMemberMutation.d.ts.map +1 -1
  413. package/dist/types/hooks/mutations/memberships/useUpdateProjectMemberMutation.d.ts +2 -2
  414. package/dist/types/hooks/mutations/memberships/useUpdateProjectMemberMutation.d.ts.map +1 -1
  415. package/dist/types/hooks/mutations/otp/index.d.ts +3 -3
  416. package/dist/types/hooks/mutations/otp/index.d.ts.map +1 -1
  417. package/dist/types/hooks/mutations/otp/useConfirmOtpMutation.d.ts +2 -2
  418. package/dist/types/hooks/mutations/otp/useConfirmOtpMutation.d.ts.map +1 -1
  419. package/dist/types/hooks/mutations/otp/useDisableOtpMutation.d.ts +1 -1
  420. package/dist/types/hooks/mutations/otp/useDisableOtpMutation.d.ts.map +1 -1
  421. package/dist/types/hooks/mutations/otp/usePrepareOtpMutation.d.ts +2 -2
  422. package/dist/types/hooks/mutations/passwordReset/index.d.ts +2 -2
  423. package/dist/types/hooks/mutations/passwordReset/index.d.ts.map +1 -1
  424. package/dist/types/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.d.ts +4 -2
  425. package/dist/types/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.d.ts.map +1 -1
  426. package/dist/types/hooks/mutations/passwordReset/useResetPasswordMutation.d.ts +2 -2
  427. package/dist/types/hooks/mutations/passwordReset/useResetPasswordMutation.d.ts.map +1 -1
  428. package/dist/types/hooks/mutations/passwordless/index.d.ts +5 -5
  429. package/dist/types/hooks/mutations/passwordless/index.d.ts.map +1 -1
  430. package/dist/types/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.d.ts +2 -2
  431. package/dist/types/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.d.ts.map +1 -1
  432. package/dist/types/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.d.ts +1 -1
  433. package/dist/types/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.d.ts.map +1 -1
  434. package/dist/types/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.d.ts +1 -1
  435. package/dist/types/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.d.ts.map +1 -1
  436. package/dist/types/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.d.ts +3 -2
  437. package/dist/types/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.d.ts.map +1 -1
  438. package/dist/types/hooks/mutations/passwordless/useSignInPasswordlessMutation.d.ts +4 -2
  439. package/dist/types/hooks/mutations/passwordless/useSignInPasswordlessMutation.d.ts.map +1 -1
  440. package/dist/types/hooks/mutations/profile/index.d.ts +2 -2
  441. package/dist/types/hooks/mutations/profile/index.d.ts.map +1 -1
  442. package/dist/types/hooks/mutations/profile/useChangeMyProfile.d.ts +2 -2
  443. package/dist/types/hooks/mutations/profile/useChangeMyProfile.d.ts.map +1 -1
  444. package/dist/types/hooks/mutations/profile/useChangeProfile.d.ts +2 -2
  445. package/dist/types/hooks/mutations/profile/useChangeProfile.d.ts.map +1 -1
  446. package/dist/types/hooks/queries/index.d.ts +4 -4
  447. package/dist/types/hooks/queries/index.d.ts.map +1 -1
  448. package/dist/types/hooks/queries/useMeQuery.d.ts +1 -1
  449. package/dist/types/hooks/queries/useMeQuery.d.ts.map +1 -1
  450. package/dist/types/hooks/queries/useProjectMembersQuery.d.ts +15 -3
  451. package/dist/types/hooks/queries/useProjectMembersQuery.d.ts.map +1 -1
  452. package/dist/types/hooks/queries/useProjectMembershipsQuery.d.ts +1 -1
  453. package/dist/types/hooks/queries/useProjectMembershipsQuery.d.ts.map +1 -1
  454. package/dist/types/hooks/queries/useProjectRolesDefinitionQuery.d.ts +1 -1
  455. package/dist/types/hooks/queries/useProjectRolesDefinitionQuery.d.ts.map +1 -1
  456. package/dist/types/hooks/useFetchIdentity.d.ts +1 -1
  457. package/dist/types/hooks/useFetchIdentity.d.ts.map +1 -1
  458. package/dist/types/hooks/useLogout.d.ts +2 -1
  459. package/dist/types/hooks/useLogout.d.ts.map +1 -1
  460. package/dist/types/hooks/useTenantMutation.d.ts +1 -1
  461. package/dist/types/hooks/useTenantMutation.d.ts.map +1 -1
  462. package/dist/types/index.d.ts +4 -4
  463. package/dist/types/index.d.ts.map +1 -1
  464. package/dist/types/internal/hooks/useHandleIDPResponse.d.ts +1 -1
  465. package/dist/types/internal/hooks/useHandleIDPResponse.d.ts.map +1 -1
  466. package/dist/types/internal/hooks/useInitIDPRedirect.d.ts +1 -1
  467. package/dist/types/internal/hooks/useInitIDPRedirect.d.ts.map +1 -1
  468. package/dist/types/internal/hooks/useLogoutInternal.d.ts +2 -1
  469. package/dist/types/internal/hooks/useLogoutInternal.d.ts.map +1 -1
  470. package/dist/types/tsconfig.tsbuildinfo +1 -1
  471. package/dist/types/types/index.d.ts +5 -5
  472. package/dist/types/types/index.d.ts.map +1 -1
  473. package/package.json +4 -4
  474. package/src/components/IdentityProvider.tsx +2 -2
  475. package/src/components/IdentityState.tsx +2 -2
  476. package/src/components/forms/ChangeMyPasswordForm.tsx +4 -4
  477. package/src/components/forms/ConfirmEmailChangeForm.tsx +66 -0
  478. package/src/components/forms/CreateApiKeyForm.tsx +4 -4
  479. package/src/components/forms/CreateSessionTokenForm.tsx +4 -4
  480. package/src/components/forms/InviteForm.tsx +4 -4
  481. package/src/components/forms/LoginForm.tsx +7 -5
  482. package/src/components/forms/OtpConfirmForm.tsx +4 -4
  483. package/src/components/forms/OtpPrepareForm.tsx +4 -4
  484. package/src/components/forms/PasswordResetForm.tsx +4 -4
  485. package/src/components/forms/PasswordResetRequestForm.tsx +6 -4
  486. package/src/components/forms/PasswordlessSignInForm.tsx +6 -5
  487. package/src/components/forms/PasswordlessSignInInitForm.tsx +8 -6
  488. package/src/components/forms/RequestEmailVerificationForm.tsx +62 -0
  489. package/src/components/forms/TenantForm.tsx +2 -2
  490. package/src/components/forms/UpdateProjectMemberForm.tsx +4 -4
  491. package/src/components/forms/VerifyEmailForm.tsx +64 -0
  492. package/src/components/forms/index.ts +15 -12
  493. package/src/components/idp/IDP.tsx +5 -5
  494. package/src/components/idp/IDPInitTrigger.tsx +1 -1
  495. package/src/components/idp/IDPState.tsx +2 -2
  496. package/src/components/idp/index.ts +3 -3
  497. package/src/components/index.ts +5 -5
  498. package/src/components/triggers/DisableOtpTrigger.tsx +3 -3
  499. package/src/components/triggers/LogoutTrigger.tsx +9 -3
  500. package/src/components/triggers/RemoveProjectMemberTrigger.tsx +2 -2
  501. package/src/components/triggers/index.ts +3 -3
  502. package/src/contexts.ts +1 -1
  503. package/src/hooks/index.ts +8 -8
  504. package/src/hooks/mutations/apiKey/index.ts +4 -4
  505. package/src/hooks/mutations/apiKey/useCreateApiKeyMutation.tsx +1 -1
  506. package/src/hooks/mutations/apiKey/useCreateGlobalApiKeyMutation.tsx +1 -1
  507. package/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.tsx +1 -1
  508. package/src/hooks/mutations/apiKey/useDisableApiKeyMutation.tsx +1 -1
  509. package/src/hooks/mutations/auth/index.ts +3 -3
  510. package/src/hooks/mutations/auth/useChangeMyPasswordMutation.ts +1 -1
  511. package/src/hooks/mutations/auth/useSignInMutation.ts +2 -2
  512. package/src/hooks/mutations/auth/useSignOutMutation.ts +1 -1
  513. package/src/hooks/mutations/emailVerification/index.ts +3 -0
  514. package/src/hooks/mutations/emailVerification/useConfirmEmailChangeMutation.ts +17 -0
  515. package/src/hooks/mutations/emailVerification/useRequestEmailVerificationMutation.ts +17 -0
  516. package/src/hooks/mutations/emailVerification/useVerifyEmailMutation.ts +17 -0
  517. package/src/hooks/mutations/idp/index.ts +2 -2
  518. package/src/hooks/mutations/idp/useInitSignInIDPMutation.ts +2 -2
  519. package/src/hooks/mutations/idp/useSignInIdpMutation.ts +2 -2
  520. package/src/hooks/mutations/index.ts +10 -9
  521. package/src/hooks/mutations/invite/index.ts +1 -1
  522. package/src/hooks/mutations/invite/useInviteMutation.tsx +1 -1
  523. package/src/hooks/mutations/memberships/index.ts +3 -3
  524. package/src/hooks/mutations/memberships/useAddProjectMemberMutation.ts +1 -1
  525. package/src/hooks/mutations/memberships/useRemoveProjectMemberMutation.ts +1 -1
  526. package/src/hooks/mutations/memberships/useUpdateProjectMemberMutation.ts +1 -1
  527. package/src/hooks/mutations/otp/index.ts +3 -3
  528. package/src/hooks/mutations/otp/useConfirmOtpMutation.ts +1 -1
  529. package/src/hooks/mutations/otp/useDisableOtpMutation.ts +1 -1
  530. package/src/hooks/mutations/otp/usePrepareOtpMutation.ts +1 -1
  531. package/src/hooks/mutations/passwordReset/index.ts +2 -2
  532. package/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.ts +2 -2
  533. package/src/hooks/mutations/passwordReset/useResetPasswordMutation.ts +2 -2
  534. package/src/hooks/mutations/passwordless/index.ts +5 -5
  535. package/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.ts +2 -2
  536. package/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.ts +1 -1
  537. package/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.ts +1 -1
  538. package/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.ts +2 -2
  539. package/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.ts +2 -2
  540. package/src/hooks/mutations/profile/index.ts +2 -2
  541. package/src/hooks/mutations/profile/useChangeMyProfile.ts +1 -1
  542. package/src/hooks/mutations/profile/useChangeProfile.ts +1 -1
  543. package/src/hooks/queries/index.ts +4 -4
  544. package/src/hooks/queries/useMeQuery.ts +1 -1
  545. package/src/hooks/queries/useProjectMembersQuery.ts +1 -1
  546. package/src/hooks/queries/useProjectMembershipsQuery.ts +1 -1
  547. package/src/hooks/queries/useProjectRolesDefinitionQuery.ts +1 -1
  548. package/src/hooks/useFetchIdentity.ts +3 -3
  549. package/src/hooks/useLogout.ts +2 -2
  550. package/src/hooks/usePasswordlessOtpActivator.ts +4 -4
  551. package/src/hooks/useTenantMutation.ts +1 -1
  552. package/src/index.ts +4 -4
  553. package/src/internal/hooks/useHandleIDPResponse.ts +5 -5
  554. package/src/internal/hooks/useInitIDPRedirect.ts +5 -5
  555. package/src/internal/hooks/useLogoutInternal.ts +18 -8
  556. package/src/internal/hooks/useRedirectToBacklink.ts +1 -1
  557. package/src/types/index.ts +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityState.cjs","sources":["../../../../../packages/react-client-tenant/src/components/IdentityState.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { IdentityStateValue } from '../types'\nimport { useIdentityState } from '../contexts'\n\nexport interface IdentityStateProps {\n\tstate: IdentityStateValue | IdentityStateValue[]\n\tchildren: ReactNode\n}\n\nexport const IdentityState = ({ state, children }: IdentityStateProps) => {\n\tconst currentState = useIdentityState()\n\n\treturn state === currentState || (Array.isArray(state) && state.includes(currentState)) ? <>{children}</> : null\n}\n"],"names":["useIdentityState","jsx","Fragment"],"mappings":";;;;AASO,MAAM,gBAAgB,CAAC,EAAE,OAAO,eAAmC;AACzE,QAAM,eAAeA,SAAAA,iBAAA;AAErB,SAAO,UAAU,gBAAiB,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,YAAY,IAAKC,2BAAAA,IAAAC,WAAAA,UAAA,EAAG,SAAA,CAAS,IAAM;AAC7G;;"}
1
+ {"version":3,"file":"IdentityState.cjs","sources":["../../../../../packages/react-client-tenant/src/components/IdentityState.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { IdentityStateValue } from '../types/index.js'\nimport { useIdentityState } from '../contexts.js'\n\nexport interface IdentityStateProps {\n\tstate: IdentityStateValue | IdentityStateValue[]\n\tchildren: ReactNode\n}\n\nexport const IdentityState = ({ state, children }: IdentityStateProps) => {\n\tconst currentState = useIdentityState()\n\n\treturn state === currentState || (Array.isArray(state) && state.includes(currentState)) ? <>{children}</> : null\n}\n"],"names":["useIdentityState","jsx","Fragment"],"mappings":";;;;AASO,MAAM,gBAAgB,CAAC,EAAE,OAAO,eAAmC;AACzE,QAAM,eAAeA,SAAAA,iBAAA;AAErB,SAAO,UAAU,gBAAiB,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,YAAY,IAAKC,2BAAAA,IAAAC,WAAAA,UAAA,EAAG,SAAA,CAAS,IAAM;AAC7G;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"IdentityState.js","sources":["../../../../../packages/react-client-tenant/src/components/IdentityState.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { IdentityStateValue } from '../types'\nimport { useIdentityState } from '../contexts'\n\nexport interface IdentityStateProps {\n\tstate: IdentityStateValue | IdentityStateValue[]\n\tchildren: ReactNode\n}\n\nexport const IdentityState = ({ state, children }: IdentityStateProps) => {\n\tconst currentState = useIdentityState()\n\n\treturn state === currentState || (Array.isArray(state) && state.includes(currentState)) ? <>{children}</> : null\n}\n"],"names":[],"mappings":";;AASO,MAAM,gBAAgB,CAAC,EAAE,OAAO,eAAmC;AACzE,QAAM,eAAe,iBAAA;AAErB,SAAO,UAAU,gBAAiB,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,YAAY,IAAK,oBAAA,UAAA,EAAG,SAAA,CAAS,IAAM;AAC7G;"}
1
+ {"version":3,"file":"IdentityState.js","sources":["../../../../../packages/react-client-tenant/src/components/IdentityState.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { IdentityStateValue } from '../types/index.js'\nimport { useIdentityState } from '../contexts.js'\n\nexport interface IdentityStateProps {\n\tstate: IdentityStateValue | IdentityStateValue[]\n\tchildren: ReactNode\n}\n\nexport const IdentityState = ({ state, children }: IdentityStateProps) => {\n\tconst currentState = useIdentityState()\n\n\treturn state === currentState || (Array.isArray(state) && state.includes(currentState)) ? <>{children}</> : null\n}\n"],"names":[],"mappings":";;AASO,MAAM,gBAAgB,CAAC,EAAE,OAAO,eAAmC;AACzE,QAAM,eAAe,iBAAA;AAErB,SAAO,UAAU,gBAAiB,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,YAAY,IAAK,oBAAA,UAAA,EAAG,SAAA,CAAS,IAAM;AAC7G;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChangeMyPasswordForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ChangeMyPasswordForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { ChangeMyPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useChangeMyPasswordMutation } from '../../hooks'\n\nexport type ChangeMyPasswordFormValues = {\n\tcurrentPassword: string\n\tnewPassword: string\n\tpasswordConfirmation: string\n}\n\nexport type ChangeMyPasswordFormErrorCode =\n\t| ChangeMyPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type ChangeMyPasswordFormState = FormState\n\nexport type ChangeMyPasswordFormError = FormError<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport type ChangeMyPasswordFormContextValue = FormContextValue<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport interface ChangeMyPasswordFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useChangeMyPasswordForm = useForm as () => ChangeMyPasswordFormContextValue\n\nexport const ChangeMyPasswordForm = ({ children, onSuccess }: ChangeMyPasswordFormProps) => {\n\tconst changePassword = useChangeMyPasswordMutation()\n\treturn (\n\t\t<TenantForm<ChangeMyPasswordFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\tcurrentPassword: '',\n\t\t\t\tnewPassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ChangeMyPasswordFormError[] = []\n\t\t\t\tif (!values.currentPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'currentPassword' })\n\t\t\t\t}\n\t\t\t\tif (!values.newPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'newPassword' })\n\t\t\t\t} else if (values.newPassword.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'newPassword' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.newPassword !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await changePassword(values)\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Partial<Record<ChangeMyPasswordFormErrorCode, keyof ChangeMyPasswordFormValues | undefined>> = {\n\tPASSWORD_MISMATCH: 'passwordConfirmation',\n\tTOO_WEAK: 'newPassword',\n\tNO_PASSWORD_SET: 'currentPassword',\n\tINVALID_PASSWORD: 'currentPassword',\n}\n"],"names":["useForm","useChangeMyPasswordMutation","jsx","TenantForm"],"mappings":";;;;;;AA+BO,MAAM,0BAA0BA,SAAAA;AAEhC,MAAM,uBAAuB,CAAC,EAAE,UAAU,gBAA2C;AAC3F,QAAM,iBAAiBC,4BAAAA,4BAAA;AACvB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAsC,CAAA;AAC5C,YAAI,CAAC,OAAO,iBAAiB;AAC5B,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,mBAAmB;AAAA,QACjE;AACA,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D,WAAW,OAAO,YAAY,SAAS,GAAG;AACzC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,eAAe;AAAA,QAC5D,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,gBAAgB,OAAO,sBAAsB;AAC9D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,eAAe,MAAM;AAAA,MACnC;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA6G;AAAA,EAClH,mBAAmB;AAAA,EACnB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,kBAAkB;AACnB;;;"}
1
+ {"version":3,"file":"ChangeMyPasswordForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ChangeMyPasswordForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { ChangeMyPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useChangeMyPasswordMutation } from '../../hooks/index.js'\n\nexport type ChangeMyPasswordFormValues = {\n\tcurrentPassword: string\n\tnewPassword: string\n\tpasswordConfirmation: string\n}\n\nexport type ChangeMyPasswordFormErrorCode =\n\t| ChangeMyPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type ChangeMyPasswordFormState = FormState\n\nexport type ChangeMyPasswordFormError = FormError<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport type ChangeMyPasswordFormContextValue = FormContextValue<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport interface ChangeMyPasswordFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useChangeMyPasswordForm = useForm as () => ChangeMyPasswordFormContextValue\n\nexport const ChangeMyPasswordForm = ({ children, onSuccess }: ChangeMyPasswordFormProps) => {\n\tconst changePassword = useChangeMyPasswordMutation()\n\treturn (\n\t\t<TenantForm<ChangeMyPasswordFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\tcurrentPassword: '',\n\t\t\t\tnewPassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ChangeMyPasswordFormError[] = []\n\t\t\t\tif (!values.currentPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'currentPassword' })\n\t\t\t\t}\n\t\t\t\tif (!values.newPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'newPassword' })\n\t\t\t\t} else if (values.newPassword.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'newPassword' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.newPassword !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await changePassword(values)\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Partial<Record<ChangeMyPasswordFormErrorCode, keyof ChangeMyPasswordFormValues | undefined>> = {\n\tPASSWORD_MISMATCH: 'passwordConfirmation',\n\tTOO_WEAK: 'newPassword',\n\tNO_PASSWORD_SET: 'currentPassword',\n\tINVALID_PASSWORD: 'currentPassword',\n}\n"],"names":["useForm","useChangeMyPasswordMutation","jsx","TenantForm"],"mappings":";;;;;;AA+BO,MAAM,0BAA0BA,SAAAA;AAEhC,MAAM,uBAAuB,CAAC,EAAE,UAAU,gBAA2C;AAC3F,QAAM,iBAAiBC,4BAAAA,4BAAA;AACvB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAsC,CAAA;AAC5C,YAAI,CAAC,OAAO,iBAAiB;AAC5B,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,mBAAmB;AAAA,QACjE;AACA,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D,WAAW,OAAO,YAAY,SAAS,GAAG;AACzC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,eAAe;AAAA,QAC5D,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,gBAAgB,OAAO,sBAAsB;AAC9D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,eAAe,MAAM;AAAA,MACnC;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA6G;AAAA,EAClH,mBAAmB;AAAA,EACnB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,kBAAkB;AACnB;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChangeMyPasswordForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ChangeMyPasswordForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { ChangeMyPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useChangeMyPasswordMutation } from '../../hooks'\n\nexport type ChangeMyPasswordFormValues = {\n\tcurrentPassword: string\n\tnewPassword: string\n\tpasswordConfirmation: string\n}\n\nexport type ChangeMyPasswordFormErrorCode =\n\t| ChangeMyPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type ChangeMyPasswordFormState = FormState\n\nexport type ChangeMyPasswordFormError = FormError<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport type ChangeMyPasswordFormContextValue = FormContextValue<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport interface ChangeMyPasswordFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useChangeMyPasswordForm = useForm as () => ChangeMyPasswordFormContextValue\n\nexport const ChangeMyPasswordForm = ({ children, onSuccess }: ChangeMyPasswordFormProps) => {\n\tconst changePassword = useChangeMyPasswordMutation()\n\treturn (\n\t\t<TenantForm<ChangeMyPasswordFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\tcurrentPassword: '',\n\t\t\t\tnewPassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ChangeMyPasswordFormError[] = []\n\t\t\t\tif (!values.currentPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'currentPassword' })\n\t\t\t\t}\n\t\t\t\tif (!values.newPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'newPassword' })\n\t\t\t\t} else if (values.newPassword.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'newPassword' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.newPassword !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await changePassword(values)\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Partial<Record<ChangeMyPasswordFormErrorCode, keyof ChangeMyPasswordFormValues | undefined>> = {\n\tPASSWORD_MISMATCH: 'passwordConfirmation',\n\tTOO_WEAK: 'newPassword',\n\tNO_PASSWORD_SET: 'currentPassword',\n\tINVALID_PASSWORD: 'currentPassword',\n}\n"],"names":[],"mappings":";;;;AA+BO,MAAM,0BAA0B;AAEhC,MAAM,uBAAuB,CAAC,EAAE,UAAU,gBAA2C;AAC3F,QAAM,iBAAiB,4BAAA;AACvB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAsC,CAAA;AAC5C,YAAI,CAAC,OAAO,iBAAiB;AAC5B,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,mBAAmB;AAAA,QACjE;AACA,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D,WAAW,OAAO,YAAY,SAAS,GAAG;AACzC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,eAAe;AAAA,QAC5D,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,gBAAgB,OAAO,sBAAsB;AAC9D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,eAAe,MAAM;AAAA,MACnC;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA6G;AAAA,EAClH,mBAAmB;AAAA,EACnB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,kBAAkB;AACnB;"}
1
+ {"version":3,"file":"ChangeMyPasswordForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ChangeMyPasswordForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { ChangeMyPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useChangeMyPasswordMutation } from '../../hooks/index.js'\n\nexport type ChangeMyPasswordFormValues = {\n\tcurrentPassword: string\n\tnewPassword: string\n\tpasswordConfirmation: string\n}\n\nexport type ChangeMyPasswordFormErrorCode =\n\t| ChangeMyPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type ChangeMyPasswordFormState = FormState\n\nexport type ChangeMyPasswordFormError = FormError<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport type ChangeMyPasswordFormContextValue = FormContextValue<ChangeMyPasswordFormValues, ChangeMyPasswordFormErrorCode>\n\nexport interface ChangeMyPasswordFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useChangeMyPasswordForm = useForm as () => ChangeMyPasswordFormContextValue\n\nexport const ChangeMyPasswordForm = ({ children, onSuccess }: ChangeMyPasswordFormProps) => {\n\tconst changePassword = useChangeMyPasswordMutation()\n\treturn (\n\t\t<TenantForm<ChangeMyPasswordFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\tcurrentPassword: '',\n\t\t\t\tnewPassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ChangeMyPasswordFormError[] = []\n\t\t\t\tif (!values.currentPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'currentPassword' })\n\t\t\t\t}\n\t\t\t\tif (!values.newPassword) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'newPassword' })\n\t\t\t\t} else if (values.newPassword.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'newPassword' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.newPassword !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await changePassword(values)\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Partial<Record<ChangeMyPasswordFormErrorCode, keyof ChangeMyPasswordFormValues | undefined>> = {\n\tPASSWORD_MISMATCH: 'passwordConfirmation',\n\tTOO_WEAK: 'newPassword',\n\tNO_PASSWORD_SET: 'currentPassword',\n\tINVALID_PASSWORD: 'currentPassword',\n}\n"],"names":[],"mappings":";;;;AA+BO,MAAM,0BAA0B;AAEhC,MAAM,uBAAuB,CAAC,EAAE,UAAU,gBAA2C;AAC3F,QAAM,iBAAiB,4BAAA;AACvB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,iBAAiB;AAAA,QACjB,aAAa;AAAA,QACb,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAsC,CAAA;AAC5C,YAAI,CAAC,OAAO,iBAAiB;AAC5B,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,mBAAmB;AAAA,QACjE;AACA,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D,WAAW,OAAO,YAAY,SAAS,GAAG;AACzC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,eAAe;AAAA,QAC5D,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,gBAAgB,OAAO,sBAAsB;AAC9D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,eAAe,MAAM;AAAA,MACnC;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA6G;AAAA,EAClH,mBAAmB;AAAA,EACnB,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,kBAAkB;AACnB;"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const TenantForm = require("./TenantForm.cjs");
5
+ const contexts = require("../../contexts.cjs");
6
+ const useConfirmEmailChangeMutation = require("../../hooks/mutations/emailVerification/useConfirmEmailChangeMutation.cjs");
7
+ const useConfirmEmailChangeForm = contexts.useForm;
8
+ const ConfirmEmailChangeForm = ({ children, onSuccess, token }) => {
9
+ const confirmEmailChange = useConfirmEmailChangeMutation.useConfirmEmailChangeMutation();
10
+ return /* @__PURE__ */ jsxRuntime.jsx(
11
+ TenantForm.TenantForm,
12
+ {
13
+ onSuccess,
14
+ errorMapping: errorToField,
15
+ initialValues: {
16
+ token: token ?? ""
17
+ },
18
+ validate: ({ values }) => {
19
+ const errors = [];
20
+ if (!values.token) {
21
+ errors.push({ code: "FIELD_REQUIRED", field: "token" });
22
+ }
23
+ return errors;
24
+ },
25
+ execute: async ({ values }) => {
26
+ return await confirmEmailChange({
27
+ token: values.token
28
+ });
29
+ },
30
+ children
31
+ }
32
+ );
33
+ };
34
+ const errorToField = {
35
+ TOKEN_EXPIRED: "token",
36
+ TOKEN_NOT_FOUND: "token",
37
+ TOKEN_USED: "token",
38
+ TOKEN_INVALID: "token",
39
+ EMAIL_ALREADY_EXISTS: void 0,
40
+ INVALID_EMAIL_FORMAT: void 0
41
+ };
42
+ exports.ConfirmEmailChangeForm = ConfirmEmailChangeForm;
43
+ exports.useConfirmEmailChangeForm = useConfirmEmailChangeForm;
44
+ //# sourceMappingURL=ConfirmEmailChangeForm.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmEmailChangeForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ConfirmEmailChangeForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ConfirmEmailChangeErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useConfirmEmailChangeMutation } from '../../hooks/index.js'\n\nexport type ConfirmEmailChangeFormValues = {\n\ttoken: string\n}\n\nexport type ConfirmEmailChangeFormErrorCode =\n\t| ConfirmEmailChangeErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type ConfirmEmailChangeFormState = FormState\n\nexport type ConfirmEmailChangeFormError = FormError<ConfirmEmailChangeFormValues, ConfirmEmailChangeFormErrorCode>\n\nexport type ConfirmEmailChangeFormContextValue = FormContextValue<ConfirmEmailChangeFormValues, ConfirmEmailChangeFormErrorCode>\n\nexport interface ConfirmEmailChangeFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const useConfirmEmailChangeForm = useForm as () => ConfirmEmailChangeFormContextValue\n\nexport const ConfirmEmailChangeForm = ({ children, onSuccess, token }: ConfirmEmailChangeFormProps) => {\n\tconst confirmEmailChange = useConfirmEmailChangeMutation()\n\treturn (\n\t\t<TenantForm<ConfirmEmailChangeFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ConfirmEmailChangeFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmEmailChange({\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ConfirmEmailChangeErrorCode, keyof ConfirmEmailChangeFormValues | undefined> = {\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n\tEMAIL_ALREADY_EXISTS: undefined,\n\tINVALID_EMAIL_FORMAT: undefined,\n}\n"],"names":["useForm","useConfirmEmailChangeMutation","jsx","TenantForm"],"mappings":";;;;;;AA8BO,MAAM,4BAA4BA,SAAAA;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAyC;AACtG,QAAM,qBAAqBC,8BAAAA,8BAAA;AAC3B,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,MAAA;AAAA,MAEjB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA8G;AAAA,EACnH,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,sBAAsB;AAAA,EACtB,sBAAsB;AACvB;;;"}
@@ -0,0 +1,44 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { TenantForm } from "./TenantForm.js";
3
+ import { useForm } from "../../contexts.js";
4
+ import { useConfirmEmailChangeMutation } from "../../hooks/mutations/emailVerification/useConfirmEmailChangeMutation.js";
5
+ const useConfirmEmailChangeForm = useForm;
6
+ const ConfirmEmailChangeForm = ({ children, onSuccess, token }) => {
7
+ const confirmEmailChange = useConfirmEmailChangeMutation();
8
+ return /* @__PURE__ */ jsx(
9
+ TenantForm,
10
+ {
11
+ onSuccess,
12
+ errorMapping: errorToField,
13
+ initialValues: {
14
+ token: token ?? ""
15
+ },
16
+ validate: ({ values }) => {
17
+ const errors = [];
18
+ if (!values.token) {
19
+ errors.push({ code: "FIELD_REQUIRED", field: "token" });
20
+ }
21
+ return errors;
22
+ },
23
+ execute: async ({ values }) => {
24
+ return await confirmEmailChange({
25
+ token: values.token
26
+ });
27
+ },
28
+ children
29
+ }
30
+ );
31
+ };
32
+ const errorToField = {
33
+ TOKEN_EXPIRED: "token",
34
+ TOKEN_NOT_FOUND: "token",
35
+ TOKEN_USED: "token",
36
+ TOKEN_INVALID: "token",
37
+ EMAIL_ALREADY_EXISTS: void 0,
38
+ INVALID_EMAIL_FORMAT: void 0
39
+ };
40
+ export {
41
+ ConfirmEmailChangeForm,
42
+ useConfirmEmailChangeForm
43
+ };
44
+ //# sourceMappingURL=ConfirmEmailChangeForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmEmailChangeForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/ConfirmEmailChangeForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ConfirmEmailChangeErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useConfirmEmailChangeMutation } from '../../hooks/index.js'\n\nexport type ConfirmEmailChangeFormValues = {\n\ttoken: string\n}\n\nexport type ConfirmEmailChangeFormErrorCode =\n\t| ConfirmEmailChangeErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type ConfirmEmailChangeFormState = FormState\n\nexport type ConfirmEmailChangeFormError = FormError<ConfirmEmailChangeFormValues, ConfirmEmailChangeFormErrorCode>\n\nexport type ConfirmEmailChangeFormContextValue = FormContextValue<ConfirmEmailChangeFormValues, ConfirmEmailChangeFormErrorCode>\n\nexport interface ConfirmEmailChangeFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const useConfirmEmailChangeForm = useForm as () => ConfirmEmailChangeFormContextValue\n\nexport const ConfirmEmailChangeForm = ({ children, onSuccess, token }: ConfirmEmailChangeFormProps) => {\n\tconst confirmEmailChange = useConfirmEmailChangeMutation()\n\treturn (\n\t\t<TenantForm<ConfirmEmailChangeFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: ConfirmEmailChangeFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmEmailChange({\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ConfirmEmailChangeErrorCode, keyof ConfirmEmailChangeFormValues | undefined> = {\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n\tEMAIL_ALREADY_EXISTS: undefined,\n\tINVALID_EMAIL_FORMAT: undefined,\n}\n"],"names":[],"mappings":";;;;AA8BO,MAAM,4BAA4B;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAyC;AACtG,QAAM,qBAAqB,8BAAA;AAC3B,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,MAAA;AAAA,MAEjB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAA8G;AAAA,EACnH,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,sBAAsB;AAAA,EACtB,sBAAsB;AACvB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateApiKeyForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateApiKeyForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { CreateApiKeyErrorCode, MembershipInput } from '@contember/graphql-client-tenant'\nimport { CreateApiKeyMutationResult, useCreateApiKeyMutation } from '../../hooks'\n\nexport type CreateApiKeyFormValues = {\n\tdescription: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type CreateApiKeyFormErrorCode =\n\t| CreateApiKeyErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateApiKeyFormState = FormState\n\nexport type CreateApiKeyFormError = FormError<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport type CreateApiKeyFormContextValue = FormContextValue<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport interface CreateApiKeyFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: CreateApiKeyMutationResult }) => void\n}\n\nexport const useCreateApiKeyForm = useForm as () => CreateApiKeyFormContextValue\n\nexport const CreateApiKeyForm = ({ children, onSuccess, projectSlug, initialMemberships }: CreateApiKeyFormProps) => {\n\tconst createApiKey = useCreateApiKeyMutation()\n\treturn (\n\t\t<TenantForm<CreateApiKeyFormContextValue, CreateApiKeyMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tdescription: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateApiKeyFormError[] = []\n\t\t\t\tif (!values.description) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'description' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createApiKey({\n\t\t\t\t\tdescription: values.description,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateApiKeyErrorCode, keyof CreateApiKeyFormValues | undefined> = {\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":["useForm","useCreateApiKeyMutation","jsx","TenantForm"],"mappings":";;;;;;AA8BO,MAAM,sBAAsBA,SAAAA;AAE5B,MAAM,mBAAmB,CAAC,EAAE,UAAU,WAAW,aAAa,yBAAgD;AACpH,QAAM,eAAeC,wBAAAA,wBAAA;AACrB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,aAAa;AAAA,QACb,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAkC,CAAA;AACxC,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,aAAa;AAAA,UACzB,aAAa,OAAO;AAAA,UACpB;AAAA,UACA,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAwF;AAAA,EAC7F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;;;"}
1
+ {"version":3,"file":"CreateApiKeyForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateApiKeyForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { CreateApiKeyErrorCode, MembershipInput } from '@contember/graphql-client-tenant'\nimport { CreateApiKeyMutationResult, useCreateApiKeyMutation } from '../../hooks/index.js'\n\nexport type CreateApiKeyFormValues = {\n\tdescription: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type CreateApiKeyFormErrorCode =\n\t| CreateApiKeyErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateApiKeyFormState = FormState\n\nexport type CreateApiKeyFormError = FormError<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport type CreateApiKeyFormContextValue = FormContextValue<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport interface CreateApiKeyFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: CreateApiKeyMutationResult }) => void\n}\n\nexport const useCreateApiKeyForm = useForm as () => CreateApiKeyFormContextValue\n\nexport const CreateApiKeyForm = ({ children, onSuccess, projectSlug, initialMemberships }: CreateApiKeyFormProps) => {\n\tconst createApiKey = useCreateApiKeyMutation()\n\treturn (\n\t\t<TenantForm<CreateApiKeyFormContextValue, CreateApiKeyMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tdescription: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateApiKeyFormError[] = []\n\t\t\t\tif (!values.description) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'description' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createApiKey({\n\t\t\t\t\tdescription: values.description,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateApiKeyErrorCode, keyof CreateApiKeyFormValues | undefined> = {\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":["useForm","useCreateApiKeyMutation","jsx","TenantForm"],"mappings":";;;;;;AA8BO,MAAM,sBAAsBA,SAAAA;AAE5B,MAAM,mBAAmB,CAAC,EAAE,UAAU,WAAW,aAAa,yBAAgD;AACpH,QAAM,eAAeC,wBAAAA,wBAAA;AACrB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,aAAa;AAAA,QACb,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAkC,CAAA;AACxC,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,aAAa;AAAA,UACzB,aAAa,OAAO;AAAA,UACpB;AAAA,UACA,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAwF;AAAA,EAC7F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateApiKeyForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateApiKeyForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { CreateApiKeyErrorCode, MembershipInput } from '@contember/graphql-client-tenant'\nimport { CreateApiKeyMutationResult, useCreateApiKeyMutation } from '../../hooks'\n\nexport type CreateApiKeyFormValues = {\n\tdescription: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type CreateApiKeyFormErrorCode =\n\t| CreateApiKeyErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateApiKeyFormState = FormState\n\nexport type CreateApiKeyFormError = FormError<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport type CreateApiKeyFormContextValue = FormContextValue<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport interface CreateApiKeyFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: CreateApiKeyMutationResult }) => void\n}\n\nexport const useCreateApiKeyForm = useForm as () => CreateApiKeyFormContextValue\n\nexport const CreateApiKeyForm = ({ children, onSuccess, projectSlug, initialMemberships }: CreateApiKeyFormProps) => {\n\tconst createApiKey = useCreateApiKeyMutation()\n\treturn (\n\t\t<TenantForm<CreateApiKeyFormContextValue, CreateApiKeyMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tdescription: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateApiKeyFormError[] = []\n\t\t\t\tif (!values.description) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'description' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createApiKey({\n\t\t\t\t\tdescription: values.description,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateApiKeyErrorCode, keyof CreateApiKeyFormValues | undefined> = {\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":[],"mappings":";;;;AA8BO,MAAM,sBAAsB;AAE5B,MAAM,mBAAmB,CAAC,EAAE,UAAU,WAAW,aAAa,yBAAgD;AACpH,QAAM,eAAe,wBAAA;AACrB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,aAAa;AAAA,QACb,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAkC,CAAA;AACxC,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,aAAa;AAAA,UACzB,aAAa,OAAO;AAAA,UACpB;AAAA,UACA,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAwF;AAAA,EAC7F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;"}
1
+ {"version":3,"file":"CreateApiKeyForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateApiKeyForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { CreateApiKeyErrorCode, MembershipInput } from '@contember/graphql-client-tenant'\nimport { CreateApiKeyMutationResult, useCreateApiKeyMutation } from '../../hooks/index.js'\n\nexport type CreateApiKeyFormValues = {\n\tdescription: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type CreateApiKeyFormErrorCode =\n\t| CreateApiKeyErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateApiKeyFormState = FormState\n\nexport type CreateApiKeyFormError = FormError<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport type CreateApiKeyFormContextValue = FormContextValue<CreateApiKeyFormValues, CreateApiKeyFormErrorCode>\n\nexport interface CreateApiKeyFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: CreateApiKeyMutationResult }) => void\n}\n\nexport const useCreateApiKeyForm = useForm as () => CreateApiKeyFormContextValue\n\nexport const CreateApiKeyForm = ({ children, onSuccess, projectSlug, initialMemberships }: CreateApiKeyFormProps) => {\n\tconst createApiKey = useCreateApiKeyMutation()\n\treturn (\n\t\t<TenantForm<CreateApiKeyFormContextValue, CreateApiKeyMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tdescription: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateApiKeyFormError[] = []\n\t\t\t\tif (!values.description) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'description' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createApiKey({\n\t\t\t\t\tdescription: values.description,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateApiKeyErrorCode, keyof CreateApiKeyFormValues | undefined> = {\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":[],"mappings":";;;;AA8BO,MAAM,sBAAsB;AAE5B,MAAM,mBAAmB,CAAC,EAAE,UAAU,WAAW,aAAa,yBAAgD;AACpH,QAAM,eAAe,wBAAA;AACrB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,aAAa;AAAA,QACb,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAkC,CAAA;AACxC,YAAI,CAAC,OAAO,aAAa;AACxB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,aAAa;AAAA,UACzB,aAAa,OAAO;AAAA,UACpB;AAAA,UACA,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAwF;AAAA,EAC7F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateSessionTokenForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateSessionTokenForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { CreateSessionTokenErrorCode } from '@contember/graphql-client-tenant'\nimport { CreateSessionTokenMutationResult, useCreateSessionTokenMutation } from '../../hooks'\n\nexport type CreateSessionTokenFormValues = {\n\temail: string\n}\n\nexport type CreateSessionTokenFormErrorCode =\n\t| CreateSessionTokenErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateSessionTokenFormState = FormState\n\nexport type CreateSessionTokenFormError = FormError<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport type CreateSessionTokenFormContextValue = FormContextValue<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport interface CreateSessionTokenFormProps {\n\tchildren: ReactElement\n\texpiration?: number\n\tapiToken?: string\n\tonSuccess?: (args: { result: CreateSessionTokenMutationResult }) => void\n}\n\nexport const useCreateSessionTokenForm = useForm as () => CreateSessionTokenFormContextValue\n\nexport const CreateSessionTokenForm = ({ children, onSuccess, expiration, apiToken }: CreateSessionTokenFormProps) => {\n\tconst createSessionToken = useCreateSessionTokenMutation({ apiToken })\n\treturn (\n\t\t<TenantForm<CreateSessionTokenFormContextValue, CreateSessionTokenMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateSessionTokenFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createSessionToken({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\texpiration,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateSessionTokenErrorCode, keyof CreateSessionTokenFormValues | undefined> = {\n\tPERSON_DISABLED: 'email',\n\tUNKNOWN_EMAIL: 'email',\n\tUNKNOWN_PERSON_ID: 'email',\n}\n"],"names":["useForm","useCreateSessionTokenMutation","jsx","TenantForm"],"mappings":";;;;;;AA6BO,MAAM,4BAA4BA,SAAAA;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAY,eAA4C;AACrH,QAAM,qBAAqBC,8BAAAA,8BAA8B,EAAE,UAAU;AACrE,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,MAER,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,UACd;AAAA,QAAA,CACA;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAoG;AAAA,EACzG,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,mBAAmB;AACpB;;;"}
1
+ {"version":3,"file":"CreateSessionTokenForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateSessionTokenForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { CreateSessionTokenErrorCode } from '@contember/graphql-client-tenant'\nimport { CreateSessionTokenMutationResult, useCreateSessionTokenMutation } from '../../hooks/index.js'\n\nexport type CreateSessionTokenFormValues = {\n\temail: string\n}\n\nexport type CreateSessionTokenFormErrorCode =\n\t| CreateSessionTokenErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateSessionTokenFormState = FormState\n\nexport type CreateSessionTokenFormError = FormError<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport type CreateSessionTokenFormContextValue = FormContextValue<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport interface CreateSessionTokenFormProps {\n\tchildren: ReactElement\n\texpiration?: number\n\tapiToken?: string\n\tonSuccess?: (args: { result: CreateSessionTokenMutationResult }) => void\n}\n\nexport const useCreateSessionTokenForm = useForm as () => CreateSessionTokenFormContextValue\n\nexport const CreateSessionTokenForm = ({ children, onSuccess, expiration, apiToken }: CreateSessionTokenFormProps) => {\n\tconst createSessionToken = useCreateSessionTokenMutation({ apiToken })\n\treturn (\n\t\t<TenantForm<CreateSessionTokenFormContextValue, CreateSessionTokenMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateSessionTokenFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createSessionToken({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\texpiration,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateSessionTokenErrorCode, keyof CreateSessionTokenFormValues | undefined> = {\n\tPERSON_DISABLED: 'email',\n\tUNKNOWN_EMAIL: 'email',\n\tUNKNOWN_PERSON_ID: 'email',\n}\n"],"names":["useForm","useCreateSessionTokenMutation","jsx","TenantForm"],"mappings":";;;;;;AA6BO,MAAM,4BAA4BA,SAAAA;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAY,eAA4C;AACrH,QAAM,qBAAqBC,8BAAAA,8BAA8B,EAAE,UAAU;AACrE,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,MAER,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,UACd;AAAA,QAAA,CACA;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAoG;AAAA,EACzG,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,mBAAmB;AACpB;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"CreateSessionTokenForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateSessionTokenForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { CreateSessionTokenErrorCode } from '@contember/graphql-client-tenant'\nimport { CreateSessionTokenMutationResult, useCreateSessionTokenMutation } from '../../hooks'\n\nexport type CreateSessionTokenFormValues = {\n\temail: string\n}\n\nexport type CreateSessionTokenFormErrorCode =\n\t| CreateSessionTokenErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateSessionTokenFormState = FormState\n\nexport type CreateSessionTokenFormError = FormError<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport type CreateSessionTokenFormContextValue = FormContextValue<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport interface CreateSessionTokenFormProps {\n\tchildren: ReactElement\n\texpiration?: number\n\tapiToken?: string\n\tonSuccess?: (args: { result: CreateSessionTokenMutationResult }) => void\n}\n\nexport const useCreateSessionTokenForm = useForm as () => CreateSessionTokenFormContextValue\n\nexport const CreateSessionTokenForm = ({ children, onSuccess, expiration, apiToken }: CreateSessionTokenFormProps) => {\n\tconst createSessionToken = useCreateSessionTokenMutation({ apiToken })\n\treturn (\n\t\t<TenantForm<CreateSessionTokenFormContextValue, CreateSessionTokenMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateSessionTokenFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createSessionToken({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\texpiration,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateSessionTokenErrorCode, keyof CreateSessionTokenFormValues | undefined> = {\n\tPERSON_DISABLED: 'email',\n\tUNKNOWN_EMAIL: 'email',\n\tUNKNOWN_PERSON_ID: 'email',\n}\n"],"names":[],"mappings":";;;;AA6BO,MAAM,4BAA4B;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAY,eAA4C;AACrH,QAAM,qBAAqB,8BAA8B,EAAE,UAAU;AACrE,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,MAER,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,UACd;AAAA,QAAA,CACA;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAoG;AAAA,EACzG,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,mBAAmB;AACpB;"}
1
+ {"version":3,"file":"CreateSessionTokenForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/CreateSessionTokenForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { CreateSessionTokenErrorCode } from '@contember/graphql-client-tenant'\nimport { CreateSessionTokenMutationResult, useCreateSessionTokenMutation } from '../../hooks/index.js'\n\nexport type CreateSessionTokenFormValues = {\n\temail: string\n}\n\nexport type CreateSessionTokenFormErrorCode =\n\t| CreateSessionTokenErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type CreateSessionTokenFormState = FormState\n\nexport type CreateSessionTokenFormError = FormError<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport type CreateSessionTokenFormContextValue = FormContextValue<CreateSessionTokenFormValues, CreateSessionTokenFormErrorCode>\n\nexport interface CreateSessionTokenFormProps {\n\tchildren: ReactElement\n\texpiration?: number\n\tapiToken?: string\n\tonSuccess?: (args: { result: CreateSessionTokenMutationResult }) => void\n}\n\nexport const useCreateSessionTokenForm = useForm as () => CreateSessionTokenFormContextValue\n\nexport const CreateSessionTokenForm = ({ children, onSuccess, expiration, apiToken }: CreateSessionTokenFormProps) => {\n\tconst createSessionToken = useCreateSessionTokenMutation({ apiToken })\n\treturn (\n\t\t<TenantForm<CreateSessionTokenFormContextValue, CreateSessionTokenMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: CreateSessionTokenFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createSessionToken({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\texpiration,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<CreateSessionTokenErrorCode, keyof CreateSessionTokenFormValues | undefined> = {\n\tPERSON_DISABLED: 'email',\n\tUNKNOWN_EMAIL: 'email',\n\tUNKNOWN_PERSON_ID: 'email',\n}\n"],"names":[],"mappings":";;;;AA6BO,MAAM,4BAA4B;AAElC,MAAM,yBAAyB,CAAC,EAAE,UAAU,WAAW,YAAY,eAA4C;AACrH,QAAM,qBAAqB,8BAA8B,EAAE,UAAU;AACrE,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,MAAA;AAAA,MAER,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAwC,CAAA;AAC9C,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,UACd;AAAA,QAAA,CACA;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAAoG;AAAA,EACzG,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,mBAAmB;AACpB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"InviteForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/InviteForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { InviteErrorCode, InviteOptions, MembershipInput } from '@contember/graphql-client-tenant'\nimport { InviteMutationResult, useInviteMutation } from '../../hooks'\n\nexport type InviteFormValues = {\n\temail: string\n\tname: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type InviteFormErrorCode =\n\t| InviteErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type InviteFormState = FormState\n\nexport type InviteFormError = FormError<InviteFormValues, InviteFormErrorCode>\n\nexport type InviteFormContextValue = FormContextValue<InviteFormValues, InviteFormErrorCode>\n\nexport interface InviteFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinviteOptions?: InviteOptions\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: InviteMutationResult }) => void\n}\n\nexport const useInviteForm = useForm as () => InviteFormContextValue\n\nexport const InviteForm = ({ children, onSuccess, projectSlug, initialMemberships, inviteOptions }: InviteFormProps) => {\n\tconst invite = useInviteMutation()\n\treturn (\n\t\t<TenantForm<InviteFormContextValue, InviteMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tname: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: InviteFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await invite({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\tname: values.name,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\toptions: inviteOptions,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<InviteErrorCode, keyof InviteFormValues | undefined> = {\n\tALREADY_MEMBER: 'email',\n\tINVALID_EMAIL_FORMAT: 'email',\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":["useForm","useInviteMutation","jsx","TenantForm"],"mappings":";;;;;;AAgCO,MAAM,gBAAgBA,SAAAA;AAEtB,MAAM,aAAa,CAAC,EAAE,UAAU,WAAW,aAAa,oBAAoB,oBAAqC;AACvH,QAAM,SAASC,kBAAAA,kBAAA;AACf,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAA4B,CAAA;AAClC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,OAAO;AAAA,UACnB,OAAO,OAAO;AAAA,UACd,MAAM,OAAO;AAAA,UACb;AAAA,UACA,SAAS;AAAA,UACT,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAA4E;AAAA,EACjF,gBAAgB;AAAA,EAChB,sBAAsB;AAAA,EACtB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;;;"}
1
+ {"version":3,"file":"InviteForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/InviteForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { InviteErrorCode, InviteOptions, MembershipInput } from '@contember/graphql-client-tenant'\nimport { InviteMutationResult, useInviteMutation } from '../../hooks/index.js'\n\nexport type InviteFormValues = {\n\temail: string\n\tname: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type InviteFormErrorCode =\n\t| InviteErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type InviteFormState = FormState\n\nexport type InviteFormError = FormError<InviteFormValues, InviteFormErrorCode>\n\nexport type InviteFormContextValue = FormContextValue<InviteFormValues, InviteFormErrorCode>\n\nexport interface InviteFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinviteOptions?: InviteOptions\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: InviteMutationResult }) => void\n}\n\nexport const useInviteForm = useForm as () => InviteFormContextValue\n\nexport const InviteForm = ({ children, onSuccess, projectSlug, initialMemberships, inviteOptions }: InviteFormProps) => {\n\tconst invite = useInviteMutation()\n\treturn (\n\t\t<TenantForm<InviteFormContextValue, InviteMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tname: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: InviteFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await invite({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\tname: values.name,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\toptions: inviteOptions,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<InviteErrorCode, keyof InviteFormValues | undefined> = {\n\tALREADY_MEMBER: 'email',\n\tINVALID_EMAIL_FORMAT: 'email',\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":["useForm","useInviteMutation","jsx","TenantForm"],"mappings":";;;;;;AAgCO,MAAM,gBAAgBA,SAAAA;AAEtB,MAAM,aAAa,CAAC,EAAE,UAAU,WAAW,aAAa,oBAAoB,oBAAqC;AACvH,QAAM,SAASC,kBAAAA,kBAAA;AACf,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAA4B,CAAA;AAClC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,OAAO;AAAA,UACnB,OAAO,OAAO;AAAA,UACd,MAAM,OAAO;AAAA,UACb;AAAA,UACA,SAAS;AAAA,UACT,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAA4E;AAAA,EACjF,gBAAgB;AAAA,EAChB,sBAAsB;AAAA,EACtB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"InviteForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/InviteForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { InviteErrorCode, InviteOptions, MembershipInput } from '@contember/graphql-client-tenant'\nimport { InviteMutationResult, useInviteMutation } from '../../hooks'\n\nexport type InviteFormValues = {\n\temail: string\n\tname: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type InviteFormErrorCode =\n\t| InviteErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type InviteFormState = FormState\n\nexport type InviteFormError = FormError<InviteFormValues, InviteFormErrorCode>\n\nexport type InviteFormContextValue = FormContextValue<InviteFormValues, InviteFormErrorCode>\n\nexport interface InviteFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinviteOptions?: InviteOptions\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: InviteMutationResult }) => void\n}\n\nexport const useInviteForm = useForm as () => InviteFormContextValue\n\nexport const InviteForm = ({ children, onSuccess, projectSlug, initialMemberships, inviteOptions }: InviteFormProps) => {\n\tconst invite = useInviteMutation()\n\treturn (\n\t\t<TenantForm<InviteFormContextValue, InviteMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tname: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: InviteFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await invite({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\tname: values.name,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\toptions: inviteOptions,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<InviteErrorCode, keyof InviteFormValues | undefined> = {\n\tALREADY_MEMBER: 'email',\n\tINVALID_EMAIL_FORMAT: 'email',\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":[],"mappings":";;;;AAgCO,MAAM,gBAAgB;AAEtB,MAAM,aAAa,CAAC,EAAE,UAAU,WAAW,aAAa,oBAAoB,oBAAqC;AACvH,QAAM,SAAS,kBAAA;AACf,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAA4B,CAAA;AAClC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,OAAO;AAAA,UACnB,OAAO,OAAO;AAAA,UACd,MAAM,OAAO;AAAA,UACb;AAAA,UACA,SAAS;AAAA,UACT,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAA4E;AAAA,EACjF,gBAAgB;AAAA,EAChB,sBAAsB;AAAA,EACtB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;"}
1
+ {"version":3,"file":"InviteForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/InviteForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { InviteErrorCode, InviteOptions, MembershipInput } from '@contember/graphql-client-tenant'\nimport { InviteMutationResult, useInviteMutation } from '../../hooks/index.js'\n\nexport type InviteFormValues = {\n\temail: string\n\tname: string\n\tmemberships: readonly MembershipInput[]\n}\n\nexport type InviteFormErrorCode =\n\t| InviteErrorCode\n\t| 'UNKNOWN_ERROR'\n\t| 'FIELD_REQUIRED'\n\nexport type InviteFormState = FormState\n\nexport type InviteFormError = FormError<InviteFormValues, InviteFormErrorCode>\n\nexport type InviteFormContextValue = FormContextValue<InviteFormValues, InviteFormErrorCode>\n\nexport interface InviteFormProps {\n\tchildren: ReactElement\n\tprojectSlug: string\n\tinviteOptions?: InviteOptions\n\tinitialMemberships?: readonly MembershipInput[]\n\tonSuccess?: (args: { result: InviteMutationResult }) => void\n}\n\nexport const useInviteForm = useForm as () => InviteFormContextValue\n\nexport const InviteForm = ({ children, onSuccess, projectSlug, initialMemberships, inviteOptions }: InviteFormProps) => {\n\tconst invite = useInviteMutation()\n\treturn (\n\t\t<TenantForm<InviteFormContextValue, InviteMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tname: '',\n\t\t\t\tmemberships: initialMemberships || [],\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: InviteFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t}\n\t\t\t\tif (values.memberships.length === 0) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'memberships' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await invite({\n\t\t\t\t\temail: values.email,\n\t\t\t\t\tname: values.name,\n\t\t\t\t\tprojectSlug,\n\t\t\t\t\toptions: inviteOptions,\n\t\t\t\t\tmemberships: values.memberships,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n\nconst errorToField: Record<InviteErrorCode, keyof InviteFormValues | undefined> = {\n\tALREADY_MEMBER: 'email',\n\tINVALID_EMAIL_FORMAT: 'email',\n\tINVALID_MEMBERSHIP: 'memberships',\n\tPROJECT_NOT_FOUND: undefined,\n\tROLE_NOT_FOUND: 'memberships',\n\tVARIABLE_EMPTY: 'memberships',\n\tVARIABLE_NOT_FOUND: 'memberships',\n}\n"],"names":[],"mappings":";;;;AAgCO,MAAM,gBAAgB;AAEtB,MAAM,aAAa,CAAC,EAAE,UAAU,WAAW,aAAa,oBAAoB,oBAAqC;AACvH,QAAM,SAAS,kBAAA;AACf,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa,sBAAsB,CAAA;AAAA,MAAC;AAAA,MAErC,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAA4B,CAAA;AAClC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,OAAO,YAAY,WAAW,GAAG;AACpC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,eAAe;AAAA,QAC7D;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,OAAO;AAAA,UACnB,OAAO,OAAO;AAAA,UACd,MAAM,OAAO;AAAA,UACb;AAAA,UACA,SAAS;AAAA,UACT,aAAa,OAAO;AAAA,QAAA,CACpB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,MAEb;AAAA,IAAA;AAAA,EAAA;AAGJ;AAEA,MAAM,eAA4E;AAAA,EACjF,gBAAgB;AAAA,EAChB,sBAAsB;AAAA,EACtB,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,gBAAgB;AAAA,EAChB,gBAAgB;AAAA,EAChB,oBAAoB;AACrB;"}
@@ -72,7 +72,9 @@ const errorToField = {
72
72
  "INVALID_OTP_TOKEN": "otpToken",
73
73
  "INVALID_CREDENTIALS": "password",
74
74
  "RATE_LIMIT_EXCEEDED": "password",
75
- "OTP_REQUIRED": void 0
75
+ "OTP_REQUIRED": void 0,
76
+ "MFA_ENROLLMENT_REQUIRED": void 0,
77
+ "EMAIL_NOT_VERIFIED": "email"
76
78
  };
77
79
  exports.LoginForm = LoginForm;
78
80
  exports.useLoginForm = useLoginForm;
@@ -1 +1 @@
1
- {"version":3,"file":"LoginForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/LoginForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { SignInErrorCode } from '@contember/graphql-client-tenant'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { SignInMutationResult, useSignInMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from '../../internal/hooks/useRedirectToBacklink'\n\nexport type LoginFormValues = {\n\temail: string\n\tpassword: string\n\totpToken: string\n}\n\nexport type LoginFormErrorCode =\n\t| SignInErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type LoginFormState =\n\t| FormState\n\t| 'otp-required'\n\nexport type LoginFormError = FormError<LoginFormValues, LoginFormErrorCode>\n\nexport type LoginFormContextValue = FormContextValue<LoginFormValues, LoginFormErrorCode, LoginFormState>\n\nexport interface LoginFormProps {\n\texpiration?: number\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useLoginForm = useForm as () => LoginFormContextValue\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60 // 14 days\n\nexport const LoginForm = ({ children, expiration = DEFAULT_LOGIN_EXPIRATION, onSuccess }: LoginFormProps) => {\n\tconst login = useSignInMutation({ headers })\n\tconst redirectToBacklink = useRedirectToBacklinkCallback()\n\tconst setSessionToken = useSetSessionToken()\n\treturn (\n\t\t<TenantForm<LoginFormContextValue, SignInMutationResult>\n\t\t\tonSuccess={args => {\n\t\t\t\tonSuccess?.()\n\t\t\t\tsetSessionToken(args.result.token)\n\t\t\t\tredirectToBacklink()\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tpassword: '',\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values, state }) => {\n\t\t\t\tconst errors: LoginFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'email' })\n\t\t\t\t}\n\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t}\n\t\t\t\tif (!values.otpToken && state === 'otp-required') {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'otpToken' })\n\t\t\t\t} else if (values.otpToken && !values.otpToken.match(/^\\d{6}$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'otpToken' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\tconst result = await login({\n\t\t\t\t\temail: values.email!,\n\t\t\t\t\tpassword: values.password!,\n\t\t\t\t\totpToken: values.otpToken || undefined,\n\t\t\t\t\texpiration: expiration,\n\t\t\t\t})\n\n\t\t\t\tif (!result.ok && result.error === 'OTP_REQUIRED') {\n\t\t\t\t\treturn { ...result, state: 'otp-required' }\n\t\t\t\t}\n\n\t\t\t\treturn result\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.SignInErrorCode, keyof LoginFormValues | undefined> = {\n\t'INVALID_PASSWORD': 'password',\n\t'NO_PASSWORD_SET': 'password',\n\t'UNKNOWN_EMAIL': 'email',\n\t'PERSON_DISABLED': 'email',\n\t'INVALID_OTP_TOKEN': 'otpToken',\n\t'INVALID_CREDENTIALS': 'password',\n\t'RATE_LIMIT_EXCEEDED': 'password',\n\t'OTP_REQUIRED': undefined,\n}\n"],"names":["useForm","useSignInMutation","useRedirectToBacklinkCallback","useSetSessionToken","jsx","TenantForm"],"mappings":";;;;;;;;AAoCO,MAAM,eAAeA,SAAAA;AAE5B,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAEpC,MAAM,YAAY,CAAC,EAAE,UAAU,aAAa,0BAA0B,gBAAgC;AAC5G,QAAM,QAAQC,kBAAAA,kBAAkB,EAAE,SAAS;AAC3C,QAAM,qBAAqBC,sBAAAA,8BAAA;AAC3B,QAAM,kBAAkBC,YAAAA,mBAAA;AACxB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA,WAAW,CAAA,SAAQ;AAClB,oBAAA;AACA,wBAAgB,KAAK,OAAO,KAAK;AACjC,2BAAA;AAAA,MACD;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO;AAAA,QACP,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,QAAQ,YAAY;AAChC,cAAM,SAA2B,CAAA;AACjC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QACtD;AAEA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,YAAI,CAAC,OAAO,YAAY,UAAU,gBAAgB;AACjD,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,YAAY,CAAC,OAAO,SAAS,MAAM,SAAS,GAAG;AAChE,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,cAAM,SAAS,MAAM,MAAM;AAAA,UAC1B,OAAO,OAAO;AAAA,UACd,UAAU,OAAO;AAAA,UACjB,UAAU,OAAO,YAAY;AAAA,UAC7B;AAAA,QAAA,CACA;AAED,YAAI,CAAC,OAAO,MAAM,OAAO,UAAU,gBAAgB;AAClD,iBAAO,EAAE,GAAG,QAAQ,OAAO,eAAA;AAAA,QAC5B;AAEA,eAAO;AAAA,MACR;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAqF;AAAA,EAC1F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,uBAAuB;AAAA,EACvB,gBAAgB;AACjB;;;"}
1
+ {"version":3,"file":"LoginForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/LoginForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { SignInErrorCode } from '@contember/graphql-client-tenant'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { SignInMutationResult, useSignInMutation } from '../../hooks/index.js'\nimport { useRedirectToBacklinkCallback } from '../../internal/hooks/useRedirectToBacklink.js'\n\nexport type LoginFormValues = {\n\temail: string\n\tpassword: string\n\totpToken: string\n}\n\nexport type LoginFormErrorCode =\n\t| SignInErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type LoginFormState =\n\t| FormState\n\t| 'otp-required'\n\nexport type LoginFormError = FormError<LoginFormValues, LoginFormErrorCode>\n\nexport type LoginFormContextValue = FormContextValue<LoginFormValues, LoginFormErrorCode, LoginFormState>\n\nexport interface LoginFormProps {\n\texpiration?: number\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useLoginForm = useForm as () => LoginFormContextValue\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60 // 14 days\n\nexport const LoginForm = ({ children, expiration = DEFAULT_LOGIN_EXPIRATION, onSuccess }: LoginFormProps) => {\n\tconst login = useSignInMutation({ headers })\n\tconst redirectToBacklink = useRedirectToBacklinkCallback()\n\tconst setSessionToken = useSetSessionToken()\n\treturn (\n\t\t<TenantForm<LoginFormContextValue, SignInMutationResult>\n\t\t\tonSuccess={args => {\n\t\t\t\tonSuccess?.()\n\t\t\t\tsetSessionToken(args.result.token)\n\t\t\t\tredirectToBacklink()\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tpassword: '',\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values, state }) => {\n\t\t\t\tconst errors: LoginFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'email' })\n\t\t\t\t}\n\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t}\n\t\t\t\tif (!values.otpToken && state === 'otp-required') {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'otpToken' })\n\t\t\t\t} else if (values.otpToken && !values.otpToken.match(/^\\d{6}$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'otpToken' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\tconst result = await login({\n\t\t\t\t\temail: values.email!,\n\t\t\t\t\tpassword: values.password!,\n\t\t\t\t\totpToken: values.otpToken || undefined,\n\t\t\t\t\texpiration: expiration,\n\t\t\t\t})\n\n\t\t\t\tif (!result.ok && result.error === 'OTP_REQUIRED') {\n\t\t\t\t\treturn { ...result, state: 'otp-required' }\n\t\t\t\t}\n\n\t\t\t\treturn result\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.SignInErrorCode, keyof LoginFormValues | undefined> = {\n\t'INVALID_PASSWORD': 'password',\n\t'NO_PASSWORD_SET': 'password',\n\t'UNKNOWN_EMAIL': 'email',\n\t'PERSON_DISABLED': 'email',\n\t'INVALID_OTP_TOKEN': 'otpToken',\n\t'INVALID_CREDENTIALS': 'password',\n\t'RATE_LIMIT_EXCEEDED': 'password',\n\t'OTP_REQUIRED': undefined,\n\t'MFA_ENROLLMENT_REQUIRED': undefined,\n\t'EMAIL_NOT_VERIFIED': 'email',\n}\n"],"names":["useForm","useSignInMutation","useRedirectToBacklinkCallback","useSetSessionToken","jsx","TenantForm"],"mappings":";;;;;;;;AAoCO,MAAM,eAAeA,SAAAA;AAE5B,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAEpC,MAAM,YAAY,CAAC,EAAE,UAAU,aAAa,0BAA0B,gBAAgC;AAC5G,QAAM,QAAQC,kBAAAA,kBAAkB,EAAE,SAAS;AAC3C,QAAM,qBAAqBC,sBAAAA,8BAAA;AAC3B,QAAM,kBAAkBC,YAAAA,mBAAA;AACxB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA,WAAW,CAAA,SAAQ;AAClB,oBAAA;AACA,wBAAgB,KAAK,OAAO,KAAK;AACjC,2BAAA;AAAA,MACD;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO;AAAA,QACP,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,QAAQ,YAAY;AAChC,cAAM,SAA2B,CAAA;AACjC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QACtD;AAEA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,YAAI,CAAC,OAAO,YAAY,UAAU,gBAAgB;AACjD,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,YAAY,CAAC,OAAO,SAAS,MAAM,SAAS,GAAG;AAChE,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,cAAM,SAAS,MAAM,MAAM;AAAA,UAC1B,OAAO,OAAO;AAAA,UACd,UAAU,OAAO;AAAA,UACjB,UAAU,OAAO,YAAY;AAAA,UAC7B;AAAA,QAAA,CACA;AAED,YAAI,CAAC,OAAO,MAAM,OAAO,UAAU,gBAAgB;AAClD,iBAAO,EAAE,GAAG,QAAQ,OAAO,eAAA;AAAA,QAC5B;AAEA,eAAO;AAAA,MACR;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAqF;AAAA,EAC1F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,uBAAuB;AAAA,EACvB,gBAAgB;AAAA,EAChB,2BAA2B;AAAA,EAC3B,sBAAsB;AACvB;;;"}
@@ -70,7 +70,9 @@ const errorToField = {
70
70
  "INVALID_OTP_TOKEN": "otpToken",
71
71
  "INVALID_CREDENTIALS": "password",
72
72
  "RATE_LIMIT_EXCEEDED": "password",
73
- "OTP_REQUIRED": void 0
73
+ "OTP_REQUIRED": void 0,
74
+ "MFA_ENROLLMENT_REQUIRED": void 0,
75
+ "EMAIL_NOT_VERIFIED": "email"
74
76
  };
75
77
  export {
76
78
  LoginForm,
@@ -1 +1 @@
1
- {"version":3,"file":"LoginForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/LoginForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { SignInErrorCode } from '@contember/graphql-client-tenant'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { SignInMutationResult, useSignInMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from '../../internal/hooks/useRedirectToBacklink'\n\nexport type LoginFormValues = {\n\temail: string\n\tpassword: string\n\totpToken: string\n}\n\nexport type LoginFormErrorCode =\n\t| SignInErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type LoginFormState =\n\t| FormState\n\t| 'otp-required'\n\nexport type LoginFormError = FormError<LoginFormValues, LoginFormErrorCode>\n\nexport type LoginFormContextValue = FormContextValue<LoginFormValues, LoginFormErrorCode, LoginFormState>\n\nexport interface LoginFormProps {\n\texpiration?: number\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useLoginForm = useForm as () => LoginFormContextValue\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60 // 14 days\n\nexport const LoginForm = ({ children, expiration = DEFAULT_LOGIN_EXPIRATION, onSuccess }: LoginFormProps) => {\n\tconst login = useSignInMutation({ headers })\n\tconst redirectToBacklink = useRedirectToBacklinkCallback()\n\tconst setSessionToken = useSetSessionToken()\n\treturn (\n\t\t<TenantForm<LoginFormContextValue, SignInMutationResult>\n\t\t\tonSuccess={args => {\n\t\t\t\tonSuccess?.()\n\t\t\t\tsetSessionToken(args.result.token)\n\t\t\t\tredirectToBacklink()\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tpassword: '',\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values, state }) => {\n\t\t\t\tconst errors: LoginFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'email' })\n\t\t\t\t}\n\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t}\n\t\t\t\tif (!values.otpToken && state === 'otp-required') {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'otpToken' })\n\t\t\t\t} else if (values.otpToken && !values.otpToken.match(/^\\d{6}$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'otpToken' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\tconst result = await login({\n\t\t\t\t\temail: values.email!,\n\t\t\t\t\tpassword: values.password!,\n\t\t\t\t\totpToken: values.otpToken || undefined,\n\t\t\t\t\texpiration: expiration,\n\t\t\t\t})\n\n\t\t\t\tif (!result.ok && result.error === 'OTP_REQUIRED') {\n\t\t\t\t\treturn { ...result, state: 'otp-required' }\n\t\t\t\t}\n\n\t\t\t\treturn result\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.SignInErrorCode, keyof LoginFormValues | undefined> = {\n\t'INVALID_PASSWORD': 'password',\n\t'NO_PASSWORD_SET': 'password',\n\t'UNKNOWN_EMAIL': 'email',\n\t'PERSON_DISABLED': 'email',\n\t'INVALID_OTP_TOKEN': 'otpToken',\n\t'INVALID_CREDENTIALS': 'password',\n\t'RATE_LIMIT_EXCEEDED': 'password',\n\t'OTP_REQUIRED': undefined,\n}\n"],"names":[],"mappings":";;;;;;AAoCO,MAAM,eAAe;AAE5B,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAEpC,MAAM,YAAY,CAAC,EAAE,UAAU,aAAa,0BAA0B,gBAAgC;AAC5G,QAAM,QAAQ,kBAAkB,EAAE,SAAS;AAC3C,QAAM,qBAAqB,8BAAA;AAC3B,QAAM,kBAAkB,mBAAA;AACxB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAW,CAAA,SAAQ;AAClB,oBAAA;AACA,wBAAgB,KAAK,OAAO,KAAK;AACjC,2BAAA;AAAA,MACD;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO;AAAA,QACP,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,QAAQ,YAAY;AAChC,cAAM,SAA2B,CAAA;AACjC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QACtD;AAEA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,YAAI,CAAC,OAAO,YAAY,UAAU,gBAAgB;AACjD,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,YAAY,CAAC,OAAO,SAAS,MAAM,SAAS,GAAG;AAChE,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,cAAM,SAAS,MAAM,MAAM;AAAA,UAC1B,OAAO,OAAO;AAAA,UACd,UAAU,OAAO;AAAA,UACjB,UAAU,OAAO,YAAY;AAAA,UAC7B;AAAA,QAAA,CACA;AAED,YAAI,CAAC,OAAO,MAAM,OAAO,UAAU,gBAAgB;AAClD,iBAAO,EAAE,GAAG,QAAQ,OAAO,eAAA;AAAA,QAC5B;AAEA,eAAO;AAAA,MACR;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAqF;AAAA,EAC1F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,uBAAuB;AAAA,EACvB,gBAAgB;AACjB;"}
1
+ {"version":3,"file":"LoginForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/LoginForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { SignInErrorCode } from '@contember/graphql-client-tenant'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { SignInMutationResult, useSignInMutation } from '../../hooks/index.js'\nimport { useRedirectToBacklinkCallback } from '../../internal/hooks/useRedirectToBacklink.js'\n\nexport type LoginFormValues = {\n\temail: string\n\tpassword: string\n\totpToken: string\n}\n\nexport type LoginFormErrorCode =\n\t| SignInErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type LoginFormState =\n\t| FormState\n\t| 'otp-required'\n\nexport type LoginFormError = FormError<LoginFormValues, LoginFormErrorCode>\n\nexport type LoginFormContextValue = FormContextValue<LoginFormValues, LoginFormErrorCode, LoginFormState>\n\nexport interface LoginFormProps {\n\texpiration?: number\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useLoginForm = useForm as () => LoginFormContextValue\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60 // 14 days\n\nexport const LoginForm = ({ children, expiration = DEFAULT_LOGIN_EXPIRATION, onSuccess }: LoginFormProps) => {\n\tconst login = useSignInMutation({ headers })\n\tconst redirectToBacklink = useRedirectToBacklinkCallback()\n\tconst setSessionToken = useSetSessionToken()\n\treturn (\n\t\t<TenantForm<LoginFormContextValue, SignInMutationResult>\n\t\t\tonSuccess={args => {\n\t\t\t\tonSuccess?.()\n\t\t\t\tsetSessionToken(args.result.token)\n\t\t\t\tredirectToBacklink()\n\t\t\t}}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\temail: '',\n\t\t\t\tpassword: '',\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values, state }) => {\n\t\t\t\tconst errors: LoginFormError[] = []\n\t\t\t\tif (!values.email) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'email' })\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'email' })\n\t\t\t\t}\n\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t}\n\t\t\t\tif (!values.otpToken && state === 'otp-required') {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'otpToken' })\n\t\t\t\t} else if (values.otpToken && !values.otpToken.match(/^\\d{6}$/)) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'otpToken' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\tconst result = await login({\n\t\t\t\t\temail: values.email!,\n\t\t\t\t\tpassword: values.password!,\n\t\t\t\t\totpToken: values.otpToken || undefined,\n\t\t\t\t\texpiration: expiration,\n\t\t\t\t})\n\n\t\t\t\tif (!result.ok && result.error === 'OTP_REQUIRED') {\n\t\t\t\t\treturn { ...result, state: 'otp-required' }\n\t\t\t\t}\n\n\t\t\t\treturn result\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.SignInErrorCode, keyof LoginFormValues | undefined> = {\n\t'INVALID_PASSWORD': 'password',\n\t'NO_PASSWORD_SET': 'password',\n\t'UNKNOWN_EMAIL': 'email',\n\t'PERSON_DISABLED': 'email',\n\t'INVALID_OTP_TOKEN': 'otpToken',\n\t'INVALID_CREDENTIALS': 'password',\n\t'RATE_LIMIT_EXCEEDED': 'password',\n\t'OTP_REQUIRED': undefined,\n\t'MFA_ENROLLMENT_REQUIRED': undefined,\n\t'EMAIL_NOT_VERIFIED': 'email',\n}\n"],"names":[],"mappings":";;;;;;AAoCO,MAAM,eAAe;AAE5B,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAEpC,MAAM,YAAY,CAAC,EAAE,UAAU,aAAa,0BAA0B,gBAAgC;AAC5G,QAAM,QAAQ,kBAAkB,EAAE,SAAS;AAC3C,QAAM,qBAAqB,8BAAA;AAC3B,QAAM,kBAAkB,mBAAA;AACxB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAW,CAAA,SAAQ;AAClB,oBAAA;AACA,wBAAgB,KAAK,OAAO,KAAK;AACjC,2BAAA;AAAA,MACD;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO;AAAA,QACP,UAAU;AAAA,QACV,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,QAAQ,YAAY;AAChC,cAAM,SAA2B,CAAA;AACjC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QACtD;AAEA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,YAAI,CAAC,OAAO,YAAY,UAAU,gBAAgB;AACjD,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,YAAY,CAAC,OAAO,SAAS,MAAM,SAAS,GAAG;AAChE,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,cAAM,SAAS,MAAM,MAAM;AAAA,UAC1B,OAAO,OAAO;AAAA,UACd,UAAU,OAAO;AAAA,UACjB,UAAU,OAAO,YAAY;AAAA,UAC7B;AAAA,QAAA,CACA;AAED,YAAI,CAAC,OAAO,MAAM,OAAO,UAAU,gBAAgB;AAClD,iBAAO,EAAE,GAAG,QAAQ,OAAO,eAAA;AAAA,QAC5B;AAEA,eAAO;AAAA,MACR;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAqF;AAAA,EAC1F,oBAAoB;AAAA,EACpB,mBAAmB;AAAA,EACnB,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,uBAAuB;AAAA,EACvB,uBAAuB;AAAA,EACvB,gBAAgB;AAAA,EAChB,2BAA2B;AAAA,EAC3B,sBAAsB;AACvB;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OtpConfirmForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpConfirmForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm, useIdentityMethods } from '../../contexts'\nimport { ConfirmOtpErrorCode } from '@contember/graphql-client-tenant'\nimport { useConfirmOtpMutation } from '../../hooks'\n\nexport type OtpConfirmFormValues = {\n\totpToken: string\n}\n\nexport type OtpConfirmFormErrorCode =\n\t| ConfirmOtpErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'UNKNOWN_ERROR'\n\nexport type OtpConfirmFormState = FormState\n\nexport type OtpConfirmFormError = FormError<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport type OtpConfirmFormContextValue = FormContextValue<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport interface OtpConfirmFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useOtpConfirmForm = useForm as () => OtpConfirmFormContextValue\n\nexport const OtpConfirmForm = ({ children, onSuccess }: OtpConfirmFormProps) => {\n\tconst confirmOtp = useConfirmOtpMutation()\n\tconst { refreshIdentity } = useIdentityMethods()\n\treturn (\n\t\t<TenantForm<OtpConfirmFormContextValue>\n\t\t\tonSuccess={async args => {\n\t\t\t\tawait refreshIdentity()\n\t\t\t\tonSuccess?.()\n\t\t\t}}\n\t\t\tinitialValues={{\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.otpToken) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'otpToken' }]\n\t\t\t\t}\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmOtp({\n\t\t\t\t\totpToken: values.otpToken,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={{\n\t\t\t\tINVALID_OTP_TOKEN: 'otpToken',\n\t\t\t\tNOT_PREPARED: 'otpToken',\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":["useForm","useConfirmOtpMutation","useIdentityMethods","jsx","TenantForm"],"mappings":";;;;;;AA2BO,MAAM,oBAAoBA,SAAAA;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAaC,sBAAAA,sBAAA;AACnB,QAAM,EAAE,gBAAA,IAAoBC,4BAAA;AAC5B,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA,WAAW,OAAM,SAAQ;AACxB,cAAM,gBAAA;AACN,oBAAA;AAAA,MACD;AAAA,MACA,eAAe;AAAA,QACd,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QACtD;AAAA,MACD;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,UAAU,OAAO;AAAA,QAAA,CACjB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,QACb,mBAAmB;AAAA,QACnB,cAAc;AAAA,MAAA;AAAA,MAGd;AAAA,IAAA;AAAA,EAAA;AAGJ;;;"}
1
+ {"version":3,"file":"OtpConfirmForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpConfirmForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm, useIdentityMethods } from '../../contexts.js'\nimport { ConfirmOtpErrorCode } from '@contember/graphql-client-tenant'\nimport { useConfirmOtpMutation } from '../../hooks/index.js'\n\nexport type OtpConfirmFormValues = {\n\totpToken: string\n}\n\nexport type OtpConfirmFormErrorCode =\n\t| ConfirmOtpErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'UNKNOWN_ERROR'\n\nexport type OtpConfirmFormState = FormState\n\nexport type OtpConfirmFormError = FormError<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport type OtpConfirmFormContextValue = FormContextValue<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport interface OtpConfirmFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useOtpConfirmForm = useForm as () => OtpConfirmFormContextValue\n\nexport const OtpConfirmForm = ({ children, onSuccess }: OtpConfirmFormProps) => {\n\tconst confirmOtp = useConfirmOtpMutation()\n\tconst { refreshIdentity } = useIdentityMethods()\n\treturn (\n\t\t<TenantForm<OtpConfirmFormContextValue>\n\t\t\tonSuccess={async args => {\n\t\t\t\tawait refreshIdentity()\n\t\t\t\tonSuccess?.()\n\t\t\t}}\n\t\t\tinitialValues={{\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.otpToken) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'otpToken' }]\n\t\t\t\t}\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmOtp({\n\t\t\t\t\totpToken: values.otpToken,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={{\n\t\t\t\tINVALID_OTP_TOKEN: 'otpToken',\n\t\t\t\tNOT_PREPARED: 'otpToken',\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":["useForm","useConfirmOtpMutation","useIdentityMethods","jsx","TenantForm"],"mappings":";;;;;;AA2BO,MAAM,oBAAoBA,SAAAA;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAaC,sBAAAA,sBAAA;AACnB,QAAM,EAAE,gBAAA,IAAoBC,4BAAA;AAC5B,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA,WAAW,OAAM,SAAQ;AACxB,cAAM,gBAAA;AACN,oBAAA;AAAA,MACD;AAAA,MACA,eAAe;AAAA,QACd,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QACtD;AAAA,MACD;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,UAAU,OAAO;AAAA,QAAA,CACjB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,QACb,mBAAmB;AAAA,QACnB,cAAc;AAAA,MAAA;AAAA,MAGd;AAAA,IAAA;AAAA,EAAA;AAGJ;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OtpConfirmForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpConfirmForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm, useIdentityMethods } from '../../contexts'\nimport { ConfirmOtpErrorCode } from '@contember/graphql-client-tenant'\nimport { useConfirmOtpMutation } from '../../hooks'\n\nexport type OtpConfirmFormValues = {\n\totpToken: string\n}\n\nexport type OtpConfirmFormErrorCode =\n\t| ConfirmOtpErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'UNKNOWN_ERROR'\n\nexport type OtpConfirmFormState = FormState\n\nexport type OtpConfirmFormError = FormError<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport type OtpConfirmFormContextValue = FormContextValue<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport interface OtpConfirmFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useOtpConfirmForm = useForm as () => OtpConfirmFormContextValue\n\nexport const OtpConfirmForm = ({ children, onSuccess }: OtpConfirmFormProps) => {\n\tconst confirmOtp = useConfirmOtpMutation()\n\tconst { refreshIdentity } = useIdentityMethods()\n\treturn (\n\t\t<TenantForm<OtpConfirmFormContextValue>\n\t\t\tonSuccess={async args => {\n\t\t\t\tawait refreshIdentity()\n\t\t\t\tonSuccess?.()\n\t\t\t}}\n\t\t\tinitialValues={{\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.otpToken) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'otpToken' }]\n\t\t\t\t}\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmOtp({\n\t\t\t\t\totpToken: values.otpToken,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={{\n\t\t\t\tINVALID_OTP_TOKEN: 'otpToken',\n\t\t\t\tNOT_PREPARED: 'otpToken',\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":[],"mappings":";;;;AA2BO,MAAM,oBAAoB;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAa,sBAAA;AACnB,QAAM,EAAE,gBAAA,IAAoB,mBAAA;AAC5B,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAW,OAAM,SAAQ;AACxB,cAAM,gBAAA;AACN,oBAAA;AAAA,MACD;AAAA,MACA,eAAe;AAAA,QACd,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QACtD;AAAA,MACD;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,UAAU,OAAO;AAAA,QAAA,CACjB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,QACb,mBAAmB;AAAA,QACnB,cAAc;AAAA,MAAA;AAAA,MAGd;AAAA,IAAA;AAAA,EAAA;AAGJ;"}
1
+ {"version":3,"file":"OtpConfirmForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpConfirmForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm, useIdentityMethods } from '../../contexts.js'\nimport { ConfirmOtpErrorCode } from '@contember/graphql-client-tenant'\nimport { useConfirmOtpMutation } from '../../hooks/index.js'\n\nexport type OtpConfirmFormValues = {\n\totpToken: string\n}\n\nexport type OtpConfirmFormErrorCode =\n\t| ConfirmOtpErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'UNKNOWN_ERROR'\n\nexport type OtpConfirmFormState = FormState\n\nexport type OtpConfirmFormError = FormError<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport type OtpConfirmFormContextValue = FormContextValue<OtpConfirmFormValues, OtpConfirmFormErrorCode>\n\nexport interface OtpConfirmFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const useOtpConfirmForm = useForm as () => OtpConfirmFormContextValue\n\nexport const OtpConfirmForm = ({ children, onSuccess }: OtpConfirmFormProps) => {\n\tconst confirmOtp = useConfirmOtpMutation()\n\tconst { refreshIdentity } = useIdentityMethods()\n\treturn (\n\t\t<TenantForm<OtpConfirmFormContextValue>\n\t\t\tonSuccess={async args => {\n\t\t\t\tawait refreshIdentity()\n\t\t\t\tonSuccess?.()\n\t\t\t}}\n\t\t\tinitialValues={{\n\t\t\t\totpToken: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.otpToken) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'otpToken' }]\n\t\t\t\t}\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await confirmOtp({\n\t\t\t\t\totpToken: values.otpToken,\n\t\t\t\t})\n\t\t\t}}\n\t\t\terrorMapping={{\n\t\t\t\tINVALID_OTP_TOKEN: 'otpToken',\n\t\t\t\tNOT_PREPARED: 'otpToken',\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":[],"mappings":";;;;AA2BO,MAAM,oBAAoB;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAa,sBAAA;AACnB,QAAM,EAAE,gBAAA,IAAoB,mBAAA;AAC5B,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,WAAW,OAAM,SAAQ;AACxB,cAAM,gBAAA;AACN,oBAAA;AAAA,MACD;AAAA,MACA,eAAe;AAAA,QACd,UAAU;AAAA,MAAA;AAAA,MAEX,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QACtD;AAAA,MACD;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,UAAU,OAAO;AAAA,QAAA,CACjB;AAAA,MACF;AAAA,MACA,cAAc;AAAA,QACb,mBAAmB;AAAA,QACnB,cAAc;AAAA,MAAA;AAAA,MAGd;AAAA,IAAA;AAAA,EAAA;AAGJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OtpPrepareForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpPrepareForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { PrepareOtpMutationResult, usePrepareOtpMutation } from '../../hooks'\n\nexport type OtpPrepareFormValues = {\n\tlabel: string\n}\n\nexport type OtpPrepareFormErrorCode = 'UNKNOWN_ERROR'\n\nexport type OtpPrepareFormState = FormState\n\nexport type OtpPrepareFormError = FormError<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport type OtpPrepareFormContextValue = FormContextValue<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport interface OtpPrepareFormProps {\n\tchildren: ReactElement\n\tonSuccess?: (args: { result: PrepareOtpMutationResult }) => void\n}\n\nexport const useOtpPrepareForm = useForm as () => OtpPrepareFormContextValue\n\nexport const OtpPrepareForm = ({ children, onSuccess }: OtpPrepareFormProps) => {\n\tconst prepareOtp = usePrepareOtpMutation()\n\treturn (\n\t\t<TenantForm<OtpPrepareFormContextValue, PrepareOtpMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tlabel: window.location.hostname,\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await prepareOtp({\n\t\t\t\t\tlabel: values.label,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":["useForm","usePrepareOtpMutation","jsx","TenantForm"],"mappings":";;;;;;AAuBO,MAAM,oBAAoBA,SAAAA;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAaC,sBAAAA,sBAAA;AACnB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO,OAAO,SAAS;AAAA,MAAA;AAAA,MAExB,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;;;"}
1
+ {"version":3,"file":"OtpPrepareForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpPrepareForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { PrepareOtpMutationResult, usePrepareOtpMutation } from '../../hooks/index.js'\n\nexport type OtpPrepareFormValues = {\n\tlabel: string\n}\n\nexport type OtpPrepareFormErrorCode = 'UNKNOWN_ERROR'\n\nexport type OtpPrepareFormState = FormState\n\nexport type OtpPrepareFormError = FormError<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport type OtpPrepareFormContextValue = FormContextValue<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport interface OtpPrepareFormProps {\n\tchildren: ReactElement\n\tonSuccess?: (args: { result: PrepareOtpMutationResult }) => void\n}\n\nexport const useOtpPrepareForm = useForm as () => OtpPrepareFormContextValue\n\nexport const OtpPrepareForm = ({ children, onSuccess }: OtpPrepareFormProps) => {\n\tconst prepareOtp = usePrepareOtpMutation()\n\treturn (\n\t\t<TenantForm<OtpPrepareFormContextValue, PrepareOtpMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tlabel: window.location.hostname,\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await prepareOtp({\n\t\t\t\t\tlabel: values.label,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":["useForm","usePrepareOtpMutation","jsx","TenantForm"],"mappings":";;;;;;AAuBO,MAAM,oBAAoBA,SAAAA;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAaC,sBAAAA,sBAAA;AACnB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO,OAAO,SAAS;AAAA,MAAA;AAAA,MAExB,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"OtpPrepareForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpPrepareForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { PrepareOtpMutationResult, usePrepareOtpMutation } from '../../hooks'\n\nexport type OtpPrepareFormValues = {\n\tlabel: string\n}\n\nexport type OtpPrepareFormErrorCode = 'UNKNOWN_ERROR'\n\nexport type OtpPrepareFormState = FormState\n\nexport type OtpPrepareFormError = FormError<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport type OtpPrepareFormContextValue = FormContextValue<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport interface OtpPrepareFormProps {\n\tchildren: ReactElement\n\tonSuccess?: (args: { result: PrepareOtpMutationResult }) => void\n}\n\nexport const useOtpPrepareForm = useForm as () => OtpPrepareFormContextValue\n\nexport const OtpPrepareForm = ({ children, onSuccess }: OtpPrepareFormProps) => {\n\tconst prepareOtp = usePrepareOtpMutation()\n\treturn (\n\t\t<TenantForm<OtpPrepareFormContextValue, PrepareOtpMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tlabel: window.location.hostname,\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await prepareOtp({\n\t\t\t\t\tlabel: values.label,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":[],"mappings":";;;;AAuBO,MAAM,oBAAoB;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAa,sBAAA;AACnB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO,OAAO,SAAS;AAAA,MAAA;AAAA,MAExB,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;"}
1
+ {"version":3,"file":"OtpPrepareForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/OtpPrepareForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { PrepareOtpMutationResult, usePrepareOtpMutation } from '../../hooks/index.js'\n\nexport type OtpPrepareFormValues = {\n\tlabel: string\n}\n\nexport type OtpPrepareFormErrorCode = 'UNKNOWN_ERROR'\n\nexport type OtpPrepareFormState = FormState\n\nexport type OtpPrepareFormError = FormError<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport type OtpPrepareFormContextValue = FormContextValue<OtpPrepareFormValues, OtpPrepareFormErrorCode>\n\nexport interface OtpPrepareFormProps {\n\tchildren: ReactElement\n\tonSuccess?: (args: { result: PrepareOtpMutationResult }) => void\n}\n\nexport const useOtpPrepareForm = useForm as () => OtpPrepareFormContextValue\n\nexport const OtpPrepareForm = ({ children, onSuccess }: OtpPrepareFormProps) => {\n\tconst prepareOtp = usePrepareOtpMutation()\n\treturn (\n\t\t<TenantForm<OtpPrepareFormContextValue, PrepareOtpMutationResult>\n\t\t\tonSuccess={onSuccess}\n\t\t\tinitialValues={{\n\t\t\t\tlabel: window.location.hostname,\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await prepareOtp({\n\t\t\t\t\tlabel: values.label,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\n"],"names":[],"mappings":";;;;AAuBO,MAAM,oBAAoB;AAE1B,MAAM,iBAAiB,CAAC,EAAE,UAAU,gBAAqC;AAC/E,QAAM,aAAa,sBAAA;AACnB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,eAAe;AAAA,QACd,OAAO,OAAO,SAAS;AAAA,MAAA;AAAA,MAExB,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,WAAW;AAAA,UACvB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ResetPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useResetPasswordMutation } from '../../hooks'\n\nexport type PasswordResetFormValues = {\n\ttoken: string\n\tpassword: string\n\tpasswordConfirmation: string\n}\n\nexport type PasswordResetFormErrorCode =\n\t| ResetPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetFormState = FormState\n\nexport type PasswordResetFormError = FormError<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport type PasswordResetFormContextValue = FormContextValue<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport interface PasswordResetFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const usePasswordResetForm = useForm as () => PasswordResetFormContextValue\n\nexport const PasswordResetForm = ({ children, onSuccess, token }: PasswordResetFormProps) => {\n\tconst createReset = useResetPasswordMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t\tpassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: PasswordResetFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.password !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createReset({\n\t\t\t\t\tpassword: values.password,\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ResetPasswordErrorCode, keyof PasswordResetFormValues | undefined> = {\n\tPASSWORD_TOO_WEAK: 'password',\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n}\n"],"names":["useForm","useResetPasswordMutation","jsx","TenantForm"],"mappings":";;;;;;AAiCO,MAAM,uBAAuBA,SAAAA;AAE7B,MAAM,oBAAoB,CAAC,EAAE,UAAU,WAAW,YAAoC;AAC5F,QAAM,cAAcC,yBAAAA,yBAAA;AACpB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,QAChB,UAAU;AAAA,QACV,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAmC,CAAA;AACzC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,aAAa,OAAO,sBAAsB;AAC3D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,YAAY;AAAA,UACxB,UAAU,OAAO;AAAA,UACjB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAoG;AAAA,EACzG,mBAAmB;AAAA,EACnB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAChB;;;"}
1
+ {"version":3,"file":"PasswordResetForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ResetPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useResetPasswordMutation } from '../../hooks/index.js'\n\nexport type PasswordResetFormValues = {\n\ttoken: string\n\tpassword: string\n\tpasswordConfirmation: string\n}\n\nexport type PasswordResetFormErrorCode =\n\t| ResetPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetFormState = FormState\n\nexport type PasswordResetFormError = FormError<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport type PasswordResetFormContextValue = FormContextValue<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport interface PasswordResetFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const usePasswordResetForm = useForm as () => PasswordResetFormContextValue\n\nexport const PasswordResetForm = ({ children, onSuccess, token }: PasswordResetFormProps) => {\n\tconst createReset = useResetPasswordMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t\tpassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: PasswordResetFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.password !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createReset({\n\t\t\t\t\tpassword: values.password,\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ResetPasswordErrorCode, keyof PasswordResetFormValues | undefined> = {\n\tPASSWORD_TOO_WEAK: 'password',\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n}\n"],"names":["useForm","useResetPasswordMutation","jsx","TenantForm"],"mappings":";;;;;;AAiCO,MAAM,uBAAuBA,SAAAA;AAE7B,MAAM,oBAAoB,CAAC,EAAE,UAAU,WAAW,YAAoC;AAC5F,QAAM,cAAcC,yBAAAA,yBAAA;AACpB,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,QAChB,UAAU;AAAA,QACV,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAmC,CAAA;AACzC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,aAAa,OAAO,sBAAsB;AAC3D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,YAAY;AAAA,UACxB,UAAU,OAAO;AAAA,UACjB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAoG;AAAA,EACzG,mBAAmB;AAAA,EACnB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAChB;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ResetPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types'\nimport { useForm } from '../../contexts'\nimport { useResetPasswordMutation } from '../../hooks'\n\nexport type PasswordResetFormValues = {\n\ttoken: string\n\tpassword: string\n\tpasswordConfirmation: string\n}\n\nexport type PasswordResetFormErrorCode =\n\t| ResetPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetFormState = FormState\n\nexport type PasswordResetFormError = FormError<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport type PasswordResetFormContextValue = FormContextValue<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport interface PasswordResetFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const usePasswordResetForm = useForm as () => PasswordResetFormContextValue\n\nexport const PasswordResetForm = ({ children, onSuccess, token }: PasswordResetFormProps) => {\n\tconst createReset = useResetPasswordMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t\tpassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: PasswordResetFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.password !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createReset({\n\t\t\t\t\tpassword: values.password,\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ResetPasswordErrorCode, keyof PasswordResetFormValues | undefined> = {\n\tPASSWORD_TOO_WEAK: 'password',\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n}\n"],"names":[],"mappings":";;;;AAiCO,MAAM,uBAAuB;AAE7B,MAAM,oBAAoB,CAAC,EAAE,UAAU,WAAW,YAAoC;AAC5F,QAAM,cAAc,yBAAA;AACpB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,QAChB,UAAU;AAAA,QACV,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAmC,CAAA;AACzC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,aAAa,OAAO,sBAAsB;AAC3D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,YAAY;AAAA,UACxB,UAAU,OAAO;AAAA,UACjB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAoG;AAAA,EACzG,mBAAmB;AAAA,EACnB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAChB;"}
1
+ {"version":3,"file":"PasswordResetForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetForm.tsx"],"sourcesContent":["import { ReactElement } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { ResetPasswordErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/index.js'\nimport { useForm } from '../../contexts.js'\nimport { useResetPasswordMutation } from '../../hooks/index.js'\n\nexport type PasswordResetFormValues = {\n\ttoken: string\n\tpassword: string\n\tpasswordConfirmation: string\n}\n\nexport type PasswordResetFormErrorCode =\n\t| ResetPasswordErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'PASSWORD_MISMATCH'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetFormState = FormState\n\nexport type PasswordResetFormError = FormError<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport type PasswordResetFormContextValue = FormContextValue<PasswordResetFormValues, PasswordResetFormErrorCode>\n\nexport interface PasswordResetFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n\ttoken?: string\n}\n\nexport const usePasswordResetForm = useForm as () => PasswordResetFormContextValue\n\nexport const PasswordResetForm = ({ children, onSuccess, token }: PasswordResetFormProps) => {\n\tconst createReset = useResetPasswordMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={{\n\t\t\t\ttoken: token ?? '',\n\t\t\t\tpassword: '',\n\t\t\t\tpasswordConfirmation: '',\n\t\t\t}}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tconst errors: PasswordResetFormError[] = []\n\t\t\t\tif (!values.token) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'token' })\n\t\t\t\t}\n\t\t\t\tif (!values.password) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'password' })\n\t\t\t\t} else if (values.password.length < 6) {\n\t\t\t\t\terrors.push({ code: 'INVALID_VALUE', field: 'password' })\n\t\t\t\t} else if (!values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'FIELD_REQUIRED', field: 'passwordConfirmation' })\n\t\t\t\t} else if (values.password !== values.passwordConfirmation) {\n\t\t\t\t\terrors.push({ code: 'PASSWORD_MISMATCH', field: 'passwordConfirmation' })\n\t\t\t\t}\n\t\t\t\treturn errors\n\t\t\t}}\n\t\t\texecute={async ({ values }) => {\n\t\t\t\treturn await createReset({\n\t\t\t\t\tpassword: values.password,\n\t\t\t\t\ttoken: values.token,\n\t\t\t\t})\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.ResetPasswordErrorCode, keyof PasswordResetFormValues | undefined> = {\n\tPASSWORD_TOO_WEAK: 'password',\n\tTOKEN_EXPIRED: 'token',\n\tTOKEN_NOT_FOUND: 'token',\n\tTOKEN_USED: 'token',\n\tTOKEN_INVALID: 'token',\n}\n"],"names":[],"mappings":";;;;AAiCO,MAAM,uBAAuB;AAE7B,MAAM,oBAAoB,CAAC,EAAE,UAAU,WAAW,YAAoC;AAC5F,QAAM,cAAc,yBAAA;AACpB,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe;AAAA,QACd,OAAO,SAAS;AAAA,QAChB,UAAU;AAAA,QACV,sBAAsB;AAAA,MAAA;AAAA,MAEvB,UAAU,CAAC,EAAE,aAAa;AACzB,cAAM,SAAmC,CAAA;AACzC,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACvD;AACA,YAAI,CAAC,OAAO,UAAU;AACrB,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,YAAY;AAAA,QAC1D,WAAW,OAAO,SAAS,SAAS,GAAG;AACtC,iBAAO,KAAK,EAAE,MAAM,iBAAiB,OAAO,YAAY;AAAA,QACzD,WAAW,CAAC,OAAO,sBAAsB;AACxC,iBAAO,KAAK,EAAE,MAAM,kBAAkB,OAAO,wBAAwB;AAAA,QACtE,WAAW,OAAO,aAAa,OAAO,sBAAsB;AAC3D,iBAAO,KAAK,EAAE,MAAM,qBAAqB,OAAO,wBAAwB;AAAA,QACzE;AACA,eAAO;AAAA,MACR;AAAA,MACA,SAAS,OAAO,EAAE,aAAa;AAC9B,eAAO,MAAM,YAAY;AAAA,UACxB,UAAU,OAAO;AAAA,UACjB,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAoG;AAAA,EACzG,mBAAmB;AAAA,EACnB,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,eAAe;AAChB;"}
@@ -34,7 +34,9 @@ const PasswordResetRequestForm = ({ children, onSuccess }) => {
34
34
  );
35
35
  };
36
36
  const errorToField = {
37
- PERSON_NOT_FOUND: "email"
37
+ PERSON_NOT_FOUND: "email",
38
+ RATE_LIMIT_EXCEEDED: void 0,
39
+ INVALID_CAPTCHA: void 0
38
40
  };
39
41
  exports.PasswordResetRequestForm = PasswordResetRequestForm;
40
42
  exports.usePasswordResetRequestForm = usePasswordResetRequestForm;
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetRequestForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetRequestForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { CreatePasswordResetRequestErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types/forms'\nimport { useForm } from '../../contexts'\nimport { useCreateResetPasswordRequestMutation } from '../../hooks'\n\nexport type PasswordResetRequestFormValues = {\n\temail: string\n}\n\nexport type PasswordResetRequestFormErrorCode =\n\t| CreatePasswordResetRequestErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetRequestFormState = FormState\n\nexport type PasswordResetRequestFormError = FormError<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport type PasswordResetRequestFormContextValue = FormContextValue<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport interface PasswordResetRequestFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const usePasswordResetRequestForm = useForm as () => PasswordResetRequestFormContextValue\n\nexport const PasswordResetRequestForm = ({ children, onSuccess }: PasswordResetRequestFormProps) => {\n\tconst createResetRequest = useCreateResetPasswordRequestMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetRequestFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={useMemo(() => ({\n\t\t\t\temail: '',\n\t\t\t}), [])}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.email) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'email' }]\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\treturn [{ code: 'INVALID_VALUE', field: 'email' }]\n\t\t\t\t}\n\t\t\t\treturn []\n\t\t\t}}\n\t\t\texecute={useCallback(async ({ values }) => {\n\t\t\t\treturn await createResetRequest({\n\t\t\t\t\temail: values.email,\n\t\t\t\t})\n\t\t\t}, [createResetRequest])}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.CreatePasswordResetRequestErrorCode, keyof PasswordResetRequestFormValues | undefined> = {\n\tPERSON_NOT_FOUND: 'email',\n}\n"],"names":["useForm","useCreateResetPasswordRequestMutation","jsx","TenantForm","useMemo","useCallback"],"mappings":";;;;;;;AA6BO,MAAM,8BAA8BA,SAAAA;AAEpC,MAAM,2BAA2B,CAAC,EAAE,UAAU,gBAA+C;AACnG,QAAM,qBAAqBC,sCAAAA,sCAAA;AAC3B,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAeC,MAAAA,QAAQ,OAAO;AAAA,QAC7B,OAAO;AAAA,MAAA,IACJ,CAAA,CAAE;AAAA,MACN,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACnD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,CAAC,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QAClD;AACA,eAAO,CAAA;AAAA,MACR;AAAA,MACA,SAASC,MAAAA,YAAY,OAAO,EAAE,aAAa;AAC1C,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF,GAAG,CAAC,kBAAkB,CAAC;AAAA,MAEtB;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAwH;AAAA,EAC7H,kBAAkB;AACnB;;;"}
1
+ {"version":3,"file":"PasswordResetRequestForm.cjs","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetRequestForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { CreatePasswordResetRequestErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/forms.js'\nimport { useForm } from '../../contexts.js'\nimport { useCreateResetPasswordRequestMutation } from '../../hooks/index.js'\n\nexport type PasswordResetRequestFormValues = {\n\temail: string\n}\n\nexport type PasswordResetRequestFormErrorCode =\n\t| CreatePasswordResetRequestErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetRequestFormState = FormState\n\nexport type PasswordResetRequestFormError = FormError<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport type PasswordResetRequestFormContextValue = FormContextValue<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport interface PasswordResetRequestFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const usePasswordResetRequestForm = useForm as () => PasswordResetRequestFormContextValue\n\nexport const PasswordResetRequestForm = ({ children, onSuccess }: PasswordResetRequestFormProps) => {\n\tconst createResetRequest = useCreateResetPasswordRequestMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetRequestFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={useMemo(() => ({\n\t\t\t\temail: '',\n\t\t\t}), [])}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.email) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'email' }]\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\treturn [{ code: 'INVALID_VALUE', field: 'email' }]\n\t\t\t\t}\n\t\t\t\treturn []\n\t\t\t}}\n\t\t\texecute={useCallback(async ({ values }) => {\n\t\t\t\treturn await createResetRequest({\n\t\t\t\t\temail: values.email,\n\t\t\t\t})\n\t\t\t}, [createResetRequest])}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.CreatePasswordResetRequestErrorCode, keyof PasswordResetRequestFormValues | undefined> = {\n\tPERSON_NOT_FOUND: 'email',\n\tRATE_LIMIT_EXCEEDED: undefined,\n\tINVALID_CAPTCHA: undefined,\n}\n"],"names":["useForm","useCreateResetPasswordRequestMutation","jsx","TenantForm","useMemo","useCallback"],"mappings":";;;;;;;AA6BO,MAAM,8BAA8BA,SAAAA;AAEpC,MAAM,2BAA2B,CAAC,EAAE,UAAU,gBAA+C;AACnG,QAAM,qBAAqBC,sCAAAA,sCAAA;AAC3B,SACCC,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAeC,MAAAA,QAAQ,OAAO;AAAA,QAC7B,OAAO;AAAA,MAAA,IACJ,CAAA,CAAE;AAAA,MACN,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACnD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,CAAC,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QAClD;AACA,eAAO,CAAA;AAAA,MACR;AAAA,MACA,SAASC,MAAAA,YAAY,OAAO,EAAE,aAAa;AAC1C,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF,GAAG,CAAC,kBAAkB,CAAC;AAAA,MAEtB;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAwH;AAAA,EAC7H,kBAAkB;AAAA,EAClB,qBAAqB;AAAA,EACrB,iBAAiB;AAClB;;;"}
@@ -32,7 +32,9 @@ const PasswordResetRequestForm = ({ children, onSuccess }) => {
32
32
  );
33
33
  };
34
34
  const errorToField = {
35
- PERSON_NOT_FOUND: "email"
35
+ PERSON_NOT_FOUND: "email",
36
+ RATE_LIMIT_EXCEEDED: void 0,
37
+ INVALID_CAPTCHA: void 0
36
38
  };
37
39
  export {
38
40
  PasswordResetRequestForm,
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordResetRequestForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetRequestForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { CreatePasswordResetRequestErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm'\nimport { FormContextValue, FormError, FormState } from '../../types/forms'\nimport { useForm } from '../../contexts'\nimport { useCreateResetPasswordRequestMutation } from '../../hooks'\n\nexport type PasswordResetRequestFormValues = {\n\temail: string\n}\n\nexport type PasswordResetRequestFormErrorCode =\n\t| CreatePasswordResetRequestErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetRequestFormState = FormState\n\nexport type PasswordResetRequestFormError = FormError<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport type PasswordResetRequestFormContextValue = FormContextValue<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport interface PasswordResetRequestFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const usePasswordResetRequestForm = useForm as () => PasswordResetRequestFormContextValue\n\nexport const PasswordResetRequestForm = ({ children, onSuccess }: PasswordResetRequestFormProps) => {\n\tconst createResetRequest = useCreateResetPasswordRequestMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetRequestFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={useMemo(() => ({\n\t\t\t\temail: '',\n\t\t\t}), [])}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.email) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'email' }]\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\treturn [{ code: 'INVALID_VALUE', field: 'email' }]\n\t\t\t\t}\n\t\t\t\treturn []\n\t\t\t}}\n\t\t\texecute={useCallback(async ({ values }) => {\n\t\t\t\treturn await createResetRequest({\n\t\t\t\t\temail: values.email,\n\t\t\t\t})\n\t\t\t}, [createResetRequest])}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.CreatePasswordResetRequestErrorCode, keyof PasswordResetRequestFormValues | undefined> = {\n\tPERSON_NOT_FOUND: 'email',\n}\n"],"names":[],"mappings":";;;;;AA6BO,MAAM,8BAA8B;AAEpC,MAAM,2BAA2B,CAAC,EAAE,UAAU,gBAA+C;AACnG,QAAM,qBAAqB,sCAAA;AAC3B,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe,QAAQ,OAAO;AAAA,QAC7B,OAAO;AAAA,MAAA,IACJ,CAAA,CAAE;AAAA,MACN,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACnD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,CAAC,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QAClD;AACA,eAAO,CAAA;AAAA,MACR;AAAA,MACA,SAAS,YAAY,OAAO,EAAE,aAAa;AAC1C,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF,GAAG,CAAC,kBAAkB,CAAC;AAAA,MAEtB;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAwH;AAAA,EAC7H,kBAAkB;AACnB;"}
1
+ {"version":3,"file":"PasswordResetRequestForm.js","sources":["../../../../../../packages/react-client-tenant/src/components/forms/PasswordResetRequestForm.tsx"],"sourcesContent":["import { ReactElement, useCallback, useMemo } from 'react'\nimport * as TenantApi from '@contember/graphql-client-tenant'\nimport { CreatePasswordResetRequestErrorCode } from '@contember/graphql-client-tenant'\nimport { TenantForm } from './TenantForm.js'\nimport { FormContextValue, FormError, FormState } from '../../types/forms.js'\nimport { useForm } from '../../contexts.js'\nimport { useCreateResetPasswordRequestMutation } from '../../hooks/index.js'\n\nexport type PasswordResetRequestFormValues = {\n\temail: string\n}\n\nexport type PasswordResetRequestFormErrorCode =\n\t| CreatePasswordResetRequestErrorCode\n\t| 'FIELD_REQUIRED'\n\t| 'INVALID_VALUE'\n\t| 'UNKNOWN_ERROR'\n\nexport type PasswordResetRequestFormState = FormState\n\nexport type PasswordResetRequestFormError = FormError<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport type PasswordResetRequestFormContextValue = FormContextValue<PasswordResetRequestFormValues, PasswordResetRequestFormErrorCode>\n\nexport interface PasswordResetRequestFormProps {\n\tchildren: ReactElement\n\tonSuccess?: () => void\n}\n\nexport const usePasswordResetRequestForm = useForm as () => PasswordResetRequestFormContextValue\n\nexport const PasswordResetRequestForm = ({ children, onSuccess }: PasswordResetRequestFormProps) => {\n\tconst createResetRequest = useCreateResetPasswordRequestMutation()\n\treturn (\n\t\t<TenantForm<PasswordResetRequestFormContextValue>\n\t\t\tonSuccess={onSuccess}\n\t\t\terrorMapping={errorToField}\n\t\t\tinitialValues={useMemo(() => ({\n\t\t\t\temail: '',\n\t\t\t}), [])}\n\t\t\tvalidate={({ values }) => {\n\t\t\t\tif (!values.email) {\n\t\t\t\t\treturn [{ code: 'FIELD_REQUIRED', field: 'email' }]\n\t\t\t\t} else if (!values.email.match(/^.+@.+$/)) {\n\t\t\t\t\treturn [{ code: 'INVALID_VALUE', field: 'email' }]\n\t\t\t\t}\n\t\t\t\treturn []\n\t\t\t}}\n\t\t\texecute={useCallback(async ({ values }) => {\n\t\t\t\treturn await createResetRequest({\n\t\t\t\t\temail: values.email,\n\t\t\t\t})\n\t\t\t}, [createResetRequest])}\n\t\t>\n\t\t\t{children}\n\t\t</TenantForm>\n\t)\n}\nconst errorToField: Record<TenantApi.CreatePasswordResetRequestErrorCode, keyof PasswordResetRequestFormValues | undefined> = {\n\tPERSON_NOT_FOUND: 'email',\n\tRATE_LIMIT_EXCEEDED: undefined,\n\tINVALID_CAPTCHA: undefined,\n}\n"],"names":[],"mappings":";;;;;AA6BO,MAAM,8BAA8B;AAEpC,MAAM,2BAA2B,CAAC,EAAE,UAAU,gBAA+C;AACnG,QAAM,qBAAqB,sCAAA;AAC3B,SACC;AAAA,IAAC;AAAA,IAAA;AAAA,MACA;AAAA,MACA,cAAc;AAAA,MACd,eAAe,QAAQ,OAAO;AAAA,QAC7B,OAAO;AAAA,MAAA,IACJ,CAAA,CAAE;AAAA,MACN,UAAU,CAAC,EAAE,aAAa;AACzB,YAAI,CAAC,OAAO,OAAO;AAClB,iBAAO,CAAC,EAAE,MAAM,kBAAkB,OAAO,SAAS;AAAA,QACnD,WAAW,CAAC,OAAO,MAAM,MAAM,SAAS,GAAG;AAC1C,iBAAO,CAAC,EAAE,MAAM,iBAAiB,OAAO,SAAS;AAAA,QAClD;AACA,eAAO,CAAA;AAAA,MACR;AAAA,MACA,SAAS,YAAY,OAAO,EAAE,aAAa;AAC1C,eAAO,MAAM,mBAAmB;AAAA,UAC/B,OAAO,OAAO;AAAA,QAAA,CACd;AAAA,MACF,GAAG,CAAC,kBAAkB,CAAC;AAAA,MAEtB;AAAA,IAAA;AAAA,EAAA;AAGJ;AACA,MAAM,eAAwH;AAAA,EAC7H,kBAAkB;AAAA,EAClB,qBAAqB;AAAA,EACrB,iBAAiB;AAClB;"}
@@ -64,7 +64,8 @@ const errorToField = {
64
64
  TOKEN_USED: "token",
65
65
  TOKEN_INVALID: "token",
66
66
  INVALID_OTP_TOKEN: "otpToken",
67
- OTP_REQUIRED: void 0
67
+ OTP_REQUIRED: void 0,
68
+ MFA_ENROLLMENT_REQUIRED: void 0
68
69
  };
69
70
  exports.PasswordlessSignInForm = PasswordlessSignInForm;
70
71
  exports.usePasswordlessSignInForm = usePasswordlessSignInForm;