delta-auth-next 0.1.73 → 0.1.75

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 +1 @@
1
- {"version":3,"file":"DeltaProvider.d.ts","sourceRoot":"","sources":["../src/DeltaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAAe,eAAe,EAAE,MAAM,WAAW,CAAC;AAKzD,UAAU,KAAK;IACb,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,2CAmK5D"}
1
+ {"version":3,"file":"DeltaProvider.d.ts","sourceRoot":"","sources":["../src/DeltaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAAe,eAAe,EAAE,MAAM,WAAW,CAAC;AAKzD,UAAU,KAAK;IACb,MAAM,EAAE,eAAe,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,2CA6L5D"}
@@ -9,6 +9,8 @@ export function DeltaAuthProvider({ config, children }) {
9
9
  const [app, setApp] = useState(null);
10
10
  const [loading, setLoading] = useState(true);
11
11
  const [enabled, setEnabled] = useState(true);
12
+ const [accessToken, setAccessToken] = useState(null);
13
+ const [expiresAt, setExpiresAt] = useState(null); // Unix timestamp
12
14
  const { show, Toast } = useSimpleToast();
13
15
  /* ---------------------------------- */
14
16
  /* Stable Auth Client Instance */
@@ -30,23 +32,8 @@ export function DeltaAuthProvider({ config, children }) {
30
32
  /* Config Validation + Initial Boot */
31
33
  /* ---------------------------------- */
32
34
  useEffect(() => {
33
- // Reset state when config changes
35
+ let isMounted = true; // Prevents state updates on unmounted component
34
36
  setLoading(true);
35
- setApp(null);
36
- setDeltaUser(null);
37
- setEnabled(true);
38
- if (!config?.publishableKey) {
39
- show('DeltaAuth: publishableKey is required');
40
- setEnabled(false);
41
- setLoading(false);
42
- return;
43
- }
44
- if (!config?.authDomain) {
45
- show('DeltaAuth: authDomain is required');
46
- setEnabled(false);
47
- setLoading(false);
48
- return;
49
- }
50
37
  const bootstrap = async () => {
51
38
  try {
52
39
  const res = await fetch(`${config.backendUrl}/auth/app-info?client_id=${config.publishableKey}`, { credentials: 'include' });
@@ -54,17 +41,30 @@ export function DeltaAuthProvider({ config, children }) {
54
41
  throw new Error('Failed to fetch app metadata');
55
42
  }
56
43
  const data = await res.json();
57
- setApp(data.app ?? null);
58
- setDeltaUser(data.user ?? null);
44
+ if (isMounted) {
45
+ setApp(data.app ?? null);
46
+ setDeltaUser(data.user ?? null);
47
+ setAccessToken(data.accessToken);
48
+ setExpiresAt(data.expiresAt);
49
+ }
59
50
  }
60
51
  catch (err) {
61
52
  console.warn('DeltaAuth bootstrap failed:', err);
62
53
  }
63
54
  finally {
64
- setLoading(false);
55
+ if (isMounted)
56
+ setLoading(false);
65
57
  }
66
58
  };
67
- bootstrap();
59
+ if (config.publishableKey && config.authDomain) {
60
+ bootstrap();
61
+ }
62
+ else {
63
+ setLoading(false); // Only stop loading if we can't even try to bootstrap
64
+ }
65
+ return () => {
66
+ isMounted = false;
67
+ };
68
68
  }, [config.publishableKey, config.authDomain]);
69
69
  /* ---------------------------------- */
70
70
  /* Manual User Refresh */
@@ -74,24 +74,52 @@ export function DeltaAuthProvider({ config, children }) {
74
74
  return null;
75
75
  setLoading(true);
76
76
  try {
77
- const res = await client.getCurrentUser();
78
- const user = res.user ?? null;
79
- setDeltaUser(user);
80
- // Only overwrite app if backend provides it
81
- if (res.application) {
77
+ const res = await client.getCurrentUser(); // This gets { user, accessToken, expiresAt, ... }
78
+ // Update global SDK state
79
+ setDeltaUser(res.user);
80
+ setAccessToken(res.accessToken);
81
+ setExpiresAt(res.expiresAt);
82
+ if (res.application)
82
83
  setApp(res.application);
83
- }
84
- return user;
84
+ return res; // <--- CHANGE THIS: Return the whole object, not just user
85
85
  }
86
86
  catch (err) {
87
- console.warn('Failed to refresh user:', err);
87
+ console.warn('DeltaAuth: Refresh failed', err);
88
88
  setDeltaUser(null);
89
+ setAccessToken(null);
90
+ setExpiresAt(null);
89
91
  return null;
90
92
  }
91
93
  finally {
92
94
  setLoading(false);
93
95
  }
94
96
  }, [client, enabled]);
97
+ useEffect(() => {
98
+ if (!enabled || !deltaUser || !expiresAt)
99
+ return;
100
+ // Calculate delay: (Expiration Time - Current Time) - 60s buffer
101
+ const delay = expiresAt - Date.now() - 60 * 1000;
102
+ if (delay <= 0) {
103
+ fetchUser();
104
+ return;
105
+ }
106
+ // Schedule the NEXT trip to the server exactly when needed
107
+ const timer = setTimeout(() => {
108
+ fetchUser();
109
+ }, delay);
110
+ return () => clearTimeout(timer);
111
+ }, [enabled, deltaUser, expiresAt, fetchUser]);
112
+ const getAccessToken = useCallback(async () => {
113
+ const buffer = 30 * 1000;
114
+ // 1. Check if the current memory token is still valid
115
+ if (accessToken && expiresAt && Date.now() + buffer < expiresAt) {
116
+ return accessToken;
117
+ }
118
+ // 2. Otherwise, trigger the silent refresh
119
+ const res = await fetchUser();
120
+ // 3. Now 'res' contains 'accessToken' because we changed the return above
121
+ return res?.accessToken ?? null;
122
+ }, [accessToken, expiresAt, fetchUser]);
95
123
  /* ---------------------------------- */
96
124
  /* Auto Refresh (Optional) */
97
125
  /* ---------------------------------- */
@@ -124,6 +152,7 @@ export function DeltaAuthProvider({ config, children }) {
124
152
  isAuthenticated: Boolean(deltaUser),
125
153
  client,
126
154
  fetchUser,
155
+ getAccessToken,
127
156
  config,
128
157
  }, children: children }), _jsx(Toast, {})] }));
