@vritti/quantum-ui 0.1.18 → 0.1.20

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.
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { createContext, useContext, useState, useRef, useCallback, useEffect } from 'react';
3
3
  import { useNavigate } from 'react-router-dom';
4
- import { axios } from './utils/axios.js';
4
+ import { e as clearToken, a as axios, s as setToken } from './axios.js';
5
5
 
6
6
  const OnboardingContext = createContext(void 0);
7
7
  const useOnboarding = () => {
@@ -12,16 +12,32 @@ const useOnboarding = () => {
12
12
  return context;
13
13
  };
14
14
 
15
- const OnboardingProvider = ({ children }) => {
15
+ const OnboardingProvider = ({
16
+ children,
17
+ onboardingToken: initialToken,
18
+ onUnauthorized
19
+ }) => {
16
20
  const [data, setData] = useState(null);
17
21
  const [isLoading, setIsLoading] = useState(true);
18
22
  const navigate = useNavigate();
19
23
  const isFetchingRef = useRef(false);
24
+ const hasSetInitialTokenRef = useRef(false);
25
+ const handleUnauthorized = useCallback(() => {
26
+ clearToken("onboarding");
27
+ if (onUnauthorized) {
28
+ onUnauthorized();
29
+ } else {
30
+ navigate("/login", { replace: true });
31
+ }
32
+ }, [navigate, onUnauthorized]);
20
33
  const fetchOnboardingStatus = useCallback(async () => {
21
34
  if (isFetchingRef.current) return;
22
35
  isFetchingRef.current = true;
23
36
  try {
24
37
  const response = await axios.get("/onboarding/status");
38
+ if (response.data.onboardingToken) {
39
+ setToken("onboarding", response.data.onboardingToken);
40
+ }
25
41
  setData({
26
42
  ...response.data,
27
43
  isLoading: false,
@@ -30,7 +46,7 @@ const OnboardingProvider = ({ children }) => {
30
46
  } catch (err) {
31
47
  const axiosError = err;
32
48
  if (axiosError.response?.status === 401) {
33
- navigate("/login", { replace: true });
49
+ handleUnauthorized();
34
50
  } else {
35
51
  setData({
36
52
  onboardingToken: null,
@@ -51,20 +67,26 @@ const OnboardingProvider = ({ children }) => {
51
67
  isFetchingRef.current = false;
52
68
  setIsLoading(false);
53
69
  }
54
- }, [navigate]);
70
+ }, [handleUnauthorized]);
71
+ useEffect(() => {
72
+ if (initialToken && !hasSetInitialTokenRef.current) {
73
+ hasSetInitialTokenRef.current = true;
74
+ setToken("onboarding", initialToken);
75
+ }
76
+ }, [initialToken]);
55
77
  useEffect(() => {
56
78
  fetchOnboardingStatus();
57
- }, []);
79
+ }, [fetchOnboardingStatus]);
80
+ useEffect(() => {
81
+ if (data?.onboardingToken) {
82
+ setToken("onboarding", data.onboardingToken);
83
+ }
84
+ }, [data?.onboardingToken]);
58
85
  useEffect(() => {
59
- if (!data?.onboardingToken) return;
60
- const requestInterceptor = axios.interceptors.request.use((config) => {
61
- config.headers.Authorization = `Bearer ${data.onboardingToken}`;
62
- return config;
63
- });
64
86
  return () => {
65
- axios.interceptors.request.eject(requestInterceptor);
87
+ clearToken("onboarding");
66
88
  };
67
- }, [data?.onboardingToken]);
89
+ }, []);
68
90
  if (isLoading) {
69
91
  return /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center min-h-screen", children: /* @__PURE__ */ jsxs("div", { className: "text-center space-y-4", children: [
70
92
  /* @__PURE__ */ jsx("div", { className: "animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto" }),
@@ -1 +1 @@
1
- {"version":3,"file":"OnboardingProvider.js","sources":["../lib/context/OnboardingContext.tsx","../lib/context/OnboardingProvider.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nexport interface OnboardingData {\n userId: string;\n email: string;\n firstName: string;\n lastName: string;\n currentStep: string;\n onboardingComplete: boolean;\n accountStatus: string;\n emailVerified: boolean;\n phoneVerified: boolean;\n}\n\nexport interface OnboardingContextType extends OnboardingData {\n onboardingToken: string | null;\n isLoading: boolean;\n error: string | null;\n}\n\nexport const OnboardingContext = createContext<OnboardingContextType | undefined>(undefined);\n\nexport const useOnboarding = (): OnboardingContextType => {\n const context = useContext(OnboardingContext);\n if (!context) {\n throw new Error('useOnboarding must be used within an OnboardingProvider');\n }\n return context;\n};\n","import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { OnboardingContext, type OnboardingContextType, type OnboardingData } from './OnboardingContext';\nimport { axios } from '../utils/axios';\nimport type { AxiosError } from 'axios';\n\ninterface OnboardingProviderProps {\n children: React.ReactNode;\n}\n\ninterface OnboardingStatusResponse extends OnboardingData {\n onboardingToken: string;\n}\n\nexport const OnboardingProvider: React.FC<OnboardingProviderProps> = ({ children }) => {\n const [data, setData] = useState<OnboardingContextType | null>(null);\n const [isLoading, setIsLoading] = useState(true);\n const navigate = useNavigate();\n const isFetchingRef = useRef(false);\n\n const fetchOnboardingStatus = useCallback(async () => {\n // Prevent multiple simultaneous calls\n if (isFetchingRef.current) return;\n\n isFetchingRef.current = true;\n try {\n const response = await axios.get<OnboardingStatusResponse>('/onboarding/status');\n setData({\n ...response.data,\n isLoading: false,\n error: null,\n });\n } catch (err) {\n const axiosError = err as AxiosError;\n if (axiosError.response?.status === 401) {\n navigate('/login', { replace: true });\n } else {\n // Set error state for other failures (connection errors, etc)\n setData({\n onboardingToken: null,\n userId: '',\n email: '',\n firstName: '',\n lastName: '',\n currentStep: '',\n onboardingComplete: false,\n accountStatus: '',\n emailVerified: false,\n phoneVerified: false,\n isLoading: false,\n error: axiosError?.message || 'Failed to fetch onboarding status',\n });\n }\n } finally {\n isFetchingRef.current = false;\n setIsLoading(false);\n }\n }, [navigate]);\n\n // Only call once on mount with empty dependency array\n useEffect(() => {\n fetchOnboardingStatus();\n }, []);\n\n useEffect(() => {\n if (!data?.onboardingToken) return;\n\n // Request interceptor - Add authorization header\n const requestInterceptor = axios.interceptors.request.use((config) => {\n config.headers.Authorization = `Bearer ${data.onboardingToken}`;\n return config;\n });\n\n return () => {\n axios.interceptors.request.eject(requestInterceptor);\n };\n }, [data?.onboardingToken]);\n\n if (isLoading) {\n return (\n <div className='flex items-center justify-center min-h-screen'>\n <div className='text-center space-y-4'>\n <div className='animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto'></div>\n <p className='text-muted-foreground'>Loading...</p>\n </div>\n </div>\n );\n }\n\n return (\n <OnboardingContext.Provider value={data || {\n onboardingToken: null,\n userId: '',\n email: '',\n firstName: '',\n lastName: '',\n currentStep: '',\n onboardingComplete: false,\n accountStatus: '',\n emailVerified: false,\n phoneVerified: false,\n isLoading: false,\n error: null,\n }}>\n {children}\n </OnboardingContext.Provider>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OnboardingProvider.js","sources":["../lib/context/OnboardingContext.tsx","../lib/context/OnboardingProvider.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\n\nexport interface OnboardingData {\n userId: string;\n email: string;\n firstName: string;\n lastName: string;\n currentStep: string;\n onboardingComplete: boolean;\n accountStatus: string;\n emailVerified: boolean;\n phoneVerified: boolean;\n}\n\nexport interface OnboardingContextType extends OnboardingData {\n onboardingToken: string | null;\n isLoading: boolean;\n error: string | null;\n}\n\nexport const OnboardingContext = createContext<OnboardingContextType | undefined>(undefined);\n\nexport const useOnboarding = (): OnboardingContextType => {\n const context = useContext(OnboardingContext);\n if (!context) {\n throw new Error('useOnboarding must be used within an OnboardingProvider');\n }\n return context;\n};\n","import React, { useEffect, useState, useRef, useCallback } from 'react';\nimport { useNavigate } from 'react-router-dom';\nimport { OnboardingContext, type OnboardingContextType, type OnboardingData } from './OnboardingContext';\nimport { axios, setToken, clearToken } from '../utils/axios';\nimport type { AxiosError } from 'axios';\n\n/**\n * Props for the OnboardingProvider component\n */\ninterface OnboardingProviderProps {\n /** React children to render within the provider */\n children: React.ReactNode;\n /** Optional initial onboarding token to set before fetching status */\n onboardingToken?: string;\n /** Optional callback to handle unauthorized (401) responses */\n onUnauthorized?: () => void;\n}\n\n/**\n * API response structure for onboarding status endpoint\n */\ninterface OnboardingStatusResponse extends OnboardingData {\n onboardingToken: string;\n}\n\n/**\n * OnboardingProvider manages the onboarding state and token lifecycle.\n *\n * This provider integrates with the centralized axios token management system:\n * - Sets onboarding tokens automatically when available\n * - Clears tokens on 401 errors or unmount\n * - All axios requests automatically include the Authorization header\n *\n * @example\n * ```tsx\n * // Basic usage (fetches onboarding status on mount)\n * <OnboardingProvider>\n * <App />\n * </OnboardingProvider>\n *\n * // With initial token\n * <OnboardingProvider onboardingToken={token}>\n * <App />\n * </OnboardingProvider>\n *\n * // With custom unauthorized handler\n * <OnboardingProvider onUnauthorized={() => router.push('/custom-login')}>\n * <App />\n * </OnboardingProvider>\n * ```\n */\nexport const OnboardingProvider: React.FC<OnboardingProviderProps> = ({\n children,\n onboardingToken: initialToken,\n onUnauthorized\n}) => {\n const [data, setData] = useState<OnboardingContextType | null>(null);\n const [isLoading, setIsLoading] = useState(true);\n const navigate = useNavigate();\n const isFetchingRef = useRef(false);\n const hasSetInitialTokenRef = useRef(false);\n\n /**\n * Handle unauthorized (401) responses\n */\n const handleUnauthorized = useCallback(() => {\n // Clear the onboarding token\n clearToken('onboarding');\n\n // Call custom handler if provided, otherwise navigate to login\n if (onUnauthorized) {\n onUnauthorized();\n } else {\n navigate('/login', { replace: true });\n }\n }, [navigate, onUnauthorized]);\n\n /**\n * Fetch onboarding status from the API\n */\n const fetchOnboardingStatus = useCallback(async () => {\n // Prevent multiple simultaneous calls\n if (isFetchingRef.current) return;\n\n isFetchingRef.current = true;\n try {\n const response = await axios.get<OnboardingStatusResponse>('/onboarding/status');\n\n // Set the new token if provided by the API\n if (response.data.onboardingToken) {\n setToken('onboarding', response.data.onboardingToken);\n }\n\n setData({\n ...response.data,\n isLoading: false,\n error: null,\n });\n } catch (err) {\n const axiosError = err as AxiosError;\n if (axiosError.response?.status === 401) {\n handleUnauthorized();\n } else {\n // Set error state for other failures (connection errors, etc)\n setData({\n onboardingToken: null,\n userId: '',\n email: '',\n firstName: '',\n lastName: '',\n currentStep: '',\n onboardingComplete: false,\n accountStatus: '',\n emailVerified: false,\n phoneVerified: false,\n isLoading: false,\n error: axiosError?.message || 'Failed to fetch onboarding status',\n });\n }\n } finally {\n isFetchingRef.current = false;\n setIsLoading(false);\n }\n }, [handleUnauthorized]);\n\n /**\n * Set initial token if provided via props\n * This runs before fetching status to ensure the token is available for the API call\n */\n useEffect(() => {\n if (initialToken && !hasSetInitialTokenRef.current) {\n hasSetInitialTokenRef.current = true;\n setToken('onboarding', initialToken);\n }\n }, [initialToken]);\n\n /**\n * Fetch onboarding status on mount\n */\n useEffect(() => {\n fetchOnboardingStatus();\n }, [fetchOnboardingStatus]);\n\n /**\n * Update token when data changes\n * This handles tokens returned from the API that might differ from the initial token\n */\n useEffect(() => {\n if (data?.onboardingToken) {\n setToken('onboarding', data.onboardingToken);\n }\n }, [data?.onboardingToken]);\n\n /**\n * Clean up token on unmount\n */\n useEffect(() => {\n return () => {\n // Clear onboarding token when provider unmounts\n clearToken('onboarding');\n };\n }, []);\n\n if (isLoading) {\n return (\n <div className='flex items-center justify-center min-h-screen'>\n <div className='text-center space-y-4'>\n <div className='animate-spin rounded-full h-12 w-12 border-b-2 border-primary mx-auto'></div>\n <p className='text-muted-foreground'>Loading...</p>\n </div>\n </div>\n );\n }\n\n return (\n <OnboardingContext.Provider value={data || {\n onboardingToken: null,\n userId: '',\n email: '',\n firstName: '',\n lastName: '',\n currentStep: '',\n onboardingComplete: false,\n accountStatus: '',\n emailVerified: false,\n phoneVerified: false,\n isLoading: false,\n error: null,\n }}>\n {children}\n </OnboardingContext.Provider>\n );\n};\n"],"names":[],"mappings":"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"}
package/dist/axios.d.ts CHANGED
@@ -4,4 +4,20 @@ declare const axios: AxiosInstance;
4
4
  export { axios }
5
5
  export default axios;
6
6
 
7
+ export declare const clearAllTokens: () => void;
8
+
9
+ export declare const clearCsrfToken: () => void;
10
+
11
+ export declare const clearToken: (type: TokenType) => void;
12
+
13
+ export declare const getCsrfToken: () => string | null;
14
+
15
+ export declare const getToken: (type: TokenType) => string | null;
16
+
17
+ export declare const setCsrfToken: (token: string) => void;
18
+
19
+ export declare const setToken: (type: TokenType, token: string) => void;
20
+
21
+ export declare type TokenType = 'onboarding' | 'access' | 'refresh';
22
+
7
23
  export { }