@contember/react-client-tenant 2.0.0-alpha.9 → 2.0.0-beta.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 (401) hide show
  1. package/dist/development/index.cjs +24 -0
  2. package/dist/development/index.cjs.map +1 -1
  3. package/dist/development/index.js +24 -0
  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/CreateApiKeyForm.cjs.map +1 -1
  12. package/dist/development/src/components/forms/CreateApiKeyForm.js.map +1 -1
  13. package/dist/development/src/components/forms/CreateSessionTokenForm.cjs.map +1 -1
  14. package/dist/development/src/components/forms/CreateSessionTokenForm.js.map +1 -1
  15. package/dist/development/src/components/forms/InviteForm.cjs.map +1 -1
  16. package/dist/development/src/components/forms/InviteForm.js.map +1 -1
  17. package/dist/development/src/components/forms/LoginForm.cjs +1 -1
  18. package/dist/development/src/components/forms/LoginForm.cjs.map +1 -1
  19. package/dist/development/src/components/forms/LoginForm.js +1 -1
  20. package/dist/development/src/components/forms/LoginForm.js.map +1 -1
  21. package/dist/development/src/components/forms/OtpConfirmForm.cjs.map +1 -1
  22. package/dist/development/src/components/forms/OtpConfirmForm.js.map +1 -1
  23. package/dist/development/src/components/forms/OtpPrepareForm.cjs.map +1 -1
  24. package/dist/development/src/components/forms/OtpPrepareForm.js.map +1 -1
  25. package/dist/development/src/components/forms/PasswordResetForm.cjs +2 -1
  26. package/dist/development/src/components/forms/PasswordResetForm.cjs.map +1 -1
  27. package/dist/development/src/components/forms/PasswordResetForm.js +2 -1
  28. package/dist/development/src/components/forms/PasswordResetForm.js.map +1 -1
  29. package/dist/development/src/components/forms/PasswordResetRequestForm.cjs.map +1 -1
  30. package/dist/development/src/components/forms/PasswordResetRequestForm.js.map +1 -1
  31. package/dist/development/src/components/forms/PasswordlessSignInForm.cjs +79 -0
  32. package/dist/development/src/components/forms/PasswordlessSignInForm.cjs.map +1 -0
  33. package/dist/development/src/components/forms/PasswordlessSignInForm.js +79 -0
  34. package/dist/development/src/components/forms/PasswordlessSignInForm.js.map +1 -0
  35. package/dist/development/src/components/forms/PasswordlessSignInInitForm.cjs +54 -0
  36. package/dist/development/src/components/forms/PasswordlessSignInInitForm.cjs.map +1 -0
  37. package/dist/development/src/components/forms/PasswordlessSignInInitForm.js +54 -0
  38. package/dist/development/src/components/forms/PasswordlessSignInInitForm.js.map +1 -0
  39. package/dist/development/src/components/forms/TenantForm.cjs.map +1 -1
  40. package/dist/development/src/components/forms/TenantForm.js.map +1 -1
  41. package/dist/development/src/components/forms/UpdateProjectMemberForm.cjs.map +1 -1
  42. package/dist/development/src/components/forms/UpdateProjectMemberForm.js.map +1 -1
  43. package/dist/development/src/components/idp/IDP.cjs.map +1 -1
  44. package/dist/development/src/components/idp/IDP.js.map +1 -1
  45. package/dist/development/src/components/idp/IDPInitTrigger.cjs.map +1 -1
  46. package/dist/development/src/components/idp/IDPInitTrigger.js.map +1 -1
  47. package/dist/development/src/components/idp/IDPState.cjs.map +1 -1
  48. package/dist/development/src/components/idp/IDPState.js.map +1 -1
  49. package/dist/development/src/components/triggers/DisableOtpTrigger.cjs.map +1 -1
  50. package/dist/development/src/components/triggers/DisableOtpTrigger.js.map +1 -1
  51. package/dist/development/src/components/triggers/LogoutTrigger.cjs.map +1 -1
  52. package/dist/development/src/components/triggers/LogoutTrigger.js.map +1 -1
  53. package/dist/development/src/components/triggers/RemoveProjectMemberTrigger.cjs.map +1 -1
  54. package/dist/development/src/components/triggers/RemoveProjectMemberTrigger.js.map +1 -1
  55. package/dist/development/src/components/triggers/TenantActionTrigger.cjs.map +1 -1
  56. package/dist/development/src/components/triggers/TenantActionTrigger.js.map +1 -1
  57. package/dist/development/src/consts.cjs +5 -0
  58. package/dist/development/src/consts.cjs.map +1 -0
  59. package/dist/development/src/consts.js +5 -0
  60. package/dist/development/src/consts.js.map +1 -0
  61. package/dist/development/src/contexts.cjs.map +1 -1
  62. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs +1 -1
  63. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs.map +1 -1
  64. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js +1 -1
  65. package/dist/development/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js.map +1 -1
  66. package/dist/development/src/hooks/mutations/auth/useSignInMutation.cjs +1 -1
  67. package/dist/development/src/hooks/mutations/auth/useSignInMutation.cjs.map +1 -1
  68. package/dist/development/src/hooks/mutations/auth/useSignInMutation.js +1 -1
  69. package/dist/development/src/hooks/mutations/auth/useSignInMutation.js.map +1 -1
  70. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs +1 -1
  71. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs.map +1 -1
  72. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.js +1 -1
  73. package/dist/development/src/hooks/mutations/idp/useInitSignInIDPMutation.js.map +1 -1
  74. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.cjs +1 -1
  75. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.cjs.map +1 -1
  76. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.js +1 -1
  77. package/dist/development/src/hooks/mutations/idp/useSignInIdpMutation.js.map +1 -1
  78. package/dist/development/src/hooks/mutations/invite/useInviteMutation.cjs +1 -1
  79. package/dist/development/src/hooks/mutations/invite/useInviteMutation.cjs.map +1 -1
  80. package/dist/development/src/hooks/mutations/invite/useInviteMutation.js +1 -1
  81. package/dist/development/src/hooks/mutations/invite/useInviteMutation.js.map +1 -1
  82. package/dist/development/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.cjs.map +1 -1
  83. package/dist/development/src/hooks/mutations/passwordReset/useResetPasswordMutation.cjs.map +1 -1
  84. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs +31 -0
  85. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs.map +1 -0
  86. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js +14 -0
  87. package/dist/development/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js.map +1 -0
  88. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs +28 -0
  89. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs.map +1 -0
  90. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js +11 -0
  91. package/dist/development/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js.map +1 -0
  92. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs +28 -0
  93. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs.map +1 -0
  94. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js +11 -0
  95. package/dist/development/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js.map +1 -0
  96. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs +32 -0
  97. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs.map +1 -0
  98. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js +15 -0
  99. package/dist/development/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js.map +1 -0
  100. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs +32 -0
  101. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs.map +1 -0
  102. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js +15 -0
  103. package/dist/development/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js.map +1 -0
  104. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.cjs +29 -0
  105. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.cjs.map +1 -0
  106. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.js +12 -0
  107. package/dist/development/src/hooks/mutations/profile/useChangeMyProfile.js.map +1 -0
  108. package/dist/development/src/hooks/mutations/profile/useChangeProfile.cjs +29 -0
  109. package/dist/development/src/hooks/mutations/profile/useChangeProfile.cjs.map +1 -0
  110. package/dist/development/src/hooks/mutations/profile/useChangeProfile.js +12 -0
  111. package/dist/development/src/hooks/mutations/profile/useChangeProfile.js.map +1 -0
  112. package/dist/development/src/hooks/queries/useMeQuery.cjs +1 -1
  113. package/dist/development/src/hooks/queries/useMeQuery.cjs.map +1 -1
  114. package/dist/development/src/hooks/queries/useMeQuery.js +1 -1
  115. package/dist/development/src/hooks/queries/useMeQuery.js.map +1 -1
  116. package/dist/development/src/hooks/queries/useProjectMembersQuery.cjs +1 -1
  117. package/dist/development/src/hooks/queries/useProjectMembersQuery.cjs.map +1 -1
  118. package/dist/development/src/hooks/queries/useProjectMembersQuery.js +1 -1
  119. package/dist/development/src/hooks/queries/useProjectMembersQuery.js.map +1 -1
  120. package/dist/development/src/hooks/queries/useProjectMembershipsQuery.cjs.map +1 -1
  121. package/dist/development/src/hooks/queries/useProjectMembershipsQuery.js.map +1 -1
  122. package/dist/development/src/hooks/queries/useProjectRolesDefinitionQuery.cjs.map +1 -1
  123. package/dist/development/src/hooks/queries/useProjectRolesDefinitionQuery.js.map +1 -1
  124. package/dist/development/src/hooks/useFetchIdentity.cjs +2 -2
  125. package/dist/development/src/hooks/useFetchIdentity.cjs.map +1 -1
  126. package/dist/development/src/hooks/useFetchIdentity.js +3 -3
  127. package/dist/development/src/hooks/useFetchIdentity.js.map +1 -1
  128. package/dist/development/src/hooks/useLogout.cjs.map +1 -1
  129. package/dist/development/src/hooks/useLogout.js.map +1 -1
  130. package/dist/development/src/hooks/usePasswordlessOtpActivator.cjs +53 -0
  131. package/dist/development/src/hooks/usePasswordlessOtpActivator.cjs.map +1 -0
  132. package/dist/development/src/hooks/usePasswordlessOtpActivator.js +53 -0
  133. package/dist/development/src/hooks/usePasswordlessOtpActivator.js.map +1 -0
  134. package/dist/development/src/hooks/useTenantApi.cjs.map +1 -1
  135. package/dist/development/src/hooks/useTenantApi.js.map +1 -1
  136. package/dist/development/src/hooks/useTenantMutation.cjs.map +1 -1
  137. package/dist/development/src/hooks/useTenantMutation.js.map +1 -1
  138. package/dist/development/src/hooks/useTenantQueryLoader.cjs.map +1 -1
  139. package/dist/development/src/hooks/useTenantQueryLoader.js.map +1 -1
  140. package/dist/development/src/internal/hooks/useHandleIDPResponse.cjs +1 -1
  141. package/dist/development/src/internal/hooks/useHandleIDPResponse.cjs.map +1 -1
  142. package/dist/development/src/internal/hooks/useHandleIDPResponse.js +1 -1
  143. package/dist/development/src/internal/hooks/useHandleIDPResponse.js.map +1 -1
  144. package/dist/development/src/internal/hooks/useIDPAutoInit.cjs.map +1 -1
  145. package/dist/development/src/internal/hooks/useIDPAutoInit.js.map +1 -1
  146. package/dist/development/src/internal/hooks/useIDPStateStore.cjs.map +1 -1
  147. package/dist/development/src/internal/hooks/useIDPStateStore.js.map +1 -1
  148. package/dist/development/src/internal/hooks/useInitIDPRedirect.cjs.map +1 -1
  149. package/dist/development/src/internal/hooks/useInitIDPRedirect.js.map +1 -1
  150. package/dist/development/src/internal/hooks/useLogoutInternal.cjs.map +1 -1
  151. package/dist/development/src/internal/hooks/useLogoutInternal.js.map +1 -1
  152. package/dist/development/src/internal/hooks/useRedirectToBacklink.cjs.map +1 -1
  153. package/dist/development/src/internal/hooks/useRedirectToBacklink.js.map +1 -1
  154. package/dist/development/src/internal/utils/hashing.cjs +8 -0
  155. package/dist/development/src/internal/utils/hashing.cjs.map +1 -0
  156. package/dist/development/src/internal/utils/hashing.js +8 -0
  157. package/dist/development/src/internal/utils/hashing.js.map +1 -0
  158. package/dist/development/src/internal/utils/randomInt.cjs +29 -0
  159. package/dist/development/src/internal/utils/randomInt.cjs.map +1 -0
  160. package/dist/development/src/internal/utils/randomInt.js +29 -0
  161. package/dist/development/src/internal/utils/randomInt.js.map +1 -0
  162. package/dist/production/index.cjs +24 -0
  163. package/dist/production/index.cjs.map +1 -1
  164. package/dist/production/index.js +24 -0
  165. package/dist/production/index.js.map +1 -1
  166. package/dist/production/src/components/IdentityProvider.cjs.map +1 -1
  167. package/dist/production/src/components/IdentityProvider.js.map +1 -1
  168. package/dist/production/src/components/IdentityState.cjs.map +1 -1
  169. package/dist/production/src/components/IdentityState.js.map +1 -1
  170. package/dist/production/src/components/forms/ChangeMyPasswordForm.cjs.map +1 -1
  171. package/dist/production/src/components/forms/ChangeMyPasswordForm.js.map +1 -1
  172. package/dist/production/src/components/forms/CreateApiKeyForm.cjs.map +1 -1
  173. package/dist/production/src/components/forms/CreateApiKeyForm.js.map +1 -1
  174. package/dist/production/src/components/forms/CreateSessionTokenForm.cjs.map +1 -1
  175. package/dist/production/src/components/forms/CreateSessionTokenForm.js.map +1 -1
  176. package/dist/production/src/components/forms/InviteForm.cjs.map +1 -1
  177. package/dist/production/src/components/forms/InviteForm.js.map +1 -1
  178. package/dist/production/src/components/forms/LoginForm.cjs +1 -1
  179. package/dist/production/src/components/forms/LoginForm.cjs.map +1 -1
  180. package/dist/production/src/components/forms/LoginForm.js +1 -1
  181. package/dist/production/src/components/forms/LoginForm.js.map +1 -1
  182. package/dist/production/src/components/forms/OtpConfirmForm.cjs.map +1 -1
  183. package/dist/production/src/components/forms/OtpConfirmForm.js.map +1 -1
  184. package/dist/production/src/components/forms/OtpPrepareForm.cjs.map +1 -1
  185. package/dist/production/src/components/forms/OtpPrepareForm.js.map +1 -1
  186. package/dist/production/src/components/forms/PasswordResetForm.cjs +2 -1
  187. package/dist/production/src/components/forms/PasswordResetForm.cjs.map +1 -1
  188. package/dist/production/src/components/forms/PasswordResetForm.js +2 -1
  189. package/dist/production/src/components/forms/PasswordResetForm.js.map +1 -1
  190. package/dist/production/src/components/forms/PasswordResetRequestForm.cjs.map +1 -1
  191. package/dist/production/src/components/forms/PasswordResetRequestForm.js.map +1 -1
  192. package/dist/production/src/components/forms/PasswordlessSignInForm.cjs +71 -0
  193. package/dist/production/src/components/forms/PasswordlessSignInForm.cjs.map +1 -0
  194. package/dist/production/src/components/forms/PasswordlessSignInForm.js +71 -0
  195. package/dist/production/src/components/forms/PasswordlessSignInForm.js.map +1 -0
  196. package/dist/production/src/components/forms/PasswordlessSignInInitForm.cjs +46 -0
  197. package/dist/production/src/components/forms/PasswordlessSignInInitForm.cjs.map +1 -0
  198. package/dist/production/src/components/forms/PasswordlessSignInInitForm.js +46 -0
  199. package/dist/production/src/components/forms/PasswordlessSignInInitForm.js.map +1 -0
  200. package/dist/production/src/components/forms/TenantForm.cjs.map +1 -1
  201. package/dist/production/src/components/forms/TenantForm.js.map +1 -1
  202. package/dist/production/src/components/forms/UpdateProjectMemberForm.cjs.map +1 -1
  203. package/dist/production/src/components/forms/UpdateProjectMemberForm.js.map +1 -1
  204. package/dist/production/src/components/idp/IDP.cjs.map +1 -1
  205. package/dist/production/src/components/idp/IDP.js.map +1 -1
  206. package/dist/production/src/components/idp/IDPInitTrigger.cjs.map +1 -1
  207. package/dist/production/src/components/idp/IDPInitTrigger.js.map +1 -1
  208. package/dist/production/src/components/idp/IDPState.cjs.map +1 -1
  209. package/dist/production/src/components/idp/IDPState.js.map +1 -1
  210. package/dist/production/src/components/triggers/DisableOtpTrigger.cjs.map +1 -1
  211. package/dist/production/src/components/triggers/DisableOtpTrigger.js.map +1 -1
  212. package/dist/production/src/components/triggers/LogoutTrigger.cjs.map +1 -1
  213. package/dist/production/src/components/triggers/LogoutTrigger.js.map +1 -1
  214. package/dist/production/src/components/triggers/RemoveProjectMemberTrigger.cjs.map +1 -1
  215. package/dist/production/src/components/triggers/RemoveProjectMemberTrigger.js.map +1 -1
  216. package/dist/production/src/components/triggers/TenantActionTrigger.cjs.map +1 -1
  217. package/dist/production/src/components/triggers/TenantActionTrigger.js.map +1 -1
  218. package/dist/production/src/consts.cjs +5 -0
  219. package/dist/production/src/consts.cjs.map +1 -0
  220. package/dist/production/src/consts.js +5 -0
  221. package/dist/production/src/consts.js.map +1 -0
  222. package/dist/production/src/contexts.cjs.map +1 -1
  223. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs +1 -1
  224. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.cjs.map +1 -1
  225. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js +1 -1
  226. package/dist/production/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.js.map +1 -1
  227. package/dist/production/src/hooks/mutations/auth/useSignInMutation.cjs +1 -1
  228. package/dist/production/src/hooks/mutations/auth/useSignInMutation.cjs.map +1 -1
  229. package/dist/production/src/hooks/mutations/auth/useSignInMutation.js +1 -1
  230. package/dist/production/src/hooks/mutations/auth/useSignInMutation.js.map +1 -1
  231. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs +1 -1
  232. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.cjs.map +1 -1
  233. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.js +1 -1
  234. package/dist/production/src/hooks/mutations/idp/useInitSignInIDPMutation.js.map +1 -1
  235. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.cjs +1 -1
  236. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.cjs.map +1 -1
  237. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.js +1 -1
  238. package/dist/production/src/hooks/mutations/idp/useSignInIdpMutation.js.map +1 -1
  239. package/dist/production/src/hooks/mutations/invite/useInviteMutation.cjs +1 -1
  240. package/dist/production/src/hooks/mutations/invite/useInviteMutation.cjs.map +1 -1
  241. package/dist/production/src/hooks/mutations/invite/useInviteMutation.js +1 -1
  242. package/dist/production/src/hooks/mutations/invite/useInviteMutation.js.map +1 -1
  243. package/dist/production/src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.cjs.map +1 -1
  244. package/dist/production/src/hooks/mutations/passwordReset/useResetPasswordMutation.cjs.map +1 -1
  245. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs +31 -0
  246. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs.map +1 -0
  247. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js +14 -0
  248. package/dist/production/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js.map +1 -0
  249. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs +28 -0
  250. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs.map +1 -0
  251. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js +11 -0
  252. package/dist/production/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js.map +1 -0
  253. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs +28 -0
  254. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs.map +1 -0
  255. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js +11 -0
  256. package/dist/production/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js.map +1 -0
  257. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs +32 -0
  258. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs.map +1 -0
  259. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js +15 -0
  260. package/dist/production/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js.map +1 -0
  261. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs +32 -0
  262. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs.map +1 -0
  263. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js +15 -0
  264. package/dist/production/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js.map +1 -0
  265. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.cjs +29 -0
  266. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.cjs.map +1 -0
  267. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.js +12 -0
  268. package/dist/production/src/hooks/mutations/profile/useChangeMyProfile.js.map +1 -0
  269. package/dist/production/src/hooks/mutations/profile/useChangeProfile.cjs +29 -0
  270. package/dist/production/src/hooks/mutations/profile/useChangeProfile.cjs.map +1 -0
  271. package/dist/production/src/hooks/mutations/profile/useChangeProfile.js +12 -0
  272. package/dist/production/src/hooks/mutations/profile/useChangeProfile.js.map +1 -0
  273. package/dist/production/src/hooks/queries/useMeQuery.cjs +1 -1
  274. package/dist/production/src/hooks/queries/useMeQuery.cjs.map +1 -1
  275. package/dist/production/src/hooks/queries/useMeQuery.js +1 -1
  276. package/dist/production/src/hooks/queries/useMeQuery.js.map +1 -1
  277. package/dist/production/src/hooks/queries/useProjectMembersQuery.cjs +1 -1
  278. package/dist/production/src/hooks/queries/useProjectMembersQuery.cjs.map +1 -1
  279. package/dist/production/src/hooks/queries/useProjectMembersQuery.js +1 -1
  280. package/dist/production/src/hooks/queries/useProjectMembersQuery.js.map +1 -1
  281. package/dist/production/src/hooks/queries/useProjectMembershipsQuery.cjs.map +1 -1
  282. package/dist/production/src/hooks/queries/useProjectMembershipsQuery.js.map +1 -1
  283. package/dist/production/src/hooks/queries/useProjectRolesDefinitionQuery.cjs.map +1 -1
  284. package/dist/production/src/hooks/queries/useProjectRolesDefinitionQuery.js.map +1 -1
  285. package/dist/production/src/hooks/useFetchIdentity.cjs +2 -2
  286. package/dist/production/src/hooks/useFetchIdentity.cjs.map +1 -1
  287. package/dist/production/src/hooks/useFetchIdentity.js +3 -3
  288. package/dist/production/src/hooks/useFetchIdentity.js.map +1 -1
  289. package/dist/production/src/hooks/useLogout.cjs.map +1 -1
  290. package/dist/production/src/hooks/useLogout.js.map +1 -1
  291. package/dist/production/src/hooks/usePasswordlessOtpActivator.cjs +53 -0
  292. package/dist/production/src/hooks/usePasswordlessOtpActivator.cjs.map +1 -0
  293. package/dist/production/src/hooks/usePasswordlessOtpActivator.js +53 -0
  294. package/dist/production/src/hooks/usePasswordlessOtpActivator.js.map +1 -0
  295. package/dist/production/src/hooks/useTenantApi.cjs.map +1 -1
  296. package/dist/production/src/hooks/useTenantApi.js.map +1 -1
  297. package/dist/production/src/hooks/useTenantMutation.cjs.map +1 -1
  298. package/dist/production/src/hooks/useTenantMutation.js.map +1 -1
  299. package/dist/production/src/hooks/useTenantQueryLoader.cjs.map +1 -1
  300. package/dist/production/src/hooks/useTenantQueryLoader.js.map +1 -1
  301. package/dist/production/src/internal/hooks/useHandleIDPResponse.cjs +1 -1
  302. package/dist/production/src/internal/hooks/useHandleIDPResponse.cjs.map +1 -1
  303. package/dist/production/src/internal/hooks/useHandleIDPResponse.js +1 -1
  304. package/dist/production/src/internal/hooks/useHandleIDPResponse.js.map +1 -1
  305. package/dist/production/src/internal/hooks/useIDPAutoInit.cjs.map +1 -1
  306. package/dist/production/src/internal/hooks/useIDPAutoInit.js.map +1 -1
  307. package/dist/production/src/internal/hooks/useIDPStateStore.cjs.map +1 -1
  308. package/dist/production/src/internal/hooks/useIDPStateStore.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.map +1 -1
  312. package/dist/production/src/internal/hooks/useLogoutInternal.js.map +1 -1
  313. package/dist/production/src/internal/hooks/useRedirectToBacklink.cjs.map +1 -1
  314. package/dist/production/src/internal/hooks/useRedirectToBacklink.js.map +1 -1
  315. package/dist/production/src/internal/utils/hashing.cjs +8 -0
  316. package/dist/production/src/internal/utils/hashing.cjs.map +1 -0
  317. package/dist/production/src/internal/utils/hashing.js +8 -0
  318. package/dist/production/src/internal/utils/hashing.js.map +1 -0
  319. package/dist/production/src/internal/utils/randomInt.cjs +29 -0
  320. package/dist/production/src/internal/utils/randomInt.cjs.map +1 -0
  321. package/dist/production/src/internal/utils/randomInt.js +29 -0
  322. package/dist/production/src/internal/utils/randomInt.js.map +1 -0
  323. package/dist/types/components/forms/PasswordlessSignInForm.d.ts +22 -0
  324. package/dist/types/components/forms/PasswordlessSignInForm.d.ts.map +1 -0
  325. package/dist/types/components/forms/PasswordlessSignInInitForm.d.ts +20 -0
  326. package/dist/types/components/forms/PasswordlessSignInInitForm.d.ts.map +1 -0
  327. package/dist/types/components/forms/index.d.ts +2 -0
  328. package/dist/types/components/forms/index.d.ts.map +1 -1
  329. package/dist/types/consts.d.ts +2 -0
  330. package/dist/types/consts.d.ts.map +1 -0
  331. package/dist/types/hooks/index.d.ts +1 -0
  332. package/dist/types/hooks/index.d.ts.map +1 -1
  333. package/dist/types/hooks/mutations/apiKey/useCreateSessionTokenMutation.d.ts +0 -6
  334. package/dist/types/hooks/mutations/apiKey/useCreateSessionTokenMutation.d.ts.map +1 -1
  335. package/dist/types/hooks/mutations/auth/useSignInMutation.d.ts +0 -6
  336. package/dist/types/hooks/mutations/auth/useSignInMutation.d.ts.map +1 -1
  337. package/dist/types/hooks/mutations/idp/useSignInIdpMutation.d.ts +6 -6
  338. package/dist/types/hooks/mutations/idp/useSignInIdpMutation.d.ts.map +1 -1
  339. package/dist/types/hooks/mutations/index.d.ts +2 -0
  340. package/dist/types/hooks/mutations/index.d.ts.map +1 -1
  341. package/dist/types/hooks/mutations/invite/useInviteMutation.d.ts +0 -6
  342. package/dist/types/hooks/mutations/invite/useInviteMutation.d.ts.map +1 -1
  343. package/dist/types/hooks/mutations/passwordless/index.d.ts +6 -0
  344. package/dist/types/hooks/mutations/passwordless/index.d.ts.map +1 -0
  345. package/dist/types/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.d.ts +8 -0
  346. package/dist/types/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.d.ts.map +1 -0
  347. package/dist/types/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.d.ts +3 -0
  348. package/dist/types/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.d.ts.map +1 -0
  349. package/dist/types/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.d.ts +3 -0
  350. package/dist/types/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.d.ts.map +1 -0
  351. package/dist/types/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.d.ts +19 -0
  352. package/dist/types/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.d.ts.map +1 -0
  353. package/dist/types/hooks/mutations/passwordless/useSignInPasswordlessMutation.d.ts +34 -0
  354. package/dist/types/hooks/mutations/passwordless/useSignInPasswordlessMutation.d.ts.map +1 -0
  355. package/dist/types/hooks/mutations/profile/index.d.ts +3 -0
  356. package/dist/types/hooks/mutations/profile/index.d.ts.map +1 -0
  357. package/dist/types/hooks/mutations/profile/useChangeMyProfile.d.ts +21 -0
  358. package/dist/types/hooks/mutations/profile/useChangeMyProfile.d.ts.map +1 -0
  359. package/dist/types/hooks/mutations/profile/useChangeProfile.d.ts +23 -0
  360. package/dist/types/hooks/mutations/profile/useChangeProfile.d.ts.map +1 -0
  361. package/dist/types/hooks/usePasswordlessOtpActivator.d.ts +19 -0
  362. package/dist/types/hooks/usePasswordlessOtpActivator.d.ts.map +1 -0
  363. package/dist/types/hooks/useTenantMutation.d.ts.map +1 -1
  364. package/dist/types/internal/utils/hashing.d.ts +2 -0
  365. package/dist/types/internal/utils/hashing.d.ts.map +1 -0
  366. package/dist/types/internal/utils/randomInt.d.ts +3 -0
  367. package/dist/types/internal/utils/randomInt.d.ts.map +1 -0
  368. package/dist/types/tsconfig.tsbuildinfo +1 -1
  369. package/dist/types/types/Identity.d.ts +1 -0
  370. package/dist/types/types/Identity.d.ts.map +1 -1
  371. package/package.json +8 -7
  372. package/src/components/forms/LoginForm.tsx +1 -1
  373. package/src/components/forms/PasswordResetForm.tsx +1 -0
  374. package/src/components/forms/PasswordlessSignInForm.tsx +102 -0
  375. package/src/components/forms/PasswordlessSignInInitForm.tsx +68 -0
  376. package/src/components/forms/index.ts +2 -0
  377. package/src/consts.ts +1 -0
  378. package/src/hooks/index.ts +1 -0
  379. package/src/hooks/mutations/apiKey/useCreateSessionTokenMutation.tsx +1 -1
  380. package/src/hooks/mutations/auth/useSignInMutation.ts +1 -1
  381. package/src/hooks/mutations/idp/useInitSignInIDPMutation.ts +1 -1
  382. package/src/hooks/mutations/idp/useSignInIdpMutation.ts +1 -1
  383. package/src/hooks/mutations/index.ts +2 -0
  384. package/src/hooks/mutations/invite/useInviteMutation.tsx +1 -1
  385. package/src/hooks/mutations/passwordless/index.ts +5 -0
  386. package/src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.ts +19 -0
  387. package/src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.ts +14 -0
  388. package/src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.ts +14 -0
  389. package/src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.ts +22 -0
  390. package/src/hooks/mutations/passwordless/useSignInPasswordlessMutation.ts +24 -0
  391. package/src/hooks/mutations/profile/index.ts +2 -0
  392. package/src/hooks/mutations/profile/useChangeMyProfile.ts +13 -0
  393. package/src/hooks/mutations/profile/useChangeProfile.ts +13 -0
  394. package/src/hooks/queries/useMeQuery.ts +1 -1
  395. package/src/hooks/queries/useProjectMembersQuery.ts +1 -1
  396. package/src/hooks/useFetchIdentity.ts +3 -3
  397. package/src/hooks/usePasswordlessOtpActivator.ts +66 -0
  398. package/src/internal/hooks/useHandleIDPResponse.ts +1 -1
  399. package/src/internal/utils/hashing.ts +4 -0
  400. package/src/internal/utils/randomInt.ts +30 -0
  401. package/src/types/Identity.ts +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePasswordlessOtpActivator.js","sources":["../../../../../packages/react-client-tenant/src/hooks/usePasswordlessOtpActivator.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport { PASSWORDLESS_REQUEST_STORAGE_KEY } from '../consts'\nimport { useActivatePasswordlessOtpMutation } from './mutations'\nimport { randomString } from '../internal/utils/randomInt'\nimport { calculateHash } from '../internal/utils/hashing'\nimport { ActivatePasswordlessOtpErrorCode } from '@contember/graphql-client-tenant'\n\nconst usePasswordlessParams = (): {localStorageRequestId: string | null; urlRequestId: string | null; urlToken: string | null} => {\n\tconst localStorageValue = localStorage.getItem(PASSWORDLESS_REQUEST_STORAGE_KEY) ?? null\n\tconst urlParams = new URLSearchParams(window.location.search)\n\tconst requestId = urlParams.get('request_id')\n\tconst token = urlParams.get('token')\n\n\treturn { localStorageRequestId: localStorageValue, urlRequestId: requestId, urlToken: token }\n}\n\nexport type PasswordlessResponseHandlerState =\n\t| { type: 'empty' }\n\t| { type: 'otp_activating' }\n\t| { type: 'otp_activated'; otp: string }\n\t| { type: 'otp_activation_failed'; error: ActivatePasswordlessOtpErrorCode | 'UNKNOWN_ERROR'}\n\t| { type: 'can_proceed_to_login' }\n\nexport const usePasswordlessOtpActivator = ({ otpLength = 6, otpChars = '0123456789ABCDEF' }: {\n\totpLength?: number\n\totpChars?: string\n} = {}) => {\n\tconst { localStorageRequestId, urlRequestId, urlToken } = usePasswordlessParams()\n\tconst activateOtp = useActivatePasswordlessOtpMutation()\n\n\tconst [state, setState] = useState<PasswordlessResponseHandlerState>(() => {\n\t\tif (urlRequestId && urlToken) {\n\t\t\tif (localStorageRequestId !== urlRequestId) {\n\t\t\t\treturn { type: 'otp_activating' }\n\t\t\t} else {\n\t\t\t\treturn { type: 'can_proceed_to_login' }\n\t\t\t}\n\t\t}\n\t\treturn { type: 'empty' }\n\t})\n\n\tuseEffect(() => {\n\t\t(async () => {\n\t\t\tif (state.type === 'otp_activating') {\n\t\t\t\tconst otpCode = randomString(otpLength, otpChars)\n\t\t\t\ttry {\n\t\t\t\t\tconst result = await activateOtp({\n\t\t\t\t\t\trequestId: urlRequestId!,\n\t\t\t\t\t\ttoken: urlToken!,\n\t\t\t\t\t\totpHash: await calculateHash('SHA-256', otpCode),\n\t\t\t\t\t})\n\t\t\t\t\tif (!result.ok) {\n\t\t\t\t\t\tsetState({ type: 'otp_activation_failed', error: result.error })\n\t\t\t\t\t} else {\n\t\t\t\t\t\tsetState({ type: 'otp_activated', otp: otpCode })\n\t\t\t\t\t}\n\t\t\t\t} catch (e) {\n\t\t\t\t\tconsole.error(e)\n\t\t\t\t\tsetState({ type: 'otp_activation_failed', error: 'UNKNOWN_ERROR' })\n\t\t\t\t}\n\t\t\t}\n\t\t})()\n\t}, [activateOtp, localStorageRequestId, otpChars, otpLength, state.type, urlRequestId, urlToken])\n\n\treturn state\n}\n"],"names":[],"mappings":";;;;;AAOA,MAAM,wBAAwB,MAAoG;AACjI,QAAM,oBAAoB,aAAa,QAAQ,gCAAgC,KAAK;AACpF,QAAM,YAAY,IAAI,gBAAgB,OAAO,SAAS,MAAM;AACtD,QAAA,YAAY,UAAU,IAAI,YAAY;AACtC,QAAA,QAAQ,UAAU,IAAI,OAAO;AAEnC,SAAO,EAAE,uBAAuB,mBAAmB,cAAc,WAAW,UAAU,MAAM;AAC7F;AASa,MAAA,8BAA8B,CAAC,EAAE,YAAY,GAAG,WAAW,mBAGpE,IAAA,OAAO;AACV,QAAM,EAAE,uBAAuB,cAAc,SAAA,IAAa,sBAAsB;AAChF,QAAM,cAAc,mCAAmC;AAEvD,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA2C,MAAM;AAC1E,QAAI,gBAAgB,UAAU;AAC7B,UAAI,0BAA0B,cAAc;AACpC,eAAA,EAAE,MAAM,iBAAiB;AAAA,MAAA,OAC1B;AACC,eAAA,EAAE,MAAM,uBAAuB;AAAA,MAAA;AAAA,IACvC;AAEM,WAAA,EAAE,MAAM,QAAQ;AAAA,EAAA,CACvB;AAED,YAAU,MAAM;AACf,KAAC,YAAY;AACR,UAAA,MAAM,SAAS,kBAAkB;AAC9B,cAAA,UAAU,aAAa,WAAW,QAAQ;AAC5C,YAAA;AACG,gBAAA,SAAS,MAAM,YAAY;AAAA,YAChC,WAAW;AAAA,YACX,OAAO;AAAA,YACP,SAAS,MAAM,cAAc,WAAW,OAAO;AAAA,UAAA,CAC/C;AACG,cAAA,CAAC,OAAO,IAAI;AACf,qBAAS,EAAE,MAAM,yBAAyB,OAAO,OAAO,OAAO;AAAA,UAAA,OACzD;AACN,qBAAS,EAAE,MAAM,iBAAiB,KAAK,SAAS;AAAA,UAAA;AAAA,iBAEzC,GAAG;AACX,kBAAQ,MAAM,CAAC;AACf,mBAAS,EAAE,MAAM,yBAAyB,OAAO,iBAAiB;AAAA,QAAA;AAAA,MACnE;AAAA,IACD,GACE;AAAA,EAAA,GACD,CAAC,aAAa,uBAAuB,UAAU,WAAW,MAAM,MAAM,cAAc,QAAQ,CAAC;AAEzF,SAAA;AACR;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantApi.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantApi.ts"],"sourcesContent":["import { useLoginToken, useTenantGraphQlClient } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { Fetcher, TextWriter, util } from 'graphql-ts-client-api'\n\nexport const LoginToken = Symbol('LoginToken')\n\nexport type TenantApiOptions = {\n\treadonly headers?: Record<string, string>\n\treadonly apiToken?: string | typeof LoginToken\n}\n\nexport const useTenantApi = ({ headers, apiToken }: TenantApiOptions = {}) => {\n\tconst client = useTenantGraphQlClient()\n\tconst loginToken = useLoginToken()\n\n\treturn useCallback(<TData extends object, TVariables extends object>(\n\t\tfetcher: Fetcher<'Query' | 'Mutation', TData, TVariables>,\n\t\toptions?: {\n\t\t\treadonly variables?: TVariables\n\t\t\treadonly headers?: Record<string, string>\n\t\t\treadonly apiToken?: string | typeof LoginToken\n\t\t},\n\t): Promise<TData> => {\n\n\t\tconst writer = new TextWriter()\n\t\twriter.text(`${fetcher.fetchableType.name.toLowerCase()}`)\n\t\tif (fetcher.variableTypeMap.size !== 0) {\n\t\t\twriter.scope({ type: 'ARGUMENTS', multiLines: fetcher.variableTypeMap.size > 2, suffix: ' ' }, () => {\n\t\t\t\tutil.iterateMap(fetcher.variableTypeMap, ([name, type]) => {\n\t\t\t\t\twriter.seperator()\n\t\t\t\t\twriter.text(`$${name}: ${type}`)\n\t\t\t\t})\n\t\t\t})\n\t\t}\n\t\twriter.text(fetcher.toString())\n\t\twriter.text(fetcher.toFragmentString())\n\n\t\tconst apiTokenResolved = apiToken ?? options?.apiToken\n\t\treturn client.execute(writer.toString(), {\n\t\t\tvariables: options?.variables,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t...options?.headers,\n\t\t\t},\n\t\t\tapiToken: apiTokenResolved === LoginToken ? loginToken : apiTokenResolved,\n\t\t})\n\t}, [apiToken, client, headers, loginToken])\n}\n"],"names":["useTenantGraphQlClient","useLoginToken","useCallback","TextWriter","util"],"mappings":";;;;;AAIa,MAAA,aAAa,OAAO,YAAY;AAOtC,MAAM,eAAe,CAAC,EAAE,SAAS,SAAS,IAAsB,CAAA,MAAO;AAC7E,QAAM,SAASA,YAAAA;AACf,QAAM,aAAaC,YAAAA;AAEZ,SAAAC,MAAA,YAAY,CAClB,SACA,YAKoB;AAEd,UAAA,SAAS,IAAIC,mBAAAA;AACnB,WAAO,KAAK,GAAG,QAAQ,cAAc,KAAK,aAAa,EAAE;AACrD,QAAA,QAAQ,gBAAgB,SAAS,GAAG;AACvC,aAAO,MAAM,EAAE,MAAM,aAAa,YAAY,QAAQ,gBAAgB,OAAO,GAAG,QAAQ,IAAI,GAAG,MAAM;AACpGC,2BAAA,KAAK,WAAW,QAAQ,iBAAiB,CAAC,CAAC,MAAM,IAAI,MAAM;AAC1D,iBAAO,UAAU;AACjB,iBAAO,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE;AAAA,QAAA,CAC/B;AAAA,MAAA,CACD;AAAA,IACF;AACO,WAAA,KAAK,QAAQ,SAAU,CAAA;AACvB,WAAA,KAAK,QAAQ,iBAAkB,CAAA;AAEhC,UAAA,mBAAmB,YAAY,SAAS;AAC9C,WAAO,OAAO,QAAQ,OAAO,SAAA,GAAY;AAAA,MACxC,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,QACR,GAAG;AAAA,QACH,GAAG,SAAS;AAAA,MACb;AAAA,MACA,UAAU,qBAAqB,aAAa,aAAa;AAAA,IAAA,CACzD;AAAA,KACC,CAAC,UAAU,QAAQ,SAAS,UAAU,CAAC;AAC3C;;;"}
