naystack 1.4.16 → 1.4.21

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 (87) hide show
  1. package/dist/auth/email/client.cjs.js +69 -12
  2. package/dist/auth/email/client.esm.js +69 -12
  3. package/dist/auth/email/index.cjs.js +74 -15
  4. package/dist/auth/email/index.esm.js +74 -15
  5. package/dist/auth/email/routes/delete.cjs.js +56 -4
  6. package/dist/auth/email/routes/delete.esm.js +56 -4
  7. package/dist/auth/email/routes/get.cjs.js +54 -2
  8. package/dist/auth/email/routes/get.esm.js +54 -2
  9. package/dist/auth/email/routes/post.cjs.js +59 -6
  10. package/dist/auth/email/routes/post.esm.js +59 -6
  11. package/dist/auth/email/routes/put.cjs.js +54 -4
  12. package/dist/auth/email/routes/put.esm.js +54 -4
  13. package/dist/auth/email/token.cjs.js +51 -2
  14. package/dist/auth/email/token.esm.js +51 -2
  15. package/dist/auth/email/types.d.mts +1 -7
  16. package/dist/auth/email/types.d.ts +1 -7
  17. package/dist/auth/email/utils.cjs.js +58 -5
  18. package/dist/auth/email/utils.d.mts +2 -2
  19. package/dist/auth/email/utils.d.ts +2 -2
  20. package/dist/auth/email/utils.esm.js +58 -5
  21. package/dist/auth/google/get.cjs.js +57 -7
  22. package/dist/auth/google/get.d.mts +1 -3
  23. package/dist/auth/google/get.d.ts +1 -3
  24. package/dist/auth/google/get.esm.js +57 -7
  25. package/dist/auth/google/index.cjs.js +57 -7
  26. package/dist/auth/google/index.d.mts +0 -5
  27. package/dist/auth/google/index.d.ts +0 -5
  28. package/dist/auth/google/index.esm.js +57 -7
  29. package/dist/auth/index.cjs.js +89 -31
  30. package/dist/auth/index.esm.js +89 -31
  31. package/dist/auth/instagram/client.cjs.js +54 -1
  32. package/dist/auth/instagram/client.d.mts +1 -1
  33. package/dist/auth/instagram/client.d.ts +1 -1
  34. package/dist/auth/instagram/client.esm.js +52 -1
  35. package/dist/auth/instagram/index.cjs.js +58 -9
  36. package/dist/auth/instagram/index.d.mts +0 -2
  37. package/dist/auth/instagram/index.d.ts +0 -2
  38. package/dist/auth/instagram/index.esm.js +58 -9
  39. package/dist/auth/instagram/route.cjs.js +58 -9
  40. package/dist/auth/instagram/route.d.mts +1 -1
  41. package/dist/auth/instagram/route.d.ts +1 -1
  42. package/dist/auth/instagram/route.esm.js +58 -9
  43. package/dist/auth/instagram/utils.cjs.js +52 -1
  44. package/dist/auth/instagram/utils.esm.js +50 -1
  45. package/dist/client/index.cjs.js +50 -1
  46. package/dist/client/index.esm.js +50 -1
  47. package/dist/client/seo.cjs.js +52 -1
  48. package/dist/client/seo.esm.js +50 -1
  49. package/dist/env.cjs.js +101 -0
  50. package/dist/env.d.mts +24 -0
  51. package/dist/env.d.ts +24 -0
  52. package/dist/env.esm.js +74 -0
  53. package/dist/file/client.cjs.js +52 -1
  54. package/dist/file/client.esm.js +52 -1
  55. package/dist/file/index.cjs.js +82 -28
  56. package/dist/file/index.d.mts +0 -2
  57. package/dist/file/index.d.ts +0 -2
  58. package/dist/file/index.esm.js +82 -28
  59. package/dist/file/put.cjs.js +65 -11
  60. package/dist/file/put.d.mts +0 -2
  61. package/dist/file/put.d.ts +0 -2
  62. package/dist/file/put.esm.js +65 -11
  63. package/dist/file/setup.cjs.js +82 -28
  64. package/dist/file/setup.d.mts +0 -7
  65. package/dist/file/setup.d.ts +0 -7
  66. package/dist/file/setup.esm.js +82 -28
  67. package/dist/file/utils.cjs.js +70 -17
  68. package/dist/file/utils.d.mts +6 -10
  69. package/dist/file/utils.d.ts +6 -10
  70. package/dist/file/utils.esm.js +70 -17
  71. package/dist/graphql/client.cjs.js +57 -3
  72. package/dist/graphql/client.d.mts +1 -1
  73. package/dist/graphql/client.d.ts +1 -1
  74. package/dist/graphql/client.esm.js +57 -3
  75. package/dist/graphql/index.cjs.js +107 -3
  76. package/dist/graphql/index.d.mts +1 -0
  77. package/dist/graphql/index.d.ts +1 -0
  78. package/dist/graphql/index.esm.js +107 -3
  79. package/dist/graphql/init.cjs.js +53 -2
  80. package/dist/graphql/init.esm.js +53 -2
  81. package/dist/graphql/server.cjs.js +52 -1
  82. package/dist/graphql/server.esm.js +52 -1
  83. package/dist/graphql/utils.cjs.js +54 -1
  84. package/dist/graphql/utils.d.mts +10 -3
  85. package/dist/graphql/utils.d.ts +10 -3
  86. package/dist/graphql/utils.esm.js +54 -1
  87. package/package.json +1 -1
