@wix/astro 0.2.13 → 0.2.14

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.
@@ -2,4 +2,6 @@ import type { AstroIntegration } from "astro";
2
2
  import { wixBlogLoader } from "./loaders/blog.js";
3
3
  export { wixBlogLoader };
4
4
  export type { Runtime } from "./entrypoints/server.js";
5
- export declare function createIntegration(): AstroIntegration;
5
+ export declare function createIntegration(opts?: {
6
+ sessionCookieName?: string;
7
+ }): AstroIntegration;
@@ -9,8 +9,12 @@ import chalk from "chalk";
9
9
  import { outdent } from "outdent";
10
10
  import { promises as fs } from "node:fs";
11
11
  import path from "node:path";
12
+ import { wixSDKContext } from "./vite-plugins/sdk-context.js";
12
13
  export { wixBlogLoader };
13
- export function createIntegration() {
14
+ export function createIntegration(opts = {
15
+ sessionCookieName: "wixSession",
16
+ }) {
17
+ const sessionCookieName = opts.sessionCookieName ?? "wixSession";
14
18
  let _config;
15
19
  let _buildOutput;
16
20
  return {
@@ -91,6 +95,13 @@ export function createIntegration() {
91
95
  access: "public",
92
96
  context: "client",
93
97
  },
98
+ WIX_SESSION_COOKIE_NAME: {
99
+ type: "string",
100
+ access: "public",
101
+ context: "server",
102
+ optional: true,
103
+ default: opts.sessionCookieName,
104
+ },
94
105
  },
95
106
  },
96
107
  build: {
@@ -101,11 +112,13 @@ export function createIntegration() {
101
112
  },
102
113
  vite: {
103
114
  plugins: [
104
- // The plugin is used to inject the Wix SDK context into the client bundle
105
- // It's currently commented out because there are some issues with the current implementation
106
- // (currently the magic import is injected into any type of module, not only JS)
107
- // not sure if it's necessary to inject the Wix SDK context into the client bundle
108
- // wixSDKContext(),
115
+ // The plugin is used to inject the Wix SDK context into the client bundle
116
+ // It's currently commented out because there are some issues with the current implementation
117
+ // (currently the magic import is injected into any type of module, not only JS)
118
+ // not sure if it's necessary to inject the Wix SDK context into the client bundle
119
+ wixSDKContext({
120
+ sessionCookieName,
121
+ }),
109
122
  ],
110
123
  },
111
124
  image: {
@@ -188,8 +201,8 @@ export function createIntegration() {
188
201
  // Move all files except "client" directory
189
202
  const files = await fs.readdir(_config.outDir.pathname);
190
203
  await Promise.all(files
191
- .filter(file => file !== "client")
192
- .map(file => fs.rename(path.join(_config.outDir.pathname, file), path.join(clientDir, file))));
204
+ .filter((file) => file !== "client")
205
+ .map((file) => fs.rename(path.join(_config.outDir.pathname, file), path.join(clientDir, file))));
193
206
  };
194
207
  if (_buildOutput === "static") {
195
208
  try {
@@ -210,4 +223,4 @@ export function createIntegration() {
210
223
  },
211
224
  };
212
225
  }
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsR0FDcEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQztBQUl6QixNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLElBQUksT0FBb0IsQ0FBQztJQUN6QixJQUFJLFlBQWlDLENBQUM7SUFFdEMsT0FBTztRQUNMLElBQUksRUFBRSxZQUFZO1FBQ2xCLEtBQUssRUFBRTtZQUNMLG9CQUFvQixFQUFFLEtBQUssRUFBRSxFQUMzQixNQUFNLEVBQ04sWUFBWSxFQUNaLGFBQWEsRUFDYixXQUFXLEVBQ1gsTUFBTSxHQUNQLEVBQUUsRUFBRTtnQkFDSCxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQzdELGlCQUFp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
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW50ZWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQixtQkFBbUIsR0FDcEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekMsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLENBQUM7QUFJekIsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixPQUVJO0lBQ0YsaUJBQWlCLEVBQUUsWUFBWTtDQUNoQztJQUVELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixJQUFJLFlBQVksQ0FBQztJQUVqRSxJQUFJLE9BQW9CLENBQUM7SUFDekIsSUFBSSxZQUFpQyxDQUFDO0lBRXRDLE9BQU87UUFDTCxJQUFJLEVBQUUsWUFBWTtRQUNsQixLQUFLLEVBQUU7WUFDTCxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsRUFDM0IsTUFBTSxFQUNOLFlB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
@@ -50,4 +50,4 @@ export async function GET({ url, cookies, redirect }) {
50
50
  });
51
51
  }
52
52
  }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGJhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGVzL2F1dGgvY2FsbGJhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUUvQixNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFjO0lBQzlELHNDQUFzQztJQUN0QyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN6RCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRTdFLGdEQUFnRDtJQUNoRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsV0FBVyxJQUFJLEdBQUcsQ0FBQztJQUVqRCxxQ0FBcUM7SUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxHQUFHO1lBQ1gsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxXQUFXO2FBQ3RCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEQsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRXRELElBQUksQ0FBQztRQUNILDhEQUE4RDtRQUM5RCxNQUFNLElBQUksR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUV2QixNQUFNLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FDL0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUNsRDtZQUNFLE9BQU8sRUFBRSxDQUFDO1lBQ1YsZUFBZSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsQ0FBQztTQUNGLENBQ0YsQ0FBQztRQUVGLE9BQU8sQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNuQyxPQUFPLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDekQsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7WUFDeEIsSUFBSSxFQUFFLEdBQUc7WUFDVCxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUMsQ0FBQztRQUVILE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5QyxPQUFPLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtZQUN4QixNQUFNLEVBQUUsR0FBRztZQUNYLE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsa0JBQWtCO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMifQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGJhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcm91dGVzL2F1dGgvY2FsbGJhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQztBQUUvQixNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFjO0lBQzlELHNDQUFzQztJQUN0QyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN6RCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBRTdFLGdEQUFnRDtJQUNoRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsV0FBVyxJQUFJLEdBQUcsQ0FBQztJQUVqRCxxQ0FBcUM7SUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQ3hCLE1BQU0sRUFBRSxHQUFHO1lBQ1gsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSxXQUFXO2FBQ3RCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEQsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRXRELElBQUksQ0FBQztRQUNILDhEQUE4RDtRQUM5RCxNQUFNLElBQUksR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUV2QixNQUFNLFlBQVksR0FBRyxNQUFNLE1BQU0sQ0FDL0IsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxFQUNsRDtZQUNFLE9BQU8sRUFBRSxDQUFDO1lBQ1YsZUFBZSxFQUFFLENBQUMsS0FBYyxFQUFFLEVBQUU7Z0JBQ2xDLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsQ0FBQztTQUNGLENBQ0YsQ0FBQztRQUVGLE9BQU8sQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNuQyxPQUFPLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsaUJBQWlCLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDekQsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7WUFDeEIsSUFBSSxFQUFFLEdBQUc7WUFDVCxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUMsQ0FBQztRQUVILE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5QyxPQUFPLElBQUksUUFBUSxDQUFDLElBQUksRUFBRTtZQUN4QixNQUFNLEVBQUUsR0FBRztZQUNYLE9BQU8sRUFBRTtnQkFDUCxRQUFRLEVBQUUsa0JBQWtCO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMifQ==
