@ecopages/core 0.2.0-beta.31 → 0.2.0-beta.33

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 (343) hide show
  1. package/README.md +1 -0
  2. package/package.json +90 -3
  3. package/src/adapters/abstract/application-adapter.d.ts +0 -8
  4. package/src/adapters/abstract/application-adapter.js +252 -261
  5. package/src/adapters/abstract/router-adapter.js +12 -4
  6. package/src/adapters/abstract/segment-path-matcher.js +132 -134
  7. package/src/adapters/abstract/server-adapter.js +22 -14
  8. package/src/adapters/abstract/ws-pattern-matcher.js +24 -26
  9. package/src/adapters/bun/bun-user-websocket-lifecycle.js +83 -86
  10. package/src/adapters/bun/client-bridge.js +51 -50
  11. package/src/adapters/bun/create-app.js +171 -161
  12. package/src/adapters/bun/hmr-manager.js +62 -57
  13. package/src/adapters/bun/index.js +2 -31
  14. package/src/adapters/bun/runtime-host.js +61 -54
  15. package/src/adapters/bun/server-adapter.d.ts +0 -1
  16. package/src/adapters/bun/server-adapter.js +561 -561
  17. package/src/adapters/bun/static-preview-host.js +43 -46
  18. package/src/adapters/create-app.js +11 -14
  19. package/src/adapters/index.js +2 -30
  20. package/src/adapters/node/create-app.js +123 -129
  21. package/src/adapters/node/http-request-bridge.js +147 -106
  22. package/src/adapters/node/node-client-bridge.js +62 -64
  23. package/src/adapters/node/node-hmr-manager.js +58 -48
  24. package/src/adapters/node/runtime-host.js +96 -89
  25. package/src/adapters/node/server-adapter-dependencies.js +18 -21
  26. package/src/adapters/node/server-adapter.d.ts +0 -1
  27. package/src/adapters/node/server-adapter.js +347 -326
  28. package/src/adapters/node/static-content-server.js +172 -191
  29. package/src/adapters/node/static-preview-host.js +87 -78
  30. package/src/adapters/shared/hmr/dev-transform-entrypoint-registry.d.ts +16 -0
  31. package/src/adapters/shared/hmr/dev-transform-entrypoint-registry.js +32 -0
  32. package/src/adapters/shared/hmr/hmr-html-response.js +46 -32
  33. package/src/adapters/shared/hmr/shared-hmr-manager.d.ts +29 -38
  34. package/src/adapters/shared/hmr/shared-hmr-manager.js +439 -425
  35. package/src/adapters/shared/http/api-request-pipeline.js +122 -119
  36. package/src/adapters/shared/http/api-response.js +77 -77
  37. package/src/adapters/shared/http/create-body-response.js +22 -19
  38. package/src/adapters/shared/http/define-api-handler.js +41 -55
  39. package/src/adapters/shared/http/explicit-static-render-preparation.js +26 -23
  40. package/src/adapters/shared/http/explicit-static-route-matcher.js +55 -62
  41. package/src/adapters/shared/http/file-route-middleware-pipeline.js +81 -75
  42. package/src/adapters/shared/http/fs-server-response-factory.js +101 -96
  43. package/src/adapters/shared/http/fs-server-response-matcher.js +239 -257
  44. package/src/adapters/shared/http/run-middleware-chain.js +15 -15
  45. package/src/adapters/shared/runtime/application-adapter.js +72 -87
  46. package/src/adapters/shared/runtime/copy-runtime-public-dir.js +25 -22
  47. package/src/adapters/shared/runtime/port-manager.js +207 -177
  48. package/src/adapters/shared/runtime/render-context.js +94 -79
  49. package/src/adapters/shared/runtime/runtime-app-bootstrap.js +33 -38
  50. package/src/adapters/shared/runtime/runtime-host.js +1 -0
  51. package/src/adapters/shared/runtime/runtime-server-lifecycle.d.ts +2 -3
  52. package/src/adapters/shared/runtime/runtime-server-lifecycle.js +65 -51
  53. package/src/adapters/shared/runtime/server-adapter.d.ts +1 -0
  54. package/src/adapters/shared/runtime/server-adapter.js +233 -217
  55. package/src/adapters/shared/runtime/server-route-handler.js +74 -70
  56. package/src/adapters/shared/runtime/server-static-builder.js +165 -184
  57. package/src/adapters/shared/runtime/static-preview-host.js +1 -0
  58. package/src/adapters/shared/ws/node-http-websocket-upgrades.js +97 -88
  59. package/src/adapters/shared/ws/websocket-lifecycle.js +57 -50
  60. package/src/build/README.md +52 -1
  61. package/src/build/app-build-manifest-runtime.js +129 -108
  62. package/src/build/browser/browser-runtime-manifest.js +47 -50
  63. package/src/build/browser/browser-runtime-plugin-helpers.js +32 -12
  64. package/src/build/browser/browser-runtime-plugin.js +206 -160
  65. package/src/build/browser/jsx-ownership-plugins.js +51 -37
  66. package/src/build/browser/lit-static-render-worker-context.js +3 -5
  67. package/src/build/build-adapter.js +276 -139
  68. package/src/build/cache/build-input-fingerprint.js +28 -26
  69. package/src/build/cache/cache-constants.js +4 -6
  70. package/src/build/cache/cache-keys.js +64 -56
  71. package/src/build/cache/pages-unified-graph-build.js +179 -178
  72. package/src/build/cache/production-build-cache.js +47 -54
  73. package/src/build/cache/server-entry-build-cache.js +134 -146
  74. package/src/build/contracts/build-contracts.d.ts +4 -4
  75. package/src/build/contracts/build-contracts.js +1 -0
  76. package/src/build/contracts/build-manifest.js +58 -43
  77. package/src/build/contracts/build-types.js +1 -0
  78. package/src/build/rolldown/rolldown-adapter-helpers.d.ts +9 -0
  79. package/src/build/rolldown/rolldown-adapter-helpers.js +405 -298
  80. package/src/build/rolldown/rolldown-build-adapter.js +53 -61
  81. package/src/build/rolldown/rolldown-build-invocation-metrics.js +31 -35
  82. package/src/build/rolldown/rolldown-plugin-bridge.js +264 -194
  83. package/src/build/rolldown/rolldown-source-transform-pass.js +59 -50
  84. package/src/build/rolldown/runtime-build-output-normalizer.js +227 -175
  85. package/src/build/rolldown/server-side-css-shim-plugin.js +54 -31
  86. package/src/build/runtime/build-profile-options.js +36 -36
  87. package/src/build/runtime/build-request-identity.js +70 -45
  88. package/src/build/runtime/build-request-policy.js +80 -42
  89. package/src/build/runtime/build-runtime.js +64 -54
  90. package/src/build/runtime/deduping-build-executor.js +38 -32
  91. package/src/build/runtime/parallel-build-executor.js +58 -50
  92. package/src/build/runtime/serialized-build-executor.js +78 -62
  93. package/src/cache/index.js +6 -6
  94. package/src/cache/module-parse-cache.js +99 -68
  95. package/src/client/navigation-scripts/classification.js +45 -37
  96. package/src/client/navigation-scripts/index.js +3 -23
  97. package/src/client/navigation-scripts/navigation-scripts.test.browser.js +58 -62
  98. package/src/client/navigation-scripts/registry.js +15 -11
  99. package/src/client/navigation-scripts/rerun-queue.js +81 -64
  100. package/src/client/scroll.js +32 -24
  101. package/src/client/scroll.test.browser.js +27 -33
  102. package/src/client/view-transitions.js +68 -55
  103. package/src/config/config-builder.d.ts +8 -0
  104. package/src/config/config-builder.js +637 -642
  105. package/src/config/constants.js +44 -24
  106. package/src/declarations.d.ts +1 -0
  107. package/src/dev/README.md +24 -0
  108. package/src/dev/client-bridge-registry.js +7 -12
  109. package/src/dev/dev-client-ownership.js +7 -5
  110. package/src/dev/hmr-manager-registry.js +7 -12
  111. package/src/dev/host-runtime.js +25 -30
  112. package/src/dev/runtime-server-started-message.js +2 -5
  113. package/src/dev/sc-server.js +106 -103
  114. package/src/dev/transform-server/dev-transform-bundler.d.ts +24 -0
  115. package/src/dev/transform-server/dev-transform-bundler.js +79 -0
  116. package/src/dev/transform-server/dev-transform-externalize-plugin.d.ts +12 -0
  117. package/src/dev/transform-server/dev-transform-externalize-plugin.js +29 -0
  118. package/src/dev/transform-server/dev-transform-import-rewriter.d.ts +16 -0
  119. package/src/dev/transform-server/dev-transform-import-rewriter.js +110 -0
  120. package/src/dev/transform-server/dev-transform-module-kind.d.ts +13 -0
  121. package/src/dev/transform-server/dev-transform-module-kind.js +17 -0
  122. package/src/dev/transform-server/dev-transform-runtime-specifiers.d.ts +5 -0
  123. package/src/dev/transform-server/dev-transform-runtime-specifiers.js +16 -0
  124. package/src/dev/transform-server/dev-transform-server.d.ts +41 -0
  125. package/src/dev/transform-server/dev-transform-server.js +191 -0
  126. package/src/dev/transform-server/dev-transform-url.d.ts +13 -0
  127. package/src/dev/transform-server/dev-transform-url.js +58 -0
  128. package/src/dev/transform-server/dev-transform-vendor-registry.d.ts +27 -0
  129. package/src/dev/transform-server/dev-transform-vendor-registry.js +145 -0
  130. package/src/dev/transform-server/index.d.ts +6 -0
  131. package/src/dev/transform-server/index.js +4 -0
  132. package/src/dev/transform-server/types.d.ts +15 -0
  133. package/src/dev/transform-server/types.js +1 -0
  134. package/src/dev-toolbar/README.md +51 -0
  135. package/src/dev-toolbar/define-dev-tool.d.ts +21 -0
  136. package/src/dev-toolbar/define-dev-tool.js +9 -0
  137. package/src/dev-toolbar/dev-toolbar-config.d.ts +25 -0
  138. package/src/dev-toolbar/dev-toolbar-config.js +19 -0
  139. package/src/dev-toolbar/dev-toolbar-host.d.ts +49 -0
  140. package/src/dev-toolbar/dev-toolbar-host.js +117 -0
  141. package/src/dev-toolbar/dev-toolbar-html-response.d.ts +11 -0
  142. package/src/dev-toolbar/dev-toolbar-html-response.js +14 -0
  143. package/src/dev-toolbar/dev-toolbar-manifest.d.ts +15 -0
  144. package/src/dev-toolbar/dev-toolbar-manifest.js +52 -0
  145. package/src/dev-toolbar/dev-toolbar-package.d.ts +31 -0
  146. package/src/dev-toolbar/dev-toolbar-package.js +72 -0
  147. package/src/dev-toolbar/dev-toolbar-runtime-paths.d.ts +10 -0
  148. package/src/dev-toolbar/dev-toolbar-runtime-paths.js +13 -0
  149. package/src/diagnostics/request-build-dedupe.js +34 -28
  150. package/src/diagnostics/startup-trace.d.ts +10 -1
  151. package/src/diagnostics/startup-trace.js +269 -241
  152. package/src/eco/README.md +6 -0
  153. package/src/eco/eco-declared-component.js +19 -14
  154. package/src/eco/eco.browser.js +56 -69
  155. package/src/eco/eco.js +156 -96
  156. package/src/eco/eco.types.js +5 -0
  157. package/src/eco/eco.utils.js +1 -10
  158. package/src/eco/global-injector-map.js +55 -41
  159. package/src/eco/lazy-injector-map.js +90 -60
  160. package/src/eco/module-dependencies.js +52 -44
  161. package/src/eco/page-layout-normalization.js +59 -49
  162. package/src/errors/http-error.js +50 -49
  163. package/src/errors/index.js +3 -12
  164. package/src/errors/locals-access-error.js +5 -8
  165. package/src/errors/undeclared-component-dependency-error.js +15 -15
  166. package/src/global/app-logger.js +3 -6
  167. package/src/hmr/README.md +10 -0
  168. package/src/hmr/client/hmr-runtime.js +117 -113
  169. package/src/hmr/client/module-update.d.ts +13 -0
  170. package/src/hmr/client/module-update.js +39 -0
  171. package/src/hmr/hmr-asset-paths.d.ts +14 -0
  172. package/src/hmr/hmr-asset-paths.js +22 -0
  173. package/src/hmr/hmr-entrypoint-output.d.ts +11 -39
  174. package/src/hmr/hmr-entrypoint-output.js +28 -54
  175. package/src/hmr/hmr-file-change-prep.js +13 -16
  176. package/src/hmr/hmr-registered-entrypoints-context.d.ts +7 -0
  177. package/src/hmr/hmr-registered-entrypoints-context.js +1 -0
  178. package/src/hmr/hmr-runtime-paths.d.ts +10 -0
  179. package/src/hmr/hmr-runtime-paths.js +13 -0
  180. package/src/hmr/hmr-strategy.d.ts +5 -11
  181. package/src/hmr/hmr-strategy.js +113 -61
  182. package/src/hmr/strategies/default-hmr-strategy.js +55 -33
  183. package/src/hmr/strategies/js-hmr-strategy.d.ts +6 -95
  184. package/src/hmr/strategies/js-hmr-strategy.js +104 -217
  185. package/src/hmr/strategies/server-rendered-template-hmr-strategy.js +33 -27
  186. package/src/index.browser.js +1 -4
  187. package/src/index.d.ts +1 -0
  188. package/src/index.js +6 -47
  189. package/src/integrations/ghtml/ghtml-renderer.js +12 -7
  190. package/src/integrations/ghtml/ghtml.constants.js +1 -4
  191. package/src/integrations/ghtml/ghtml.plugin.js +9 -12
  192. package/src/islands/README.md +25 -0
  193. package/src/islands/island-host.d.ts +37 -0
  194. package/src/islands/island-host.js +55 -0
  195. package/src/plugins/alias-resolver-cache.js +114 -97
  196. package/src/plugins/alias-resolver-plugin.js +33 -47
  197. package/src/plugins/define-integration.js +18 -17
  198. package/src/plugins/eco-component-meta-plugin.js +387 -145
  199. package/src/plugins/foreign-jsx-override-plugin.js +49 -35
  200. package/src/plugins/integration-plugin.js +212 -203
  201. package/src/plugins/jsx-import-source.utils.js +16 -21
  202. package/src/plugins/processor.js +159 -149
  203. package/src/plugins/runtime-capability.js +1 -0
  204. package/src/plugins/source-transform.js +109 -79
  205. package/src/plugins/tsconfig-import-resolver.d.ts +17 -0
  206. package/src/plugins/tsconfig-import-resolver.js +218 -142
  207. package/src/route-renderer/README.md +12 -1
  208. package/src/route-renderer/orchestration/document-shell/document-shell-render.service.js +143 -136
  209. package/src/route-renderer/orchestration/document-shell/layout-shell-props.service.js +33 -27
  210. package/src/route-renderer/orchestration/foreign-child/component-render-context.js +173 -126
  211. package/src/route-renderer/orchestration/foreign-child/foreign-child-output.utils.js +165 -154
  212. package/src/route-renderer/orchestration/foreign-child/foreign-subtree-execution.service.js +329 -341
  213. package/src/route-renderer/orchestration/foreign-child/owning-renderer-resolution.js +33 -32
  214. package/src/route-renderer/orchestration/integration-renderer.d.ts +1 -0
  215. package/src/route-renderer/orchestration/integration-renderer.js +731 -750
  216. package/src/route-renderer/orchestration/integration-renderer.test-fixtures.js +168 -172
  217. package/src/route-renderer/orchestration/ownership-graph/component-graph-collectors.js +119 -131
  218. package/src/route-renderer/orchestration/ownership-graph/component-graph.js +82 -91
  219. package/src/route-renderer/orchestration/ownership-graph/ownership-validation.service.js +82 -76
  220. package/src/route-renderer/orchestration/page-browser-graph/global-injector-assets.service.js +29 -31
  221. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-contribution.loader.js +10 -6
  222. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-merge.utils.js +31 -28
  223. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-session.d.ts +3 -0
  224. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph-session.js +430 -413
  225. package/src/route-renderer/orchestration/page-browser-graph/page-browser-graph.service.js +191 -212
  226. package/src/route-renderer/orchestration/page-browser-graph/processed-asset-dedupe.js +20 -24
  227. package/src/route-renderer/orchestration/route-pipeline/integration-route-render-adapter.d.ts +4 -0
  228. package/src/route-renderer/orchestration/route-pipeline/integration-route-render-adapter.js +24 -24
  229. package/src/route-renderer/orchestration/route-pipeline/marker-artifact.utils.js +22 -24
  230. package/src/route-renderer/orchestration/route-pipeline/robots-meta.contribution.js +41 -34
  231. package/src/route-renderer/orchestration/route-pipeline/route-html-finalization.service.d.ts +5 -0
  232. package/src/route-renderer/orchestration/route-pipeline/route-html-finalization.service.js +42 -22
  233. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.builder.js +50 -48
  234. package/src/route-renderer/orchestration/route-pipeline/route-prepared-options.utils.js +29 -32
  235. package/src/route-renderer/orchestration/route-pipeline/route-render-orchestrator.js +150 -156
  236. package/src/route-renderer/orchestration/string-markup-renderer.js +48 -51
  237. package/src/route-renderer/page-loading/component-dependency-collection.js +120 -124
  238. package/src/route-renderer/page-loading/declared-asset-collection.js +66 -94
  239. package/src/route-renderer/page-loading/dependency-resolver.js +101 -104
  240. package/src/route-renderer/page-loading/ecopages-virtual-imports.js +68 -54
  241. package/src/route-renderer/page-loading/lazy-entry-collection.js +75 -98
  242. package/src/route-renderer/page-loading/lazy-trigger-planning.js +46 -36
  243. package/src/route-renderer/page-loading/module-declaration-aggregation.js +38 -31
  244. package/src/route-renderer/page-loading/module-declaration-scripts.js +10 -15
  245. package/src/route-renderer/page-loading/page-dependency-bundling.js +156 -113
  246. package/src/route-renderer/page-loading/page-module-loader.js +130 -124
  247. package/src/route-renderer/route-renderer.js +74 -76
  248. package/src/router/README.md +23 -0
  249. package/src/router/client/link-intent.js +55 -39
  250. package/src/router/client/link-intent.test.browser.js +49 -49
  251. package/src/router/client/link-navigation-policy.js +114 -93
  252. package/src/router/client/link-navigation-policy.test.browser.js +70 -80
  253. package/src/router/client/navigation-coordinator.js +235 -211
  254. package/src/router/client/navigation-lifecycle.d.ts +55 -0
  255. package/src/router/client/navigation-lifecycle.js +50 -0
  256. package/src/router/client/navigation-lifecycle.test.browser.d.ts +1 -0
  257. package/src/router/client/navigation-lifecycle.test.browser.js +118 -0
  258. package/src/router/server/route-registry.js +237 -242
  259. package/src/services/assets/asset-processing-service/asset-dependency-keys.js +64 -53
  260. package/src/services/assets/asset-processing-service/asset-processing.service.js +287 -303
  261. package/src/services/assets/asset-processing-service/asset.factory.js +78 -81
  262. package/src/services/assets/asset-processing-service/assets.types.js +1 -0
  263. package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.js +57 -46
  264. package/src/services/assets/asset-processing-service/browser-runtime-entry-resolution.js +106 -69
  265. package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.js +53 -53
  266. package/src/services/assets/asset-processing-service/finalize-processed-asset.js +4 -6
  267. package/src/services/assets/asset-processing-service/grouped-content-bundles.js +79 -80
  268. package/src/services/assets/asset-processing-service/index.js +8 -8
  269. package/src/services/assets/asset-processing-service/inline-content-script-body.js +22 -16
  270. package/src/services/assets/asset-processing-service/materialize-content-script-asset.js +21 -17
  271. package/src/services/assets/asset-processing-service/page-package.js +70 -72
  272. package/src/services/assets/asset-processing-service/processor.interface.js +7 -5
  273. package/src/services/assets/asset-processing-service/processor.registry.js +11 -14
  274. package/src/services/assets/asset-processing-service/processors/base/base-processor.js +59 -62
  275. package/src/services/assets/asset-processing-service/processors/base/base-script-processor.js +102 -117
  276. package/src/services/assets/asset-processing-service/processors/index.js +5 -5
  277. package/src/services/assets/asset-processing-service/processors/script/content-script.processor.js +110 -115
  278. package/src/services/assets/asset-processing-service/processors/script/file-script.processor.js +95 -97
  279. package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.js +136 -135
  280. package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +27 -29
  281. package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.js +34 -40
  282. package/src/services/assets/asset-processing-service/processors/stylesheet/stylesheet-processor-pipeline.js +36 -35
  283. package/src/services/assets/asset-processing-service/resolve-integration-plugin.js +14 -16
  284. package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.js +27 -39
  285. package/src/services/assets/browser-bundle.service.js +52 -47
  286. package/src/services/cache/cache.types.js +5 -0
  287. package/src/services/cache/index.js +6 -7
  288. package/src/services/cache/memory-cache-store.js +101 -89
  289. package/src/services/cache/page-cache-service.js +156 -145
  290. package/src/services/cache/page-request-cache-coordinator.service.js +102 -102
  291. package/src/services/html/html-rewriter-provider.service.js +61 -61
  292. package/src/services/html/html-transformer.service.js +249 -266
  293. package/src/services/invalidation/development-invalidation.service.js +252 -241
  294. package/src/services/module-loading/app-module-loader.service.js +1 -0
  295. package/src/services/module-loading/app-server-module-transpiler.service.js +107 -101
  296. package/src/services/module-loading/host-module-loader-registry.js +6 -11
  297. package/src/services/module-loading/module-loading-types.js +1 -0
  298. package/src/services/module-loading/page-module-import.service.js +235 -243
  299. package/src/services/module-loading/route-module-build-cache-registry.js +47 -33
  300. package/src/services/module-loading/route-module-build-cache.js +3 -38
  301. package/src/services/module-loading/route-module-build-cache.store.js +195 -200
  302. package/src/services/module-loading/route-module-build-manifest.js +61 -74
  303. package/src/services/module-loading/route-module-dependency-hasher.js +136 -110
  304. package/src/services/module-loading/server-module-transpiler.service.js +68 -62
  305. package/src/services/module-loading/source-module-support.js +15 -7
  306. package/src/services/runtime-state/dev-graph.service.js +165 -157
  307. package/src/services/runtime-state/entrypoint-dependency-graph.service.js +85 -76
  308. package/src/services/runtime-state/server-invalidation-state.service.js +38 -30
  309. package/src/services/validation/schema-validation-service.js +157 -95
  310. package/src/services/validation/standard-schema.types.js +1 -0
  311. package/src/services/validation/validate-standard-schema.js +13 -13
  312. package/src/static-site-generator/production-page-browser-graph-prebuild.js +35 -19
  313. package/src/static-site-generator/sitemap-routes.js +33 -28
  314. package/src/static-site-generator/sitemap.js +38 -29
  315. package/src/static-site-generator/static-build-invalidation.js +34 -56
  316. package/src/static-site-generator/static-export-context.js +1 -0
  317. package/src/static-site-generator/static-site-generator.js +517 -553
  318. package/src/types/internal-types.d.ts +19 -3
  319. package/src/types/internal-types.js +1 -0
  320. package/src/types/public-types.d.ts +16 -46
  321. package/src/types/public-types.js +1 -0
  322. package/src/utils/deep-merge.js +39 -26
  323. package/src/utils/ecopages-route-info.js +27 -23
  324. package/src/utils/hash.js +3 -6
  325. package/src/utils/html-escaping.js +21 -8
  326. package/src/utils/html.js +1 -4
  327. package/src/utils/invariant.js +11 -10
  328. package/src/utils/locals-utils.js +32 -22
  329. package/src/utils/parse-cli-args.js +73 -65
  330. package/src/utils/path-pattern.js +38 -23
  331. package/src/utils/path-utils.module.js +8 -11
  332. package/src/utils/resolve-entry-file.js +70 -38
  333. package/src/utils/resolve-work-dir.js +23 -27
  334. package/src/utils/runtime.js +24 -33
  335. package/src/utils/server-utils.module.js +60 -52
  336. package/src/utils/static-file-extensions.js +52 -46
  337. package/src/watchers/project-watcher-ignore.js +16 -15
  338. package/src/watchers/project-watcher.js +385 -366
  339. package/src/watchers/project-watcher.test-helpers.js +45 -50
  340. package/src/adapters/shared/hmr/hmr-entrypoint-registrar.d.ts +0 -56
  341. package/src/adapters/shared/hmr/hmr-entrypoint-registrar.js +0 -106
  342. package/src/build/cache/dev-browser-script-cache.d.ts +0 -34
  343. package/src/build/cache/dev-browser-script-cache.js +0 -90
