naystack 1.5.32 → 1.5.34

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.
@@ -36,7 +36,10 @@ __export(email_exports, {
36
36
  getEmailAuthRoutes: () => getEmailAuthRoutes
37
37
  });
38
38
  module.exports = __toCommonJS(email_exports);
39
- var import_server4 = require("next/server");
39
+ var import_server5 = require("next/server");
40
+
41
+ // src/utils/route.ts
42
+ var import_server = require("next/server");
40
43
 
41
44
  // src/auth/constants.ts
42
45
  var REFRESH_COOKIE_NAME = "refresh";
@@ -54,20 +57,18 @@ function getCorsHeaders(origin, allowedOrigins) {
54
57
  }
55
58
  function withCors(handler, allowedOrigins) {
56
59
  if (!allowedOrigins?.length) return handler;
57
- return ((req) => {
58
- return handler(req).then((response) => {
59
- if (!response) return response;
60
- const corsHeaders = getCorsHeaders(
61
- req.headers.get("origin"),
62
- allowedOrigins
63
- );
64
- if (corsHeaders) {
65
- Object.entries(corsHeaders).forEach(([key, value]) => {
66
- response.headers.set(key, value);
67
- });
68
- }
69
- return response;
60
+ return (async (req) => {
61
+ const origin = req.headers.get("origin");
62
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
63
+ if (origin && !corsHeaders) {
64
+ return new import_server.NextResponse(null, { status: 403 });
65
+ }
66
+ const response = await handler(req);
67
+ if (!response || !corsHeaders) return response;
68
+ Object.entries(corsHeaders).forEach(([key, value]) => {
69
+ response.headers.set(key, value);
70
70
  });
71
+ return response;
71
72
  });
72
73
  }
73
74
 
@@ -76,7 +77,7 @@ var import_bcryptjs = require("bcryptjs");
76
77
  var import_jsonwebtoken = require("jsonwebtoken");
77
78
  var import_headers = require("next/headers");
78
79
  var import_navigation = require("next/navigation");
79
- var import_server = require("next/server");
80
+ var import_server2 = require("next/server");
80
81
 
81
82
  // src/env.ts
82
83
  var getEnvValue = (key) => {
@@ -138,7 +139,7 @@ function generateRefreshToken(id, refreshKey) {
138
139
  }
139
140
  function getTokenizedResponse(accessToken, refreshToken) {
140
141
  const body = { accessToken, refreshToken };
141
- const response = import_server.NextResponse.json(body, {
142
+ const response = import_server2.NextResponse.json(body, {
142
143
  status: 200
143
144
  });
144
145
  if (!accessToken) {
@@ -185,11 +186,11 @@ async function checkAuthStatus(redirectUnauthorizedURL) {
185
186
  var import_jsonwebtoken2 = require("jsonwebtoken");
186
187
 
187
188
  // src/auth/utils/errors.ts
188
- var import_server2 = require("next/server");
189
+ var import_server3 = require("next/server");
189
190
  function handleError(status, message, onError) {
190
191
  const res = onError?.({ status, message });
191
192
  if (res) return res;
192
- return new import_server2.NextResponse(message, { status });
193
+ return new import_server3.NextResponse(message, { status });
193
194
  }
194
195
 
195
196
  // src/auth/email/utils.ts
@@ -410,7 +411,7 @@ function getEmailAuthRoutes(options) {
410
411
  req.headers.get("origin"),
411
412
  allowedOrigins
412
413
  );
413
- return new import_server4.NextResponse(null, {
414
+ return new import_server5.NextResponse(null, {
414
415
  status: 204,
415
416
  headers: corsHeaders ?? void 0
416
417
  });
@@ -1,5 +1,8 @@
1
1
  // src/auth/email/index.ts
2
- import { NextResponse as NextResponse3 } from "next/server";
2
+ import { NextResponse as NextResponse4 } from "next/server";
3
+
4
+ // src/utils/route.ts
5
+ import { NextResponse } from "next/server";
3
6
 
4
7
  // src/auth/constants.ts
5
8
  var REFRESH_COOKIE_NAME = "refresh";
@@ -17,20 +20,18 @@ function getCorsHeaders(origin, allowedOrigins) {
17
20
  }
18
21
  function withCors(handler, allowedOrigins) {
19
22
  if (!allowedOrigins?.length) return handler;
20
- return ((req) => {
21
- return handler(req).then((response) => {
22
- if (!response) return response;
23
- const corsHeaders = getCorsHeaders(
24
- req.headers.get("origin"),
25
- allowedOrigins
26
- );
27
- if (corsHeaders) {
28
- Object.entries(corsHeaders).forEach(([key, value]) => {
29
- response.headers.set(key, value);
30
- });
31
- }
32
- return response;
23
+ return (async (req) => {
24
+ const origin = req.headers.get("origin");
25
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
26
+ if (origin && !corsHeaders) {
27
+ return new NextResponse(null, { status: 403 });
28
+ }
29
+ const response = await handler(req);
30
+ if (!response || !corsHeaders) return response;
31
+ Object.entries(corsHeaders).forEach(([key, value]) => {
32
+ response.headers.set(key, value);
33
33
  });
34
+ return response;
34
35
  });
35
36
  }
36
37
 
@@ -39,7 +40,7 @@ import { compare } from "bcryptjs";
39
40
  import { JsonWebTokenError, sign, verify } from "jsonwebtoken";
40
41
  import { cookies } from "next/headers";
41
42
  import { redirect } from "next/navigation";
42
- import { NextResponse } from "next/server";
43
+ import { NextResponse as NextResponse2 } from "next/server";
43
44
 
44
45
  // src/env.ts
45
46
  var getEnvValue = (key) => {
@@ -101,7 +102,7 @@ function generateRefreshToken(id, refreshKey) {
101
102
  }
102
103
  function getTokenizedResponse(accessToken, refreshToken) {
103
104
  const body = { accessToken, refreshToken };
104
- const response = NextResponse.json(body, {
105
+ const response = NextResponse2.json(body, {
105
106
  status: 200
106
107
  });
107
108
  if (!accessToken) {
@@ -148,11 +149,11 @@ async function checkAuthStatus(redirectUnauthorizedURL) {
148
149
  import { verify as verify2 } from "jsonwebtoken";
149
150
 
150
151
  // src/auth/utils/errors.ts
151
- import { NextResponse as NextResponse2 } from "next/server";
152
+ import { NextResponse as NextResponse3 } from "next/server";
152
153
  function handleError(status, message, onError) {
153
154
  const res = onError?.({ status, message });
154
155
  if (res) return res;
155
- return new NextResponse2(message, { status });
156
+ return new NextResponse3(message, { status });
156
157
  }
157
158
 
158
159
  // src/auth/email/utils.ts
@@ -377,7 +378,7 @@ function getEmailAuthRoutes(options) {
377
378
  req.headers.get("origin"),
378
379
  allowedOrigins
379
380
  );
380
- return new NextResponse3(null, {
381
+ return new NextResponse4(null, {
381
382
  status: 204,
382
383
  headers: corsHeaders ?? void 0
383
384
  });
@@ -42,7 +42,10 @@ __export(auth_exports, {
42
42
  module.exports = __toCommonJS(auth_exports);
43
43
 
44
44
  // src/auth/email/index.ts
45
- var import_server4 = require("next/server");
45
+ var import_server5 = require("next/server");
46
+
47
+ // src/utils/route.ts
48
+ var import_server = require("next/server");
46
49
 
47
50
  // src/auth/constants.ts
48
51
  var REFRESH_COOKIE_NAME = "refresh";
@@ -60,20 +63,18 @@ function getCorsHeaders(origin, allowedOrigins) {
60
63
  }
61
64
  function withCors(handler, allowedOrigins) {
62
65
  if (!allowedOrigins?.length) return handler;
63
- return ((req) => {
64
- return handler(req).then((response) => {
65
- if (!response) return response;
66
- const corsHeaders = getCorsHeaders(
67
- req.headers.get("origin"),
68
- allowedOrigins
69
- );
70
- if (corsHeaders) {
71
- Object.entries(corsHeaders).forEach(([key, value]) => {
72
- response.headers.set(key, value);
73
- });
74
- }
75
- return response;
66
+ return (async (req) => {
67
+ const origin = req.headers.get("origin");
68
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
69
+ if (origin && !corsHeaders) {
70
+ return new import_server.NextResponse(null, { status: 403 });
71
+ }
72
+ const response = await handler(req);
73
+ if (!response || !corsHeaders) return response;
74
+ Object.entries(corsHeaders).forEach(([key, value]) => {
75
+ response.headers.set(key, value);
76
76
  });
77
+ return response;
77
78
  });
78
79
  }
79
80
 
@@ -82,7 +83,7 @@ var import_bcryptjs = require("bcryptjs");
82
83
  var import_jsonwebtoken = require("jsonwebtoken");
83
84
  var import_headers = require("next/headers");
84
85
  var import_navigation = require("next/navigation");
85
- var import_server = require("next/server");
86
+ var import_server2 = require("next/server");
86
87
 
87
88
  // src/env.ts
88
89
  var getEnvValue = (key) => {
@@ -144,7 +145,7 @@ function generateRefreshToken(id, refreshKey) {
144
145
  }
145
146
  function getTokenizedResponse(accessToken, refreshToken) {
146
147
  const body = { accessToken, refreshToken };
147
- const response = import_server.NextResponse.json(body, {
148
+ const response = import_server2.NextResponse.json(body, {
148
149
  status: 200
149
150
  });
150
151
  if (!accessToken) {
@@ -203,11 +204,11 @@ async function checkAuthStatus(redirectUnauthorizedURL) {
203
204
  var import_jsonwebtoken2 = require("jsonwebtoken");
204
205
 
205
206
  // src/auth/utils/errors.ts
206
- var import_server2 = require("next/server");
207
+ var import_server3 = require("next/server");
207
208
  function handleError(status, message, onError) {
208
209
  const res = onError?.({ status, message });
209
210
  if (res) return res;
210
- return new import_server2.NextResponse(message, { status });
211
+ return new import_server3.NextResponse(message, { status });
211
212
  }
212
213
 
213
214
  // src/auth/email/utils.ts
@@ -428,7 +429,7 @@ function getEmailAuthRoutes(options) {
428
429
  req.headers.get("origin"),
429
430
  allowedOrigins
430
431
  );
431
- return new import_server4.NextResponse(null, {
432
+ return new import_server5.NextResponse(null, {
432
433
  status: 204,
433
434
  headers: corsHeaders ?? void 0
434
435
  });
@@ -439,7 +440,7 @@ function getEmailAuthRoutes(options) {
439
440
 
440
441
  // src/auth/google/get.ts
441
442
  var import_googleapis = require("googleapis");
442
- var import_server6 = require("next/server");
443
+ var import_server7 = require("next/server");
443
444
  var import_uuid = require("uuid");
444
445
  var getGoogleGetRoute = ({
445
446
  getUserIdFromEmail,
@@ -469,7 +470,7 @@ var getGoogleGetRoute = ({
469
470
  prompt: "consent",
470
471
  redirect_uri: url
471
472
  });
472
- const res = import_server6.NextResponse.redirect(authorizationUrl);
473
+ const res = import_server7.NextResponse.redirect(authorizationUrl);
473
474
  res.cookies.set("state", state2, {
474
475
  httpOnly: true,
475
476
  secure: true
@@ -478,12 +479,12 @@ var getGoogleGetRoute = ({
478
479
  }
479
480
  const errorURL = errorRedirectURL || redirectURL;
480
481
  if (error) {
481
- return import_server6.NextResponse.redirect(errorURL);
482
+ return import_server7.NextResponse.redirect(errorURL);
482
483
  }
483
484
  const state = req.nextUrl.searchParams.get("state") || void 0;
484
485
  if (code && state) {
485
486
  const localState = req.cookies.get("state")?.value;
486
- if (localState !== state) return import_server6.NextResponse.redirect(errorURL);
487
+ if (localState !== state) return import_server7.NextResponse.redirect(errorURL);
487
488
  const { tokens } = await oauth2Client.getToken(code);
488
489
  oauth2Client.setCredentials(tokens);
489
490
  const userInfoRequest = await import_googleapis.google.oauth2({
@@ -495,7 +496,7 @@ var getGoogleGetRoute = ({
495
496
  const { data } = JSON.parse(localState);
496
497
  const id = await getUserIdFromEmail(user, data);
497
498
  if (id) {
498
- const res = import_server6.NextResponse.redirect(redirectURL);
499
+ const res = import_server7.NextResponse.redirect(redirectURL);
499
500
  res.cookies.set(
500
501
  REFRESH_COOKIE_NAME,
501
502
  generateRefreshToken(id, getEnv("REFRESH_KEY" /* REFRESH_KEY */)),
@@ -513,7 +514,7 @@ var getGoogleGetRoute = ({
513
514
  }
514
515
  }
515
516
  }
516
- return import_server6.NextResponse.redirect(errorURL);
517
+ return import_server7.NextResponse.redirect(errorURL);
517
518
  };
518
519
  };
519
520
 
@@ -525,7 +526,7 @@ function initGoogleAuth(props) {
525
526
  }
526
527
 
527
528
  // src/auth/instagram/route.ts
528
- var import_server8 = require("next/server");
529
+ var import_server9 = require("next/server");
529
530
 
530
531
  // src/auth/instagram/utils.ts
531
532
  async function getRefreshedInstagramAccessToken(token) {
@@ -587,7 +588,7 @@ var getInstagramUser = (token, id, fields) => {
587
588
  };
588
589
 
589
590
  // src/socials/meta-webhook.ts
590
- var import_server7 = require("next/server");
591
+ var import_server8 = require("next/server");
591
592
 
592
593
  // src/auth/instagram/route.ts
593
594
  var getInstagramRoute = ({
@@ -595,7 +596,7 @@ var getInstagramRoute = ({
595
596
  errorRedirectURL,
596
597
  onUser
597
598
  }) => {
598
- const handleError2 = (message) => import_server8.NextResponse.redirect(`${errorRedirectURL}?error=${message}`);
599
+ const handleError2 = (message) => import_server9.NextResponse.redirect(`${errorRedirectURL}?error=${message}`);
599
600
  return async (req) => {
600
601
  const accessCode = req.nextUrl.searchParams.get("code");
601
602
  const error = req.nextUrl.searchParams.get("error");
@@ -619,7 +620,7 @@ var getInstagramRoute = ({
619
620
  instagramData.accessToken
620
621
  );
621
622
  if (errorMessage) return handleError2(errorMessage);
622
- return import_server8.NextResponse.redirect(redirectURL);
623
+ return import_server9.NextResponse.redirect(redirectURL);
623
624
  };
624
625
  };
625
626
 
@@ -1,5 +1,8 @@
1
1
  // src/auth/email/index.ts
2
- import { NextResponse as NextResponse3 } from "next/server";
2
+ import { NextResponse as NextResponse4 } from "next/server";
3
+
4
+ // src/utils/route.ts
5
+ import { NextResponse } from "next/server";
3
6
 
4
7
  // src/auth/constants.ts
5
8
  var REFRESH_COOKIE_NAME = "refresh";
@@ -17,20 +20,18 @@ function getCorsHeaders(origin, allowedOrigins) {
17
20
  }
18
21
  function withCors(handler, allowedOrigins) {
19
22
  if (!allowedOrigins?.length) return handler;
20
- return ((req) => {
21
- return handler(req).then((response) => {
22
- if (!response) return response;
23
- const corsHeaders = getCorsHeaders(
24
- req.headers.get("origin"),
25
- allowedOrigins
26
- );
27
- if (corsHeaders) {
28
- Object.entries(corsHeaders).forEach(([key, value]) => {
29
- response.headers.set(key, value);
30
- });
31
- }
32
- return response;
23
+ return (async (req) => {
24
+ const origin = req.headers.get("origin");
25
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
26
+ if (origin && !corsHeaders) {
27
+ return new NextResponse(null, { status: 403 });
28
+ }
29
+ const response = await handler(req);
30
+ if (!response || !corsHeaders) return response;
31
+ Object.entries(corsHeaders).forEach(([key, value]) => {
32
+ response.headers.set(key, value);
33
33
  });
34
+ return response;
34
35
  });
35
36
  }
36
37
 
@@ -39,7 +40,7 @@ import { compare } from "bcryptjs";
39
40
  import { JsonWebTokenError, sign, verify } from "jsonwebtoken";
40
41
  import { cookies } from "next/headers";
41
42
  import { redirect } from "next/navigation";
42
- import { NextResponse } from "next/server";
43
+ import { NextResponse as NextResponse2 } from "next/server";
43
44
 
44
45
  // src/env.ts
45
46
  var getEnvValue = (key) => {
@@ -101,7 +102,7 @@ function generateRefreshToken(id, refreshKey) {
101
102
  }
102
103
  function getTokenizedResponse(accessToken, refreshToken) {
103
104
  const body = { accessToken, refreshToken };
104
- const response = NextResponse.json(body, {
105
+ const response = NextResponse2.json(body, {
105
106
  status: 200
106
107
  });
107
108
  if (!accessToken) {
@@ -160,11 +161,11 @@ async function checkAuthStatus(redirectUnauthorizedURL) {
160
161
  import { verify as verify2 } from "jsonwebtoken";
161
162
 
162
163
  // src/auth/utils/errors.ts
163
- import { NextResponse as NextResponse2 } from "next/server";
164
+ import { NextResponse as NextResponse3 } from "next/server";
164
165
  function handleError(status, message, onError) {
165
166
  const res = onError?.({ status, message });
166
167
  if (res) return res;
167
- return new NextResponse2(message, { status });
168
+ return new NextResponse3(message, { status });
168
169
  }
169
170
 
170
171
  // src/auth/email/utils.ts
@@ -389,7 +390,7 @@ function getEmailAuthRoutes(options) {
389
390
  req.headers.get("origin"),
390
391
  allowedOrigins
391
392
  );
392
- return new NextResponse3(null, {
393
+ return new NextResponse4(null, {
393
394
  status: 204,
394
395
  headers: corsHeaders ?? void 0
395
396
  });
@@ -400,7 +401,7 @@ function getEmailAuthRoutes(options) {
400
401
 
401
402
  // src/auth/google/get.ts
402
403
  import { google } from "googleapis";
403
- import { NextResponse as NextResponse4 } from "next/server";
404
+ import { NextResponse as NextResponse5 } from "next/server";
404
405
  import { v4 } from "uuid";
405
406
  var getGoogleGetRoute = ({
406
407
  getUserIdFromEmail,
@@ -430,7 +431,7 @@ var getGoogleGetRoute = ({
430
431
  prompt: "consent",
431
432
  redirect_uri: url
432
433
  });
433
- const res = NextResponse4.redirect(authorizationUrl);
434
+ const res = NextResponse5.redirect(authorizationUrl);
434
435
  res.cookies.set("state", state2, {
435
436
  httpOnly: true,
436
437
  secure: true
@@ -439,12 +440,12 @@ var getGoogleGetRoute = ({
439
440
  }
440
441
  const errorURL = errorRedirectURL || redirectURL;
441
442
  if (error) {
442
- return NextResponse4.redirect(errorURL);
443
+ return NextResponse5.redirect(errorURL);
443
444
  }
444
445
  const state = req.nextUrl.searchParams.get("state") || void 0;
445
446
  if (code && state) {
446
447
  const localState = req.cookies.get("state")?.value;
447
- if (localState !== state) return NextResponse4.redirect(errorURL);
448
+ if (localState !== state) return NextResponse5.redirect(errorURL);
448
449
  const { tokens } = await oauth2Client.getToken(code);
449
450
  oauth2Client.setCredentials(tokens);
450
451
  const userInfoRequest = await google.oauth2({
@@ -456,7 +457,7 @@ var getGoogleGetRoute = ({
456
457
  const { data } = JSON.parse(localState);
457
458
  const id = await getUserIdFromEmail(user, data);
458
459
  if (id) {
459
- const res = NextResponse4.redirect(redirectURL);
460
+ const res = NextResponse5.redirect(redirectURL);
460
461
  res.cookies.set(
461
462
  REFRESH_COOKIE_NAME,
462
463
  generateRefreshToken(id, getEnv("REFRESH_KEY" /* REFRESH_KEY */)),
@@ -474,7 +475,7 @@ var getGoogleGetRoute = ({
474
475
  }
475
476
  }
476
477
  }
477
- return NextResponse4.redirect(errorURL);
478
+ return NextResponse5.redirect(errorURL);
478
479
  };
479
480
  };
480
481
 
@@ -486,7 +487,7 @@ function initGoogleAuth(props) {
486
487
  }
487
488
 
488
489
  // src/auth/instagram/route.ts
489
- import { NextResponse as NextResponse6 } from "next/server";
490
+ import { NextResponse as NextResponse7 } from "next/server";
490
491
 
491
492
  // src/auth/instagram/utils.ts
492
493
  async function getRefreshedInstagramAccessToken(token) {
@@ -548,7 +549,7 @@ var getInstagramUser = (token, id, fields) => {
548
549
  };
549
550
 
550
551
  // src/socials/meta-webhook.ts
551
- import { NextResponse as NextResponse5 } from "next/server";
552
+ import { NextResponse as NextResponse6 } from "next/server";
552
553
 
553
554
  // src/auth/instagram/route.ts
554
555
  var getInstagramRoute = ({
@@ -556,7 +557,7 @@ var getInstagramRoute = ({
556
557
  errorRedirectURL,
557
558
  onUser
558
559
  }) => {
559
- const handleError2 = (message) => NextResponse6.redirect(`${errorRedirectURL}?error=${message}`);
560
+ const handleError2 = (message) => NextResponse7.redirect(`${errorRedirectURL}?error=${message}`);
560
561
  return async (req) => {
561
562
  const accessCode = req.nextUrl.searchParams.get("code");
562
563
  const error = req.nextUrl.searchParams.get("error");
@@ -580,7 +581,7 @@ var getInstagramRoute = ({
580
581
  instagramData.accessToken
581
582
  );
582
583
  if (errorMessage) return handleError2(errorMessage);
583
- return NextResponse6.redirect(redirectURL);
584
+ return NextResponse7.redirect(redirectURL);
584
585
  };
585
586
  };
586
587
 
@@ -571,10 +571,10 @@ function GQLError(status, message) {
571
571
 
572
572
  // src/graphql/init.ts
573
573
  var import_reflect_metadata = require("reflect-metadata");
574
- var import_server3 = require("@apollo/server");
574
+ var import_server4 = require("@apollo/server");
575
575
  var import_default = require("@apollo/server/plugin/landingPage/default");
576
576
  var import_next = require("@as-integrations/next");
577
- var import_server4 = require("next/server");
577
+ var import_server5 = require("next/server");
578
578
  var import_type_graphql = require("type-graphql");
579
579
 
580
580
  // src/env.ts
@@ -626,6 +626,9 @@ function getEnv(key, skipCheck) {
626
626
  return value;
627
627
  }
628
628
 
629
+ // src/utils/route.ts
630
+ var import_server = require("next/server");
631
+
629
632
  // src/auth/constants.ts
630
633
  var REFRESH_COOKIE_NAME = "refresh";
631
634
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
@@ -642,20 +645,18 @@ function getCorsHeaders(origin, allowedOrigins) {
642
645
  }
643
646
  function withCors(handler, allowedOrigins) {
644
647
  if (!allowedOrigins?.length) return handler;
645
- return ((req) => {
646
- return handler(req).then((response) => {
647
- if (!response) return response;
648
- const corsHeaders = getCorsHeaders(
649
- req.headers.get("origin"),
650
- allowedOrigins
651
- );
652
- if (corsHeaders) {
653
- Object.entries(corsHeaders).forEach(([key, value]) => {
654
- response.headers.set(key, value);
655
- });
656
- }
657
- return response;
648
+ return (async (req) => {
649
+ const origin = req.headers.get("origin");
650
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
651
+ if (origin && !corsHeaders) {
652
+ return new import_server.NextResponse(null, { status: 403 });
653
+ }
654
+ const response = await handler(req);
655
+ if (!response || !corsHeaders) return response;
656
+ Object.entries(corsHeaders).forEach(([key, value]) => {
657
+ response.headers.set(key, value);
658
658
  });
659
+ return response;
659
660
  });
660
661
  }
661
662
 
@@ -667,7 +668,7 @@ var import_bcryptjs = require("bcryptjs");
667
668
  var import_jsonwebtoken = require("jsonwebtoken");
668
669
  var import_headers = require("next/headers");
669
670
  var import_navigation = require("next/navigation");
670
- var import_server = require("next/server");
671
+ var import_server2 = require("next/server");
671
672
  function getUserIdFromRefreshToken(refreshToken) {
672
673
  if (refreshToken)
673
674
  try {
@@ -682,7 +683,7 @@ function getUserIdFromRefreshToken(refreshToken) {
682
683
  }
683
684
 
684
685
  // src/auth/utils/errors.ts
685
- var import_server2 = require("next/server");
686
+ var import_server3 = require("next/server");
686
687
 
687
688
  // src/auth/email/utils.ts
688
689
  var getContext = (req) => {
@@ -720,7 +721,7 @@ async function initGraphQLServer({
720
721
  authChecker: authChecker || (({ context }) => !!context.userId),
721
722
  resolvers
722
723
  });
723
- const server = new import_server3.ApolloServer({
724
+ const server = new import_server4.ApolloServer({
724
725
  typeDefs,
725
726
  resolvers: builtResolvers,
726
727
  plugins: [
@@ -742,18 +743,10 @@ async function initGraphQLServer({
742
743
  return {
743
744
  GET: withCors((request) => handler(request), allowedOrigins),
744
745
  POST: withCors((request) => handler(request), allowedOrigins),
745
- ...allowedOrigins?.length ? {
746
- OPTIONS: (req) => {
747
- const corsHeaders = getCorsHeaders(
748
- req.headers.get("origin"),
749
- allowedOrigins
750
- );
751
- return new import_server4.NextResponse(null, {
752
- status: 204,
753
- headers: corsHeaders ?? void 0
754
- });
755
- }
756
- } : {}
746
+ OPTIONS: withCors(
747
+ () => new import_server5.NextResponse(null, { status: 204 }),
748
+ allowedOrigins
749
+ )
757
750
  };
758
751
  }
759
752
 
@@ -559,7 +559,7 @@ import {
559
559
  ApolloServerPluginLandingPageProductionDefault
560
560
  } from "@apollo/server/plugin/landingPage/default";
561
561
  import { startServerAndCreateNextHandler } from "@as-integrations/next";
562
- import { NextResponse as NextResponse3 } from "next/server";
562
+ import { NextResponse as NextResponse4 } from "next/server";
563
563
  import {
564
564
  buildTypeDefsAndResolvers
565
565
  } from "type-graphql";
@@ -613,6 +613,9 @@ function getEnv(key, skipCheck) {
613
613
  return value;
614
614
  }
615
615
 
616
+ // src/utils/route.ts
617
+ import { NextResponse } from "next/server";
618
+
616
619
  // src/auth/constants.ts
617
620
  var REFRESH_COOKIE_NAME = "refresh";
618
621
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
@@ -629,20 +632,18 @@ function getCorsHeaders(origin, allowedOrigins) {
629
632
  }
630
633
  function withCors(handler, allowedOrigins) {
631
634
  if (!allowedOrigins?.length) return handler;
632
- return ((req) => {
633
- return handler(req).then((response) => {
634
- if (!response) return response;
635
- const corsHeaders = getCorsHeaders(
636
- req.headers.get("origin"),
637
- allowedOrigins
638
- );
639
- if (corsHeaders) {
640
- Object.entries(corsHeaders).forEach(([key, value]) => {
641
- response.headers.set(key, value);
642
- });
643
- }
644
- return response;
635
+ return (async (req) => {
636
+ const origin = req.headers.get("origin");
637
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
638
+ if (origin && !corsHeaders) {
639
+ return new NextResponse(null, { status: 403 });
640
+ }
641
+ const response = await handler(req);
642
+ if (!response || !corsHeaders) return response;
643
+ Object.entries(corsHeaders).forEach(([key, value]) => {
644
+ response.headers.set(key, value);
645
645
  });
646
+ return response;
646
647
  });
647
648
  }
648
649
 
@@ -654,7 +655,7 @@ import { compare } from "bcryptjs";
654
655
  import { JsonWebTokenError, sign, verify } from "jsonwebtoken";
655
656
  import { cookies } from "next/headers";
656
657
  import { redirect } from "next/navigation";
657
- import { NextResponse } from "next/server";
658
+ import { NextResponse as NextResponse2 } from "next/server";
658
659
  function getUserIdFromRefreshToken(refreshToken) {
659
660
  if (refreshToken)
660
661
  try {
@@ -669,7 +670,7 @@ function getUserIdFromRefreshToken(refreshToken) {
669
670
  }
670
671
 
671
672
  // src/auth/utils/errors.ts
672
- import { NextResponse as NextResponse2 } from "next/server";
673
+ import { NextResponse as NextResponse3 } from "next/server";
673
674
 
674
675
  // src/auth/email/utils.ts
675
676
  var getContext = (req) => {
@@ -729,18 +730,10 @@ async function initGraphQLServer({
729
730
  return {
730
731
  GET: withCors((request) => handler(request), allowedOrigins),
731
732
  POST: withCors((request) => handler(request), allowedOrigins),
732
- ...allowedOrigins?.length ? {
733
- OPTIONS: (req) => {
734
- const corsHeaders = getCorsHeaders(
735
- req.headers.get("origin"),
736
- allowedOrigins
737
- );
738
- return new NextResponse3(null, {
739
- status: 204,
740
- headers: corsHeaders ?? void 0
741
- });
742
- }
743
- } : {}
733
+ OPTIONS: withCors(
734
+ () => new NextResponse4(null, { status: 204 }),
735
+ allowedOrigins
736
+ )
744
737
  };
745
738
  }
746
739
 
@@ -24,10 +24,10 @@ __export(init_exports, {
24
24
  });
25
25
  module.exports = __toCommonJS(init_exports);
26
26
  var import_reflect_metadata = require("reflect-metadata");
27
- var import_server3 = require("@apollo/server");
27
+ var import_server4 = require("@apollo/server");
28
28
  var import_default = require("@apollo/server/plugin/landingPage/default");
29
29
  var import_next = require("@as-integrations/next");
30
- var import_server4 = require("next/server");
30
+ var import_server5 = require("next/server");
31
31
  var import_type_graphql = require("type-graphql");
32
32
 
33
33
  // src/env.ts
@@ -79,6 +79,9 @@ function getEnv(key, skipCheck) {
79
79
  return value;
80
80
  }
81
81
 
82
+ // src/utils/route.ts
83
+ var import_server = require("next/server");
84
+
82
85
  // src/auth/constants.ts
83
86
  var REFRESH_COOKIE_NAME = "refresh";
84
87
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
@@ -95,20 +98,18 @@ function getCorsHeaders(origin, allowedOrigins) {
95
98
  }
96
99
  function withCors(handler, allowedOrigins) {
97
100
  if (!allowedOrigins?.length) return handler;
98
- return ((req) => {
99
- return handler(req).then((response) => {
100
- if (!response) return response;
101
- const corsHeaders = getCorsHeaders(
102
- req.headers.get("origin"),
103
- allowedOrigins
104
- );
105
- if (corsHeaders) {
106
- Object.entries(corsHeaders).forEach(([key, value]) => {
107
- response.headers.set(key, value);
108
- });
109
- }
110
- return response;
101
+ return (async (req) => {
102
+ const origin = req.headers.get("origin");
103
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
104
+ if (origin && !corsHeaders) {
105
+ return new import_server.NextResponse(null, { status: 403 });
106
+ }
107
+ const response = await handler(req);
108
+ if (!response || !corsHeaders) return response;
109
+ Object.entries(corsHeaders).forEach(([key, value]) => {
110
+ response.headers.set(key, value);
111
111
  });
112
+ return response;
112
113
  });
113
114
  }
114
115
 
@@ -120,7 +121,7 @@ var import_bcryptjs = require("bcryptjs");
120
121
  var import_jsonwebtoken = require("jsonwebtoken");
121
122
  var import_headers = require("next/headers");
122
123
  var import_navigation = require("next/navigation");
123
- var import_server = require("next/server");
124
+ var import_server2 = require("next/server");
124
125
  function getUserIdFromRefreshToken(refreshToken) {
125
126
  if (refreshToken)
126
127
  try {
@@ -135,7 +136,7 @@ function getUserIdFromRefreshToken(refreshToken) {
135
136
  }
136
137
 
137
138
  // src/auth/utils/errors.ts
138
- var import_server2 = require("next/server");
139
+ var import_server3 = require("next/server");
139
140
 
140
141
  // src/auth/email/utils.ts
141
142
  var getContext = (req) => {
@@ -173,7 +174,7 @@ async function initGraphQLServer({
173
174
  authChecker: authChecker || (({ context }) => !!context.userId),
174
175
  resolvers
175
176
  });
176
- const server = new import_server3.ApolloServer({
177
+ const server = new import_server4.ApolloServer({
177
178
  typeDefs,
178
179
  resolvers: builtResolvers,
179
180
  plugins: [
@@ -195,18 +196,10 @@ async function initGraphQLServer({
195
196
  return {
196
197
  GET: withCors((request) => handler(request), allowedOrigins),
197
198
  POST: withCors((request) => handler(request), allowedOrigins),
198
- ...allowedOrigins?.length ? {
199
- OPTIONS: (req) => {
200
- const corsHeaders = getCorsHeaders(
201
- req.headers.get("origin"),
202
- allowedOrigins
203
- );
204
- return new import_server4.NextResponse(null, {
205
- status: 204,
206
- headers: corsHeaders ?? void 0
207
- });
208
- }
209
- } : {}
199
+ OPTIONS: withCors(
200
+ () => new import_server5.NextResponse(null, { status: 204 }),
201
+ allowedOrigins
202
+ )
210
203
  };
211
204
  }
212
205
  // Annotate the CommonJS export names for ESM import in node:
@@ -42,9 +42,9 @@ declare function initGraphQLServer({ authChecker, resolvers, plugins, getContext
42
42
  getContext?: (req: NextRequest) => Promise<any> | any;
43
43
  allowedOrigins?: string[];
44
44
  }): Promise<{
45
- OPTIONS?: ((req: NextRequest) => NextResponse<unknown>) | undefined;
46
45
  GET: (request: NextRequest) => Promise<Response>;
47
46
  POST: (request: NextRequest) => Promise<Response>;
47
+ OPTIONS: () => NextResponse<unknown>;
48
48
  }>;
49
49
 
50
50
  export { initGraphQLServer };
@@ -42,9 +42,9 @@ declare function initGraphQLServer({ authChecker, resolvers, plugins, getContext
42
42
  getContext?: (req: NextRequest) => Promise<any> | any;
43
43
  allowedOrigins?: string[];
44
44
  }): Promise<{
45
- OPTIONS?: ((req: NextRequest) => NextResponse<unknown>) | undefined;
46
45
  GET: (request: NextRequest) => Promise<Response>;
47
46
  POST: (request: NextRequest) => Promise<Response>;
47
+ OPTIONS: () => NextResponse<unknown>;
48
48
  }>;
49
49
 
50
50
  export { initGraphQLServer };
@@ -6,7 +6,7 @@ import {
6
6
  ApolloServerPluginLandingPageProductionDefault
7
7
  } from "@apollo/server/plugin/landingPage/default";
8
8
  import { startServerAndCreateNextHandler } from "@as-integrations/next";
9
- import { NextResponse as NextResponse3 } from "next/server";
9
+ import { NextResponse as NextResponse4 } from "next/server";
10
10
  import {
11
11
  buildTypeDefsAndResolvers
12
12
  } from "type-graphql";
@@ -60,6 +60,9 @@ function getEnv(key, skipCheck) {
60
60
  return value;
61
61
  }
62
62
 
63
+ // src/utils/route.ts
64
+ import { NextResponse } from "next/server";
65
+
63
66
  // src/auth/constants.ts
64
67
  var REFRESH_COOKIE_NAME = "refresh";
65
68
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
@@ -76,20 +79,18 @@ function getCorsHeaders(origin, allowedOrigins) {
76
79
  }
77
80
  function withCors(handler, allowedOrigins) {
78
81
  if (!allowedOrigins?.length) return handler;
79
- return ((req) => {
80
- return handler(req).then((response) => {
81
- if (!response) return response;
82
- const corsHeaders = getCorsHeaders(
83
- req.headers.get("origin"),
84
- allowedOrigins
85
- );
86
- if (corsHeaders) {
87
- Object.entries(corsHeaders).forEach(([key, value]) => {
88
- response.headers.set(key, value);
89
- });
90
- }
91
- return response;
82
+ return (async (req) => {
83
+ const origin = req.headers.get("origin");
84
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
85
+ if (origin && !corsHeaders) {
86
+ return new NextResponse(null, { status: 403 });
87
+ }
88
+ const response = await handler(req);
89
+ if (!response || !corsHeaders) return response;
90
+ Object.entries(corsHeaders).forEach(([key, value]) => {
91
+ response.headers.set(key, value);
92
92
  });
93
+ return response;
93
94
  });
94
95
  }
95
96
 
@@ -101,7 +102,7 @@ import { compare } from "bcryptjs";
101
102
  import { JsonWebTokenError, sign, verify } from "jsonwebtoken";
102
103
  import { cookies } from "next/headers";
103
104
  import { redirect } from "next/navigation";
104
- import { NextResponse } from "next/server";
105
+ import { NextResponse as NextResponse2 } from "next/server";
105
106
  function getUserIdFromRefreshToken(refreshToken) {
106
107
  if (refreshToken)
107
108
  try {
@@ -116,7 +117,7 @@ function getUserIdFromRefreshToken(refreshToken) {
116
117
  }
117
118
 
118
119
  // src/auth/utils/errors.ts
119
- import { NextResponse as NextResponse2 } from "next/server";
120
+ import { NextResponse as NextResponse3 } from "next/server";
120
121
 
121
122
  // src/auth/email/utils.ts
122
123
  var getContext = (req) => {
@@ -176,18 +177,10 @@ async function initGraphQLServer({
176
177
  return {
177
178
  GET: withCors((request) => handler(request), allowedOrigins),
178
179
  POST: withCors((request) => handler(request), allowedOrigins),
179
- ...allowedOrigins?.length ? {
180
- OPTIONS: (req) => {
181
- const corsHeaders = getCorsHeaders(
182
- req.headers.get("origin"),
183
- allowedOrigins
184
- );
185
- return new NextResponse3(null, {
186
- status: 204,
187
- headers: corsHeaders ?? void 0
188
- });
189
- }
190
- } : {}
180
+ OPTIONS: withCors(
181
+ () => new NextResponse4(null, { status: 204 }),
182
+ allowedOrigins
183
+ )
191
184
  };
192
185
  }
193
186
  export {
@@ -24,6 +24,7 @@ __export(route_exports, {
24
24
  withCors: () => withCors
25
25
  });
26
26
  module.exports = __toCommonJS(route_exports);
27
+ var import_server = require("next/server");
27
28
 
28
29
  // src/auth/constants.ts
29
30
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
@@ -40,20 +41,18 @@ function getCorsHeaders(origin, allowedOrigins) {
40
41
  }
41
42
  function withCors(handler, allowedOrigins) {
42
43
  if (!allowedOrigins?.length) return handler;
43
- return ((req) => {
44
- return handler(req).then((response) => {
45
- if (!response) return response;
46
- const corsHeaders = getCorsHeaders(
47
- req.headers.get("origin"),
48
- allowedOrigins
49
- );
50
- if (corsHeaders) {
51
- Object.entries(corsHeaders).forEach(([key, value]) => {
52
- response.headers.set(key, value);
53
- });
54
- }
55
- return response;
44
+ return (async (req) => {
45
+ const origin = req.headers.get("origin");
46
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
47
+ if (origin && !corsHeaders) {
48
+ return new import_server.NextResponse(null, { status: 403 });
49
+ }
50
+ const response = await handler(req);
51
+ if (!response || !corsHeaders) return response;
52
+ Object.entries(corsHeaders).forEach(([key, value]) => {
53
+ response.headers.set(key, value);
56
54
  });
55
+ return response;
57
56
  });
58
57
  }
59
58
  // Annotate the CommonJS export names for ESM import in node:
@@ -6,6 +6,6 @@ declare function getCorsHeaders(origin: string | null, allowedOrigins: string[])
6
6
  "Access-Control-Allow-Headers": string;
7
7
  "Access-Control-Allow-Credentials": string;
8
8
  } | null;
9
- declare function withCors<T extends (req: NextRequest) => Promise<NextResponse | Response | undefined>>(handler: T, allowedOrigins?: string[]): T;
9
+ declare function withCors<T extends (req: NextRequest) => Promise<NextResponse | Response | undefined> | NextResponse | Response | undefined>(handler: T, allowedOrigins?: string[]): T;
10
10
 
11
11
  export { getCorsHeaders, withCors };
@@ -6,6 +6,6 @@ declare function getCorsHeaders(origin: string | null, allowedOrigins: string[])
6
6
  "Access-Control-Allow-Headers": string;
7
7
  "Access-Control-Allow-Credentials": string;
8
8
  } | null;
9
- declare function withCors<T extends (req: NextRequest) => Promise<NextResponse | Response | undefined>>(handler: T, allowedOrigins?: string[]): T;
9
+ declare function withCors<T extends (req: NextRequest) => Promise<NextResponse | Response | undefined> | NextResponse | Response | undefined>(handler: T, allowedOrigins?: string[]): T;
10
10
 
11
11
  export { getCorsHeaders, withCors };
@@ -1,3 +1,6 @@
1
+ // src/utils/route.ts
2
+ import { NextResponse } from "next/server";
3
+
1
4
  // src/auth/constants.ts
2
5
  var REFRESH_HEADER_NAME = "X-Refresh-Token";
3
6
 
@@ -13,20 +16,18 @@ function getCorsHeaders(origin, allowedOrigins) {
13
16
  }
14
17
  function withCors(handler, allowedOrigins) {
15
18
  if (!allowedOrigins?.length) return handler;
16
- return ((req) => {
17
- return handler(req).then((response) => {
18
- if (!response) return response;
19
- const corsHeaders = getCorsHeaders(
20
- req.headers.get("origin"),
21
- allowedOrigins
22
- );
23
- if (corsHeaders) {
24
- Object.entries(corsHeaders).forEach(([key, value]) => {
25
- response.headers.set(key, value);
26
- });
27
- }
28
- return response;
19
+ return (async (req) => {
20
+ const origin = req.headers.get("origin");
21
+ const corsHeaders = getCorsHeaders(origin, allowedOrigins);
22
+ if (origin && !corsHeaders) {
23
+ return new NextResponse(null, { status: 403 });
24
+ }
25
+ const response = await handler(req);
26
+ if (!response || !corsHeaders) return response;
27
+ Object.entries(corsHeaders).forEach(([key, value]) => {
28
+ response.headers.set(key, value);
29
29
  });
30
+ return response;
30
31
  });
31
32
  }
32
33
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "naystack",
3
- "version": "1.5.32",
3
+ "version": "1.5.34",
4
4
  "description": "A stack built with Next + GraphQL + S3 + Auth",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.esm.js",