delta-auth-next 0.1.44 → 0.1.46

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,KAAmD,MAAM,OAAO,CAAC;AACxE,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,2CA6F5D"}
1
+ {"version":3,"file":"DeltaProvider.d.ts","sourceRoot":"","sources":["../src/DeltaProvider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AACxE,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,2CAmG5D"}
@@ -7,9 +7,9 @@ import { useSimpleToast } from './alert';
7
7
  export function DeltaAuthProvider({ config, children }) {
8
8
  const [deltaUser, setDeltaUser] = useState(null);
9
9
  const [loading, setLoading] = useState(true);
10
- const [enabled, setEnabled] = useState(true); // disables provider if misconfigured
10
+ const [enabled, setEnabled] = useState(true);
11
11
  const { show, Toast } = useSimpleToast();
12
- const initialFetchDone = useRef(false);
12
+ const hasFetchedUser = useRef(false); // ✅ guard multiple fetches
13
13
  // 🔹 Disable provider if misconfigured
14
14
  useEffect(() => {
15
15
  if (!config?.publishableKey) {
@@ -33,37 +33,47 @@ export function DeltaAuthProvider({ config, children }) {
33
33
  try {
34
34
  const res = await client.get('/auth/me', {
35
35
  headers: { 'x-delta-publishable-key': config.publishableKey },
36
+ withCredentials: true,
36
37
  });
37
- // Use correct path to user
38
- setDeltaUser(res.data?.data?.user ?? null);
39
- return res.data?.data?.user ?? null;
38
+ const user = res.data?.data?.user ?? null;
39
+ // only update state if changed
40
+ setDeltaUser((prev) => (prev?.id !== user?.id ? user : prev));
41
+ return user;
40
42
  }
41
43
  catch (err) {
42
- console.error('Failed to fetch user:', err);
43
- // if (err.response?.status === 401) {
44
- // setDeltaUser(null);
45
- // return null;
46
- // }
44
+ console.warn('Failed to fetch user:', err.message || err);
45
+ // 401 user not logged in, don't throw
46
+ if (err.response?.status === 401)
47
+ setDeltaUser(null);
47
48
  return null;
48
49
  }
49
50
  finally {
50
51
  setLoading(false);
51
52
  }
52
53
  }, [client, enabled, config.publishableKey]);
53
- // 🔹 Only fetch user once on mount
54
+ // 🔹 Fetch once on mount
54
55
  useEffect(() => {
55
- if (!enabled || initialFetchDone.current)
56
+ if (!enabled || hasFetchedUser.current)
56
57
  return;
57
- initialFetchDone.current = true;
58
+ hasFetchedUser.current = true;
58
59
  fetchUser();
59
60
  }, [enabled, fetchUser]);
60
- // 🔹 Auto-refresh user every interval (optional)
61
+ // 🔹 Auto-refresh only if enabled and user exists
61
62
  useEffect(() => {
62
63
  if (!enabled || !config.autoRefresh)
63
64
  return;
64
- const interval = setInterval(fetchUser, config.refreshInterval ?? 5 * 60 * 1000);
65
+ const interval = setInterval(() => {
66
+ if (deltaUser)
67
+ fetchUser();
68
+ }, config.refreshInterval ?? 5 * 60 * 1000);
65
69
  return () => clearInterval(interval);
66
- }, [fetchUser, config.autoRefresh, config.refreshInterval, enabled]);
70
+ }, [
71
+ enabled,
72
+ config.autoRefresh,
73
+ config.refreshInterval,
74
+ fetchUser,
75
+ deltaUser,
76
+ ]);
67
77
  if (!enabled)
68
78
  return _jsx(_Fragment, { children: children });
69
79
  return (_jsxs(_Fragment, { children: [_jsx(AuthContext.Provider, { value: {
@@ -74,6 +84,6 @@ export function DeltaAuthProvider({ config, children }) {
74
84
  client,
75
85
  fetchUser,
76
86
  config,
77
- }, children: children }), _jsx(Toast, {}), " "] }));
87
+ }, children: children }), _jsx(Toast, {})] }));
78
88
  }
79
89
  //# sourceMappingURL=DeltaProvider.js.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "delta-auth-next",
3
- "version": "0.1.44",
3
+ "version": "0.1.46",
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",
@@ -12,6 +12,7 @@
12
12
  "types": "./dist/index.d.ts"
13
13
  },
14
14
  "./react": {
15
+
15
16
  "import": "./dist/react/index.js",
16
17
  "types": "./dist/react/index.d.ts"
17
18
  },