1
+ {"version":3,"file":"useTenantApi.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantApi.ts"],"sourcesContent":["import { useLoginToken, useTenantGraphQlClient } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { Fetcher, TextWriter, util } from 'graphql-ts-client-api'\n\nexport const LoginToken = Symbol('LoginToken')\n\nexport type TenantApiOptions = {\n\treadonly headers?: Record<string, string>\n\treadonly apiToken?: string | typeof LoginToken\n}\n\nexport const useTenantApi = ({ headers, apiToken }: TenantApiOptions = {}) => {\n\tconst client = useTenantGraphQlClient()\n\tconst loginToken = useLoginToken()\n\n\treturn useCallback(<TData extends object, TVariables extends object>(\n\t\tfetcher: Fetcher<'Query' | 'Mutation', TData, TVariables>,\n\t\toptions?: {\n\t\t\treadonly variables?: TVariables\n\t\t\treadonly headers?: Record<string, string>\n\t\t\treadonly apiToken?: string | typeof LoginToken\n\t\t},\n\t): Promise<TData> => {\n\n\t\tconst writer = new TextWriter()\n\t\twriter.text(`${fetcher.fetchableType.name.toLowerCase()}`)\n\t\tif (fetcher.variableTypeMap.size !== 0) {\n\t\t\twriter.scope({ type: 'ARGUMENTS', multiLines: fetcher.variableTypeMap.size > 2, suffix: ' ' }, () => {\n\t\t\t\tutil.iterateMap(fetcher.variableTypeMap, ([name, type]) => {\n\t\t\t\t\twriter.seperator()\n\t\t\t\t\twriter.text(`$${name}: ${type}`)\n\t\t\t\t})\n\t\t\t})\n\t\t}\n\t\twriter.text(fetcher.toString())\n\t\twriter.text(fetcher.toFragmentString())\n\n\t\tconst apiTokenResolved = apiToken ?? options?.apiToken\n\t\treturn client.execute(writer.toString(), {\n\t\t\tvariables: options?.variables,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t...options?.headers,\n\t\t\t},\n\t\t\tapiToken: apiTokenResolved === LoginToken ? loginToken : apiTokenResolved,\n\t\t})\n\t}, [apiToken, client, headers, loginToken])\n}\n"],"names":["useTenantGraphQlClient","useLoginToken","useCallback","TextWriter","util"],"mappings":";;;;;AAIa,MAAA,aAAa,OAAO,YAAY;AAOtC,MAAM,eAAe,CAAC,EAAE,SAAS,SAAS,IAAsB,CAAA,MAAO;AAC7E,QAAM,SAASA,YAAAA,uBAAuB;AACtC,QAAM,aAAaC,YAAAA,cAAc;AAE1B,SAAAC,MAAA,YAAY,CAClB,SACA,YAKoB;AAEd,UAAA,SAAS,IAAIC,8BAAW;AAC9B,WAAO,KAAK,GAAG,QAAQ,cAAc,KAAK,YAAa,CAAA,EAAE;AACrD,QAAA,QAAQ,gBAAgB,SAAS,GAAG;AACvC,aAAO,MAAM,EAAE,MAAM,aAAa,YAAY,QAAQ,gBAAgB,OAAO,GAAG,QAAQ,IAAI,GAAG,MAAM;AACpGC,2BAAA,KAAK,WAAW,QAAQ,iBAAiB,CAAC,CAAC,MAAM,IAAI,MAAM;AAC1D,iBAAO,UAAU;AACjB,iBAAO,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE;AAAA,QAAA,CAC/B;AAAA,MAAA,CACD;AAAA,IAAA;AAEK,WAAA,KAAK,QAAQ,UAAU;AACvB,WAAA,KAAK,QAAQ,kBAAkB;AAEhC,UAAA,mBAAmB,YAAY,SAAS;AAC9C,WAAO,OAAO,QAAQ,OAAO,SAAA,GAAY;AAAA,MACxC,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,QACR,GAAG;AAAA,QACH,GAAG,SAAS;AAAA,MACb;AAAA,MACA,UAAU,qBAAqB,aAAa,aAAa;AAAA,IAAA,CACzD;AAAA,KACC,CAAC,UAAU,QAAQ,SAAS,UAAU,CAAC;AAC3C;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantApi.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantApi.ts"],"sourcesContent":["import { useLoginToken, useTenantGraphQlClient } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { Fetcher, TextWriter, util } from 'graphql-ts-client-api'\n\nexport const LoginToken = Symbol('LoginToken')\n\nexport type TenantApiOptions = {\n\treadonly headers?: Record<string, string>\n\treadonly apiToken?: string | typeof LoginToken\n}\n\nexport const useTenantApi = ({ headers, apiToken }: TenantApiOptions = {}) => {\n\tconst client = useTenantGraphQlClient()\n\tconst loginToken = useLoginToken()\n\n\treturn useCallback(<TData extends object, TVariables extends object>(\n\t\tfetcher: Fetcher<'Query' | 'Mutation', TData, TVariables>,\n\t\toptions?: {\n\t\t\treadonly variables?: TVariables\n\t\t\treadonly headers?: Record<string, string>\n\t\t\treadonly apiToken?: string | typeof LoginToken\n\t\t},\n\t): Promise<TData> => {\n\n\t\tconst writer = new TextWriter()\n\t\twriter.text(`${fetcher.fetchableType.name.toLowerCase()}`)\n\t\tif (fetcher.variableTypeMap.size !== 0) {\n\t\t\twriter.scope({ type: 'ARGUMENTS', multiLines: fetcher.variableTypeMap.size > 2, suffix: ' ' }, () => {\n\t\t\t\tutil.iterateMap(fetcher.variableTypeMap, ([name, type]) => {\n\t\t\t\t\twriter.seperator()\n\t\t\t\t\twriter.text(`$${name}: ${type}`)\n\t\t\t\t})\n\t\t\t})\n\t\t}\n\t\twriter.text(fetcher.toString())\n\t\twriter.text(fetcher.toFragmentString())\n\n\t\tconst apiTokenResolved = apiToken ?? options?.apiToken\n\t\treturn client.execute(writer.toString(), {\n\t\t\tvariables: options?.variables,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t...options?.headers,\n\t\t\t},\n\t\t\tapiToken: apiTokenResolved === LoginToken ? loginToken : apiTokenResolved,\n\t\t})\n\t}, [apiToken, client, headers, loginToken])\n}\n"],"names":[],"mappings":";;;AAIa,MAAA,aAAa,OAAO,YAAY;AAOtC,MAAM,eAAe,CAAC,EAAE,SAAS,SAAS,IAAsB,CAAA,MAAO;AAC7E,QAAM,SAAS;AACf,QAAM,aAAa;AAEZ,SAAA,YAAY,CAClB,SACA,YAKoB;AAEd,UAAA,SAAS,IAAI;AACnB,WAAO,KAAK,GAAG,QAAQ,cAAc,KAAK,aAAa,EAAE;AACrD,QAAA,QAAQ,gBAAgB,SAAS,GAAG;AACvC,aAAO,MAAM,EAAE,MAAM,aAAa,YAAY,QAAQ,gBAAgB,OAAO,GAAG,QAAQ,IAAI,GAAG,MAAM;AACpG,aAAK,WAAW,QAAQ,iBAAiB,CAAC,CAAC,MAAM,IAAI,MAAM;AAC1D,iBAAO,UAAU;AACjB,iBAAO,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE;AAAA,QAAA,CAC/B;AAAA,MAAA,CACD;AAAA,IACF;AACO,WAAA,KAAK,QAAQ,SAAU,CAAA;AACvB,WAAA,KAAK,QAAQ,iBAAkB,CAAA;AAEhC,UAAA,mBAAmB,YAAY,SAAS;AAC9C,WAAO,OAAO,QAAQ,OAAO,SAAA,GAAY;AAAA,MACxC,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,QACR,GAAG;AAAA,QACH,GAAG,SAAS;AAAA,MACb;AAAA,MACA,UAAU,qBAAqB,aAAa,aAAa;AAAA,IAAA,CACzD;AAAA,KACC,CAAC,UAAU,QAAQ,SAAS,UAAU,CAAC;AAC3C;"}
1
+ {"version":3,"file":"useTenantApi.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantApi.ts"],"sourcesContent":["import { useLoginToken, useTenantGraphQlClient } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { Fetcher, TextWriter, util } from 'graphql-ts-client-api'\n\nexport const LoginToken = Symbol('LoginToken')\n\nexport type TenantApiOptions = {\n\treadonly headers?: Record<string, string>\n\treadonly apiToken?: string | typeof LoginToken\n}\n\nexport const useTenantApi = ({ headers, apiToken }: TenantApiOptions = {}) => {\n\tconst client = useTenantGraphQlClient()\n\tconst loginToken = useLoginToken()\n\n\treturn useCallback(<TData extends object, TVariables extends object>(\n\t\tfetcher: Fetcher<'Query' | 'Mutation', TData, TVariables>,\n\t\toptions?: {\n\t\t\treadonly variables?: TVariables\n\t\t\treadonly headers?: Record<string, string>\n\t\t\treadonly apiToken?: string | typeof LoginToken\n\t\t},\n\t): Promise<TData> => {\n\n\t\tconst writer = new TextWriter()\n\t\twriter.text(`${fetcher.fetchableType.name.toLowerCase()}`)\n\t\tif (fetcher.variableTypeMap.size !== 0) {\n\t\t\twriter.scope({ type: 'ARGUMENTS', multiLines: fetcher.variableTypeMap.size > 2, suffix: ' ' }, () => {\n\t\t\t\tutil.iterateMap(fetcher.variableTypeMap, ([name, type]) => {\n\t\t\t\t\twriter.seperator()\n\t\t\t\t\twriter.text(`$${name}: ${type}`)\n\t\t\t\t})\n\t\t\t})\n\t\t}\n\t\twriter.text(fetcher.toString())\n\t\twriter.text(fetcher.toFragmentString())\n\n\t\tconst apiTokenResolved = apiToken ?? options?.apiToken\n\t\treturn client.execute(writer.toString(), {\n\t\t\tvariables: options?.variables,\n\t\t\theaders: {\n\t\t\t\t...headers,\n\t\t\t\t...options?.headers,\n\t\t\t},\n\t\t\tapiToken: apiTokenResolved === LoginToken ? loginToken : apiTokenResolved,\n\t\t})\n\t}, [apiToken, client, headers, loginToken])\n}\n"],"names":[],"mappings":";;;AAIa,MAAA,aAAa,OAAO,YAAY;AAOtC,MAAM,eAAe,CAAC,EAAE,SAAS,SAAS,IAAsB,CAAA,MAAO;AAC7E,QAAM,SAAS,uBAAuB;AACtC,QAAM,aAAa,cAAc;AAE1B,SAAA,YAAY,CAClB,SACA,YAKoB;AAEd,UAAA,SAAS,IAAI,WAAW;AAC9B,WAAO,KAAK,GAAG,QAAQ,cAAc,KAAK,YAAa,CAAA,EAAE;AACrD,QAAA,QAAQ,gBAAgB,SAAS,GAAG;AACvC,aAAO,MAAM,EAAE,MAAM,aAAa,YAAY,QAAQ,gBAAgB,OAAO,GAAG,QAAQ,IAAI,GAAG,MAAM;AACpG,aAAK,WAAW,QAAQ,iBAAiB,CAAC,CAAC,MAAM,IAAI,MAAM;AAC1D,iBAAO,UAAU;AACjB,iBAAO,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE;AAAA,QAAA,CAC/B;AAAA,MAAA,CACD;AAAA,IAAA;AAEK,WAAA,KAAK,QAAQ,UAAU;AACvB,WAAA,KAAK,QAAQ,kBAAkB;AAEhC,UAAA,mBAAmB,YAAY,SAAS;AAC9C,WAAO,OAAO,QAAQ,OAAO,SAAA,GAAY;AAAA,MACxC,WAAW,SAAS;AAAA,MACpB,SAAS;AAAA,QACR,GAAG;AAAA,QACH,GAAG,SAAS;AAAA,MACb;AAAA,MACA,UAAU,qBAAqB,aAAa,aAAa;AAAA,IAAA,CACzD;AAAA,KACC,CAAC,UAAU,QAAQ,SAAS,UAAU,CAAC;AAC3C;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantMutation.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantMutation.ts"],"sourcesContent":["import { TenantApiOptions, useTenantApi } from './useTenantApi'\nimport { useCallback, useMemo } from 'react'\nimport { MutationFetcher } from '@contember/graphql-client-tenant'\n\nexport type TenantMutationOkResponse<Result> = { ok: true; result: Result }\nexport type TenantMutationErrorResponse<Error> = { ok: false; error: Error; developerMessage?: string }\nexport type TenantMutationResponse<Result, Error> = TenantMutationOkResponse<Result> | TenantMutationErrorResponse<Error>\n\nexport type TenantMutation<Result, Error> = { readonly mutation?: { readonly ok: boolean; readonly error?: { readonly code: Error; readonly developerMessage: string}; readonly result?: Result} }\n\nexport const useTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\t{ headers, apiToken }: TenantApiOptions = {},\n) => {\n\tconst tenantApi = useTenantApi({ headers, apiToken })\n\n\treturn useCallback(async (variables: TVariables): Promise<TenantMutationResponse<TResult, TError>> => {\n\t\tconst result = await tenantApi(\n\t\t\tfetcher,\n\t\t\t{\n\t\t\t\tvariables,\n\t\t\t},\n\t\t)\n\t\tif (!result.mutation?.ok) {\n\t\t\treturn {\n\t\t\t\tok: false,\n\t\t\t\terror: result.mutation?.error?.code as TError,\n\t\t\t\tdeveloperMessage: result.mutation?.error?.developerMessage,\n\t\t\t}\n\t\t} else {\n\t\t\treturn { ok: true, result: result.mutation.result as TResult }\n\t\t}\n\t}, [fetcher, tenantApi])\n}\n\n\nexport const createTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\tdefaultOptions?: TenantApiOptions,\n) => {\n\treturn ({ headers, apiToken }: TenantApiOptions = {}) => useTenantMutation(fetcher, {\n\t\theaders: useMemo(() => ({ ...defaultOptions?.headers, ...headers }), [headers]),\n\t\tapiToken: apiToken ?? defaultOptions?.apiToken,\n\t})\n}\n"],"names":["useTenantApi","useCallback","useMemo"],"mappings":";;;;AAUa,MAAA,oBAAoB,CAChC,SACA,EAAE,SAAS,SAAS,IAAsB,CAAA,MACtC;AACJ,QAAM,YAAYA,aAAA,aAAa,EAAE,SAAS,SAAU,CAAA;AAE7C,SAAAC,MAAAA,YAAY,OAAO,cAA4E;AACrG,UAAM,SAAS,MAAM;AAAA,MACpB;AAAA,MACA;AAAA,QACC;AAAA,MACD;AAAA,IAAA;AAEG,QAAA,CAAC,OAAO,UAAU,IAAI;AAClB,aAAA;AAAA,QACN,IAAI;AAAA,QACJ,OAAO,OAAO,UAAU,OAAO;AAAA,QAC/B,kBAAkB,OAAO,UAAU,OAAO;AAAA,MAAA;AAAA,IAC3C,OACM;AACN,aAAO,EAAE,IAAI,MAAM,QAAQ,OAAO,SAAS;IAC5C;AAAA,EAAA,GACE,CAAC,SAAS,SAAS,CAAC;AACxB;AAGa,MAAA,uBAAuB,CACnC,SACA,mBACI;AACG,SAAA,CAAC,EAAE,SAAS,aAA+B,CAAC,MAAM,kBAAkB,SAAS;AAAA,IACnF,SAASC,MAAAA,QAAQ,OAAO,EAAE,GAAG,gBAAgB,SAAS,GAAG,QAAQ,IAAI,CAAC,OAAO,CAAC;AAAA,IAC9E,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACtC;AACF;;;"}
1
+ {"version":3,"file":"useTenantMutation.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantMutation.ts"],"sourcesContent":["import { TenantApiOptions, useTenantApi } from './useTenantApi'\nimport { useCallback, useMemo } from 'react'\nimport { MutationFetcher } from '@contember/graphql-client-tenant'\n\nexport type TenantMutationOkResponse<Result> = { ok: true; result: Result }\nexport type TenantMutationErrorResponse<Error> = { ok: false; error: Error; developerMessage?: string }\nexport type TenantMutationResponse<Result, Error> = TenantMutationOkResponse<Result> | TenantMutationErrorResponse<Error>\n\nexport type TenantMutation<Result, Error> = { readonly mutation?: { readonly ok: boolean; readonly error?: { readonly code: Error; readonly developerMessage: string}; readonly result?: Result} }\n\nexport const useTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\t{ headers, apiToken }: TenantApiOptions = {},\n) => {\n\tconst tenantApi = useTenantApi({ headers, apiToken })\n\n\treturn useCallback(async (variables: TVariables): Promise<TenantMutationResponse<TResult, TError>> => {\n\t\tconst result = await tenantApi(\n\t\t\tfetcher,\n\t\t\t{\n\t\t\t\tvariables,\n\t\t\t},\n\t\t)\n\t\tif (!result.mutation?.ok) {\n\t\t\treturn {\n\t\t\t\tok: false,\n\t\t\t\terror: result.mutation?.error?.code as TError,\n\t\t\t\tdeveloperMessage: result.mutation?.error?.developerMessage,\n\t\t\t}\n\t\t} else {\n\t\t\treturn { ok: true, result: result.mutation.result as TResult }\n\t\t}\n\t}, [fetcher, tenantApi])\n}\n\n\nexport const createTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\tdefaultOptions?: TenantApiOptions,\n) => {\n\treturn ({ headers, apiToken }: TenantApiOptions = {}) => useTenantMutation(fetcher, {\n\t\theaders: useMemo(() => ({ ...defaultOptions?.headers, ...headers }), [headers]),\n\t\tapiToken: apiToken ?? defaultOptions?.apiToken,\n\t})\n}\n"],"names":["useTenantApi","useCallback","useMemo"],"mappings":";;;;AAUa,MAAA,oBAAoB,CAChC,SACA,EAAE,SAAS,SAAS,IAAsB,CAAA,MACtC;AACJ,QAAM,YAAYA,aAAA,aAAa,EAAE,SAAS,UAAU;AAE7C,SAAAC,MAAAA,YAAY,OAAO,cAA4E;AACrG,UAAM,SAAS,MAAM;AAAA,MACpB;AAAA,MACA;AAAA,QACC;AAAA,MAAA;AAAA,IAEF;AACI,QAAA,CAAC,OAAO,UAAU,IAAI;AAClB,aAAA;AAAA,QACN,IAAI;AAAA,QACJ,OAAO,OAAO,UAAU,OAAO;AAAA,QAC/B,kBAAkB,OAAO,UAAU,OAAO;AAAA,MAC3C;AAAA,IAAA,OACM;AACN,aAAO,EAAE,IAAI,MAAM,QAAQ,OAAO,SAAS,OAAkB;AAAA,IAAA;AAAA,EAC9D,GACE,CAAC,SAAS,SAAS,CAAC;AACxB;AAGa,MAAA,uBAAuB,CACnC,SACA,mBACI;AACG,SAAA,CAAC,EAAE,SAAS,aAA+B,CAAC,MAAM,kBAAkB,SAAS;AAAA,IACnF,SAASC,MAAAA,QAAQ,OAAO,EAAE,GAAG,gBAAgB,SAAS,GAAG,QAAQ,IAAI,CAAC,OAAO,CAAC;AAAA,IAC9E,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACtC;AACF;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantMutation.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantMutation.ts"],"sourcesContent":["import { TenantApiOptions, useTenantApi } from './useTenantApi'\nimport { useCallback, useMemo } from 'react'\nimport { MutationFetcher } from '@contember/graphql-client-tenant'\n\nexport type TenantMutationOkResponse<Result> = { ok: true; result: Result }\nexport type TenantMutationErrorResponse<Error> = { ok: false; error: Error; developerMessage?: string }\nexport type TenantMutationResponse<Result, Error> = TenantMutationOkResponse<Result> | TenantMutationErrorResponse<Error>\n\nexport type TenantMutation<Result, Error> = { readonly mutation?: { readonly ok: boolean; readonly error?: { readonly code: Error; readonly developerMessage: string}; readonly result?: Result} }\n\nexport const useTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\t{ headers, apiToken }: TenantApiOptions = {},\n) => {\n\tconst tenantApi = useTenantApi({ headers, apiToken })\n\n\treturn useCallback(async (variables: TVariables): Promise<TenantMutationResponse<TResult, TError>> => {\n\t\tconst result = await tenantApi(\n\t\t\tfetcher,\n\t\t\t{\n\t\t\t\tvariables,\n\t\t\t},\n\t\t)\n\t\tif (!result.mutation?.ok) {\n\t\t\treturn {\n\t\t\t\tok: false,\n\t\t\t\terror: result.mutation?.error?.code as TError,\n\t\t\t\tdeveloperMessage: result.mutation?.error?.developerMessage,\n\t\t\t}\n\t\t} else {\n\t\t\treturn { ok: true, result: result.mutation.result as TResult }\n\t\t}\n\t}, [fetcher, tenantApi])\n}\n\n\nexport const createTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\tdefaultOptions?: TenantApiOptions,\n) => {\n\treturn ({ headers, apiToken }: TenantApiOptions = {}) => useTenantMutation(fetcher, {\n\t\theaders: useMemo(() => ({ ...defaultOptions?.headers, ...headers }), [headers]),\n\t\tapiToken: apiToken ?? defaultOptions?.apiToken,\n\t})\n}\n"],"names":[],"mappings":";;AAUa,MAAA,oBAAoB,CAChC,SACA,EAAE,SAAS,SAAS,IAAsB,CAAA,MACtC;AACJ,QAAM,YAAY,aAAa,EAAE,SAAS,SAAU,CAAA;AAE7C,SAAA,YAAY,OAAO,cAA4E;AACrG,UAAM,SAAS,MAAM;AAAA,MACpB;AAAA,MACA;AAAA,QACC;AAAA,MACD;AAAA,IAAA;AAEG,QAAA,CAAC,OAAO,UAAU,IAAI;AAClB,aAAA;AAAA,QACN,IAAI;AAAA,QACJ,OAAO,OAAO,UAAU,OAAO;AAAA,QAC/B,kBAAkB,OAAO,UAAU,OAAO;AAAA,MAAA;AAAA,IAC3C,OACM;AACN,aAAO,EAAE,IAAI,MAAM,QAAQ,OAAO,SAAS;IAC5C;AAAA,EAAA,GACE,CAAC,SAAS,SAAS,CAAC;AACxB;AAGa,MAAA,uBAAuB,CACnC,SACA,mBACI;AACG,SAAA,CAAC,EAAE,SAAS,aAA+B,CAAC,MAAM,kBAAkB,SAAS;AAAA,IACnF,SAAS,QAAQ,OAAO,EAAE,GAAG,gBAAgB,SAAS,GAAG,QAAQ,IAAI,CAAC,OAAO,CAAC;AAAA,IAC9E,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACtC;AACF;"}
1
+ {"version":3,"file":"useTenantMutation.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantMutation.ts"],"sourcesContent":["import { TenantApiOptions, useTenantApi } from './useTenantApi'\nimport { useCallback, useMemo } from 'react'\nimport { MutationFetcher } from '@contember/graphql-client-tenant'\n\nexport type TenantMutationOkResponse<Result> = { ok: true; result: Result }\nexport type TenantMutationErrorResponse<Error> = { ok: false; error: Error; developerMessage?: string }\nexport type TenantMutationResponse<Result, Error> = TenantMutationOkResponse<Result> | TenantMutationErrorResponse<Error>\n\nexport type TenantMutation<Result, Error> = { readonly mutation?: { readonly ok: boolean; readonly error?: { readonly code: Error; readonly developerMessage: string}; readonly result?: Result} }\n\nexport const useTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\t{ headers, apiToken }: TenantApiOptions = {},\n) => {\n\tconst tenantApi = useTenantApi({ headers, apiToken })\n\n\treturn useCallback(async (variables: TVariables): Promise<TenantMutationResponse<TResult, TError>> => {\n\t\tconst result = await tenantApi(\n\t\t\tfetcher,\n\t\t\t{\n\t\t\t\tvariables,\n\t\t\t},\n\t\t)\n\t\tif (!result.mutation?.ok) {\n\t\t\treturn {\n\t\t\t\tok: false,\n\t\t\t\terror: result.mutation?.error?.code as TError,\n\t\t\t\tdeveloperMessage: result.mutation?.error?.developerMessage,\n\t\t\t}\n\t\t} else {\n\t\t\treturn { ok: true, result: result.mutation.result as TResult }\n\t\t}\n\t}, [fetcher, tenantApi])\n}\n\n\nexport const createTenantMutation = <TResult, TError extends string = never, TVariables extends object = {}>(\n\tfetcher: MutationFetcher<TenantMutation<TResult, TError>, TVariables>,\n\tdefaultOptions?: TenantApiOptions,\n) => {\n\treturn ({ headers, apiToken }: TenantApiOptions = {}) => useTenantMutation(fetcher, {\n\t\theaders: useMemo(() => ({ ...defaultOptions?.headers, ...headers }), [headers]),\n\t\tapiToken: apiToken ?? defaultOptions?.apiToken,\n\t})\n}\n"],"names":[],"mappings":";;AAUa,MAAA,oBAAoB,CAChC,SACA,EAAE,SAAS,SAAS,IAAsB,CAAA,MACtC;AACJ,QAAM,YAAY,aAAa,EAAE,SAAS,UAAU;AAE7C,SAAA,YAAY,OAAO,cAA4E;AACrG,UAAM,SAAS,MAAM;AAAA,MACpB;AAAA,MACA;AAAA,QACC;AAAA,MAAA;AAAA,IAEF;AACI,QAAA,CAAC,OAAO,UAAU,IAAI;AAClB,aAAA;AAAA,QACN,IAAI;AAAA,QACJ,OAAO,OAAO,UAAU,OAAO;AAAA,QAC/B,kBAAkB,OAAO,UAAU,OAAO;AAAA,MAC3C;AAAA,IAAA,OACM;AACN,aAAO,EAAE,IAAI,MAAM,QAAQ,OAAO,SAAS,OAAkB;AAAA,IAAA;AAAA,EAC9D,GACE,CAAC,SAAS,SAAS,CAAC;AACxB;AAGa,MAAA,uBAAuB,CACnC,SACA,mBACI;AACG,SAAA,CAAC,EAAE,SAAS,aAA+B,CAAC,MAAM,kBAAkB,SAAS;AAAA,IACnF,SAAS,QAAQ,OAAO,EAAE,GAAG,gBAAgB,SAAS,GAAG,QAAQ,IAAI,CAAC,OAAO,CAAC;AAAA,IAC9E,UAAU,YAAY,gBAAgB;AAAA,EAAA,CACtC;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantQueryLoader.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantQueryLoader.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react'\nimport { useObjectMemo } from '@contember/react-utils'\n\nexport type TenantQueryLoaderState<Result> =\n\t| { state: 'loading' }\n\t| { state: 'error'; error: unknown }\n\t| { state: 'success'; data: Result }\n\t| { state: 'refreshing'; data: Result }\n\nexport type TenantQueryLoaderMethods = {\n\trefresh: () => void\n}\n\nexport const useTenantQueryLoader = <TVariables extends object, Result>(fetcher: (variables: TVariables) => Promise<Result>, variables: TVariables): [TenantQueryLoaderState<Result>, TenantQueryLoaderMethods] => {\n\tconst [state, setState] = useState<TenantQueryLoaderState<Result>>({ state: 'loading' })\n\tconst stateRef = useRef(state)\n\tstateRef.current = state\n\tconst variablesMemo = useObjectMemo(variables)\n\n\tconst reqId = useRef(0)\n\n\tconst triggerLoad = useCallback(async () => {\n\t\tconst currentReqId = ++reqId.current\n\t\ttry {\n\t\t\tif (stateRef.current.state === 'success') {\n\t\t\t\tsetState({ state: 'refreshing', data: stateRef.current.data })\n\t\t\t}\n\t\t\tconst data = await fetcher(variablesMemo)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'success', data })\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'error', error: e })\n\t\t}\n\n\t}, [fetcher, variablesMemo])\n\n\n\tuseEffect(() => {\n\t\ttriggerLoad()\n\t}, [triggerLoad])\n\n\treturn [state, { refresh: triggerLoad }]\n}\n"],"names":["useState","useRef","useObjectMemo","useCallback","useEffect"],"mappings":";;;;AAaa,MAAA,uBAAuB,CAAoC,SAAqD,cAAsF;AAC5M,QAAA,CAAC,OAAO,QAAQ,IAAIA,eAAyC,EAAE,OAAO,WAAW;AACjF,QAAA,WAAWC,aAAO,KAAK;AAC7B,WAAS,UAAU;AACb,QAAA,gBAAgBC,yBAAc,SAAS;AAEvC,QAAA,QAAQD,aAAO,CAAC;AAEhB,QAAA,cAAcE,MAAAA,YAAY,YAAY;AACrC,UAAA,eAAe,EAAE,MAAM;AACzB,QAAA;AACC,UAAA,SAAS,QAAQ,UAAU,WAAW;AACzC,iBAAS,EAAE,OAAO,cAAc,MAAM,SAAS,QAAQ,MAAM;AAAA,MAC9D;AACM,YAAA,OAAO,MAAM,QAAQ,aAAa;AACpC,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MACD;AACA,eAAS,EAAE,OAAO,WAAW,KAAM,CAAA;AAAA,aAC3B,GAAG;AACX,cAAQ,MAAM,CAAC;AACX,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MACD;AACA,eAAS,EAAE,OAAO,SAAS,OAAO,EAAG,CAAA;AAAA,IACtC;AAAA,EAAA,GAEE,CAAC,SAAS,aAAa,CAAC;AAG3BC,QAAAA,UAAU,MAAM;AACH;EAAA,GACV,CAAC,WAAW,CAAC;AAEhB,SAAO,CAAC,OAAO,EAAE,SAAS,YAAa,CAAA;AACxC;;"}
1
+ {"version":3,"file":"useTenantQueryLoader.cjs","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantQueryLoader.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react'\nimport { useObjectMemo } from '@contember/react-utils'\n\nexport type TenantQueryLoaderState<Result> =\n\t| { state: 'loading' }\n\t| { state: 'error'; error: unknown }\n\t| { state: 'success'; data: Result }\n\t| { state: 'refreshing'; data: Result }\n\nexport type TenantQueryLoaderMethods = {\n\trefresh: () => void\n}\n\nexport const useTenantQueryLoader = <TVariables extends object, Result>(fetcher: (variables: TVariables) => Promise<Result>, variables: TVariables): [TenantQueryLoaderState<Result>, TenantQueryLoaderMethods] => {\n\tconst [state, setState] = useState<TenantQueryLoaderState<Result>>({ state: 'loading' })\n\tconst stateRef = useRef(state)\n\tstateRef.current = state\n\tconst variablesMemo = useObjectMemo(variables)\n\n\tconst reqId = useRef(0)\n\n\tconst triggerLoad = useCallback(async () => {\n\t\tconst currentReqId = ++reqId.current\n\t\ttry {\n\t\t\tif (stateRef.current.state === 'success') {\n\t\t\t\tsetState({ state: 'refreshing', data: stateRef.current.data })\n\t\t\t}\n\t\t\tconst data = await fetcher(variablesMemo)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'success', data })\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'error', error: e })\n\t\t}\n\n\t}, [fetcher, variablesMemo])\n\n\n\tuseEffect(() => {\n\t\ttriggerLoad()\n\t}, [triggerLoad])\n\n\treturn [state, { refresh: triggerLoad }]\n}\n"],"names":["useState","useRef","useObjectMemo","useCallback","useEffect"],"mappings":";;;;AAaa,MAAA,uBAAuB,CAAoC,SAAqD,cAAsF;AAC5M,QAAA,CAAC,OAAO,QAAQ,IAAIA,eAAyC,EAAE,OAAO,WAAW;AACjF,QAAA,WAAWC,aAAO,KAAK;AAC7B,WAAS,UAAU;AACb,QAAA,gBAAgBC,yBAAc,SAAS;AAEvC,QAAA,QAAQD,aAAO,CAAC;AAEhB,QAAA,cAAcE,MAAAA,YAAY,YAAY;AACrC,UAAA,eAAe,EAAE,MAAM;AACzB,QAAA;AACC,UAAA,SAAS,QAAQ,UAAU,WAAW;AACzC,iBAAS,EAAE,OAAO,cAAc,MAAM,SAAS,QAAQ,MAAM;AAAA,MAAA;AAExD,YAAA,OAAO,MAAM,QAAQ,aAAa;AACpC,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MAAA;AAED,eAAS,EAAE,OAAO,WAAW,KAAA,CAAM;AAAA,aAC3B,GAAG;AACX,cAAQ,MAAM,CAAC;AACX,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MAAA;AAED,eAAS,EAAE,OAAO,SAAS,OAAO,GAAG;AAAA,IAAA;AAAA,EACtC,GAEE,CAAC,SAAS,aAAa,CAAC;AAG3BC,QAAAA,UAAU,MAAM;AACH,gBAAA;AAAA,EAAA,GACV,CAAC,WAAW,CAAC;AAEhB,SAAO,CAAC,OAAO,EAAE,SAAS,aAAa;AACxC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTenantQueryLoader.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantQueryLoader.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react'\nimport { useObjectMemo } from '@contember/react-utils'\n\nexport type TenantQueryLoaderState<Result> =\n\t| { state: 'loading' }\n\t| { state: 'error'; error: unknown }\n\t| { state: 'success'; data: Result }\n\t| { state: 'refreshing'; data: Result }\n\nexport type TenantQueryLoaderMethods = {\n\trefresh: () => void\n}\n\nexport const useTenantQueryLoader = <TVariables extends object, Result>(fetcher: (variables: TVariables) => Promise<Result>, variables: TVariables): [TenantQueryLoaderState<Result>, TenantQueryLoaderMethods] => {\n\tconst [state, setState] = useState<TenantQueryLoaderState<Result>>({ state: 'loading' })\n\tconst stateRef = useRef(state)\n\tstateRef.current = state\n\tconst variablesMemo = useObjectMemo(variables)\n\n\tconst reqId = useRef(0)\n\n\tconst triggerLoad = useCallback(async () => {\n\t\tconst currentReqId = ++reqId.current\n\t\ttry {\n\t\t\tif (stateRef.current.state === 'success') {\n\t\t\t\tsetState({ state: 'refreshing', data: stateRef.current.data })\n\t\t\t}\n\t\t\tconst data = await fetcher(variablesMemo)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'success', data })\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'error', error: e })\n\t\t}\n\n\t}, [fetcher, variablesMemo])\n\n\n\tuseEffect(() => {\n\t\ttriggerLoad()\n\t}, [triggerLoad])\n\n\treturn [state, { refresh: triggerLoad }]\n}\n"],"names":[],"mappings":";;AAaa,MAAA,uBAAuB,CAAoC,SAAqD,cAAsF;AAC5M,QAAA,CAAC,OAAO,QAAQ,IAAI,SAAyC,EAAE,OAAO,WAAW;AACjF,QAAA,WAAW,OAAO,KAAK;AAC7B,WAAS,UAAU;AACb,QAAA,gBAAgB,cAAc,SAAS;AAEvC,QAAA,QAAQ,OAAO,CAAC;AAEhB,QAAA,cAAc,YAAY,YAAY;AACrC,UAAA,eAAe,EAAE,MAAM;AACzB,QAAA;AACC,UAAA,SAAS,QAAQ,UAAU,WAAW;AACzC,iBAAS,EAAE,OAAO,cAAc,MAAM,SAAS,QAAQ,MAAM;AAAA,MAC9D;AACM,YAAA,OAAO,MAAM,QAAQ,aAAa;AACpC,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MACD;AACA,eAAS,EAAE,OAAO,WAAW,KAAM,CAAA;AAAA,aAC3B,GAAG;AACX,cAAQ,MAAM,CAAC;AACX,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MACD;AACA,eAAS,EAAE,OAAO,SAAS,OAAO,EAAG,CAAA;AAAA,IACtC;AAAA,EAAA,GAEE,CAAC,SAAS,aAAa,CAAC;AAG3B,YAAU,MAAM;AACH;EAAA,GACV,CAAC,WAAW,CAAC;AAEhB,SAAO,CAAC,OAAO,EAAE,SAAS,YAAa,CAAA;AACxC;"}
1
+ {"version":3,"file":"useTenantQueryLoader.js","sources":["../../../../../packages/react-client-tenant/src/hooks/useTenantQueryLoader.ts"],"sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react'\nimport { useObjectMemo } from '@contember/react-utils'\n\nexport type TenantQueryLoaderState<Result> =\n\t| { state: 'loading' }\n\t| { state: 'error'; error: unknown }\n\t| { state: 'success'; data: Result }\n\t| { state: 'refreshing'; data: Result }\n\nexport type TenantQueryLoaderMethods = {\n\trefresh: () => void\n}\n\nexport const useTenantQueryLoader = <TVariables extends object, Result>(fetcher: (variables: TVariables) => Promise<Result>, variables: TVariables): [TenantQueryLoaderState<Result>, TenantQueryLoaderMethods] => {\n\tconst [state, setState] = useState<TenantQueryLoaderState<Result>>({ state: 'loading' })\n\tconst stateRef = useRef(state)\n\tstateRef.current = state\n\tconst variablesMemo = useObjectMemo(variables)\n\n\tconst reqId = useRef(0)\n\n\tconst triggerLoad = useCallback(async () => {\n\t\tconst currentReqId = ++reqId.current\n\t\ttry {\n\t\t\tif (stateRef.current.state === 'success') {\n\t\t\t\tsetState({ state: 'refreshing', data: stateRef.current.data })\n\t\t\t}\n\t\t\tconst data = await fetcher(variablesMemo)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'success', data })\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\tif (reqId.current !== currentReqId) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsetState({ state: 'error', error: e })\n\t\t}\n\n\t}, [fetcher, variablesMemo])\n\n\n\tuseEffect(() => {\n\t\ttriggerLoad()\n\t}, [triggerLoad])\n\n\treturn [state, { refresh: triggerLoad }]\n}\n"],"names":[],"mappings":";;AAaa,MAAA,uBAAuB,CAAoC,SAAqD,cAAsF;AAC5M,QAAA,CAAC,OAAO,QAAQ,IAAI,SAAyC,EAAE,OAAO,WAAW;AACjF,QAAA,WAAW,OAAO,KAAK;AAC7B,WAAS,UAAU;AACb,QAAA,gBAAgB,cAAc,SAAS;AAEvC,QAAA,QAAQ,OAAO,CAAC;AAEhB,QAAA,cAAc,YAAY,YAAY;AACrC,UAAA,eAAe,EAAE,MAAM;AACzB,QAAA;AACC,UAAA,SAAS,QAAQ,UAAU,WAAW;AACzC,iBAAS,EAAE,OAAO,cAAc,MAAM,SAAS,QAAQ,MAAM;AAAA,MAAA;AAExD,YAAA,OAAO,MAAM,QAAQ,aAAa;AACpC,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MAAA;AAED,eAAS,EAAE,OAAO,WAAW,KAAA,CAAM;AAAA,aAC3B,GAAG;AACX,cAAQ,MAAM,CAAC;AACX,UAAA,MAAM,YAAY,cAAc;AACnC;AAAA,MAAA;AAED,eAAS,EAAE,OAAO,SAAS,OAAO,GAAG;AAAA,IAAA;AAAA,EACtC,GAEE,CAAC,SAAS,aAAa,CAAC;AAG3B,YAAU,MAAM;AACH,gBAAA;AAAA,EAAA,GACV,CAAC,WAAW,CAAC;AAEhB,SAAO,CAAC,OAAO,EAAE,SAAS,aAAa;AACxC;"}
@@ -9,7 +9,7 @@ const useSignInIdpMutation = require("../../hooks/mutations/idp/useSignInIdpMuta
9
9
  const headers = {
10
10
  "X-Contember-Token-Path": "data.mutation.result.token"
11
11
  };
12
- const DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 3600;
12
+ const DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60;
13
13
  const useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }) => {
14
14
  const idpSignIn = useSignInIdpMutation.useSignInIDPMutation({ headers });
15
15
  const setSessionToken = reactClient.useSetSessionToken();
@@ -1 +1 @@
1
- {"version":3,"file":"useHandleIDPResponse.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useHandleIDPResponse.ts"],"sourcesContent":["import { SetStateAction, useEffect, useRef } from 'react'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPStateValue } from '../../types/idp'\nimport { useSignInIDPMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from './useRedirectToBacklink'\n\nexport interface UseHandleIDPResponseProps {\n\tonLogin?: () => void\n\texpiration?: number\n\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n\thasOauthResponse: boolean\n}\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 3600 // 14 days\n\nexport const useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }: UseHandleIDPResponseProps): void => {\n\tconst idpSignIn = useSignInIDPMutation({ headers })\n\tconst setSessionToken = useSetSessionToken()\n\n\tconst firstRenderRef = useRef(true)\n\n\tconst { get: loadIdpState } = useIDPStateStore()\n\tconst redirectToBackLink = useRedirectToBacklinkCallback()\n\n\tuseEffect(() => {\n\t\tif (!hasOauthResponse || !firstRenderRef.current) {\n\t\t\treturn\n\t\t}\n\t\tfirstRenderRef.current = false\n\t\t;(async () => {\n\t\t\tconst idpState = loadIdpState()\n\t\t\tif (!idpState) {\n\t\t\t\tsetState({ type: 'response_failed', error: 'INVALID_LOCAL_STATE' })\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst response = await idpSignIn({\n\t\t\t\tdata: {\n\t\t\t\t\turl: window.location.href,\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t\tsessionData: idpState.sessionData,\n\t\t\t\t},\n\t\t\t\tidentityProvider: idpState.provider,\n\t\t\t\texpiration,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\tsetState({ type: 'response_failed', error: response.error || 'UNKNOWN_ERROR' })\n\t\t\t} else {\n\t\t\t\tsetSessionToken(response.result.token)\n\t\t\t\tsetState({ type: 'success' })\n\n\t\t\t\tonLogin?.()\n\t\t\t\tredirectToBackLink()\n\t\t\t}\n\t\t})()\n\t}, [idpSignIn, onLogin, setSessionToken, hasOauthResponse, loadIdpState, expiration, setState, redirectToBackLink])\n}\n"],"names":["useSignInIDPMutation","useSetSessionToken","useRef","useIDPStateStore","useRedirectToBacklinkCallback","useEffect","getBaseHref"],"mappings":";;;;;;;;AAgBA,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAE9B,MAAA,uBAAuB,CAAC,EAAE,SAAS,aAAa,0BAA0B,UAAU,uBAAwD;AACxJ,QAAM,YAAYA,qBAAAA,qBAAqB,EAAE,QAAS,CAAA;AAClD,QAAM,kBAAkBC,YAAAA;AAElB,QAAA,iBAAiBC,aAAO,IAAI;AAElC,QAAM,EAAE,KAAK,aAAa,IAAIC,iBAAiB,iBAAA;AAC/C,QAAM,qBAAqBC,sBAAAA;AAE3BC,QAAAA,UAAU,MAAM;AACf,QAAI,CAAC,oBAAoB,CAAC,eAAe,SAAS;AACjD;AAAA,IACD;AACA,mBAAe,UAAU;AACxB,KAAC,YAAY;AACb,YAAM,WAAW;AACjB,UAAI,CAAC,UAAU;AACd,iBAAS,EAAE,MAAM,mBAAmB,OAAO,sBAAuB,CAAA;AAClE;AAAA,MACD;AAEM,YAAA,WAAW,MAAM,UAAU;AAAA,QAChC,MAAM;AAAA,UACL,KAAK,OAAO,SAAS;AAAA,UACrB,aAAaC,YAAAA,YAAY;AAAA,UACzB,aAAa,SAAS;AAAA,QACvB;AAAA,QACA,kBAAkB,SAAS;AAAA,QAC3B;AAAA,MAAA,CACA;AACG,UAAA,CAAC,SAAS,IAAI;AACjB,iBAAS,EAAE,MAAM,mBAAmB,OAAO,SAAS,SAAS,iBAAiB;AAAA,MAAA,OACxE;AACU,wBAAA,SAAS,OAAO,KAAK;AAC5B,iBAAA,EAAE,MAAM,UAAA,CAAW;AAElB;AACS;MACpB;AAAA,IAAA;EACE,GACD,CAAC,WAAW,SAAS,iBAAiB,kBAAkB,cAAc,YAAY,UAAU,kBAAkB,CAAC;AACnH;;"}
1
+ {"version":3,"file":"useHandleIDPResponse.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useHandleIDPResponse.ts"],"sourcesContent":["import { SetStateAction, useEffect, useRef } from 'react'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPStateValue } from '../../types/idp'\nimport { useSignInIDPMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from './useRedirectToBacklink'\n\nexport interface UseHandleIDPResponseProps {\n\tonLogin?: () => void\n\texpiration?: number\n\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n\thasOauthResponse: boolean\n}\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 useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }: UseHandleIDPResponseProps): void => {\n\tconst idpSignIn = useSignInIDPMutation({ headers })\n\tconst setSessionToken = useSetSessionToken()\n\n\tconst firstRenderRef = useRef(true)\n\n\tconst { get: loadIdpState } = useIDPStateStore()\n\tconst redirectToBackLink = useRedirectToBacklinkCallback()\n\n\tuseEffect(() => {\n\t\tif (!hasOauthResponse || !firstRenderRef.current) {\n\t\t\treturn\n\t\t}\n\t\tfirstRenderRef.current = false\n\t\t;(async () => {\n\t\t\tconst idpState = loadIdpState()\n\t\t\tif (!idpState) {\n\t\t\t\tsetState({ type: 'response_failed', error: 'INVALID_LOCAL_STATE' })\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst response = await idpSignIn({\n\t\t\t\tdata: {\n\t\t\t\t\turl: window.location.href,\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t\tsessionData: idpState.sessionData,\n\t\t\t\t},\n\t\t\t\tidentityProvider: idpState.provider,\n\t\t\t\texpiration,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\tsetState({ type: 'response_failed', error: response.error || 'UNKNOWN_ERROR' })\n\t\t\t} else {\n\t\t\t\tsetSessionToken(response.result.token)\n\t\t\t\tsetState({ type: 'success' })\n\n\t\t\t\tonLogin?.()\n\t\t\t\tredirectToBackLink()\n\t\t\t}\n\t\t})()\n\t}, [idpSignIn, onLogin, setSessionToken, hasOauthResponse, loadIdpState, expiration, setState, redirectToBackLink])\n}\n"],"names":["useSignInIDPMutation","useSetSessionToken","useRef","useIDPStateStore","useRedirectToBacklinkCallback","useEffect","getBaseHref"],"mappings":";;;;;;;;AAgBA,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAE9B,MAAA,uBAAuB,CAAC,EAAE,SAAS,aAAa,0BAA0B,UAAU,uBAAwD;AACxJ,QAAM,YAAYA,qBAAAA,qBAAqB,EAAE,SAAS;AAClD,QAAM,kBAAkBC,YAAAA,mBAAmB;AAErC,QAAA,iBAAiBC,aAAO,IAAI;AAElC,QAAM,EAAE,KAAK,aAAa,IAAIC,kCAAiB;AAC/C,QAAM,qBAAqBC,sBAAAA,8BAA8B;AAEzDC,QAAAA,UAAU,MAAM;AACf,QAAI,CAAC,oBAAoB,CAAC,eAAe,SAAS;AACjD;AAAA,IAAA;AAED,mBAAe,UAAU;AACxB,KAAC,YAAY;AACb,YAAM,WAAW,aAAa;AAC9B,UAAI,CAAC,UAAU;AACd,iBAAS,EAAE,MAAM,mBAAmB,OAAO,uBAAuB;AAClE;AAAA,MAAA;AAGK,YAAA,WAAW,MAAM,UAAU;AAAA,QAChC,MAAM;AAAA,UACL,KAAK,OAAO,SAAS;AAAA,UACrB,aAAaC,YAAAA,YAAY;AAAA,UACzB,aAAa,SAAS;AAAA,QACvB;AAAA,QACA,kBAAkB,SAAS;AAAA,QAC3B;AAAA,MAAA,CACA;AACG,UAAA,CAAC,SAAS,IAAI;AACjB,iBAAS,EAAE,MAAM,mBAAmB,OAAO,SAAS,SAAS,iBAAiB;AAAA,MAAA,OACxE;AACU,wBAAA,SAAS,OAAO,KAAK;AAC5B,iBAAA,EAAE,MAAM,WAAW;AAElB,kBAAA;AACS,2BAAA;AAAA,MAAA;AAAA,IACpB,GACE;AAAA,EAAA,GACD,CAAC,WAAW,SAAS,iBAAiB,kBAAkB,cAAc,YAAY,UAAU,kBAAkB,CAAC;AACnH;;"}
@@ -7,7 +7,7 @@ import { useSignInIDPMutation } from "../../hooks/mutations/idp/useSignInIdpMuta
7
7
  const headers = {
8
8
  "X-Contember-Token-Path": "data.mutation.result.token"
9
9
  };