@@ -1,2 +1,4 @@
1
1
  import { Plugin } from "vite";
2
- export declare function wixSDKContext(): Plugin;
2
+ export declare function wixSDKContext(opts: {
3
+ sessionCookieName: string;
4
+ }): Plugin;
@@ -1,86 +1,67 @@
1
1
  import buildResolver from "esm-resolve";
2
- import MagicString from "magic-string";
3
2
  import { fileURLToPath } from "node:url";
4
- import { join } from "path";
5
- export function wixSDKContext() {
6
- let resolvedConfig = null;
7
- const virtualModuleId = "virtual:@wix-astro/sdk-context";
8
- const moduleIdsToInject = new Set();
3
+ import { loadEnv } from "vite";
4
+ export function wixSDKContext(opts) {
5
+ const virtualModuleId = '@wix/sdk-context';
6
+ const resolvedVirtualModuleId = '\0' + virtualModuleId;
9
7
  return {
10
- name: "inject-wix-sdk-context",
11
- enforce: "pre",
12
- configResolved(config) {
13
- resolvedConfig = config;
8
+ name: 'vite-plugin-sdk-context',
9
+ enforce: 'pre', // Ensure the plugin runs before Vite processes dependencies
10
+ config(_, { isSsrBuild }) {
11
+ if (isSsrBuild)
12
+ return; // Skip for server-side rendering
13
+ return {
14
+ optimizeDeps: {
15
+ exclude: [virtualModuleId], // Ensure the virtual module is not pre-bundled
16
+ },
17
+ };
14
18
  },
15
- async resolveId(source, importer, options) {
16
- if (source === virtualModuleId) {
17
- return virtualModuleId;
18
- }
19
- if (importer === join(resolvedConfig.root, "index.html") &&
20
- !options.ssr &&
21
- (source.startsWith("/src") ||
22
- source.startsWith(join(resolvedConfig.root, "src")))) {
23
- const resolved = await this.resolve(source, importer, {
24
- skipSelf: true,
25
- });
26
- if (resolved) {
27
- moduleIdsToInject.add(resolved.id);
28
- }
19
+ resolveId(id, _, { ssr }) {
20
+ if (ssr)
21
+ return null; // Skip for server-side rendering
22
+ if (id === virtualModuleId) {
23
+ return resolvedVirtualModuleId;
29
24
  }
25
+ return null;
30
26
  },
31
27
  load(id) {
32
- const aRequire = buildResolver(fileURLToPath(import.meta.url), {
33
- resolveToAbsolute: true,
34
- });
35
- const wixSDKResolved = aRequire("@wix/sdk/client");
36
- const wixSDKAuthResolved = aRequire("@wix/sdk/auth/oauth2");
37
- if (id === virtualModuleId) {
38
- return `
39
- import { createClient } from "${wixSDKResolved}";
40
- import { OAuthStrategy } from "${wixSDKAuthResolved}";
28
+ if (id === resolvedVirtualModuleId) {
29
+ const aRequire = buildResolver(fileURLToPath(import.meta.url), {
30
+ resolveToAbsolute: true,
31
+ });
32
+ const userLoadedEnv = loadEnv(process.env["NODE_ENV"] ?? "development", process.cwd(), "");
33
+ const wixSDKResolved = aRequire("@wix/sdk/client");
34
+ const wixSDKAuthResolved = aRequire("@wix/sdk/auth/site-session");
35
+ return `import { createClient } from "${wixSDKResolved}";
36
+ import { SiteSessionAuth } from "${wixSDKAuthResolved}";
41
37
 
42
- function getCookie(name) {
43
- // To prevent the for loop in the first place assign an empty array
44
- // in case there are no cookies at all.
45
- var cookies = document.cookie ? document.cookie.split('; ') : [];
46
- var jar = {};
47
- for (var i = 0; i < cookies.length; i++) {
48
- var parts = cookies[i].split('=');
49
- var value = parts.slice(1).join('=');
38
+ function getCookieAsJson(name) {
39
+ const cookies = document.cookie.split('; ');
40
+ const cookie = cookies.find(row => row.startsWith(\`\${name}=\`));
50
41
 
51
- try {
52
- var found = decodeURIComponent(parts[0]);
53
- jar[found] = converter.read(value, found);
42
+ if (!cookie) return null;
54
43
 
55
- if (name === found) {
56
- break
44
+ try {
45
+ const jsonString = decodeURIComponent(cookie.split('=')[1]);
46
+ return JSON.parse(jsonString);
47
+ } catch (error) {
48
+ console.error('Error parsing cookie JSON:', error);
49
+ return null;
57
50
  }
58
- } catch (e) {}
59
- }
60
-
61
- return name ? jar[name] : jar
62
- }
51
+ }
63
52
 
64
- createClient({
65
- auth: OAuthStrategy({
66
- clientId: import.meta.env.WIX_CLIENT_ID,
67
- tokens: JSON.parse(getCookie("wixSession") ?? "{}"),
68
- })
69
- }).enableContext('global');
70
- `;
71
- }
72
- },
73
- transform(code, id, options) {
74
- if (moduleIdsToInject.has(id) && !options?.ssr) {
75
- const s = new MagicString(code);
76
- s.prepend(`import '${virtualModuleId}';\n`);
77
- return {
78
- code: s.toString(),
79
- map: s.generateMap(),
80
- };
53
+ export const wixContext = {
54
+ client: createClient({
55
+ auth: SiteSessionAuth({
56
+ clientId: ${JSON.stringify(userLoadedEnv["WIX_CLIENT_ID"])},
57
+ tokens: getCookieAsJson(${JSON.stringify(opts.sessionCookieName)})?.tokens,
58
+ }),
59
+ })
60
+ };
61
+ `;
81
62
  }
82
- return code;
63
+ return null;
83
64
  },
84
65
  };
85
66
  }
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdml0ZS1wbHVnaW5zL3Nkay1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLFdBQVcsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRzVCLE1BQU0sVUFBVSxhQUFhO0lBQzNCLElBQUksY0FBYyxHQUEwQixJQUFJLENBQUM7SUFDakQsTUFBTSxlQUFlLEdBQUcsZ0NBQWdDLENBQUM7SUFFekQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO0lBRTVDLE9BQU87UUFDTCxJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLE9BQU8sRUFBRSxLQUFLO1FBQ2QsY0FBYyxDQUFDLE1BQU07WUFDbkIsY0FBYyxHQUFHLE1BQU0sQ0FBQztRQUMxQixDQUFDO1FBQ0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU87WUFDdkMsSUFBSSxNQUFNLEtBQUssZUFBZSxFQUFFLENBQUM7Z0JBQy9CLE9BQU8sZUFBZSxDQUFDO1lBQ3pCLENBQUM7WUFFRCxJQUNFLFFBQVEsS0FBSyxJQUFJLENBQUMsY0FBZSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUM7Z0JBQ3JELENBQUMsT0FBTyxDQUFDLEdBQUc7Z0JBQ1osQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQztvQkFDeEIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsY0FBZSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3ZELENBQUM7Z0JBQ0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUU7b0JBQ3BELFFBQVEsRUFBRSxJQUFJO2lCQUNmLENBQUMsQ0FBQztnQkFDSCxJQUFJLFFBQVEsRUFBRSxDQUFDO29CQUNiLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3JDLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxFQUFFO1lBQ0wsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUM3RCxpQkFBaUIsRUFBRSxJQUFJO2FBQ3hCLENBQUMsQ0FBQztZQUVILE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ25ELE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFFNUQsSUFBSSxFQUFFLEtBQUssZUFBZSxFQUFFLENBQUM7Z0JBQzNCLE9BQU87MENBQzJCLGNBQWM7MkNBQ2Isa0JBQWtCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0E4QmxELENBQUM7WUFDTixDQUFDO1FBQ0gsQ0FBQztRQUNELFNBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLE9BQU87WUFDekIsSUFBSSxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7Z0JBQy9DLE1BQU0sQ0FBQyxHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsZUFBZSxNQUFNLENBQUMsQ0FBQztnQkFFNUMsT0FBTztvQkFDTCxJQUFJLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRTtvQkFDbEIsR0FBRyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUU7aUJBQ3JCLENBQUM7WUFDSixDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMifQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLWNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdml0ZS1wbHVnaW5zL3Nkay1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sYUFBYSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQVUsTUFBTSxNQUFNLENBQUM7QUFHdkMsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUFtQztJQUMvRCxNQUFNLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQztJQUMzQyxNQUFNLHVCQUF1QixHQUFHLElBQUksR0FBRyxlQUFlLENBQUM7SUFFdkQsT0FBTztRQUNMLElBQUksRUFBRSx5QkFBeUI7UUFDL0IsT0FBTyxFQUFFLEtBQUssRUFBRSw0REFBNEQ7UUFFNUUsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRTtZQUN0QixJQUFJLFVBQVU7Z0JBQUUsT0FBTyxDQUFDLGlDQUFpQztZQUN6RCxPQUFPO2dCQUNMLFlBQVksRUFBRTtvQkFDWixPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRSwrQ0FBK0M7aUJBQzVFO2FBQ0YsQ0FBQztRQUNKLENBQUM7UUFFRCxTQUFTLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRTtZQUN0QixJQUFJLEdBQUc7Z0JBQUUsT0FBTyxJQUFJLENBQUMsQ0FBQyxpQ0FBaUM7WUFDdkQsSUFBSSxFQUFFLEtBQUssZUFBZSxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sdUJBQXVCLENBQUM7WUFDakMsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFO1lBQ0wsSUFBSSxFQUFFLEtBQUssdUJBQXVCLEVBQUUsQ0FBQztnQkFDbkMsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUM1QixhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFDOUI7b0JBQ0UsaUJBQWlCLEVBQUUsSUFBSTtpQkFDeEIsQ0FDRixDQUFDO2dCQUVGLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FDM0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxhQUFhLEVBQ3hDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFDYixFQUFFLENBQ0gsQ0FBQztnQkFDRixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDbkQsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQ2pDLDRCQUE0QixDQUM3QixDQUFDO2dCQUVKLE9BQU8saUNBQWlDLGNBQWM7aURBQ1gsa0JBQWtCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztnQ0FvQm5DLElBQUksQ0FBQyxTQUFTLENBQ3hCLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FDL0I7OENBQ3lCLElBQUksQ0FBQyxTQUFTLENBQ3RDLElBQUksQ0FBQyxpQkFBaUIsQ0FDdkI7Ozs7aUJBSUosQ0FBQztZQUNaLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wix/astro",
3
3
  "description": "Develop your Astro site on the Wix Platform",
4
- "version": "0.2.13",
4
+ "version": "0.2.14",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "keywords": [
@@ -30,7 +30,7 @@
30
30
  "@cloudflare/workers-types": "^4.20241224.0",
31
31
  "@wix/blog": "^1.0.345",
32
32
  "@wix/data": "^1.0.194",
33
- "@wix/sdk": "^1.15.9",
33
+ "@wix/sdk": "^1.15.14",
34
34
  "chalk": "^5.4.1",
35
35
  "esm-resolve": "^1.0.11",
36
36
  "globby": "^14.0.2",
@@ -1 +0,0 @@
1
- export {};
@@ -1,9 +0,0 @@
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=
@@ -1 +0,0 @@
1
- export {};
@@ -1,4 +0,0 @@
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==
@@ -1,3 +0,0 @@
1
- import type { ExternalImageService } from "astro";
2
- declare const service: ExternalImageService;
3
- export default service;
@@ -1,35 +0,0 @@
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=
@@ -1,2 +0,0 @@
1
- import { APIRoute } from "astro";
2
- export declare const GET: APIRoute;
@@ -1,6 +0,0 @@
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
@@ -1 +0,0 @@
1
- export * from "@wix/vite-plugin-wix-manifest/extensions";
@@ -1,2 +0,0 @@
1
- export * from "@wix/vite-plugin-wix-manifest/extensions";
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9leHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMENBQTBDLENBQUMifQ==
@@ -1,9 +0,0 @@
1
- import type { AstroConfig, ImageMetadata, RemotePattern } from "astro";
2
- export declare function isESMImportedImage(src: ImageMetadata | string): src is ImageMetadata;
3
- export declare function matchHostname(url: URL, hostname?: string, allowWildcard?: boolean): boolean;
4
- export declare function matchPort(url: URL, port?: string): boolean;
5
- export declare function matchProtocol(url: URL, protocol?: string): boolean;
6
- export declare function matchPathname(url: URL, pathname?: string, allowWildcard?: boolean): boolean;
7
- export declare function matchPattern(url: URL, remotePattern: RemotePattern): boolean;
8
- export declare function isRemoteAllowed(src: string, { domains, remotePatterns, }: Partial<Pick<AstroConfig["image"], "domains" | "remotePatterns">>): boolean;
9
- export declare function isString(path: unknown): path is string;
@@ -1,69 +0,0 @@
1
- import { isRemotePath } from "@astrojs/internal-helpers/path";
2
- export function isESMImportedImage(src) {
3
- return typeof src === "object";
4
- }
5
- export function matchHostname(url, hostname, allowWildcard) {
6
- if (!hostname) {
7
- return true;
8
- }
9
- if (!allowWildcard || !hostname.startsWith("*")) {
10
- return hostname === url.hostname;
11
- }
12
- if (hostname.startsWith("**.")) {
13
- const slicedHostname = hostname.slice(2); // ** length
14
- return (slicedHostname !== url.hostname && url.hostname.endsWith(slicedHostname));
15
- }
16
- if (hostname.startsWith("*.")) {
17
- const slicedHostname = hostname.slice(1); // * length
18
- const additionalSubdomains = url.hostname
19
- .replace(slicedHostname, "")
20
- .split(".")
21
- .filter(Boolean);
22
- return additionalSubdomains.length === 1;
23
- }
24
- return false;
25
- }
26
- export function matchPort(url, port) {
27
- return !port || port === url.port;
28
- }
29
- export function matchProtocol(url, protocol) {
30
- return !protocol || protocol === url.protocol.slice(0, -1);
31
- }
32
- export function matchPathname(url, pathname, allowWildcard) {
33
- if (!pathname) {
34
- return true;
35
- }
36
- if (!allowWildcard || !pathname.endsWith("*")) {
37
- return pathname === url.pathname;
38
- }
39
- if (pathname.endsWith("/**")) {
40
- const slicedPathname = pathname.slice(0, -2); // ** length
41
- return (slicedPathname !== url.pathname && url.pathname.startsWith(slicedPathname));
42
- }
43
- if (pathname.endsWith("/*")) {
44
- const slicedPathname = pathname.slice(0, -1); // * length
45
- const additionalPathChunks = url.pathname
46
- .replace(slicedPathname, "")
47
- .split("/")
48
- .filter(Boolean);
49
- return additionalPathChunks.length === 1;
50
- }
51
- return false;
52
- }
53
- export function matchPattern(url, remotePattern) {
54
- return (matchProtocol(url, remotePattern.protocol) &&
55
- matchHostname(url, remotePattern.hostname, true) &&
56
- matchPort(url, remotePattern.port) &&
57
- matchPathname(url, remotePattern.pathname, true));
58
- }
59
- export function isRemoteAllowed(src, { domains = [], remotePatterns = [], }) {
60
- if (!isRemotePath(src))
61
- return false;
62
- const url = new URL(src);
63
- return (domains.some((domain) => matchHostname(url, domain)) ||
64
- remotePatterns.some((remotePattern) => matchPattern(url, remotePattern)));
65
- }
66
- export function isString(path) {
67
- return typeof path === "string" || path instanceof String;
68
- }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2Fzc2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHOUQsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxHQUEyQjtJQUUzQixPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUNqQyxDQUFDO0FBQ0QsTUFBTSxVQUFVLGFBQWEsQ0FDM0IsR0FBUSxFQUNSLFFBQWlCLEVBQ2pCLGFBQXVCO0lBRXZCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDaEQsT0FBTyxRQUFRLEtBQUssR0FBRyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVk7UUFDdEQsT0FBTyxDQUNMLGNBQWMsS0FBSyxHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUN6RSxDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzlCLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXO1FBQ3JELE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFDLFFBQVE7YUFDdEMsT0FBTyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7YUFDM0IsS0FBSyxDQUFD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
@@ -1,9 +0,0 @@
1
- import type { AstroConfig, AstroIntegrationLogger, RouteData, RoutePart } from "astro";
2
- export declare function getParts(part: string): RoutePart[];
3
- export declare function createRoutesFile(_config: AstroConfig, logger: AstroIntegrationLogger, routes: RouteData[], pages: {
4
- pathname: string;
5
- }[], redirects: RouteData["segments"][], includeExtends: {
6
- pattern: string;
7
- }[] | undefined, excludeExtends: {
8
- pattern: string;
9
- }[] | undefined): Promise<void>;
@@ -1,237 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import { writeFile } from "node:fs/promises";
3
- import { posix } from "node:path";
4
- import { fileURLToPath } from "node:url";
5
- import { prependForwardSlash, removeLeadingForwardSlash, removeTrailingForwardSlash, } from "@astrojs/internal-helpers/path";
6
- import glob from "tiny-glob";
7
- // Copied from https://github.com/withastro/astro/blob/3776ecf0aa9e08a992d3ae76e90682fd04093721/packages/astro/src/core/routing/manifest/create.ts#L45-L70
8
- // We're not sure how to improve this regex yet
9
- const ROUTE_DYNAMIC_SPLIT = /\[(.+?\(.+?\)|.+?)\]/;
10
- const ROUTE_SPREAD = /^\.{3}.+$/;
11
- export function getParts(part) {
12
- const result = [];
13
- part.split(ROUTE_DYNAMIC_SPLIT).map((str, i) => {
14
- if (!str)
15
- return;
16
- const dynamic = i % 2 === 1;
17
- const [, content] = dynamic
18
- ? /([^(]+)$/.exec(str) || [null, null]
19
- : [null, str];
20
- if (!content || (dynamic && !/^(?:\.\.\.)?[\w$]+$/.test(content))) {
21
- throw new Error("Parameter name must match /^[a-zA-Z0-9_$]+$/");
22
- }
23
- result.push({
24
- content,
25
- dynamic,
26
- spread: dynamic && ROUTE_SPREAD.test(content),
27
- });
28
- });
29
- return result;
30
- }
31
- async function writeRoutesFileToOutDir(_config, logger, include, exclude) {
32
- try {
33
- await writeFile(new URL("./_routes.json", _config.outDir), JSON.stringify({
34
- version: 1,
35
- include: include,
36
- exclude: exclude,
37
- }, null, 2), "utf-8");
38
- }
39
- catch (error) {
40
- logger.error("There was an error writing the '_routes.json' file to the output directory.");
41
- }
42
- }
43
- function segmentsToCfSyntax(segments, _config) {
44
- const pathSegments = [];
45
- if (removeLeadingForwardSlash(removeTrailingForwardSlash(_config.base)).length >
46
- 0) {
47
- pathSegments.push(removeLeadingForwardSlash(removeTrailingForwardSlash(_config.base)));
48
- }
49
- for (const segment of segments.flat()) {
50
- if (segment.dynamic)
51
- pathSegments.push("*");
52
- else
53
- pathSegments.push(segment.content);
54
- }
55
- return pathSegments;
56
- }
57
- class TrieNode {
58
- children = new Map();
59
- isEndOfPath = false;
60
- hasWildcardChild = false;
61
- }
62
- class PathTrie {
63
- root;
64
- returnHasWildcard = false;
65
- constructor() {
66
- this.root = new TrieNode();
67
- }
68
- insert(path) {
69
- let node = this.root;
70
- for (const segment of path) {
71
- if (segment === "*") {
72
- node.hasWildcardChild = true;
73
- break;
74
- }
75
- if (!node.children.has(segment)) {
76
- node.children.set(segment, new TrieNode());
77
- }
78
- // biome-ignore lint/style/noNonNullAssertion: The `if` condition above ensures that the segment exists inside the map
79
- node = node.children.get(segment);
80
- }
81
- node.isEndOfPath = true;
82
- }
83
- /**
84
- * Depth-first search (dfs), traverses the "graph" segment by segment until the end or wildcard (*).
85
- * It makes sure that all necessary paths are returned, but not paths with an existing wildcard prefix.
86
- * e.g. if we have a path like /foo/* and /foo/bar, we only want to return /foo/*
87
- */
88
- dfs(node, path, allPaths) {
89
- if (node.hasWildcardChild) {
90
- this.returnHasWildcard = true;
91
- allPaths.push([...path, "*"]);
92
- return;
93
- }
94
- if (node.isEndOfPath) {
95
- allPaths.push([...path]);
96
- }
97
- for (const [segment, childNode] of node.children) {
98
- this.dfs(childNode, [...path, segment], allPaths);
99
- }
100
- }
101
- getAllPaths() {
102
- const allPaths = [];
103
- this.dfs(this.root, [], allPaths);
104
- return [allPaths, this.returnHasWildcard];
105
- }
106
- }
107
- export async function createRoutesFile(_config, logger, routes, pages, redirects, includeExtends, excludeExtends) {
108
- const includePaths = [];
109
- const excludePaths = [];
110
- /**
111
- * All files in the `_config.build.assets` path, e.g. `_astro`
112
- * are considered static assets and should not be handled by the function
113
- * therefore we exclude a wildcard for that, e.g. `/_astro/*`
114
- */
115
- const assetsPath = segmentsToCfSyntax([
116
- [{ content: _config.build.assets, dynamic: false, spread: false }],
117
- [{ content: "", dynamic: true, spread: false }],
118
- ], _config);
119
- excludePaths.push(assetsPath);
120
- if (existsSync(fileURLToPath(_config.publicDir))) {
121
- const staticFiles = await glob(`${fileURLToPath(_config.publicDir)}/**/*`, {
122
- cwd: fileURLToPath(_config.publicDir),
123
- filesOnly: true,
124
- dot: true,
125
- });
126
- for (const staticFile of staticFiles) {
127
- if (["_headers", "_redirects", "_routes.json"].includes(staticFile))
128
- continue;
129
- const staticPath = staticFile;
130
- const segments = removeLeadingForwardSlash(staticPath)
131
- .split(posix.sep)
132
- .filter(Boolean)
133
- .map((s) => {
134
- return getParts(s);
135
- });
136
- excludePaths.push(segmentsToCfSyntax(segments, _config));
137
- }
138
- }
139
- for (const redirect of redirects) {
140
- excludePaths.push(segmentsToCfSyntax(redirect, _config));
141
- }
142
- let hasPrerendered404 = false;
143
- for (const route of routes) {
144
- const convertedPath = segmentsToCfSyntax(route.segments, _config);
145
- if (route.pathname === "/404" && route.prerender === true)
146
- hasPrerendered404 = true;
147
- switch (route.type) {
148
- case "page":
149
- if (route.prerender === false)
150
- includePaths.push(convertedPath);
151
- break;
152
- case "endpoint":
153
- if (route.prerender === false)
154
- includePaths.push(convertedPath);
155
- else
156
- excludePaths.push(convertedPath);
157
- break;
158
- case "redirect":
159
- excludePaths.push(convertedPath);
160
- break;
161
- default:
162
- /**
163
- * We don't know the type, so we are conservative!
164
- * Invoking the function on these is a safe-bet because
165
- * the function will fallback to static asset fetching
166
- */
167
- includePaths.push(convertedPath);
168
- break;
169
- }
170
- }
171
- for (const page of pages) {
172
- if (page.pathname === "404")
173
- hasPrerendered404 = true;
174
- const pageSegments = removeLeadingForwardSlash(page.pathname)
175
- .split(posix.sep)
176
- .filter(Boolean)
177
- .map((s) => {
178
- return getParts(s);
179
- });
180
- excludePaths.push(segmentsToCfSyntax(pageSegments, _config));
181
- }
182
- const includeTrie = new PathTrie();
183
- for (const includePath of includePaths) {
184
- includeTrie.insert(includePath);
185
- }
186
- const [deduplicatedIncludePaths, includedPathsHaveWildcard] = includeTrie.getAllPaths();
187
- const excludeTrie = new PathTrie();
188
- for (const excludePath of excludePaths) {
189
- /**
190
- * A excludePath with starts with a wildcard (*) is a catch-all
191
- * that would mean all routes are static, that would be equal to a full SSG project
192
- * the adapter is not needed in this case, so we do not consider such paths
193
- */
194
- if (excludePath[0] === "*")
195
- continue;
196
- excludeTrie.insert(excludePath);
197
- }
198
- const [deduplicatedExcludePaths, _excludedPathsHaveWildcard] = excludeTrie.getAllPaths();
199
- /**
200
- * Cloudflare allows no more than 100 include/exclude rules combined
201
- * https://developers.cloudflare.com/pages/functions/routing/#limits
202
- */
203
- const CLOUDFLARE_COMBINED_LIMIT = 100;
204
- /**
205
- * Caluclate the number of automated and extended include rules
206
- */
207
- const AUTOMATIC_INCLUDE_RULES_COUNT = deduplicatedIncludePaths.length;
208
- const EXTENDED_INCLUDE_RULES_COUNT = includeExtends?.length ?? 0;
209
- const INCLUDE_RULES_COUNT = AUTOMATIC_INCLUDE_RULES_COUNT + EXTENDED_INCLUDE_RULES_COUNT;
210
- /**
211
- * Caluclate the number of automated and extended exclude rules
212
- */
213
- const AUTOMATIC_EXCLUDE_RULES_COUNT = deduplicatedExcludePaths.length;
214
- const EXTENDED_EXCLUDE_RULES_COUNT = excludeExtends?.length ?? 0;
215
- const EXCLUDE_RULES_COUNT = AUTOMATIC_EXCLUDE_RULES_COUNT + EXTENDED_EXCLUDE_RULES_COUNT;
216
- if (!hasPrerendered404 ||
217
- INCLUDE_RULES_COUNT > CLOUDFLARE_COMBINED_LIMIT ||
218
- EXCLUDE_RULES_COUNT > CLOUDFLARE_COMBINED_LIMIT) {
219
- await writeRoutesFileToOutDir(_config, logger, ["/*"].concat(includeExtends?.map((entry) => entry.pattern) ?? []), deduplicatedExcludePaths
220
- .map((path) => `${prependForwardSlash(path.join("/"))}`)
221
- .slice(0, CLOUDFLARE_COMBINED_LIMIT -
222
- EXTENDED_INCLUDE_RULES_COUNT -
223
- EXTENDED_EXCLUDE_RULES_COUNT -
224
- 1)
225
- .concat(excludeExtends?.map((entry) => entry.pattern) ?? []));
226
- }
227
- else {
228
- await writeRoutesFileToOutDir(_config, logger, deduplicatedIncludePaths
229
- .map((path) => `${prependForwardSlash(path.join("/"))}`)
230
- .concat(includeExtends?.map((entry) => entry.pattern) ?? []), includedPathsHaveWildcard
231
- ? deduplicatedExcludePaths
232
- .map((path) => `${prependForwardSlash(path.join("/"))}`)
233
- .concat(excludeExtends?.map((entry) => entry.pattern) ?? [])
234
- : []);
235
- }
236
- }
237
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUtcm91dGVzLWpzb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZ2VuZXJhdGUtcm91dGVzLWpzb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLDBCQUEwQixHQUMzQixNQUFNLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUU3QiwwSkFBMEo7QUFDMUosK0NBQStDO0FBQy9DLE1BQU0sbUJBQW1CLEdBQUcsc0JBQXNCLENBQUM7QUFDbkQsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDO0FBQ2pDLE1BQU0sVUFBVSxRQUFRLENBQUMsSUFBWTtJQUNuQyxNQUFNLE1BQU0sR0FBZ0IsRUFBRSxDQUFDO0lBQy9CLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDN0MsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPO1FBQ2pCLE1BQU0sT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVCLE1BQU0sQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLE9BQU87WUFDekIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO1lBQ3RDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUVoQixJQUFJ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
@@ -1,33 +0,0 @@
1
- import type { AstroConfig, AstroIntegrationLogger } from "astro";
2
- export declare function setImageConfig(service: string, config: AstroConfig["image"], command: "dev" | "build" | "preview" | "sync", logger: AstroIntegrationLogger): {
3
- service: import("astro").ImageServiceConfig<Record<string, any>>;
4
- endpoint: {
5
- route: string;
6
- entrypoint?: string | undefined;
7
- };
8
- domains: string[];
9
- remotePatterns: {
10
- port?: string | undefined;
11
- protocol?: string | undefined;
12
- hostname?: string | undefined;
13
- pathname?: string | undefined;
14
- }[];
15
- experimentalLayout?: "fixed" | "none" | "responsive" | "full-width" | undefined;
16
- experimentalObjectFit?: string | undefined;
17
- experimentalObjectPosition?: string | undefined;
18
- experimentalBreakpoints?: number[] | undefined;
19
- } | {
20
- service: import("astro").ImageServiceConfig<Record<string, any>>;
21
- endpoint: string | undefined;
22
- domains: string[];
23
- remotePatterns: {
24
- port?: string | undefined;
25
- protocol?: string | undefined;
26
- hostname?: string | undefined;
27
- pathname?: string | undefined;
28
- }[];
29
- experimentalLayout?: "fixed" | "none" | "responsive" | "full-width" | undefined;
30
- experimentalObjectFit?: string | undefined;
31
- experimentalObjectPosition?: string | undefined;
32
- experimentalBreakpoints?: number[] | undefined;
33
- };
@@ -1,30 +0,0 @@
1
- import { passthroughImageService, sharpImageService } from "astro/config";
2
- export function setImageConfig(service, config, command, logger) {
3
- switch (service) {
4
- case "passthrough":
5
- return { ...config, service: passthroughImageService() };
6
- case "cloudflare":
7
- return {
8
- ...config,
9
- service: command === "dev"
10
- ? sharpImageService()
11
- : { entrypoint: "@astrojs/cloudflare/image-service" },
12
- };
13
- case "compile":
14
- return {
15
- ...config,
16
- service: sharpImageService(),
17
- endpoint: command === "dev" ? undefined : "@astrojs/cloudflare/image-endpoint",
18
- };
19
- case "custom":
20
- return { ...config };
21
- default:
22
- if (config.service.entrypoint === "astro/assets/services/sharp" ||
23
- config.service.entrypoint === "astro/assets/services/squoosh") {
24
- logger.warn(`The current configuration does not support image optimization. To allow your project to build with the original, unoptimized images, the image service has been automatically switched to the 'noop' option. See https://docs.astro.build/en/reference/configuration-reference/#imageservice`);
25
- return { ...config, service: passthroughImageService() };
26
- }
27
- return { ...config };
28
- }
29
- }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2ltYWdlLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUUsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsT0FBZSxFQUNmLE1BQTRCLEVBQzVCLE9BQTZDLEVBQzdDLE1BQThCO0lBRTlCLFFBQVEsT0FBTyxFQUFFLENBQUM7UUFDaEIsS0FBSyxhQUFhO1lBQ2hCLE9BQU8sRUFBRSxHQUFHLE1BQU0sRUFBRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsRUFBRSxDQUFDO1FBRTNELEtBQUssWUFBWTtZQUNmLE9BQU87Z0JBQ0wsR0FBRyxNQUFNO2dCQUNULE9BQU8sRUFDTCxPQUFPLEtBQUssS0FBSztvQkFDZixDQUFDLENBQUMsaUJBQWlCLEVBQUU7b0JBQ3JCLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxtQ0FBbUMsRUFBRTthQUMxRCxDQUFDO1FBRUosS0FBSyxTQUFTO1lBQ1osT0FBTztnQkFDTCxHQUFHLE1BQU07Z0JBQ1QsT0FBTyxFQUFFLGlCQUFpQixFQUFFO2dCQUM1QixRQUFRLEVBQ04sT0FBTyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxvQ0FBb0M7YUFDdkUsQ0FBQztRQUVKLEtBQUssUUFBUTtZQUNYLE9BQU8sRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBRXZCO1lBQ0UsSUFDRSxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsS0FBSyw2QkFBNkI7Z0JBQzNELE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxLQUFLLCtCQUErQixFQUM3RCxDQUFDO2dCQUNELE1BQU0sQ0FBQyxJQUFJLENBQ1QsOFJBQThSLENBQy9SLENBQUM7Z0JBQ0YsT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxFQUFFLENBQUM7WUFDM0QsQ0FBQztZQUNELE9BQU8sRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7QUFDSCxDQUFDIn0=
@@ -1,8 +0,0 @@
1
- import type { Node } from "estree-walker";
2
- import type MagicString from "magic-string";
3
- export declare function mutatePageMapInPlace(node: Extract<Node, {
4
- type: "VariableDeclaration";
5
- }>, constsToRemove: string[], s: MagicString): void;
6
- export declare function mutateDynamicPageImportsInPlace(node: Extract<Node, {
7
- type: "VariableDeclaration";
8
- }>, prerenderImports: string[], constsToRemove: string[], s: MagicString): void;
@@ -1,59 +0,0 @@
1
- export function mutatePageMapInPlace(node, constsToRemove, s) {
2
- const declarator = node.declarations[0];
3
- if (declarator.id.type !== "Identifier")
4
- return;
5
- if (declarator.id.name !== "pageMap")
6
- return;
7
- if (!declarator.init || declarator.init.type !== "NewExpression")
8
- return;
9
- if (!declarator.init.arguments[0] ||
10
- declarator.init.arguments[0].type !== "ArrayExpression")
11
- return;
12
- for (const arrayExpression of declarator.init.arguments[0].elements) {
13
- if (!arrayExpression || arrayExpression.type !== "ArrayExpression")
14
- continue;
15
- if (!arrayExpression.elements[1] ||
16
- arrayExpression.elements[1].type !== "Identifier")
17
- continue;
18
- if (constsToRemove.includes(arrayExpression.elements[1].name)) {
19
- // @ts-expect-error - @types/estree seem to be wrong
20
- if (arrayExpression.start && arrayExpression.end) {
21
- // @ts-expect-error - @types/estree seem to be wrong
22
- s.remove(arrayExpression.start, arrayExpression.end);
23
- // We need to check if there are any leftover commas, which are not part of the `ArrayExpression` node
24
- // @ts-expect-error - @types/estree seem to be wrong
25
- const endChar = s.slice(arrayExpression.end, arrayExpression.end + 1);
26
- if (endChar.includes(",")) {
27
- // @ts-expect-error - @types/estree seem to be wrong
28
- s.remove(arrayExpression.end, arrayExpression.end + 1);
29
- }
30
- }
31
- }
32
- }
33
- }
34
- export function mutateDynamicPageImportsInPlace(node, prerenderImports, constsToRemove, s) {
35
- const declarator = node.declarations[0];
36
- if (declarator.id.type !== "Identifier")
37
- return;
38
- if (!declarator.id.name.startsWith("_page"))
39
- return;
40
- if (!declarator.init || declarator.init.type !== "ArrowFunctionExpression")
41
- return;
42
- if (!declarator.init.body || declarator.init.body.type !== "ImportExpression")
43
- return;
44
- if (!declarator.init.body.source ||
45
- declarator.init.body.source.type !== "Literal")
46
- return;
47
- const sourceValue = declarator.init.body.source.value;
48
- if (typeof sourceValue !== "string")
49
- return;
50
- if (prerenderImports.some((importItem) => sourceValue.includes(importItem))) {
51
- // @ts-expect-error - @types/estree seem to be wrong
52
- if (node.start && node.end) {
53
- constsToRemove.push(declarator.id.name);
54
- // @ts-expect-error - @types/estree seem to be wrong
55
- s.remove(node.start, node.end);
56
- }
57
- }
58
- }
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxJQUFvRCxFQUNwRCxjQUF3QixFQUN4QixDQUFjO0lBRWQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUUsQ0FBQztJQUN6QyxJQUFJLFVBQVUsQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFlBQVk7UUFBRSxPQUFPO0lBQ2hELElBQUksVUFBVSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssU0FBUztRQUFFLE9BQU87SUFDN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZTtRQUFFLE9BQU87SUFDekUsSUFDRSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUM3QixVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssaUJBQWlCO1FBRXZELE9BQU87SUFFVCxLQUFLLE1BQU0sZUFBZSxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3BFLElBQUksQ0FBQyxlQUFlLElBQUksZUFBZSxDQUFDLElBQUksS0FBSyxpQkFBaUI7WUFDaEUsU0FBUztRQUNYLElBQ0UsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUM1QixlQUFlLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxZQUFZO1lBRWpELFNBQVM7UUFFWCxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzlE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
@@ -1,14 +0,0 @@
1
- import type { Plugin } from "vite";
2
- /**
3
- * A Vite bundle analyzer that identifies chunks that are not used for server rendering.
4
- *
5
- * The chunks injected by Astro for prerendering are flagged as non-server chunks.
6
- * Any chunks that is only used by a non-server chunk are also flagged as non-server chunks.
7
- * This continues transitively until all non-server chunks are found.
8
- */
9
- export declare class NonServerChunkDetector {
10
- private nonServerChunks?;
11
- getPlugin(): Plugin;
12
- private processBundle;
13
- getNonServerChunks(): string[];
14
- }
@@ -1,73 +0,0 @@
1
- /**
2
- * A Vite bundle analyzer that identifies chunks that are not used for server rendering.
3
- *
4
- * The chunks injected by Astro for prerendering are flagged as non-server chunks.
5
- * Any chunks that is only used by a non-server chunk are also flagged as non-server chunks.
6
- * This continues transitively until all non-server chunks are found.
7
- */
8
- export class NonServerChunkDetector {
9
- nonServerChunks;
10
- getPlugin() {
11
- return {
12
- name: "non-server-chunk-detector",
13
- generateBundle: (_, bundle) => {
14
- // Skip if we bundle for client
15
- if (!bundle["index.js"])
16
- return;
17
- this.processBundle(bundle);
18
- },
19
- };
20
- }
21
- processBundle(bundle) {
22
- const chunkNamesToFiles = new Map();
23
- const entryChunks = [];
24
- const chunkToDependencies = new Map();
25
- for (const chunk of Object.values(bundle)) {
26
- if (chunk.type !== "chunk")
27
- continue;
28
- // Construct a mapping from a chunk name to its file name
29
- chunkNamesToFiles.set(chunk.name, chunk.fileName);
30
- // Construct a mapping from a chunk file to all the modules it imports
31
- chunkToDependencies.set(chunk.fileName, [
32
- ...chunk.imports,
33
- ...chunk.dynamicImports,
34
- ]);
35
- if (chunk.isEntry) {
36
- // Entry chunks should always be kept around since they are to be imported by the runtime
37
- entryChunks.push(chunk.fileName);
38
- }
39
- }
40
- const chunkDecisions = new Map();
41
- for (const entry of entryChunks) {
42
- // Entry chunks are used on the server
43
- chunkDecisions.set(entry, true);
44
- }
45
- for (const chunk of ["prerender", "prerender@_@astro"]) {
46
- // Prerender chunks are not used on the server
47
- const fileName = chunkNamesToFiles.get(chunk);
48
- if (fileName) {
49
- chunkDecisions.set(fileName, false);
50
- }
51
- }
52
- // Start a stack of chunks that are used on the server
53
- const chunksToWalk = [...entryChunks];
54
- // Iterate over the chunks, traversing the transitive dependencies of the chunks used on the server
55
- for (let chunk = chunksToWalk.pop(); chunk; chunk = chunksToWalk.pop()) {
56
- for (const dep of chunkToDependencies.get(chunk) ?? []) {
57
- // Skip dependencies already flagged, dependencies may be repeated and/or circular
58
- if (chunkDecisions.has(dep))
59
- continue;
60
- // A dependency of a module used on the server is also used on the server
61
- chunkDecisions.set(dep, true);
62
- // Add the dependency to the stack so its own dependencies are also flagged
63
- chunksToWalk.push(dep);
64
- }
65
- }
66
- // Any chunk not flagged as used on the server is a non-server chunk
67
- this.nonServerChunks = Array.from(chunkToDependencies.keys()).filter((chunk) => !chunkDecisions.get(chunk));
68
- }
69
- getNonServerChunks() {
70
- return this.nonServerChunks ?? [];
71
- }
72
- }
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9uLXNlcnZlci1jaHVuay1kZXRlY3Rvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ub24tc2VydmVyLWNodW5rLWRldGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUFDekIsZUFBZSxDQUFZO0lBRTVCLFNBQVM7UUFDZCxPQUFPO1lBQ0wsSUFBSSxFQUFFLDJCQUEyQjtZQUNqQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQzVCLCtCQUErQjtnQkFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7b0JBQUUsT0FBTztnQkFDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM3QixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTyxhQUFhLENBQUMsTUFBb0I7UUFDeEMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztRQUVwRCxNQUFNLFdBQVcsR0FBYSxFQUFFLENBQUM7UUFDakMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLEdBQUcsRUFBb0IsQ0FBQztRQUV4RCxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMxQyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTztnQkFBRSxTQUFTO1lBRXJDLHlEQUF5RDtZQUN6RCxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDbEQsc0VBQXNFO1lBQ3RFLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO2dCQUN0QyxHQUFHLEtBQUssQ0FBQyxPQUFPO2dCQUNoQixHQUFHLEtBQUssQ0FBQyxjQUFjO2FBQ3hCLENBQUMsQ0FBQztZQUVILElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsQix5RkFBeUY7Z0JBQ3pGLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ25DLENBQUM7UUFDSCxDQUFDO1FBRUQsTUFBTSxjQUFjLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7UUFFbEQsS0FBSyxNQUFNLEtBQUssSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNoQyxzQ0FBc0M7WUFDdEMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUVELEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1lBQ3ZELDhDQUE4QztZQUM5QyxNQUFNLFFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUMsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDYixjQUFjLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUN0QyxDQUFDO1FBQ0gsQ0FBQztRQUVELHNEQUFzRDtRQUN0RCxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUM7UUFFdEMsbUdBQW1HO1FBQ25HLEtBQUssSUFBSSxLQUFLLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUM7WUFDdkUsS0FBSyxNQUFNLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ3ZELGtGQUFrRjtnQkFDbEYsSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQztvQkFBRSxTQUFTO2dCQUV0Qyx5RUFBeUU7Z0JBQ3pFLGNBQWMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM5QiwyRUFBMkU7Z0JBQzNFLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsQ0FBQztRQUNILENBQUM7UUFFRCxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUNsRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksRUFBRSxDQUFDO0lBQ3BDLENBQUM7Q0FDRiJ9
@@ -1,13 +0,0 @@
1
- import type { AstroConfig } from "astro";
2
- /**
3
- * Loads '*.wasm?module' imports as WebAssembly modules, which is the only way to load WASM in cloudflare workers.
4
- * Current proposal for WASM modules: https://github.com/WebAssembly/esm-integration/tree/main/proposals/esm-integration
5
- * Cloudflare worker WASM from javascript support: https://developers.cloudflare.com/workers/runtime-apis/webassembly/javascript/
6
- * @param disabled - if true throws a helpful error message if wasm is encountered and wasm imports are not enabled,
7
- * otherwise it will error obscurely in the esbuild and vite builds
8
- * @param assetsDirectory - the folder name for the assets directory in the build directory. Usually '_astro'
9
- * @returns Vite plugin to load WASM tagged with '?module' as a WASM modules
10
- */
11
- export declare function wasmModuleLoader({ disabled, }: {
12
- disabled: boolean;
13
- }): NonNullable<AstroConfig["vite"]["plugins"]>[number];
@@ -1,117 +0,0 @@
1
- import * as fs from "node:fs";
2
- import * as path from "node:path";
3
- /**
4
- * Loads '*.wasm?module' imports as WebAssembly modules, which is the only way to load WASM in cloudflare workers.
5
- * Current proposal for WASM modules: https://github.com/WebAssembly/esm-integration/tree/main/proposals/esm-integration
6
- * Cloudflare worker WASM from javascript support: https://developers.cloudflare.com/workers/runtime-apis/webassembly/javascript/
7
- * @param disabled - if true throws a helpful error message if wasm is encountered and wasm imports are not enabled,
8
- * otherwise it will error obscurely in the esbuild and vite builds
9
- * @param assetsDirectory - the folder name for the assets directory in the build directory. Usually '_astro'
10
- * @returns Vite plugin to load WASM tagged with '?module' as a WASM modules
11
- */
12
- export function wasmModuleLoader({ disabled, }) {
13
- const postfix = ".wasm?module";
14
- let isDev = false;
15
- return {
16
- name: "vite:wasm-module-loader",
17
- enforce: "pre",
18
- configResolved(config) {
19
- isDev = config.command === "serve";
20
- },
21
- config(_, __) {
22
- // let vite know that file format and the magic import string is intentional, and will be handled in this plugin
23
- return {
24
- assetsInclude: ["**/*.wasm?module"],
25
- build: {
26
- rollupOptions: {
27
- // mark the wasm files as external so that they are not bundled and instead are loaded from the files
28
- external: [
29
- /^__WASM_ASSET__.+\.wasm$/i,
30
- /^__WASM_ASSET__.+\.wasm.mjs$/i,
31
- ],
32
- },
33
- },
34
- };
35
- },
36
- load(id, _) {
37
- if (!id.endsWith(postfix)) {
38
- return;
39
- }
40
- if (disabled) {
41
- throw new Error(`WASM module's cannot be loaded unless you add \`wasmModuleImports: true\` to your astro config.`);
42
- }
43
- const filePath = id.slice(0, -1 * "?module".length);
44
- const data = fs.readFileSync(filePath);
45
- const base64 = data.toString("base64");
46
- const base64Module = `const wasmModule = new WebAssembly.Module(Uint8Array.from(atob("${base64}"), c => c.charCodeAt(0)));export default wasmModule;`;
47
- if (isDev) {
48
- // no need to wire up the assets in dev mode, just rewrite
49
- return base64Module;
50
- }
51
- // just some shared ID
52
- const hash = hashString(base64);
53
- // emit the wasm binary as an asset file, to be picked up later by the esbuild bundle for the worker.
54
- // give it a shared deterministic name to make things easy for esbuild to switch on later
55
- const assetName = `${path.basename(filePath).split(".")[0]}.${hash}.wasm`;
56
- this.emitFile({
57
- type: "asset",
58
- // put it explicitly in the _astro assets directory with `fileName` rather than `name` so that
59
- // vite doesn't give it a random id in its name. We need to be able to easily rewrite from
60
- // the .mjs loader and the actual wasm asset later in the ESbuild for the worker
61
- fileName: assetName,
62
- source: data,
63
- });
64
- // however, by default, the SSG generator cannot import the .wasm as a module, so embed as a base64 string
65
- const chunkId = this.emitFile({
66
- type: "prebuilt-chunk",
67
- fileName: `${assetName}.mjs`,
68
- code: base64Module,
69
- });
70
- return `import wasmModule from "__WASM_ASSET__${chunkId}.wasm.mjs";export default wasmModule;`;
71
- },
72
- // output original wasm file relative to the chunk
73
- renderChunk(code, chunk, _) {
74
- if (isDev)
75
- return;
76
- if (!/__WASM_ASSET__/g.test(code))
77
- return;
78
- const isPrerendered = Object.keys(chunk.modules).some((moduleId) => this.getModuleInfo(moduleId)?.meta?.["astro"]?.pageOptions
79
- ?.prerender === true);
80
- let final = code;
81
- // SSR
82
- if (!isPrerendered) {
83
- final = code.replaceAll(/__WASM_ASSET__([A-Za-z\d]+).wasm.mjs/g, (_, assetId) => {
84
- const fileName = this.getFileName(assetId).replace(/\.mjs$/, "");
85
- const relativePath = path
86
- .relative(path.dirname(chunk.fileName), fileName)
87
- .replaceAll("\\", "/"); // fix windows paths for import
88
- return `./${relativePath}`;
89
- });
90
- }
91
- // SSG
92
- if (isPrerendered) {
93
- final = code.replaceAll(/__WASM_ASSET__([A-Za-z\d]+).wasm.mjs/g, (_, assetId) => {
94
- const fileName = this.getFileName(assetId);
95
- const relativePath = path
96
- .relative(path.dirname(chunk.fileName), fileName)
97
- .replaceAll("\\", "/"); // fix windows paths for import
98
- return `./${relativePath}`;
99
- });
100
- }
101
- return { code: final };
102
- },
103
- };
104
- }
105
- /**
106
- * Returns a deterministic 32 bit hash code from a string
107
- */
108
- function hashString(str) {
109
- let hash = 0;
110
- for (let i = 0; i < str.length; i++) {
111
- const char = str.charCodeAt(i);
112
- hash = (hash << 5) - hash + char;
113
- hash &= hash; // Convert to 32bit integer
114
- }
115
- return new Uint32Array([hash])[0].toString(36);
116
- }
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FzbS1tb2R1bGUtbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL3dhc20tbW9kdWxlLWxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM5QixPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUdsQzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxFQUMvQixRQUFRLEdBR1Q7SUFDQyxNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUM7SUFDL0IsSUFBSSxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBRWxCLE9BQU87UUFDTCxJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE9BQU8sRUFBRSxLQUFLO1FBQ2QsY0FBYyxDQUFDLE1BQU07WUFDbkIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDO1FBQ3JDLENBQUM7UUFDRCxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDVixnSEFBZ0g7WUFDaEgsT0FBTztnQkFDTCxhQUFhLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFDbkMsS0FBSyxFQUFFO29CQUNMLGFBQWEsRUFBRTt3QkFDYixxR0FBcUc7d0JBQ3JHLFFBQVEsRUFBRTs0QkFDUiwyQkFBMkI7NEJBQzNCLCtCQUErQjt5QkFDaEM7cUJBQ0Y7aUJBQ0Y7YUFDRixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNSLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQzFCLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDYixNQUFNLElBQUksS0FBSyxDQUNiLGlHQUFpRyxDQUNsRyxDQUFDO1lBQ0osQ0FBQztZQUVELE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMs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