@@ -1,177 +1,173 @@
1
- import { vi } from "vitest";
2
- import { resolveInnermostPageLayout } from "./document-shell/layout-shell-props.service.js";
3
- import { finalizeDocumentShellHtml } from "./document-shell/document-shell-render.service.js";
4
- import {
5
- IntegrationRenderer
6
- } from "./integration-renderer.js";
7
- import { getComponentRenderContext } from "./foreign-child/component-render-context.js";
8
- import { toForeignSubtreeRenderPayload } from "./foreign-child/foreign-subtree-execution.service.js";
9
- function createUnresolvedMarkerArtifact(nodeId, componentRef, propsRef) {
10
- return `<eco-marker data-eco-node-id="${nodeId}" data-eco-component-ref="${componentRef}" data-eco-props-ref="${propsRef}"></eco-marker>`;
1
+ import { vi } from 'vitest';
2
+ import { resolveInnermostPageLayout } from './document-shell/layout-shell-props.service.js';
3
+ import { finalizeDocumentShellHtml } from './document-shell/document-shell-render.service.js';
4
+ import { IntegrationRenderer, } from './integration-renderer.js';
5
+ import { getComponentRenderContext } from './foreign-child/component-render-context.js';
6
+ import { toForeignSubtreeRenderPayload } from './foreign-child/foreign-subtree-execution.service.js';
7
+ export function createUnresolvedMarkerArtifact(nodeId, componentRef, propsRef) {
8
+ return `<eco-marker data-eco-node-id="${nodeId}" data-eco-component-ref="${componentRef}" data-eco-props-ref="${propsRef}"></eco-marker>`;
11
9
  }
12
- function createMockIntegrationPlugin(plugin) {
13
- return {
14
- setConfig: vi.fn(),
15
- setRuntimeOrigin: vi.fn(),
16
- setup: vi.fn(async () => {
17
- }),
18
- ...plugin
19
- };
10
+ export function createMockIntegrationPlugin(plugin) {
11
+ return {
12
+ setConfig: vi.fn(),
13
+ setRuntimeOrigin: vi.fn(),
14
+ setup: vi.fn(async () => { }),
15
+ ...plugin,
16
+ };
20
17
  }
21
- const testAppConfig = {
22
- absolutePaths: {
23
- pagesDir: "/app/pages",
24
- htmlTemplatePath: "/app/index.ghtml.ts"
25
- },
26
- integrations: [],
27
- defaultMetadata: {
28
- title: "Default Title",
29
- description: "Default Description"
30
- },
31
- srcDir: "/app"
18
+ export const testAppConfig = {
19
+ absolutePaths: {
20
+ pagesDir: '/app/pages',
21
+ htmlTemplatePath: '/app/index.ghtml.ts',
22
+ },
23
+ integrations: [],
24
+ defaultMetadata: {
25
+ title: 'Default Title',
26
+ description: 'Default Description',
27
+ },
28
+ srcDir: '/app',
32
29
  };
33
- const testAssetService = {
34
- processDependencies: vi.fn(() => Promise.resolve([]))
30
+ export const testAssetService = {
31
+ processDependencies: vi.fn(() => Promise.resolve([])),
35
32
  };
36
- class TestIntegrationRenderer extends IntegrationRenderer {
37
- name = "test-renderer";
38
- ForeignChildRuntimeCreationCount = 0;
39
- ForeignChildRenderCount = 0;
40
- UseFailFastForeignChildRuntime = false;
41
- PageModule = null;
42
- HtmlTemplate = null;
43
- RenderedBody = "<html><body>Test Page</body></html>";
44
- RenderBodyFactory = null;
45
- MockComponentRenderResult = null;
46
- ImportedFiles = [];
47
- HtmlContributions = [];
48
- async render(_options) {
49
- if (this.RenderBodyFactory) {
50
- return await this.RenderBodyFactory(getComponentRenderContext());
51
- }
52
- return this.RenderedBody;
53
- }
54
- async renderComponent(_input) {
55
- if (this.MockComponentRenderResult) {
56
- return this.MockComponentRenderResult;
57
- }
58
- return super.renderComponent(_input);
59
- }
60
- async renderComponentWithForeignChildren(input) {
61
- this.ForeignChildRenderCount += 1;
62
- return await super.renderComponentWithForeignChildren(input);
63
- }
64
- async renderToResponse(view, props, ctx) {
65
- const viewFn = view;
66
- const content = viewFn(props);
67
- let body;
68
- if (ctx.partial) {
69
- body = content;
70
- } else {
71
- const Layout = resolveInnermostPageLayout(view.config?.layouts);
72
- const children = Layout ? Layout({ children: content }) : content;
73
- body = `<!DOCTYPE html><html><body>${children}</body></html>`;
74
- }
75
- const headers = new Headers({ "Content-Type": "text/html; charset=utf-8" });
76
- if (ctx.headers) {
77
- for (const [key, value] of Object.entries(ctx.headers)) {
78
- headers.set(key, value);
79
- }
80
- }
81
- return new Response(body, {
82
- status: ctx.status ?? 200,
83
- headers
84
- });
85
- }
86
- async importPageFile(_file) {
87
- this.ImportedFiles.push(_file);
88
- if (!this.PageModule) throw new Error("Mock page module not set");
89
- return this.PageModule;
90
- }
91
- async getHtmlTemplate() {
92
- if (!this.HtmlTemplate) throw new Error("Mock HTML template not set");
93
- return this.HtmlTemplate;
94
- }
95
- async resolveDependencies(_components) {
96
- return [];
97
- }
98
- async testPrepareRenderOptions(options) {
99
- return this.prepareRenderOptions(options);
100
- }
101
- testShouldDelegateForeignChild(input) {
102
- return this.foreignSubtreeExecutionService.shouldDelegateForeignChild(input);
103
- }
104
- testHasForeignChildDescendants(component) {
105
- return this.hasForeignChildDescendants(component);
106
- }
107
- async testGetHtmlTemplate() {
108
- return this.getHtmlTemplate();
109
- }
110
- async testBaseGetHtmlTemplate() {
111
- return super.getHtmlTemplate();
112
- }
113
- testGetRendererBootstrapDependencies(partial = false) {
114
- return this.getRendererBootstrapDependencies(partial);
115
- }
116
- async testFinalizeDocumentShellHtml(options) {
117
- this.appendProcessedDependencies(this.getRendererBootstrapDependencies(options.partial));
118
- return finalizeDocumentShellHtml(this.htmlTransformer, {
119
- html: options.html,
120
- partial: options.partial,
121
- htmlContributions: options.htmlContributions ?? this.getHtmlDocumentContributions({ partial: options.partial ?? false })
122
- });
123
- }
124
- async testTransformRouteResponse(response, htmlContributions, pagePackage) {
125
- const adapter = this.createRouteRenderOrchestratorAdapter();
126
- return adapter.transformRouteResponse(response, htmlContributions, pagePackage);
127
- }
128
- appendTestProcessedDependencies(assets) {
129
- return this.appendProcessedDependencies(assets);
130
- }
131
- setTestPagePackage(pagePackage) {
132
- this.htmlTransformer.setPagePackage(pagePackage);
133
- }
134
- getTestPagePackage() {
135
- return this.htmlTransformer.getPagePackage();
136
- }
137
- getTestProcessedDependencies() {
138
- return this.htmlTransformer.getProcessedDependencies();
139
- }
140
- async testRenderPartialViewResponse(input) {
141
- return this.renderPartialViewResponse({
142
- view: input.view,
143
- props: input.props,
144
- ctx: input.ctx ?? { partial: true },
145
- renderInline: input.renderInline,
146
- transformHtml: input.transformHtml
147
- });
148
- }
149
- async testRenderViewWithDocumentShell(input) {
150
- return this.renderViewWithDocumentShell({
151
- view: input.view,
152
- props: input.props,
153
- ctx: input.ctx ?? {},
154
- layout: input.layout
155
- });
156
- }
157
- async testRenderForeignSubtree(input) {
158
- return toForeignSubtreeRenderPayload(await this.renderComponentWithForeignChildren(input));
159
- }
160
- createForeignChildRuntime(options) {
161
- this.ForeignChildRuntimeCreationCount += 1;
162
- if (this.UseFailFastForeignChildRuntime) {
163
- return this.createFailFastForeignChildRuntime();
164
- }
165
- return super.createForeignChildRuntime(options);
166
- }
167
- getHtmlDocumentContributions(_options) {
168
- return this.HtmlContributions;
169
- }
33
+ /**
34
+ * Concrete implementation with ed file loading for testing purposes.
35
+ */
36
+ export class TestIntegrationRenderer extends IntegrationRenderer {
37
+ name = 'test-renderer';
38
+ ForeignChildRuntimeCreationCount = 0;
39
+ ForeignChildRenderCount = 0;
40
+ UseFailFastForeignChildRuntime = false;
41
+ PageModule = null;
42
+ HtmlTemplate = null;
43
+ RenderedBody = '<html><body>Test Page</body></html>';
44
+ RenderBodyFactory = null;
45
+ MockComponentRenderResult = null;
46
+ ImportedFiles = [];
47
+ HtmlContributions = [];
48
+ async render(_options) {
49
+ if (this.RenderBodyFactory) {
50
+ return await this.RenderBodyFactory(getComponentRenderContext());
51
+ }
52
+ return this.RenderedBody;
53
+ }
54
+ async renderComponent(_input) {
55
+ if (this.MockComponentRenderResult) {
56
+ return this.MockComponentRenderResult;
57
+ }
58
+ return super.renderComponent(_input);
59
+ }
60
+ async renderComponentWithForeignChildren(input) {
61
+ this.ForeignChildRenderCount += 1;
62
+ return await super.renderComponentWithForeignChildren(input);
63
+ }
64
+ async renderToResponse(view, props, ctx) {
65
+ const viewFn = view;
66
+ const content = viewFn(props);
67
+ let body;
68
+ if (ctx.partial) {
69
+ body = content;
70
+ }
71
+ else {
72
+ const Layout = resolveInnermostPageLayout(view.config?.layouts);
73
+ const children = Layout ? Layout({ children: content }) : content;
74
+ body = `<!DOCTYPE html><html><body>${children}</body></html>`;
75
+ }
76
+ const headers = new Headers({ 'Content-Type': 'text/html; charset=utf-8' });
77
+ if (ctx.headers) {
78
+ for (const [key, value] of Object.entries(ctx.headers)) {
79
+ headers.set(key, value);
80
+ }
81
+ }
82
+ return new Response(body, {
83
+ status: ctx.status ?? 200,
84
+ headers,
85
+ });
86
+ }
87
+ async importPageFile(_file) {
88
+ this.ImportedFiles.push(_file);
89
+ if (!this.PageModule)
90
+ throw new Error('Mock page module not set');
91
+ return this.PageModule;
92
+ }
93
+ async getHtmlTemplate() {
94
+ if (!this.HtmlTemplate)
95
+ throw new Error('Mock HTML template not set');
96
+ return this.HtmlTemplate;
97
+ }
98
+ async resolveDependencies(_components) {
99
+ return [];
100
+ }
101
+ async testPrepareRenderOptions(options) {
102
+ return this.prepareRenderOptions(options);
103
+ }
104
+ testShouldDelegateForeignChild(input) {
105
+ return this.foreignSubtreeExecutionService.shouldDelegateForeignChild(input);
106
+ }
107
+ testHasForeignChildDescendants(component) {
108
+ return this.hasForeignChildDescendants(component);
109
+ }
110
+ async testGetHtmlTemplate() {
111
+ return this.getHtmlTemplate();
112
+ }
113
+ async testBaseGetHtmlTemplate() {
114
+ return super.getHtmlTemplate();
115
+ }
116
+ testGetRendererBootstrapDependencies(partial = false) {
117
+ return this.getRendererBootstrapDependencies(partial);
118
+ }
119
+ async testFinalizeDocumentShellHtml(options) {
120
+ this.appendProcessedDependencies(this.getRendererBootstrapDependencies(options.partial));
121
+ return finalizeDocumentShellHtml(this.htmlTransformer, {
122
+ html: options.html,
123
+ partial: options.partial,
124
+ htmlContributions: options.htmlContributions ?? this.getHtmlDocumentContributions({ partial: options.partial ?? false }),
125
+ });
126
+ }
127
+ async testTransformRouteResponse(response, htmlContributions, pagePackage) {
128
+ const adapter = this.createRouteRenderOrchestratorAdapter();
129
+ return adapter.transformRouteResponse(response, htmlContributions, pagePackage);
130
+ }
131
+ appendTestProcessedDependencies(assets) {
132
+ return this.appendProcessedDependencies(assets);
133
+ }
134
+ setTestPagePackage(pagePackage) {
135
+ this.htmlTransformer.setPagePackage(pagePackage);
136
+ }
137
+ getTestPagePackage() {
138
+ return this.htmlTransformer.getPagePackage();
139
+ }
140
+ getTestProcessedDependencies() {
141
+ return this.htmlTransformer.getProcessedDependencies();
142
+ }
143
+ async testRenderPartialViewResponse(input) {
144
+ return this.renderPartialViewResponse({
145
+ view: input.view,
146
+ props: input.props,
147
+ ctx: input.ctx ?? { partial: true },
148
+ renderInline: input.renderInline,
149
+ transformHtml: input.transformHtml,
150
+ });
151
+ }
152
+ async testRenderViewWithDocumentShell(input) {
153
+ return this.renderViewWithDocumentShell({
154
+ view: input.view,
155
+ props: input.props,
156
+ ctx: input.ctx ?? {},
157
+ layout: input.layout,
158
+ });
159
+ }
160
+ async testRenderForeignSubtree(input) {
161
+ return toForeignSubtreeRenderPayload(await this.renderComponentWithForeignChildren(input));
162
+ }
163
+ createForeignChildRuntime(options) {
164
+ this.ForeignChildRuntimeCreationCount += 1;
165
+ if (this.UseFailFastForeignChildRuntime) {
166
+ return this.createFailFastForeignChildRuntime();
167
+ }
168
+ return super.createForeignChildRuntime(options);
169
+ }
170
+ getHtmlDocumentContributions(_options) {
171
+ return this.HtmlContributions;
172
+ }
170
173
  }
171
- export {
172
- TestIntegrationRenderer,
173
- createMockIntegrationPlugin,
174
- createUnresolvedMarkerArtifact,
175
- testAppConfig,
176
- testAssetService
177
- };
@@ -1,143 +1,131 @@
1
- import path from "node:path";
2
- import { AssetFactory } from "../../../services/assets/asset-processing-service/index.js";
3
- import { walkComponentGraph } from "./component-graph.js";
1
+ import path from 'node:path';
2
+ import { AssetFactory } from '../../../services/assets/asset-processing-service/index.js';
3
+ import { walkComponentGraph } from './component-graph.js';
4
4
  function toGraphRoots(components) {
5
- return components.filter(Boolean).map((component) => ({ component }));
5
+ return components.filter(Boolean).map((component) => ({ component }));
6
6
  }
7
- function collectIntegrationNamesFromGraph(components, currentIntegrationName) {
8
- const integrationNames = /* @__PURE__ */ new Set();
9
- walkComponentGraph({
10
- roots: toGraphRoots(components),
11
- currentIntegrationName,
12
- onComponent: ({ component }) => {
13
- const integrationName = component.config?.integration ?? component.config?.__eco?.integration;
14
- if (integrationName) {
15
- integrationNames.add(integrationName);
16
- }
17
- }
18
- });
19
- return integrationNames;
7
+ export function collectIntegrationNamesFromGraph(components, currentIntegrationName) {
8
+ const integrationNames = new Set();
9
+ walkComponentGraph({
10
+ roots: toGraphRoots(components),
11
+ currentIntegrationName,
12
+ onComponent: ({ component }) => {
13
+ const integrationName = component.config?.integration ?? component.config?.__eco?.integration;
14
+ if (integrationName) {
15
+ integrationNames.add(integrationName);
16
+ }
17
+ },
18
+ });
19
+ return integrationNames;
20
20
  }
21
- function collectResolvedLazyTriggersFromGraph(components, currentIntegrationName) {
22
- const triggers = [];
23
- walkComponentGraph({
24
- roots: toGraphRoots(components),
25
- currentIntegrationName,
26
- onComponent: ({ component }) => {
27
- const ownTriggers = component.config?._resolvedLazyTriggers;
28
- if (ownTriggers?.length) {
29
- triggers.push(...ownTriggers);
30
- }
31
- }
32
- });
33
- return triggers;
21
+ export function collectResolvedLazyTriggersFromGraph(components, currentIntegrationName) {
22
+ const triggers = [];
23
+ walkComponentGraph({
24
+ roots: toGraphRoots(components),
25
+ currentIntegrationName,
26
+ onComponent: ({ component }) => {
27
+ const ownTriggers = component.config?._resolvedLazyTriggers;
28
+ if (ownTriggers?.length) {
29
+ triggers.push(...ownTriggers);
30
+ }
31
+ },
32
+ });
33
+ return triggers;
34
34
  }
35
- function hasForeignChildDescendantsInGraph(component, currentIntegrationName) {
36
- let foundForeign = false;
37
- walkComponentGraph({
38
- roots: [{ component }],
39
- currentIntegrationName,
40
- onComponent: ({ component: currentComponent }) => {
41
- if (foundForeign) {
42
- return false;
43
- }
44
- const integrationName = currentComponent.config?.integration ?? currentComponent.config?.__eco?.integration;
45
- if (integrationName && integrationName !== currentIntegrationName) {
46
- foundForeign = true;
47
- return false;
48
- }
49
- }
50
- });
51
- return foundForeign;
35
+ export function hasForeignChildDescendantsInGraph(component, currentIntegrationName) {
36
+ let foundForeign = false;
37
+ walkComponentGraph({
38
+ roots: [{ component }],
39
+ currentIntegrationName,
40
+ onComponent: ({ component: currentComponent }) => {
41
+ if (foundForeign) {
42
+ return false;
43
+ }
44
+ const integrationName = currentComponent.config?.integration ?? currentComponent.config?.__eco?.integration;
45
+ if (integrationName && integrationName !== currentIntegrationName) {
46
+ foundForeign = true;
47
+ return false;
48
+ }
49
+ },
50
+ });
51
+ return foundForeign;
52
52
  }
53
- function collectEagerSsrLazyScriptDefinitions(components) {
54
- const dependencies = [];
55
- const seenKeys = /* @__PURE__ */ new Set();
56
- const normalizeAttributes = (attributes) => ({
57
- type: "module",
58
- defer: "",
59
- ...attributes ?? {}
60
- });
61
- walkComponentGraph({
62
- roots: toGraphRoots(components),
63
- currentIntegrationName: "",
64
- visitLayout: true,
65
- onConfig: (config) => {
66
- const componentFile = config?.__eco?.file;
67
- if (!componentFile) {
68
- return;
69
- }
70
- const componentDir = path.dirname(componentFile);
71
- for (const script of config.dependencies?.scripts ?? []) {
72
- if (typeof script === "string" || !script.lazy || script.ssr !== true) {
73
- continue;
74
- }
75
- const attributes = normalizeAttributes(script.attributes);
76
- if (script.content) {
77
- const key2 = `content:${script.content}:${JSON.stringify(attributes)}`;
78
- if (seenKeys.has(key2)) {
53
+ export function collectEagerSsrLazyScriptDefinitions(components) {
54
+ const dependencies = [];
55
+ const seenKeys = new Set();
56
+ const normalizeAttributes = (attributes) => ({
57
+ type: 'module',
58
+ defer: '',
59
+ ...(attributes ?? {}),
60
+ });
61
+ walkComponentGraph({
62
+ roots: toGraphRoots(components),
63
+ currentIntegrationName: '',
64
+ visitLayout: true,
65
+ onConfig: (config) => {
66
+ const componentFile = config?.__eco?.file;
67
+ if (!componentFile) {
68
+ return;
69
+ }
70
+ const componentDir = path.dirname(componentFile);
71
+ for (const script of config.dependencies?.scripts ?? []) {
72
+ if (typeof script === 'string' || !script.lazy || script.ssr !== true) {
73
+ continue;
74
+ }
75
+ const attributes = normalizeAttributes(script.attributes);
76
+ if (script.content) {
77
+ const key = `content:${script.content}:${JSON.stringify(attributes)}`;
78
+ if (seenKeys.has(key)) {
79
+ continue;
80
+ }
81
+ seenKeys.add(key);
82
+ dependencies.push(AssetFactory.createContentScript({
83
+ position: 'head',
84
+ content: script.content,
85
+ attributes,
86
+ packageRole: 'dynamic-chunk',
87
+ }));
88
+ continue;
89
+ }
90
+ if (!script.src) {
91
+ continue;
92
+ }
93
+ const resolvedPath = path.resolve(componentDir, script.src);
94
+ const key = `file:${resolvedPath}:${JSON.stringify(attributes)}`;
95
+ if (seenKeys.has(key)) {
96
+ continue;
97
+ }
98
+ seenKeys.add(key);
99
+ dependencies.push(AssetFactory.createFileScript({
100
+ filepath: resolvedPath,
101
+ position: 'head',
102
+ attributes,
103
+ packageRole: 'dynamic-chunk',
104
+ }));
105
+ }
106
+ },
107
+ });
108
+ return dependencies;
109
+ }
110
+ export function collectUsedIntegrationDependenciesFromGraph(appConfig, components, currentIntegrationName) {
111
+ const integrationNames = collectIntegrationNamesFromGraph(components, currentIntegrationName);
112
+ const dependencies = [];
113
+ for (const integrationName of integrationNames) {
114
+ if (integrationName === currentIntegrationName) {
79
115
  continue;
80
- }
81
- seenKeys.add(key2);
82
- dependencies.push(
83
- AssetFactory.createContentScript({
84
- position: "head",
85
- content: script.content,
86
- attributes,
87
- packageRole: "dynamic-chunk"
88
- })
89
- );
90
- continue;
91
116
  }
92
- if (!script.src) {
93
- continue;
94
- }
95
- const resolvedPath = path.resolve(componentDir, script.src);
96
- const key = `file:${resolvedPath}:${JSON.stringify(attributes)}`;
97
- if (seenKeys.has(key)) {
98
- continue;
117
+ const integrationPlugin = appConfig.integrations.find((integration) => integration.name === integrationName);
118
+ if (!integrationPlugin || typeof integrationPlugin.getResolvedIntegrationDependencies !== 'function') {
119
+ continue;
99
120
  }
100
- seenKeys.add(key);
101
- dependencies.push(
102
- AssetFactory.createFileScript({
103
- filepath: resolvedPath,
104
- position: "head",
105
- attributes,
106
- packageRole: "dynamic-chunk"
107
- })
108
- );
109
- }
121
+ dependencies.push(...integrationPlugin.getResolvedIntegrationDependencies());
110
122
  }
111
- });
112
- return dependencies;
123
+ return dependencies;
113
124
  }
114
- function collectUsedIntegrationDependenciesFromGraph(appConfig, components, currentIntegrationName) {
115
- const integrationNames = collectIntegrationNamesFromGraph(components, currentIntegrationName);
116
- const dependencies = [];
117
- for (const integrationName of integrationNames) {
118
- if (integrationName === currentIntegrationName) {
119
- continue;
125
+ export async function buildEagerSsrLazyAssetsFromGraph(assetProcessingService, components, currentIntegrationName) {
126
+ const dependencies = collectEagerSsrLazyScriptDefinitions(components);
127
+ if (dependencies.length === 0) {
128
+ return [];
120
129
  }
121
- const integrationPlugin = appConfig.integrations.find((integration) => integration.name === integrationName);
122
- if (!integrationPlugin || typeof integrationPlugin.getResolvedIntegrationDependencies !== "function") {
123
- continue;
124
- }
125
- dependencies.push(...integrationPlugin.getResolvedIntegrationDependencies());
126
- }
127
- return dependencies;
128
- }
129
- async function buildEagerSsrLazyAssetsFromGraph(assetProcessingService, components, currentIntegrationName) {
130
- const dependencies = collectEagerSsrLazyScriptDefinitions(components);
131
- if (dependencies.length === 0) {
132
- return [];
133
- }
134
- return assetProcessingService.processDependencies(dependencies, `${currentIntegrationName}:ssr-lazy`);
130
+ return assetProcessingService.processDependencies(dependencies, `${currentIntegrationName}:ssr-lazy`);
135
131
  }
136
- export {
137
- buildEagerSsrLazyAssetsFromGraph,
138
- collectEagerSsrLazyScriptDefinitions,
139
- collectIntegrationNamesFromGraph,
140
- collectResolvedLazyTriggersFromGraph,
141
- collectUsedIntegrationDependenciesFromGraph,
142
- hasForeignChildDescendantsInGraph
143
- };