@ogygia/core 0.0.0 → 0.11.1

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 (548) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +7 -1
  3. package/ambient.d.ts +194 -0
  4. package/dist/ClientBindingStub.svelte +6 -0
  5. package/dist/ClientBindingStub.svelte.d.ts +26 -0
  6. package/dist/KeepHost.svelte +19 -0
  7. package/dist/KeepHost.svelte.d.ts +10 -0
  8. package/dist/LakeBoundary.svelte +16 -0
  9. package/dist/LakeBoundary.svelte.d.ts +11 -0
  10. package/dist/LateIsland.svelte +22 -0
  11. package/dist/LateIsland.svelte.d.ts +15 -0
  12. package/dist/LateIslandAwait.svelte +17 -0
  13. package/dist/LateIslandAwait.svelte.d.ts +15 -0
  14. package/dist/LiveHost.svelte +19 -0
  15. package/dist/LiveHost.svelte.d.ts +10 -0
  16. package/dist/NestedProvider.svelte +13 -0
  17. package/dist/NestedProvider.svelte.d.ts +8 -0
  18. package/dist/OgygiaBoundary.svelte +5 -0
  19. package/dist/OgygiaBoundary.svelte.d.ts +17 -0
  20. package/dist/PromiseRegion.svelte +40 -0
  21. package/dist/PromiseRegion.svelte.d.ts +15 -0
  22. package/dist/PromiseRegionAwait.svelte +27 -0
  23. package/dist/PromiseRegionAwait.svelte.d.ts +15 -0
  24. package/dist/Provide.svelte +27 -0
  25. package/dist/Provide.svelte.d.ts +8 -0
  26. package/dist/RawHtml.svelte +9 -0
  27. package/dist/RawHtml.svelte.d.ts +6 -0
  28. package/dist/Region.svelte +1173 -0
  29. package/dist/Region.svelte.d.ts +68 -0
  30. package/dist/SlotBoundary.svelte +13 -0
  31. package/dist/SlotBoundary.svelte.d.ts +7 -0
  32. package/dist/app.d.ts +4 -0
  33. package/dist/app.js +3 -0
  34. package/dist/boundary.d.ts +35 -0
  35. package/dist/boundary.js +127 -0
  36. package/dist/build-cache.d.ts +13 -0
  37. package/dist/build-cache.js +77 -0
  38. package/dist/compiler/blank-styles.d.ts +1 -0
  39. package/dist/compiler/blank-styles.js +63 -0
  40. package/dist/compiler/bom.d.ts +2 -0
  41. package/dist/compiler/bom.js +15 -0
  42. package/dist/compiler/browser-full.d.ts +8 -0
  43. package/dist/compiler/browser-full.js +8 -0
  44. package/dist/compiler/browser.d.ts +11 -0
  45. package/dist/compiler/browser.js +11 -0
  46. package/dist/compiler/content/transportables.d.ts +26 -0
  47. package/dist/compiler/content/transportables.js +219 -0
  48. package/dist/compiler/ctx.d.ts +185 -0
  49. package/dist/compiler/ctx.js +203 -0
  50. package/dist/compiler/debarrel/barrel.d.ts +55 -0
  51. package/dist/compiler/debarrel/barrel.js +248 -0
  52. package/dist/compiler/debarrel/options.d.ts +67 -0
  53. package/dist/compiler/debarrel/options.js +31 -0
  54. package/dist/compiler/debarrel/parse.d.ts +65 -0
  55. package/dist/compiler/debarrel/parse.js +256 -0
  56. package/dist/compiler/debarrel/plugin.d.ts +31 -0
  57. package/dist/compiler/debarrel/plugin.js +190 -0
  58. package/dist/compiler/debarrel/rewrite.d.ts +27 -0
  59. package/dist/compiler/debarrel/rewrite.js +118 -0
  60. package/dist/compiler/debarrel/svelte.d.ts +13 -0
  61. package/dist/compiler/debarrel/svelte.js +56 -0
  62. package/dist/compiler/dev/css-scope.d.ts +16 -0
  63. package/dist/compiler/dev/css-scope.js +38 -0
  64. package/dist/compiler/dev/dev-hmr.d.ts +25 -0
  65. package/dist/compiler/dev/dev-hmr.js +29 -0
  66. package/dist/compiler/dev/hmr.d.ts +34 -0
  67. package/dist/compiler/dev/hmr.js +57 -0
  68. package/dist/compiler/dev/region-bytes.d.ts +34 -0
  69. package/dist/compiler/dev/region-bytes.js +126 -0
  70. package/dist/compiler/driver.d.ts +280 -0
  71. package/dist/compiler/driver.js +1352 -0
  72. package/dist/compiler/flags.d.ts +16 -0
  73. package/dist/compiler/flags.js +101 -0
  74. package/dist/compiler/fouc-css.d.ts +97 -0
  75. package/dist/compiler/fouc-css.js +335 -0
  76. package/dist/compiler/free-vars.d.ts +20 -0
  77. package/dist/compiler/free-vars.js +327 -0
  78. package/dist/compiler/host.d.ts +65 -0
  79. package/dist/compiler/host.js +51 -0
  80. package/dist/compiler/ids.d.ts +84 -0
  81. package/dist/compiler/ids.js +86 -0
  82. package/dist/compiler/index.d.ts +11 -0
  83. package/dist/compiler/index.js +11 -0
  84. package/dist/compiler/kit.d.ts +129 -0
  85. package/dist/compiler/kit.js +563 -0
  86. package/dist/compiler/link/build-output.d.ts +44 -0
  87. package/dist/compiler/link/build-output.js +147 -0
  88. package/dist/compiler/link/caps.d.ts +48 -0
  89. package/dist/compiler/link/caps.js +64 -0
  90. package/dist/compiler/link/context-detect.d.ts +23 -0
  91. package/dist/compiler/link/context-detect.js +137 -0
  92. package/dist/compiler/link/emit-gate.d.ts +11 -0
  93. package/dist/compiler/link/emit-gate.js +40 -0
  94. package/dist/compiler/link/entry-shim.d.ts +4 -0
  95. package/dist/compiler/link/entry-shim.js +29 -0
  96. package/dist/compiler/link/island-deps.d.ts +142 -0
  97. package/dist/compiler/link/island-deps.js +525 -0
  98. package/dist/compiler/link/manifest.d.ts +5 -0
  99. package/dist/compiler/link/manifest.js +9 -0
  100. package/dist/compiler/link/page-keys.d.ts +64 -0
  101. package/dist/compiler/link/page-keys.js +683 -0
  102. package/dist/compiler/link/registry-stub.d.ts +41 -0
  103. package/dist/compiler/link/registry-stub.js +212 -0
  104. package/dist/compiler/link/router-config.d.ts +11 -0
  105. package/dist/compiler/link/router-config.js +15 -0
  106. package/dist/compiler/link/router-css.d.ts +22 -0
  107. package/dist/compiler/link/router-css.js +142 -0
  108. package/dist/compiler/link/runtime-entry.d.ts +71 -0
  109. package/dist/compiler/link/runtime-entry.js +132 -0
  110. package/dist/compiler/link/server-manifest.d.ts +12 -0
  111. package/dist/compiler/link/server-manifest.js +45 -0
  112. package/dist/compiler/link/speculation.d.ts +17 -0
  113. package/dist/compiler/link/speculation.js +36 -0
  114. package/dist/compiler/link/transport.d.ts +31 -0
  115. package/dist/compiler/link/transport.js +67 -0
  116. package/dist/compiler/macros/bake.d.ts +20 -0
  117. package/dist/compiler/macros/bake.js +317 -0
  118. package/dist/compiler/macros/browser.d.ts +11 -0
  119. package/dist/compiler/macros/browser.js +69 -0
  120. package/dist/compiler/macros/dedent.d.ts +12 -0
  121. package/dist/compiler/macros/dedent.js +36 -0
  122. package/dist/compiler/macros/dollar.d.ts +15 -0
  123. package/dist/compiler/macros/dollar.js +387 -0
  124. package/dist/compiler/macros/pipeline.d.ts +31 -0
  125. package/dist/compiler/macros/pipeline.js +106 -0
  126. package/dist/compiler/macros/source.d.ts +6 -0
  127. package/dist/compiler/macros/source.js +127 -0
  128. package/dist/compiler/macros/store.d.ts +17 -0
  129. package/dist/compiler/macros/store.js +244 -0
  130. package/dist/compiler/macros/wire.d.ts +14 -0
  131. package/dist/compiler/macros/wire.js +160 -0
  132. package/dist/compiler/ownership-stamps.d.ts +6 -0
  133. package/dist/compiler/ownership-stamps.js +144 -0
  134. package/dist/compiler/parse/oxc.d.ts +34 -0
  135. package/dist/compiler/parse/oxc.js +59 -0
  136. package/dist/compiler/parse/scan.d.ts +43 -0
  137. package/dist/compiler/parse/scan.js +232 -0
  138. package/dist/compiler/program.d.ts +140 -0
  139. package/dist/compiler/program.js +242 -0
  140. package/dist/compiler/region/emit.d.ts +169 -0
  141. package/dist/compiler/region/emit.js +286 -0
  142. package/dist/compiler/region/identity.d.ts +28 -0
  143. package/dist/compiler/region/identity.js +75 -0
  144. package/dist/compiler/region/ir.d.ts +65 -0
  145. package/dist/compiler/region/ir.js +0 -0
  146. package/dist/compiler/region/transform.d.ts +178 -0
  147. package/dist/compiler/region/transform.js +1933 -0
  148. package/dist/compiler/script-request.d.ts +1 -0
  149. package/dist/compiler/script-request.js +43 -0
  150. package/dist/context-bridge.d.ts +65 -0
  151. package/dist/context-bridge.js +217 -0
  152. package/dist/context-registry.d.ts +40 -0
  153. package/dist/context-registry.js +15 -0
  154. package/dist/context.d.ts +72 -0
  155. package/dist/context.js +158 -0
  156. package/dist/current-region.d.ts +14 -0
  157. package/dist/current-region.js +36 -0
  158. package/dist/document.d.ts +41 -0
  159. package/dist/document.js +125 -0
  160. package/dist/entry-hydrate.d.ts +5 -0
  161. package/dist/entry-hydrate.js +42 -0
  162. package/dist/escape.d.ts +18 -0
  163. package/dist/escape.js +37 -0
  164. package/dist/events/bus.d.ts +33 -0
  165. package/dist/events/bus.js +153 -0
  166. package/dist/events/index.d.ts +4 -0
  167. package/dist/events/index.js +4 -0
  168. package/dist/events/schema.d.ts +389 -0
  169. package/dist/events/schema.js +23 -0
  170. package/dist/events/server-registry.d.ts +7 -0
  171. package/dist/events/server-registry.js +13 -0
  172. package/dist/events/sinks.d.ts +64 -0
  173. package/dist/events/sinks.js +85 -0
  174. package/dist/fn-transport.d.ts +33 -0
  175. package/dist/fn-transport.js +140 -0
  176. package/dist/frame.d.ts +20 -0
  177. package/dist/frame.js +19 -0
  178. package/dist/holes-record.d.ts +6 -0
  179. package/dist/holes-record.js +8 -0
  180. package/dist/hooks.d.ts +43 -0
  181. package/dist/hooks.js +1191 -0
  182. package/dist/hydration-info.d.ts +1 -0
  183. package/dist/hydration-info.js +31 -0
  184. package/dist/index.d.ts +21 -0
  185. package/dist/index.js +17 -0
  186. package/dist/insights/attr-rules.d.ts +15 -0
  187. package/dist/insights/attr-rules.js +27 -0
  188. package/dist/insights/cpu.d.ts +82 -0
  189. package/dist/insights/cpu.js +177 -0
  190. package/dist/insights/fp-drift.d.ts +28 -0
  191. package/dist/insights/fp-drift.js +148 -0
  192. package/dist/insights/hole-segments.d.ts +26 -0
  193. package/dist/insights/hole-segments.js +50 -0
  194. package/dist/insights/html-diff.d.ts +25 -0
  195. package/dist/insights/html-diff.js +157 -0
  196. package/dist/insights/hydration-hazards.d.ts +36 -0
  197. package/dist/insights/hydration-hazards.js +136 -0
  198. package/dist/insights/hydration-status.d.ts +2 -0
  199. package/dist/insights/hydration-status.js +0 -0
  200. package/dist/insights/index.d.ts +14 -0
  201. package/dist/insights/index.js +12 -0
  202. package/dist/insights/page-assets.d.ts +211 -0
  203. package/dist/insights/page-assets.js +608 -0
  204. package/dist/insights/page-insights.d.ts +749 -0
  205. package/dist/insights/page-insights.js +2157 -0
  206. package/dist/insights/session-data.d.ts +108 -0
  207. package/dist/insights/session-data.js +0 -0
  208. package/dist/insights/session-insights.d.ts +121 -0
  209. package/dist/insights/session-insights.js +548 -0
  210. package/dist/insights/switch.d.ts +53 -0
  211. package/dist/insights/switch.js +91 -0
  212. package/dist/insights/testing-version.d.ts +19 -0
  213. package/dist/insights/testing-version.js +21 -0
  214. package/dist/insights/third-party.d.ts +75 -0
  215. package/dist/insights/third-party.js +160 -0
  216. package/dist/internal-instruments.d.ts +13 -0
  217. package/dist/internal-instruments.js +12 -0
  218. package/dist/internal-reconcile.d.ts +3 -0
  219. package/dist/internal-reconcile.js +3 -0
  220. package/dist/internal-register.d.ts +7 -0
  221. package/dist/internal-register.js +7 -0
  222. package/dist/internal-server.d.ts +7 -0
  223. package/dist/internal-server.js +7 -0
  224. package/dist/internal.d.ts +13 -0
  225. package/dist/internal.js +13 -0
  226. package/dist/island-graph.d.ts +36 -0
  227. package/dist/island-graph.js +89 -0
  228. package/dist/keep-fallback-marker.d.ts +7 -0
  229. package/dist/keep-fallback-marker.js +9 -0
  230. package/dist/keep-fallback.d.ts +13 -0
  231. package/dist/keep-fallback.js +39 -0
  232. package/dist/kit-paths.d.ts +2 -0
  233. package/dist/kit-paths.js +39 -0
  234. package/dist/late-region-registry.d.ts +40 -0
  235. package/dist/late-region-registry.js +36 -0
  236. package/dist/live-transport.d.ts +57 -0
  237. package/dist/live-transport.js +145 -0
  238. package/dist/markup.d.ts +4 -0
  239. package/dist/markup.js +4 -0
  240. package/dist/own-package.d.ts +15 -0
  241. package/dist/own-package.js +20 -0
  242. package/dist/page-defer.d.ts +33 -0
  243. package/dist/page-defer.js +35 -0
  244. package/dist/page-facts-script.d.ts +7 -0
  245. package/dist/page-facts-script.js +9 -0
  246. package/dist/page-seed-registry.d.ts +72 -0
  247. package/dist/page-seed-registry.js +31 -0
  248. package/dist/plugin/capability.d.ts +14 -0
  249. package/dist/plugin/capability.js +44 -0
  250. package/dist/plugin/client.d.ts +39 -0
  251. package/dist/plugin/client.js +6 -0
  252. package/dist/plugin/css.d.ts +3 -0
  253. package/dist/plugin/css.js +54 -0
  254. package/dist/plugin/facts.d.ts +42 -0
  255. package/dist/plugin/facts.js +37 -0
  256. package/dist/plugin/hooks.d.ts +33 -0
  257. package/dist/plugin/hooks.js +38 -0
  258. package/dist/plugin/index.d.ts +127 -0
  259. package/dist/plugin/index.js +26 -0
  260. package/dist/plugin/routes.d.ts +32 -0
  261. package/dist/plugin/routes.js +35 -0
  262. package/dist/plugin/server.d.ts +27 -0
  263. package/dist/plugin/server.js +92 -0
  264. package/dist/plugin/standard-schema.d.ts +27 -0
  265. package/dist/plugin/standard-schema.js +0 -0
  266. package/dist/plugin/testing.d.ts +13 -0
  267. package/dist/plugin/testing.js +54 -0
  268. package/dist/plugin/utils.d.ts +13 -0
  269. package/dist/plugin/utils.js +19 -0
  270. package/dist/portable-form.d.ts +22 -0
  271. package/dist/portable-form.js +52 -0
  272. package/dist/preference.d.ts +35 -0
  273. package/dist/preference.js +84 -0
  274. package/dist/preload.d.ts +1 -0
  275. package/dist/preload.js +21 -0
  276. package/dist/ref-watch.d.ts +31 -0
  277. package/dist/ref-watch.js +66 -0
  278. package/dist/ref.d.ts +124 -0
  279. package/dist/ref.js +272 -0
  280. package/dist/region-brand.d.ts +8 -0
  281. package/dist/region-brand.js +10 -0
  282. package/dist/region-core.d.ts +2 -0
  283. package/dist/region-core.js +1 -0
  284. package/dist/region-snippet.d.ts +73 -0
  285. package/dist/region-snippet.js +351 -0
  286. package/dist/region.d.ts +127 -0
  287. package/dist/region.js +162 -0
  288. package/dist/request-event.d.ts +1 -0
  289. package/dist/request-event.js +37 -0
  290. package/dist/router-css.d.ts +39 -0
  291. package/dist/router-css.js +66 -0
  292. package/dist/runtime/app-transport.d.ts +2 -0
  293. package/dist/runtime/app-transport.js +13 -0
  294. package/dist/runtime/beacon.d.ts +271 -0
  295. package/dist/runtime/beacon.js +2190 -0
  296. package/dist/runtime/boot-link.d.ts +1 -0
  297. package/dist/runtime/boot-link.js +44 -0
  298. package/dist/runtime/client-hooks.d.ts +5 -0
  299. package/dist/runtime/client-hooks.js +22 -0
  300. package/dist/runtime/client-plugins.d.ts +8 -0
  301. package/dist/runtime/client-plugins.js +34 -0
  302. package/dist/runtime/concurrency.d.ts +12 -0
  303. package/dist/runtime/concurrency.js +29 -0
  304. package/dist/runtime/connected.d.ts +12 -0
  305. package/dist/runtime/connected.js +16 -0
  306. package/dist/runtime/context.d.ts +1 -0
  307. package/dist/runtime/context.js +19 -0
  308. package/dist/runtime/core.d.ts +15 -0
  309. package/dist/runtime/core.js +1173 -0
  310. package/dist/runtime/drift-watch.d.ts +9 -0
  311. package/dist/runtime/drift-watch.js +60 -0
  312. package/dist/runtime/entry-locations.d.ts +33 -0
  313. package/dist/runtime/entry-locations.js +119 -0
  314. package/dist/runtime/foreign-props.d.ts +8 -0
  315. package/dist/runtime/foreign-props.js +14 -0
  316. package/dist/runtime/form-continuity.d.ts +10 -0
  317. package/dist/runtime/form-continuity.js +107 -0
  318. package/dist/runtime/frame-nav.d.ts +36 -0
  319. package/dist/runtime/frame-nav.js +225 -0
  320. package/dist/runtime/frame-store.d.ts +62 -0
  321. package/dist/runtime/frame-store.js +214 -0
  322. package/dist/runtime/frames.d.ts +1 -0
  323. package/dist/runtime/frames.js +25 -0
  324. package/dist/runtime/full.d.ts +4 -0
  325. package/dist/runtime/full.js +32 -0
  326. package/dist/runtime/hash.d.ts +41 -0
  327. package/dist/runtime/hash.js +79 -0
  328. package/dist/runtime/hole-facts.d.ts +8 -0
  329. package/dist/runtime/hole-facts.js +57 -0
  330. package/dist/runtime/host-classes.d.ts +24 -0
  331. package/dist/runtime/host-classes.js +43 -0
  332. package/dist/runtime/hydrate-core.d.ts +101 -0
  333. package/dist/runtime/hydrate-core.js +605 -0
  334. package/dist/runtime/index.d.ts +2 -0
  335. package/dist/runtime/index.js +1 -0
  336. package/dist/runtime/interaction-replay.d.ts +11 -0
  337. package/dist/runtime/interaction-replay.js +70 -0
  338. package/dist/runtime/interaction.d.ts +33 -0
  339. package/dist/runtime/interaction.js +217 -0
  340. package/dist/runtime/island-graph-preload.d.ts +13 -0
  341. package/dist/runtime/island-graph-preload.js +99 -0
  342. package/dist/runtime/kit-boot.d.ts +29 -0
  343. package/dist/runtime/kit-boot.js +60 -0
  344. package/dist/runtime/kit-page-thread.svelte.d.ts +1 -0
  345. package/dist/runtime/kit-page-thread.svelte.js +116 -0
  346. package/dist/runtime/lake-anchors.d.ts +13 -0
  347. package/dist/runtime/lake-anchors.js +19 -0
  348. package/dist/runtime/lakes.d.ts +15 -0
  349. package/dist/runtime/lakes.js +212 -0
  350. package/dist/runtime/live.d.ts +3 -0
  351. package/dist/runtime/live.js +17 -0
  352. package/dist/runtime/load-scheduler.d.ts +53 -0
  353. package/dist/runtime/load-scheduler.js +317 -0
  354. package/dist/runtime/morph.d.ts +42 -0
  355. package/dist/runtime/morph.js +671 -0
  356. package/dist/runtime/nav-handle.d.ts +25 -0
  357. package/dist/runtime/nav-handle.js +71 -0
  358. package/dist/runtime/nav-hooks.d.ts +2 -0
  359. package/dist/runtime/nav-hooks.js +23 -0
  360. package/dist/runtime/nearest-attr.d.ts +4 -0
  361. package/dist/runtime/nearest-attr.js +16 -0
  362. package/dist/runtime/observe.d.ts +27 -0
  363. package/dist/runtime/observe.js +63 -0
  364. package/dist/runtime/own-cost.d.ts +9 -0
  365. package/dist/runtime/own-cost.js +35 -0
  366. package/dist/runtime/ownership.d.ts +101 -0
  367. package/dist/runtime/ownership.js +115 -0
  368. package/dist/runtime/page-cache.d.ts +23 -0
  369. package/dist/runtime/page-cache.js +74 -0
  370. package/dist/runtime/page-defer.d.ts +14 -0
  371. package/dist/runtime/page-defer.js +103 -0
  372. package/dist/runtime/parse-html.d.ts +40 -0
  373. package/dist/runtime/parse-html.js +81 -0
  374. package/dist/runtime/reconcile.d.ts +41 -0
  375. package/dist/runtime/reconcile.js +194 -0
  376. package/dist/runtime/region-attrs.d.ts +95 -0
  377. package/dist/runtime/region-attrs.js +153 -0
  378. package/dist/runtime/region-endpoint-url.d.ts +76 -0
  379. package/dist/runtime/region-endpoint-url.js +169 -0
  380. package/dist/runtime/region-ids.d.ts +8 -0
  381. package/dist/runtime/region-ids.js +33 -0
  382. package/dist/runtime/remote-seeds.d.ts +2 -0
  383. package/dist/runtime/remote-seeds.js +21 -0
  384. package/dist/runtime/render-blocking.d.ts +2 -0
  385. package/dist/runtime/render-blocking.js +30 -0
  386. package/dist/runtime/restore.d.ts +34 -0
  387. package/dist/runtime/restore.js +390 -0
  388. package/dist/runtime/router-nav.d.ts +63 -0
  389. package/dist/runtime/router-nav.js +740 -0
  390. package/dist/runtime/router.d.ts +201 -0
  391. package/dist/runtime/router.js +593 -0
  392. package/dist/runtime/schedule.d.ts +49 -0
  393. package/dist/runtime/schedule.js +256 -0
  394. package/dist/runtime/seeds.d.ts +50 -0
  395. package/dist/runtime/seeds.js +208 -0
  396. package/dist/runtime/session.d.ts +52 -0
  397. package/dist/runtime/session.js +130 -0
  398. package/dist/runtime/sidecar.d.ts +3 -0
  399. package/dist/runtime/sidecar.js +56 -0
  400. package/dist/runtime/slots.d.ts +183 -0
  401. package/dist/runtime/slots.js +44 -0
  402. package/dist/runtime/spa-cacheable.d.ts +7 -0
  403. package/dist/runtime/spa-cacheable.js +18 -0
  404. package/dist/runtime/speculate-hint.d.ts +1 -0
  405. package/dist/runtime/speculate-hint.js +35 -0
  406. package/dist/runtime/svelte-warnings.d.ts +28 -0
  407. package/dist/runtime/svelte-warnings.js +71 -0
  408. package/dist/runtime/wire-classes.d.ts +3 -0
  409. package/dist/runtime/wire-classes.js +69 -0
  410. package/dist/runtime/wire-format.d.ts +7 -0
  411. package/dist/runtime/wire-format.js +22 -0
  412. package/dist/script.d.ts +134 -0
  413. package/dist/script.js +184 -0
  414. package/dist/seed-refs.d.ts +105 -0
  415. package/dist/seed-refs.js +487 -0
  416. package/dist/server/capability-lifetime.d.ts +28 -0
  417. package/dist/server/capability-lifetime.js +31 -0
  418. package/dist/server/dead-kit-resolves.d.ts +1 -0
  419. package/dist/server/dead-kit-resolves.js +39 -0
  420. package/dist/server/document-assembly.d.ts +30 -0
  421. package/dist/server/document-assembly.js +26 -0
  422. package/dist/server/document-tail.d.ts +113 -0
  423. package/dist/server/document-tail.js +208 -0
  424. package/dist/server/endpoint.d.ts +51 -0
  425. package/dist/server/endpoint.js +90 -0
  426. package/dist/server/entry-location.d.ts +8 -0
  427. package/dist/server/entry-location.js +29 -0
  428. package/dist/server/fingerprint.d.ts +1 -0
  429. package/dist/server/fingerprint.js +25 -0
  430. package/dist/server/head-presence.d.ts +45 -0
  431. package/dist/server/head-presence.js +156 -0
  432. package/dist/server/hmac.d.ts +38 -0
  433. package/dist/server/hmac.js +89 -0
  434. package/dist/server/hole-graph.d.ts +7 -0
  435. package/dist/server/hole-graph.js +71 -0
  436. package/dist/server/hole-urls.d.ts +3 -0
  437. package/dist/server/hole-urls.js +76 -0
  438. package/dist/server/html-scan.d.ts +19 -0
  439. package/dist/server/html-scan.js +60 -0
  440. package/dist/server/kit-context.d.ts +78 -0
  441. package/dist/server/kit-context.js +110 -0
  442. package/dist/server/late-wire.d.ts +22 -0
  443. package/dist/server/late-wire.js +28 -0
  444. package/dist/server/page-facts.d.ts +25 -0
  445. package/dist/server/page-facts.js +138 -0
  446. package/dist/server/page-seed.d.ts +33 -0
  447. package/dist/server/page-seed.js +60 -0
  448. package/dist/server/page-stream.d.ts +55 -0
  449. package/dist/server/page-stream.js +121 -0
  450. package/dist/server/payload.d.ts +6 -0
  451. package/dist/server/payload.js +22 -0
  452. package/dist/server/personal-response.d.ts +6 -0
  453. package/dist/server/personal-response.js +13 -0
  454. package/dist/server/props-wire.d.ts +56 -0
  455. package/dist/server/props-wire.js +178 -0
  456. package/dist/server/rate-limit.d.ts +22 -0
  457. package/dist/server/rate-limit.js +63 -0
  458. package/dist/server/region-css.d.ts +5 -0
  459. package/dist/server/region-css.js +30 -0
  460. package/dist/server/region-endpoint.d.ts +35 -0
  461. package/dist/server/region-endpoint.js +142 -0
  462. package/dist/server/region-props.d.ts +6 -0
  463. package/dist/server/region-props.js +44 -0
  464. package/dist/server/remote-seed-gate.d.ts +50 -0
  465. package/dist/server/remote-seed-gate.js +66 -0
  466. package/dist/server/render-cache.d.ts +26 -0
  467. package/dist/server/render-cache.js +51 -0
  468. package/dist/server/render-page.d.ts +51 -0
  469. package/dist/server/render-page.js +176 -0
  470. package/dist/server/render-region-html.d.ts +2 -0
  471. package/dist/server/render-region-html.js +19 -0
  472. package/dist/server/request-stats.d.ts +174 -0
  473. package/dist/server/request-stats.js +54 -0
  474. package/dist/server/reversible.d.ts +83 -0
  475. package/dist/server/reversible.js +994 -0
  476. package/dist/server/seed-shape.d.ts +22 -0
  477. package/dist/server/seed-shape.js +24 -0
  478. package/dist/server/shared-cache.d.ts +35 -0
  479. package/dist/server/shared-cache.js +104 -0
  480. package/dist/server/signing-key.d.ts +11 -0
  481. package/dist/server/signing-key.js +47 -0
  482. package/dist/server/sized-lru.d.ts +20 -0
  483. package/dist/server/sized-lru.js +68 -0
  484. package/dist/server/split-regions.d.ts +81 -0
  485. package/dist/server/split-regions.js +368 -0
  486. package/dist/server/stream-regions.d.ts +5 -0
  487. package/dist/server/stream-regions.js +36 -0
  488. package/dist/shared-state.d.ts +7 -0
  489. package/dist/shared-state.js +152 -0
  490. package/dist/shims/app-environment.d.ts +4 -0
  491. package/dist/shims/app-environment.js +6 -0
  492. package/dist/shims/app-navigation.d.ts +33 -0
  493. package/dist/shims/app-navigation.js +119 -0
  494. package/dist/shims/app-paths.d.ts +6 -0
  495. package/dist/shims/app-paths.js +18 -0
  496. package/dist/shims/app-state.svelte.d.ts +23 -0
  497. package/dist/shims/app-state.svelte.js +50 -0
  498. package/dist/shims/app-stores.d.ts +21 -0
  499. package/dist/shims/app-stores.js +54 -0
  500. package/dist/shims/kit-bridge.d.ts +29 -0
  501. package/dist/shims/kit-bridge.js +7 -0
  502. package/dist/shims/kit-remote/client-stub.d.ts +27 -0
  503. package/dist/shims/kit-remote/client-stub.js +43 -0
  504. package/dist/shims/kit-remote/paths-internal-stub.d.ts +3 -0
  505. package/dist/shims/kit-remote/paths-internal-stub.js +5 -0
  506. package/dist/shims/kit-remote/remote-cache.d.ts +49 -0
  507. package/dist/shims/kit-remote/remote-cache.js +73 -0
  508. package/dist/shims/kit-remote/state-stub.d.ts +8 -0
  509. package/dist/shims/kit-remote/state-stub.js +8 -0
  510. package/dist/shims/page-store.svelte.d.ts +39 -0
  511. package/dist/shims/page-store.svelte.js +77 -0
  512. package/dist/source.d.ts +29 -0
  513. package/dist/source.js +87 -0
  514. package/dist/store-transport.d.ts +86 -0
  515. package/dist/store-transport.js +229 -0
  516. package/dist/tool-fetches.d.ts +5 -0
  517. package/dist/tool-fetches.js +41 -0
  518. package/dist/transport.d.ts +48 -0
  519. package/dist/transport.js +181 -0
  520. package/dist/unscoped-css.d.ts +26 -0
  521. package/dist/unscoped-css.js +53 -0
  522. package/dist/vite/dev-maps.d.ts +33 -0
  523. package/dist/vite/dev-maps.js +140 -0
  524. package/dist/vite/index.d.ts +19 -0
  525. package/dist/vite/index.js +820 -0
  526. package/dist/vite/kit-dirs.d.ts +7 -0
  527. package/dist/vite/kit-dirs.js +67 -0
  528. package/dist/vite/late-island.d.ts +25 -0
  529. package/dist/vite/late-island.js +33 -0
  530. package/dist/vite/module-map.d.ts +8 -0
  531. package/dist/vite/module-map.js +144 -0
  532. package/dist/vite/options.d.ts +208 -0
  533. package/dist/vite/options.js +74 -0
  534. package/dist/vite/package-files.d.ts +3 -0
  535. package/dist/vite/package-files.js +84 -0
  536. package/dist/vite/paths.d.ts +45 -0
  537. package/dist/vite/paths.js +112 -0
  538. package/dist/vite/plugin-api.d.ts +166 -0
  539. package/dist/vite/plugin-api.js +212 -0
  540. package/dist/vite/profiler-maps.d.ts +23 -0
  541. package/dist/vite/profiler-maps.js +178 -0
  542. package/dist/vite/server-sourcemaps.d.ts +8 -0
  543. package/dist/vite/server-sourcemaps.js +80 -0
  544. package/dist/vite/sourcemaps.d.ts +18 -0
  545. package/dist/vite/sourcemaps.js +80 -0
  546. package/dist/vite/style-preprocess.d.ts +2 -0
  547. package/dist/vite/style-preprocess.js +96 -0
  548. package/package.json +180 -6
