@absolutejs/absolute 0.19.0-beta.808 → 0.19.0-beta.809

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 (260) hide show
  1. package/dist/angular/browser.js +9801 -57
  2. package/dist/angular/browser.js.map +246 -4
  3. package/dist/angular/components/core/streamingSlotRegistrar.js +1 -1
  4. package/dist/angular/components/core/streamingSlotRegistry.js +2 -2
  5. package/dist/angular/index.js +14877 -60
  6. package/dist/angular/index.js.map +281 -4
  7. package/dist/angular/server.js +5610 -45
  8. package/dist/angular/server.js.map +51 -3
  9. package/dist/build.js +18092 -45
  10. package/dist/build.js.map +99 -3
  11. package/dist/cli/index.js +317 -86
  12. package/dist/client/index.js +1100 -40
  13. package/dist/client/index.js.map +24 -4
  14. package/dist/core/streamingSlotRegistrar.js +108 -11
  15. package/dist/core/streamingSlotRegistrar.js.map +4 -3
  16. package/dist/core/streamingSlotRegistry.js +169 -7
  17. package/dist/core/streamingSlotRegistry.js.map +5 -3
  18. package/dist/index.js +19957 -547
  19. package/dist/index.js.map +116 -3
  20. package/dist/islands/browser.js +228 -9
  21. package/dist/islands/browser.js.map +9 -4
  22. package/dist/islands/index.js +1908 -17
  23. package/dist/islands/index.js.map +27 -3
  24. package/dist/react/browser.js +328 -12
  25. package/dist/react/browser.js.map +12 -4
  26. package/dist/react/components/index.js +167 -16
  27. package/dist/react/components/index.js.map +6 -3
  28. package/dist/react/hooks/index.js +183 -8
  29. package/dist/react/hooks/index.js.map +7 -3
  30. package/dist/react/index.js +3627 -36
  31. package/dist/react/index.js.map +45 -4
  32. package/dist/react/jsxDevRuntimeCompat.js +61 -2
  33. package/dist/react/jsxDevRuntimeCompat.js.map +2 -2
  34. package/dist/react/server.js +1789 -18
  35. package/dist/react/server.js.map +21 -3
  36. package/dist/src/angular/injectorPatch.d.ts +1 -0
  37. package/dist/src/index.d.ts +1 -0
  38. package/dist/svelte/browser.js +247 -12
  39. package/dist/svelte/browser.js.map +10 -3
  40. package/dist/svelte/index.js +3732 -37
  41. package/dist/svelte/index.js.map +47 -4
  42. package/dist/svelte/server.js +2794 -21
  43. package/dist/svelte/server.js.map +27 -3
  44. package/dist/vue/browser.js +348 -12
  45. package/dist/vue/browser.js.map +12 -4
  46. package/dist/vue/components/Image.js +240 -7
  47. package/dist/vue/components/Image.js.map +6 -3
  48. package/dist/vue/components/index.js +544 -11
  49. package/dist/vue/components/index.js.map +9 -3
  50. package/dist/vue/index.js +4212 -52
  51. package/dist/vue/index.js.map +50 -4
  52. package/dist/vue/server.js +1849 -18
  53. package/dist/vue/server.js.map +21 -3
  54. package/package.json +1 -1
  55. package/dist/chunk-0867j0r0.js +0 -136
  56. package/dist/chunk-0867j0r0.js.map +0 -10
  57. package/dist/chunk-0kdc6r16.js +0 -20
  58. package/dist/chunk-0kdc6r16.js.map +0 -10
  59. package/dist/chunk-102fp7xe.js +0 -63
  60. package/dist/chunk-102fp7xe.js.map +0 -10
  61. package/dist/chunk-11zpfqz6.js +0 -19
  62. package/dist/chunk-11zpfqz6.js.map +0 -10
  63. package/dist/chunk-1rfh7hw9.js +0 -319
  64. package/dist/chunk-1rfh7hw9.js.map +0 -11
  65. package/dist/chunk-25v9t56f.js +0 -29
  66. package/dist/chunk-25v9t56f.js.map +0 -11
  67. package/dist/chunk-2f21eenc.js +0 -21
  68. package/dist/chunk-2f21eenc.js.map +0 -10
  69. package/dist/chunk-2ga2znex.js +0 -13
  70. package/dist/chunk-2ga2znex.js.map +0 -9
  71. package/dist/chunk-30yrw0f6.js +0 -33
  72. package/dist/chunk-30yrw0f6.js.map +0 -10
  73. package/dist/chunk-38jwhqcw.js +0 -4410
  74. package/dist/chunk-38jwhqcw.js.map +0 -28
  75. package/dist/chunk-3g91wb4f.js +0 -358
  76. package/dist/chunk-3g91wb4f.js.map +0 -10
  77. package/dist/chunk-3yjzpcne.js +0 -34
  78. package/dist/chunk-3yjzpcne.js.map +0 -10
  79. package/dist/chunk-41bf6aqt.js +0 -17
  80. package/dist/chunk-41bf6aqt.js.map +0 -9
  81. package/dist/chunk-4d39r92n.js +0 -81
  82. package/dist/chunk-4d39r92n.js.map +0 -10
  83. package/dist/chunk-5003emhv.js +0 -17
  84. package/dist/chunk-5003emhv.js.map +0 -10
  85. package/dist/chunk-5f67rsed.js +0 -466
  86. package/dist/chunk-5f67rsed.js.map +0 -10
  87. package/dist/chunk-5fhp1jap.js +0 -9169
  88. package/dist/chunk-5fhp1jap.js.map +0 -236
  89. package/dist/chunk-6pdj08z3.js +0 -73
  90. package/dist/chunk-6pdj08z3.js.map +0 -12
  91. package/dist/chunk-6qjbrt0k.js +0 -13
  92. package/dist/chunk-6qjbrt0k.js.map +0 -9
  93. package/dist/chunk-6sccb4jr.js +0 -14
  94. package/dist/chunk-6sccb4jr.js.map +0 -9
  95. package/dist/chunk-798spvzv.js +0 -50
  96. package/dist/chunk-798spvzv.js.map +0 -10
  97. package/dist/chunk-7fw6x3js.js +0 -131
  98. package/dist/chunk-7fw6x3js.js.map +0 -11
  99. package/dist/chunk-7kjj42xm.js +0 -11
  100. package/dist/chunk-7kjj42xm.js.map +0 -10
  101. package/dist/chunk-7mtstdqn.js +0 -90
  102. package/dist/chunk-7mtstdqn.js.map +0 -10
  103. package/dist/chunk-851whwc7.js +0 -17
  104. package/dist/chunk-851whwc7.js.map +0 -10
  105. package/dist/chunk-85n68sy6.js +0 -103
  106. package/dist/chunk-85n68sy6.js.map +0 -10
  107. package/dist/chunk-8kcfffry.js +0 -35
  108. package/dist/chunk-8kcfffry.js.map +0 -10
  109. package/dist/chunk-8qqxc1h2.js +0 -426
  110. package/dist/chunk-8qqxc1h2.js.map +0 -14
  111. package/dist/chunk-92fsjfpp.js +0 -1731
  112. package/dist/chunk-92fsjfpp.js.map +0 -11
  113. package/dist/chunk-93sqk7be.js +0 -139
  114. package/dist/chunk-93sqk7be.js.map +0 -12
  115. package/dist/chunk-94gvx0hg.js +0 -28
  116. package/dist/chunk-94gvx0hg.js.map +0 -10
  117. package/dist/chunk-9c5tj4k3.js +0 -130
  118. package/dist/chunk-9c5tj4k3.js.map +0 -10
  119. package/dist/chunk-9ve9jq72.js +0 -203
  120. package/dist/chunk-9ve9jq72.js.map +0 -10
  121. package/dist/chunk-9xrsjeem.js +0 -12
  122. package/dist/chunk-9xrsjeem.js.map +0 -9
  123. package/dist/chunk-a9mvyp04.js +0 -87
  124. package/dist/chunk-a9mvyp04.js.map +0 -10
  125. package/dist/chunk-b3gbnrwe.js +0 -21
  126. package/dist/chunk-b3gbnrwe.js.map +0 -10
  127. package/dist/chunk-bmgqm774.js +0 -65
  128. package/dist/chunk-bmgqm774.js.map +0 -9
  129. package/dist/chunk-bxfghpma.js +0 -69
  130. package/dist/chunk-bxfghpma.js.map +0 -10
  131. package/dist/chunk-c1jfjnka.js +0 -74
  132. package/dist/chunk-c1jfjnka.js.map +0 -10
  133. package/dist/chunk-cbkrwmvh.js +0 -80
  134. package/dist/chunk-cbkrwmvh.js.map +0 -10
  135. package/dist/chunk-cdxd7sy2.js +0 -71
  136. package/dist/chunk-cdxd7sy2.js.map +0 -10
  137. package/dist/chunk-cg95827x.js +0 -21
  138. package/dist/chunk-cg95827x.js.map +0 -10
  139. package/dist/chunk-cm0g4q6w.js +0 -149
  140. package/dist/chunk-cm0g4q6w.js.map +0 -10
  141. package/dist/chunk-cwfy538a.js +0 -51
  142. package/dist/chunk-cwfy538a.js.map +0 -9
  143. package/dist/chunk-d7mwkzry.js +0 -261
  144. package/dist/chunk-d7mwkzry.js.map +0 -10
  145. package/dist/chunk-d8w0qm28.js +0 -184
  146. package/dist/chunk-d8w0qm28.js.map +0 -11
  147. package/dist/chunk-d9c0am65.js +0 -12
  148. package/dist/chunk-d9c0am65.js.map +0 -10
  149. package/dist/chunk-daqghmg8.js +0 -12
  150. package/dist/chunk-daqghmg8.js.map +0 -9
  151. package/dist/chunk-e3r9fxaa.js +0 -149
  152. package/dist/chunk-e3r9fxaa.js.map +0 -10
  153. package/dist/chunk-e8eecyrq.js +0 -244
  154. package/dist/chunk-e8eecyrq.js.map +0 -10
  155. package/dist/chunk-ex2hxe0v.js +0 -160
  156. package/dist/chunk-ex2hxe0v.js.map +0 -11
  157. package/dist/chunk-fak944et.js +0 -91
  158. package/dist/chunk-fak944et.js.map +0 -10
  159. package/dist/chunk-ff70rnhd.js +0 -672
  160. package/dist/chunk-ff70rnhd.js.map +0 -15
  161. package/dist/chunk-fygx2ymm.js +0 -118
  162. package/dist/chunk-fygx2ymm.js.map +0 -12
  163. package/dist/chunk-g15qj669.js +0 -271
  164. package/dist/chunk-g15qj669.js.map +0 -11
  165. package/dist/chunk-gd6wmknh.js +0 -121
  166. package/dist/chunk-gd6wmknh.js.map +0 -11
  167. package/dist/chunk-gf0ygptk.js +0 -85
  168. package/dist/chunk-gf0ygptk.js.map +0 -11
  169. package/dist/chunk-gytkmthr.js +0 -220
  170. package/dist/chunk-gytkmthr.js.map +0 -10
  171. package/dist/chunk-h5bbfn3n.js +0 -28
  172. package/dist/chunk-h5bbfn3n.js.map +0 -11
  173. package/dist/chunk-h6mye9r3.js +0 -93
  174. package/dist/chunk-h6mye9r3.js.map +0 -10
  175. package/dist/chunk-hcsmxw1v.js +0 -85
  176. package/dist/chunk-hcsmxw1v.js.map +0 -10
  177. package/dist/chunk-hyjs4bqs.js +0 -8
  178. package/dist/chunk-hyjs4bqs.js.map +0 -10
  179. package/dist/chunk-j88z31ep.js +0 -25
  180. package/dist/chunk-j88z31ep.js.map +0 -10
  181. package/dist/chunk-jn91vzkh.js +0 -66
  182. package/dist/chunk-jn91vzkh.js.map +0 -10
  183. package/dist/chunk-jpkjdgsk.js +0 -167
  184. package/dist/chunk-jpkjdgsk.js.map +0 -11
  185. package/dist/chunk-jwxt8gnp.js +0 -13
  186. package/dist/chunk-jwxt8gnp.js.map +0 -9
  187. package/dist/chunk-kk8w9rh5.js +0 -195
  188. package/dist/chunk-kk8w9rh5.js.map +0 -10
  189. package/dist/chunk-m97ze5hz.js +0 -46
  190. package/dist/chunk-m97ze5hz.js.map +0 -10
  191. package/dist/chunk-mbazhahf.js +0 -60
  192. package/dist/chunk-mbazhahf.js.map +0 -10
  193. package/dist/chunk-mgfwq18r.js +0 -15
  194. package/dist/chunk-mgfwq18r.js.map +0 -9
  195. package/dist/chunk-mtgf69xn.js +0 -88
  196. package/dist/chunk-mtgf69xn.js.map +0 -10
  197. package/dist/chunk-mtxzyxpg.js +0 -102
  198. package/dist/chunk-mtxzyxpg.js.map +0 -10
  199. package/dist/chunk-nehhtthw.js +0 -225
  200. package/dist/chunk-nehhtthw.js.map +0 -10
  201. package/dist/chunk-p5504p14.js +0 -16
  202. package/dist/chunk-p5504p14.js.map +0 -10
  203. package/dist/chunk-pnscgw95.js +0 -90
  204. package/dist/chunk-pnscgw95.js.map +0 -10
  205. package/dist/chunk-pvpp4pvs.js +0 -17
  206. package/dist/chunk-pvpp4pvs.js.map +0 -10
  207. package/dist/chunk-qh75agse.js +0 -95
  208. package/dist/chunk-qh75agse.js.map +0 -10
  209. package/dist/chunk-qxq2zcty.js +0 -52
  210. package/dist/chunk-qxq2zcty.js.map +0 -10
  211. package/dist/chunk-r6e8pytx.js +0 -22
  212. package/dist/chunk-r6e8pytx.js.map +0 -9
  213. package/dist/chunk-r7jmgqnw.js +0 -114
  214. package/dist/chunk-r7jmgqnw.js.map +0 -10
  215. package/dist/chunk-s6defjk2.js +0 -116
  216. package/dist/chunk-s6defjk2.js.map +0 -10
  217. package/dist/chunk-sd39p726.js +0 -619
  218. package/dist/chunk-sd39p726.js.map +0 -10
  219. package/dist/chunk-swrnzs4c.js +0 -63
  220. package/dist/chunk-swrnzs4c.js.map +0 -10
  221. package/dist/chunk-tfe3sb44.js +0 -33
  222. package/dist/chunk-tfe3sb44.js.map +0 -10
  223. package/dist/chunk-tjr0kcev.js +0 -41
  224. package/dist/chunk-tjr0kcev.js.map +0 -9
  225. package/dist/chunk-tx9edm1x.js +0 -34
  226. package/dist/chunk-tx9edm1x.js.map +0 -10
  227. package/dist/chunk-txhm2vb5.js +0 -18
  228. package/dist/chunk-txhm2vb5.js.map +0 -9
  229. package/dist/chunk-v5vmsxmy.js +0 -526
  230. package/dist/chunk-v5vmsxmy.js.map +0 -12
  231. package/dist/chunk-vjhxm8n2.js +0 -29
  232. package/dist/chunk-vjhxm8n2.js.map +0 -9
  233. package/dist/chunk-vkrpm7kc.js +0 -247
  234. package/dist/chunk-vkrpm7kc.js.map +0 -12
  235. package/dist/chunk-w3m4m5we.js +0 -4925
  236. package/dist/chunk-w3m4m5we.js.map +0 -12
  237. package/dist/chunk-wrxtn9ve.js +0 -18
  238. package/dist/chunk-wrxtn9ve.js.map +0 -10
  239. package/dist/chunk-wwzvp0zn.js +0 -192
  240. package/dist/chunk-wwzvp0zn.js.map +0 -10
  241. package/dist/chunk-x09cskqd.js +0 -377
  242. package/dist/chunk-x09cskqd.js.map +0 -10
  243. package/dist/chunk-xnt8c6h2.js +0 -576
  244. package/dist/chunk-xnt8c6h2.js.map +0 -10
  245. package/dist/chunk-xw0tx842.js +0 -13
  246. package/dist/chunk-xw0tx842.js.map +0 -9
  247. package/dist/chunk-xx5b6b9m.js +0 -69
  248. package/dist/chunk-xx5b6b9m.js.map +0 -10
  249. package/dist/chunk-xz1kdswj.js +0 -21
  250. package/dist/chunk-xz1kdswj.js.map +0 -9
  251. package/dist/chunk-y84qnsd3.js +0 -32
  252. package/dist/chunk-y84qnsd3.js.map +0 -10
  253. package/dist/chunk-ywjn0rad.js +0 -14
  254. package/dist/chunk-ywjn0rad.js.map +0 -9
  255. package/dist/chunk-z9nvhm6r.js +0 -13
  256. package/dist/chunk-z9nvhm6r.js.map +0 -9
  257. package/dist/chunk-zhmvdpk6.js +0 -15
  258. package/dist/chunk-zhmvdpk6.js.map +0 -9
  259. package/dist/chunk-zrg9d4zw.js +0 -784
  260. package/dist/chunk-zrg9d4zw.js.map +0 -10
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/build/generateManifest.ts"],
4
- "sourcesContent": [
5
- "import { extname } from 'node:path';\nimport type { BuildArtifact } from 'bun';\nimport { UNFOUND_INDEX } from '../constants';\nimport { getIslandManifestKey } from '../core/islandManifest';\nimport { logWarn } from '../utils/logger';\nimport { normalizePath } from '../utils/normalizePath';\nimport { toPascal } from '../utils/stringModifiers';\n\nconst getManifestKey = (\n\tfolder: string | undefined,\n\tpascalName: string,\n\tisClientComponent: boolean,\n\tisReact: boolean,\n\tisVue: boolean,\n\tisSvelte: boolean,\n\tisAngular: boolean\n) => {\n\tif (folder === 'indexes') return `${pascalName}Index`;\n\tif (isClientComponent) return `${pascalName}Client`;\n\tif (folder !== 'pages') return pascalName;\n\n\t// Only add \"Page\" suffix for React pages\n\t// Vue and Svelte pages use their base PascalCase name\n\tif (isReact) return `${pascalName}Page`;\n\tif (isVue || isSvelte || isAngular) return pascalName;\n\n\t// Default behavior for other frameworks\n\treturn `${pascalName}Page`;\n};\n\nconst getCssKey = (pascalName: string, segments: string[]) => {\n\tconst isFromVue = segments.some((seg) => seg === 'vue');\n\tif (isFromVue && segments.includes('css'))\n\t\treturn `${pascalName}CompiledCSS`;\n\n\tconst isFromReact = segments.some((seg) => seg === 'react');\n\tconst isFromSvelte = segments.some((seg) => seg === 'svelte');\n\tconst isFromAngular = segments.some((seg) => seg === 'angular');\n\tif (isFromReact || isFromVue || isFromSvelte || isFromAngular)\n\t\treturn `${pascalName}BundledCSS`;\n\n\treturn `${pascalName}CSS`;\n};\n\nconst getArtifactBaseName = (fileName: string, hash: string | null) => {\n\tconst ext = extname(fileName);\n\tconst stem = ext ? fileName.slice(0, -ext.length) : fileName;\n\tif (!hash) return stem;\n\n\tconst hashSuffix = `.${hash}`;\n\tif (stem.endsWith(hashSuffix)) return stem.slice(0, -hashSuffix.length);\n\n\treturn stem;\n};\n\nexport const generateManifest = (outputs: BuildArtifact[], buildPath: string) =>\n\toutputs.reduce<Record<string, string>>((manifest, artifact) => {\n\t\t// Normalize both paths for consistent comparison across platforms\n\t\tconst normalizedArtifactPath = normalizePath(artifact.path);\n\t\tconst normalizedBuildPath = normalizePath(buildPath);\n\n\t\tlet relative = normalizedArtifactPath.startsWith(normalizedBuildPath)\n\t\t\t? normalizedArtifactPath.slice(normalizedBuildPath.length)\n\t\t\t: normalizedArtifactPath;\n\t\trelative = relative.replace(/^\\/+/, '');\n\n\t\tconst segments = relative.split('/');\n\t\tconst fileWithHash = segments.pop();\n\t\tif (!fileWithHash) return manifest;\n\n\t\tconst baseName = getArtifactBaseName(fileWithHash, artifact.hash);\n\t\tif (!baseName) return manifest;\n\n\t\tconst pascalName = toPascal(baseName);\n\t\tconst ext = extname(fileWithHash);\n\t\tconst islandIndex = segments.findIndex((seg) => seg === 'islands');\n\n\t\tif (ext === '.css') {\n\t\t\t// Server bundles auto-emit a sibling .css for any CSS imported by\n\t\t\t// the SSR entry (Vue scoped styles, etc.). It's never linked from\n\t\t\t// HTML — the indexes-pass CSS is — so skip it to avoid clobbering\n\t\t\t// the same `${Page}BundledCSS` key.\n\t\t\tif (segments.includes('server')) return manifest;\n\n\t\t\t// Distinguish CSS from different sources to avoid key collisions.\n\t\t\t// CSS co-emitted from a JS bundle (e.g. CSS Modules) lives under a\n\t\t\t// framework path like react/generated/indexes/, while global\n\t\t\t// stylesheets from the styles directory land directly in indexes/.\n\t\t\t// Vue compiled SFC styles live in assets/css/.\n\t\t\tconst cssKey = getCssKey(pascalName, segments);\n\n\t\t\tif (manifest[cssKey] && manifest[cssKey] !== `/${relative}`)\n\t\t\t\tlogWarn(\n\t\t\t\t\t`Duplicate manifest key \"${cssKey}\" — \"${manifest[cssKey]}\" will be overwritten by \"/${relative}\". Use unique page names across frameworks.`\n\t\t\t\t);\n\n\t\t\tmanifest[cssKey] = `/${relative}`;\n\n\t\t\treturn manifest;\n\t\t}\n\n\t\tconst frameworkSegment =\n\t\t\tislandIndex > UNFOUND_INDEX ? segments[islandIndex + 1] : undefined;\n\t\tif (\n\t\t\tframeworkSegment === 'react' ||\n\t\t\tframeworkSegment === 'svelte' ||\n\t\t\tframeworkSegment === 'vue' ||\n\t\t\tframeworkSegment === 'angular'\n\t\t) {\n\t\t\tconst manifestKey = getIslandManifestKey(\n\t\t\t\tframeworkSegment,\n\t\t\t\tpascalName\n\t\t\t);\n\t\t\tmanifest[manifestKey] = `/${relative}`;\n\n\t\t\treturn manifest;\n\t\t}\n\n\t\tconst idx = segments.findIndex(\n\t\t\t(seg) => seg === 'indexes' || seg === 'pages' || seg === 'client'\n\t\t);\n\t\tconst folder = idx > UNFOUND_INDEX ? segments[idx] : segments[0];\n\n\t\t// Detect framework from path segments\n\t\tconst isReact = segments.some((seg) => seg === 'react');\n\t\tconst isVue = segments.some((seg) => seg === 'vue');\n\t\tconst isSvelte = segments.some((seg) => seg === 'svelte');\n\t\tconst isAngular = segments.some((seg) => seg === 'angular');\n\n\t\t// Check if this is a client component (for official HMR)\n\t\tconst isClientComponent = segments.includes('client');\n\n\t\tconst manifestKey = getManifestKey(\n\t\t\tfolder,\n\t\t\tpascalName,\n\t\t\tisClientComponent,\n\t\t\tisReact,\n\t\t\tisVue,\n\t\t\tisSvelte,\n\t\t\tisAngular\n\t\t);\n\t\tif (manifest[manifestKey] && manifest[manifestKey] !== `/${relative}`) {\n\t\t\tlogWarn(\n\t\t\t\t`Duplicate manifest key \"${manifestKey}\" — \"${manifest[manifestKey]}\" will be overwritten by \"/${relative}\". Use unique page names across frameworks.`\n\t\t\t);\n\t\t}\n\t\tmanifest[manifestKey] = `/${relative}`;\n\n\t\treturn manifest;\n\t}, {});\n"
6
- ],
7
- "mappings": "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",
8
- "debugId": "0A117CCD4566069A64756E2164756E21",
9
- "names": []
10
- }
@@ -1,225 +0,0 @@
1
- // @bun
2
- import"./chunk-bmgqm774.js";
3
-
4
- // src/core/prerender.ts
5
- import { mkdirSync, readFileSync } from "fs";
6
- import { join } from "path";
7
- var SERVER_OUTPUT_LIMIT = 4000;
8
- var STARTUP_POLL_INTERVAL_MS = 100;
9
- var DEFAULT_STARTUP_TIMEOUT_MS = 30000;
10
- var PRERENDER_BYPASS_HEADER = "X-Absolute-Prerender-Bypass";
11
- var routeToFilename = (route) => route === "/" ? "index.html" : `${route.slice(1).replace(/\//g, "-")}.html`;
12
- var writeTimestamp = async (htmlPath) => {
13
- const metaPath = htmlPath.replace(/\.html$/, ".meta");
14
- await Bun.write(metaPath, String(Date.now()));
15
- };
16
- var readTimestamp = (htmlPath) => {
17
- const metaPath = htmlPath.replace(/\.html$/, ".meta");
18
- try {
19
- const content = readFileSync(metaPath, "utf-8");
20
- return Number(content) || 0;
21
- } catch {
22
- return 0;
23
- }
24
- };
25
- var extractLinks = (html, visited) => {
26
- const links = [];
27
- const linkRegex = /href=["'](\/[^"']*?)["']/g;
28
- let match;
29
- while ((match = linkRegex.exec(html)) !== null) {
30
- const href = match[1] ?? "";
31
- if (!href || href.includes(".") || href.includes("#") || visited.has(href))
32
- continue;
33
- links.push(href);
34
- }
35
- return links;
36
- };
37
- var fetchRoute = async (baseUrl, path) => {
38
- const res = await fetch(`${baseUrl}${path}`, { redirect: "manual" });
39
- if (!res.ok)
40
- return null;
41
- const contentType = res.headers.get("content-type") ?? "";
42
- if (!contentType.includes("text/html"))
43
- return null;
44
- return res.text();
45
- };
46
- var crawlRoutes = async (baseUrl) => {
47
- const visited = new Set;
48
- const queue = ["/"];
49
- const routes = [];
50
- const crawlNextRoute = async () => {
51
- const path = queue.shift();
52
- if (!path) {
53
- return;
54
- }
55
- if (visited.has(path)) {
56
- await crawlNextRoute();
57
- return;
58
- }
59
- visited.add(path);
60
- const html = await fetchRoute(baseUrl, path).catch(() => null);
61
- if (!html) {
62
- await crawlNextRoute();
63
- return;
64
- }
65
- routes.push(path);
66
- queue.push(...extractLinks(html, visited));
67
- await crawlNextRoute();
68
- };
69
- await crawlNextRoute();
70
- return routes;
71
- };
72
- var rerenderRoute = async (route, port, prerenderDir) => {
73
- try {
74
- const res = await fetch(`http://localhost:${port}${route}`, {
75
- headers: { [PRERENDER_BYPASS_HEADER]: "1" },
76
- redirect: "manual"
77
- });
78
- if (!res.ok)
79
- return false;
80
- const html = await res.text();
81
- const fileName = routeToFilename(route);
82
- const filePath = join(prerenderDir, fileName);
83
- await Bun.write(filePath, html);
84
- await writeTimestamp(filePath);
85
- return true;
86
- } catch {
87
- return false;
88
- }
89
- };
90
- var prerenderRoute = async (baseUrl, route, prerenderDir, result, log) => {
91
- const res = await fetch(`${baseUrl}${route}`, {
92
- redirect: "manual"
93
- }).catch(() => null);
94
- if (!res) {
95
- log?.(` Failed to pre-render ${route}`);
96
- return;
97
- }
98
- if (!res.ok) {
99
- log?.(` Skipped ${route} (HTTP ${res.status})`);
100
- return;
101
- }
102
- const contentType = res.headers.get("content-type") ?? "";
103
- if (!contentType.includes("text/html")) {
104
- log?.(` Skipped ${route} (non-HTML response)`);
105
- return;
106
- }
107
- const html = await res.text();
108
- const fileName = routeToFilename(route);
109
- const filePath = join(prerenderDir, fileName);
110
- await Bun.write(filePath, html);
111
- await writeTimestamp(filePath);
112
- result.routes.set(route, filePath);
113
- log?.(` Pre-rendered ${route} \u2192 ${fileName} (${html.length} bytes)`);
114
- };
115
- var prerender = async (port, outDir, staticConfig, log) => {
116
- const prerenderDir = join(outDir, "_prerendered");
117
- mkdirSync(prerenderDir, { recursive: true });
118
- const baseUrl = `http://localhost:${port}`;
119
- let routes;
120
- if (staticConfig.routes === "all") {
121
- log?.("Crawling routes...");
122
- routes = await crawlRoutes(baseUrl);
123
- } else {
124
- ({ routes } = staticConfig);
125
- }
126
- const result = {
127
- dir: prerenderDir,
128
- routes: new Map
129
- };
130
- await routes.reduce((chain, route) => chain.then(() => prerenderRoute(baseUrl, route, prerenderDir, result, log)), Promise.resolve());
131
- return result;
132
- };
133
- var getStartupTimeoutMs = () => {
134
- const rawTimeout = Bun.env.ABSOLUTE_PRERENDER_STARTUP_TIMEOUT_MS;
135
- const parsedTimeout = rawTimeout ? Number(rawTimeout) : NaN;
136
- return Number.isFinite(parsedTimeout) && parsedTimeout > 0 ? parsedTimeout : DEFAULT_STARTUP_TIMEOUT_MS;
137
- };
138
- var waitForServerReady = async (port) => {
139
- const deadline = performance.now() + getStartupTimeoutMs();
140
- const pollServer = async () => {
141
- if (performance.now() >= deadline) {
142
- return false;
143
- }
144
- if (await probePrerenderServer(port)) {
145
- return true;
146
- }
147
- await Bun.sleep(STARTUP_POLL_INTERVAL_MS);
148
- return pollServer();
149
- };
150
- return pollServer();
151
- };
152
- var probePrerenderServer = async (port) => {
153
- const res = await fetch(`http://localhost:${port}/`).catch(() => null);
154
- if (!res) {
155
- return false;
156
- }
157
- await res.body?.cancel().catch(() => {
158
- return;
159
- });
160
- return true;
161
- };
162
- var captureStreamOutput = (stream, output) => {
163
- if (!stream)
164
- return;
165
- const reader = stream.getReader();
166
- const decoder = new TextDecoder;
167
- const read = () => {
168
- reader.read().then(({ done, value }) => {
169
- if (done) {
170
- return;
171
- }
172
- output.push(decoder.decode(value, { stream: true }));
173
- return read();
174
- }).catch(() => {});
175
- };
176
- read();
177
- };
178
- var formatServerOutput = (output) => {
179
- const text = output.join("").trim();
180
- if (!text)
181
- return "";
182
- return text.length > SERVER_OUTPUT_LIMIT ? text.slice(-SERVER_OUTPUT_LIMIT) : text;
183
- };
184
- var createServerStartupError = (output) => {
185
- const serverOutput = formatServerOutput(output);
186
- const message = serverOutput ? `Server failed to start for pre-rendering.
187
-
188
- Server output:
189
- ${serverOutput}` : "Server failed to start for pre-rendering";
190
- return new Error(message);
191
- };
192
- var prerenderWithServer = async (serverBundlePath, port, outDir, staticConfig, env, log) => {
193
- const serverOutput = [];
194
- const serverProcess = Bun.spawn(["bun", "run", serverBundlePath], {
195
- cwd: process.cwd(),
196
- env: { ...process.env, ...env, PORT: String(port) },
197
- stderr: "pipe",
198
- stdout: "pipe"
199
- });
200
- captureStreamOutput(serverProcess.stdout, serverOutput);
201
- captureStreamOutput(serverProcess.stderr, serverOutput);
202
- const ready = await waitForServerReady(port);
203
- if (!ready) {
204
- serverProcess.kill();
205
- await serverProcess.exited.catch(() => {
206
- return;
207
- });
208
- throw createServerStartupError(serverOutput);
209
- }
210
- const result = await prerender(port, outDir, staticConfig, log);
211
- serverProcess.kill();
212
- await serverProcess.exited;
213
- return result;
214
- };
215
- export {
216
- routeToFilename,
217
- rerenderRoute,
218
- readTimestamp,
219
- prerenderWithServer,
220
- prerender,
221
- PRERENDER_BYPASS_HEADER
222
- };
223
-
224
- //# debugId=5205CCA42BB54FF864756E2164756E21
225
- //# sourceMappingURL=chunk-nehhtthw.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/core/prerender.ts"],
4
- "sourcesContent": [
5
- "import { mkdirSync, readFileSync } from 'node:fs';\nimport { join } from 'node:path';\nimport type { StaticConfig } from '../../types/build';\n\nexport type PrerenderResult = {\n\t/** Map of route path → rendered HTML file path on disk */\n\troutes: Map<string, string>;\n\t/** Directory where pre-rendered files are stored */\n\tdir: string;\n};\n\ntype LogFn = (message: string) => void;\n\nconst SERVER_OUTPUT_LIMIT = 4000;\n\n/** Milliseconds between each startup readiness poll */\nconst STARTUP_POLL_INTERVAL_MS = 100;\n\n/** Default maximum time to wait for the prerender server to become ready. */\nconst DEFAULT_STARTUP_TIMEOUT_MS = 30_000;\n\n/** Header used to bypass the prerender cache during ISR re-renders */\nexport const PRERENDER_BYPASS_HEADER = 'X-Absolute-Prerender-Bypass';\n\n/** Convert a URL path to a filename: \"/\" → \"index.html\", \"/vue\" → \"vue.html\" */\nexport const routeToFilename = (route: string) =>\n\troute === '/' ? 'index.html' : `${route.slice(1).replace(/\\//g, '-')}.html`;\n\n/** Write a timestamp file alongside the pre-rendered HTML */\nconst writeTimestamp = async (htmlPath: string) => {\n\tconst metaPath = htmlPath.replace(/\\.html$/, '.meta');\n\tawait Bun.write(metaPath, String(Date.now()));\n};\n\n/** Read the render timestamp for a pre-rendered page. Returns 0 if not found. */\nexport const readTimestamp = (htmlPath: string) => {\n\tconst metaPath = htmlPath.replace(/\\.html$/, '.meta');\n\ttry {\n\t\tconst content = readFileSync(metaPath, 'utf-8');\n\n\t\treturn Number(content) || 0;\n\t} catch {\n\t\treturn 0;\n\t}\n};\n\n/** Extract internal <a href> links from an HTML string */\nconst extractLinks = (html: string, visited: Set<string>) => {\n\tconst links: string[] = [];\n\tconst linkRegex = /href=[\"'](\\/[^\"']*?)[\"']/g;\n\tlet match;\n\twhile ((match = linkRegex.exec(html)) !== null) {\n\t\tconst href = match[1] ?? '';\n\t\tif (\n\t\t\t!href ||\n\t\t\thref.includes('.') ||\n\t\t\thref.includes('#') ||\n\t\t\tvisited.has(href)\n\t\t)\n\t\t\tcontinue;\n\t\tlinks.push(href);\n\t}\n\n\treturn links;\n};\n\n/** Fetch a single route and return its HTML if it's a valid HTML page */\nconst fetchRoute = async (baseUrl: string, path: string) => {\n\tconst res = await fetch(`${baseUrl}${path}`, { redirect: 'manual' });\n\tif (!res.ok) return null;\n\n\tconst contentType = res.headers.get('content-type') ?? '';\n\tif (!contentType.includes('text/html')) return null;\n\n\treturn res.text();\n};\n\n/**\n * Crawl from \"/\" and discover all linked pages by following internal <a href> links.\n */\nconst crawlRoutes = async (baseUrl: string) => {\n\tconst visited = new Set<string>();\n\tconst queue: string[] = ['/'];\n\tconst routes: string[] = [];\n\n\tconst crawlNextRoute = async () => {\n\t\tconst path = queue.shift();\n\t\tif (!path) {\n\t\t\treturn;\n\t\t}\n\t\tif (visited.has(path)) {\n\t\t\tawait crawlNextRoute();\n\n\t\t\treturn;\n\t\t}\n\t\tvisited.add(path);\n\n\t\tconst html = await fetchRoute(baseUrl, path).catch(() => null);\n\t\tif (!html) {\n\t\t\tawait crawlNextRoute();\n\n\t\t\treturn;\n\t\t}\n\n\t\troutes.push(path);\n\t\tqueue.push(...extractLinks(html, visited));\n\t\tawait crawlNextRoute();\n\t};\n\n\tawait crawlNextRoute();\n\n\treturn routes;\n};\n\n/**\n * Re-render a single route by fetching it from the running server\n * with the bypass header so it hits SSR instead of the cache.\n */\nexport const rerenderRoute = async (\n\troute: string,\n\tport: number,\n\tprerenderDir: string\n) => {\n\ttry {\n\t\tconst res = await fetch(`http://localhost:${port}${route}`, {\n\t\t\theaders: { [PRERENDER_BYPASS_HEADER]: '1' },\n\t\t\tredirect: 'manual'\n\t\t});\n\t\tif (!res.ok) return false;\n\n\t\tconst html = await res.text();\n\t\tconst fileName = routeToFilename(route);\n\t\tconst filePath = join(prerenderDir, fileName);\n\t\tawait Bun.write(filePath, html);\n\t\tawait writeTimestamp(filePath);\n\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n};\n\n/** Fetch, render, and save a single route during pre-rendering */\nconst prerenderRoute = async (\n\tbaseUrl: string,\n\troute: string,\n\tprerenderDir: string,\n\tresult: PrerenderResult,\n\tlog?: LogFn\n) => {\n\tconst res = await fetch(`${baseUrl}${route}`, {\n\t\tredirect: 'manual'\n\t}).catch(() => null);\n\tif (!res) {\n\t\tlog?.(` Failed to pre-render ${route}`);\n\n\t\treturn;\n\t}\n\tif (!res.ok) {\n\t\tlog?.(` Skipped ${route} (HTTP ${res.status})`);\n\n\t\treturn;\n\t}\n\n\tconst contentType = res.headers.get('content-type') ?? '';\n\tif (!contentType.includes('text/html')) {\n\t\tlog?.(` Skipped ${route} (non-HTML response)`);\n\n\t\treturn;\n\t}\n\n\tconst html = await res.text();\n\tconst fileName = routeToFilename(route);\n\tconst filePath = join(prerenderDir, fileName);\n\tawait Bun.write(filePath, html);\n\tawait writeTimestamp(filePath);\n\tresult.routes.set(route, filePath);\n\n\tlog?.(` Pre-rendered ${route} → ${fileName} (${html.length} bytes)`);\n};\n\n/**\n * Pre-render routes by fetching them from a running server and saving the HTML to disk.\n *\n * Used by both `absolute start` (SSG) and `absolute compile`.\n */\nexport const prerender = async (\n\tport: number,\n\toutDir: string,\n\tstaticConfig: StaticConfig,\n\tlog?: LogFn\n) => {\n\tconst prerenderDir = join(outDir, '_prerendered');\n\tmkdirSync(prerenderDir, { recursive: true });\n\n\tconst baseUrl = `http://localhost:${port}`;\n\n\tlet routes: string[];\n\tif (staticConfig.routes === 'all') {\n\t\tlog?.('Crawling routes...');\n\t\troutes = await crawlRoutes(baseUrl);\n\t} else {\n\t\t({ routes } = staticConfig);\n\t}\n\n\tconst result: PrerenderResult = {\n\t\tdir: prerenderDir,\n\t\troutes: new Map()\n\t};\n\n\tawait routes.reduce(\n\t\t(chain, route) =>\n\t\t\tchain.then(() =>\n\t\t\t\tprerenderRoute(baseUrl, route, prerenderDir, result, log)\n\t\t\t),\n\t\tPromise.resolve()\n\t);\n\n\treturn result;\n};\n\nconst getStartupTimeoutMs = () => {\n\tconst rawTimeout = Bun.env.ABSOLUTE_PRERENDER_STARTUP_TIMEOUT_MS;\n\tconst parsedTimeout = rawTimeout ? Number(rawTimeout) : NaN;\n\n\treturn Number.isFinite(parsedTimeout) && parsedTimeout > 0\n\t\t? parsedTimeout\n\t\t: DEFAULT_STARTUP_TIMEOUT_MS;\n};\n\n/** Poll the server until it responds or startup timeout elapses */\nconst waitForServerReady = async (port: number) => {\n\tconst deadline = performance.now() + getStartupTimeoutMs();\n\tconst pollServer = async () => {\n\t\tif (performance.now() >= deadline) {\n\t\t\treturn false;\n\t\t}\n\t\tif (await probePrerenderServer(port)) {\n\t\t\treturn true;\n\t\t}\n\t\tawait Bun.sleep(STARTUP_POLL_INTERVAL_MS);\n\n\t\treturn pollServer();\n\t};\n\n\treturn pollServer();\n};\n\nconst probePrerenderServer = async (port: number) => {\n\tconst res = await fetch(`http://localhost:${port}/`).catch(() => null);\n\tif (!res) {\n\t\treturn false;\n\t}\n\n\tawait res.body?.cancel().catch(() => undefined);\n\n\treturn true;\n};\n\nconst captureStreamOutput = (\n\tstream: ReadableStream<Uint8Array> | null,\n\toutput: string[]\n) => {\n\tif (!stream) return;\n\n\tconst reader = stream.getReader();\n\tconst decoder = new TextDecoder();\n\tconst read = () => {\n\t\treader\n\t\t\t.read()\n\t\t\t.then(({ done, value }) => {\n\t\t\t\tif (done) {\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\toutput.push(decoder.decode(value, { stream: true }));\n\n\t\t\t\treturn read();\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\t/* best-effort diagnostics */\n\t\t\t});\n\t};\n\tread();\n};\n\nconst formatServerOutput = (output: string[]) => {\n\tconst text = output.join('').trim();\n\tif (!text) return '';\n\n\treturn text.length > SERVER_OUTPUT_LIMIT\n\t\t? text.slice(-SERVER_OUTPUT_LIMIT)\n\t\t: text;\n};\n\nconst createServerStartupError = (output: string[]) => {\n\tconst serverOutput = formatServerOutput(output);\n\tconst message = serverOutput\n\t\t? `Server failed to start for pre-rendering.\\n\\nServer output:\\n${serverOutput}`\n\t\t: 'Server failed to start for pre-rendering';\n\n\treturn new Error(message);\n};\n\n/**\n * Start the bundled production server, wait for it to be ready, pre-render,\n * then kill it.\n */\nexport const prerenderWithServer = async (\n\tserverBundlePath: string,\n\tport: number,\n\toutDir: string,\n\tstaticConfig: StaticConfig,\n\tenv: Record<string, string>,\n\tlog?: LogFn\n) => {\n\tconst serverOutput: string[] = [];\n\tconst serverProcess = Bun.spawn(['bun', 'run', serverBundlePath], {\n\t\tcwd: process.cwd(),\n\t\tenv: { ...process.env, ...env, PORT: String(port) },\n\t\tstderr: 'pipe',\n\t\tstdout: 'pipe'\n\t});\n\tcaptureStreamOutput(serverProcess.stdout, serverOutput);\n\tcaptureStreamOutput(serverProcess.stderr, serverOutput);\n\n\tconst ready = await waitForServerReady(port);\n\n\tif (!ready) {\n\t\tserverProcess.kill();\n\t\tawait serverProcess.exited.catch(() => undefined);\n\t\tthrow createServerStartupError(serverOutput);\n\t}\n\n\tconst result = await prerender(port, outDir, staticConfig, log);\n\n\tserverProcess.kill();\n\tawait serverProcess.exited;\n\n\treturn result;\n};\n"
6
- ],
7
- "mappings": "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",
8
- "debugId": "5205CCA42BB54FF864756E2164756E21",
9
- "names": []
10
- }
@@ -1,16 +0,0 @@
1
- // @bun
2
- // src/utils/stringModifiers.ts
3
- var normalizeSlug = (str) => str.trim().replace(/\s+/g, "-").replace(/[^A-Za-z0-9\-_]+/g, "").replace(/[-_]{2,}/g, "-");
4
- var toKebab = (str) => normalizeSlug(str).replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
5
- var toPascal = (str) => {
6
- if (!str.includes("-") && !str.includes("_")) {
7
- return str.charAt(0).toUpperCase() + str.slice(1);
8
- }
9
- return normalizeSlug(str).split(/[-_]/).filter(Boolean).map((segment) => segment.charAt(0).toUpperCase() + segment.slice(1).toLowerCase()).join("");
10
- };
11
- var toScreamingSnake = (str) => str.replace(/([a-z0-9])([A-Z])/g, "$1_$2").toUpperCase();
12
-
13
- export { toKebab, toPascal, toScreamingSnake };
14
-
15
- //# debugId=93E61FCF94E3B28D64756E2164756E21
16
- //# sourceMappingURL=chunk-p5504p14.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/utils/stringModifiers.ts"],
4
- "sourcesContent": [
5
- "const normalizeSlug = (str: string) =>\n\tstr\n\t\t.trim()\n\t\t.replace(/\\s+/g, '-')\n\t\t.replace(/[^A-Za-z0-9\\-_]+/g, '')\n\t\t.replace(/[-_]{2,}/g, '-');\n\nexport const toKebab = (str: string) =>\n\tnormalizeSlug(str)\n\t\t.replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n\t\t.toLowerCase();\nexport const toPascal = (str: string) => {\n\tif (!str.includes('-') && !str.includes('_')) {\n\t\treturn str.charAt(0).toUpperCase() + str.slice(1);\n\t}\n\n\treturn normalizeSlug(str)\n\t\t.split(/[-_]/)\n\t\t.filter(Boolean)\n\t\t.map(\n\t\t\t(segment) =>\n\t\t\t\tsegment.charAt(0).toUpperCase() + segment.slice(1).toLowerCase()\n\t\t)\n\t\t.join('');\n};\nexport const toScreamingSnake = (str: string) =>\n\tstr.replace(/([a-z0-9])([A-Z])/g, '$1_$2').toUpperCase();\n"
6
- ],
7
- "mappings": ";;AAAA,IAAM,gBAAgB,CAAC,QACtB,IACE,KAAK,EACL,QAAQ,QAAQ,GAAG,EACnB,QAAQ,qBAAqB,EAAE,EAC/B,QAAQ,aAAa,GAAG;AAEpB,IAAM,UAAU,CAAC,QACvB,cAAc,GAAG,EACf,QAAQ,sBAAsB,OAAO,EACrC,YAAY;AACR,IAAM,WAAW,CAAC,QAAgB;AAAA,EACxC,IAAI,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,SAAS,GAAG,GAAG;AAAA,IAC7C,OAAO,IAAI,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,MAAM,CAAC;AAAA,EACjD;AAAA,EAEA,OAAO,cAAc,GAAG,EACtB,MAAM,MAAM,EACZ,OAAO,OAAO,EACd,IACA,CAAC,YACA,QAAQ,OAAO,CAAC,EAAE,YAAY,IAAI,QAAQ,MAAM,CAAC,EAAE,YAAY,CACjE,EACC,KAAK,EAAE;AAAA;AAEH,IAAM,mBAAmB,CAAC,QAChC,IAAI,QAAQ,sBAAsB,OAAO,EAAE,YAAY;",
8
- "debugId": "93E61FCF94E3B28D64756E2164756E21",
9
- "names": []
10
- }
@@ -1,90 +0,0 @@
1
- // @bun
2
- // src/utils/registerClientScript.ts
3
- var scriptRegistry = new Map;
4
- var requestCounter = 0;
5
- var getRequestId = () => `req_${Date.now()}_${++requestCounter}`;
6
- var ssrContextGetter = null;
7
- var getSsrContextId = () => ssrContextGetter?.() || Object.getOwnPropertyDescriptor(globalThis, "__absolutejs_requestId")?.value;
8
- var registerClientScript = (script, requestId) => {
9
- const id = requestId || getSsrContextId() || getRequestId();
10
- if (!scriptRegistry.has(id)) {
11
- scriptRegistry.set(id, new Set);
12
- }
13
- scriptRegistry.get(id)?.add(script);
14
- return id;
15
- };
16
- var setSsrContextGetter = (getter) => {
17
- ssrContextGetter = getter;
18
- };
19
- if (typeof globalThis !== "undefined") {
20
- Object.assign(globalThis, { registerClientScript });
21
- }
22
- var clearAllClientScripts = () => {
23
- scriptRegistry.clear();
24
- };
25
- var generateClientScriptCode = (scripts) => {
26
- if (scripts.length === 0) {
27
- return "";
28
- }
29
- const scriptCode = scripts.map((script, index) => {
30
- const funcString = script.toString();
31
- const bodyMatch = funcString.match(/\{([\s\S]*)\}/);
32
- if (!bodyMatch || !bodyMatch[1]) {
33
- return "";
34
- }
35
- const body = bodyMatch[1].trim();
36
- return `
37
- (function() {
38
- var executed = false;
39
- function executeScript_${index}() {
40
- if (executed) return;
41
- executed = true;
42
- ${body}
43
- }
44
-
45
- if (document.readyState === 'complete' || document.readyState === 'interactive') {
46
- executeScript_${index}();
47
- } else {
48
- document.addEventListener('DOMContentLoaded', executeScript_${index});
49
- }
50
-
51
- // Watch for hydration-added elements
52
- var observer = new MutationObserver(function() {
53
- executeScript_${index}();
54
- if (executed) observer.disconnect();
55
- });
56
- if (!executed) {
57
- observer.observe(document.body || document.documentElement, { childList: true, subtree: true });
58
- }
59
-
60
- // Single fallback timeout
61
- setTimeout(function() {
62
- executeScript_${index}();
63
- observer.disconnect();
64
- }, 1000);
65
- })();`;
66
- }).join(`
67
- `);
68
- return `<script>
69
- (function() {
70
- ${scriptCode}
71
- })();
72
- </script>`;
73
- };
74
- var getAndClearClientScripts = (requestId) => {
75
- const id = requestId || ssrContextGetter?.();
76
- if (!id)
77
- return [];
78
- const scripts = scriptRegistry.get(id);
79
- if (!scripts) {
80
- return [];
81
- }
82
- const scriptArray = Array.from(scripts);
83
- scriptRegistry.delete(id);
84
- return scriptArray;
85
- };
86
-
87
- export { getSsrContextId, registerClientScript, setSsrContextGetter, clearAllClientScripts, generateClientScriptCode, getAndClearClientScripts };
88
-
89
- //# debugId=9DFF481135ABC22A64756E2164756E21
90
- //# sourceMappingURL=chunk-pnscgw95.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/utils/registerClientScript.ts"],
4
- "sourcesContent": [
5
- "/**\n * Utility for registering client-side scripts that need to run after Angular SSR hydration.\n *\n * This is necessary because Angular's lifecycle hooks don't always run reliably on the client\n * after SSR hydration, especially for event listeners attached to DOM elements.\n *\n * Usage in Angular components:\n * ```typescript\n * import { registerClientScript } from '@absolutejs/absolute';\n *\n * // Register an event listener script\n * registerClientScript(() => {\n * const element = document.querySelector('.my-element');\n * if (element) {\n * element.addEventListener('click', () => {\n * console.log('Clicked!');\n * });\n * }\n * });\n * ```\n *\n * The script will be automatically injected into the HTML response and executed on the client.\n */\n\n// Request-scoped registry for client scripts\n// Each request gets its own set of scripts to inject\nconst scriptRegistry = new Map<string, Set<() => void>>();\n\n// Generate a unique request ID for tracking scripts per request\nlet requestCounter = 0;\nconst getRequestId = () => `req_${Date.now()}_${++requestCounter}`;\n\n// Allow SSR frameworks to inject a request context getter (e.g. AsyncLocalStorage)\nlet ssrContextGetter: (() => string | undefined) | null = null;\nexport const getSsrContextId = () =>\n\tssrContextGetter?.() ||\n\tObject.getOwnPropertyDescriptor(globalThis, '__absolutejs_requestId')\n\t\t?.value;\nexport const registerClientScript = (\n\tscript: () => void,\n\trequestId?: string\n) => {\n\t// Try to get requestId from explicit arg, then Async Context, then global fallback\n\tconst id = requestId || getSsrContextId() || getRequestId();\n\n\tif (!scriptRegistry.has(id)) {\n\t\tscriptRegistry.set(id, new Set());\n\t}\n\n\tscriptRegistry.get(id)?.add(script);\n\n\treturn id;\n};\nexport const setSsrContextGetter = (getter: () => string | undefined) => {\n\tssrContextGetter = getter;\n};\n\n// Make registerClientScript available globally during SSR for Angular components\n// Using type assertion for globalThis extension\nif (typeof globalThis !== 'undefined') {\n\tObject.assign(globalThis, { registerClientScript });\n}\n\n/**\n * Get all registered scripts for a request and clear them.\n * This is called by the page handler after rendering.\n *\n * @param requestId - The request ID to get scripts for\n * @returns Array of script functions, or empty array if none registered\n */\nexport const clearAllClientScripts = () => {\n\tscriptRegistry.clear();\n};\nexport const generateClientScriptCode = (scripts: (() => void)[]) => {\n\tif (scripts.length === 0) {\n\t\treturn '';\n\t}\n\n\t// Convert functions to strings and wrap in IIFE\n\tconst scriptCode = scripts\n\t\t.map((script, index) => {\n\t\t\t// Get the function body as a string\n\t\t\tconst funcString = script.toString();\n\n\t\t\t// Extract the body (everything between { and })\n\t\t\tconst bodyMatch = funcString.match(/\\{([\\s\\S]*)\\}/);\n\t\t\tif (!bodyMatch || !bodyMatch[1]) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\tconst body = bodyMatch[1].trim();\n\n\t\t\t// Wrap in IIFE with MutationObserver for DOM readiness\n\t\t\treturn `\n\t(function() {\n\t\tvar executed = false;\n\t\tfunction executeScript_${index}() {\n\t\t\tif (executed) return;\n\t\t\texecuted = true;\n\t\t\t${body}\n\t\t}\n\n\t\tif (document.readyState === 'complete' || document.readyState === 'interactive') {\n\t\t\texecuteScript_${index}();\n\t\t} else {\n\t\t\tdocument.addEventListener('DOMContentLoaded', executeScript_${index});\n\t\t}\n\n\t\t// Watch for hydration-added elements\n\t\tvar observer = new MutationObserver(function() {\n\t\t\texecuteScript_${index}();\n\t\t\tif (executed) observer.disconnect();\n\t\t});\n\t\tif (!executed) {\n\t\t\tobserver.observe(document.body || document.documentElement, { childList: true, subtree: true });\n\t\t}\n\n\t\t// Single fallback timeout\n\t\tsetTimeout(function() {\n\t\t\texecuteScript_${index}();\n\t\t\tobserver.disconnect();\n\t\t}, 1000);\n\t})();`;\n\t\t})\n\t\t.join('\\n');\n\n\treturn `<script>\n(function() {\n${scriptCode}\n})();\n</script>`;\n};\nexport const getAndClearClientScripts = (requestId?: string) => {\n\tconst id = requestId || ssrContextGetter?.();\n\tif (!id) return [];\n\n\tconst scripts = scriptRegistry.get(id);\n\tif (!scripts) {\n\t\treturn [];\n\t}\n\n\tconst scriptArray = Array.from(scripts);\n\tscriptRegistry.delete(id);\n\n\treturn scriptArray;\n};\n"
6
- ],
7
- "mappings": ";;AA0BA,IAAM,iBAAiB,IAAI;AAG3B,IAAI,iBAAiB;AACrB,IAAM,eAAe,MAAM,OAAO,KAAK,IAAI,KAAK,EAAE;AAGlD,IAAI,mBAAsD;AACnD,IAAM,kBAAkB,MAC9B,mBAAmB,KACnB,OAAO,yBAAyB,YAAY,wBAAwB,GACjE;AACG,IAAM,uBAAuB,CACnC,QACA,cACI;AAAA,EAEJ,MAAM,KAAK,aAAa,gBAAgB,KAAK,aAAa;AAAA,EAE1D,IAAI,CAAC,eAAe,IAAI,EAAE,GAAG;AAAA,IAC5B,eAAe,IAAI,IAAI,IAAI,GAAK;AAAA,EACjC;AAAA,EAEA,eAAe,IAAI,EAAE,GAAG,IAAI,MAAM;AAAA,EAElC,OAAO;AAAA;AAED,IAAM,sBAAsB,CAAC,WAAqC;AAAA,EACxE,mBAAmB;AAAA;AAKpB,IAAI,OAAO,eAAe,aAAa;AAAA,EACtC,OAAO,OAAO,YAAY,EAAE,qBAAqB,CAAC;AACnD;AASO,IAAM,wBAAwB,MAAM;AAAA,EAC1C,eAAe,MAAM;AAAA;AAEf,IAAM,2BAA2B,CAAC,YAA4B;AAAA,EACpE,IAAI,QAAQ,WAAW,GAAG;AAAA,IACzB,OAAO;AAAA,EACR;AAAA,EAGA,MAAM,aAAa,QACjB,IAAI,CAAC,QAAQ,UAAU;AAAA,IAEvB,MAAM,aAAa,OAAO,SAAS;AAAA,IAGnC,MAAM,YAAY,WAAW,MAAM,eAAe;AAAA,IAClD,IAAI,CAAC,aAAa,CAAC,UAAU,IAAI;AAAA,MAChC,OAAO;AAAA,IACR;AAAA,IAEA,MAAM,OAAO,UAAU,GAAG,KAAK;AAAA,IAG/B,OAAO;AAAA;AAAA;AAAA,2BAGiB;AAAA;AAAA;AAAA,KAGtB;AAAA;AAAA;AAAA;AAAA,mBAIc;AAAA;AAAA,iEAE8C;AAAA;AAAA;AAAA;AAAA;AAAA,mBAK9C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBASA;AAAA;AAAA;AAAA;AAAA,GAIhB,EACA,KAAK;AAAA,CAAI;AAAA,EAEX,OAAO;AAAA;AAAA,EAEN;AAAA;AAAA;AAAA;AAIK,IAAM,2BAA2B,CAAC,cAAuB;AAAA,EAC/D,MAAM,KAAK,aAAa,mBAAmB;AAAA,EAC3C,IAAI,CAAC;AAAA,IAAI,OAAO,CAAC;AAAA,EAEjB,MAAM,UAAU,eAAe,IAAI,EAAE;AAAA,EACrC,IAAI,CAAC,SAAS;AAAA,IACb,OAAO,CAAC;AAAA,EACT;AAAA,EAEA,MAAM,cAAc,MAAM,KAAK,OAAO;AAAA,EACtC,eAAe,OAAO,EAAE;AAAA,EAExB,OAAO;AAAA;",
8
- "debugId": "9DFF481135ABC22A64756E2164756E21",
9
- "names": []
10
- }
@@ -1,17 +0,0 @@
1
- // @bun
2
- import {
3
- getIslandStoreServerSnapshot,
4
- readIslandStore,
5
- subscribeIslandStore
6
- } from "./chunk-fygx2ymm.js";
7
-
8
- // src/react/hooks/useIslandStore.ts
9
- import { useSyncExternalStore } from "react";
10
- var useIslandStore = (store, selector) => useSyncExternalStore((listener) => subscribeIslandStore(store, selector, () => {
11
- listener();
12
- }), () => readIslandStore(store, selector), () => getIslandStoreServerSnapshot(store, selector));
13
-
14
- export { useIslandStore };
15
-
16
- //# debugId=9AD9EB493DC2966664756E2164756E21
17
- //# sourceMappingURL=chunk-pvpp4pvs.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/react/hooks/useIslandStore.ts"],
4
- "sourcesContent": [
5
- "import { useSyncExternalStore } from 'react';\nimport type { StoreApi } from 'zustand/vanilla';\nimport {\n\tgetIslandStoreServerSnapshot,\n\treadIslandStore,\n\tsubscribeIslandStore,\n\ttype IslandStoreState\n} from '../../client/islandStore';\n\nexport const useIslandStore = <TState extends IslandStoreState, TSelected>(\n\tstore: StoreApi<TState>,\n\tselector: (state: TState) => TSelected\n) =>\n\tuseSyncExternalStore(\n\t\t(listener) =>\n\t\t\tsubscribeIslandStore(store, selector, () => {\n\t\t\t\tlistener();\n\t\t\t}),\n\t\t() => readIslandStore(store, selector),\n\t\t() => getIslandStoreServerSnapshot(store, selector)\n\t);\n"
6
- ],
7
- "mappings": ";;;;;;;;AAAA;AASO,IAAM,iBAAiB,CAC7B,OACA,aAEA,qBACC,CAAC,aACA,qBAAqB,OAAO,UAAU,MAAM;AAAA,EAC3C,SAAS;AAAA,CACT,GACF,MAAM,gBAAgB,OAAO,QAAQ,GACrC,MAAM,6BAA6B,OAAO,QAAQ,CACnD;",
8
- "debugId": "9AD9EB493DC2966664756E2164756E21",
9
- "names": []
10
- }
@@ -1,95 +0,0 @@
1
- // @bun
2
- // src/constants.ts
3
- var ANGULAR_INIT_TIMEOUT_MS = 500;
4
- var ANSI_ESCAPE_CODE = 27;
5
- var ANSI_ESCAPE_LENGTH = 3;
6
- var ASCII_SPACE = 32;
7
- var BASE_36_RADIX = 36;
8
- var BUN_BUILD_WARNING_SUPPRESSION = "wildcard sideEffects are not supported yet";
9
- var BODY_SLICE_LENGTH = 2000;
10
- var BYTES_PER_KILOBYTE = 1024;
11
- var CLI_ARGS_OFFSET = 3;
12
- var CSS_ERROR_RESOLVE_DELAY_MS = 50;
13
- var CSS_MAX_CHECK_ATTEMPTS = 10;
14
- var CSS_MAX_PARSE_TIMEOUT_MS = 500;
15
- var CSS_SHEET_READY_TIMEOUT_MS = 100;
16
- var DEFAULT_CHUNK_SIZE = 16384;
17
- var DEFAULT_DEBOUNCE_MS = 15;
18
- var DEFAULT_PORT = 3000;
19
- var DEV_SERVER_RESTART_DEBOUNCE_MS = 100;
20
- var DOM_UPDATE_DELAY_MS = 50;
21
- var FILE_PROTOCOL_PREFIX_LENGTH = 7;
22
- var FOCUS_ID_PREFIX_LENGTH = 3;
23
- var FOCUS_IDX_PREFIX_LENGTH = 4;
24
- var FOCUS_NAME_PREFIX_LENGTH = 5;
25
- var HMR_UPDATE_TIMEOUT_MS = 2000;
26
- var HOOK_SIGNATURE_LENGTH = 12;
27
- var EXCLUDE_LAST_OFFSET = -1;
28
- var HTTP_STATUS_OK = 200;
29
- var HTTP_STATUS_BAD_REQUEST = 400;
30
- var HTTP_STATUS_NOT_FOUND = 404;
31
- var HOURS_IN_DAY = 24;
32
- var HOURS_IN_HALF_DAY = 12;
33
- var IMAGE_DEFAULT_DEVICE_SIZES = [
34
- 640,
35
- 750,
36
- 828,
37
- 1080,
38
- 1200,
39
- 1920,
40
- 2048,
41
- 3840
42
- ];
43
- var IMAGE_DEFAULT_IMAGE_SIZES = [16, 32, 48, 64, 96, 128, 256, 384];
44
- var IMAGE_DEFAULT_QUALITY = 75;
45
- var IMAGE_GLOB_SUFFIX_LENGTH = 2;
46
- var MAX_ERROR_LENGTH = 200;
47
- var MAX_RECONNECT_ATTEMPTS = 60;
48
- var MILLISECONDS_IN_A_SECOND = 1000;
49
- var MINUTES_IN_AN_HOUR = 60;
50
- var SECONDS_IN_A_MINUTE = 60;
51
- var MILLISECONDS_IN_A_MINUTE = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;
52
- var MILLISECONDS_IN_A_DAY = MILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE * MINUTES_IN_AN_HOUR * HOURS_IN_DAY;
53
- var OVERLAY_FADE_DURATION_MS = 150;
54
- var PING_INTERVAL_MS = 30000;
55
- var RAF_BATCH_COUNT = 3;
56
- var RANDOM_ID_END_INDEX = 11;
57
- var REBUILD_BATCH_DELAY_MS = 10;
58
- var REBUILD_RELOAD_DELAY_MS = 200;
59
- var RECONNECT_INITIAL_DELAY_MS = 500;
60
- var RECONNECT_POLL_INTERVAL_MS = 300;
61
- var REACT_STREAM_SLOT_FAST_DELAY_MS = 5;
62
- var REACT_STREAM_SLOT_SLOW_DELAY_MS = 20;
63
- var SIGINT_EXIT_CODE = 130;
64
- var SIGTERM_EXIT_CODE = 143;
65
- var SVELTE_CSS_LOAD_TIMEOUT_MS = 500;
66
- var TIME_PRECISION = 2;
67
- var TWO_THIRDS = 2 / 3;
68
- var UNFOUND_INDEX = -1;
69
- var WEBSOCKET_NORMAL_CLOSURE = 1000;
70
- var WORKSPACE_COMMAND_ARGS_OFFSET = 3;
71
- var WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30;
72
- var WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60;
73
- var WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5000;
74
- var WORKSPACE_READY_PROBE_INTERVAL_MS = 250;
75
- var WORKSPACE_READY_TIMEOUT_MS = 30000;
76
- var WORKSPACE_SHUTDOWN_TIMEOUT_MS = 1e4;
77
- var WORKSPACE_TUI_DEFAULT_HEIGHT = 28;
78
- var WORKSPACE_TUI_DEFAULT_WIDTH = 100;
79
- var WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30;
80
- var WORKSPACE_TUI_FOOTER_LINE_COUNT = 3;
81
- var WORKSPACE_TUI_MIN_LOG_HEIGHT = 3;
82
- var WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7;
83
- var WORKSPACE_TUI_MIN_TARGET_WIDTH = 8;
84
- var WORKSPACE_TUI_MIN_WRAP_WIDTH = 12;
85
- var WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3;
86
- var WORKSPACE_TUI_RECENT_LOG_LIMIT = 40;
87
- var WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16;
88
- var WORKSPACE_TUI_STATUS_WIDTH = 10;
89
- var WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6;
90
- var WORKSPACE_TUI_VISIBILITY_WIDTH = 8;
91
-
92
- export { ANGULAR_INIT_TIMEOUT_MS, ANSI_ESCAPE_CODE, ANSI_ESCAPE_LENGTH, ASCII_SPACE, BASE_36_RADIX, BUN_BUILD_WARNING_SUPPRESSION, BODY_SLICE_LENGTH, BYTES_PER_KILOBYTE, CLI_ARGS_OFFSET, CSS_ERROR_RESOLVE_DELAY_MS, CSS_MAX_CHECK_ATTEMPTS, CSS_MAX_PARSE_TIMEOUT_MS, CSS_SHEET_READY_TIMEOUT_MS, DEFAULT_CHUNK_SIZE, DEFAULT_DEBOUNCE_MS, DEFAULT_PORT, DEV_SERVER_RESTART_DEBOUNCE_MS, DOM_UPDATE_DELAY_MS, FILE_PROTOCOL_PREFIX_LENGTH, FOCUS_ID_PREFIX_LENGTH, FOCUS_IDX_PREFIX_LENGTH, FOCUS_NAME_PREFIX_LENGTH, HMR_UPDATE_TIMEOUT_MS, HOOK_SIGNATURE_LENGTH, EXCLUDE_LAST_OFFSET, HTTP_STATUS_OK, HTTP_STATUS_BAD_REQUEST, HTTP_STATUS_NOT_FOUND, HOURS_IN_DAY, HOURS_IN_HALF_DAY, IMAGE_DEFAULT_DEVICE_SIZES, IMAGE_DEFAULT_IMAGE_SIZES, IMAGE_DEFAULT_QUALITY, IMAGE_GLOB_SUFFIX_LENGTH, MAX_ERROR_LENGTH, MAX_RECONNECT_ATTEMPTS, MILLISECONDS_IN_A_SECOND, MINUTES_IN_AN_HOUR, SECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_MINUTE, MILLISECONDS_IN_A_DAY, OVERLAY_FADE_DURATION_MS, PING_INTERVAL_MS, RAF_BATCH_COUNT, RANDOM_ID_END_INDEX, REBUILD_BATCH_DELAY_MS, REBUILD_RELOAD_DELAY_MS, RECONNECT_INITIAL_DELAY_MS, RECONNECT_POLL_INTERVAL_MS, REACT_STREAM_SLOT_FAST_DELAY_MS, REACT_STREAM_SLOT_SLOW_DELAY_MS, SIGINT_EXIT_CODE, SIGTERM_EXIT_CODE, SVELTE_CSS_LOAD_TIMEOUT_MS, TIME_PRECISION, TWO_THIRDS, UNFOUND_INDEX, WEBSOCKET_NORMAL_CLOSURE, WORKSPACE_COMMAND_ARGS_OFFSET, WORKSPACE_FAILURE_LOG_PRINT_LIMIT, WORKSPACE_FAILURE_RECENT_LOG_LIMIT, WORKSPACE_READY_ATTEMPT_TIMEOUT_MS, WORKSPACE_READY_PROBE_INTERVAL_MS, WORKSPACE_READY_TIMEOUT_MS, WORKSPACE_SHUTDOWN_TIMEOUT_MS, WORKSPACE_TUI_DEFAULT_HEIGHT, WORKSPACE_TUI_DEFAULT_WIDTH, WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS, WORKSPACE_TUI_FOOTER_LINE_COUNT, WORKSPACE_TUI_MIN_LOG_HEIGHT, WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH, WORKSPACE_TUI_MIN_TARGET_WIDTH, WORKSPACE_TUI_MIN_WRAP_WIDTH, WORKSPACE_TUI_PROMPT_CURSOR_OFFSET, WORKSPACE_TUI_RECENT_LOG_LIMIT, WORKSPACE_TUI_RENDER_DEBOUNCE_MS, WORKSPACE_TUI_STATUS_WIDTH, WORKSPACE_TUI_TARGET_PADDING_WIDTH, WORKSPACE_TUI_VISIBILITY_WIDTH };
93
-
94
- //# debugId=184C612842E6A07D64756E2164756E21
95
- //# sourceMappingURL=chunk-qh75agse.js.map
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/constants.ts"],
4
- "sourcesContent": [
5
- "export const ANGULAR_INIT_TIMEOUT_MS = 500;\nexport const ANSI_ESCAPE_CODE = 27;\nexport const ANSI_ESCAPE_LENGTH = 3;\nexport const ASCII_SPACE = 32;\nexport const BASE_36_RADIX = 36;\nexport const BUN_BUILD_WARNING_SUPPRESSION =\n\t'wildcard sideEffects are not supported yet';\nexport const BODY_SLICE_LENGTH = 2000;\nexport const BYTES_PER_KILOBYTE = 1024;\nexport const CLI_ARGS_OFFSET = 3;\nexport const CSS_ERROR_RESOLVE_DELAY_MS = 50;\nexport const CSS_MAX_CHECK_ATTEMPTS = 10;\nexport const CSS_MAX_PARSE_TIMEOUT_MS = 500;\nexport const CSS_SHEET_READY_TIMEOUT_MS = 100;\nexport const DEFAULT_CHUNK_SIZE = 16_384;\nexport const DEFAULT_DEBOUNCE_MS = 15;\nexport const DEFAULT_PORT = 3000;\nexport const DEV_SERVER_RESTART_DEBOUNCE_MS = 100;\nexport const DOM_UPDATE_DELAY_MS = 50;\nexport const FILE_PROTOCOL_PREFIX_LENGTH = 7;\nexport const FOCUS_ID_PREFIX_LENGTH = 3;\nexport const FOCUS_IDX_PREFIX_LENGTH = 4;\nexport const FOCUS_NAME_PREFIX_LENGTH = 5;\nexport const HMR_UPDATE_TIMEOUT_MS = 2000;\nexport const HOOK_SIGNATURE_LENGTH = 12;\nexport const EXCLUDE_LAST_OFFSET = -1;\nexport const HTTP_STATUS_OK = 200;\nexport const HTTP_STATUS_BAD_REQUEST = 400;\nexport const HTTP_STATUS_NOT_FOUND = 404;\nexport const HOURS_IN_DAY = 24;\nexport const HOURS_IN_HALF_DAY = 12;\nexport const IMAGE_DEFAULT_DEVICE_SIZES = [\n\t640, 750, 828, 1080, 1200, 1920, 2048, 3840\n];\nexport const IMAGE_DEFAULT_IMAGE_SIZES = [16, 32, 48, 64, 96, 128, 256, 384];\nexport const IMAGE_DEFAULT_QUALITY = 75;\nexport const IMAGE_GLOB_SUFFIX_LENGTH = 2;\nexport const MAX_ERROR_LENGTH = 200;\nexport const MAX_RECONNECT_ATTEMPTS = 60;\nexport const MILLISECONDS_IN_A_SECOND = 1000;\nexport const MINUTES_IN_AN_HOUR = 60;\nexport const SECONDS_IN_A_MINUTE = 60;\nexport const MILLISECONDS_IN_A_MINUTE =\n\tMILLISECONDS_IN_A_SECOND * SECONDS_IN_A_MINUTE;\nexport const MILLISECONDS_IN_A_DAY =\n\tMILLISECONDS_IN_A_SECOND *\n\tSECONDS_IN_A_MINUTE *\n\tMINUTES_IN_AN_HOUR *\n\tHOURS_IN_DAY;\nexport const OVERLAY_FADE_DURATION_MS = 150;\nexport const PING_INTERVAL_MS = 30_000;\nexport const RAF_BATCH_COUNT = 3;\nexport const RANDOM_ID_END_INDEX = 11;\nexport const REBUILD_BATCH_DELAY_MS = 10;\nexport const REBUILD_RELOAD_DELAY_MS = 200;\nexport const RECONNECT_INITIAL_DELAY_MS = 500;\nexport const RECONNECT_POLL_INTERVAL_MS = 300;\nexport const REACT_STREAM_SLOT_FAST_DELAY_MS = 5;\nexport const REACT_STREAM_SLOT_SLOW_DELAY_MS = 20;\nexport const SIGINT_EXIT_CODE = 130;\nexport const SIGTERM_EXIT_CODE = 143;\nexport const SVELTE_CSS_LOAD_TIMEOUT_MS = 500;\nexport const TIME_PRECISION = 2;\nexport const TWO_THIRDS = 2 / 3;\nexport const UNFOUND_INDEX = -1;\nexport const WEBSOCKET_NORMAL_CLOSURE = 1000;\nexport const WORKSPACE_COMMAND_ARGS_OFFSET = 3;\nexport const WORKSPACE_FAILURE_LOG_PRINT_LIMIT = 30;\nexport const WORKSPACE_FAILURE_RECENT_LOG_LIMIT = 60;\nexport const WORKSPACE_READY_ATTEMPT_TIMEOUT_MS = 5_000;\nexport const WORKSPACE_READY_PROBE_INTERVAL_MS = 250;\nexport const WORKSPACE_READY_TIMEOUT_MS = 30_000;\nexport const WORKSPACE_SHUTDOWN_TIMEOUT_MS = 10_000;\nexport const WORKSPACE_TUI_DEFAULT_HEIGHT = 28;\nexport const WORKSPACE_TUI_DEFAULT_WIDTH = 100;\nexport const WORKSPACE_TUI_ESCAPE_SEQUENCE_TIMEOUT_MS = 30;\nexport const WORKSPACE_TUI_FOOTER_LINE_COUNT = 3;\nexport const WORKSPACE_TUI_MIN_LOG_HEIGHT = 3;\nexport const WORKSPACE_TUI_MIN_SERVICE_NAME_WIDTH = 7;\nexport const WORKSPACE_TUI_MIN_TARGET_WIDTH = 8;\nexport const WORKSPACE_TUI_MIN_WRAP_WIDTH = 12;\nexport const WORKSPACE_TUI_PROMPT_CURSOR_OFFSET = 3;\nexport const WORKSPACE_TUI_RECENT_LOG_LIMIT = 40;\nexport const WORKSPACE_TUI_RENDER_DEBOUNCE_MS = 16;\nexport const WORKSPACE_TUI_STATUS_WIDTH = 10;\nexport const WORKSPACE_TUI_TARGET_PADDING_WIDTH = 6;\nexport const WORKSPACE_TUI_VISIBILITY_WIDTH = 8;\n"
6
- ],
7
- "mappings": ";;AAAO,IAAM,0BAA0B;AAChC,IAAM,mBAAmB;AACzB,IAAM,qBAAqB;AAC3B,IAAM,cAAc;AACpB,IAAM,gBAAgB;AACtB,IAAM,gCACZ;AACM,IAAM,oBAAoB;AAC1B,IAAM,qBAAqB;AAC3B,IAAM,kBAAkB;AACxB,IAAM,6BAA6B;AACnC,IAAM,yBAAyB;AAC/B,IAAM,2BAA2B;AACjC,IAAM,6BAA6B;AACnC,IAAM,qBAAqB;AAC3B,IAAM,sBAAsB;AAC5B,IAAM,eAAe;AACrB,IAAM,iCAAiC;AACvC,IAAM,sBAAsB;AAC5B,IAAM,8BAA8B;AACpC,IAAM,yBAAyB;AAC/B,IAAM,0BAA0B;AAChC,IAAM,2BAA2B;AACjC,IAAM,wBAAwB;AAC9B,IAAM,wBAAwB;AAC9B,IAAM,sBAAsB;AAC5B,IAAM,iBAAiB;AACvB,IAAM,0BAA0B;AAChC,IAAM,wBAAwB;AAC9B,IAAM,eAAe;AACrB,IAAM,oBAAoB;AAC1B,IAAM,6BAA6B;AAAA,EACzC;AAAA,EAAK;AAAA,EAAK;AAAA,EAAK;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AAAA,EAAM;AACxC;AACO,IAAM,4BAA4B,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,GAAG;AACpE,IAAM,wBAAwB;AAC9B,IAAM,2BAA2B;AACjC,IAAM,mBAAmB;AACzB,IAAM,yBAAyB;AAC/B,IAAM,2BAA2B;AACjC,IAAM,qBAAqB;AAC3B,IAAM,sBAAsB;AAC5B,IAAM,2BACZ,2BAA2B;AACrB,IAAM,wBACZ,2BACA,sBACA,qBACA;AACM,IAAM,2BAA2B;AACjC,IAAM,mBAAmB;AACzB,IAAM,kBAAkB;AACxB,IAAM,sBAAsB;AAC5B,IAAM,yBAAyB;AAC/B,IAAM,0BAA0B;AAChC,IAAM,6BAA6B;AACnC,IAAM,6BAA6B;AACnC,IAAM,kCAAkC;AACxC,IAAM,kCAAkC;AACxC,IAAM,mBAAmB;AACzB,IAAM,oBAAoB;AAC1B,IAAM,6BAA6B;AACnC,IAAM,iBAAiB;AACvB,IAAM,aAAa,IAAI;AACvB,IAAM,gBAAgB;AACtB,IAAM,2BAA2B;AACjC,IAAM,gCAAgC;AACtC,IAAM,oCAAoC;AAC1C,IAAM,qCAAqC;AAC3C,IAAM,qCAAqC;AAC3C,IAAM,oCAAoC;AAC1C,IAAM,6BAA6B;AACnC,IAAM,gCAAgC;AACtC,IAAM,+BAA+B;AACrC,IAAM,8BAA8B;AACpC,IAAM,2CAA2C;AACjD,IAAM,kCAAkC;AACxC,IAAM,+BAA+B;AACrC,IAAM,uCAAuC;AAC7C,IAAM,iCAAiC;AACvC,IAAM,+BAA+B;AACrC,IAAM,qCAAqC;AAC3C,IAAM,iCAAiC;AACvC,IAAM,mCAAmC;AACzC,IAAM,6BAA6B;AACnC,IAAM,qCAAqC;AAC3C,IAAM,iCAAiC;",
8
- "debugId": "184C612842E6A07D64756E2164756E21",
9
- "names": []
10
- }
@@ -1,52 +0,0 @@
1
- // @bun
2
- // src/core/streamingSlotRegistrar.ts
3
- var STREAMING_SLOT_REGISTRAR_KEY = Symbol.for("absolutejs.streamingSlotRegistrar");
4
- var STREAMING_SLOT_WARNING_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotWarningController");
5
- var STREAMING_SLOT_COLLECTION_STORAGE_KEY = Symbol.for("absolutejs.streamingSlotCollectionController");
6
- var getRegisteredStreamingSlotRegistrar = () => {
7
- const value = Reflect.get(globalThis, STREAMING_SLOT_REGISTRAR_KEY);
8
- if (typeof value === "function" || value === null) {
9
- return value;
10
- }
11
- return;
12
- };
13
- var isObjectRecord = (value) => Boolean(value) && typeof value === "object";
14
- var isStreamingSlotWarningController = (value) => isObjectRecord(value) && ("maybeWarn" in value) && typeof value.maybeWarn === "function";
15
- var isStreamingSlotCollectionController = (value) => isObjectRecord(value) && ("isCollecting" in value) && typeof value.isCollecting === "function";
16
- var getWarningController = () => {
17
- const value = Reflect.get(globalThis, STREAMING_SLOT_WARNING_STORAGE_KEY);
18
- if (value === null || typeof value === "undefined")
19
- return;
20
- return isStreamingSlotWarningController(value) ? value : undefined;
21
- };
22
- var getCollectionController = () => {
23
- const value = Reflect.get(globalThis, STREAMING_SLOT_COLLECTION_STORAGE_KEY);
24
- if (value === null || typeof value === "undefined")
25
- return;
26
- return isStreamingSlotCollectionController(value) ? value : undefined;
27
- };
28
- var hasRegisteredStreamingSlotRegistrar = () => typeof getRegisteredStreamingSlotRegistrar() === "function";
29
- var isStreamingSlotCollectionActive = () => getCollectionController()?.isCollecting() === true;
30
- var registerStreamingSlot = (slot) => {
31
- getRegisteredStreamingSlotRegistrar()?.(slot);
32
- };
33
- var setStreamingSlotCollectionController = (controller) => {
34
- Reflect.set(globalThis, STREAMING_SLOT_COLLECTION_STORAGE_KEY, controller);
35
- };
36
- var setStreamingSlotRegistrar = (nextRegistrar) => {
37
- Reflect.set(globalThis, STREAMING_SLOT_REGISTRAR_KEY, nextRegistrar);
38
- };
39
- var setStreamingSlotWarningController = (controller) => {
40
- Reflect.set(globalThis, STREAMING_SLOT_WARNING_STORAGE_KEY, controller);
41
- };
42
- var warnMissingStreamingSlotCollector = (primitiveName) => {
43
- if (isStreamingSlotCollectionActive()) {
44
- return;
45
- }
46
- getWarningController()?.maybeWarn(primitiveName);
47
- };
48
-
49
- export { hasRegisteredStreamingSlotRegistrar, isStreamingSlotCollectionActive, registerStreamingSlot, setStreamingSlotCollectionController, setStreamingSlotRegistrar, setStreamingSlotWarningController, warnMissingStreamingSlotCollector };
50
-
51
- //# debugId=79F187447613D38864756E2164756E21
52
- //# sourceMappingURL=chunk-qxq2zcty.js.map