naystack 1.8.4 → 1.8.6
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.
- package/dist/auth/client.cjs.js +10 -43
- package/dist/auth/client.d.mts +1 -1
- package/dist/auth/client.d.ts +1 -1
- package/dist/auth/client.esm.js +14 -38
- package/dist/auth/email/client.cjs.js +10 -43
- package/dist/auth/email/client.d.mts +2 -2
- package/dist/auth/email/client.d.ts +2 -2
- package/dist/auth/email/client.esm.js +14 -38
- package/dist/auth/email/index.d.mts +1 -1
- package/dist/auth/email/index.d.ts +1 -1
- package/dist/auth/email/next.d.mts +1 -1
- package/dist/auth/email/next.d.ts +1 -1
- package/dist/auth/index.cjs.js +26 -5
- package/dist/auth/index.d.mts +2 -2
- package/dist/auth/index.d.ts +2 -2
- package/dist/auth/index.esm.js +25 -5
- package/dist/auth/instagram/index.cjs.js +26 -5
- package/dist/auth/instagram/index.d.mts +4 -2
- package/dist/auth/instagram/index.d.ts +4 -2
- package/dist/auth/instagram/index.esm.js +25 -5
- package/dist/auth/instagram/route.cjs.js +24 -5
- package/dist/auth/instagram/route.esm.js +24 -5
- package/dist/auth/instagram/utils.cjs.js +21 -0
- package/dist/auth/instagram/utils.d.mts +30 -4
- package/dist/auth/instagram/utils.d.ts +30 -4
- package/dist/auth/instagram/utils.esm.js +22 -0
- package/dist/graphql/client.cjs.js +8 -36
- package/dist/graphql/client.esm.js +6 -34
- package/dist/graphql/links.cjs.js +3 -31
- package/dist/graphql/links.esm.js +1 -29
- package/dist/graphql/next.cjs.js +3 -31
- package/dist/graphql/next.esm.js +1 -29
- package/package.json +6 -1
package/dist/auth/client.cjs.js
CHANGED
|
@@ -34,9 +34,9 @@ __export(client_exports, {
|
|
|
34
34
|
AuthApply: () => AuthApply,
|
|
35
35
|
AuthWrapper: () => AuthWrapper,
|
|
36
36
|
TokenContext: () => TokenContext,
|
|
37
|
-
getAccessToken: () => getAccessToken,
|
|
38
|
-
refreshAccessToken: () => refreshAccessToken,
|
|
39
|
-
setAccessToken: () => setAccessToken,
|
|
37
|
+
getAccessToken: () => import_token_store2.getAccessToken,
|
|
38
|
+
refreshAccessToken: () => import_token_store2.refreshAccessToken,
|
|
39
|
+
setAccessToken: () => import_token_store2.setAccessToken,
|
|
40
40
|
useAuthFetch: () => useAuthFetch,
|
|
41
41
|
useLogin: () => useLogin,
|
|
42
42
|
useLogout: () => useLogout,
|
|
@@ -47,6 +47,7 @@ __export(client_exports, {
|
|
|
47
47
|
module.exports = __toCommonJS(client_exports);
|
|
48
48
|
|
|
49
49
|
// src/auth/email/client.tsx
|
|
50
|
+
var import_token_store = require("naystack/auth/token-store");
|
|
50
51
|
var import_react = __toESM(require("react"));
|
|
51
52
|
|
|
52
53
|
// src/env.ts
|
|
@@ -99,42 +100,8 @@ function getEnv(key, skipCheck) {
|
|
|
99
100
|
return value;
|
|
100
101
|
}
|
|
101
102
|
|
|
102
|
-
// src/auth/token-store.ts
|
|
103
|
-
var currentToken;
|
|
104
|
-
var listeners = /* @__PURE__ */ new Set();
|
|
105
|
-
var inFlightRefresh = null;
|
|
106
|
-
function getAccessToken() {
|
|
107
|
-
return currentToken;
|
|
108
|
-
}
|
|
109
|
-
function setAccessToken(token) {
|
|
110
|
-
if (token === currentToken) return;
|
|
111
|
-
currentToken = token;
|
|
112
|
-
listeners.forEach((listener) => listener(token));
|
|
113
|
-
}
|
|
114
|
-
function subscribeToAccessToken(listener) {
|
|
115
|
-
listeners.add(listener);
|
|
116
|
-
return () => {
|
|
117
|
-
listeners.delete(listener);
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
function refreshAccessToken() {
|
|
121
|
-
if (inFlightRefresh) return inFlightRefresh;
|
|
122
|
-
inFlightRefresh = (async () => {
|
|
123
|
-
const res = await fetch(
|
|
124
|
-
getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
|
|
125
|
-
{ credentials: "include" }
|
|
126
|
-
);
|
|
127
|
-
if (!res.ok) throw new Error(`Token refresh failed: ${res.status}`);
|
|
128
|
-
const token = await res.text() || null;
|
|
129
|
-
setAccessToken(token);
|
|
130
|
-
return token;
|
|
131
|
-
})().finally(() => {
|
|
132
|
-
inFlightRefresh = null;
|
|
133
|
-
});
|
|
134
|
-
return inFlightRefresh;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
103
|
// src/auth/email/client.tsx
|
|
104
|
+
var import_token_store2 = require("naystack/auth/token-store");
|
|
138
105
|
var TokenContext = (0, import_react.createContext)({
|
|
139
106
|
token: void 0,
|
|
140
107
|
setToken: () => null
|
|
@@ -144,12 +111,12 @@ var AuthWrapper = ({
|
|
|
144
111
|
skipInitialFetch
|
|
145
112
|
}) => {
|
|
146
113
|
const [token, setTokenState] = (0, import_react.useState)(
|
|
147
|
-
getAccessToken
|
|
114
|
+
import_token_store.getAccessToken
|
|
148
115
|
);
|
|
149
|
-
(0, import_react.useEffect)(() => subscribeToAccessToken(setTokenState), []);
|
|
116
|
+
(0, import_react.useEffect)(() => (0, import_token_store.subscribeToAccessToken)(setTokenState), []);
|
|
150
117
|
const setToken = (0, import_react.useCallback)((action) => {
|
|
151
|
-
setAccessToken(
|
|
152
|
-
typeof action === "function" ? action(getAccessToken()) : action
|
|
118
|
+
(0, import_token_store.setAccessToken)(
|
|
119
|
+
typeof action === "function" ? action((0, import_token_store.getAccessToken)()) : action
|
|
153
120
|
);
|
|
154
121
|
}, []);
|
|
155
122
|
return /* @__PURE__ */ import_react.default.createElement(TokenContext.Provider, { value: { token, setToken } }, !skipInitialFetch && /* @__PURE__ */ import_react.default.createElement(AuthChildComponent, null), children);
|
|
@@ -161,7 +128,7 @@ function AuthChildComponent() {
|
|
|
161
128
|
function useAuthFetch({ skip } = {}) {
|
|
162
129
|
(0, import_react.useEffect)(() => {
|
|
163
130
|
if (skip) return;
|
|
164
|
-
void refreshAccessToken().catch(() => null);
|
|
131
|
+
void (0, import_token_store.refreshAccessToken)().catch(() => null);
|
|
165
132
|
}, []);
|
|
166
133
|
}
|
|
167
134
|
function AuthApply({ data }) {
|
package/dist/auth/client.d.mts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { AuthApply, AuthWrapper, AuthWrapperProps, TokenContext, useAuthFetch, useLogin, useLogout, useSetToken, useSignUp, useToken } from './email/client.mjs';
|
|
2
|
-
export { getAccessToken, refreshAccessToken, setAccessToken } from '
|
|
2
|
+
export { getAccessToken, refreshAccessToken, setAccessToken } from 'naystack/auth/token-store';
|
|
3
3
|
import 'react';
|
package/dist/auth/client.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { AuthApply, AuthWrapper, AuthWrapperProps, TokenContext, useAuthFetch, useLogin, useLogout, useSetToken, useSignUp, useToken } from './email/client.js';
|
|
2
|
-
export { getAccessToken, refreshAccessToken, setAccessToken } from '
|
|
2
|
+
export { getAccessToken, refreshAccessToken, setAccessToken } from 'naystack/auth/token-store';
|
|
3
3
|
import 'react';
|
package/dist/auth/client.esm.js
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
// src/auth/email/client.tsx
|
|
4
|
+
import {
|
|
5
|
+
getAccessToken,
|
|
6
|
+
refreshAccessToken,
|
|
7
|
+
setAccessToken,
|
|
8
|
+
subscribeToAccessToken
|
|
9
|
+
} from "naystack/auth/token-store";
|
|
4
10
|
import React, {
|
|
5
11
|
createContext,
|
|
6
12
|
useCallback,
|
|
@@ -59,42 +65,12 @@ function getEnv(key, skipCheck) {
|
|
|
59
65
|
return value;
|
|
60
66
|
}
|
|
61
67
|
|
|
62
|
-
// src/auth/token-store.ts
|
|
63
|
-
var currentToken;
|
|
64
|
-
var listeners = /* @__PURE__ */ new Set();
|
|
65
|
-
var inFlightRefresh = null;
|
|
66
|
-
function getAccessToken() {
|
|
67
|
-
return currentToken;
|
|
68
|
-
}
|
|
69
|
-
function setAccessToken(token) {
|
|
70
|
-
if (token === currentToken) return;
|
|
71
|
-
currentToken = token;
|
|
72
|
-
listeners.forEach((listener) => listener(token));
|
|
73
|
-
}
|
|
74
|
-
function subscribeToAccessToken(listener) {
|
|
75
|
-
listeners.add(listener);
|
|
76
|
-
return () => {
|
|
77
|
-
listeners.delete(listener);
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
function refreshAccessToken() {
|
|
81
|
-
if (inFlightRefresh) return inFlightRefresh;
|
|
82
|
-
inFlightRefresh = (async () => {
|
|
83
|
-
const res = await fetch(
|
|
84
|
-
getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
|
|
85
|
-
{ credentials: "include" }
|
|
86
|
-
);
|
|
87
|
-
if (!res.ok) throw new Error(`Token refresh failed: ${res.status}`);
|
|
88
|
-
const token = await res.text() || null;
|
|
89
|
-
setAccessToken(token);
|
|
90
|
-
return token;
|
|
91
|
-
})().finally(() => {
|
|
92
|
-
inFlightRefresh = null;
|
|
93
|
-
});
|
|
94
|
-
return inFlightRefresh;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
68
|
// src/auth/email/client.tsx
|
|
69
|
+
import {
|
|
70
|
+
getAccessToken as getAccessToken2,
|
|
71
|
+
refreshAccessToken as refreshAccessToken2,
|
|
72
|
+
setAccessToken as setAccessToken2
|
|
73
|
+
} from "naystack/auth/token-store";
|
|
98
74
|
var TokenContext = createContext({
|
|
99
75
|
token: void 0,
|
|
100
76
|
setToken: () => null
|
|
@@ -203,9 +179,9 @@ export {
|
|
|
203
179
|
AuthApply,
|
|
204
180
|
AuthWrapper,
|
|
205
181
|
TokenContext,
|
|
206
|
-
getAccessToken,
|
|
207
|
-
refreshAccessToken,
|
|
208
|
-
setAccessToken,
|
|
182
|
+
getAccessToken2 as getAccessToken,
|
|
183
|
+
refreshAccessToken2 as refreshAccessToken,
|
|
184
|
+
setAccessToken2 as setAccessToken,
|
|
209
185
|
useAuthFetch,
|
|
210
186
|
useLogin,
|
|
211
187
|
useLogout,
|
|
@@ -34,9 +34,9 @@ __export(client_exports, {
|
|
|
34
34
|
AuthApply: () => AuthApply,
|
|
35
35
|
AuthWrapper: () => AuthWrapper,
|
|
36
36
|
TokenContext: () => TokenContext,
|
|
37
|
-
getAccessToken: () => getAccessToken,
|
|
38
|
-
refreshAccessToken: () => refreshAccessToken,
|
|
39
|
-
setAccessToken: () => setAccessToken,
|
|
37
|
+
getAccessToken: () => import_token_store2.getAccessToken,
|
|
38
|
+
refreshAccessToken: () => import_token_store2.refreshAccessToken,
|
|
39
|
+
setAccessToken: () => import_token_store2.setAccessToken,
|
|
40
40
|
useAuthFetch: () => useAuthFetch,
|
|
41
41
|
useLogin: () => useLogin,
|
|
42
42
|
useLogout: () => useLogout,
|
|
@@ -45,6 +45,7 @@ __export(client_exports, {
|
|
|
45
45
|
useToken: () => useToken
|
|
46
46
|
});
|
|
47
47
|
module.exports = __toCommonJS(client_exports);
|
|
48
|
+
var import_token_store = require("naystack/auth/token-store");
|
|
48
49
|
var import_react = __toESM(require("react"));
|
|
49
50
|
|
|
50
51
|
// src/env.ts
|
|
@@ -97,42 +98,8 @@ function getEnv(key, skipCheck) {
|
|
|
97
98
|
return value;
|
|
98
99
|
}
|
|
99
100
|
|
|
100
|
-
// src/auth/token-store.ts
|
|
101
|
-
var currentToken;
|
|
102
|
-
var listeners = /* @__PURE__ */ new Set();
|
|
103
|
-
var inFlightRefresh = null;
|
|
104
|
-
function getAccessToken() {
|
|
105
|
-
return currentToken;
|
|
106
|
-
}
|
|
107
|
-
function setAccessToken(token) {
|
|
108
|
-
if (token === currentToken) return;
|
|
109
|
-
currentToken = token;
|
|
110
|
-
listeners.forEach((listener) => listener(token));
|
|
111
|
-
}
|
|
112
|
-
function subscribeToAccessToken(listener) {
|
|
113
|
-
listeners.add(listener);
|
|
114
|
-
return () => {
|
|
115
|
-
listeners.delete(listener);
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
function refreshAccessToken() {
|
|
119
|
-
if (inFlightRefresh) return inFlightRefresh;
|
|
120
|
-
inFlightRefresh = (async () => {
|
|
121
|
-
const res = await fetch(
|
|
122
|
-
getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
|
|
123
|
-
{ credentials: "include" }
|
|
124
|
-
);
|
|
125
|
-
if (!res.ok) throw new Error(`Token refresh failed: ${res.status}`);
|
|
126
|
-
const token = await res.text() || null;
|
|
127
|
-
setAccessToken(token);
|
|
128
|
-
return token;
|
|
129
|
-
})().finally(() => {
|
|
130
|
-
inFlightRefresh = null;
|
|
131
|
-
});
|
|
132
|
-
return inFlightRefresh;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
101
|
// src/auth/email/client.tsx
|
|
102
|
+
var import_token_store2 = require("naystack/auth/token-store");
|
|
136
103
|
var TokenContext = (0, import_react.createContext)({
|
|
137
104
|
token: void 0,
|
|
138
105
|
setToken: () => null
|
|
@@ -142,12 +109,12 @@ var AuthWrapper = ({
|
|
|
142
109
|
skipInitialFetch
|
|
143
110
|
}) => {
|
|
144
111
|
const [token, setTokenState] = (0, import_react.useState)(
|
|
145
|
-
getAccessToken
|
|
112
|
+
import_token_store.getAccessToken
|
|
146
113
|
);
|
|
147
|
-
(0, import_react.useEffect)(() => subscribeToAccessToken(setTokenState), []);
|
|
114
|
+
(0, import_react.useEffect)(() => (0, import_token_store.subscribeToAccessToken)(setTokenState), []);
|
|
148
115
|
const setToken = (0, import_react.useCallback)((action) => {
|
|
149
|
-
setAccessToken(
|
|
150
|
-
typeof action === "function" ? action(getAccessToken()) : action
|
|
116
|
+
(0, import_token_store.setAccessToken)(
|
|
117
|
+
typeof action === "function" ? action((0, import_token_store.getAccessToken)()) : action
|
|
151
118
|
);
|
|
152
119
|
}, []);
|
|
153
120
|
return /* @__PURE__ */ import_react.default.createElement(TokenContext.Provider, { value: { token, setToken } }, !skipInitialFetch && /* @__PURE__ */ import_react.default.createElement(AuthChildComponent, null), children);
|
|
@@ -159,7 +126,7 @@ function AuthChildComponent() {
|
|
|
159
126
|
function useAuthFetch({ skip } = {}) {
|
|
160
127
|
(0, import_react.useEffect)(() => {
|
|
161
128
|
if (skip) return;
|
|
162
|
-
void refreshAccessToken().catch(() => null);
|
|
129
|
+
void (0, import_token_store.refreshAccessToken)().catch(() => null);
|
|
163
130
|
}, []);
|
|
164
131
|
}
|
|
165
132
|
function AuthApply({ data }) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default, { Dispatch, SetStateAction, PropsWithChildren } from 'react';
|
|
2
|
-
export { getAccessToken, refreshAccessToken, setAccessToken } from '
|
|
2
|
+
export { getAccessToken, refreshAccessToken, setAccessToken } from 'naystack/auth/token-store';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* React context holding the current access token and setter; used by useToken/useSetToken and auth hooks.
|
|
@@ -45,7 +45,7 @@ type AuthWrapperProps = PropsWithChildren<{
|
|
|
45
45
|
*
|
|
46
46
|
* @category Auth
|
|
47
47
|
*/
|
|
48
|
-
declare const AuthWrapper: ({ children, skipInitialFetch }: AuthWrapperProps) => React__default.JSX.Element;
|
|
48
|
+
declare const AuthWrapper: ({ children, skipInitialFetch, }: AuthWrapperProps) => React__default.JSX.Element;
|
|
49
49
|
/**
|
|
50
50
|
* Fetches the access token on mount by calling the auth endpoint. Stores the result in TokenContext.
|
|
51
51
|
* Used internally by auth setup; prefer `AuthWrapper` for typical usage.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React__default, { Dispatch, SetStateAction, PropsWithChildren } from 'react';
|
|
2
|
-
export { getAccessToken, refreshAccessToken, setAccessToken } from '
|
|
2
|
+
export { getAccessToken, refreshAccessToken, setAccessToken } from 'naystack/auth/token-store';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* React context holding the current access token and setter; used by useToken/useSetToken and auth hooks.
|
|
@@ -45,7 +45,7 @@ type AuthWrapperProps = PropsWithChildren<{
|
|
|
45
45
|
*
|
|
46
46
|
* @category Auth
|
|
47
47
|
*/
|
|
48
|
-
declare const AuthWrapper: ({ children, skipInitialFetch }: AuthWrapperProps) => React__default.JSX.Element;
|
|
48
|
+
declare const AuthWrapper: ({ children, skipInitialFetch, }: AuthWrapperProps) => React__default.JSX.Element;
|
|
49
49
|
/**
|
|
50
50
|
* Fetches the access token on mount by calling the auth endpoint. Stores the result in TokenContext.
|
|
51
51
|
* Used internally by auth setup; prefer `AuthWrapper` for typical usage.
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
// src/auth/email/client.tsx
|
|
4
|
+
import {
|
|
5
|
+
getAccessToken,
|
|
6
|
+
refreshAccessToken,
|
|
7
|
+
setAccessToken,
|
|
8
|
+
subscribeToAccessToken
|
|
9
|
+
} from "naystack/auth/token-store";
|
|
4
10
|
import React, {
|
|
5
11
|
createContext,
|
|
6
12
|
useCallback,
|
|
@@ -59,42 +65,12 @@ function getEnv(key, skipCheck) {
|
|
|
59
65
|
return value;
|
|
60
66
|
}
|
|
61
67
|
|
|
62
|
-
// src/auth/token-store.ts
|
|
63
|
-
var currentToken;
|
|
64
|
-
var listeners = /* @__PURE__ */ new Set();
|
|
65
|
-
var inFlightRefresh = null;
|
|
66
|
-
function getAccessToken() {
|
|
67
|
-
return currentToken;
|
|
68
|
-
}
|
|
69
|
-
function setAccessToken(token) {
|
|
70
|
-
if (token === currentToken) return;
|
|
71
|
-
currentToken = token;
|
|
72
|
-
listeners.forEach((listener) => listener(token));
|
|
73
|
-
}
|
|
74
|
-
function subscribeToAccessToken(listener) {
|
|
75
|
-
listeners.add(listener);
|
|
76
|
-
return () => {
|
|
77
|
-
listeners.delete(listener);
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
function refreshAccessToken() {
|
|
81
|
-
if (inFlightRefresh) return inFlightRefresh;
|
|
82
|
-
inFlightRefresh = (async () => {
|
|
83
|
-
const res = await fetch(
|
|
84
|
-
getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
|
|
85
|
-
{ credentials: "include" }
|
|
86
|
-
);
|
|
87
|
-
if (!res.ok) throw new Error(`Token refresh failed: ${res.status}`);
|
|
88
|
-
const token = await res.text() || null;
|
|
89
|
-
setAccessToken(token);
|
|
90
|
-
return token;
|
|
91
|
-
})().finally(() => {
|
|
92
|
-
inFlightRefresh = null;
|
|
93
|
-
});
|
|
94
|
-
return inFlightRefresh;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
68
|
// src/auth/email/client.tsx
|
|
69
|
+
import {
|
|
70
|
+
getAccessToken as getAccessToken2,
|
|
71
|
+
refreshAccessToken as refreshAccessToken2,
|
|
72
|
+
setAccessToken as setAccessToken2
|
|
73
|
+
} from "naystack/auth/token-store";
|
|
98
74
|
var TokenContext = createContext({
|
|
99
75
|
token: void 0,
|
|
100
76
|
setToken: () => null
|
|
@@ -203,9 +179,9 @@ export {
|
|
|
203
179
|
AuthApply,
|
|
204
180
|
AuthWrapper,
|
|
205
181
|
TokenContext,
|
|
206
|
-
getAccessToken,
|
|
207
|
-
refreshAccessToken,
|
|
208
|
-
setAccessToken,
|
|
182
|
+
getAccessToken2 as getAccessToken,
|
|
183
|
+
refreshAccessToken2 as refreshAccessToken,
|
|
184
|
+
setAccessToken2 as setAccessToken,
|
|
209
185
|
useAuthFetch,
|
|
210
186
|
useLogin,
|
|
211
187
|
useLogout,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { AuthWrapperProps } from './client.mjs';
|
|
3
|
-
import '
|
|
3
|
+
import 'naystack/auth/token-store';
|
|
4
4
|
|
|
5
5
|
declare function AuthFetch(): React__default.JSX.Element;
|
|
6
6
|
declare function AuthWrapper({ children, skipInitialFetch }: AuthWrapperProps): React__default.JSX.Element;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
2
|
import { AuthWrapperProps } from './client.js';
|
|
3
|
-
import '
|
|
3
|
+
import 'naystack/auth/token-store';
|
|
4
4
|
|
|
5
5
|
declare function AuthFetch(): React__default.JSX.Element;
|
|
6
6
|
declare function AuthWrapper({ children, skipInitialFetch }: AuthWrapperProps): React__default.JSX.Element;
|
package/dist/auth/index.cjs.js
CHANGED
|
@@ -33,6 +33,7 @@ __export(auth_exports, {
|
|
|
33
33
|
AuthFetch: () => AuthFetch,
|
|
34
34
|
AuthWrapper: () => AuthWrapper,
|
|
35
35
|
checkAuthStatus: () => checkAuthStatus,
|
|
36
|
+
getAuthorizationHandoff: () => getAuthorizationHandoff,
|
|
36
37
|
getContext: () => getContext,
|
|
37
38
|
getInstagramAuthorizationURL: () => getInstagramAuthorizationURL,
|
|
38
39
|
getRefreshToken: () => getRefreshToken,
|
|
@@ -575,9 +576,28 @@ function setupGoogleAuth(props) {
|
|
|
575
576
|
}
|
|
576
577
|
|
|
577
578
|
// src/auth/instagram/route.ts
|
|
578
|
-
var
|
|
579
|
+
var import_server9 = require("next/server");
|
|
579
580
|
|
|
580
581
|
// src/auth/instagram/utils.ts
|
|
582
|
+
var import_server7 = require("next/server");
|
|
583
|
+
function getAuthorizationHandoff(authorizationURL) {
|
|
584
|
+
const scriptSafeURL = JSON.stringify(authorizationURL).replace(
|
|
585
|
+
/</g,
|
|
586
|
+
"\\u003c"
|
|
587
|
+
);
|
|
588
|
+
const attributeSafeURL = authorizationURL.replace(/&/g, "&").replace(/</g, "<").replace(/"/g, """);
|
|
589
|
+
return new import_server7.NextResponse(
|
|
590
|
+
`<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="robots" content="noindex"><title>Connecting\u2026</title><script>location.replace(${scriptSafeURL})</script><noscript><meta http-equiv="refresh" content="0;url=${attributeSafeURL}"></noscript></head><body></body></html>`,
|
|
591
|
+
{
|
|
592
|
+
headers: {
|
|
593
|
+
"content-type": "text/html; charset=utf-8",
|
|
594
|
+
"cache-control": "no-store",
|
|
595
|
+
// The token is in the URL; keep it off the provider's referer log.
|
|
596
|
+
"referrer-policy": "no-referrer"
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
);
|
|
600
|
+
}
|
|
581
601
|
async function getRefreshedInstagramAccessToken(token) {
|
|
582
602
|
const request = await fetch(
|
|
583
603
|
`https://graph.instagram.com/refresh_access_token?grant_type=ig_refresh_token&access_token=${token}`
|
|
@@ -640,7 +660,7 @@ var getInstagramUser = (token, id, fields) => {
|
|
|
640
660
|
};
|
|
641
661
|
|
|
642
662
|
// src/socials/meta-webhook.ts
|
|
643
|
-
var
|
|
663
|
+
var import_server8 = require("next/server");
|
|
644
664
|
|
|
645
665
|
// src/auth/instagram/route.ts
|
|
646
666
|
var getInstagramRoute = ({
|
|
@@ -648,7 +668,7 @@ var getInstagramRoute = ({
|
|
|
648
668
|
errorRedirectURL,
|
|
649
669
|
onUser
|
|
650
670
|
}) => {
|
|
651
|
-
const handleError2 = (message) =>
|
|
671
|
+
const handleError2 = (message) => import_server9.NextResponse.redirect(`${errorRedirectURL}?error=${message}`);
|
|
652
672
|
return async (req) => {
|
|
653
673
|
const accessCode = req.nextUrl.searchParams.get("code");
|
|
654
674
|
const error = req.nextUrl.searchParams.get("error");
|
|
@@ -656,7 +676,7 @@ var getInstagramRoute = ({
|
|
|
656
676
|
if (error) return handleError2(error);
|
|
657
677
|
if (!accessCode) {
|
|
658
678
|
if (!stateToken) return handleError2("Invalid request");
|
|
659
|
-
return
|
|
679
|
+
return getAuthorizationHandoff(getInstagramAuthorizationURL(stateToken));
|
|
660
680
|
}
|
|
661
681
|
if (!stateToken) return handleError2("Invalid request");
|
|
662
682
|
const instagramData = await getLongLivedToken(
|
|
@@ -676,7 +696,7 @@ var getInstagramRoute = ({
|
|
|
676
696
|
instagramData.accessToken
|
|
677
697
|
);
|
|
678
698
|
if (errorMessage) return handleError2(errorMessage);
|
|
679
|
-
return
|
|
699
|
+
return import_server9.NextResponse.redirect(redirectURL);
|
|
680
700
|
};
|
|
681
701
|
};
|
|
682
702
|
|
|
@@ -698,6 +718,7 @@ async function getRefreshToken() {
|
|
|
698
718
|
AuthFetch,
|
|
699
719
|
AuthWrapper,
|
|
700
720
|
checkAuthStatus,
|
|
721
|
+
getAuthorizationHandoff,
|
|
701
722
|
getContext,
|
|
702
723
|
getInstagramAuthorizationURL,
|
|
703
724
|
getRefreshToken,
|
package/dist/auth/index.d.mts
CHANGED
|
@@ -5,7 +5,7 @@ export { getRefreshToken } from './utils/token.mjs';
|
|
|
5
5
|
export { AuthFetch, AuthWrapper } from './email/next.mjs';
|
|
6
6
|
export { checkAuthStatus, getTokenizedResponse } from './email/token.mjs';
|
|
7
7
|
export { getContext } from './email/utils.mjs';
|
|
8
|
-
export { getInstagramAuthorizationURL, getRefreshedInstagramAccessToken } from './instagram/utils.mjs';
|
|
8
|
+
export { getAuthorizationHandoff, getInstagramAuthorizationURL, getRefreshedInstagramAccessToken } from './instagram/utils.mjs';
|
|
9
9
|
import 'next/server';
|
|
10
10
|
import './email/types.mjs';
|
|
11
11
|
import './types.mjs';
|
|
@@ -13,5 +13,5 @@ import 'googleapis';
|
|
|
13
13
|
import '../socials/instagram/types.mjs';
|
|
14
14
|
import 'react';
|
|
15
15
|
import './email/client.mjs';
|
|
16
|
-
import '
|
|
16
|
+
import 'naystack/auth/token-store';
|
|
17
17
|
import '../graphql/types.mjs';
|
package/dist/auth/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export { getRefreshToken } from './utils/token.js';
|
|
|
5
5
|
export { AuthFetch, AuthWrapper } from './email/next.js';
|
|
6
6
|
export { checkAuthStatus, getTokenizedResponse } from './email/token.js';
|
|
7
7
|
export { getContext } from './email/utils.js';
|
|
8
|
-
export { getInstagramAuthorizationURL, getRefreshedInstagramAccessToken } from './instagram/utils.js';
|
|
8
|
+
export { getAuthorizationHandoff, getInstagramAuthorizationURL, getRefreshedInstagramAccessToken } from './instagram/utils.js';
|
|
9
9
|
import 'next/server';
|
|
10
10
|
import './email/types.js';
|
|
11
11
|
import './types.js';
|
|
@@ -13,5 +13,5 @@ import 'googleapis';
|
|
|
13
13
|
import '../socials/instagram/types.js';
|
|
14
14
|
import 'react';
|
|
15
15
|
import './email/client.js';
|
|
16
|
-
import '
|
|
16
|
+
import 'naystack/auth/token-store';
|
|
17
17
|
import '../graphql/types.js';
|
package/dist/auth/index.esm.js
CHANGED
|
@@ -533,9 +533,28 @@ function setupGoogleAuth(props) {
|
|
|
533
533
|
}
|
|
534
534
|
|
|
535
535
|
// src/auth/instagram/route.ts
|
|
536
|
-
import { NextResponse as
|
|
536
|
+
import { NextResponse as NextResponse8 } from "next/server";
|
|
537
537
|
|
|
538
538
|
// src/auth/instagram/utils.ts
|
|
539
|
+
import { NextResponse as NextResponse6 } from "next/server";
|
|
540
|
+
function getAuthorizationHandoff(authorizationURL) {
|
|
541
|
+
const scriptSafeURL = JSON.stringify(authorizationURL).replace(
|
|
542
|
+
/</g,
|
|
543
|
+
"\\u003c"
|
|
544
|
+
);
|
|
545
|
+
const attributeSafeURL = authorizationURL.replace(/&/g, "&").replace(/</g, "<").replace(/"/g, """);
|
|
546
|
+
return new NextResponse6(
|
|
547
|
+
`<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="robots" content="noindex"><title>Connecting\u2026</title><script>location.replace(${scriptSafeURL})</script><noscript><meta http-equiv="refresh" content="0;url=${attributeSafeURL}"></noscript></head><body></body></html>`,
|
|
548
|
+
{
|
|
549
|
+
headers: {
|
|
550
|
+
"content-type": "text/html; charset=utf-8",
|
|
551
|
+
"cache-control": "no-store",
|
|
552
|
+
// The token is in the URL; keep it off the provider's referer log.
|
|
553
|
+
"referrer-policy": "no-referrer"
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
);
|
|
557
|
+
}
|
|
539
558
|
async function getRefreshedInstagramAccessToken(token) {
|
|
540
559
|
const request = await fetch(
|
|
541
560
|
`https://graph.instagram.com/refresh_access_token?grant_type=ig_refresh_token&access_token=${token}`
|
|
@@ -598,7 +617,7 @@ var getInstagramUser = (token, id, fields) => {
|
|
|
598
617
|
};
|
|
599
618
|
|
|
600
619
|
// src/socials/meta-webhook.ts
|
|
601
|
-
import { NextResponse as
|
|
620
|
+
import { NextResponse as NextResponse7 } from "next/server";
|
|
602
621
|
|
|
603
622
|
// src/auth/instagram/route.ts
|
|
604
623
|
var getInstagramRoute = ({
|
|
@@ -606,7 +625,7 @@ var getInstagramRoute = ({
|
|
|
606
625
|
errorRedirectURL,
|
|
607
626
|
onUser
|
|
608
627
|
}) => {
|
|
609
|
-
const handleError2 = (message) =>
|
|
628
|
+
const handleError2 = (message) => NextResponse8.redirect(`${errorRedirectURL}?error=${message}`);
|
|
610
629
|
return async (req) => {
|
|
611
630
|
const accessCode = req.nextUrl.searchParams.get("code");
|
|
612
631
|
const error = req.nextUrl.searchParams.get("error");
|
|
@@ -614,7 +633,7 @@ var getInstagramRoute = ({
|
|
|
614
633
|
if (error) return handleError2(error);
|
|
615
634
|
if (!accessCode) {
|
|
616
635
|
if (!stateToken) return handleError2("Invalid request");
|
|
617
|
-
return
|
|
636
|
+
return getAuthorizationHandoff(getInstagramAuthorizationURL(stateToken));
|
|
618
637
|
}
|
|
619
638
|
if (!stateToken) return handleError2("Invalid request");
|
|
620
639
|
const instagramData = await getLongLivedToken(
|
|
@@ -634,7 +653,7 @@ var getInstagramRoute = ({
|
|
|
634
653
|
instagramData.accessToken
|
|
635
654
|
);
|
|
636
655
|
if (errorMessage) return handleError2(errorMessage);
|
|
637
|
-
return
|
|
656
|
+
return NextResponse8.redirect(redirectURL);
|
|
638
657
|
};
|
|
639
658
|
};
|
|
640
659
|
|
|
@@ -655,6 +674,7 @@ export {
|
|
|
655
674
|
AuthFetch,
|
|
656
675
|
AuthWrapper,
|
|
657
676
|
checkAuthStatus,
|
|
677
|
+
getAuthorizationHandoff,
|
|
658
678
|
getContext,
|
|
659
679
|
getInstagramAuthorizationURL,
|
|
660
680
|
getRefreshToken,
|