@ecopages/core 0.2.0-beta.8 → 0.2.0-rc.0

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 (623) hide show
  1. package/README.md +42 -13
  2. package/package.json +361 -58
  3. package/src/adapters/README.md +6 -2
  4. package/src/adapters/abstract/application-adapter.d.ts +57 -5
  5. package/src/adapters/abstract/application-adapter.js +261 -203
  6. package/src/adapters/abstract/router-adapter.js +12 -4
  7. package/src/adapters/abstract/segment-path-matcher.d.ts +6 -0
  8. package/src/adapters/abstract/segment-path-matcher.js +147 -0
  9. package/src/adapters/abstract/server-adapter.d.ts +13 -2
  10. package/src/adapters/abstract/server-adapter.js +22 -14
  11. package/src/adapters/abstract/ws-pattern-matcher.d.ts +2 -50
  12. package/src/adapters/abstract/ws-pattern-matcher.js +24 -57
  13. package/src/adapters/bun/bun-user-websocket-lifecycle.js +93 -0
  14. package/src/adapters/bun/client-bridge.js +51 -50
  15. package/src/adapters/bun/create-app.d.ts +4 -6
  16. package/src/adapters/bun/create-app.js +169 -154
  17. package/src/adapters/bun/hmr-manager.d.ts +2 -3
  18. package/src/adapters/bun/hmr-manager.js +62 -57
  19. package/src/adapters/bun/index.d.ts +1 -1
  20. package/src/adapters/bun/index.js +2 -8
  21. package/src/adapters/bun/runtime-host.d.ts +1 -1
  22. package/src/adapters/bun/runtime-host.js +61 -54
  23. package/src/adapters/bun/server-adapter.d.ts +34 -53
  24. package/src/adapters/bun/server-adapter.js +557 -637
  25. package/src/adapters/bun/static-preview-host.d.ts +1 -1
  26. package/src/adapters/bun/static-preview-host.js +43 -41
  27. package/src/adapters/create-app.d.ts +1 -12
  28. package/src/adapters/create-app.js +11 -72
  29. package/src/adapters/index.d.ts +2 -2
  30. package/src/adapters/index.js +2 -8
  31. package/src/adapters/node/create-app.d.ts +4 -3
  32. package/src/adapters/node/create-app.js +123 -98
  33. package/src/adapters/node/http-request-bridge.js +147 -106
  34. package/src/adapters/node/node-client-bridge.js +62 -64
  35. package/src/adapters/node/node-hmr-manager.d.ts +2 -3
  36. package/src/adapters/node/node-hmr-manager.js +58 -48
  37. package/src/adapters/node/runtime-host.d.ts +1 -1
  38. package/src/adapters/node/runtime-host.js +96 -89
  39. package/src/adapters/node/server-adapter-dependencies.js +18 -17
  40. package/src/adapters/node/server-adapter.d.ts +28 -8
  41. package/src/adapters/node/server-adapter.js +349 -302
  42. package/src/adapters/node/static-content-server.js +172 -186
  43. package/src/adapters/node/static-preview-host.d.ts +1 -1
  44. package/src/adapters/node/static-preview-host.js +88 -64
  45. package/src/adapters/shared/hmr/dev-transform-entrypoint-registry.d.ts +16 -0
  46. package/src/adapters/shared/hmr/dev-transform-entrypoint-registry.js +32 -0
  47. package/src/adapters/shared/{hmr-html-response.d.ts → hmr/hmr-html-response.d.ts} +2 -2
  48. package/src/adapters/shared/hmr/hmr-html-response.js +50 -0
  49. package/src/adapters/shared/hmr/shared-hmr-manager.d.ts +92 -0
  50. package/src/adapters/shared/hmr/shared-hmr-manager.js +446 -0
  51. package/src/adapters/shared/http/api-request-pipeline.d.ts +23 -0
  52. package/src/adapters/shared/http/api-request-pipeline.js +132 -0
  53. package/src/adapters/shared/{api-response.d.ts → http/api-response.d.ts} +1 -1
  54. package/src/adapters/shared/http/api-response.js +79 -0
  55. package/src/adapters/shared/http/create-body-response.d.ts +12 -0
  56. package/src/adapters/shared/http/create-body-response.js +26 -0
  57. package/src/adapters/shared/http/define-api-handler.d.ts +90 -0
  58. package/src/adapters/shared/http/define-api-handler.js +49 -0
  59. package/src/adapters/shared/{explicit-static-render-preparation.d.ts → http/explicit-static-render-preparation.d.ts} +3 -3
  60. package/src/adapters/shared/http/explicit-static-render-preparation.js +29 -0
  61. package/src/adapters/shared/{explicit-static-route-matcher.d.ts → http/explicit-static-route-matcher.d.ts} +3 -9
  62. package/src/adapters/shared/http/explicit-static-route-matcher.js +59 -0
  63. package/src/adapters/shared/{file-route-middleware-pipeline.d.ts → http/file-route-middleware-pipeline.d.ts} +2 -2
  64. package/src/adapters/shared/http/file-route-middleware-pipeline.js +84 -0
  65. package/src/adapters/shared/{fs-server-response-factory.d.ts → http/fs-server-response-factory.d.ts} +7 -2
  66. package/src/adapters/shared/http/fs-server-response-factory.js +106 -0
  67. package/src/adapters/shared/{fs-server-response-matcher.d.ts → http/fs-server-response-matcher.d.ts} +25 -5
  68. package/src/adapters/shared/http/fs-server-response-matcher.js +260 -0
  69. package/src/adapters/shared/http/run-middleware-chain.d.ts +5 -0
  70. package/src/adapters/shared/http/run-middleware-chain.js +17 -0
  71. package/src/adapters/shared/{application-adapter.d.ts → runtime/application-adapter.d.ts} +2 -2
  72. package/src/adapters/shared/runtime/application-adapter.js +75 -0
  73. package/src/adapters/shared/runtime/collect-dev-prewarm-plan.d.ts +11 -0
  74. package/src/adapters/shared/runtime/collect-dev-prewarm-plan.js +29 -0
  75. package/src/adapters/shared/runtime/copy-runtime-public-dir.js +27 -0
  76. package/src/adapters/shared/runtime/dev-static-route-prewarm.d.ts +16 -0
  77. package/src/adapters/shared/runtime/dev-static-route-prewarm.js +66 -0
  78. package/src/adapters/shared/runtime/port-manager.d.ts +116 -0
  79. package/src/adapters/shared/runtime/port-manager.js +226 -0
  80. package/src/adapters/shared/{render-context.d.ts → runtime/render-context.d.ts} +2 -2
  81. package/src/adapters/shared/runtime/render-context.js +99 -0
  82. package/src/adapters/shared/{runtime-app-bootstrap.d.ts → runtime/runtime-app-bootstrap.d.ts} +4 -2
  83. package/src/adapters/shared/runtime/runtime-app-bootstrap.js +38 -0
  84. package/src/adapters/shared/runtime/runtime-server-lifecycle.d.ts +45 -0
  85. package/src/adapters/shared/runtime/runtime-server-lifecycle.js +71 -0
  86. package/src/adapters/shared/{server-adapter.d.ts → runtime/server-adapter.d.ts} +31 -50
  87. package/src/adapters/shared/runtime/server-adapter.js +301 -0
  88. package/src/adapters/shared/{server-route-handler.d.ts → runtime/server-route-handler.d.ts} +6 -33
  89. package/src/adapters/shared/runtime/server-route-handler.js +77 -0
  90. package/src/adapters/shared/{server-static-builder.d.ts → runtime/server-static-builder.d.ts} +26 -31
  91. package/src/adapters/shared/runtime/server-static-builder.js +172 -0
  92. package/src/adapters/shared/{static-preview-host.d.ts → runtime/static-preview-host.d.ts} +6 -1
  93. package/src/adapters/shared/{node-http-websocket-upgrades.d.ts → ws/node-http-websocket-upgrades.d.ts} +1 -1
  94. package/src/adapters/shared/ws/node-http-websocket-upgrades.js +109 -0
  95. package/src/adapters/shared/ws/websocket-lifecycle.d.ts +24 -0
  96. package/src/adapters/shared/ws/websocket-lifecycle.js +62 -0
  97. package/src/build/README.md +165 -45
  98. package/src/build/app-build-manifest-runtime.d.ts +39 -0
  99. package/src/build/app-build-manifest-runtime.js +145 -0
  100. package/src/build/{browser-runtime-manifest.d.ts → browser/browser-runtime-manifest.d.ts} +4 -0
  101. package/src/build/browser/browser-runtime-manifest.js +65 -0
  102. package/src/build/{browser-runtime-plugin-helpers.d.ts → browser/browser-runtime-plugin-helpers.d.ts} +3 -5
  103. package/src/build/browser/browser-runtime-plugin-helpers.js +32 -0
  104. package/src/build/{browser-runtime-plugin.d.ts → browser/browser-runtime-plugin.d.ts} +12 -13
  105. package/src/build/browser/browser-runtime-plugin.js +218 -0
  106. package/src/build/browser/jsx-ownership-plugins.d.ts +24 -0
  107. package/src/build/browser/jsx-ownership-plugins.js +55 -0
  108. package/src/build/browser/lit-static-render-worker-context.d.ts +2 -0
  109. package/src/build/browser/lit-static-render-worker-context.js +4 -0
  110. package/src/build/build-adapter.d.ts +29 -340
  111. package/src/build/build-adapter.js +258 -260
  112. package/src/build/{build-input-fingerprint.d.ts → cache/build-input-fingerprint.d.ts} +3 -3
  113. package/src/build/cache/build-input-fingerprint.js +33 -0
  114. package/src/build/cache/cache-constants.d.ts +4 -0
  115. package/src/build/cache/cache-constants.js +4 -0
  116. package/src/build/cache/cache-keys.d.ts +22 -0
  117. package/src/build/cache/cache-keys.js +71 -0
  118. package/src/build/{pages-unified-graph-build.d.ts → cache/pages-unified-graph-build.d.ts} +1 -1
  119. package/src/build/cache/pages-unified-graph-build.js +199 -0
  120. package/src/build/cache/production-build-cache.d.ts +21 -0
  121. package/src/build/cache/production-build-cache.js +56 -0
  122. package/src/build/{server-entry-build-cache.d.ts → cache/server-entry-build-cache.d.ts} +3 -4
  123. package/src/build/cache/server-entry-build-cache.js +153 -0
  124. package/src/build/contracts/build-contracts.d.ts +96 -0
  125. package/src/build/contracts/build-contracts.js +1 -0
  126. package/src/build/contracts/build-manifest.d.ts +90 -0
  127. package/src/build/contracts/build-manifest.js +64 -0
  128. package/src/build/contracts/build-types.js +1 -0
  129. package/src/build/contracts/content-virtual-modules.d.ts +12 -0
  130. package/src/build/contracts/content-virtual-modules.js +29 -0
  131. package/src/build/{rolldown-adapter-helpers.d.ts → rolldown/rolldown-adapter-helpers.d.ts} +32 -9
  132. package/src/build/rolldown/rolldown-adapter-helpers.js +463 -0
  133. package/src/build/{rolldown-build-adapter.d.ts → rolldown/rolldown-build-adapter.d.ts} +3 -7
  134. package/src/build/rolldown/rolldown-build-adapter.js +57 -0
  135. package/src/build/{rolldown-build-invocation-metrics.d.ts → rolldown/rolldown-build-invocation-metrics.d.ts} +1 -1
  136. package/src/build/rolldown/rolldown-build-invocation-metrics.js +39 -0
  137. package/src/build/{rolldown-plugin-bridge.d.ts → rolldown/rolldown-plugin-bridge.d.ts} +16 -2
  138. package/src/build/rolldown/rolldown-plugin-bridge.js +284 -0
  139. package/src/build/rolldown/rolldown-source-transform-pass.d.ts +15 -0
  140. package/src/build/rolldown/rolldown-source-transform-pass.js +70 -0
  141. package/src/build/rolldown/runtime-build-output-normalizer.js +253 -0
  142. package/src/build/rolldown/server-side-css-shim-plugin.js +58 -0
  143. package/src/build/runtime/build-profile-options.d.ts +7 -0
  144. package/src/build/runtime/build-profile-options.js +37 -0
  145. package/src/build/runtime/build-request-identity.d.ts +17 -0
  146. package/src/build/runtime/build-request-identity.js +79 -0
  147. package/src/build/runtime/build-request-policy.d.ts +58 -0
  148. package/src/build/runtime/build-request-policy.js +84 -0
  149. package/src/build/runtime/build-runtime.d.ts +28 -0
  150. package/src/build/runtime/build-runtime.js +75 -0
  151. package/src/build/runtime/deduping-build-executor.d.ts +21 -0
  152. package/src/build/runtime/deduping-build-executor.js +40 -0
  153. package/src/build/{parallel-build-executor.d.ts → runtime/parallel-build-executor.d.ts} +1 -1
  154. package/src/build/runtime/parallel-build-executor.js +60 -0
  155. package/src/build/{serialized-build-executor.d.ts → runtime/serialized-build-executor.d.ts} +1 -1
  156. package/src/build/runtime/serialized-build-executor.js +79 -0
  157. package/src/cache/index.d.ts +2 -1
  158. package/src/cache/index.js +7 -6
  159. package/src/cache/module-parse-cache.d.ts +5 -0
  160. package/src/cache/module-parse-cache.js +122 -67
  161. package/src/cache/module-transform-profiler.d.ts +8 -0
  162. package/src/cache/module-transform-profiler.js +8 -0
  163. package/src/client/navigation-scripts/classification.d.ts +16 -0
  164. package/src/client/navigation-scripts/classification.js +49 -0
  165. package/src/client/navigation-scripts/index.d.ts +3 -0
  166. package/src/client/navigation-scripts/index.js +3 -0
  167. package/src/client/navigation-scripts/navigation-scripts.test.browser.d.ts +1 -0
  168. package/src/client/navigation-scripts/navigation-scripts.test.browser.js +61 -0
  169. package/src/client/navigation-scripts/registry.d.ts +11 -0
  170. package/src/client/navigation-scripts/registry.js +16 -0
  171. package/src/client/navigation-scripts/rerun-queue.d.ts +37 -0
  172. package/src/client/navigation-scripts/rerun-queue.js +90 -0
  173. package/src/client/scroll.d.ts +17 -0
  174. package/src/client/scroll.js +33 -0
  175. package/src/client/scroll.test.browser.d.ts +1 -0
  176. package/src/client/scroll.test.browser.js +31 -0
  177. package/src/client/view-transitions.d.ts +32 -0
  178. package/src/client/view-transitions.js +120 -0
  179. package/src/client/view-transitions.test.browser.d.ts +1 -0
  180. package/src/client/view-transitions.test.browser.js +56 -0
  181. package/src/config/README.md +1 -1
  182. package/src/config/config-builder.d.ts +42 -12
  183. package/src/config/config-builder.js +645 -600
  184. package/src/config/constants.d.ts +1 -0
  185. package/src/config/constants.js +44 -23
  186. package/src/declarations.d.ts +1 -0
  187. package/src/dev/README.md +24 -0
  188. package/src/dev/client-bridge-registry.d.ts +5 -0
  189. package/src/dev/client-bridge-registry.js +10 -0
  190. package/src/dev/dev-client-ownership.d.ts +7 -0
  191. package/src/dev/dev-client-ownership.js +8 -0
  192. package/src/dev/hmr-manager-registry.d.ts +8 -0
  193. package/src/dev/hmr-manager-registry.js +10 -0
  194. package/src/dev/host-runtime.d.ts +3 -0
  195. package/src/dev/host-runtime.js +25 -23
  196. package/src/dev/runtime-server-started-message.d.ts +2 -0
  197. package/src/dev/runtime-server-started-message.js +3 -0
  198. package/src/dev/sc-server.js +106 -103
  199. package/src/dev/transform-server/dev-transform-bundler.d.ts +24 -0
  200. package/src/dev/transform-server/dev-transform-bundler.js +79 -0
  201. package/src/dev/transform-server/dev-transform-externalize-plugin.d.ts +12 -0
  202. package/src/dev/transform-server/dev-transform-externalize-plugin.js +29 -0
  203. package/src/dev/transform-server/dev-transform-import-rewriter.d.ts +16 -0
  204. package/src/dev/transform-server/dev-transform-import-rewriter.js +127 -0
  205. package/src/dev/transform-server/dev-transform-module-kind.d.ts +13 -0
  206. package/src/dev/transform-server/dev-transform-module-kind.js +17 -0
  207. package/src/dev/transform-server/dev-transform-runtime-specifiers.d.ts +5 -0
  208. package/src/dev/transform-server/dev-transform-runtime-specifiers.js +16 -0
  209. package/src/dev/transform-server/dev-transform-server.d.ts +41 -0
  210. package/src/dev/transform-server/dev-transform-server.js +191 -0
  211. package/src/dev/transform-server/dev-transform-url.d.ts +13 -0
  212. package/src/dev/transform-server/dev-transform-url.js +58 -0
  213. package/src/dev/transform-server/dev-transform-vendor-registry.d.ts +28 -0
  214. package/src/dev/transform-server/dev-transform-vendor-registry.js +166 -0
  215. package/src/dev/transform-server/index.d.ts +6 -0
  216. package/src/dev/transform-server/index.js +4 -0
  217. package/src/dev/transform-server/types.d.ts +15 -0
  218. package/src/dev/transform-server/types.js +1 -0
  219. package/src/dev-toolbar/README.md +52 -0
  220. package/src/dev-toolbar/define-dev-tool.d.ts +21 -0
  221. package/src/dev-toolbar/define-dev-tool.js +9 -0
  222. package/src/dev-toolbar/dev-toolbar-config.d.ts +25 -0
  223. package/src/dev-toolbar/dev-toolbar-config.js +19 -0
  224. package/src/dev-toolbar/dev-toolbar-host.d.ts +49 -0
  225. package/src/dev-toolbar/dev-toolbar-host.js +117 -0
  226. package/src/dev-toolbar/dev-toolbar-html-response.d.ts +11 -0
  227. package/src/dev-toolbar/dev-toolbar-html-response.js +14 -0
  228. package/src/dev-toolbar/dev-toolbar-manifest-contract.d.ts +22 -0
  229. package/src/dev-toolbar/dev-toolbar-manifest-contract.js +2 -0
  230. package/src/dev-toolbar/dev-toolbar-manifest.d.ts +15 -0
  231. package/src/dev-toolbar/dev-toolbar-manifest.js +52 -0
  232. package/src/dev-toolbar/dev-toolbar-package.d.ts +34 -0
  233. package/src/dev-toolbar/dev-toolbar-package.js +78 -0
  234. package/src/dev-toolbar/dev-toolbar-runtime-paths.d.ts +10 -0
  235. package/src/dev-toolbar/dev-toolbar-runtime-paths.js +13 -0
  236. package/src/diagnostics/request-build-dedupe.d.ts +18 -0
  237. package/src/diagnostics/request-build-dedupe.js +39 -0
  238. package/src/diagnostics/request-pipeline-metrics.d.ts +38 -0
  239. package/src/diagnostics/request-pipeline-metrics.js +121 -0
  240. package/src/diagnostics/startup-trace.d.ts +81 -0
  241. package/src/diagnostics/startup-trace.js +281 -0
  242. package/src/eco/README.md +17 -0
  243. package/src/eco/component-identity.d.ts +13 -0
  244. package/src/eco/component-identity.js +18 -0
  245. package/src/eco/eco-declared-component.d.ts +15 -0
  246. package/src/eco/eco-declared-component.js +23 -0
  247. package/src/eco/eco.browser.js +63 -70
  248. package/src/eco/eco.js +163 -97
  249. package/src/eco/eco.types.d.ts +47 -8
  250. package/src/eco/eco.types.js +5 -0
  251. package/src/eco/eco.utils.d.ts +1 -1
  252. package/src/eco/eco.utils.js +1 -10
  253. package/src/eco/global-injector-map.js +55 -41
  254. package/src/eco/lazy-injector-map.js +90 -60
  255. package/src/eco/module-dependencies.js +52 -44
  256. package/src/eco/page-layout-normalization.d.ts +21 -0
  257. package/src/eco/page-layout-normalization.js +69 -0
  258. package/src/env.d.ts +2 -0
  259. package/src/errors/http-error.d.ts +8 -0
  260. package/src/errors/http-error.js +66 -49
  261. package/src/errors/index.d.ts +1 -0
  262. package/src/errors/index.js +3 -6
  263. package/src/errors/locals-access-error.js +5 -8
  264. package/src/errors/undeclared-component-dependency-error.d.ts +11 -0
  265. package/src/errors/undeclared-component-dependency-error.js +17 -0
  266. package/src/global/app-logger.js +3 -6
  267. package/src/hmr/README.md +21 -0
  268. package/src/hmr/client/hmr-runtime.js +119 -110
  269. package/src/hmr/client/module-update.d.ts +13 -0
  270. package/src/hmr/client/module-update.js +39 -0
  271. package/src/hmr/hmr-asset-paths.d.ts +14 -0
  272. package/src/hmr/hmr-asset-paths.js +22 -0
  273. package/src/hmr/hmr-entrypoint-output.d.ts +21 -0
  274. package/src/hmr/hmr-entrypoint-output.js +34 -0
  275. package/src/hmr/hmr-file-change-prep.d.ts +10 -0
  276. package/src/hmr/hmr-file-change-prep.js +14 -0
  277. package/src/hmr/hmr-registered-entrypoints-context.d.ts +7 -0
  278. package/src/hmr/hmr-registered-entrypoints-context.js +1 -0
  279. package/src/hmr/hmr-runtime-paths.d.ts +10 -0
  280. package/src/hmr/hmr-runtime-paths.js +13 -0
  281. package/src/hmr/hmr-strategy.d.ts +9 -0
  282. package/src/hmr/hmr-strategy.js +113 -42
  283. package/src/hmr/strategies/default-hmr-strategy.js +55 -33
  284. package/src/hmr/strategies/js-hmr-strategy.d.ts +6 -97
  285. package/src/hmr/strategies/js-hmr-strategy.js +107 -167
  286. package/src/hmr/strategies/server-rendered-template-hmr-strategy.d.ts +17 -0
  287. package/src/hmr/strategies/server-rendered-template-hmr-strategy.js +35 -0
  288. package/src/index.browser.d.ts +1 -0
  289. package/src/index.browser.js +2 -4
  290. package/src/index.d.ts +4 -1
  291. package/src/index.js +7 -21
  292. package/src/islands/README.md +25 -0
  293. package/src/islands/island-host.d.ts +37 -0
  294. package/src/islands/island-host.js +55 -0
  295. package/src/plugins/README.md +2 -1
  296. package/src/plugins/alias-resolver-cache.d.ts +6 -9
  297. package/src/plugins/alias-resolver-cache.js +114 -97
  298. package/src/plugins/alias-resolver-plugin.d.ts +3 -3
  299. package/src/plugins/alias-resolver-plugin.js +35 -62
  300. package/src/plugins/define-integration.d.ts +26 -0
  301. package/src/plugins/define-integration.js +20 -0
  302. package/src/plugins/eco-component-meta-plugin.d.ts +6 -102
  303. package/src/plugins/eco-component-meta-plugin.js +123 -162
  304. package/src/plugins/foreign-jsx-override-plugin.d.ts +1 -1
  305. package/src/plugins/foreign-jsx-override-plugin.js +49 -37
  306. package/src/plugins/integration-plugin.d.ts +24 -6
  307. package/src/plugins/integration-plugin.js +212 -195
  308. package/src/plugins/jsx-import-source.utils.d.ts +8 -0
  309. package/src/plugins/jsx-import-source.utils.js +21 -0
  310. package/src/plugins/package-specifier.d.ts +12 -0
  311. package/src/plugins/package-specifier.js +33 -0
  312. package/src/plugins/processor.d.ts +66 -12
  313. package/src/plugins/processor.js +168 -137
  314. package/src/plugins/runtime-capability.js +1 -0
  315. package/src/plugins/source-transform.d.ts +32 -1
  316. package/src/plugins/source-transform.js +112 -60
  317. package/src/plugins/tsconfig-import-resolver.d.ts +37 -0
  318. package/src/plugins/tsconfig-import-resolver.js +262 -0
  319. package/src/route-renderer/GRAPH.md +24 -30
  320. package/src/route-renderer/README.md +52 -32
  321. package/src/route-renderer/orchestration/document-shell/document-shell-render.service.d.ts +107 -0
  322. package/src/route-renderer/orchestration/document-shell/document-shell-render.service.js +155 -0
  323. package/src/route-renderer/orchestration/document-shell/layout-shell-props.service.d.ts +20 -0
  324. package/src/route-renderer/orchestration/document-shell/layout-shell-props.service.js +37 -0
  325. package/src/route-renderer/orchestration/{component-render-context.d.ts → foreign-child/component-render-context.d.ts} +8 -15
  326. package/src/route-renderer/orchestration/foreign-child/component-render-context.js +196 -0
  327. package/src/route-renderer/orchestration/{render-output.utils.d.ts → foreign-child/foreign-child-output.utils.d.ts} +20 -7
  328. package/src/route-renderer/orchestration/foreign-child/foreign-child-output.utils.js +195 -0
  329. package/src/route-renderer/orchestration/{foreign-subtree-execution.service.d.ts → foreign-child/foreign-subtree-execution.service.d.ts} +64 -34
  330. package/src/route-renderer/orchestration/foreign-child/foreign-subtree-execution.service.js +354 -0
  331. package/src/route-renderer/orchestration/foreign-child/owning-renderer-resolution.d.ts +19 -0
  332. package/src/route-renderer/orchestration/foreign-child/owning-renderer-resolution.js +36 -0
  333. package/src/route-renderer/orchestration/integration-renderer.d.ts +37 -153
  334. package/src/route-renderer/orchestration/integration-renderer.js +803 -1008
  335. package/src/route-renderer/orchestration/integration-renderer.test-fixtures.d.ts +75 -0
  336. package/src/route-renderer/orchestration/integration-renderer.test-fixtures.js +173 -0
  337. package/src/route-renderer/orchestration/ownership-graph/component-graph-collectors.d.ts +10 -0
  338. package/src/route-renderer/orchestration/ownership-graph/component-graph-collectors.js +132 -0
  339. package/src/route-renderer/orchestration/ownership-graph/component-graph.d.ts +34 -0
  340. package/src/route-renderer/orchestration/ownership-graph/component-graph.js +89 -0
  341. package/src/route-renderer/orchestration/{ownership-validation.service.d.ts → ownership-graph/ownership-validation.service.d.ts} +6 -2
  342. package/src/route-renderer/orchestration/ownership-graph/ownership-validation.service.js +77 -0
  343. package/src/route-renderer/orchestration/page-browser-graph/global-injector-assets.service.d.ts +7 -0
  344. package/src/route-renderer/orchestration/page-browser-graph/global-injector-assets.service.js +30 -0
  345. package/src/route-renderer/orchestration/page-browser-graph/grouped-graph-build-plan.d.ts +15 -0
  346. package/src/route-renderer/orchestration/page-browser-graph/grouped-graph-build-plan.js +9 -0
  347. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-contribution.merge.d.ts +5 -0
  348. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-contribution.merge.js +30 -0
  349. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-merge.utils.d.ts +12 -0
  350. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-merge.utils.js +32 -0
  351. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-session.d.ts +126 -0
  352. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-session.js +542 -0
  353. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph.service.d.ts +47 -0
  354. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph.service.js +248 -0
  355. package/src/route-renderer/orchestration/{processed-asset-dedupe.d.ts → page-browser-graph/processed-asset-dedupe.d.ts} +1 -1
  356. package/src/route-renderer/orchestration/page-browser-graph/processed-asset-dedupe.js +23 -0
  357. package/src/route-renderer/orchestration/page-browser-graph/route-instance-key.d.ts +29 -0
  358. package/src/route-renderer/orchestration/page-browser-graph/route-instance-key.js +54 -0
  359. package/src/route-renderer/orchestration/route-pipeline/integration-route-render-adapter.d.ts +38 -0
  360. package/src/route-renderer/orchestration/route-pipeline/integration-route-render-adapter.js +26 -0
  361. package/src/route-renderer/orchestration/route-pipeline/marker-artifact.utils.d.ts +6 -0
  362. package/src/route-renderer/orchestration/route-pipeline/marker-artifact.utils.js +25 -0
  363. package/src/route-renderer/orchestration/route-pipeline/robots-meta.contribution.d.ts +15 -0
  364. package/src/route-renderer/orchestration/route-pipeline/robots-meta.contribution.js +43 -0
  365. package/src/route-renderer/orchestration/route-pipeline/route-html-finalization.service.d.ts +25 -0
  366. package/src/route-renderer/orchestration/route-pipeline/route-html-finalization.service.js +44 -0
  367. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.builder.d.ts +26 -0
  368. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.builder.js +44 -0
  369. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.utils.d.ts +4 -0
  370. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.utils.js +30 -0
  371. package/src/route-renderer/orchestration/{route-render-orchestrator.d.ts → route-pipeline/route-render-orchestrator.d.ts} +24 -54
  372. package/src/route-renderer/orchestration/route-pipeline/route-render-orchestrator.js +215 -0
  373. package/src/{integrations/ghtml/ghtml-renderer.d.ts → route-renderer/orchestration/string-markup-renderer.d.ts} +8 -10
  374. package/src/route-renderer/orchestration/string-markup-renderer.js +52 -0
  375. package/src/route-renderer/page-loading/component-dependency-collection.js +121 -121
  376. package/src/route-renderer/page-loading/declared-asset-collection.js +66 -94
  377. package/src/route-renderer/page-loading/dependency-resolver.js +101 -104
  378. package/src/route-renderer/page-loading/ecopages-virtual-imports.d.ts +1 -0
  379. package/src/route-renderer/page-loading/ecopages-virtual-imports.js +64 -51
  380. package/src/route-renderer/page-loading/file-scoped-dependency-components.d.ts +42 -0
  381. package/src/route-renderer/page-loading/file-scoped-dependency-components.js +94 -0
  382. package/src/route-renderer/page-loading/lazy-entry-collection.js +75 -98
  383. package/src/route-renderer/page-loading/lazy-trigger-planning.js +47 -36
  384. package/src/route-renderer/page-loading/module-declaration-aggregation.js +39 -28
  385. package/src/route-renderer/page-loading/module-declaration-scripts.js +10 -15
  386. package/src/route-renderer/page-loading/page-dependency-bundling.js +156 -113
  387. package/src/route-renderer/page-loading/page-module-loader.d.ts +2 -1
  388. package/src/route-renderer/page-loading/page-module-loader.js +136 -124
  389. package/src/route-renderer/page-loading/resolved-page-dependencies.d.ts +12 -0
  390. package/src/route-renderer/page-loading/resolved-page-dependencies.js +38 -0
  391. package/src/route-renderer/route-renderer.js +74 -76
  392. package/src/router/README.md +31 -0
  393. package/src/router/client/link-intent.d.ts +11 -21
  394. package/src/router/client/link-intent.js +56 -30
  395. package/src/router/client/link-intent.test.browser.js +50 -39
  396. package/src/router/client/link-navigation-policy.d.ts +45 -0
  397. package/src/router/client/link-navigation-policy.js +122 -0
  398. package/src/router/client/link-navigation-policy.test.browser.d.ts +1 -0
  399. package/src/router/client/link-navigation-policy.test.browser.js +82 -0
  400. package/src/router/client/navigation-coordinator.d.ts +1 -1
  401. package/src/router/client/navigation-coordinator.js +235 -211
  402. package/src/router/client/navigation-lifecycle.d.ts +55 -0
  403. package/src/router/client/navigation-lifecycle.js +50 -0
  404. package/src/router/client/navigation-lifecycle.test.browser.d.ts +1 -0
  405. package/src/router/client/navigation-lifecycle.test.browser.js +118 -0
  406. package/src/router/server/route-registry.js +237 -242
  407. package/src/services/README.md +5 -0
  408. package/src/services/assets/asset-processing-service/asset-dependency-keys.d.ts +13 -0
  409. package/src/services/assets/asset-processing-service/asset-dependency-keys.js +64 -50
  410. package/src/services/assets/asset-processing-service/asset-processing.service.d.ts +12 -1
  411. package/src/services/assets/asset-processing-service/asset-processing.service.js +335 -268
  412. package/src/services/assets/asset-processing-service/asset.factory.js +78 -81
  413. package/src/services/assets/asset-processing-service/assets.types.d.ts +1 -1
  414. package/src/services/assets/asset-processing-service/assets.types.js +1 -0
  415. package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.d.ts +1 -1
  416. package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.js +57 -46
  417. package/src/services/assets/asset-processing-service/browser-runtime-entry-resolution.d.ts +52 -0
  418. package/src/services/assets/asset-processing-service/browser-runtime-entry-resolution.js +115 -0
  419. package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.js +53 -58
  420. package/src/services/assets/asset-processing-service/finalize-processed-asset.d.ts +3 -0
  421. package/src/services/assets/asset-processing-service/finalize-processed-asset.js +5 -0
  422. package/src/services/assets/asset-processing-service/grouped-content-bundles.d.ts +2 -1
  423. package/src/services/assets/asset-processing-service/grouped-content-bundles.js +85 -60
  424. package/src/services/assets/asset-processing-service/index.d.ts +2 -0
  425. package/src/services/assets/asset-processing-service/index.js +8 -6
  426. package/src/services/assets/asset-processing-service/inline-content-script-body.d.ts +11 -0
  427. package/src/services/assets/asset-processing-service/inline-content-script-body.js +23 -0
  428. package/src/services/assets/asset-processing-service/materialize-content-script-asset.d.ts +9 -0
  429. package/src/services/assets/asset-processing-service/materialize-content-script-asset.js +22 -0
  430. package/src/services/assets/asset-processing-service/page-package.js +70 -72
  431. package/src/services/assets/asset-processing-service/processor.interface.js +7 -5
  432. package/src/services/assets/asset-processing-service/processor.registry.js +11 -14
  433. package/src/services/assets/asset-processing-service/processors/base/base-processor.js +59 -62
  434. package/src/services/assets/asset-processing-service/processors/base/base-script-processor.d.ts +0 -2
  435. package/src/services/assets/asset-processing-service/processors/base/base-script-processor.js +102 -130
  436. package/src/services/assets/asset-processing-service/processors/index.js +5 -5
  437. package/src/services/assets/asset-processing-service/processors/script/content-script.processor.d.ts +8 -0
  438. package/src/services/assets/asset-processing-service/processors/script/content-script.processor.js +111 -111
  439. package/src/services/assets/asset-processing-service/processors/script/file-script.processor.d.ts +0 -1
  440. package/src/services/assets/asset-processing-service/processors/script/file-script.processor.js +95 -94
  441. package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.js +136 -135
  442. package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.d.ts +0 -3
  443. package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +26 -57
  444. package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.d.ts +0 -3
  445. package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.js +33 -67
  446. package/src/services/assets/asset-processing-service/processors/stylesheet/stylesheet-processor-pipeline.d.ts +2 -0
  447. package/src/services/assets/asset-processing-service/processors/stylesheet/stylesheet-processor-pipeline.js +44 -0
  448. package/src/services/assets/asset-processing-service/resolve-integration-plugin.d.ts +4 -0
  449. package/src/services/assets/asset-processing-service/resolve-integration-plugin.js +15 -0
  450. package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.d.ts +0 -1
  451. package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.js +27 -44
  452. package/src/services/assets/browser-bundle.service.d.ts +27 -30
  453. package/src/services/assets/browser-bundle.service.js +54 -46
  454. package/src/services/assets/browser-runtime-asset-generation.d.ts +17 -0
  455. package/src/services/assets/browser-runtime-asset-generation.js +28 -0
  456. package/src/services/cache/cache.types.d.ts +4 -2
  457. package/src/services/cache/cache.types.js +5 -0
  458. package/src/services/cache/html-page-cache-dependency-index.d.ts +34 -0
  459. package/src/services/cache/html-page-cache-dependency-index.js +88 -0
  460. package/src/services/cache/index.d.ts +2 -0
  461. package/src/services/cache/index.js +8 -7
  462. package/src/services/cache/memory-cache-store.js +101 -89
  463. package/src/services/cache/page-cache-service.d.ts +31 -1
  464. package/src/services/cache/page-cache-service.js +237 -150
  465. package/src/services/cache/page-request-cache-coordinator.service.d.ts +2 -1
  466. package/src/services/cache/page-request-cache-coordinator.service.js +112 -102
  467. package/src/services/html/html-rewriter-provider.service.js +61 -61
  468. package/src/services/html/html-transformer.service.js +249 -266
  469. package/src/services/invalidation/development-invalidation.service.d.ts +15 -1
  470. package/src/services/invalidation/development-invalidation.service.js +241 -204
  471. package/src/services/module-loading/README.md +9 -6
  472. package/src/services/module-loading/app-module-loader.service.js +1 -0
  473. package/src/services/module-loading/app-server-module-transpiler.service.d.ts +8 -0
  474. package/src/services/module-loading/app-server-module-transpiler.service.js +104 -106
  475. package/src/services/module-loading/collection-server-module-build.service.d.ts +19 -0
  476. package/src/services/module-loading/collection-server-module-build.service.js +83 -0
  477. package/src/services/module-loading/host-module-loader-registry.js +6 -11
  478. package/src/services/module-loading/module-loading-types.js +1 -0
  479. package/src/services/module-loading/page-module-import.service.d.ts +7 -12
  480. package/src/services/module-loading/page-module-import.service.js +232 -206
  481. package/src/services/module-loading/route-module-build-cache-registry.d.ts +2 -0
  482. package/src/services/module-loading/route-module-build-cache-registry.js +59 -33
  483. package/src/services/module-loading/route-module-build-cache.js +3 -38
  484. package/src/services/module-loading/route-module-build-cache.store.d.ts +10 -0
  485. package/src/services/module-loading/route-module-build-cache.store.js +213 -196
  486. package/src/services/module-loading/route-module-build-manifest.d.ts +10 -14
  487. package/src/services/module-loading/route-module-build-manifest.js +54 -118
  488. package/src/services/module-loading/route-module-dependency-hasher.d.ts +2 -2
  489. package/src/services/module-loading/route-module-dependency-hasher.js +136 -109
  490. package/src/services/module-loading/server-module-transpiler.service.d.ts +1 -3
  491. package/src/services/module-loading/server-module-transpiler.service.js +65 -62
  492. package/src/services/module-loading/source-module-support.js +15 -7
  493. package/src/services/runtime-state/dev-graph.service.js +165 -157
  494. package/src/services/runtime-state/entrypoint-dependency-graph.service.js +85 -76
  495. package/src/services/runtime-state/server-invalidation-state.service.js +38 -30
  496. package/src/services/validation/schema-validation-service.d.ts +1 -4
  497. package/src/services/validation/schema-validation-service.js +156 -95
  498. package/src/services/validation/standard-schema.types.d.ts +9 -62
  499. package/src/services/validation/standard-schema.types.js +1 -0
  500. package/src/services/validation/validate-standard-schema.d.ts +7 -0
  501. package/src/services/validation/validate-standard-schema.js +14 -0
  502. package/src/static-site-generator/README.md +10 -2
  503. package/src/static-site-generator/production-page-browser-graph-prebuild.d.ts +32 -0
  504. package/src/static-site-generator/production-page-browser-graph-prebuild.js +57 -0
  505. package/src/static-site-generator/sitemap-routes.d.ts +14 -0
  506. package/src/static-site-generator/sitemap-routes.js +36 -0
  507. package/src/static-site-generator/sitemap.d.ts +15 -0
  508. package/src/static-site-generator/sitemap.js +42 -0
  509. package/src/static-site-generator/static-build-invalidation.d.ts +2 -2
  510. package/src/static-site-generator/static-build-invalidation.js +33 -74
  511. package/src/static-site-generator/static-export-context.d.ts +9 -1
  512. package/src/static-site-generator/static-export-context.js +1 -0
  513. package/src/static-site-generator/static-site-generator.d.ts +27 -6
  514. package/src/static-site-generator/static-site-generator.js +528 -389
  515. package/src/types/internal-types.d.ts +55 -17
  516. package/src/types/internal-types.js +1 -0
  517. package/src/types/public-types.d.ts +236 -95
  518. package/src/types/public-types.js +1 -0
  519. package/src/utils/deep-merge.js +39 -26
  520. package/src/utils/ecopages-route-info.d.ts +26 -0
  521. package/src/utils/ecopages-route-info.js +30 -0
  522. package/src/utils/hash.js +3 -6
  523. package/src/utils/html-escaping.d.ts +7 -0
  524. package/src/utils/html-escaping.js +22 -5
  525. package/src/utils/invariant.js +11 -10
  526. package/src/utils/locals-utils.js +32 -22
  527. package/src/utils/parse-cli-args.d.ts +1 -0
  528. package/src/utils/parse-cli-args.js +73 -62
  529. package/src/utils/path-pattern.d.ts +23 -0
  530. package/src/utils/path-pattern.js +42 -0
  531. package/src/utils/path-utils.module.js +8 -11
  532. package/src/utils/resolve-entry-file.js +70 -38
  533. package/src/utils/resolve-work-dir.js +23 -27
  534. package/src/utils/runtime.js +24 -33
  535. package/src/utils/server-utils.module.d.ts +3 -2
  536. package/src/utils/server-utils.module.js +60 -53
  537. package/src/utils/static-file-extensions.d.ts +12 -0
  538. package/src/utils/static-file-extensions.js +54 -0
  539. package/src/watchers/project-watcher-ignore.d.ts +11 -0
  540. package/src/watchers/project-watcher-ignore.js +17 -0
  541. package/src/watchers/project-watcher.d.ts +21 -6
  542. package/src/watchers/project-watcher.js +402 -277
  543. package/src/watchers/project-watcher.test-helpers.js +45 -50
  544. package/src/adapters/shared/api-response.js +0 -96
  545. package/src/adapters/shared/application-adapter.js +0 -90
  546. package/src/adapters/shared/bun-user-websocket-lifecycle.js +0 -102
  547. package/src/adapters/shared/copy-runtime-public-dir.js +0 -24
  548. package/src/adapters/shared/define-api-handler.d.ts +0 -25
  549. package/src/adapters/shared/define-api-handler.js +0 -15
  550. package/src/adapters/shared/explicit-static-render-preparation.js +0 -26
  551. package/src/adapters/shared/explicit-static-route-matcher.js +0 -101
  552. package/src/adapters/shared/file-route-middleware-pipeline.js +0 -90
  553. package/src/adapters/shared/fs-server-response-factory.js +0 -81
  554. package/src/adapters/shared/fs-server-response-matcher.js +0 -186
  555. package/src/adapters/shared/hmr-entrypoint-registrar.d.ts +0 -55
  556. package/src/adapters/shared/hmr-entrypoint-registrar.js +0 -87
  557. package/src/adapters/shared/hmr-html-response.js +0 -33
  558. package/src/adapters/shared/node-http-websocket-upgrades.js +0 -125
  559. package/src/adapters/shared/render-context.js +0 -93
  560. package/src/adapters/shared/runtime-app-bootstrap.js +0 -41
  561. package/src/adapters/shared/runtime-host.js +0 -0
  562. package/src/adapters/shared/server-adapter.js +0 -436
  563. package/src/adapters/shared/server-route-handler.js +0 -111
  564. package/src/adapters/shared/server-static-builder.js +0 -202
  565. package/src/adapters/shared/shared-hmr-manager.d.ts +0 -61
  566. package/src/adapters/shared/shared-hmr-manager.js +0 -273
  567. package/src/adapters/shared/static-preview-host.js +0 -0
  568. package/src/adapters/shared/websocket-lifecycle.d.ts +0 -3
  569. package/src/adapters/shared/websocket-lifecycle.js +0 -19
  570. package/src/build/browser-runtime-manifest.js +0 -61
  571. package/src/build/browser-runtime-plugin-helpers.js +0 -14
  572. package/src/build/browser-runtime-plugin.js +0 -173
  573. package/src/build/build-input-fingerprint.js +0 -31
  574. package/src/build/build-manifest.d.ts +0 -33
  575. package/src/build/build-manifest.js +0 -49
  576. package/src/build/build-types.js +0 -0
  577. package/src/build/jsx-ownership-plugins.d.ts +0 -10
  578. package/src/build/jsx-ownership-plugins.js +0 -17
  579. package/src/build/pages-unified-graph-build.js +0 -208
  580. package/src/build/parallel-build-executor.js +0 -52
  581. package/src/build/rolldown-adapter-helpers.js +0 -309
  582. package/src/build/rolldown-build-adapter.js +0 -67
  583. package/src/build/rolldown-build-invocation-metrics.js +0 -43
  584. package/src/build/rolldown-dev-build-adapter.d.ts +0 -82
  585. package/src/build/rolldown-dev-build-adapter.js +0 -182
  586. package/src/build/rolldown-plugin-bridge.js +0 -199
  587. package/src/build/runtime-build-executor.d.ts +0 -15
  588. package/src/build/runtime-build-executor.js +0 -43
  589. package/src/build/runtime-build-output-normalizer.js +0 -203
  590. package/src/build/serialized-build-executor.js +0 -63
  591. package/src/build/server-entry-build-cache.js +0 -169
  592. package/src/build/server-side-css-shim-plugin.js +0 -35
  593. package/src/hmr/hmr.postcss.test.e2e.js +0 -31
  594. package/src/hmr/hmr.test.e2e.js +0 -54
  595. package/src/integrations/ghtml/ghtml-renderer.js +0 -57
  596. package/src/integrations/ghtml/ghtml.constants.d.ts +0 -1
  597. package/src/integrations/ghtml/ghtml.constants.js +0 -4
  598. package/src/integrations/ghtml/ghtml.plugin.d.ts +0 -16
  599. package/src/integrations/ghtml/ghtml.plugin.js +0 -20
  600. package/src/route-renderer/orchestration/component-render-context.js +0 -147
  601. package/src/route-renderer/orchestration/declared-ownership-graph.d.ts +0 -18
  602. package/src/route-renderer/orchestration/declared-ownership-graph.js +0 -34
  603. package/src/route-renderer/orchestration/foreign-subtree-execution.service.js +0 -231
  604. package/src/route-renderer/orchestration/ownership-planning.service.d.ts +0 -24
  605. package/src/route-renderer/orchestration/ownership-planning.service.js +0 -63
  606. package/src/route-renderer/orchestration/ownership-validation.service.js +0 -53
  607. package/src/route-renderer/orchestration/processed-asset-dedupe.js +0 -27
  608. package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.d.ts +0 -91
  609. package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.js +0 -170
  610. package/src/route-renderer/orchestration/render-output.utils.js +0 -175
  611. package/src/route-renderer/orchestration/route-render-orchestrator.js +0 -578
  612. package/src/route-renderer/orchestration/template-serialization.d.ts +0 -38
  613. package/src/route-renderer/orchestration/template-serialization.js +0 -45
  614. package/src/utils/html.d.ts +0 -1
  615. package/src/utils/html.js +0 -4
  616. /package/src/adapters/{shared → bun}/bun-user-websocket-lifecycle.d.ts +0 -0
  617. /package/src/adapters/shared/{copy-runtime-public-dir.d.ts → runtime/copy-runtime-public-dir.d.ts} +0 -0
  618. /package/src/adapters/shared/{runtime-host.d.ts → runtime/runtime-host.d.ts} +0 -0
  619. /package/src/{hmr/hmr.postcss.test.e2e.d.ts → adapters/shared/runtime/runtime-host.js} +0 -0
  620. /package/src/{hmr/hmr.test.e2e.d.ts → adapters/shared/runtime/static-preview-host.js} +0 -0
  621. /package/src/build/{build-types.d.ts → contracts/build-types.d.ts} +0 -0
  622. /package/src/build/{runtime-build-output-normalizer.d.ts → rolldown/runtime-build-output-normalizer.d.ts} +0 -0
  623. /package/src/build/{server-side-css-shim-plugin.d.ts → rolldown/server-side-css-shim-plugin.d.ts} +0 -0
