@joelbarron/react-web-dev-kit 0.1.0

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 (215) hide show
  1. package/README.md +236 -0
  2. package/dist/auth/client.d.ts +44 -0
  3. package/dist/auth/client.d.ts.map +1 -0
  4. package/dist/auth/client.js +354 -0
  5. package/dist/auth/constants/countryCallingCodes.d.ts +9 -0
  6. package/dist/auth/constants/countryCallingCodes.d.ts.map +1 -0
  7. package/dist/auth/constants/countryCallingCodes.js +209 -0
  8. package/dist/auth/constants/gender.d.ts +9 -0
  9. package/dist/auth/constants/gender.d.ts.map +1 -0
  10. package/dist/auth/constants/gender.js +12 -0
  11. package/dist/auth/constants/index.d.ts +3 -0
  12. package/dist/auth/constants/index.d.ts.map +1 -0
  13. package/dist/auth/constants/index.js +2 -0
  14. package/dist/auth/forms/account/AuthAccountConfirmationForm.d.ts +18 -0
  15. package/dist/auth/forms/account/AuthAccountConfirmationForm.d.ts.map +1 -0
  16. package/dist/auth/forms/account/AuthAccountConfirmationForm.js +166 -0
  17. package/dist/auth/forms/account/index.d.ts +2 -0
  18. package/dist/auth/forms/account/index.d.ts.map +1 -0
  19. package/dist/auth/forms/account/index.js +1 -0
  20. package/dist/auth/forms/errorParser.d.ts +7 -0
  21. package/dist/auth/forms/errorParser.d.ts.map +1 -0
  22. package/dist/auth/forms/errorParser.js +65 -0
  23. package/dist/auth/forms/index.d.ts +6 -0
  24. package/dist/auth/forms/index.d.ts.map +1 -0
  25. package/dist/auth/forms/index.js +5 -0
  26. package/dist/auth/forms/password/AuthForgotPasswordForm.d.ts +12 -0
  27. package/dist/auth/forms/password/AuthForgotPasswordForm.d.ts.map +1 -0
  28. package/dist/auth/forms/password/AuthForgotPasswordForm.js +71 -0
  29. package/dist/auth/forms/password/AuthPasswordResetConfirmForm.d.ts +15 -0
  30. package/dist/auth/forms/password/AuthPasswordResetConfirmForm.d.ts.map +1 -0
  31. package/dist/auth/forms/password/AuthPasswordResetConfirmForm.js +88 -0
  32. package/dist/auth/forms/password/AuthResetPasswordForm.d.ts +12 -0
  33. package/dist/auth/forms/password/AuthResetPasswordForm.d.ts.map +1 -0
  34. package/dist/auth/forms/password/AuthResetPasswordForm.js +18 -0
  35. package/dist/auth/forms/password/index.d.ts +4 -0
  36. package/dist/auth/forms/password/index.d.ts.map +1 -0
  37. package/dist/auth/forms/password/index.js +3 -0
  38. package/dist/auth/forms/sign-in/AuthOtpSignInForm.d.ts +24 -0
  39. package/dist/auth/forms/sign-in/AuthOtpSignInForm.d.ts.map +1 -0
  40. package/dist/auth/forms/sign-in/AuthOtpSignInForm.js +226 -0
  41. package/dist/auth/forms/sign-in/AuthPasswordSignInForm.d.ts +21 -0
  42. package/dist/auth/forms/sign-in/AuthPasswordSignInForm.d.ts.map +1 -0
  43. package/dist/auth/forms/sign-in/AuthPasswordSignInForm.js +120 -0
  44. package/dist/auth/forms/sign-in/index.d.ts +3 -0
  45. package/dist/auth/forms/sign-in/index.d.ts.map +1 -0
  46. package/dist/auth/forms/sign-in/index.js +2 -0
  47. package/dist/auth/forms/sign-up/AuthSignUpForm.d.ts +36 -0
  48. package/dist/auth/forms/sign-up/AuthSignUpForm.d.ts.map +1 -0
  49. package/dist/auth/forms/sign-up/AuthSignUpForm.js +164 -0
  50. package/dist/auth/forms/sign-up/index.d.ts +2 -0
  51. package/dist/auth/forms/sign-up/index.d.ts.map +1 -0
  52. package/dist/auth/forms/sign-up/index.js +1 -0
  53. package/dist/auth/fuse/createFuseAuthViews.d.ts +24 -0
  54. package/dist/auth/fuse/createFuseAuthViews.d.ts.map +1 -0
  55. package/dist/auth/fuse/createFuseAuthViews.js +360 -0
  56. package/dist/auth/fuse/fuseAdapter.d.ts +40 -0
  57. package/dist/auth/fuse/fuseAdapter.d.ts.map +1 -0
  58. package/dist/auth/fuse/fuseAdapter.js +265 -0
  59. package/dist/auth/fuse/fuseIntegration.d.ts +59 -0
  60. package/dist/auth/fuse/fuseIntegration.d.ts.map +1 -0
  61. package/dist/auth/fuse/fuseIntegration.js +85 -0
  62. package/dist/auth/fuse/index.d.ts +4 -0
  63. package/dist/auth/fuse/index.d.ts.map +1 -0
  64. package/dist/auth/fuse/index.js +3 -0
  65. package/dist/auth/index.d.ts +11 -0
  66. package/dist/auth/index.d.ts.map +1 -0
  67. package/dist/auth/index.js +10 -0
  68. package/dist/auth/provider.d.ts +35 -0
  69. package/dist/auth/provider.d.ts.map +1 -0
  70. package/dist/auth/provider.js +133 -0
  71. package/dist/auth/query.d.ts +23 -0
  72. package/dist/auth/query.d.ts.map +1 -0
  73. package/dist/auth/query.js +103 -0
  74. package/dist/auth/routes.d.ts +37 -0
  75. package/dist/auth/routes.d.ts.map +1 -0
  76. package/dist/auth/routes.js +73 -0
  77. package/dist/auth/social/providerAuth.d.ts +76 -0
  78. package/dist/auth/social/providerAuth.d.ts.map +1 -0
  79. package/dist/auth/social/providerAuth.js +130 -0
  80. package/dist/auth/storage.d.ts +3 -0
  81. package/dist/auth/storage.d.ts.map +1 -0
  82. package/dist/auth/storage.js +20 -0
  83. package/dist/auth/types.d.ts +208 -0
  84. package/dist/auth/types.d.ts.map +1 -0
  85. package/dist/auth/types.js +1 -0
  86. package/dist/auth/ui/AuthPagesMessageSection.d.ts +3 -0
  87. package/dist/auth/ui/AuthPagesMessageSection.d.ts.map +1 -0
  88. package/dist/auth/ui/AuthPagesMessageSection.js +39 -0
  89. package/dist/auth/ui/AuthPrimaryButton.d.ts +9 -0
  90. package/dist/auth/ui/AuthPrimaryButton.d.ts.map +1 -0
  91. package/dist/auth/ui/AuthPrimaryButton.js +19 -0
  92. package/dist/auth/ui/AuthRoleSelectionDialog.d.ts +14 -0
  93. package/dist/auth/ui/AuthRoleSelectionDialog.d.ts.map +1 -0
  94. package/dist/auth/ui/AuthRoleSelectionDialog.js +39 -0
  95. package/dist/auth/ui/AuthRoutePageWrapper.d.ts +12 -0
  96. package/dist/auth/ui/AuthRoutePageWrapper.d.ts.map +1 -0
  97. package/dist/auth/ui/AuthRoutePageWrapper.js +59 -0
  98. package/dist/auth/ui/AuthSecondaryButton.d.ts +7 -0
  99. package/dist/auth/ui/AuthSecondaryButton.d.ts.map +1 -0
  100. package/dist/auth/ui/AuthSecondaryButton.js +18 -0
  101. package/dist/auth/ui/AuthSocialProviderButton.d.ts +11 -0
  102. package/dist/auth/ui/AuthSocialProviderButton.d.ts.map +1 -0
  103. package/dist/auth/ui/AuthSocialProviderButton.js +30 -0
  104. package/dist/auth/ui/SignInPageTitle.d.ts +6 -0
  105. package/dist/auth/ui/SignInPageTitle.d.ts.map +1 -0
  106. package/dist/auth/ui/SignInPageTitle.js +7 -0
  107. package/dist/auth/ui/SignOutPageTitle.d.ts +6 -0
  108. package/dist/auth/ui/SignOutPageTitle.d.ts.map +1 -0
  109. package/dist/auth/ui/SignOutPageTitle.js +7 -0
  110. package/dist/auth/ui/SignUpPageTitle.d.ts +6 -0
  111. package/dist/auth/ui/SignUpPageTitle.d.ts.map +1 -0
  112. package/dist/auth/ui/SignUpPageTitle.js +7 -0
  113. package/dist/auth/ui/index.d.ts +11 -0
  114. package/dist/auth/ui/index.d.ts.map +1 -0
  115. package/dist/auth/ui/index.js +10 -0
  116. package/dist/auth/ui/types.d.ts +15 -0
  117. package/dist/auth/ui/types.d.ts.map +1 -0
  118. package/dist/auth/ui/types.js +1 -0
  119. package/dist/config/createConfig.d.ts +13 -0
  120. package/dist/config/createConfig.d.ts.map +1 -0
  121. package/dist/config/createConfig.js +104 -0
  122. package/dist/config/defaults.d.ts +3 -0
  123. package/dist/config/defaults.d.ts.map +1 -0
  124. package/dist/config/defaults.js +38 -0
  125. package/dist/config/index.d.ts +5 -0
  126. package/dist/config/index.d.ts.map +1 -0
  127. package/dist/config/index.js +4 -0
  128. package/dist/config/merge.d.ts +2 -0
  129. package/dist/config/merge.d.ts.map +1 -0
  130. package/dist/config/merge.js +18 -0
  131. package/dist/config/types.d.ts +46 -0
  132. package/dist/config/types.d.ts.map +1 -0
  133. package/dist/config/types.js +1 -0
  134. package/dist/forms/JBCheckboxField.d.ts +12 -0
  135. package/dist/forms/JBCheckboxField.d.ts.map +1 -0
  136. package/dist/forms/JBCheckboxField.js +36 -0
  137. package/dist/forms/JBDatePickerField.d.ts +12 -0
  138. package/dist/forms/JBDatePickerField.d.ts.map +1 -0
  139. package/dist/forms/JBDatePickerField.js +14 -0
  140. package/dist/forms/JBRadioGroupField.d.ts +10 -0
  141. package/dist/forms/JBRadioGroupField.d.ts.map +1 -0
  142. package/dist/forms/JBRadioGroupField.js +8 -0
  143. package/dist/forms/JBSelectField.d.ts +9 -0
  144. package/dist/forms/JBSelectField.d.ts.map +1 -0
  145. package/dist/forms/JBSelectField.js +8 -0
  146. package/dist/forms/JBSwitchField.d.ts +11 -0
  147. package/dist/forms/JBSwitchField.d.ts.map +1 -0
  148. package/dist/forms/JBSwitchField.js +10 -0
  149. package/dist/forms/JBTextField.d.ts +6 -0
  150. package/dist/forms/JBTextField.d.ts.map +1 -0
  151. package/dist/forms/JBTextField.js +8 -0
  152. package/dist/forms/JBTimePickerField.d.ts +12 -0
  153. package/dist/forms/JBTimePickerField.d.ts.map +1 -0
  154. package/dist/forms/JBTimePickerField.js +14 -0
  155. package/dist/forms/index.d.ts +11 -0
  156. package/dist/forms/index.d.ts.map +1 -0
  157. package/dist/forms/index.js +10 -0
  158. package/dist/forms/rules.d.ts +16 -0
  159. package/dist/forms/rules.d.ts.map +1 -0
  160. package/dist/forms/rules.js +21 -0
  161. package/dist/forms/types.d.ts +12 -0
  162. package/dist/forms/types.d.ts.map +1 -0
  163. package/dist/forms/types.js +1 -0
  164. package/dist/forms/utils.d.ts +5 -0
  165. package/dist/forms/utils.d.ts.map +1 -0
  166. package/dist/forms/utils.js +7 -0
  167. package/dist/grid/JBGrid.d.ts +3 -0
  168. package/dist/grid/JBGrid.d.ts.map +1 -0
  169. package/dist/grid/JBGrid.js +89 -0
  170. package/dist/grid/JBGridHeader.d.ts +3 -0
  171. package/dist/grid/JBGridHeader.d.ts.map +1 -0
  172. package/dist/grid/JBGridHeader.js +22 -0
  173. package/dist/grid/JBGridProviders.d.ts +10 -0
  174. package/dist/grid/JBGridProviders.d.ts.map +1 -0
  175. package/dist/grid/JBGridProviders.js +31 -0
  176. package/dist/grid/index.d.ts +5 -0
  177. package/dist/grid/index.d.ts.map +1 -0
  178. package/dist/grid/index.js +4 -0
  179. package/dist/grid/types.d.ts +81 -0
  180. package/dist/grid/types.d.ts.map +1 -0
  181. package/dist/grid/types.js +1 -0
  182. package/dist/hooks/index.d.ts +3 -0
  183. package/dist/hooks/index.d.ts.map +1 -0
  184. package/dist/hooks/index.js +2 -0
  185. package/dist/hooks/useJBDebouncedValue.d.ts +2 -0
  186. package/dist/hooks/useJBDebouncedValue.d.ts.map +1 -0
  187. package/dist/hooks/useJBDebouncedValue.js +11 -0
  188. package/dist/hooks/useJBRedirect.d.ts +10 -0
  189. package/dist/hooks/useJBRedirect.d.ts.map +1 -0
  190. package/dist/hooks/useJBRedirect.js +11 -0
  191. package/dist/index.d.ts +8 -0
  192. package/dist/index.d.ts.map +1 -0
  193. package/dist/index.js +7 -0
  194. package/dist/query/createQueryClient.d.ts +8 -0
  195. package/dist/query/createQueryClient.d.ts.map +1 -0
  196. package/dist/query/createQueryClient.js +25 -0
  197. package/dist/query/http.d.ts +3 -0
  198. package/dist/query/http.d.ts.map +1 -0
  199. package/dist/query/http.js +12 -0
  200. package/dist/query/index.d.ts +3 -0
  201. package/dist/query/index.d.ts.map +1 -0
  202. package/dist/query/index.js +2 -0
  203. package/dist/utils/format.d.ts +4 -0
  204. package/dist/utils/format.d.ts.map +1 -0
  205. package/dist/utils/format.js +28 -0
  206. package/dist/utils/index.d.ts +4 -0
  207. package/dist/utils/index.d.ts.map +1 -0
  208. package/dist/utils/index.js +3 -0
  209. package/dist/utils/query.d.ts +2 -0
  210. package/dist/utils/query.d.ts.map +1 -0
  211. package/dist/utils/query.js +4 -0
  212. package/dist/utils/regex.d.ts +7 -0
  213. package/dist/utils/regex.d.ts.map +1 -0
  214. package/dist/utils/regex.js +6 -0
  215. package/package.json +85 -0
