@ecopages/core 0.2.0-alpha.9 → 0.2.1-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -28
- package/package.json +94 -116
- package/src/adapters/README.md +2 -2
- package/src/adapters/abstract/application-adapter.d.ts +28 -2
- package/src/adapters/abstract/application-adapter.js +14 -2
- package/src/adapters/abstract/router-adapter.d.ts +1 -1
- package/src/adapters/abstract/server-adapter.d.ts +2 -2
- package/src/adapters/bun/client-bridge.d.ts +1 -1
- package/src/adapters/bun/create-app.d.ts +12 -12
- package/src/adapters/bun/create-app.js +64 -41
- package/src/adapters/bun/hmr-manager.d.ts +19 -115
- package/src/adapters/bun/hmr-manager.js +25 -301
- package/src/adapters/bun/index.d.ts +1 -1
- package/src/adapters/bun/index.js +2 -2
- package/src/adapters/bun/runtime-host.d.ts +52 -0
- package/src/adapters/bun/runtime-host.js +56 -0
- package/src/adapters/bun/server-adapter.d.ts +100 -32
- package/src/adapters/bun/server-adapter.js +142 -65
- package/src/adapters/bun/static-preview-host.d.ts +28 -0
- package/src/adapters/bun/static-preview-host.js +45 -0
- package/src/{create-app.d.ts → adapters/create-app.d.ts} +9 -6
- package/src/{create-app.js → adapters/create-app.js} +4 -4
- package/src/adapters/index.d.ts +1 -5
- package/src/adapters/index.js +1 -7
- package/src/adapters/node/create-app.d.ts +15 -12
- package/src/adapters/node/create-app.js +34 -85
- package/src/adapters/node/http-request-bridge.d.ts +57 -0
- package/src/adapters/node/http-request-bridge.js +118 -0
- package/src/adapters/node/node-client-bridge.d.ts +1 -1
- package/src/adapters/node/node-hmr-manager.d.ts +22 -103
- package/src/adapters/node/node-hmr-manager.js +26 -289
- package/src/adapters/node/runtime-host.d.ts +57 -0
- package/src/adapters/node/runtime-host.js +92 -0
- package/src/adapters/node/server-adapter-dependencies.d.ts +19 -0
- package/src/adapters/node/server-adapter-dependencies.js +18 -0
- package/src/adapters/node/server-adapter.d.ts +19 -42
- package/src/adapters/node/server-adapter.js +94 -139
- package/src/adapters/node/static-content-server.d.ts +1 -1
- package/src/adapters/node/static-content-server.js +1 -1
- package/src/adapters/node/static-preview-host.d.ts +55 -0
- package/src/adapters/node/static-preview-host.js +68 -0
- package/src/adapters/shared/application-adapter.d.ts +1 -1
- package/src/adapters/shared/define-api-handler.d.ts +1 -1
- package/src/adapters/shared/explicit-static-render-preparation.d.ts +25 -0
- package/src/adapters/shared/explicit-static-render-preparation.js +26 -0
- package/src/adapters/shared/explicit-static-route-matcher.d.ts +7 -4
- package/src/adapters/shared/explicit-static-route-matcher.js +14 -16
- package/src/adapters/shared/file-route-middleware-pipeline.d.ts +7 -10
- package/src/adapters/shared/file-route-middleware-pipeline.js +2 -11
- package/src/adapters/shared/fs-server-response-factory.d.ts +14 -10
- package/src/adapters/shared/fs-server-response-factory.js +11 -27
- package/src/adapters/shared/fs-server-response-matcher.d.ts +18 -18
- package/src/adapters/shared/fs-server-response-matcher.js +72 -46
- package/src/adapters/shared/hmr-entrypoint-registrar.js +1 -1
- package/src/adapters/shared/hmr-html-response.d.ts +1 -1
- package/src/adapters/shared/hmr-html-response.js +4 -3
- package/src/adapters/shared/render-context.d.ts +5 -3
- package/src/adapters/shared/render-context.js +24 -1
- package/src/adapters/shared/runtime-app-bootstrap.d.ts +26 -0
- package/src/adapters/shared/runtime-app-bootstrap.js +46 -0
- package/src/adapters/shared/runtime-host.d.ts +12 -0
- package/src/adapters/shared/server-adapter.d.ts +22 -11
- package/src/adapters/shared/server-adapter.js +183 -133
- package/src/adapters/shared/server-route-handler.d.ts +5 -5
- package/src/adapters/shared/server-route-handler.js +4 -4
- package/src/adapters/shared/server-static-builder.d.ts +8 -7
- package/src/adapters/shared/server-static-builder.js +6 -5
- package/src/adapters/shared/shared-hmr-manager.d.ts +59 -0
- package/src/adapters/shared/shared-hmr-manager.js +241 -0
- package/src/adapters/shared/static-preview-host.d.ts +10 -0
- package/src/build/README.md +57 -67
- package/src/build/browser-runtime-manifest.d.ts +31 -0
- package/src/build/browser-runtime-manifest.js +61 -0
- package/src/build/browser-runtime-plugin-helpers.d.ts +26 -0
- package/src/build/browser-runtime-plugin-helpers.js +14 -0
- package/src/build/browser-runtime-plugin.d.ts +78 -0
- package/src/build/browser-runtime-plugin.js +173 -0
- package/src/build/build-adapter.d.ts +384 -63
- package/src/build/build-adapter.js +129 -54
- package/src/build/build-manifest.d.ts +6 -0
- package/src/build/build-manifest.js +21 -2
- package/src/build/build-types.d.ts +2 -2
- package/src/build/rolldown-adapter-helpers.d.ts +58 -0
- package/src/build/rolldown-adapter-helpers.js +265 -0
- package/src/build/rolldown-build-adapter.d.ts +28 -0
- package/src/build/rolldown-build-adapter.js +65 -0
- package/src/build/rolldown-dev-build-adapter.d.ts +82 -0
- package/src/build/rolldown-dev-build-adapter.js +166 -0
- package/src/build/rolldown-plugin-bridge.d.ts +59 -0
- package/src/build/rolldown-plugin-bridge.js +199 -0
- package/src/build/runtime-build-executor.d.ts +15 -7
- package/src/build/runtime-build-executor.js +8 -9
- package/src/build/runtime-build-output-normalizer.d.ts +3 -0
- package/src/build/runtime-build-output-normalizer.js +111 -0
- package/src/build/serialized-build-executor.d.ts +64 -0
- package/src/build/serialized-build-executor.js +63 -0
- package/src/build/server-side-css-shim-plugin.d.ts +41 -0
- package/src/build/server-side-css-shim-plugin.js +35 -0
- package/src/cache/index.d.ts +6 -0
- package/src/cache/index.js +6 -0
- package/src/cache/module-parse-cache.d.ts +65 -0
- package/src/cache/module-parse-cache.js +75 -0
- package/src/config/README.md +5 -2
- package/src/config/config-builder.d.ts +41 -13
- package/src/config/config-builder.js +62 -24
- package/src/declarations.d.ts +1 -1
- package/src/dev/host-runtime.d.ts +10 -0
- package/src/dev/host-runtime.js +24 -0
- package/src/dev/sc-server.d.ts +1 -1
- package/src/dev/sc-server.js +1 -1
- package/src/eco/eco.browser.d.ts +2 -0
- package/src/eco/eco.browser.js +88 -0
- package/src/eco/eco.js +50 -45
- package/src/eco/eco.types.d.ts +60 -8
- package/src/eco/eco.utils.d.ts +1 -40
- package/src/eco/eco.utils.js +5 -35
- package/src/eco/global-injector-map.d.ts +3 -3
- package/src/eco/global-injector-map.js +2 -2
- package/src/eco/lazy-injector-map.d.ts +2 -2
- package/src/errors/index.d.ts +1 -0
- package/src/errors/index.js +3 -1
- package/src/hmr/client/hmr-runtime.js +9 -1
- package/src/hmr/hmr-strategy.d.ts +16 -13
- package/src/hmr/hmr-strategy.js +22 -7
- package/src/hmr/strategies/default-hmr-strategy.d.ts +2 -2
- package/src/hmr/strategies/default-hmr-strategy.js +1 -1
- package/src/hmr/strategies/js-hmr-strategy.d.ts +4 -9
- package/src/hmr/strategies/js-hmr-strategy.js +5 -10
- package/src/index.browser.d.ts +2 -2
- package/src/index.browser.js +1 -1
- package/src/index.d.ts +3 -2
- package/src/index.js +15 -4
- package/src/integrations/ghtml/ghtml-renderer.d.ts +2 -1
- package/src/integrations/ghtml/ghtml-renderer.js +24 -29
- package/src/integrations/ghtml/ghtml.constants.d.ts +1 -0
- package/src/integrations/ghtml/ghtml.constants.js +4 -0
- package/src/integrations/ghtml/ghtml.plugin.d.ts +2 -6
- package/src/integrations/ghtml/ghtml.plugin.js +3 -4
- package/src/plugins/README.md +1 -0
- package/src/plugins/alias-resolver-cache.d.ts +68 -0
- package/src/plugins/alias-resolver-cache.js +106 -0
- package/src/plugins/alias-resolver-plugin.d.ts +5 -1
- package/src/plugins/alias-resolver-plugin.js +19 -7
- package/src/plugins/eco-component-meta-plugin.d.ts +12 -1
- package/src/plugins/eco-component-meta-plugin.js +43 -25
- package/src/plugins/foreign-jsx-override-plugin.d.ts +33 -0
- package/src/plugins/foreign-jsx-override-plugin.js +41 -0
- package/src/plugins/integration-plugin.d.ts +136 -42
- package/src/plugins/integration-plugin.js +99 -31
- package/src/plugins/processor.d.ts +4 -2
- package/src/plugins/processor.js +8 -3
- package/src/plugins/source-transform.d.ts +46 -0
- package/src/plugins/source-transform.js +71 -0
- package/src/route-renderer/GRAPH.md +80 -318
- package/src/route-renderer/README.md +74 -78
- package/src/route-renderer/orchestration/component-render-context.d.ts +97 -0
- package/src/route-renderer/orchestration/component-render-context.js +147 -0
- package/src/route-renderer/orchestration/declared-ownership-graph.d.ts +18 -0
- package/src/route-renderer/orchestration/declared-ownership-graph.js +34 -0
- package/src/route-renderer/orchestration/foreign-subtree-execution.service.d.ts +110 -0
- package/src/route-renderer/orchestration/foreign-subtree-execution.service.js +233 -0
- package/src/route-renderer/orchestration/integration-renderer.d.ts +290 -128
- package/src/route-renderer/orchestration/integration-renderer.js +660 -258
- package/src/route-renderer/orchestration/ownership-planning.service.d.ts +24 -0
- package/src/route-renderer/orchestration/ownership-planning.service.js +63 -0
- package/src/route-renderer/orchestration/ownership-validation.service.d.ts +29 -0
- package/src/route-renderer/orchestration/ownership-validation.service.js +53 -0
- package/src/route-renderer/orchestration/processed-asset-dedupe.d.ts +3 -0
- package/src/route-renderer/orchestration/processed-asset-dedupe.js +27 -0
- package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.d.ts +91 -0
- package/src/route-renderer/orchestration/queued-foreign-subtree-resolution.service.js +170 -0
- package/src/route-renderer/orchestration/render-output.utils.d.ts +66 -0
- package/src/route-renderer/orchestration/render-output.utils.js +171 -0
- package/src/route-renderer/orchestration/route-render-orchestrator.d.ts +156 -0
- package/src/route-renderer/orchestration/route-render-orchestrator.js +577 -0
- package/src/route-renderer/orchestration/template-serialization.d.ts +38 -0
- package/src/route-renderer/orchestration/template-serialization.js +45 -0
- package/src/route-renderer/page-loading/component-dependency-collection.d.ts +37 -0
- package/src/route-renderer/page-loading/component-dependency-collection.js +132 -0
- package/src/route-renderer/page-loading/declared-asset-collection.d.ts +24 -0
- package/src/route-renderer/page-loading/declared-asset-collection.js +106 -0
- package/src/route-renderer/page-loading/dependency-resolver.d.ts +2 -2
- package/src/route-renderer/page-loading/dependency-resolver.js +27 -354
- package/src/route-renderer/page-loading/ecopages-virtual-imports.d.ts +11 -0
- package/src/route-renderer/page-loading/ecopages-virtual-imports.js +57 -0
- package/src/route-renderer/page-loading/lazy-entry-collection.d.ts +45 -0
- package/src/route-renderer/page-loading/lazy-entry-collection.js +105 -0
- package/src/route-renderer/page-loading/lazy-trigger-planning.d.ts +19 -0
- package/src/route-renderer/page-loading/lazy-trigger-planning.js +40 -0
- package/src/route-renderer/page-loading/module-declaration-aggregation.d.ts +5 -0
- package/src/route-renderer/page-loading/module-declaration-aggregation.js +33 -0
- package/src/route-renderer/page-loading/module-declaration-scripts.d.ts +3 -0
- package/src/route-renderer/page-loading/module-declaration-scripts.js +18 -0
- package/src/route-renderer/page-loading/page-dependency-bundling.d.ts +13 -0
- package/src/route-renderer/page-loading/page-dependency-bundling.js +137 -0
- package/src/route-renderer/page-loading/page-module-loader.d.ts +7 -4
- package/src/route-renderer/page-loading/page-module-loader.js +8 -5
- package/src/route-renderer/route-renderer.d.ts +31 -23
- package/src/route-renderer/route-renderer.js +17 -24
- package/src/router/README.md +76 -8
- package/src/router/client/navigation-coordinator.d.ts +20 -0
- package/src/router/client/navigation-coordinator.js +2 -2
- package/src/router/server/route-registry.d.ts +78 -0
- package/src/router/server/route-registry.js +262 -0
- package/src/services/README.md +1 -2
- package/src/services/assets/asset-processing-service/asset-dependency-keys.d.ts +3 -0
- package/src/services/assets/asset-processing-service/asset-dependency-keys.js +56 -0
- package/src/services/assets/asset-processing-service/asset-processing.service.d.ts +3 -20
- package/src/services/assets/asset-processing-service/asset-processing.service.js +52 -98
- package/src/services/assets/asset-processing-service/asset.factory.d.ts +1 -1
- package/src/services/assets/asset-processing-service/asset.factory.js +2 -2
- package/src/services/assets/asset-processing-service/assets.types.d.ts +14 -0
- package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.d.ts +2 -0
- package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.js +1 -0
- package/src/services/assets/asset-processing-service/grouped-content-bundles.d.ts +30 -0
- package/src/services/assets/asset-processing-service/grouped-content-bundles.js +65 -0
- package/src/services/assets/asset-processing-service/index.d.ts +6 -5
- package/src/services/assets/asset-processing-service/index.js +6 -5
- package/src/services/assets/asset-processing-service/page-package.d.ts +6 -0
- package/src/services/assets/asset-processing-service/page-package.js +80 -0
- package/src/services/assets/asset-processing-service/processor.interface.d.ts +2 -2
- package/src/services/assets/asset-processing-service/processor.registry.d.ts +2 -2
- package/src/services/assets/asset-processing-service/processors/base/base-processor.d.ts +1 -1
- package/src/services/assets/asset-processing-service/processors/base/base-processor.js +3 -2
- package/src/services/assets/asset-processing-service/processors/base/base-script-processor.d.ts +10 -5
- package/src/services/assets/asset-processing-service/processors/base/base-script-processor.js +69 -5
- package/src/services/assets/asset-processing-service/processors/index.d.ts +5 -5
- package/src/services/assets/asset-processing-service/processors/index.js +5 -5
- package/src/services/assets/asset-processing-service/processors/script/content-script.processor.d.ts +3 -2
- package/src/services/assets/asset-processing-service/processors/script/content-script.processor.js +66 -3
- package/src/services/assets/asset-processing-service/processors/script/file-script.processor.d.ts +4 -3
- package/src/services/assets/asset-processing-service/processors/script/file-script.processor.js +27 -6
- package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.d.ts +38 -3
- package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.js +57 -6
- package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.d.ts +5 -2
- package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +39 -5
- package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.d.ts +2 -2
- package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.js +5 -2
- package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.d.ts +18 -0
- package/src/services/assets/asset-processing-service/ungrouped-dependency-processing.js +45 -0
- package/src/services/assets/browser-bundle.service.d.ts +44 -3
- package/src/services/assets/browser-bundle.service.js +15 -7
- package/src/services/html/html-rewriter-provider.service.d.ts +3 -0
- package/src/services/html/html-rewriter-provider.service.js +4 -1
- package/src/services/html/html-transformer.service.d.ts +22 -3
- package/src/services/html/html-transformer.service.js +101 -35
- package/src/services/invalidation/development-invalidation.service.d.ts +1 -1
- package/src/services/invalidation/development-invalidation.service.js +1 -0
- package/src/services/module-loading/app-module-loader.service.d.ts +7 -0
- package/src/services/module-loading/app-module-loader.service.js +0 -0
- package/src/services/module-loading/app-server-module-transpiler.service.d.ts +9 -1
- package/src/services/module-loading/app-server-module-transpiler.service.js +102 -6
- package/src/services/module-loading/host-module-loader-registry.d.ts +4 -0
- package/src/services/module-loading/host-module-loader-registry.js +15 -0
- package/src/services/module-loading/module-loading-types.d.ts +2 -0
- package/src/services/module-loading/module-loading-types.js +0 -0
- package/src/services/module-loading/page-module-import.service.d.ts +32 -8
- package/src/services/module-loading/page-module-import.service.js +83 -22
- package/src/services/module-loading/server-module-transpiler.service.d.ts +8 -14
- package/src/services/module-loading/server-module-transpiler.service.js +5 -2
- package/src/services/module-loading/source-module-support.d.ts +5 -0
- package/src/services/module-loading/source-module-support.js +8 -0
- package/src/services/runtime-state/dev-graph.service.d.ts +6 -6
- package/src/services/runtime-state/dev-graph.service.js +10 -10
- package/src/services/runtime-state/entrypoint-dependency-graph.service.d.ts +1 -1
- package/src/services/runtime-state/server-invalidation-state.service.d.ts +1 -1
- package/src/static-site-generator/static-site-generator.d.ts +23 -28
- package/src/static-site-generator/static-site-generator.js +119 -156
- package/src/{internal-types.d.ts → types/internal-types.d.ts} +34 -23
- package/src/types/internal-types.js +0 -0
- package/src/{public-types.d.ts → types/public-types.d.ts} +195 -37
- package/src/types/public-types.js +0 -0
- package/src/utils/html-escaping.d.ts +7 -0
- package/src/utils/html-escaping.js +6 -0
- package/src/utils/locals-utils.d.ts +1 -1
- package/src/utils/parse-cli-args.d.ts +4 -1
- package/src/utils/parse-cli-args.js +16 -1
- package/src/utils/resolve-work-dir.js +1 -1
- package/src/watchers/project-watcher.d.ts +4 -4
- package/src/watchers/project-watcher.js +35 -41
- package/src/watchers/project-watcher.test-helpers.d.ts +2 -2
- package/src/watchers/project-watcher.test-helpers.js +5 -5
- package/CHANGELOG.md +0 -31
- package/src/adapters/abstract/application-adapter.ts +0 -337
- package/src/adapters/abstract/router-adapter.ts +0 -30
- package/src/adapters/abstract/server-adapter.ts +0 -79
- package/src/adapters/bun/client-bridge.ts +0 -62
- package/src/adapters/bun/create-app.ts +0 -189
- package/src/adapters/bun/hmr-manager.ts +0 -409
- package/src/adapters/bun/index.ts +0 -2
- package/src/adapters/bun/server-adapter.ts +0 -499
- package/src/adapters/bun/server-lifecycle.d.ts +0 -63
- package/src/adapters/bun/server-lifecycle.js +0 -92
- package/src/adapters/bun/server-lifecycle.ts +0 -124
- package/src/adapters/index.ts +0 -6
- package/src/adapters/node/bootstrap-dependency-resolver.d.ts +0 -44
- package/src/adapters/node/bootstrap-dependency-resolver.js +0 -172
- package/src/adapters/node/bootstrap-dependency-resolver.ts +0 -301
- package/src/adapters/node/create-app.ts +0 -179
- package/src/adapters/node/index.d.ts +0 -6
- package/src/adapters/node/index.js +0 -11
- package/src/adapters/node/index.ts +0 -16
- package/src/adapters/node/node-client-bridge.ts +0 -79
- package/src/adapters/node/node-hmr-manager.ts +0 -381
- package/src/adapters/node/runtime-adapter.d.ts +0 -46
- package/src/adapters/node/runtime-adapter.js +0 -306
- package/src/adapters/node/runtime-adapter.ts +0 -439
- package/src/adapters/node/server-adapter.ts +0 -488
- package/src/adapters/node/static-content-server.ts +0 -239
- package/src/adapters/node/write-runtime-manifest.d.ts +0 -26
- package/src/adapters/node/write-runtime-manifest.js +0 -12
- package/src/adapters/node/write-runtime-manifest.ts +0 -38
- package/src/adapters/shared/api-response.ts +0 -104
- package/src/adapters/shared/application-adapter.ts +0 -199
- package/src/adapters/shared/define-api-handler.ts +0 -66
- package/src/adapters/shared/explicit-static-route-matcher.ts +0 -140
- package/src/adapters/shared/file-route-middleware-pipeline.ts +0 -127
- package/src/adapters/shared/fs-server-response-factory.ts +0 -118
- package/src/adapters/shared/fs-server-response-matcher.ts +0 -205
- package/src/adapters/shared/hmr-entrypoint-registrar.ts +0 -149
- package/src/adapters/shared/hmr-html-response.ts +0 -52
- package/src/adapters/shared/render-context.ts +0 -120
- package/src/adapters/shared/runtime-bootstrap.d.ts +0 -38
- package/src/adapters/shared/runtime-bootstrap.js +0 -43
- package/src/adapters/shared/runtime-bootstrap.ts +0 -79
- package/src/adapters/shared/server-adapter.ts +0 -489
- package/src/adapters/shared/server-route-handler.ts +0 -153
- package/src/adapters/shared/server-static-builder.ts +0 -166
- package/src/build/build-adapter.ts +0 -361
- package/src/build/build-manifest.ts +0 -54
- package/src/build/build-types.ts +0 -83
- package/src/build/dev-build-coordinator.d.ts +0 -74
- package/src/build/dev-build-coordinator.js +0 -161
- package/src/build/dev-build-coordinator.ts +0 -221
- package/src/build/esbuild-build-adapter.d.ts +0 -72
- package/src/build/esbuild-build-adapter.js +0 -422
- package/src/build/esbuild-build-adapter.ts +0 -559
- package/src/build/runtime-build-executor.ts +0 -34
- package/src/build/runtime-specifier-alias-plugin.d.ts +0 -15
- package/src/build/runtime-specifier-alias-plugin.js +0 -31
- package/src/build/runtime-specifier-alias-plugin.ts +0 -58
- package/src/config/config-builder.ts +0 -706
- package/src/constants.ts +0 -54
- package/src/create-app.ts +0 -87
- package/src/dev/sc-server.ts +0 -143
- package/src/eco/component-render-context.d.ts +0 -105
- package/src/eco/component-render-context.js +0 -87
- package/src/eco/component-render-context.ts +0 -224
- package/src/eco/eco.ts +0 -242
- package/src/eco/eco.types.ts +0 -221
- package/src/eco/eco.utils.ts +0 -89
- package/src/eco/global-injector-map.ts +0 -112
- package/src/eco/lazy-injector-map.ts +0 -120
- package/src/eco/module-dependencies.ts +0 -75
- package/src/errors/http-error.ts +0 -72
- package/src/errors/index.ts +0 -2
- package/src/errors/locals-access-error.ts +0 -7
- package/src/global/app-logger.ts +0 -4
- package/src/hmr/client/hmr-runtime.ts +0 -152
- package/src/hmr/hmr-strategy.ts +0 -172
- package/src/hmr/hmr.postcss.test.e2e.ts +0 -41
- package/src/hmr/hmr.test.e2e.ts +0 -66
- package/src/hmr/strategies/default-hmr-strategy.ts +0 -60
- package/src/hmr/strategies/js-hmr-strategy.ts +0 -320
- package/src/index.browser.ts +0 -3
- package/src/index.ts +0 -5
- package/src/integrations/ghtml/ghtml-renderer.ts +0 -96
- package/src/integrations/ghtml/ghtml.plugin.ts +0 -32
- package/src/internal-types.ts +0 -232
- package/src/plugins/alias-resolver-plugin.ts +0 -63
- package/src/plugins/eco-component-meta-plugin.ts +0 -481
- package/src/plugins/integration-plugin.ts +0 -226
- package/src/plugins/processor.ts +0 -240
- package/src/plugins/runtime-capability.ts +0 -14
- package/src/public-types.ts +0 -1317
- package/src/route-renderer/component-graph/component-graph-executor.d.ts +0 -32
- package/src/route-renderer/component-graph/component-graph-executor.js +0 -31
- package/src/route-renderer/component-graph/component-graph-executor.ts +0 -84
- package/src/route-renderer/component-graph/component-graph.d.ts +0 -42
- package/src/route-renderer/component-graph/component-graph.js +0 -72
- package/src/route-renderer/component-graph/component-graph.ts +0 -159
- package/src/route-renderer/component-graph/component-marker.d.ts +0 -52
- package/src/route-renderer/component-graph/component-marker.js +0 -46
- package/src/route-renderer/component-graph/component-marker.ts +0 -117
- package/src/route-renderer/component-graph/component-reference.d.ts +0 -10
- package/src/route-renderer/component-graph/component-reference.js +0 -19
- package/src/route-renderer/component-graph/component-reference.ts +0 -29
- package/src/route-renderer/component-graph/marker-graph-resolver.d.ts +0 -77
- package/src/route-renderer/component-graph/marker-graph-resolver.js +0 -95
- package/src/route-renderer/component-graph/marker-graph-resolver.ts +0 -155
- package/src/route-renderer/orchestration/integration-renderer.ts +0 -790
- package/src/route-renderer/orchestration/render-execution.service.d.ts +0 -103
- package/src/route-renderer/orchestration/render-execution.service.js +0 -121
- package/src/route-renderer/orchestration/render-execution.service.ts +0 -230
- package/src/route-renderer/orchestration/render-preparation.service.d.ts +0 -121
- package/src/route-renderer/orchestration/render-preparation.service.js +0 -332
- package/src/route-renderer/orchestration/render-preparation.service.ts +0 -476
- package/src/route-renderer/page-loading/dependency-resolver.ts +0 -612
- package/src/route-renderer/page-loading/page-module-loader.ts +0 -181
- package/src/route-renderer/route-renderer.ts +0 -115
- package/src/router/client/link-intent.test.browser.ts +0 -51
- package/src/router/client/link-intent.ts +0 -92
- package/src/router/client/navigation-coordinator.ts +0 -433
- package/src/router/server/fs-router-scanner.d.ts +0 -41
- package/src/router/server/fs-router-scanner.js +0 -156
- package/src/router/server/fs-router-scanner.ts +0 -219
- package/src/router/server/fs-router.d.ts +0 -26
- package/src/router/server/fs-router.js +0 -100
- package/src/router/server/fs-router.ts +0 -122
- package/src/services/assets/asset-processing-service/asset-processing.service.ts +0 -401
- package/src/services/assets/asset-processing-service/asset.factory.ts +0 -105
- package/src/services/assets/asset-processing-service/assets.types.ts +0 -113
- package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.ts +0 -95
- package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.ts +0 -78
- package/src/services/assets/asset-processing-service/index.ts +0 -5
- package/src/services/assets/asset-processing-service/processor.interface.ts +0 -27
- package/src/services/assets/asset-processing-service/processor.registry.ts +0 -18
- package/src/services/assets/asset-processing-service/processors/base/base-processor.ts +0 -82
- package/src/services/assets/asset-processing-service/processors/base/base-script-processor.ts +0 -95
- package/src/services/assets/asset-processing-service/processors/index.ts +0 -5
- package/src/services/assets/asset-processing-service/processors/script/content-script.processor.ts +0 -66
- package/src/services/assets/asset-processing-service/processors/script/file-script.processor.ts +0 -88
- package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.ts +0 -85
- package/src/services/assets/asset-processing-service/processors/stylesheet/content-stylesheet.processor.ts +0 -27
- package/src/services/assets/asset-processing-service/processors/stylesheet/file-stylesheet.processor.ts +0 -80
- package/src/services/assets/browser-bundle.service.ts +0 -53
- package/src/services/cache/cache.types.ts +0 -126
- package/src/services/cache/index.ts +0 -18
- package/src/services/cache/memory-cache-store.ts +0 -130
- package/src/services/cache/page-cache-service.ts +0 -202
- package/src/services/cache/page-request-cache-coordinator.service.ts +0 -131
- package/src/services/html/html-rewriter-provider.service.ts +0 -103
- package/src/services/html/html-transformer.service.ts +0 -279
- package/src/services/invalidation/development-invalidation.service.ts +0 -261
- package/src/services/module-loading/app-server-module-transpiler.service.ts +0 -52
- package/src/services/module-loading/page-module-import.service.ts +0 -200
- package/src/services/module-loading/server-loader.service.d.ts +0 -96
- package/src/services/module-loading/server-loader.service.js +0 -32
- package/src/services/module-loading/server-loader.service.ts +0 -130
- package/src/services/module-loading/server-module-transpiler.service.ts +0 -105
- package/src/services/runtime-manifest/node-runtime-manifest.service.d.ts +0 -35
- package/src/services/runtime-manifest/node-runtime-manifest.service.js +0 -60
- package/src/services/runtime-manifest/node-runtime-manifest.service.ts +0 -101
- package/src/services/runtime-state/dev-graph.service.ts +0 -217
- package/src/services/runtime-state/entrypoint-dependency-graph.service.ts +0 -136
- package/src/services/runtime-state/runtime-specifier-registry.service.d.ts +0 -69
- package/src/services/runtime-state/runtime-specifier-registry.service.js +0 -37
- package/src/services/runtime-state/runtime-specifier-registry.service.ts +0 -96
- package/src/services/runtime-state/server-invalidation-state.service.ts +0 -68
- package/src/services/validation/schema-validation-service.ts +0 -204
- package/src/services/validation/standard-schema.types.ts +0 -68
- package/src/static-site-generator/static-site-generator.ts +0 -462
- package/src/utils/css.d.ts +0 -1
- package/src/utils/css.js +0 -7
- package/src/utils/css.ts +0 -5
- package/src/utils/deep-merge.ts +0 -47
- package/src/utils/hash.ts +0 -5
- package/src/utils/html.ts +0 -1
- package/src/utils/invariant.ts +0 -15
- package/src/utils/locals-utils.ts +0 -37
- package/src/utils/parse-cli-args.ts +0 -83
- package/src/utils/path-utils.module.ts +0 -14
- package/src/utils/resolve-work-dir.ts +0 -45
- package/src/utils/runtime.ts +0 -44
- package/src/utils/server-utils.module.ts +0 -67
- package/src/watchers/project-watcher.test-helpers.ts +0 -41
- package/src/watchers/project-watcher.ts +0 -363
- /package/src/{internal-types.js → adapters/shared/runtime-host.js} +0 -0
- /package/src/{public-types.js → adapters/shared/static-preview-host.js} +0 -0
- /package/src/{constants.d.ts → config/constants.d.ts} +0 -0
- /package/src/{constants.js → config/constants.js} +0 -0
|
@@ -2,6 +2,8 @@ import path from "node:path";
|
|
|
2
2
|
import { pathToFileURL } from "node:url";
|
|
3
3
|
import { fileSystem } from "@ecopages/file-system";
|
|
4
4
|
import { build } from "../../build/build-adapter.js";
|
|
5
|
+
import { normalizeNodeRuntimeBuildOutputFile } from "../../build/runtime-build-output-normalizer.js";
|
|
6
|
+
import { supportsSourceModuleLoading } from "./source-module-support.js";
|
|
5
7
|
class PageModuleImportService {
|
|
6
8
|
dependencies;
|
|
7
9
|
importCache = /* @__PURE__ */ new Map();
|
|
@@ -9,7 +11,9 @@ class PageModuleImportService {
|
|
|
9
11
|
constructor(dependencies) {
|
|
10
12
|
this.dependencies = {
|
|
11
13
|
hashFile: dependencies?.hashFile ?? ((filePath) => fileSystem.hash(filePath)),
|
|
12
|
-
buildModule: dependencies?.buildModule ?? ((options, buildExecutor) => build(options, buildExecutor))
|
|
14
|
+
buildModule: dependencies?.buildModule ?? ((options, buildExecutor) => build(options, buildExecutor)),
|
|
15
|
+
canLoadSourceModuleFromHost: dependencies?.canLoadSourceModuleFromHost ?? supportsSourceModuleLoading,
|
|
16
|
+
getHostModuleLoader: dependencies?.getHostModuleLoader ?? (() => void 0)
|
|
13
17
|
};
|
|
14
18
|
}
|
|
15
19
|
/**
|
|
@@ -44,16 +48,33 @@ class PageModuleImportService {
|
|
|
44
48
|
* @returns The loaded module.
|
|
45
49
|
*/
|
|
46
50
|
async importModule(options) {
|
|
47
|
-
const { filePath
|
|
51
|
+
const { filePath } = options;
|
|
48
52
|
const invalidationVersion = options.invalidationVersion ?? this.developmentInvalidationVersion;
|
|
53
|
+
const { externalPackages, splitting } = options;
|
|
49
54
|
const fileHash = this.dependencies.hashFile(filePath);
|
|
50
|
-
const
|
|
55
|
+
const hostModuleLoader = typeof Bun === "undefined" && process.env.NODE_ENV === "development" && this.dependencies.canLoadSourceModuleFromHost(filePath) ? this.dependencies.getHostModuleLoader() : void 0;
|
|
56
|
+
if (hostModuleLoader) {
|
|
57
|
+
const sourceModuleUrl = createRuntimeModuleUrl(filePath, fileHash, invalidationVersion, options.cacheScope);
|
|
58
|
+
return await hostModuleLoader(sourceModuleUrl.href);
|
|
59
|
+
}
|
|
60
|
+
if (options.bypassCache) {
|
|
61
|
+
this.developmentInvalidationVersion += 1;
|
|
62
|
+
return await this.loadModule({
|
|
63
|
+
...options,
|
|
64
|
+
invalidationVersion: this.developmentInvalidationVersion,
|
|
65
|
+
fileHash
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
const runtime = typeof Bun !== "undefined" ? "bun" : "node-build";
|
|
51
69
|
const cacheKey = [
|
|
52
70
|
runtime,
|
|
53
71
|
filePath,
|
|
54
|
-
rootDir,
|
|
72
|
+
options.rootDir,
|
|
55
73
|
splitting ?? "default",
|
|
56
74
|
externalPackages ?? "default",
|
|
75
|
+
options.cacheScope ?? "default",
|
|
76
|
+
createJsxCacheKey(options.jsx),
|
|
77
|
+
createPluginCacheKey(options.plugins),
|
|
57
78
|
fileHash,
|
|
58
79
|
invalidationVersion
|
|
59
80
|
].join("::");
|
|
@@ -74,38 +95,33 @@ class PageModuleImportService {
|
|
|
74
95
|
}
|
|
75
96
|
}
|
|
76
97
|
async loadModule(options) {
|
|
98
|
+
const { filePath, invalidationVersion = this.developmentInvalidationVersion, cacheScope, fileHash } = options;
|
|
77
99
|
const {
|
|
78
|
-
filePath,
|
|
79
100
|
rootDir,
|
|
80
101
|
outdir,
|
|
81
|
-
invalidationVersion = this.developmentInvalidationVersion,
|
|
82
102
|
splitting,
|
|
83
103
|
externalPackages,
|
|
84
104
|
transpileErrorMessage = (details) => `Error transpiling page module: ${details}`,
|
|
85
|
-
noOutputMessage = (targetFilePath) => `No transpiled output generated for page module: ${targetFilePath}
|
|
86
|
-
fileHash
|
|
105
|
+
noOutputMessage = (targetFilePath) => `No transpiled output generated for page module: ${targetFilePath}`
|
|
87
106
|
} = options;
|
|
88
|
-
if (typeof Bun !== "undefined") {
|
|
89
|
-
const moduleUrl = pathToFileURL(filePath);
|
|
90
|
-
if (process.env.NODE_ENV === "development") {
|
|
91
|
-
moduleUrl.searchParams.set("update", `${fileHash}-${invalidationVersion}`);
|
|
92
|
-
}
|
|
93
|
-
return await import(moduleUrl.href);
|
|
94
|
-
}
|
|
95
107
|
const fileBaseName = path.basename(filePath, path.extname(filePath));
|
|
96
|
-
const
|
|
108
|
+
const cacheScopeSuffix = cacheScope ? `-${sanitizeCacheScope(cacheScope)}` : "";
|
|
109
|
+
const invalidationSuffix = shouldVersionBuildOutputPath(invalidationVersion) ? `-v${invalidationVersion}` : "";
|
|
110
|
+
const outputFileName = `${fileBaseName}-${fileHash}${cacheScopeSuffix}${invalidationSuffix}.mjs`;
|
|
111
|
+
const outputNamingTemplate = `${fileBaseName}-${fileHash}${cacheScopeSuffix}${invalidationSuffix}.[ext]`;
|
|
97
112
|
const buildResult = await this.dependencies.buildModule(
|
|
98
113
|
{
|
|
99
114
|
entrypoints: [filePath],
|
|
100
115
|
root: rootDir,
|
|
101
116
|
outdir,
|
|
102
|
-
target: "
|
|
117
|
+
target: "es2022",
|
|
103
118
|
format: "esm",
|
|
104
119
|
sourcemap: "none",
|
|
105
120
|
splitting: splitting ?? true,
|
|
106
121
|
minify: false,
|
|
107
|
-
naming:
|
|
122
|
+
naming: outputNamingTemplate,
|
|
108
123
|
externalPackages: true,
|
|
124
|
+
jsx: options.jsx,
|
|
109
125
|
plugins: options.plugins,
|
|
110
126
|
...externalPackages !== void 0 ? { externalPackages } : {}
|
|
111
127
|
},
|
|
@@ -116,16 +132,61 @@ class PageModuleImportService {
|
|
|
116
132
|
throw new Error(transpileErrorMessage(details));
|
|
117
133
|
}
|
|
118
134
|
const preferredOutputPath = path.join(outdir, outputFileName);
|
|
119
|
-
const compiledOutput = buildResult.outputs.find((output) => output.path === preferredOutputPath)?.path ?? buildResult.outputs.find((output) => output.path
|
|
135
|
+
const compiledOutput = buildResult.outputs.find((output) => output.path === preferredOutputPath)?.path ?? buildResult.outputs.find((output) => /\.(?:[cm]?js)$/u.test(output.path))?.path;
|
|
120
136
|
if (!compiledOutput) {
|
|
121
137
|
throw new Error(noOutputMessage(filePath));
|
|
122
138
|
}
|
|
139
|
+
normalizeNodeRuntimeBuildOutputFile(compiledOutput, rootDir);
|
|
123
140
|
const compiledOutputUrl = pathToFileURL(compiledOutput);
|
|
124
|
-
if (
|
|
125
|
-
compiledOutputUrl.searchParams.set(
|
|
141
|
+
if (shouldAddRuntimeUpdateQuery(invalidationVersion, cacheScope)) {
|
|
142
|
+
compiledOutputUrl.searchParams.set(
|
|
143
|
+
"update",
|
|
144
|
+
[fileHash, invalidationVersion, cacheScope ? sanitizeCacheScope(cacheScope) : void 0].filter((value) => value !== void 0).join("-")
|
|
145
|
+
);
|
|
126
146
|
}
|
|
127
|
-
return await import(
|
|
147
|
+
return await import(
|
|
148
|
+
/* @vite-ignore */
|
|
149
|
+
compiledOutputUrl.href
|
|
150
|
+
);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
function createRuntimeModuleUrl(filePath, fileHash, invalidationVersion, cacheScope) {
|
|
154
|
+
const moduleUrl = pathToFileURL(filePath);
|
|
155
|
+
if (shouldAddRuntimeUpdateQuery(invalidationVersion, cacheScope)) {
|
|
156
|
+
moduleUrl.searchParams.set(
|
|
157
|
+
"update",
|
|
158
|
+
[fileHash, invalidationVersion, cacheScope ? sanitizeCacheScope(cacheScope) : void 0].filter((value) => value !== void 0).join("-")
|
|
159
|
+
);
|
|
160
|
+
}
|
|
161
|
+
return moduleUrl;
|
|
162
|
+
}
|
|
163
|
+
function shouldAddRuntimeUpdateQuery(invalidationVersion, cacheScope) {
|
|
164
|
+
return process.env.NODE_ENV === "development" || invalidationVersion > 0 || !!cacheScope;
|
|
165
|
+
}
|
|
166
|
+
function shouldVersionBuildOutputPath(invalidationVersion) {
|
|
167
|
+
return typeof Bun !== "undefined" && invalidationVersion > 0;
|
|
168
|
+
}
|
|
169
|
+
function sanitizeCacheScope(cacheScope) {
|
|
170
|
+
return cacheScope.replace(/[^a-zA-Z0-9_-]+/g, "-");
|
|
171
|
+
}
|
|
172
|
+
function createJsxCacheKey(jsx) {
|
|
173
|
+
if (!jsx) {
|
|
174
|
+
return "jsx:default";
|
|
175
|
+
}
|
|
176
|
+
return JSON.stringify({
|
|
177
|
+
development: jsx.development ?? false,
|
|
178
|
+
factory: jsx.factory ?? null,
|
|
179
|
+
fragment: jsx.fragment ?? null,
|
|
180
|
+
importSource: jsx.importSource ?? null,
|
|
181
|
+
runtime: jsx.runtime ?? null,
|
|
182
|
+
sideEffects: jsx.sideEffects ?? null
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
function createPluginCacheKey(plugins) {
|
|
186
|
+
if (!plugins || plugins.length === 0) {
|
|
187
|
+
return "plugins:default";
|
|
128
188
|
}
|
|
189
|
+
return `plugins:${plugins.map((plugin) => plugin.name).join(",")}`;
|
|
129
190
|
}
|
|
130
191
|
export {
|
|
131
192
|
PageModuleImportService
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
import type { BuildExecutor } from '../../build/build-adapter.js';
|
|
2
2
|
import type { EcoBuildPlugin } from '../../build/build-types.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* @remarks
|
|
9
|
-
* This keeps the transpiler boundary testable without module-level mocking and
|
|
10
|
-
* lets callers provide an app-owned import implementation when needed.
|
|
11
|
-
*/
|
|
12
|
-
export interface ServerModuleImportDependency {
|
|
13
|
-
importModule<T = unknown>(options: PageModuleImportOptions): Promise<T>;
|
|
14
|
-
invalidateDevelopmentGraph(): void;
|
|
15
|
-
}
|
|
3
|
+
import type { AppModuleLoader } from './app-module-loader.service.js';
|
|
4
|
+
import { type PageModuleBuildImportOptions } from './page-module-import.service.js';
|
|
5
|
+
import type { SourceModuleLoaderFactory } from './module-loading-types.js';
|
|
6
|
+
export type ServerModuleTranspilerOptions = Omit<PageModuleBuildImportOptions, 'rootDir' | 'buildExecutor'>;
|
|
7
|
+
export type ServerModuleImportDependency = Pick<AppModuleLoader, 'importModule' | 'invalidateDevelopmentGraph'>;
|
|
16
8
|
/**
|
|
17
9
|
* Immutable execution context for one server-transpiler instance.
|
|
18
10
|
*
|
|
@@ -23,7 +15,9 @@ export interface ServerModuleImportDependency {
|
|
|
23
15
|
*/
|
|
24
16
|
export type ServerModuleTranspilerBootstrapArgs = {
|
|
25
17
|
rootDir: string;
|
|
26
|
-
getBuildExecutor
|
|
18
|
+
getBuildExecutor?: () => BuildExecutor | undefined;
|
|
19
|
+
canLoadSourceModuleFromHost?: (filePath: string) => boolean;
|
|
20
|
+
getHostModuleLoader?: SourceModuleLoaderFactory;
|
|
27
21
|
getInvalidationVersion?: () => number;
|
|
28
22
|
invalidateModules?: (changedFiles?: string[]) => void;
|
|
29
23
|
pageModuleImportService?: ServerModuleImportDependency;
|
|
@@ -11,9 +11,12 @@ class ServerModuleTranspiler {
|
|
|
11
11
|
* context.
|
|
12
12
|
*/
|
|
13
13
|
constructor(args) {
|
|
14
|
-
this.pageModuleImportService = args.pageModuleImportService ?? new PageModuleImportService(
|
|
14
|
+
this.pageModuleImportService = args.pageModuleImportService ?? new PageModuleImportService({
|
|
15
|
+
canLoadSourceModuleFromHost: args.canLoadSourceModuleFromHost,
|
|
16
|
+
getHostModuleLoader: args.getHostModuleLoader
|
|
17
|
+
});
|
|
15
18
|
this.getRootDir = () => args.rootDir;
|
|
16
|
-
this.getBuildExecutor = args.getBuildExecutor;
|
|
19
|
+
this.getBuildExecutor = args.getBuildExecutor ?? (() => void 0);
|
|
17
20
|
this.getInvalidationVersion = () => args.getInvalidationVersion?.();
|
|
18
21
|
this.getDefaultPlugins = args.getDefaultPlugins ?? (() => []);
|
|
19
22
|
this.invalidateModules = (changedFiles) => {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
function supportsSourceModuleLoading(filePath) {
|
|
3
|
+
const extension = path.extname(filePath);
|
|
4
|
+
return extension === ".js" || extension === ".jsx" || extension === ".ts" || extension === ".tsx" || extension === ".mjs" || extension === ".mts" || extension === ".cjs" || extension === ".cts";
|
|
5
|
+
}
|
|
6
|
+
export {
|
|
7
|
+
supportsSourceModuleLoading
|
|
8
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { EcoPagesAppConfig } from '../../internal-types.js';
|
|
1
|
+
import type { EcoPagesAppConfig } from '../../types/internal-types.js';
|
|
2
2
|
import { type ServerInvalidationState } from './server-invalidation-state.service.js';
|
|
3
3
|
import { type EntrypointDependencyGraph } from './entrypoint-dependency-graph.service.js';
|
|
4
4
|
/**
|
|
@@ -32,7 +32,7 @@ export declare class NoopDevGraphService implements DevGraphService {
|
|
|
32
32
|
/**
|
|
33
33
|
* Invalidates all server-side module state by incrementing the shared version.
|
|
34
34
|
*/
|
|
35
|
-
invalidateServerModules(
|
|
35
|
+
invalidateServerModules(changedFiles?: string[]): void;
|
|
36
36
|
/**
|
|
37
37
|
* Indicates that this graph cannot target invalidation to one entrypoint set.
|
|
38
38
|
*/
|
|
@@ -41,19 +41,19 @@ export declare class NoopDevGraphService implements DevGraphService {
|
|
|
41
41
|
* Returns an empty entrypoint set because this implementation stores no
|
|
42
42
|
* dependency graph metadata.
|
|
43
43
|
*/
|
|
44
|
-
getDependencyEntrypoints(
|
|
44
|
+
getDependencyEntrypoints(filePath: string): Set<string>;
|
|
45
45
|
/**
|
|
46
46
|
* Accepts dependency updates to preserve interface compatibility, but stores no
|
|
47
47
|
* graph state in the noop implementation.
|
|
48
48
|
*/
|
|
49
|
-
setEntrypointDependencies(
|
|
49
|
+
setEntrypointDependencies(entrypointPath: string, dependencies: string[]): void;
|
|
50
50
|
/**
|
|
51
51
|
* Clears one entrypoint from the graph.
|
|
52
52
|
*
|
|
53
53
|
* @remarks
|
|
54
54
|
* There is no stored graph state in this implementation, so this is a no-op.
|
|
55
55
|
*/
|
|
56
|
-
clearEntrypointDependencies(
|
|
56
|
+
clearEntrypointDependencies(entrypointPath: string): void;
|
|
57
57
|
/**
|
|
58
58
|
* Resets graph-owned state for a fresh runtime cycle.
|
|
59
59
|
*/
|
|
@@ -82,7 +82,7 @@ export declare class InMemoryDevGraphService implements DevGraphService {
|
|
|
82
82
|
* modules. Selective dependency lookups are used by callers that need to limit
|
|
83
83
|
* browser rebuild work.
|
|
84
84
|
*/
|
|
85
|
-
invalidateServerModules(
|
|
85
|
+
invalidateServerModules(changedFiles?: string[]): void;
|
|
86
86
|
/**
|
|
87
87
|
* Indicates that this graph can answer dependency-to-entrypoint lookups.
|
|
88
88
|
*/
|
|
@@ -21,8 +21,8 @@ class NoopDevGraphService {
|
|
|
21
21
|
/**
|
|
22
22
|
* Invalidates all server-side module state by incrementing the shared version.
|
|
23
23
|
*/
|
|
24
|
-
invalidateServerModules(
|
|
25
|
-
this.invalidationState.invalidateServerModules(
|
|
24
|
+
invalidateServerModules(changedFiles) {
|
|
25
|
+
this.invalidationState.invalidateServerModules(changedFiles);
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* Indicates that this graph cannot target invalidation to one entrypoint set.
|
|
@@ -34,15 +34,15 @@ class NoopDevGraphService {
|
|
|
34
34
|
* Returns an empty entrypoint set because this implementation stores no
|
|
35
35
|
* dependency graph metadata.
|
|
36
36
|
*/
|
|
37
|
-
getDependencyEntrypoints(
|
|
38
|
-
return this.dependencyGraph.getDependencyEntrypoints(
|
|
37
|
+
getDependencyEntrypoints(filePath) {
|
|
38
|
+
return this.dependencyGraph.getDependencyEntrypoints(filePath);
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
41
|
* Accepts dependency updates to preserve interface compatibility, but stores no
|
|
42
42
|
* graph state in the noop implementation.
|
|
43
43
|
*/
|
|
44
|
-
setEntrypointDependencies(
|
|
45
|
-
this.dependencyGraph.setEntrypointDependencies(
|
|
44
|
+
setEntrypointDependencies(entrypointPath, dependencies) {
|
|
45
|
+
this.dependencyGraph.setEntrypointDependencies(entrypointPath, dependencies);
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
48
|
* Clears one entrypoint from the graph.
|
|
@@ -50,8 +50,8 @@ class NoopDevGraphService {
|
|
|
50
50
|
* @remarks
|
|
51
51
|
* There is no stored graph state in this implementation, so this is a no-op.
|
|
52
52
|
*/
|
|
53
|
-
clearEntrypointDependencies(
|
|
54
|
-
this.dependencyGraph.clearEntrypointDependencies(
|
|
53
|
+
clearEntrypointDependencies(entrypointPath) {
|
|
54
|
+
this.dependencyGraph.clearEntrypointDependencies(entrypointPath);
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* Resets graph-owned state for a fresh runtime cycle.
|
|
@@ -78,8 +78,8 @@ class InMemoryDevGraphService {
|
|
|
78
78
|
* modules. Selective dependency lookups are used by callers that need to limit
|
|
79
79
|
* browser rebuild work.
|
|
80
80
|
*/
|
|
81
|
-
invalidateServerModules(
|
|
82
|
-
this.invalidationState.invalidateServerModules(
|
|
81
|
+
invalidateServerModules(changedFiles) {
|
|
82
|
+
this.invalidationState.invalidateServerModules(changedFiles);
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
85
|
* Indicates that this graph can answer dependency-to-entrypoint lookups.
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
import type { EcoPagesAppConfig } from '../internal-types.js';
|
|
2
|
-
import type { StaticRoute } from '../public-types.js';
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
1
|
+
import type { EcoPagesAppConfig } from '../types/internal-types.js';
|
|
2
|
+
import type { StaticRoute } from '../types/public-types.js';
|
|
3
|
+
import type { PageRendererResolver, StaticGenerationRendererResolver } from '../route-renderer/route-renderer.js';
|
|
4
|
+
import type { StaticGenerationRoute } from '../router/server/route-registry.js';
|
|
5
|
+
type StaticGenerationRouteSource = {
|
|
6
|
+
listStaticGenerationRoutes(input: {
|
|
7
|
+
runtimeOrigin: string;
|
|
8
|
+
}): Promise<readonly StaticGenerationRoute[]>;
|
|
9
|
+
};
|
|
10
|
+
type StaticPageRouteRendererFactory = PageRendererResolver;
|
|
11
|
+
type StaticGenerationRendererFactory = StaticGenerationRendererResolver;
|
|
5
12
|
export declare const STATIC_SITE_GENERATOR_ERRORS: {
|
|
6
13
|
readonly ROUTE_RENDERER_FACTORY_REQUIRED: "RouteRendererFactory is required for render strategy";
|
|
7
14
|
readonly unsupportedBodyType: (bodyType: string) => string;
|
|
@@ -20,17 +27,12 @@ export declare const STATIC_SITE_GENERATOR_ERRORS: {
|
|
|
20
27
|
*/
|
|
21
28
|
export declare class StaticSiteGenerator {
|
|
22
29
|
appConfig: EcoPagesAppConfig;
|
|
23
|
-
private serverModuleTranspiler;
|
|
24
30
|
/**
|
|
25
31
|
* Creates the static-site generator for one app config.
|
|
26
32
|
*/
|
|
27
33
|
constructor({ appConfig }: {
|
|
28
34
|
appConfig: EcoPagesAppConfig;
|
|
29
35
|
});
|
|
30
|
-
/**
|
|
31
|
-
* Returns the transpiler output directory used for static page-module probes.
|
|
32
|
-
*/
|
|
33
|
-
private getStaticPageModuleOutdir;
|
|
34
36
|
private getExportDir;
|
|
35
37
|
/**
|
|
36
38
|
* Logs the standardized warning emitted when a dynamic-cache page is skipped.
|
|
@@ -58,14 +60,9 @@ export declare class StaticSiteGenerator {
|
|
|
58
60
|
* Collects parent directories that must exist for the generated route set.
|
|
59
61
|
*/
|
|
60
62
|
getDirectories(routes: string[]): string[];
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
* @param templatePath - The template path (e.g., "/blog/[slug]")
|
|
65
|
-
* @param actualPath - The actual path (e.g., "/blog/my-post")
|
|
66
|
-
* @returns A record of extracted parameters (e.g., { slug: "my-post" })
|
|
67
|
-
*/
|
|
68
|
-
private extractParams;
|
|
63
|
+
private writeStaticOutput;
|
|
64
|
+
private getStaticBuildStrategy;
|
|
65
|
+
private createFilesystemStaticContents;
|
|
69
66
|
/**
|
|
70
67
|
* Generates static output for all filesystem-discovered routes.
|
|
71
68
|
*
|
|
@@ -74,14 +71,15 @@ export declare class StaticSiteGenerator {
|
|
|
74
71
|
* issuing a request against the running server origin. Render-strategy routes
|
|
75
72
|
* go through the normal route renderer directly.
|
|
76
73
|
*/
|
|
77
|
-
generateStaticPages(router:
|
|
74
|
+
generateStaticPages(router: StaticGenerationRouteSource, baseUrl: string, routeRendererFactory?: StaticPageRouteRendererFactory): Promise<void>;
|
|
75
|
+
private resolveStaticFetchUrl;
|
|
78
76
|
/**
|
|
79
77
|
* Executes the full static-generation workflow for one app run.
|
|
80
78
|
*/
|
|
81
79
|
run({ router, baseUrl, routeRendererFactory, staticRoutes, }: {
|
|
82
|
-
router:
|
|
80
|
+
router: StaticGenerationRouteSource;
|
|
83
81
|
baseUrl: string;
|
|
84
|
-
routeRendererFactory?:
|
|
82
|
+
routeRendererFactory?: StaticGenerationRendererFactory;
|
|
85
83
|
staticRoutes?: StaticRoute[];
|
|
86
84
|
}): Promise<void>;
|
|
87
85
|
/**
|
|
@@ -89,14 +87,10 @@ export declare class StaticSiteGenerator {
|
|
|
89
87
|
* These routes use eco.page views via loader functions for HMR support.
|
|
90
88
|
*/
|
|
91
89
|
private generateExplicitStaticPages;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
private
|
|
96
|
-
/**
|
|
97
|
-
* Generate static pages for a dynamic route using staticPaths.
|
|
98
|
-
*/
|
|
99
|
-
private generateDynamicStaticRoute;
|
|
90
|
+
private generateExplicitStaticRoute;
|
|
91
|
+
private planExplicitStaticRoute;
|
|
92
|
+
private createExplicitStaticContents;
|
|
93
|
+
private listExplicitStaticRouteEntries;
|
|
100
94
|
/**
|
|
101
95
|
* Resolve a route path template with actual params.
|
|
102
96
|
* Supports both :param and [param] syntax.
|
|
@@ -107,3 +101,4 @@ export declare class StaticSiteGenerator {
|
|
|
107
101
|
*/
|
|
108
102
|
private getOutputPath;
|
|
109
103
|
}
|
|
104
|
+
export {};
|