@depup/angular__build 21.2.2-depup.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/LICENSE +21 -0
- package/README.md +39 -0
- package/builders.json +34 -0
- package/changes.json +42 -0
- package/index.d.ts +8 -0
- package/index.js +25 -0
- package/index.js.map +1 -0
- package/package.json +177 -0
- package/private/index.d.ts +8 -0
- package/private/index.js +25 -0
- package/private/index.js.map +1 -0
- package/src/builders/application/build-action.d.ts +29 -0
- package/src/builders/application/build-action.js +355 -0
- package/src/builders/application/build-action.js.map +1 -0
- package/src/builders/application/chunk-optimizer.d.ts +21 -0
- package/src/builders/application/chunk-optimizer.js +278 -0
- package/src/builders/application/chunk-optimizer.js.map +1 -0
- package/src/builders/application/execute-build.d.ts +11 -0
- package/src/builders/application/execute-build.js +250 -0
- package/src/builders/application/execute-build.js.map +1 -0
- package/src/builders/application/execute-post-bundle.d.ts +27 -0
- package/src/builders/application/execute-post-bundle.js +136 -0
- package/src/builders/application/execute-post-bundle.js.map +1 -0
- package/src/builders/application/i18n.d.ts +31 -0
- package/src/builders/application/i18n.js +138 -0
- package/src/builders/application/i18n.js.map +1 -0
- package/src/builders/application/index.d.ts +32 -0
- package/src/builders/application/index.js +253 -0
- package/src/builders/application/index.js.map +1 -0
- package/src/builders/application/options.d.ts +214 -0
- package/src/builders/application/options.js +499 -0
- package/src/builders/application/options.js.map +1 -0
- package/src/builders/application/results.d.ts +73 -0
- package/src/builders/application/results.js +18 -0
- package/src/builders/application/results.js.map +1 -0
- package/src/builders/application/schema.d.ts +650 -0
- package/src/builders/application/schema.js +93 -0
- package/src/builders/application/schema.js.map +1 -0
- package/src/builders/application/schema.json +728 -0
- package/src/builders/application/setup-bundling.d.ts +25 -0
- package/src/builders/application/setup-bundling.js +104 -0
- package/src/builders/application/setup-bundling.js.map +1 -0
- package/src/builders/dev-server/builder.d.ts +31 -0
- package/src/builders/dev-server/builder.js +61 -0
- package/src/builders/dev-server/builder.js.map +1 -0
- package/src/builders/dev-server/index.d.ts +15 -0
- package/src/builders/dev-server/index.js +17 -0
- package/src/builders/dev-server/index.js.map +1 -0
- package/src/builders/dev-server/internal.d.ts +18 -0
- package/src/builders/dev-server/internal.js +28 -0
- package/src/builders/dev-server/internal.js.map +1 -0
- package/src/builders/dev-server/options.d.ts +51 -0
- package/src/builders/dev-server/options.js +104 -0
- package/src/builders/dev-server/options.js.map +1 -0
- package/src/builders/dev-server/output.d.ts +16 -0
- package/src/builders/dev-server/output.js +10 -0
- package/src/builders/dev-server/output.js.map +1 -0
- package/src/builders/dev-server/schema.d.ts +121 -0
- package/src/builders/dev-server/schema.js +5 -0
- package/src/builders/dev-server/schema.js.map +1 -0
- package/src/builders/dev-server/schema.json +138 -0
- package/src/builders/dev-server/vite/hmr.d.ts +25 -0
- package/src/builders/dev-server/vite/hmr.js +115 -0
- package/src/builders/dev-server/vite/hmr.js.map +1 -0
- package/src/builders/dev-server/vite/index.d.ts +21 -0
- package/src/builders/dev-server/vite/index.js +390 -0
- package/src/builders/dev-server/vite/index.js.map +1 -0
- package/src/builders/dev-server/vite/server.d.ts +15 -0
- package/src/builders/dev-server/vite/server.js +227 -0
- package/src/builders/dev-server/vite/server.js.map +1 -0
- package/src/builders/dev-server/vite/utils.d.ts +36 -0
- package/src/builders/dev-server/vite/utils.js +77 -0
- package/src/builders/dev-server/vite/utils.js.map +1 -0
- package/src/builders/extract-i18n/application-extraction.d.ts +18 -0
- package/src/builders/extract-i18n/application-extraction.js +132 -0
- package/src/builders/extract-i18n/application-extraction.js.map +1 -0
- package/src/builders/extract-i18n/builder.d.ts +14 -0
- package/src/builders/extract-i18n/builder.js +161 -0
- package/src/builders/extract-i18n/builder.js.map +1 -0
- package/src/builders/extract-i18n/index.d.ts +13 -0
- package/src/builders/extract-i18n/index.js +16 -0
- package/src/builders/extract-i18n/index.js.map +1 -0
- package/src/builders/extract-i18n/options.d.ts +33 -0
- package/src/builders/extract-i18n/options.js +86 -0
- package/src/builders/extract-i18n/options.js.map +1 -0
- package/src/builders/extract-i18n/schema.d.ts +53 -0
- package/src/builders/extract-i18n/schema.js +30 -0
- package/src/builders/extract-i18n/schema.js.map +1 -0
- package/src/builders/extract-i18n/schema.json +38 -0
- package/src/builders/karma/application_builder.d.ts +11 -0
- package/src/builders/karma/application_builder.js +324 -0
- package/src/builders/karma/application_builder.js.map +1 -0
- package/src/builders/karma/assets-middleware.d.ts +26 -0
- package/src/builders/karma/assets-middleware.js +66 -0
- package/src/builders/karma/assets-middleware.js.map +1 -0
- package/src/builders/karma/coverage.d.ts +9 -0
- package/src/builders/karma/coverage.js +32 -0
- package/src/builders/karma/coverage.js.map +1 -0
- package/src/builders/karma/find-tests.d.ts +9 -0
- package/src/builders/karma/find-tests.js +24 -0
- package/src/builders/karma/find-tests.js.map +1 -0
- package/src/builders/karma/index.d.ts +20 -0
- package/src/builders/karma/index.js +54 -0
- package/src/builders/karma/index.js.map +1 -0
- package/src/builders/karma/karma-config.d.ts +11 -0
- package/src/builders/karma/karma-config.js +80 -0
- package/src/builders/karma/karma-config.js.map +1 -0
- package/src/builders/karma/options.d.ts +42 -0
- package/src/builders/karma/options.js +44 -0
- package/src/builders/karma/options.js.map +1 -0
- package/src/builders/karma/polyfills/init_sourcemaps.js +10 -0
- package/src/builders/karma/polyfills/jasmine_global.js +18 -0
- package/src/builders/karma/polyfills/jasmine_global_cleanup.js +14 -0
- package/src/builders/karma/polyfills-plugin.d.ts +13 -0
- package/src/builders/karma/polyfills-plugin.js +75 -0
- package/src/builders/karma/polyfills-plugin.js.map +1 -0
- package/src/builders/karma/progress-reporter.d.ts +17 -0
- package/src/builders/karma/progress-reporter.js +76 -0
- package/src/builders/karma/progress-reporter.js.map +1 -0
- package/src/builders/karma/schema.d.ts +250 -0
- package/src/builders/karma/schema.js +16 -0
- package/src/builders/karma/schema.js.map +1 -0
- package/src/builders/karma/schema.json +348 -0
- package/src/builders/karma/utils.d.ts +17 -0
- package/src/builders/karma/utils.js +67 -0
- package/src/builders/karma/utils.js.map +1 -0
- package/src/builders/ng-packagr/builder.d.ts +19 -0
- package/src/builders/ng-packagr/builder.js +107 -0
- package/src/builders/ng-packagr/builder.js.map +1 -0
- package/src/builders/ng-packagr/index.d.ts +13 -0
- package/src/builders/ng-packagr/index.js +16 -0
- package/src/builders/ng-packagr/index.js.map +1 -0
- package/src/builders/ng-packagr/schema.d.ts +21 -0
- package/src/builders/ng-packagr/schema.js +5 -0
- package/src/builders/ng-packagr/schema.js.map +1 -0
- package/src/builders/ng-packagr/schema.json +26 -0
- package/src/builders/unit-test/builder.d.ts +15 -0
- package/src/builders/unit-test/builder.js +376 -0
- package/src/builders/unit-test/builder.js.map +1 -0
- package/src/builders/unit-test/index.d.ts +12 -0
- package/src/builders/unit-test/index.js +16 -0
- package/src/builders/unit-test/index.js.map +1 -0
- package/src/builders/unit-test/options.d.ts +53 -0
- package/src/builders/unit-test/options.js +119 -0
- package/src/builders/unit-test/options.js.map +1 -0
- package/src/builders/unit-test/runners/api.d.ts +65 -0
- package/src/builders/unit-test/runners/api.js +10 -0
- package/src/builders/unit-test/runners/api.js.map +1 -0
- package/src/builders/unit-test/runners/dependency-checker.d.ts +43 -0
- package/src/builders/unit-test/runners/dependency-checker.js +83 -0
- package/src/builders/unit-test/runners/dependency-checker.js.map +1 -0
- package/src/builders/unit-test/runners/karma/executor.d.ts +17 -0
- package/src/builders/unit-test/runners/karma/executor.js +164 -0
- package/src/builders/unit-test/runners/karma/executor.js.map +1 -0
- package/src/builders/unit-test/runners/karma/index.d.ts +13 -0
- package/src/builders/unit-test/runners/karma/index.js +44 -0
- package/src/builders/unit-test/runners/karma/index.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/browser-provider.d.ts +17 -0
- package/src/builders/unit-test/runners/vitest/browser-provider.js +174 -0
- package/src/builders/unit-test/runners/vitest/browser-provider.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/build-options.d.ts +11 -0
- package/src/builders/unit-test/runners/vitest/build-options.js +169 -0
- package/src/builders/unit-test/runners/vitest/build-options.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/configuration.d.ts +15 -0
- package/src/builders/unit-test/runners/vitest/configuration.js +57 -0
- package/src/builders/unit-test/runners/vitest/configuration.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/executor.d.ts +29 -0
- package/src/builders/unit-test/runners/vitest/executor.js +318 -0
- package/src/builders/unit-test/runners/vitest/executor.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/index.d.ts +13 -0
- package/src/builders/unit-test/runners/vitest/index.js +69 -0
- package/src/builders/unit-test/runners/vitest/index.js.map +1 -0
- package/src/builders/unit-test/runners/vitest/plugins.d.ts +32 -0
- package/src/builders/unit-test/runners/vitest/plugins.js +382 -0
- package/src/builders/unit-test/runners/vitest/plugins.js.map +1 -0
- package/src/builders/unit-test/schema.d.ts +229 -0
- package/src/builders/unit-test/schema.js +25 -0
- package/src/builders/unit-test/schema.js.map +1 -0
- package/src/builders/unit-test/schema.json +280 -0
- package/src/builders/unit-test/test-discovery.d.ts +47 -0
- package/src/builders/unit-test/test-discovery.js +280 -0
- package/src/builders/unit-test/test-discovery.js.map +1 -0
- package/src/index.d.ts +16 -0
- package/src/index.js +25 -0
- package/src/index.js.map +1 -0
- package/src/private.d.ts +57 -0
- package/src/private.js +104 -0
- package/src/private.js.map +1 -0
- package/src/tools/angular/angular-host.d.ts +27 -0
- package/src/tools/angular/angular-host.js +164 -0
- package/src/tools/angular/angular-host.js.map +1 -0
- package/src/tools/angular/compilation/angular-compilation.d.ts +45 -0
- package/src/tools/angular/compilation/angular-compilation.js +104 -0
- package/src/tools/angular/compilation/angular-compilation.js.map +1 -0
- package/src/tools/angular/compilation/aot-compilation.d.ts +26 -0
- package/src/tools/angular/compilation/aot-compilation.js +341 -0
- package/src/tools/angular/compilation/aot-compilation.js.map +1 -0
- package/src/tools/angular/compilation/factory.d.ts +17 -0
- package/src/tools/angular/compilation/factory.js +67 -0
- package/src/tools/angular/compilation/factory.js.map +1 -0
- package/src/tools/angular/compilation/hmr-candidates.d.ts +22 -0
- package/src/tools/angular/compilation/hmr-candidates.js +270 -0
- package/src/tools/angular/compilation/hmr-candidates.js.map +1 -0
- package/src/tools/angular/compilation/index.d.ts +10 -0
- package/src/tools/angular/compilation/index.js +18 -0
- package/src/tools/angular/compilation/index.js.map +1 -0
- package/src/tools/angular/compilation/jit-compilation.d.ts +23 -0
- package/src/tools/angular/compilation/jit-compilation.js +150 -0
- package/src/tools/angular/compilation/jit-compilation.js.map +1 -0
- package/src/tools/angular/compilation/noop-compilation.d.ts +20 -0
- package/src/tools/angular/compilation/noop-compilation.js +27 -0
- package/src/tools/angular/compilation/noop-compilation.js.map +1 -0
- package/src/tools/angular/compilation/parallel-compilation.d.ts +44 -0
- package/src/tools/angular/compilation/parallel-compilation.js +119 -0
- package/src/tools/angular/compilation/parallel-compilation.js.map +1 -0
- package/src/tools/angular/compilation/parallel-worker.d.ts +39 -0
- package/src/tools/angular/compilation/parallel-worker.js +102 -0
- package/src/tools/angular/compilation/parallel-worker.js.map +1 -0
- package/src/tools/angular/transformers/jit-bootstrap-transformer.d.ts +10 -0
- package/src/tools/angular/transformers/jit-bootstrap-transformer.js +181 -0
- package/src/tools/angular/transformers/jit-bootstrap-transformer.js.map +1 -0
- package/src/tools/angular/transformers/jit-resource-transformer.d.ts +17 -0
- package/src/tools/angular/transformers/jit-resource-transformer.js +187 -0
- package/src/tools/angular/transformers/jit-resource-transformer.js.map +1 -0
- package/src/tools/angular/transformers/lazy-routes-transformer.d.ts +39 -0
- package/src/tools/angular/transformers/lazy-routes-transformer.js +164 -0
- package/src/tools/angular/transformers/lazy-routes-transformer.js.map +1 -0
- package/src/tools/angular/transformers/web-worker-transformer.d.ts +17 -0
- package/src/tools/angular/transformers/web-worker-transformer.js +94 -0
- package/src/tools/angular/transformers/web-worker-transformer.js.map +1 -0
- package/src/tools/angular/uri.d.ts +54 -0
- package/src/tools/angular/uri.js +76 -0
- package/src/tools/angular/uri.js.map +1 -0
- package/src/tools/babel/plugins/add-code-coverage.d.ts +14 -0
- package/src/tools/babel/plugins/add-code-coverage.js +45 -0
- package/src/tools/babel/plugins/add-code-coverage.js.map +1 -0
- package/src/tools/babel/plugins/adjust-static-class-members.d.ts +25 -0
- package/src/tools/babel/plugins/adjust-static-class-members.js +349 -0
- package/src/tools/babel/plugins/adjust-static-class-members.js.map +1 -0
- package/src/tools/babel/plugins/adjust-typescript-enums.d.ts +21 -0
- package/src/tools/babel/plugins/adjust-typescript-enums.js +113 -0
- package/src/tools/babel/plugins/adjust-typescript-enums.js.map +1 -0
- package/src/tools/babel/plugins/elide-angular-metadata.d.ts +21 -0
- package/src/tools/babel/plugins/elide-angular-metadata.js +110 -0
- package/src/tools/babel/plugins/elide-angular-metadata.js.map +1 -0
- package/src/tools/babel/plugins/index.d.ts +11 -0
- package/src/tools/babel/plugins/index.js +22 -0
- package/src/tools/babel/plugins/index.js.map +1 -0
- package/src/tools/babel/plugins/pure-toplevel-functions.d.ts +13 -0
- package/src/tools/babel/plugins/pure-toplevel-functions.js +128 -0
- package/src/tools/babel/plugins/pure-toplevel-functions.js.map +1 -0
- package/src/tools/babel/plugins/types.d.ts +20 -0
- package/src/tools/babel/typings.d.ts +21 -0
- package/src/tools/esbuild/angular/compilation-state.d.ts +15 -0
- package/src/tools/esbuild/angular/compilation-state.js +45 -0
- package/src/tools/esbuild/angular/compilation-state.js.map +1 -0
- package/src/tools/esbuild/angular/compiler-plugin.d.ts +34 -0
- package/src/tools/esbuild/angular/compiler-plugin.js +631 -0
- package/src/tools/esbuild/angular/compiler-plugin.js.map +1 -0
- package/src/tools/esbuild/angular/component-stylesheets.d.ts +49 -0
- package/src/tools/esbuild/angular/component-stylesheets.js +222 -0
- package/src/tools/esbuild/angular/component-stylesheets.js.map +1 -0
- package/src/tools/esbuild/angular/diagnostics.d.ts +15 -0
- package/src/tools/esbuild/angular/diagnostics.js +72 -0
- package/src/tools/esbuild/angular/diagnostics.js.map +1 -0
- package/src/tools/esbuild/angular/file-reference-tracker.d.ts +17 -0
- package/src/tools/esbuild/angular/file-reference-tracker.js +58 -0
- package/src/tools/esbuild/angular/file-reference-tracker.js.map +1 -0
- package/src/tools/esbuild/angular/jit-plugin-callbacks.d.ts +23 -0
- package/src/tools/esbuild/angular/jit-plugin-callbacks.js +120 -0
- package/src/tools/esbuild/angular/jit-plugin-callbacks.js.map +1 -0
- package/src/tools/esbuild/angular/rewrite-bazel-paths.d.ts +8 -0
- package/src/tools/esbuild/angular/rewrite-bazel-paths.js +28 -0
- package/src/tools/esbuild/angular/rewrite-bazel-paths.js.map +1 -0
- package/src/tools/esbuild/angular/source-file-cache.d.ts +18 -0
- package/src/tools/esbuild/angular/source-file-cache.js +80 -0
- package/src/tools/esbuild/angular/source-file-cache.js.map +1 -0
- package/src/tools/esbuild/angular-localize-init-warning-plugin.d.ts +16 -0
- package/src/tools/esbuild/angular-localize-init-warning-plugin.js +50 -0
- package/src/tools/esbuild/angular-localize-init-warning-plugin.js.map +1 -0
- package/src/tools/esbuild/application-code-bundle.d.ts +19 -0
- package/src/tools/esbuild/application-code-bundle.js +542 -0
- package/src/tools/esbuild/application-code-bundle.js.map +1 -0
- package/src/tools/esbuild/budget-stats.d.ts +19 -0
- package/src/tools/esbuild/budget-stats.js +67 -0
- package/src/tools/esbuild/budget-stats.js.map +1 -0
- package/src/tools/esbuild/bundler-context.d.ts +80 -0
- package/src/tools/esbuild/bundler-context.js +399 -0
- package/src/tools/esbuild/bundler-context.js.map +1 -0
- package/src/tools/esbuild/bundler-execution-result.d.ts +95 -0
- package/src/tools/esbuild/bundler-execution-result.js +149 -0
- package/src/tools/esbuild/bundler-execution-result.js.map +1 -0
- package/src/tools/esbuild/cache.d.ts +93 -0
- package/src/tools/esbuild/cache.js +100 -0
- package/src/tools/esbuild/cache.js.map +1 -0
- package/src/tools/esbuild/commonjs-checker.d.ts +28 -0
- package/src/tools/esbuild/commonjs-checker.js +151 -0
- package/src/tools/esbuild/commonjs-checker.js.map +1 -0
- package/src/tools/esbuild/compiler-plugin-options.d.ts +14 -0
- package/src/tools/esbuild/compiler-plugin-options.js +30 -0
- package/src/tools/esbuild/compiler-plugin-options.js.map +1 -0
- package/src/tools/esbuild/external-packages-plugin.d.ts +18 -0
- package/src/tools/esbuild/external-packages-plugin.js +97 -0
- package/src/tools/esbuild/external-packages-plugin.js.map +1 -0
- package/src/tools/esbuild/global-scripts.d.ts +16 -0
- package/src/tools/esbuild/global-scripts.js +153 -0
- package/src/tools/esbuild/global-scripts.js.map +1 -0
- package/src/tools/esbuild/global-styles.d.ts +10 -0
- package/src/tools/esbuild/global-styles.js +79 -0
- package/src/tools/esbuild/global-styles.js.map +1 -0
- package/src/tools/esbuild/i18n-inliner-worker.d.ts +77 -0
- package/src/tools/esbuild/i18n-inliner-worker.js +184 -0
- package/src/tools/esbuild/i18n-inliner-worker.js.map +1 -0
- package/src/tools/esbuild/i18n-inliner.d.ts +58 -0
- package/src/tools/esbuild/i18n-inliner.js +266 -0
- package/src/tools/esbuild/i18n-inliner.js.map +1 -0
- package/src/tools/esbuild/i18n-locale-plugin.d.ts +22 -0
- package/src/tools/esbuild/i18n-locale-plugin.js +139 -0
- package/src/tools/esbuild/i18n-locale-plugin.js.map +1 -0
- package/src/tools/esbuild/index-html-generator.d.ts +15 -0
- package/src/tools/esbuild/index-html-generator.js +91 -0
- package/src/tools/esbuild/index-html-generator.js.map +1 -0
- package/src/tools/esbuild/javascript-transformer-worker.d.ts +20 -0
- package/src/tools/esbuild/javascript-transformer-worker.js +162 -0
- package/src/tools/esbuild/javascript-transformer-worker.js.map +1 -0
- package/src/tools/esbuild/javascript-transformer.d.ts +54 -0
- package/src/tools/esbuild/javascript-transformer.js +153 -0
- package/src/tools/esbuild/javascript-transformer.js.map +1 -0
- package/src/tools/esbuild/license-extractor.d.ts +25 -0
- package/src/tools/esbuild/license-extractor.js +158 -0
- package/src/tools/esbuild/license-extractor.js.map +1 -0
- package/src/tools/esbuild/lmdb-cache-store.d.ts +18 -0
- package/src/tools/esbuild/lmdb-cache-store.js +55 -0
- package/src/tools/esbuild/lmdb-cache-store.js.map +1 -0
- package/src/tools/esbuild/load-result-cache.d.ts +21 -0
- package/src/tools/esbuild/load-result-cache.js +76 -0
- package/src/tools/esbuild/load-result-cache.js.map +1 -0
- package/src/tools/esbuild/loader-import-attribute-plugin.d.ts +9 -0
- package/src/tools/esbuild/loader-import-attribute-plugin.js +42 -0
- package/src/tools/esbuild/loader-import-attribute-plugin.js.map +1 -0
- package/src/tools/esbuild/profiling.d.ts +11 -0
- package/src/tools/esbuild/profiling.js +78 -0
- package/src/tools/esbuild/profiling.js.map +1 -0
- package/src/tools/esbuild/rxjs-esm-resolution-plugin.d.ts +18 -0
- package/src/tools/esbuild/rxjs-esm-resolution-plugin.js +44 -0
- package/src/tools/esbuild/rxjs-esm-resolution-plugin.js.map +1 -0
- package/src/tools/esbuild/server-bundle-metadata-plugin.d.ts +22 -0
- package/src/tools/esbuild/server-bundle-metadata-plugin.js +37 -0
- package/src/tools/esbuild/server-bundle-metadata-plugin.js.map +1 -0
- package/src/tools/esbuild/sourcemap-ignorelist-plugin.d.ts +17 -0
- package/src/tools/esbuild/sourcemap-ignorelist-plugin.js +73 -0
- package/src/tools/esbuild/sourcemap-ignorelist-plugin.js.map +1 -0
- package/src/tools/esbuild/stylesheets/bundle-options.d.ts +41 -0
- package/src/tools/esbuild/stylesheets/bundle-options.js +66 -0
- package/src/tools/esbuild/stylesheets/bundle-options.js.map +1 -0
- package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.d.ts +25 -0
- package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.js +57 -0
- package/src/tools/esbuild/stylesheets/css-inline-fonts-plugin.js.map +1 -0
- package/src/tools/esbuild/stylesheets/css-language.d.ts +9 -0
- package/src/tools/esbuild/stylesheets/css-language.js +16 -0
- package/src/tools/esbuild/stylesheets/css-language.js.map +1 -0
- package/src/tools/esbuild/stylesheets/css-resource-plugin.d.ts +18 -0
- package/src/tools/esbuild/stylesheets/css-resource-plugin.js +114 -0
- package/src/tools/esbuild/stylesheets/css-resource-plugin.js.map +1 -0
- package/src/tools/esbuild/stylesheets/less-language.d.ts +9 -0
- package/src/tools/esbuild/stylesheets/less-language.js +161 -0
- package/src/tools/esbuild/stylesheets/less-language.js.map +1 -0
- package/src/tools/esbuild/stylesheets/sass-language.d.ts +10 -0
- package/src/tools/esbuild/stylesheets/sass-language.js +231 -0
- package/src/tools/esbuild/stylesheets/sass-language.js.map +1 -0
- package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.d.ts +77 -0
- package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.js +333 -0
- package/src/tools/esbuild/stylesheets/stylesheet-plugin-factory.js.map +1 -0
- package/src/tools/esbuild/utils.d.ts +58 -0
- package/src/tools/esbuild/utils.js +394 -0
- package/src/tools/esbuild/utils.js.map +1 -0
- package/src/tools/esbuild/virtual-module-plugin.d.ts +33 -0
- package/src/tools/esbuild/virtual-module-plugin.js +43 -0
- package/src/tools/esbuild/virtual-module-plugin.js.map +1 -0
- package/src/tools/esbuild/wasm-plugin.d.ts +28 -0
- package/src/tools/esbuild/wasm-plugin.js +211 -0
- package/src/tools/esbuild/wasm-plugin.js.map +1 -0
- package/src/tools/esbuild/wasm.d.ts +25 -0
- package/src/tools/esbuild/watcher.d.ts +25 -0
- package/src/tools/esbuild/watcher.js +119 -0
- package/src/tools/esbuild/watcher.js.map +1 -0
- package/src/tools/sass/lexer.d.ts +18 -0
- package/src/tools/sass/lexer.js +172 -0
- package/src/tools/sass/lexer.js.map +1 -0
- package/src/tools/sass/rebasing-importer.d.ts +101 -0
- package/src/tools/sass/rebasing-importer.js +333 -0
- package/src/tools/sass/rebasing-importer.js.map +1 -0
- package/src/tools/sass/sass-service.d.ts +67 -0
- package/src/tools/sass/sass-service.js +242 -0
- package/src/tools/sass/sass-service.js.map +1 -0
- package/src/tools/sass/worker.d.ts +63 -0
- package/src/tools/sass/worker.js +202 -0
- package/src/tools/sass/worker.js.map +1 -0
- package/src/tools/vite/middlewares/assets-middleware.d.ts +17 -0
- package/src/tools/vite/middlewares/assets-middleware.js +205 -0
- package/src/tools/vite/middlewares/assets-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/base-middleware.d.ts +17 -0
- package/src/tools/vite/middlewares/base-middleware.js +44 -0
- package/src/tools/vite/middlewares/base-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/chrome-devtools-middleware.d.ts +9 -0
- package/src/tools/vite/middlewares/chrome-devtools-middleware.js +53 -0
- package/src/tools/vite/middlewares/chrome-devtools-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/component-middleware.d.ts +9 -0
- package/src/tools/vite/middlewares/component-middleware.js +36 -0
- package/src/tools/vite/middlewares/component-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/headers-middleware.d.ts +19 -0
- package/src/tools/vite/middlewares/headers-middleware.js +35 -0
- package/src/tools/vite/middlewares/headers-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/host-check-middleware.d.ts +9 -0
- package/src/tools/vite/middlewares/host-check-middleware.js +61 -0
- package/src/tools/vite/middlewares/host-check-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/html-fallback-middleware.d.ts +10 -0
- package/src/tools/vite/middlewares/html-fallback-middleware.js +42 -0
- package/src/tools/vite/middlewares/html-fallback-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/index-html-middleware.d.ts +10 -0
- package/src/tools/vite/middlewares/index-html-middleware.js +47 -0
- package/src/tools/vite/middlewares/index-html-middleware.js.map +1 -0
- package/src/tools/vite/middlewares/index.d.ts +16 -0
- package/src/tools/vite/middlewares/index.js +30 -0
- package/src/tools/vite/middlewares/index.js.map +1 -0
- package/src/tools/vite/middlewares/ssr-middleware.d.ts +10 -0
- package/src/tools/vite/middlewares/ssr-middleware.js +129 -0
- package/src/tools/vite/middlewares/ssr-middleware.js.map +1 -0
- package/src/tools/vite/plugins/angular-memory-plugin.d.ts +18 -0
- package/src/tools/vite/plugins/angular-memory-plugin.js +149 -0
- package/src/tools/vite/plugins/angular-memory-plugin.js.map +1 -0
- package/src/tools/vite/plugins/id-prefix-plugin.d.ts +9 -0
- package/src/tools/vite/plugins/id-prefix-plugin.js +46 -0
- package/src/tools/vite/plugins/id-prefix-plugin.js.map +1 -0
- package/src/tools/vite/plugins/index.d.ts +12 -0
- package/src/tools/vite/plugins/index.js +22 -0
- package/src/tools/vite/plugins/index.js.map +1 -0
- package/src/tools/vite/plugins/setup-middlewares-plugin.d.ts +45 -0
- package/src/tools/vite/plugins/setup-middlewares-plugin.js +108 -0
- package/src/tools/vite/plugins/setup-middlewares-plugin.js.map +1 -0
- package/src/tools/vite/plugins/ssr-ssl-plugin.d.ts +9 -0
- package/src/tools/vite/plugins/ssr-ssl-plugin.js +92 -0
- package/src/tools/vite/plugins/ssr-ssl-plugin.js.map +1 -0
- package/src/tools/vite/plugins/ssr-transform-plugin.d.ts +9 -0
- package/src/tools/vite/plugins/ssr-transform-plugin.js +68 -0
- package/src/tools/vite/plugins/ssr-transform-plugin.js.map +1 -0
- package/src/tools/vite/utils.d.ts +45 -0
- package/src/tools/vite/utils.js +106 -0
- package/src/tools/vite/utils.js.map +1 -0
- package/src/utils/bundle-calculator.d.ts +45 -0
- package/src/utils/bundle-calculator.js +305 -0
- package/src/utils/bundle-calculator.js.map +1 -0
- package/src/utils/check-port.d.ts +8 -0
- package/src/utils/check-port.js +88 -0
- package/src/utils/check-port.js.map +1 -0
- package/src/utils/color.d.ts +9 -0
- package/src/utils/color.js +28 -0
- package/src/utils/color.js.map +1 -0
- package/src/utils/delete-output-dir.d.ts +11 -0
- package/src/utils/delete-output-dir.js +46 -0
- package/src/utils/delete-output-dir.js.map +1 -0
- package/src/utils/environment-options.d.ts +64 -0
- package/src/utils/environment-options.js +150 -0
- package/src/utils/environment-options.js.map +1 -0
- package/src/utils/error.d.ts +10 -0
- package/src/utils/error.js +21 -0
- package/src/utils/error.js.map +1 -0
- package/src/utils/format-bytes.d.ts +8 -0
- package/src/utils/format-bytes.js +22 -0
- package/src/utils/format-bytes.js.map +1 -0
- package/src/utils/i18n-options.d.ts +36 -0
- package/src/utils/i18n-options.js +208 -0
- package/src/utils/i18n-options.js.map +1 -0
- package/src/utils/index-file/add-event-dispatch-contract.d.ts +8 -0
- package/src/utils/index-file/add-event-dispatch-contract.js +28 -0
- package/src/utils/index-file/add-event-dispatch-contract.js.map +1 -0
- package/src/utils/index-file/augment-index-html.d.ts +40 -0
- package/src/utils/index-file/augment-index-html.js +300 -0
- package/src/utils/index-file/augment-index-html.js.map +1 -0
- package/src/utils/index-file/auto-csp.d.ts +23 -0
- package/src/utils/index-file/auto-csp.js +295 -0
- package/src/utils/index-file/auto-csp.js.map +1 -0
- package/src/utils/index-file/html-rewriting-stream.d.ts +15 -0
- package/src/utils/index-file/html-rewriting-stream.js +60 -0
- package/src/utils/index-file/html-rewriting-stream.js.map +1 -0
- package/src/utils/index-file/index-html-generator.d.ts +61 -0
- package/src/utils/index-file/index-html-generator.js +154 -0
- package/src/utils/index-file/index-html-generator.js.map +1 -0
- package/src/utils/index-file/inline-critical-css.d.ts +25 -0
- package/src/utils/index-file/inline-critical-css.js +193 -0
- package/src/utils/index-file/inline-critical-css.js.map +1 -0
- package/src/utils/index-file/inline-fonts.d.ts +23 -0
- package/src/utils/index-file/inline-fonts.js +240 -0
- package/src/utils/index-file/inline-fonts.js.map +1 -0
- package/src/utils/index-file/ngcm-attribute.d.ts +15 -0
- package/src/utils/index-file/ngcm-attribute.js +38 -0
- package/src/utils/index-file/ngcm-attribute.js.map +1 -0
- package/src/utils/index-file/nonce.d.ts +12 -0
- package/src/utils/index-file/nonce.js +54 -0
- package/src/utils/index-file/nonce.js.map +1 -0
- package/src/utils/index-file/valid-self-closing-tags.d.ts +9 -0
- package/src/utils/index-file/valid-self-closing-tags.js +90 -0
- package/src/utils/index-file/valid-self-closing-tags.js.map +1 -0
- package/src/utils/index.d.ts +11 -0
- package/src/utils/index.js +28 -0
- package/src/utils/index.js.map +1 -0
- package/src/utils/load-esm.d.ts +20 -0
- package/src/utils/load-esm.js +31 -0
- package/src/utils/load-esm.js.map +1 -0
- package/src/utils/load-proxy-config.d.ts +8 -0
- package/src/utils/load-proxy-config.js +186 -0
- package/src/utils/load-proxy-config.js.map +1 -0
- package/src/utils/load-translations.d.ts +16 -0
- package/src/utils/load-translations.js +93 -0
- package/src/utils/load-translations.js.map +1 -0
- package/src/utils/normalize-asset-patterns.d.ts +11 -0
- package/src/utils/normalize-asset-patterns.js +111 -0
- package/src/utils/normalize-asset-patterns.js.map +1 -0
- package/src/utils/normalize-cache.d.ts +16 -0
- package/src/utils/normalize-cache.js +46 -0
- package/src/utils/normalize-cache.js.map +1 -0
- package/src/utils/normalize-optimization.d.ts +13 -0
- package/src/utils/normalize-optimization.js +42 -0
- package/src/utils/normalize-optimization.js.map +1 -0
- package/src/utils/normalize-source-maps.d.ts +9 -0
- package/src/utils/normalize-source-maps.js +25 -0
- package/src/utils/normalize-source-maps.js.map +1 -0
- package/src/utils/path.d.ts +29 -0
- package/src/utils/path.js +38 -0
- package/src/utils/path.js.map +1 -0
- package/src/utils/postcss-configuration.d.ts +20 -0
- package/src/utils/postcss-configuration.js +86 -0
- package/src/utils/postcss-configuration.js.map +1 -0
- package/src/utils/project-metadata.d.ts +21 -0
- package/src/utils/project-metadata.js +32 -0
- package/src/utils/project-metadata.js.map +1 -0
- package/src/utils/purge-cache.d.ts +10 -0
- package/src/utils/purge-cache.js +40 -0
- package/src/utils/purge-cache.js.map +1 -0
- package/src/utils/resolve-assets.d.ts +18 -0
- package/src/utils/resolve-assets.js +35 -0
- package/src/utils/resolve-assets.js.map +1 -0
- package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.d.ts +18 -0
- package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js +125 -0
- package/src/utils/server-rendering/esm-in-memory-loader/loader-hooks.js.map +1 -0
- package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.d.ts +8 -0
- package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js +14 -0
- package/src/utils/server-rendering/esm-in-memory-loader/register-hooks.js.map +1 -0
- package/src/utils/server-rendering/esm-in-memory-loader/utils.d.ts +8 -0
- package/src/utils/server-rendering/esm-in-memory-loader/utils.js +14 -0
- package/src/utils/server-rendering/esm-in-memory-loader/utils.js.map +1 -0
- package/src/utils/server-rendering/fetch-patch.d.ts +8 -0
- package/src/utils/server-rendering/fetch-patch.js +64 -0
- package/src/utils/server-rendering/fetch-patch.js.map +1 -0
- package/src/utils/server-rendering/launch-server.d.ts +14 -0
- package/src/utils/server-rendering/launch-server.js +96 -0
- package/src/utils/server-rendering/launch-server.js.map +1 -0
- package/src/utils/server-rendering/load-esm-from-memory.d.ts +27 -0
- package/src/utils/server-rendering/load-esm-from-memory.js +26 -0
- package/src/utils/server-rendering/load-esm-from-memory.js.map +1 -0
- package/src/utils/server-rendering/manifest.d.ts +58 -0
- package/src/utils/server-rendering/manifest.js +177 -0
- package/src/utils/server-rendering/manifest.js.map +1 -0
- package/src/utils/server-rendering/models.d.ts +28 -0
- package/src/utils/server-rendering/models.js +22 -0
- package/src/utils/server-rendering/models.js.map +1 -0
- package/src/utils/server-rendering/prerender.d.ts +39 -0
- package/src/utils/server-rendering/prerender.js +246 -0
- package/src/utils/server-rendering/prerender.js.map +1 -0
- package/src/utils/server-rendering/render-worker.d.ts +23 -0
- package/src/utils/server-rendering/render-worker.js +79 -0
- package/src/utils/server-rendering/render-worker.js.map +1 -0
- package/src/utils/server-rendering/routes-extractor-worker.d.ts +16 -0
- package/src/utils/server-rendering/routes-extractor-worker.js +73 -0
- package/src/utils/server-rendering/routes-extractor-worker.js.map +1 -0
- package/src/utils/server-rendering/utils.d.ts +21 -0
- package/src/utils/server-rendering/utils.js +43 -0
- package/src/utils/server-rendering/utils.js.map +1 -0
- package/src/utils/service-worker.d.ts +23 -0
- package/src/utils/service-worker.js +215 -0
- package/src/utils/service-worker.js.map +1 -0
- package/src/utils/stats-table.d.ts +20 -0
- package/src/utils/stats-table.js +205 -0
- package/src/utils/stats-table.js.map +1 -0
- package/src/utils/supported-browsers.d.ts +10 -0
- package/src/utils/supported-browsers.js +57 -0
- package/src/utils/supported-browsers.js.map +1 -0
- package/src/utils/test-files.d.ts +17 -0
- package/src/utils/test-files.js +83 -0
- package/src/utils/test-files.js.map +1 -0
- package/src/utils/tty.d.ts +8 -0
- package/src/utils/tty.js +23 -0
- package/src/utils/tty.js.map +1 -0
- package/src/utils/url.d.ts +81 -0
- package/src/utils/url.js +122 -0
- package/src/utils/url.js.map +1 -0
- package/src/utils/version.d.ts +8 -0
- package/src/utils/version.js +58 -0
- package/src/utils/version.js.map +1 -0
- package/src/utils/worker-pool.d.ts +12 -0
- package/src/utils/worker-pool.js +46 -0
- package/src/utils/worker-pool.js.map +1 -0
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.prerenderPages = prerenderPages;
|
|
11
|
+
const promises_1 = require("node:fs/promises");
|
|
12
|
+
const node_path_1 = require("node:path");
|
|
13
|
+
const schema_1 = require("../../builders/application/schema");
|
|
14
|
+
const bundler_context_1 = require("../../tools/esbuild/bundler-context");
|
|
15
|
+
const error_1 = require("../error");
|
|
16
|
+
const path_1 = require("../path");
|
|
17
|
+
const url_1 = require("../url");
|
|
18
|
+
const worker_pool_1 = require("../worker-pool");
|
|
19
|
+
const utils_1 = require("./esm-in-memory-loader/utils");
|
|
20
|
+
const manifest_1 = require("./manifest");
|
|
21
|
+
const models_1 = require("./models");
|
|
22
|
+
const utils_2 = require("./utils");
|
|
23
|
+
async function prerenderPages(workspaceRoot, baseHref, appShellOptions, prerenderOptions, outputFiles, assets, outputMode, sourcemap = false, maxThreads = 1) {
|
|
24
|
+
const outputFilesForWorker = {};
|
|
25
|
+
const serverBundlesSourceMaps = new Map();
|
|
26
|
+
const warnings = [];
|
|
27
|
+
const errors = [];
|
|
28
|
+
for (const { text, path, type } of outputFiles) {
|
|
29
|
+
if (type !== bundler_context_1.BuildOutputFileType.ServerApplication && type !== bundler_context_1.BuildOutputFileType.ServerRoot) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
// Contains the server runnable application code
|
|
33
|
+
if ((0, node_path_1.extname)(path) === '.map') {
|
|
34
|
+
serverBundlesSourceMaps.set(path.slice(0, -4), text);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
outputFilesForWorker[path] = text;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// Inline sourcemap into JS file. This is needed to make Node.js resolve sourcemaps
|
|
41
|
+
// when using `--enable-source-maps` when using in memory files.
|
|
42
|
+
for (const [filePath, map] of serverBundlesSourceMaps) {
|
|
43
|
+
const jsContent = outputFilesForWorker[filePath];
|
|
44
|
+
if (jsContent) {
|
|
45
|
+
outputFilesForWorker[filePath] =
|
|
46
|
+
jsContent +
|
|
47
|
+
`\n//# sourceMappingURL=` +
|
|
48
|
+
`data:application/json;base64,${Buffer.from(map).toString('base64')}`;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
serverBundlesSourceMaps.clear();
|
|
52
|
+
const assetsReversed = {};
|
|
53
|
+
for (const { source, destination } of assets) {
|
|
54
|
+
// Assets are not stored with baseHref when using i18n,
|
|
55
|
+
// we append the base href so that requests are resolved correctly.
|
|
56
|
+
assetsReversed[(0, url_1.joinUrlParts)(baseHref, (0, path_1.toPosixPath)(destination))] = source;
|
|
57
|
+
}
|
|
58
|
+
// Get routes to prerender
|
|
59
|
+
const { errors: extractionErrors, serializedRouteTree: serializableRouteTreeNode, appShellRoute, } = await getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, assetsReversed, appShellOptions, prerenderOptions, sourcemap, outputMode).catch((err) => {
|
|
60
|
+
return {
|
|
61
|
+
errors: [`An error occurred while extracting routes.\n\n${err.message ?? err.stack ?? err}`],
|
|
62
|
+
serializedRouteTree: [],
|
|
63
|
+
appShellRoute: undefined,
|
|
64
|
+
};
|
|
65
|
+
});
|
|
66
|
+
errors.push(...extractionErrors);
|
|
67
|
+
const serializableRouteTreeNodeForPrerender = [];
|
|
68
|
+
for (const metadata of serializableRouteTreeNode) {
|
|
69
|
+
if (outputMode !== schema_1.OutputMode.Static && metadata.redirectTo) {
|
|
70
|
+
// Skip redirects if output mode is not static.
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
if (metadata.route.includes('*')) {
|
|
74
|
+
// Skip catch all routes from prerender.
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
switch (metadata.renderMode) {
|
|
78
|
+
case undefined: /* Legacy building mode */
|
|
79
|
+
case models_1.RouteRenderMode.Prerender:
|
|
80
|
+
serializableRouteTreeNodeForPrerender.push(metadata);
|
|
81
|
+
break;
|
|
82
|
+
case models_1.RouteRenderMode.Server:
|
|
83
|
+
if (outputMode === schema_1.OutputMode.Static) {
|
|
84
|
+
errors.push(`Route '${metadata.route}' is configured with server render mode, but the build 'outputMode' is set to 'static'.`);
|
|
85
|
+
}
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (!serializableRouteTreeNodeForPrerender.length || errors.length > 0) {
|
|
90
|
+
return {
|
|
91
|
+
errors,
|
|
92
|
+
warnings,
|
|
93
|
+
output: {},
|
|
94
|
+
serializableRouteTreeNode,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
// Add the extracted routes to the manifest file.
|
|
98
|
+
// We could re-generate it from the start, but that would require a number of options to be passed down.
|
|
99
|
+
const manifest = outputFilesForWorker[manifest_1.SERVER_APP_MANIFEST_FILENAME];
|
|
100
|
+
if (manifest) {
|
|
101
|
+
outputFilesForWorker[manifest_1.SERVER_APP_MANIFEST_FILENAME] = manifest.replace('routes: undefined,', `routes: ${JSON.stringify(serializableRouteTreeNodeForPrerender, undefined, 2)},`);
|
|
102
|
+
}
|
|
103
|
+
// Render routes
|
|
104
|
+
const { errors: renderingErrors, output } = await renderPages(baseHref, sourcemap, serializableRouteTreeNodeForPrerender, maxThreads, workspaceRoot, outputFilesForWorker, assetsReversed, outputMode, appShellRoute ?? appShellOptions?.route);
|
|
105
|
+
errors.push(...renderingErrors);
|
|
106
|
+
return {
|
|
107
|
+
errors,
|
|
108
|
+
warnings,
|
|
109
|
+
output,
|
|
110
|
+
serializableRouteTreeNode,
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
async function renderPages(baseHref, sourcemap, serializableRouteTreeNode, maxThreads, workspaceRoot, outputFilesForWorker, assetFilesForWorker, outputMode, appShellRoute) {
|
|
114
|
+
const output = {};
|
|
115
|
+
const errors = [];
|
|
116
|
+
const workerExecArgv = [utils_1.IMPORT_EXEC_ARGV];
|
|
117
|
+
if (sourcemap) {
|
|
118
|
+
workerExecArgv.push('--enable-source-maps');
|
|
119
|
+
}
|
|
120
|
+
const renderWorker = new worker_pool_1.WorkerPool({
|
|
121
|
+
filename: require.resolve('./render-worker'),
|
|
122
|
+
maxThreads: Math.min(serializableRouteTreeNode.length, maxThreads),
|
|
123
|
+
workerData: {
|
|
124
|
+
workspaceRoot,
|
|
125
|
+
outputFiles: outputFilesForWorker,
|
|
126
|
+
assetFiles: assetFilesForWorker,
|
|
127
|
+
outputMode,
|
|
128
|
+
hasSsrEntry: !!outputFilesForWorker['server.mjs'],
|
|
129
|
+
},
|
|
130
|
+
execArgv: workerExecArgv,
|
|
131
|
+
env: {
|
|
132
|
+
...process.env,
|
|
133
|
+
'NG_ALLOWED_HOSTS': 'localhost',
|
|
134
|
+
},
|
|
135
|
+
});
|
|
136
|
+
try {
|
|
137
|
+
const renderingPromises = [];
|
|
138
|
+
const appShellRouteWithLeadingSlash = appShellRoute && (0, url_1.addLeadingSlash)(appShellRoute);
|
|
139
|
+
const baseHrefPathnameWithLeadingSlash = new URL(baseHref, 'http://localhost').pathname;
|
|
140
|
+
for (const { route, redirectTo } of serializableRouteTreeNode) {
|
|
141
|
+
// Remove the base href from the file output path.
|
|
142
|
+
const routeWithoutBaseHref = (0, url_1.addTrailingSlash)(route).startsWith(baseHrefPathnameWithLeadingSlash)
|
|
143
|
+
? (0, url_1.addLeadingSlash)(route.slice(baseHrefPathnameWithLeadingSlash.length))
|
|
144
|
+
: route;
|
|
145
|
+
const outPath = (0, url_1.stripLeadingSlash)(node_path_1.posix.join(routeWithoutBaseHref, 'index.html'));
|
|
146
|
+
if (typeof redirectTo === 'string') {
|
|
147
|
+
output[outPath] = { content: (0, utils_2.generateRedirectStaticPage)(redirectTo), appShellRoute: false };
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
const render = renderWorker.run({ url: route });
|
|
151
|
+
const renderResult = render
|
|
152
|
+
.then((content) => {
|
|
153
|
+
if (content !== null) {
|
|
154
|
+
output[outPath] = {
|
|
155
|
+
content,
|
|
156
|
+
appShellRoute: appShellRouteWithLeadingSlash === routeWithoutBaseHref,
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
})
|
|
160
|
+
.catch((err) => {
|
|
161
|
+
errors.push(`An error occurred while prerendering route '${route}'.\n\n${err.message ?? err.stack ?? err.code ?? err}`);
|
|
162
|
+
void renderWorker.destroy();
|
|
163
|
+
});
|
|
164
|
+
renderingPromises.push(renderResult);
|
|
165
|
+
}
|
|
166
|
+
await Promise.all(renderingPromises);
|
|
167
|
+
}
|
|
168
|
+
finally {
|
|
169
|
+
void renderWorker.destroy();
|
|
170
|
+
}
|
|
171
|
+
return {
|
|
172
|
+
errors,
|
|
173
|
+
output,
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
async function getAllRoutes(workspaceRoot, baseHref, outputFilesForWorker, assetFilesForWorker, appShellOptions, prerenderOptions, sourcemap, outputMode) {
|
|
177
|
+
const { routesFile, discoverRoutes } = prerenderOptions ?? {};
|
|
178
|
+
const routes = [];
|
|
179
|
+
let appShellRoute;
|
|
180
|
+
if (appShellOptions) {
|
|
181
|
+
appShellRoute = (0, url_1.joinUrlParts)(baseHref, appShellOptions.route);
|
|
182
|
+
routes.push({
|
|
183
|
+
renderMode: models_1.RouteRenderMode.Prerender,
|
|
184
|
+
route: appShellRoute,
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
if (routesFile) {
|
|
188
|
+
const routesFromFile = (await (0, promises_1.readFile)(routesFile, 'utf8')).split(/\r?\n/);
|
|
189
|
+
for (const route of routesFromFile) {
|
|
190
|
+
routes.push({
|
|
191
|
+
renderMode: models_1.RouteRenderMode.Prerender,
|
|
192
|
+
route: (0, url_1.joinUrlParts)(baseHref, route.trim()),
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
if (!discoverRoutes) {
|
|
197
|
+
return { errors: [], appShellRoute, serializedRouteTree: routes };
|
|
198
|
+
}
|
|
199
|
+
const workerExecArgv = [utils_1.IMPORT_EXEC_ARGV];
|
|
200
|
+
if (sourcemap) {
|
|
201
|
+
workerExecArgv.push('--enable-source-maps');
|
|
202
|
+
}
|
|
203
|
+
const renderWorker = new worker_pool_1.WorkerPool({
|
|
204
|
+
filename: require.resolve('./routes-extractor-worker'),
|
|
205
|
+
maxThreads: 1,
|
|
206
|
+
workerData: {
|
|
207
|
+
workspaceRoot,
|
|
208
|
+
outputFiles: outputFilesForWorker,
|
|
209
|
+
assetFiles: assetFilesForWorker,
|
|
210
|
+
outputMode,
|
|
211
|
+
hasSsrEntry: !!outputFilesForWorker['server.mjs'],
|
|
212
|
+
},
|
|
213
|
+
execArgv: workerExecArgv,
|
|
214
|
+
env: {
|
|
215
|
+
...process.env,
|
|
216
|
+
'NG_ALLOWED_HOSTS': 'localhost',
|
|
217
|
+
},
|
|
218
|
+
});
|
|
219
|
+
try {
|
|
220
|
+
const { serializedRouteTree, appShellRoute, errors } = await renderWorker.run({});
|
|
221
|
+
if (!routes.length) {
|
|
222
|
+
return { errors, appShellRoute, serializedRouteTree };
|
|
223
|
+
}
|
|
224
|
+
// Merge the routing trees
|
|
225
|
+
const uniqueRoutes = new Map();
|
|
226
|
+
for (const item of [...routes, ...serializedRouteTree]) {
|
|
227
|
+
if (!uniqueRoutes.has(item.route)) {
|
|
228
|
+
uniqueRoutes.set(item.route, item);
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return { errors, serializedRouteTree: Array.from(uniqueRoutes.values()) };
|
|
232
|
+
}
|
|
233
|
+
catch (err) {
|
|
234
|
+
(0, error_1.assertIsError)(err);
|
|
235
|
+
return {
|
|
236
|
+
errors: [
|
|
237
|
+
`An error occurred while extracting routes.\n\n${err.message ?? err.stack ?? err.code ?? err}`,
|
|
238
|
+
],
|
|
239
|
+
serializedRouteTree: [],
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
finally {
|
|
243
|
+
void renderWorker.destroy();
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
//# sourceMappingURL=prerender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prerender.js","sourceRoot":"","sources":["prerender.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import type { OutputMode } from '../../builders/application/schema';
|
|
9
|
+
import type { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-loader/loader-hooks';
|
|
10
|
+
export interface RenderWorkerData extends ESMInMemoryFileLoaderWorkerData {
|
|
11
|
+
assetFiles: Record</** Destination */ string, /** Source */ string>;
|
|
12
|
+
outputMode: OutputMode | undefined;
|
|
13
|
+
hasSsrEntry: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface RenderOptions {
|
|
16
|
+
url: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Renders each route in routes and writes them to <outputPath>/<route>/index.html.
|
|
20
|
+
*/
|
|
21
|
+
declare function renderPage({ url }: RenderOptions): Promise<string | null>;
|
|
22
|
+
declare const _default: Promise<typeof renderPage>;
|
|
23
|
+
export default _default;
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
44
|
+
const fetch_patch_1 = require("./fetch-patch");
|
|
45
|
+
const launch_server_1 = require("./launch-server");
|
|
46
|
+
const load_esm_from_memory_1 = require("./load-esm-from-memory");
|
|
47
|
+
const utils_1 = require("./utils");
|
|
48
|
+
/**
|
|
49
|
+
* This is passed as workerData when setting up the worker via the `piscina` package.
|
|
50
|
+
*/
|
|
51
|
+
const { outputMode, hasSsrEntry } = node_worker_threads_1.workerData;
|
|
52
|
+
let serverURL = launch_server_1.DEFAULT_URL;
|
|
53
|
+
/**
|
|
54
|
+
* Renders each route in routes and writes them to <outputPath>/<route>/index.html.
|
|
55
|
+
*/
|
|
56
|
+
async function renderPage({ url }) {
|
|
57
|
+
const { ɵgetOrCreateAngularServerApp: getOrCreateAngularServerApp } = await (0, load_esm_from_memory_1.loadEsmModuleFromMemory)('./main.server.mjs');
|
|
58
|
+
const angularServerApp = getOrCreateAngularServerApp({
|
|
59
|
+
allowStaticRouteRender: true,
|
|
60
|
+
});
|
|
61
|
+
const response = await angularServerApp.handle(new Request(new URL(url, serverURL), { signal: AbortSignal.timeout(30_000) }));
|
|
62
|
+
if (!response) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
const location = response.headers.get('Location');
|
|
66
|
+
return location ? (0, utils_1.generateRedirectStaticPage)(location) : response.text();
|
|
67
|
+
}
|
|
68
|
+
async function initialize() {
|
|
69
|
+
// Load the compiler because `@angular/ssr/node` depends on `@angular/` packages,
|
|
70
|
+
// which must be processed by the runtime linker, even if they are not used.
|
|
71
|
+
await Promise.resolve().then(() => __importStar(require('@angular/compiler')));
|
|
72
|
+
if (outputMode !== undefined && hasSsrEntry) {
|
|
73
|
+
serverURL = await (0, launch_server_1.launchServer)();
|
|
74
|
+
}
|
|
75
|
+
(0, fetch_patch_1.patchFetchToLoadInMemoryAssets)(serverURL);
|
|
76
|
+
return renderPage;
|
|
77
|
+
}
|
|
78
|
+
exports.default = initialize();
|
|
79
|
+
//# sourceMappingURL=render-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-worker.js","sourceRoot":"","sources":["render-worker.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6DAAiD;AAGjD,+CAA+D;AAC/D,mDAA4D;AAC5D,iEAAiE;AACjE,mCAAqD;AAYrD;;GAEG;AACH,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,gCAGnC,CAAC;AAEF,IAAI,SAAS,GAAG,2BAAW,CAAC;AAE5B;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,EAAE,GAAG,EAAiB;IAC9C,MAAM,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,GACjE,MAAM,IAAA,8CAAuB,EAAC,mBAAmB,CAAC,CAAC;IAErD,MAAM,gBAAgB,GAAG,2BAA2B,CAAC;QACnD,sBAAsB,EAAE,IAAI;KAC7B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAC5C,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAC9E,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAElD,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAA,kCAA0B,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC3E,CAAC;AAED,KAAK,UAAU,UAAU;IACvB,iFAAiF;IACjF,4EAA4E;IAC5E,wDAAa,mBAAmB,GAAC,CAAC;IAElC,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,EAAE,CAAC;QAC5C,SAAS,GAAG,MAAM,IAAA,4BAAY,GAAE,CAAC;IACnC,CAAC;IAED,IAAA,4CAA8B,EAAC,SAAS,CAAC,CAAC;IAE1C,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,kBAAe,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import { OutputMode } from '../../builders/application/schema';
|
|
9
|
+
import { ESMInMemoryFileLoaderWorkerData } from './esm-in-memory-loader/loader-hooks';
|
|
10
|
+
import { RoutersExtractorWorkerResult } from './models';
|
|
11
|
+
export interface ExtractRoutesWorkerData extends ESMInMemoryFileLoaderWorkerData {
|
|
12
|
+
outputMode: OutputMode | undefined;
|
|
13
|
+
}
|
|
14
|
+
/** Renders an application based on a provided options. */
|
|
15
|
+
declare function extractRoutes(): Promise<RoutersExtractorWorkerResult>;
|
|
16
|
+
export default extractRoutes;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
const node_worker_threads_1 = require("node:worker_threads");
|
|
44
|
+
const schema_1 = require("../../builders/application/schema");
|
|
45
|
+
const fetch_patch_1 = require("./fetch-patch");
|
|
46
|
+
const launch_server_1 = require("./launch-server");
|
|
47
|
+
const load_esm_from_memory_1 = require("./load-esm-from-memory");
|
|
48
|
+
/**
|
|
49
|
+
* This is passed as workerData when setting up the worker via the `piscina` package.
|
|
50
|
+
*/
|
|
51
|
+
const { outputMode, hasSsrEntry } = node_worker_threads_1.workerData;
|
|
52
|
+
/** Renders an application based on a provided options. */
|
|
53
|
+
async function extractRoutes() {
|
|
54
|
+
// Load the compiler because `@angular/ssr/node` depends on `@angular/` packages,
|
|
55
|
+
// which must be processed by the runtime linker, even if they are not used.
|
|
56
|
+
await Promise.resolve().then(() => __importStar(require('@angular/compiler')));
|
|
57
|
+
const serverURL = outputMode !== undefined && hasSsrEntry ? await (0, launch_server_1.launchServer)() : launch_server_1.DEFAULT_URL;
|
|
58
|
+
(0, fetch_patch_1.patchFetchToLoadInMemoryAssets)(serverURL);
|
|
59
|
+
const { ɵextractRoutesAndCreateRouteTree: extractRoutesAndCreateRouteTree } = await (0, load_esm_from_memory_1.loadEsmModuleFromMemory)('./main.server.mjs');
|
|
60
|
+
const { routeTree, appShellRoute, errors } = await extractRoutesAndCreateRouteTree({
|
|
61
|
+
url: serverURL,
|
|
62
|
+
invokeGetPrerenderParams: outputMode !== undefined,
|
|
63
|
+
includePrerenderFallbackRoutes: outputMode === schema_1.OutputMode.Server,
|
|
64
|
+
signal: AbortSignal.timeout(30_000),
|
|
65
|
+
});
|
|
66
|
+
return {
|
|
67
|
+
errors,
|
|
68
|
+
appShellRoute,
|
|
69
|
+
serializedRouteTree: routeTree.toObject(),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
exports.default = extractRoutes;
|
|
73
|
+
//# sourceMappingURL=routes-extractor-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routes-extractor-worker.js","sourceRoot":"","sources":["routes-extractor-worker.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6DAAiD;AACjD,8DAA+D;AAE/D,+CAA+D;AAC/D,mDAA4D;AAC5D,iEAAiE;AAOjE;;GAEG;AACH,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,gCAGnC,CAAC;AAEF,0DAA0D;AAC1D,KAAK,UAAU,aAAa;IAC1B,iFAAiF;IACjF,4EAA4E;IAC5E,wDAAa,mBAAmB,GAAC,CAAC;IAElC,MAAM,SAAS,GAAG,UAAU,KAAK,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,MAAM,IAAA,4BAAY,GAAE,CAAC,CAAC,CAAC,2BAAW,CAAC;IAE/F,IAAA,4CAA8B,EAAC,SAAS,CAAC,CAAC;IAE1C,MAAM,EAAE,gCAAgC,EAAE,+BAA+B,EAAE,GACzE,MAAM,IAAA,8CAAuB,EAAC,mBAAmB,CAAC,CAAC;IAErD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,+BAA+B,CAAC;QACjF,GAAG,EAAE,SAAS;QACd,wBAAwB,EAAE,UAAU,KAAK,SAAS;QAClD,8BAA8B,EAAE,UAAU,KAAK,mBAAU,CAAC,MAAM;QAChE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,aAAa;QACb,mBAAmB,EAAE,SAAS,CAAC,QAAQ,EAAE;KAC1C,CAAC;AACJ,CAAC;AAED,kBAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import type { createRequestHandler } from '@angular/ssr';
|
|
9
|
+
import type { createNodeRequestHandler } from '@angular/ssr/node' with { 'resolution-mode': 'import' };
|
|
10
|
+
export declare function isSsrNodeRequestHandler(value: unknown): value is ReturnType<typeof createNodeRequestHandler>;
|
|
11
|
+
export declare function isSsrRequestHandler(value: unknown): value is ReturnType<typeof createRequestHandler>;
|
|
12
|
+
/**
|
|
13
|
+
* Generates a static HTML page with a meta refresh tag to redirect the user to a specified URL.
|
|
14
|
+
*
|
|
15
|
+
* This function creates a simple HTML page that performs a redirect using a meta tag.
|
|
16
|
+
* It includes a fallback link in case the meta-refresh doesn't work.
|
|
17
|
+
*
|
|
18
|
+
* @param url - The URL to which the page should redirect.
|
|
19
|
+
* @returns The HTML content of the static redirect page.
|
|
20
|
+
*/
|
|
21
|
+
export declare function generateRedirectStaticPage(url: string): string;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.isSsrNodeRequestHandler = isSsrNodeRequestHandler;
|
|
11
|
+
exports.isSsrRequestHandler = isSsrRequestHandler;
|
|
12
|
+
exports.generateRedirectStaticPage = generateRedirectStaticPage;
|
|
13
|
+
function isSsrNodeRequestHandler(value) {
|
|
14
|
+
return typeof value === 'function' && '__ng_node_request_handler__' in value;
|
|
15
|
+
}
|
|
16
|
+
function isSsrRequestHandler(value) {
|
|
17
|
+
return typeof value === 'function' && '__ng_request_handler__' in value;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Generates a static HTML page with a meta refresh tag to redirect the user to a specified URL.
|
|
21
|
+
*
|
|
22
|
+
* This function creates a simple HTML page that performs a redirect using a meta tag.
|
|
23
|
+
* It includes a fallback link in case the meta-refresh doesn't work.
|
|
24
|
+
*
|
|
25
|
+
* @param url - The URL to which the page should redirect.
|
|
26
|
+
* @returns The HTML content of the static redirect page.
|
|
27
|
+
*/
|
|
28
|
+
function generateRedirectStaticPage(url) {
|
|
29
|
+
return `
|
|
30
|
+
<!DOCTYPE html>
|
|
31
|
+
<html>
|
|
32
|
+
<head>
|
|
33
|
+
<meta charset="utf-8">
|
|
34
|
+
<title>Redirecting</title>
|
|
35
|
+
<meta http-equiv="refresh" content="0; url=${url}">
|
|
36
|
+
</head>
|
|
37
|
+
<body>
|
|
38
|
+
<pre>Redirecting to <a href="${url}">${url}</a></pre>
|
|
39
|
+
</body>
|
|
40
|
+
</html>
|
|
41
|
+
`.trim();
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["utils.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAKH,0DAIC;AACD,kDAIC;AAWD,gEAcC;AAlCD,SAAgB,uBAAuB,CACrC,KAAc;IAEd,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,6BAA6B,IAAI,KAAK,CAAC;AAC/E,CAAC;AACD,SAAgB,mBAAmB,CACjC,KAAc;IAEd,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,wBAAwB,IAAI,KAAK,CAAC;AAC1E,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,0BAA0B,CAAC,GAAW;IACpD,OAAO;;;;;;iDAMwC,GAAG;;;mCAGjB,GAAG,KAAK,GAAG;;;CAG7C,CAAC,IAAI,EAAE,CAAC;AACT,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import type { Config, Filesystem } from '@angular/service-worker/config' with { 'resolution-mode': 'import' };
|
|
9
|
+
import { promises as fsPromises } from 'node:fs';
|
|
10
|
+
import { BuildOutputFile } from '../tools/esbuild/bundler-context';
|
|
11
|
+
import { BuildOutputAsset } from '../tools/esbuild/bundler-execution-result';
|
|
12
|
+
export declare function augmentAppWithServiceWorker(appRoot: string, workspaceRoot: string, outputPath: string, baseHref: string, ngswConfigPath?: string, inputFileSystem?: typeof fsPromises, outputFileSystem?: typeof fsPromises): Promise<void>;
|
|
13
|
+
export declare function augmentAppWithServiceWorkerEsbuild(workspaceRoot: string, configPath: string, baseHref: string, indexHtml: string | undefined, outputFiles: BuildOutputFile[], assetFiles: BuildOutputAsset[]): Promise<{
|
|
14
|
+
manifest: string;
|
|
15
|
+
assetFiles: BuildOutputAsset[];
|
|
16
|
+
}>;
|
|
17
|
+
export declare function augmentAppWithServiceWorkerCore(config: Config, serviceWorkerFilesystem: Filesystem, baseHref: string): Promise<{
|
|
18
|
+
manifest: string;
|
|
19
|
+
assetFiles: {
|
|
20
|
+
source: string;
|
|
21
|
+
destination: string;
|
|
22
|
+
}[];
|
|
23
|
+
}>;
|