@absolutejs/absolute 0.19.0-beta.367 → 0.19.0-beta.369

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.
@@ -723,19 +723,14 @@ var JsonLd = ({
723
723
  }, undefined, false, undefined, this);
724
724
  };
725
725
  // src/core/streamingSlotRegistrar.ts
726
- var registrar = null;
726
+ var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
727
+ var getRegistrarGlobal = () => globalThis;
727
728
  var registerStreamingSlot = (slot) => {
728
- registrar?.(slot);
729
+ getRegistrarGlobal()[STREAMING_SLOT_REGISTRAR_KEY]?.(slot);
729
730
  };
730
731
 
731
- // src/react/streamingSlotCollection.tsx
732
- import { createContext, useContext } from "react";
733
- import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
734
- var StreamingSlotCollectorContext = createContext(null);
735
- var useStreamingSlotCollector = () => useContext(StreamingSlotCollectorContext);
736
-
737
732
  // src/react/components/StreamSlot.tsx
738
- import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
733
+ import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
739
734
  var StreamSlot = ({
740
735
  className,
741
736
  errorHtml,
@@ -744,22 +739,16 @@ var StreamSlot = ({
744
739
  resolve: resolve2,
745
740
  timeoutMs
746
741
  }) => {
747
- const collector = useStreamingSlotCollector();
748
742
  if (typeof window === "undefined") {
749
- const slot = {
743
+ registerStreamingSlot({
750
744
  errorHtml,
751
745
  fallbackHtml,
752
746
  id,
753
747
  resolve: resolve2,
754
748
  timeoutMs
755
- };
756
- if (collector) {
757
- collector.set(id, slot);
758
- } else {
759
- registerStreamingSlot(slot);
760
- }
749
+ });
761
750
  }
762
- return /* @__PURE__ */ jsxDEV5("div", {
751
+ return /* @__PURE__ */ jsxDEV4("div", {
763
752
  className,
764
753
  dangerouslySetInnerHTML: { __html: fallbackHtml },
765
754
  "data-absolute-slot": "true",
@@ -769,8 +758,8 @@ var StreamSlot = ({
769
758
  };
770
759
 
771
760
  // src/react/components/SuspenseSlot.tsx
772
- import { jsxDEV as jsxDEV6 } from "react/jsx-dev-runtime";
773
- var SuspenseSlot = (props) => /* @__PURE__ */ jsxDEV6(StreamSlot, {
761
+ import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
762
+ var SuspenseSlot = (props) => /* @__PURE__ */ jsxDEV5(StreamSlot, {
774
763
  ...props
775
764
  }, undefined, false, undefined, this);
776
765
  export {
@@ -243,27 +243,6 @@ var init_imageProcessing = __esm(() => {
243
243
  };
244
244
  });
245
245
 
246
- // src/core/streamingSlotRegistrar.ts
247
- var registrar = null, setStreamingSlotRegistrar = (nextRegistrar) => {
248
- registrar = nextRegistrar;
249
- }, registerStreamingSlot = (slot) => {
250
- registrar?.(slot);
251
- };
252
-
253
- // src/react/streamingSlotCollection.tsx
254
- import { createContext, useContext } from "react";
255
- import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
256
- var StreamingSlotCollectorContext, StreamingSlotCollectorProvider = ({
257
- children,
258
- collector
259
- }) => /* @__PURE__ */ jsxDEV4(StreamingSlotCollectorContext.Provider, {
260
- value: collector,
261
- children
262
- }, undefined, false, undefined, this), useStreamingSlotCollector = () => useContext(StreamingSlotCollectorContext);
263
- var init_streamingSlotCollection = __esm(() => {
264
- StreamingSlotCollectorContext = createContext(null);
265
- });
266
-
267
246
  // src/react/components/Head.tsx
268
247
  import { jsxDEV, Fragment } from "react/jsx-dev-runtime";
269
248
  var RobotsContent = ({ robots }) => {
@@ -615,9 +594,18 @@ var JsonLd = ({
615
594
  type: "application/ld+json"
616
595
  }, undefined, false, undefined, this);
617
596
  };
597
+ // src/core/streamingSlotRegistrar.ts
598
+ var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
599
+ var getRegistrarGlobal = () => globalThis;
600
+ var setStreamingSlotRegistrar = (nextRegistrar) => {
601
+ getRegistrarGlobal()[STREAMING_SLOT_REGISTRAR_KEY] = nextRegistrar;
602
+ };
603
+ var registerStreamingSlot = (slot) => {
604
+ getRegistrarGlobal()[STREAMING_SLOT_REGISTRAR_KEY]?.(slot);
605
+ };
606
+
618
607
  // src/react/components/StreamSlot.tsx
619
- init_streamingSlotCollection();
620
- import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
608
+ import { jsxDEV as jsxDEV4 } from "react/jsx-dev-runtime";
621
609
  var StreamSlot = ({
622
610
  className,
623
611
  errorHtml,
@@ -626,22 +614,16 @@ var StreamSlot = ({
626
614
  resolve: resolve2,
627
615
  timeoutMs
628
616
  }) => {
629
- const collector = useStreamingSlotCollector();
630
617
  if (typeof window === "undefined") {
631
- const slot = {
618
+ registerStreamingSlot({
632
619
  errorHtml,
633
620
  fallbackHtml,
634
621
  id,
635
622
  resolve: resolve2,
636
623
  timeoutMs
637
- };
638
- if (collector) {
639
- collector.set(id, slot);
640
- } else {
641
- registerStreamingSlot(slot);
642
- }
624
+ });
643
625
  }
644
- return /* @__PURE__ */ jsxDEV5("div", {
626
+ return /* @__PURE__ */ jsxDEV4("div", {
645
627
  className,
646
628
  dangerouslySetInnerHTML: { __html: fallbackHtml },
647
629
  "data-absolute-slot": "true",
@@ -651,8 +633,8 @@ var StreamSlot = ({
651
633
  };
652
634
 
653
635
  // src/react/components/SuspenseSlot.tsx
654
- import { jsxDEV as jsxDEV6 } from "react/jsx-dev-runtime";
655
- var SuspenseSlot = (props) => /* @__PURE__ */ jsxDEV6(StreamSlot, {
636
+ import { jsxDEV as jsxDEV5 } from "react/jsx-dev-runtime";
637
+ var SuspenseSlot = (props) => /* @__PURE__ */ jsxDEV5(StreamSlot, {
656
638
  ...props
657
639
  }, undefined, false, undefined, this);
658
640
  export {
@@ -663,5 +645,5 @@ export {
663
645
  Head
664
646
  };
665
647
 
666
- //# debugId=998916A81840B67764756E2164756E21
648
+ //# debugId=58DE35C17AA4A0D064756E2164756E21
667
649
  //# sourceMappingURL=index.js.map
@@ -1,17 +1,16 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/utils/imageProcessing.ts", "../src/core/streamingSlotRegistrar.ts", "../src/react/streamingSlotCollection.tsx", "../src/react/components/Head.tsx", "../src/react/components/Image.tsx", "../src/react/components/JsonLd.tsx", "../src/react/components/StreamSlot.tsx", "../src/react/components/SuspenseSlot.tsx"],
3
+ "sources": ["../src/utils/imageProcessing.ts", "../src/react/components/Head.tsx", "../src/react/components/Image.tsx", "../src/react/components/JsonLd.tsx", "../src/core/streamingSlotRegistrar.ts", "../src/react/components/StreamSlot.tsx", "../src/react/components/SuspenseSlot.tsx"],
4
4
  "sourcesContent": [
5
5
  "import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';\nimport { join, resolve } from 'node:path';\nimport type {\n\tImageConfig,\n\tImageFormat,\n\tRemotePattern\n} from '../../types/image';\n\n// ── Constants ──────────────────────────────────────────────────────\n\n/* eslint-disable no-magic-numbers */\nexport const DEFAULT_DEVICE_SIZES = [\n\t640, 750, 828, 1080, 1200, 1920, 2048, 3840\n];\n\nexport const DEFAULT_IMAGE_SIZES = [16, 32, 48, 64, 96, 128, 256, 384];\n\nexport const DEFAULT_QUALITY = 75;\n/* eslint-enable no-magic-numbers */\n\nexport const OPTIMIZATION_ENDPOINT = '/_absolute/image';\n\n// ── Blur Placeholder ───────────────────────────────────────────────\n\nconst BLUR_SIZE = 8;\nconst BLUR_QUALITY = 70;\nconst BLUR_DEVIATION = 20;\n\n// ── Sharp Loading ──────────────────────────────────────────────────\n\nlet sharpModule: unknown = undefined;\nlet sharpLoaded = false;\nlet sharpWarned = false;\n\n// ── Shared Internals ───────────────────────────────────────────────\n\n/** Snap a target width UP to the nearest configured size */\nconst snapToSize = (target: number, sizes: number[]) => {\n\tfor (const size of sizes) {\n\t\tif (size >= target) return size;\n\t}\n\n\treturn sizes[sizes.length - 1] ?? target;\n};\n\n/** Match hostname with wildcard support: \"*.example.com\" matches \"cdn.example.com\" */\nconst matchHostname = (actual: string, pattern: string) => {\n\tif (pattern === actual) return true;\n\n\tif (pattern.startsWith('*.')) {\n\t\tconst suffix = pattern.slice(1); // \".example.com\"\n\n\t\treturn actual.endsWith(suffix) && actual.length > suffix.length;\n\t}\n\n\treturn false;\n};\n\n/** Match pathname with glob prefix: \"/images/**\" matches \"/images/photo.jpg\" */\nconst matchPathname = (actual: string, pattern: string) => {\n\tif (pattern.endsWith('/**')) {\n\t\tconst prefix = pattern.slice(0, -2); // eslint-disable-line no-magic-numbers\n\n\t\treturn actual.startsWith(prefix);\n\t}\n\n\treturn actual === pattern;\n};\n\nconst MIME_MAP: Record<ImageFormat, string> = {\n\tavif: 'image/avif',\n\tjpeg: 'image/jpeg',\n\tpng: 'image/png',\n\twebp: 'image/webp'\n};\n\n/** Convert sharp dynamic import result to a callable factory */\nconst callSharp = (sharpRef: unknown, input: Buffer) => {\n\t// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/consistent-type-assertions -- sharp is dynamically imported\n\tconst factory = sharpRef as any;\n\n\treturn factory(input);\n};\n\nconst toBuffer = (input: Buffer | ArrayBuffer) => {\n\tif (Buffer.isBuffer(input)) return input;\n\n\treturn Buffer.from(input);\n};\n\n// ── Exports (alphabetically sorted) ────────────────────────────────\n\nexport const buildOptimizedUrl = (\n\tsrc: string,\n\twidth: number,\n\tquality: number,\n\tbasePath = OPTIMIZATION_ENDPOINT\n) => `${basePath}?url=${encodeURIComponent(src)}&w=${width}&q=${quality}`;\n\nexport type CacheMeta = {\n\tcontentType: string;\n\tetag: string;\n\texpireAt: number;\n\tupstreamEtag?: string;\n};\n\nexport const formatToMime = (format: ImageFormat) => MIME_MAP[format];\n\nexport const generateBlurDataURL = async (buffer: Buffer | ArrayBuffer) => {\n\tconst sharp = await tryLoadSharp();\n\n\tif (!sharp) return '';\n\n\tconst tiny: Buffer = await callSharp(sharp, toBuffer(buffer))\n\t\t.resize(BLUR_SIZE, BLUR_SIZE, { fit: 'inside' })\n\t\t.webp({ quality: BLUR_QUALITY })\n\t\t.toBuffer();\n\n\treturn `data:image/webp;base64,${tiny.toString('base64')}`;\n};\n\nexport const generateBlurSvg = (base64Thumbnail: string) => {\n\t// Match Next.js: wrap tiny thumbnail in SVG with Gaussian blur\n\tconst svg = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 320\"><filter id=\"b\" color-interpolation-filters=\"sRGB\"><feGaussianBlur stdDeviation=\"${BLUR_DEVIATION}\"/><feColorMatrix values=\"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1\"/></filter><image filter=\"url(#b)\" x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" href=\"${base64Thumbnail}\"/></svg>`;\n\n\tconst encoded = encodeURIComponent(svg);\n\n\treturn `url(\"data:image/svg+xml,${encoded}\")`;\n};\n\nexport const generateSrcSet = (\n\tsrc: string,\n\twidth: number | undefined,\n\tsizes: string | undefined,\n\tconfig?: ImageConfig,\n\tloader?: (params: { quality: number; src: string; width: number }) => string\n) => {\n\tconst quality = config?.quality ?? DEFAULT_QUALITY;\n\n\tconst basePath = config?.path ?? OPTIMIZATION_ENDPOINT;\n\n\tconst buildUrl =\n\t\tloader ??\n\t\t((params: { quality: number; src: string; width: number }) =>\n\t\t\tbuildOptimizedUrl(\n\t\t\t\tparams.src,\n\t\t\t\tparams.width,\n\t\t\t\tparams.quality,\n\t\t\t\tbasePath\n\t\t\t));\n\n\tif (sizes) {\n\t\t// With sizes: use all breakpoints with w descriptors\n\t\tconst allSizes = getAllSizes(config);\n\n\t\treturn allSizes\n\t\t\t.map(\n\t\t\t\t(sizeWidth) =>\n\t\t\t\t\t`${buildUrl({ quality, src, width: sizeWidth })} ${sizeWidth}w`\n\t\t\t)\n\t\t\t.join(', ');\n\t}\n\n\tif (width) {\n\t\t// Without sizes: generate 1x and 2x density descriptors\n\t\tconst allSizes = getAllSizes(config);\n\n\t\tconst w1x = snapToSize(width, allSizes);\n\n\t\tconst w2x = snapToSize(width * 2, allSizes);\n\n\t\treturn `${buildUrl({ quality, src, width: w1x })} 1x, ${buildUrl({ quality, src, width: w2x })} 2x`;\n\t}\n\n\t// No width or sizes — use device sizes with w descriptors\n\tconst deviceSizes = config?.deviceSizes ?? DEFAULT_DEVICE_SIZES;\n\n\treturn deviceSizes\n\t\t.map(\n\t\t\t(sizeWidth) =>\n\t\t\t\t`${buildUrl({ quality, src, width: sizeWidth })} ${sizeWidth}w`\n\t\t)\n\t\t.join(', ');\n};\n\nexport const getAllSizes = (config?: ImageConfig) => {\n\tconst device = config?.deviceSizes ?? DEFAULT_DEVICE_SIZES;\n\n\tconst image = config?.imageSizes ?? DEFAULT_IMAGE_SIZES;\n\n\treturn [...device, ...image].sort((left, right) => left - right);\n};\n\nexport const getCacheDir = (buildDir: string) => {\n\tconst dir = join(buildDir, '.cache', 'images');\n\n\tif (!existsSync(dir)) mkdirSync(dir, { recursive: true });\n\n\treturn dir;\n};\n\nexport const getCacheKey = (\n\turl: string,\n\twidth: number,\n\tquality: number,\n\tformat: string\n) => {\n\tconst hasher = new Bun.CryptoHasher('sha256');\n\n\thasher.update(`${url}|${width}|${quality}|${format}`);\n\n\treturn hasher.digest('hex');\n};\n\nexport const isCacheStale = (meta: CacheMeta) => Date.now() > meta.expireAt;\n\nexport const matchRemotePattern = (\n\turlString: string,\n\tpatterns: RemotePattern[]\n) => {\n\tlet parsed: URL;\n\n\ttry {\n\t\tparsed = new URL(urlString);\n\t} catch {\n\t\treturn false;\n\t}\n\n\treturn patterns.some((pattern) => {\n\t\tif (pattern.protocol && parsed.protocol !== `${pattern.protocol}:`)\n\t\t\treturn false;\n\n\t\tif (!matchHostname(parsed.hostname, pattern.hostname)) return false;\n\n\t\tif (pattern.port && parsed.port !== pattern.port) return false;\n\n\t\tif (\n\t\t\tpattern.pathname &&\n\t\t\t!matchPathname(parsed.pathname, pattern.pathname)\n\t\t)\n\t\t\treturn false;\n\n\t\treturn true;\n\t});\n};\n\nexport const negotiateFormat = (\n\tacceptHeader: string,\n\tconfiguredFormats: ImageFormat[]\n) => {\n\t// Check configured formats in preference order against Accept header\n\tfor (const format of configuredFormats) {\n\t\tconst mime = MIME_MAP[format];\n\n\t\tif (mime && acceptHeader.includes(mime)) return format;\n\t}\n\n\t// Fallback: if webp is configured and accepted, use it\n\tif (\n\t\tconfiguredFormats.includes('webp') &&\n\t\tacceptHeader.includes('image/webp')\n\t) {\n\t\treturn 'webp';\n\t}\n\n\t// Final fallback to jpeg\n\treturn 'jpeg';\n};\n\nconst AVIF_QUALITY_OFFSET = 20;\nconst AVIF_EFFORT = 3;\n\nexport const optimizeImage = async (\n\tbuffer: Buffer | ArrayBuffer,\n\twidth: number,\n\tquality: number,\n\tformat: ImageFormat\n) => {\n\tconst sharp = await tryLoadSharp();\n\n\tif (!sharp) return toBuffer(buffer);\n\n\tconst pipeline = callSharp(sharp, toBuffer(buffer))\n\t\t.rotate()\n\t\t.resize(width, undefined, { withoutEnlargement: true });\n\n\tswitch (format) {\n\t\tcase 'avif':\n\t\t\treturn pipeline\n\t\t\t\t.avif({\n\t\t\t\t\teffort: AVIF_EFFORT,\n\t\t\t\t\tquality: Math.max(1, quality - AVIF_QUALITY_OFFSET)\n\t\t\t\t})\n\t\t\t\t.toBuffer();\n\t\tcase 'jpeg':\n\t\t\treturn pipeline.jpeg({ mozjpeg: true, quality }).toBuffer();\n\t\tcase 'png':\n\t\t\treturn pipeline.png({ quality }).toBuffer();\n\t\tcase 'webp':\n\t\t\treturn pipeline.webp({ quality }).toBuffer();\n\t\tdefault:\n\t\t\treturn toBuffer(buffer);\n\t}\n};\n\nexport const readFromCache = (cacheDir: string, cacheKey: string) => {\n\tconst metaPath = join(cacheDir, `${cacheKey}.meta`);\n\n\tconst dataPath = join(cacheDir, `${cacheKey}.data`);\n\n\tif (!existsSync(metaPath) || !existsSync(dataPath)) return null;\n\n\ttry {\n\t\tconst meta: CacheMeta = JSON.parse(readFileSync(metaPath, 'utf-8'));\n\n\t\tconst buffer = readFileSync(dataPath);\n\n\t\treturn { buffer, meta };\n\t} catch {\n\t\treturn null;\n\t}\n};\n\nexport const tryLoadSharp = async () => {\n\tif (sharpLoaded) return sharpModule;\n\n\tsharpLoaded = true;\n\n\ttry {\n\t\t// Resolve sharp from the user's project root (not from absolutejs source,\n\t\t// which is baked into import.meta paths at bundle time)\n\t\tconst sharpPath = resolve(process.cwd(), 'node_modules/sharp');\n\n\t\tconst mod = await import(sharpPath);\n\n\t\tsharpModule = mod.default ?? mod;\n\n\t\treturn sharpModule;\n\t} catch {\n\t\tif (sharpWarned) return null;\n\n\t\tsharpWarned = true;\n\n\t\tconsole.warn(\n\t\t\t'[image] sharp not installed — serving unoptimized images. Install with: bun add sharp'\n\t\t);\n\n\t\treturn null;\n\t}\n};\n\nexport const writeToCache = (\n\tcacheDir: string,\n\tcacheKey: string,\n\tbuffer: Buffer,\n\tmeta: CacheMeta\n) => {\n\tconst metaPath = join(cacheDir, `${cacheKey}.meta`);\n\n\tconst dataPath = join(cacheDir, `${cacheKey}.data`);\n\n\twriteFileSync(dataPath, buffer);\n\n\twriteFileSync(metaPath, JSON.stringify(meta));\n};\n",
6
- "import type { StreamingSlot } from '../utils/streamingSlots';\n\ntype StreamingSlotRegistrar = (slot: StreamingSlot) => void;\n\nlet registrar: StreamingSlotRegistrar | null = null;\n\nexport const setStreamingSlotRegistrar = (\n\tnextRegistrar: StreamingSlotRegistrar | null\n) => {\n\tregistrar = nextRegistrar;\n};\n\nexport const registerStreamingSlot = (slot: StreamingSlot) => {\n\tregistrar?.(slot);\n};\n",
7
- "import { createContext, type ReactNode, useContext } from 'react';\nimport type { StreamingSlot } from '../utils/streamingSlots';\n\ntype StreamingSlotCollector = Map<string, StreamingSlot>;\n\nconst StreamingSlotCollectorContext =\n\tcreateContext<StreamingSlotCollector | null>(null);\n\nexport const StreamingSlotCollectorProvider = ({\n\tchildren,\n\tcollector\n}: {\n\tchildren?: ReactNode;\n\tcollector: StreamingSlotCollector;\n}) => (\n\t<StreamingSlotCollectorContext.Provider value={collector}>\n\t\t{children}\n\t</StreamingSlotCollectorContext.Provider>\n);\n\nexport const useStreamingSlotCollector = () =>\n\tuseContext(StreamingSlotCollectorContext);\n",
8
6
  "import type {\n\tMetadata,\n\tMetaTag,\n\tOpenGraph,\n\tTwitterCard,\n\tRobotsDirective\n} from '../../../types/metadata';\n\nconst RobotsContent = ({ robots }: { robots: RobotsDirective }) => {\n\tconst directives: string[] = [];\n\tif (robots.index === false) directives.push('noindex');\n\tif (robots.index === true) directives.push('index');\n\tif (robots.follow === false) directives.push('nofollow');\n\tif (robots.follow === true) directives.push('follow');\n\tif (robots.noarchive) directives.push('noarchive');\n\tif (robots.nosnippet) directives.push('nosnippet');\n\tif (robots.noimageindex) directives.push('noimageindex');\n\tif (robots.maxSnippet !== undefined)\n\t\tdirectives.push(`max-snippet:${robots.maxSnippet}`);\n\tif (robots.maxImagePreview)\n\t\tdirectives.push(`max-image-preview:${robots.maxImagePreview}`);\n\tif (robots.maxVideoPreview !== undefined)\n\t\tdirectives.push(`max-video-preview:${robots.maxVideoPreview}`);\n\n\tconst content = directives.join(', ');\n\n\treturn content ? <meta content={content} name=\"robots\" /> : null;\n};\n\nconst OpenGraphTags = ({\n\topenGraph,\n\ttitle,\n\tdescription\n}: {\n\topenGraph: OpenGraph;\n\ttitle: string;\n\tdescription: string;\n}) => (\n\t<>\n\t\t<meta content={openGraph.title ?? title} property=\"og:title\" />\n\t\t<meta\n\t\t\tcontent={openGraph.description ?? description}\n\t\t\tproperty=\"og:description\"\n\t\t/>\n\t\t{openGraph.url && <meta content={openGraph.url} property=\"og:url\" />}\n\t\t{openGraph.image && (\n\t\t\t<meta content={openGraph.image} property=\"og:image\" />\n\t\t)}\n\t\t{openGraph.imageAlt && (\n\t\t\t<meta content={openGraph.imageAlt} property=\"og:image:alt\" />\n\t\t)}\n\t\t{openGraph.imageWidth && (\n\t\t\t<meta\n\t\t\t\tcontent={String(openGraph.imageWidth)}\n\t\t\t\tproperty=\"og:image:width\"\n\t\t\t/>\n\t\t)}\n\t\t{openGraph.imageHeight && (\n\t\t\t<meta\n\t\t\t\tcontent={String(openGraph.imageHeight)}\n\t\t\t\tproperty=\"og:image:height\"\n\t\t\t/>\n\t\t)}\n\t\t{openGraph.type && <meta content={openGraph.type} property=\"og:type\" />}\n\t\t{openGraph.siteName && (\n\t\t\t<meta content={openGraph.siteName} property=\"og:site_name\" />\n\t\t)}\n\t\t{openGraph.locale && (\n\t\t\t<meta content={openGraph.locale} property=\"og:locale\" />\n\t\t)}\n\t</>\n);\n\nconst TwitterTags = ({\n\ttwitter,\n\ttitle,\n\tdescription\n}: {\n\ttwitter: TwitterCard;\n\ttitle: string;\n\tdescription: string;\n}) => (\n\t<>\n\t\t{twitter.card && <meta content={twitter.card} name=\"twitter:card\" />}\n\t\t<meta content={twitter.title ?? title} name=\"twitter:title\" />\n\t\t<meta\n\t\t\tcontent={twitter.description ?? description}\n\t\t\tname=\"twitter:description\"\n\t\t/>\n\t\t{twitter.image && <meta content={twitter.image} name=\"twitter:image\" />}\n\t\t{twitter.imageAlt && (\n\t\t\t<meta content={twitter.imageAlt} name=\"twitter:image:alt\" />\n\t\t)}\n\t\t{twitter.site && <meta content={twitter.site} name=\"twitter:site\" />}\n\t\t{twitter.creator && (\n\t\t\t<meta content={twitter.creator} name=\"twitter:creator\" />\n\t\t)}\n\t</>\n);\n\nconst CustomMetaTag = ({ tag }: { tag: MetaTag }) => {\n\tif (tag.property)\n\t\treturn <meta content={tag.content} property={tag.property} />;\n\n\tif (tag.httpEquiv)\n\t\treturn <meta content={tag.content} httpEquiv={tag.httpEquiv} />;\n\n\treturn <meta content={tag.content} name={tag.name} />;\n};\n\nexport const Head = ({\n\ttitle = 'AbsoluteJS',\n\tdescription = 'A page created using AbsoluteJS',\n\ticon = '/assets/ico/favicon.ico',\n\tfont,\n\tcssPath,\n\tcanonical,\n\topenGraph,\n\ttwitter,\n\trobots,\n\tmeta\n}: Metadata = {}) => (\n\t<head suppressHydrationWarning>\n\t\t<meta charSet=\"utf-8\" />\n\t\t<title>{title}</title>\n\t\t<meta content={description} name=\"description\" />\n\t\t<meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n\t\t<link href={icon} rel=\"icon\" />\n\t\t{canonical && <link href={canonical} rel=\"canonical\" />}\n\t\t{openGraph && (\n\t\t\t<OpenGraphTags\n\t\t\t\tdescription={description}\n\t\t\t\topenGraph={openGraph}\n\t\t\t\ttitle={title}\n\t\t\t/>\n\t\t)}\n\t\t{twitter && (\n\t\t\t<TwitterTags\n\t\t\t\tdescription={description}\n\t\t\t\ttitle={title}\n\t\t\t\ttwitter={twitter}\n\t\t\t/>\n\t\t)}\n\t\t{robots && <RobotsContent robots={robots} />}\n\t\t{meta?.map((tag, i) => <CustomMetaTag key={i} tag={tag} />)}\n\t\t{font && (\n\t\t\t<>\n\t\t\t\t<link href=\"https://fonts.googleapis.com\" rel=\"preconnect\" />\n\t\t\t\t<link\n\t\t\t\t\tcrossOrigin=\"anonymous\"\n\t\t\t\t\thref=\"https://fonts.gstatic.com\"\n\t\t\t\t\trel=\"preconnect\"\n\t\t\t\t\tsuppressHydrationWarning\n\t\t\t\t/>\n\t\t\t\t<link\n\t\t\t\t\thref={`https://fonts.googleapis.com/css2?family=${font}:wght@100..900&display=swap`}\n\t\t\t\t\trel=\"stylesheet\"\n\t\t\t\t\tsuppressHydrationWarning\n\t\t\t\t/>\n\t\t\t</>\n\t\t)}\n\t\t{cssPath &&\n\t\t\t[cssPath]\n\t\t\t\t.flat()\n\t\t\t\t.map((path) => (\n\t\t\t\t\t<link\n\t\t\t\t\t\thref={path}\n\t\t\t\t\t\tkey={path}\n\t\t\t\t\t\trel=\"stylesheet\"\n\t\t\t\t\t\tsuppressHydrationWarning\n\t\t\t\t\t\ttype=\"text/css\"\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t</head>\n);\n",
9
7
  "import type { ImageProps } from '../../../types/image';\nimport {\n\tDEFAULT_QUALITY,\n\tbuildOptimizedUrl,\n\tgenerateBlurSvg,\n\tgenerateSrcSet\n} from '../../utils/imageProcessing';\n\nconst resolveSource = (\n\tsrc: string,\n\toverrideSrc: ImageProps['overrideSrc'],\n\tunoptimized: ImageProps['unoptimized'],\n\tloader: ImageProps['loader'],\n\twidth: ImageProps['width'],\n\tquality: number\n) => {\n\tif (overrideSrc) return overrideSrc;\n\tif (unoptimized) return src;\n\tif (loader) return loader({ quality, src, width: width ?? 0 });\n\tif (!width) return buildOptimizedUrl(src, 0, quality);\n\n\treturn buildOptimizedUrl(src, width, quality);\n};\n\nconst resolveBlurBackground = (\n\thasBlur: boolean,\n\tplaceholder: ImageProps['placeholder'],\n\tblurDataURL: ImageProps['blurDataURL']\n) => {\n\tif (!hasBlur) return undefined;\n\n\tif (\n\t\ttypeof placeholder === 'string' &&\n\t\tplaceholder !== 'blur' &&\n\t\tplaceholder.startsWith('data:')\n\t) {\n\t\treturn generateBlurSvg(placeholder);\n\t}\n\n\tif (blurDataURL) return generateBlurSvg(blurDataURL);\n\n\treturn undefined;\n};\n\nexport const Image = ({\n\talt,\n\tblurDataURL,\n\tclassName,\n\tcrossOrigin,\n\tfetchPriority,\n\tfill,\n\theight,\n\tloader,\n\tloading,\n\tonError,\n\tonLoad,\n\toverrideSrc,\n\tplaceholder,\n\tpriority,\n\tquality = DEFAULT_QUALITY,\n\treferrerPolicy,\n\tsizes,\n\tsrc,\n\tstyle,\n\tunoptimized,\n\twidth\n}: ImageProps) => {\n\t// ── Resolve src ─────────────────────────────────────────────\n\tconst resolvedSrc = resolveSource(\n\t\tsrc,\n\t\toverrideSrc,\n\t\tunoptimized,\n\t\tloader,\n\t\twidth,\n\t\tquality\n\t);\n\n\t// ── srcSet ──────────────────────────────────────────────────\n\tconst srcSet = unoptimized\n\t\t? undefined\n\t\t: generateSrcSet(src, width, sizes, undefined, loader ?? undefined);\n\n\t// ── Sizes ───────────────────────────────────────────────────\n\tconst resolvedSizes = sizes ?? (fill ? '100vw' : undefined);\n\n\t// ── Loading behavior ────────────────────────────────────────\n\tconst resolvedLoading = priority ? 'eager' : (loading ?? 'lazy');\n\tconst resolvedFetchPriority = priority ? 'high' : fetchPriority;\n\n\t// ── Blur placeholder ────────────────────────────────────────\n\tconst hasBlur =\n\t\tplaceholder === 'blur' ||\n\t\t(typeof placeholder === 'string' &&\n\t\t\tplaceholder !== 'empty' &&\n\t\t\tplaceholder.startsWith('data:'));\n\n\tconst blurBackground = resolveBlurBackground(\n\t\thasBlur,\n\t\tplaceholder,\n\t\tblurDataURL\n\t);\n\n\t// ── Styles ──────────────────────────────────────────────────\n\tconst imgStyle: Record<string, string | number> = {\n\t\t...(style ?? {}),\n\t\t...(blurBackground\n\t\t\t? {\n\t\t\t\t\tbackgroundImage: blurBackground,\n\t\t\t\t\tbackgroundPosition: 'center',\n\t\t\t\t\tbackgroundRepeat: 'no-repeat',\n\t\t\t\t\tbackgroundSize: 'cover'\n\t\t\t\t}\n\t\t\t: {}),\n\t\t...(fill\n\t\t\t? {\n\t\t\t\t\tcolor: 'transparent',\n\t\t\t\t\theight: '100%',\n\t\t\t\t\tinset: 0,\n\t\t\t\t\tobjectFit: 'cover',\n\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\twidth: '100%'\n\t\t\t\t}\n\t\t\t: { color: 'transparent' })\n\t};\n\n\t// ── Preload link for priority images ────────────────────────\n\tconst preloadLink = priority ? (\n\t\t<link\n\t\t\tas=\"image\"\n\t\t\tcrossOrigin={crossOrigin}\n\t\t\thref={resolvedSrc}\n\t\t\timageSizes={resolvedSizes}\n\t\t\timageSrcSet={srcSet}\n\t\t\trel=\"preload\"\n\t\t/>\n\t) : null;\n\n\t// ── Fill mode wrapper ───────────────────────────────────────\n\tconst imgElement = (\n\t\t<img\n\t\t\talt={alt}\n\t\t\tclassName={className}\n\t\t\tcrossOrigin={crossOrigin}\n\t\t\tdecoding=\"async\"\n\t\t\tfetchPriority={resolvedFetchPriority}\n\t\t\theight={fill ? undefined : height}\n\t\t\tloading={resolvedLoading}\n\t\t\tonError={\n\t\t\t\tonError ? (event) => onError(event.nativeEvent) : undefined\n\t\t\t}\n\t\t\tonLoad={(event) => {\n\t\t\t\tconst { target } = event;\n\n\t\t\t\tif (blurBackground && target instanceof HTMLImageElement) {\n\t\t\t\t\ttarget.style.backgroundImage = 'none';\n\t\t\t\t}\n\n\t\t\t\tif (onLoad) onLoad(event.nativeEvent);\n\t\t\t}}\n\t\t\treferrerPolicy={referrerPolicy}\n\t\t\tsizes={resolvedSizes}\n\t\t\tsrc={resolvedSrc}\n\t\t\tsrcSet={srcSet}\n\t\t\tstyle={imgStyle}\n\t\t\twidth={fill ? undefined : width}\n\t\t/>\n\t);\n\n\tif (fill) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{preloadLink}\n\t\t\t\t<span\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\t\theight: '100%',\n\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\tposition: 'relative',\n\t\t\t\t\t\twidth: '100%'\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{imgElement}\n\t\t\t\t</span>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{preloadLink}\n\t\t\t{imgElement}\n\t\t</>\n\t);\n};\n",
10
8
  "import type { JsonLdSchema, WithContext } from '../../../types/jsonLd';\n\nexport const JsonLd = ({\n\tschema\n}: {\n\tschema: JsonLdSchema | JsonLdSchema[];\n}) => {\n\tconst schemaOrgContext = 'https://schema.org';\n\tconst data: WithContext<JsonLdSchema> | WithContext<JsonLdSchema>[] =\n\t\tArray.isArray(schema)\n\t\t\t? schema.map((s) => ({\n\t\t\t\t\t'@context': schemaOrgContext,\n\t\t\t\t\t...s\n\t\t\t\t}))\n\t\t\t: { '@context': schemaOrgContext, ...schema };\n\n\treturn (\n\t\t<script\n\t\t\tdangerouslySetInnerHTML={{ __html: JSON.stringify(data) }}\n\t\t\ttype=\"application/ld+json\"\n\t\t/>\n\t);\n};\n",
11
- "import { registerStreamingSlot } from '../../core/streamingSlotRegistrar';\nimport { useStreamingSlotCollector } from '../streamingSlotCollection';\n\ntype StreamSlotProps = {\n\tclassName?: string;\n\terrorHtml?: string;\n\tfallbackHtml?: string;\n\tid: string;\n\tresolve: () => Promise<string> | string;\n\ttimeoutMs?: number;\n};\n\nexport const StreamSlot = ({\n\tclassName,\n\terrorHtml,\n\tfallbackHtml = '',\n\tid,\n\tresolve,\n\ttimeoutMs\n}: StreamSlotProps) => {\n\tconst collector = useStreamingSlotCollector();\n\n\tif (typeof window === 'undefined') {\n\t\tconst slot = {\n\t\t\terrorHtml,\n\t\t\tfallbackHtml,\n\t\t\tid,\n\t\t\tresolve,\n\t\t\ttimeoutMs\n\t\t};\n\t\tif (collector) {\n\t\t\tcollector.set(id, slot);\n\t\t} else {\n\t\t\tregisterStreamingSlot(slot);\n\t\t}\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={className}\n\t\t\tdangerouslySetInnerHTML={{ __html: fallbackHtml }}\n\t\t\tdata-absolute-slot=\"true\"\n\t\t\tid={`slot-${id}`}\n\t\t\tsuppressHydrationWarning\n\t\t/>\n\t);\n};\n",
9
+ "import type { StreamingSlot } from '../utils/streamingSlots';\n\ntype StreamingSlotRegistrar = (slot: StreamingSlot) => void;\n\nconst STREAMING_SLOT_REGISTRAR_KEY = Symbol.for(\n\t'absolutejs.streamingSlotRegistrar'\n);\ntype StreamingSlotRegistrarGlobal = typeof globalThis & {\n\t[STREAMING_SLOT_REGISTRAR_KEY]?: StreamingSlotRegistrar | null;\n};\n\nconst getRegistrarGlobal = () => globalThis as StreamingSlotRegistrarGlobal;\n\nexport const setStreamingSlotRegistrar = (\n\tnextRegistrar: StreamingSlotRegistrar | null\n) => {\n\tgetRegistrarGlobal()[STREAMING_SLOT_REGISTRAR_KEY] = nextRegistrar;\n};\n\nexport const registerStreamingSlot = (slot: StreamingSlot) => {\n\tgetRegistrarGlobal()[STREAMING_SLOT_REGISTRAR_KEY]?.(slot);\n};\n",
10
+ "import { registerStreamingSlot } from '../../core/streamingSlotRegistrar';\n\ntype StreamSlotProps = {\n\tclassName?: string;\n\terrorHtml?: string;\n\tfallbackHtml?: string;\n\tid: string;\n\tresolve: () => Promise<string> | string;\n\ttimeoutMs?: number;\n};\n\nexport const StreamSlot = ({\n\tclassName,\n\terrorHtml,\n\tfallbackHtml = '',\n\tid,\n\tresolve,\n\ttimeoutMs\n}: StreamSlotProps) => {\n\tif (typeof window === 'undefined') {\n\t\tregisterStreamingSlot({\n\t\t\terrorHtml,\n\t\t\tfallbackHtml,\n\t\t\tid,\n\t\t\tresolve,\n\t\t\ttimeoutMs\n\t\t});\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName={className}\n\t\t\tdangerouslySetInnerHTML={{ __html: fallbackHtml }}\n\t\t\tdata-absolute-slot=\"true\"\n\t\t\tid={`slot-${id}`}\n\t\t\tsuppressHydrationWarning\n\t\t/>\n\t);\n};\n",
12
11
  "import { StreamSlot } from './StreamSlot';\n\ntype SuspenseSlotProps = {\n\tclassName?: string;\n\terrorHtml?: string;\n\tfallbackHtml?: string;\n\tid: string;\n\tresolve: () => Promise<string> | string;\n\ttimeoutMs?: number;\n};\n\nexport const SuspenseSlot = (props: SuspenseSlotProps) => (\n\t<StreamSlot {...props} />\n);\n"
13
12
  ],
14
- "mappings": "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",
15
- "debugId": "998916A81840B67764756E2164756E21",
13
+ "mappings": "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",
14
+ "debugId": "58DE35C17AA4A0D064756E2164756E21",
16
15
  "names": []
17
16
  }