@ng-doc/builder 22.0.0-beta.2 → 22.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -28
- package/application/index.js +2 -2
- package/application/index.js.map +1 -1
- package/application/schema.json +1 -2
- package/builders.json +23 -13
- package/classes/observable-map.d.ts +1 -0
- package/classes/observable-map.js +14 -3
- package/classes/observable-map.js.map +1 -1
- package/classes/observable-set.js +2 -1
- package/classes/observable-set.js.map +1 -1
- package/dev-server/index.js +5 -3
- package/dev-server/index.js.map +1 -1
- package/engine/builders/api-list/api-list-component.builder.js +4 -4
- package/engine/builders/api-list/api-list-component.builder.js.map +1 -1
- package/engine/builders/api-list/api-page-template.builder.js +2 -2
- package/engine/builders/api-list/api-page-template.builder.js.map +1 -1
- package/engine/builders/global/keywords.builder.d.ts +1 -4
- package/engine/builders/global/keywords.builder.js +5 -9
- package/engine/builders/global/keywords.builder.js.map +1 -1
- package/engine/builders/global/search-indexes.builder.js +1 -1
- package/engine/builders/global/search-indexes.builder.js.map +1 -1
- package/engine/builders/helpers/create-entry-metadata.js +2 -1
- package/engine/builders/helpers/create-entry-metadata.js.map +1 -1
- package/engine/builders/helpers/create-import-path.js.map +1 -1
- package/engine/builders/helpers/get-entry-relative-path.js.map +1 -1
- package/engine/builders/helpers/get-playground-metadata.js +7 -1
- package/engine/builders/helpers/get-playground-metadata.js.map +1 -1
- package/engine/builders/page/demo-assets.builder.js +10 -5
- package/engine/builders/page/demo-assets.builder.js.map +1 -1
- package/engine/builders/page/playground.builder.js +1 -0
- package/engine/builders/page/playground.builder.js.map +1 -1
- package/engine/builders/shared/content.builder.js +5 -3
- package/engine/builders/shared/content.builder.js.map +1 -1
- package/engine/builders/shared/page-component.builder.js +16 -6
- package/engine/builders/shared/page-component.builder.js.map +1 -1
- package/engine/builders/shared/page-wrapper.builder.js +10 -5
- package/engine/builders/shared/page-wrapper.builder.js.map +1 -1
- package/engine/core/operators/distinct-pending.js.map +1 -1
- package/engine/core/operators/factory.js +1 -4
- package/engine/core/operators/factory.js.map +1 -1
- package/engine/core/operators/merge-factory.js +19 -17
- package/engine/core/operators/merge-factory.js.map +1 -1
- package/engine/core/operators/when-builders-done.js.map +1 -1
- package/engine/core/triggers/on-dependencies-change.d.ts +1 -1
- package/engine/core/triggers/on-dependencies-change.js +2 -2
- package/engine/core/triggers/on-dependencies-change.js.map +1 -1
- package/generator/artifacts/index.d.ts +317 -0
- package/generator/bootstrap/bin.d.ts +18 -0
- package/generator/bootstrap/bin.js +7298 -0
- package/generator/bootstrap/candidate-output-committer.d.ts +12 -0
- package/generator/bootstrap/cli.d.ts +42 -0
- package/generator/bootstrap/cli.js +7147 -0
- package/generator/bootstrap/constants.d.ts +4 -0
- package/generator/bootstrap/index.d.ts +111 -0
- package/generator/bootstrap/index.js +5034 -0
- package/generator/bootstrap/prerender-command.d.ts +31 -0
- package/generator/bootstrap/process-tree.d.ts +49 -0
- package/generator/build-metafile.json +12009 -0
- package/generator/build-provenance.json +121 -0
- package/generator/compiler/assemble.d.ts +41 -0
- package/generator/compiler/classify.d.ts +161 -0
- package/generator/compiler/closure-store.d.ts +55 -0
- package/generator/compiler/common.d.ts +32 -0
- package/generator/compiler/describe.d.ts +21 -0
- package/generator/compiler/dry-run.d.ts +108 -0
- package/generator/compiler/fast-start.d.ts +104 -0
- package/generator/compiler/fold.d.ts +116 -0
- package/generator/compiler/index.d.ts +131 -0
- package/generator/compiler/index.js +19009 -0
- package/generator/compiler/link.d.ts +38 -0
- package/generator/compiler/memo.d.ts +44 -0
- package/generator/compiler/plan.d.ts +116 -0
- package/generator/compiler/progress.d.ts +54 -0
- package/generator/compiler/render.d.ts +27 -0
- package/generator/compiler/retention.d.ts +181 -0
- package/generator/compiler/semantic-closure.d.ts +46 -0
- package/generator/compiler/targeted.d.ts +280 -0
- package/generator/content/code-snippet.d.ts +20 -0
- package/generator/content/content-compiler.d.ts +122 -0
- package/generator/content/format-cache.d.ts +108 -0
- package/generator/content/highlight-cache.d.ts +115 -0
- package/generator/content/html-pipeline.d.ts +179 -0
- package/generator/content/html-pool.d.ts +245 -0
- package/generator/content/html-worker.js +2181 -0
- package/generator/content-module-ids.d.ts +8 -0
- package/generator/contracts.d.ts +1102 -0
- package/generator/contracts.js +15 -0
- package/generator/discovery/index.d.ts +79 -0
- package/generator/graph/index.d.ts +211 -0
- package/generator/graph/unit-index.d.ts +216 -0
- package/generator/kernel/canonical.d.ts +57 -0
- package/generator/kernel/flags.d.ts +51 -0
- package/generator/kernel/footprint.d.ts +88 -0
- package/generator/kernel/observations.d.ts +68 -0
- package/generator/kernel/paths.d.ts +22 -0
- package/generator/kernel/runtime-identity.d.ts +11 -0
- package/generator/outputs/index.d.ts +80 -0
- package/generator/package.json +3 -0
- package/generator/progress/ci.d.ts +22 -0
- package/generator/progress/detect.d.ts +60 -0
- package/generator/progress/events.d.ts +126 -0
- package/generator/progress/format.d.ts +83 -0
- package/generator/progress/gate.d.ts +49 -0
- package/generator/progress/host.d.ts +29 -0
- package/generator/progress/lines.d.ts +42 -0
- package/generator/progress/live.d.ts +115 -0
- package/generator/progress/model.d.ts +85 -0
- package/generator/progress/reporter.d.ts +87 -0
- package/generator/progress/settings.d.ts +60 -0
- package/generator/semantic/angular.d.ts +29 -0
- package/generator/semantic/api-enumeration.d.ts +19 -0
- package/generator/semantic/api-summary.d.ts +33 -0
- package/generator/semantic/dependencies.d.ts +20 -0
- package/generator/semantic/derived-classes.d.ts +58 -0
- package/generator/semantic/documentation-cache.d.ts +23 -0
- package/generator/semantic/formatting.d.ts +27 -0
- package/generator/semantic/fragments.d.ts +37 -0
- package/generator/semantic/owned-roots.d.ts +59 -0
- package/generator/semantic/program-builder.d.ts +55 -0
- package/generator/semantic/program-index.d.ts +124 -0
- package/generator/semantic/program-inputs.d.ts +26 -0
- package/generator/semantic/program-observations.d.ts +158 -0
- package/generator/semantic/program-retention.d.ts +147 -0
- package/generator/semantic/program-state.d.ts +196 -0
- package/generator/semantic/program-verify.d.ts +22 -0
- package/generator/semantic/recorder.d.ts +89 -0
- package/generator/semantic/rendering.d.ts +34 -0
- package/generator/semantic/semantic-closure.d.ts +129 -0
- package/generator/semantic/semantic-service.d.ts +186 -0
- package/generator/semantic/type-text.d.ts +5 -0
- package/generator/session/build-session.d.ts +206 -0
- package/generator/session/input-verification.d.ts +38 -0
- package/generator/session/parcel-event-source.d.ts +22 -0
- package/generator/session/progress.d.ts +72 -0
- package/generator/session/unchanged-saves.d.ts +63 -0
- package/generator/session/watch-inputs.d.ts +6 -0
- package/generator/session/watch-signals.d.ts +10 -0
- package/generator/templates/api/base.html.nunj +26 -0
- package/generator/templates/api/class-declaration.html.nunj +59 -0
- package/generator/templates/api/details/class-declaration.html.nunj +47 -0
- package/generator/templates/api/details/enum-declaration.html.nunj +0 -0
- package/generator/templates/api/details/function-declaration.html.nunj +14 -0
- package/generator/templates/api/details/helpers/decorators.html.nunj +14 -0
- package/generator/templates/api/details/helpers/extends.html.nunj +6 -0
- package/generator/templates/api/details/helpers/selectors.html.nunj +12 -0
- package/generator/templates/api/details/helpers/type-parameters.html.nunj +14 -0
- package/generator/templates/api/details/interface-declaration.html.nunj +27 -0
- package/generator/templates/api/details/type-alias-declaration.html.nunj +14 -0
- package/generator/templates/api/details/variable-declaration.html.nunj +0 -0
- package/generator/templates/api/details.html.nunj +9 -0
- package/generator/templates/api/enum-declaration.html.nunj +12 -0
- package/generator/templates/api/function-declaration.html.nunj +35 -0
- package/generator/templates/api/interface-declaration.html.nunj +37 -0
- package/generator/templates/api/type-alias-declaration.html.nunj +16 -0
- package/generator/templates/api/variable-declaration.html.nunj +8 -0
- package/generator/templates/api-header.html.nunj +11 -0
- package/generator/templates/api-list.ts.nunj +22 -0
- package/generator/templates/api-page-content.html.nunj +1 -0
- package/generator/templates/api-scope.ts.nunj +22 -0
- package/generator/templates/category.ts.nunj +22 -0
- package/generator/templates/code.html.nunj +3 -0
- package/generator/templates/context.ts.nunj +55 -0
- package/generator/templates/demo-app.ts.nunj +37 -0
- package/generator/templates/demo-assets.ts.nunj +25 -0
- package/generator/templates/demo-routes.ts.nunj +23 -0
- package/generator/templates/helpers/accessor.html.nunj +76 -0
- package/generator/templates/helpers/accessors.html.nunj +7 -0
- package/generator/templates/helpers/badge.html.nunj +4 -0
- package/generator/templates/helpers/call-signature.html.nunj +70 -0
- package/generator/templates/helpers/code.html.nunj +3 -0
- package/generator/templates/helpers/constructor.html.nunj +32 -0
- package/generator/templates/helpers/declaration-modifiers.html.nunj +45 -0
- package/generator/templates/helpers/decorators.html.nunj +11 -0
- package/generator/templates/helpers/members.html.nunj +29 -0
- package/generator/templates/helpers/method.html.nunj +89 -0
- package/generator/templates/helpers/methods.html.nunj +7 -0
- package/generator/templates/helpers/modifier.html.nunj +4 -0
- package/generator/templates/helpers/no-content.html.nunj +3 -0
- package/generator/templates/helpers/overload.html.nunj +57 -0
- package/generator/templates/helpers/parameters.html.nunj +44 -0
- package/generator/templates/helpers/properties.html.nunj +61 -0
- package/generator/templates/helpers/status.html.nunj +33 -0
- package/generator/templates/helpers/tag.html.nunj +4 -0
- package/generator/templates/helpers/type.html.nunj +11 -0
- package/generator/templates/index.ts.nunj +7 -0
- package/generator/templates/page-header.html.nunj +5 -0
- package/generator/templates/page-wrapper.ts.nunj +69 -0
- package/generator/templates/page.ts.nunj +104 -0
- package/generator/templates/parts/examples.html.nunj +11 -0
- package/generator/templates/parts/member-examples.html.nunj +12 -0
- package/generator/templates/parts/member-remarks.html.nunj +8 -0
- package/generator/templates/parts/page-tags.html.nunj +10 -0
- package/generator/templates/parts/remarks.html.nunj +10 -0
- package/generator/templates/parts/see-also.html.nunj +23 -0
- package/generator/templates/parts/usage-notes.html.nunj +8 -0
- package/generator/templates/playgrounds.ts.nunj +63 -0
- package/generator/templates/routes.ts.nunj +53 -0
- package/generator/templates/symbol/decorators.html.nunj +12 -0
- package/generator/templates/symbol/details.html.nunj +62 -0
- package/generator/templates/symbol/extended-by.html.nunj +17 -0
- package/generator/templates/symbol/header.html.nunj +22 -0
- package/generator/templates/symbol/members.html.nunj +303 -0
- package/generator/templates/symbol/page.html.nunj +76 -0
- package/generator/templates/symbol/see-also.html.nunj +16 -0
- package/generator/vite/angular/ANALOG-LICENSE +21 -0
- package/generator/vite/angular/analog-provenance.json +880 -0
- package/generator/vite/angular/index.d.ts +14 -0
- package/generator/vite/angular/index.js +7300 -0
- package/generator/vite/angular-compatibility.d.ts +6 -0
- package/generator/vite/angular-composition.d.ts +68 -0
- package/generator/vite/angular-version.d.ts +38 -0
- package/generator/vite/application-builder.js +336 -0
- package/generator/vite/application-builder.schema.json +46 -0
- package/generator/vite/application.d.ts +105 -0
- package/generator/vite/assets.d.ts +11 -0
- package/generator/vite/bounded-close.d.ts +33 -0
- package/generator/vite/component-updates.d.ts +21 -0
- package/generator/vite/configuration.d.ts +3 -0
- package/generator/vite/demo-application.d.ts +34 -0
- package/generator/vite/dev-server-builder.js +339 -0
- package/generator/vite/dev-server-builder.schema.json +27 -0
- package/generator/vite/dev-styles.d.ts +65 -0
- package/generator/vite/diagnostics.d.ts +4 -0
- package/generator/vite/external-probes.d.ts +40 -0
- package/generator/vite/host-updates.d.ts +212 -0
- package/generator/vite/index.d.ts +13 -0
- package/generator/vite/index.js +11949 -0
- package/generator/vite/lease.d.ts +6 -0
- package/generator/vite/lifecycle.d.ts +120 -0
- package/generator/vite/mime.d.ts +2 -0
- package/generator/vite/missing-paths.d.ts +44 -0
- package/generator/vite/options.d.ts +87 -0
- package/generator/vite/output-watch.d.ts +41 -0
- package/generator/vite/paths.d.ts +7 -0
- package/generator/vite/plugin.d.ts +3 -0
- package/generator/vite/prerender-entry.js +465 -0
- package/generator/vite/prerender-runtime.d.ts +79 -0
- package/generator/vite/prerender.d.ts +29 -0
- package/generator/vite/production.d.ts +66 -0
- package/generator/vite/progress.d.ts +33 -0
- package/generator/vite/restore-theme.js +13 -0
- package/generator/vite/route-inventory.d.ts +24 -0
- package/generator/vite/ssr-renderer-control.d.ts +1 -0
- package/generator/vite/ssr-renderer-entry.js +444 -0
- package/generator/vite/ssr-renderer-protocol.d.ts +101 -0
- package/generator/vite/ssr-renderer.d.ts +74 -0
- package/generator/vite/theme-index.d.ts +13 -0
- package/generator/vite/tsconfig-paths.d.ts +64 -0
- package/generator/vite/vite-event-source.d.ts +198 -0
- package/generator/vite/vite-version.d.ts +26 -0
- package/generator/vite/watch-inputs.d.ts +39 -0
- package/generator/worker/entry.d.ts +1 -0
- package/generator/worker/entry.js +614 -0
- package/generator/worker/index.d.ts +156 -0
- package/generator/worker/index.js +1030 -0
- package/generator/worker/protocol.d.ts +160 -0
- package/helpers/angular/get-component-decorator.js +6 -6
- package/helpers/angular/get-component-decorator.js.map +1 -1
- package/helpers/angular/get-directive-decorator.js +3 -3
- package/helpers/angular/get-directive-decorator.js.map +1 -1
- package/helpers/angular/get-pipe-decorator.js +3 -3
- package/helpers/angular/get-pipe-decorator.js.map +1 -1
- package/helpers/build-indexes.js +5 -2
- package/helpers/build-indexes.js.map +1 -1
- package/helpers/construct-page-keyword.js +2 -1
- package/helpers/construct-page-keyword.js.map +1 -1
- package/helpers/extract-selectors.d.ts +1 -1
- package/helpers/extract-selectors.js +5 -3
- package/helpers/extract-selectors.js.map +1 -1
- package/helpers/filter-useless-members.d.ts +1 -1
- package/helpers/format-cache.d.ts +34 -0
- package/helpers/format-cache.js +26 -0
- package/helpers/format-cache.js.map +1 -0
- package/helpers/format-code.d.ts +2 -1
- package/helpers/format-code.js +20 -4
- package/helpers/format-code.js.map +1 -1
- package/helpers/import-fresh-esm.js.map +1 -1
- package/helpers/index.d.ts +2 -0
- package/helpers/index.js +2 -0
- package/helpers/index.js.map +1 -1
- package/helpers/keyword-heading-title.d.ts +7 -0
- package/helpers/keyword-heading-title.js +21 -0
- package/helpers/keyword-heading-title.js.map +1 -0
- package/helpers/markdown-to-html.js +3 -3
- package/helpers/markdown-to-html.js.map +1 -1
- package/helpers/navigation-title-order.d.ts +8 -0
- package/helpers/navigation-title-order.js +15 -0
- package/helpers/navigation-title-order.js.map +1 -0
- package/helpers/playground/get-playground-inputs.js +8 -4
- package/helpers/playground/get-playground-inputs.js.map +1 -1
- package/helpers/playground/get-playground-template-inputs.js +2 -1
- package/helpers/playground/get-playground-template-inputs.js.map +1 -1
- package/helpers/presentation.d.ts +7 -7
- package/helpers/presentation.js +23 -23
- package/helpers/presentation.js.map +1 -1
- package/helpers/print.js +32 -5
- package/helpers/print.js.map +1 -1
- package/helpers/process-snippets.d.ts +1 -1
- package/helpers/process-snippets.js +3 -3
- package/helpers/process-snippets.js.map +1 -1
- package/helpers/snippets-from-asset.d.ts +1 -1
- package/helpers/snippets-from-asset.js +2 -2
- package/helpers/snippets-from-asset.js.map +1 -1
- package/helpers/sort-navigation-entities.js +2 -1
- package/helpers/sort-navigation-entities.js.map +1 -1
- package/helpers/stable-generated-id.d.ts +2 -0
- package/helpers/stable-generated-id.js +12 -0
- package/helpers/stable-generated-id.js.map +1 -0
- package/helpers/text-order.d.ts +8 -0
- package/helpers/text-order.js +26 -0
- package/helpers/text-order.js.map +1 -0
- package/helpers/to-template-string.d.ts +5 -1
- package/helpers/to-template-string.js +7 -2
- package/helpers/to-template-string.js.map +1 -1
- package/helpers/typescript/member/get-inherited-parent.d.ts +1 -1
- package/helpers/typescript/member/get-inherited-parent.js +2 -2
- package/helpers/typescript/member/get-inherited-parent.js.map +1 -1
- package/helpers/typescript/node/sort-by-nodes-name.d.ts +4 -2
- package/helpers/typescript/node/sort-by-nodes-name.js +6 -3
- package/helpers/typescript/node/sort-by-nodes-name.js.map +1 -1
- package/helpers/typescript/property/get-property-assignment.js.map +1 -1
- package/interfaces/code-block-options.d.ts +5 -0
- package/interfaces/configuration.d.ts +84 -1
- package/package.json +87 -29
- package/parsers/helpers/number.d.ts +1 -1
- package/parsers/helpers/number.js +2 -2
- package/parsers/helpers/number.js.map +1 -1
- package/parsers/helpers/param-value.d.ts +1 -1
- package/parsers/helpers/param-value.js +2 -2
- package/parsers/helpers/param-value.js.map +1 -1
- package/parsers/helpers/param.js +3 -3
- package/parsers/helpers/param.js.map +1 -1
- package/parsers/parse-code-block-params.d.ts +11 -2
- package/parsers/parse-code-block-params.js +50 -18
- package/parsers/parse-code-block-params.js.map +1 -1
- package/parsers/parse-snippet.js +10 -10
- package/parsers/parse-snippet.js.map +1 -1
- package/schematics/collection.json +34 -23
- package/schematics/migrate-to-vite/analyze.d.ts +76 -0
- package/schematics/migrate-to-vite/analyze.js +859 -0
- package/schematics/migrate-to-vite/analyze.js.map +1 -0
- package/schematics/migrate-to-vite/index.d.ts +9 -0
- package/schematics/migrate-to-vite/index.js +585 -0
- package/schematics/migrate-to-vite/index.js.map +1 -0
- package/schematics/migrate-to-vite/legacy-folder.d.ts +84 -0
- package/schematics/migrate-to-vite/legacy-folder.js +340 -0
- package/schematics/migrate-to-vite/legacy-folder.js.map +1 -0
- package/schematics/migrate-to-vite/report.d.ts +32 -0
- package/schematics/migrate-to-vite/report.js +97 -0
- package/schematics/migrate-to-vite/report.js.map +1 -0
- package/schematics/migrate-to-vite/schema.d.ts +13 -0
- package/schematics/migrate-to-vite/schema.js +3 -0
- package/schematics/migrate-to-vite/schema.js.map +1 -0
- package/schematics/migrate-to-vite/schema.json +31 -0
- package/schematics/migrate-to-vite/setup/dependencies.d.ts +64 -0
- package/schematics/migrate-to-vite/setup/dependencies.js +183 -0
- package/schematics/migrate-to-vite/setup/dependencies.js.map +1 -0
- package/schematics/migrate-to-vite/setup/index.d.ts +6 -0
- package/schematics/migrate-to-vite/setup/index.js +13 -0
- package/schematics/migrate-to-vite/setup/index.js.map +1 -0
- package/schematics/migrate-to-vite/setup/json-file.d.ts +51 -0
- package/schematics/migrate-to-vite/setup/json-file.js +115 -0
- package/schematics/migrate-to-vite/setup/json-file.js.map +1 -0
- package/schematics/migrate-to-vite/setup/source.d.ts +30 -0
- package/schematics/migrate-to-vite/setup/source.js +202 -0
- package/schematics/migrate-to-vite/setup/source.js.map +1 -0
- package/schematics/migrate-to-vite/setup/targets.d.ts +51 -0
- package/schematics/migrate-to-vite/setup/targets.js +48 -0
- package/schematics/migrate-to-vite/setup/targets.js.map +1 -0
- package/schematics/migrate-to-vite/setup/vite-config.d.ts +100 -0
- package/schematics/migrate-to-vite/setup/vite-config.js +175 -0
- package/schematics/migrate-to-vite/setup/vite-config.js.map +1 -0
- package/schematics/migrate-to-vite/setup/workspace.d.ts +105 -0
- package/schematics/migrate-to-vite/setup/workspace.js +245 -0
- package/schematics/migrate-to-vite/setup/workspace.js.map +1 -0
- package/schematics/migrate-to-vite/state.d.ts +65 -0
- package/schematics/migrate-to-vite/state.js +92 -0
- package/schematics/migrate-to-vite/state.js.map +1 -0
- package/schematics/migrate-to-vite/testing/fixtures.d.ts +30 -0
- package/schematics/migrate-to-vite/testing/fixtures.js +306 -0
- package/schematics/migrate-to-vite/testing/fixtures.js.map +1 -0
- package/schematics/migrate-to-vite/update-note.d.ts +6 -0
- package/schematics/migrate-to-vite/update-note.js +23 -0
- package/schematics/migrate-to-vite/update-note.js.map +1 -0
- package/schematics/migration.json +5 -0
- package/schematics/migrations/standalone-pages/index.js +7 -6
- package/schematics/migrations/standalone-pages/index.js.map +1 -1
- package/schematics/vite-setup/index.d.ts +24 -0
- package/schematics/vite-setup/index.js +212 -0
- package/schematics/vite-setup/index.js.map +1 -0
- package/schematics/vite-setup/schema.d.ts +7 -0
- package/schematics/vite-setup/schema.js +3 -0
- package/schematics/vite-setup/schema.js.map +1 -0
- package/schematics/vite-setup/schema.json +19 -0
- package/scripts/restore-theme.js +9 -2
- package/templates/api/class-declaration.html.nunj +5 -3
- package/templates/context.ts.nunj +3 -0
- package/templates/demo-app.ts.nunj +37 -0
- package/templates/demo-routes.ts.nunj +23 -0
- package/templates/helpers/badge.html.nunj +1 -1
- package/templates/helpers/status.html.nunj +4 -8
- package/templates/index.ts.nunj +5 -0
- package/templates/page-wrapper.ts.nunj +30 -2
- package/templates/page.ts.nunj +33 -1
- package/templates/parts/page-tags.html.nunj +1 -1
- package/templates/playgrounds.ts.nunj +8 -9
- package/templates/routes.ts.nunj +10 -1
- package/templates/symbol/decorators.html.nunj +12 -0
- package/templates/symbol/details.html.nunj +62 -0
- package/templates/symbol/extended-by.html.nunj +17 -0
- package/templates/symbol/header.html.nunj +22 -0
- package/templates/symbol/members.html.nunj +303 -0
- package/templates/symbol/page.html.nunj +76 -0
- package/templates/symbol/see-also.html.nunj +16 -0
- package/engine/.cache/apps/ng-doc/docs/api-documentation/auto-generation/ng-doc.page.mjs +0 -20
- package/engine/.cache/apps/ng-doc/docs/api-documentation/documenting-declarations/ng-doc.page.mjs +0 -20
- package/engine/.cache/apps/ng-doc/docs/api-documentation/rendering-api/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/icons/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/layout/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/page-processors/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/page-skeleton/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/search/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/customization/themes/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/develop/ng-doc.page.mjs +0 -36
- package/engine/.cache/apps/ng-doc/docs/getting-started/configuration/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/getting-started/installation/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/getting-started/migrations/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/getting-started/ssr/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/getting-started/what-is-ng-doc/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/ng-doc.api.mjs +0 -42
- package/engine/.cache/apps/ng-doc/docs/recipes/ignoring-file-lines/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/recipes/performance/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/writing-content/blockquotes/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/code-blocks/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/demo-and-demo-pane/ng-doc.page.mjs +0 -19
- package/engine/.cache/apps/ng-doc/docs/writing-content/images-videos-and-embeds/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/keywords/ng-doc.page.mjs +0 -17
- package/engine/.cache/apps/ng-doc/docs/writing-content/mermaid-diagrams/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/nunjucks/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/pages-and-categories/ng-doc.page.mjs +0 -18
- package/engine/.cache/apps/ng-doc/docs/writing-content/playground/ng-doc.page.mjs +0 -33
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Tree } from '@angular-devkit/schematics';
|
|
2
|
+
import { MigrationFinding } from './analyze';
|
|
3
|
+
import { JsonLike, WorkspaceProject, WorkspaceTarget } from './setup/workspace';
|
|
4
|
+
/**
|
|
5
|
+
* The `outDir` of the kept legacy targets. The legacy engine writes `<outDir>/ng-doc/<project>`, so
|
|
6
|
+
* their generated folder is `ng-doc-legacy/ng-doc/<project>`, as for NgDoc's own site.
|
|
7
|
+
*/
|
|
8
|
+
export declare const LEGACY_OUT_DIR = "ng-doc-legacy";
|
|
9
|
+
/** The `.gitignore` line for the legacy targets' generated files. */
|
|
10
|
+
export declare const LEGACY_OUT_DIR_IGNORE = "/ng-doc-legacy";
|
|
11
|
+
/** One value of a kept legacy target that the migration changed, so it can be changed back. */
|
|
12
|
+
export interface LegacyTargetEdit {
|
|
13
|
+
/** The legacy target, such as `build-legacy`. */
|
|
14
|
+
target: string;
|
|
15
|
+
/** The JSON path of the value inside the target, such as `['options', 'tsConfig']`. */
|
|
16
|
+
path: string[];
|
|
17
|
+
/** The value before the migration; absent when the migration added it. */
|
|
18
|
+
before?: JsonLike;
|
|
19
|
+
after: JsonLike;
|
|
20
|
+
}
|
|
21
|
+
/** How the kept legacy targets get a generated folder of their own. */
|
|
22
|
+
export interface LegacyFolderPlan {
|
|
23
|
+
/** Their generated folder, workspace-relative. */
|
|
24
|
+
folder: string;
|
|
25
|
+
/** The files to create (the legacy NgDoc configuration and tsconfig files), by path. */
|
|
26
|
+
files: {
|
|
27
|
+
[file: string]: string;
|
|
28
|
+
};
|
|
29
|
+
edits: LegacyTargetEdit[];
|
|
30
|
+
findings: MigrationFinding[];
|
|
31
|
+
}
|
|
32
|
+
/** What `planLegacyFolder` needs to know about the migration. */
|
|
33
|
+
export interface LegacyFolderInput {
|
|
34
|
+
/** The project before the migration, with its original targets. */
|
|
35
|
+
project: WorkspaceProject;
|
|
36
|
+
/** The original build target, and the name it is kept under. */
|
|
37
|
+
build: {
|
|
38
|
+
name: string;
|
|
39
|
+
legacyName: string;
|
|
40
|
+
};
|
|
41
|
+
/** The original serve target, and the name it is kept under. */
|
|
42
|
+
serve?: {
|
|
43
|
+
name: string;
|
|
44
|
+
legacyName: string;
|
|
45
|
+
};
|
|
46
|
+
/** The folder the legacy engine wrote before the migration, which the Vite engine now owns. */
|
|
47
|
+
legacyOutput: string;
|
|
48
|
+
/** The NgDoc configuration the legacy build target loads, if any. */
|
|
49
|
+
ngDocConfig?: string;
|
|
50
|
+
/** Files a previous run of the migration created, which may be written again. */
|
|
51
|
+
owned: ReadonlySet<string>;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Plans a generated folder of their own for the legacy targets that the migration keeps.
|
|
55
|
+
*
|
|
56
|
+
* Both engines write `<outDir>/ng-doc/<project>` by default. The Vite engine refuses to overwrite
|
|
57
|
+
* files it didn't write (`OUTPUT_UNOWNED_COLLISION`), and the legacy engine deletes and rewrites
|
|
58
|
+
* its folder, so a single `build-legacy` run would stop the next `serve`. The legacy targets
|
|
59
|
+
* therefore load a small NgDoc configuration with `outDir: 'ng-doc-legacy'`, compile with a
|
|
60
|
+
* tsconfig that maps `@ng-doc/generated` there, and copy their generated assets from there. The
|
|
61
|
+
* Vite engine keeps the folder and the mappings the project already has. Returns only findings
|
|
62
|
+
* when the targets can't be changed safely, and they keep sharing the folder.
|
|
63
|
+
* @param tree - The workspace tree.
|
|
64
|
+
* @param input - The migration.
|
|
65
|
+
*/
|
|
66
|
+
export declare function planLegacyFolder(tree: Tree, input: LegacyFolderInput): LegacyFolderPlan;
|
|
67
|
+
/**
|
|
68
|
+
* Applies the edits of one legacy target.
|
|
69
|
+
* @param target - The target.
|
|
70
|
+
* @param name - The name the target is kept under.
|
|
71
|
+
* @param edits - Every edit of the migration.
|
|
72
|
+
*/
|
|
73
|
+
export declare function applyLegacyEdits(target: WorkspaceTarget, name: string, edits: readonly LegacyTargetEdit[]): WorkspaceTarget;
|
|
74
|
+
/**
|
|
75
|
+
* Changes back the edits of one legacy target whose value is still the one the migration wrote.
|
|
76
|
+
* @param target - The target.
|
|
77
|
+
* @param name - The name the target is kept under.
|
|
78
|
+
* @param edits - Every edit of the migration.
|
|
79
|
+
* @returns The target, and the paths of the values that were changed since and are kept.
|
|
80
|
+
*/
|
|
81
|
+
export declare function undoLegacyEdits(target: WorkspaceTarget, name: string, edits: readonly LegacyTargetEdit[]): {
|
|
82
|
+
target: WorkspaceTarget;
|
|
83
|
+
kept: string[];
|
|
84
|
+
};
|
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LEGACY_OUT_DIR_IGNORE = exports.LEGACY_OUT_DIR = void 0;
|
|
4
|
+
exports.planLegacyFolder = planLegacyFolder;
|
|
5
|
+
exports.applyLegacyEdits = applyLegacyEdits;
|
|
6
|
+
exports.undoLegacyEdits = undoLegacyEdits;
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const json_file_1 = require("./setup/json-file");
|
|
9
|
+
/**
|
|
10
|
+
* The `outDir` of the kept legacy targets. The legacy engine writes `<outDir>/ng-doc/<project>`, so
|
|
11
|
+
* their generated folder is `ng-doc-legacy/ng-doc/<project>`, as for NgDoc's own site.
|
|
12
|
+
*/
|
|
13
|
+
exports.LEGACY_OUT_DIR = 'ng-doc-legacy';
|
|
14
|
+
/** The `.gitignore` line for the legacy targets' generated files. */
|
|
15
|
+
exports.LEGACY_OUT_DIR_IGNORE = `/${exports.LEGACY_OUT_DIR}`;
|
|
16
|
+
function isRecord(value) {
|
|
17
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
18
|
+
}
|
|
19
|
+
function normalizePath(value) {
|
|
20
|
+
const normalized = path_1.posix.normalize(value.replace(/\\/g, '/')).replace(/^\.\/|\/$/g, '');
|
|
21
|
+
return normalized === '.' ? '' : normalized;
|
|
22
|
+
}
|
|
23
|
+
/** A path relative to a folder, in the `./` form tsconfig `paths` need without a `baseUrl`. */
|
|
24
|
+
function relativeTo(folder, file) {
|
|
25
|
+
const relative = path_1.posix.relative(folder || '.', file) || '.';
|
|
26
|
+
return relative.startsWith('.') ? relative : `./${relative}`;
|
|
27
|
+
}
|
|
28
|
+
function within(file, folder) {
|
|
29
|
+
return file === folder || file.startsWith(`${folder}/`);
|
|
30
|
+
}
|
|
31
|
+
function readCompilerPaths(tree, file) {
|
|
32
|
+
const seen = new Set();
|
|
33
|
+
let paths;
|
|
34
|
+
let baseUrl;
|
|
35
|
+
let current = file;
|
|
36
|
+
while (current && !seen.has(current) && (!paths || baseUrl === undefined)) {
|
|
37
|
+
if (!tree.exists(current) && tree.exists(`${current}.json`))
|
|
38
|
+
current = `${current}.json`;
|
|
39
|
+
if (!tree.exists(current))
|
|
40
|
+
break;
|
|
41
|
+
seen.add(current);
|
|
42
|
+
const json = new json_file_1.JsonFile(tree, current);
|
|
43
|
+
const value = json.get(['compilerOptions', 'paths']);
|
|
44
|
+
if (!paths && isRecord(value)) {
|
|
45
|
+
paths = { file: current, value: value };
|
|
46
|
+
}
|
|
47
|
+
const url = json.get(['compilerOptions', 'baseUrl']);
|
|
48
|
+
if (baseUrl === undefined && typeof url === 'string') {
|
|
49
|
+
baseUrl = normalizePath(path_1.posix.join(path_1.posix.dirname(current), url));
|
|
50
|
+
}
|
|
51
|
+
const extended = json.get(['extends']);
|
|
52
|
+
// Only a relative `extends` can hold the project's own mappings; a package's tsconfig doesn't.
|
|
53
|
+
current =
|
|
54
|
+
typeof extended === 'string' && extended.startsWith('.')
|
|
55
|
+
? normalizePath(path_1.posix.join(path_1.posix.dirname(current), extended))
|
|
56
|
+
: undefined;
|
|
57
|
+
}
|
|
58
|
+
if (!paths)
|
|
59
|
+
return undefined;
|
|
60
|
+
return {
|
|
61
|
+
paths: paths.value,
|
|
62
|
+
base: baseUrl ?? normalizePath(path_1.posix.dirname(paths.file)),
|
|
63
|
+
baseUrl: baseUrl !== undefined,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The `paths` of a tsconfig for the legacy targets: every mapping into the legacy engine's old
|
|
68
|
+
* folder points into its new one, and the other mappings stay as they resolve today. TypeScript
|
|
69
|
+
* replaces `paths` as a whole, so the file repeats every mapping. Returns undefined when no
|
|
70
|
+
* mapping points into the old folder: the legacy build would not import its own pages then.
|
|
71
|
+
*/
|
|
72
|
+
function legacyPaths(compiler, folder, from, to) {
|
|
73
|
+
// Without an inherited `baseUrl`, the new file's own folder resolves the entries it writes.
|
|
74
|
+
const base = compiler.baseUrl ? compiler.base : folder;
|
|
75
|
+
let moved = false;
|
|
76
|
+
const paths = Object.fromEntries(Object.entries(compiler.paths).map(([alias, entries]) => [
|
|
77
|
+
alias,
|
|
78
|
+
(Array.isArray(entries) ? entries : []).map((entry) => {
|
|
79
|
+
if (typeof entry !== 'string')
|
|
80
|
+
return entry;
|
|
81
|
+
const resolved = normalizePath(path_1.posix.join(compiler.base, entry));
|
|
82
|
+
if (within(resolved, from)) {
|
|
83
|
+
moved = true;
|
|
84
|
+
const next = path_1.posix.join(to, path_1.posix.relative(from, resolved));
|
|
85
|
+
return compiler.baseUrl ? path_1.posix.relative(base || '.', next) : relativeTo(base, next);
|
|
86
|
+
}
|
|
87
|
+
return compiler.baseUrl ? entry : relativeTo(base, resolved);
|
|
88
|
+
}),
|
|
89
|
+
]));
|
|
90
|
+
return moved ? paths : undefined;
|
|
91
|
+
}
|
|
92
|
+
/** `tsconfig.app.json` → `tsconfig.app.legacy.json`, keeping the folder and any Nx tokens. */
|
|
93
|
+
function legacyName(file, extension) {
|
|
94
|
+
const match = /\.(json|ts|js|mjs|cjs|mts|cts)$/.exec(file);
|
|
95
|
+
return `${match ? file.slice(0, -match[0].length) : file}.legacy${extension}`;
|
|
96
|
+
}
|
|
97
|
+
function legacyConfigText(source, file) {
|
|
98
|
+
const header = [
|
|
99
|
+
'// The NgDoc configuration of the legacy builders (`build-legacy`, `serve-legacy`), created by',
|
|
100
|
+
`// \`ng g @ng-doc/builder:migrate-to-vite\`. Their generated files go to \`${exports.LEGACY_OUT_DIR}/\`, so`,
|
|
101
|
+
"// they never share a folder with the Vite engine, which refuses files it didn't write.",
|
|
102
|
+
"import type { NgDocConfiguration } from '@ng-doc/builder';",
|
|
103
|
+
'',
|
|
104
|
+
];
|
|
105
|
+
if (!source) {
|
|
106
|
+
return [
|
|
107
|
+
...header,
|
|
108
|
+
`const legacyConfig: NgDocConfiguration = { outDir: '${exports.LEGACY_OUT_DIR}' };`,
|
|
109
|
+
'',
|
|
110
|
+
'export default legacyConfig;',
|
|
111
|
+
'',
|
|
112
|
+
].join('\n');
|
|
113
|
+
}
|
|
114
|
+
const specifier = relativeTo(path_1.posix.dirname(file), source.replace(/\.(ts|js|mjs|cjs|mts|cts)$/, ''));
|
|
115
|
+
return [
|
|
116
|
+
...header,
|
|
117
|
+
`import config from '${specifier}';`,
|
|
118
|
+
'',
|
|
119
|
+
`const legacyConfig: NgDocConfiguration = { ...config, outDir: '${exports.LEGACY_OUT_DIR}' };`,
|
|
120
|
+
'',
|
|
121
|
+
'export default legacyConfig;',
|
|
122
|
+
'',
|
|
123
|
+
].join('\n');
|
|
124
|
+
}
|
|
125
|
+
function legacyTsconfigText(extended, paths) {
|
|
126
|
+
const body = JSON.stringify({ extends: `./${extended}`, compilerOptions: { paths } }, null, 2);
|
|
127
|
+
return [
|
|
128
|
+
'/* The tsconfig of the legacy builders (`build-legacy`, `serve-legacy`), created by',
|
|
129
|
+
' `ng g @ng-doc/builder:migrate-to-vite`. It maps `@ng-doc/generated` to their own',
|
|
130
|
+
` generated folder in \`${exports.LEGACY_OUT_DIR}/\`. */`,
|
|
131
|
+
body,
|
|
132
|
+
'',
|
|
133
|
+
].join('\n');
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Plans a generated folder of their own for the legacy targets that the migration keeps.
|
|
137
|
+
*
|
|
138
|
+
* Both engines write `<outDir>/ng-doc/<project>` by default. The Vite engine refuses to overwrite
|
|
139
|
+
* files it didn't write (`OUTPUT_UNOWNED_COLLISION`), and the legacy engine deletes and rewrites
|
|
140
|
+
* its folder, so a single `build-legacy` run would stop the next `serve`. The legacy targets
|
|
141
|
+
* therefore load a small NgDoc configuration with `outDir: 'ng-doc-legacy'`, compile with a
|
|
142
|
+
* tsconfig that maps `@ng-doc/generated` there, and copy their generated assets from there. The
|
|
143
|
+
* Vite engine keeps the folder and the mappings the project already has. Returns only findings
|
|
144
|
+
* when the targets can't be changed safely, and they keep sharing the folder.
|
|
145
|
+
* @param tree - The workspace tree.
|
|
146
|
+
* @param input - The migration.
|
|
147
|
+
*/
|
|
148
|
+
function planLegacyFolder(tree, input) {
|
|
149
|
+
const { project, legacyOutput, owned } = input;
|
|
150
|
+
const folder = path_1.posix.join(exports.LEGACY_OUT_DIR, 'ng-doc', project.name);
|
|
151
|
+
const build = project.targets[input.build.name];
|
|
152
|
+
const serve = input.serve ? project.targets[input.serve.name] : undefined;
|
|
153
|
+
const findings = [];
|
|
154
|
+
const shared = (subject, reason) => ({
|
|
155
|
+
folder,
|
|
156
|
+
files: {},
|
|
157
|
+
edits: [],
|
|
158
|
+
findings: [
|
|
159
|
+
{
|
|
160
|
+
level: 'manual',
|
|
161
|
+
subject,
|
|
162
|
+
message: `${reason} The legacy targets keep writing \`${legacyOutput}\`, the Vite engine's ` +
|
|
163
|
+
`folder: delete it before you switch engines, or give the legacy targets their own ` +
|
|
164
|
+
`folder (\`outDir: '${exports.LEGACY_OUT_DIR}'\` in their NgDoc configuration, with ` +
|
|
165
|
+
'`@ng-doc/generated` and the generated assets entry pointing there).',
|
|
166
|
+
},
|
|
167
|
+
],
|
|
168
|
+
});
|
|
169
|
+
// Nx interpolates these in options; the files are read at the resolved paths.
|
|
170
|
+
const nx = (value) => normalizePath(value
|
|
171
|
+
.replace(/\{workspaceRoot\}\/?/g, '')
|
|
172
|
+
.replace(/\{projectRoot\}/g, project.root || '.')
|
|
173
|
+
.replace(/\{projectName\}/g, project.name));
|
|
174
|
+
if (folder === legacyOutput) {
|
|
175
|
+
// The Vite engine follows the configuration's `outDir` too, so it already writes this folder.
|
|
176
|
+
return shared('ngDoc.outDir', `is \`${exports.LEGACY_OUT_DIR}\`, the folder the legacy targets would get.`);
|
|
177
|
+
}
|
|
178
|
+
const files = {};
|
|
179
|
+
const edits = [];
|
|
180
|
+
const create = (file, text) => {
|
|
181
|
+
if (tree.exists(file) && !owned.has(file))
|
|
182
|
+
return false;
|
|
183
|
+
files[file] = text;
|
|
184
|
+
return true;
|
|
185
|
+
};
|
|
186
|
+
const edit = (target, path, before, after) => {
|
|
187
|
+
edits.push({ target, path, ...(before === undefined ? {} : { before }), after });
|
|
188
|
+
};
|
|
189
|
+
// The NgDoc configuration: the build target's, with the legacy `outDir` over it.
|
|
190
|
+
const serveConfig = isRecord(serve?.options?.['ngDoc'])
|
|
191
|
+
? serve.options['ngDoc']['config']
|
|
192
|
+
: undefined;
|
|
193
|
+
if (typeof serveConfig === 'string' && normalizePath(serveConfig) !== input.ngDocConfig) {
|
|
194
|
+
return shared(`${input.serve.legacyName}.ngDoc.config`, `names \`${serveConfig}\`, another NgDoc configuration than the build target's.`);
|
|
195
|
+
}
|
|
196
|
+
const source = input.ngDocConfig;
|
|
197
|
+
// Next to the project's configuration, or in the project folder when that configuration lies
|
|
198
|
+
// outside it (shared by several projects, which each get their own legacy configuration).
|
|
199
|
+
const configFile = source && (!project.root || within(path_1.posix.dirname(source), project.root))
|
|
200
|
+
? legacyName(source, '.ts')
|
|
201
|
+
: path_1.posix.join(project.root, 'ng-doc.config.legacy.ts');
|
|
202
|
+
if (!create(configFile, legacyConfigText(source, configFile))) {
|
|
203
|
+
return shared(configFile, 'already exists.');
|
|
204
|
+
}
|
|
205
|
+
// tsconfig files: one per `tsConfig` value of the build target, each extending the original.
|
|
206
|
+
const tsConfigs = [];
|
|
207
|
+
if (typeof build.options?.['tsConfig'] === 'string') {
|
|
208
|
+
tsConfigs.push({ path: ['options', 'tsConfig'], value: build.options['tsConfig'] });
|
|
209
|
+
}
|
|
210
|
+
for (const [name, configuration] of Object.entries(build.configurations ?? {})) {
|
|
211
|
+
if (typeof configuration?.['tsConfig'] === 'string') {
|
|
212
|
+
tsConfigs.push({
|
|
213
|
+
path: ['configurations', name, 'tsConfig'],
|
|
214
|
+
value: configuration['tsConfig'],
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
if (!tsConfigs.length) {
|
|
219
|
+
return shared(`${input.build.legacyName}.tsConfig`, 'is not set.');
|
|
220
|
+
}
|
|
221
|
+
for (const { path, value } of tsConfigs) {
|
|
222
|
+
const file = nx(value);
|
|
223
|
+
const compiler = readCompilerPaths(tree, file);
|
|
224
|
+
const paths = compiler && legacyPaths(compiler, path_1.posix.dirname(file), legacyOutput, folder);
|
|
225
|
+
if (!paths) {
|
|
226
|
+
return shared(`${input.build.legacyName}.tsConfig`, `\`${file}\` maps no path into \`${legacyOutput}\`, so the schematic can't point ` +
|
|
227
|
+
'`@ng-doc/generated` of the legacy targets at another folder.');
|
|
228
|
+
}
|
|
229
|
+
const legacyFile = legacyName(file, '.json');
|
|
230
|
+
if (!create(legacyFile, legacyTsconfigText(path_1.posix.basename(file), paths))) {
|
|
231
|
+
return shared(legacyFile, 'already exists.');
|
|
232
|
+
}
|
|
233
|
+
edit(input.build.legacyName, path, value, legacyName(value, '.json'));
|
|
234
|
+
}
|
|
235
|
+
// The generated assets entry, in the options and in every configuration that sets `assets`.
|
|
236
|
+
const assetsOf = (path, value) => {
|
|
237
|
+
if (!Array.isArray(value))
|
|
238
|
+
return;
|
|
239
|
+
let moved = false;
|
|
240
|
+
const next = value.map((entry) => {
|
|
241
|
+
if (!isRecord(entry) || typeof entry['input'] !== 'string')
|
|
242
|
+
return entry;
|
|
243
|
+
const input = nx(entry['input']);
|
|
244
|
+
if (!within(input, legacyOutput))
|
|
245
|
+
return entry;
|
|
246
|
+
moved = true;
|
|
247
|
+
return { ...entry, input: path_1.posix.join(folder, path_1.posix.relative(legacyOutput, input)) };
|
|
248
|
+
});
|
|
249
|
+
if (moved)
|
|
250
|
+
edit(input.build.legacyName, path, value, next);
|
|
251
|
+
};
|
|
252
|
+
assetsOf(['options', 'assets'], build.options?.['assets']);
|
|
253
|
+
for (const [name, configuration] of Object.entries(build.configurations ?? {})) {
|
|
254
|
+
assetsOf(['configurations', name, 'assets'], configuration?.['assets']);
|
|
255
|
+
}
|
|
256
|
+
// Both legacy builders load the configuration named in their own options.
|
|
257
|
+
const withConfig = (name, target) => {
|
|
258
|
+
if (!target.options) {
|
|
259
|
+
edit(name, ['options'], undefined, { ngDoc: { config: configFile } });
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
const ngDoc = isRecord(target.options['ngDoc']) ? target.options['ngDoc'] : undefined;
|
|
263
|
+
edit(name, ['options', 'ngDoc'], ngDoc, { ...(ngDoc ?? {}), config: configFile });
|
|
264
|
+
};
|
|
265
|
+
withConfig(input.build.legacyName, build);
|
|
266
|
+
if (serve && input.serve)
|
|
267
|
+
withConfig(input.serve.legacyName, serve);
|
|
268
|
+
for (const [legacy, target] of [
|
|
269
|
+
[input.build.legacyName, build],
|
|
270
|
+
...(serve && input.serve ? [[input.serve.legacyName, serve]] : []),
|
|
271
|
+
]) {
|
|
272
|
+
for (const [name, configuration] of Object.entries(target.configurations ?? {})) {
|
|
273
|
+
if (configuration?.['ngDoc'] === undefined)
|
|
274
|
+
continue;
|
|
275
|
+
findings.push({
|
|
276
|
+
level: 'manual',
|
|
277
|
+
subject: `${legacy}.configurations.${name}.ngDoc`,
|
|
278
|
+
message: `replaces the NgDoc configuration of the legacy targets. Set \`outDir: '${exports.LEGACY_OUT_DIR}'\` ` +
|
|
279
|
+
`in it, so that configuration writes \`${folder}\` too.`,
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
return { folder, files, edits, findings };
|
|
284
|
+
}
|
|
285
|
+
function valueAt(target, path) {
|
|
286
|
+
let current = target;
|
|
287
|
+
for (const key of path) {
|
|
288
|
+
if (!isRecord(current))
|
|
289
|
+
return undefined;
|
|
290
|
+
current = current[key];
|
|
291
|
+
}
|
|
292
|
+
return current;
|
|
293
|
+
}
|
|
294
|
+
function withValue(target, path, value) {
|
|
295
|
+
const set = (record, [key, ...rest]) => {
|
|
296
|
+
const next = { ...record };
|
|
297
|
+
if (rest.length) {
|
|
298
|
+
next[key] = set(isRecord(record[key]) ? record[key] : {}, rest);
|
|
299
|
+
}
|
|
300
|
+
else if (value === undefined) {
|
|
301
|
+
delete next[key];
|
|
302
|
+
}
|
|
303
|
+
else {
|
|
304
|
+
next[key] = value;
|
|
305
|
+
}
|
|
306
|
+
return next;
|
|
307
|
+
};
|
|
308
|
+
return set(target, path);
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Applies the edits of one legacy target.
|
|
312
|
+
* @param target - The target.
|
|
313
|
+
* @param name - The name the target is kept under.
|
|
314
|
+
* @param edits - Every edit of the migration.
|
|
315
|
+
*/
|
|
316
|
+
function applyLegacyEdits(target, name, edits) {
|
|
317
|
+
return edits
|
|
318
|
+
.filter((item) => item.target === name)
|
|
319
|
+
.reduce((current, item) => withValue(current, item.path, item.after), target);
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* Changes back the edits of one legacy target whose value is still the one the migration wrote.
|
|
323
|
+
* @param target - The target.
|
|
324
|
+
* @param name - The name the target is kept under.
|
|
325
|
+
* @param edits - Every edit of the migration.
|
|
326
|
+
* @returns The target, and the paths of the values that were changed since and are kept.
|
|
327
|
+
*/
|
|
328
|
+
function undoLegacyEdits(target, name, edits) {
|
|
329
|
+
const kept = [];
|
|
330
|
+
let current = target;
|
|
331
|
+
for (const item of edits.filter((edit) => edit.target === name)) {
|
|
332
|
+
if (JSON.stringify(valueAt(current, item.path)) !== JSON.stringify(item.after)) {
|
|
333
|
+
kept.push(`${name}.${item.path.join('.')}`);
|
|
334
|
+
continue;
|
|
335
|
+
}
|
|
336
|
+
current = withValue(current, item.path, item.before);
|
|
337
|
+
}
|
|
338
|
+
return { target: current, kept };
|
|
339
|
+
}
|
|
340
|
+
//# sourceMappingURL=legacy-folder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-folder.js","sourceRoot":"","sources":["../../../../../libs/builder/schematics/migrate-to-vite/legacy-folder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { MigrationFinding } from './analyze';
|
|
2
|
+
import { DependencyMismatch } from './setup/dependencies';
|
|
3
|
+
/** Everything the report describes besides the findings. */
|
|
4
|
+
export interface ReportInput {
|
|
5
|
+
project: string;
|
|
6
|
+
findings: MigrationFinding[];
|
|
7
|
+
configFile?: string;
|
|
8
|
+
targets?: {
|
|
9
|
+
[name: string]: string;
|
|
10
|
+
};
|
|
11
|
+
created?: string[];
|
|
12
|
+
/** The project's own Vite configurations that NgDoc's configuration sits next to. */
|
|
13
|
+
keptViteConfigs?: string[];
|
|
14
|
+
modified?: string[];
|
|
15
|
+
deleted?: string;
|
|
16
|
+
/** The generated folder the Vite engine writes. */
|
|
17
|
+
generatedFolder?: string;
|
|
18
|
+
/** The generated folder of the kept legacy targets, when they got one of their own. */
|
|
19
|
+
legacyFolder?: {
|
|
20
|
+
folder: string;
|
|
21
|
+
targets: string[];
|
|
22
|
+
};
|
|
23
|
+
dependencies?: {
|
|
24
|
+
[name: string]: string;
|
|
25
|
+
};
|
|
26
|
+
mismatches?: DependencyMismatch[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Renders the migration report as Markdown. It depends only on its input, never on the time or on
|
|
30
|
+
* what an earlier run did, so running the migration again rewrites the same report.
|
|
31
|
+
*/
|
|
32
|
+
export declare function renderReport(input: ReportInput): string;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderReport = renderReport;
|
|
4
|
+
const dependencies_1 = require("./setup/dependencies");
|
|
5
|
+
const SECTIONS = [
|
|
6
|
+
{
|
|
7
|
+
level: 'blocking',
|
|
8
|
+
title: 'Blocking',
|
|
9
|
+
intro: 'The project was not migrated, and nothing was changed. Resolve these first:',
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
level: 'manual',
|
|
13
|
+
title: 'Needs a manual change',
|
|
14
|
+
intro: 'These were not migrated. The site can behave differently until you handle them:',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
level: 'migrated',
|
|
18
|
+
title: 'Migrated',
|
|
19
|
+
intro: 'These options and settings moved to the Vite configuration or the new targets:',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
level: 'dropped',
|
|
23
|
+
title: 'Dropped',
|
|
24
|
+
intro: 'These have no effect under Vite, or Vite already behaves this way:',
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
function unique(findings) {
|
|
28
|
+
const seen = new Set();
|
|
29
|
+
return findings.filter((finding) => {
|
|
30
|
+
const key = `${finding.level}\u0000${finding.subject}\u0000${finding.message}`;
|
|
31
|
+
if (seen.has(key))
|
|
32
|
+
return false;
|
|
33
|
+
seen.add(key);
|
|
34
|
+
return true;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Renders the migration report as Markdown. It depends only on its input, never on the time or on
|
|
39
|
+
* what an earlier run did, so running the migration again rewrites the same report.
|
|
40
|
+
*/
|
|
41
|
+
function renderReport(input) {
|
|
42
|
+
const findings = unique(input.findings);
|
|
43
|
+
const blocked = findings.some((finding) => finding.level === 'blocking');
|
|
44
|
+
const lines = [`# NgDoc migration to the Vite engine: ${input.project}`, ''];
|
|
45
|
+
if (!blocked) {
|
|
46
|
+
lines.push('## Changes', '');
|
|
47
|
+
for (const [name, legacy] of Object.entries(input.targets ?? {})) {
|
|
48
|
+
lines.push(`- Target \`${name}\` runs the Vite engine; the original is kept as \`${legacy}\`.`);
|
|
49
|
+
}
|
|
50
|
+
for (const file of input.created ?? [])
|
|
51
|
+
lines.push(`- Created \`${file}\`.`);
|
|
52
|
+
if (input.keptViteConfigs?.length && input.configFile) {
|
|
53
|
+
lines.push(`- ${input.keptViteConfigs.map((file) => `\`${file}\``).join(', ')} stays the ` +
|
|
54
|
+
'configuration of Vite and Vitest run directly; NgDoc uses ' +
|
|
55
|
+
`\`${input.configFile}\`, which the Vite targets name in \`configFile\`.`);
|
|
56
|
+
}
|
|
57
|
+
for (const file of input.modified ?? [])
|
|
58
|
+
lines.push(`- Changed \`${file}\`.`);
|
|
59
|
+
if (input.deleted) {
|
|
60
|
+
lines.push(`- Deleted the legacy generated folder \`${input.deleted}\`; the Vite engine writes it again.`);
|
|
61
|
+
}
|
|
62
|
+
if (input.legacyFolder) {
|
|
63
|
+
lines.push(`- ${input.legacyFolder.targets.map((name) => `\`${name}\``).join(' and ')} write their ` +
|
|
64
|
+
`generated files to \`${input.legacyFolder.folder}\` (added to \`.gitignore\`), so the ` +
|
|
65
|
+
'legacy builders and the Vite engine never share a generated folder.');
|
|
66
|
+
}
|
|
67
|
+
for (const [name, version] of Object.entries(input.dependencies ?? {})) {
|
|
68
|
+
lines.push(`- Added \`${name}@${version}\` to \`devDependencies\`.`);
|
|
69
|
+
}
|
|
70
|
+
for (const mismatch of input.mismatches ?? []) {
|
|
71
|
+
lines.push(`- ${(0, dependencies_1.dependencyMismatchText)(mismatch)}`);
|
|
72
|
+
}
|
|
73
|
+
lines.push('');
|
|
74
|
+
}
|
|
75
|
+
for (const section of SECTIONS) {
|
|
76
|
+
const items = findings.filter((finding) => finding.level === section.level);
|
|
77
|
+
if (!items.length)
|
|
78
|
+
continue;
|
|
79
|
+
lines.push(`## ${section.title}`, '', section.intro, '');
|
|
80
|
+
for (const finding of items)
|
|
81
|
+
lines.push(`- \`${finding.subject}\`: ${finding.message}`);
|
|
82
|
+
lines.push('');
|
|
83
|
+
}
|
|
84
|
+
if (!blocked) {
|
|
85
|
+
lines.push('## Next steps', '', '1. Install the dependencies if the schematic did not (`npm install`).', '2. Run `ng serve` and `ng build`, and compare the pages with the legacy build (`ng run ' +
|
|
86
|
+
`${input.project}:build-legacy\`).`, input.legacyFolder
|
|
87
|
+
? `3. The Vite targets write \`${input.generatedFolder ?? `ng-doc/${input.project}`}\` and ` +
|
|
88
|
+
`the \`-legacy\` targets \`${input.legacyFolder.folder}\`, so you can switch between ` +
|
|
89
|
+
'them without deleting anything.'
|
|
90
|
+
: `3. Both engines write \`${input.generatedFolder ?? `ng-doc/${input.project}`}\`. ` +
|
|
91
|
+
'Delete it whenever you switch between the `-legacy` targets and the Vite targets: ' +
|
|
92
|
+
"the Vite engine refuses files it didn't write (`OUTPUT_UNOWNED_COLLISION`), and the " +
|
|
93
|
+
"legacy engine replaces the Vite engine's files.", '4. Commit the changes, including this folder if you want to keep `--revert` available.', '', '## Roll back', '', `Run \`ng g @ng-doc/builder:migrate-to-vite --project ${input.project} --revert\`. It restores the`, 'original targets and the changed files, and deletes the files it created unless you edited', 'them. It keeps the added dependencies. Your version control remains the primary way back.', '');
|
|
94
|
+
}
|
|
95
|
+
return lines.join('\n');
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../../libs/builder/schematics/migrate-to-vite/report.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** The options of `ng g @ng-doc/builder:migrate-to-vite`. */
|
|
2
|
+
export interface NgDocMigrateToViteSchema {
|
|
3
|
+
/** The project to migrate (default: the only project on the legacy builders). */
|
|
4
|
+
project?: string;
|
|
5
|
+
/** Undo an earlier migration of the project. */
|
|
6
|
+
revert?: boolean;
|
|
7
|
+
/** The Vite configuration file to create, workspace-relative. */
|
|
8
|
+
viteConfig?: string;
|
|
9
|
+
/** The root component's file, workspace-relative. */
|
|
10
|
+
rootComponent?: string;
|
|
11
|
+
/** Do not install the added dependencies. */
|
|
12
|
+
skipInstall?: boolean;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../libs/builder/schematics/migrate-to-vite/schema.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "NgDocMigrateToVite",
|
|
4
|
+
"title": "Migrate an NgDoc project to the Vite engine",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "The project to migrate. Defaults to the only project that builds with @ng-doc/builder:application."
|
|
10
|
+
},
|
|
11
|
+
"revert": {
|
|
12
|
+
"type": "boolean",
|
|
13
|
+
"default": false,
|
|
14
|
+
"description": "Undo an earlier migration of the project: restore its original targets and changed files, and delete the files the migration created."
|
|
15
|
+
},
|
|
16
|
+
"viteConfig": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"description": "The Vite configuration file to create, relative to the workspace root. Defaults to vite.config.mjs in the project root."
|
|
19
|
+
},
|
|
20
|
+
"rootComponent": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"description": "The file of the application's root component, relative to the workspace root. Found from the browser entry by default."
|
|
23
|
+
},
|
|
24
|
+
"skipInstall": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"default": false,
|
|
27
|
+
"description": "Do not install the added dependencies."
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"additionalProperties": false
|
|
31
|
+
}
|