@@ -8,8 +8,9 @@
8
8
  */
9
9
  import type { SourceModuleLoader } from '../../services/module-loading/module-loading-types.js';
10
10
  import type { EcoPagesAppConfig } from '../../types/internal-types.js';
11
- import type { ApiHandler, ApiHandlerContext, ErrorHandler, Middleware, RouteOptions, StaticRoute, ViewLoader } from '../../types/public-types.js';
11
+ import type { ApiHandler, ApiHandlerContext, ErrorHandler, Middleware, RouteOptions, StaticRoute, ViewLoader, EcopagesRouteInfo } from '../../types/public-types.js';
12
12
  import type { EcopagesWebSocketHandler } from '../../types/public-types.js';
13
+ import { type EcopagesRuntimeLabel } from '../../dev/runtime-server-started-message.js';
13
14
  import { type ReturnParseCliArgs } from '../../utils/parse-cli-args.js';
14
15
  /**
15
16
  * Runtime bootstrap options layered on top of the app config.
@@ -26,6 +27,13 @@ export interface ApplicationRuntimeOptions {
26
27
  * adapter auto-detects a host module loader from the global scope.
27
28
  */
28
29
  embedded?: boolean;
30
+ /**
31
+ * Selects which layer injects browser dev-client bootstrap (HMR runtime, reload).
32
+ *
33
+ * `host` disables core injection and reload signaling so embedded hosts like
34
+ * Vite own the full dev-client surface.
35
+ */
36
+ devClientOwner?: 'core' | 'host';
29
37
  /**
30
38
  * Explicit source module loader for request-time imports.
31
39
  *
@@ -34,6 +42,27 @@ export interface ApplicationRuntimeOptions {
34
42
  */