@@ -0,0 +1,68 @@
1
+ export default Region;
2
+ type Region = {
3
+ $on?(type: string, callback: (e: any) => void): () => void;
4
+ $set?(props: Partial<{
5
+ of?: RegionValue | Promise<RegionValue> | undefined;
6
+ placeholder?: Snippet<[]> | undefined;
7
+ children?: Snippet<[]> | undefined;
8
+ __mode?: "server" | "island" | "lake" | undefined;
9
+ __baked?: boolean | undefined;
10
+ visible?: string | boolean | undefined;
11
+ idle?: boolean | undefined;
12
+ media?: string | undefined;
13
+ load?: boolean | undefined;
14
+ interaction?: boolean | undefined;
15
+ __keep?: string | undefined;
16
+ __entry?: string | undefined;
17
+ __src?: string | undefined;
18
+ __component?: Component<any, any, string> | undefined;
19
+ __css?: unknown;
20
+ __load?: (() => Promise<Component<any, any, string>>) | undefined;
21
+ __props?: Record<string, unknown> | undefined;
22
+ __defer?: string | undefined;
23
+ __margin?: string | undefined;
24
+ __hydrate?: string | undefined;
25
+ __hydrateMargin?: string | undefined;
26
+ __module?: string | undefined;
27
+ __cacheTtl?: number | undefined;
28
+ __stitch?: string | undefined;
29
+ __prefetch?: string | undefined;
30
+ ogygiaFallback?: Snippet<[]> | undefined;
31
+ __remount?: string | undefined;
32
+ __when?: string | undefined;
33
+ __maxAge?: number | undefined;
34
+ __onExpire?: "empty" | "fetch" | undefined;
35
+ }>): void;
36
+ };
37
+ declare const Region: import("svelte").Component<{
38
+ of?: import("./region.js").RegionValue | Promise<import("./region.js").RegionValue>;
39
+ placeholder?: import("svelte").Snippet;
40
+ children?: import("svelte").Snippet;
41
+ __mode?: "island" | "server" | "lake";
42
+ __baked?: boolean;
43
+ visible?: string | boolean;
44
+ idle?: boolean;
45
+ media?: string;
46
+ load?: boolean;
47
+ interaction?: boolean;
48
+ __keep?: string;
49
+ __entry?: string;
50
+ __src?: string;
51
+ __component?: import("svelte").Component;
52
+ __css?: unknown;
53
+ __load?: () => Promise<import("svelte").Component>;
54
+ __props?: Record<string, unknown>;
55
+ __defer?: string;
56
+ __margin?: string;
57
+ __hydrate?: string;
58
+ __hydrateMargin?: string;
59
+ __module?: string;
60
+ __cacheTtl?: number;
61
+ __stitch?: string;
62
+ __prefetch?: string;
63
+ ogygiaFallback?: import("svelte").Snippet;
64
+ __remount?: string;
65
+ __when?: string;
66
+ __maxAge?: number;
67
+ __onExpire?: "empty" | "fetch";
68
+ }, {}, "">;
@@ -0,0 +1,13 @@
1
+ <script>/**
2
+ * The nested-context RESET around an island's in-place slot children. Region `setNested()`s for its
3
+ * subtree so islands rendered INSIDE an island degrade to plain inline components — but slot children
4
+ * belong to the HOST page, not the island: an island inside them must render as a FULL region
5
+ * (`<ogygia-region>` + payload) so the runtime can wake it independently after the parent ADOPTS the
6
+ * slot DOM. Server-only in practice (the client adopts, never re-renders slot children).
7
+ */
8
+ import { setNested } from "./context.js";
9
+ let { children } = $props();
10
+ setNested(false);
11
+ </script>
12
+
13
+ {@render children?.()}
@@ -0,0 +1,7 @@
1
+ import type { Snippet } from 'svelte';
2
+ type $$ComponentProps = {
3
+ children?: Snippet;
4
+ };
5
+ declare const SlotBoundary: import("svelte").Component<$$ComponentProps, {}, "">;
6
+ type SlotBoundary = ReturnType<typeof SlotBoundary>;
7
+ export default SlotBoundary;
package/dist/app.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ import { afterNavigate, beforeNavigate, bust_page_cache, disableScrollHandling, goto, invalidate, invalidateAll, preloadCode, preloadData } from "./shims/app-navigation.js";
2
+ import { spa_html_cacheable } from "./runtime/spa-cacheable.js";
3
+ import { AfterNavigateCallback, AfterNavigation, BeforeNavigateCallback, BeforeNavigation, NavTarget } from "./runtime/router.js";
4
+ export { type AfterNavigateCallback, type AfterNavigation, type BeforeNavigateCallback, type BeforeNavigation, type NavTarget, afterNavigate, beforeNavigate, bust_page_cache, disableScrollHandling, goto, invalidate, invalidateAll, preloadCode, preloadData, spa_html_cacheable };
package/dist/app.js ADDED
@@ -0,0 +1,3 @@
1
+ import { afterNavigate, beforeNavigate, bust_page_cache, disableScrollHandling, goto, invalidate, invalidateAll, preloadCode, preloadData } from "./shims/app-navigation.js";
2
+ import { spa_html_cacheable } from "./runtime/spa-cacheable.js";
3
+ export { afterNavigate, beforeNavigate, bust_page_cache, disableScrollHandling, goto, invalidate, invalidateAll, preloadCode, preloadData, spa_html_cacheable };
@@ -0,0 +1,35 @@
1
+ export interface BoundaryFinding {
2
+ /** What the seam will do with this leaf. */
3
+ kind: "plain" | "wire" | "store" | "warn" | "refuse";
4
+ /** Dot-path from the context value to the leaf (empty = the value itself). */
5
+ path: string;
6
+ /** One human sentence: what it is + what to do about it. */
7
+ detail: string;
8
+ }
9
+ /** App-configurable secret policy (call once in hooks.server.ts). `allow` names keys/paths the
10
+ * sniff must NOT refuse (a false positive like 'tokenColor'); `deny` names ones it MUST refuse
11
+ * even when the regex misses (a semantic secret the shape can't reveal). Exact, case-sensitive
12
+ * matches against the context key or the finding path. */
13
+ export interface BoundaryPolicy {
14
+ allow?: readonly string[];
15
+ deny?: readonly string[];
16
+ }
17
+ export declare function configure_boundary(p: BoundaryPolicy): void;
18
+ /**
19
+ * Classify one boundary value. `key` is the context key / prop name (used for secret sniffing
20
+ * and in messages). Returns every finding, worst problems included — the caller decides
21
+ * whether to warn (dev) or refuse (encode).
22
+ */
23
+ export declare function classify_boundary(value: unknown, key?: string): BoundaryFinding[];
24
+ /** The findings that make a value undroppable-into-HTML (used to explain a dropped context key). */
25
+ export declare function boundary_problems(value: unknown, key?: string): BoundaryFinding[];
26
+ /** Format one finding as the console line for a dropped/degraded context key. */
27
+ export declare function format_boundary_finding(key: string, f: BoundaryFinding): string;
28
+ /**
29
+ * The `import.meta.og.$` rewrite target for NON-function values — the universal boundary
30
+ * assertion. Classifies the value AT THE MARK (creation), so a refusal (DOM node, bare
31
+ * function, unwired class, secret) throws with the marked file:line instead of surfacing
32
+ * deep inside a serializer at request time. Mark-don't-wrap: the value itself is returned
33
+ * untouched — stores/classes/data keep their own passports; identity mints at the seam.
34
+ */
35
+ export declare function __og_boundary<T>(value: T, site: string): T;
@@ -0,0 +1,127 @@
1
+ import { is_derived_like, is_store } from "./store-transport.js";
2
+ import { wire } from "./live-transport.js";
3
+ // src/boundary.ts
4
+ /**
5
+ * Boundary classifier — guard layer of the transportable seam.
6
+ *
7
+ * When a context/prop value heads for an island boundary, this walks it and names, per leaf,
8
+ * what will happen: cross free, auto-wire, warn, or refuse — WITH the path to the leaf. It
9
+ * exists so a value that can't cross fails at BOUNDARY DISCOVERY with "context 'user' @
10
+ * profile.avatarEl: live DOM node", instead of an island silently reading `undefined` in prod.
11
+ *
12
+ * Dev-only caller today: `serialize_provided_context` used to drop unbridgeable keys silently;
13
+ * it now explains each drop. The classifier is pure and dependency-light (store detection is
14
+ * by shape, DOM by nodeType) so it costs nothing to import server-side.
15
+ */
16
+ const SECRET_KEY_RE = /token|secret|passw(or)?d|api[-_]?key|credential|authorization/i;
17
+ let policy = {
18
+ allow: /* @__PURE__ */ new Set(),
19
+ deny: /* @__PURE__ */ new Set()
20
+ };
21
+ function configure_boundary(p) {
22
+ policy = {
23
+ allow: new Set(p.allow ?? []),
24
+ deny: new Set(p.deny ?? [])
25
+ };
26
+ }
27
+ const secret_like = (name) => !policy.allow.has(name) && (policy.deny.has(name) || SECRET_KEY_RE.test(name));
28
+ const STORE_BUILTINS = /* @__PURE__ */ new Set([
29
+ "subscribe",
30
+ "set",
31
+ "update"
32
+ ]);
33
+ function is_dom(v) {
34
+ return typeof v.nodeType === "number" && typeof v.nodeName === "string";
35
+ }
36
+ function is_plain_object(v) {
37
+ const proto = Object.getPrototypeOf(v);
38
+ return proto === Object.prototype || proto === null;
39
+ }
40
+ /**
41
+ * Classify one boundary value. `key` is the context key / prop name (used for secret sniffing
42
+ * and in messages). Returns every finding, worst problems included — the caller decides
43
+ * whether to warn (dev) or refuse (encode).
44
+ */
45
+ function classify_boundary(value, key = "") {
46
+ const findings = [];
47
+ const seen = /* @__PURE__ */ new Set();
48
+ const add = (kind, path, detail) => findings.push({
49
+ kind,
50
+ path,
51
+ detail
52
+ });
53
+ if (secret_like(key) && typeof value === "string") add("refuse", "", `key "${key}" looks like a secret — refusing to ship it into client-island HTML`);
54
+ (function walk(v, path) {
55
+ if (v === null || typeof v !== "object") {
56
+ if (typeof v === "function") add("refuse", path, "a bare function cannot cross an island boundary — make it a method on a [og.wire] class, a remote function, or provide it from an island");
57
+ else if (typeof v === "string" && path && secret_like(path.split(".").pop() ?? path)) add("warn", path, "secret-looking field crossing into client HTML — check this is not a credential");
58
+ return;
59
+ }
60
+ if (is_dom(v)) {
61
+ add("refuse", path, "live DOM node — it only exists in this document; provide it from an island (same-heap) instead");
62
+ return;
63
+ }
64
+ if (seen.has(v)) return;
65
+ seen.add(v);
66
+ const cls = v.constructor;
67
+ if (typeof cls === "function" && cls[wire]) {
68
+ add("wire", path, "transportable class — crosses via its [og.wire] codec");
69
+ return;
70
+ }
71
+ if (v[Symbol.for("ogygia.derived")] !== void 0) {
72
+ add("store", path, "resumable derived (og_derived) — its recipe crosses; islands re-derive against the reunified sources");
73
+ return;
74
+ }
75
+ if (is_store(v)) {
76
+ if (is_derived_like(v)) add("warn", path, "derived/readable store — the VALUE crosses but the derivation does not; islands see a frozen seed. Re-derive client-side or wire the sources");
77
+ else add("store", path, "store — auto-wires (current value crosses, islands share one live instance)");
78
+ const extra = Object.keys(v).filter((k) => !STORE_BUILTINS.has(k) && typeof v[k] === "function");
79
+ if (extra.length) add("warn", path, `store methods [${extra.join(", ")}] need a registered factory to survive — mark the factory (mark_store / auto-wire), else islands get a plain writable`);
80
+ return;
81
+ }
82
+ if (v instanceof Map) {
83
+ for (const [k, entry] of v) walk(entry, path ? `${path}.get(${String(k)})` : `get(${String(k)})`);
84
+ return;
85
+ }
86
+ if (v instanceof Set) {
87
+ let idx = 0;
88
+ for (const entry of v) walk(entry, `${path}[set:${idx++}]`);
89
+ return;
90
+ }
91
+ if (v instanceof Date || v instanceof RegExp) return;
92
+ if (Array.isArray(v)) {
93
+ v.forEach((entry, idx) => walk(entry, `${path}[${idx}]`));
94
+ return;
95
+ }
96
+ if (!is_plain_object(v)) {
97
+ add("refuse", path, `instance of class "${cls?.name ?? "?"}" without a [og.wire] codec — prototype and methods would be lost; give it \`static wire = import.meta.og.wire({ … })\``);
98
+ return;
99
+ }
100
+ for (const k of Object.keys(v)) walk(v[k], path ? `${path}.${k}` : k);
101
+ })(value, "");
102
+ return findings;
103
+ }
104
+ /** The findings that make a value undroppable-into-HTML (used to explain a dropped context key). */
105
+ function boundary_problems(value, key = "") {
106
+ return classify_boundary(value, key).filter((f) => f.kind === "refuse" || f.kind === "warn");
107
+ }
108
+ /** Format one finding as the console line for a dropped/degraded context key. */
109
+ function format_boundary_finding(key, f) {
110
+ return `[ogygia] context '${key}'${f.path ? ` @ ${f.path}` : ""}: ${f.detail}`;
111
+ }
112
+ /**
113
+ * The `import.meta.og.$` rewrite target for NON-function values — the universal boundary
114
+ * assertion. Classifies the value AT THE MARK (creation), so a refusal (DOM node, bare
115
+ * function, unwired class, secret) throws with the marked file:line instead of surfacing
116
+ * deep inside a serializer at request time. Mark-don't-wrap: the value itself is returned
117
+ * untouched — stores/classes/data keep their own passports; identity mints at the seam.
118
+ */
119
+ function __og_boundary(value, site) {
120
+ const refusals = classify_boundary(value).filter((f) => f.kind === "refuse");
121
+ if (refusals.length) {
122
+ const f = refusals[0];
123
+ throw new Error(`[ogygia] ${site} — og.$ value${f.path ? ` @ ${f.path}` : ""}: ${f.detail}` + (refusals.length > 1 ? ` (+${refusals.length - 1} more)` : ""));
124
+ }
125
+ return value;
126
+ }
127
+ export { __og_boundary, boundary_problems, classify_boundary, configure_boundary, format_boundary_finding };
@@ -0,0 +1,13 @@
1
+ /** Point the cache at a project (the Vite plugin calls this with the app root at config time). */
2
+ export declare function configure_build_cache(project_root: string): void;
3
+ /** Test hook: force the cache root (or `null` to disable, `undefined` to re-probe). */
4
+ export declare function __set_build_cache_root(dir: string | null | undefined): void;
5
+ export declare class BuildCache<T> {
6
+ readonly namespace: string;
7
+ constructor(namespace: string);
8
+ /** This namespace's DIRECTORY, for artifact trees the consumer manages itself (git checkouts).
9
+ * Returns the ensured absolute path, or `null` when the cache is unavailable. */
10
+ dir(): string | null;
11
+ get(key: string): T | null;
12
+ set(key: string, value: T): void;
13
+ }
@@ -0,0 +1,77 @@
1
+ import { fs, path } from "./compiler/host.js";
2
+ // src/build-cache.ts
3
+ /**
4
+ * ogygia's BUILD CACHE — one shared, namespaced store for everything derived at build time. Node-only.
5
+ *
6
+ * Each consumer initialises its own corner: `new BuildCache<T>('fences')` — its namespace is its
7
+ * directory inside the shared root, and it speaks `get`/`set` (JSON values) or `dir()` (an artifact
8
+ * tree it manages itself, like git checkouts) — never filesystem paths. Where things persist is this
9
+ * MODULE's concern: `node_modules/.ogygia/<namespace>/…` — inside `node_modules` deliberately,
10
+ * because build platforms cache that whole tree, so a warm CI build re-derives nothing (no clone,
11
+ * no shiki, no twoslash).
12
+ *
13
+ * Everything is best-effort: any FS error disables the cache for the session rather than failing a
14
+ * build — a cache must never be the reason a build breaks.
15
+ */
16
+ let root;
17
+ let configured;
18
+ /** Point the cache at a project (the Vite plugin calls this with the app root at config time). */
19
+ function configure_build_cache(project_root) {
20
+ if (configured === project_root) return;
21
+ configured = project_root;
22
+ root = void 0;
23
+ }
24
+ /** Test hook: force the cache root (or `null` to disable, `undefined` to re-probe). */
25
+ function __set_build_cache_root(dir) {
26
+ root = dir;
27
+ if (dir === void 0) configured = void 0;
28
+ }
29
+ function cache_root() {
30
+ if (root !== void 0) return root;
31
+ try {
32
+ const d = path.join(configured ?? process.cwd(), "node_modules", ".ogygia");
33
+ fs.mkdirSync(d, { recursive: true });
34
+ root = d;
35
+ } catch {
36
+ root = null;
37
+ }
38
+ return root;
39
+ }
40
+ var BuildCache = class {
41
+ namespace;
42
+ constructor(namespace) {
43
+ this.namespace = namespace;
44
+ }
45
+ /** This namespace's DIRECTORY, for artifact trees the consumer manages itself (git checkouts).
46
+ * Returns the ensured absolute path, or `null` when the cache is unavailable. */
47
+ dir() {
48
+ const r = cache_root();
49
+ if (!r) return null;
50
+ try {
51
+ const d = path.join(r, this.namespace);
52
+ fs.mkdirSync(d, { recursive: true });
53
+ return d;
54
+ } catch {
55
+ return null;
56
+ }
57
+ }
58
+ get(key) {
59
+ const d = this.dir();
60
+ if (!d) return null;
61
+ try {
62
+ return JSON.parse(fs.readFileSync(path.join(d, key + ".json"), "utf8"));
63
+ } catch {
64
+ return null;
65
+ }
66
+ }
67
+ set(key, value) {
68
+ const d = this.dir();
69
+ if (!d) return;
70
+ try {
71
+ const tmp = path.join(d, key + "." + process.pid + ".tmp");
72
+ fs.writeFileSync(tmp, JSON.stringify(value));
73
+ fs.renameSync(tmp, path.join(d, key + ".json"));
74
+ } catch {}
75
+ }
76
+ };
77
+ export { BuildCache, __set_build_cache_root, configure_build_cache };
@@ -0,0 +1 @@
1
+ export declare function blank_styles(code: string): string;
@@ -0,0 +1,63 @@
1
+ // src/compiler/blank-styles.ts
2
+ /**
3
+ * A component's source with every `<style>` block's CONTENT blanked: each character a space,
4
+ * newlines kept, so every offset is the source's own (edits made from the parse land on the
5
+ * original, and a `source.slice(ast.css.start, ast.css.end)` still reads the real style).
6
+ *
7
+ * For the passes that parse a RAW component (before any preprocessor) and never read its styles:
8
+ * Svelte's parser reads `<style>` as plain CSS, and a valid `<style lang="scss">` with SCSS-only
9
+ * syntax (`#{$i}`, `@each`, `@for`) throws `css_expected_identifier`. Those passes then skipped the
10
+ * file in silence: the barrel rewrite left its imports on their barrels (the island shipped the
11
+ * whole barrel), the island transform left its region imports untransformed.
12
+ *
13
+ * A `<style>` inside a `<script>` (a template string) is script text and is left alone. String
14
+ * scanning, no regex: it runs over every component.
15
+ */
16
+ /** Where the closing `</tag` is from `from`, or -1. Case-insensitive. */
17
+ function close_of(code, tag, from) {
18
+ const close = `</${tag}`;
19
+ for (let i = code.indexOf("</", from); i !== -1; i = code.indexOf("</", i + 2)) if (code.slice(i, i + close.length).toLowerCase() === close) return i;
20
+ return -1;
21
+ }
22
+ /** At `i`, an opening `<tag` (followed by whitespace, `>` or `/`)? */
23
+ function opens(code, i, tag) {
24
+ if (code.slice(i + 1, i + 1 + tag.length).toLowerCase() !== tag) return false;
25
+ const c = code[i + 1 + tag.length];
26
+ return c === ">" || c === "/" || c === " " || c === " " || c === "\n" || c === "\r";
27
+ }
28
+ function blank_styles(code) {
29
+ if (!code.includes("<style") && !code.includes("<STYLE")) return code;
30
+ let out = "";
31
+ let at = 0;
32
+ let i = code.indexOf("<");
33
+ while (i !== -1) {
34
+ if (opens(code, i, "script")) {
35
+ const gt = code.indexOf(">", i);
36
+ const close = gt === -1 ? -1 : close_of(code, "script", gt + 1);
37
+ if (close === -1) break;
38
+ i = code.indexOf("<", close + 2);
39
+ continue;
40
+ }
41
+ if (opens(code, i, "style")) {
42
+ const gt = code.indexOf(">", i);
43
+ const close = gt === -1 ? -1 : close_of(code, "style", gt + 1);
44
+ if (close === -1) break;
45
+ out += code.slice(at, gt + 1);
46
+ let run = 0;
47
+ for (let k = gt + 1; k < close; k++) {
48
+ const c = code[k];
49
+ if (c === "\n" || c === "\r") {
50
+ out += " ".repeat(run) + c;
51
+ run = 0;
52
+ } else run++;
53
+ }
54
+ out += " ".repeat(run);
55
+ at = close;
56
+ i = code.indexOf("<", close + 2);
57
+ continue;
58
+ }
59
+ i = code.indexOf("<", i + 1);
60
+ }
61
+ return at === 0 ? code : out + code.slice(at);
62
+ }
63
+ export { blank_styles };
@@ -0,0 +1,2 @@
1
+ /** `source` without a leading byte-order mark (the same string when there is none). */
2
+ export declare function strip_bom(source: string): string;
@@ -0,0 +1,15 @@
1
+ // src/compiler/bom.ts
2
+ /**
3
+ * A leading UTF-8 byte-order mark is invisible text. Svelte's `parse` drops it, so every AST offset
4
+ * it reports is one short of the raw source, and a pass that edits the raw source by those offsets
5
+ * (MagicString) lands one character early — splitting a tag name (`<qds-butto data-og-opaquen`, a
6
+ * field build). The compiler therefore takes the mark off at the doors where source comes in (the
7
+ * per-file transform, the barrel rewrite, the file reader), so every pass sees exactly the text its
8
+ * parser saw. Dropping it changes nothing a browser or a bundler reads.
9
+ */
10
+ const BOM = 65279;
11
+ /** `source` without a leading byte-order mark (the same string when there is none). */
12
+ function strip_bom(source) {
13
+ return source.charCodeAt(0) === BOM ? source.slice(1) : source;
14
+ }
15
+ export { strip_bom };
@@ -0,0 +1,8 @@
1
+ import { Compiler, Profiler } from "./driver.js";
2
+ import { Program, RegisterResult, host_key, strip_id } from "./program.js";
3
+ import { CompileCtx, CompileCtxInit } from "./ctx.js";
4
+ import { CompilerHost, HostCrypto, HostDirent, HostFs, HostHasher, HostPath, HostStats, set_host } from "./host.js";
5
+ import { ParseResult, RawParse, set_parser } from "./parse/oxc.js";
6
+ import { CLIENT_BINDING_STUB, transformHost, transformTsRegions, wrapperVirtualId } from "./region/transform.js";
7
+ import { islandVirtualId } from "./ids.js";
8
+ export { CLIENT_BINDING_STUB, CompileCtx, type CompileCtxInit, Compiler, type CompilerHost, type HostCrypto, type HostDirent, type HostFs, type HostHasher, type HostPath, type HostStats, type ParseResult, type Profiler, Program, type RawParse, type RegisterResult, host_key, islandVirtualId, set_host, set_parser, strip_id, transformHost, transformTsRegions, wrapperVirtualId };
@@ -0,0 +1,8 @@
1
+ import { Compiler } from "./driver.js";
2
+ import { Program, host_key, strip_id } from "./program.js";
3
+ import { CompileCtx } from "./ctx.js";
4
+ import { set_host } from "./host.js";
5
+ import { set_parser } from "./parse/oxc.js";
6
+ import { CLIENT_BINDING_STUB, transformHost, transformTsRegions, wrapperVirtualId } from "./region/transform.js";
7
+ import { islandVirtualId } from "./ids.js";
8
+ export { CLIENT_BINDING_STUB, CompileCtx, Compiler, Program, host_key, islandVirtualId, set_host, set_parser, strip_id, transformHost, transformTsRegions, wrapperVirtualId };
@@ -0,0 +1,11 @@
1
+ import { CLIENT_BINDING_STUB, transformHost, transformTsRegions, wrapperVirtualId } from "./region/transform.js";
2
+ import { islandVirtualId } from "./ids.js";
3
+ import { ParseResult, RawParse, parse_module, set_parser } from "./parse/oxc.js";
4
+ import { CompilerHost, createHash, fs, path, set_host } from "./host.js";
5
+ import { JsRegion, OgCall, find_og_calls, is_js_module, og_js_regions, split_first_string } from "./parse/scan.js";
6
+ import { og_member } from "./macros/wire.js";
7
+ import { BuildCache, __set_build_cache_root, configure_build_cache } from "../build-cache.js";
8
+ import { contentCssKey as content_css_key } from "../plugin/utils.js";
9
+ import { dedent } from "./macros/dedent.js";
10
+ import { run_browser_macros } from "./macros/browser.js";
11
+ export { BuildCache, CLIENT_BINDING_STUB, type CompilerHost, type JsRegion, type OgCall, type ParseResult, type RawParse, __set_build_cache_root, configure_build_cache, content_css_key, createHash, dedent, find_og_calls, fs, is_js_module, islandVirtualId, og_js_regions, og_member, parse_module, path, run_browser_macros, set_host, set_parser, split_first_string, transformHost, transformTsRegions, wrapperVirtualId };
@@ -0,0 +1,11 @@
1
+ import { CLIENT_BINDING_STUB, transformHost, transformTsRegions, wrapperVirtualId } from "./region/transform.js";
2
+ import { islandVirtualId } from "./ids.js";
3
+ import { parse_module, set_parser } from "./parse/oxc.js";
4
+ import { createHash, fs, path, set_host } from "./host.js";
5
+ import { find_og_calls, is_js_module, og_js_regions, split_first_string } from "./parse/scan.js";
6
+ import { og_member } from "./macros/wire.js";
7
+ import { BuildCache, __set_build_cache_root, configure_build_cache } from "../build-cache.js";
8
+ import { contentCssKey as content_css_key } from "../plugin/utils.js";
9
+ import { dedent } from "./macros/dedent.js";
10
+ import { run_browser_macros } from "./macros/browser.js";
11
+ export { BuildCache, CLIENT_BINDING_STUB, __set_build_cache_root, configure_build_cache, content_css_key, createHash, dedent, find_og_calls, fs, is_js_module, islandVirtualId, og_js_regions, og_member, parse_module, path, run_browser_macros, set_host, set_parser, split_first_string, transformHost, transformTsRegions, wrapperVirtualId };
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Does this module define an exported class carrying a transportable codec? Used to build
3
+ * the eager-registration manifest so islands never need a manual `import` of the class.
4
+ *
5
+ * Signal: an exported class with a `static` member whose key is COMPUTED (`static [x] = …` /
6
+ * `static [x]() {}`) — every rewritten wire member is exactly that — OR, pre-rewrite, the
7
+ * `import.meta.og.wire` construct marker (prescan reads RAW source, where the blessed spelling
8
+ * `static wire = import.meta.og.wire()` is not yet a computed member). A false positive (an
9
+ * unrelated computed static, the marker in a comment) only eagerly loads one extra module; a
10
+ * transportable class is never missed.
11
+ */
12
+ export declare function moduleHasTransportable(code: string, id_n: string): boolean;
13
+ /**
14
+ * Append `__register_transportable` calls for every exported class in this module. Returns
15
+ * the augmented code, or null when there is no exported class. Append-only — the module's
16
+ * existing sourcemap stays valid.
17
+ */
18
+ export declare function appendTransportRegistrations(code: string, id_n: string, root: string, pathModule: {
19
+ relative: (from: string, to: string) => string;
20
+ }): string | null;
21
+ /** True if a `.svelte` file's `<script module>` exports a transportable class. */
22
+ export declare function svelteModuleHasTransportable(code: string, id_n: string): boolean;
23
+ /** Inject registration for a `.svelte` module script's exported transportable classes. */
24
+ export declare function appendSvelteModuleRegistrations(code: string, id_n: string, root: string, pathModule: {
25
+ relative: (from: string, to: string) => string;
26
+ }): string | null;