@hyperfrontend/builder 0.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/CHANGELOG.md +63 -0
- package/FUNDING.md +141 -0
- package/LICENSE.md +21 -0
- package/README.md +162 -0
- package/SECURITY.md +82 -0
- package/THIRD_PARTY_LICENSES.md +13 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.cjs.js +7 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.cjs.js +13 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.esm.js +8 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.cjs.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.esm.js +4 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/encoding/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/encoding/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/function/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/function/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.cjs.js +7 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.cjs.js +7 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/messaging/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/messaging/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js +13 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js +8 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/reflect/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/reflect/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/regexp/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/regexp/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/string/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/string/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/symbol/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/symbol/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/timers/index.cjs.js +13 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/timers/index.esm.js +10 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/url/index.cjs.js +6 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/url/index.esm.js +5 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-map/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-map/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-set/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-set/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/websocket/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/websocket/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked-prop-descriptors/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked-prop-descriptors/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked-props/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/immutable-api-utils/locked-props/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/logging/index.cjs.js +191 -0
- package/_dependencies/@hyperfrontend/logging/index.esm.js +186 -0
- package/_dependencies/@hyperfrontend/project-scope/cli/index.cjs.js +196 -0
- package/_dependencies/@hyperfrontend/project-scope/cli/index.esm.js +196 -0
- package/_dependencies/@hyperfrontend/project-scope/core/encoding/index.cjs.js +82 -0
- package/_dependencies/@hyperfrontend/project-scope/core/encoding/index.esm.js +82 -0
- package/_dependencies/@hyperfrontend/project-scope/core/fs/index.cjs.js +154 -0
- package/_dependencies/@hyperfrontend/project-scope/core/fs/index.esm.js +149 -0
- package/_dependencies/@hyperfrontend/project-scope/core/index.cjs.js +459 -0
- package/_dependencies/@hyperfrontend/project-scope/core/index.esm.js +440 -0
- package/_dependencies/@hyperfrontend/project-scope/core/logger/index.cjs.js +84 -0
- package/_dependencies/@hyperfrontend/project-scope/core/logger/index.esm.js +80 -0
- package/_dependencies/@hyperfrontend/project-scope/core/path/index.cjs.js +26 -0
- package/_dependencies/@hyperfrontend/project-scope/core/path/index.esm.js +22 -0
- package/_dependencies/@hyperfrontend/project-scope/core/platform/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/project-scope/core/platform/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/dependencies/index.cjs.js +90 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/dependencies/index.esm.js +90 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/entry-points/index.cjs.js +174 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/entry-points/index.esm.js +174 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/framework/index.cjs.js +174 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/framework/index.esm.js +172 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/index.cjs.js +184 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/index.esm.js +184 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/project-type/index.cjs.js +172 -0
- package/_dependencies/@hyperfrontend/project-scope/heuristics/project-type/index.esm.js +172 -0
- package/_dependencies/@hyperfrontend/project-scope/index.cjs.js +222 -0
- package/_dependencies/@hyperfrontend/project-scope/index.esm.js +219 -0
- package/_dependencies/@hyperfrontend/project-scope/models/index.cjs.js +2 -0
- package/_dependencies/@hyperfrontend/project-scope/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/project-scope/nx/index.cjs.js +94 -0
- package/_dependencies/@hyperfrontend/project-scope/nx/index.esm.js +94 -0
- package/_dependencies/@hyperfrontend/project-scope/project/config/index.cjs.js +172 -0
- package/_dependencies/@hyperfrontend/project-scope/project/config/index.esm.js +172 -0
- package/_dependencies/@hyperfrontend/project-scope/project/index.cjs.js +176 -0
- package/_dependencies/@hyperfrontend/project-scope/project/index.esm.js +176 -0
- package/_dependencies/@hyperfrontend/project-scope/project/package/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/project/package/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/project/root/index.cjs.js +154 -0
- package/_dependencies/@hyperfrontend/project-scope/project/root/index.esm.js +153 -0
- package/_dependencies/@hyperfrontend/project-scope/project/traversal/index.cjs.js +91 -0
- package/_dependencies/@hyperfrontend/project-scope/project/traversal/index.esm.js +89 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/backend/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/backend/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/build/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/build/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/frontend/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/frontend/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/index.cjs.js +171 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/index.esm.js +169 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/legacy/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/legacy/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/linting/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/linting/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/monorepo/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/monorepo/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/testing/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/testing/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/types/index.cjs.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/tech/types/index.esm.js +88 -0
- package/_dependencies/@hyperfrontend/project-scope/vfs/index.cjs.js +102 -0
- package/_dependencies/@hyperfrontend/project-scope/vfs/index.esm.js +102 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/compare/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/compare/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/operations/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/operations/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/parse/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/parse/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/serialize/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/changelog/serialize/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/author/index.cjs.js +2403 -0
- package/_dependencies/@hyperfrontend/versioning/commits/author/index.esm.js +2381 -0
- package/_dependencies/@hyperfrontend/versioning/commits/classify/index.cjs.js +38 -0
- package/_dependencies/@hyperfrontend/versioning/commits/classify/index.esm.js +30 -0
- package/_dependencies/@hyperfrontend/versioning/commits/format/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/format/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/index.cjs.js +2457 -0
- package/_dependencies/@hyperfrontend/versioning/commits/index.esm.js +2407 -0
- package/_dependencies/@hyperfrontend/versioning/commits/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/parse/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/parse/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/commits/validate/index.cjs.js +27 -0
- package/_dependencies/@hyperfrontend/versioning/commits/validate/index.esm.js +25 -0
- package/_dependencies/@hyperfrontend/versioning/flow/executor/index.cjs.js +36 -0
- package/_dependencies/@hyperfrontend/versioning/flow/executor/index.esm.js +36 -0
- package/_dependencies/@hyperfrontend/versioning/flow/index.cjs.js +51 -0
- package/_dependencies/@hyperfrontend/versioning/flow/index.esm.js +51 -0
- package/_dependencies/@hyperfrontend/versioning/flow/models/index.cjs.js +30 -0
- package/_dependencies/@hyperfrontend/versioning/flow/models/index.esm.js +28 -0
- package/_dependencies/@hyperfrontend/versioning/flow/presets/index.cjs.js +47 -0
- package/_dependencies/@hyperfrontend/versioning/flow/presets/index.esm.js +45 -0
- package/_dependencies/@hyperfrontend/versioning/flow/steps/index.cjs.js +47 -0
- package/_dependencies/@hyperfrontend/versioning/flow/steps/index.esm.js +45 -0
- package/_dependencies/@hyperfrontend/versioning/git/index.cjs.js +8 -0
- package/_dependencies/@hyperfrontend/versioning/git/index.esm.js +9 -0
- package/_dependencies/@hyperfrontend/versioning/git/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/git/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/git/operations/index.cjs.js +3 -0
- package/_dependencies/@hyperfrontend/versioning/git/operations/index.esm.js +3 -0
- package/_dependencies/@hyperfrontend/versioning/index.cjs.js +2481 -0
- package/_dependencies/@hyperfrontend/versioning/index.esm.js +2423 -0
- package/_dependencies/@hyperfrontend/versioning/registry/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/registry/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/registry/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/registry/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/registry/npm/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/registry/npm/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/repository/index.cjs.js +18 -0
- package/_dependencies/@hyperfrontend/versioning/repository/index.esm.js +17 -0
- package/_dependencies/@hyperfrontend/versioning/repository/models/index.cjs.js +11 -0
- package/_dependencies/@hyperfrontend/versioning/repository/models/index.esm.js +10 -0
- package/_dependencies/@hyperfrontend/versioning/repository/parse/index.cjs.js +184 -0
- package/_dependencies/@hyperfrontend/versioning/repository/parse/index.esm.js +185 -0
- package/_dependencies/@hyperfrontend/versioning/repository/url/index.cjs.js +10 -0
- package/_dependencies/@hyperfrontend/versioning/repository/url/index.esm.js +8 -0
- package/_dependencies/@hyperfrontend/versioning/semver/compare/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/compare/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/format/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/format/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/increment/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/increment/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/parse/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/semver/parse/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/discovery/index.cjs.js +29 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/discovery/index.esm.js +29 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/index.cjs.js +29 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/index.esm.js +29 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/models/index.cjs.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/models/index.esm.js +1 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/operations/index.cjs.js +2 -0
- package/_dependencies/@hyperfrontend/versioning/workspace/operations/index.esm.js +2 -0
- package/_dependencies/@rollup/plugin-commonjs/index.cjs.js +6629 -0
- package/_dependencies/@rollup/plugin-commonjs/index.esm.js +6608 -0
- package/_dependencies/@rollup/plugin-json/index.cjs.js +2324 -0
- package/_dependencies/@rollup/plugin-json/index.esm.js +2322 -0
- package/_dependencies/@rollup/plugin-node-resolve/index.cjs.js +5430 -0
- package/_dependencies/@rollup/plugin-node-resolve/index.esm.js +5424 -0
- package/_dependencies/@rollup/plugin-terser/index.cjs.js +33220 -0
- package/_dependencies/@rollup/plugin-terser/index.esm.js +33217 -0
- package/_dependencies/@rollup/plugin-typescript/index.cjs.js +4840 -0
- package/_dependencies/@rollup/plugin-typescript/index.esm.js +4819 -0
- package/_dependencies/postject/index.cjs.js +5140 -0
- package/_dependencies/postject/index.esm.js +5131 -0
- package/_dependencies/rollup/index.cjs.js +24668 -0
- package/_dependencies/rollup/index.d.ts +1921 -0
- package/_dependencies/rollup/index.esm.js +24652 -0
- package/_dependencies/rollup-plugin-dts/index.cjs.js +6547 -0
- package/_dependencies/rollup-plugin-dts/index.esm.js +6537 -0
- package/_shared/bin/format/index.cjs.js +7 -0
- package/_shared/bin/format/index.esm.js +5 -0
- package/_shared/bin/native/codesign/index.cjs.js +30 -0
- package/_shared/bin/native/codesign/index.esm.js +26 -0
- package/_shared/bin/native/host-binary/index.cjs.js +13 -0
- package/_shared/bin/native/host-binary/index.esm.js +11 -0
- package/_shared/bin/native/inject/index.cjs.js +25 -0
- package/_shared/bin/native/inject/index.esm.js +18 -0
- package/_shared/bin/native/platform-check/index.cjs.js +13 -0
- package/_shared/bin/native/platform-check/index.esm.js +10 -0
- package/_shared/bin/native/sea-blob/index.cjs.js +21 -0
- package/_shared/bin/native/sea-blob/index.esm.js +19 -0
- package/_shared/bin/native/sea-config/index.cjs.js +9 -0
- package/_shared/bin/native/sea-config/index.esm.js +7 -0
- package/_shared/bin/script/bootstrap-footer/index.cjs.js +22 -0
- package/_shared/bin/script/bootstrap-footer/index.esm.js +19 -0
- package/_shared/bundle/declarations/flatten-paths/index.cjs.js +34 -0
- package/_shared/bundle/declarations/flatten-paths/index.esm.js +29 -0
- package/_shared/bundle/dependencies/collect-workspace-deps/index.cjs.js +24 -0
- package/_shared/bundle/dependencies/collect-workspace-deps/index.esm.js +21 -0
- package/_shared/bundle/dependencies/externalize-plugin/index.cjs.js +93 -0
- package/_shared/bundle/dependencies/externalize-plugin/index.esm.js +86 -0
- package/_shared/bundle/dependencies/prune/ast-utils/index.esm.js +31 -0
- package/_shared/bundle/dependencies/prune/namespace-usage/index.esm.js +208 -0
- package/_shared/bundle/dependencies/prune/specifiers/index.cjs.js +62 -0
- package/_shared/bundle/dependencies/prune/specifiers/index.esm.js +53 -0
- package/_shared/bundle/entries/discover-entries/index.cjs.js +87 -0
- package/_shared/bundle/entries/discover-entries/index.esm.js +80 -0
- package/_shared/bundle/entries/resolve-entries/index.cjs.js +38 -0
- package/_shared/bundle/entries/resolve-entries/index.esm.js +34 -0
- package/_shared/bundle/externals/validate-globals/index.cjs.js +14 -0
- package/_shared/bundle/externals/validate-globals/index.esm.js +12 -0
- package/_shared/bundle/fs/deps-root/index.cjs.js +7 -0
- package/_shared/bundle/fs/deps-root/index.esm.js +5 -0
- package/_shared/bundle/fs/empty-dirs/index.cjs.js +23 -0
- package/_shared/bundle/fs/empty-dirs/index.esm.js +21 -0
- package/_shared/bundle/fs/entry-dir/index.cjs.js +7 -0
- package/_shared/bundle/fs/entry-dir/index.esm.js +5 -0
- package/_shared/bundle/fs/posix-path/index.cjs.js +9 -0
- package/_shared/bundle/fs/posix-path/index.esm.js +4 -0
- package/_shared/bundle/fs/under-dir/index.cjs.js +5 -0
- package/_shared/bundle/fs/under-dir/index.esm.js +3 -0
- package/_shared/memory/recover/index.cjs.js +15 -0
- package/_shared/memory/recover/index.esm.js +14 -0
- package/_shared/package/finalize-files/index.cjs.js +16 -0
- package/_shared/package/finalize-files/index.esm.js +15 -0
- package/_shared/package/json/cdn-paths/index.cjs.js +13 -0
- package/_shared/package/json/cdn-paths/index.esm.js +11 -0
- package/_shared/package/json/filter-deps/index.cjs.js +37 -0
- package/_shared/package/json/filter-deps/index.esm.js +34 -0
- package/_shared/package/json/generate-exports/index.cjs.js +56 -0
- package/_shared/package/json/generate-exports/index.esm.js +52 -0
- package/_shared/package/json/inherit-fields/index.cjs.js +19 -0
- package/_shared/package/json/inherit-fields/index.esm.js +17 -0
- package/_shared/package/json/read-package-json/index.cjs.js +7 -0
- package/_shared/package/json/read-package-json/index.esm.js +6 -0
- package/_shared/package/json/reflect-files-allowlist/index.cjs.js +39 -0
- package/_shared/package/json/reflect-files-allowlist/index.esm.js +33 -0
- package/_shared/package/json/synthesize/index.cjs.js +72 -0
- package/_shared/package/json/synthesize/index.esm.js +68 -0
- package/_shared/package/json/write/index.cjs.js +9 -0
- package/_shared/package/json/write/index.esm.js +8 -0
- package/_shared/package/licenses/generate-content/index.cjs.js +17 -0
- package/_shared/package/licenses/generate-content/index.esm.js +17 -0
- package/_shared/package/licenses/license-url/index.esm.js +29 -0
- package/_shared/package/licenses/write/index.cjs.js +9 -0
- package/_shared/package/licenses/write/index.esm.js +8 -0
- package/_shared/presets/by-names/index.cjs.js +10 -0
- package/_shared/presets/by-names/index.esm.js +8 -0
- package/_shared/presets/by-prefix/index.cjs.js +7 -0
- package/_shared/presets/by-prefix/index.esm.js +5 -0
- package/bin/format.d.ts +18 -0
- package/bin/format.d.ts.map +1 -0
- package/bin/hf-build.d.ts +81 -0
- package/bin/hf-build.d.ts.map +1 -0
- package/bin/hf-build.js +208533 -0
- package/bin/hf-build.linux-x64 +0 -0
- package/bin/index.cjs.js +548 -0
- package/bin/index.d.ts +26 -0
- package/bin/index.d.ts.map +1 -0
- package/bin/index.esm.js +546 -0
- package/bin/native/build-native.d.ts +44 -0
- package/bin/native/build-native.d.ts.map +1 -0
- package/bin/native/codesign.d.ts +65 -0
- package/bin/native/codesign.d.ts.map +1 -0
- package/bin/native/dispatch.d.ts +75 -0
- package/bin/native/dispatch.d.ts.map +1 -0
- package/bin/native/host-binary.d.ts +36 -0
- package/bin/native/host-binary.d.ts.map +1 -0
- package/bin/native/index.cjs.js +264 -0
- package/bin/native/index.d.ts +407 -0
- package/bin/native/index.d.ts.map +1 -0
- package/bin/native/index.esm.js +249 -0
- package/bin/native/inject.d.ts +61 -0
- package/bin/native/inject.d.ts.map +1 -0
- package/bin/native/platform-check.d.ts +39 -0
- package/bin/native/platform-check.d.ts.map +1 -0
- package/bin/native/sea-blob.d.ts +40 -0
- package/bin/native/sea-blob.d.ts.map +1 -0
- package/bin/native/sea-config.d.ts +45 -0
- package/bin/native/sea-config.d.ts.map +1 -0
- package/bin/native/worker/index.cjs.js +88 -0
- package/bin/native/worker/index.d.ts +68 -0
- package/bin/native/worker/index.d.ts.map +1 -0
- package/bin/native/worker/index.esm.js +86 -0
- package/bin/native/worker/job-runner.d.ts +29 -0
- package/bin/native/worker/job-runner.d.ts.map +1 -0
- package/bin/native/worker/types.d.ts +38 -0
- package/bin/native/worker/types.d.ts.map +1 -0
- package/bin/run-bin-phase.d.ts +24 -0
- package/bin/run-bin-phase.d.ts.map +1 -0
- package/bin/script/bootstrap-footer.d.ts +41 -0
- package/bin/script/bootstrap-footer.d.ts.map +1 -0
- package/bin/script/build-bin.d.ts +36 -0
- package/bin/script/build-bin.d.ts.map +1 -0
- package/bin/script/index.cjs.js +265 -0
- package/bin/script/index.d.ts +79 -0
- package/bin/script/index.d.ts.map +1 -0
- package/bin/script/index.esm.js +262 -0
- package/build.d.ts +56 -0
- package/build.d.ts.map +1 -0
- package/bundle/declarations/dts-per-entry.d.ts +27 -0
- package/bundle/declarations/dts-per-entry.d.ts.map +1 -0
- package/bundle/declarations/dts-pre-pass.d.ts +18 -0
- package/bundle/declarations/dts-pre-pass.d.ts.map +1 -0
- package/bundle/declarations/flatten-paths.d.ts +28 -0
- package/bundle/declarations/flatten-paths.d.ts.map +1 -0
- package/bundle/declarations/generate-declarations.d.ts +33 -0
- package/bundle/declarations/generate-declarations.d.ts.map +1 -0
- package/bundle/declarations/index.cjs.js +868 -0
- package/bundle/declarations/index.d.ts +262 -0
- package/bundle/declarations/index.d.ts.map +1 -0
- package/bundle/declarations/index.esm.js +857 -0
- package/bundle/declarations/prune-orphan-dts.d.ts +33 -0
- package/bundle/declarations/prune-orphan-dts.d.ts.map +1 -0
- package/bundle/declarations/sibling-resolver.d.ts +125 -0
- package/bundle/declarations/sibling-resolver.d.ts.map +1 -0
- package/bundle/dedupe/attribute-modules.d.ts +178 -0
- package/bundle/dedupe/attribute-modules.d.ts.map +1 -0
- package/bundle/dedupe/extract-chunk.d.ts +103 -0
- package/bundle/dedupe/extract-chunk.d.ts.map +1 -0
- package/bundle/dedupe/hoist-shared.d.ts +37 -0
- package/bundle/dedupe/hoist-shared.d.ts.map +1 -0
- package/bundle/dedupe/index.cjs.js +818 -0
- package/bundle/dedupe/index.d.ts +400 -0
- package/bundle/dedupe/index.d.ts.map +1 -0
- package/bundle/dedupe/index.esm.js +766 -0
- package/bundle/dedupe/plan-hoists.d.ts +46 -0
- package/bundle/dedupe/plan-hoists.d.ts.map +1 -0
- package/bundle/dedupe/rewrite-entry.d.ts +39 -0
- package/bundle/dedupe/rewrite-entry.d.ts.map +1 -0
- package/bundle/dependencies/collect-workspace-deps.d.ts +34 -0
- package/bundle/dependencies/collect-workspace-deps.d.ts.map +1 -0
- package/bundle/dependencies/externalize-plugin.d.ts +100 -0
- package/bundle/dependencies/externalize-plugin.d.ts.map +1 -0
- package/bundle/dependencies/index.cjs.js +964 -0
- package/bundle/dependencies/index.d.ts +388 -0
- package/bundle/dependencies/index.d.ts.map +1 -0
- package/bundle/dependencies/index.esm.js +947 -0
- package/bundle/dependencies/pre-pass.d.ts +154 -0
- package/bundle/dependencies/pre-pass.d.ts.map +1 -0
- package/bundle/dependencies/prune/ast-utils.d.ts +121 -0
- package/bundle/dependencies/prune/ast-utils.d.ts.map +1 -0
- package/bundle/dependencies/prune/chunk-graph.d.ts +175 -0
- package/bundle/dependencies/prune/chunk-graph.d.ts.map +1 -0
- package/bundle/dependencies/prune/dead-export-pass.d.ts +32 -0
- package/bundle/dependencies/prune/dead-export-pass.d.ts.map +1 -0
- package/bundle/dependencies/prune/dead-exports.d.ts +36 -0
- package/bundle/dependencies/prune/dead-exports.d.ts.map +1 -0
- package/bundle/dependencies/prune/destructure-requires-pass.d.ts +31 -0
- package/bundle/dependencies/prune/destructure-requires-pass.d.ts.map +1 -0
- package/bundle/dependencies/prune/destructure-requires.d.ts +42 -0
- package/bundle/dependencies/prune/destructure-requires.d.ts.map +1 -0
- package/bundle/dependencies/prune/edits.d.ts +30 -0
- package/bundle/dependencies/prune/edits.d.ts.map +1 -0
- package/bundle/dependencies/prune/namespace-usage.d.ts +104 -0
- package/bundle/dependencies/prune/namespace-usage.d.ts.map +1 -0
- package/bundle/dependencies/prune/orphan-chunks.d.ts +69 -0
- package/bundle/dependencies/prune/orphan-chunks.d.ts.map +1 -0
- package/bundle/dependencies/prune/property-strip-pass.d.ts +38 -0
- package/bundle/dependencies/prune/property-strip-pass.d.ts.map +1 -0
- package/bundle/dependencies/prune/property-strip.d.ts +69 -0
- package/bundle/dependencies/prune/property-strip.d.ts.map +1 -0
- package/bundle/dependencies/prune/prune-dependencies.d.ts +52 -0
- package/bundle/dependencies/prune/prune-dependencies.d.ts.map +1 -0
- package/bundle/dependencies/prune/reachability.d.ts +36 -0
- package/bundle/dependencies/prune/reachability.d.ts.map +1 -0
- package/bundle/dependencies/prune/specifiers.d.ts +39 -0
- package/bundle/dependencies/prune/specifiers.d.ts.map +1 -0
- package/bundle/dependencies/prune/strip-comments.d.ts +47 -0
- package/bundle/dependencies/prune/strip-comments.d.ts.map +1 -0
- package/bundle/dependencies/prune/used-exports.d.ts +32 -0
- package/bundle/dependencies/prune/used-exports.d.ts.map +1 -0
- package/bundle/dependencies/resolve-bundled-deps.d.ts +37 -0
- package/bundle/dependencies/resolve-bundled-deps.d.ts.map +1 -0
- package/bundle/dependencies/resolve-dep-entry.d.ts +38 -0
- package/bundle/dependencies/resolve-dep-entry.d.ts.map +1 -0
- package/bundle/dependencies/resolve-workspace-bundled-deps.d.ts +96 -0
- package/bundle/dependencies/resolve-workspace-bundled-deps.d.ts.map +1 -0
- package/bundle/dependencies/worker/index.cjs.js +524 -0
- package/bundle/dependencies/worker/index.d.ts +102 -0
- package/bundle/dependencies/worker/index.d.ts.map +1 -0
- package/bundle/dependencies/worker/index.esm.js +515 -0
- package/bundle/dependencies/worker/job-runner.d.ts +115 -0
- package/bundle/dependencies/worker/job-runner.d.ts.map +1 -0
- package/bundle/entries/by-platform.d.ts +27 -0
- package/bundle/entries/by-platform.d.ts.map +1 -0
- package/bundle/entries/discover-entries.d.ts +24 -0
- package/bundle/entries/discover-entries.d.ts.map +1 -0
- package/bundle/entries/index.cjs.js +38 -0
- package/bundle/entries/index.d.ts +70 -0
- package/bundle/entries/index.d.ts.map +1 -0
- package/bundle/entries/index.esm.js +33 -0
- package/bundle/entries/resolve-entries.d.ts +19 -0
- package/bundle/entries/resolve-entries.d.ts.map +1 -0
- package/bundle/externals/index.cjs.js +54 -0
- package/bundle/externals/index.d.ts +74 -0
- package/bundle/externals/index.d.ts.map +1 -0
- package/bundle/externals/index.esm.js +51 -0
- package/bundle/externals/resolve-externals.d.ts +52 -0
- package/bundle/externals/resolve-externals.d.ts.map +1 -0
- package/bundle/externals/validate-globals.d.ts +19 -0
- package/bundle/externals/validate-globals.d.ts.map +1 -0
- package/bundle/fs/deps-root.d.ts +17 -0
- package/bundle/fs/deps-root.d.ts.map +1 -0
- package/bundle/fs/empty-dirs.d.ts +18 -0
- package/bundle/fs/empty-dirs.d.ts.map +1 -0
- package/bundle/fs/entry-dir.d.ts +21 -0
- package/bundle/fs/entry-dir.d.ts.map +1 -0
- package/bundle/fs/posix-path.d.ts +30 -0
- package/bundle/fs/posix-path.d.ts.map +1 -0
- package/bundle/fs/under-dir.d.ts +19 -0
- package/bundle/fs/under-dir.d.ts.map +1 -0
- package/bundle/index.cjs.js +4046 -0
- package/bundle/index.d.ts +25 -0
- package/bundle/index.d.ts.map +1 -0
- package/bundle/index.esm.js +3689 -0
- package/bundle/rollup/descriptor.d.ts +99 -0
- package/bundle/rollup/descriptor.d.ts.map +1 -0
- package/bundle/rollup/dispatch.d.ts +72 -0
- package/bundle/rollup/dispatch.d.ts.map +1 -0
- package/bundle/rollup/index.cjs.js +715 -0
- package/bundle/rollup/index.d.ts +174 -0
- package/bundle/rollup/index.d.ts.map +1 -0
- package/bundle/rollup/index.esm.js +698 -0
- package/bundle/rollup/worker/index.cjs.js +290 -0
- package/bundle/rollup/worker/index.d.ts +131 -0
- package/bundle/rollup/worker/index.d.ts.map +1 -0
- package/bundle/rollup/worker/index.esm.js +280 -0
- package/bundle/rollup/worker/job-runner.d.ts +18 -0
- package/bundle/rollup/worker/job-runner.d.ts.map +1 -0
- package/bundle/rollup/worker/types.d.ts +111 -0
- package/bundle/rollup/worker/types.d.ts.map +1 -0
- package/bundle/run-bundle-phase.d.ts +23 -0
- package/bundle/run-bundle-phase.d.ts.map +1 -0
- package/clean-output.d.ts +26 -0
- package/clean-output.d.ts.map +1 -0
- package/index.cjs.js +5317 -0
- package/index.d.ts +64 -0
- package/index.d.ts.map +1 -0
- package/index.esm.js +4910 -0
- package/memory/index.cjs.js +101 -0
- package/memory/index.d.ts +81 -0
- package/memory/index.d.ts.map +1 -0
- package/memory/index.esm.js +98 -0
- package/memory/monitor.d.ts +59 -0
- package/memory/monitor.d.ts.map +1 -0
- package/memory/recover.d.ts +19 -0
- package/memory/recover.d.ts.map +1 -0
- package/models/build-config.d.ts +266 -0
- package/models/build-config.d.ts.map +1 -0
- package/models/build-context.d.ts +68 -0
- package/models/build-context.d.ts.map +1 -0
- package/models/build-result.d.ts +43 -0
- package/models/build-result.d.ts.map +1 -0
- package/models/entry-point.d.ts +45 -0
- package/models/entry-point.d.ts.map +1 -0
- package/models/format-output.d.ts +34 -0
- package/models/format-output.d.ts.map +1 -0
- package/models/index.cjs.js +2 -0
- package/models/index.d.ts +581 -0
- package/models/index.d.ts.map +1 -0
- package/models/index.esm.js +1 -0
- package/models/package-json.d.ts +130 -0
- package/models/package-json.d.ts.map +1 -0
- package/package/assets/copy-assets.d.ts +31 -0
- package/package/assets/copy-assets.d.ts.map +1 -0
- package/package/assets/index.cjs.js +84 -0
- package/package/assets/index.d.ts +33 -0
- package/package/assets/index.d.ts.map +1 -0
- package/package/assets/index.esm.js +82 -0
- package/package/finalize-files.d.ts +25 -0
- package/package/finalize-files.d.ts.map +1 -0
- package/package/index.cjs.js +276 -0
- package/package/index.d.ts +56 -0
- package/package/index.d.ts.map +1 -0
- package/package/index.esm.js +231 -0
- package/package/json/cdn-paths.d.ts +41 -0
- package/package/json/cdn-paths.d.ts.map +1 -0
- package/package/json/filter-deps.d.ts +39 -0
- package/package/json/filter-deps.d.ts.map +1 -0
- package/package/json/generate-exports.d.ts +29 -0
- package/package/json/generate-exports.d.ts.map +1 -0
- package/package/json/index.cjs.js +24 -0
- package/package/json/index.d.ts +252 -0
- package/package/json/index.d.ts.map +1 -0
- package/package/json/index.esm.js +14 -0
- package/package/json/inherit-fields.d.ts +25 -0
- package/package/json/inherit-fields.d.ts.map +1 -0
- package/package/json/read-package-json.d.ts +18 -0
- package/package/json/read-package-json.d.ts.map +1 -0
- package/package/json/reflect-files-allowlist.d.ts +32 -0
- package/package/json/reflect-files-allowlist.d.ts.map +1 -0
- package/package/json/synthesize.d.ts +53 -0
- package/package/json/synthesize.d.ts.map +1 -0
- package/package/json/write.d.ts +18 -0
- package/package/json/write.d.ts.map +1 -0
- package/package/licenses/collect.d.ts +25 -0
- package/package/licenses/collect.d.ts.map +1 -0
- package/package/licenses/generate-content.d.ts +20 -0
- package/package/licenses/generate-content.d.ts.map +1 -0
- package/package/licenses/index.cjs.js +135 -0
- package/package/licenses/index.d.ts +73 -0
- package/package/licenses/index.d.ts.map +1 -0
- package/package/licenses/index.esm.js +89 -0
- package/package/licenses/license-url.d.ts +20 -0
- package/package/licenses/license-url.d.ts.map +1 -0
- package/package/licenses/types.d.ts +12 -0
- package/package/licenses/types.d.ts.map +1 -0
- package/package/licenses/write.d.ts +16 -0
- package/package/licenses/write.d.ts.map +1 -0
- package/package/run-package-phase.d.ts +30 -0
- package/package/run-package-phase.d.ts.map +1 -0
- package/package.json +347 -0
- package/presets/by-names.d.ts +20 -0
- package/presets/by-names.d.ts.map +1 -0
- package/presets/by-prefix.d.ts +22 -0
- package/presets/by-prefix.d.ts.map +1 -0
- package/presets/index.cjs.js +8 -0
- package/presets/index.d.ts +43 -0
- package/presets/index.d.ts.map +1 -0
- package/presets/index.esm.js +5 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import type { MemoryMonitor } from '../../memory/monitor';
|
|
2
|
+
import type { WorkspaceBundledDepRoute } from './externalize-plugin';
|
|
3
|
+
/**
|
|
4
|
+
* Pre-pass kind. Mirrors `PrePassWorkerJobKind` on the worker side.
|
|
5
|
+
*/
|
|
6
|
+
export type PrePassJobKind = 'js' | 'dts' | 'workspace-js' | 'workspace-dts';
|
|
7
|
+
/**
|
|
8
|
+
* Single-rollup-invocation job description fed to a forked worker.
|
|
9
|
+
*/
|
|
10
|
+
export interface PrePassJob {
|
|
11
|
+
/**
|
|
12
|
+
* Pre-pass kind. `js` and `dts` cover npm bundled deps; `workspace-js` and
|
|
13
|
+
* `workspace-dts` cover workspace `@hyperfrontend/*` deps whose entries are
|
|
14
|
+
* TypeScript source.
|
|
15
|
+
*/
|
|
16
|
+
kind: PrePassJobKind;
|
|
17
|
+
/** Dep package name (or workspace specifier), e.g. `"rollup"` or `"@hyperfrontend/logging"`. */
|
|
18
|
+
dep: string;
|
|
19
|
+
/** Absolute path to the dep's input entry. */
|
|
20
|
+
inputPath: string;
|
|
21
|
+
/** Format produced by this rollup invocation. */
|
|
22
|
+
format: 'esm' | 'cjs';
|
|
23
|
+
/** Absolute path to the worker's output file. */
|
|
24
|
+
outputPath: string;
|
|
25
|
+
/** Other deps in the pre-pass set; prefix-matched and marked external so cross-dep imports stay link-time. */
|
|
26
|
+
otherDeps: string[];
|
|
27
|
+
/**
|
|
28
|
+
* Sub-path-mode workspace specifiers in the pre-pass set; matched as exact
|
|
29
|
+
* specifier only. Used by `workspace-*` jobs so sibling sub-paths externalize
|
|
30
|
+
* cleanly (e.g., one `built-in-copy/<x>` chunk does not pull in another).
|
|
31
|
+
*/
|
|
32
|
+
otherWorkspaceSpecifiers?: string[];
|
|
33
|
+
/** Absolute path to the project's tsconfig (workspace-* jobs only). */
|
|
34
|
+
tsConfigPath?: string;
|
|
35
|
+
/** Absolute workspace root used as `baseUrl` for path-mapping resolution (workspace-* jobs only). */
|
|
36
|
+
workspaceRoot?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Sibling-entry descriptors used by the per-entry `dts` pass to externalize
|
|
39
|
+
* imports that resolve into another entry's directory. See {@link
|
|
40
|
+
* SiblingEntryDescriptor}. Empty / omitted for dep pre-pass jobs.
|
|
41
|
+
*/
|
|
42
|
+
siblingEntries?: SiblingEntryDescriptor[];
|
|
43
|
+
/** Absolute path to the input file's owning entry directory (used to compute sibling specifiers). */
|
|
44
|
+
selfDtsPath?: string;
|
|
45
|
+
/** Owning entry's `srcPath`. Empty string for the package root. */
|
|
46
|
+
selfSrcPath?: string;
|
|
47
|
+
/**
|
|
48
|
+
* NPM bundled-dep names consumed by the worker's externalize plugin to rewrite
|
|
49
|
+
* cross-dep imports to relative paths under {@link depsRoot}. Disjoint from
|
|
50
|
+
* {@link workspaceRoutes}.
|
|
51
|
+
*/
|
|
52
|
+
npmDeps?: string[];
|
|
53
|
+
/**
|
|
54
|
+
* Workspace bundled-dep routes consumed by the worker's externalize plugin.
|
|
55
|
+
* For self-pre-pass jobs (`workspace-js` / `workspace-dts`) this excludes the
|
|
56
|
+
* specifier or package being built so the chunk inlines its own internals.
|
|
57
|
+
*/
|
|
58
|
+
workspaceRoutes?: WorkspaceBundledDepRoute[];
|
|
59
|
+
/** Absolute path to the project's `_dependencies/` root. Required when {@link npmDeps} or {@link workspaceRoutes} is non-empty. */
|
|
60
|
+
depsRoot?: string;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Sibling-entry descriptor threaded through to the worker for the per-entry
|
|
64
|
+
* d.ts pass.
|
|
65
|
+
*/
|
|
66
|
+
export interface SiblingEntryDescriptor {
|
|
67
|
+
/** Sibling entry's `srcPath` (subpath under `<outputPath>`). `''` for the package root. */
|
|
68
|
+
srcPath: string;
|
|
69
|
+
/** Absolute path to the sibling's bundled `index.d.ts`. */
|
|
70
|
+
indexDtsPath: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Result emitted by the worker for a single job.
|
|
74
|
+
*/
|
|
75
|
+
export interface PrePassResult {
|
|
76
|
+
/** The job that produced this result. */
|
|
77
|
+
job: PrePassJob;
|
|
78
|
+
/** Output file size in bytes. */
|
|
79
|
+
outputSize: number;
|
|
80
|
+
/** Heap reported by the child at exit, in MB. */
|
|
81
|
+
endHeapMB: number;
|
|
82
|
+
/** RSS reported by the child at exit, in MB. */
|
|
83
|
+
endRssMB: number;
|
|
84
|
+
/** Wall-clock duration the worker reported, in ms. */
|
|
85
|
+
durationMs: number;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Caller-supplied options threaded through {@link runPrePass}.
|
|
89
|
+
*/
|
|
90
|
+
export interface RunPrePassOptions {
|
|
91
|
+
/** Absolute path to the worker entry script. Required — see `resolveDefaultWorkerPath`. */
|
|
92
|
+
workerPath: string;
|
|
93
|
+
/** Optional memory monitor invoked between every spawned worker. */
|
|
94
|
+
monitor?: MemoryMonitor;
|
|
95
|
+
/** Override `process.execPath` for the spawned worker (used by tests). */
|
|
96
|
+
execPath?: string;
|
|
97
|
+
/** Extra arguments prepended to the worker invocation (e.g. `['--require', '@swc-node/register']`). */
|
|
98
|
+
execArgv?: string[];
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Resolved worker invocation: absolute path + any extra Node args (e.g. `--require \@swc-node/register`
|
|
102
|
+
* when the worker is loaded from TypeScript source during a bootstrap build).
|
|
103
|
+
*/
|
|
104
|
+
export interface WorkerInvocation {
|
|
105
|
+
/** Absolute path to the worker entry script. */
|
|
106
|
+
path: string;
|
|
107
|
+
/** Extra args prepended to the spawned child's argv. */
|
|
108
|
+
execArgv: string[];
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Default worker-path resolution: prefers the built-and-published artifact, falls
|
|
112
|
+
* back to the workspace dist path, and finally to the in-source TypeScript file
|
|
113
|
+
* via `@swc-node/register` (bootstrap case where builder is building itself for
|
|
114
|
+
* the first time and the dist worker doesn't exist yet).
|
|
115
|
+
*
|
|
116
|
+
* Looks at, in order:
|
|
117
|
+
* 1. `<workspaceRoot>/dist/libs/builder/bundle/dependencies/worker/index.cjs.js`
|
|
118
|
+
* 2. `<workspaceRoot>/node_modules/@hyperfrontend/builder/bundle/dependencies/worker/index.cjs.js`
|
|
119
|
+
* 3. `<workspaceRoot>/libs/builder/src/bundle/dependencies/worker/index.ts` (with `--require \@swc-node/register`)
|
|
120
|
+
*
|
|
121
|
+
* @param workspaceRoot - Absolute workspace root.
|
|
122
|
+
* @returns Worker invocation descriptor, or `undefined` if no candidate exists.
|
|
123
|
+
*
|
|
124
|
+
* @example Locating the worker for an in-workspace consumer
|
|
125
|
+
* ```typescript
|
|
126
|
+
* const invocation = resolveDefaultWorkerPath('/abs/repo')
|
|
127
|
+
* if (!invocation) throw new Error('builder worker artifact not found')
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
export declare const resolveDefaultWorkerPath: (workspaceRoot: string) => WorkerInvocation | undefined;
|
|
131
|
+
/**
|
|
132
|
+
* Sequentially runs the supplied pre-pass jobs by forking a fresh Node child
|
|
133
|
+
* per invocation. Strict sequential execution is mandatory — concurrent
|
|
134
|
+
* children would simultaneously pressure RAM and OOM the container.
|
|
135
|
+
*
|
|
136
|
+
* Each child writes a JSON report to a parent-supplied path; this function
|
|
137
|
+
* reads the report after the child exits and accumulates per-job statistics.
|
|
138
|
+
* If any worker exits non-zero or fails to produce a report, the function
|
|
139
|
+
* throws with the failed job's context.
|
|
140
|
+
*
|
|
141
|
+
* The report directory is created in the OS temp dir and removed before
|
|
142
|
+
* returning, regardless of success or failure.
|
|
143
|
+
*
|
|
144
|
+
* @param jobs - Pre-pass jobs to run.
|
|
145
|
+
* @param options - Worker path + optional memory monitor.
|
|
146
|
+
* @returns One result per supplied job, in the order the jobs were given.
|
|
147
|
+
*
|
|
148
|
+
* @example Pre-passing rollup and one of its plugins
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const results = await runPrePass(jobs, { workerPath: '/abs/dist/libs/builder/bundle/dependencies/worker.cjs.js' })
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
export declare const runPrePass: (jobs: PrePassJob[], options: RunPrePassOptions) => Promise<PrePassResult[]>;
|
|
154
|
+
//# sourceMappingURL=pre-pass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-pass.d.ts","sourceRoot":"","sources":["../../../../../../../../libs/builder/src/bundle/dependencies/pre-pass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAYpE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,KAAK,GAAG,cAAc,GAAG,eAAe,CAAA;AAE5E;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,IAAI,EAAE,cAAc,CAAA;IACpB,gGAAgG;IAChG,GAAG,EAAE,MAAM,CAAA;IACX,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,MAAM,EAAE,KAAK,GAAG,KAAK,CAAA;IACrB,iDAAiD;IACjD,UAAU,EAAE,MAAM,CAAA;IAClB,8GAA8G;IAC9G,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAA;IACnC,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,qGAAqG;IACrG,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,cAAc,CAAC,EAAE,sBAAsB,EAAE,CAAA;IACzC,qGAAqG;IACrG,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;;;OAIG;IACH,eAAe,CAAC,EAAE,wBAAwB,EAAE,CAAA;IAC5C,mIAAmI;IACnI,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,2FAA2F;IAC3F,OAAO,EAAE,MAAM,CAAA;IACf,2DAA2D;IAC3D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,GAAG,EAAE,UAAU,CAAA;IACf,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAA;IACjB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAA;IAChB,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2FAA2F;IAC3F,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,uGAAuG;IACvG,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AA8DD;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAA;IACZ,wDAAwD;IACxD,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAOD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,wBAAwB,GAAI,eAAe,MAAM,KAAG,gBAAgB,GAAG,SAanF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,UAAU,GAAU,MAAM,UAAU,EAAE,EAAE,SAAS,iBAAiB,KAAG,OAAO,CAAC,aAAa,EAAE,CAqBxG,CAAA"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import ts from 'typescript';
|
|
2
|
+
/**
|
|
3
|
+
* Parses a bundled chunk's source into a `ts.SourceFile`.
|
|
4
|
+
*
|
|
5
|
+
* Always parses as plain JavaScript with parent pointers set, so callers can
|
|
6
|
+
* inspect each node's lexical context (member-access position, declaration
|
|
7
|
+
* names) during the dead-export analysis.
|
|
8
|
+
*
|
|
9
|
+
* @param source - Raw chunk source text.
|
|
10
|
+
* @returns The parsed source file with parent nodes populated.
|
|
11
|
+
*
|
|
12
|
+
* @example Parsing a chunk before analysis
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const sourceFile = parseChunk("export { a };\nconst a = 1")
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare const parseChunk: (source: string) => ts.SourceFile;
|
|
18
|
+
/**
|
|
19
|
+
* Resolves a module specifier to the absolute chunk path it targets, or `null`
|
|
20
|
+
* when the specifier is not a relative chunk reference.
|
|
21
|
+
*
|
|
22
|
+
* Only specifiers starting with `.` are real edges into the `_dependencies/`
|
|
23
|
+
* tree; bare and node-builtin specifiers resolve to `null` and are ignored by
|
|
24
|
+
* reachability and usage analysis alike.
|
|
25
|
+
*
|
|
26
|
+
* @param importerDir - Absolute directory of the file containing the specifier.
|
|
27
|
+
* @param specifier - The raw module specifier string.
|
|
28
|
+
* @returns The absolute resolved path, or `null` for non-relative specifiers.
|
|
29
|
+
*
|
|
30
|
+
* @example Resolving a sibling chunk reference
|
|
31
|
+
* ```typescript
|
|
32
|
+
* resolveRelativeTarget('/dist/libs/foo/_dependencies/a', '../b/index.esm.js')
|
|
33
|
+
* // => '/dist/libs/foo/_dependencies/b/index.esm.js'
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare const resolveRelativeTarget: (importerDir: string, specifier: string) => string | null;
|
|
37
|
+
/**
|
|
38
|
+
* Returns the literal specifier of a `require('…')` call expression, or `null`
|
|
39
|
+
* when the node is not a single-string-literal `require` call.
|
|
40
|
+
*
|
|
41
|
+
* @param node - Any AST node.
|
|
42
|
+
* @returns The required specifier string, or `null`.
|
|
43
|
+
*
|
|
44
|
+
* @example Extracting a CJS chunk dependency
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // for the call node in `var x = require('./dep/index.cjs.js')`
|
|
47
|
+
* getRequireSpecifier(callNode) // => './dep/index.cjs.js'
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export declare const getRequireSpecifier: (node: ts.Node) => string | null;
|
|
51
|
+
/** `require('F').Export` — a single export selected by static property access. */
|
|
52
|
+
export interface RequirePropShape {
|
|
53
|
+
/** Discriminant. */
|
|
54
|
+
kind: 'prop';
|
|
55
|
+
/** The member node, for classifying how the selected export is then used. */
|
|
56
|
+
member: ts.PropertyAccessExpression;
|
|
57
|
+
/** The selected export name. */
|
|
58
|
+
name: string;
|
|
59
|
+
}
|
|
60
|
+
/** `require('F')['Export']` — a single export selected by string-literal element access. */
|
|
61
|
+
export interface RequireElemStaticShape {
|
|
62
|
+
/** Discriminant. */
|
|
63
|
+
kind: 'elem-static';
|
|
64
|
+
/** The member node, for classifying how the selected export is then used. */
|
|
65
|
+
member: ts.ElementAccessExpression;
|
|
66
|
+
/** The selected export name. */
|
|
67
|
+
name: string;
|
|
68
|
+
}
|
|
69
|
+
/** `require('F')[k]` — a computed element access that could select any export. */
|
|
70
|
+
export interface RequireElemDynamicShape {
|
|
71
|
+
/** Discriminant. */
|
|
72
|
+
kind: 'elem-dynamic';
|
|
73
|
+
}
|
|
74
|
+
/** A bare `require('F');` expression statement that binds nothing — side-effect only. */
|
|
75
|
+
export interface RequireSideEffectShape {
|
|
76
|
+
/** Discriminant. */
|
|
77
|
+
kind: 'side-effect';
|
|
78
|
+
}
|
|
79
|
+
/** `var dep = require('F')` — the whole module bound to a local identifier. */
|
|
80
|
+
export interface RequireNsBindingShape {
|
|
81
|
+
/** Discriminant. */
|
|
82
|
+
kind: 'ns-binding';
|
|
83
|
+
/** The bound local identifier. */
|
|
84
|
+
name: ts.Identifier;
|
|
85
|
+
}
|
|
86
|
+
/** `var { … } = require('F')` — the module destructured into named locals. */
|
|
87
|
+
export interface RequireDestructureShape {
|
|
88
|
+
/** Discriminant. */
|
|
89
|
+
kind: 'destructure';
|
|
90
|
+
/** The binding pattern destructured from the require result. */
|
|
91
|
+
pattern: ts.ObjectBindingPattern;
|
|
92
|
+
}
|
|
93
|
+
/** Any other position (call argument, spread, reassignment, …) — consumes the module wholesale. */
|
|
94
|
+
export interface RequireEscapeShape {
|
|
95
|
+
/** Discriminant. */
|
|
96
|
+
kind: 'escape';
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* The syntactic shape of how a `require('…')` call's result is consumed,
|
|
100
|
+
* derived from the call's parent node.
|
|
101
|
+
*/
|
|
102
|
+
export type RequireBindingShape = RequirePropShape | RequireElemStaticShape | RequireElemDynamicShape | RequireSideEffectShape | RequireNsBindingShape | RequireDestructureShape | RequireEscapeShape;
|
|
103
|
+
/**
|
|
104
|
+
* Classifies how a `require('…')` call's result is consumed, by inspecting the
|
|
105
|
+
* call's parent node.
|
|
106
|
+
*
|
|
107
|
+
* A bare `require('F');` statement is classified as `side-effect`, not `escape`.
|
|
108
|
+
* A `require('F').#priv` (not valid JS) does not match `prop` and falls through
|
|
109
|
+
* to `escape`.
|
|
110
|
+
*
|
|
111
|
+
* @param call - The `require('…')` call expression to classify.
|
|
112
|
+
* @returns The discriminated shape of the call's binding position.
|
|
113
|
+
*
|
|
114
|
+
* @example A destructured require
|
|
115
|
+
* ```typescript
|
|
116
|
+
* // for the call in `var { a, b } = require('./x.cjs.js')`
|
|
117
|
+
* classifyRequireBinding(call) // => { kind: 'destructure', pattern: … }
|
|
118
|
+
* ```
|
|
119
|
+
*/
|
|
120
|
+
export declare const classifyRequireBinding: (call: ts.CallExpression) => RequireBindingShape;
|
|
121
|
+
//# sourceMappingURL=ast-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ast-utils.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/ast-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAA;AAG3B;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,KAAG,EAAE,CAAC,UAC0C,CAAA;AAEzF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,qBAAqB,GAAI,aAAa,MAAM,EAAE,WAAW,MAAM,KAAG,MAAM,GAAG,IACvB,CAAA;AAEjE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,MAAM,GAAG,IAK5D,CAAA;AAED,kFAAkF;AAClF,MAAM,WAAW,gBAAgB;IAC/B,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,6EAA6E;IAC7E,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAA;IACnC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,4FAA4F;AAC5F,MAAM,WAAW,sBAAsB;IACrC,oBAAoB;IACpB,IAAI,EAAE,aAAa,CAAA;IACnB,6EAA6E;IAC7E,MAAM,EAAE,EAAE,CAAC,uBAAuB,CAAA;IAClC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAA;CACb;AAED,kFAAkF;AAClF,MAAM,WAAW,uBAAuB;IACtC,oBAAoB;IACpB,IAAI,EAAE,cAAc,CAAA;CACrB;AAED,yFAAyF;AACzF,MAAM,WAAW,sBAAsB;IACrC,oBAAoB;IACpB,IAAI,EAAE,aAAa,CAAA;CACpB;AAED,+EAA+E;AAC/E,MAAM,WAAW,qBAAqB;IACpC,oBAAoB;IACpB,IAAI,EAAE,YAAY,CAAA;IAClB,kCAAkC;IAClC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAA;CACpB;AAED,8EAA8E;AAC9E,MAAM,WAAW,uBAAuB;IACtC,oBAAoB;IACpB,IAAI,EAAE,aAAa,CAAA;IACnB,gEAAgE;IAChE,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAA;CACjC;AAED,mGAAmG;AACnG,MAAM,WAAW,kBAAkB;IACjC,oBAAoB;IACpB,IAAI,EAAE,QAAQ,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,gBAAgB,GAChB,sBAAsB,GACtB,uBAAuB,GACvB,sBAAsB,GACtB,qBAAqB,GACrB,uBAAuB,GACvB,kBAAkB,CAAA;AAEtB;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,EAAE,CAAC,cAAc,KAAG,mBAahE,CAAA"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import type { ChunkFormat } from './used-exports';
|
|
2
|
+
import ts from 'typescript';
|
|
3
|
+
/**
|
|
4
|
+
* A removable-candidate top-level declaration: a `function`/`class`/`var`
|
|
5
|
+
* statement and the names it binds, tagged with whether evaluating it is free
|
|
6
|
+
* of observable side effects.
|
|
7
|
+
*/
|
|
8
|
+
export interface DeclInfo {
|
|
9
|
+
/** The owning top-level statement. */
|
|
10
|
+
statement: ts.Statement;
|
|
11
|
+
/** Every name the statement binds (one for func/class, ≥1 for `var`). */
|
|
12
|
+
names: string[];
|
|
13
|
+
/** True when the statement may be deleted without dropping a side effect. */
|
|
14
|
+
sideEffectFree: boolean;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* One entry in a chunk's public export surface, linking an exported name to the
|
|
18
|
+
* local declaration that backs it and the statement that declares the export.
|
|
19
|
+
*/
|
|
20
|
+
export interface ExportEntry {
|
|
21
|
+
/** The name visible to importers. */
|
|
22
|
+
exported: string;
|
|
23
|
+
/** The local declaration name the export resolves to. */
|
|
24
|
+
local: string;
|
|
25
|
+
/** The statement that publishes the export. */
|
|
26
|
+
statement: ts.Statement;
|
|
27
|
+
/** Shape of the export site, governing how it is edited when pruned. */
|
|
28
|
+
kind: 'esm-list' | 'esm-inline' | 'cjs-assign';
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Structural model of a single bundled chunk used to drive dead-export removal.
|
|
32
|
+
*/
|
|
33
|
+
export interface ChunkModel {
|
|
34
|
+
/** Map from each declared name to its declaration. */
|
|
35
|
+
nameToDecl: Map<string, DeclInfo>;
|
|
36
|
+
/** Unique declarations in source order. */
|
|
37
|
+
decls: DeclInfo[];
|
|
38
|
+
/** Statements that are import sites (ESM `import` or CJS `require` bindings). */
|
|
39
|
+
importStatements: ts.Statement[];
|
|
40
|
+
/** The chunk's export surface. */
|
|
41
|
+
exports: ExportEntry[];
|
|
42
|
+
/** Statements that publish exports via a separate `export { … }` / `exports.x =` site. */
|
|
43
|
+
exportSurfaceStatements: Set<ts.Statement>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Resolution of a chunk's top-level bindings, used to recognize a pure callee
|
|
47
|
+
* regardless of how the global was aliased.
|
|
48
|
+
*/
|
|
49
|
+
export interface BindingResolution {
|
|
50
|
+
/** Every name bound at top level (const/var/function/class) — used to detect a global shadowed by a local. */
|
|
51
|
+
bindings: Set<string>;
|
|
52
|
+
/** Bindings whose initializer is an identifier/property chain rooted in a global, mapped to that global-rooted dotted form. */
|
|
53
|
+
canonical: Map<string, string>;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Maps each top-level binding to its canonical global-rooted callee form, in
|
|
57
|
+
* source order so a later alias resolves through an earlier one. Both `const`
|
|
58
|
+
* and `var` are resolved; bundled dep chunks never reassign these interop
|
|
59
|
+
* bindings. A call/literal initializer is opaque and only contributes a
|
|
60
|
+
* shadowing entry in `bindings`.
|
|
61
|
+
*
|
|
62
|
+
* @param sourceFile - The parsed chunk whose top-level bindings are resolved.
|
|
63
|
+
* @returns The binding resolution: every top-level name plus the global-rooted
|
|
64
|
+
* canonical form of each identifier/property-chain alias.
|
|
65
|
+
*
|
|
66
|
+
* @example Resolving an alias-of-global freeze
|
|
67
|
+
* ```typescript
|
|
68
|
+
* const { canonical } = collectBindingCanonical(parseChunk('const _O = globalThis.Object;\nconst freeze = _O.freeze;'))
|
|
69
|
+
* canonical.get('freeze') // => 'Object.freeze'
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare const collectBindingCanonical: (sourceFile: ts.SourceFile) => BindingResolution;
|
|
73
|
+
/**
|
|
74
|
+
* Reports whether a call is a recognized pure callee
|
|
75
|
+
* (`Object.freeze`/`seal`/`preventExtensions`, however aliased) over a fresh
|
|
76
|
+
* object/array literal. The argument must be a same-expression literal —
|
|
77
|
+
* freezing a shared binding mutates it observably, so an identifier argument is
|
|
78
|
+
* rejected. This checks only the callee and argument shape, not the purity of
|
|
79
|
+
* the argument's own subexpressions.
|
|
80
|
+
*
|
|
81
|
+
* @param call - The call expression to classify.
|
|
82
|
+
* @param resolution - The chunk's binding resolution, used to canonicalize the callee.
|
|
83
|
+
* @returns `true` when the call is an observably pure freeze of a fresh literal.
|
|
84
|
+
*
|
|
85
|
+
* @example Recognizing an aliased freeze of a fresh literal
|
|
86
|
+
* ```typescript
|
|
87
|
+
* const sourceFile = parseChunk('const _O = globalThis.Object;\nconst X = _O.freeze({ a: 1 });')
|
|
88
|
+
* // for the `_O.freeze({ a: 1 })` call node
|
|
89
|
+
* isPureFreezeCall(call, collectBindingCanonical(sourceFile)) // => true
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export declare const isPureFreezeCall: (call: ts.CallExpression, resolution: BindingResolution) => boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Reports whether a call is `<global-rooted chain>.bind(…)`.
|
|
95
|
+
* `Function.prototype.bind` only builds and returns a new bound function — no
|
|
96
|
+
* observable side effect. The receiver must canonicalize to a global so an
|
|
97
|
+
* arbitrary user object's `.bind` — potentially a redefined, side-effecting
|
|
98
|
+
* method — is never assumed pure. As with {@link isPureFreezeCall}, this checks
|
|
99
|
+
* only the call shape, not the purity of the argument's own subexpressions.
|
|
100
|
+
*
|
|
101
|
+
* @param call - The call expression to classify.
|
|
102
|
+
* @param resolution - The chunk's binding resolution, used to canonicalize the receiver.
|
|
103
|
+
* @returns `true` when the call binds a method off a global-rooted receiver chain.
|
|
104
|
+
*
|
|
105
|
+
* @example Recognizing a bind of a global-rooted receiver
|
|
106
|
+
* ```typescript
|
|
107
|
+
* const sourceFile = parseChunk('const _P = globalThis.Promise;\nconst X = _P.resolve.bind(_P);')
|
|
108
|
+
* // for the `_P.resolve.bind(_P)` call node
|
|
109
|
+
* isPureBindCall(call, collectBindingCanonical(sourceFile)) // => true
|
|
110
|
+
* ```
|
|
111
|
+
*/
|
|
112
|
+
export declare const isPureBindCall: (call: ts.CallExpression, resolution: BindingResolution) => boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Collects the identifier names referenced within a node, excluding identifiers
|
|
115
|
+
* that sit in a property-name position (`obj.name`, `{ name: … }`, `{ name: x }`
|
|
116
|
+
* binding keys) since those never refer to a top-level declaration.
|
|
117
|
+
*
|
|
118
|
+
* Deliberately over-approximates: a name captured that is not actually a
|
|
119
|
+
* top-level declaration is harmless, and capturing more only keeps more code.
|
|
120
|
+
*
|
|
121
|
+
* @param node - The subtree to scan.
|
|
122
|
+
* @param sink - Set that receives every referenced identifier name.
|
|
123
|
+
*
|
|
124
|
+
* @example Collecting references inside a function body
|
|
125
|
+
* ```typescript
|
|
126
|
+
* const refs = createSet<string>([])
|
|
127
|
+
* collectRefs(functionDeclaration, refs)
|
|
128
|
+
* ```
|
|
129
|
+
*/
|
|
130
|
+
export declare const collectRefs: (node: ts.Node, sink: Set<string>) => void;
|
|
131
|
+
/**
|
|
132
|
+
* Returns the local binding names introduced by a CJS `require` variable
|
|
133
|
+
* statement, across identifier and object-destructure bindings.
|
|
134
|
+
*
|
|
135
|
+
* @param statement - A variable statement known to bind a `require` call.
|
|
136
|
+
* @returns The local names it introduces.
|
|
137
|
+
*
|
|
138
|
+
* @example Bindings of a destructured require
|
|
139
|
+
* ```typescript
|
|
140
|
+
* // for `var { a, b } = require('./x.cjs.js')`
|
|
141
|
+
* requireBindingLocals(statement) // => ['a', 'b']
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
export declare const requireBindingLocals: (statement: ts.Statement) => string[];
|
|
145
|
+
/**
|
|
146
|
+
* Builds the structural model of a chunk: its removable declarations, import
|
|
147
|
+
* sites, and export surface.
|
|
148
|
+
*
|
|
149
|
+
* @param sourceFile - The parsed chunk.
|
|
150
|
+
* @param format - Module format selecting ESM vs CJS export/import shapes.
|
|
151
|
+
* @returns The chunk model consumed by {@link computeKeepClosure}.
|
|
152
|
+
*
|
|
153
|
+
* @example Modeling an ESM chunk
|
|
154
|
+
* ```typescript
|
|
155
|
+
* const model = analyzeChunk(parseChunk(source), 'esm')
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
export declare const analyzeChunk: (sourceFile: ts.SourceFile, format: ChunkFormat) => ChunkModel;
|
|
159
|
+
/**
|
|
160
|
+
* Computes the closure of local declaration names that must be retained: every
|
|
161
|
+
* kept export, every side-effecting declaration, every name referenced by a
|
|
162
|
+
* bare top-level statement, and everything those transitively reference.
|
|
163
|
+
*
|
|
164
|
+
* @param sourceFile - The parsed chunk.
|
|
165
|
+
* @param model - The chunk model from {@link analyzeChunk}.
|
|
166
|
+
* @param keep - Exported names demanded by importers.
|
|
167
|
+
* @returns The set of local names that may not be removed.
|
|
168
|
+
*
|
|
169
|
+
* @example Names that survive given a one-export demand
|
|
170
|
+
* ```typescript
|
|
171
|
+
* const live = computeKeepClosure(sourceFile, model, createSet(['getType']))
|
|
172
|
+
* ```
|
|
173
|
+
*/
|
|
174
|
+
export declare const computeKeepClosure: (sourceFile: ts.SourceFile, model: ChunkModel, keep: Set<string>) => Set<string>;
|
|
175
|
+
//# sourceMappingURL=chunk-graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk-graph.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/chunk-graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,MAAM,YAAY,CAAA;AAM3B;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,sCAAsC;IACtC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAA;IACvB,yEAAyE;IACzE,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,6EAA6E;IAC7E,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,yDAAyD;IACzD,KAAK,EAAE,MAAM,CAAA;IACb,+CAA+C;IAC/C,SAAS,EAAE,EAAE,CAAC,SAAS,CAAA;IACvB,wEAAwE;IACxE,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,YAAY,CAAA;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,sDAAsD;IACtD,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjC,2CAA2C;IAC3C,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,iFAAiF;IACjF,gBAAgB,EAAE,EAAE,CAAC,SAAS,EAAE,CAAA;IAChC,kCAAkC;IAClC,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,0FAA0F;IAC1F,uBAAuB,EAAE,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAA;CAC3C;AAiBD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,8GAA8G;IAC9G,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACrB,+HAA+H;IAC/H,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAmBD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB,GAAI,YAAY,EAAE,CAAC,UAAU,KAAG,iBAiBnE,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,EAAE,CAAC,cAAc,EAAE,YAAY,iBAAiB,KAAG,OAMzF,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,EAAE,CAAC,cAAc,EAAE,YAAY,iBAAiB,KAAG,OAIvF,CAAA;AAsCD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,KAAG,IAa9D,CAAA;AAYD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,oBAAoB,GAAI,WAAW,EAAE,CAAC,SAAS,KAAG,MAAM,EASpE,CAAA;AAuDD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,GAAI,YAAY,EAAE,CAAC,UAAU,EAAE,QAAQ,WAAW,KAAG,UAsB7E,CAAA;AAcD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB,GAAI,YAAY,EAAE,CAAC,UAAU,EAAE,OAAO,UAAU,EAAE,MAAM,GAAG,CAAC,MAAM,CAAC,KAAG,GAAG,CAAC,MAAM,CAsB9G,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { BuildContext } from '../../../models';
|
|
2
|
+
/**
|
|
3
|
+
* Aggregate result of the dead-export stripping pass.
|
|
4
|
+
*/
|
|
5
|
+
export interface DeadExportPassResult {
|
|
6
|
+
/** Exported declarations spliced out across all chunks and iterations. */
|
|
7
|
+
deadExportsRemoved: number;
|
|
8
|
+
/** Bytes reclaimed by shrinking chunk sources. */
|
|
9
|
+
bytesRemoved: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Shrinks surviving `_dependencies/` chunks by stripping dead exported
|
|
13
|
+
* declarations, iterating to a fixpoint per format.
|
|
14
|
+
*
|
|
15
|
+
* Each iteration re-derives the importer demand for every surviving chunk from
|
|
16
|
+
* the current on-disk sources (entries plus sibling chunks), strips each chunk
|
|
17
|
+
* to that demand, and repeats until no chunk changes — because removing one
|
|
18
|
+
* chunk's import can make another chunk's export dead in turn. ESM and CJS are
|
|
19
|
+
* processed independently. The orphan sweep is expected to run afterwards to
|
|
20
|
+
* reclaim any chunk whose last import was removed here.
|
|
21
|
+
*
|
|
22
|
+
* @param context - Resolved build context supplying the entry points.
|
|
23
|
+
* @param depsRoot - Absolute path to the `_dependencies/` directory.
|
|
24
|
+
* @returns Counts of exports removed and bytes reclaimed.
|
|
25
|
+
*
|
|
26
|
+
* @example Running the strip pass after the orphan sweep
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const { deadExportsRemoved } = stripDeadExportsPass(context, depsRootOf(context))
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare const stripDeadExportsPass: (context: BuildContext, depsRoot: string) => DeadExportPassResult;
|
|
32
|
+
//# sourceMappingURL=dead-export-pass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dead-export-pass.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/dead-export-pass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AA+BnD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAA;CACrB;AA0DD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,GAAI,SAAS,YAAY,EAAE,UAAU,MAAM,KAAG,oBAK9E,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ChunkFormat, ImportUsage } from './used-exports';
|
|
2
|
+
/**
|
|
3
|
+
* Outcome of stripping a single chunk.
|
|
4
|
+
*/
|
|
5
|
+
export interface StripResult {
|
|
6
|
+
/** Rewritten chunk source with dead declarations and exports removed. */
|
|
7
|
+
code: string;
|
|
8
|
+
/** Exported names that were spliced out. */
|
|
9
|
+
removedNames: string[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Removes guaranteed-dead exported declarations (and the now-dead private code
|
|
13
|
+
* and imports they pulled in) from a single chunk's source.
|
|
14
|
+
*
|
|
15
|
+
* Builds the chunk's declaration/export model, computes the keep-closure from
|
|
16
|
+
* the importer-supplied `keep` demand, and splices out every side-effect-free
|
|
17
|
+
* top-level declaration that no kept declaration, kept export, or bare
|
|
18
|
+
* side-effecting statement references. The matching entries are dropped from the
|
|
19
|
+
* export surface, and import bindings left unreferenced by the surviving code are
|
|
20
|
+
* narrowed away (whole import statements when fully unused) — which is what
|
|
21
|
+
* shrinks the cross-chunk dependency graph for the next fixpoint pass.
|
|
22
|
+
* Side-effecting initializers and bare statements are always kept.
|
|
23
|
+
*
|
|
24
|
+
* @param source - Raw chunk source text.
|
|
25
|
+
* @param format - Module format of the chunk.
|
|
26
|
+
* @param keep - Exported names importers demand, or `'all'` to keep everything.
|
|
27
|
+
* @returns The rewritten source and removed export names, or `null` when nothing
|
|
28
|
+
* could be removed.
|
|
29
|
+
*
|
|
30
|
+
* @example Stripping all but one export from a chunk
|
|
31
|
+
* ```typescript
|
|
32
|
+
* stripDeadExports(source, 'esm', createSet(['getType']))
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export declare const stripDeadExports: (source: string, format: ChunkFormat, keep: ImportUsage) => StripResult | null;
|
|
36
|
+
//# sourceMappingURL=dead-exports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dead-exports.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/dead-exports.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAS9D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAA;IACZ,4CAA4C;IAC5C,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAoDD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,EAAE,QAAQ,WAAW,EAAE,MAAM,WAAW,KAAG,WAAW,GAAG,IA2BvG,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Aggregate result of the require-destructuring pass.
|
|
3
|
+
*/
|
|
4
|
+
export interface DestructureRequiresResult {
|
|
5
|
+
/** Whole-module `const NS = require(...)` bindings collapsed to destructures. */
|
|
6
|
+
requireBindingsDestructured: number;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Collapses whole-module CJS require bindings (`const NS = require('./rel')`) to
|
|
10
|
+
* destructuring binds across the surviving `_dependencies/` chunks, guarded so it
|
|
11
|
+
* never destructures across a `require` cycle.
|
|
12
|
+
*
|
|
13
|
+
* Builds the relative-require graph over the CJS chunks, finds its
|
|
14
|
+
* strongly-connected components, and lets each chunk destructure a target only
|
|
15
|
+
* when the two sit in different components — i.e. the edge is acyclic, so an
|
|
16
|
+
* eager destructure cannot capture an export before a circular dependency
|
|
17
|
+
* finished initializing (the exact hazard rollup's namespace-access codegen
|
|
18
|
+
* avoids). ESM chunks need nothing: their named imports already destructure. A
|
|
19
|
+
* dynamic `import(`/`require(` anywhere disables the pass for safety, since it
|
|
20
|
+
* could hide a cycle the static graph cannot see.
|
|
21
|
+
*
|
|
22
|
+
* @param depsRoot - Absolute path to the `_dependencies/` directory.
|
|
23
|
+
* @returns Count of require bindings destructured.
|
|
24
|
+
*
|
|
25
|
+
* @example Running the pass after the strip/orphan passes
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const { requireBindingsDestructured } = destructureRequiresPass(depsRootOf(context))
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare const destructureRequiresPass: (depsRoot: string) => DestructureRequiresResult;
|
|
31
|
+
//# sourceMappingURL=destructure-requires-pass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"destructure-requires-pass.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/destructure-requires-pass.ts"],"names":[],"mappings":"AAyBA;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,iFAAiF;IACjF,2BAA2B,EAAE,MAAM,CAAA;CACpC;AAsFD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,MAAM,KAAG,yBA8B1D,CAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Outcome of destructuring a single CJS chunk's whole-module require bindings.
|
|
3
|
+
*/
|
|
4
|
+
export interface DestructureResult {
|
|
5
|
+
/** Rewritten chunk source. */
|
|
6
|
+
code: string;
|
|
7
|
+
/** Number of `const NS = require(...)` bindings collapsed to destructures. */
|
|
8
|
+
rewrittenBindings: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Rewrites whole-module CJS require bindings to destructuring binds when the
|
|
12
|
+
* binding is consumed only as static member reads.
|
|
13
|
+
*
|
|
14
|
+
* For every top-level `const NS = require('./rel')` whose target `isSafeTarget`
|
|
15
|
+
* accepts (a relative sibling chunk that is provably not in a `require` cycle
|
|
16
|
+
* with this chunk), and where `NS` is used exclusively as `NS.member` /
|
|
17
|
+
* `NS['member']` reads, the binding is collapsed to `const { member, … } =
|
|
18
|
+
* require('./rel')` and each `NS.member` access is replaced by the bound local.
|
|
19
|
+
* Locals that would collide with an existing free identifier or another bound
|
|
20
|
+
* local are aliased (`member: member$1`) — so the rewrite never shadows the
|
|
21
|
+
* chunk's own names. Any wholesale, dynamic, or reassigning use of `NS` leaves
|
|
22
|
+
* its binding untouched, matching rollup's namespace-access codegen.
|
|
23
|
+
*
|
|
24
|
+
* The cycle guard is the caller's responsibility: rollup keeps the namespace
|
|
25
|
+
* form precisely so an eager destructure cannot capture an export before a
|
|
26
|
+
* circular dependency has initialized it. Passing only acyclic targets to
|
|
27
|
+
* `isSafeTarget` preserves that guarantee.
|
|
28
|
+
*
|
|
29
|
+
* @param source - Raw CJS chunk source text.
|
|
30
|
+
* @param chunkDir - Absolute directory of the chunk, for resolving relative requires.
|
|
31
|
+
* @param isSafeTarget - Predicate selecting which resolved require targets may be destructured.
|
|
32
|
+
* @returns The rewritten source and the count of bindings destructured, or `null`
|
|
33
|
+
* when no binding qualified.
|
|
34
|
+
*
|
|
35
|
+
* @example Destructuring a single-member require
|
|
36
|
+
* ```typescript
|
|
37
|
+
* destructureRequires("const m = require('./math/index.cjs.js');\nm.abs(x);", '/d/p', () => true)
|
|
38
|
+
* // => { code: "const { abs } = require('./math/index.cjs.js');\nabs(x);", rewrittenBindings: 1 }
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export declare const destructureRequires: (source: string, chunkDir: string, isSafeTarget: (target: string) => boolean) => DestructureResult | null;
|
|
42
|
+
//# sourceMappingURL=destructure-requires.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"destructure-requires.d.ts","sourceRoot":"","sources":["../../../../../../../../../libs/builder/src/bundle/dependencies/prune/destructure-requires.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,8EAA8E;IAC9E,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AA+GD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,MAAM,EACd,UAAU,MAAM,EAChB,cAAc,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,KACxC,iBAAiB,GAAG,IA8BtB,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/** A single text replacement over the original chunk source. */
|
|
2
|
+
export interface Edit {
|
|
3
|
+
/** Inclusive start offset. */
|
|
4
|
+
start: number;
|
|
5
|
+
/** Exclusive end offset. */
|
|
6
|
+
end: number;
|
|
7
|
+
/** Replacement text (empty string deletes the span). */
|
|
8
|
+
text: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Applies text-range edits to a chunk source by splicing each span in
|
|
12
|
+
* descending start order, so every edit's offsets stay valid against the
|
|
13
|
+
* original source regardless of the order they are passed in. All offsets must
|
|
14
|
+
* refer to the original `source`, and spans must not overlap. The input `edits`
|
|
15
|
+
* array is copied before sorting, so the caller's order is left untouched.
|
|
16
|
+
*
|
|
17
|
+
* @param source - Original chunk source text.
|
|
18
|
+
* @param edits - Edits to apply; their relative order does not matter.
|
|
19
|
+
* @param collapseBlankLines - When `true`, runs of three or more newlines left
|
|
20
|
+
* behind by whole-statement splices are collapsed to a single blank line so the
|
|
21
|
+
* trimmed chunk stays readable. Defaults to `false`.
|
|
22
|
+
* @returns The rewritten source.
|
|
23
|
+
*
|
|
24
|
+
* @example Deleting a statement and collapsing the blank run it leaves
|
|
25
|
+
* ```typescript
|
|
26
|
+
* applyEdits(source, [{ start, end, text: '' }], true)
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare const applyEdits: (source: string, edits: Edit[], collapseBlankLines?: boolean) => string;
|
|
30
|
+
//# sourceMappingURL=edits.d.ts.map
|