@ecopages/core 0.2.0-alpha.5 → 0.2.0-alpha.51

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 (456) hide show
  1. package/README.md +267 -14
  2. package/package.json +98 -108
  3. package/src/adapters/README.md +39 -0
  4. package/src/adapters/abstract/application-adapter.d.ts +28 -2
  5. package/src/adapters/abstract/application-adapter.js +14 -2
  6. package/src/adapters/abstract/router-adapter.d.ts +1 -1
  7. package/src/adapters/abstract/server-adapter.d.ts +2 -2
  8. package/src/adapters/bun/client-bridge.d.ts +1 -1
  9. package/src/adapters/bun/create-app.d.ts +12 -12
  10. package/src/adapters/bun/create-app.js +64 -41
  11. package/src/adapters/bun/hmr-manager.d.ts +30 -62
  12. package/src/adapters/bun/hmr-manager.js +30 -194
  13. package/src/adapters/bun/index.d.ts +2 -3
  14. package/src/adapters/bun/index.js +3 -3
  15. package/src/adapters/bun/runtime-host.d.ts +52 -0
  16. package/src/adapters/bun/runtime-host.js +56 -0
  17. package/src/adapters/bun/server-adapter.d.ts +93 -32
  18. package/src/adapters/bun/server-adapter.js +166 -89
  19. package/src/adapters/bun/static-preview-host.d.ts +28 -0
  20. package/src/adapters/bun/static-preview-host.js +45 -0
  21. package/src/{create-app.d.ts → adapters/create-app.d.ts} +9 -6
  22. package/src/{create-app.js → adapters/create-app.js} +4 -4
  23. package/src/adapters/index.d.ts +2 -6
  24. package/src/adapters/index.js +2 -8
  25. package/src/adapters/node/create-app.d.ts +15 -12
  26. package/src/adapters/node/create-app.js +34 -85
  27. package/src/adapters/node/http-request-bridge.d.ts +57 -0
  28. package/src/adapters/node/http-request-bridge.js +118 -0
  29. package/src/adapters/node/node-client-bridge.d.ts +1 -1
  30. package/src/adapters/node/node-hmr-manager.d.ts +38 -48
  31. package/src/adapters/node/node-hmr-manager.js +31 -203
  32. package/src/adapters/node/runtime-host.d.ts +57 -0
  33. package/src/adapters/node/runtime-host.js +92 -0
  34. package/src/adapters/node/server-adapter-dependencies.d.ts +19 -0
  35. package/src/adapters/node/server-adapter-dependencies.js +18 -0
  36. package/src/adapters/node/server-adapter.d.ts +20 -72
  37. package/src/adapters/node/server-adapter.js +98 -203
  38. package/src/adapters/node/static-content-server.d.ts +37 -1
  39. package/src/adapters/node/static-content-server.js +29 -1
  40. package/src/adapters/node/static-preview-host.d.ts +55 -0
  41. package/src/adapters/node/static-preview-host.js +68 -0
  42. package/src/adapters/shared/application-adapter.d.ts +1 -1
  43. package/src/{define-api-handler.d.ts → adapters/shared/define-api-handler.d.ts} +1 -1
  44. package/src/adapters/shared/explicit-static-render-preparation.d.ts +25 -0
  45. package/src/adapters/shared/explicit-static-render-preparation.js +26 -0
  46. package/src/adapters/shared/explicit-static-route-matcher.d.ts +7 -4
  47. package/src/adapters/shared/explicit-static-route-matcher.js +14 -13
  48. package/src/adapters/shared/file-route-middleware-pipeline.d.ts +7 -10
  49. package/src/adapters/shared/file-route-middleware-pipeline.js +3 -11
  50. package/src/adapters/shared/fs-server-response-factory.d.ts +14 -10
  51. package/src/adapters/shared/fs-server-response-factory.js +11 -27
  52. package/src/adapters/shared/fs-server-response-matcher.d.ts +20 -16
  53. package/src/adapters/shared/fs-server-response-matcher.js +76 -45
  54. package/src/adapters/shared/hmr-entrypoint-registrar.d.ts +55 -0
  55. package/src/adapters/shared/hmr-entrypoint-registrar.js +87 -0
  56. package/src/adapters/shared/hmr-html-response.d.ts +22 -0
  57. package/src/adapters/shared/hmr-html-response.js +33 -0
  58. package/src/adapters/shared/render-context.d.ts +5 -3
  59. package/src/adapters/shared/render-context.js +27 -3
  60. package/src/adapters/shared/runtime-app-bootstrap.d.ts +26 -0
  61. package/src/adapters/shared/runtime-app-bootstrap.js +46 -0
  62. package/src/adapters/shared/runtime-host.d.ts +12 -0
  63. package/src/adapters/shared/server-adapter.d.ts +33 -12
  64. package/src/adapters/shared/server-adapter.js +215 -132
  65. package/src/adapters/shared/server-route-handler.d.ts +5 -5
  66. package/src/adapters/shared/server-route-handler.js +7 -16
  67. package/src/adapters/shared/server-static-builder.d.ts +41 -8
  68. package/src/adapters/shared/server-static-builder.js +65 -11
  69. package/src/adapters/shared/shared-hmr-manager.d.ts +59 -0
  70. package/src/adapters/shared/shared-hmr-manager.js +240 -0
  71. package/src/adapters/shared/static-preview-host.d.ts +10 -0
  72. package/src/build/README.md +107 -0
  73. package/src/build/browser-runtime-import-rewrite-plugin.d.ts +26 -0
  74. package/src/build/browser-runtime-import-rewrite-plugin.js +162 -0
  75. package/src/build/browser-runtime-manifest.d.ts +31 -0
  76. package/src/build/browser-runtime-manifest.js +61 -0
  77. package/src/build/build-adapter.d.ts +175 -3
  78. package/src/build/build-adapter.js +633 -16
  79. package/src/build/build-manifest.d.ts +33 -0
  80. package/src/build/build-manifest.js +52 -0
  81. package/src/build/dev-build-coordinator.d.ts +72 -0
  82. package/src/build/dev-build-coordinator.js +154 -0
  83. package/src/build/esbuild-build-adapter.d.ts +16 -6
  84. package/src/build/esbuild-build-adapter.js +205 -75
  85. package/src/build/runtime-build-executor.d.ts +14 -0
  86. package/src/build/runtime-build-executor.js +22 -0
  87. package/src/build/runtime-specifier-alias-plugin.d.ts +15 -0
  88. package/src/build/runtime-specifier-alias-plugin.js +31 -0
  89. package/src/config/README.md +36 -0
  90. package/src/config/config-builder.d.ts +54 -29
  91. package/src/config/config-builder.js +256 -50
  92. package/src/{constants.d.ts → config/constants.d.ts} +13 -0
  93. package/src/{constants.js → config/constants.js} +4 -0
  94. package/src/declarations.d.ts +19 -14
  95. package/src/dev/host-runtime.d.ts +10 -0
  96. package/src/dev/host-runtime.js +24 -0
  97. package/src/dev/sc-server.d.ts +1 -1
  98. package/src/dev/sc-server.js +1 -1
  99. package/src/eco/README.md +70 -16
  100. package/src/eco/eco.browser.d.ts +2 -0
  101. package/src/eco/eco.browser.js +88 -0
  102. package/src/eco/eco.js +63 -54
  103. package/src/eco/eco.types.d.ts +69 -6
  104. package/src/eco/eco.utils.d.ts +1 -40
  105. package/src/eco/eco.utils.js +5 -35
  106. package/src/eco/global-injector-map.d.ts +3 -3
  107. package/src/eco/global-injector-map.js +2 -2
  108. package/src/eco/lazy-injector-map.d.ts +2 -2
  109. package/src/errors/index.d.ts +1 -0
  110. package/src/errors/index.js +3 -1
  111. package/src/hmr/README.md +26 -0
  112. package/src/hmr/client/hmr-runtime.d.ts +1 -6
  113. package/src/hmr/client/hmr-runtime.js +38 -7
  114. package/src/hmr/hmr-strategy.d.ts +16 -13
  115. package/src/hmr/hmr-strategy.js +22 -7
  116. package/src/hmr/hmr.postcss.test.e2e.d.ts +1 -0
  117. package/src/hmr/hmr.postcss.test.e2e.js +31 -0
  118. package/src/hmr/hmr.test.e2e.js +26 -33
  119. package/src/hmr/strategies/default-hmr-strategy.d.ts +2 -2
  120. package/src/hmr/strategies/default-hmr-strategy.js +1 -1
  121. package/src/hmr/strategies/js-hmr-strategy.d.ts +40 -42
  122. package/src/hmr/strategies/js-hmr-strategy.js +24 -43
  123. package/src/index.browser.d.ts +2 -2
  124. package/src/index.browser.js +1 -1
  125. package/src/index.d.ts +4 -3
  126. package/src/index.js +16 -5
  127. package/src/integrations/ghtml/ghtml-renderer.d.ts +3 -2
  128. package/src/integrations/ghtml/ghtml-renderer.js +27 -30
  129. package/src/integrations/ghtml/ghtml.constants.d.ts +1 -0
  130. package/src/integrations/ghtml/ghtml.constants.js +4 -0
  131. package/src/integrations/ghtml/ghtml.plugin.d.ts +2 -6
  132. package/src/integrations/ghtml/ghtml.plugin.js +3 -4
  133. package/src/plugins/README.md +35 -0
  134. package/src/plugins/alias-resolver-plugin.d.ts +1 -0
  135. package/src/plugins/alias-resolver-plugin.js +27 -5
  136. package/src/plugins/eco-component-meta-plugin.d.ts +14 -1
  137. package/src/plugins/eco-component-meta-plugin.js +42 -24
  138. package/src/plugins/foreign-jsx-override-plugin.d.ts +33 -0
  139. package/src/plugins/foreign-jsx-override-plugin.js +41 -0
  140. package/src/plugins/integration-plugin.d.ts +157 -29
  141. package/src/plugins/integration-plugin.js +115 -14
  142. package/src/plugins/processor.d.ts +17 -2
  143. package/src/plugins/processor.js +22 -3
  144. package/src/plugins/runtime-capability.d.ts +9 -0
  145. package/src/plugins/source-transform.d.ts +46 -0
  146. package/src/plugins/source-transform.js +71 -0
  147. package/src/route-renderer/GRAPH.md +83 -325
  148. package/src/route-renderer/README.md +73 -90
  149. package/src/route-renderer/orchestration/component-render-context.d.ts +97 -0
  150. package/src/route-renderer/orchestration/component-render-context.js +147 -0
  151. package/src/route-renderer/orchestration/declared-ownership-graph.d.ts +18 -0
  152. package/src/route-renderer/orchestration/declared-ownership-graph.js +34 -0
  153. package/src/route-renderer/orchestration/foreign-subtree-execution.service.d.ts +110 -0
  154. package/src/route-renderer/orchestration/foreign-subtree-execution.service.js +233 -0
  155. package/src/route-renderer/orchestration/integration-renderer.d.ts +534 -0
  156. package/src/route-renderer/orchestration/integration-renderer.js +991 -0
  157. package/src/route-renderer/orchestration/ownership-planning.service.d.ts +24 -0
  158. package/src/route-renderer/orchestration/ownership-planning.service.js +63 -0
  159. package/src/route-renderer/orchestration/ownership-validation.service.d.ts +29 -0
  160. package/src/route-renderer/orchestration/ownership-validation.service.js +53 -0
  161. package/src/route-renderer/orchestration/processed-asset-dedupe.d.ts +3 -0
  162. package/src/route-renderer/orchestration/processed-asset-dedupe.js +27 -0
  163. package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.d.ts +91 -0
  164. package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.js +170 -0
  165. package/src/route-renderer/orchestration/render-output.utils.d.ts +66 -0
  166. package/src/route-renderer/orchestration/render-output.utils.js +171 -0
  167. package/src/route-renderer/orchestration/route-render-orchestrator.d.ts +156 -0
  168. package/src/route-renderer/orchestration/route-render-orchestrator.js +577 -0
  169. package/src/route-renderer/orchestration/template-serialization.d.ts +38 -0
  170. package/src/route-renderer/orchestration/template-serialization.js +45 -0
  171. package/src/route-renderer/page-loading/component-dependency-collection.d.ts +37 -0
  172. package/src/route-renderer/page-loading/component-dependency-collection.js +132 -0
  173. package/src/route-renderer/page-loading/declared-asset-collection.d.ts +24 -0
  174. package/src/route-renderer/page-loading/declared-asset-collection.js +106 -0
  175. package/src/route-renderer/{dependency-resolver.d.ts → page-loading/dependency-resolver.d.ts} +15 -4
  176. package/src/route-renderer/page-loading/dependency-resolver.js +115 -0
  177. package/src/route-renderer/page-loading/ecopages-virtual-imports.d.ts +11 -0
  178. package/src/route-renderer/page-loading/ecopages-virtual-imports.js +57 -0
  179. package/src/route-renderer/page-loading/lazy-entry-collection.d.ts +45 -0
  180. package/src/route-renderer/page-loading/lazy-entry-collection.js +105 -0
  181. package/src/route-renderer/page-loading/lazy-trigger-planning.d.ts +19 -0
  182. package/src/route-renderer/page-loading/lazy-trigger-planning.js +40 -0
  183. package/src/route-renderer/page-loading/module-declaration-aggregation.d.ts +5 -0
  184. package/src/route-renderer/page-loading/module-declaration-aggregation.js +33 -0
  185. package/src/route-renderer/page-loading/module-declaration-scripts.d.ts +3 -0
  186. package/src/route-renderer/page-loading/module-declaration-scripts.js +18 -0
  187. package/src/route-renderer/page-loading/page-dependency-bundling.d.ts +13 -0
  188. package/src/route-renderer/page-loading/page-dependency-bundling.js +137 -0
  189. package/src/route-renderer/page-loading/page-module-loader.d.ts +90 -0
  190. package/src/route-renderer/{page-module-loader.js → page-loading/page-module-loader.js} +39 -14
  191. package/src/route-renderer/route-renderer.d.ts +57 -14
  192. package/src/route-renderer/route-renderer.js +30 -18
  193. package/src/router/README.md +94 -0
  194. package/src/router/client/link-intent.d.ts +53 -0
  195. package/src/router/client/link-intent.js +34 -0
  196. package/src/router/client/link-intent.test.browser.d.ts +1 -0
  197. package/src/router/client/link-intent.test.browser.js +43 -0
  198. package/src/router/client/navigation-coordinator.d.ts +169 -0
  199. package/src/router/client/navigation-coordinator.js +215 -0
  200. package/src/router/server/route-registry.d.ts +78 -0
  201. package/src/router/server/route-registry.js +262 -0
  202. package/src/services/README.md +28 -0
  203. package/src/services/assets/asset-processing-service/asset-dependency-keys.d.ts +3 -0
  204. package/src/services/assets/asset-processing-service/asset-dependency-keys.js +56 -0
  205. package/src/services/assets/asset-processing-service/asset-processing.service.d.ts +103 -0
  206. package/src/services/{asset-processing-service → assets/asset-processing-service}/asset-processing.service.js +124 -89
  207. package/src/services/{asset-processing-service → assets/asset-processing-service}/asset.factory.d.ts +1 -1
  208. package/src/services/{asset-processing-service → assets/asset-processing-service}/asset.factory.js +2 -2
  209. package/src/services/{asset-processing-service → assets/asset-processing-service}/assets.types.d.ts +16 -1
  210. package/src/services/assets/asset-processing-service/assets.types.js +0 -0
  211. package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.d.ts +57 -0
  212. package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.js +49 -0
  213. package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.d.ts +20 -0
  214. package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.js +41 -0
  215. package/src/services/assets/asset-processing-service/grouped-content-bundles.d.ts +30 -0
  216. package/src/services/assets/asset-processing-service/grouped-content-bundles.js +65 -0
  217. package/src/services/assets/asset-processing-service/index.d.ts +6 -0
  218. package/src/services/assets/asset-processing-service/index.js +6 -0
  219. package/src/services/assets/asset-processing-service/page-package.d.ts +6 -0
  220. package/src/services/assets/asset-processing-service/page-package.js +80 -0
  221. package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.interface.d.ts +2 -2
  222. package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.registry.d.ts +2 -2
  223. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/base/base-processor.d.ts +1 -1
  224. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/base/base-processor.js +11 -5
  225. package/src/services/assets/asset-processing-service/processors/base/base-script-processor.d.ts +22 -0
  226. package/src/services/assets/asset-processing-service/processors/base/base-script-processor.js +136 -0
  227. package/src/services/assets/asset-processing-service/processors/index.d.ts +5 -0
  228. package/src/services/assets/asset-processing-service/processors/index.js +5 -0
  229. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/script/content-script.processor.d.ts +3 -2
  230. package/src/services/assets/asset-processing-service/processors/script/content-script.processor.js +120 -0
  231. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/script/file-script.processor.d.ts +4 -3
  232. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/script/file-script.processor.js +28 -7
  233. package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.d.ts +42 -0
  234. package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.js +126 -0
  235. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/stylesheet/content-stylesheet.processor.d.ts +5 -2
  236. package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +59 -0
  237. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/stylesheet/file-stylesheet.processor.d.ts +2 -2
  238. package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/stylesheet/file-stylesheet.processor.js +9 -3
  239. package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.d.ts +18 -0
  240. package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.js +45 -0
  241. package/src/services/assets/browser-bundle.service.d.ts +73 -0
  242. package/src/services/assets/browser-bundle.service.js +41 -0
  243. package/src/services/{page-request-cache-coordinator.service.d.ts → cache/page-request-cache-coordinator.service.d.ts} +2 -2
  244. package/src/services/{page-request-cache-coordinator.service.js → cache/page-request-cache-coordinator.service.js} +3 -1
  245. package/src/services/html/html-rewriter-provider.service.d.ts +40 -0
  246. package/src/services/html/html-rewriter-provider.service.js +68 -0
  247. package/src/services/html/html-transformer.service.d.ts +96 -0
  248. package/src/services/html/html-transformer.service.js +287 -0
  249. package/src/services/invalidation/development-invalidation.service.d.ts +74 -0
  250. package/src/services/invalidation/development-invalidation.service.js +190 -0
  251. package/src/services/module-loading/app-module-loader.service.d.ts +7 -0
  252. package/src/services/module-loading/app-module-loader.service.js +0 -0
  253. package/src/services/module-loading/app-server-module-transpiler.service.d.ts +24 -0
  254. package/src/services/module-loading/app-server-module-transpiler.service.js +151 -0
  255. package/src/services/module-loading/host-module-loader-registry.d.ts +4 -0
  256. package/src/services/module-loading/host-module-loader-registry.js +15 -0
  257. package/src/services/module-loading/module-loading-types.d.ts +2 -0
  258. package/src/services/module-loading/module-loading-types.js +0 -0
  259. package/src/services/module-loading/node-bootstrap-plugin.d.ts +38 -0
  260. package/src/services/module-loading/node-bootstrap-plugin.js +215 -0
  261. package/src/services/module-loading/page-module-import.service.d.ts +95 -0
  262. package/src/services/module-loading/page-module-import.service.js +191 -0
  263. package/src/services/module-loading/server-module-transpiler.service.d.ts +63 -0
  264. package/src/services/module-loading/server-module-transpiler.service.js +64 -0
  265. package/src/services/module-loading/source-module-support.d.ts +5 -0
  266. package/src/services/module-loading/source-module-support.js +8 -0
  267. package/src/services/runtime-state/dev-graph.service.d.ts +118 -0
  268. package/src/services/runtime-state/dev-graph.service.js +162 -0
  269. package/src/services/runtime-state/entrypoint-dependency-graph.service.d.ts +41 -0
  270. package/src/services/runtime-state/entrypoint-dependency-graph.service.js +85 -0
  271. package/src/services/runtime-state/server-invalidation-state.service.d.ts +26 -0
  272. package/src/services/runtime-state/server-invalidation-state.service.js +35 -0
  273. package/src/services/{schema-validation-service.d.ts → validation/schema-validation-service.d.ts} +1 -1
  274. package/src/static-site-generator/README.md +26 -0
  275. package/src/static-site-generator/static-site-generator.d.ts +67 -20
  276. package/src/static-site-generator/static-site-generator.js +182 -138
  277. package/src/{internal-types.d.ts → types/internal-types.d.ts} +62 -30
  278. package/src/types/internal-types.js +0 -0
  279. package/src/{public-types.d.ts → types/public-types.d.ts} +239 -31
  280. package/src/types/public-types.js +0 -0
  281. package/src/utils/html-escaping.d.ts +7 -0
  282. package/src/utils/html-escaping.js +6 -0
  283. package/src/utils/locals-utils.d.ts +1 -1
  284. package/src/utils/parse-cli-args.d.ts +4 -1
  285. package/src/utils/parse-cli-args.js +16 -1
  286. package/src/utils/resolve-work-dir.d.ts +11 -0
  287. package/src/utils/resolve-work-dir.js +31 -0
  288. package/src/watchers/project-watcher.d.ts +11 -7
  289. package/src/watchers/project-watcher.js +69 -75
  290. package/src/watchers/project-watcher.test-helpers.d.ts +2 -2
  291. package/src/watchers/project-watcher.test-helpers.js +6 -5
  292. package/CHANGELOG.md +0 -94
  293. package/src/adapters/abstract/application-adapter.ts +0 -337
  294. package/src/adapters/abstract/router-adapter.ts +0 -30
  295. package/src/adapters/abstract/server-adapter.ts +0 -79
  296. package/src/adapters/bun/client-bridge.ts +0 -62
  297. package/src/adapters/bun/create-app.ts +0 -189
  298. package/src/adapters/bun/define-api-handler.d.ts +0 -61
  299. package/src/adapters/bun/define-api-handler.ts +0 -114
  300. package/src/adapters/bun/hmr-manager.ts +0 -276
  301. package/src/adapters/bun/index.ts +0 -3
  302. package/src/adapters/bun/server-adapter.ts +0 -492
  303. package/src/adapters/bun/server-lifecycle.d.ts +0 -52
  304. package/src/adapters/bun/server-lifecycle.js +0 -120
  305. package/src/adapters/bun/server-lifecycle.ts +0 -154
  306. package/src/adapters/index.ts +0 -6
  307. package/src/adapters/node/create-app.ts +0 -179
  308. package/src/adapters/node/index.d.ts +0 -4
  309. package/src/adapters/node/index.js +0 -8
  310. package/src/adapters/node/index.ts +0 -9
  311. package/src/adapters/node/node-client-bridge.ts +0 -79
  312. package/src/adapters/node/node-hmr-manager.ts +0 -271
  313. package/src/adapters/node/server-adapter.ts +0 -561
  314. package/src/adapters/node/static-content-server.ts +0 -203
  315. package/src/adapters/shared/api-response.ts +0 -104
  316. package/src/adapters/shared/application-adapter.ts +0 -199
  317. package/src/adapters/shared/explicit-static-route-matcher.ts +0 -134
  318. package/src/adapters/shared/file-route-middleware-pipeline.ts +0 -123
  319. package/src/adapters/shared/fs-server-response-factory.ts +0 -118
  320. package/src/adapters/shared/fs-server-response-matcher.ts +0 -198
  321. package/src/adapters/shared/render-context.ts +0 -105
  322. package/src/adapters/shared/server-adapter.ts +0 -442
  323. package/src/adapters/shared/server-route-handler.ts +0 -166
  324. package/src/adapters/shared/server-static-builder.ts +0 -82
  325. package/src/build/build-adapter.ts +0 -133
  326. package/src/build/build-types.ts +0 -83
  327. package/src/build/esbuild-build-adapter.ts +0 -511
  328. package/src/config/config-builder.ts +0 -474
  329. package/src/constants.ts +0 -39
  330. package/src/create-app.ts +0 -87
  331. package/src/define-api-handler.js +0 -15
  332. package/src/define-api-handler.ts +0 -66
  333. package/src/dev/sc-server.ts +0 -143
  334. package/src/eco/component-render-context.d.ts +0 -105
  335. package/src/eco/component-render-context.js +0 -77
  336. package/src/eco/component-render-context.ts +0 -202
  337. package/src/eco/eco.ts +0 -221
  338. package/src/eco/eco.types.ts +0 -202
  339. package/src/eco/eco.utils.ts +0 -89
  340. package/src/eco/global-injector-map.ts +0 -112
  341. package/src/eco/lazy-injector-map.ts +0 -120
  342. package/src/eco/module-dependencies.ts +0 -75
  343. package/src/errors/http-error.ts +0 -72
  344. package/src/errors/index.ts +0 -2
  345. package/src/errors/locals-access-error.ts +0 -7
  346. package/src/global/app-logger.ts +0 -4
  347. package/src/hmr/client/hmr-runtime.ts +0 -121
  348. package/src/hmr/hmr-strategy.ts +0 -172
  349. package/src/hmr/hmr.test.e2e.ts +0 -75
  350. package/src/hmr/strategies/default-hmr-strategy.ts +0 -60
  351. package/src/hmr/strategies/js-hmr-strategy.ts +0 -327
  352. package/src/index.browser.ts +0 -3
  353. package/src/index.ts +0 -5
  354. package/src/integrations/ghtml/ghtml-renderer.ts +0 -93
  355. package/src/integrations/ghtml/ghtml.plugin.ts +0 -32
  356. package/src/internal-types.ts +0 -212
  357. package/src/plugins/alias-resolver-plugin.ts +0 -45
  358. package/src/plugins/eco-component-meta-plugin.ts +0 -474
  359. package/src/plugins/integration-plugin.ts +0 -184
  360. package/src/plugins/processor.ts +0 -220
  361. package/src/public-types.ts +0 -1255
  362. package/src/route-renderer/component-graph-executor.d.ts +0 -32
  363. package/src/route-renderer/component-graph-executor.js +0 -31
  364. package/src/route-renderer/component-graph-executor.ts +0 -84
  365. package/src/route-renderer/component-graph.d.ts +0 -42
  366. package/src/route-renderer/component-graph.js +0 -72
  367. package/src/route-renderer/component-graph.ts +0 -159
  368. package/src/route-renderer/component-marker.d.ts +0 -52
  369. package/src/route-renderer/component-marker.js +0 -46
  370. package/src/route-renderer/component-marker.ts +0 -117
  371. package/src/route-renderer/dependency-resolver.js +0 -428
  372. package/src/route-renderer/dependency-resolver.ts +0 -596
  373. package/src/route-renderer/html-post-processing.service.d.ts +0 -40
  374. package/src/route-renderer/html-post-processing.service.js +0 -86
  375. package/src/route-renderer/html-post-processing.service.ts +0 -103
  376. package/src/route-renderer/integration-renderer.d.ts +0 -339
  377. package/src/route-renderer/integration-renderer.js +0 -526
  378. package/src/route-renderer/integration-renderer.ts +0 -696
  379. package/src/route-renderer/marker-graph-resolver.d.ts +0 -76
  380. package/src/route-renderer/marker-graph-resolver.js +0 -93
  381. package/src/route-renderer/marker-graph-resolver.ts +0 -153
  382. package/src/route-renderer/page-module-loader.d.ts +0 -61
  383. package/src/route-renderer/page-module-loader.ts +0 -153
  384. package/src/route-renderer/render-execution.service.d.ts +0 -69
  385. package/src/route-renderer/render-execution.service.js +0 -91
  386. package/src/route-renderer/render-execution.service.ts +0 -158
  387. package/src/route-renderer/render-preparation.service.d.ts +0 -112
  388. package/src/route-renderer/render-preparation.service.js +0 -243
  389. package/src/route-renderer/render-preparation.service.ts +0 -358
  390. package/src/route-renderer/route-renderer.ts +0 -80
  391. package/src/router/fs-router-scanner.d.ts +0 -41
  392. package/src/router/fs-router-scanner.js +0 -155
  393. package/src/router/fs-router-scanner.ts +0 -217
  394. package/src/router/fs-router.d.ts +0 -26
  395. package/src/router/fs-router.js +0 -100
  396. package/src/router/fs-router.ts +0 -122
  397. package/src/services/asset-processing-service/asset-processing.service.d.ts +0 -41
  398. package/src/services/asset-processing-service/asset-processing.service.ts +0 -306
  399. package/src/services/asset-processing-service/asset.factory.ts +0 -105
  400. package/src/services/asset-processing-service/assets.types.ts +0 -112
  401. package/src/services/asset-processing-service/index.d.ts +0 -3
  402. package/src/services/asset-processing-service/index.js +0 -3
  403. package/src/services/asset-processing-service/index.ts +0 -3
  404. package/src/services/asset-processing-service/processor.interface.ts +0 -27
  405. package/src/services/asset-processing-service/processor.registry.ts +0 -18
  406. package/src/services/asset-processing-service/processors/base/base-processor.ts +0 -76
  407. package/src/services/asset-processing-service/processors/base/base-script-processor.d.ts +0 -16
  408. package/src/services/asset-processing-service/processors/base/base-script-processor.js +0 -80
  409. package/src/services/asset-processing-service/processors/base/base-script-processor.ts +0 -105
  410. package/src/services/asset-processing-service/processors/index.d.ts +0 -5
  411. package/src/services/asset-processing-service/processors/index.js +0 -5
  412. package/src/services/asset-processing-service/processors/index.ts +0 -5
  413. package/src/services/asset-processing-service/processors/script/content-script.processor.js +0 -57
  414. package/src/services/asset-processing-service/processors/script/content-script.processor.ts +0 -66
  415. package/src/services/asset-processing-service/processors/script/file-script.processor.ts +0 -88
  416. package/src/services/asset-processing-service/processors/script/node-module-script.processor.d.ts +0 -7
  417. package/src/services/asset-processing-service/processors/script/node-module-script.processor.js +0 -74
  418. package/src/services/asset-processing-service/processors/script/node-module-script.processor.ts +0 -84
  419. package/src/services/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +0 -25
  420. package/src/services/asset-processing-service/processors/stylesheet/content-stylesheet.processor.ts +0 -27
  421. package/src/services/asset-processing-service/processors/stylesheet/file-stylesheet.processor.ts +0 -77
  422. package/src/services/cache/cache.types.ts +0 -126
  423. package/src/services/cache/index.ts +0 -18
  424. package/src/services/cache/memory-cache-store.ts +0 -130
  425. package/src/services/cache/page-cache-service.ts +0 -202
  426. package/src/services/html-transformer.service.d.ts +0 -50
  427. package/src/services/html-transformer.service.js +0 -163
  428. package/src/services/html-transformer.service.ts +0 -217
  429. package/src/services/page-module-import.service.d.ts +0 -37
  430. package/src/services/page-module-import.service.js +0 -88
  431. package/src/services/page-module-import.service.ts +0 -129
  432. package/src/services/page-request-cache-coordinator.service.ts +0 -128
  433. package/src/services/schema-validation-service.ts +0 -204
  434. package/src/services/validation/standard-schema.types.ts +0 -68
  435. package/src/static-site-generator/static-site-generator.ts +0 -359
  436. package/src/utils/css.d.ts +0 -1
  437. package/src/utils/css.js +0 -7
  438. package/src/utils/css.ts +0 -5
  439. package/src/utils/deep-merge.ts +0 -47
  440. package/src/utils/hash.ts +0 -5
  441. package/src/utils/html.ts +0 -1
  442. package/src/utils/invariant.ts +0 -15
  443. package/src/utils/locals-utils.ts +0 -37
  444. package/src/utils/parse-cli-args.ts +0 -83
  445. package/src/utils/path-utils.module.ts +0 -14
  446. package/src/utils/runtime.ts +0 -44
  447. package/src/utils/server-utils.module.ts +0 -67
  448. package/src/watchers/project-watcher.test-helpers.ts +0 -40
  449. package/src/watchers/project-watcher.ts +0 -364
  450. /package/src/adapters/{bun → shared}/define-api-handler.js +0 -0
  451. /package/src/{internal-types.js → adapters/shared/runtime-host.js} +0 -0
  452. /package/src/{public-types.js → adapters/shared/static-preview-host.js} +0 -0
  453. /package/src/{services/asset-processing-service/assets.types.js → plugins/runtime-capability.js} +0 -0
  454. /package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.interface.js +0 -0
  455. /package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.registry.js +0 -0
  456. /package/src/services/{schema-validation-service.js → validation/schema-validation-service.js} +0 -0