@@ -41,6 +41,57 @@ __export(client_exports, {
41
41
  });
42
42
  module.exports = __toCommonJS(client_exports);
43
43
  var import_react = __toESM(require("react"));
44
+
45
+ // src/env.ts
46
+ var getEnvValue = (key) => {
47
+ switch (key) {
48
+ case "NEXT_PUBLIC_GRAPHQL_ENDPOINT" /* NEXT_PUBLIC_GRAPHQL_ENDPOINT */:
49
+ return process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT;
50
+ case "NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */:
51
+ return process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT;
52
+ case "NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT" /* NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT */:
53
+ return process.env.NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT;
54
+ case "NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT" /* NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT */:
55
+ return process.env.NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT;
56
+ case "NEXT_PUBLIC_FILE_ENDPOINT" /* NEXT_PUBLIC_FILE_ENDPOINT */:
57
+ return process.env.NEXT_PUBLIC_FILE_ENDPOINT;
58
+ case "NEXT_PUBLIC_BASE_URL" /* NEXT_PUBLIC_BASE_URL */:
59
+ return process.env.NEXT_PUBLIC_BASE_URL;
60
+ case "REFRESH_KEY" /* REFRESH_KEY */:
61
+ return process.env.REFRESH_KEY;
62
+ case "SIGNING_KEY" /* SIGNING_KEY */:
63
+ return process.env.SIGNING_KEY;
64
+ case "INSTAGRAM_CLIENT_SECRET" /* INSTAGRAM_CLIENT_SECRET */:
65
+ return process.env.INSTAGRAM_CLIENT_SECRET;
66
+ case "INSTAGRAM_CLIENT_ID" /* INSTAGRAM_CLIENT_ID */:
67
+ return process.env.INSTAGRAM_CLIENT_ID;
68
+ case "GOOGLE_CLIENT_SECRET" /* GOOGLE_CLIENT_SECRET */:
69
+ return process.env.GOOGLE_CLIENT_SECRET;
70
+ case "GOOGLE_CLIENT_ID" /* GOOGLE_CLIENT_ID */:
71
+ return process.env.GOOGLE_CLIENT_ID;
72
+ case "TURNSTILE_KEY" /* TURNSTILE_KEY */:
73
+ return process.env.TURNSTILE_KEY;
74
+ case "AWS_ACCESS_KEY_ID" /* AWS_ACCESS_KEY_ID */:
75
+ return process.env.AWS_ACCESS_KEY_ID;
76
+ case "AWS_ACCESS_KEY_SECRET" /* AWS_ACCESS_KEY_SECRET */:
77
+ return process.env.AWS_ACCESS_KEY_SECRET;
78
+ case "AWS_REGION" /* AWS_REGION */:
79
+ return process.env.AWS_REGION;
80
+ case "AWS_BUCKET" /* AWS_BUCKET */:
81
+ return process.env.AWS_BUCKET;
82
+ case "NODE_ENV" /* NODE_ENV */:
83
+ return process.env.NODE_ENV;
84
+ default:
85
+ return process.env[key];
86
+ }
87
+ };
88
+ function getEnv(key, skipCheck) {
89
+ const value = getEnvValue(key);
90
+ if (!skipCheck && !value) throw new Error(`${key} is not defined`);
91
+ return value;
92
+ }
93
+
94
+ // src/auth/email/client.tsx
44
95
  var TokenContext = (0, import_react.createContext)({
45
96
  token: null,
46
97
  setToken: () => null
@@ -48,7 +99,7 @@ var TokenContext = (0, import_react.createContext)({
48
99
  var AuthWrapper = ({ children }) => {
49
100
  const [token, setToken] = (0, import_react.useState)(null);
50
101
  (0, import_react.useEffect)(() => {
51
- fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
102
+ fetch(getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */), {
52
103
  credentials: "include"
53
104
  }).then((res) => res.json()).then((data) => setToken(data.accessToken));
54
105
  }, []);
@@ -66,11 +117,14 @@ function useSignUp() {
66
117
  const setToken = useSetToken();
67
118
  return (0, import_react.useCallback)(
68
119
  async (data) => {
69
- const res = await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
70
- method: "POST",
71
- body: JSON.stringify(data),
72
- credentials: "include"
73
- });
120
+ const res = await fetch(
121
+ getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
122
+ {
123
+ method: "POST",
124
+ body: JSON.stringify(data),
125
+ credentials: "include"
126
+ }
127
+ );
74
128
  if (res.ok) {
75
129
  const data2 = await res.json();
76
130
  setToken(data2.accessToken);
@@ -85,11 +139,14 @@ function useLogin() {
85
139
  const setToken = useSetToken();
86
140
  return (0, import_react.useCallback)(
87
141
  async (data) => {
88
- const res = await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
89
- method: "PUT",
90
- body: JSON.stringify(data),
91
- credentials: "include"
92
- });
142
+ const res = await fetch(
143
+ getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
144
+ {
145
+ method: "PUT",
146
+ body: JSON.stringify(data),
147
+ credentials: "include"
148
+ }
149
+ );
93
150
  if (res.ok) {
94
151
  const data2 = await res.json();
95
152
  setToken(data2.accessToken);
@@ -105,7 +162,7 @@ function useLogout() {
105
162
  return (0, import_react.useCallback)(
106
163
  async (data) => {
107
164
  setToken(null);
108
- await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
165
+ await fetch(getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */), {
109
166
  method: "DELETE",
110
167
  credentials: "include",
111
168
  body: JSON.stringify(data)
@@ -8,6 +8,57 @@ import React, {
8
8
  useEffect,
9
9
  useState
10
10
  } from "react";
11
+
12
+ // src/env.ts
13
+ var getEnvValue = (key) => {
14
+ switch (key) {
15
+ case "NEXT_PUBLIC_GRAPHQL_ENDPOINT" /* NEXT_PUBLIC_GRAPHQL_ENDPOINT */:
16
+ return process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT;
17
+ case "NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */:
18
+ return process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT;
19
+ case "NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT" /* NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT */:
20
+ return process.env.NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT;
21
+ case "NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT" /* NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT */:
22
+ return process.env.NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT;
23
+ case "NEXT_PUBLIC_FILE_ENDPOINT" /* NEXT_PUBLIC_FILE_ENDPOINT */:
24
+ return process.env.NEXT_PUBLIC_FILE_ENDPOINT;
25
+ case "NEXT_PUBLIC_BASE_URL" /* NEXT_PUBLIC_BASE_URL */:
26
+ return process.env.NEXT_PUBLIC_BASE_URL;
27
+ case "REFRESH_KEY" /* REFRESH_KEY */:
28
+ return process.env.REFRESH_KEY;
29
+ case "SIGNING_KEY" /* SIGNING_KEY */:
30
+ return process.env.SIGNING_KEY;
31
+ case "INSTAGRAM_CLIENT_SECRET" /* INSTAGRAM_CLIENT_SECRET */:
32
+ return process.env.INSTAGRAM_CLIENT_SECRET;
33
+ case "INSTAGRAM_CLIENT_ID" /* INSTAGRAM_CLIENT_ID */:
34
+ return process.env.INSTAGRAM_CLIENT_ID;
35
+ case "GOOGLE_CLIENT_SECRET" /* GOOGLE_CLIENT_SECRET */:
36
+ return process.env.GOOGLE_CLIENT_SECRET;
37
+ case "GOOGLE_CLIENT_ID" /* GOOGLE_CLIENT_ID */:
38
+ return process.env.GOOGLE_CLIENT_ID;
39
+ case "TURNSTILE_KEY" /* TURNSTILE_KEY */:
40
+ return process.env.TURNSTILE_KEY;
41
+ case "AWS_ACCESS_KEY_ID" /* AWS_ACCESS_KEY_ID */:
42
+ return process.env.AWS_ACCESS_KEY_ID;
43
+ case "AWS_ACCESS_KEY_SECRET" /* AWS_ACCESS_KEY_SECRET */:
44
+ return process.env.AWS_ACCESS_KEY_SECRET;
45
+ case "AWS_REGION" /* AWS_REGION */:
46
+ return process.env.AWS_REGION;
47
+ case "AWS_BUCKET" /* AWS_BUCKET */:
48
+ return process.env.AWS_BUCKET;
49
+ case "NODE_ENV" /* NODE_ENV */:
50
+ return process.env.NODE_ENV;
51
+ default:
52
+ return process.env[key];
53
+ }
54
+ };
55
+ function getEnv(key, skipCheck) {
56
+ const value = getEnvValue(key);
57
+ if (!skipCheck && !value) throw new Error(`${key} is not defined`);
58
+ return value;
59
+ }
60
+
61
+ // src/auth/email/client.tsx
11
62
  var TokenContext = createContext({
12
63
  token: null,
13
64
  setToken: () => null
@@ -15,7 +66,7 @@ var TokenContext = createContext({
15
66
  var AuthWrapper = ({ children }) => {
16
67
  const [token, setToken] = useState(null);
17
68
  useEffect(() => {
18
- fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
69
+ fetch(getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */), {
19
70
  credentials: "include"
20
71
  }).then((res) => res.json()).then((data) => setToken(data.accessToken));
21
72
  }, []);
@@ -33,11 +84,14 @@ function useSignUp() {
33
84
  const setToken = useSetToken();
34
85
  return useCallback(
35
86
  async (data) => {
36
- const res = await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
37
- method: "POST",
38
- body: JSON.stringify(data),
39
- credentials: "include"
40
- });
87
+ const res = await fetch(
88
+ getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
89
+ {
90
+ method: "POST",
91
+ body: JSON.stringify(data),
92
+ credentials: "include"
93
+ }
94
+ );
41
95
  if (res.ok) {
42
96
  const data2 = await res.json();
43
97
  setToken(data2.accessToken);
@@ -52,11 +106,14 @@ function useLogin() {
52
106
  const setToken = useSetToken();
53
107
  return useCallback(
54
108
  async (data) => {
55
- const res = await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
56
- method: "PUT",
57
- body: JSON.stringify(data),
58
- credentials: "include"
59
- });
109
+ const res = await fetch(
110
+ getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */),
111
+ {
112
+ method: "PUT",
113
+ body: JSON.stringify(data),
114
+ credentials: "include"
115
+ }
116
+ );
60
117
  if (res.ok) {
61
118
  const data2 = await res.json();
62
119
  setToken(data2.accessToken);
@@ -72,7 +129,7 @@ function useLogout() {
72
129
  return useCallback(
73
130
  async (data) => {
74
131
  setToken(null);
75
- await fetch(process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT, {
132
+ await fetch(getEnv("NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */), {
76
133
  method: "DELETE",
77
134
  credentials: "include",
78
135
  body: JSON.stringify(data)
@@ -35,6 +35,55 @@ var import_headers = require("next/headers");
35
35
  var import_navigation = require("next/navigation");
36
36
  var import_server = require("next/server");
37
37
 
38
+ // src/env.ts
39
+ var getEnvValue = (key) => {
40
+ switch (key) {
41
+ case "NEXT_PUBLIC_GRAPHQL_ENDPOINT" /* NEXT_PUBLIC_GRAPHQL_ENDPOINT */:
42
+ return process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT;
43
+ case "NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */:
44
+ return process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT;
45
+ case "NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT" /* NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT */:
46
+ return process.env.NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT;
47
+ case "NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT" /* NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT */:
48
+ return process.env.NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT;
49
+ case "NEXT_PUBLIC_FILE_ENDPOINT" /* NEXT_PUBLIC_FILE_ENDPOINT */:
50
+ return process.env.NEXT_PUBLIC_FILE_ENDPOINT;
51
+ case "NEXT_PUBLIC_BASE_URL" /* NEXT_PUBLIC_BASE_URL */:
52
+ return process.env.NEXT_PUBLIC_BASE_URL;
53
+ case "REFRESH_KEY" /* REFRESH_KEY */:
54
+ return process.env.REFRESH_KEY;
55
+ case "SIGNING_KEY" /* SIGNING_KEY */:
56
+ return process.env.SIGNING_KEY;
57
+ case "INSTAGRAM_CLIENT_SECRET" /* INSTAGRAM_CLIENT_SECRET */:
58
+ return process.env.INSTAGRAM_CLIENT_SECRET;
59
+ case "INSTAGRAM_CLIENT_ID" /* INSTAGRAM_CLIENT_ID */:
60
+ return process.env.INSTAGRAM_CLIENT_ID;
61
+ case "GOOGLE_CLIENT_SECRET" /* GOOGLE_CLIENT_SECRET */:
62
+ return process.env.GOOGLE_CLIENT_SECRET;
63
+ case "GOOGLE_CLIENT_ID" /* GOOGLE_CLIENT_ID */:
64
+ return process.env.GOOGLE_CLIENT_ID;
65
+ case "TURNSTILE_KEY" /* TURNSTILE_KEY */:
66
+ return process.env.TURNSTILE_KEY;
67
+ case "AWS_ACCESS_KEY_ID" /* AWS_ACCESS_KEY_ID */:
68
+ return process.env.AWS_ACCESS_KEY_ID;
69
+ case "AWS_ACCESS_KEY_SECRET" /* AWS_ACCESS_KEY_SECRET */:
70
+ return process.env.AWS_ACCESS_KEY_SECRET;
71
+ case "AWS_REGION" /* AWS_REGION */:
72
+ return process.env.AWS_REGION;
73
+ case "AWS_BUCKET" /* AWS_BUCKET */:
74
+ return process.env.AWS_BUCKET;
75
+ case "NODE_ENV" /* NODE_ENV */:
76
+ return process.env.NODE_ENV;
77
+ default:
78
+ return process.env[key];
79
+ }
80
+ };
81
+ function getEnv(key, skipCheck) {
82
+ const value = getEnvValue(key);
83
+ if (!skipCheck && !value) throw new Error(`${key} is not defined`);
84
+ return value;
85
+ }
86
+
38
87
  // src/auth/constants.ts
39
88
  var REFRESH_COOKIE_NAME = "refresh";
40
89
 
@@ -107,12 +156,13 @@ async function massageRequest(req, options) {
107
156
  return {
108
157
  error: handleError(400, "Missing password", options.onError)
109
158
  };
110
- if (options.turnstileKey) {
159
+ const turnstileKey = getEnv("TURNSTILE_KEY" /* TURNSTILE_KEY */, true);
160
+ if (turnstileKey) {
111
161
  if (!data.captchaToken)
112
162
  return {
113
163
  error: handleError(400, "Missing captchaToken", options.onError)
114
164
  };
115
- if (!await verifyCaptcha(data.captchaToken, options.turnstileKey))
165
+ if (!await verifyCaptcha(data.captchaToken, turnstileKey))
116
166
  return {
117
167
  error: handleError(400, "Invalid captcha", options.onError)
118
168
  };
@@ -145,17 +195,20 @@ async function verifyCaptcha(token, secret) {
145
195
  }
146
196
  return false;
147
197
  }
148
- var getContext = (keys, req) => {
198
+ var getContext = (req) => {
149
199
  const bearer = req.headers.get("authorization");
150
200
  if (!bearer) {
151
201
  const refresh = req.cookies.get(REFRESH_COOKIE_NAME)?.value;
152
- const userId = getUserIdFromRefreshToken(keys.refresh, refresh);
202
+ const userId = getUserIdFromRefreshToken(
203
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */),
204
+ refresh
205
+ );
153
206
  if (userId) return { userId, isRefreshID: true };
154
207
  return { userId: null };
155
208
  }
156
209
  const token = bearer.slice(7);
157
210
  try {
158
- const res = (0, import_jsonwebtoken2.verify)(token, keys.signing);
211
+ const res = (0, import_jsonwebtoken2.verify)(token, getEnv("SIGNING_KEY" /* SIGNING_KEY */));
159
212
  if (typeof res === "string") {
160
213
  return { userId: null };
161
214
  }
@@ -170,7 +223,7 @@ var getContext = (keys, req) => {
170
223
  // src/auth/email/routes/delete.ts
171
224
  var getDeleteRoute = (options) => async (req) => {
172
225
  if (options.onLogout) {
173
- const ctx = await getContext(options.keys, req);
226
+ const ctx = await getContext(req);
174
227
  const body = await req.json();
175
228
  await options.onLogout?.(ctx.userId, body);
176
229
  }
@@ -180,14 +233,17 @@ var getDeleteRoute = (options) => async (req) => {
180
233
  // src/auth/email/routes/get.ts
181
234
  var getGetRoute = (options) => async (req) => {
182
235
  const refresh = req.cookies.get(REFRESH_COOKIE_NAME)?.value;
183
- const userID = getUserIdFromRefreshToken(options.keys.refresh, refresh);
236
+ const userID = getUserIdFromRefreshToken(
237
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */),
238
+ refresh
239
+ );
184
240
  if (userID) {
185
241
  if (options.onRefresh) {
186
242
  const body = await req.json();
187
243
  await options.onRefresh?.(userID, body);
188
244
  }
189
245
  return getTokenizedResponse(
190
- generateAccessToken(userID, options.keys.signing)
246
+ generateAccessToken(userID, getEnv("SIGNING_KEY" /* SIGNING_KEY */))
191
247
  );
192
248
  }
193
249
  return getTokenizedResponse();
@@ -202,8 +258,11 @@ var getPostRoute = (options) => async (req) => {
202
258
  if (existingUser) {
203
259
  if (await verifyUser(existingUser, data.password)) {
204
260
  return getTokenizedResponse(
205
- generateAccessToken(existingUser.id, options.keys.signing),
206
- generateRefreshToken(existingUser.id, options.keys.refresh)
261
+ generateAccessToken(existingUser.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
262
+ generateRefreshToken(
263
+ existingUser.id,
264
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */)
265
+ )
207
266
  );
208
267
  }
209
268
  return handleError(400, "A user already exists", options.onError);
@@ -218,8 +277,8 @@ var getPostRoute = (options) => async (req) => {
218
277
  await options.onSignUp?.(newUser.id, data);
219
278
  }
220
279
  return getTokenizedResponse(
221
- generateAccessToken(newUser.id, options.keys.signing),
222
- generateRefreshToken(newUser.id, options.keys.refresh)
280
+ generateAccessToken(newUser.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
281
+ generateRefreshToken(newUser.id, getEnv("REFRESH_KEY" /* REFRESH_KEY */))
223
282
  );
224
283
  }
225
284
  return getTokenizedResponse();
@@ -237,8 +296,8 @@ var getPutRoute = (options) => async (req) => {
237
296
  await options.onLogin?.(user.id, data);
238
297
  }
239
298
  return getTokenizedResponse(
240
- generateAccessToken(user.id, options.keys.signing),
241
- generateRefreshToken(user.id, options.keys.refresh)
299
+ generateAccessToken(user.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
300
+ generateRefreshToken(user.id, getEnv("REFRESH_KEY" /* REFRESH_KEY */))
242
301
  );
243
302
  }
244
303
  return handleError(403, "Invalid password", options.onError);
@@ -251,7 +310,7 @@ function getEmailAuthRoutes(options) {
251
310
  POST: getPostRoute(options),
252
311
  PUT: getPutRoute(options),
253
312
  DELETE: getDeleteRoute(options),
254
- getContext: (req) => getContext(options.keys, req)
313
+ getContext
255
314
  };
256
315
  }
257
316
  // Annotate the CommonJS export names for ESM import in node:
@@ -8,6 +8,55 @@ import { cookies } from "next/headers";
8
8
  import { redirect } from "next/navigation";
9
9
  import { NextResponse } from "next/server";
10
10
 
11
+ // src/env.ts
12
+ var getEnvValue = (key) => {
13
+ switch (key) {
14
+ case "NEXT_PUBLIC_GRAPHQL_ENDPOINT" /* NEXT_PUBLIC_GRAPHQL_ENDPOINT */:
15
+ return process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT;
16
+ case "NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */:
17
+ return process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT;
18
+ case "NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT" /* NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT */:
19
+ return process.env.NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT;
20
+ case "NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT" /* NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT */:
21
+ return process.env.NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT;
22
+ case "NEXT_PUBLIC_FILE_ENDPOINT" /* NEXT_PUBLIC_FILE_ENDPOINT */:
23
+ return process.env.NEXT_PUBLIC_FILE_ENDPOINT;
24
+ case "NEXT_PUBLIC_BASE_URL" /* NEXT_PUBLIC_BASE_URL */:
25
+ return process.env.NEXT_PUBLIC_BASE_URL;
26
+ case "REFRESH_KEY" /* REFRESH_KEY */:
27
+ return process.env.REFRESH_KEY;
28
+ case "SIGNING_KEY" /* SIGNING_KEY */:
29
+ return process.env.SIGNING_KEY;
30
+ case "INSTAGRAM_CLIENT_SECRET" /* INSTAGRAM_CLIENT_SECRET */:
31
+ return process.env.INSTAGRAM_CLIENT_SECRET;
32
+ case "INSTAGRAM_CLIENT_ID" /* INSTAGRAM_CLIENT_ID */:
33
+ return process.env.INSTAGRAM_CLIENT_ID;
34
+ case "GOOGLE_CLIENT_SECRET" /* GOOGLE_CLIENT_SECRET */:
35
+ return process.env.GOOGLE_CLIENT_SECRET;
36
+ case "GOOGLE_CLIENT_ID" /* GOOGLE_CLIENT_ID */:
37
+ return process.env.GOOGLE_CLIENT_ID;
38
+ case "TURNSTILE_KEY" /* TURNSTILE_KEY */:
39
+ return process.env.TURNSTILE_KEY;
40
+ case "AWS_ACCESS_KEY_ID" /* AWS_ACCESS_KEY_ID */:
41
+ return process.env.AWS_ACCESS_KEY_ID;
42
+ case "AWS_ACCESS_KEY_SECRET" /* AWS_ACCESS_KEY_SECRET */:
43
+ return process.env.AWS_ACCESS_KEY_SECRET;
44
+ case "AWS_REGION" /* AWS_REGION */:
45
+ return process.env.AWS_REGION;
46
+ case "AWS_BUCKET" /* AWS_BUCKET */:
47
+ return process.env.AWS_BUCKET;
48
+ case "NODE_ENV" /* NODE_ENV */:
49
+ return process.env.NODE_ENV;
50
+ default:
51
+ return process.env[key];
52
+ }
53
+ };
54
+ function getEnv(key, skipCheck) {
55
+ const value = getEnvValue(key);
56
+ if (!skipCheck && !value) throw new Error(`${key} is not defined`);
57
+ return value;
58
+ }
59
+
11
60
  // src/auth/constants.ts
12
61
  var REFRESH_COOKIE_NAME = "refresh";
13
62
 
@@ -80,12 +129,13 @@ async function massageRequest(req, options) {
80
129
  return {
81
130
  error: handleError(400, "Missing password", options.onError)
82
131
  };
83
- if (options.turnstileKey) {
132
+ const turnstileKey = getEnv("TURNSTILE_KEY" /* TURNSTILE_KEY */, true);
133
+ if (turnstileKey) {
84
134
  if (!data.captchaToken)
85
135
  return {
86
136
  error: handleError(400, "Missing captchaToken", options.onError)
87
137
  };
88
- if (!await verifyCaptcha(data.captchaToken, options.turnstileKey))
138
+ if (!await verifyCaptcha(data.captchaToken, turnstileKey))
89
139
  return {
90
140
  error: handleError(400, "Invalid captcha", options.onError)
91
141
  };
@@ -118,17 +168,20 @@ async function verifyCaptcha(token, secret) {
118
168
  }
119
169
  return false;
120
170
  }
121
- var getContext = (keys, req) => {
171
+ var getContext = (req) => {
122
172
  const bearer = req.headers.get("authorization");
123
173
  if (!bearer) {
124
174
  const refresh = req.cookies.get(REFRESH_COOKIE_NAME)?.value;
125
- const userId = getUserIdFromRefreshToken(keys.refresh, refresh);
175
+ const userId = getUserIdFromRefreshToken(
176
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */),
177
+ refresh
178
+ );
126
179
  if (userId) return { userId, isRefreshID: true };
127
180
  return { userId: null };
128
181
  }
129
182
  const token = bearer.slice(7);
130
183
  try {
131
- const res = verify2(token, keys.signing);
184
+ const res = verify2(token, getEnv("SIGNING_KEY" /* SIGNING_KEY */));
132
185
  if (typeof res === "string") {
133
186
  return { userId: null };
134
187
  }
@@ -143,7 +196,7 @@ var getContext = (keys, req) => {
143
196
  // src/auth/email/routes/delete.ts
144
197
  var getDeleteRoute = (options) => async (req) => {
145
198
  if (options.onLogout) {
146
- const ctx = await getContext(options.keys, req);
199
+ const ctx = await getContext(req);
147
200
  const body = await req.json();
148
201
  await options.onLogout?.(ctx.userId, body);
149
202
  }
@@ -153,14 +206,17 @@ var getDeleteRoute = (options) => async (req) => {
153
206
  // src/auth/email/routes/get.ts
154
207
  var getGetRoute = (options) => async (req) => {
155
208
  const refresh = req.cookies.get(REFRESH_COOKIE_NAME)?.value;
156
- const userID = getUserIdFromRefreshToken(options.keys.refresh, refresh);
209
+ const userID = getUserIdFromRefreshToken(
210
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */),
211
+ refresh
212
+ );
157
213
  if (userID) {
158
214
  if (options.onRefresh) {
159
215
  const body = await req.json();
160
216
  await options.onRefresh?.(userID, body);
161
217
  }
162
218
  return getTokenizedResponse(
163
- generateAccessToken(userID, options.keys.signing)
219
+ generateAccessToken(userID, getEnv("SIGNING_KEY" /* SIGNING_KEY */))
164
220
  );
165
221
  }
166
222
  return getTokenizedResponse();
@@ -175,8 +231,11 @@ var getPostRoute = (options) => async (req) => {
175
231
  if (existingUser) {
176
232
  if (await verifyUser(existingUser, data.password)) {
177
233
  return getTokenizedResponse(
178
- generateAccessToken(existingUser.id, options.keys.signing),
179
- generateRefreshToken(existingUser.id, options.keys.refresh)
234
+ generateAccessToken(existingUser.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
235
+ generateRefreshToken(
236
+ existingUser.id,
237
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */)
238
+ )
180
239
  );
181
240
  }
182
241
  return handleError(400, "A user already exists", options.onError);
@@ -191,8 +250,8 @@ var getPostRoute = (options) => async (req) => {
191
250
  await options.onSignUp?.(newUser.id, data);
192
251
  }
193
252
  return getTokenizedResponse(
194
- generateAccessToken(newUser.id, options.keys.signing),
195
- generateRefreshToken(newUser.id, options.keys.refresh)
253
+ generateAccessToken(newUser.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
254
+ generateRefreshToken(newUser.id, getEnv("REFRESH_KEY" /* REFRESH_KEY */))
196
255
  );
197
256
  }
198
257
  return getTokenizedResponse();
@@ -210,8 +269,8 @@ var getPutRoute = (options) => async (req) => {
210
269
  await options.onLogin?.(user.id, data);
211
270
  }
212
271
  return getTokenizedResponse(
213
- generateAccessToken(user.id, options.keys.signing),
214
- generateRefreshToken(user.id, options.keys.refresh)
272
+ generateAccessToken(user.id, getEnv("SIGNING_KEY" /* SIGNING_KEY */)),
273
+ generateRefreshToken(user.id, getEnv("REFRESH_KEY" /* REFRESH_KEY */))
215
274
  );
216
275
  }
217
276
  return handleError(403, "Invalid password", options.onError);
@@ -224,7 +283,7 @@ function getEmailAuthRoutes(options) {
224
283
  POST: getPostRoute(options),
225
284
  PUT: getPutRoute(options),
226
285
  DELETE: getDeleteRoute(options),
227
- getContext: (req) => getContext(options.keys, req)
286
+ getContext
228
287
  };
229
288
  }
230
289
  export {
@@ -31,6 +31,55 @@ var import_headers = require("next/headers");
31
31
  var import_navigation = require("next/navigation");
32
32
  var import_server = require("next/server");
33
33
 
34
+ // src/env.ts
35
+ var getEnvValue = (key) => {
36
+ switch (key) {
37
+ case "NEXT_PUBLIC_GRAPHQL_ENDPOINT" /* NEXT_PUBLIC_GRAPHQL_ENDPOINT */:
38
+ return process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT;
39
+ case "NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT" /* NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT */:
40
+ return process.env.NEXT_PUBLIC_EMAIL_AUTH_ENDPOINT;
41
+ case "NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT" /* NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT */:
42
+ return process.env.NEXT_PUBLIC_GOOGLE_AUTH_ENDPOINT;
43
+ case "NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT" /* NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT */:
44
+ return process.env.NEXT_PUBLIC_INSTAGRAM_AUTH_ENDPOINT;
45
+ case "NEXT_PUBLIC_FILE_ENDPOINT" /* NEXT_PUBLIC_FILE_ENDPOINT */:
46
+ return process.env.NEXT_PUBLIC_FILE_ENDPOINT;
47
+ case "NEXT_PUBLIC_BASE_URL" /* NEXT_PUBLIC_BASE_URL */:
48
+ return process.env.NEXT_PUBLIC_BASE_URL;
49
+ case "REFRESH_KEY" /* REFRESH_KEY */:
50
+ return process.env.REFRESH_KEY;
51
+ case "SIGNING_KEY" /* SIGNING_KEY */:
52
+ return process.env.SIGNING_KEY;
53
+ case "INSTAGRAM_CLIENT_SECRET" /* INSTAGRAM_CLIENT_SECRET */:
54
+ return process.env.INSTAGRAM_CLIENT_SECRET;
55
+ case "INSTAGRAM_CLIENT_ID" /* INSTAGRAM_CLIENT_ID */:
56
+ return process.env.INSTAGRAM_CLIENT_ID;
57
+ case "GOOGLE_CLIENT_SECRET" /* GOOGLE_CLIENT_SECRET */:
58
+ return process.env.GOOGLE_CLIENT_SECRET;
59
+ case "GOOGLE_CLIENT_ID" /* GOOGLE_CLIENT_ID */:
60
+ return process.env.GOOGLE_CLIENT_ID;
61
+ case "TURNSTILE_KEY" /* TURNSTILE_KEY */:
62
+ return process.env.TURNSTILE_KEY;
63
+ case "AWS_ACCESS_KEY_ID" /* AWS_ACCESS_KEY_ID */:
64
+ return process.env.AWS_ACCESS_KEY_ID;
65
+ case "AWS_ACCESS_KEY_SECRET" /* AWS_ACCESS_KEY_SECRET */:
66
+ return process.env.AWS_ACCESS_KEY_SECRET;
67
+ case "AWS_REGION" /* AWS_REGION */:
68
+ return process.env.AWS_REGION;
69
+ case "AWS_BUCKET" /* AWS_BUCKET */:
70
+ return process.env.AWS_BUCKET;
71
+ case "NODE_ENV" /* NODE_ENV */:
72
+ return process.env.NODE_ENV;
73
+ default:
74
+ return process.env[key];
75
+ }
76
+ };
77
+ function getEnv(key, skipCheck) {
78
+ const value = getEnvValue(key);
79
+ if (!skipCheck && !value) throw new Error(`${key} is not defined`);
80
+ return value;
81
+ }
82
+
34
83
  // src/auth/constants.ts
35
84
  var REFRESH_COOKIE_NAME = "refresh";
36
85
 
@@ -76,17 +125,20 @@ var import_jsonwebtoken2 = require("jsonwebtoken");
76
125
  var import_server2 = require("next/server");
77
126
 
78
127
  // src/auth/email/utils.ts
79
- var getContext = (keys, req) => {
128
+ var getContext = (req) => {
80
129
  const bearer = req.headers.get("authorization");
81
130
  if (!bearer) {
82
131
  const refresh = req.cookies.get(REFRESH_COOKIE_NAME)?.value;
83
- const userId = getUserIdFromRefreshToken(keys.refresh, refresh);
132
+ const userId = getUserIdFromRefreshToken(
133
+ getEnv("REFRESH_KEY" /* REFRESH_KEY */),
134
+ refresh
135
+ );
84
136
  if (userId) return { userId, isRefreshID: true };
85
137
  return { userId: null };
86
138
  }
87
139
  const token = bearer.slice(7);
88
140
  try {
89
- const res = (0, import_jsonwebtoken2.verify)(token, keys.signing);
141
+ const res = (0, import_jsonwebtoken2.verify)(token, getEnv("SIGNING_KEY" /* SIGNING_KEY */));
90
142
  if (typeof res === "string") {
91
143
  return { userId: null };
92
144
  }
@@ -101,7 +153,7 @@ var getContext = (keys, req) => {
101
153
  // src/auth/email/routes/delete.ts
102
154
  var getDeleteRoute = (options) => async (req) => {
103
155
  if (options.onLogout) {
104
- const ctx = await getContext(options.keys, req);
156
+ const ctx = await getContext(req);
105
157
  const body = await req.json();
106
158
  await options.onLogout?.(ctx.userId, body);
107
159
  }