10
- const DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 3600;
10
+ const DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 60;
11
11
  const useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }) => {
12
12
  const idpSignIn = useSignInIDPMutation({ headers });
13
13
  const setSessionToken = useSetSessionToken();
@@ -1 +1 @@
1
- {"version":3,"file":"useHandleIDPResponse.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useHandleIDPResponse.ts"],"sourcesContent":["import { SetStateAction, useEffect, useRef } from 'react'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPStateValue } from '../../types/idp'\nimport { useSignInIDPMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from './useRedirectToBacklink'\n\nexport interface UseHandleIDPResponseProps {\n\tonLogin?: () => void\n\texpiration?: number\n\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n\thasOauthResponse: boolean\n}\n\nconst headers = {\n\t'X-Contember-Token-Path': 'data.mutation.result.token',\n}\n\nconst DEFAULT_LOGIN_EXPIRATION = 14 * 24 * 3600 // 14 days\n\nexport const useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }: UseHandleIDPResponseProps): void => {\n\tconst idpSignIn = useSignInIDPMutation({ headers })\n\tconst setSessionToken = useSetSessionToken()\n\n\tconst firstRenderRef = useRef(true)\n\n\tconst { get: loadIdpState } = useIDPStateStore()\n\tconst redirectToBackLink = useRedirectToBacklinkCallback()\n\n\tuseEffect(() => {\n\t\tif (!hasOauthResponse || !firstRenderRef.current) {\n\t\t\treturn\n\t\t}\n\t\tfirstRenderRef.current = false\n\t\t;(async () => {\n\t\t\tconst idpState = loadIdpState()\n\t\t\tif (!idpState) {\n\t\t\t\tsetState({ type: 'response_failed', error: 'INVALID_LOCAL_STATE' })\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst response = await idpSignIn({\n\t\t\t\tdata: {\n\t\t\t\t\turl: window.location.href,\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t\tsessionData: idpState.sessionData,\n\t\t\t\t},\n\t\t\t\tidentityProvider: idpState.provider,\n\t\t\t\texpiration,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\tsetState({ type: 'response_failed', error: response.error || 'UNKNOWN_ERROR' })\n\t\t\t} else {\n\t\t\t\tsetSessionToken(response.result.token)\n\t\t\t\tsetState({ type: 'success' })\n\n\t\t\t\tonLogin?.()\n\t\t\t\tredirectToBackLink()\n\t\t\t}\n\t\t})()\n\t}, [idpSignIn, onLogin, setSessionToken, hasOauthResponse, loadIdpState, expiration, setState, redirectToBackLink])\n}\n"],"names":[],"mappings":";;;;;;AAgBA,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAE9B,MAAA,uBAAuB,CAAC,EAAE,SAAS,aAAa,0BAA0B,UAAU,uBAAwD;AACxJ,QAAM,YAAY,qBAAqB,EAAE,QAAS,CAAA;AAClD,QAAM,kBAAkB;AAElB,QAAA,iBAAiB,OAAO,IAAI;AAElC,QAAM,EAAE,KAAK,aAAa,IAAI,iBAAiB;AAC/C,QAAM,qBAAqB;AAE3B,YAAU,MAAM;AACf,QAAI,CAAC,oBAAoB,CAAC,eAAe,SAAS;AACjD;AAAA,IACD;AACA,mBAAe,UAAU;AACxB,KAAC,YAAY;AACb,YAAM,WAAW;AACjB,UAAI,CAAC,UAAU;AACd,iBAAS,EAAE,MAAM,mBAAmB,OAAO,sBAAuB,CAAA;AAClE;AAAA,MACD;AAEM,YAAA,WAAW,MAAM,UAAU;AAAA,QAChC,MAAM;AAAA,UACL,KAAK,OAAO,SAAS;AAAA,UACrB,aAAa,YAAY;AAAA,UACzB,aAAa,SAAS;AAAA,QACvB;AAAA,QACA,kBAAkB,SAAS;AAAA,QAC3B;AAAA,MAAA,CACA;AACG,UAAA,CAAC,SAAS,IAAI;AACjB,iBAAS,EAAE,MAAM,mBAAmB,OAAO,SAAS,SAAS,iBAAiB;AAAA,MAAA,OACxE;AACU,wBAAA,SAAS,OAAO,KAAK;AAC5B,iBAAA,EAAE,MAAM,UAAA,CAAW;AAElB;AACS;MACpB;AAAA,IAAA;EACE,GACD,CAAC,WAAW,SAAS,iBAAiB,kBAAkB,cAAc,YAAY,UAAU,kBAAkB,CAAC;AACnH;"}
1
+ {"version":3,"file":"useHandleIDPResponse.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useHandleIDPResponse.ts"],"sourcesContent":["import { SetStateAction, useEffect, useRef } from 'react'\nimport { useSetSessionToken } from '@contember/react-client'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPStateValue } from '../../types/idp'\nimport { useSignInIDPMutation } from '../../hooks'\nimport { useRedirectToBacklinkCallback } from './useRedirectToBacklink'\n\nexport interface UseHandleIDPResponseProps {\n\tonLogin?: () => void\n\texpiration?: number\n\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n\thasOauthResponse: boolean\n}\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 useHandleIDPResponse = ({ onLogin, expiration = DEFAULT_LOGIN_EXPIRATION, setState, hasOauthResponse }: UseHandleIDPResponseProps): void => {\n\tconst idpSignIn = useSignInIDPMutation({ headers })\n\tconst setSessionToken = useSetSessionToken()\n\n\tconst firstRenderRef = useRef(true)\n\n\tconst { get: loadIdpState } = useIDPStateStore()\n\tconst redirectToBackLink = useRedirectToBacklinkCallback()\n\n\tuseEffect(() => {\n\t\tif (!hasOauthResponse || !firstRenderRef.current) {\n\t\t\treturn\n\t\t}\n\t\tfirstRenderRef.current = false\n\t\t;(async () => {\n\t\t\tconst idpState = loadIdpState()\n\t\t\tif (!idpState) {\n\t\t\t\tsetState({ type: 'response_failed', error: 'INVALID_LOCAL_STATE' })\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst response = await idpSignIn({\n\t\t\t\tdata: {\n\t\t\t\t\turl: window.location.href,\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t\tsessionData: idpState.sessionData,\n\t\t\t\t},\n\t\t\t\tidentityProvider: idpState.provider,\n\t\t\t\texpiration,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\tsetState({ type: 'response_failed', error: response.error || 'UNKNOWN_ERROR' })\n\t\t\t} else {\n\t\t\t\tsetSessionToken(response.result.token)\n\t\t\t\tsetState({ type: 'success' })\n\n\t\t\t\tonLogin?.()\n\t\t\t\tredirectToBackLink()\n\t\t\t}\n\t\t})()\n\t}, [idpSignIn, onLogin, setSessionToken, hasOauthResponse, loadIdpState, expiration, setState, redirectToBackLink])\n}\n"],"names":[],"mappings":";;;;;;AAgBA,MAAM,UAAU;AAAA,EACf,0BAA0B;AAC3B;AAEA,MAAM,2BAA2B,KAAK,KAAK;AAE9B,MAAA,uBAAuB,CAAC,EAAE,SAAS,aAAa,0BAA0B,UAAU,uBAAwD;AACxJ,QAAM,YAAY,qBAAqB,EAAE,SAAS;AAClD,QAAM,kBAAkB,mBAAmB;AAErC,QAAA,iBAAiB,OAAO,IAAI;AAElC,QAAM,EAAE,KAAK,aAAa,IAAI,iBAAiB;AAC/C,QAAM,qBAAqB,8BAA8B;AAEzD,YAAU,MAAM;AACf,QAAI,CAAC,oBAAoB,CAAC,eAAe,SAAS;AACjD;AAAA,IAAA;AAED,mBAAe,UAAU;AACxB,KAAC,YAAY;AACb,YAAM,WAAW,aAAa;AAC9B,UAAI,CAAC,UAAU;AACd,iBAAS,EAAE,MAAM,mBAAmB,OAAO,uBAAuB;AAClE;AAAA,MAAA;AAGK,YAAA,WAAW,MAAM,UAAU;AAAA,QAChC,MAAM;AAAA,UACL,KAAK,OAAO,SAAS;AAAA,UACrB,aAAa,YAAY;AAAA,UACzB,aAAa,SAAS;AAAA,QACvB;AAAA,QACA,kBAAkB,SAAS;AAAA,QAC3B;AAAA,MAAA,CACA;AACG,UAAA,CAAC,SAAS,IAAI;AACjB,iBAAS,EAAE,MAAM,mBAAmB,OAAO,SAAS,SAAS,iBAAiB;AAAA,MAAA,OACxE;AACU,wBAAA,SAAS,OAAO,KAAK;AAC5B,iBAAA,EAAE,MAAM,WAAW;AAElB,kBAAA;AACS,2BAAA;AAAA,MAAA;AAAA,IACpB,GACE;AAAA,EAAA,GACD,CAAC,WAAW,SAAS,iBAAiB,kBAAkB,cAAc,YAAY,UAAU,kBAAkB,CAAC;AACnH;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIDPAutoInit.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPAutoInit.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nexport const useIDPAutoInitProvider = () => {\n\treturn useMemo(() => {\n\t\tconst params = new URLSearchParams(window.location.search)\n\t\tconst idp = params.get('idp')\n\t\tif (idp !== null) {\n\t\t\treturn idp\n\t\t}\n\t\tconst backlink = params.get('backlink')\n\n\t\tif (backlink !== null) {\n\t\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\t\treturn resolvedBacklink.searchParams.get('idp')\n\t\t}\n\t}, [])\n}\n\n"],"names":["useMemo"],"mappings":";;;AAEO,MAAM,yBAAyB,MAAM;AAC3C,SAAOA,cAAQ,MAAM;AACpB,UAAM,SAAS,IAAI,gBAAgB,OAAO,SAAS,MAAM;AACnD,UAAA,MAAM,OAAO,IAAI,KAAK;AAC5B,QAAI,QAAQ,MAAM;AACV,aAAA;AAAA,IACR;AACM,UAAA,WAAW,OAAO,IAAI,UAAU;AAEtC,QAAI,aAAa,MAAM;AACtB,YAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AACxD,aAAA,iBAAiB,aAAa,IAAI,KAAK;AAAA,IAC/C;AAAA,EACD,GAAG,CAAE,CAAA;AACN;;"}
1
+ {"version":3,"file":"useIDPAutoInit.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPAutoInit.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nexport const useIDPAutoInitProvider = () => {\n\treturn useMemo(() => {\n\t\tconst params = new URLSearchParams(window.location.search)\n\t\tconst idp = params.get('idp')\n\t\tif (idp !== null) {\n\t\t\treturn idp\n\t\t}\n\t\tconst backlink = params.get('backlink')\n\n\t\tif (backlink !== null) {\n\t\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\t\treturn resolvedBacklink.searchParams.get('idp')\n\t\t}\n\t}, [])\n}\n\n"],"names":["useMemo"],"mappings":";;;AAEO,MAAM,yBAAyB,MAAM;AAC3C,SAAOA,cAAQ,MAAM;AACpB,UAAM,SAAS,IAAI,gBAAgB,OAAO,SAAS,MAAM;AACnD,UAAA,MAAM,OAAO,IAAI,KAAK;AAC5B,QAAI,QAAQ,MAAM;AACV,aAAA;AAAA,IAAA;AAEF,UAAA,WAAW,OAAO,IAAI,UAAU;AAEtC,QAAI,aAAa,MAAM;AACtB,YAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AACxD,aAAA,iBAAiB,aAAa,IAAI,KAAK;AAAA,IAAA;AAAA,EAEhD,GAAG,EAAE;AACN;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIDPAutoInit.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPAutoInit.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nexport const useIDPAutoInitProvider = () => {\n\treturn useMemo(() => {\n\t\tconst params = new URLSearchParams(window.location.search)\n\t\tconst idp = params.get('idp')\n\t\tif (idp !== null) {\n\t\t\treturn idp\n\t\t}\n\t\tconst backlink = params.get('backlink')\n\n\t\tif (backlink !== null) {\n\t\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\t\treturn resolvedBacklink.searchParams.get('idp')\n\t\t}\n\t}, [])\n}\n\n"],"names":[],"mappings":";AAEO,MAAM,yBAAyB,MAAM;AAC3C,SAAO,QAAQ,MAAM;AACpB,UAAM,SAAS,IAAI,gBAAgB,OAAO,SAAS,MAAM;AACnD,UAAA,MAAM,OAAO,IAAI,KAAK;AAC5B,QAAI,QAAQ,MAAM;AACV,aAAA;AAAA,IACR;AACM,UAAA,WAAW,OAAO,IAAI,UAAU;AAEtC,QAAI,aAAa,MAAM;AACtB,YAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AACxD,aAAA,iBAAiB,aAAa,IAAI,KAAK;AAAA,IAC/C;AAAA,EACD,GAAG,CAAE,CAAA;AACN;"}
1
+ {"version":3,"file":"useIDPAutoInit.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPAutoInit.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nexport const useIDPAutoInitProvider = () => {\n\treturn useMemo(() => {\n\t\tconst params = new URLSearchParams(window.location.search)\n\t\tconst idp = params.get('idp')\n\t\tif (idp !== null) {\n\t\t\treturn idp\n\t\t}\n\t\tconst backlink = params.get('backlink')\n\n\t\tif (backlink !== null) {\n\t\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\t\treturn resolvedBacklink.searchParams.get('idp')\n\t\t}\n\t}, [])\n}\n\n"],"names":[],"mappings":";AAEO,MAAM,yBAAyB,MAAM;AAC3C,SAAO,QAAQ,MAAM;AACpB,UAAM,SAAS,IAAI,gBAAgB,OAAO,SAAS,MAAM;AACnD,UAAA,MAAM,OAAO,IAAI,KAAK;AAC5B,QAAI,QAAQ,MAAM;AACV,aAAA;AAAA,IAAA;AAEF,UAAA,WAAW,OAAO,IAAI,UAAU;AAEtC,QAAI,aAAa,MAAM;AACtB,YAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AACxD,aAAA,iBAAiB,aAAa,IAAI,KAAK;AAAA,IAAA;AAAA,EAEhD,GAAG,EAAE;AACN;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIDPStateStore.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPStateStore.ts"],"sourcesContent":["import { useCallback } from 'react'\n\nexport type IDPState = { provider: string; sessionData: any }\n\nexport const useIDPStateStore = (): {get: () => IDPState | null; set: (state: IDPState) => void} => {\n\treturn {\n\t\tget: useCallback(() => {\n\t\t\tconst item = sessionStorage.getItem('idp')\n\t\t\tif (!item) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn JSON.parse(item)\n\t\t}, []),\n\t\tset: useCallback((state: IDPState) => {\n\t\t\tsessionStorage.setItem('idp', JSON.stringify(state))\n\t\t}, []),\n\t}\n}\n"],"names":["useCallback"],"mappings":";;;AAIO,MAAM,mBAAmB,MAAoE;AAC5F,SAAA;AAAA,IACN,KAAKA,kBAAY,MAAM;AAChB,YAAA,OAAO,eAAe,QAAQ,KAAK;AACzC,UAAI,CAAC,MAAM;AACH,eAAA;AAAA,MACR;AACO,aAAA,KAAK,MAAM,IAAI;AAAA,IACvB,GAAG,EAAE;AAAA,IACL,KAAKA,MAAAA,YAAY,CAAC,UAAoB;AACrC,qBAAe,QAAQ,OAAO,KAAK,UAAU,KAAK,CAAC;AAAA,IACpD,GAAG,EAAE;AAAA,EAAA;AAEP;;"}
1
+ {"version":3,"file":"useIDPStateStore.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPStateStore.ts"],"sourcesContent":["import { useCallback } from 'react'\n\nexport type IDPState = { provider: string; sessionData: any }\n\nexport const useIDPStateStore = (): {get: () => IDPState | null; set: (state: IDPState) => void} => {\n\treturn {\n\t\tget: useCallback(() => {\n\t\t\tconst item = sessionStorage.getItem('idp')\n\t\t\tif (!item) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn JSON.parse(item)\n\t\t}, []),\n\t\tset: useCallback((state: IDPState) => {\n\t\t\tsessionStorage.setItem('idp', JSON.stringify(state))\n\t\t}, []),\n\t}\n}\n"],"names":["useCallback"],"mappings":";;;AAIO,MAAM,mBAAmB,MAAoE;AAC5F,SAAA;AAAA,IACN,KAAKA,kBAAY,MAAM;AAChB,YAAA,OAAO,eAAe,QAAQ,KAAK;AACzC,UAAI,CAAC,MAAM;AACH,eAAA;AAAA,MAAA;AAED,aAAA,KAAK,MAAM,IAAI;AAAA,IACvB,GAAG,EAAE;AAAA,IACL,KAAKA,MAAAA,YAAY,CAAC,UAAoB;AACrC,qBAAe,QAAQ,OAAO,KAAK,UAAU,KAAK,CAAC;AAAA,IAAA,GACjD,CAAE,CAAA;AAAA,EACN;AACD;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useIDPStateStore.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPStateStore.ts"],"sourcesContent":["import { useCallback } from 'react'\n\nexport type IDPState = { provider: string; sessionData: any }\n\nexport const useIDPStateStore = (): {get: () => IDPState | null; set: (state: IDPState) => void} => {\n\treturn {\n\t\tget: useCallback(() => {\n\t\t\tconst item = sessionStorage.getItem('idp')\n\t\t\tif (!item) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn JSON.parse(item)\n\t\t}, []),\n\t\tset: useCallback((state: IDPState) => {\n\t\t\tsessionStorage.setItem('idp', JSON.stringify(state))\n\t\t}, []),\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,mBAAmB,MAAoE;AAC5F,SAAA;AAAA,IACN,KAAK,YAAY,MAAM;AAChB,YAAA,OAAO,eAAe,QAAQ,KAAK;AACzC,UAAI,CAAC,MAAM;AACH,eAAA;AAAA,MACR;AACO,aAAA,KAAK,MAAM,IAAI;AAAA,IACvB,GAAG,EAAE;AAAA,IACL,KAAK,YAAY,CAAC,UAAoB;AACrC,qBAAe,QAAQ,OAAO,KAAK,UAAU,KAAK,CAAC;AAAA,IACpD,GAAG,EAAE;AAAA,EAAA;AAEP;"}
1
+ {"version":3,"file":"useIDPStateStore.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useIDPStateStore.ts"],"sourcesContent":["import { useCallback } from 'react'\n\nexport type IDPState = { provider: string; sessionData: any }\n\nexport const useIDPStateStore = (): {get: () => IDPState | null; set: (state: IDPState) => void} => {\n\treturn {\n\t\tget: useCallback(() => {\n\t\t\tconst item = sessionStorage.getItem('idp')\n\t\t\tif (!item) {\n\t\t\t\treturn null\n\t\t\t}\n\t\t\treturn JSON.parse(item)\n\t\t}, []),\n\t\tset: useCallback((state: IDPState) => {\n\t\t\tsessionStorage.setItem('idp', JSON.stringify(state))\n\t\t}, []),\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,mBAAmB,MAAoE;AAC5F,SAAA;AAAA,IACN,KAAK,YAAY,MAAM;AAChB,YAAA,OAAO,eAAe,QAAQ,KAAK;AACzC,UAAI,CAAC,MAAM;AACH,eAAA;AAAA,MAAA;AAED,aAAA,KAAK,MAAM,IAAI;AAAA,IACvB,GAAG,EAAE;AAAA,IACL,KAAK,YAAY,CAAC,UAAoB;AACrC,qBAAe,QAAQ,OAAO,KAAK,UAAU,KAAK,CAAC;AAAA,IAAA,GACjD,CAAE,CAAA;AAAA,EACN;AACD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useInitIDPRedirect.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useInitIDPRedirect.ts"],"sourcesContent":["import { SetStateAction, useCallback } from 'react'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPInitError, IDPStateValue } from '../../types/idp'\nimport { useInitSignInIDPMutation } from '../../hooks'\nimport { useSaveBacklink } from './useRedirectToBacklink'\n\nexport interface UseInitIDPRedirectProps {\n\tonRedirect?: (url: string) => void\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n}\n\nexport const useInitIDPRedirect = ({ onRedirect, setState }: UseInitIDPRedirectProps) => {\n\tconst initRequest = useInitSignInIDPMutation()\n\tconst saveBacklink = useSaveBacklink()\n\tconst { set: saveIdpState } = useIDPStateStore()\n\n\treturn useCallback(async ({ provider }: { provider: string }): Promise<{ ok: true } | { ok: false; error: IDPInitError }> => {\n\t\tconst fail = (error: IDPInitError) => {\n\t\t\tsetState({ type: 'init_failed', error })\n\t\t\treturn { ok: false, error }\n\t\t}\n\t\ttry {\n\t\t\tsetState({ type: 'processing_init' })\n\t\t\tconst response = await initRequest({\n\t\t\t\tdata: {\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t},\n\t\t\t\tidentityProvider: provider,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\treturn fail(response.error || 'UNKNOWN_ERROR')\n\t\t\t} else {\n\t\t\t\tsaveIdpState({ provider, sessionData: response.result.sessionData as string })\n\t\t\t\tsaveBacklink()\n\t\t\t\tif (onRedirect) {\n\t\t\t\t\tonRedirect(response.result.authUrl as string)\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = response.result.authUrl as string\n\t\t\t\t}\n\t\t\t\treturn { ok: true }\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\treturn fail('UNKNOWN_ERROR')\n\t\t}\n\t}, [initRequest, onRedirect, saveBacklink, saveIdpState, setState])\n}\n"],"names":["useInitSignInIDPMutation","useSaveBacklink","useIDPStateStore","useCallback","getBaseHref"],"mappings":";;;;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,YAAY,eAAwC;AACxF,QAAM,cAAcA,yBAAAA;AACpB,QAAM,eAAeC,sBAAAA;AACrB,QAAM,EAAE,KAAK,aAAa,IAAIC,iBAAiB,iBAAA;AAE/C,SAAOC,MAAY,YAAA,OAAO,EAAE,eAAiG;AACtH,UAAA,OAAO,CAAC,UAAwB;AACrC,eAAS,EAAE,MAAM,eAAe,MAAO,CAAA;AAChC,aAAA,EAAE,IAAI,OAAO;IAAM;AAEvB,QAAA;AACM,eAAA,EAAE,MAAM,kBAAA,CAAmB;AAC9B,YAAA,WAAW,MAAM,YAAY;AAAA,QAClC,MAAM;AAAA,UACL,aAAaC,YAAAA,YAAY;AAAA,QAC1B;AAAA,QACA,kBAAkB;AAAA,MAAA,CAClB;AACG,UAAA,CAAC,SAAS,IAAI;AACV,eAAA,KAAK,SAAS,SAAS,eAAe;AAAA,MAAA,OACvC;AACN,qBAAa,EAAE,UAAU,aAAa,SAAS,OAAO,aAAuB;AAChE;AACb,YAAI,YAAY;AACJ,qBAAA,SAAS,OAAO,OAAiB;AAAA,QAAA,OACtC;AACC,iBAAA,SAAS,OAAO,SAAS,OAAO;AAAA,QACxC;AACO,eAAA,EAAE,IAAI;MACd;AAAA,aACQ,GAAG;AACX,cAAQ,MAAM,CAAC;AACf,aAAO,KAAK,eAAe;AAAA,IAC5B;AAAA,EAAA,GACE,CAAC,aAAa,YAAY,cAAc,cAAc,QAAQ,CAAC;AACnE;;"}
1
+ {"version":3,"file":"useInitIDPRedirect.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useInitIDPRedirect.ts"],"sourcesContent":["import { SetStateAction, useCallback } from 'react'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPInitError, IDPStateValue } from '../../types/idp'\nimport { useInitSignInIDPMutation } from '../../hooks'\nimport { useSaveBacklink } from './useRedirectToBacklink'\n\nexport interface UseInitIDPRedirectProps {\n\tonRedirect?: (url: string) => void\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n}\n\nexport const useInitIDPRedirect = ({ onRedirect, setState }: UseInitIDPRedirectProps) => {\n\tconst initRequest = useInitSignInIDPMutation()\n\tconst saveBacklink = useSaveBacklink()\n\tconst { set: saveIdpState } = useIDPStateStore()\n\n\treturn useCallback(async ({ provider }: { provider: string }): Promise<{ ok: true } | { ok: false; error: IDPInitError }> => {\n\t\tconst fail = (error: IDPInitError) => {\n\t\t\tsetState({ type: 'init_failed', error })\n\t\t\treturn { ok: false, error }\n\t\t}\n\t\ttry {\n\t\t\tsetState({ type: 'processing_init' })\n\t\t\tconst response = await initRequest({\n\t\t\t\tdata: {\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t},\n\t\t\t\tidentityProvider: provider,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\treturn fail(response.error || 'UNKNOWN_ERROR')\n\t\t\t} else {\n\t\t\t\tsaveIdpState({ provider, sessionData: response.result.sessionData as string })\n\t\t\t\tsaveBacklink()\n\t\t\t\tif (onRedirect) {\n\t\t\t\t\tonRedirect(response.result.authUrl as string)\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = response.result.authUrl as string\n\t\t\t\t}\n\t\t\t\treturn { ok: true }\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\treturn fail('UNKNOWN_ERROR')\n\t\t}\n\t}, [initRequest, onRedirect, saveBacklink, saveIdpState, setState])\n}\n"],"names":["useInitSignInIDPMutation","useSaveBacklink","useIDPStateStore","useCallback","getBaseHref"],"mappings":";;;;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,YAAY,eAAwC;AACxF,QAAM,cAAcA,yBAAAA,yBAAyB;AAC7C,QAAM,eAAeC,sBAAAA,gBAAgB;AACrC,QAAM,EAAE,KAAK,aAAa,IAAIC,kCAAiB;AAE/C,SAAOC,MAAY,YAAA,OAAO,EAAE,eAAiG;AACtH,UAAA,OAAO,CAAC,UAAwB;AACrC,eAAS,EAAE,MAAM,eAAe,MAAA,CAAO;AAChC,aAAA,EAAE,IAAI,OAAO,MAAM;AAAA,IAC3B;AACI,QAAA;AACM,eAAA,EAAE,MAAM,mBAAmB;AAC9B,YAAA,WAAW,MAAM,YAAY;AAAA,QAClC,MAAM;AAAA,UACL,aAAaC,YAAY,YAAA;AAAA,QAC1B;AAAA,QACA,kBAAkB;AAAA,MAAA,CAClB;AACG,UAAA,CAAC,SAAS,IAAI;AACV,eAAA,KAAK,SAAS,SAAS,eAAe;AAAA,MAAA,OACvC;AACN,qBAAa,EAAE,UAAU,aAAa,SAAS,OAAO,aAAuB;AAChE,qBAAA;AACb,YAAI,YAAY;AACJ,qBAAA,SAAS,OAAO,OAAiB;AAAA,QAAA,OACtC;AACC,iBAAA,SAAS,OAAO,SAAS,OAAO;AAAA,QAAA;AAEjC,eAAA,EAAE,IAAI,KAAK;AAAA,MAAA;AAAA,aAEX,GAAG;AACX,cAAQ,MAAM,CAAC;AACf,aAAO,KAAK,eAAe;AAAA,IAAA;AAAA,EAC5B,GACE,CAAC,aAAa,YAAY,cAAc,cAAc,QAAQ,CAAC;AACnE;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useInitIDPRedirect.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useInitIDPRedirect.ts"],"sourcesContent":["import { SetStateAction, useCallback } from 'react'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPInitError, IDPStateValue } from '../../types/idp'\nimport { useInitSignInIDPMutation } from '../../hooks'\nimport { useSaveBacklink } from './useRedirectToBacklink'\n\nexport interface UseInitIDPRedirectProps {\n\tonRedirect?: (url: string) => void\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n}\n\nexport const useInitIDPRedirect = ({ onRedirect, setState }: UseInitIDPRedirectProps) => {\n\tconst initRequest = useInitSignInIDPMutation()\n\tconst saveBacklink = useSaveBacklink()\n\tconst { set: saveIdpState } = useIDPStateStore()\n\n\treturn useCallback(async ({ provider }: { provider: string }): Promise<{ ok: true } | { ok: false; error: IDPInitError }> => {\n\t\tconst fail = (error: IDPInitError) => {\n\t\t\tsetState({ type: 'init_failed', error })\n\t\t\treturn { ok: false, error }\n\t\t}\n\t\ttry {\n\t\t\tsetState({ type: 'processing_init' })\n\t\t\tconst response = await initRequest({\n\t\t\t\tdata: {\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t},\n\t\t\t\tidentityProvider: provider,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\treturn fail(response.error || 'UNKNOWN_ERROR')\n\t\t\t} else {\n\t\t\t\tsaveIdpState({ provider, sessionData: response.result.sessionData as string })\n\t\t\t\tsaveBacklink()\n\t\t\t\tif (onRedirect) {\n\t\t\t\t\tonRedirect(response.result.authUrl as string)\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = response.result.authUrl as string\n\t\t\t\t}\n\t\t\t\treturn { ok: true }\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\treturn fail('UNKNOWN_ERROR')\n\t\t}\n\t}, [initRequest, onRedirect, saveBacklink, saveIdpState, setState])\n}\n"],"names":[],"mappings":";;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,YAAY,eAAwC;AACxF,QAAM,cAAc;AACpB,QAAM,eAAe;AACrB,QAAM,EAAE,KAAK,aAAa,IAAI,iBAAiB;AAE/C,SAAO,YAAY,OAAO,EAAE,eAAiG;AACtH,UAAA,OAAO,CAAC,UAAwB;AACrC,eAAS,EAAE,MAAM,eAAe,MAAO,CAAA;AAChC,aAAA,EAAE,IAAI,OAAO;IAAM;AAEvB,QAAA;AACM,eAAA,EAAE,MAAM,kBAAA,CAAmB;AAC9B,YAAA,WAAW,MAAM,YAAY;AAAA,QAClC,MAAM;AAAA,UACL,aAAa,YAAY;AAAA,QAC1B;AAAA,QACA,kBAAkB;AAAA,MAAA,CAClB;AACG,UAAA,CAAC,SAAS,IAAI;AACV,eAAA,KAAK,SAAS,SAAS,eAAe;AAAA,MAAA,OACvC;AACN,qBAAa,EAAE,UAAU,aAAa,SAAS,OAAO,aAAuB;AAChE;AACb,YAAI,YAAY;AACJ,qBAAA,SAAS,OAAO,OAAiB;AAAA,QAAA,OACtC;AACC,iBAAA,SAAS,OAAO,SAAS,OAAO;AAAA,QACxC;AACO,eAAA,EAAE,IAAI;MACd;AAAA,aACQ,GAAG;AACX,cAAQ,MAAM,CAAC;AACf,aAAO,KAAK,eAAe;AAAA,IAC5B;AAAA,EAAA,GACE,CAAC,aAAa,YAAY,cAAc,cAAc,QAAQ,CAAC;AACnE;"}
1
+ {"version":3,"file":"useInitIDPRedirect.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useInitIDPRedirect.ts"],"sourcesContent":["import { SetStateAction, useCallback } from 'react'\nimport { useIDPStateStore } from './useIDPStateStore'\nimport { getBaseHref } from '../utils/getBaseHref'\nimport { IDPInitError, IDPStateValue } from '../../types/idp'\nimport { useInitSignInIDPMutation } from '../../hooks'\nimport { useSaveBacklink } from './useRedirectToBacklink'\n\nexport interface UseInitIDPRedirectProps {\n\tonRedirect?: (url: string) => void\n\tsetState: (state: SetStateAction<IDPStateValue>) => void\n}\n\nexport const useInitIDPRedirect = ({ onRedirect, setState }: UseInitIDPRedirectProps) => {\n\tconst initRequest = useInitSignInIDPMutation()\n\tconst saveBacklink = useSaveBacklink()\n\tconst { set: saveIdpState } = useIDPStateStore()\n\n\treturn useCallback(async ({ provider }: { provider: string }): Promise<{ ok: true } | { ok: false; error: IDPInitError }> => {\n\t\tconst fail = (error: IDPInitError) => {\n\t\t\tsetState({ type: 'init_failed', error })\n\t\t\treturn { ok: false, error }\n\t\t}\n\t\ttry {\n\t\t\tsetState({ type: 'processing_init' })\n\t\t\tconst response = await initRequest({\n\t\t\t\tdata: {\n\t\t\t\t\tredirectUrl: getBaseHref(),\n\t\t\t\t},\n\t\t\t\tidentityProvider: provider,\n\t\t\t})\n\t\t\tif (!response.ok) {\n\t\t\t\treturn fail(response.error || 'UNKNOWN_ERROR')\n\t\t\t} else {\n\t\t\t\tsaveIdpState({ provider, sessionData: response.result.sessionData as string })\n\t\t\t\tsaveBacklink()\n\t\t\t\tif (onRedirect) {\n\t\t\t\t\tonRedirect(response.result.authUrl as string)\n\t\t\t\t} else {\n\t\t\t\t\twindow.location.href = response.result.authUrl as string\n\t\t\t\t}\n\t\t\t\treturn { ok: true }\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.error(e)\n\t\t\treturn fail('UNKNOWN_ERROR')\n\t\t}\n\t}, [initRequest, onRedirect, saveBacklink, saveIdpState, setState])\n}\n"],"names":[],"mappings":";;;;;AAYO,MAAM,qBAAqB,CAAC,EAAE,YAAY,eAAwC;AACxF,QAAM,cAAc,yBAAyB;AAC7C,QAAM,eAAe,gBAAgB;AACrC,QAAM,EAAE,KAAK,aAAa,IAAI,iBAAiB;AAE/C,SAAO,YAAY,OAAO,EAAE,eAAiG;AACtH,UAAA,OAAO,CAAC,UAAwB;AACrC,eAAS,EAAE,MAAM,eAAe,MAAA,CAAO;AAChC,aAAA,EAAE,IAAI,OAAO,MAAM;AAAA,IAC3B;AACI,QAAA;AACM,eAAA,EAAE,MAAM,mBAAmB;AAC9B,YAAA,WAAW,MAAM,YAAY;AAAA,QAClC,MAAM;AAAA,UACL,aAAa,YAAY;AAAA,QAC1B;AAAA,QACA,kBAAkB;AAAA,MAAA,CAClB;AACG,UAAA,CAAC,SAAS,IAAI;AACV,eAAA,KAAK,SAAS,SAAS,eAAe;AAAA,MAAA,OACvC;AACN,qBAAa,EAAE,UAAU,aAAa,SAAS,OAAO,aAAuB;AAChE,qBAAA;AACb,YAAI,YAAY;AACJ,qBAAA,SAAS,OAAO,OAAiB;AAAA,QAAA,OACtC;AACC,iBAAA,SAAS,OAAO,SAAS,OAAO;AAAA,QAAA;AAEjC,eAAA,EAAE,IAAI,KAAK;AAAA,MAAA;AAAA,aAEX,GAAG;AACX,cAAQ,MAAM,CAAC;AACf,aAAO,KAAK,eAAe;AAAA,IAAA;AAAA,EAC5B,GACE,CAAC,aAAa,YAAY,cAAc,cAAc,QAAQ,CAAC;AACnE;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLogoutInternal.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useLogoutInternal.ts"],"sourcesContent":["import { useSetSessionToken } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { useSignOutMutation } from '../../hooks'\n\nexport const useLogoutInternal = (clearIdentity?: () => void) => {\n\tconst tenantLogout = useSignOutMutation()\n\tconst setSessionToken = useSetSessionToken()\n\n\treturn useCallback(\n\t\tasync ({ noRedirect = false }: { noRedirect?: boolean } = {}) => {\n\t\t\tif (navigator.credentials && navigator.credentials.preventSilentAccess) {\n\t\t\t\ttry {\n\t\t\t\t\tawait navigator.credentials.preventSilentAccess()\n\t\t\t\t} catch {\n\t\t\t\t\t// actually, not implemented in safari:\n\t\t\t\t\t// https://github.com/WebKit/WebKit/blob/414f4e45b0e82bbfcee783d08a9642be1afa8f72/Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp#L132\n\t\t\t\t}\n\t\t\t}\n\t\t\tclearIdentity?.()\n\t\t\tsetSessionToken(undefined)\n\t\t\ttry {\n\t\t\t\tconst response = await tenantLogout({})\n\t\t\t\tif (!response?.ok) {\n\t\t\t\t\tconsole.warn(response?.error)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn(e)\n\t\t\t}\n\t\t\tif (!noRedirect) {\n\t\t\t\twindow.location.href = '/' // todo better redirect?\n\t\t\t}\n\t\t},\n\t\t[clearIdentity, setSessionToken, tenantLogout],\n\t)\n}\n"],"names":["useSignOutMutation","useSetSessionToken","useCallback"],"mappings":";;;;;AAIa,MAAA,oBAAoB,CAAC,kBAA+B;AAChE,QAAM,eAAeA,mBAAAA;AACrB,QAAM,kBAAkBC,YAAAA;AAEjB,SAAAC,MAAA;AAAA,IACN,OAAO,EAAE,aAAa,MAAM,IAA8B,OAAO;AAChE,UAAI,UAAU,eAAe,UAAU,YAAY,qBAAqB;AACnE,YAAA;AACG,gBAAA,UAAU,YAAY;QAAoB,QACzC;AAAA,QAGR;AAAA,MACD;AACgB;AAChB,sBAAgB,MAAS;AACrB,UAAA;AACH,cAAM,WAAW,MAAM,aAAa,CAAA,CAAE;AAClC,YAAA,CAAC,UAAU,IAAI;AACV,kBAAA,KAAK,UAAU,KAAK;AAAA,QAC7B;AAAA,eACQ,GAAG;AACX,gBAAQ,KAAK,CAAC;AAAA,MACf;AACA,UAAI,CAAC,YAAY;AAChB,eAAO,SAAS,OAAO;AAAA,MACxB;AAAA,IACD;AAAA,IACA,CAAC,eAAe,iBAAiB,YAAY;AAAA,EAAA;AAE/C;;"}
1
+ {"version":3,"file":"useLogoutInternal.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useLogoutInternal.ts"],"sourcesContent":["import { useSetSessionToken } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { useSignOutMutation } from '../../hooks'\n\nexport const useLogoutInternal = (clearIdentity?: () => void) => {\n\tconst tenantLogout = useSignOutMutation()\n\tconst setSessionToken = useSetSessionToken()\n\n\treturn useCallback(\n\t\tasync ({ noRedirect = false }: { noRedirect?: boolean } = {}) => {\n\t\t\tif (navigator.credentials && navigator.credentials.preventSilentAccess) {\n\t\t\t\ttry {\n\t\t\t\t\tawait navigator.credentials.preventSilentAccess()\n\t\t\t\t} catch {\n\t\t\t\t\t// actually, not implemented in safari:\n\t\t\t\t\t// https://github.com/WebKit/WebKit/blob/414f4e45b0e82bbfcee783d08a9642be1afa8f72/Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp#L132\n\t\t\t\t}\n\t\t\t}\n\t\t\tclearIdentity?.()\n\t\t\tsetSessionToken(undefined)\n\t\t\ttry {\n\t\t\t\tconst response = await tenantLogout({})\n\t\t\t\tif (!response?.ok) {\n\t\t\t\t\tconsole.warn(response?.error)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn(e)\n\t\t\t}\n\t\t\tif (!noRedirect) {\n\t\t\t\twindow.location.href = '/' // todo better redirect?\n\t\t\t}\n\t\t},\n\t\t[clearIdentity, setSessionToken, tenantLogout],\n\t)\n}\n"],"names":["useSignOutMutation","useSetSessionToken","useCallback"],"mappings":";;;;;AAIa,MAAA,oBAAoB,CAAC,kBAA+B;AAChE,QAAM,eAAeA,mBAAAA,mBAAmB;AACxC,QAAM,kBAAkBC,YAAAA,mBAAmB;AAEpC,SAAAC,MAAA;AAAA,IACN,OAAO,EAAE,aAAa,MAAM,IAA8B,OAAO;AAChE,UAAI,UAAU,eAAe,UAAU,YAAY,qBAAqB;AACnE,YAAA;AACG,gBAAA,UAAU,YAAY,oBAAoB;AAAA,QAAA,QACzC;AAAA,QAAA;AAAA,MAGR;AAEe,sBAAA;AAChB,sBAAgB,MAAS;AACrB,UAAA;AACH,cAAM,WAAW,MAAM,aAAa,EAAE;AAClC,YAAA,CAAC,UAAU,IAAI;AACV,kBAAA,KAAK,UAAU,KAAK;AAAA,QAAA;AAAA,eAErB,GAAG;AACX,gBAAQ,KAAK,CAAC;AAAA,MAAA;AAEf,UAAI,CAAC,YAAY;AAChB,eAAO,SAAS,OAAO;AAAA,MAAA;AAAA,IAEzB;AAAA,IACA,CAAC,eAAe,iBAAiB,YAAY;AAAA,EAC9C;AACD;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLogoutInternal.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useLogoutInternal.ts"],"sourcesContent":["import { useSetSessionToken } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { useSignOutMutation } from '../../hooks'\n\nexport const useLogoutInternal = (clearIdentity?: () => void) => {\n\tconst tenantLogout = useSignOutMutation()\n\tconst setSessionToken = useSetSessionToken()\n\n\treturn useCallback(\n\t\tasync ({ noRedirect = false }: { noRedirect?: boolean } = {}) => {\n\t\t\tif (navigator.credentials && navigator.credentials.preventSilentAccess) {\n\t\t\t\ttry {\n\t\t\t\t\tawait navigator.credentials.preventSilentAccess()\n\t\t\t\t} catch {\n\t\t\t\t\t// actually, not implemented in safari:\n\t\t\t\t\t// https://github.com/WebKit/WebKit/blob/414f4e45b0e82bbfcee783d08a9642be1afa8f72/Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp#L132\n\t\t\t\t}\n\t\t\t}\n\t\t\tclearIdentity?.()\n\t\t\tsetSessionToken(undefined)\n\t\t\ttry {\n\t\t\t\tconst response = await tenantLogout({})\n\t\t\t\tif (!response?.ok) {\n\t\t\t\t\tconsole.warn(response?.error)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn(e)\n\t\t\t}\n\t\t\tif (!noRedirect) {\n\t\t\t\twindow.location.href = '/' // todo better redirect?\n\t\t\t}\n\t\t},\n\t\t[clearIdentity, setSessionToken, tenantLogout],\n\t)\n}\n"],"names":[],"mappings":";;;AAIa,MAAA,oBAAoB,CAAC,kBAA+B;AAChE,QAAM,eAAe;AACrB,QAAM,kBAAkB;AAEjB,SAAA;AAAA,IACN,OAAO,EAAE,aAAa,MAAM,IAA8B,OAAO;AAChE,UAAI,UAAU,eAAe,UAAU,YAAY,qBAAqB;AACnE,YAAA;AACG,gBAAA,UAAU,YAAY;QAAoB,QACzC;AAAA,QAGR;AAAA,MACD;AACgB;AAChB,sBAAgB,MAAS;AACrB,UAAA;AACH,cAAM,WAAW,MAAM,aAAa,CAAA,CAAE;AAClC,YAAA,CAAC,UAAU,IAAI;AACV,kBAAA,KAAK,UAAU,KAAK;AAAA,QAC7B;AAAA,eACQ,GAAG;AACX,gBAAQ,KAAK,CAAC;AAAA,MACf;AACA,UAAI,CAAC,YAAY;AAChB,eAAO,SAAS,OAAO;AAAA,MACxB;AAAA,IACD;AAAA,IACA,CAAC,eAAe,iBAAiB,YAAY;AAAA,EAAA;AAE/C;"}
1
+ {"version":3,"file":"useLogoutInternal.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useLogoutInternal.ts"],"sourcesContent":["import { useSetSessionToken } from '@contember/react-client'\nimport { useCallback } from 'react'\nimport { useSignOutMutation } from '../../hooks'\n\nexport const useLogoutInternal = (clearIdentity?: () => void) => {\n\tconst tenantLogout = useSignOutMutation()\n\tconst setSessionToken = useSetSessionToken()\n\n\treturn useCallback(\n\t\tasync ({ noRedirect = false }: { noRedirect?: boolean } = {}) => {\n\t\t\tif (navigator.credentials && navigator.credentials.preventSilentAccess) {\n\t\t\t\ttry {\n\t\t\t\t\tawait navigator.credentials.preventSilentAccess()\n\t\t\t\t} catch {\n\t\t\t\t\t// actually, not implemented in safari:\n\t\t\t\t\t// https://github.com/WebKit/WebKit/blob/414f4e45b0e82bbfcee783d08a9642be1afa8f72/Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp#L132\n\t\t\t\t}\n\t\t\t}\n\t\t\tclearIdentity?.()\n\t\t\tsetSessionToken(undefined)\n\t\t\ttry {\n\t\t\t\tconst response = await tenantLogout({})\n\t\t\t\tif (!response?.ok) {\n\t\t\t\t\tconsole.warn(response?.error)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn(e)\n\t\t\t}\n\t\t\tif (!noRedirect) {\n\t\t\t\twindow.location.href = '/' // todo better redirect?\n\t\t\t}\n\t\t},\n\t\t[clearIdentity, setSessionToken, tenantLogout],\n\t)\n}\n"],"names":[],"mappings":";;;AAIa,MAAA,oBAAoB,CAAC,kBAA+B;AAChE,QAAM,eAAe,mBAAmB;AACxC,QAAM,kBAAkB,mBAAmB;AAEpC,SAAA;AAAA,IACN,OAAO,EAAE,aAAa,MAAM,IAA8B,OAAO;AAChE,UAAI,UAAU,eAAe,UAAU,YAAY,qBAAqB;AACnE,YAAA;AACG,gBAAA,UAAU,YAAY,oBAAoB;AAAA,QAAA,QACzC;AAAA,QAAA;AAAA,MAGR;AAEe,sBAAA;AAChB,sBAAgB,MAAS;AACrB,UAAA;AACH,cAAM,WAAW,MAAM,aAAa,EAAE;AAClC,YAAA,CAAC,UAAU,IAAI;AACV,kBAAA,KAAK,UAAU,KAAK;AAAA,QAAA;AAAA,eAErB,GAAG;AACX,gBAAQ,KAAK,CAAC;AAAA,MAAA;AAEf,UAAI,CAAC,YAAY;AAChB,eAAO,SAAS,OAAO;AAAA,MAAA;AAAA,IAEzB;AAAA,IACA,CAAC,eAAe,iBAAiB,YAAY;AAAA,EAC9C;AACD;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRedirectToBacklink.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useRedirectToBacklink.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react'\nimport { useIdentity } from '../../contexts'\n\nconst getBacklinkFromUrl = () => {\n\treturn new URLSearchParams(window.location.search).get('backlink')\n}\n\nexport const useSaveBacklink = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl()\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.setItem('backlink', backlink)\n\t}, [])\n}\n\nexport const useRedirectToBacklinkCallback = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl() ?? sessionStorage.getItem('backlink')\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.removeItem('backlink')\n\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\tif (resolvedBacklink.origin === window.location.origin) {\n\t\t\twindow.location.href = resolvedBacklink.toString()\n\t\t}\n\t}, [])\n}\n\nexport const useRedirectToBacklink = () => {\n\tconst identity = useIdentity()\n\tconst redirect = useRedirectToBacklinkCallback()\n\tuseEffect(() => {\n\t\tif (!identity) {\n\t\t\treturn\n\t\t}\n\t\tredirect()\n\t}, [identity, redirect])\n\n}\n"],"names":["useCallback"],"mappings":";;;AAGA,MAAM,qBAAqB,MAAM;AAChC,SAAO,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE,IAAI,UAAU;AAClE;AAEO,MAAM,kBAAkB,MAAM;AACpC,SAAOA,kBAAY,MAAM;AACxB,UAAM,WAAW;AACjB,QAAI,CAAC,UAAU;AACd;AAAA,IACD;AACe,mBAAA,QAAQ,YAAY,QAAQ;AAAA,EAC5C,GAAG,CAAE,CAAA;AACN;AAEO,MAAM,gCAAgC,MAAM;AAClD,SAAOA,kBAAY,MAAM;AACxB,UAAM,WAAW,mBAAwB,KAAA,eAAe,QAAQ,UAAU;AAC1E,QAAI,CAAC,UAAU;AACd;AAAA,IACD;AACA,mBAAe,WAAW,UAAU;AACpC,UAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AAC/D,QAAI,iBAAiB,WAAW,OAAO,SAAS,QAAQ;AAChD,aAAA,SAAS,OAAO,iBAAiB,SAAS;AAAA,IAClD;AAAA,EACD,GAAG,CAAE,CAAA;AACN;;;"}
1
+ {"version":3,"file":"useRedirectToBacklink.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useRedirectToBacklink.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react'\nimport { useIdentity } from '../../contexts'\n\nconst getBacklinkFromUrl = () => {\n\treturn new URLSearchParams(window.location.search).get('backlink')\n}\n\nexport const useSaveBacklink = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl()\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.setItem('backlink', backlink)\n\t}, [])\n}\n\nexport const useRedirectToBacklinkCallback = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl() ?? sessionStorage.getItem('backlink')\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.removeItem('backlink')\n\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\tif (resolvedBacklink.origin === window.location.origin) {\n\t\t\twindow.location.href = resolvedBacklink.toString()\n\t\t}\n\t}, [])\n}\n\nexport const useRedirectToBacklink = () => {\n\tconst identity = useIdentity()\n\tconst redirect = useRedirectToBacklinkCallback()\n\tuseEffect(() => {\n\t\tif (!identity) {\n\t\t\treturn\n\t\t}\n\t\tredirect()\n\t}, [identity, redirect])\n\n}\n"],"names":["useCallback"],"mappings":";;;AAGA,MAAM,qBAAqB,MAAM;AAChC,SAAO,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE,IAAI,UAAU;AAClE;AAEO,MAAM,kBAAkB,MAAM;AACpC,SAAOA,kBAAY,MAAM;AACxB,UAAM,WAAW,mBAAmB;AACpC,QAAI,CAAC,UAAU;AACd;AAAA,IAAA;AAEc,mBAAA,QAAQ,YAAY,QAAQ;AAAA,EAC5C,GAAG,EAAE;AACN;AAEO,MAAM,gCAAgC,MAAM;AAClD,SAAOA,kBAAY,MAAM;AACxB,UAAM,WAAW,mBAAA,KAAwB,eAAe,QAAQ,UAAU;AAC1E,QAAI,CAAC,UAAU;AACd;AAAA,IAAA;AAED,mBAAe,WAAW,UAAU;AACpC,UAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AAC/D,QAAI,iBAAiB,WAAW,OAAO,SAAS,QAAQ;AAChD,aAAA,SAAS,OAAO,iBAAiB,SAAS;AAAA,IAAA;AAAA,EAEnD,GAAG,EAAE;AACN;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useRedirectToBacklink.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useRedirectToBacklink.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react'\nimport { useIdentity } from '../../contexts'\n\nconst getBacklinkFromUrl = () => {\n\treturn new URLSearchParams(window.location.search).get('backlink')\n}\n\nexport const useSaveBacklink = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl()\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.setItem('backlink', backlink)\n\t}, [])\n}\n\nexport const useRedirectToBacklinkCallback = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl() ?? sessionStorage.getItem('backlink')\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.removeItem('backlink')\n\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\tif (resolvedBacklink.origin === window.location.origin) {\n\t\t\twindow.location.href = resolvedBacklink.toString()\n\t\t}\n\t}, [])\n}\n\nexport const useRedirectToBacklink = () => {\n\tconst identity = useIdentity()\n\tconst redirect = useRedirectToBacklinkCallback()\n\tuseEffect(() => {\n\t\tif (!identity) {\n\t\t\treturn\n\t\t}\n\t\tredirect()\n\t}, [identity, redirect])\n\n}\n"],"names":[],"mappings":";AAGA,MAAM,qBAAqB,MAAM;AAChC,SAAO,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE,IAAI,UAAU;AAClE;AAEO,MAAM,kBAAkB,MAAM;AACpC,SAAO,YAAY,MAAM;AACxB,UAAM,WAAW;AACjB,QAAI,CAAC,UAAU;AACd;AAAA,IACD;AACe,mBAAA,QAAQ,YAAY,QAAQ;AAAA,EAC5C,GAAG,CAAE,CAAA;AACN;AAEO,MAAM,gCAAgC,MAAM;AAClD,SAAO,YAAY,MAAM;AACxB,UAAM,WAAW,mBAAwB,KAAA,eAAe,QAAQ,UAAU;AAC1E,QAAI,CAAC,UAAU;AACd;AAAA,IACD;AACA,mBAAe,WAAW,UAAU;AACpC,UAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AAC/D,QAAI,iBAAiB,WAAW,OAAO,SAAS,QAAQ;AAChD,aAAA,SAAS,OAAO,iBAAiB,SAAS;AAAA,IAClD;AAAA,EACD,GAAG,CAAE,CAAA;AACN;"}
1
+ {"version":3,"file":"useRedirectToBacklink.js","sources":["../../../../../../packages/react-client-tenant/src/internal/hooks/useRedirectToBacklink.ts"],"sourcesContent":["import { useCallback, useEffect } from 'react'\nimport { useIdentity } from '../../contexts'\n\nconst getBacklinkFromUrl = () => {\n\treturn new URLSearchParams(window.location.search).get('backlink')\n}\n\nexport const useSaveBacklink = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl()\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.setItem('backlink', backlink)\n\t}, [])\n}\n\nexport const useRedirectToBacklinkCallback = () => {\n\treturn useCallback(() => {\n\t\tconst backlink = getBacklinkFromUrl() ?? sessionStorage.getItem('backlink')\n\t\tif (!backlink) {\n\t\t\treturn\n\t\t}\n\t\tsessionStorage.removeItem('backlink')\n\t\tconst resolvedBacklink = new URL(backlink, window.location.href)\n\t\tif (resolvedBacklink.origin === window.location.origin) {\n\t\t\twindow.location.href = resolvedBacklink.toString()\n\t\t}\n\t}, [])\n}\n\nexport const useRedirectToBacklink = () => {\n\tconst identity = useIdentity()\n\tconst redirect = useRedirectToBacklinkCallback()\n\tuseEffect(() => {\n\t\tif (!identity) {\n\t\t\treturn\n\t\t}\n\t\tredirect()\n\t}, [identity, redirect])\n\n}\n"],"names":[],"mappings":";AAGA,MAAM,qBAAqB,MAAM;AAChC,SAAO,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE,IAAI,UAAU;AAClE;AAEO,MAAM,kBAAkB,MAAM;AACpC,SAAO,YAAY,MAAM;AACxB,UAAM,WAAW,mBAAmB;AACpC,QAAI,CAAC,UAAU;AACd;AAAA,IAAA;AAEc,mBAAA,QAAQ,YAAY,QAAQ;AAAA,EAC5C,GAAG,EAAE;AACN;AAEO,MAAM,gCAAgC,MAAM;AAClD,SAAO,YAAY,MAAM;AACxB,UAAM,WAAW,mBAAA,KAAwB,eAAe,QAAQ,UAAU;AAC1E,QAAI,CAAC,UAAU;AACd;AAAA,IAAA;AAED,mBAAe,WAAW,UAAU;AACpC,UAAM,mBAAmB,IAAI,IAAI,UAAU,OAAO,SAAS,IAAI;AAC/D,QAAI,iBAAiB,WAAW,OAAO,SAAS,QAAQ;AAChD,aAAA,SAAS,OAAO,iBAAiB,SAAS;AAAA,IAAA;AAAA,EAEnD,GAAG,EAAE;AACN;"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const calculateHash = async (algo, message) => {
4
+ const hashBuffer = await crypto.subtle.digest(algo, new TextEncoder().encode(message));
5
+ return Array.from(new Uint8Array(hashBuffer)).map((b) => b.toString(16).padStart(2, "0")).join("");
6
+ };
7
+ exports.calculateHash = calculateHash;
8
+ //# sourceMappingURL=hashing.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashing.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/utils/hashing.ts"],"sourcesContent":["export const calculateHash = async (algo: AlgorithmIdentifier, message: string): Promise<string> => {\n\tconst hashBuffer = await crypto.subtle.digest(algo, new TextEncoder().encode(message))\n\treturn Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2, '0')).join('')\n}\n"],"names":[],"mappings":";;AAAa,MAAA,gBAAgB,OAAO,MAA2B,YAAqC;AAC7F,QAAA,aAAa,MAAM,OAAO,OAAO,OAAO,MAAM,IAAI,YAAY,EAAE,OAAO,OAAO,CAAC;AACrF,SAAO,MAAM,KAAK,IAAI,WAAW,UAAU,CAAC,EAAE,IAAI,CAAA,MAAK,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE;AAChG;;"}
@@ -0,0 +1,8 @@
1
+ const calculateHash = async (algo, message) => {
2
+ const hashBuffer = await crypto.subtle.digest(algo, new TextEncoder().encode(message));
3
+ return Array.from(new Uint8Array(hashBuffer)).map((b) => b.toString(16).padStart(2, "0")).join("");
4
+ };
5
+ export {
6
+ calculateHash
7
+ };
8
+ //# sourceMappingURL=hashing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hashing.js","sources":["../../../../../../packages/react-client-tenant/src/internal/utils/hashing.ts"],"sourcesContent":["export const calculateHash = async (algo: AlgorithmIdentifier, message: string): Promise<string> => {\n\tconst hashBuffer = await crypto.subtle.digest(algo, new TextEncoder().encode(message))\n\treturn Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2, '0')).join('')\n}\n"],"names":[],"mappings":"AAAa,MAAA,gBAAgB,OAAO,MAA2B,YAAqC;AAC7F,QAAA,aAAa,MAAM,OAAO,OAAO,OAAO,MAAM,IAAI,YAAY,EAAE,OAAO,OAAO,CAAC;AACrF,SAAO,MAAM,KAAK,IAAI,WAAW,UAAU,CAAC,EAAE,IAAI,CAAA,MAAK,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE;AAChG;"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const randomInt = (min, max) => {
4
+ if (min >= max) {
5
+ throw new Error("The min value must be less than the max value.");
6
+ }
7
+ if (max > 4294967295) {
8
+ throw new Error("The max value exceeds the limit for this implementation.");
9
+ }
10
+ const range = max - min + 1;
11
+ const maxValidValue = Math.floor(4294967295 / range) * range;
12
+ let randomInt2;
13
+ do {
14
+ const array = new Uint32Array(1);
15
+ window.crypto.getRandomValues(array);
16
+ randomInt2 = array[0];
17
+ } while (randomInt2 >= maxValidValue);
18
+ return min + randomInt2 % range;
19
+ };
20
+ const randomString = (length, charset) => {
21
+ let result = "";
22
+ for (let i = 0; i < length; i++) {
23
+ result += charset[randomInt(0, charset.length - 1)];
24
+ }
25
+ return result;
26
+ };
27
+ exports.randomInt = randomInt;
28
+ exports.randomString = randomString;
29
+ //# sourceMappingURL=randomInt.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"randomInt.cjs","sources":["../../../../../../packages/react-client-tenant/src/internal/utils/randomInt.ts"],"sourcesContent":["export const randomInt = (min: number, max: number) => {\n\tif (min >= max) {\n\t\tthrow new Error('The min value must be less than the max value.')\n\t}\n\n\tif (max > 0xFFFFFFFF) {\n\t\tthrow new Error('The max value exceeds the limit for this implementation.')\n\t}\n\n\tconst range = max - min + 1\n\tconst maxValidValue = Math.floor(0xFFFFFFFF / range) * range\n\tlet randomInt\n\n\tdo {\n\t\tconst array = new Uint32Array(1)\n\t\twindow.crypto.getRandomValues(array)\n\t\trandomInt = array[0]\n\t} while (randomInt >= maxValidValue)\n\n\treturn min + (randomInt % range)\n}\n\n\nexport const randomString = (length: number, charset: string): string => {\n\tlet result = ''\n\tfor (let i = 0; i < length; i++) {\n\t\tresult += charset[randomInt(0, charset.length - 1)]\n\t}\n\treturn result\n}\n"],"names":["randomInt"],"mappings":";;AAAa,MAAA,YAAY,CAAC,KAAa,QAAgB;AACtD,MAAI,OAAO,KAAK;AACT,UAAA,IAAI,MAAM,gDAAgD;AAAA,EAAA;AAGjE,MAAI,MAAM,YAAY;AACf,UAAA,IAAI,MAAM,0DAA0D;AAAA,EAAA;AAGrE,QAAA,QAAQ,MAAM,MAAM;AAC1B,QAAM,gBAAgB,KAAK,MAAM,aAAa,KAAK,IAAI;AACnDA,MAAAA;AAED,KAAA;AACI,UAAA,QAAQ,IAAI,YAAY,CAAC;AACxB,WAAA,OAAO,gBAAgB,KAAK;AACnCA,iBAAY,MAAM,CAAC;AAAA,WACXA,cAAa;AAEtB,SAAO,MAAOA,aAAY;AAC3B;AAGa,MAAA,eAAe,CAAC,QAAgB,YAA4B;AACxE,MAAI,SAAS;AACb,WAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAChC,cAAU,QAAQ,UAAU,GAAG,QAAQ,SAAS,CAAC,CAAC;AAAA,EAAA;AAE5C,SAAA;AACR;;;"}
@@ -0,0 +1,29 @@
1
+ const randomInt = (min, max) => {
2
+ if (min >= max) {
3
+ throw new Error("The min value must be less than the max value.");
4
+ }
5
+ if (max > 4294967295) {
6
+ throw new Error("The max value exceeds the limit for this implementation.");
7
+ }
8
+ const range = max - min + 1;
9
+ const maxValidValue = Math.floor(4294967295 / range) * range;
10
+ let randomInt2;
11
+ do {
12
+ const array = new Uint32Array(1);
13
+ window.crypto.getRandomValues(array);
14
+ randomInt2 = array[0];
15
+ } while (randomInt2 >= maxValidValue);
16
+ return min + randomInt2 % range;
17
+ };
18
+ const randomString = (length, charset) => {
19
+ let result = "";
20
+ for (let i = 0; i < length; i++) {
21
+ result += charset[randomInt(0, charset.length - 1)];
22
+ }
23
+ return result;
24
+ };
25
+ export {
26
+ randomInt,
27
+ randomString
28
+ };
29
+ //# sourceMappingURL=randomInt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"randomInt.js","sources":["../../../../../../packages/react-client-tenant/src/internal/utils/randomInt.ts"],"sourcesContent":["export const randomInt = (min: number, max: number) => {\n\tif (min >= max) {\n\t\tthrow new Error('The min value must be less than the max value.')\n\t}\n\n\tif (max > 0xFFFFFFFF) {\n\t\tthrow new Error('The max value exceeds the limit for this implementation.')\n\t}\n\n\tconst range = max - min + 1\n\tconst maxValidValue = Math.floor(0xFFFFFFFF / range) * range\n\tlet randomInt\n\n\tdo {\n\t\tconst array = new Uint32Array(1)\n\t\twindow.crypto.getRandomValues(array)\n\t\trandomInt = array[0]\n\t} while (randomInt >= maxValidValue)\n\n\treturn min + (randomInt % range)\n}\n\n\nexport const randomString = (length: number, charset: string): string => {\n\tlet result = ''\n\tfor (let i = 0; i < length; i++) {\n\t\tresult += charset[randomInt(0, charset.length - 1)]\n\t}\n\treturn result\n}\n"],"names":["randomInt"],"mappings":"AAAa,MAAA,YAAY,CAAC,KAAa,QAAgB;AACtD,MAAI,OAAO,KAAK;AACT,UAAA,IAAI,MAAM,gDAAgD;AAAA,EAAA;AAGjE,MAAI,MAAM,YAAY;AACf,UAAA,IAAI,MAAM,0DAA0D;AAAA,EAAA;AAGrE,QAAA,QAAQ,MAAM,MAAM;AAC1B,QAAM,gBAAgB,KAAK,MAAM,aAAa,KAAK,IAAI;AACnDA,MAAAA;AAED,KAAA;AACI,UAAA,QAAQ,IAAI,YAAY,CAAC;AACxB,WAAA,OAAO,gBAAgB,KAAK;AACnCA,iBAAY,MAAM,CAAC;AAAA,WACXA,cAAa;AAEtB,SAAO,MAAOA,aAAY;AAC3B;AAGa,MAAA,eAAe,CAAC,QAAgB,YAA4B;AACxE,MAAI,SAAS;AACb,WAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAChC,cAAU,QAAQ,UAAU,GAAG,QAAQ,SAAS,CAAC,CAAC;AAAA,EAAA;AAE5C,SAAA;AACR;"}
@@ -10,6 +10,8 @@ const InviteForm = require("./src/components/forms/InviteForm.cjs");
10
10
  const LoginForm = require("./src/components/forms/LoginForm.cjs");
