@absolutejs/absolute 0.20.0-beta.179 → 0.20.0-beta.180

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 (125) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/changelog.json +45 -0
  3. package/dist/angular/browser.js +2 -2
  4. package/dist/angular/browser.js.map +3 -3
  5. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  6. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  7. package/dist/angular/index.js +21 -6
  8. package/dist/angular/index.js.map +6 -6
  9. package/dist/angular/server.js +21 -6
  10. package/dist/angular/server.js.map +6 -6
  11. package/dist/build.js +5357 -4945
  12. package/dist/build.js.map +27 -24
  13. package/dist/cli/build-fntmf42w.js +495 -0
  14. package/dist/cli/{buildDepVendor-qvsh6dsj.js → buildDepVendor-qnwfct22.js} +5 -3
  15. package/dist/cli/buildReactServerComponents-fq6mw10d.js +13 -0
  16. package/dist/cli/{compile-p5yv6ecp.js → compile-54rb8szn.js} +94 -125
  17. package/dist/cli/config/server.js +10 -5
  18. package/dist/cli/{dev-2hbcsvkp.js → dev-6s6g5tnk.js} +13 -14
  19. package/dist/cli/{expoProject-1qtw97js.js → expoProject-acgfaj3f.js} +2 -1
  20. package/dist/cli/generatedDir-239r7csr.js +9 -0
  21. package/dist/cli/{index-cksezef8.js → index-0gd30trc.js} +105 -851
  22. package/dist/cli/index-2wvysvjc.js +40 -0
  23. package/dist/cli/index-42xjh6gg.js +282 -0
  24. package/dist/cli/{index-qw98g1p6.js → index-47e8fwha.js} +4 -1
  25. package/dist/cli/index-65kqn88a.js +8 -0
  26. package/dist/cli/{index-2bxfhs32.js → index-6f448d7m.js} +0 -26
  27. package/dist/cli/index-972xxwgj.js +16 -0
  28. package/dist/cli/index-aqe25w4h.js +39 -0
  29. package/dist/cli/index-assqancr.js +51 -0
  30. package/dist/cli/{index-2shf4aya.js → index-c8rcfe5a.js} +4 -6
  31. package/dist/cli/index-cba1cemz.js +8 -0
  32. package/dist/cli/{index-3ff5ztt3.js → index-djkrb7pc.js} +1 -7
  33. package/dist/cli/index-dkfwkpc8.js +138 -0
  34. package/dist/cli/{index-92g14j47.js → index-dw44xa4x.js} +2 -1
  35. package/dist/cli/index-evsnq0n2.js +17 -0
  36. package/dist/cli/index-fxwf3n2v.js +224 -0
  37. package/dist/cli/{index-zyd80s3h.js → index-js2hksgv.js} +21 -295
  38. package/dist/cli/{index-bp60baze.js → index-jyap0bhv.js} +1 -1
  39. package/dist/cli/{index-9dzdbbfc.js → index-kx2d067c.js} +8 -6
  40. package/dist/cli/index-pb31zan6.js +9 -0
  41. package/dist/cli/index-sq0478b0.js +281 -0
  42. package/dist/cli/index-va274tsf.js +7 -0
  43. package/dist/cli/{index-yd672jyq.js → index-w6xsk8cv.js} +4 -1
  44. package/dist/cli/index-w79snsxv.js +461 -0
  45. package/dist/cli/index-x1vvn549.js +835 -0
  46. package/dist/cli/index-xf9sfr8a.js +243 -0
  47. package/dist/cli/index-ycqdxy55.js +754 -0
  48. package/dist/cli/index-z74cqxz0.js +131 -0
  49. package/dist/cli/index.js +10 -9
  50. package/dist/cli/{islands-6zgb7501.js → islands-17tfx8jf.js} +6 -17
  51. package/dist/cli/{ls-0hfx323m.js → ls-0wr74w0b.js} +10 -58
  52. package/dist/cli/{mobile-93vaawcz.js → mobile-hpqpy61f.js} +11 -8
  53. package/dist/cli/{prerender-010z771p.js → prerender-w65xp6h8.js} +2 -1
  54. package/dist/cli/{rewriteImports-z6629aww.js → rewriteImports-np2d2kvc.js} +4 -11
  55. package/dist/cli/rewriteImportsPlugin-c6hcb3x6.js +12 -0
  56. package/dist/cli/{start-asxb79rc.js → start-mbn2zgs2.js} +6 -4
  57. package/dist/cli/staticAnalyzeSpaRoutes-2nev05m1.js +8 -0
  58. package/dist/cli/staticAnalyzeSpaRoutes-6vgzp0rs.js +8 -0
  59. package/dist/cli/staticAnalyzeSpaRoutes-f85q9dqk.js +8 -0
  60. package/dist/cli/staticAnalyzeSpaRoutes-yakmg22g.js +7 -0
  61. package/dist/cli/{typecheck-m2j4tkdk.js → typecheck-488txsfc.js} +92 -18
  62. package/dist/cli/vueCompiler-8bzdmf08.js +7 -0
  63. package/dist/client/chunks/{react-khr6ewhr.js → react-g8r290b8.js} +37 -2
  64. package/dist/client/chunks/react-g8r290b8.js.map +10 -0
  65. package/dist/client/chunks/vue-zcpmka32.js +85 -0
  66. package/dist/client/chunks/vue-zcpmka32.js.map +10 -0
  67. package/dist/client/index.js +58 -10
  68. package/dist/client/index.js.map +4 -4
  69. package/dist/dev/client/handlers/vue.ts +116 -0
  70. package/dist/index.js +2472 -2058
  71. package/dist/index.js.map +26 -23
  72. package/dist/islands/browser.js +2 -2
  73. package/dist/islands/browser.js.map +3 -3
  74. package/dist/islands/index.js +2 -2
  75. package/dist/islands/index.js.map +3 -3
  76. package/dist/react/browser.js +2 -2
  77. package/dist/react/browser.js.map +3 -3
  78. package/dist/react/index.js +42 -11
  79. package/dist/react/index.js.map +10 -10
  80. package/dist/react/server.js +42 -11
  81. package/dist/react/server.js.map +10 -10
  82. package/dist/src/angular/ssrRender.d.ts +2 -2
  83. package/dist/src/angular/staticAnalyzeSpaRoutes.d.ts +6 -1
  84. package/dist/src/build/generateManifest.d.ts +15 -0
  85. package/dist/src/build/manifestKeys.d.ts +22 -0
  86. package/dist/src/cli/add/dependencies.d.ts +1 -1
  87. package/dist/src/cli/scripts/typecheck.d.ts +11 -0
  88. package/dist/src/client/hydrators/react.d.ts +10 -0
  89. package/dist/src/client/hydrators/vue.d.ts +13 -0
  90. package/dist/src/client/islandRuntime.d.ts +1 -1
  91. package/dist/src/core/islandManifest.d.ts +4 -0
  92. package/dist/src/core/islandPageContext.d.ts +8 -2
  93. package/dist/src/core/lookup.d.ts +16 -1
  94. package/dist/src/dev/importCost/instrument.d.ts +1 -1
  95. package/dist/src/dev/manifestKeysRefresher.d.ts +6 -0
  96. package/dist/src/dev/spaRouteRefresh.d.ts +13 -0
  97. package/dist/src/mobile/androidConformance.d.ts +1 -1
  98. package/dist/src/react/staticAnalyzeSpaRoutes.d.ts +6 -1
  99. package/dist/src/svelte/staticAnalyzeSpaRoutes.d.ts +1 -0
  100. package/dist/src/utils/logger.d.ts +5 -0
  101. package/dist/src/utils/spaRouteManifest.d.ts +1 -0
  102. package/dist/src/vue/components/Image.d.ts +4 -4
  103. package/dist/src/vue/components/StreamSlot.d.ts +1 -1
  104. package/dist/src/vue/components/SuspenseSlot.d.ts +2 -2
  105. package/dist/src/vue/staticAnalyzeSpaRoutes.d.ts +4 -0
  106. package/dist/svelte/browser.js +2 -2
  107. package/dist/svelte/browser.js.map +3 -3
  108. package/dist/svelte/index.js +25 -9
  109. package/dist/svelte/index.js.map +8 -8
  110. package/dist/svelte/server.js +25 -9
  111. package/dist/svelte/server.js.map +8 -8
  112. package/dist/types/globals.d.ts +4 -0
  113. package/dist/types/index.d.ts +1 -0
  114. package/dist/types/island.d.ts +1 -1
  115. package/dist/types/manifest.d.ts +25 -0
  116. package/dist/vue/browser.js +2 -2
  117. package/dist/vue/browser.js.map +3 -3
  118. package/dist/vue/index.js +21 -6
  119. package/dist/vue/index.js.map +6 -6
  120. package/dist/vue/server.js +21 -6
  121. package/dist/vue/server.js.map +6 -6
  122. package/package.json +1 -1
  123. package/dist/client/chunks/react-khr6ewhr.js.map +0 -10
  124. package/dist/client/chunks/vue-db6ppn1f.js +0 -32
  125. package/dist/client/chunks/vue-db6ppn1f.js.map +0 -10
