@modern-js/module-tools 2.0.0-beta.2 → 2.0.0-beta.4
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 +276 -205
- package/bin/modern.js +7 -1
- package/compiled/@babel/code-frame/index.d.ts +1 -0
- package/compiled/@babel/code-frame/index.js +1 -0
- package/compiled/@babel/code-frame/license +22 -0
- package/compiled/@babel/code-frame/package.json +1 -0
- package/compiled/@babel/generator/index.d.ts +1 -0
- package/compiled/@babel/generator/index.js +1 -0
- package/compiled/@babel/generator/license +22 -0
- package/compiled/@babel/generator/package.json +1 -0
- package/compiled/@babel/helper-validator-identifier/index.d.ts +1 -0
- package/compiled/@babel/helper-validator-identifier/index.js +1 -0
- package/compiled/@babel/helper-validator-identifier/license +22 -0
- package/compiled/@babel/helper-validator-identifier/package.json +1 -0
- package/compiled/@babel/highlight/index.d.ts +1 -0
- package/compiled/@babel/highlight/index.js +1 -0
- package/compiled/@babel/highlight/license +22 -0
- package/compiled/@babel/highlight/package.json +1 -0
- package/compiled/@babel/parser/@babel/types/lib/index-legacy.d.ts +2742 -0
- package/compiled/@babel/parser/index.js +1 -0
- package/compiled/@babel/parser/license +19 -0
- package/compiled/@babel/parser/package.json +1 -0
- package/compiled/@babel/parser/typings/babel-parser.d.ts +214 -0
- package/compiled/@babel/template/index.d.ts +1 -0
- package/compiled/@babel/template/index.js +1 -0
- package/compiled/@babel/template/license +22 -0
- package/compiled/@babel/template/package.json +1 -0
- package/compiled/@babel/traverse/index.d.ts +1199 -0
- package/compiled/@babel/traverse/index.js +1 -0
- package/compiled/@babel/traverse/license +22 -0
- package/compiled/@babel/traverse/package.json +1 -0
- package/compiled/@babel/types/index.js +1 -0
- package/compiled/@babel/types/lib/index-legacy.d.ts +2732 -0
- package/compiled/@babel/types/license +22 -0
- package/compiled/@babel/types/package.json +1 -0
- package/compiled/@rollup/plugin-json/@rollup/pluginutils/types/index.d.ts +86 -0
- package/compiled/@rollup/plugin-json/estree/index.d.ts +548 -0
- package/compiled/@rollup/plugin-json/index.js +1 -0
- package/compiled/@rollup/plugin-json/license +21 -0
- package/compiled/@rollup/plugin-json/package.json +1 -0
- package/compiled/@rollup/plugin-json/rollup/dist/rollup.d.ts +948 -0
- package/compiled/@rollup/plugin-json/types/index.d.ts +41 -0
- package/compiled/find-up/index.d.ts +138 -0
- package/compiled/find-up/index.js +1 -0
- package/compiled/find-up/license +9 -0
- package/compiled/find-up/locate-path/index.d.ts +83 -0
- package/compiled/find-up/package.json +1 -0
- package/compiled/less/index.d.ts +282 -0
- package/compiled/less/index.js +1 -0
- package/compiled/less/package.json +1 -0
- package/compiled/normalize-path/index.d.ts +8 -0
- package/compiled/normalize-path/index.js +8 -0
- package/compiled/normalize-path/license +21 -0
- package/compiled/normalize-path/package.json +1 -0
- package/compiled/p-map/@szmarczak/http-timer/dist/source/index.d.ts +32 -0
- package/compiled/p-map/cacheable-lookup/index.d.ts +139 -0
- package/compiled/p-map/cacheable-request/index.d.ts +137 -0
- package/compiled/p-map/got/dist/source/as-promise/index.d.ts +3 -0
- package/compiled/p-map/got/dist/source/as-promise/types.d.ts +256 -0
- package/compiled/p-map/got/dist/source/core/index.d.ts +1124 -0
- package/compiled/p-map/got/dist/source/core/utils/dns-ip-version.d.ts +5 -0
- package/compiled/p-map/got/dist/source/core/utils/options-to-url.d.ts +14 -0
- package/compiled/p-map/got/dist/source/core/utils/timed-out.d.ts +29 -0
- package/compiled/p-map/got/dist/source/index.d.ts +4 -0
- package/compiled/p-map/got/dist/source/types.d.ts +344 -0
- package/compiled/p-map/http-cache-semantics/index.d.ts +170 -0
- package/compiled/p-map/index.d.ts +67 -0
- package/compiled/p-map/index.js +1 -0
- package/compiled/p-map/keyv/src/index.d.ts +104 -0
- package/compiled/p-map/license +9 -0
- package/compiled/p-map/p-cancelable/index.d.ts +176 -0
- package/compiled/p-map/package.json +1 -0
- package/compiled/p-map/responselike/index.d.ts +34 -0
- package/compiled/postcss-custom-properties/index.d.ts +1 -0
- package/compiled/postcss-custom-properties/index.js +1 -0
- package/compiled/postcss-custom-properties/package.json +1 -0
- package/compiled/postcss-flexbugs-fixes/index.d.ts +1 -0
- package/compiled/postcss-flexbugs-fixes/index.js +1 -0
- package/compiled/postcss-flexbugs-fixes/license +20 -0
- package/compiled/postcss-flexbugs-fixes/package.json +1 -0
- package/compiled/postcss-font-variant/index.d.ts +1 -0
- package/compiled/postcss-font-variant/index.js +1 -0
- package/compiled/postcss-font-variant/license +20 -0
- package/compiled/postcss-font-variant/package.json +1 -0
- package/compiled/postcss-initial/index.d.ts +1 -0
- package/compiled/postcss-initial/index.js +1 -0
- package/compiled/postcss-initial/license +20 -0
- package/compiled/postcss-initial/package.json +1 -0
- package/compiled/postcss-media-minmax/index.d.ts +1 -0
- package/compiled/postcss-media-minmax/index.js +1 -0
- package/compiled/postcss-media-minmax/license +22 -0
- package/compiled/postcss-media-minmax/package.json +1 -0
- package/compiled/postcss-nesting/index.d.ts +1 -0
- package/compiled/postcss-nesting/index.js +2 -0
- package/compiled/postcss-nesting/package.json +1 -0
- package/compiled/postcss-page-break/index.d.ts +1 -0
- package/compiled/postcss-page-break/index.js +1 -0
- package/compiled/postcss-page-break/license +20 -0
- package/compiled/postcss-page-break/package.json +1 -0
- package/compiled/postcss-value-parser/index.d.ts +1 -0
- package/compiled/postcss-value-parser/index.js +1 -0
- package/compiled/postcss-value-parser/license +22 -0
- package/compiled/postcss-value-parser/package.json +1 -0
- package/compiled/rollup/fsevents.node +0 -0
- package/compiled/rollup/index.js +82 -0
- package/compiled/rollup/package.json +1 -0
- package/compiled/rollup/types/rollup.d.ts +948 -0
- package/compiled/rollup-plugin-dts/dist/rollup-plugin-dts.d.ts +21 -0
- package/compiled/rollup-plugin-dts/index.js +1 -0
- package/compiled/rollup-plugin-dts/package.json +1 -0
- package/compiled/rollup-plugin-dts/rollup/dist/rollup.d.ts +948 -0
- package/compiled/sass/index.js +1 -0
- package/compiled/sass/license +1619 -0
- package/compiled/sass/package.json +1 -0
- package/compiled/sass/types/compile.d.ts +152 -0
- package/compiled/sass/types/exception.d.ts +41 -0
- package/compiled/sass/types/importer.d.ts +294 -0
- package/compiled/sass/types/index.d.ts +80 -0
- package/compiled/sass/types/legacy/exception.d.ts +54 -0
- package/compiled/sass/types/legacy/function.d.ts +756 -0
- package/compiled/sass/types/legacy/importer.d.ts +168 -0
- package/compiled/sass/types/legacy/options.d.ts +642 -0
- package/compiled/sass/types/legacy/plugin_this.d.ts +73 -0
- package/compiled/sass/types/legacy/render.d.ts +139 -0
- package/compiled/sass/types/logger/index.d.ts +94 -0
- package/compiled/sass/types/logger/source_location.d.ts +21 -0
- package/compiled/sass/types/logger/source_span.d.ts +34 -0
- package/compiled/sass/types/options.d.ts +435 -0
- package/compiled/sass/types/util/promise_or.d.ts +17 -0
- package/compiled/sass/types/value/argument_list.d.ts +47 -0
- package/compiled/sass/types/value/boolean.d.ts +29 -0
- package/compiled/sass/types/value/color.d.ts +107 -0
- package/compiled/sass/types/value/function.d.ts +22 -0
- package/compiled/sass/types/value/index.d.ts +173 -0
- package/compiled/sass/types/value/list.d.ts +54 -0
- package/compiled/sass/types/value/map.d.ts +41 -0
- package/compiled/sass/types/value/number.d.ts +305 -0
- package/compiled/sass/types/value/string.d.ts +84 -0
- package/compiled/signal-exit/index.d.ts +24 -0
- package/compiled/signal-exit/index.js +1 -0
- package/compiled/signal-exit/package.json +1 -0
- package/dist/builder/build.d.ts +23 -0
- package/dist/builder/build.js +265 -0
- package/dist/builder/build.js.map +1 -0
- package/dist/builder/clear.d.ts +3 -0
- package/dist/builder/clear.js +74 -0
- package/dist/builder/clear.js.map +1 -0
- package/dist/builder/copy.d.ts +9 -0
- package/dist/builder/copy.js +207 -0
- package/dist/builder/copy.js.map +1 -0
- package/dist/builder/dts/index.d.ts +2 -0
- package/dist/builder/dts/index.js +27 -0
- package/dist/builder/dts/index.js.map +1 -0
- package/dist/builder/dts/rollup.d.ts +17 -0
- package/dist/builder/dts/rollup.js +180 -0
- package/dist/builder/dts/rollup.js.map +1 -0
- package/dist/builder/dts/tsc.d.ts +3 -0
- package/dist/builder/dts/tsc.js +160 -0
- package/dist/builder/dts/tsc.js.map +1 -0
- package/dist/builder/index.d.ts +8 -0
- package/dist/builder/index.js +124 -0
- package/dist/builder/index.js.map +1 -0
- package/dist/builder/platform.d.ts +4 -0
- package/dist/builder/platform.js +140 -0
- package/dist/builder/platform.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.js +103 -0
- package/dist/cli.js.map +1 -0
- package/dist/command.d.ts +7 -0
- package/dist/command.js +169 -0
- package/dist/command.js.map +1 -0
- package/dist/config/defineConfig.d.ts +2 -0
- package/dist/config/defineConfig.js +25 -0
- package/dist/config/defineConfig.js.map +1 -0
- package/dist/config/normalize.d.ts +17 -0
- package/dist/config/normalize.js +177 -0
- package/dist/config/normalize.js.map +1 -0
- package/dist/config/schema.d.ts +641 -0
- package/dist/config/schema.js +207 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/constants/build-presets.d.ts +81 -0
- package/dist/constants/build-presets.js +219 -0
- package/dist/constants/build-presets.js.map +1 -0
- package/dist/constants/build.d.ts +5 -0
- package/dist/constants/build.js +71 -0
- package/dist/constants/build.js.map +1 -0
- package/dist/constants/colors.d.ts +4 -0
- package/dist/constants/colors.js +29 -0
- package/dist/constants/colors.js.map +1 -0
- package/dist/constants/dts.d.ts +4 -0
- package/dist/constants/dts.js +45 -0
- package/dist/constants/dts.js.map +1 -0
- package/dist/constants/file.d.ts +3 -0
- package/dist/constants/file.js +29 -0
- package/dist/constants/file.js.map +1 -0
- package/dist/constants/legacy-build-presets.d.ts +13 -0
- package/dist/constants/legacy-build-presets.js +189 -0
- package/dist/constants/legacy-build-presets.js.map +1 -0
- package/dist/constants/log.d.ts +8 -0
- package/dist/constants/log.js +36 -0
- package/dist/constants/log.js.map +1 -0
- package/dist/dev.d.ts +10 -0
- package/dist/dev.js +135 -0
- package/dist/dev.js.map +1 -0
- package/dist/{types/features/build/error.d.ts → error.d.ts} +1 -1
- package/dist/error.js +139 -0
- package/dist/error.js.map +1 -0
- package/dist/hooks/build.d.ts +22 -0
- package/dist/hooks/build.js +35 -0
- package/dist/hooks/build.js.map +1 -0
- package/dist/hooks/dev.d.ts +12 -0
- package/dist/hooks/dev.js +33 -0
- package/dist/hooks/dev.js.map +1 -0
- package/dist/hooks/index.d.ts +29 -0
- package/dist/hooks/index.js +44 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/misc.d.ts +5 -0
- package/dist/hooks/misc.js +29 -0
- package/dist/hooks/misc.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/{types/locale → locale}/en.d.ts +0 -0
- package/dist/locale/en.js +47 -0
- package/dist/locale/en.js.map +1 -0
- package/dist/{types/locale → locale}/index.d.ts +0 -0
- package/dist/locale/index.js +34 -0
- package/dist/locale/index.js.map +1 -0
- package/dist/{types/locale → locale}/zh.d.ts +0 -0
- package/dist/locale/zh.js +47 -0
- package/dist/locale/zh.js.map +1 -0
- package/dist/plugins.d.ts +2 -0
- package/dist/plugins.js +51 -0
- package/dist/plugins.js.map +1 -0
- package/dist/types/color.d.ts +1 -0
- package/dist/{js/modern/features/build/types.js → types/color.js} +0 -0
- package/dist/types/command.d.ts +11 -0
- package/dist/{js/modern/schema/types.js → types/command.js} +0 -0
- package/dist/types/config/index.d.ts +95 -0
- package/dist/types/config/index.js +19 -0
- package/dist/types/config/index.js.map +1 -0
- package/dist/types/config/style.d.ts +12 -0
- package/dist/{js/modern/types.js → types/config/style.js} +0 -0
- package/dist/types/context.d.ts +5 -0
- package/dist/{js/node/features/build/types.js → types/context.js} +0 -0
- package/dist/types/copy.d.ts +15 -0
- package/dist/{js/node/schema/types.js → types/copy.js} +0 -0
- package/dist/types/{utils/tsconfig.d.ts → dts.d.ts} +11 -3
- package/dist/{js/node/types.js → types/dts.js} +0 -0
- package/dist/types/hooks.d.ts +25 -0
- package/dist/types/hooks.js +0 -0
- package/dist/types/index.d.ts +17 -6
- package/dist/types/index.js +23 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/utils.d.ts +7 -0
- package/dist/types/utils.js +0 -0
- package/dist/utils/builder.d.ts +8 -0
- package/dist/utils/builder.js +117 -0
- package/dist/utils/builder.js.map +1 -0
- package/dist/utils/config.d.ts +6 -0
- package/dist/utils/config.js +172 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/context.d.ts +7 -0
- package/dist/utils/context.js +68 -0
- package/dist/utils/context.js.map +1 -0
- package/dist/utils/dts.d.ts +14 -0
- package/dist/utils/dts.js +197 -0
- package/dist/utils/dts.js.map +1 -0
- package/dist/utils/input.d.ts +16 -0
- package/dist/utils/input.js +124 -0
- package/dist/utils/input.js.map +1 -0
- package/dist/utils/language.d.ts +2 -0
- package/dist/utils/language.js +75 -0
- package/dist/utils/language.js.map +1 -0
- package/dist/utils/libuild-plugins.d.ts +6 -0
- package/dist/utils/libuild-plugins.js +90 -0
- package/dist/utils/libuild-plugins.js.map +1 -0
- package/dist/utils/log.d.ts +2 -0
- package/dist/utils/log.js +76 -0
- package/dist/utils/log.js.map +1 -0
- package/dist/utils/onExit.d.ts +1 -0
- package/dist/utils/onExit.js +71 -0
- package/dist/utils/onExit.js.map +1 -0
- package/dist/utils/path.d.ts +1 -0
- package/dist/utils/path.js +73 -0
- package/dist/utils/path.js.map +1 -0
- package/dist/utils/style.d.ts +31 -0
- package/dist/utils/style.js +134 -0
- package/dist/utils/style.js.map +1 -0
- package/dist/{types/utils/tspaths-transform/index.d.ts → utils/tspaths-transform.d.ts} +0 -0
- package/dist/utils/tspaths-transform.js +115 -0
- package/dist/utils/tspaths-transform.js.map +1 -0
- package/package.json +47 -73
- package/dist/js/modern/cli/build.js +0 -11
- package/dist/js/modern/cli/dev.js +0 -11
- package/dist/js/modern/cli/index.js +0 -3
- package/dist/js/modern/cli/new.js +0 -13
- package/dist/js/modern/commands/build.js +0 -69
- package/dist/js/modern/commands/dev.js +0 -43
- package/dist/js/modern/commands/index.js +0 -2
- package/dist/js/modern/features/build/build-platform.js +0 -69
- package/dist/js/modern/features/build/bundle/index.js +0 -9
- package/dist/js/modern/features/build/bundle/runRollup.js +0 -136
- package/dist/js/modern/features/build/bundle/runSpeedy.js +0 -176
- package/dist/js/modern/features/build/bundleless/copy-assets.js +0 -75
- package/dist/js/modern/features/build/bundleless/generator-dts/index.js +0 -106
- package/dist/js/modern/features/build/bundleless/generator-dts/utils.js +0 -94
- package/dist/js/modern/features/build/bundleless/index.js +0 -21
- package/dist/js/modern/features/build/bundleless/runBabel.js +0 -242
- package/dist/js/modern/features/build/bundleless/style.js +0 -241
- package/dist/js/modern/features/build/constants.js +0 -98
- package/dist/js/modern/features/build/error.js +0 -127
- package/dist/js/modern/features/build/index.js +0 -117
- package/dist/js/modern/features/build/legacy-constants.js +0 -103
- package/dist/js/modern/features/build/logger/index.js +0 -2
- package/dist/js/modern/features/build/logger/logText.js +0 -56
- package/dist/js/modern/features/build/logger/loggerManager.js +0 -93
- package/dist/js/modern/features/build/normalize.js +0 -277
- package/dist/js/modern/features/build/utils.js +0 -92
- package/dist/js/modern/features/dev/index.js +0 -47
- package/dist/js/modern/hooks/build.js +0 -20
- package/dist/js/modern/hooks/dev.js +0 -14
- package/dist/js/modern/hooks/index.js +0 -15
- package/dist/js/modern/index.js +0 -63
- package/dist/js/modern/locale/en.js +0 -25
- package/dist/js/modern/locale/index.js +0 -10
- package/dist/js/modern/locale/zh.js +0 -25
- package/dist/js/modern/schema/build-config.js +0 -117
- package/dist/js/modern/schema/index.js +0 -4
- package/dist/js/modern/schema/output.js +0 -45
- package/dist/js/modern/schema/source.js +0 -7
- package/dist/js/modern/schema/tools.js +0 -6
- package/dist/js/modern/utils/babel.js +0 -84
- package/dist/js/modern/utils/color.js +0 -2
- package/dist/js/modern/utils/constants.js +0 -3
- package/dist/js/modern/utils/copy.js +0 -70
- package/dist/js/modern/utils/init-env.js +0 -13
- package/dist/js/modern/utils/json.js +0 -13
- package/dist/js/modern/utils/language.js +0 -6
- package/dist/js/modern/utils/logger.js +0 -96
- package/dist/js/modern/utils/readline.js +0 -17
- package/dist/js/modern/utils/tsconfig.js +0 -13
- package/dist/js/modern/utils/tspaths-transform/constants.js +0 -5
- package/dist/js/modern/utils/tspaths-transform/index.js +0 -113
- package/dist/js/modern/utils/tspaths-transform/utils.js +0 -18
- package/dist/js/modern/utils/valide.js +0 -26
- package/dist/js/node/cli/build.js +0 -18
- package/dist/js/node/cli/dev.js +0 -18
- package/dist/js/node/cli/index.js +0 -38
- package/dist/js/node/cli/new.js +0 -20
- package/dist/js/node/commands/build.js +0 -80
- package/dist/js/node/commands/dev.js +0 -52
- package/dist/js/node/commands/index.js +0 -19
- package/dist/js/node/features/build/build-platform.js +0 -76
- package/dist/js/node/features/build/bundle/index.js +0 -17
- package/dist/js/node/features/build/bundle/runRollup.js +0 -145
- package/dist/js/node/features/build/bundle/runSpeedy.js +0 -186
- package/dist/js/node/features/build/bundleless/copy-assets.js +0 -84
- package/dist/js/node/features/build/bundleless/generator-dts/index.js +0 -114
- package/dist/js/node/features/build/bundleless/generator-dts/utils.js +0 -105
- package/dist/js/node/features/build/bundleless/index.js +0 -29
- package/dist/js/node/features/build/bundleless/runBabel.js +0 -255
- package/dist/js/node/features/build/bundleless/style.js +0 -254
- package/dist/js/node/features/build/constants.js +0 -116
- package/dist/js/node/features/build/error.js +0 -139
- package/dist/js/node/features/build/index.js +0 -128
- package/dist/js/node/features/build/legacy-constants.js +0 -111
- package/dist/js/node/features/build/logger/index.js +0 -27
- package/dist/js/node/features/build/logger/logText.js +0 -66
- package/dist/js/node/features/build/logger/loggerManager.js +0 -95
- package/dist/js/node/features/build/normalize.js +0 -288
- package/dist/js/node/features/build/utils.js +0 -107
- package/dist/js/node/features/dev/index.js +0 -56
- package/dist/js/node/hooks/build.js +0 -32
- package/dist/js/node/hooks/dev.js +0 -24
- package/dist/js/node/hooks/index.js +0 -36
- package/dist/js/node/index.js +0 -83
- package/dist/js/node/locale/en.js +0 -32
- package/dist/js/node/locale/index.js +0 -17
- package/dist/js/node/locale/zh.js +0 -32
- package/dist/js/node/schema/build-config.js +0 -126
- package/dist/js/node/schema/index.js +0 -11
- package/dist/js/node/schema/output.js +0 -52
- package/dist/js/node/schema/source.js +0 -14
- package/dist/js/node/schema/tools.js +0 -13
- package/dist/js/node/utils/babel.js +0 -93
- package/dist/js/node/utils/color.js +0 -9
- package/dist/js/node/utils/constants.js +0 -11
- package/dist/js/node/utils/copy.js +0 -79
- package/dist/js/node/utils/init-env.js +0 -20
- package/dist/js/node/utils/json.js +0 -20
- package/dist/js/node/utils/language.js +0 -12
- package/dist/js/node/utils/logger.js +0 -107
- package/dist/js/node/utils/readline.js +0 -25
- package/dist/js/node/utils/tsconfig.js +0 -21
- package/dist/js/node/utils/tspaths-transform/constants.js +0 -12
- package/dist/js/node/utils/tspaths-transform/index.js +0 -123
- package/dist/js/node/utils/tspaths-transform/utils.js +0 -25
- package/dist/js/node/utils/valide.js +0 -34
- package/dist/types/cli/build.d.ts +0 -3
- package/dist/types/cli/dev.d.ts +0 -3
- package/dist/types/cli/index.d.ts +0 -3
- package/dist/types/cli/new.d.ts +0 -2
- package/dist/types/commands/build.d.ts +0 -17
- package/dist/types/commands/dev.d.ts +0 -5
- package/dist/types/commands/index.d.ts +0 -2
- package/dist/types/features/build/build-platform.d.ts +0 -7
- package/dist/types/features/build/bundle/index.d.ts +0 -3
- package/dist/types/features/build/bundle/runRollup.d.ts +0 -3
- package/dist/types/features/build/bundle/runSpeedy.d.ts +0 -10
- package/dist/types/features/build/bundleless/copy-assets.d.ts +0 -3
- package/dist/types/features/build/bundleless/generator-dts/index.d.ts +0 -3
- package/dist/types/features/build/bundleless/generator-dts/utils.d.ts +0 -21
- package/dist/types/features/build/bundleless/index.d.ts +0 -4
- package/dist/types/features/build/bundleless/runBabel.d.ts +0 -32
- package/dist/types/features/build/bundleless/style.d.ts +0 -25
- package/dist/types/features/build/constants.d.ts +0 -18
- package/dist/types/features/build/index.d.ts +0 -12
- package/dist/types/features/build/legacy-constants.d.ts +0 -8
- package/dist/types/features/build/logger/index.d.ts +0 -2
- package/dist/types/features/build/logger/logText.d.ts +0 -39
- package/dist/types/features/build/logger/loggerManager.d.ts +0 -40
- package/dist/types/features/build/normalize.d.ts +0 -19
- package/dist/types/features/build/types.d.ts +0 -15
- package/dist/types/features/build/utils.d.ts +0 -36
- package/dist/types/features/dev/index.d.ts +0 -9
- package/dist/types/hooks/build.d.ts +0 -46
- package/dist/types/hooks/dev.d.ts +0 -20
- package/dist/types/hooks/index.d.ts +0 -30
- package/dist/types/schema/build-config.d.ts +0 -205
- package/dist/types/schema/index.d.ts +0 -217
- package/dist/types/schema/output.d.ts +0 -215
- package/dist/types/schema/source.d.ts +0 -6
- package/dist/types/schema/tools.d.ts +0 -6
- package/dist/types/schema/types.d.ts +0 -45
- package/dist/types/types.d.ts +0 -51
- package/dist/types/utils/babel.d.ts +0 -8
- package/dist/types/utils/color.d.ts +0 -2
- package/dist/types/utils/constants.d.ts +0 -2
- package/dist/types/utils/copy.d.ts +0 -5
- package/dist/types/utils/init-env.d.ts +0 -21
- package/dist/types/utils/json.d.ts +0 -4
- package/dist/types/utils/language.d.ts +0 -1
- package/dist/types/utils/logger.d.ts +0 -58
- package/dist/types/utils/readline.d.ts +0 -9
- package/dist/types/utils/tspaths-transform/constants.d.ts +0 -1
- package/dist/types/utils/tspaths-transform/utils.d.ts +0 -4
- package/dist/types/utils/valide.d.ts +0 -12
- package/types.d.ts +0 -1
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
import { Import } from '@modern-js/utils';
|
|
5
|
-
const newAction = Import.lazy('@modern-js/new-action', require);
|
|
6
|
-
const local = Import.lazy('../locale', require);
|
|
7
|
-
export const newCli = (program, locale) => {
|
|
8
|
-
program.command('new').usage('[options]').description(local.i18n.t(local.localeKeys.command.new.describe)).option('-d, --debug', local.i18n.t(local.localeKeys.command.new.debug), false).option('-c, --config <config>', local.i18n.t(local.localeKeys.command.new.config)).option('--dist-tag <tag>', local.i18n.t(local.localeKeys.command.new.distTag)).option('--registry', local.i18n.t(local.localeKeys.command.new.registry)).action(async options => {
|
|
9
|
-
await newAction.ModuleNewAction(_objectSpread(_objectSpread({}, options), {}, {
|
|
10
|
-
locale
|
|
11
|
-
}));
|
|
12
|
-
});
|
|
13
|
-
};
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import * as path from 'path';
|
|
2
|
-
import { fs, Import, dotenv, globby, slash } from '@modern-js/utils';
|
|
3
|
-
import onExit from 'signal-exit';
|
|
4
|
-
const tsConfigutils = Import.lazy('../utils/tsconfig', require);
|
|
5
|
-
const valid = Import.lazy('../utils/valide', require);
|
|
6
|
-
const buildFeature = Import.lazy('../features/build', require);
|
|
7
|
-
/**
|
|
8
|
-
* init work before build task.
|
|
9
|
-
* @param api
|
|
10
|
-
*/
|
|
11
|
-
export const init = api => {
|
|
12
|
-
const {
|
|
13
|
-
appDirectory
|
|
14
|
-
} = api.useAppContext();
|
|
15
|
-
dotenv.config();
|
|
16
|
-
onExit(async code => {
|
|
17
|
-
if (code === 0) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
const tempTsconfigPathPattern = path.join(appDirectory, './node_modules', `./tsconfig.**.**.json`);
|
|
21
|
-
const files = globby(slash(tempTsconfigPathPattern), {
|
|
22
|
-
stats: true,
|
|
23
|
-
absolute: true
|
|
24
|
-
});
|
|
25
|
-
const currentTime = Date.now();
|
|
26
|
-
for (const file of files) {
|
|
27
|
-
// over 30s, will delete it
|
|
28
|
-
if (currentTime - file.stats.birthtimeMs >= 30 * 1000) {
|
|
29
|
-
fs.unlinkSync(file.path);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
export const build = async (api, buildCommandOption) => {
|
|
35
|
-
var _modernConfig$output$, _modernConfig$output;
|
|
36
|
-
const {
|
|
37
|
-
watch = false,
|
|
38
|
-
tsconfig: tsconfigName,
|
|
39
|
-
tsc,
|
|
40
|
-
dts = false,
|
|
41
|
-
clear,
|
|
42
|
-
platform = false,
|
|
43
|
-
styleOnly = false
|
|
44
|
-
} = buildCommandOption;
|
|
45
|
-
init(api);
|
|
46
|
-
const {
|
|
47
|
-
appDirectory
|
|
48
|
-
} = api.useAppContext();
|
|
49
|
-
const modernConfig = api.useResolvedConfigContext();
|
|
50
|
-
const tsconfigPath = path.join(appDirectory, tsconfigName);
|
|
51
|
-
const outputPath = (_modernConfig$output$ = modernConfig === null || modernConfig === void 0 ? void 0 : (_modernConfig$output = modernConfig.output) === null || _modernConfig$output === void 0 ? void 0 : _modernConfig$output.path) !== null && _modernConfig$output$ !== void 0 ? _modernConfig$output$ : 'dist';
|
|
52
|
-
const isTsProject = tsConfigutils.existTsConfigFile(tsconfigPath);
|
|
53
|
-
const enableDtsGen = isTsProject && dts;
|
|
54
|
-
valid.valideBeforeTask({
|
|
55
|
-
modernConfig,
|
|
56
|
-
tsconfigPath
|
|
57
|
-
});
|
|
58
|
-
await buildFeature.build(api, {
|
|
59
|
-
enableWatchMode: watch,
|
|
60
|
-
enableDtsGen,
|
|
61
|
-
isTsProject,
|
|
62
|
-
tsconfigName,
|
|
63
|
-
outputPath,
|
|
64
|
-
styleOnly,
|
|
65
|
-
platform,
|
|
66
|
-
clear,
|
|
67
|
-
legacyTsc: tsc
|
|
68
|
-
});
|
|
69
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import * as path from 'path';
|
|
2
|
-
import { dotenv, Import } from '@modern-js/utils';
|
|
3
|
-
const devFeature = Import.lazy('../features/dev', require);
|
|
4
|
-
const tsConfigutils = Import.lazy('../utils/tsconfig', require);
|
|
5
|
-
const valid = Import.lazy('../utils/valide', require);
|
|
6
|
-
const existSubCmd = subCmd => subCmd.length > 0;
|
|
7
|
-
export const dev = async (api, option, subCmd = '') => {
|
|
8
|
-
const {
|
|
9
|
-
tsconfig: tsconfigName
|
|
10
|
-
} = option;
|
|
11
|
-
const appContext = api.useAppContext();
|
|
12
|
-
const modernConfig = api.useResolvedConfigContext();
|
|
13
|
-
const {
|
|
14
|
-
appDirectory
|
|
15
|
-
} = appContext;
|
|
16
|
-
const tsconfigPath = path.join(appDirectory, tsconfigName);
|
|
17
|
-
dotenv.config();
|
|
18
|
-
valid.valideBeforeTask({
|
|
19
|
-
modernConfig,
|
|
20
|
-
tsconfigPath
|
|
21
|
-
});
|
|
22
|
-
const isTsProject = tsConfigutils.existTsConfigFile(tsconfigPath);
|
|
23
|
-
if (existSubCmd(subCmd)) {
|
|
24
|
-
await devFeature.runSubCmd(api, subCmd, {
|
|
25
|
-
isTsProject,
|
|
26
|
-
appDirectory
|
|
27
|
-
});
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// Compatible with the use of jupiter, RUN_PLATFORM is used in jupiter
|
|
32
|
-
if (process.env.RUN_PLATFORM) {
|
|
33
|
-
await devFeature.showMenu(api, {
|
|
34
|
-
isTsProject,
|
|
35
|
-
appDirectory
|
|
36
|
-
});
|
|
37
|
-
} else {
|
|
38
|
-
await devFeature.devStorybook(api, {
|
|
39
|
-
isTsProject,
|
|
40
|
-
appDirectory
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
};
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
import { execa, Import, chalk } from '@modern-js/utils';
|
|
5
|
-
const lg = Import.lazy('./logger', require);
|
|
6
|
-
const pMap = Import.lazy('p-map', require);
|
|
7
|
-
export const buildPlatform = async (api, option) => {
|
|
8
|
-
const {
|
|
9
|
-
isTsProject = false,
|
|
10
|
-
platform
|
|
11
|
-
} = option;
|
|
12
|
-
const lm = new lg.LoggerManager();
|
|
13
|
-
// 获取platforms的参数
|
|
14
|
-
const runners = api.useHookRunners();
|
|
15
|
-
const buildTasks = await runners.platformBuild({
|
|
16
|
-
isTsProject
|
|
17
|
-
});
|
|
18
|
-
if (buildTasks.length <= 0) {
|
|
19
|
-
console.info(chalk.yellow('No build tasks detected.\nYou can use the `new` command to enable the more features'));
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const loggerMap = {};
|
|
23
|
-
const taskMapper = buildTasks.filter(task => platform === 'all' || task.name === platform).map(params => {
|
|
24
|
-
const logger = lm.createLoggerText({
|
|
25
|
-
title: params.title
|
|
26
|
-
});
|
|
27
|
-
loggerMap[params.name] = logger;
|
|
28
|
-
return _objectSpread({
|
|
29
|
-
logger
|
|
30
|
-
}, params);
|
|
31
|
-
});
|
|
32
|
-
if (taskMapper.length <= 0) {
|
|
33
|
-
console.info(chalk.yellow(`'${platform}' is undefined task`));
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
lm.showCompiling();
|
|
37
|
-
await pMap(taskMapper, async ({
|
|
38
|
-
taskPath,
|
|
39
|
-
params,
|
|
40
|
-
logger: _
|
|
41
|
-
}) => {
|
|
42
|
-
const childProcess = execa.node(taskPath, params, {
|
|
43
|
-
stdio: 'inherit',
|
|
44
|
-
all: true
|
|
45
|
-
});
|
|
46
|
-
|
|
47
|
-
// lm.addStdout(logger, childProcess.stdout, {
|
|
48
|
-
// event: { data: true, error: true },
|
|
49
|
-
// });
|
|
50
|
-
|
|
51
|
-
// lm.addStderr(logger, childProcess.stderr);
|
|
52
|
-
try {
|
|
53
|
-
await childProcess;
|
|
54
|
-
} catch (_unused) {
|
|
55
|
-
// eslint-disable-next-line no-process-exit
|
|
56
|
-
process.exit(1);
|
|
57
|
-
}
|
|
58
|
-
// lm.disappearCompiling();
|
|
59
|
-
// console.info(lg.colors.title(title));
|
|
60
|
-
// console.info(a.all);
|
|
61
|
-
}, {
|
|
62
|
-
concurrency: 1
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
// lm.disappearCompiling();
|
|
66
|
-
// for (const key of Object.keys(loggerMap)) {
|
|
67
|
-
// console.info(loggerMap[key].value);
|
|
68
|
-
// }
|
|
69
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import pMap from 'p-map';
|
|
2
|
-
import { runSpeedy } from "./runSpeedy";
|
|
3
|
-
import { startRollup } from "./runRollup";
|
|
4
|
-
export const build = async (api, config) => {
|
|
5
|
-
const tasks = config.dtsOnly ? [startRollup] : [runSpeedy, startRollup];
|
|
6
|
-
await pMap(tasks, async task => {
|
|
7
|
-
await task(api, config);
|
|
8
|
-
});
|
|
9
|
-
};
|
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
import path from 'path';
|
|
5
|
-
import ts from 'typescript';
|
|
6
|
-
import hashbangPlugin from 'rollup-plugin-hashbang';
|
|
7
|
-
import jsonPlugin from '@rollup/plugin-json';
|
|
8
|
-
import { InternalDTSError } from "../error";
|
|
9
|
-
import { SectionTitleStatus, watchSectionTitle } from "../utils";
|
|
10
|
-
|
|
11
|
-
// Copied from https://github.com/egoist/tsup/blob/dev/src/rollup.ts
|
|
12
|
-
|
|
13
|
-
const loadCompilerOptions = tsconfig => {
|
|
14
|
-
if (!tsconfig) {
|
|
15
|
-
return {};
|
|
16
|
-
}
|
|
17
|
-
const configFile = ts.readConfigFile(tsconfig, ts.sys.readFile);
|
|
18
|
-
const {
|
|
19
|
-
options
|
|
20
|
-
} = ts.parseJsonConfigFileContent(configFile.config, ts.sys, './');
|
|
21
|
-
return options;
|
|
22
|
-
};
|
|
23
|
-
const dtsPlugin = require('rollup-plugin-dts');
|
|
24
|
-
const getRollupConfig = async (api, options) => {
|
|
25
|
-
const {
|
|
26
|
-
appDirectory
|
|
27
|
-
} = api.useAppContext();
|
|
28
|
-
const {
|
|
29
|
-
output: {
|
|
30
|
-
path: distPath = 'dist'
|
|
31
|
-
}
|
|
32
|
-
} = api.useResolvedConfigContext();
|
|
33
|
-
const {
|
|
34
|
-
outputPath,
|
|
35
|
-
bundleOptions,
|
|
36
|
-
tsconfig
|
|
37
|
-
} = options;
|
|
38
|
-
const distDir = path.join(appDirectory, distPath, outputPath);
|
|
39
|
-
const compilerOptions = loadCompilerOptions(tsconfig);
|
|
40
|
-
const dtsOptions = {
|
|
41
|
-
entry: bundleOptions.entry
|
|
42
|
-
};
|
|
43
|
-
const ignoreFiles = {
|
|
44
|
-
name: 'ignore-files',
|
|
45
|
-
load(id) {
|
|
46
|
-
if (!/\.(js|jsx|ts|tsx|json)$/.test(id)) {
|
|
47
|
-
return '';
|
|
48
|
-
}
|
|
49
|
-
return null;
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
return {
|
|
53
|
-
inputConfig: {
|
|
54
|
-
input: dtsOptions.entry,
|
|
55
|
-
external: bundleOptions.externals,
|
|
56
|
-
onwarn(warning, handler) {
|
|
57
|
-
if (warning.code === 'UNRESOLVED_IMPORT' || warning.code === 'CIRCULAR_DEPENDENCY' || warning.code === 'EMPTY_BUNDLE') {
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
handler(warning);
|
|
61
|
-
},
|
|
62
|
-
plugins: [hashbangPlugin(), jsonPlugin(), ignoreFiles, dtsPlugin.default({
|
|
63
|
-
// use external to prevent them which come from node_modules from be bundled.
|
|
64
|
-
respectExternal: true,
|
|
65
|
-
compilerOptions: _objectSpread(_objectSpread({}, compilerOptions), {}, {
|
|
66
|
-
baseUrl: path.resolve(compilerOptions.baseUrl || '.'),
|
|
67
|
-
// Ensure ".d.ts" modules are generated
|
|
68
|
-
declaration: true,
|
|
69
|
-
// Skip ".js" generation
|
|
70
|
-
noEmit: false,
|
|
71
|
-
emitDeclarationOnly: true,
|
|
72
|
-
// Skip code generation when error occurs
|
|
73
|
-
noEmitOnError: true,
|
|
74
|
-
// Avoid extra work
|
|
75
|
-
checkJs: false,
|
|
76
|
-
declarationMap: false,
|
|
77
|
-
skipLibCheck: true,
|
|
78
|
-
preserveSymlinks: false,
|
|
79
|
-
// Ensure we can parse the latest code
|
|
80
|
-
target: ts.ScriptTarget.ESNext
|
|
81
|
-
})
|
|
82
|
-
})].filter(Boolean)
|
|
83
|
-
},
|
|
84
|
-
outputConfig: {
|
|
85
|
-
dir: distDir,
|
|
86
|
-
format: 'esm',
|
|
87
|
-
exports: 'named'
|
|
88
|
-
}
|
|
89
|
-
};
|
|
90
|
-
};
|
|
91
|
-
async function runRollup(options, context) {
|
|
92
|
-
try {
|
|
93
|
-
const {
|
|
94
|
-
rollup
|
|
95
|
-
} = await import('rollup');
|
|
96
|
-
const bundle = await rollup(options.inputConfig);
|
|
97
|
-
await bundle.write(options.outputConfig);
|
|
98
|
-
} catch (e) {
|
|
99
|
-
if (e instanceof Error) {
|
|
100
|
-
throw new InternalDTSError(e, _objectSpread({
|
|
101
|
-
buildType: 'bundle'
|
|
102
|
-
}, context));
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
async function watchRollup(options) {
|
|
107
|
-
const {
|
|
108
|
-
watch
|
|
109
|
-
} = await import('rollup');
|
|
110
|
-
const titleText = '[Bundle:DTS]';
|
|
111
|
-
watch(_objectSpread(_objectSpread({}, options.inputConfig), {}, {
|
|
112
|
-
plugins: options.inputConfig.plugins,
|
|
113
|
-
output: options.outputConfig
|
|
114
|
-
})).on('event', event => {
|
|
115
|
-
if (event.code === 'START') {
|
|
116
|
-
console.info(watchSectionTitle(titleText, SectionTitleStatus.Log));
|
|
117
|
-
} else if (event.code === 'BUNDLE_END') {
|
|
118
|
-
console.info(watchSectionTitle(titleText, SectionTitleStatus.Success));
|
|
119
|
-
} else if (event.code === 'ERROR') {
|
|
120
|
-
// this is dts rollup plugin bug, error not complete message
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
export const startRollup = async (api, options) => {
|
|
125
|
-
if (options.enableDts) {
|
|
126
|
-
const config = await getRollupConfig(api, options);
|
|
127
|
-
if (options.watch) {
|
|
128
|
-
watchRollup(config);
|
|
129
|
-
} else {
|
|
130
|
-
await runRollup(config, {
|
|
131
|
-
target: options.target,
|
|
132
|
-
format: options.format
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
};
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
3
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
|
-
import path from 'path';
|
|
5
|
-
import { SpeedyBundler } from '@speedy-js/speedy-core';
|
|
6
|
-
import { es5InputPlugin } from '@speedy-js/speedy-plugin-es5';
|
|
7
|
-
import { applyOptionsChain, ensureAbsolutePath } from '@modern-js/utils';
|
|
8
|
-
import { InternalBuildError } from "../error";
|
|
9
|
-
import { getPostcssOption, SectionTitleStatus, watchSectionTitle } from "../utils";
|
|
10
|
-
export const getAlias = api => {
|
|
11
|
-
const {
|
|
12
|
-
appDirectory,
|
|
13
|
-
srcDirectory
|
|
14
|
-
} = api.useAppContext();
|
|
15
|
-
const {
|
|
16
|
-
source
|
|
17
|
-
} = api.useResolvedConfigContext();
|
|
18
|
-
// TODO: maybe check tsconfig `paths`
|
|
19
|
-
const defaultAlias = {
|
|
20
|
-
'@': srcDirectory
|
|
21
|
-
};
|
|
22
|
-
const alias = applyOptionsChain(defaultAlias, source === null || source === void 0 ? void 0 : source.alias);
|
|
23
|
-
return Object.keys(alias).reduce((o, name) => {
|
|
24
|
-
return _objectSpread(_objectSpread({}, o), {}, {
|
|
25
|
-
[name]: ensureAbsolutePath(appDirectory, alias[name])
|
|
26
|
-
});
|
|
27
|
-
}, {});
|
|
28
|
-
};
|
|
29
|
-
export const getDefine = api => {
|
|
30
|
-
const {
|
|
31
|
-
source: {
|
|
32
|
-
envVars,
|
|
33
|
-
globalVars
|
|
34
|
-
}
|
|
35
|
-
} = api.useResolvedConfigContext();
|
|
36
|
-
const envVarsDefine = [...(envVars || [])].reduce((memo, name) => {
|
|
37
|
-
memo[`process.env.${name}`] = JSON.stringify(process.env[name]);
|
|
38
|
-
return memo;
|
|
39
|
-
}, {});
|
|
40
|
-
const globalVarsDefine = Object.keys(globalVars || {}).reduce((memo, name) => {
|
|
41
|
-
memo[name] = globalVars ? JSON.stringify(globalVars[name]) : '';
|
|
42
|
-
return memo;
|
|
43
|
-
}, {});
|
|
44
|
-
return _objectSpread(_objectSpread({}, envVarsDefine), globalVarsDefine);
|
|
45
|
-
};
|
|
46
|
-
const getStyleOptionFromModern = async api => {
|
|
47
|
-
const runner = api.useHookRunners();
|
|
48
|
-
const {
|
|
49
|
-
appDirectory
|
|
50
|
-
} = api.useAppContext();
|
|
51
|
-
const modernConfig = api.useResolvedConfigContext();
|
|
52
|
-
const lessOption = await runner.moduleLessConfig({
|
|
53
|
-
modernConfig
|
|
54
|
-
}, {
|
|
55
|
-
onLast: async _ => undefined
|
|
56
|
-
});
|
|
57
|
-
const sassOption = await runner.moduleSassConfig({
|
|
58
|
-
modernConfig
|
|
59
|
-
}, {
|
|
60
|
-
onLast: async _ => undefined
|
|
61
|
-
});
|
|
62
|
-
const tailwindPlugin = await runner.moduleTailwindConfig({
|
|
63
|
-
modernConfig
|
|
64
|
-
}, {
|
|
65
|
-
onLast: async _ => undefined
|
|
66
|
-
});
|
|
67
|
-
const postcssOption = getPostcssOption(appDirectory, modernConfig);
|
|
68
|
-
if (tailwindPlugin) {
|
|
69
|
-
var _postcssOption$plugin;
|
|
70
|
-
(_postcssOption$plugin = postcssOption.plugins) === null || _postcssOption$plugin === void 0 ? void 0 : _postcssOption$plugin.push(tailwindPlugin);
|
|
71
|
-
}
|
|
72
|
-
return {
|
|
73
|
-
less: lessOption === null || lessOption === void 0 ? void 0 : lessOption.lessOption,
|
|
74
|
-
sass: sassOption,
|
|
75
|
-
postcss: _objectSpread(_objectSpread({}, postcssOption.options), {}, {
|
|
76
|
-
plugins: postcssOption.plugins
|
|
77
|
-
})
|
|
78
|
-
};
|
|
79
|
-
};
|
|
80
|
-
export const runSpeedy = async (api, config) => {
|
|
81
|
-
const {
|
|
82
|
-
appDirectory
|
|
83
|
-
} = api.useAppContext();
|
|
84
|
-
const {
|
|
85
|
-
output: {
|
|
86
|
-
path: distPath = 'dist'
|
|
87
|
-
},
|
|
88
|
-
tools: {
|
|
89
|
-
speedy: userSpeedyConfig
|
|
90
|
-
} = {
|
|
91
|
-
speedy: undefined
|
|
92
|
-
}
|
|
93
|
-
} = api.useResolvedConfigContext();
|
|
94
|
-
const {
|
|
95
|
-
target,
|
|
96
|
-
watch,
|
|
97
|
-
bundleOptions,
|
|
98
|
-
outputPath,
|
|
99
|
-
format,
|
|
100
|
-
sourceMap
|
|
101
|
-
} = config;
|
|
102
|
-
const {
|
|
103
|
-
entry,
|
|
104
|
-
platform,
|
|
105
|
-
splitting,
|
|
106
|
-
minify,
|
|
107
|
-
externals,
|
|
108
|
-
getModuleId
|
|
109
|
-
} = bundleOptions;
|
|
110
|
-
const distDir = path.join(appDirectory, distPath, outputPath);
|
|
111
|
-
const titleText = `[Bundle:Speedy:${format}_${target}]`;
|
|
112
|
-
const style = await getStyleOptionFromModern(api);
|
|
113
|
-
const alias = getAlias(api);
|
|
114
|
-
const define = getDefine(api);
|
|
115
|
-
const watchPlugin = () => {
|
|
116
|
-
return {
|
|
117
|
-
name: 'watch-plugin',
|
|
118
|
-
apply(compiler) {
|
|
119
|
-
compiler.hooks.watchChange.tap('watch-plugin', async () => {
|
|
120
|
-
console.info(watchSectionTitle(titleText, SectionTitleStatus.Log));
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
};
|
|
125
|
-
const plugins = target === 'es5' ? [es5InputPlugin()] : [];
|
|
126
|
-
plugins.push(watchPlugin());
|
|
127
|
-
// TODO: add speedy plugin about react
|
|
128
|
-
const internalSpeedyConfig = {
|
|
129
|
-
command: 'build',
|
|
130
|
-
mode: 'production',
|
|
131
|
-
html: false,
|
|
132
|
-
preset: 'webapp',
|
|
133
|
-
// support css and json
|
|
134
|
-
platform,
|
|
135
|
-
watch,
|
|
136
|
-
input: entry,
|
|
137
|
-
target,
|
|
138
|
-
clearScreen: false,
|
|
139
|
-
output: {
|
|
140
|
-
path: distDir,
|
|
141
|
-
format,
|
|
142
|
-
splitting,
|
|
143
|
-
filename: '[name]'
|
|
144
|
-
},
|
|
145
|
-
style,
|
|
146
|
-
resolve: {
|
|
147
|
-
alias
|
|
148
|
-
},
|
|
149
|
-
define,
|
|
150
|
-
sourceMap,
|
|
151
|
-
minify,
|
|
152
|
-
external: externals,
|
|
153
|
-
plugins,
|
|
154
|
-
getModuleId
|
|
155
|
-
};
|
|
156
|
-
const speedyConfig = applyOptionsChain(internalSpeedyConfig, userSpeedyConfig);
|
|
157
|
-
const compiler = await SpeedyBundler.create(speedyConfig);
|
|
158
|
-
try {
|
|
159
|
-
if (watch) {
|
|
160
|
-
console.info(watchSectionTitle(titleText, SectionTitleStatus.Log));
|
|
161
|
-
}
|
|
162
|
-
await compiler.build();
|
|
163
|
-
} catch (e) {
|
|
164
|
-
/**
|
|
165
|
-
* in watch mode
|
|
166
|
-
* use speedy watch log
|
|
167
|
-
*/
|
|
168
|
-
if (e instanceof Error) {
|
|
169
|
-
throw new InternalBuildError(e, {
|
|
170
|
-
target,
|
|
171
|
-
format,
|
|
172
|
-
buildType: 'bundle'
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
};
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import * as path from 'path';
|
|
2
|
-
import { fs, watch, glob, WatchChangeType, Import } from '@modern-js/utils';
|
|
3
|
-
const copyUtils = Import.lazy('../../../utils/copy', require);
|
|
4
|
-
const SRC_DIRS = 'src';
|
|
5
|
-
const copyAssets = ({
|
|
6
|
-
targetDir,
|
|
7
|
-
outputDir
|
|
8
|
-
}) => {
|
|
9
|
-
const assetsFiles = glob.sync(`${targetDir}/**/*.*`, {
|
|
10
|
-
ignore: ['**/*.{js,jsx,ts,tsx,d.ts,scss,less,css,sass}']
|
|
11
|
-
});
|
|
12
|
-
if (assetsFiles.length > 0) {
|
|
13
|
-
fs.ensureDirSync(outputDir);
|
|
14
|
-
}
|
|
15
|
-
for (const resource of assetsFiles) {
|
|
16
|
-
const file = path.relative(targetDir, resource);
|
|
17
|
-
fs.ensureDirSync(path.dirname(path.resolve(outputDir, file)));
|
|
18
|
-
fs.copyFileSync(resource, path.resolve(outputDir, file));
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
const watchAssets = (api, {
|
|
22
|
-
targetDir,
|
|
23
|
-
outputDir
|
|
24
|
-
}) => {
|
|
25
|
-
watch(`${targetDir}/**/*.*`, async ({
|
|
26
|
-
changeType,
|
|
27
|
-
changedFilePath
|
|
28
|
-
}) => {
|
|
29
|
-
if (changeType === WatchChangeType.UNLINK) {
|
|
30
|
-
const removeFile = path.normalize(`${outputDir}/${path.relative(targetDir, changedFilePath)}`);
|
|
31
|
-
fs.removeSync(removeFile);
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
const file = path.relative(targetDir, changedFilePath);
|
|
35
|
-
fs.copyFileSync(changedFilePath, path.resolve(outputDir, file));
|
|
36
|
-
}, ['**/*.{js,jsx,ts,tsx,d.ts,scss,less,css,sass}']);
|
|
37
|
-
};
|
|
38
|
-
export const copyStaticAssets = async (api, config) => {
|
|
39
|
-
var _bundlelessOptions$so;
|
|
40
|
-
const appContext = api.useAppContext();
|
|
41
|
-
const modernConfig = api.useResolvedConfigContext();
|
|
42
|
-
const {
|
|
43
|
-
appDirectory
|
|
44
|
-
} = appContext;
|
|
45
|
-
const {
|
|
46
|
-
path: distPath = 'dist'
|
|
47
|
-
} = modernConfig.output;
|
|
48
|
-
const {
|
|
49
|
-
outputPath,
|
|
50
|
-
bundlelessOptions
|
|
51
|
-
} = config;
|
|
52
|
-
const {
|
|
53
|
-
static: {
|
|
54
|
-
path: staticPath = './'
|
|
55
|
-
} = {
|
|
56
|
-
path: './'
|
|
57
|
-
}
|
|
58
|
-
} = bundlelessOptions;
|
|
59
|
-
const srcDir = path.join(appDirectory, (_bundlelessOptions$so = bundlelessOptions.sourceDir) !== null && _bundlelessOptions$so !== void 0 ? _bundlelessOptions$so : SRC_DIRS);
|
|
60
|
-
const outputDirToSrc = path.join(appDirectory, distPath, outputPath, staticPath);
|
|
61
|
-
copyAssets({
|
|
62
|
-
targetDir: srcDir,
|
|
63
|
-
outputDir: outputDirToSrc
|
|
64
|
-
});
|
|
65
|
-
await copyUtils.copyTask({
|
|
66
|
-
modernConfig,
|
|
67
|
-
appContext
|
|
68
|
-
});
|
|
69
|
-
if (config.watch) {
|
|
70
|
-
watchAssets(api, {
|
|
71
|
-
targetDir: srcDir,
|
|
72
|
-
outputDir: outputDirToSrc
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
};
|