@wix/astro 0.2.9 → 0.2.11

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 (43) hide show
  1. package/README.md +17 -108
  2. package/dist/auth-context.d.ts +5 -0
  3. package/dist/auth-context.js +3 -0
  4. package/dist/entrypoints/client-sdk-init.d.ts +1 -0
  5. package/dist/entrypoints/client-sdk-init.js +9 -0
  6. package/dist/entrypoints/image-endpoint.d.ts +1 -0
  7. package/dist/entrypoints/image-endpoint.js +4 -0
  8. package/dist/entrypoints/image-service.d.ts +3 -0
  9. package/dist/entrypoints/image-service.js +35 -0
  10. package/dist/entrypoints/manifest.d.ts +2 -0
  11. package/dist/entrypoints/manifest.js +6 -0
  12. package/dist/entrypoints/server.js +1 -9
  13. package/dist/extensions.d.ts +1 -0
  14. package/dist/extensions.js +2 -0
  15. package/dist/integration.js +24 -51
  16. package/dist/middleware.js +3 -4
  17. package/dist/routes/auth/callback.d.ts +3 -0
  18. package/dist/routes/auth/callback.js +58 -0
  19. package/dist/routes/auth/constants.d.ts +5 -0
  20. package/dist/routes/auth/constants.js +6 -0
  21. package/dist/routes/auth/login.d.ts +3 -0
  22. package/dist/routes/auth/login.js +27 -0
  23. package/dist/routes/auth/logout-callback.d.ts +3 -0
  24. package/dist/routes/auth/logout-callback.js +16 -0
  25. package/dist/routes/auth/logout.d.ts +3 -0
  26. package/dist/routes/auth/logout.js +11 -0
  27. package/dist/routes/auth/runtime.d.ts +2 -0
  28. package/dist/routes/auth/runtime.js +8 -0
  29. package/dist/runtime.d.ts +2 -0
  30. package/dist/runtime.js +9 -0
  31. package/dist/utils/assets.d.ts +9 -0
  32. package/dist/utils/assets.js +69 -0
  33. package/dist/utils/generate-routes-json.d.ts +9 -0
  34. package/dist/utils/generate-routes-json.js +237 -0
  35. package/dist/utils/image-config.d.ts +33 -0
  36. package/dist/utils/image-config.js +30 -0
  37. package/dist/utils/index.d.ts +8 -0
  38. package/dist/utils/index.js +59 -0
  39. package/dist/utils/non-server-chunk-detector.d.ts +14 -0
  40. package/dist/utils/non-server-chunk-detector.js +73 -0
  41. package/dist/utils/wasm-module-loader.d.ts +13 -0
  42. package/dist/utils/wasm-module-loader.js +117 -0
  43. package/package.json +4 -2
package/README.md CHANGED
@@ -1,121 +1,30 @@
1
- # Wix Integration For Astro
1
+ # Wix Astro Integration
2
2
 
3
- The Wix integration for Astro allows you to build custom frontends with Astro on top of the Wix Developer Platform. The integration provides a boilerplate-free development experience with a set of tools to help streamline your development with Wix.
4
-
5
- The main features of the Wix integration for Astro include:
6
-
7
- - **Easy SDK Integration**: Use the Wix SDK modules directly through a pre-initialized and contextually available `WixClient`.
8
- - **Session Management Middleware**: A middleware that manages a session cookie for the current site visitor.
9
- - **Adapter for Wix Hosting**: The integration provides an adapter for Wix hosting, allowing you to deploy your Astro project to Wix hosting.
10
-
11
- ## Getting Started
12
-
13
- The easiest way to get started with the Wix integration for Astro is to scaffold a new Astro project with one of the Wix templates. If you already have an Astro project or rather start with another template, you can add the Wix integration to an existing Astro project.
14
-
15
- ### Scaffold a New Astro Project with a Wix Template
3
+ ## Features
16
4
 