129
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DeltaProvider.js","sourceRoot":"","sources":["../src/DeltaProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeltaProvider.js","sourceRoot":"","sources":["../src/DeltaProvider.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ export declare function createAuthClient(config: DeltaAuthConfig): {
3
3
  http: import("axios").AxiosInstance;
4
4
  getCurrentUser: () => Promise<{
5
5
  user: any;
6
+ accessToken: any;
7
+ expiresAt: any;
6
8
  application: any;
7
9
  }>;
8
10
  login: (options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"authClient.d.ts","sourceRoot":"","sources":["../../src/client/authClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAA;AAS1C,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe;;;;;;sBAyBvB;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;EAqCvD"}
1
+ {"version":3,"file":"authClient.d.ts","sourceRoot":"","sources":["../../src/client/authClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,YAAY,CAAA;AAS1C,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe;;;;;;;;sBA2BvB;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;;EAqCvD"}
@@ -12,6 +12,8 @@ export function createAuthClient(config) {
12
12
  const res = await http.get('/auth/me');
13
13
  return {
14
14
  user: res.data?.data?.user ?? null,
15
+ accessToken: res.data?.accessToken ?? null,
16
+ expiresAt: res.data?.expiresAt ?? null,
15
17
  application: res.data?.secured_application ?? null,
16
18
  };
17
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authClient.js","sourceRoot":"","sources":["../../src/client/authClient.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAE3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAG1C,sCAAsC;AACtC,yBAAyB;AACzB,6BAA6B;AAC7B,yBAAyB;AACzB,6BAA6B;AAC7B,IAAI;AAEJ,MAAM,UAAU,gBAAgB,CAAC,MAAuB;IACtD,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEtC,KAAK,UAAU,cAAc;QAC3B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvC,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI;YAClC,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,mBAAmB,IAAI,IAAI;SACnD,CAAC;IACJ,CAAC;IACD,KAAK,UAAU,YAAY;QACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAE3D,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;aACnE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAEtB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,OAAiC;QACpD,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,cAAc;YAAE,OAAO;QAEzD,MAAM,WAAW,GAAG,OAAO,EAAE,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAElE,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAClC,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAE7C,IAAI,GAAG,GACL,GAAG,MAAM,CAAC,UAAU,cAAc;YAClC,cAAc,MAAM,CAAC,cAAc,EAAE;YACrC,qBAAqB;YACrB,iBAAiB,kBAAkB,CAAC,WAAW,CAAC,EAAE;YAClD,UAAU,KAAK,EAAE,GAAC,WAAW,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAE5E,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC7B,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;YAErD,cAAc,CAAC,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;YAExD,GAAG,IAAI,mBAAmB,SAAS,EAAE,GAAG,6BAA6B,CAAC;QACxE,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;IAC7B,CAAC;IAED,KAAK,UAAU,MAAM;QACnB,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,IAAI;QACJ,cAAc;QACd,KAAK;QACL,MAAM;KACP,CAAC;AACJ,CAAC;AAED,2BAA2B;AAC3B,6BAA6B;AAE7B,6CAA6C;AAC7C,yBAAyB;AACzB,6BAA6B;AAC7B,OAAO;AACP,iDAAiD;AAEjD,kCAAkC;AAClC,eAAe;AACf,6CAA6C;AAC7C,iBAAiB;AACjB,0DAA0D;AAC1D,SAAS;AACT,QAAQ;AAER,mBAAmB;AACnB,IAAI"}
1
+ {"version":3,"file":"authClient.js","sourceRoot":"","sources":["../../src/client/authClient.ts"],"names":[],"mappings":"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"}
package/dist/context.d.ts CHANGED
@@ -9,6 +9,12 @@ export interface DeltaAuthConfig {
9
9
  authDomain?: string;
10
10
  appType?: 'spa' | 'web';
11
11
  }
12
+ export interface AuthResponse {
13
+ user: User | null;
14
+ accessToken: string | null;
15
+ expiresAt: number | null;
16
+ application: AppProp | null;
17
+ }
12
18
  export interface AuthContextValue {
13
19
  deltaUser: User | null;
14
20
  loading: boolean;
@@ -17,8 +23,9 @@ export interface AuthContextValue {
17
23
  setDeltaUser: (user: User | null) => void;
18
24
  isAuthenticated: boolean;
19
25
  client: ReturnType<typeof import('./client/authClient').createAuthClient>;
20
- fetchUser: () => Promise<User | null>;
26
+ fetchUser: () => Promise<AuthResponse | null>;
21
27
  config: DeltaAuthConfig;
28
+ getAccessToken: () => Promise<string | null>;
22
29
  }
23
30
  export declare const AuthContext: import("react").Context<AuthContextValue>;
24
31
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,IAAI,EAAC,OAAO,EAAE,MAAM,SAAS,CAAC;AAGhD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CACzB;AACD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAC,OAAO,GAAG,IAAI,CAAA;IAClB,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC,cAAc,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;IAC1E,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACtC,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,eAAO,MAAM,WAAW,2CAUtB,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,IAAI,EAAC,OAAO,EAAE,MAAM,SAAS,CAAC;AAGhD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;CAC7B;AACD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;IACtC,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC,cAAc,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;IAC1E,SAAS,EAAE,MAAM,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC9C,MAAM,EAAE,eAAe,CAAC;IACxB,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC9C;AAED,eAAO,MAAM,WAAW,2CAWtB,CAAC"}
package/dist/context.js CHANGED
@@ -7,6 +7,7 @@ export const AuthContext = createContext({
7
7
  setDeltaUser: () => { },
8
8
  setApp: () => { },
9
9
  isAuthenticated: false,
10
+ getAccessToken: async () => null,
10
11
  client: {},
11
12
  fetchUser: async () => null,
12
13
  config: {},
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AA0BtC,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAmB;IACzD,SAAS,EAAE,IAAI;IACf,GAAG,EAAE,IAAI;IACT,OAAO,EAAE,IAAI;IACb,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;IACtB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;IAChB,eAAe,EAAE,KAAK;IACtB,MAAM,EAAE,EAAS;IACjB,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;IAC3B,MAAM,EAAE,EAAqB;CAC9B,CAAC,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAkCtC,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAmB;IACzD,SAAS,EAAE,IAAI;IACf,GAAG,EAAE,IAAI;IACT,OAAO,EAAE,IAAI;IACb,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;IACtB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;IAChB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,KAAK,IAAG,EAAE,CAAC,IAAI;IAC/B,MAAM,EAAE,EAAS;IACjB,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;IAC3B,MAAM,EAAE,EAAqB;CAC9B,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "delta-auth-next",
3
- "version": "0.1.73",
3
+ "version": "0.1.75",
4
4
  "description": "A lightweight authentication system for Next.js that provides React context providers and Edge-safe middleware utilities for handling sign-in redirects and session management.",
5
5
  "license": "MIT",
6
6
  "author": "Samuel Onwodi",