11
11
  const PasswordResetForm = require("./src/components/forms/PasswordResetForm.cjs");
12
12
  const PasswordResetRequestForm = require("./src/components/forms/PasswordResetRequestForm.cjs");
13
+ const PasswordlessSignInForm = require("./src/components/forms/PasswordlessSignInForm.cjs");
14
+ const PasswordlessSignInInitForm = require("./src/components/forms/PasswordlessSignInInitForm.cjs");
13
15
  const OtpPrepareForm = require("./src/components/forms/OtpPrepareForm.cjs");
14
16
  const OtpConfirmForm = require("./src/components/forms/OtpConfirmForm.cjs");
15
17
  const UpdateProjectMemberForm = require("./src/components/forms/UpdateProjectMemberForm.cjs");
@@ -32,11 +34,18 @@ const useSignInIdpMutation = require("./src/hooks/mutations/idp/useSignInIdpMuta
32
34
  const useRemoveProjectMemberMutation = require("./src/hooks/mutations/memberships/useRemoveProjectMemberMutation.cjs");
33
35
  const useAddProjectMemberMutation = require("./src/hooks/mutations/memberships/useAddProjectMemberMutation.cjs");
34
36
  const useUpdateProjectMemberMutation = require("./src/hooks/mutations/memberships/useUpdateProjectMemberMutation.cjs");
37
+ const useActivatePasswordlessOtpMutation = require("./src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.cjs");
38
+ const useDisableMyPasswordlessMutation = require("./src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.cjs");
39
+ const useEnableMyPasswordlessMutation = require("./src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.cjs");
40
+ const useSignInPasswordlessMutation = require("./src/hooks/mutations/passwordless/useSignInPasswordlessMutation.cjs");
41
+ const useInitSignInPasswordlessMutation = require("./src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.cjs");
35
42
  const useConfirmOtpMutation = require("./src/hooks/mutations/otp/useConfirmOtpMutation.cjs");
36
43
  const useDisableOtpMutation = require("./src/hooks/mutations/otp/useDisableOtpMutation.cjs");
37
44
  const usePrepareOtpMutation = require("./src/hooks/mutations/otp/usePrepareOtpMutation.cjs");
38
45
  const useCreateResetPasswordRequestMutation = require("./src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.cjs");
39
46
  const useResetPasswordMutation = require("./src/hooks/mutations/passwordReset/useResetPasswordMutation.cjs");
47
+ const useChangeProfile = require("./src/hooks/mutations/profile/useChangeProfile.cjs");
48
+ const useChangeMyProfile = require("./src/hooks/mutations/profile/useChangeMyProfile.cjs");
40
49
  const useMeQuery = require("./src/hooks/queries/useMeQuery.cjs");
41
50
  const useProjectMembersQuery = require("./src/hooks/queries/useProjectMembersQuery.cjs");
42
51
  const useProjectMembershipsQuery = require("./src/hooks/queries/useProjectMembershipsQuery.cjs");
@@ -46,6 +55,7 @@ const useLogout = require("./src/hooks/useLogout.cjs");
46
55
  const useTenantApi = require("./src/hooks/useTenantApi.cjs");
47
56
  const useTenantQueryLoader = require("./src/hooks/useTenantQueryLoader.cjs");
48
57
  const useTenantMutation = require("./src/hooks/useTenantMutation.cjs");
58
+ const usePasswordlessOtpActivator = require("./src/hooks/usePasswordlessOtpActivator.cjs");
49
59
  exports.FormContext = contexts.FormContext;
50
60
  exports.IDPMethodsContextProvider = contexts.IDPMethodsContextProvider;
51
61
  exports.IDPStateContextProvider = contexts.IDPStateContextProvider;
@@ -74,6 +84,10 @@ exports.PasswordResetForm = PasswordResetForm.PasswordResetForm;
74
84
  exports.usePasswordResetForm = PasswordResetForm.usePasswordResetForm;
75
85
  exports.PasswordResetRequestForm = PasswordResetRequestForm.PasswordResetRequestForm;
76
86
  exports.usePasswordResetRequestForm = PasswordResetRequestForm.usePasswordResetRequestForm;
87
+ exports.PasswordlessSignInForm = PasswordlessSignInForm.PasswordlessSignInForm;
88
+ exports.usePasswordlessSignInForm = PasswordlessSignInForm.usePasswordlessSignInForm;
89
+ exports.PasswordlessSignInInitForm = PasswordlessSignInInitForm.PasswordlessSignInInitForm;
90
+ exports.usePasswordlessSignInInitForm = PasswordlessSignInInitForm.usePasswordlessSignInInitForm;
77
91
  exports.OtpPrepareForm = OtpPrepareForm.OtpPrepareForm;
78
92
  exports.useOtpPrepareForm = OtpPrepareForm.useOtpPrepareForm;
79
93
  exports.OtpConfirmForm = OtpConfirmForm.OtpConfirmForm;
@@ -111,6 +125,11 @@ exports.addProjectMemberMutation = useAddProjectMemberMutation.addProjectMemberM
111
125
  exports.useAddProjectMemberMutation = useAddProjectMemberMutation.useAddProjectMemberMutation;
112
126
  exports.updateProjectMemberMutation = useUpdateProjectMemberMutation.updateProjectMemberMutation;
113
127
  exports.useUpdateProjectMemberMutation = useUpdateProjectMemberMutation.useUpdateProjectMemberMutation;
128
+ exports.useActivatePasswordlessOtpMutation = useActivatePasswordlessOtpMutation.useActivatePasswordlessOtpMutation;
129
+ exports.useDisableMyPasswordlessMutation = useDisableMyPasswordlessMutation.useDisableMyPasswordlessMutation;
130
+ exports.useEnableMyPasswordlessMutation = useEnableMyPasswordlessMutation.useEnableMyPasswordlessMutation;
131
+ exports.useSignInPasswordlessMutation = useSignInPasswordlessMutation.useSignInPasswordlessMutation;
132
+ exports.useInitSignInPasswordlessMutation = useInitSignInPasswordlessMutation.useInitSignInPasswordlessMutation;
114
133
  exports.confirmOtpMutation = useConfirmOtpMutation.confirmOtpMutation;
115
134
  exports.useConfirmOtpMutation = useConfirmOtpMutation.useConfirmOtpMutation;
116
135
  exports.disableOtpMutation = useDisableOtpMutation.disableOtpMutation;
@@ -121,6 +140,10 @@ exports.createResetPasswordRequestMutation = useCreateResetPasswordRequestMutati
121
140
  exports.useCreateResetPasswordRequestMutation = useCreateResetPasswordRequestMutation.useCreateResetPasswordRequestMutation;
122
141
  exports.resetPasswordMutation = useResetPasswordMutation.resetPasswordMutation;
123
142
  exports.useResetPasswordMutation = useResetPasswordMutation.useResetPasswordMutation;
143
+ exports.changeProfile = useChangeProfile.changeProfile;
144
+ exports.useChangeProfileMutation = useChangeProfile.useChangeProfileMutation;
145
+ exports.changeMyProfile = useChangeMyProfile.changeMyProfile;
146
+ exports.useChangeMyProfileMutation = useChangeMyProfile.useChangeMyProfileMutation;
124
147
  exports.useMeQuery = useMeQuery.useMeQuery;
125
148
  exports.useProjectMembersQuery = useProjectMembersQuery.useProjectMembersQuery;
126
149
  exports.useProjectMembershipsQuery = useProjectMembershipsQuery.useProjectMembershipsQuery;
@@ -132,4 +155,5 @@ exports.useTenantApi = useTenantApi.useTenantApi;
132
155
  exports.useTenantQueryLoader = useTenantQueryLoader.useTenantQueryLoader;
133
156
  exports.createTenantMutation = useTenantMutation.createTenantMutation;
134
157
  exports.useTenantMutation = useTenantMutation.useTenantMutation;
158
+ exports.usePasswordlessOtpActivator = usePasswordlessOtpActivator.usePasswordlessOtpActivator;
135
159
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -8,6 +8,8 @@ import { InviteForm, useInviteForm } from "./src/components/forms/InviteForm.js"
8
8
  import { LoginForm, useLoginForm } from "./src/components/forms/LoginForm.js";
9
9
  import { PasswordResetForm, usePasswordResetForm } from "./src/components/forms/PasswordResetForm.js";
10
10
  import { PasswordResetRequestForm, usePasswordResetRequestForm } from "./src/components/forms/PasswordResetRequestForm.js";
11
+ import { PasswordlessSignInForm, usePasswordlessSignInForm } from "./src/components/forms/PasswordlessSignInForm.js";
12
+ import { PasswordlessSignInInitForm, usePasswordlessSignInInitForm } from "./src/components/forms/PasswordlessSignInInitForm.js";
11
13
  import { OtpPrepareForm, useOtpPrepareForm } from "./src/components/forms/OtpPrepareForm.js";
12
14
  import { OtpConfirmForm, useOtpConfirmForm } from "./src/components/forms/OtpConfirmForm.js";
13
15
  import { UpdateProjectMemberForm, useUpdateProjectMemberForm } from "./src/components/forms/UpdateProjectMemberForm.js";
@@ -30,11 +32,18 @@ import { signInIDPMutation, useSignInIDPMutation } from "./src/hooks/mutations/i
30
32
  import { removeProjectMemberMutation, useRemoveProjectMemberMutation } from "./src/hooks/mutations/memberships/useRemoveProjectMemberMutation.js";
31
33
  import { addProjectMemberMutation, useAddProjectMemberMutation } from "./src/hooks/mutations/memberships/useAddProjectMemberMutation.js";
32
34
  import { updateProjectMemberMutation, useUpdateProjectMemberMutation } from "./src/hooks/mutations/memberships/useUpdateProjectMemberMutation.js";
35
+ import { useActivatePasswordlessOtpMutation } from "./src/hooks/mutations/passwordless/useActivatePasswordlessOtpMutation.js";
36
+ import { useDisableMyPasswordlessMutation } from "./src/hooks/mutations/passwordless/useDisableMyPasswordlessMutation.js";
37
+ import { useEnableMyPasswordlessMutation } from "./src/hooks/mutations/passwordless/useEnableMyPasswordlessMutation.js";
38
+ import { useSignInPasswordlessMutation } from "./src/hooks/mutations/passwordless/useSignInPasswordlessMutation.js";
39
+ import { useInitSignInPasswordlessMutation } from "./src/hooks/mutations/passwordless/useInitSignInPasswordlessMutation.js";
33
40
  import { confirmOtpMutation, useConfirmOtpMutation } from "./src/hooks/mutations/otp/useConfirmOtpMutation.js";
34
41
  import { disableOtpMutation, useDisableOtpMutation } from "./src/hooks/mutations/otp/useDisableOtpMutation.js";
35
42
  import { prepareOtpMutation, usePrepareOtpMutation } from "./src/hooks/mutations/otp/usePrepareOtpMutation.js";
36
43
  import { createResetPasswordRequestMutation, useCreateResetPasswordRequestMutation } from "./src/hooks/mutations/passwordReset/useCreateResetPasswordRequestMutation.js";
37
44
  import { resetPasswordMutation, useResetPasswordMutation } from "./src/hooks/mutations/passwordReset/useResetPasswordMutation.js";
45
+ import { changeProfile, useChangeProfileMutation } from "./src/hooks/mutations/profile/useChangeProfile.js";
46
+ import { changeMyProfile, useChangeMyProfileMutation } from "./src/hooks/mutations/profile/useChangeMyProfile.js";
38
47
  import { useMeQuery } from "./src/hooks/queries/useMeQuery.js";
39
48
  import { useProjectMembersQuery } from "./src/hooks/queries/useProjectMembersQuery.js";
40
49
  import { useProjectMembershipsQuery } from "./src/hooks/queries/useProjectMembershipsQuery.js";
@@ -44,6 +53,7 @@ import { useLogout } from "./src/hooks/useLogout.js";
44
53
  import { LoginToken, useTenantApi } from "./src/hooks/useTenantApi.js";
45
54
  import { useTenantQueryLoader } from "./src/hooks/useTenantQueryLoader.js";
46
55
  import { createTenantMutation, useTenantMutation } from "./src/hooks/useTenantMutation.js";
56
+ import { usePasswordlessOtpActivator } from "./src/hooks/usePasswordlessOtpActivator.js";
47
57
  export {
48
58
  ChangeMyPasswordForm,
49
59
  CreateApiKeyForm,
@@ -68,10 +78,14 @@ export {
68
78
  OtpPrepareForm,
69
79
  PasswordResetForm,
70
80
  PasswordResetRequestForm,
81
+ PasswordlessSignInForm,
82
+ PasswordlessSignInInitForm,
71
83
  RemoveProjectMemberTrigger,
72
84
  UpdateProjectMemberForm,
73
85
  addProjectMemberMutation,
74
86
  changeMyPasswordMutation,
87
+ changeMyProfile,
88
+ changeProfile,
75
89
  confirmOtpMutation,
76
90
  createApiKeyMutation,
77
91
  createGlobalApiKeyMutation,
@@ -88,9 +102,12 @@ export {
88
102
  signInMutation,
89
103
  signOutMutation,
90
104
  updateProjectMemberMutation,
105
+ useActivatePasswordlessOtpMutation,
91
106
  useAddProjectMemberMutation,
92
107
  useChangeMyPasswordForm,
93
108
  useChangeMyPasswordMutation,
109
+ useChangeMyProfileMutation,
110
+ useChangeProfileMutation,
94
111
  useConfirmOtpMutation,
95
112
  useCreateApiKeyForm,
96
113
  useCreateApiKeyMutation,
@@ -99,7 +116,9 @@ export {
99
116
  useCreateSessionTokenForm,
100
117
  useCreateSessionTokenMutation,
101
118
  useDisableApiKeyMutation,
119
+ useDisableMyPasswordlessMutation,
102
120
  useDisableOtpMutation,
121
+ useEnableMyPasswordlessMutation,
103
122
  useFetchIdentity,
104
123
  useForm,
105
124
  useIDPMethods,
@@ -108,6 +127,7 @@ export {
108
127
  useIdentityMethods,
109
128
  useIdentityState,
110
129
  useInitSignInIDPMutation,
130
+ useInitSignInPasswordlessMutation,
111
131
  useInviteForm,
112
132
  useInviteMutation,
113
133
  useLoginForm,
@@ -117,6 +137,9 @@ export {
117
137
  useOtpPrepareForm,
118
138
  usePasswordResetForm,
119
139
  usePasswordResetRequestForm,
140
+ usePasswordlessOtpActivator,
141
+ usePasswordlessSignInForm,
142
+ usePasswordlessSignInInitForm,
120
143
  usePrepareOtpMutation,
121
144
  useProjectMembersQuery,
122
145
  useProjectMembershipsQuery,
@@ -125,6 +148,7 @@ export {
125
148
  useResetPasswordMutation,
126
149
  useSignInIDPMutation,
127
150
  useSignInMutation,
151
+ useSignInPasswordlessMutation,
128
152
  useSignOutMutation,
129
153
  useTenantApi,
130
154
  useTenantMutation,