17
- Wix provides a collection of Astro templates that are pre-configured with the Wix integration for Astro and also act as a starting point for different types of projects. Check out our Wix Astro templates on GitHub: [wix/headless-templates/astro](https://github.com/wix/headless-templates/tree/main/astro).
5
+ ### Session Management
18
6
 
19
- ```bash
20
- # npm
21
- npm create astro@latest --template wix/headless-templates/astro/<template-name>
22
- # yarn
23
- yarn create astro@latest --template wix/headless-templates/astro/<template-name>
24
- # pnpm
25
- pnpm create astro@latest --template wix/headless-templates/astro/<template-name>
26
- ```
7
+ The Wix Astro integration provides session management for your Astro project.
27
8
 
28
- Check the template's README for more information on how to get started with the template.
9
+ ### Integrating into an exinsting Astro project
29
10
 
30
- ### Add the Wix Integration to an Existing Astro Project
11
+ If you already have an Astro project and you want to add the Wix Astro integration to it, follow these steps:
31
12
 
32
- If you already have an Astro project or want to start with another template, you can add the Wix integration to your project.
13
+ 1. Install the Wix Astro integration package and the Wix CLI packages:
33
14
 
34
15
  ```bash
35
- # npm
36
- npx astro add @wix/astro
37
- # yarn
38
- yarn astro add @wix/astro
39
- # pnpm
40
- pnpx astro add @wix/astro
41
- ```
42
-
43
- #### Setting up local development
44
-
45
- > 💡 If you are deploying your project to Wix, check out the guide on [local development with the Wix Edge CLI](../cli//local-development.md).
46
-
47
- The Wix integration requires the `WIX_CLIENT_ID` environment variable to be set. For local development, you can create a `.env.local` file in the root of your project and add the `WIX_CLIENT_ID` environment variable.
48
-
49
- ```properties
50
- WIX_CLIENT_ID=your-wix-client-id
16
+ npm install @wix/astro
51
17
  ```
52
18
 
53
- > Not sure what the Wix Client ID is or how to obtain it? Check out our documentation to [Create an OAuth App](https://dev.wix.com/docs/go-headless/getting-started/setup/authentication/create-an-oauth-app-for-visitors-and-members)
54
-
55
- ## Features
56
-
57
- ### Easy SDK Integration
58
-
59
- The Wix integration for Astro provides a pre-initialized and contextually available `WixClient` that allows you to use the Wix SDK modules directly in your Astro project.
60
-
61
- For example, to query your products from the Wix Stores API, you can just install the `@wix/stores` npm package and use the methods directly after importing them.
19
+ 2. Add the Wix integration to your Astro project's `astro.config.mjs` file:
62
20
 
63
21
  ```js
64
- ---
65
- import { products } from "@wix/stores";
66
-
67
- const storeProducts = await products.queryProducts().find();
68
- ---
69
-
70
- <h1>Number of products in store: {storeProducts.items.length}</h1>
22
+ import wix from "@wix/astro-internal";
23
+
24
+ export default {
25
+ // ...
26
+ output: "server",
27
+ integrations: [wix()],
28
+ // ...
29
+ };
71
30
  ```
72
-
73
- #### SDK Modules in Astro Components frontmatter
74
-
75
- You can use any of the SDK modules in your Astro components frontmatter to fetch data at build time or on-demand. There's no need to create an explicit `WixClient` and methods can be called directly.
76
-
77
- ```astro
78
- ---
79
- import { products } from "@wix/stores";
80
-
81
- const storeProducts = await products.queryProducts().find();
82
- ---
83
-
84
- <h1>Products</h1>
85
-
86
- {storeProducts.map((product) => (
87
- <div>
88
- <h2>{product.name}</h2>
89
- <p>{product.description}</p>
90
- </div>
91
- ))}
92
- ```
93
-
94
- ##### Pre-rendering
95
-
96
- When used in pre-rendered components or pages, the SDK modules will use an automatically generated visitor session for the entire build. This means you'll only be able to access public data, and any data that requires a visitor session will be reset on each build.
97
-
98
- > 💡 If you are working with APIs that require a current visitor session, be sure to set the relevant pages / components to [on-demand rendering](#on-demand-rendering).
99
-
100
- ##### On-demand rendering
101
-
102
- When used in on-demand rendered components or pages, the SDK modules will use the current visitor session. This means you'll be able to access data that requires a visitor session, and the data will be fetched on-demand when the page is visited.
103
-
104
- Visitor session management is handled by the [Session Management Middleware](#session-management-middleware).
105
-
106
- #### SDK Modules in Scripts / UI Frameworks
107
-
108
- You can also use the SDK modules in your scripts or UI frameworks. Just import the modules and use them as you would in any other JavaScript environment.
109
-
110
- ```html
111
- <p>Products in store: <span id="productsCount">...</span></p>
112
- <script>
113
- import { products } from "@wix/stores";
114
-
115
- const storeProducts = await products.queryProducts().find();
116
-
117
- document.getElementById("productsCount").innerText = storeProducts.items.length;
118
- </script>
119
- ```
120
-
121
- In your scripts or UI framework components, your API calls will be authenticated with the current visitor session as managed by the [Session Management Middleware](#session-management-middleware).
@@ -0,0 +1,5 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ import { AuthenticationStrategy } from "@wix/sdk";
3
+ export declare const authStrategyAsyncLocalStorage: AsyncLocalStorage<{
4
+ auth: AuthenticationStrategy<void>;
5
+ }>;
@@ -0,0 +1,3 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ export const authStrategyAsyncLocalStorage = new AsyncLocalStorage();
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2F1dGgtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUdyRCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLGlCQUFpQixFQUU5RCxDQUFDIn0=
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ import { createClient } from "@wix/sdk/client";
2
+ import { OAuthStrategy } from "@wix/sdk/auth/oauth2";
3
+ import { WIX_CLIENT_ID } from "astro:env/client";
4
+ createClient({
5
+ auth: OAuthStrategy({
6
+ clientId: WIX_CLIENT_ID,
7
+ }),
8
+ }).enableContext("global");
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXNkay1pbml0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5cG9pbnRzL2NsaWVudC1zZGstaW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxZQUFZLENBQUM7SUFDWCxJQUFJLEVBQUUsYUFBYSxDQUFDO1FBQ2xCLFFBQVEsRUFBRSxhQUFjO0tBQ3pCLENBQUM7Q0FDSCxDQUFDLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDIn0=
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ export {};
2
+ // NOTE: this file is empty on purpose
3
+ // it allows use to offer `imageService: 'compile'`
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZW5kcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW50cnlwb2ludHMvaW1hZ2UtZW5kcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHNDQUFzQztBQUN0QyxtREFBbUQifQ==
@@ -0,0 +1,3 @@
1
+ import type { ExternalImageService } from "astro";
2
+ declare const service: ExternalImageService;
3
+ export default service;
@@ -0,0 +1,35 @@
1
+ /// <reference types="astro/client" />
2
+ import { joinPaths } from "@astrojs/internal-helpers/path";
3
+ import { baseService } from "astro/assets";
4
+ import { isESMImportedImage, isRemoteAllowed } from "../utils/assets.js";
5
+ const service = {
6
+ ...baseService,
7
+ getURL: (options, imageConfig) => {
8
+ const resizingParams = [];
9
+ if (options.width)
10
+ resizingParams.push(`width=${options.width}`);
11
+ if (options.height)
12
+ resizingParams.push(`height=${options.height}`);
13
+ if (options.quality)
14
+ resizingParams.push(`quality=${options.quality}`);
15
+ if (options["fit"])
16
+ resizingParams.push(`fit=${options["fit"]}`);
17
+ if (options.format)
18
+ resizingParams.push(`format=${options.format}`);
19
+ let imageSource = "";
20
+ if (isESMImportedImage(options.src)) {
21
+ imageSource = options.src.src;
22
+ }
23
+ else if (isRemoteAllowed(options.src, imageConfig)) {
24
+ imageSource = options.src;
25
+ }
26
+ else {
27
+ // If it's not an imported image, nor is it allowed using the current domains or remote patterns, we'll just return the original URL
28
+ return options.src;
29
+ }
30
+ const imageEndpoint = joinPaths(import.meta.env.BASE_URL, "/cdn-cgi/image", resizingParams.join(","), imageSource);
31
+ return imageEndpoint;
32
+ },
33
+ };
34
+ export default service;
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbnRyeXBvaW50cy9pbWFnZS1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUl0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFekUsTUFBTSxPQUFPLEdBQXlCO0lBQ3BDLEdBQUcsV0FBVztJQUNkLE1BQU0sRUFBRSxDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsRUFBRTtRQUMvQixNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxPQUFPLENBQUMsS0FBSztZQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNqRSxJQUFJLE9BQU8sQ0FBQyxNQUFNO1lBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLElBQUksT0FBTyxDQUFDLE9BQU87WUFBRSxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDdkUsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQUUsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakUsSUFBSSxPQUFPLENBQUMsTUFBTTtZQUFFLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUVwRSxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxXQUFXLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFDaEMsQ0FBQzthQUFNLElBQUksZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNyRCxXQUFXLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQztRQUM1QixDQUFDO2FBQU0sQ0FBQztZQUNOLG9JQUFvSTtZQUNwSSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDckIsQ0FBQztRQUVELE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUN4QixnQkFBZ0IsRUFDaEIsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFDeEIsV0FBVyxDQUNaLENBQUM7UUFFRixPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0NBQ0YsQ0FBQztBQUVGLGVBQWUsT0FBTyxDQUFDIn0=
@@ -0,0 +1,2 @@
1
+ import { APIRoute } from "astro";
2
+ export declare const GET: APIRoute;
@@ -0,0 +1,6 @@
1
+ // @ts-expect-error
2
+ import wixManifest from "/src/wix/index";
3
+ export const GET = async ({}) => {
4
+ return Response.json(wixManifest);
5
+ };
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZW50cnlwb2ludHMvbWFuaWZlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsbUJBQW1CO0FBQ25CLE9BQU8sV0FBVyxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBYSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDeEMsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3BDLENBQUMsQ0FBQyJ9
@@ -17,14 +17,6 @@ export function createExports(manifest) {
17
17
  }
18
18
  Reflect.set(request, Symbol.for("astro.clientAddress"), request.headers.get("cf-connecting-ip"));
19
19
  const response = await app.render(request);
20
- // Thats to handle the quirk where Astro calls prerender 404s via fetch() to itself, and CF will return 522.
21
- if (response.status === 404) {
22
- const targetStatusURL = new URL(request.url);
23
- const errorRoute = app.match({ url: `${targetStatusURL.origin}/${response.status}${manifest.trailingSlash === "always" ? '/' : null}` });
24
- if (errorRoute && errorRoute.prerender) {
25
- return await env['ASSETS'].fetch(request);
26
- }
27
- }
28
20
  if (app.setCookieHeaders) {
29
21
  for (const setCookieHeader of app.setCookieHeaders(response)) {
30
22
  response.headers.append("Set-Cookie", setCookieHeader);
@@ -34,4 +26,4 @@ export function createExports(manifest) {
34
26
  };
35
27
  return { default: { fetch } };
36
28
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5cG9pbnRzL3NlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXhDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBUzVDLE1BQU0sVUFBVSxhQUFhLENBQUMsUUFBcUI7SUFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRWhDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFDakIsT0FBcUMsRUFDckMsR0FBNEIsRUFDNUIsRUFBRTtRQUNGLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ2hCLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNuRSxDQUFDO1FBRUYsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUUxQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssTUFBTSxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNyRSxNQUFNLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUVELElBQ0UsT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNO1lBQ3pCLFFBQVEsQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsRUFDNUMsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELE9BQU8sQ0FBQyxHQUFHLENBQ1QsT0FBTyxFQUNQLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsRUFDakMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FDeEMsQ0FBQztRQUVGLE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyw0R0FBNEc7UUFDNUcsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQzVCLE1BQU0sZUFBZSxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM3QyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsZUFBZSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFhLENBQUMsQ0FBQztZQUNwSixJQUFJLFVBQVUsSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUM7Z0JBQ3ZDLE9BQU8sTUFBTyxHQUFHLENBQUMsUUFBUSxDQUFtRCxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvRixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksR0FBRyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDekIsS0FBSyxNQUFNLGVBQWUsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztnQkFDN0QsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ3pELENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0lBRUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7QUFDaEMsQ0FBQyJ9
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5cG9pbnRzL3NlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXhDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBUzVDLE1BQU0sVUFBVSxhQUFhLENBQUMsUUFBcUI7SUFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRWhDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFDakIsT0FBcUMsRUFDckMsR0FBNEIsRUFDNUIsRUFBRTtRQUNGLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ2hCLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNuRSxDQUFDO1FBRUYsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUUxQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssTUFBTSxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNyRSxNQUFNLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDN0MsQ0FBQztRQUVELElBQ0UsT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNO1lBQ3pCLFFBQVEsQ0FBQyxVQUFVLENBQUMsdUJBQXVCLENBQUMsRUFDNUMsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQztRQUVELE9BQU8sQ0FBQyxHQUFHLENBQ1QsT0FBTyxFQUNQLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsRUFDakMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FDeEMsQ0FBQztRQUVGLE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3pCLEtBQUssTUFBTSxlQUFlLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQzdELFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsQ0FBQztZQUN6RCxDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUMsQ0FBQztJQUVGLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0FBQ2hDLENBQUMifQ==
@@ -0,0 +1 @@
1
+ export * from "@wix/vite-plugin-wix-manifest/extensions";
@@ -0,0 +1,2 @@
1
+ export * from "@wix/vite-plugin-wix-manifest/extensions";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9leHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMENBQTBDLENBQUMifQ==
@@ -7,19 +7,36 @@ import { wixBlogLoader } from "./loaders/blog.js";
7
7
  import { loadEnv } from "vite";
8
8
  import chalk from "chalk";
9
9
  import { outdent } from "outdent";
10
- import { promises as fs } from "node:fs";
11
- import path from "node:path";
12
10
  export { wixBlogLoader };
13
11
  export function createIntegration() {
14
12
  let _config;
15
- let _buildOutput;
16
13
  return {
17
14
  name: "@wix/astro",
18
15
  hooks: {
19
- "astro:config:setup": async ({ config, updateConfig, addMiddleware, logger, }) => {
16
+ "astro:config:setup": async ({ config, updateConfig, addMiddleware, injectRoute, logger, }) => {
20
17
  const aRequire = buildResolver(fileURLToPath(import.meta.url), {
21
18
  resolveToAbsolute: true,
22
19
  });
20
+ injectRoute({
21
+ entrypoint: aRequire("./routes/auth/login"),
22
+ pattern: "/api/auth/login",
23
+ prerender: false,
24
+ });
25
+ injectRoute({
26
+ entrypoint: aRequire("./routes/auth/logout"),
27
+ pattern: "/api/auth/logout",
28
+ prerender: false,
29
+ });
30
+ injectRoute({
31
+ entrypoint: aRequire("./routes/auth/callback"),
32
+ pattern: "/api/auth/callback",
33
+ prerender: false,
34
+ });
35
+ injectRoute({
36
+ entrypoint: aRequire("./routes/auth/logout-callback"),
37
+ pattern: "/api/auth/logout-callback",
38
+ prerender: false,
39
+ });
23
40
  addMiddleware({
24
41
  entrypoint: aRequire("./middleware"),
25
42
  order: "pre",
@@ -66,11 +83,6 @@ export function createIntegration() {
66
83
  context: "server",
67
84
  optional: true,
68
85
  },
69
- ENV_NAME: {
70
- type: "string",
71
- access: "public",
72
- context: "client",
73
- },
74
86
  },
75
87
  },
76
88
  build: {
@@ -94,12 +106,8 @@ export function createIntegration() {
94
106
  },
95
107
  });
96
108
  },
97
- "astro:config:done": async ({ setAdapter, config, buildOutput }) => {
109
+ "astro:config:done": async ({ setAdapter, config }) => {
98
110
  _config = config;
99
- _buildOutput = buildOutput;
100
- if (_buildOutput === "static") {
101
- return;
102
- }
103
111
  setAdapter({
104
112
  name: "@wix/astro",
105
113
  serverEntrypoint: createRequire(import.meta.url).resolve("./entrypoints/server"),
@@ -111,7 +119,7 @@ export function createIntegration() {
111
119
  supportedAstroFeatures: {
112
120
  serverOutput: "stable",
113
121
  hybridOutput: "stable",
114
- staticOutput: "unsupported",
122
+ staticOutput: "stable",
115
123
  i18nDomains: "experimental",
116
124
  sharpImageService: "unsupported",
117
125
  envGetSecret: "stable",
@@ -119,9 +127,6 @@ export function createIntegration() {
119
127
  });
120
128
  },
121
129
  "astro:build:setup": ({ vite, target }) => {
122
- if (_buildOutput === "static") {
123
- return;
124
- }
125
130
  if (target === "server") {
126
131
  vite.resolve ||= {};
127
132
  vite.resolve.alias ||= {};
@@ -155,39 +160,7 @@ export function createIntegration() {
155
160
  vite.resolve.conditions = vite.resolve.conditions.filter((c) => c !== "workerd" && c !== "worker");
156
161
  }
157
162
  },
158
- "astro:build:done": async (buildResult) => {
159
- const hasPages = buildResult.pages.length > 0;
160
- const buildOutputType = _buildOutput === "static"
161
- ? "static"
162
- : hasPages
163
- ? "hybrid"
164
- : "server-only";
165
- const moveToClientDir = async () => {
166
- const clientDir = path.join(_config.outDir.pathname, "client");
167
- await fs.mkdir(clientDir, { recursive: true });
168
- // Move all files except "client" directory
169
- const files = await fs.readdir(_config.outDir.pathname);
170
- await Promise.all(files
171
- .filter(file => file !== "client")
172
- .map(file => fs.rename(path.join(_config.outDir.pathname, file), path.join(clientDir, file))));
173
- };
174
- if (_buildOutput === "static") {
175
- try {
176
- await moveToClientDir();
177
- }
178
- catch (ex) {
179
- console.error(`@wix/astro failed to move files to client directory: ${ex.message}`);
180
- throw ex;
181
- }
182
- }
183
- const metadata = {
184
- envName: process.env["ENV_NAME"],
185
- buildOutputType,
186
- };
187
- await fs.writeFile(path.join(_config.outDir.pathname, ".wix-build-metadata.json"), JSON.stringify(metadata, null, 2) // More conventional JSON formatting
188
- );
189
- },
190
163
  },
191
164
  };
192
165
  }
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsR0FDcEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztBQUl6QixNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLElBQUksT0FBb0IsQ0FBQztJQUN6QixJQUFJLFlBQWlDLENBQUM7SUFFdEMsT0FBTztRQUNMLElBQUksRUFBRSxZQUFZO1FBQ2xCLEtBQUssRUFBRTtZQUNMLG9CQUFvQixFQUFFLEtBQUssRUFBRSxFQUMzQixNQUFNLEVBQ04sWUFBWSxFQUNaLGFBQWEsRUFDYixNQUFNLEdBQ1AsRUFBRSxFQUFFO2dCQUNILE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDN0QsaUJBQWlCLEVBQUUsSUFB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
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsR0FDcEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxDQUFDO0FBSXpCLE1BQU0sVUFBVSxpQkFBaUI7SUFDL0IsSUFBSSxPQUFvQixDQUFDO0lBRXpCLE9BQU87UUFDTCxJQUFJLEVBQUUsWUFBWTtRQUNsQixLQUFLLEVBQUU7WUFDTCxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsRUFDM0IsTUFBTSxFQUNOLFlBQVksRUFDWixhQUFhLEVBQ2IsV0FBVyxFQUNYLE1BQU0sR0FDUCxFQUFFLEVBQUU7Z0JBQ0gsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUM3RCxpQkFBaUIsRUFBRSxJQUFJO2lCQUN4QixDQUFDLENBQUM7Z0JBRUgsV0FBVyxDQUFDO29CQUNWLFVBQVUsRUFBRSxRQUFRLENBQUMscUJBQXFCLENBQUU7b0JBQzVDLE9BQU8sRUFBRSxpQkFB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
@@ -1,10 +1,9 @@
1
1
  /// <reference types="astro/client" />
2
- import { OAuthStrategy, TokenRole, createClient, } from "@wix/sdk";
2
+ import { OAuthStrategy, TokenRole, createClient } from "@wix/sdk";
3
3
  import { z } from "astro/zod";
4
4
  import { WIX_CLIENT_ID } from "astro:env/client";
5
5
  import { defineMiddleware } from "astro:middleware";
6
- import { AsyncLocalStorage } from "node:async_hooks";
7
- const authStrategyAsyncLocalStorage = new AsyncLocalStorage();
6
+ import { authStrategyAsyncLocalStorage } from "./auth-context.js";
8
7
  const sessionClient = createClient({
9
8
  auth: {
10
9
  async getAuthHeaders() {
@@ -84,4 +83,4 @@ export const onRequest = defineMiddleware(async (context, next) => {
84
83
  }
85
84
  return response;
86
85
  });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxPQUFPLEVBRUwsYUFBYSxFQUNiLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxVQUFVLENBQUM7QUFFbEIsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM5QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFckQsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLGlCQUFpQixFQUV2RCxDQUFDO0FBRUwsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ2pDLElBQUksRUFBRTtRQUNKLEtBQUssQ0FBQyxjQUFjO1lBQ2xCLE1BQU0sSUFBSSxHQUFHLDZCQUE2QixDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQztZQUM1RCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ1YsTUFBTSxJQUFJLEtBQUssQ0FDYix5REFBeUQsQ0FDMUQsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMvQixDQUFDO0tBQ0Y7Q0FDRixDQUFDLENBQUM7QUFFSCxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXRDOzs7O0dBSUc7QUFDSCxTQUFTLHlCQUF5QixDQUNoQyxPQUF5QztJQUV6QyxJQUFJLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDaEUsTUFBTSxnQkFBZ0IsR0FBRyx5QkFBeUIsQ0FBQyxPQUFPLENBQUM7UUFDekQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRTtRQUMzQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWQsSUFBSSxNQUFNLENBQUM7SUFFWCxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDckIsTUFBTSxpQkFBaUIsR0FBRyxDQUFDO2FBQ3hCLE1BQU0sQ0FBQztZQUNOLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO2dCQUNmLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO29CQUNwQixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtvQkFDakIsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7aUJBQ3RCLENBQUM7Z0JBQ0YsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ3JCLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO29CQUNqQixJQUFJLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUM7aUJBQzlCLENBQUM7YUFDSCxDQUFDO1NBQ0gsQ0FBQzthQUNELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxLQUFLLGFBQWEsRUFBRSxDQUFDO2dCQUN0RCxNQUFNLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN6QyxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQztJQUNiLElBQUksYUFBYSxFQUFFLENBQUM7UUFDbEIsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDO1lBQ3pCLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLE1BQU07U0FDUCxDQUFDLENBQUM7UUFFSCxRQUFRLEdBQUcsTUFBTSw2QkFBNkIsQ0FBQyxHQUFHLENBQ2hEO1lBQ0UsSUFBSTtTQUNMLEVBQ0QsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQ2IsQ0FBQztRQUVGLElBQUkseUJBQXlCLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN2QyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FDakIsWUFBWSxFQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxFQUNyRTtnQkFDRSxNQUFNLEVBQUUsSUFBSTtnQkFDWixJQUFJLEVBQUUsR0FBRzthQUNWLENBQ0YsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sQ0FBQyxJQUFJLENBQ1Y7O09BRUMsQ0FDRixDQUFDO1FBQ0YsUUFBUSxHQUFHLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQyxDQUFDIn0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNDQUFzQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbEUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM5QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEUsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ2pDLElBQUksRUFBRTtRQUNKLEtBQUssQ0FBQyxjQUFjO1lBQ2xCLE1BQU0sSUFBSSxHQUFHLDZCQUE2QixDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQztZQUM1RCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ1YsTUFBTSxJQUFJLEtBQUssQ0FDYix5REFBeUQsQ0FDMUQsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMvQixDQUFDO0tBQ0Y7Q0FDRixDQUFDLENBQUM7QUFFSCxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXRDOzs7O0dBSUc7QUFDSCxTQUFTLHlCQUF5QixDQUNoQyxPQUF5QztJQUV6QyxJQUFJLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUs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
@@ -0,0 +1,3 @@
1
+ import type { APIContext } from "astro";
2
+ export declare const prerender = false;
3
+ export declare function GET({ url, cookies }: APIContext): Promise<Response>;
@@ -0,0 +1,58 @@
1
+ import { getAuth } from "../../runtime.js";
2
+ import { getSessionCookieFromTokens } from "./runtime.js";
3
+ import { OAUTH_COOKIE_STATE, WIX_LOGIN_REDIRECT } from "./constants.js";
4
+ import pRetry from "p-retry";
5
+ export const prerender = false;
6
+ export async function GET({ url, cookies }) {
7
+ // Retrieve the OauthData from cookies
8
+ const oauthStateCookie = cookies.get(OAUTH_COOKIE_STATE);
9
+ const oauthData = oauthStateCookie ? JSON.parse(oauthStateCookie.value) : {};
10
+ // Determine the original URL or default to home
11
+ const originalUrl = oauthData.originalUri || "/";
12
+ // Check for error in the request URL
13
+ if (url.href.includes("error=")) {
14
+ return new Response(null, {
15
+ status: 302,
16
+ headers: {
17
+ Location: originalUrl,
18
+ },
19
+ });
20
+ }
21
+ // Parse state and code from the request URL
22
+ const parsedUrl = new URL(url);
23
+ const state = parsedUrl.searchParams.get("state") || "";
24
+ const code = parsedUrl.searchParams.get("code") || "";
25
+ try {
26
+ // Retrieve member tokens using the code, state, and oauthData
27
+ const auth = getAuth();
28
+ const memberTokens = await pRetry(() => auth.getMemberTokens(code, state, oauthData), {
29
+ retries: 3,
30
+ onFailedAttempt: (error) => {
31
+ console.error("Error getting member tokens", error);
32
+ },
33
+ });
34
+ // Create a response that redirects to the original URL
35
+ const response = new Response(null, {
36
+ status: 302,
37
+ headers: {
38
+ Location: originalUrl,
39
+ },
40
+ });
41
+ // Delete the OAUTH_COOKIE_STATE and WIX_LOGIN_REDIRECT cookies
42
+ response.headers.append("Set-Cookie", `${OAUTH_COOKIE_STATE}=; Max-Age=0; Path=/; HttpOnly; SameSite=Lax`);
43
+ response.headers.append("Set-Cookie", `${WIX_LOGIN_REDIRECT}=; Max-Age=0; Path=/; HttpOnly; SameSite=Lax`);
44
+ // Set the sesion cookie with a 2-day expiration
45
+ response.headers.append("Set-Cookie", `${getSessionCookieFromTokens(memberTokens)}; Max-Age=${60 * 60 * 24 * 2}; Path=/; HttpOnly; SameSite=Lax`);
46
+ return response;
47
+ }
48
+ catch (error) {
49
+ console.error("Authentication error:", error);
50
+ return new Response(null, {
51
+ status: 302,
52
+ headers: {
53
+ Location: "/?authError=true",
54
+ },
55
+ });
56
+ }
57
+ }
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGJhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGVzL2F1dGgvY2FsbGJhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLE1BQU0sTUFBTSxTQUFTLENBQUM7QUFFN0IsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUUvQixNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQWM7SUFDcEQsc0NBQXNDO0lBQ3RDLE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3pELE1BQU0sU0FBUyxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFFN0UsZ0RBQWdEO0lBQ2hELE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDO0lBRWpELHFDQUFxQztJQUNyQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDaEMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUU7WUFDeEIsTUFBTSxFQUFFLEdBQUc7WUFDWCxPQUFPLEVBQUU7Z0JBQ1AsUUFBUSxFQUFFLFdBQVc7YUFDdEI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsNENBQTRDO0lBQzVDLE1BQU0sU0FBUyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9CLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4RCxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFFdEQsSUFBSSxDQUFDO1FBQ0gsOERBQThEO1FBQzlELE1BQU0sSUFBSSxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBRXZCLE1BQU0sWUFBWSxHQUFHLE1BQU0sTUFBTSxDQUMvQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQ2xEO1lBQ0UsT0FBTyxFQUFFLENBQUM7WUFDVixlQUFlLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDekIsT0FBTyxDQUFDLEtBQUssQ0FBQyw2QkFBNkIsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN0RCxDQUFDO1NBQ0YsQ0FDRixDQUFDO1FBRUYsdURBQXVEO1FBQ3ZELE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtZQUNsQyxNQUFNLEVBQUUsR0FBRztZQUNYLE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsV0FBVzthQUN0QjtTQUNGLENBQUMsQ0FBQztRQUVILCtEQUErRDtRQUMvRCxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDckIsWUFBWSxFQUNaLEdBQUcsa0JBQWtCLDhDQUE4QyxDQUNwRSxDQUFDO1FBQ0YsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ3JCLFlBQVksRUFDWixHQUFHLGtCQUFrQiw4Q0FBOEMsQ0FDcEUsQ0FBQztRQUVGLGdEQUFnRDtRQUNoRCxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDckIsWUFBWSxFQUNaLEdBQUcsMEJBQTBCLENBQUMsWUFBWSxDQUFDLGFBQ3pDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQ2pCLGtDQUFrQyxDQUNuQyxDQUFDO1FBRUYsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxHQUFHO1lBQ1gsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxrQkFBa0I7YUFDN0I7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQyJ9
@@ -0,0 +1,5 @@
1
+ export declare const PROMPT_QUERY_PARAM = "prompt";
2
+ export declare const AUTH_LOGIN_CALLBACK_PARAM = "returnToUrl";
3
+ export declare const OAUTH_COOKIE_STATE = "oAuthState";
4
+ export declare const AUTH_CALLBACK_PATHNAME = "/api/auth/callback";
5
+ export declare const WIX_LOGIN_REDIRECT = "wixLoginRedirect";
@@ -0,0 +1,6 @@
1
+ export const PROMPT_QUERY_PARAM = "prompt";
2
+ export const AUTH_LOGIN_CALLBACK_PARAM = "returnToUrl";
3
+ export const OAUTH_COOKIE_STATE = "oAuthState";
4
+ export const AUTH_CALLBACK_PATHNAME = "/api/auth/callback";
5
+ export const WIX_LOGIN_REDIRECT = "wixLoginRedirect";
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JvdXRlcy9hdXRoL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUM7QUFDM0MsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsYUFBYSxDQUFDO0FBQ3ZELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLFlBQVksQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxvQkFBb0IsQ0FBQztBQUMzRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyJ9
@@ -0,0 +1,3 @@
1
+ import type { APIContext } from "astro";
2
+ export declare const prerender = false;
3
+ export declare function GET({ url }: APIContext): Promise<Response>;
@@ -0,0 +1,27 @@
1
+ import { AUTH_CALLBACK_PATHNAME, AUTH_LOGIN_CALLBACK_PARAM, OAUTH_COOKIE_STATE, PROMPT_QUERY_PARAM, } from "./constants.js";
2
+ import { getAuth } from "../../runtime.js";
3
+ export const prerender = false;
4
+ export async function GET({ url }) {
5
+ // Extract search parameters from the URL
6
+ const searchParams = new URL(url).searchParams;
7
+ const originalUrl = searchParams.get(AUTH_LOGIN_CALLBACK_PARAM) || "/";
8
+ const prompt = searchParams.get(PROMPT_QUERY_PARAM) ??
9
+ "login";
10
+ // Generate OAuth data and authorization URL
11
+ const redirectUrl = new URL(AUTH_CALLBACK_PATHNAME, url).toString();
12
+ const oauthData = await getAuth().generateOAuthData(redirectUrl, originalUrl);
13
+ const { authUrl } = await getAuth().getAuthUrl(oauthData, {
14
+ prompt,
15
+ responseMode: "query",
16
+ });
17
+ // Create a response that redirects to the authorization URL
18
+ const response = new Response(null, {
19
+ status: 302,
20
+ headers: {
21
+ Location: authUrl,
22
+ "Set-Cookie": `${OAUTH_COOKIE_STATE}=${JSON.stringify(oauthData)}; Max-Age=1800; Path=/; HttpOnly; SameSite=Lax`,
23
+ },
24
+ });
25
+ return response;
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGVzL2F1dGgvbG9naW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qix5QkFBeUIsRUFDekIsa0JBQWtCLEVBQ2xCLGtCQUFrQixHQUNuQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUczQyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDO0FBRS9CLE1BQU0sQ0FBQyxLQUFLLFVBQVUsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFjO0lBQzNDLHlDQUF5QztJQUN6QyxNQUFNLFlBQVksR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDL0MsTUFBTSxXQUFXLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUN2RSxNQUFNLE1BQU0sR0FDVCxZQUFZLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFrQztRQUN0RSxPQUFPLENBQUM7SUFFViw0Q0FBNEM7SUFDNUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsc0JBQXNCLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDcEUsTUFBTSxTQUFTLEdBQUcsTUFBTSxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFFOUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLE1BQU0sT0FBTyxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRTtRQUN4RCxNQUFNO1FBQ04sWUFBWSxFQUFFLE9BQU87S0FDdEIsQ0FBQyxDQUFDO0lBRUgsNERBQTREO0lBQzVELE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtRQUNsQyxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRTtZQUNQLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFlBQVksRUFBRSxHQUFHLGtCQUFrQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQ25ELFNBQVMsQ0FDVixnREFBZ0Q7U0FDbEQ7S0FDRixDQUFDLENBQUM7SUFFSCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDIn0=
@@ -0,0 +1,3 @@
1
+ import type { APIRoute } from "astro";
2
+ export declare const prerender = false;
3
+ export declare const GET: APIRoute;
@@ -0,0 +1,16 @@
1
+ import { getAuth } from "../../runtime.js";
2
+ import { getSessionCookieFromTokens } from "./runtime.js";
3
+ export const prerender = false;
4
+ export const GET = async ({ request }) => {
5
+ const returnTo = new URL(request.url).searchParams.get("returnTo") ?? "/";
6
+ const tokens = await getAuth().generateVisitorTokens();
7
+ const response = new Response(null, {
8
+ status: 302,
9
+ headers: {
10
+ Location: returnTo,
11
+ },
12
+ });
13
+ response.headers.append("Set-Cookie", `${getSessionCookieFromTokens(tokens)}; Max-Age=${60 * 60 * 24 * 2}; Path=/; HttpOnly; SameSite=Lax`);
14
+ return response;
15
+ };
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LWNhbGxiYWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JvdXRlcy9hdXRoL2xvZ291dC1jYWxsYmFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDM0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzFELE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUM7QUFFL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFhLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7SUFDakQsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxDQUFDO0lBRTFFLE1BQU0sTUFBTSxHQUFHLE1BQU0sT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUV2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUU7UUFDbEMsTUFBTSxFQUFFLEdBQUc7UUFDWCxPQUFPLEVBQUU7WUFDUCxRQUFRLEVBQUUsUUFBUTtTQUNuQjtLQUNGLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUNyQixZQUFZLEVBQ1osR0FBRywwQkFBMEIsQ0FBQyxNQUFNLENBQUMsYUFDbkMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FDakIsa0NBQWtDLENBQ25DLENBQUM7SUFFRixPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDLENBQUMifQ==
@@ -0,0 +1,3 @@
1
+ import type { APIContext } from "astro";
2
+ export declare const prerender = false;
3
+ export declare function GET({ request }: APIContext): Promise<Response>;
@@ -0,0 +1,11 @@
1
+ import { getAuth } from "../../runtime.js";
2
+ export const prerender = false;
3
+ export async function GET({ request }) {
4
+ const returnTo = request.headers.get("Referer") ?? "/";
5
+ const baseUrl = new URL(request.url).origin + "/" + import.meta.env.BASE_URL;
6
+ const postFlowUrl = new URL("/api/auth/logout-callback", baseUrl);
7
+ postFlowUrl.searchParams.set("returnTo", returnTo);
8
+ const { logoutUrl } = await getAuth().logout(postFlowUrl.toString());
9
+ return Response.redirect(logoutUrl);
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JvdXRlcy9hdXRoL2xvZ291dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHM0MsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUUvQixNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBYztJQUMvQyxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO0lBQzdFLE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxDQUFDLDJCQUEyQixFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2xFLFdBQVcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUVuRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFckUsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3RDLENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ import { Tokens } from "@wix/sdk";
2
+ export declare function getSessionCookieFromTokens(tokens: Tokens): string;