cloudcommerce 2.6.3 → 2.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/test-apps.yml +1 -1
- package/CHANGELOG.md +12 -0
- package/README.md +2 -0
- package/ecomplus-stores/barradoce/functions/many/package.json +3 -3
- package/ecomplus-stores/barradoce/functions/ssr/content/reviews.json +71 -0
- package/ecomplus-stores/barradoce/functions/ssr/content/types.d.ts +5 -0
- package/ecomplus-stores/barradoce/functions/ssr/package.json +6 -6
- package/ecomplus-stores/barradoce/functions/ssr/src/env.d.ts +1 -0
- package/ecomplus-stores/barradoce/functions/with-apps/package.json +3 -3
- package/ecomplus-stores/barradoce/package.json +2 -2
- package/package.json +7 -7
- package/packages/api/package.json +1 -1
- package/packages/apps/affiliate-program/package.json +1 -1
- package/packages/apps/correios/package.json +1 -1
- package/packages/apps/custom-payment/package.json +1 -1
- package/packages/apps/custom-shipping/package.json +1 -1
- package/packages/apps/datafrete/package.json +1 -1
- package/packages/apps/discounts/package.json +1 -1
- package/packages/apps/emails/package.json +1 -1
- package/packages/apps/fb-conversions/package.json +1 -1
- package/packages/apps/flash-courier/package.json +1 -1
- package/packages/apps/frenet/package.json +1 -1
- package/packages/apps/galaxpay/package.json +1 -1
- package/packages/apps/google-analytics/package.json +1 -1
- package/packages/apps/jadlog/package.json +1 -1
- package/packages/apps/loyalty-points/package.json +1 -1
- package/packages/apps/mandae/package.json +1 -1
- package/packages/apps/melhor-envio/package.json +1 -1
- package/packages/apps/mercadopago/package.json +1 -1
- package/packages/apps/pagarme/package.json +2 -2
- package/packages/apps/pagarme-v5/package.json +1 -1
- package/packages/apps/paghiper/package.json +1 -1
- package/packages/apps/pix/package.json +1 -1
- package/packages/apps/tiny-erp/package.json +1 -1
- package/packages/apps/webhooks/package.json +1 -1
- package/packages/cli/package.json +2 -2
- package/packages/config/package.json +1 -1
- package/packages/emails/package.json +2 -2
- package/packages/eslint/package.json +6 -6
- package/packages/events/package.json +1 -1
- package/packages/feeds/package.json +1 -1
- package/packages/firebase/package.json +2 -2
- package/packages/i18n/package.json +1 -1
- package/packages/modules/package.json +1 -1
- package/packages/passport/package.json +1 -1
- package/packages/ssr/lib/lib/cron-ssr-save-views.js +2 -1
- package/packages/ssr/lib/lib/cron-ssr-save-views.js.map +1 -1
- package/packages/ssr/package.json +4 -4
- package/packages/ssr/src/lib/cron-ssr-save-views.ts +2 -1
- package/packages/storefront/dist/client/_astro/AccountPage.B4WZaOzX.js +1 -0
- package/packages/storefront/dist/client/_astro/CartSidebar.DAGdpIcU.js +1 -0
- package/packages/storefront/dist/client/_astro/HeroSlider.Dq_9kcdU.js +1 -0
- package/packages/storefront/dist/client/_astro/PitchBar.BwLlIs6F.js +1 -0
- package/packages/storefront/dist/client/_astro/Prices.BgHTq5id.js +1 -0
- package/packages/storefront/dist/client/_astro/ProductDetails.CnYNdPl5.js +7 -0
- package/packages/storefront/dist/client/_astro/ProductShelf.kfADQTUO.js +1 -0
- package/packages/storefront/dist/client/_astro/SearchModal.DcmvABes.js +1 -0
- package/packages/storefront/dist/client/_astro/SearchShowcase.C9GWwOnF.js +1 -0
- package/packages/storefront/dist/client/_astro/ShippingCalculator.DE01D7dt.js +1 -0
- package/packages/storefront/dist/client/_astro/ShopHeader.Cf4t6O6z.js +7 -0
- package/packages/storefront/dist/client/_astro/_commonjsHelpers.Cpj98o6Y.js +1 -0
- package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.CBemkWnU.js +5 -0
- package/packages/storefront/dist/client/_astro/{_slug_.4W7qhV-L.css → _slug_.DX_OkMX7.css} +1 -1
- package/packages/storefront/dist/client/_astro/{afetch.OifQZgwR.js → afetch.DPLba2tr.js} +1 -1
- package/packages/storefront/dist/client/_astro/client.CdXC84C5.js +1 -0
- package/packages/storefront/dist/client/_astro/customer-session.CNe1heRH.js +7 -0
- package/packages/storefront/dist/client/_astro/{firebase-app.iLdzDVjL.js → firebase-app.CBckq0Sj.js} +1 -1
- package/packages/storefront/dist/client/_astro/{format-money.1_HtF5S2.js → format-money.DINpWB0x.js} +1 -1
- package/packages/storefront/dist/client/_astro/grid-title.D4m7-g3h.js +1 -0
- package/packages/storefront/dist/client/_astro/hoisted.B2rH1xwX.js +8 -0
- package/packages/storefront/dist/client/_astro/hoisted.DBPXHTEb.js +1 -0
- package/packages/storefront/dist/client/_astro/hoisted.EBqhuD5o.js +1 -0
- package/packages/storefront/dist/client/_astro/{hoisted.GaT7bmE3.js → hoisted.ut_nNM_H.js} +1 -1
- package/packages/storefront/dist/client/_astro/i18n.B3skIOFg.js +1 -0
- package/packages/storefront/dist/client/_astro/img-sizes.rFK7so02.js +1 -0
- package/packages/storefront/dist/client/_astro/img.D5a6GzeE.js +1 -0
- package/packages/storefront/dist/client/_astro/index.CFw6O-Kt.js +1 -0
- package/packages/storefront/dist/client/_astro/index.DBfgCyd-.js +1 -0
- package/packages/storefront/dist/client/_astro/{modules-info.HP6478mG.js → modules-info.BHKiT6oA.js} +1 -1
- package/packages/storefront/dist/client/_astro/name.BZA9xqh-.js +1 -0
- package/packages/storefront/dist/client/_astro/photoswipe.esm.C0FT-EY-.js +4 -0
- package/packages/storefront/dist/client/_astro/price.CHiL6Z1J.js +1 -0
- package/packages/storefront/dist/client/_astro/sf-utils.Cigv01cN.js +13 -0
- package/packages/storefront/dist/client/_astro/shopping-cart.D-w8Z-4p.js +1 -0
- package/packages/storefront/dist/client/_astro/use-analytics.CQDdNgwF.js +1 -0
- package/packages/storefront/dist/client/_astro/use-cms-preview.4Hq7LCmA.js +1 -0
- package/packages/storefront/dist/client/_astro/use-product-card.CQRlRsNX.js +1 -0
- package/packages/storefront/dist/client/_astro/use-text-value.UjCYLWjm.js +4 -0
- package/packages/storefront/dist/client/img/uploads/logo.png +0 -0
- package/packages/storefront/dist/server/chunks/{CartSidebar_3_1aFp67.mjs → CartSidebar_BmwcZuxv.mjs} +36 -4
- package/packages/storefront/dist/server/chunks/{SearchModal_2azP1u7P.mjs → SearchModal_BvEnUvAx.mjs} +4 -3
- package/packages/storefront/dist/server/chunks/_.._DORZHe_Z.mjs +5 -0
- package/packages/storefront/dist/server/chunks/{_page__qqIVxbal.mjs → _page__DU3kNewy.mjs} +1 -1
- package/packages/storefront/dist/server/chunks/{account_vK6pmJlz.mjs → account_CaTloREf.mjs} +1 -1
- package/packages/storefront/dist/server/chunks/astro/{assets-service_631fRtTy.mjs → assets-service_B77Hm2ue.mjs} +2 -2
- package/packages/storefront/dist/server/chunks/{astro_u-oSb215.mjs → astro_ISB6VLqs.mjs} +178 -59
- package/packages/storefront/dist/server/chunks/index_BTDpenpc.mjs +5 -0
- package/packages/storefront/dist/server/chunks/index_D0q4ab_n.mjs +5 -0
- package/packages/storefront/dist/server/chunks/{node_zqXXqc-u.mjs → node_C7sdLKL4.mjs} +1 -1
- package/packages/storefront/dist/server/chunks/pages/{__ZucPYaOo.mjs → __B4CsSrck.mjs} +1751 -344
- package/packages/storefront/dist/server/chunks/pages/{_page__0sN9U0SD.mjs → _page__sb5Idhgp.mjs} +2 -3
- package/packages/storefront/dist/server/chunks/pages/{account_OQr_6KN1.mjs → account_iWjHfkwu.mjs} +2 -3
- package/packages/storefront/dist/server/chunks/pages/{index_3IjgOEIq.mjs → index_BZlpKBRL.mjs} +41 -4
- package/packages/storefront/dist/server/chunks/pages/node_GFu-CQ19.mjs +852 -0
- package/packages/storefront/dist/server/chunks/pages/{~fallback_133FK-CP.mjs → ~fallback_C07rzeay.mjs} +2 -3
- package/packages/storefront/dist/server/chunks/{index__05fnqFh.mjs → ~fallback_YpJa9BIL.mjs} +1 -1
- package/packages/storefront/dist/server/entry.mjs +751 -912
- package/packages/storefront/dist/server/manifest_KFjAaJaC.mjs +201 -0
- package/packages/storefront/dist/server/renderers.mjs +1 -1
- package/packages/storefront/package.json +6 -6
- package/packages/storefront/src/lib/content.d.ts +4 -1
- package/packages/storefront/src/lib/custom-content.d.ts +9 -0
- package/packages/storefront/src/lib/ssr-context.ts +6 -4
- package/packages/test-base/package.json +1 -1
- package/packages/types/package.json +1 -1
- package/packages/storefront/dist/client/_astro/AccountPage.0M6_FdU6.js +0 -1
- package/packages/storefront/dist/client/_astro/CartSidebar.L0Vbhsdt.js +0 -1
- package/packages/storefront/dist/client/_astro/HeroSlider.ju9TsLrJ.js +0 -1
- package/packages/storefront/dist/client/_astro/PitchBar.yqD9ycx5.js +0 -1
- package/packages/storefront/dist/client/_astro/Prices.xI1rdM1e.js +0 -1
- package/packages/storefront/dist/client/_astro/ProductDetails.FQtM5kpd.js +0 -7
- package/packages/storefront/dist/client/_astro/ProductShelf.-4fsYkPB.js +0 -1
- package/packages/storefront/dist/client/_astro/ProductShelf.GAAhKdTN.js +0 -1
- package/packages/storefront/dist/client/_astro/QuantitySelector.v7L8EYOR.js +0 -1
- package/packages/storefront/dist/client/_astro/SearchModal.rasg5jV6.js +0 -1
- package/packages/storefront/dist/client/_astro/SearchShowcase.kA6jICYo.js +0 -1
- package/packages/storefront/dist/client/_astro/ShopHeader.v_L96Y90.js +0 -7
- package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.xATGHWd9.js +0 -5
- package/packages/storefront/dist/client/_astro/client.YJ00ta5M.js +0 -1
- package/packages/storefront/dist/client/_astro/customer-session.ZD6tLDQJ.js +0 -7
- package/packages/storefront/dist/client/_astro/grid-title.pK2Nn3i-.js +0 -1
- package/packages/storefront/dist/client/_astro/hoisted.ICXGWNEA.js +0 -1
- package/packages/storefront/dist/client/_astro/hoisted.XOXTrHqn.js +0 -1
- package/packages/storefront/dist/client/_astro/i18n.zhlBzJt8.js +0 -1
- package/packages/storefront/dist/client/_astro/img-sizes.gxAI9JNh.js +0 -1
- package/packages/storefront/dist/client/_astro/img.AnjeGdy_.js +0 -1
- package/packages/storefront/dist/client/_astro/index.KfrHdfOH.js +0 -1
- package/packages/storefront/dist/client/_astro/index.ShNlAyu1.js +0 -1
- package/packages/storefront/dist/client/_astro/name.VA3MEpe0.js +0 -1
- package/packages/storefront/dist/client/_astro/photoswipe.esm.Ylh9TGkz.js +0 -4
- package/packages/storefront/dist/client/_astro/price.Easct8WC.js +0 -1
- package/packages/storefront/dist/client/_astro/sf-utils.c42cbZ9W.js +0 -13
- package/packages/storefront/dist/client/_astro/shopping-cart.nSNNOrp9.js +0 -1
- package/packages/storefront/dist/client/_astro/use-analytics.wTmoP8B1.js +0 -1
- package/packages/storefront/dist/client/_astro/use-product-card.UFr8SCuD.js +0 -1
- package/packages/storefront/dist/client/_astro/use-text-value.lKqoIagH.js +0 -4
- package/packages/storefront/dist/server/chunks/_.._19fCuQdO.mjs +0 -5
- package/packages/storefront/dist/server/chunks/pages/node_OmjWRf8D.mjs +0 -112
- package/packages/storefront/dist/server/chunks/~fallback_Wahcp9Wk.mjs +0 -5
- package/packages/storefront/dist/server/manifest_9FASPYUE.mjs +0 -202
- /package/packages/storefront/dist/client/_astro/{index-bea2a320.eWykogwr.js → index-bea2a320.CHELEM8n.js} +0 -0
- /package/packages/storefront/dist/client/_astro/{photoswipe-lightbox.esm.dZBqKD9u.js → photoswipe-lightbox.esm.BbYxSZIB.js} +0 -0
- /package/packages/storefront/dist/client/_astro/{photoswipe.0V7m2jWu.js → photoswipe.CNpEZKfy.js} +0 -0
- /package/packages/storefront/dist/client/_astro/{server-data.4C60Esyt.js → server-data.CUHTES8a.js} +0 -0
- /package/packages/storefront/dist/server/chunks/{photoswipe_IcWDJiwc.mjs → photoswipe_wusPJBJF.mjs} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { bold } from 'kleur/colors';
|
|
2
2
|
import { clsx } from 'clsx';
|
|
3
|
-
import 'cssesc';
|
|
4
3
|
import { escape } from 'html-escaper';
|
|
4
|
+
import 'cssesc';
|
|
5
5
|
|
|
6
6
|
const ClientAddressNotAvailable = {
|
|
7
7
|
name: "ClientAddressNotAvailable",
|
|
@@ -124,8 +124,14 @@ const InvalidImageService = {
|
|
|
124
124
|
const MissingImageDimension = {
|
|
125
125
|
name: "MissingImageDimension",
|
|
126
126
|
title: "Missing image dimensions",
|
|
127
|
-
message: (missingDimension, imageURL) => `Missing ${missingDimension === "both" ? "width and height attributes" : `${missingDimension} attribute`} for ${imageURL}. When using remote images, both dimensions are
|
|
128
|
-
hint: "If your image is inside your `src` folder, you probably meant to import it instead. See [the Imports guide for more information](https://docs.astro.build/en/guides/imports/#other-assets)."
|
|
127
|
+
message: (missingDimension, imageURL) => `Missing ${missingDimension === "both" ? "width and height attributes" : `${missingDimension} attribute`} for ${imageURL}. When using remote images, both dimensions are required unless in order to avoid CLS.`,
|
|
128
|
+
hint: "If your image is inside your `src` folder, you probably meant to import it instead. See [the Imports guide for more information](https://docs.astro.build/en/guides/imports/#other-assets). You can also use `inferSize={true}` for remote images to get the original dimensions."
|
|
129
|
+
};
|
|
130
|
+
const FailedToFetchRemoteImageDimensions = {
|
|
131
|
+
name: "FailedToFetchRemoteImageDimensions",
|
|
132
|
+
title: "Failed to retrieve remote image dimensions",
|
|
133
|
+
message: (imageURL) => `Failed to get the dimensions for ${imageURL}.`,
|
|
134
|
+
hint: "Verify your remote image URL is accurate, and that you are not using `inferSize` with a file located in your `public/` folder."
|
|
129
135
|
};
|
|
130
136
|
const UnsupportedImageFormat = {
|
|
131
137
|
name: "UnsupportedImageFormat",
|
|
@@ -144,7 +150,7 @@ const PrerenderDynamicEndpointPathCollide = {
|
|
|
144
150
|
name: "PrerenderDynamicEndpointPathCollide",
|
|
145
151
|
title: "Prerendered dynamic endpoint has path collision.",
|
|
146
152
|
message: (pathname) => `Could not render \`${pathname}\` with an \`undefined\` param as the generated path will collide during prerendering. Prevent passing \`undefined\` as \`params\` for the endpoint's \`getStaticPaths()\` function, or add an additional extension to the endpoint's filename.`,
|
|
147
|
-
hint: (filename) => `Rename \`${filename}\` to \`${filename.replace(/\.(js|ts)/, (m) => `.json` + m)}\``
|
|
153
|
+
hint: (filename) => `Rename \`${filename}\` to \`${filename.replace(/\.(?:js|ts)/, (m) => `.json` + m)}\``
|
|
148
154
|
};
|
|
149
155
|
const ExpectedImage = {
|
|
150
156
|
name: "ExpectedImage",
|
|
@@ -210,12 +216,6 @@ const MissingSharp = {
|
|
|
210
216
|
message: "Could not find Sharp. Please install Sharp (`sharp`) manually into your project or migrate to another image service.",
|
|
211
217
|
hint: "See Sharp's installation instructions for more information: https://sharp.pixelplumbing.com/install. If you are not relying on `astro:assets` to optimize, transform, or process any images, you can configure a passthrough image service instead of installing Sharp. See https://docs.astro.build/en/reference/errors/missing-sharp for more information.\n\nSee https://docs.astro.build/en/guides/images/#default-image-service for more information on how to migrate to another image service."
|
|
212
218
|
};
|
|
213
|
-
const CantRenderPage = {
|
|
214
|
-
name: "CantRenderPage",
|
|
215
|
-
title: "Astro can't render the route.",
|
|
216
|
-
message: "Astro cannot find any content to render for this route. There is no file or redirect associated with this route.",
|
|
217
|
-
hint: "If you expect to find a route here, this may be an Astro bug. Please file an issue/restart the dev server"
|
|
218
|
-
};
|
|
219
219
|
|
|
220
220
|
function normalizeLF(code) {
|
|
221
221
|
return code.replace(/\r\n|\r(?!\n)|\n/g, "\n");
|
|
@@ -290,10 +290,49 @@ class AstroError extends Error {
|
|
|
290
290
|
}
|
|
291
291
|
}
|
|
292
292
|
|
|
293
|
-
const ASTRO_VERSION = "4.
|
|
294
|
-
const ROUTE_DATA_SYMBOL = "astro.routeData";
|
|
295
|
-
|
|
293
|
+
const ASTRO_VERSION = "4.4.4";
|
|
296
294
|
const REROUTE_DIRECTIVE_HEADER = "X-Astro-Reroute";
|
|
295
|
+
const ROUTE_TYPE_HEADER = "X-Astro-Route-Type";
|
|
296
|
+
const REROUTABLE_STATUS_CODES = [404, 500];
|
|
297
|
+
const clientAddressSymbol = Symbol.for("astro.clientAddress");
|
|
298
|
+
const clientLocalsSymbol = Symbol.for("astro.locals");
|
|
299
|
+
const responseSentSymbol = Symbol.for("astro.responseSent");
|
|
300
|
+
|
|
301
|
+
async function renderEndpoint(mod, context, ssr, logger) {
|
|
302
|
+
const { request, url } = context;
|
|
303
|
+
const method = request.method.toUpperCase();
|
|
304
|
+
const handler = mod[method] ?? mod["ALL"];
|
|
305
|
+
if (!ssr && ssr === false && method !== "GET") {
|
|
306
|
+
logger.warn(
|
|
307
|
+
"router",
|
|
308
|
+
`${url.pathname} ${bold(
|
|
309
|
+
method
|
|
310
|
+
)} requests are not available for a static site. Update your config to \`output: 'server'\` or \`output: 'hybrid'\` to enable.`
|
|
311
|
+
);
|
|
312
|
+
}
|
|
313
|
+
if (handler === void 0) {
|
|
314
|
+
logger.warn(
|
|
315
|
+
"router",
|
|
316
|
+
`No API Route handler exists for the method "${method}" for the route "${url.pathname}".
|
|
317
|
+
Found handlers: ${Object.keys(mod).map((exp) => JSON.stringify(exp)).join(", ")}
|
|
318
|
+
` + ("all" in mod ? `One of the exported handlers is "all" (lowercase), did you mean to export 'ALL'?
|
|
319
|
+
` : "")
|
|
320
|
+
);
|
|
321
|
+
return new Response(null, { status: 404 });
|
|
322
|
+
}
|
|
323
|
+
if (typeof handler !== "function") {
|
|
324
|
+
logger.error(
|
|
325
|
+
"router",
|
|
326
|
+
`The route "${url.pathname}" exports a value for the method "${method}", but it is of the type ${typeof handler} instead of a function.`
|
|
327
|
+
);
|
|
328
|
+
return new Response(null, { status: 500 });
|
|
329
|
+
}
|
|
330
|
+
const response = await handler.call(mod, context);
|
|
331
|
+
if (REROUTABLE_STATUS_CODES.includes(response.status)) {
|
|
332
|
+
response.headers.set(REROUTE_DIRECTIVE_HEADER, "no");
|
|
333
|
+
}
|
|
334
|
+
return response;
|
|
335
|
+
}
|
|
297
336
|
|
|
298
337
|
function validateArgs(args) {
|
|
299
338
|
if (args.length !== 3)
|
|
@@ -358,35 +397,6 @@ function createAstro(site) {
|
|
|
358
397
|
};
|
|
359
398
|
}
|
|
360
399
|
|
|
361
|
-
async function renderEndpoint(mod, context, ssr, logger) {
|
|
362
|
-
const { request, url } = context;
|
|
363
|
-
const method = request.method.toUpperCase();
|
|
364
|
-
const handler = mod[method] ?? mod["ALL"];
|
|
365
|
-
if (!ssr && ssr === false && method !== "GET") {
|
|
366
|
-
logger.warn(
|
|
367
|
-
"router",
|
|
368
|
-
`${url.pathname} ${bold(
|
|
369
|
-
method
|
|
370
|
-
)} requests are not available for a static site. Update your config to \`output: 'server'\` or \`output: 'hybrid'\` to enable.`
|
|
371
|
-
);
|
|
372
|
-
}
|
|
373
|
-
if (typeof handler !== "function") {
|
|
374
|
-
logger.warn(
|
|
375
|
-
"router",
|
|
376
|
-
`No API Route handler exists for the method "${method}" for the route ${url.pathname}.
|
|
377
|
-
Found handlers: ${Object.keys(mod).map((exp) => JSON.stringify(exp)).join(", ")}
|
|
378
|
-
` + ("all" in mod ? `One of the exported handlers is "all" (lowercase), did you mean to export 'ALL'?
|
|
379
|
-
` : "")
|
|
380
|
-
);
|
|
381
|
-
return new Response(null, { status: 404 });
|
|
382
|
-
}
|
|
383
|
-
const response = await handler.call(mod, context);
|
|
384
|
-
if (response.status === 404 || response.status === 500) {
|
|
385
|
-
response.headers.set(REROUTE_DIRECTIVE_HEADER, "no");
|
|
386
|
-
}
|
|
387
|
-
return response;
|
|
388
|
-
}
|
|
389
|
-
|
|
390
400
|
function isPromise(value) {
|
|
391
401
|
return !!value && typeof value === "object" && typeof value.then === "function";
|
|
392
402
|
}
|
|
@@ -769,7 +779,9 @@ function isHeadAndContent(obj) {
|
|
|
769
779
|
return typeof obj === "object" && !!obj[headAndContentSym];
|
|
770
780
|
}
|
|
771
781
|
|
|
772
|
-
var astro_island_prebuilt_default = `(()=>{var
|
|
782
|
+
var astro_island_prebuilt_default = `(()=>{var v=Object.defineProperty;var A=(c,s,a)=>s in c?v(c,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):c[s]=a;var d=(c,s,a)=>(A(c,typeof s!="symbol"?s+"":s,a),a);var u;{let c={0:t=>m(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t)},s=t=>{let[e,n]=t;return e in c?c[e](n):void 0},a=t=>t.map(s),m=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,n])=>[e,s(n)]));customElements.get("astro-island")||customElements.define("astro-island",(u=class extends HTMLElement{constructor(){super(...arguments);d(this,"Component");d(this,"hydrator");d(this,"hydrate",async()=>{var f;if(!this.hydrator||!this.isConnected)return;let e=(f=this.parentElement)==null?void 0:f.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),r={},l=this.querySelectorAll("template[data-astro-template]");for(let o of l){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(r[o.getAttribute("data-astro-template")||"default"]=o.innerHTML,o.remove())}for(let o of n){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(r[o.getAttribute("name")||"default"]=o.innerHTML)}let h;try{h=this.hasAttribute("props")?m(JSON.parse(this.getAttribute("props"))):{}}catch(o){let i=this.getAttribute("component-url")||"<unknown>",b=this.getAttribute("component-export");throw b&&(i+=\` (export \${b})\`),console.error(\`[hydrate] Error parsing props for component \${i}\`,this.getAttribute("props"),o),o}let p;await this.hydrator(this)(this.Component,h,r,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});d(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),n.disconnect(),this.childrenConnectedCallback()},n=new MutationObserver(()=>{var r;((r=this.lastChild)==null?void 0:r.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});n.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(\`astro:\${n}\`,()=>this.start(),{once:!0});return}try{await Astro[n](async()=>{let r=this.getAttribute("renderer-url"),[l,{default:h}]=await Promise.all([import(this.getAttribute("component-url")),r?import(r):()=>()=>{}]),p=this.getAttribute("component-export")||"default";if(!p.includes("."))this.Component=l[p];else{this.Component=l;for(let y of p.split("."))this.Component=this.Component[y]}return this.hydrator=h,this.hydrate},e,this)}catch(r){console.error(\`[astro-island] Error hydrating \${this.getAttribute("component-url")}\`,r)}}attributeChangedCallback(){this.hydrate()}},d(u,"observedAttributes",["props"]),u))}})();`;
|
|
783
|
+
|
|
784
|
+
var astro_island_prebuilt_dev_default = `(()=>{var v=Object.defineProperty;var A=(c,s,a)=>s in c?v(c,s,{enumerable:!0,configurable:!0,writable:!0,value:a}):c[s]=a;var l=(c,s,a)=>(A(c,typeof s!="symbol"?s+"":s,a),a);var m;{let c={0:t=>y(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t)},s=t=>{let[e,n]=t;return e in c?c[e](n):void 0},a=t=>t.map(s),y=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,n])=>[e,s(n)]));customElements.get("astro-island")||customElements.define("astro-island",(m=class extends HTMLElement{constructor(){super(...arguments);l(this,"Component");l(this,"hydrator");l(this,"hydrate",async()=>{var f;if(!this.hydrator||!this.isConnected)return;let e=(f=this.parentElement)==null?void 0:f.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let n=this.querySelectorAll("astro-slot"),r={},h=this.querySelectorAll("template[data-astro-template]");for(let o of h){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(r[o.getAttribute("data-astro-template")||"default"]=o.innerHTML,o.remove())}for(let o of n){let i=o.closest(this.tagName);i!=null&&i.isSameNode(this)&&(r[o.getAttribute("name")||"default"]=o.innerHTML)}let p;try{p=this.hasAttribute("props")?y(JSON.parse(this.getAttribute("props"))):{}}catch(o){let i=this.getAttribute("component-url")||"<unknown>",b=this.getAttribute("component-export");throw b&&(i+=\` (export \${b})\`),console.error(\`[hydrate] Error parsing props for component \${i}\`,this.getAttribute("props"),o),o}let d,u=this.hydrator(this);d=performance.now(),await u(this.Component,p,r,{client:this.getAttribute("client")}),d&&this.setAttribute("client-render-time",(performance.now()-d).toString()),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});l(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),n.disconnect(),this.childrenConnectedCallback()},n=new MutationObserver(()=>{var r;((r=this.lastChild)==null?void 0:r.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});n.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),n=this.getAttribute("client");if(Astro[n]===void 0){window.addEventListener(\`astro:\${n}\`,()=>this.start(),{once:!0});return}try{await Astro[n](async()=>{let r=this.getAttribute("renderer-url"),[h,{default:p}]=await Promise.all([import(this.getAttribute("component-url")),r?import(r):()=>()=>{}]),d=this.getAttribute("component-export")||"default";if(!d.includes("."))this.Component=h[d];else{this.Component=h;for(let u of d.split("."))this.Component=this.Component[u]}return this.hydrator=p,this.hydrate},e,this)}catch(r){console.error(\`[astro-island] Error hydrating \${this.getAttribute("component-url")}\`,r)}}attributeChangedCallback(){this.hydrate()}},l(m,"observedAttributes",["props"]),m))}})();`;
|
|
773
785
|
|
|
774
786
|
const ISLAND_STYLES = `<style>astro-island,astro-slot,astro-static-slot{display:contents}</style>`;
|
|
775
787
|
function determineIfNeedsHydrationScript(result) {
|
|
@@ -796,10 +808,7 @@ function getDirectiveScriptText(result, directive) {
|
|
|
796
808
|
function getPrescripts(result, type, directive) {
|
|
797
809
|
switch (type) {
|
|
798
810
|
case "both":
|
|
799
|
-
return `${ISLAND_STYLES}<script>${getDirectiveScriptText(
|
|
800
|
-
result,
|
|
801
|
-
directive
|
|
802
|
-
)};${astro_island_prebuilt_default}</script>`;
|
|
811
|
+
return `${ISLAND_STYLES}<script>${getDirectiveScriptText(result, directive)};${process.env.NODE_ENV === "development" ? astro_island_prebuilt_dev_default : astro_island_prebuilt_default}</script>`;
|
|
803
812
|
case "directive":
|
|
804
813
|
return `<script>${getDirectiveScriptText(result, directive)}</script>`;
|
|
805
814
|
}
|
|
@@ -807,12 +816,12 @@ function getPrescripts(result, type, directive) {
|
|
|
807
816
|
}
|
|
808
817
|
|
|
809
818
|
const voidElementNames = /^(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)$/i;
|
|
810
|
-
const htmlBooleanAttributes = /^(allowfullscreen|async|autofocus|autoplay|controls|default|defer|disabled|disablepictureinpicture|disableremoteplayback|formnovalidate|hidden|loop|nomodule|novalidate|open|playsinline|readonly|required|reversed|scoped|seamless|itemscope)$/i;
|
|
811
|
-
const htmlEnumAttributes = /^(contenteditable|draggable|spellcheck|value)$/i;
|
|
812
|
-
const svgEnumAttributes = /^(autoReverse|externalResourcesRequired|focusable|preserveAlpha)$/i;
|
|
819
|
+
const htmlBooleanAttributes = /^(?:allowfullscreen|async|autofocus|autoplay|controls|default|defer|disabled|disablepictureinpicture|disableremoteplayback|formnovalidate|hidden|loop|nomodule|novalidate|open|playsinline|readonly|required|reversed|scoped|seamless|itemscope)$/i;
|
|
820
|
+
const htmlEnumAttributes = /^(?:contenteditable|draggable|spellcheck|value)$/i;
|
|
821
|
+
const svgEnumAttributes = /^(?:autoReverse|externalResourcesRequired|focusable|preserveAlpha)$/i;
|
|
813
822
|
const STATIC_DIRECTIVES = /* @__PURE__ */ new Set(["set:html", "set:text"]);
|
|
814
|
-
const toIdent = (k) => k.trim().replace(/(
|
|
815
|
-
if (
|
|
823
|
+
const toIdent = (k) => k.trim().replace(/(?!^)\b\w|\s+|\W+/g, (match, index) => {
|
|
824
|
+
if (/\W/.test(match))
|
|
816
825
|
return "";
|
|
817
826
|
return index === 0 ? match : match.toUpperCase();
|
|
818
827
|
});
|
|
@@ -922,6 +931,19 @@ function renderToBufferDestination(bufferRenderFunction) {
|
|
|
922
931
|
}
|
|
923
932
|
};
|
|
924
933
|
}
|
|
934
|
+
const isNode = typeof process !== "undefined" && Object.prototype.toString.call(process) === "[object process]";
|
|
935
|
+
function promiseWithResolvers() {
|
|
936
|
+
let resolve, reject;
|
|
937
|
+
const promise = new Promise((_resolve, _reject) => {
|
|
938
|
+
resolve = _resolve;
|
|
939
|
+
reject = _reject;
|
|
940
|
+
});
|
|
941
|
+
return {
|
|
942
|
+
promise,
|
|
943
|
+
resolve,
|
|
944
|
+
reject
|
|
945
|
+
};
|
|
946
|
+
}
|
|
925
947
|
|
|
926
948
|
const uniqueElements = (item, index, all) => {
|
|
927
949
|
const props = JSON.stringify(item.props);
|
|
@@ -1247,6 +1269,7 @@ function renderTemplate(htmlParts, ...expressions) {
|
|
|
1247
1269
|
return new RenderTemplateResult(htmlParts, expressions);
|
|
1248
1270
|
}
|
|
1249
1271
|
|
|
1272
|
+
const DOCTYPE_EXP = /<!doctype html/i;
|
|
1250
1273
|
async function renderToString(result, componentFactory, props, children, isPage = false, route) {
|
|
1251
1274
|
const templateResult = await callComponentAsTemplateResultOrResponse(
|
|
1252
1275
|
result,
|
|
@@ -1263,7 +1286,7 @@ async function renderToString(result, componentFactory, props, children, isPage
|
|
|
1263
1286
|
write(chunk) {
|
|
1264
1287
|
if (isPage && !renderedFirstPageChunk) {
|
|
1265
1288
|
renderedFirstPageChunk = true;
|
|
1266
|
-
if (!result.partial &&
|
|
1289
|
+
if (!result.partial && !DOCTYPE_EXP.test(String(chunk))) {
|
|
1267
1290
|
const doctype = result.compressHTML ? "<!DOCTYPE html>" : "<!DOCTYPE html>\n";
|
|
1268
1291
|
str += doctype;
|
|
1269
1292
|
}
|
|
@@ -1296,7 +1319,7 @@ async function renderToReadableStream(result, componentFactory, props, children,
|
|
|
1296
1319
|
write(chunk) {
|
|
1297
1320
|
if (isPage && !renderedFirstPageChunk) {
|
|
1298
1321
|
renderedFirstPageChunk = true;
|
|
1299
|
-
if (!result.partial &&
|
|
1322
|
+
if (!result.partial && !DOCTYPE_EXP.test(String(chunk))) {
|
|
1300
1323
|
const doctype = result.compressHTML ? "<!DOCTYPE html>" : "<!DOCTYPE html>\n";
|
|
1301
1324
|
controller.enqueue(encoder.encode(doctype));
|
|
1302
1325
|
}
|
|
@@ -1354,6 +1377,82 @@ async function bufferHeadContent(result) {
|
|
|
1354
1377
|
}
|
|
1355
1378
|
}
|
|
1356
1379
|
}
|
|
1380
|
+
async function renderToAsyncIterable(result, componentFactory, props, children, isPage = false, route) {
|
|
1381
|
+
const templateResult = await callComponentAsTemplateResultOrResponse(
|
|
1382
|
+
result,
|
|
1383
|
+
componentFactory,
|
|
1384
|
+
props,
|
|
1385
|
+
children,
|
|
1386
|
+
route
|
|
1387
|
+
);
|
|
1388
|
+
if (templateResult instanceof Response)
|
|
1389
|
+
return templateResult;
|
|
1390
|
+
let renderedFirstPageChunk = false;
|
|
1391
|
+
if (isPage) {
|
|
1392
|
+
await bufferHeadContent(result);
|
|
1393
|
+
}
|
|
1394
|
+
let error = null;
|
|
1395
|
+
let next = promiseWithResolvers();
|
|
1396
|
+
const buffer = [];
|
|
1397
|
+
const iterator = {
|
|
1398
|
+
async next() {
|
|
1399
|
+
await next.promise;
|
|
1400
|
+
if (error) {
|
|
1401
|
+
throw error;
|
|
1402
|
+
}
|
|
1403
|
+
let length = 0;
|
|
1404
|
+
for (let i = 0, len = buffer.length; i < len; i++) {
|
|
1405
|
+
length += buffer[i].length;
|
|
1406
|
+
}
|
|
1407
|
+
let mergedArray = new Uint8Array(length);
|
|
1408
|
+
let offset = 0;
|
|
1409
|
+
for (let i = 0, len = buffer.length; i < len; i++) {
|
|
1410
|
+
const item = buffer[i];
|
|
1411
|
+
mergedArray.set(item, offset);
|
|
1412
|
+
offset += item.length;
|
|
1413
|
+
}
|
|
1414
|
+
buffer.length = 0;
|
|
1415
|
+
const returnValue = {
|
|
1416
|
+
// The iterator is done if there are no chunks to return.
|
|
1417
|
+
done: length === 0,
|
|
1418
|
+
value: mergedArray
|
|
1419
|
+
};
|
|
1420
|
+
return returnValue;
|
|
1421
|
+
}
|
|
1422
|
+
};
|
|
1423
|
+
const destination = {
|
|
1424
|
+
write(chunk) {
|
|
1425
|
+
if (isPage && !renderedFirstPageChunk) {
|
|
1426
|
+
renderedFirstPageChunk = true;
|
|
1427
|
+
if (!result.partial && !DOCTYPE_EXP.test(String(chunk))) {
|
|
1428
|
+
const doctype = result.compressHTML ? "<!DOCTYPE html>" : "<!DOCTYPE html>\n";
|
|
1429
|
+
buffer.push(encoder.encode(doctype));
|
|
1430
|
+
}
|
|
1431
|
+
}
|
|
1432
|
+
if (chunk instanceof Response) {
|
|
1433
|
+
throw new AstroError(ResponseSentError);
|
|
1434
|
+
}
|
|
1435
|
+
const bytes = chunkToByteArray(result, chunk);
|
|
1436
|
+
if (bytes.length > 0) {
|
|
1437
|
+
buffer.push(bytes);
|
|
1438
|
+
next.resolve();
|
|
1439
|
+
next = promiseWithResolvers();
|
|
1440
|
+
}
|
|
1441
|
+
}
|
|
1442
|
+
};
|
|
1443
|
+
const renderPromise = templateResult.render(destination);
|
|
1444
|
+
renderPromise.then(() => {
|
|
1445
|
+
next.resolve();
|
|
1446
|
+
}).catch((err) => {
|
|
1447
|
+
error = err;
|
|
1448
|
+
next.resolve();
|
|
1449
|
+
});
|
|
1450
|
+
return {
|
|
1451
|
+
[Symbol.asyncIterator]() {
|
|
1452
|
+
return iterator;
|
|
1453
|
+
}
|
|
1454
|
+
};
|
|
1455
|
+
}
|
|
1357
1456
|
|
|
1358
1457
|
function componentIsHTMLElement(Component) {
|
|
1359
1458
|
return typeof HTMLElement !== "undefined" && HTMLElement.isPrototypeOf(Component);
|
|
@@ -1405,8 +1504,8 @@ function isFragmentComponent(Component) {
|
|
|
1405
1504
|
function isHTMLComponent(Component) {
|
|
1406
1505
|
return Component && Component["astro:html"] === true;
|
|
1407
1506
|
}
|
|
1408
|
-
const ASTRO_SLOT_EXP =
|
|
1409
|
-
const ASTRO_STATIC_SLOT_EXP =
|
|
1507
|
+
const ASTRO_SLOT_EXP = /<\/?astro-slot\b[^>]*>/g;
|
|
1508
|
+
const ASTRO_STATIC_SLOT_EXP = /<\/?astro-static-slot\b[^>]*>/g;
|
|
1410
1509
|
function removeStaticAstroSlot(html, supportsAstroStaticSlot) {
|
|
1411
1510
|
const exp = supportsAstroStaticSlot ? ASTRO_STATIC_SLOT_EXP : ASTRO_SLOT_EXP;
|
|
1412
1511
|
return html.replace(exp, "");
|
|
@@ -1496,6 +1595,7 @@ Did you forget to import the component or is it possible there is a typo?`
|
|
|
1496
1595
|
)[0];
|
|
1497
1596
|
}
|
|
1498
1597
|
}
|
|
1598
|
+
let componentServerRenderEndTime;
|
|
1499
1599
|
if (!renderer) {
|
|
1500
1600
|
if (metadata.hydrate === "only") {
|
|
1501
1601
|
throw new AstroError({
|
|
@@ -1550,6 +1650,7 @@ If you're still stuck, please open an issue on GitHub or join us at https://astr
|
|
|
1550
1650
|
if (metadata.hydrate === "only") {
|
|
1551
1651
|
html = await renderSlotToString(result, slots?.fallback);
|
|
1552
1652
|
} else {
|
|
1653
|
+
const componentRenderStartTime = performance.now();
|
|
1553
1654
|
({ html, attrs } = await renderer.ssr.renderToStaticMarkup.call(
|
|
1554
1655
|
{ result },
|
|
1555
1656
|
Component,
|
|
@@ -1557,6 +1658,8 @@ If you're still stuck, please open an issue on GitHub or join us at https://astr
|
|
|
1557
1658
|
children,
|
|
1558
1659
|
metadata
|
|
1559
1660
|
));
|
|
1661
|
+
if (process.env.NODE_ENV === "development")
|
|
1662
|
+
componentServerRenderEndTime = performance.now() - componentRenderStartTime;
|
|
1560
1663
|
}
|
|
1561
1664
|
}
|
|
1562
1665
|
if (renderer && !renderer.clientEntrypoint && renderer.name !== "@astrojs/lit" && metadata.hydrate) {
|
|
@@ -1619,6 +1722,8 @@ ${serializeProps(
|
|
|
1619
1722
|
{ renderer, result, astroId, props, attrs },
|
|
1620
1723
|
metadata
|
|
1621
1724
|
);
|
|
1725
|
+
if (componentServerRenderEndTime && process.env.NODE_ENV === "development")
|
|
1726
|
+
island.props["server-render-time"] = componentServerRenderEndTime;
|
|
1622
1727
|
let unrenderedSlots = [];
|
|
1623
1728
|
if (html) {
|
|
1624
1729
|
if (Object.keys(children).length > 0) {
|
|
@@ -1663,7 +1768,7 @@ ${serializeProps(
|
|
|
1663
1768
|
};
|
|
1664
1769
|
}
|
|
1665
1770
|
function sanitizeElementName(tag) {
|
|
1666
|
-
const unsafe = /[&<>'"\s]
|
|
1771
|
+
const unsafe = /[&<>'"\s]+/;
|
|
1667
1772
|
if (!unsafe.test(tag))
|
|
1668
1773
|
return tag;
|
|
1669
1774
|
return tag.trim().split(unsafe)[0].trim();
|
|
@@ -1999,7 +2104,19 @@ async function renderPage(result, componentFactory, props, children, streaming,
|
|
|
1999
2104
|
result._metadata.headInTree = result.componentMetadata.get(componentFactory.moduleId)?.containsHead ?? false;
|
|
2000
2105
|
let body;
|
|
2001
2106
|
if (streaming) {
|
|
2002
|
-
|
|
2107
|
+
if (isNode) {
|
|
2108
|
+
const nodeBody = await renderToAsyncIterable(
|
|
2109
|
+
result,
|
|
2110
|
+
componentFactory,
|
|
2111
|
+
props,
|
|
2112
|
+
children,
|
|
2113
|
+
true,
|
|
2114
|
+
route
|
|
2115
|
+
);
|
|
2116
|
+
body = nodeBody;
|
|
2117
|
+
} else {
|
|
2118
|
+
body = await renderToReadableStream(result, componentFactory, props, children, true, route);
|
|
2119
|
+
}
|
|
2003
2120
|
} else {
|
|
2004
2121
|
body = await renderToString(result, componentFactory, props, children, true, route);
|
|
2005
2122
|
}
|
|
@@ -2031,6 +2148,8 @@ function createTransitionScope(result, hash) {
|
|
|
2031
2148
|
const num = incrementTransitionNumber(result);
|
|
2032
2149
|
return `astro-${hash}-${num}`;
|
|
2033
2150
|
}
|
|
2151
|
+
"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_".split("").reduce((v, c) => (v[c.charCodeAt(0)] = c, v), []);
|
|
2152
|
+
"-0123456789_".split("").reduce((v, c) => (v[c.charCodeAt(0)] = c, v), []);
|
|
2034
2153
|
|
|
2035
2154
|
function spreadAttributes(values = {}, _name, { class: scopedClassName } = {}) {
|
|
2036
2155
|
let output = "";
|
|
@@ -2049,4 +2168,4 @@ function spreadAttributes(values = {}, _name, { class: scopedClassName } = {}) {
|
|
|
2049
2168
|
return markHTMLString(output);
|
|
2050
2169
|
}
|
|
2051
2170
|
|
|
2052
|
-
export { AstroError as A,
|
|
2171
|
+
export { AstroError as A, ReservedSlotName as B, renderJSX as C, chunkToString as D, ExpectedImage as E, FailedToFetchRemoteImageDimensions as F, GetStaticPathsRequired as G, clientAddressSymbol as H, IncompatibleDescriptorOptions as I, ClientAddressNotAvailable as J, responseSentSymbol as K, LocalImageUsedWrongly as L, MissingImageDimension as M, NoMatchingStaticPathFound as N, LocalsNotAnObject as O, PageNumberParamNotFound as P, clientLocalsSymbol as Q, ResponseSentError as R, StaticClientAddressNotAvailable as S, ASTRO_VERSION as T, UnsupportedImageFormat as U, renderEndpoint as V, renderPage as W, REROUTABLE_STATUS_CODES as X, REROUTE_DIRECTIVE_HEADER as Y, UnsupportedImageConversion as a, MissingSharp as b, ExpectedImageOptions as c, InvalidImageService as d, createAstro as e, createComponent as f, ImageMissingAlt as g, addAttribute as h, renderComponent as i, createTransitionScope as j, renderSlotToString as k, renderAllHeadContent as l, maybeRenderHead as m, renderSlot as n, Fragment as o, InvalidGetStaticPathsReturn as p, InvalidGetStaticPathsEntry as q, renderTemplate as r, spreadAttributes as s, GetStaticPathsExpectedParams as t, unescapeHTML as u, GetStaticPathsInvalidRouteParam as v, ROUTE_TYPE_HEADER as w, MiddlewareNoDataOrNextCalled as x, MiddlewareNotAResponse as y, PrerenderDynamicEndpointPathCollide as z };
|