@ecopages/core 0.2.0-alpha.4 → 0.2.0-alpha.40
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 +268 -14
- package/package.json +84 -110
- package/src/adapters/README.md +39 -0
- 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 +30 -68
- package/src/adapters/bun/hmr-manager.js +30 -212
- package/src/adapters/bun/index.d.ts +2 -3
- package/src/adapters/bun/index.js +3 -3
- 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 +93 -32
- package/src/adapters/bun/server-adapter.js +166 -89
- 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 +2 -6
- package/src/adapters/index.js +2 -8
- 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 +38 -49
- package/src/adapters/node/node-hmr-manager.js +31 -219
- 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 +20 -72
- package/src/adapters/node/server-adapter.js +99 -203
- package/src/adapters/node/static-content-server.d.ts +37 -1
- package/src/adapters/node/static-content-server.js +29 -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/{define-api-handler.d.ts → 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 -13
- package/src/adapters/shared/file-route-middleware-pipeline.d.ts +7 -10
- package/src/adapters/shared/file-route-middleware-pipeline.js +3 -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 +20 -16
- package/src/adapters/shared/fs-server-response-matcher.js +76 -45
- package/src/adapters/shared/hmr-entrypoint-registrar.d.ts +55 -0
- package/src/adapters/shared/hmr-entrypoint-registrar.js +87 -0
- package/src/adapters/shared/hmr-html-response.d.ts +22 -0
- package/src/adapters/shared/hmr-html-response.js +33 -0
- package/src/adapters/shared/render-context.d.ts +5 -3
- package/src/adapters/shared/render-context.js +27 -3
- 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 +33 -12
- package/src/adapters/shared/server-adapter.js +215 -132
- package/src/adapters/shared/server-route-handler.d.ts +5 -5
- package/src/adapters/shared/server-route-handler.js +7 -16
- package/src/adapters/shared/server-static-builder.d.ts +41 -8
- package/src/adapters/shared/server-static-builder.js +65 -11
- package/src/adapters/shared/shared-hmr-manager.d.ts +59 -0
- package/src/adapters/shared/shared-hmr-manager.js +239 -0
- package/src/adapters/shared/static-preview-host.d.ts +10 -0
- package/src/build/README.md +107 -0
- package/src/build/build-adapter.d.ts +176 -3
- package/src/build/build-adapter.js +619 -16
- package/src/build/build-manifest.d.ts +27 -0
- package/src/build/build-manifest.js +30 -0
- package/src/build/dev-build-coordinator.d.ts +72 -0
- package/src/build/dev-build-coordinator.js +154 -0
- package/src/build/esbuild-build-adapter.d.ts +16 -6
- package/src/build/esbuild-build-adapter.js +202 -74
- package/src/build/runtime-build-executor.d.ts +14 -0
- package/src/build/runtime-build-executor.js +22 -0
- package/src/build/runtime-specifier-alias-plugin.d.ts +15 -0
- package/src/build/runtime-specifier-alias-plugin.js +35 -0
- package/src/build/runtime-specifier-aliases.d.ts +5 -0
- package/src/build/runtime-specifier-aliases.js +95 -0
- package/src/config/README.md +36 -0
- package/src/config/config-builder.d.ts +54 -29
- package/src/config/config-builder.js +256 -50
- package/src/{constants.d.ts → config/constants.d.ts} +13 -0
- package/src/{constants.js → config/constants.js} +4 -0
- package/src/declarations.d.ts +19 -14
- 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/README.md +70 -16
- package/src/eco/eco.browser.d.ts +2 -0
- package/src/eco/eco.browser.js +88 -0
- package/src/eco/eco.js +63 -54
- package/src/eco/eco.types.d.ts +69 -6
- 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/README.md +26 -0
- package/src/hmr/client/hmr-runtime.d.ts +1 -6
- package/src/hmr/client/hmr-runtime.js +38 -7
- package/src/hmr/hmr-strategy.d.ts +16 -13
- package/src/hmr/hmr-strategy.js +22 -7
- package/src/hmr/hmr.postcss.test.e2e.d.ts +1 -0
- package/src/hmr/hmr.postcss.test.e2e.js +31 -0
- package/src/hmr/hmr.test.e2e.js +26 -33
- 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 +46 -48
- package/src/hmr/strategies/js-hmr-strategy.js +60 -75
- package/src/index.browser.d.ts +2 -2
- package/src/index.browser.js +1 -1
- package/src/index.d.ts +4 -3
- package/src/index.js +16 -5
- package/src/integrations/ghtml/ghtml-renderer.d.ts +3 -2
- package/src/integrations/ghtml/ghtml-renderer.js +27 -30
- 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 +35 -0
- package/src/plugins/alias-resolver-plugin.d.ts +1 -0
- package/src/plugins/alias-resolver-plugin.js +27 -5
- package/src/plugins/eco-component-meta-plugin.d.ts +14 -1
- package/src/plugins/eco-component-meta-plugin.js +42 -24
- 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 +147 -29
- package/src/plugins/integration-plugin.js +103 -14
- package/src/plugins/processor.d.ts +17 -2
- package/src/plugins/processor.js +22 -3
- package/src/plugins/runtime-capability.d.ts +9 -0
- package/src/plugins/source-transform.d.ts +46 -0
- package/src/plugins/source-transform.js +71 -0
- package/src/route-renderer/GRAPH.md +83 -325
- package/src/route-renderer/README.md +73 -90
- 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 +534 -0
- package/src/route-renderer/orchestration/integration-renderer.js +986 -0
- 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 +134 -0
- package/src/route-renderer/orchestration/route-render-orchestrator.js +437 -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/{dependency-resolver.d.ts → page-loading/dependency-resolver.d.ts} +15 -4
- package/src/route-renderer/page-loading/dependency-resolver.js +115 -0
- 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 +90 -0
- package/src/route-renderer/{page-module-loader.js → page-loading/page-module-loader.js} +39 -14
- package/src/route-renderer/route-renderer.d.ts +57 -14
- package/src/route-renderer/route-renderer.js +30 -18
- package/src/router/README.md +94 -0
- package/src/router/client/link-intent.d.ts +53 -0
- package/src/router/client/link-intent.js +34 -0
- package/src/router/client/link-intent.test.browser.d.ts +1 -0
- package/src/router/client/link-intent.test.browser.js +43 -0
- package/src/router/client/navigation-coordinator.d.ts +169 -0
- package/src/router/client/navigation-coordinator.js +215 -0
- package/src/router/server/route-registry.d.ts +78 -0
- package/src/router/server/route-registry.js +262 -0
- package/src/services/README.md +28 -0
- 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 +103 -0
- package/src/services/{asset-processing-service → assets/asset-processing-service}/asset-processing.service.js +124 -89
- package/src/services/{asset-processing-service → assets/asset-processing-service}/asset.factory.d.ts +1 -1
- package/src/services/{asset-processing-service → assets/asset-processing-service}/asset.factory.js +2 -2
- package/src/services/{asset-processing-service → assets/asset-processing-service}/assets.types.d.ts +16 -1
- package/src/services/assets/asset-processing-service/assets.types.js +0 -0
- package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.d.ts +55 -0
- package/src/services/assets/asset-processing-service/browser-runtime-asset.factory.js +49 -0
- package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.d.ts +20 -0
- package/src/services/assets/asset-processing-service/browser-runtime-entry.factory.js +41 -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 -0
- package/src/services/assets/asset-processing-service/index.js +6 -0
- 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/{asset-processing-service → assets/asset-processing-service}/processor.interface.d.ts +2 -2
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.registry.d.ts +2 -2
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/base/base-processor.d.ts +1 -1
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/base/base-processor.js +11 -5
- package/src/services/assets/asset-processing-service/processors/base/base-script-processor.d.ts +22 -0
- package/src/services/assets/asset-processing-service/processors/base/base-script-processor.js +136 -0
- package/src/services/assets/asset-processing-service/processors/index.d.ts +5 -0
- package/src/services/assets/asset-processing-service/processors/index.js +5 -0
- package/src/services/{asset-processing-service → 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 +119 -0
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/script/file-script.processor.d.ts +4 -3
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/script/file-script.processor.js +28 -7
- package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.d.ts +42 -0
- package/src/services/assets/asset-processing-service/processors/script/node-module-script.processor.js +126 -0
- package/src/services/{asset-processing-service → 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 +59 -0
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/stylesheet/file-stylesheet.processor.d.ts +2 -2
- package/src/services/{asset-processing-service → assets/asset-processing-service}/processors/stylesheet/file-stylesheet.processor.js +9 -3
- 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 +73 -0
- package/src/services/assets/browser-bundle.service.js +41 -0
- package/src/services/{page-request-cache-coordinator.service.d.ts → cache/page-request-cache-coordinator.service.d.ts} +2 -2
- package/src/services/{page-request-cache-coordinator.service.js → cache/page-request-cache-coordinator.service.js} +3 -1
- package/src/services/html/html-rewriter-provider.service.d.ts +40 -0
- package/src/services/html/html-rewriter-provider.service.js +68 -0
- package/src/services/html/html-transformer.service.d.ts +96 -0
- package/src/services/html/html-transformer.service.js +287 -0
- package/src/services/invalidation/development-invalidation.service.d.ts +74 -0
- package/src/services/invalidation/development-invalidation.service.js +190 -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 +24 -0
- package/src/services/module-loading/app-server-module-transpiler.service.js +151 -0
- 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/node-bootstrap-plugin.d.ts +42 -0
- package/src/services/module-loading/node-bootstrap-plugin.js +297 -0
- package/src/services/module-loading/page-module-import.service.d.ts +95 -0
- package/src/services/module-loading/page-module-import.service.js +191 -0
- package/src/services/module-loading/server-module-transpiler.service.d.ts +63 -0
- package/src/services/module-loading/server-module-transpiler.service.js +64 -0
- 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 +118 -0
- package/src/services/runtime-state/dev-graph.service.js +162 -0
- package/src/services/runtime-state/entrypoint-dependency-graph.service.d.ts +41 -0
- package/src/services/runtime-state/entrypoint-dependency-graph.service.js +85 -0
- package/src/services/runtime-state/server-invalidation-state.service.d.ts +26 -0
- package/src/services/runtime-state/server-invalidation-state.service.js +35 -0
- package/src/services/{schema-validation-service.d.ts → validation/schema-validation-service.d.ts} +1 -1
- package/src/static-site-generator/README.md +26 -0
- package/src/static-site-generator/static-site-generator.d.ts +67 -20
- package/src/static-site-generator/static-site-generator.js +182 -138
- package/src/{internal-types.d.ts → types/internal-types.d.ts} +62 -30
- package/src/types/internal-types.js +0 -0
- package/src/{public-types.d.ts → types/public-types.d.ts} +239 -35
- 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.d.ts +11 -0
- package/src/utils/resolve-work-dir.js +31 -0
- package/src/watchers/project-watcher.d.ts +40 -29
- package/src/watchers/project-watcher.js +126 -116
- package/src/watchers/project-watcher.test-helpers.d.ts +2 -2
- package/src/watchers/project-watcher.test-helpers.js +6 -6
- package/CHANGELOG.md +0 -91
- 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/define-api-handler.d.ts +0 -61
- package/src/adapters/bun/define-api-handler.ts +0 -114
- package/src/adapters/bun/hmr-manager.ts +0 -296
- package/src/adapters/bun/index.ts +0 -3
- package/src/adapters/bun/server-adapter.ts +0 -492
- package/src/adapters/bun/server-lifecycle.d.ts +0 -52
- package/src/adapters/bun/server-lifecycle.js +0 -120
- package/src/adapters/bun/server-lifecycle.ts +0 -154
- package/src/adapters/index.ts +0 -6
- package/src/adapters/node/create-app.ts +0 -179
- package/src/adapters/node/index.d.ts +0 -4
- package/src/adapters/node/index.js +0 -8
- package/src/adapters/node/index.ts +0 -9
- package/src/adapters/node/node-client-bridge.ts +0 -79
- package/src/adapters/node/node-hmr-manager.ts +0 -289
- package/src/adapters/node/server-adapter.ts +0 -561
- package/src/adapters/node/static-content-server.ts +0 -203
- package/src/adapters/shared/api-response.ts +0 -104
- package/src/adapters/shared/application-adapter.ts +0 -199
- package/src/adapters/shared/explicit-static-route-matcher.ts +0 -134
- package/src/adapters/shared/file-route-middleware-pipeline.ts +0 -123
- package/src/adapters/shared/fs-server-response-factory.ts +0 -118
- package/src/adapters/shared/fs-server-response-matcher.ts +0 -198
- package/src/adapters/shared/render-context.ts +0 -105
- package/src/adapters/shared/server-adapter.ts +0 -442
- package/src/adapters/shared/server-route-handler.ts +0 -166
- package/src/adapters/shared/server-static-builder.ts +0 -82
- package/src/build/build-adapter.ts +0 -132
- package/src/build/build-types.ts +0 -83
- package/src/build/esbuild-build-adapter.ts +0 -510
- package/src/config/config-builder.ts +0 -474
- package/src/constants.ts +0 -39
- package/src/create-app.ts +0 -87
- package/src/define-api-handler.js +0 -15
- package/src/define-api-handler.ts +0 -66
- 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 -77
- package/src/eco/component-render-context.ts +0 -202
- package/src/eco/eco.ts +0 -221
- package/src/eco/eco.types.ts +0 -202
- 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 -121
- package/src/hmr/hmr-strategy.ts +0 -172
- package/src/hmr/hmr.test.e2e.ts +0 -75
- 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 -93
- package/src/integrations/ghtml/ghtml.plugin.ts +0 -32
- package/src/internal-types.ts +0 -212
- package/src/plugins/alias-resolver-plugin.ts +0 -45
- package/src/plugins/eco-component-meta-plugin.ts +0 -474
- package/src/plugins/integration-plugin.ts +0 -184
- package/src/plugins/processor.ts +0 -220
- package/src/public-types.ts +0 -1260
- package/src/route-renderer/component-graph-executor.d.ts +0 -32
- package/src/route-renderer/component-graph-executor.js +0 -31
- package/src/route-renderer/component-graph-executor.ts +0 -84
- package/src/route-renderer/component-graph.d.ts +0 -42
- package/src/route-renderer/component-graph.js +0 -72
- package/src/route-renderer/component-graph.ts +0 -159
- package/src/route-renderer/component-marker.d.ts +0 -52
- package/src/route-renderer/component-marker.js +0 -46
- package/src/route-renderer/component-marker.ts +0 -117
- package/src/route-renderer/dependency-resolver.js +0 -428
- package/src/route-renderer/dependency-resolver.ts +0 -596
- package/src/route-renderer/html-post-processing.service.d.ts +0 -40
- package/src/route-renderer/html-post-processing.service.js +0 -86
- package/src/route-renderer/html-post-processing.service.ts +0 -103
- package/src/route-renderer/integration-renderer.d.ts +0 -339
- package/src/route-renderer/integration-renderer.js +0 -526
- package/src/route-renderer/integration-renderer.ts +0 -696
- package/src/route-renderer/marker-graph-resolver.d.ts +0 -76
- package/src/route-renderer/marker-graph-resolver.js +0 -93
- package/src/route-renderer/marker-graph-resolver.ts +0 -153
- package/src/route-renderer/page-module-loader.d.ts +0 -61
- package/src/route-renderer/page-module-loader.ts +0 -153
- package/src/route-renderer/render-execution.service.d.ts +0 -69
- package/src/route-renderer/render-execution.service.js +0 -91
- package/src/route-renderer/render-execution.service.ts +0 -158
- package/src/route-renderer/render-preparation.service.d.ts +0 -112
- package/src/route-renderer/render-preparation.service.js +0 -243
- package/src/route-renderer/render-preparation.service.ts +0 -358
- package/src/route-renderer/route-renderer.ts +0 -80
- package/src/router/fs-router-scanner.d.ts +0 -41
- package/src/router/fs-router-scanner.js +0 -155
- package/src/router/fs-router-scanner.ts +0 -217
- package/src/router/fs-router.d.ts +0 -26
- package/src/router/fs-router.js +0 -100
- package/src/router/fs-router.ts +0 -122
- package/src/services/asset-processing-service/asset-processing.service.d.ts +0 -41
- package/src/services/asset-processing-service/asset-processing.service.ts +0 -306
- package/src/services/asset-processing-service/asset.factory.ts +0 -105
- package/src/services/asset-processing-service/assets.types.ts +0 -112
- package/src/services/asset-processing-service/index.d.ts +0 -3
- package/src/services/asset-processing-service/index.js +0 -3
- package/src/services/asset-processing-service/index.ts +0 -3
- package/src/services/asset-processing-service/processor.interface.ts +0 -27
- package/src/services/asset-processing-service/processor.registry.ts +0 -18
- package/src/services/asset-processing-service/processors/base/base-processor.ts +0 -76
- package/src/services/asset-processing-service/processors/base/base-script-processor.d.ts +0 -16
- package/src/services/asset-processing-service/processors/base/base-script-processor.js +0 -80
- package/src/services/asset-processing-service/processors/base/base-script-processor.ts +0 -105
- package/src/services/asset-processing-service/processors/index.d.ts +0 -5
- package/src/services/asset-processing-service/processors/index.js +0 -5
- package/src/services/asset-processing-service/processors/index.ts +0 -5
- package/src/services/asset-processing-service/processors/script/content-script.processor.js +0 -57
- package/src/services/asset-processing-service/processors/script/content-script.processor.ts +0 -66
- package/src/services/asset-processing-service/processors/script/file-script.processor.ts +0 -88
- package/src/services/asset-processing-service/processors/script/node-module-script.processor.d.ts +0 -7
- package/src/services/asset-processing-service/processors/script/node-module-script.processor.js +0 -74
- package/src/services/asset-processing-service/processors/script/node-module-script.processor.ts +0 -84
- package/src/services/asset-processing-service/processors/stylesheet/content-stylesheet.processor.js +0 -25
- package/src/services/asset-processing-service/processors/stylesheet/content-stylesheet.processor.ts +0 -27
- package/src/services/asset-processing-service/processors/stylesheet/file-stylesheet.processor.ts +0 -77
- 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/html-transformer.service.d.ts +0 -50
- package/src/services/html-transformer.service.js +0 -163
- package/src/services/html-transformer.service.ts +0 -217
- package/src/services/page-module-import.service.d.ts +0 -37
- package/src/services/page-module-import.service.js +0 -88
- package/src/services/page-module-import.service.ts +0 -129
- package/src/services/page-request-cache-coordinator.service.ts +0 -128
- package/src/services/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 -359
- 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/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 -344
- /package/src/adapters/{bun → shared}/define-api-handler.js +0 -0
- /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/{services/asset-processing-service/assets.types.js → plugins/runtime-capability.js} +0 -0
- /package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.interface.js +0 -0
- /package/src/services/{asset-processing-service → assets/asset-processing-service}/processor.registry.js +0 -0
- /package/src/services/{schema-validation-service.js → validation/schema-validation-service.js} +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { EcoBuildPlugin } from './build-types.js';
|
|
2
|
+
type RuntimeSpecifierMap = ReadonlyMap<string, string> | Record<string, string>;
|
|
3
|
+
/**
|
|
4
|
+
* Creates a build plugin that aliases runtime bare specifiers to concrete URLs.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* This helper is used when browser-target builds must preserve integration-owned
|
|
8
|
+
* runtime specifier semantics while letting the bundler treat the mapped URLs as
|
|
9
|
+
* external runtime assets.
|
|
10
|
+
*/
|
|
11
|
+
export declare function createRuntimeSpecifierAliasPlugin(specifierMapInput: RuntimeSpecifierMap, options?: {
|
|
12
|
+
name?: string;
|
|
13
|
+
external?: boolean;
|
|
14
|
+
}): EcoBuildPlugin | null;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { attachRuntimeSpecifierAliasMap } from "./runtime-specifier-aliases.js";
|
|
2
|
+
function toRuntimeSpecifierMap(specifierMap) {
|
|
3
|
+
return specifierMap instanceof Map ? specifierMap : new Map(Object.entries(specifierMap));
|
|
4
|
+
}
|
|
5
|
+
function escapeRegExp(value) {
|
|
6
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
7
|
+
}
|
|
8
|
+
function createRuntimeSpecifierAliasPlugin(specifierMapInput, options) {
|
|
9
|
+
const specifierMap = toRuntimeSpecifierMap(specifierMapInput);
|
|
10
|
+
if (specifierMap.size === 0) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const filter = new RegExp(`^(${Array.from(specifierMap.keys()).map(escapeRegExp).join("|")})$`);
|
|
14
|
+
return attachRuntimeSpecifierAliasMap(
|
|
15
|
+
{
|
|
16
|
+
name: options?.name ?? "runtime-specifier-alias",
|
|
17
|
+
setup(build) {
|
|
18
|
+
build.onResolve({ filter }, (args) => {
|
|
19
|
+
const mappedPath = specifierMap.get(args.path);
|
|
20
|
+
if (!mappedPath) {
|
|
21
|
+
return void 0;
|
|
22
|
+
}
|
|
23
|
+
return {
|
|
24
|
+
path: mappedPath,
|
|
25
|
+
external: options?.external ?? true
|
|
26
|
+
};
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
specifierMap
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
export {
|
|
34
|
+
createRuntimeSpecifierAliasPlugin
|
|
35
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { EcoBuildPlugin } from './build-types.js';
|
|
2
|
+
export declare function attachRuntimeSpecifierAliasMap(plugin: EcoBuildPlugin, specifierMap: ReadonlyMap<string, string>): EcoBuildPlugin;
|
|
3
|
+
export declare function getRuntimeSpecifierAliasMap(plugin: EcoBuildPlugin): ReadonlyMap<string, string> | undefined;
|
|
4
|
+
export declare function collectRuntimeSpecifierAliasMap(plugins: EcoBuildPlugin[] | undefined): ReadonlyMap<string, string>;
|
|
5
|
+
export declare function rewriteRuntimeSpecifierAliases(code: string, specifierMap: ReadonlyMap<string, string>): string;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { parseSync } from "oxc-parser";
|
|
2
|
+
const RUNTIME_SPECIFIER_ALIAS_MAP = /* @__PURE__ */ Symbol("ecopages.runtimeSpecifierAliasMap");
|
|
3
|
+
function attachRuntimeSpecifierAliasMap(plugin, specifierMap) {
|
|
4
|
+
plugin[RUNTIME_SPECIFIER_ALIAS_MAP] = specifierMap;
|
|
5
|
+
return plugin;
|
|
6
|
+
}
|
|
7
|
+
function getRuntimeSpecifierAliasMap(plugin) {
|
|
8
|
+
return plugin[RUNTIME_SPECIFIER_ALIAS_MAP];
|
|
9
|
+
}
|
|
10
|
+
function collectRuntimeSpecifierAliasMap(plugins) {
|
|
11
|
+
const merged = /* @__PURE__ */ new Map();
|
|
12
|
+
for (const plugin of plugins ?? []) {
|
|
13
|
+
const specifierMap = getRuntimeSpecifierAliasMap(plugin);
|
|
14
|
+
if (!specifierMap) {
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
for (const [specifier, mappedPath] of specifierMap.entries()) {
|
|
18
|
+
if (!merged.has(specifier)) {
|
|
19
|
+
merged.set(specifier, mappedPath);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return merged;
|
|
24
|
+
}
|
|
25
|
+
function rewriteRuntimeSpecifierAliases(code, specifierMap) {
|
|
26
|
+
if (specifierMap.size === 0) {
|
|
27
|
+
return code;
|
|
28
|
+
}
|
|
29
|
+
const edits = [];
|
|
30
|
+
try {
|
|
31
|
+
const result = parseSync("runtime-alias-output.js", code, {
|
|
32
|
+
sourceType: "module",
|
|
33
|
+
lang: "js"
|
|
34
|
+
});
|
|
35
|
+
const queueReplacement = (source) => {
|
|
36
|
+
if (typeof source.value !== "string") {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const mappedPath = specifierMap.get(source.value);
|
|
40
|
+
if (!mappedPath) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const quote = code[source.start] === "'" ? "'" : '"';
|
|
44
|
+
edits.push({
|
|
45
|
+
start: source.start,
|
|
46
|
+
end: source.end,
|
|
47
|
+
replacement: `${quote}${mappedPath}${quote}`
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
const walk = (node) => {
|
|
51
|
+
if (!node || typeof node !== "object") {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
if (Array.isArray(node)) {
|
|
55
|
+
for (const child of node) {
|
|
56
|
+
walk(child);
|
|
57
|
+
}
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const candidate = node;
|
|
61
|
+
if (candidate.type === "ImportDeclaration" || candidate.type === "ExportNamedDeclaration" || candidate.type === "ExportAllDeclaration") {
|
|
62
|
+
if (candidate.source) {
|
|
63
|
+
queueReplacement(candidate.source);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
if (candidate.type === "ImportExpression") {
|
|
67
|
+
const importNode = candidate;
|
|
68
|
+
if (importNode.source?.type === "StringLiteral" || importNode.source?.type === "Literal") {
|
|
69
|
+
queueReplacement(importNode.source);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
for (const value of Object.values(candidate)) {
|
|
73
|
+
walk(value);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
walk(result.program);
|
|
77
|
+
} catch {
|
|
78
|
+
return code;
|
|
79
|
+
}
|
|
80
|
+
if (edits.length === 0) {
|
|
81
|
+
return code;
|
|
82
|
+
}
|
|
83
|
+
edits.sort((left, right) => right.start - left.start);
|
|
84
|
+
let rewritten = code;
|
|
85
|
+
for (const edit of edits) {
|
|
86
|
+
rewritten = rewritten.slice(0, edit.start) + edit.replacement + rewritten.slice(edit.end);
|
|
87
|
+
}
|
|
88
|
+
return rewritten;
|
|
89
|
+
}
|
|
90
|
+
export {
|
|
91
|
+
attachRuntimeSpecifierAliasMap,
|
|
92
|
+
collectRuntimeSpecifierAliasMap,
|
|
93
|
+
getRuntimeSpecifierAliasMap,
|
|
94
|
+
rewriteRuntimeSpecifierAliases
|
|
95
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Config Layer
|
|
2
|
+
|
|
3
|
+
This directory contains the app-configuration finalization path for Ecopages.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
The config layer answers one question:
|
|
8
|
+
|
|
9
|
+
How does one `eco.config.ts` become one stable, app-owned runtime/build configuration?
|
|
10
|
+
|
|
11
|
+
It is responsible for:
|
|
12
|
+
|
|
13
|
+
- validating integration, processor, and loader registration
|
|
14
|
+
- resolving semantic paths such as `html` and `404` templates
|
|
15
|
+
- selecting explicit build ownership and creating app-owned runtime state such as the build adapter, build executor, build manifest, dev graph service, and remaining compatibility-only runtime state
|
|
16
|
+
- enforcing runtime capability requirements before startup
|
|
17
|
+
- carrying host-injected runtime dependencies only through abstract slots such as host module loaders, never through bundler-specific core defaults
|
|
18
|
+
|
|
19
|
+
## Main Files
|
|
20
|
+
|
|
21
|
+
- `config-builder.ts`: the primary builder and config finalization boundary
|
|
22
|
+
- `config-builder.test.ts`: coverage for validation, path resolution, and runtime capability checks
|
|
23
|
+
|
|
24
|
+
## Ownership Rules
|
|
25
|
+
|
|
26
|
+
- Integrations and processors declare contributions.
|
|
27
|
+
- `ConfigBuilder.build()` decides ordering, validates compatibility, and seals build ownership for the finalized app config.
|
|
28
|
+
- Runtime startup reuses finalized config/build state; it should not recompute manifest ownership.
|
|
29
|
+
|
|
30
|
+
Bun-native is the default ownership path. Vite-host ownership is explicit and should be selected during config construction when a host-driven compatibility flow must avoid silently falling back to Bun build execution.
|
|
31
|
+
|
|
32
|
+
## Output
|
|
33
|
+
|
|
34
|
+
The result of this layer is a built `EcoPagesAppConfig` with resolved absolute paths and app-owned runtime services attached under `appConfig.runtime`.
|
|
35
|
+
|
|
36
|
+
That built config is then consumed by server adapters, static generation, route rendering, and HMR.
|
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
* This module contains the ConfigBuilder class, which is used to build the EcoPagesAppConfig object.
|
|
3
3
|
* @module
|
|
4
4
|
*/
|
|
5
|
+
import { type BuildOwnership } from '../build/build-adapter.js';
|
|
5
6
|
import type { EcoBuildPlugin } from '../build/build-types.js';
|
|
6
|
-
import type { EcoPagesAppConfig,
|
|
7
|
-
import type {
|
|
7
|
+
import type { EcoPagesAppConfig, RobotsPreference } from '../types/internal-types.js';
|
|
8
|
+
import type { AnyIntegrationPlugin } from '../plugins/integration-plugin.js';
|
|
8
9
|
import type { Processor } from '../plugins/processor.js';
|
|
9
|
-
import type {
|
|
10
|
+
import type { EcoSourceTransform } from '../plugins/source-transform.js';
|
|
11
|
+
import type { PageMetadataProps } from '../types/public-types.js';
|
|
10
12
|
import type { CacheConfig } from '../services/cache/cache.types.js';
|
|
11
13
|
export declare const CONFIG_BUILDER_ERRORS: {
|
|
12
14
|
readonly DUPLICATE_INTEGRATION_NAMES: "Integrations names must be unique";
|
|
@@ -14,21 +16,17 @@ export declare const CONFIG_BUILDER_ERRORS: {
|
|
|
14
16
|
readonly MIXED_JSX_ENGINES: "Both kitajs and react integrations are enabled. Use per-file JSX import source/pragma consistently (e.g. `/** @jsxImportSource react */` for React files and `/** @jsxImportSource @kitajs/html */` for Kita files).";
|
|
15
17
|
readonly duplicateProcessorName: (name: string) => string;
|
|
16
18
|
readonly duplicateLoaderName: (name: string) => string;
|
|
19
|
+
readonly duplicateSemanticTemplate: (kind: "html" | "404", matches: string[]) => string;
|
|
20
|
+
readonly incompatibleRuntimeCapability: (kind: "integration" | "processor", name: string, runtime: RuntimeKind, reason: string) => string;
|
|
21
|
+
readonly unsupportedRuntimeVersion: (kind: "integration" | "processor", name: string, runtime: RuntimeKind, current: string, min: string) => string;
|
|
22
|
+
readonly invalidRuntimeVersion: (kind: "integration" | "processor", name: string, version: string) => string;
|
|
17
23
|
};
|
|
24
|
+
type RuntimeKind = 'node' | 'bun';
|
|
18
25
|
/**
|
|
19
26
|
* A builder class for creating and configuring EcoPages application configuration.
|
|
20
27
|
* Provides a fluent interface for setting various configuration options and managing
|
|
21
28
|
* application settings.
|
|
22
29
|
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```typescript
|
|
25
|
-
* const config = new ConfigBuilder()
|
|
26
|
-
* .setBaseUrl('https://example.com')
|
|
27
|
-
* .setRootDir('./myproject')
|
|
28
|
-
* .setSrcDir('source')
|
|
29
|
-
* .build();
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
30
|
* @remarks
|
|
33
31
|
* The ConfigBuilder follows the builder pattern and allows for:
|
|
34
32
|
* - Setting directory paths for various components (pages, includes, layouts, etc.)
|
|
@@ -46,6 +44,7 @@ export declare const CONFIG_BUILDER_ERRORS: {
|
|
|
46
44
|
* @throws {Error} When adding duplicate processors or loaders
|
|
47
45
|
*/
|
|
48
46
|
export declare class ConfigBuilder {
|
|
47
|
+
private buildOwnership;
|
|
49
48
|
config: EcoPagesAppConfig;
|
|
50
49
|
/**
|
|
51
50
|
* Sets the base URL for the application.
|
|
@@ -63,6 +62,15 @@ export declare class ConfigBuilder {
|
|
|
63
62
|
* @returns The ConfigBuilder instance for method chaining
|
|
64
63
|
*/
|
|
65
64
|
setRootDir(rootDir: string): this;
|
|
65
|
+
/**
|
|
66
|
+
* Sets which runtime path owns build execution for the finalized app config.
|
|
67
|
+
*
|
|
68
|
+
* @remarks
|
|
69
|
+
* Bun-native remains the default. Vite-host ownership should be selected only
|
|
70
|
+
* for host-driven compatibility flows where core must not silently fall back to
|
|
71
|
+
* Bun build execution.
|
|
72
|
+
*/
|
|
73
|
+
setBuildOwnership(buildOwnership: BuildOwnership): this;
|
|
66
74
|
/**
|
|
67
75
|
* Sets the source directory relative to the root directory.
|
|
68
76
|
* This directory contains all the source files for the application.
|
|
@@ -111,21 +119,6 @@ export declare class ConfigBuilder {
|
|
|
111
119
|
* @returns The ConfigBuilder instance for method chaining
|
|
112
120
|
*/
|
|
113
121
|
setPublicDir(publicDir: string): this;
|
|
114
|
-
/**
|
|
115
|
-
* Sets the templates used for includes.
|
|
116
|
-
* These templates are used to build the HTML structure of pages.
|
|
117
|
-
*
|
|
118
|
-
* @param includesTemplates - An object containing the template file names
|
|
119
|
-
* @returns The ConfigBuilder instance for method chaining
|
|
120
|
-
*/
|
|
121
|
-
setIncludesTemplates(includesTemplates: IncludesTemplates): this;
|
|
122
|
-
/**
|
|
123
|
-
* Sets the template file for the 404 error page.
|
|
124
|
-
*
|
|
125
|
-
* @param error404Template - The file name of the 404 error template (default: '404.ghtml.ts')
|
|
126
|
-
* @returns The ConfigBuilder instance for method chaining
|
|
127
|
-
*/
|
|
128
|
-
setError404Template(error404Template: string): this;
|
|
129
122
|
/**
|
|
130
123
|
* Sets the robots.txt configuration.
|
|
131
124
|
* This determines which paths are allowed/disallowed for search engines.
|
|
@@ -143,14 +136,26 @@ export declare class ConfigBuilder {
|
|
|
143
136
|
* @param integrations - An array of integration plugins
|
|
144
137
|
* @returns The ConfigBuilder instance for method chaining
|
|
145
138
|
*/
|
|
146
|
-
setIntegrations(integrations:
|
|
139
|
+
setIntegrations(integrations: AnyIntegrationPlugin[]): this;
|
|
147
140
|
/**
|
|
148
141
|
* Sets the output directory for the built application.
|
|
149
142
|
*
|
|
150
|
-
* @param distDir - The distribution directory name (default: '
|
|
143
|
+
* @param distDir - The distribution directory name (default: 'dist')
|
|
151
144
|
* @returns The ConfigBuilder instance for method chaining
|
|
152
145
|
*/
|
|
153
146
|
setDistDir(distDir: string): this;
|
|
147
|
+
/**
|
|
148
|
+
* Sets the internal work directory for runtime-only artifacts.
|
|
149
|
+
*
|
|
150
|
+
* @remarks
|
|
151
|
+
* Use this when deployable output should stay clean while Ecopages still
|
|
152
|
+
* needs a separate workspace for server transpilation caches, runtime
|
|
153
|
+
* manifests, and other internal build products.
|
|
154
|
+
*
|
|
155
|
+
* @param workDir - The internal work directory name
|
|
156
|
+
* @returns The ConfigBuilder instance for method chaining
|
|
157
|
+
*/
|
|
158
|
+
setWorkDir(workDir: string): this;
|
|
154
159
|
/**
|
|
155
160
|
* Sets the default metadata for pages.
|
|
156
161
|
* This is used when a page doesn't specify its own metadata.
|
|
@@ -190,6 +195,11 @@ export declare class ConfigBuilder {
|
|
|
190
195
|
* @returns The ConfigBuilder instance for method chaining
|
|
191
196
|
*/
|
|
192
197
|
setLoaders(loaders: EcoBuildPlugin[]): this;
|
|
198
|
+
/**
|
|
199
|
+
* Sets the source transforms to use for transform-first bundlers such as Vite.
|
|
200
|
+
* This replaces any existing source transforms.
|
|
201
|
+
*/
|
|
202
|
+
setSourceTransforms(sourceTransforms: EcoSourceTransform[]): this;
|
|
193
203
|
/**
|
|
194
204
|
* Adds a loader to the application.
|
|
195
205
|
*
|
|
@@ -199,6 +209,12 @@ export declare class ConfigBuilder {
|
|
|
199
209
|
* @throws Error if a loader with the same name already exists
|
|
200
210
|
*/
|
|
201
211
|
addLoader(name: string, loader: EcoBuildPlugin): this;
|
|
212
|
+
/**
|
|
213
|
+
* Adds a source transform to the application.
|
|
214
|
+
*
|
|
215
|
+
* @throws Error if a source transform with the same name already exists.
|
|
216
|
+
*/
|
|
217
|
+
addSourceTransform(name: string, sourceTransform: EcoSourceTransform): this;
|
|
202
218
|
/**
|
|
203
219
|
* Sets the cache configuration for ISR and page caching.
|
|
204
220
|
*
|
|
@@ -208,8 +224,16 @@ export declare class ConfigBuilder {
|
|
|
208
224
|
setCacheConfig(cacheConfig: CacheConfig): this;
|
|
209
225
|
setExperimental(experimental: NonNullable<EcoPagesAppConfig['experimental']>): this;
|
|
210
226
|
private createAbsolutePaths;
|
|
227
|
+
private resolveSemanticTemplatePath;
|
|
211
228
|
private createIntegrationTemplatesExt;
|
|
212
229
|
private initializeProcessors;
|
|
230
|
+
private validateRuntimeCapabilities;
|
|
231
|
+
private validateRuntimeCapability;
|
|
232
|
+
private detectRuntimeEnvironment;
|
|
233
|
+
private getBunVersion;
|
|
234
|
+
private describeUnsupportedRuntimeTag;
|
|
235
|
+
private parseVersion;
|
|
236
|
+
private compareVersions;
|
|
213
237
|
/**
|
|
214
238
|
* Initializes default loaders that are required for EcoPages to function.
|
|
215
239
|
* This includes the eco-component-meta-plugin which auto-injects __eco metadata into component configs.
|
|
@@ -225,3 +249,4 @@ export declare class ConfigBuilder {
|
|
|
225
249
|
*/
|
|
226
250
|
build(): Promise<EcoPagesAppConfig>;
|
|
227
251
|
}
|
|
252
|
+
export {};
|