35
43
  hostModuleLoader?: SourceModuleLoader;
36
44
  }
45
+ export interface AppStartInfo {
46
+ origin: string;
47
+ /**
48
+ * Static-generation routes available when the runtime becomes ready.
49
+ *
50
+ * @remarks
51
+ * Empty when the server adapter has no route registry yet, or when route
52
+ * resolution fails (failures never block startup). Route resolution completes
53
+ * before the `onAppStart` callback runs.
54
+ */
55
+ routes: EcopagesRouteInfo[];
56
+ }
57
+ export type OnAppStartCallback = (info: AppStartInfo) => void;
58
+ /** @deprecated Use {@link AppStartInfo}. */
59
+ export type ApplicationListeningInfo = AppStartInfo;
60
+ /** @deprecated Use {@link OnAppStartCallback}. */
61
+ export type StartCallback = OnAppStartCallback;
62
+ /** @deprecated Use {@link OnAppStartCallback}. */
63
+ export type ListenCallback = OnAppStartCallback;
64
+ /** @deprecated Use {@link OnAppStartCallback}. */
65
+ export type ApplicationListeningCallback = OnAppStartCallback;
37
66
  /**
38
67
  * Configuration options for application adapters
39
68
  */
@@ -51,7 +80,10 @@ export interface ApplicationAdapterOptions {
51
80
  * Common interface for application adapters
52
81
  */
53
82
  export interface ApplicationAdapter<T = any> extends AsyncDisposable {
54
- start(): Promise<T | void>;
83
+ /** Boot the server. Pass a callback to run when the runtime is ready (optional). */
84
+ start(onAppStart?: OnAppStartCallback): Promise<T | void>;
85
+ /** Invoked by embedded hosts once the app can take traffic. */
86
+ handleListening(origin: string): void | Promise<void>;
55
87
  stop(force?: boolean): Promise<void>;
56
88
  }
57
89
  /**
@@ -79,7 +111,9 @@ export declare abstract class AbstractApplicationAdapter<TOptions extends Applic
79
111
  * Both Bun and Node adapters read this map to register upgrade routes.
80
112
  */
81
113
  protected websocketHandlers: Map<string, EcopagesWebSocketHandler<any, any>>;
82
- constructor(options: TOptions);
114
+ private onAppStartCallback?;
115
+ protected readonly runtimeLabel: EcopagesRuntimeLabel;
116
+ constructor(options: TOptions, runtimeLabel: EcopagesRuntimeLabel);
83
117
  private clearDistFolder;
84
118
  /**
85
119
  * Register a GET route handler.
@@ -229,9 +263,27 @@ export declare abstract class AbstractApplicationAdapter<TOptions extends Applic
229
263
  */
230
264
  protected abstract initializeServerAdapter(): Promise<any>;
231
265
  /**
232
- * Start the application server
266
+ * Boot the server. When `onAppStart` is passed, it runs once the runtime can take traffic.
267
+ * Embedded apps only register the callback — the host (for example Vite) boots the port.
268
+ */
269
+ start(onAppStart?: OnAppStartCallback): Promise<TServer | void>;
270
+ /** Runtime-specific server boot (dev, preview, build). */
271
+ protected abstract bootServer(): Promise<TServer | void>;
272
+ protected logServerStarted(origin: string): void;
273
+ /**
274
+ * Invoked by embedded hosts (for example Vite) once the app can take traffic.
275
+ */
276
+ handleListening(origin: string): Promise<void>;
277
+ protected notifyListening(origin: string): Promise<void>;
278
+ /**
279
+ * Resolves routes exposed on {@link AppStartInfo}.
280
+ *
281
+ * @remarks
282
+ * Default is empty. Runtime adapters override this to read from the
283
+ * initialized server route registry.
233
284
  */
234
- abstract start(): Promise<TServer | void>;
285
+ protected resolveAppRoutes(): Promise<EcopagesRouteInfo[]>;
286
+ private invokeAppStartCallback;
235
287
  /**
236
288
  * Stops the application server and releases runtime resources.
237
289
  *
@@ -1,204 +1,262 @@
1
- import { appLogger } from "../../global/app-logger.js";
2
- import {
3
- getAppModuleLoader,
4
- setAppHostModuleLoader
5
- } from "../../services/module-loading/app-server-module-transpiler.service.js";
6
- import { getHostModuleLoader } from "../../services/module-loading/host-module-loader-registry.js";
7
- import { invariant } from "../../utils/invariant.js";
8
- import { fileSystem } from "@ecopages/file-system";
9
- import { parseCliArgs } from "../../utils/parse-cli-args.js";
10
- class AbstractApplicationAdapter {
11
- appConfig;
12
- serverOptions;
13
- cliArgs;
14
- runtimeOptions;
15
- apiHandlers = [];
16
- staticRoutes = [];
17
- errorHandler;
18
- /**
19
- * App-level WebSocket handlers keyed by URL path pattern (e.g. '/ws/chat/:id').
20
- * Both Bun and Node adapters read this map to register upgrade routes.
21
- */
22
- websocketHandlers = /* @__PURE__ */ new Map();
23
- constructor(options) {
24
- this.appConfig = options.appConfig;
25
- this.serverOptions = options.serverOptions || {};
26
- this.runtimeOptions = options.runtime ?? {};
27
- this.cliArgs = parseCliArgs({ embeddedRuntime: this.runtimeOptions.embedded });
28
- const hostModuleLoader = this.runtimeOptions.hostModuleLoader ?? (this.runtimeOptions.embedded ? getHostModuleLoader() : void 0);
29
- if (hostModuleLoader) {
30
- setAppHostModuleLoader(this.appConfig, hostModuleLoader);
31
- }
32
- getAppModuleLoader(this.appConfig);
33
- if (options.clearOutput) {
34
- this.clearDistFolder().catch((error) => {
35
- appLogger.error("Error clearing dist folder", error);
36
- });
37
- }
38
- }
39
- async clearDistFolder() {
40
- const distPath = this.appConfig.absolutePaths.distDir;
41
- const distExists = fileSystem.exists(distPath);
42
- if (!distExists) return;
43
- try {
44
- await fileSystem.removeAsync(distPath);
45
- appLogger.debug(`Cleared dist folder: ${distPath}`);
46
- } catch (error) {
47
- appLogger.error(`Error clearing dist folder: ${distPath}`, error);
48
- }
49
- }
50
- /**
51
- * Internal method to add route handlers to the API handlers array
52
- */
53
- addRouteHandler(path, method, handler, middleware, schema) {
54
- invariant(
55
- typeof path === "string",
56
- `Invalid route path for ${method}: expected a string path starting with "/" but received ${Object.prototype.toString.call(path)}. If you're passing a prebuilt ApiHandler, use app.add(handler).`
57
- );
58
- invariant(
59
- path.startsWith("/"),
60
- `Invalid route path for ${method}: "${path}". Route paths must start with '/'.`
61
- );
62
- this.apiHandlers.push({
63
- path,
64
- method,
65
- handler,
66
- middleware,
67
- schema
68
- });
69
- return this;
70
- }
71
- /**
72
- * Get all registered API handlers
73
- */
74
- getApiHandlers() {
75
- return this.apiHandlers;
76
- }
77
- /**
78
- * Register a view for static generation at build time.
79
- * The view must have staticPaths defined for dynamic routes.
80
- *
81
- * Uses a loader function to enable HMR in development.
82
- *
83
- * @param path - URL path pattern (e.g., '/posts/:slug')
84
- * @param loader - A function that dynamically imports the eco.page view module
85
- * @example
86
- * ```typescript
87
- * app.static('/login', () => import('./src/views/login.kita'))
88
- * app.static('/posts/:slug', () => import('./src/views/post-view.kita'))
89
- * ```
90
- */
91
- static(path, loader) {
92
- this.staticRoutes.push({ path, loader });
93
- return this;
94
- }
95
- /**
96
- * Get all registered static routes
97
- */
98
- getStaticRoutes() {
99
- return this.staticRoutes;
100
- }
101
- /**
102
- * Register a WebSocket handler for the given path pattern.
103
- *
104
- * The runtime adapter handles the HTTP→WebSocket upgrade for this path
105
- * and routes lifecycle events to `handler`.
106
- *
107
- * Supports dynamic segments via `:param` syntax. The handler receives
108
- * typed `params` and `search` fields, and a typed `context` produced by
109
- * the optional `context()` factory.
110
- *
111
- * One pattern registration matches infinite path variations. For example,
112
- * `app.websocket('/ws/chat/:roomId', handler)` matches `/ws/chat/abc`,
113
- * `/ws/chat/xyz`, etc. Each connection receives its own `params.roomId`.
114
- *
115
- * Works across both Bun and Node runtimes — no runtime-specific imports needed.
116
- *
117
- * @example
118
- * ```typescript
119
- * app.websocket<ChatContext, { roomId: string }>('/ws/chat/:roomId', {
120
- * async context({ params, search }) {
121
- * return { username: search.username ?? 'anonymous', roomId: params.roomId };
122
- * },
123
- * onConnect(socket) {
124
- * socket.send(`Welcome to room ${socket.context.roomId}`);
125
- * },
126
- * onMessage(socket, message) {
127
- * if (message.kind === 'text') {
128
- * socket.send(message.text);
129
- * }
130
- * },
131
- * });
132
- * ```
133
- */
134
- websocket(path, handler) {
135
- invariant(
136
- typeof path === "string" && path.startsWith("/"),
137
- `app.websocket(): path must be a string starting with "/", got "${path}".`
138
- );
139
- const segments = path.split("/").filter(Boolean);
140
- const paramNames = /* @__PURE__ */ new Set();
141
- for (const segment of segments) {
142
- if (segment.startsWith(":")) {
143
- const paramName = segment.slice(1);
144
- invariant(
145
- paramName.length > 0,
146
- `app.websocket(): invalid pattern "${path}" \u2014 empty param name in segment ":${paramName}".`
147
- );
148
- invariant(
149
- !paramNames.has(paramName),
150
- `app.websocket(): invalid pattern "${path}" \u2014 duplicate param name ":${paramName}".`
151
- );
152
- paramNames.add(paramName);
153
- }
154
- }
155
- this.websocketHandlers.set(path, handler);
156
- return this;
157
- }
158
- /**
159
- * Get the registered WebSocket handlers map.
160
- *
161
- * @returns The map of WebSocket route patterns to handlers
162
- */
163
- getWebsocketHandlers() {
164
- return this.websocketHandlers;
165
- }
166
- /**
167
- * Register a global error handler for all routes.
168
- * Useful for logging, monitoring integration, and custom error formatting.
169
- *
170
- * @example
171
- * ```typescript
172
- * app.onError(async (error, ctx) => {
173
- * logger.error(error);
174
- * return ctx.response.status(500).json({ error: 'Something went wrong' });
175
- * });
176
- * ```
177
- */
178
- onError(handler) {
179
- this.errorHandler = handler;
180
- return this;
181
- }
182
- /**
183
- * Get the registered error handler
184
- */
185
- getErrorHandler() {
186
- return this.errorHandler;
187
- }
188
- /**
189
- * Stops the application server and releases runtime resources.
190
- *
191
- * @remarks
192
- * Subclasses override this to shut down bound servers, watchers, and other
193
- * dev-time resources. The default implementation is a no-op so embedded
194
- * adapters that never call `start()` can still be used with `await using`.
195
- */
196
- async stop(_force = true) {
197
- }
198
- async [Symbol.asyncDispose]() {
199
- await this.stop(true);
200
- }
1
+ /**
2
+ * This file defines the abstract class for application adapters in EcoPages.
3
+ * It provides a common interface for different runtimes (e.g., Node.js, Deno) to implement.
4
+ * The class includes methods for handling HTTP requests and managing application state.
5
+ * It also includes a method for parsing command-line arguments.
6
+ *
7
+ * @module ApplicationAdapter
8
+ */
9
+ import { appLogger } from '../../global/app-logger.js';
10
+ import { getAppModuleLoader, setAppHostModuleLoader, } from '../../services/module-loading/app-server-module-transpiler.service.js';
11
+ import { getHostModuleLoader } from '../../services/module-loading/host-module-loader-registry.js';
12
+ import { invariant } from '../../utils/invariant.js';
13
+ import { fileSystem } from '@ecopages/file-system';
14
+ import { formatRuntimeServerStartedMessage, } from '../../dev/runtime-server-started-message.js';
15
+ import { parseCliArgs } from '../../utils/parse-cli-args.js';
16
+ import { startupTrace } from '../../diagnostics/startup-trace.js';
17
+ /**
18
+ * Abstract base class for application adapters across different runtimes
19
+ */
20
+ export class AbstractApplicationAdapter {
21
+ appConfig;
22
+ serverOptions;
23
+ cliArgs;
24
+ runtimeOptions;
25
+ apiHandlers = [];
26
+ staticRoutes = [];
27
+ errorHandler;
28
+ /**
29
+ * App-level WebSocket handlers keyed by URL path pattern (e.g. '/ws/chat/:id').
30
+ * Both Bun and Node adapters read this map to register upgrade routes.
31
+ */
32
+ websocketHandlers = new Map();
33
+ onAppStartCallback;
34
+ runtimeLabel;
35
+ constructor(options, runtimeLabel) {
36
+ this.runtimeLabel = runtimeLabel;
37
+ this.appConfig = options.appConfig;
38
+ this.serverOptions = options.serverOptions || {};
39
+ this.runtimeOptions = options.runtime ?? {};
40
+ if (options.runtime) {
41
+ this.appConfig.runtime = {
42
+ ...(this.appConfig.runtime ?? {}),
43
+ ...options.runtime,
44
+ };
45
+ }
46
+ this.cliArgs = parseCliArgs({ embeddedRuntime: this.runtimeOptions.embedded });
47
+ const hostModuleLoader = this.runtimeOptions.hostModuleLoader ?? (this.runtimeOptions.embedded ? getHostModuleLoader() : undefined);
48
+ if (hostModuleLoader) {
49
+ setAppHostModuleLoader(this.appConfig, hostModuleLoader);
50
+ }
51
+ getAppModuleLoader(this.appConfig);
52
+ startupTrace.markConfigReady();
53
+ if (options.clearOutput) {
54
+ this.clearDistFolder().catch((error) => {
55
+ appLogger.error('Error clearing dist folder', error);
56
+ });
57
+ }
58
+ }
59
+ async clearDistFolder() {
60
+ const distPath = this.appConfig.absolutePaths.distDir;
61
+ const distExists = fileSystem.exists(distPath);
62
+ if (!distExists)
63
+ return;
64
+ try {
65
+ await fileSystem.removeAsync(distPath);
66
+ appLogger.debug(`Cleared dist folder: ${distPath}`);
67
+ }
68
+ catch (error) {
69
+ appLogger.error(`Error clearing dist folder: ${distPath}`, error);
70
+ }
71
+ }
72
+ /**
73
+ * Internal method to add route handlers to the API handlers array
74
+ */
75
+ addRouteHandler(path, method, handler, middleware, schema) {
76
+ invariant(typeof path === 'string', `Invalid route path for ${method}: expected a string path starting with "/" but received ${Object.prototype.toString.call(path)}. If you're passing a prebuilt ApiHandler, use app.add(handler).`);
77
+ invariant(path.startsWith('/'), `Invalid route path for ${method}: "${path}". Route paths must start with '/'.`);
78
+ this.apiHandlers.push({
79
+ path,
80
+ method,
81
+ handler: handler,
82
+ middleware: middleware,
83
+ schema,
84
+ });
85
+ return this;
86
+ }
87
+ /**
88
+ * Get all registered API handlers
89
+ */
90
+ getApiHandlers() {
91
+ return this.apiHandlers;
92
+ }
93
+ /**
94
+ * Register a view for static generation at build time.
95
+ * The view must have staticPaths defined for dynamic routes.
96
+ *
97
+ * Uses a loader function to enable HMR in development.
98
+ *
99
+ * @param path - URL path pattern (e.g., '/posts/:slug')
100
+ * @param loader - A function that dynamically imports the eco.page view module
101
+ * @example
102
+ * ```typescript
103
+ * app.static('/login', () => import('./src/views/login.kita'))
104
+ * app.static('/posts/:slug', () => import('./src/views/post-view.kita'))
105
+ * ```
106
+ */
107
+ static(path, loader) {
108
+ this.staticRoutes.push({ path, loader });
109
+ return this;
110
+ }
111
+ /**
112
+ * Get all registered static routes
113
+ */
114
+ getStaticRoutes() {
115
+ return this.staticRoutes;
116
+ }
117
+ /**
118
+ * Register a WebSocket handler for the given path pattern.
119
+ *
120
+ * The runtime adapter handles the HTTP→WebSocket upgrade for this path
121
+ * and routes lifecycle events to `handler`.
122
+ *
123
+ * Supports dynamic segments via `:param` syntax. The handler receives
124
+ * typed `params` and `search` fields, and a typed `context` produced by
125
+ * the optional `context()` factory.
126
+ *
127
+ * One pattern registration matches infinite path variations. For example,
128
+ * `app.websocket('/ws/chat/:roomId', handler)` matches `/ws/chat/abc`,
129
+ * `/ws/chat/xyz`, etc. Each connection receives its own `params.roomId`.
130
+ *
131
+ * Works across both Bun and Node runtimes — no runtime-specific imports needed.
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * app.websocket<ChatContext, { roomId: string }>('/ws/chat/:roomId', {
136
+ * async context({ params, search }) {
137
+ * return { username: search.username ?? 'anonymous', roomId: params.roomId };
138
+ * },
139
+ * onConnect(socket) {
140
+ * socket.send(`Welcome to room ${socket.context.roomId}`);
141
+ * },
142
+ * onMessage(socket, message) {
143
+ * if (message.kind === 'text') {
144
+ * socket.send(message.text);
145
+ * }
146
+ * },
147
+ * });
148
+ * ```
149
+ */
150
+ websocket(path, handler) {
151
+ invariant(typeof path === 'string' && path.startsWith('/'), `app.websocket(): path must be a string starting with "/", got "${path}".`);
152
+ /**
153
+ * Validate the pattern at registration time. Reject empty segments
154
+ * and duplicate param names early.
155
+ */
156
+ const segments = path.split('/').filter(Boolean);
157
+ const paramNames = new Set();
158
+ for (const segment of segments) {
159
+ if (segment.startsWith(':')) {
160
+ const paramName = segment.slice(1);
161
+ invariant(paramName.length > 0, `app.websocket(): invalid pattern "${path}" empty param name in segment ":${paramName}".`);
162
+ invariant(!paramNames.has(paramName), `app.websocket(): invalid pattern "${path}" — duplicate param name ":${paramName}".`);
163
+ paramNames.add(paramName);
164
+ }
165
+ }
166
+ this.websocketHandlers.set(path, handler);
167
+ return this;
168
+ }
169
+ /**
170
+ * Get the registered WebSocket handlers map.
171
+ *
172
+ * @returns The map of WebSocket route patterns to handlers
173
+ */
174
+ getWebsocketHandlers() {
175
+ return this.websocketHandlers;
176
+ }
177
+ /**
178
+ * Register a global error handler for all routes.
179
+ * Useful for logging, monitoring integration, and custom error formatting.
180
+ *
181
+ * @example
182
+ * ```typescript
183
+ * app.onError(async (error, ctx) => {
184
+ * logger.error(error);
185
+ * return ctx.response.status(500).json({ error: 'Something went wrong' });
186
+ * });
187
+ * ```
188
+ */
189
+ onError(handler) {
190
+ this.errorHandler = handler;
191
+ return this;
192
+ }
193
+ /**
194
+ * Get the registered error handler
195
+ */
196
+ getErrorHandler() {
197
+ return this.errorHandler;
198
+ }
199
+ /**
200
+ * Boot the server. When `onAppStart` is passed, it runs once the runtime can take traffic.
201
+ * Embedded apps only register the callback — the host (for example Vite) boots the port.
202
+ */
203
+ async start(onAppStart) {
204
+ if (onAppStart) {
205
+ this.onAppStartCallback = onAppStart;
206
+ }
207
+ if (this.runtimeOptions.embedded) {
208
+ return;
209
+ }
210
+ return this.bootServer();
211
+ }
212
+ logServerStarted(origin) {
213
+ appLogger.info(formatRuntimeServerStartedMessage(this.runtimeLabel, origin));
214
+ }
215
+ /**
216
+ * Invoked by embedded hosts (for example Vite) once the app can take traffic.
217
+ */
218
+ async handleListening(origin) {
219
+ await this.notifyListening(origin);
220
+ }
221
+ async notifyListening(origin) {
222
+ const normalizedOrigin = origin.replace(/\/$/, '');
223
+ startupTrace.markServerListening();
224
+ if (!this.onAppStartCallback) {
225
+ this.logServerStarted(normalizedOrigin);
226
+ return;
227
+ }
228
+ await this.invokeAppStartCallback(normalizedOrigin);
229
+ }
230
+ /**
231
+ * Resolves routes exposed on {@link AppStartInfo}.
232
+ *
233
+ * @remarks
234
+ * Default is empty. Runtime adapters override this to read from the
235
+ * initialized server route registry.
236
+ */
237
+ async resolveAppRoutes() {
238
+ return [];
239
+ }
240
+ async invokeAppStartCallback(origin) {
241
+ let routes = [];
242
+ try {
243
+ routes = await this.resolveAppRoutes();
244
+ }
245
+ catch (error) {
246
+ appLogger.debug('Failed to resolve app start routes; continuing with empty routes', error instanceof Error ? error.message : String(error));
247
+ }
248
+ this.onAppStartCallback?.({ origin, routes });
249
+ }
250
+ /**
251
+ * Stops the application server and releases runtime resources.
252
+ *
253
+ * @remarks
254
+ * Subclasses override this to shut down bound servers, watchers, and other
255
+ * dev-time resources. The default implementation is a no-op so embedded
256
+ * adapters that never call `start()` can still be used with `await using`.
257
+ */
258
+ async stop(_force = true) { }
259
+ async [Symbol.asyncDispose]() {
260
+ await this.stop(true);
261
+ }
201
262
  }
202
- export {
203
- AbstractApplicationAdapter
204
- };
@@ -1,5 +1,13 @@
1
- class AbstractRouterAdapter {
1
+ /**
2
+ * This file contains the abstract router adapter class and its methods.
3
+ * It is designed to be extended by specific router adapters for different runtimes.
4
+ * The class provides methods for converting paths, creating route handlers,
5
+ * and adapting routes to the expected format of the runtime.
6
+ *
7
+ * @module RouterAdapter
8
+ */
9
+ /**
10
+ * Abstract base class for router adapters across different runtimes
11
+ */
12
+ export class AbstractRouterAdapter {
2
13
  }
3
- export {
4
- AbstractRouterAdapter
5
- };
@@ -0,0 +1,6 @@
1
+ export declare function normalizeSegmentPath(pathname: string): string;
2
+ export declare function matchApiPathPattern(pattern: string, pathname: string): Record<string, string | string[]> | null;
3
+ export declare function scoreApiPathPattern(pattern: string): number;
4
+ export declare function matchExplicitStaticPathPattern(pattern: string, pathname: string): Record<string, string> | null;
5
+ export declare function matchColonSegmentPath(pattern: string, pathname: string): Record<string, string> | null;
6
+ export declare function scoreColonSegmentPath(pattern: string): number;