cloudcommerce 2.6.2 → 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.
Files changed (158) hide show
  1. package/.github/workflows/test-apps.yml +1 -1
  2. package/CHANGELOG.md +21 -0
  3. package/README.md +2 -0
  4. package/ecomplus-stores/barradoce/functions/many/package.json +3 -3
  5. package/ecomplus-stores/barradoce/functions/ssr/content/reviews.json +71 -0
  6. package/ecomplus-stores/barradoce/functions/ssr/content/types.d.ts +5 -0
  7. package/ecomplus-stores/barradoce/functions/ssr/package.json +6 -6
  8. package/ecomplus-stores/barradoce/functions/ssr/src/components/ProductDetails.vue +2 -1
  9. package/ecomplus-stores/barradoce/functions/ssr/src/env.d.ts +1 -0
  10. package/ecomplus-stores/barradoce/functions/with-apps/package.json +3 -3
  11. package/ecomplus-stores/barradoce/package.json +2 -2
  12. package/package.json +7 -7
  13. package/packages/api/package.json +1 -1
  14. package/packages/apps/affiliate-program/package.json +1 -1
  15. package/packages/apps/correios/package.json +1 -1
  16. package/packages/apps/custom-payment/package.json +1 -1
  17. package/packages/apps/custom-shipping/package.json +1 -1
  18. package/packages/apps/datafrete/package.json +1 -1
  19. package/packages/apps/discounts/package.json +1 -1
  20. package/packages/apps/emails/package.json +1 -1
  21. package/packages/apps/fb-conversions/package.json +1 -1
  22. package/packages/apps/flash-courier/package.json +1 -1
  23. package/packages/apps/frenet/package.json +1 -1
  24. package/packages/apps/galaxpay/package.json +1 -1
  25. package/packages/apps/google-analytics/package.json +1 -1
  26. package/packages/apps/jadlog/package.json +1 -1
  27. package/packages/apps/loyalty-points/package.json +1 -1
  28. package/packages/apps/mandae/package.json +1 -1
  29. package/packages/apps/melhor-envio/package.json +1 -1
  30. package/packages/apps/mercadopago/package.json +1 -1
  31. package/packages/apps/pagarme/package.json +2 -2
  32. package/packages/apps/pagarme-v5/package.json +1 -1
  33. package/packages/apps/paghiper/package.json +1 -1
  34. package/packages/apps/pix/package.json +1 -1
  35. package/packages/apps/tiny-erp/package.json +1 -1
  36. package/packages/apps/webhooks/package.json +1 -1
  37. package/packages/cli/package.json +2 -2
  38. package/packages/config/package.json +1 -1
  39. package/packages/emails/package.json +2 -2
  40. package/packages/eslint/package.json +6 -6
  41. package/packages/events/package.json +1 -1
  42. package/packages/feeds/package.json +1 -1
  43. package/packages/firebase/package.json +2 -2
  44. package/packages/i18n/package.json +1 -1
  45. package/packages/modules/package.json +1 -1
  46. package/packages/passport/package.json +1 -1
  47. package/packages/ssr/lib/lib/cron-ssr-save-views.js +71 -66
  48. package/packages/ssr/lib/lib/cron-ssr-save-views.js.map +1 -1
  49. package/packages/ssr/package.json +6 -6
  50. package/packages/ssr/src/lib/cron-ssr-save-views.ts +84 -77
  51. package/packages/storefront/dist/client/_astro/AccountPage.B4WZaOzX.js +1 -0
  52. package/packages/storefront/dist/client/_astro/CartSidebar.DAGdpIcU.js +1 -0
  53. package/packages/storefront/dist/client/_astro/HeroSlider.Dq_9kcdU.js +1 -0
  54. package/packages/storefront/dist/client/_astro/PitchBar.BwLlIs6F.js +1 -0
  55. package/packages/storefront/dist/client/_astro/Prices.BgHTq5id.js +1 -0
  56. package/packages/storefront/dist/client/_astro/ProductDetails.CnYNdPl5.js +7 -0
  57. package/packages/storefront/dist/client/_astro/ProductShelf.kfADQTUO.js +1 -0
  58. package/packages/storefront/dist/client/_astro/SearchModal.DcmvABes.js +1 -0
  59. package/packages/storefront/dist/client/_astro/SearchShowcase.C9GWwOnF.js +1 -0
  60. package/packages/storefront/dist/client/_astro/ShippingCalculator.DE01D7dt.js +1 -0
  61. package/packages/storefront/dist/client/_astro/ShopHeader.Cf4t6O6z.js +7 -0
  62. package/packages/storefront/dist/client/_astro/_commonjsHelpers.Cpj98o6Y.js +1 -0
  63. package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.CBemkWnU.js +5 -0
  64. package/packages/storefront/dist/client/_astro/{_slug_.4W7qhV-L.css → _slug_.DX_OkMX7.css} +1 -1
  65. package/packages/storefront/dist/client/_astro/{afetch.OifQZgwR.js → afetch.DPLba2tr.js} +1 -1
  66. package/packages/storefront/dist/client/_astro/client.CdXC84C5.js +1 -0
  67. package/packages/storefront/dist/client/_astro/customer-session.CNe1heRH.js +7 -0
  68. package/packages/storefront/dist/client/_astro/{firebase-app.iLdzDVjL.js → firebase-app.CBckq0Sj.js} +1 -1
  69. package/packages/storefront/dist/client/_astro/{format-money.1_HtF5S2.js → format-money.DINpWB0x.js} +1 -1
  70. package/packages/storefront/dist/client/_astro/grid-title.D4m7-g3h.js +1 -0
  71. package/packages/storefront/dist/client/_astro/hoisted.B2rH1xwX.js +8 -0
  72. package/packages/storefront/dist/client/_astro/hoisted.DBPXHTEb.js +1 -0
  73. package/packages/storefront/dist/client/_astro/hoisted.EBqhuD5o.js +1 -0
  74. package/packages/storefront/dist/client/_astro/{hoisted.GaT7bmE3.js → hoisted.ut_nNM_H.js} +1 -1
  75. package/packages/storefront/dist/client/_astro/i18n.B3skIOFg.js +1 -0
  76. package/packages/storefront/dist/client/_astro/img-sizes.rFK7so02.js +1 -0
  77. package/packages/storefront/dist/client/_astro/img.D5a6GzeE.js +1 -0
  78. package/packages/storefront/dist/client/_astro/index.CFw6O-Kt.js +1 -0
  79. package/packages/storefront/dist/client/_astro/index.DBfgCyd-.js +1 -0
  80. package/packages/storefront/dist/client/_astro/{modules-info.HP6478mG.js → modules-info.BHKiT6oA.js} +1 -1
  81. package/packages/storefront/dist/client/_astro/name.BZA9xqh-.js +1 -0
  82. package/packages/storefront/dist/client/_astro/photoswipe.esm.C0FT-EY-.js +4 -0
  83. package/packages/storefront/dist/client/_astro/price.CHiL6Z1J.js +1 -0
  84. package/packages/storefront/dist/client/_astro/sf-utils.Cigv01cN.js +13 -0
  85. package/packages/storefront/dist/client/_astro/shopping-cart.D-w8Z-4p.js +1 -0
  86. package/packages/storefront/dist/client/_astro/use-analytics.CQDdNgwF.js +1 -0
  87. package/packages/storefront/dist/client/_astro/use-cms-preview.4Hq7LCmA.js +1 -0
  88. package/packages/storefront/dist/client/_astro/use-product-card.CQRlRsNX.js +1 -0
  89. package/packages/storefront/dist/client/_astro/use-text-value.UjCYLWjm.js +4 -0
  90. package/packages/storefront/dist/client/img/uploads/logo.png +0 -0
  91. package/packages/storefront/dist/server/chunks/{CartSidebar_3_1aFp67.mjs → CartSidebar_BmwcZuxv.mjs} +36 -4
  92. package/packages/storefront/dist/server/chunks/{SearchModal_2azP1u7P.mjs → SearchModal_BvEnUvAx.mjs} +4 -3
  93. package/packages/storefront/dist/server/chunks/_.._DORZHe_Z.mjs +5 -0
  94. package/packages/storefront/dist/server/chunks/{_page__qqIVxbal.mjs → _page__DU3kNewy.mjs} +1 -1
  95. package/packages/storefront/dist/server/chunks/{account_vK6pmJlz.mjs → account_CaTloREf.mjs} +1 -1
  96. package/packages/storefront/dist/server/chunks/astro/{assets-service_631fRtTy.mjs → assets-service_B77Hm2ue.mjs} +2 -2
  97. package/packages/storefront/dist/server/chunks/{astro_u-oSb215.mjs → astro_ISB6VLqs.mjs} +178 -59
  98. package/packages/storefront/dist/server/chunks/index_BTDpenpc.mjs +5 -0
  99. package/packages/storefront/dist/server/chunks/index_D0q4ab_n.mjs +5 -0
  100. package/packages/storefront/dist/server/chunks/{node_zqXXqc-u.mjs → node_C7sdLKL4.mjs} +1 -1
  101. package/packages/storefront/dist/server/chunks/pages/{__ZucPYaOo.mjs → __B4CsSrck.mjs} +1751 -344
  102. package/packages/storefront/dist/server/chunks/pages/{_page__0sN9U0SD.mjs → _page__sb5Idhgp.mjs} +2 -3
  103. package/packages/storefront/dist/server/chunks/pages/{account_OQr_6KN1.mjs → account_iWjHfkwu.mjs} +2 -3
  104. package/packages/storefront/dist/server/chunks/pages/{index_3IjgOEIq.mjs → index_BZlpKBRL.mjs} +41 -4
  105. package/packages/storefront/dist/server/chunks/pages/node_GFu-CQ19.mjs +852 -0
  106. package/packages/storefront/dist/server/chunks/pages/{~fallback_133FK-CP.mjs → ~fallback_C07rzeay.mjs} +2 -3
  107. package/packages/storefront/dist/server/chunks/{index__05fnqFh.mjs → ~fallback_YpJa9BIL.mjs} +1 -1
  108. package/packages/storefront/dist/server/entry.mjs +751 -912
  109. package/packages/storefront/dist/server/manifest_KFjAaJaC.mjs +201 -0
  110. package/packages/storefront/dist/server/renderers.mjs +1 -1
  111. package/packages/storefront/package.json +8 -8
  112. package/packages/storefront/src/lib/composables/use-breadcrumbs.ts +2 -1
  113. package/packages/storefront/src/lib/composables/use-search-showcase.ts +2 -1
  114. package/packages/storefront/src/lib/content.d.ts +4 -1
  115. package/packages/storefront/src/lib/custom-content.d.ts +9 -0
  116. package/packages/storefront/src/lib/ssr-context.ts +6 -4
  117. package/packages/test-base/package.json +1 -1
  118. package/packages/types/package.json +1 -1
  119. package/packages/storefront/dist/client/_astro/AccountPage.0M6_FdU6.js +0 -1
  120. package/packages/storefront/dist/client/_astro/CartSidebar.L0Vbhsdt.js +0 -1
  121. package/packages/storefront/dist/client/_astro/HeroSlider.ju9TsLrJ.js +0 -1
  122. package/packages/storefront/dist/client/_astro/PitchBar.yqD9ycx5.js +0 -1
  123. package/packages/storefront/dist/client/_astro/Prices.xI1rdM1e.js +0 -1
  124. package/packages/storefront/dist/client/_astro/ProductDetails.FQtM5kpd.js +0 -7
  125. package/packages/storefront/dist/client/_astro/ProductShelf.-4fsYkPB.js +0 -1
  126. package/packages/storefront/dist/client/_astro/ProductShelf.GAAhKdTN.js +0 -1
  127. package/packages/storefront/dist/client/_astro/QuantitySelector.v7L8EYOR.js +0 -1
  128. package/packages/storefront/dist/client/_astro/SearchModal.rasg5jV6.js +0 -1
  129. package/packages/storefront/dist/client/_astro/SearchShowcase.kA6jICYo.js +0 -1
  130. package/packages/storefront/dist/client/_astro/ShopHeader.v_L96Y90.js +0 -7
  131. package/packages/storefront/dist/client/_astro/_plugin-vue_export-helper.xATGHWd9.js +0 -5
  132. package/packages/storefront/dist/client/_astro/client.YJ00ta5M.js +0 -1
  133. package/packages/storefront/dist/client/_astro/customer-session.ZD6tLDQJ.js +0 -7
  134. package/packages/storefront/dist/client/_astro/grid-title.pK2Nn3i-.js +0 -1
  135. package/packages/storefront/dist/client/_astro/hoisted.ICXGWNEA.js +0 -1
  136. package/packages/storefront/dist/client/_astro/hoisted.XOXTrHqn.js +0 -1
  137. package/packages/storefront/dist/client/_astro/i18n.zhlBzJt8.js +0 -1
  138. package/packages/storefront/dist/client/_astro/img-sizes.gxAI9JNh.js +0 -1
  139. package/packages/storefront/dist/client/_astro/img.AnjeGdy_.js +0 -1
  140. package/packages/storefront/dist/client/_astro/index.KfrHdfOH.js +0 -1
  141. package/packages/storefront/dist/client/_astro/index.ShNlAyu1.js +0 -1
  142. package/packages/storefront/dist/client/_astro/name.VA3MEpe0.js +0 -1
  143. package/packages/storefront/dist/client/_astro/photoswipe.esm.Ylh9TGkz.js +0 -4
  144. package/packages/storefront/dist/client/_astro/price.Easct8WC.js +0 -1
  145. package/packages/storefront/dist/client/_astro/sf-utils.c42cbZ9W.js +0 -13
  146. package/packages/storefront/dist/client/_astro/shopping-cart.nSNNOrp9.js +0 -1
  147. package/packages/storefront/dist/client/_astro/use-analytics.wTmoP8B1.js +0 -1
  148. package/packages/storefront/dist/client/_astro/use-product-card.UFr8SCuD.js +0 -1
  149. package/packages/storefront/dist/client/_astro/use-text-value.lKqoIagH.js +0 -4
  150. package/packages/storefront/dist/server/chunks/_.._19fCuQdO.mjs +0 -5
  151. package/packages/storefront/dist/server/chunks/pages/node_OmjWRf8D.mjs +0 -112
  152. package/packages/storefront/dist/server/chunks/~fallback_Wahcp9Wk.mjs +0 -5
  153. package/packages/storefront/dist/server/manifest_9FASPYUE.mjs +0 -202
  154. /package/packages/storefront/dist/client/_astro/{index-bea2a320.eWykogwr.js → index-bea2a320.CHELEM8n.js} +0 -0
  155. /package/packages/storefront/dist/client/_astro/{photoswipe-lightbox.esm.dZBqKD9u.js → photoswipe-lightbox.esm.BbYxSZIB.js} +0 -0
  156. /package/packages/storefront/dist/client/_astro/{photoswipe.0V7m2jWu.js → photoswipe.CNpEZKfy.js} +0 -0
  157. /package/packages/storefront/dist/client/_astro/{server-data.4C60Esyt.js → server-data.CUHTES8a.js} +0 -0
  158. /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 always required 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)."
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.3.2";
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 b=Object.defineProperty;var f=(c,o,i)=>o in c?b(c,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):c[o]=i;var l=(c,o,i)=>(f(c,typeof o!="symbol"?o+"":o,i),i);var p;{let c={0:t=>m(t),1:t=>i(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(i(t)),5:t=>new Set(i(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)},o=t=>{let[e,r]=t;return e in c?c[e](r):void 0},i=t=>t.map(o),m=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([e,r])=>[e,o(r)]));customElements.get("astro-island")||customElements.define("astro-island",(p=class extends HTMLElement{constructor(){super(...arguments);l(this,"Component");l(this,"hydrator");l(this,"hydrate",async()=>{var d;if(!this.hydrator||!this.isConnected)return;let e=(d=this.parentElement)==null?void 0:d.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let r=this.querySelectorAll("astro-slot"),a={},h=this.querySelectorAll("template[data-astro-template]");for(let n of h){let s=n.closest(this.tagName);s!=null&&s.isSameNode(this)&&(a[n.getAttribute("data-astro-template")||"default"]=n.innerHTML,n.remove())}for(let n of r){let s=n.closest(this.tagName);s!=null&&s.isSameNode(this)&&(a[n.getAttribute("name")||"default"]=n.innerHTML)}let u;try{u=this.hasAttribute("props")?m(JSON.parse(this.getAttribute("props"))):{}}catch(n){let s=this.getAttribute("component-url")||"<unknown>",y=this.getAttribute("component-export");throw y&&(s+=\` (export \${y})\`),console.error(\`[hydrate] Error parsing props for component \${s}\`,this.getAttribute("props"),n),n}await this.hydrator(this)(this.Component,u,a,{client:this.getAttribute("client")}),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),r.disconnect(),this.childrenConnectedCallback()},r=new MutationObserver(()=>{var a;((a=this.lastChild)==null?void 0:a.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});r.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}start(){let e=JSON.parse(this.getAttribute("opts")),r=this.getAttribute("client");if(Astro[r]===void 0){window.addEventListener(\`astro:\${r}\`,()=>this.start(),{once:!0});return}Astro[r](async()=>{let a=this.getAttribute("renderer-url"),[h,{default:u}]=await Promise.all([import(this.getAttribute("component-url")),a?import(a):()=>()=>{}]),d=this.getAttribute("component-export")||"default";if(!d.includes("."))this.Component=h[d];else{this.Component=h;for(let n of d.split("."))this.Component=this.Component[n]}return this.hydrator=u,this.hydrate},e,this)}attributeChangedCallback(){this.hydrate()}},l(p,"observedAttributes",["props"]),p))}})();`;
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(/(?:(?!^)\b\w|\s+|[^\w]+)/g, (match, index) => {
815
- if (/[^\w]|\s/.test(match))
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 && !/<!doctype html/i.test(String(chunk))) {
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 && !/<!doctype html/i.test(String(chunk))) {
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 = /\<\/?astro-slot\b[^>]*>/g;
1409
- const ASTRO_STATIC_SLOT_EXP = /\<\/?astro-static-slot\b[^>]*>/g;
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]+/g;
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
- body = await renderToReadableStream(result, componentFactory, props, children, true, route);
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, ASTRO_VERSION as B, ClientAddressNotAvailable as C, renderEndpoint as D, ExpectedImage as E, Fragment as F, GetStaticPathsRequired as G, ReservedSlotName as H, IncompatibleDescriptorOptions as I, renderJSX as J, chunkToString as K, LocalImageUsedWrongly as L, MissingImageDimension as M, NoMatchingStaticPathFound as N, CantRenderPage as O, PageNumberParamNotFound as P, renderPage as Q, ROUTE_DATA_SYMBOL as R, StaticClientAddressNotAvailable as S, REROUTE_DIRECTIVE_HEADER as T, UnsupportedImageFormat as U, 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, ResponseSentError as o, MiddlewareNoDataOrNextCalled as p, MiddlewareNotAResponse as q, renderTemplate as r, spreadAttributes as s, InvalidGetStaticPathsReturn as t, unescapeHTML as u, InvalidGetStaticPathsEntry as v, GetStaticPathsExpectedParams as w, GetStaticPathsInvalidRouteParam as x, PrerenderDynamicEndpointPathCollide as y, LocalsNotAnObject as z };
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 };
@@ -0,0 +1,5 @@
1
+ export { renderers } from '../renderers.mjs';
2
+
3
+ const page = () => import('./pages/index_BZlpKBRL.mjs').then(n => n.i);
4
+
5
+ export { page };
@@ -0,0 +1,5 @@
1
+ export { renderers } from '../renderers.mjs';
2
+
3
+ const page = () => import('./pages/index_BZlpKBRL.mjs').then(n => n.a);
4
+
5
+ export { page };
@@ -1,5 +1,5 @@
1
1
  export { renderers } from '../renderers.mjs';
2
2
 
3
- const page = () => import('./pages/node_OmjWRf8D.mjs');
3
+ const page = () => import('./pages/node_GFu-CQ19.mjs');
4
4
 
5
5
  export { page };