@@ -0,0 +1,103 @@
1
+ import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
2
+ export const authQueryKeys = {
3
+ all: ['auth'],
4
+ me: () => [...authQueryKeys.all, 'me'],
5
+ social: () => [...authQueryKeys.all, 'social'],
6
+ account: () => [...authQueryKeys.all, 'account']
7
+ };
8
+ export const createAuthQueryHooks = (authClient) => {
9
+ const useMeQuery = (enabled = true) => useQuery({
10
+ queryKey: authQueryKeys.me(),
11
+ queryFn: () => authClient.getMe(),
12
+ enabled
13
+ });
14
+ const useLoginMutation = () => {
15
+ const queryClient = useQueryClient();
16
+ return useMutation({
17
+ mutationFn: (payload) => authClient.loginBasic(payload),
18
+ onSuccess: async () => {
19
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
20
+ }
21
+ });
22
+ };
23
+ const useSwitchProfileMutation = () => {
24
+ const queryClient = useQueryClient();
25
+ return useMutation({
26
+ mutationFn: (payload) => authClient.switchProfile(payload),
27
+ onSuccess: async () => {
28
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
29
+ }
30
+ });
31
+ };
32
+ const useSocialLoginMutation = () => {
33
+ const queryClient = useQueryClient();
34
+ return useMutation({
35
+ mutationFn: (payload) => authClient.loginSocial(payload),
36
+ onSuccess: async () => {
37
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
38
+ }
39
+ });
40
+ };
41
+ const useLinkSocialMutation = () => {
42
+ const queryClient = useQueryClient();
43
+ return useMutation({
44
+ mutationFn: (payload) => authClient.linkSocial(payload),
45
+ onSuccess: async () => {
46
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.social() });
47
+ }
48
+ });
49
+ };
50
+ const useUnlinkSocialMutation = () => {
51
+ const queryClient = useQueryClient();
52
+ return useMutation({
53
+ mutationFn: (payload) => authClient.unlinkSocial(payload),
54
+ onSuccess: async () => {
55
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.social() });
56
+ }
57
+ });
58
+ };
59
+ const useAccountUpdateMutation = () => {
60
+ const queryClient = useQueryClient();
61
+ return useMutation({
62
+ mutationFn: ({ payload, method }) => authClient.updateAccount(payload, method),
63
+ onSuccess: async () => {
64
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
65
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.account() });
66
+ }
67
+ });
68
+ };
69
+ const useDeleteAccountMutation = () => {
70
+ const queryClient = useQueryClient();
71
+ return useMutation({
72
+ mutationFn: (payload) => authClient.deleteAccount(payload),
73
+ onSuccess: async () => {
74
+ queryClient.setQueryData(authQueryKeys.me(), null);
75
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
76
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.account() });
77
+ }
78
+ });
79
+ };
80
+ const useLogoutMutation = () => {
81
+ const queryClient = useQueryClient();
82
+ return useMutation({
83
+ mutationFn: async () => {
84
+ authClient.logout();
85
+ },
86
+ onSuccess: async () => {
87
+ queryClient.setQueryData(authQueryKeys.me(), null);
88
+ await queryClient.invalidateQueries({ queryKey: authQueryKeys.me() });
89
+ }
90
+ });
91
+ };
92
+ return {
93
+ useMeQuery,
94
+ useLoginMutation,
95
+ useSocialLoginMutation,
96
+ useLinkSocialMutation,
97
+ useUnlinkSocialMutation,
98
+ useAccountUpdateMutation,
99
+ useDeleteAccountMutation,
100
+ useSwitchProfileMutation,
101
+ useLogoutMutation
102
+ };
103
+ };
@@ -0,0 +1,37 @@
1
+ import { ComponentType, ReactElement, ReactNode } from 'react';
2
+ import { JBAppConfig, JBAuthProfileRoleOption } from '../config';
3
+ import { AuthLinkComponent, AuthMessageSectionProps, AuthPageLayoutVariant } from './ui';
4
+ type AuthRouteKey = 'signIn' | 'signUp' | 'forgotPassword' | 'resetPassword' | 'signOut' | 'accountConfirmation';
5
+ export type AuthPageWrapperProps = {
6
+ routeKey: AuthRouteKey;
7
+ children: ReactNode;
8
+ layoutVariant?: AuthPageLayoutVariant;
9
+ messageSectionProps?: AuthMessageSectionProps;
10
+ };
11
+ export type AuthRouteItem<TMeta extends Record<string, unknown> = Record<string, unknown>> = {
12
+ path: string;
13
+ element: ReactElement;
14
+ } & TMeta;
15
+ export type CreateAuthRoutesOptions<TMeta extends Record<string, unknown> = Record<string, unknown>> = {
16
+ basePath?: string;
17
+ pages?: Partial<Record<AuthRouteKey, ComponentType>>;
18
+ autoFuseViews?: boolean;
19
+ linkComponent?: AuthLinkComponent;
20
+ jbWebConfig?: JBAppConfig;
21
+ signUpRoleOptions?: JBAuthProfileRoleOption[];
22
+ defaultSignUpRole?: string;
23
+ onSignUpSuccess?: (values: {
24
+ email: string;
25
+ detail?: string;
26
+ response: Record<string, unknown>;
27
+ }) => void;
28
+ pageComponent?: ComponentType<AuthPageWrapperProps>;
29
+ layoutVariant?: AuthPageLayoutVariant;
30
+ messageSectionProps?: AuthMessageSectionProps;
31
+ wrapperPropsByRoute?: Partial<Record<AuthRouteKey, Pick<AuthPageWrapperProps, 'layoutVariant' | 'messageSectionProps'>>>;
32
+ routeMeta?: Partial<Record<AuthRouteKey, TMeta>>;
33
+ paths?: Partial<Record<AuthRouteKey, string>>;
34
+ };
35
+ export declare function createAuthRoutes<TMeta extends Record<string, unknown> = Record<string, unknown>>(options: CreateAuthRoutesOptions<TMeta>): Array<AuthRouteItem<TMeta>>;
36
+ export {};
37
+ //# sourceMappingURL=routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/auth/routes.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC/D,OAAO,EACL,WAAW,EACX,uBAAuB,EAIxB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,MAAM,CAAC;AAEzF,KAAK,YAAY,GACb,QAAQ,GACR,QAAQ,GACR,gBAAgB,GAChB,eAAe,GACf,SAAS,GACT,qBAAqB,CAAC;AAE1B,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IAC3F,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,YAAY,CAAC;CACvB,GAAG,KAAK,CAAC;AAEV,MAAM,MAAM,uBAAuB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;IACrG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IACrD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,iBAAiB,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC9C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,KAAK,IAAI,CAAC;IACX,aAAa,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACpD,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,mBAAmB,CAAC,EAAE,uBAAuB,CAAC;IAC9C,mBAAmB,CAAC,EAAE,OAAO,CAC3B,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,oBAAoB,EAAE,eAAe,GAAG,qBAAqB,CAAC,CAAC,CAC1F,CAAC;IACF,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;CAC/C,CAAC;AAyCF,wBAAgB,gBAAgB,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9F,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,GACtC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAoE7B"}
@@ -0,0 +1,73 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { getAuthDefaultProfileRole, getAuthSignupProfileRoles, getAuthSocialConfig } from '../config';
3
+ import { createFuseAuthViews } from './fuse';
4
+ const defaultPaths = {
5
+ signIn: 'sign-in',
6
+ signUp: 'sign-up',
7
+ forgotPassword: 'forgot-password',
8
+ resetPassword: 'reset-password',
9
+ signOut: 'sign-out',
10
+ accountConfirmation: 'verify-email'
11
+ };
12
+ const normalizePath = (basePath, routePath) => {
13
+ const cleanBasePath = (basePath ?? '').replace(/^\/+|\/+$/g, '');
14
+ const cleanRoutePath = routePath.replace(/^\/+|\/+$/g, '');
15
+ if (!cleanBasePath) {
16
+ return cleanRoutePath;
17
+ }
18
+ return `${cleanBasePath}/${cleanRoutePath}`;
19
+ };
20
+ const renderRouteElement = (Page, routeKey, Wrapper, wrapperProps) => {
21
+ if (!Wrapper) {
22
+ return _jsx(Page, {});
23
+ }
24
+ return (_jsx(Wrapper, { routeKey: routeKey, ...(wrapperProps ?? {}), children: _jsx(Page, {}) }));
25
+ };
26
+ export function createAuthRoutes(options) {
27
+ const { basePath, pages, autoFuseViews, linkComponent, jbWebConfig, signUpRoleOptions, defaultSignUpRole, onSignUpSuccess, pageComponent, layoutVariant, messageSectionProps, wrapperPropsByRoute, routeMeta, paths } = options;
28
+ const resolvedSignUpRoleOptions = signUpRoleOptions ?? (jbWebConfig ? getAuthSignupProfileRoles(jbWebConfig) : undefined);
29
+ const resolvedDefaultSignUpRole = defaultSignUpRole ?? (jbWebConfig ? getAuthDefaultProfileRole(jbWebConfig) : undefined);
30
+ const resolvedSocialConfig = jbWebConfig ? getAuthSocialConfig(jbWebConfig) : undefined;
31
+ const resolvedPaths = { ...defaultPaths, ...(paths ?? {}) };
32
+ const accountConfirmationRoutePath = normalizePath(basePath, resolvedPaths.accountConfirmation);
33
+ const accountConfirmationPath = `/${accountConfirmationRoutePath}`;
34
+ const autoGeneratedPages = autoFuseViews && linkComponent
35
+ ? (() => {
36
+ const views = createFuseAuthViews({
37
+ LinkComponent: linkComponent,
38
+ accountConfirmationPath,
39
+ signUpRoleOptions: resolvedSignUpRoleOptions,
40
+ defaultSignUpRole: resolvedDefaultSignUpRole,
41
+ socialConfig: resolvedSocialConfig,
42
+ onSignUpSuccess
43
+ });
44
+ return {
45
+ signIn: views.SignInPageView,
46
+ signUp: views.SignUpPageView,
47
+ forgotPassword: views.ForgotPasswordPageView,
48
+ resetPassword: views.ResetPasswordPageView,
49
+ signOut: views.SignOutPageView,
50
+ accountConfirmation: views.AccountConfirmationPageView
51
+ };
52
+ })()
53
+ : undefined;
54
+ const resolvedPages = pages ?? autoGeneratedPages;
55
+ if (!resolvedPages) {
56
+ throw new Error('createAuthRoutes requires "pages" or "autoFuseViews + linkComponent".');
57
+ }
58
+ return Object.keys(resolvedPaths)
59
+ .filter((routeKey) => !!resolvedPages[routeKey])
60
+ .map((routeKey) => {
61
+ const page = resolvedPages[routeKey];
62
+ const wrapperProps = {
63
+ layoutVariant,
64
+ messageSectionProps,
65
+ ...(wrapperPropsByRoute?.[routeKey] ?? {})
66
+ };
67
+ return {
68
+ path: normalizePath(basePath, resolvedPaths[routeKey]),
69
+ element: renderRouteElement(page, routeKey, pageComponent, wrapperProps),
70
+ ...(routeMeta?.[routeKey] ?? {})
71
+ };
72
+ });
73
+ }
@@ -0,0 +1,76 @@
1
+ import { LoginSocialPayload, SocialProvider } from '../types';
2
+ type SocialProviderClientConfig = {
3
+ clientId: string;
4
+ redirectUri?: string;
5
+ scope?: string;
6
+ };
7
+ type GoogleCodeResponse = {
8
+ code?: string;
9
+ error?: string;
10
+ };
11
+ type GoogleCredentialResponse = {
12
+ credential?: string;
13
+ };
14
+ type AppleSignInResponse = {
15
+ authorization?: {
16
+ code?: string;
17
+ id_token?: string;
18
+ };
19
+ };
20
+ type FacebookLoginResponse = {
21
+ authResponse?: {
22
+ accessToken?: string;
23
+ };
24
+ };
25
+ declare global {
26
+ interface Window {
27
+ google?: {
28
+ accounts?: {
29
+ id?: {
30
+ initialize: (options: {
31
+ client_id: string;
32
+ callback: (response: GoogleCredentialResponse) => void;
33
+ }) => void;
34
+ prompt: () => void;
35
+ cancel: () => void;
36
+ };
37
+ oauth2?: {
38
+ initCodeClient: (options: {
39
+ client_id: string;
40
+ scope: string;
41
+ redirect_uri?: string;
42
+ ux_mode: 'popup';
43
+ callback: (response: GoogleCodeResponse) => void;
44
+ }) => {
45
+ requestCode: () => void;
46
+ };
47
+ };
48
+ };
49
+ };
50
+ AppleID?: {
51
+ auth: {
52
+ init: (options: {
53
+ clientId: string;
54
+ scope: string;
55
+ redirectURI: string;
56
+ usePopup: boolean;
57
+ }) => void;
58
+ signIn: () => Promise<AppleSignInResponse>;
59
+ };
60
+ };
61
+ FB?: {
62
+ init: (options: {
63
+ appId: string;
64
+ cookie: boolean;
65
+ xfbml: boolean;
66
+ version: string;
67
+ }) => void;
68
+ login: (callback: (response: FacebookLoginResponse) => void, options?: {
69
+ scope?: string;
70
+ }) => void;
71
+ };
72
+ }
73
+ }
74
+ export declare const authenticateWithSocialProvider: (provider: SocialProvider, config: SocialProviderClientConfig) => Promise<Pick<LoginSocialPayload, "provider" | "authorizationCode" | "idToken" | "accessToken" | "redirectUri" | "clientId">>;
75
+ export {};
76
+ //# sourceMappingURL=providerAuth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerAuth.d.ts","sourceRoot":"","sources":["../../../src/auth/social/providerAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE9D,KAAK,0BAA0B,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,aAAa,CAAC,EAAE;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,KAAK,qBAAqB,GAAG;IAC3B,YAAY,CAAC,EAAE;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,CAAC,EAAE;YACP,QAAQ,CAAC,EAAE;gBACT,EAAE,CAAC,EAAE;oBACH,UAAU,EAAE,CAAC,OAAO,EAAE;wBACpB,SAAS,EAAE,MAAM,CAAC;wBAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,wBAAwB,KAAK,IAAI,CAAC;qBACxD,KAAK,IAAI,CAAC;oBACX,MAAM,EAAE,MAAM,IAAI,CAAC;oBACnB,MAAM,EAAE,MAAM,IAAI,CAAC;iBACpB,CAAC;gBACF,MAAM,CAAC,EAAE;oBACP,cAAc,EAAE,CAAC,OAAO,EAAE;wBACxB,SAAS,EAAE,MAAM,CAAC;wBAClB,KAAK,EAAE,MAAM,CAAC;wBACd,YAAY,CAAC,EAAE,MAAM,CAAC;wBACtB,OAAO,EAAE,OAAO,CAAC;wBACjB,QAAQ,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAC;qBAClD,KAAK;wBAAE,WAAW,EAAE,MAAM,IAAI,CAAA;qBAAE,CAAC;iBACnC,CAAC;aACH,CAAC;SACH,CAAC;QACF,OAAO,CAAC,EAAE;YACR,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC,OAAO,EAAE;oBACd,QAAQ,EAAE,MAAM,CAAC;oBACjB,KAAK,EAAE,MAAM,CAAC;oBACd,WAAW,EAAE,MAAM,CAAC;oBACpB,QAAQ,EAAE,OAAO,CAAC;iBACnB,KAAK,IAAI,CAAC;gBACX,MAAM,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;aAC5C,CAAC;SACH,CAAC;QACF,EAAE,CAAC,EAAE;YACH,IAAI,EAAE,CAAC,OAAO,EAAE;gBACd,KAAK,EAAE,MAAM,CAAC;gBACd,MAAM,EAAE,OAAO,CAAC;gBAChB,KAAK,EAAE,OAAO,CAAC;gBACf,OAAO,EAAE,MAAM,CAAC;aACjB,KAAK,IAAI,CAAC;YACX,KAAK,EAAE,CACL,QAAQ,EAAE,CAAC,QAAQ,EAAE,qBAAqB,KAAK,IAAI,EACnD,OAAO,CAAC,EAAE;gBACR,KAAK,CAAC,EAAE,MAAM,CAAC;aAChB,KACE,IAAI,CAAC;SACX,CAAC;KACH;CACF;AAyJD,eAAO,MAAM,8BAA8B,GACzC,UAAU,cAAc,EACxB,QAAQ,0BAA0B,KACjC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,mBAAmB,GAAG,SAAS,GAAG,aAAa,GAAG,aAAa,GAAG,UAAU,CAAC,CAc7H,CAAC"}
@@ -0,0 +1,130 @@
1
+ const scriptLoaders = new Map();
2
+ const loadScript = (src) => {
3
+ const existing = scriptLoaders.get(src);
4
+ if (existing) {
5
+ return existing;
6
+ }
7
+ const loader = new Promise((resolve, reject) => {
8
+ if (typeof window === 'undefined' || typeof document === 'undefined') {
9
+ reject(new Error('Social auth is only available in browser environments.'));
10
+ return;
11
+ }
12
+ const script = document.createElement('script');
13
+ script.src = src;
14
+ script.async = true;
15
+ script.defer = true;
16
+ script.onload = () => resolve();
17
+ script.onerror = () => reject(new Error(`Failed to load script: ${src}`));
18
+ document.head.appendChild(script);
19
+ });
20
+ scriptLoaders.set(src, loader);
21
+ return loader;
22
+ };
23
+ const ensureGoogleSdk = async () => {
24
+ await loadScript('https://accounts.google.com/gsi/client');
25
+ if (!window.google?.accounts?.id?.initialize) {
26
+ throw new Error('Google SDK is not available.');
27
+ }
28
+ };
29
+ const ensureAppleSdk = async () => {
30
+ await loadScript('https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js');
31
+ if (!window.AppleID?.auth) {
32
+ throw new Error('Apple SDK is not available.');
33
+ }
34
+ };
35
+ const ensureFacebookSdk = async (clientId) => {
36
+ await loadScript('https://connect.facebook.net/en_US/sdk.js');
37
+ if (!window.FB?.init) {
38
+ throw new Error('Facebook SDK is not available.');
39
+ }
40
+ window.FB.init({
41
+ appId: clientId,
42
+ cookie: true,
43
+ xfbml: false,
44
+ version: 'v20.0'
45
+ });
46
+ };
47
+ const authenticateWithGoogle = async (config) => {
48
+ await ensureGoogleSdk();
49
+ const response = await new Promise((resolve, reject) => {
50
+ let settled = false;
51
+ const timeoutId = window.setTimeout(() => {
52
+ if (settled) {
53
+ return;
54
+ }
55
+ settled = true;
56
+ reject(new Error('Google authentication timeout.'));
57
+ }, 30000);
58
+ window.google.accounts.id.initialize({
59
+ client_id: config.clientId,
60
+ callback: (credentialResponse) => {
61
+ if (settled) {
62
+ return;
63
+ }
64
+ settled = true;
65
+ window.clearTimeout(timeoutId);
66
+ resolve(credentialResponse);
67
+ }
68
+ });
69
+ window.google.accounts.id.prompt();
70
+ });
71
+ if (!response.credential) {
72
+ throw new Error('Google authentication failed.');
73
+ }
74
+ return {
75
+ provider: 'google',
76
+ idToken: response.credential,
77
+ clientId: config.clientId
78
+ };
79
+ };
80
+ const authenticateWithApple = async (config) => {
81
+ await ensureAppleSdk();
82
+ window.AppleID.auth.init({
83
+ clientId: config.clientId,
84
+ scope: config.scope ?? 'name email',
85
+ redirectURI: config.redirectUri || window.location.origin,
86
+ usePopup: true
87
+ });
88
+ const response = await window.AppleID.auth.signIn();
89
+ const authorizationCode = response.authorization?.code;
90
+ const idToken = response.authorization?.id_token;
91
+ if (!authorizationCode && !idToken) {
92
+ throw new Error('Apple authentication failed.');
93
+ }
94
+ return {
95
+ provider: 'apple',
96
+ authorizationCode,
97
+ idToken,
98
+ redirectUri: config.redirectUri,
99
+ clientId: config.clientId
100
+ };
101
+ };
102
+ const authenticateWithFacebook = async (config) => {
103
+ await ensureFacebookSdk(config.clientId);
104
+ const response = await new Promise((resolve) => {
105
+ window.FB.login(resolve, {
106
+ scope: config.scope ?? 'email,public_profile'
107
+ });
108
+ });
109
+ const accessToken = response.authResponse?.accessToken;
110
+ if (!accessToken) {
111
+ throw new Error('Facebook authentication failed.');
112
+ }
113
+ return {
114
+ provider: 'facebook',
115
+ accessToken,
116
+ clientId: config.clientId
117
+ };
118
+ };
119
+ export const authenticateWithSocialProvider = async (provider, config) => {
120
+ if (!config.clientId?.trim()) {
121
+ throw new Error(`Missing social clientId for provider "${provider}".`);
122
+ }
123
+ if (provider === 'google') {
124
+ return authenticateWithGoogle(config);
125
+ }
126
+ if (provider === 'facebook') {
127
+ return authenticateWithFacebook(config);
128
+ }
129
+ return authenticateWithApple(config);
130
+ };
@@ -0,0 +1,3 @@
1
+ import { TokenStorage } from './types';
2
+ export declare const createLocalStorageTokenStorage: (tokenStorageKey: string) => TokenStorage;
3
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/auth/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAO,MAAM,8BAA8B,GAAI,iBAAiB,MAAM,KAAG,YAiBxE,CAAC"}
@@ -0,0 +1,20 @@
1
+ export const createLocalStorageTokenStorage = (tokenStorageKey) => {
2
+ const hasWindow = typeof window !== 'undefined' && !!window.localStorage;
3
+ return {
4
+ getAccessToken: () => {
5
+ if (!hasWindow)
6
+ return null;
7
+ return window.localStorage.getItem(tokenStorageKey);
8
+ },
9
+ setAccessToken: (token) => {
10
+ if (!hasWindow)
11
+ return;
12
+ window.localStorage.setItem(tokenStorageKey, token);
13
+ },
14
+ removeAccessToken: () => {
15
+ if (!hasWindow)
16
+ return;
17
+ window.localStorage.removeItem(tokenStorageKey);
18
+ }
19
+ };
20
+ };
@@ -0,0 +1,208 @@
1
+ import { AxiosRequestConfig } from 'axios';
2
+ import { Gender } from './constants';
3
+ export type TokenPair = {
4
+ accessToken: string;
5
+ refreshToken: string;
6
+ };
7
+ export type TokenStorage = {
8
+ getAccessToken: () => string | null;
9
+ setAccessToken: (token: string) => void;
10
+ removeAccessToken: () => void;
11
+ };
12
+ export type JbDrfAuthEndpoints = {
13
+ loginBasic: string;
14
+ loginSocial: string;
15
+ loginSocialLink: string;
16
+ loginSocialUnlink: string;
17
+ loginOtpVerify: string;
18
+ otpRequest: string;
19
+ register: string;
20
+ accountConfirmation: string;
21
+ accountConfirmationResend: string;
22
+ me: string;
23
+ profilePicture: string;
24
+ refresh: string;
25
+ switchProfile: string;
26
+ profiles: string;
27
+ accountUpdate: string;
28
+ accountDelete: string;
29
+ passwordResetRequest: string;
30
+ passwordResetConfirm: string;
31
+ passwordResetChange: string;
32
+ adminCreateSuperuser: string;
33
+ adminCreateStaff: string;
34
+ };
35
+ export type JbDrfAuthConfig = {
36
+ apiBaseUrl: string;
37
+ apiBasePath?: string;
38
+ endpoints?: Partial<JbDrfAuthEndpoints>;
39
+ tokenStorageKey?: string;
40
+ refreshTokenStorageKey?: string;
41
+ tokenStorage?: TokenStorage;
42
+ defaultClient?: 'web' | 'mobile';
43
+ onUnauthorized?: () => void;
44
+ };
45
+ export type LoginBasicPayload = {
46
+ login: string;
47
+ password: string;
48
+ client?: 'web' | 'mobile';
49
+ device?: {
50
+ platform?: string;
51
+ name?: string;
52
+ token?: string;
53
+ notificationToken?: string;
54
+ };
55
+ };
56
+ export type SocialProvider = 'google' | 'facebook' | 'apple';
57
+ export type SocialDevicePayload = {
58
+ platform?: string;
59
+ name?: string;
60
+ token?: string;
61
+ notificationToken?: string;
62
+ };
63
+ export type LoginSocialPayload = {
64
+ provider: SocialProvider;
65
+ idToken?: string;
66
+ accessToken?: string;
67
+ authorizationCode?: string;
68
+ redirectUri?: string;
69
+ codeVerifier?: string;
70
+ clientId?: string;
71
+ role?: string;
72
+ client?: 'web' | 'mobile';
73
+ termsAndConditionsAccepted?: boolean;
74
+ device?: SocialDevicePayload;
75
+ };
76
+ export type LinkSocialPayload = {
77
+ provider: SocialProvider;
78
+ idToken?: string;
79
+ accessToken?: string;
80
+ authorizationCode?: string;
81
+ redirectUri?: string;
82
+ codeVerifier?: string;
83
+ clientId?: string;
84
+ };
85
+ export type UnlinkSocialPayload = {
86
+ provider: SocialProvider;
87
+ };
88
+ export type SwitchProfilePayload = {
89
+ profile: number;
90
+ client?: 'web' | 'mobile';
91
+ device?: {
92
+ platform?: string;
93
+ name?: string;
94
+ token?: string;
95
+ notificationToken?: string;
96
+ };
97
+ };
98
+ export type ProfilePicturePayload = {
99
+ profile?: number;
100
+ picture: string;
101
+ };
102
+ export type RefreshPayload = {
103
+ refreshToken?: string;
104
+ };
105
+ export type OtpChannel = 'sms' | 'email';
106
+ export type RequestOtpPayload = {
107
+ channel: OtpChannel;
108
+ email?: string;
109
+ phone?: string;
110
+ };
111
+ export type VerifyOtpPayload = {
112
+ channel: OtpChannel;
113
+ code: string;
114
+ client?: 'web' | 'mobile';
115
+ role?: string;
116
+ email?: string;
117
+ phone?: string;
118
+ device?: {
119
+ platform?: string;
120
+ name?: string;
121
+ token?: string;
122
+ notificationToken?: string;
123
+ };
124
+ };
125
+ export type RegisterPayload = {
126
+ email: string;
127
+ phone?: string | null;
128
+ username?: string | null;
129
+ password: string;
130
+ passwordConfirm?: string;
131
+ firstName?: string;
132
+ lastName1?: string;
133
+ lastName2?: string;
134
+ birthday?: string;
135
+ gender?: Gender;
136
+ role?: string;
137
+ termsAndConditionsAccepted?: boolean;
138
+ };
139
+ export type PasswordResetRequestPayload = {
140
+ email: string;
141
+ };
142
+ export type PasswordResetConfirmPayload = {
143
+ uid: string;
144
+ token: string;
145
+ newPassword: string;
146
+ newPasswordConfirm: string;
147
+ };
148
+ export type PasswordChangePayload = {
149
+ oldPassword: string;
150
+ newPassword: string;
151
+ newPasswordConfirm: string;
152
+ };
153
+ export type AccountUpdatePayload = {
154
+ email?: string;
155
+ username?: string;
156
+ phone?: string;
157
+ termsAndConditions?: boolean;
158
+ language?: string;
159
+ timezone?: string;
160
+ [key: string]: unknown;
161
+ };
162
+ export type DeleteAccountPayload = {
163
+ confirmation: boolean;
164
+ };
165
+ export type CreateProfilePayload = Record<string, unknown>;
166
+ export type UpdateProfilePayload = Record<string, unknown>;
167
+ export type CreateAdminUserPayload = {
168
+ email: string;
169
+ password: string;
170
+ };
171
+ export type AccountConfirmationPayload = {
172
+ uid: string;
173
+ token: string;
174
+ };
175
+ export type AccountConfirmationResendPayload = {
176
+ email: string;
177
+ };
178
+ export type JbDrfWebAuthUser = {
179
+ data: {
180
+ displayName: string;
181
+ photoUrl: string;
182
+ email: string;
183
+ username: string;
184
+ birthday: string | null;
185
+ shortcuts: string[];
186
+ };
187
+ loginRedirectUrl: string;
188
+ role: string[];
189
+ status: string;
190
+ };
191
+ export type JbDrfWebAuthResponse = {
192
+ user: JbDrfWebAuthUser;
193
+ activeProfile: Record<string, unknown>;
194
+ termsAndConditions?: string | null;
195
+ tokens?: TokenPair;
196
+ };
197
+ export type ApiDetailResponse = {
198
+ detail?: string;
199
+ emailSent?: boolean;
200
+ [key: string]: unknown;
201
+ };
202
+ export type ProfilesResponse = {
203
+ results?: Record<string, unknown>[];
204
+ } | Record<string, unknown>[];
205
+ export type CreateAuthenticatedAxiosOptions = {
206
+ requestConfig?: AxiosRequestConfig;
207
+ };
208
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}