@@ -142,6 +142,10 @@ declare global {
142
142
  createSignatureFunctionForTransform: () => (
143
143
  type: unknown
144
144
  ) => unknown;
145
+ /** In the runtime, missing from its type declarations. */
146
+ getFamilyByType?: (
147
+ type: unknown
148
+ ) => { current: unknown } | undefined;
145
149
  injectIntoGlobalHook: (win: Window) => void;
146
150
  performReactRefresh: () => void;
147
151
  register: (type: unknown, id: string) => void;
@@ -9,6 +9,7 @@ export * from './fonts';
9
9
  export * from './i18n';
10
10
  export * from './image';
11
11
  export * from './island';
12
+ export * from './manifest';
12
13
  export * from './messages';
13
14
  export * from './telemetry';
14
15
  export * from './tool';
@@ -11,7 +11,7 @@ type UnwrapIslandComponent<Component> = Component extends IslandComponentDefinit
11
11
  type ExtractCallableProps<Component> = Component extends (props: infer Props, ...args: never[]) => unknown ? NormalizeProps<Props> : Record<string, never>;
12
12
  type ExtractConstructedProps<Component> = Component extends abstract new (props: infer Props, ...args: never[]) => unknown ? NormalizeProps<Props> : Record<string, never>;
13
13
  type ExtractReactProps<Component> = ExtractCallableProps<Component> extends infer Props ? Props extends Record<string, never> ? ExtractConstructedProps<Component> : Props : Record<string, never>;
14
- type ExtractSvelteProps<Component> = Component extends (internals: unknown, props: infer Props, ...args: never[]) => unknown ? NormalizeProps<Props> : Component extends abstract new (options: {
14
+ type ExtractSvelteProps<Component> = Component extends (internals: never, props: infer Props, ...args: never[]) => unknown ? NormalizeProps<Props> : Component extends abstract new (options: {
15
15
  props?: infer Props;
16
16
  }, ...args: never[]) => unknown ? NormalizeProps<Props> : Record<string, never>;
17
17
  type ReservedVueProps = 'key' | 'ref' | 'ref_for' | 'ref_key' | 'class' | 'style' | 'onVnodeBeforeMount' | 'onVnodeMounted' | 'onVnodeBeforeUpdate' | 'onVnodeUpdated' | 'onVnodeBeforeUnmount' | 'onVnodeUnmounted';
@@ -0,0 +1,25 @@
1
+ /**
2
+ * The keys `asset(manifest, key)` accepts.
3
+ *
4
+ * Empty here. `absolute dev`, `absolute build` and `absolute typecheck`
5
+ * derive the project's keys from its pages, styles and islands (no build
6
+ * needed) and write `.absolutejs/types/manifest.d.ts`, which adds each key
7
+ * to this interface:
8
+ *
9
+ * declare module '@absolutejs/absolute' {
10
+ * interface AbsoluteManifestKeys { HomeIndex: true; … }
11
+ * }
12
+ *
13
+ * `absolute typecheck` always reads that file; for the same checks in an
14
+ * editor, add `.absolutejs/types/manifest.d.ts` to `include` in
15
+ * tsconfig.json.
16
+ */
17
+ export interface AbsoluteManifestKeys {
18
+ }
19
+ /**
20
+ * A manifest key: one of the generated keys once the project has them, any
21
+ * string before (no generated declaration, or a project that never ran an
22
+ * AbsoluteJS command). A key computed at runtime goes through
23
+ * `assetUnchecked`.
24
+ */
25
+ export type ManifestKey = [keyof AbsoluteManifestKeys] extends [never] ? string : Extract<keyof AbsoluteManifestKeys, string>;
@@ -73,7 +73,7 @@ var __esm = (fn, res, err) => () => {
73
73
  var __require = import.meta.require;
74
74
 
75
75
  // src/core/islandManifest.ts
76
- var ISLAND_BOOTSTRAP_MANIFEST_KEY = "AbsoluteIslandBootstrap", LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = "BootstrapClient", toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1), collectFrameworkIslands = (manifest, prefix) => {
76
+ var ISLAND_BOOTSTRAP_MANIFEST_KEY = "AbsoluteIslandBootstrap", LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = "BootstrapClient", REACT_PAGE_ROOT_EVENT = "absolute:react-page-root", toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1), collectFrameworkIslands = (manifest, prefix) => {
77
77
  const entries = {};
78
78
  let found = false;
79
79
  for (const [key, value] of Object.entries(manifest)) {
@@ -1310,5 +1310,5 @@ export {
1310
1310
  useServerData
1311
1311
  };
1312
1312
 
1313
- //# debugId=7F6BE8DA87FB7A6E64756E2164756E21
1313
+ //# debugId=EF0F2169650E596F64756E2164756E21
1314
1314
  //# sourceMappingURL=browser.js.map
@@ -2,7 +2,7 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/core/islandManifest.ts", "../src/core/islands.ts", "../src/core/islandMarkupAttributes.ts", "../src/utils/cspNonceRef.ts", "../src/client/browserTranslationAttributes.ts", "../src/dev/client/cspNonce.ts", "../src/vue/Island.browser.ts", "../src/client/preserveIslandMarkup.ts", "../src/core/normalizeIslandProps.ts", "../src/vue/islandStyleLink.ts", "../src/core/islandStylesheet.ts", "../src/vue/createIsland.browser.ts", "../src/vue/useIslandStore.ts", "../node_modules/zustand/esm/vanilla.mjs", "../node_modules/zustand/esm/middleware.mjs", "../src/client/islandStore.ts", "../src/vue/serverDataState.ts", "../src/vue/useServerData.browser.ts", "../src/client/browserTranslation.ts", "../src/vue/browserTranslation.ts", "../src/vue/defineVuePage.ts", "../src/vue/routerRedirectProviders.ts", "../src/vue/router/Link.ts", "../src/client/prefetch.ts", "../src/vue/usePrefetch.ts"],
4
4
  "sourcesContent": [
5
- "import type { IslandFramework } from '../../types/island';\n\n/** Manifest key the server injects as the islands bootstrap script on any\n * page with island markers. The build records the configured\n * `islands.bootstrap` (whatever its file name) or a generated default under\n * it — see build/islandBootstrap.ts. */\nexport const ISLAND_BOOTSTRAP_MANIFEST_KEY = 'AbsoluteIslandBootstrap';\n\n/** Key a bootstrap file named `bootstrapClient.*` gets naturally, which is\n * all the server used to look for. Still honored for manifests built\n * before the reserved key existed. */\nexport const LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = 'BootstrapClient';\n\nconst toIslandFrameworkSegment = (framework: IslandFramework) =>\n\tframework[0]?.toUpperCase() + framework.slice(1);\n\nconst collectFrameworkIslands = (\n\tmanifest: Record<string, string>,\n\tprefix: string\n) => {\n\tconst entries: Record<string, string> = {};\n\tlet found = false;\n\n\tfor (const [key, value] of Object.entries(manifest)) {\n\t\tif (!key.startsWith(prefix)) continue;\n\n\t\tconst component = key.slice(prefix.length);\n\t\tif (!component) continue;\n\n\t\tentries[component] = value;\n\t\tfound = true;\n\t}\n\n\treturn found ? entries : undefined;\n};\n\nexport const getIslandBootstrapPath = (manifest: Record<string, string>) =>\n\tmanifest[ISLAND_BOOTSTRAP_MANIFEST_KEY] ??\n\tmanifest[LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY];\nexport const getIslandManifestEntries = (manifest: Record<string, string>) => {\n\tconst islands: Partial<Record<IslandFramework, Record<string, string>>> =\n\t\t{};\n\tconst frameworks: IslandFramework[] = ['react', 'svelte', 'vue', 'angular'];\n\n\tfor (const framework of frameworks) {\n\t\tconst prefix = `Island${toIslandFrameworkSegment(framework)}`;\n\t\tconst entries = collectFrameworkIslands(manifest, prefix);\n\t\tif (entries) islands[framework] = entries;\n\t}\n\n\treturn islands;\n};\nexport const getIslandManifestKey = (\n\tframework: IslandFramework,\n\tcomponent: string\n) => `Island${toIslandFrameworkSegment(framework)}${component}`;\n\nconst ISLAND_STYLE_PREFIX = 'IslandStyle';\n\n/** Every island stylesheet in the manifest, by manifest key. */\nexport const getIslandStyleManifestEntries = (\n\tmanifest: Record<string, string>\n) =>\n\tObject.entries(manifest).filter(([key]) =>\n\t\tkey.startsWith(ISLAND_STYLE_PREFIX)\n\t);\n\n/** Manifest key of the stylesheet the island client pass emits for an\n * island (its Svelte/Vue component styles and any CSS it imports). The\n * server links it from every page that renders the island. */\nexport const getIslandStyleManifestKey = (\n\tframework: IslandFramework,\n\tcomponent: string\n) => `${ISLAND_STYLE_PREFIX}${toIslandFrameworkSegment(framework)}${component}`;\n",
5
+ "import type { IslandFramework } from '../../types/island';\n\n/** Manifest key the server injects as the islands bootstrap script on any\n * page with island markers. The build records the configured\n * `islands.bootstrap` (whatever its file name) or a generated default under\n * it — see build/islandBootstrap.ts. */\nexport const ISLAND_BOOTSTRAP_MANIFEST_KEY = 'AbsoluteIslandBootstrap';\n\n/** Key a bootstrap file named `bootstrapClient.*` gets naturally, which is\n * all the server used to look for. Still honored for manifests built\n * before the reserved key existed. */\nexport const LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = 'BootstrapClient';\n\n/** Window event a React page's generated index dispatches once it has\n * created the page's root. The island runtime holds a React page's\n * islands until then (see startIslands in client/islandRuntime.ts). */\nexport const REACT_PAGE_ROOT_EVENT = 'absolute:react-page-root';\n\nconst toIslandFrameworkSegment = (framework: IslandFramework) =>\n\tframework[0]?.toUpperCase() + framework.slice(1);\n\nconst collectFrameworkIslands = (\n\tmanifest: Record<string, string>,\n\tprefix: string\n) => {\n\tconst entries: Record<string, string> = {};\n\tlet found = false;\n\n\tfor (const [key, value] of Object.entries(manifest)) {\n\t\tif (!key.startsWith(prefix)) continue;\n\n\t\tconst component = key.slice(prefix.length);\n\t\tif (!component) continue;\n\n\t\tentries[component] = value;\n\t\tfound = true;\n\t}\n\n\treturn found ? entries : undefined;\n};\n\nexport const getIslandBootstrapPath = (manifest: Record<string, string>) =>\n\tmanifest[ISLAND_BOOTSTRAP_MANIFEST_KEY] ??\n\tmanifest[LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY];\nexport const getIslandManifestEntries = (manifest: Record<string, string>) => {\n\tconst islands: Partial<Record<IslandFramework, Record<string, string>>> =\n\t\t{};\n\tconst frameworks: IslandFramework[] = ['react', 'svelte', 'vue', 'angular'];\n\n\tfor (const framework of frameworks) {\n\t\tconst prefix = `Island${toIslandFrameworkSegment(framework)}`;\n\t\tconst entries = collectFrameworkIslands(manifest, prefix);\n\t\tif (entries) islands[framework] = entries;\n\t}\n\n\treturn islands;\n};\nexport const getIslandManifestKey = (\n\tframework: IslandFramework,\n\tcomponent: string\n) => `Island${toIslandFrameworkSegment(framework)}${component}`;\n\nconst ISLAND_STYLE_PREFIX = 'IslandStyle';\n\n/** Every island stylesheet in the manifest, by manifest key. */\nexport const getIslandStyleManifestEntries = (\n\tmanifest: Record<string, string>\n) =>\n\tObject.entries(manifest).filter(([key]) =>\n\t\tkey.startsWith(ISLAND_STYLE_PREFIX)\n\t);\n\n/** Manifest key of the stylesheet the island client pass emits for an\n * island (its Svelte/Vue component styles and any CSS it imports). The\n * server links it from every page that renders the island. */\nexport const getIslandStyleManifestKey = (\n\tframework: IslandFramework,\n\tcomponent: string\n) => `${ISLAND_STYLE_PREFIX}${toIslandFrameworkSegment(framework)}${component}`;\n",
6
6
  "import type {\n\tIslandComponentDefinition,\n\tIslandRegistry,\n\tIslandRegistryInput\n} from '../../types/island';\n\nexport const defineIslandComponent = <Component>(\n\tcomponent: Component,\n\toptions: {\n\t\texport?: string;\n\t\tsource: string;\n\t}\n): IslandComponentDefinition<Component> => ({\n\tcomponent,\n\texport: options.export,\n\tsource: options.source\n});\nexport const defineIslandRegistry = <T extends IslandRegistryInput>(\n\tregistry: IslandRegistry<T>\n) => registry;\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n\ttypeof value === 'object' && value !== null;\n\nexport const getIslandBuildReference = <Component>(\n\tcomponent: Component | IslandComponentDefinition<Component>\n) => {\n\tif (!isIslandComponentDefinition(component)) return null;\n\n\treturn {\n\t\texport: component.export,\n\t\tsource: component.source\n\t};\n};\nexport const isIslandComponentDefinition = <Component>(\n\tvalue: Component | IslandComponentDefinition<Component>\n): value is IslandComponentDefinition<Component> =>\n\tisRecord(value) &&\n\t'component' in value &&\n\t'source' in value &&\n\ttypeof value.source === 'string';\n\nexport function getIslandComponent<Component>(component: Component): Component;\nexport function getIslandComponent<Component>(\n\tcomponent: IslandComponentDefinition<Component>\n): Component;\nexport function getIslandComponent<Component>(\n\tcomponent: Component | IslandComponentDefinition<Component>\n) {\n\tif (isIslandComponentDefinition(component)) {\n\t\treturn component.component;\n\t}\n\n\treturn component;\n}\nexport const parseIslandProps = (rawProps: string | null) => {\n\tif (!rawProps) return {};\n\n\treturn JSON.parse(rawProps);\n};\nexport const serializeIslandProps = (props: unknown) =>\n\tJSON.stringify(props ?? {});\n\nexport {\n\tgetIslandManifestEntries,\n\tgetIslandManifestKey\n} from './islandManifest';\n",
7
7
  "import type { RuntimeIslandRenderProps } from '../../types/island';\nimport { serializeIslandProps } from './islands';\n\ntype IslandMarkerAttributes = {\n\t'data-component': string;\n\t'data-framework': string;\n\t'data-hydrate': string;\n\t'data-island': 'true';\n\t'data-island-id'?: string;\n\t'data-props': string;\n};\n\nexport const getIslandMarkerAttributes = (\n\tprops: RuntimeIslandRenderProps,\n\tislandId?: string\n): IslandMarkerAttributes => ({\n\t'data-component': props.component,\n\t'data-framework': props.framework,\n\t'data-hydrate': props.hydrate ?? 'load',\n\t'data-island': 'true',\n\t...(islandId ? { 'data-island-id': islandId } : {}),\n\t'data-props': serializeIslandProps(props.props)\n});\n\nconst escapeHtmlAttribute = (value: string) =>\n\tvalue\n\t\t.replaceAll('&', '&amp;')\n\t\t.replaceAll('\"', '&quot;')\n\t\t.replaceAll('<', '&lt;')\n\t\t.replaceAll('>', '&gt;');\n\nexport const serializeIslandAttributes = (attributes: Record<string, string>) =>\n\tObject.entries(attributes)\n\t\t.map(([key, value]) => `${key}=\"${escapeHtmlAttribute(value)}\"`)\n\t\t.join(' ');\n",
8
8
  "/* Dependency-free access to the current request's CSP nonce, for code that\n * also ships to the browser (streaming slots, Angular components) and so\n * can't import the server's request context. `secureHeaders()` registers\n * the getter (src/core/cspNonce.ts); in the browser, or with secure headers\n * off, there is none and these return undefined / ''. */\n\nconst GETTER_KEY = Symbol.for('absolutejs.cspNonceGetter');\n\n/** ` nonce=\"…\"` for an inline <script>/<style> tag, or '' without one. */\nexport const nonceAttr = (nonce: string | undefined = readCspNonce()) =>\n\tnonce ? ` nonce=\"${nonce}\"` : '';\n\n/** Adds the nonce to the <style id=\"svelte-…\"> tags Svelte renders into the\n * head for components compiled with injected CSS. Only those: a <style>\n * that arrived through {@html} stays without one. */\nexport const nonceSvelteHeadStyles = (\n\thead: string,\n\tnonce: string | undefined = readCspNonce()\n) =>\n\tnonce\n\t\t? head.replace(\n\t\t\t\t/<style(?=\\s+id=\"svelte-[^\"]*\")(?![^>]*\\snonce=)/g,\n\t\t\t\t`<style nonce=\"${nonce}\"`\n\t\t\t)\n\t\t: head;\n\nexport const readCspNonce = () => {\n\tconst getter: unknown = Reflect.get(globalThis, GETTER_KEY);\n\tif (typeof getter !== 'function') return undefined;\n\tconst nonce: unknown = getter();\n\n\treturn typeof nonce === 'string' ? nonce : undefined;\n};\n\nexport const registerCspNonceGetter = (getter: () => string | undefined) => {\n\tReflect.set(globalThis, GETTER_KEY, getter);\n};\n",
@@ -28,7 +28,7 @@
28
28
  "/**\n * Framework-neutral navigation prefetch primitive.\n *\n * Pure DOM + `fetch` — no framework imports — so the React, Vue and Svelte\n * `<Link>` components (and user code) share one cache, one in-flight\n * budget, one IntersectionObserver and one set of data-saver guards.\n *\n * import { prefetch, speculate } from '@absolutejs/absolute/client/prefetch';\n *\n * What a prefetch buys the click that follows:\n * - `'document'` — the HTML lands in the browser's HTTP cache (pages\n * carry a content-hash `ETag`), so the real navigation revalidates\n * with a 304 instead of re-rendering.\n * - `'module'` — `<link rel=\"modulepreload\">` parses + compiles the\n * client module graph ahead of time.\n * - `'data'` — the route-data payload\n * (`application/vnd.absolute.route+json`): the page's props plus the\n * client entry and stylesheets it needs, which are `modulepreload`ed\n * / prefetched as the payload lands. A 404 / 406 from a server that\n * doesn't speak route data is remembered as \"no data\".\n * - `'route'` — `'document'` + `'data'`, i.e. everything a click\n * needs. What a `<Link>` warms on hover / pointerdown.\n * - `speculate()` — a prerender speculation rule; the browser renders\n * the whole target page in a hidden tab so the click is instant.\n *\n * Global opt-out: `window.__ABSOLUTE_PREFETCH__ = false` disables every\n * entry point in this module (useful for analytics-sensitive pages).\n */\nimport { applyPageNonce } from '../dev/client/cspNonce';\nimport type {\n\tHoverPrefetchHandle,\n\tHoverPrefetchOptions,\n\tPrefetchKind,\n\tPrefetchOptions,\n\tViewportPrefetchOptions\n} from '../../types/prefetch';\n\nconst PREFETCH_CACHE_LIMIT = 16;\nconst HOVER_DEBOUNCE_MS = 250;\nconst MAX_IN_FLIGHT = 2;\nconst MAX_LIVE_SPECULATION_RULES = 2;\nconst VIEWPORT_ROOT_MARGIN = '128px';\nconst SLOW_EFFECTIVE_TYPES = new Set(['slow-2g', '2g']);\nconst NOT_FOUND = 404;\nconst NOT_ACCEPTABLE = 406;\n\nexport const ROUTE_DATA_MEDIA_TYPE = 'application/vnd.absolute.route+json';\n\ntype CacheEntry = {\n\tabort: () => void;\n\tkind: PrefetchKind;\n\tpromise: Promise<Response>;\n\turl: string;\n};\n\ntype QueuedTask = {\n\tcancelled: boolean;\n\tstart: () => void;\n};\n\nconst cache = new Map<string, CacheEntry>();\nconst queue: QueuedTask[] = [];\nlet inFlight = 0;\n\nconst preloadedModules = new Set<string>();\nconst prefetchedStyles = new Set<string>();\nconst liveSpeculationRules = new Map<string, HTMLScriptElement>();\n\nconst offlineResponse = () => new Response(null, { status: 0 });\n\n/** `'route'` is a compound trigger, not a cache entry of its own: it\n * warms the `'document'` and `'data'` entries, so lookups for it read\n * the document it warmed. */\nconst storageKind = (kind: PrefetchKind) =>\n\tkind === 'route' ? 'document' : kind;\n\nconst cacheKey = (kind: PrefetchKind, url: string) =>\n\t`${storageKind(kind)}:${url}`;\n\nconst resolveHref = (url: string) => {\n\tif (typeof window === 'undefined') return url;\n\n\ttry {\n\t\treturn new URL(url, window.location.href).href;\n\t} catch {\n\t\treturn url;\n\t}\n};\n\n/* ------------------------------------------------------------------ */\n/* Guards */\n/* ------------------------------------------------------------------ */\n\nconst isGloballyDisabled = () =>\n\ttypeof window !== 'undefined' &&\n\tReflect.get(window, '__ABSOLUTE_PREFETCH__') === false;\n\nconst isSlowConnection = () => {\n\tif (typeof navigator === 'undefined') return false;\n\n\tconst connection = Reflect.get(navigator, 'connection');\n\tif (typeof connection !== 'object' || connection === null) return false;\n\tif (Reflect.get(connection, 'saveData') === true) return true;\n\n\tconst effectiveType = Reflect.get(connection, 'effectiveType');\n\n\treturn (\n\t\ttypeof effectiveType === 'string' &&\n\t\tSLOW_EFFECTIVE_TYPES.has(effectiveType)\n\t);\n};\n\nconst prefersReducedData = () => {\n\tif (typeof window === 'undefined' || !window.matchMedia) return false;\n\n\treturn window.matchMedia('(prefers-reduced-data: reduce)').matches;\n};\n\n/** `true` when prefetching is allowed right now: we're in a browser, the\n * page hasn't opted out via `window.__ABSOLUTE_PREFETCH__ = false`, and\n * the user hasn't asked for less data (Save-Data, 2g, reduced-data). */\nexport const canPrefetch = () =>\n\ttypeof window !== 'undefined' &&\n\t!isGloballyDisabled() &&\n\t!isSlowConnection() &&\n\t!prefersReducedData();\n\nconst readNodeEnv = () => {\n\t// Deliberately not the bare `process.env.NODE_ENV` member expression:\n\t// bundlers substitute that at build time, which would bake this\n\t// package's own build environment into the shipped client entry. In a\n\t// browser `process` is undefined and this yields `undefined`.\n\tconst processLike = Reflect.get(globalThis, 'process');\n\tif (typeof processLike !== 'object' || processLike === null) {\n\t\treturn undefined;\n\t}\n\tconst env = Reflect.get(processLike, 'env');\n\tif (typeof env !== 'object' || env === null) return undefined;\n\tconst value = Reflect.get(env, 'NODE_ENV');\n\n\treturn typeof value === 'string' ? value : undefined;\n};\n\n/** Whether the page was served by the AbsoluteJS dev server. The HMR\n * client is only injected in dev, so its markers are the reliable\n * signal; `NODE_ENV` is the fallback for environments that bundle\n * without the dev server (tests, custom hosts). */\nexport const isDevelopmentClient = () => {\n\tif (typeof window === 'undefined') return false;\n\tif (Reflect.get(window, '__HMR_FRAMEWORK__') !== undefined) return true;\n\tif (Reflect.get(window, '__HMR_WS__') !== undefined) return true;\n\tif (\n\t\ttypeof document !== 'undefined' &&\n\t\tdocument.querySelector('script[data-hmr-client]') !== null\n\t) {\n\t\treturn true;\n\t}\n\n\treturn readNodeEnv() === 'development';\n};\n\n/** Same-origin, non-hash, http(s) URL — the only kind worth prefetching. */\nexport const isPrefetchableHref = (href: string) => {\n\tif (typeof window === 'undefined') return false;\n\tif (href === '' || href.startsWith('#')) return false;\n\n\ttry {\n\t\tconst url = new URL(href, window.location.href);\n\t\tif (url.protocol !== 'http:' && url.protocol !== 'https:') return false;\n\n\t\treturn url.origin === window.location.origin;\n\t} catch {\n\t\treturn false;\n\t}\n};\n\n/** Production → `'viewport'` (viewport + hover). Development → `'hover'`\n * only, so a page full of links doesn't fan out into the dev server. */\nexport const resolveDefaultPrefetchMode = () =>\n\tisDevelopmentClient() ? 'hover' : 'viewport';\n\n/* ------------------------------------------------------------------ */\n/* In-flight budget */\n/* ------------------------------------------------------------------ */\n\nconst runQueue = () => {\n\twhile (inFlight < MAX_IN_FLIGHT) {\n\t\tconst next = queue.shift();\n\t\tif (!next) return;\n\t\tif (next.cancelled) continue;\n\t\tnext.start();\n\t}\n};\n\nconst finishTask = () => {\n\tinFlight = Math.max(0, inFlight - 1);\n\trunQueue();\n};\n\n/** Run `task` when one of the `MAX_IN_FLIGHT` slots frees up. The\n * returned promise never rejects — network failures resolve to a\n * status-0 response so consumers can treat \"no prefetch\" uniformly. */\nconst runWhenReleased = async (\n\tgate: Promise<void>,\n\ttask: (signal: AbortSignal) => Promise<Response>,\n\tsignal: AbortSignal\n) => {\n\tawait gate;\n\ttry {\n\t\treturn await task(signal);\n\t} catch {\n\t\treturn offlineResponse();\n\t} finally {\n\t\tfinishTask();\n\t}\n};\n\nconst enqueue = (task: (signal: AbortSignal) => Promise<Response>) => {\n\tconst controller = new AbortController();\n\tlet release: () => void = () => undefined;\n\tconst gate = new Promise<void>((resolve) => {\n\t\trelease = resolve;\n\t});\n\tconst queued: QueuedTask = {\n\t\tcancelled: false,\n\t\tstart: () => {\n\t\t\t// Count the slot synchronously so `runQueue` can't overshoot the\n\t\t\t// budget while the async runner is still waiting on the gate.\n\t\t\tinFlight += 1;\n\t\t\trelease();\n\t\t}\n\t};\n\tconst promise = runWhenReleased(gate, task, controller.signal);\n\tqueue.push(queued);\n\trunQueue();\n\n\tconst abort = () => {\n\t\tif (queued.cancelled) return;\n\t\tqueued.cancelled = true;\n\t\tcontroller.abort();\n\t};\n\n\treturn { abort, promise };\n};\n\n/* ------------------------------------------------------------------ */\n/* Cache */\n/* ------------------------------------------------------------------ */\n\nconst evictOldest = () => {\n\tconst oldest = cache.keys().next();\n\tif (oldest.done) return;\n\tcache.get(oldest.value)?.abort();\n\tcache.delete(oldest.value);\n};\n\nconst touch = (key: string, entry: CacheEntry) => {\n\t// Re-insert so Map iteration order doubles as LRU recency.\n\tcache.delete(key);\n\tcache.set(key, entry);\n};\n\nexport const clearPrefetchCache = () => {\n\tfor (const entry of cache.values()) entry.abort();\n\tcache.clear();\n};\n\n/** Take the prefetched response for `url` out of the cache. Returns\n * `undefined` when nothing was prefetched (or it was evicted). Callers\n * that fetch the same URL themselves can await this instead. */\nexport const consumePrefetch = (\n\turl: string,\n\tkind: PrefetchKind = 'document'\n) => {\n\tconst key = cacheKey(kind, url);\n\tconst entry = cache.get(key);\n\tif (!entry) return undefined;\n\tcache.delete(key);\n\n\treturn entry.promise;\n};\n\n/** Whether `url` is already prefetched (in flight, queued or settled). */\nexport const hasPrefetched = (url: string, kind: PrefetchKind = 'document') =>\n\tcache.has(cacheKey(kind, url));\n\n/* ------------------------------------------------------------------ */\n/* Kinds */\n/* ------------------------------------------------------------------ */\n\nconst injectLink = (rel: string, href: string, asType?: string) => {\n\tif (typeof document === 'undefined') return;\n\tconst link = document.createElement('link');\n\tlink.rel = rel;\n\tlink.href = href;\n\tif (asType) link.setAttribute('as', asType);\n\tdocument.head.append(link);\n};\n\n/** Without `fetch` (very old engines) fall back to a `<link rel=\"prefetch\">`\n * for documents; other kinds have no declarative equivalent. */\nconst injectPrefetchFallback = (kind: PrefetchKind, url: string) => {\n\tif (kind !== 'document' || !supportsLinkRel('prefetch')) return;\n\tinjectLink('prefetch', url, 'document');\n};\n\nconst supportsLinkRel = (rel: string) => {\n\tif (typeof document === 'undefined') return false;\n\tconst link = document.createElement('link');\n\n\treturn (\n\t\ttypeof link.relList?.supports === 'function' &&\n\t\tlink.relList.supports(rel)\n\t);\n};\n\n/** Inject `<link rel=\"prefetch\" as=\"style\">` once per resolved href, so\n * the target page's stylesheets are in the HTTP cache before the click.\n * `prefetch` rather than `preload`: the sheet is for the NEXT document,\n * so preloading it would warn about an unused preload on this one. */\nexport const prefetchStylesheet = (href: string) => {\n\tif (typeof document === 'undefined') return false;\n\tconst resolved = resolveHref(href);\n\tif (prefetchedStyles.has(resolved)) return false;\n\tprefetchedStyles.add(resolved);\n\t// No `relList.supports` gate: a browser that doesn't know `prefetch`\n\t// simply ignores the tag, and there is no fallback worth branching to.\n\tinjectLink('prefetch', href, 'style');\n\n\treturn true;\n};\n\n/** Inject `<link rel=\"modulepreload\">` once per resolved href. Returns\n * `true` when a new tag was added. */\nexport const preloadModule = (href: string) => {\n\tif (typeof document === 'undefined') return false;\n\tconst resolved = resolveHref(href);\n\tif (preloadedModules.has(resolved)) return false;\n\n\tconst existing = Array.from(\n\t\tdocument.querySelectorAll<HTMLLinkElement>('link[rel=\"modulepreload\"]')\n\t);\n\tif (existing.some((link) => resolveHref(link.href) === resolved)) {\n\t\tpreloadedModules.add(resolved);\n\n\t\treturn false;\n\t}\n\n\tpreloadedModules.add(resolved);\n\tinjectLink('modulepreload', href);\n\n\treturn true;\n};\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n\ttypeof value === 'object' && value !== null;\n\nconst isHref = (value: unknown): value is string =>\n\ttypeof value === 'string' && value.length > 0;\n\n/** Warm what a route-data envelope points at: `modulepreload` for the\n * page's client entry (and a separate client module when it has one),\n * `<link rel=\"prefetch\">` for its stylesheets. Anything unexpected in\n * the payload is ignored — a prefetch must never break a page. */\nconst warmRouteDataAssets = (envelope: unknown) => {\n\tif (!isRecord(envelope)) return;\n\tconst { assets } = envelope;\n\tif (!isRecord(assets)) return;\n\tconst { client, css, index } = assets;\n\tfor (const href of [index, client].filter(isHref)) preloadModule(href);\n\tif (!Array.isArray(css)) return;\n\tfor (const href of css.filter(isHref)) prefetchStylesheet(href);\n};\n\n/** Read the envelope out of a clone so the cached response body is still\n * unconsumed for whoever calls `consumePrefetch`. */\nconst warmFromRouteData = async (response: Response) => {\n\ttry {\n\t\twarmRouteDataAssets(await response.clone().json());\n\t} catch {\n\t\t/* malformed payload — the document prefetch still stands */\n\t}\n\n\treturn response;\n};\n\nconst fetchDocument = (url: string, signal: AbortSignal) =>\n\tfetch(url, { credentials: 'same-origin', signal });\n\nconst fetchRouteData = async (url: string, signal: AbortSignal) => {\n\tconst response = await fetch(url, {\n\t\tcredentials: 'same-origin',\n\t\theaders: { Accept: ROUTE_DATA_MEDIA_TYPE },\n\t\tsignal\n\t});\n\tconst contentType = response.headers.get('content-type') ?? '';\n\tconst isRouteData =\n\t\tresponse.ok && contentType.includes(ROUTE_DATA_MEDIA_TYPE);\n\tif (isRouteData) return warmFromRouteData(response);\n\n\t// The server doesn't speak route data (yet) — 404 / 406 / HTML fallback.\n\t// Remember that as \"no data\" so the URL isn't asked again, and drain\n\t// the body so the connection can be reused.\n\tawait response.body?.cancel().catch(() => undefined);\n\tconst status =\n\t\tresponse.status === NOT_FOUND || response.status === NOT_ACCEPTABLE\n\t\t\t? response.status\n\t\t\t: NOT_ACCEPTABLE;\n\n\treturn new Response(null, { status });\n};\n\n/**\n * Prefetch `url`. No-op when the user signalled data-saver / reduced-data\n * / 2g, when the page opted out, or when the URL is already cached. At\n * most two prefetches are in flight at once; the rest queue in order.\n */\nexport const prefetch = (url: string, options: PrefetchOptions = {}) => {\n\tconst kind = options.kind ?? 'document';\n\tif (!canPrefetch()) return;\n\n\tif (kind === 'module') {\n\t\tpreloadModule(url);\n\n\t\treturn;\n\t}\n\n\t// `'route'` is document + data: the HTML for the navigation itself and\n\t// the payload that names the modules and CSS to warm alongside it.\n\tif (kind === 'route') {\n\t\tprefetch(url, { kind: 'document' });\n\t\tprefetch(url, { kind: 'data' });\n\n\t\treturn;\n\t}\n\n\tconst key = cacheKey(kind, url);\n\tconst existing = cache.get(key);\n\tif (existing) {\n\t\ttouch(key, existing);\n\n\t\treturn;\n\t}\n\n\tif (typeof fetch === 'undefined') {\n\t\tinjectPrefetchFallback(kind, url);\n\n\t\treturn;\n\t}\n\n\twhile (cache.size >= PREFETCH_CACHE_LIMIT) evictOldest();\n\n\tconst { abort, promise } = enqueue((signal) =>\n\t\tkind === 'data'\n\t\t\t? fetchRouteData(url, signal)\n\t\t\t: fetchDocument(url, signal)\n\t);\n\tcache.set(key, { abort, kind, promise, url });\n};\n\n/* ------------------------------------------------------------------ */\n/* Speculation rules */\n/* ------------------------------------------------------------------ */\n\nconst supportsSpeculationRules = () =>\n\ttypeof HTMLScriptElement !== 'undefined' &&\n\ttypeof HTMLScriptElement.supports === 'function' &&\n\tHTMLScriptElement.supports('speculationrules');\n\n/**\n * Ask the browser to prerender `url` right away via a speculation-rules\n * script. Deduped per URL and capped to two live rules — the oldest is\n * removed when a third arrives, so a hover trail can't pile up hidden\n * prerendered tabs. Silently no-ops where the API is unsupported.\n */\nexport const speculate = (url: string) => {\n\tif (!canPrefetch() || !supportsSpeculationRules()) return false;\n\tif (typeof document === 'undefined') return false;\n\n\tconst resolved = resolveHref(url);\n\tif (liveSpeculationRules.has(resolved)) return false;\n\n\twhile (liveSpeculationRules.size >= MAX_LIVE_SPECULATION_RULES) {\n\t\tconst oldest = liveSpeculationRules.keys().next();\n\t\tif (oldest.done) break;\n\t\tliveSpeculationRules.get(oldest.value)?.remove();\n\t\tliveSpeculationRules.delete(oldest.value);\n\t}\n\n\tconst script = applyPageNonce(document.createElement('script'));\n\tscript.type = 'speculationrules';\n\tscript.textContent = JSON.stringify({\n\t\tprerender: [{ eagerness: 'immediate', urls: [url] }]\n\t});\n\tdocument.head.append(script);\n\tliveSpeculationRules.set(resolved, script);\n\n\treturn true;\n};\n\n/* ------------------------------------------------------------------ */\n/* Triggers */\n/* ------------------------------------------------------------------ */\n\nconst noopHandle: HoverPrefetchHandle = {\n\tcancel: () => {\n\t\t/* nothing scheduled */\n\t}\n};\n\n/**\n * Wrap a prefetch trigger in a hover-debounce so glancing across many links\n * doesn't fire a fetch storm. The returned handle's `cancel()` aborts the\n * pending hover prefetch (e.g. on `pointerleave`).\n *\n * Defaults to `kind: 'route'` — a hover is deliberate enough to be worth\n * the document AND the route data (and the modules + CSS that payload\n * names). Viewport prefetching stays document-only.\n */\nexport const scheduleHoverPrefetch = (\n\turl: string,\n\toptions: HoverPrefetchOptions = {}\n): HoverPrefetchHandle => {\n\tif (typeof window === 'undefined') return noopHandle;\n\n\tconst timer = window.setTimeout(() => {\n\t\tprefetch(url, { kind: options.kind ?? 'route' });\n\t\tif (options.prerender) speculate(url);\n\t\toptions.onPrefetch?.();\n\t}, HOVER_DEBOUNCE_MS);\n\n\treturn {\n\t\tcancel: () => window.clearTimeout(timer)\n\t};\n};\n\ntype ViewportTarget = {\n\toptions: ViewportPrefetchOptions;\n\turl: string;\n};\n\nconst viewportTargets = new WeakMap<Element, ViewportTarget>();\nlet viewportObserver: IntersectionObserver | null = null;\n\nconst handleIntersections = (entries: IntersectionObserverEntry[]) => {\n\tfor (const entry of entries) {\n\t\tif (!entry.isIntersecting) continue;\n\t\tconst target = viewportTargets.get(entry.target);\n\t\tviewportObserver?.unobserve(entry.target);\n\t\tviewportTargets.delete(entry.target);\n\t\tif (!target) continue;\n\t\tprefetch(target.url, { kind: target.options.kind });\n\t\ttarget.options.onVisible?.();\n\t}\n};\n\nconst getViewportObserver = () => {\n\tif (viewportObserver) return viewportObserver;\n\tif (typeof IntersectionObserver === 'undefined') return null;\n\tviewportObserver = new IntersectionObserver(handleIntersections, {\n\t\trootMargin: VIEWPORT_ROOT_MARGIN\n\t});\n\n\treturn viewportObserver;\n};\n\n/**\n * Prefetch `url` once `element` scrolls within 128px of the viewport. One\n * IntersectionObserver is shared by every link on the page. Returns an\n * unobserve function for the caller's unmount hook.\n */\nexport const observeViewport = (\n\telement: Element,\n\turl: string,\n\toptions: ViewportPrefetchOptions = {}\n) => {\n\tconst observer = getViewportObserver();\n\tif (!observer || !canPrefetch()) return () => undefined;\n\n\tviewportTargets.set(element, { options, url });\n\tobserver.observe(element);\n\n\treturn () => {\n\t\tobserver.unobserve(element);\n\t\tviewportTargets.delete(element);\n\t};\n};\n\n/** Test / teardown helper — forgets injected modulepreload + speculation\n * rule bookkeeping and cancels any queued fetches. */\nexport const resetPrefetchState = () => {\n\tclearPrefetchCache();\n\tqueue.length = 0;\n\tpreloadedModules.clear();\n\tprefetchedStyles.clear();\n\tfor (const script of liveSpeculationRules.values()) script.remove();\n\tliveSpeculationRules.clear();\n\tviewportObserver?.disconnect();\n\tviewportObserver = null;\n};\n",
29
29
  "import {\n\tgetCurrentScope,\n\ttype MaybeRefOrGetter,\n\tonScopeDispose,\n\ttype Ref,\n\tref,\n\ttoValue,\n\twatchEffect\n} from 'vue';\nimport type {\n\tHoverPrefetchHandle,\n\tPrefetchKind,\n\tPrefetchMode\n} from '../../types/prefetch';\nimport {\n\tisPrefetchableHref,\n\tobserveViewport,\n\tprefetch,\n\tresolveDefaultPrefetchMode,\n\tscheduleHoverPrefetch,\n\tspeculate\n} from '../client/prefetch';\n\nexport type UsePrefetchOptions = {\n\t/** `'viewport'` (production default), `'hover'` (development default)\n\t * or `'none'`. */\n\tmode?: MaybeRefOrGetter<PrefetchMode | undefined>;\n\t/** What to warm. Defaults to `'document'` for the viewport trigger and\n\t * `'route'` (document + route data + the modules / CSS it names) for\n\t * hover and pointerdown. */\n\tkind?: PrefetchKind;\n\t/** Also inject a prerender speculation rule when the hover /\n\t * pointerdown trigger fires. */\n\tprerender?: MaybeRefOrGetter<boolean | undefined>;\n};\n\n/**\n * Prefetch `href` when the returned handlers fire. Bind `element` as the\n * template ref of any element for viewport-triggered prefetching:\n *\n * const { element, onPointerenter, onPointerleave } = usePrefetch('/pricing');\n * <a href=\"/pricing\" :ref=\"element\" @pointerenter=\"onPointerenter\" …>\n *\n * Cross-origin, hash-only and empty hrefs are ignored, as is everything\n * when the user has data-saver on or the page set\n * `window.__ABSOLUTE_PREFETCH__ = false`.\n */\nexport const usePrefetch = (\n\thref: MaybeRefOrGetter<string | undefined>,\n\toptions: UsePrefetchOptions = {}\n) => {\n\tconst viewportKind = options.kind ?? 'document';\n\tconst triggerKind = options.kind ?? 'route';\n\tconst element: Ref<HTMLElement | null> = ref(null);\n\tlet hoverHandle: HoverPrefetchHandle | null = null;\n\n\tconst currentHref = () => toValue(href);\n\tconst currentMode = () =>\n\t\ttoValue(options.mode) ?? resolveDefaultPrefetchMode();\n\tconst shouldPrerender = () => toValue(options.prerender) === true;\n\n\tconst isActive = () => {\n\t\tconst target = currentHref();\n\t\tif (target === undefined || !isPrefetchableHref(target)) return false;\n\n\t\treturn currentMode() !== 'none';\n\t};\n\n\tconst cancelHover = () => {\n\t\thoverHandle?.cancel();\n\t\thoverHandle = null;\n\t};\n\n\tconst onPointerenter = () => {\n\t\tconst target = currentHref();\n\t\tif (target === undefined || !isActive()) return;\n\t\tcancelHover();\n\t\thoverHandle = scheduleHoverPrefetch(target, {\n\t\t\tkind: triggerKind,\n\t\t\tprerender: shouldPrerender()\n\t\t});\n\t};\n\n\tconst onPointerdown = () => {\n\t\tconst target = currentHref();\n\t\tif (target === undefined || !isActive()) return;\n\t\tcancelHover();\n\t\tprefetch(target, { kind: triggerKind });\n\t\tif (shouldPrerender()) speculate(target);\n\t};\n\n\tif (typeof window !== 'undefined') {\n\t\twatchEffect(\n\t\t\t(onCleanup) => {\n\t\t\t\tconst node = element.value;\n\t\t\t\tconst target = currentHref();\n\t\t\t\tif (!node || target === undefined || !isActive()) return;\n\t\t\t\tif (currentMode() !== 'viewport') return;\n\t\t\t\tonCleanup(\n\t\t\t\t\tobserveViewport(node, target, { kind: viewportKind })\n\t\t\t\t);\n\t\t\t},\n\t\t\t{ flush: 'post' }\n\t\t);\n\t}\n\n\tif (getCurrentScope()) onScopeDispose(cancelHover);\n\n\treturn {\n\t\telement,\n\t\tonBlur: cancelHover,\n\t\tonFocus: onPointerenter,\n\t\tonPointerdown,\n\t\tonPointerenter,\n\t\tonPointerleave: cancelHover\n\t};\n};\n"
30
30
  ],
31
- "mappings": "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",
32
- "debugId": "7F6BE8DA87FB7A6E64756E2164756E21",
31
+ "mappings": "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",
32
+ "debugId": "EF0F2169650E596F64756E2164756E21",
33
33
  "names": []
34
34
  }
package/dist/vue/index.js CHANGED
@@ -837,6 +837,8 @@ var colors2, frameworkColors, logTag = () => isDevelopmentRuntime() ? "[hmr]" :
837
837
  const pathColor = options.framework ? getFrameworkColor(options.framework) : colors2.white;
838
838
  message += ` ${pathColor}${formatPath(options.path)}${colors2.reset}`;
839
839
  }
840
+ if (options?.detail)
841
+ message += ` ${options.detail}`;
840
842
  if (options?.duration !== undefined) {
841
843
  message += ` ${colors2.dim}(${options.duration}ms)${colors2.reset}`;
842
844
  }
@@ -868,6 +870,16 @@ var colors2, frameworkColors, logTag = () => isDevelopmentRuntime() ? "[hmr]" :
868
870
  log(message);
869
871
  }, logPageBuild = (path, framework, duration) => {
870
872
  log("page build", { duration, framework, path });
873
+ }, logRoutesUpdate = (path, framework, added, removed) => {
874
+ const changes = [
875
+ ...added.map((route) => `${colors2.green}+${route}${colors2.reset}`),
876
+ ...removed.map((route) => `${colors2.red}-${route}${colors2.reset}`)
877
+ ];
878
+ log("routes update", {
879
+ detail: changes.length > 0 ? changes.join(" ") : undefined,
880
+ framework,
881
+ path
882
+ });
871
883
  }, logScriptUpdate = (path, framework, duration) => {
872
884
  log("script update", { duration, framework, path });
873
885
  }, logServerReload = () => {
@@ -904,7 +916,7 @@ var init_logger = __esm(() => {
904
916
  });
905
917
 
906
918
  // src/core/islandManifest.ts
907
- var ISLAND_BOOTSTRAP_MANIFEST_KEY = "AbsoluteIslandBootstrap", LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = "BootstrapClient", toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1), collectFrameworkIslands = (manifest, prefix) => {
919
+ var ISLAND_BOOTSTRAP_MANIFEST_KEY = "AbsoluteIslandBootstrap", LEGACY_ISLAND_BOOTSTRAP_MANIFEST_KEY = "BootstrapClient", REACT_PAGE_ROOT_EVENT = "absolute:react-page-root", toIslandFrameworkSegment = (framework) => framework[0]?.toUpperCase() + framework.slice(1), collectFrameworkIslands = (manifest, prefix) => {
908
920
  const entries = {};
909
921
  let found = false;
910
922
  for (const [key, value] of Object.entries(manifest)) {
@@ -978,13 +990,15 @@ var ISLAND_MARKER = 'data-island="true"', MANIFEST_MARKER = "__ABSOLUTE_MANIFEST
978
990
  return "";
979
991
  const renderedKeys = collectRenderedIslandStyleKeys(html);
980
992
  return getIslandStyleManifestEntries(manifest).filter(([key]) => renderedKeys.has(key)).filter(([, href]) => !html.includes(`href="${href}"`)).map(([key, href]) => `<link rel="stylesheet" href="${href}" data-island-style="${key}"${nonceAttr()}>`).join("");
981
- }, buildIslandsHeadMarkup = (manifest, html) => {
993
+ }, REACT_HOOK_STAND_IN, buildIslandsHeadMarkup = (manifest, html, host) => {
982
994
  const styleLinks = buildIslandStyleLinks(manifest, html);
983
995
  const manifestScript = `<script${nonceAttr()}>window.__ABSOLUTE_MANIFEST__ = ${escapeScriptContent(JSON.stringify(toBrowserManifest(manifest)))}</script>`;
984
- const islandStateScript = `<script${nonceAttr()}>window.__ABS_ISLAND_STATE__ = ${escapeScriptContent(JSON.stringify(globalThis.__ABS_ISLAND_STATE__ ?? {}))}</script>`;
996
+ const hostAssignment = host ? `;window.__ABS_ISLAND_HOST__ = ${JSON.stringify(host)}` : "";
997
+ const islandStateScript = `<script${nonceAttr()}>window.__ABS_ISLAND_STATE__ = ${escapeScriptContent(JSON.stringify(globalThis.__ABS_ISLAND_STATE__ ?? {}))}${hostAssignment}</script>`;
998
+ const reactHookScript = isProductionRuntime() ? "" : `<script${nonceAttr()}>${REACT_HOOK_STAND_IN}</script>`;
985
999
  const bootstrapPath = getIslandBootstrapPath(manifest);
986
1000
  const bootstrapScript = bootstrapPath ? `<script${nonceAttr()} type="module" src="${bootstrapPath}"></script>` : "";
987
- return `${styleLinks}${manifestScript}${islandStateScript}${bootstrapScript}`;
1001
+ return `${styleLinks}${manifestScript}${islandStateScript}${reactHookScript}${bootstrapScript}`;
988
1002
  }, injectHeadMarkup = (html, markup) => {
989
1003
  const closingHeadIndex = html.indexOf("</head>");
990
1004
  if (closingHeadIndex >= 0) {
@@ -1171,7 +1185,7 @@ var ISLAND_MARKER = 'data-island="true"', MANIFEST_MARKER = "__ABSOLUTE_MANIFEST
1171
1185
  const manifest = globalThis.__absoluteManifest;
1172
1186
  if (!manifest)
1173
1187
  return stream;
1174
- const markup = buildIslandsHeadMarkup(manifest);
1188
+ const markup = buildIslandsHeadMarkup(manifest, undefined, options?.host);
1175
1189
  if (options?.hasIslands === true) {
1176
1190
  warnIfBootstrapMissing(manifest);
1177
1191
  return pipeStreamWithHeadInjection(stream, markup);
@@ -1197,6 +1211,7 @@ var init_islandPageContext = __esm(() => {
1197
1211
  "vue",
1198
1212
  "angular"
1199
1213
  ];
1214
+ REACT_HOOK_STAND_IN = "if(!window.__REACT_DEVTOOLS_GLOBAL_HOOK__){var n=0;" + "window.__REACT_DEVTOOLS_GLOBAL_HOOK__={renderers:new Map(),supportsFiber:true," + "inject:function(r){n+=1;this.renderers.set(n,r);return n}," + "onScheduleFiberRoot:function(){},onCommitFiberRoot:function(){},onCommitFiberUnmount:function(){}}}";
1200
1215
  });
1201
1216
 
1202
1217
  // src/core/devRouteRegistrationCallsite.ts
@@ -7563,5 +7578,5 @@ export {
7563
7578
  useServerData
7564
7579
  };
7565
7580
 
7566
- //# debugId=9F5483EBA9A0E22964756E2164756E21
7581
+ //# debugId=FFAF290D59A1320F64756E2164756E21
7567
7582
  //# sourceMappingURL=index.js.map