package/README.md CHANGED
@@ -1,32 +1,285 @@
1
- # Ecopages
1
+ # @ecopages/core
2
2
 
3
- Ecopages is a static site generator designed with the goal of simplifying the process of creating websites. It is suitable for a range of projects, from blogs to portfolios, emphasizing ease of use and flexibility.
3
+ The foundational engine for the Ecopages framework. It provides the core build pipeline, development server, routing, and plugin architecture required to run an Ecopages application.
4
4
 
5
- This project is built on a commitment to clarity and simplicity in web development, utilizing modern web technologies without obscuring the process with unnecessary complexity.
5
+ ## Overview
6
6
 
7
- Ecopages relies on a minimal set of dependencies, carefully chosen to support its core functionality.
7
+ Ecopages is an extensible static site generator (SSG) built around a Bun-first core with Node fallback support and Vite-hosted compatibility for advanced dev and build orchestration. It embraces a strictly MPA (Multi-Page Application) architecture by default, rendering HTML at build-time or request-time, and hydrating interactive islands only where necessary.
8
8
 
9
- Ecopages is built on the [Bun](https://bun.sh/) runtime, primarily utilizing [Kita](https://kitajs.org/html/) and [Mdx](https://mdxjs.com/) for rendering. Additionally, it supports [Lit Elements](https://lit.dev/) and offers experimental integration with [React](https://react.dev/). This setup allows for the extension of the platform with custom rendering functions, providing flexibility to cater to the specific needs of each project. The integrations are designed to be extensible, with no limit to the customization and expansion possibilities.
9
+ - **Runtime Boundary**: `createApp()` prefers Bun when available and falls back to Node otherwise. Vite and Nitro still own host-side dev and build orchestration.
10
+ - **Build Ownership**: Bun-native execution keeps a core-owned build path. Vite and Nitro own host-side transforms, module graph behavior, and deployment-oriented builds.
11
+ - **Framework agnostic**: First-class support for KitaJS, Lit, React, and MDX via official integration plugins.
12
+ - **Extensible**: Hook into the build process with custom processors or rendering integrations.
10
13
 
11
- For styling, [Tailwind CSS](https://tailwindcss.com/) and [PostCSS](https://postcss.org/) have been integrated. Notably, we recommend using `css` stylesheets and `@apply` directives with Tailwind CSS, diverging from its usual inline styling approach to better suit the structure of Ecopages.
14
+ ## Current Architecture
12
15
 
13
- As a project in its early stages, Ecopages is continuously evolving. Users may encounter limitations or areas in need of refinement. We welcome feedback and issue reports via our [GitHub repository](https://github.com/ecopages/ecopages).
16
+ The current core package is organized around app-owned runtime state and explicit service boundaries.
14
17
 
15
- ## Install
18
+ The important ownership rules are:
19
+
20
+ - `ConfigBuilder.build()` finalizes app-owned build and runtime services.
21
+ - browser bundling and server module loading are explicit, separate paths.
22
+ - runtime hosts stay thin and delegate framework work into core services.
23
+ - HMR and invalidation use shared graph-aware services instead of runtime-specific ad hoc wiring.
24
+
25
+ ### Bootstrap And Runtime Ownership
26
+
27
+ ```mermaid
28
+ flowchart TD
29
+ A[eco.config.ts] --> B[ConfigBuilder.build]
30
+ B --> C[App build adapter]
31
+ B --> D[App build manifest]
32
+ B --> E[Build executor]
33
+ B --> F[Dev graph service]
34
+ B --> G[Host module loader boundary]
35
+ G --> H[PageModuleImportService]
36
+ E --> H
37
+ E --> I
38
+ E --> I[BrowserBundleService]
39
+ H --> J[Runtime app adapter]
40
+ J --> K[Bun adapter or Node adapter]
41
+ D --> I
42
+ ```
43
+
44
+ ### Development Invalidation And HMR Flow
45
+
46
+ ```mermaid
47
+ flowchart TD
48
+ A[File change] --> B[ProjectWatcher]
49
+ B --> C[DevelopmentInvalidationService]
50
+ C --> D{Change kind}
51
+ D -->|Route or server source| E[Invalidate server modules]
52
+ D -->|Public or include| F[Reload browser]
53
+ D -->|Processor-owned asset| G[Notify processor only]
54
+ D -->|HMR-eligible source| H[Core HMR manager]
55
+ H --> I[Strategy selection]
56
+ I --> J[Core JsHmrStrategy]
57
+ I --> K[Integration strategy e.g. ReactHmrStrategy]
58
+ J --> L[BrowserBundleService]
59
+ K --> L
60
+ K --> M[importServerModule]
61
+ M --> N[ServerModuleTranspiler]
62
+ L --> O[Updated browser bundle]
63
+ O --> P[Client bridge broadcast]
64
+ ```
65
+
66
+ The manager/orchestration layer is core-owned, but framework-specific strategies such as React HMR are contributed by integrations and registered with the shared HMR manager.
67
+
68
+ ### Practical Summary
69
+
70
+ - `ConfigBuilder` now seeds one app-owned build ownership path, adapter, manifest, executor, dev graph, and runtime registry.
71
+ - `BrowserBundleService` is the shared browser build seam used by HMR and asset-oriented browser output paths.
72
+ - `ServerModuleTranspiler` is the shared server-side source loading seam used by runtime bootstrap and HMR metadata loading.
73
+ - `createApp()` stays the universal runtime entrypoint, while Vite and Nitro hosts own their advanced dev and build workflows.
74
+ - esbuild remains only as a temporary Bun-path implementation detail and is not a strategic core dependency.
75
+
76
+ ## Documentation Map
77
+
78
+ Use this package README as the top-level map, then drill into the focused subsystem READMEs:
79
+
80
+ - `src/config/README.md`: config finalization and app-owned runtime/build state
81
+ - `src/plugins/README.md`: integration and processor authoring contracts
82
+ - `src/build/README.md`: build adapter, executor, and development build coordination
83
+ - `src/services/README.md`: cross-cutting runtime services and orchestration helpers
84
+ - `src/adapters/README.md`: Bun, Node, and shared adapter boundaries
85
+ - `src/hmr/README.md`: HMR strategy and update-layer ownership
86
+ - `src/router/README.md`: route discovery, matching, and browser navigation coordination
87
+ - `src/route-renderer/README.md`: rendering orchestration and dependency resolution
88
+ - `src/static-site-generator/README.md`: static build execution path
89
+ - `src/eco/README.md`: `eco` authoring APIs for pages, layouts, and components
90
+
91
+ The intended reading order is:
92
+
93
+ 1. this file for the big-picture architecture
94
+ 2. `src/config/README.md` for config and lifecycle ownership
95
+ 3. `src/plugins/README.md` and `src/build/README.md` for contribution contracts
96
+ 4. `src/services/README.md` and `src/adapters/README.md` for runtime execution
97
+ 5. `src/router/README.md` and `src/route-renderer/README.md` for request-time flow
98
+
99
+ ## Installation
16
100
 
17
101
  ```bash
18
- bunx jsr add @ecopages/core
102
+ bun add @ecopages/core
19
103
  ```
20
104
 
21
- ## Portable imports first
105
+ _(You can also use `npm`, `yarn`, or `pnpm`)_
106
+
107
+ ## Basic Usage
108
+
109
+ The Ecopages architecture revolves around an `eco.config.ts` file and an application entry point.
110
+
111
+ ### 1. Configuration (`eco.config.ts`)
112
+
113
+ Configure your integratons, processors, and default metadata. Ecopages uses a builder pattern:
114
+
115
+ ```typescript
116
+ import { ConfigBuilder } from '@ecopages/core/config-builder';
117
+ // import your desired plugins...
118
+
119
+ const config = await new ConfigBuilder()
120
+ .setRootDir(import.meta.dirname)
121
+ .setBaseUrl(import.meta.env.ECOPAGES_BASE_URL ?? 'http://localhost:3000')
122
+ .setDefaultMetadata({
123
+ title: 'My Ecopages Site',
124
+ description: 'Built with Ecopages',
125
+ })
126
+ // .setIntegrations([kitajsPlugin()])
127
+ .build();
128
+
129
+ export default config;
130
+ ```
131
+
132
+ ### 2. Application Entry (`app.ts`)
133
+
134
+ Start the application using `createApp`. It will choose the Bun adapter when Bun is available and fall back to Node otherwise.
135
+
136
+ ```typescript
137
+ import { createApp } from '@ecopages/core/create-app';
138
+ import appConfig from './eco.config';
139
+
140
+ const app = await createApp({ appConfig });
141
+
142
+ await app.start();
143
+ ```
144
+
145
+ ### 3. Creating Pages
146
+
147
+ Use the `eco.page()` factory to define static routes. Place these in `src/pages/`:
148
+
149
+ ```tsx
150
+ import { eco } from '@ecopages/core';
151
+ import { BaseLayout } from '@/layouts/base-layout';
152
+
153
+ export default eco.page({
154
+ layout: BaseLayout,
155
+ metadata: () => ({
156
+ title: 'Home',
157
+ }),
158
+ render: () => (
159
+ <div>
160
+ <h1>Welcome to Ecopages</h1>
161
+ </div>
162
+ ),
163
+ });
164
+ ```
165
+
166
+ ### 4. Reusable Components
167
+
168
+ Define components with `eco.component()` to automatically inject necessary stylesheets or scripts only when that component is rendered:
22
169
 
23
- Use the root package exports for normal Ecopages authoring:
170
+ ```tsx
171
+ import { eco } from '@ecopages/core';
172
+
173
+ export const MyButton = eco.component({
174
+ dependencies: {
175
+ stylesheets: ['./button.css'],
176
+ },
177
+ render: ({ label }) => <button className="my-button">{label}</button>,
178
+ });
179
+ ```
180
+
181
+ Dependency ownership affects final asset packaging:
182
+
183
+ - Stylesheets and scripts declared from `eco.html()` stay Html-owned and can be emitted as shared app-wide assets.
184
+ - Stylesheets and scripts declared from Pages, Layouts, or Components are resolved into page-owned assets for the rendered route.
185
+ - This split is intentional. Shared Html assets can be cached across routes, while page-owned assets can change without invalidating the global shell.
186
+
187
+ ### 5. API Handlers
188
+
189
+ Add server-side routes using `defineApiHandler`. Register them on your `app` instance before starting:
190
+
191
+ ```typescript
192
+ import { defineApiHandler } from '@ecopages/core';
193
+
194
+ export const helloWorld = defineApiHandler({
195
+ path: '/api/hello',
196
+ method: 'GET',
197
+ handler: async ({ response }) => {
198
+ return response.json({ message: 'Hello World' });
199
+ },
200
+ });
201
+ ```
202
+
203
+ Attach the handler in your `app.ts` entry:
204
+
205
+ ```typescript
206
+ // app.ts
207
+ import { createApp } from '@ecopages/core/create-app';
208
+ import { helloWorld } from './handlers/hello';
209
+ import appConfig from './eco.config';
210
+
211
+ const app = await createApp({ appConfig });
212
+
213
+ app.get(helloWorld); // Register the API handler
214
+
215
+ await app.start();
216
+ ```
217
+
218
+ See the [official documentation](https://ecopages.app) for advanced usage, API handlers, and integrations.
219
+
220
+ ## Import Structure
221
+
222
+ Use the `create-app` subpath for runtime startup and the root package for standard authoring helpers:
24
223
 
25
224
  ```ts
26
- import { EcopagesApp, defineApiHandler, defineGroupHandler } from '@ecopages/core';
225
+ import { createApp } from '@ecopages/core/create-app';
226
+ import { defineApiHandler, defineGroupHandler, eco } from '@ecopages/core';
27
227
  ```
28
228
 
29
- Use runtime-specific subpaths only as advanced escape hatches when you explicitly need Bun- or Node-native APIs:
229
+ > [!NOTE]
230
+ > `createApp` is the recommended entrypoint over `EcopagesApp`.
231
+
232
+ ### Runtime Escape Hatches
233
+
234
+ Use runtime-specific subpaths only when you explicitly need Bun-native APIs that bypass the universal abstractions:
30
235
 
31
236
  - `@ecopages/core/bun`
32
- - `@ecopages/core/node`
237
+
238
+ ## Entry Point Roles
239
+
240
+ The published subpaths are grouped by architectural role rather than by source folder.
241
+
242
+ ### App Authoring
243
+
244
+ Use these entrypoints when building an Ecopages app:
245
+
246
+ - `@ecopages/core`
247
+ - `@ecopages/core/create-app`
248
+ - `@ecopages/core/config-builder`
249
+ - `@ecopages/core/errors`
250
+ - `@ecopages/core/html`
251
+ - `@ecopages/core/hash`
252
+ - `@ecopages/core/declarations`
253
+ - `@ecopages/core/env`
254
+ - `@ecopages/core/bun`
255
+
256
+ ### Browser Navigation
257
+
258
+ Use these entrypoints when a browser runtime needs to coordinate document ownership and link intent:
259
+
260
+ - `@ecopages/core/router/navigation-coordinator`
261
+ - `@ecopages/core/router/link-intent`
262
+
263
+ ### Extension Authoring
264
+
265
+ Use these entrypoints when implementing integrations, processors, or source transforms:
266
+
267
+ - `@ecopages/core/plugins/integration-plugin`
268
+ - `@ecopages/core/plugins/processor`
269
+ - `@ecopages/core/plugins/source-transform`
270
+ - `@ecopages/core/route-renderer/integration-renderer`
271
+ - `@ecopages/core/services/asset-processing-service`
272
+ - `@ecopages/core/hmr/hmr-strategy`
273
+ - `@ecopages/core/integrations/ghtml`
274
+
275
+ ### Host And Runtime Composition
276
+
277
+ Use these entrypoints only when implementing host adapters or framework-owned bundling seams:
278
+
279
+ - `@ecopages/core/dev/host-runtime`
280
+ - `@ecopages/core/build/build-adapter`
281
+ - `@ecopages/core/build/build-types`
282
+ - `@ecopages/core/build/runtime-specifier-alias-plugin`
283
+ - `@ecopages/core/plugins/foreign-jsx-override-plugin`
284
+
285
+ These host-facing entrypoints are narrower compatibility seams. App code and most extensions should prefer the app-authoring or extension-authoring surfaces.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ecopages/core",
3
- "version": "0.2.0-alpha.5",
3
+ "version": "0.2.0-alpha.51",
4
4
  "description": "Core package for Ecopages",
5
5
  "keywords": [
6
6
  "ecopages",
@@ -17,15 +17,15 @@
17
17
  "directory": "packages/core"
18
18
  },
19
19
  "dependencies": {
20
- "@ecopages/file-system": "0.2.0-alpha.5",
21
- "@ecopages/logger": "latest",
22
- "@ecopages/scripts-injector": "^0.1.3",
20
+ "@ecopages/file-system": "0.2.0-alpha.51",
21
+ "@ecopages/logger": "^0.2.3",
22
+ "@ecopages/scripts-injector": "^0.1.5",
23
23
  "@worker-tools/html-rewriter": "0.1.0-pre.19",
24
- "chokidar": "^4.0.3",
25
- "esbuild": "^0.27.3",
24
+ "chokidar": "^5.0.0",
25
+ "esbuild": "^0.28.0",
26
26
  "ghtml": "^4.0.2",
27
- "oxc-parser": "^0.110.0",
28
- "ws": "^8.18.0"
27
+ "oxc-parser": "^0.124.0",
28
+ "ws": "^8.20.1"
29
29
  },
30
30
  "exports": {
31
31
  ".": {
@@ -35,18 +35,29 @@
35
35
  "default": "./src/index.js"
36
36
  },
37
37
  "./create-app": {
38
- "types": "./src/create-app.d.ts",
39
- "default": "./src/create-app.js"
38
+ "import": "./src/adapters/create-app.js",
39
+ "types": "./src/adapters/create-app.d.ts",
40
+ "default": "./src/adapters/create-app.js"
40
41
  },
41
42
  "./route-renderer/integration-renderer": {
42
- "types": "./src/route-renderer/integration-renderer.d.ts",
43
- "default": "./src/route-renderer/integration-renderer.js"
43
+ "types": "./src/route-renderer/orchestration/integration-renderer.d.ts",
44
+ "default": "./src/route-renderer/orchestration/integration-renderer.js"
44
45
  },
45
- "./errors/locals-access-error": {
46
- "types": "./src/errors/locals-access-error.d.ts",
47
- "default": "./src/errors/locals-access-error.js"
46
+ "./route-renderer/component-render-context": {
47
+ "import": "./src/route-renderer/orchestration/component-render-context.js",
48
+ "types": "./src/route-renderer/orchestration/component-render-context.d.ts",
49
+ "default": "./src/route-renderer/orchestration/component-render-context.js"
50
+ },
51
+ "./router/navigation-coordinator": {
52
+ "types": "./src/router/client/navigation-coordinator.d.ts",
53
+ "default": "./src/router/client/navigation-coordinator.js"
54
+ },
55
+ "./router/link-intent": {
56
+ "types": "./src/router/client/link-intent.d.ts",
57
+ "default": "./src/router/client/link-intent.js"
48
58
  },
49
59
  "./eco": {
60
+ "browser": "./src/eco/eco.browser.js",
50
61
  "types": "./src/eco/eco.d.ts",
51
62
  "default": "./src/eco/eco.js"
52
63
  },
@@ -61,43 +72,28 @@
61
72
  "default": "./src/config/config-builder.js"
62
73
  },
63
74
  "./constants": {
64
- "types": "./src/constants.d.ts",
65
- "default": "./src/constants.js"
75
+ "types": "./src/config/constants.d.ts",
76
+ "default": "./src/config/constants.js"
66
77
  },
67
78
  "./bun": {
68
79
  "types": "./src/adapters/bun/index.d.ts",
69
80
  "default": "./src/adapters/bun/index.js"
70
81
  },
71
- "./bun/create-app": {
72
- "types": "./src/adapters/bun/create-app.d.ts",
73
- "default": "./src/adapters/bun/create-app.js"
74
- },
75
- "./bun/define-api-handler": {
76
- "types": "./src/adapters/bun/define-api-handler.d.ts",
77
- "default": "./src/adapters/bun/define-api-handler.js"
78
- },
79
82
  "./hmr/hmr-strategy": {
80
83
  "types": "./src/hmr/hmr-strategy.d.ts",
81
84
  "default": "./src/hmr/hmr-strategy.js"
82
85
  },
83
- "./internal-types": {
84
- "types": "./src/internal-types.d.ts"
85
- },
86
- "./services/asset-processing-service": {
87
- "types": "./src/services/asset-processing-service/index.d.ts",
88
- "default": "./src/services/asset-processing-service/index.js"
89
- },
90
- "./utils/deep-merge": {
91
- "types": "./src/utils/deep-merge.d.ts",
92
- "default": "./src/utils/deep-merge.js"
86
+ "./hmr/client/hmr-runtime": {
87
+ "types": "./src/hmr/client/hmr-runtime.d.ts",
88
+ "default": "./src/hmr/client/hmr-runtime.js"
93
89
  },
94
- "./utils/invariant": {
95
- "types": "./src/utils/invariant.d.ts",
96
- "default": "./src/utils/invariant.js"
90
+ "./dev/host-runtime": {
91
+ "types": "./src/dev/host-runtime.d.ts",
92
+ "default": "./src/dev/host-runtime.js"
97
93
  },
98
- "./utils/parse-cli-args": {
99
- "types": "./src/utils/parse-cli-args.d.ts",
100
- "default": "./src/utils/parse-cli-args.js"
94
+ "./services/asset-processing-service": {
95
+ "types": "./src/services/assets/asset-processing-service/index.d.ts",
96
+ "default": "./src/services/assets/asset-processing-service/index.js"
101
97
  },
102
98
  "./plugins/processor": {
103
99
  "types": "./src/plugins/processor.d.ts",
@@ -107,6 +103,10 @@
107
103
  "types": "./src/plugins/integration-plugin.d.ts",
108
104
  "default": "./src/plugins/integration-plugin.js"
109
105
  },
106
+ "./plugins/source-transform": {
107
+ "types": "./src/plugins/source-transform.d.ts",
108
+ "default": "./src/plugins/source-transform.js"
109
+ },
110
110
  "./build/build-types": {
111
111
  "types": "./src/build/build-types.d.ts",
112
112
  "default": "./src/build/build-types.js"
@@ -115,32 +115,27 @@
115
115
  "types": "./src/build/build-adapter.d.ts",
116
116
  "default": "./src/build/build-adapter.js"
117
117
  },
118
- "./adapters/bun/client-bridge": {
119
- "types": "./src/adapters/bun/client-bridge.d.ts",
120
- "default": "./src/adapters/bun/client-bridge.js"
118
+ "./build/browser-runtime-manifest": {
119
+ "types": "./src/build/browser-runtime-manifest.d.ts",
120
+ "default": "./src/build/browser-runtime-manifest.js"
121
121
  },
122
- "./node": {
123
- "types": "./src/adapters/node/index.d.ts",
124
- "default": "./src/adapters/node/index.js"
122
+ "./build/browser-runtime-import-rewrite-plugin": {
123
+ "types": "./src/build/browser-runtime-import-rewrite-plugin.d.ts",
124
+ "default": "./src/build/browser-runtime-import-rewrite-plugin.js"
125
125
  },
126
- "./node/server-adapter": {
127
- "types": "./src/adapters/node/server-adapter.d.ts",
128
- "default": "./src/adapters/node/server-adapter.js"
126
+ "./build/runtime-specifier-alias-plugin": {
127
+ "types": "./src/build/runtime-specifier-alias-plugin.d.ts",
128
+ "default": "./src/build/runtime-specifier-alias-plugin.js"
129
129
  },
130
- "./node/create-app": {
131
- "types": "./src/adapters/node/create-app.d.ts",
132
- "default": "./src/adapters/node/create-app.js"
130
+ "./plugins/foreign-jsx-override-plugin": {
131
+ "types": "./src/plugins/foreign-jsx-override-plugin.d.ts",
132
+ "default": "./src/plugins/foreign-jsx-override-plugin.js"
133
133
  },
134
134
  "./html": {
135
135
  "import": "./src/utils/html.js",
136
136
  "default": "./src/utils/html.js",
137
137
  "types": "./src/utils/html.d.ts"
138
138
  },
139
- "./css": {
140
- "import": "./src/utils/css.js",
141
- "default": "./src/utils/css.js",
142
- "types": "./src/utils/css.d.ts"
143
- },
144
139
  "./hash": {
145
140
  "import": "./src/utils/hash.js",
146
141
  "default": "./src/utils/hash.js",
@@ -155,18 +150,29 @@
155
150
  "default": "./src/integrations/ghtml/ghtml.plugin.js"
156
151
  },
157
152
  "./create-app.ts": {
158
- "types": "./src/create-app.d.ts",
159
- "default": "./src/create-app.js"
153
+ "import": "./src/adapters/create-app.js",
154
+ "types": "./src/adapters/create-app.d.ts",
155
+ "default": "./src/adapters/create-app.js"
160
156
  },
161
157
  "./route-renderer/integration-renderer.ts": {
162
- "types": "./src/route-renderer/integration-renderer.d.ts",
163
- "default": "./src/route-renderer/integration-renderer.js"
158
+ "types": "./src/route-renderer/orchestration/integration-renderer.d.ts",
159
+ "default": "./src/route-renderer/orchestration/integration-renderer.js"
164
160
  },
165
- "./errors/locals-access-error.ts": {
166
- "types": "./src/errors/locals-access-error.d.ts",
167
- "default": "./src/errors/locals-access-error.js"
161
+ "./route-renderer/component-render-context.ts": {
162
+ "import": "./src/route-renderer/orchestration/component-render-context.js",
163
+ "types": "./src/route-renderer/orchestration/component-render-context.d.ts",
164
+ "default": "./src/route-renderer/orchestration/component-render-context.js"
165
+ },
166
+ "./router/navigation-coordinator.ts": {
167
+ "types": "./src/router/client/navigation-coordinator.d.ts",
168
+ "default": "./src/router/client/navigation-coordinator.js"
169
+ },
170
+ "./router/link-intent.ts": {
171
+ "types": "./src/router/client/link-intent.d.ts",
172
+ "default": "./src/router/client/link-intent.js"
168
173
  },
169
174
  "./eco.ts": {
175
+ "browser": "./src/eco/eco.browser.js",
170
176
  "types": "./src/eco/eco.d.ts",
171
177
  "default": "./src/eco/eco.js"
172
178
  },
@@ -181,43 +187,28 @@
181
187
  "default": "./src/config/config-builder.js"
182
188
  },
183
189
  "./constants.ts": {
184
- "types": "./src/constants.d.ts",
185
- "default": "./src/constants.js"
190
+ "types": "./src/config/constants.d.ts",
191
+ "default": "./src/config/constants.js"
186
192
  },
187
193
  "./bun.ts": {
188
194
  "types": "./src/adapters/bun/index.d.ts",
189
195
  "default": "./src/adapters/bun/index.js"
190
196
  },
191
- "./bun/create-app.ts": {
192
- "types": "./src/adapters/bun/create-app.d.ts",
193
- "default": "./src/adapters/bun/create-app.js"
194
- },
195
- "./bun/define-api-handler.ts": {
196
- "types": "./src/adapters/bun/define-api-handler.d.ts",
197
- "default": "./src/adapters/bun/define-api-handler.js"
198
- },
199
197
  "./hmr/hmr-strategy.ts": {
200
198
  "types": "./src/hmr/hmr-strategy.d.ts",
201
199
  "default": "./src/hmr/hmr-strategy.js"
202
200
  },
203
- "./internal-types.ts": {
204
- "types": "./src/internal-types.d.ts"
205
- },
206
- "./services/asset-processing-service.ts": {
207
- "types": "./src/services/asset-processing-service/index.d.ts",
208
- "default": "./src/services/asset-processing-service/index.js"
209
- },
210
- "./utils/deep-merge.ts": {
211
- "types": "./src/utils/deep-merge.d.ts",
212
- "default": "./src/utils/deep-merge.js"
201
+ "./hmr/client/hmr-runtime.ts": {
202
+ "types": "./src/hmr/client/hmr-runtime.d.ts",
203
+ "default": "./src/hmr/client/hmr-runtime.js"
213
204
  },
214
- "./utils/invariant.ts": {
215
- "types": "./src/utils/invariant.d.ts",
216
- "default": "./src/utils/invariant.js"
205
+ "./dev/host-runtime.ts": {
206
+ "types": "./src/dev/host-runtime.d.ts",
207
+ "default": "./src/dev/host-runtime.js"
217
208
  },
218
- "./utils/parse-cli-args.ts": {
219
- "types": "./src/utils/parse-cli-args.d.ts",
220
- "default": "./src/utils/parse-cli-args.js"
209
+ "./services/asset-processing-service.ts": {
210
+ "types": "./src/services/assets/asset-processing-service/index.d.ts",
211
+ "default": "./src/services/assets/asset-processing-service/index.js"
221
212
  },
222
213
  "./plugins/processor.ts": {
223
214
  "types": "./src/plugins/processor.d.ts",
@@ -227,6 +218,10 @@
227
218
  "types": "./src/plugins/integration-plugin.d.ts",
228
219
  "default": "./src/plugins/integration-plugin.js"
229
220
  },
221
+ "./plugins/source-transform.ts": {
222
+ "types": "./src/plugins/source-transform.d.ts",
223
+ "default": "./src/plugins/source-transform.js"
224
+ },
230
225
  "./build/build-types.ts": {
231
226
  "types": "./src/build/build-types.d.ts",
232
227
  "default": "./src/build/build-types.js"
@@ -235,32 +230,27 @@
235
230
  "types": "./src/build/build-adapter.d.ts",
236
231
  "default": "./src/build/build-adapter.js"
237
232
  },
238
- "./adapters/bun/client-bridge.ts": {
239
- "types": "./src/adapters/bun/client-bridge.d.ts",
240
- "default": "./src/adapters/bun/client-bridge.js"
233
+ "./build/browser-runtime-manifest.ts": {
234
+ "types": "./src/build/browser-runtime-manifest.d.ts",
235
+ "default": "./src/build/browser-runtime-manifest.js"
241
236
  },
242
- "./node.ts": {
243
- "types": "./src/adapters/node/index.d.ts",
244
- "default": "./src/adapters/node/index.js"
237
+ "./build/browser-runtime-import-rewrite-plugin.ts": {
238
+ "types": "./src/build/browser-runtime-import-rewrite-plugin.d.ts",
239
+ "default": "./src/build/browser-runtime-import-rewrite-plugin.js"
245
240
  },
246
- "./node/server-adapter.ts": {
247
- "types": "./src/adapters/node/server-adapter.d.ts",
248
- "default": "./src/adapters/node/server-adapter.js"
241
+ "./build/runtime-specifier-alias-plugin.ts": {
242
+ "types": "./src/build/runtime-specifier-alias-plugin.d.ts",
243
+ "default": "./src/build/runtime-specifier-alias-plugin.js"
249
244
  },
250
- "./node/create-app.ts": {
251
- "types": "./src/adapters/node/create-app.d.ts",
252
- "default": "./src/adapters/node/create-app.js"
245
+ "./plugins/foreign-jsx-override-plugin.ts": {
246
+ "types": "./src/plugins/foreign-jsx-override-plugin.d.ts",
247
+ "default": "./src/plugins/foreign-jsx-override-plugin.js"
253
248
  },
254
249
  "./html.ts": {
255
250
  "import": "./src/utils/html.js",
256
251
  "default": "./src/utils/html.js",
257
252
  "types": "./src/utils/html.d.ts"
258
253
  },
259
- "./css.ts": {
260
- "import": "./src/utils/css.js",
261
- "default": "./src/utils/css.js",
262
- "types": "./src/utils/css.d.ts"
263
- },
264
254
  "./hash.ts": {
265
255
  "import": "./src/utils/hash.js",
266
256
  "default": "./src/utils/hash.js",