build: make compiler-sfc global build work
This commit is contained in:
parent
67039b3434
commit
2424768808
@ -43,9 +43,9 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/types": "^7.12.0",
|
"@babel/types": "^7.12.0",
|
||||||
"@microsoft/api-extractor": "^7.12.1",
|
"@microsoft/api-extractor": "^7.12.1",
|
||||||
"@rollup/plugin-commonjs": "^17.0.0",
|
"@rollup/plugin-commonjs": "^18.0.0",
|
||||||
"@rollup/plugin-json": "^4.0.0",
|
"@rollup/plugin-json": "^4.0.0",
|
||||||
"@rollup/plugin-node-resolve": "^11.0.0",
|
"@rollup/plugin-node-resolve": "^11.2.1",
|
||||||
"@rollup/plugin-replace": "^2.3.4",
|
"@rollup/plugin-replace": "^2.3.4",
|
||||||
"@types/hash-sum": "^1.0.0",
|
"@types/hash-sum": "^1.0.0",
|
||||||
"@types/jest": "^26.0.16",
|
"@types/jest": "^26.0.16",
|
||||||
@ -69,6 +69,7 @@
|
|||||||
"rollup": "~2.38.5",
|
"rollup": "~2.38.5",
|
||||||
"rollup-plugin-node-builtins": "^2.1.2",
|
"rollup-plugin-node-builtins": "^2.1.2",
|
||||||
"rollup-plugin-node-globals": "^1.4.0",
|
"rollup-plugin-node-globals": "^1.4.0",
|
||||||
|
"rollup-plugin-node-polyfills": "^0.2.1",
|
||||||
"rollup-plugin-terser": "^7.0.2",
|
"rollup-plugin-terser": "^7.0.2",
|
||||||
"rollup-plugin-typescript2": "^0.27.2",
|
"rollup-plugin-typescript2": "^0.27.2",
|
||||||
"semver": "^7.3.2",
|
"semver": "^7.3.2",
|
||||||
|
@ -4,10 +4,6 @@
|
|||||||
|
|
||||||
This package contains lower level utilities that you can use if you are writing a plugin / transform for a bundler or module system that compiles Vue Single File Components (SFCs) into JavaScript. It is used in [vue-loader](https://github.com/vuejs/vue-loader), [rollup-plugin-vue](https://github.com/vuejs/rollup-plugin-vue) and [vite](https://github.com/vitejs/vite).
|
This package contains lower level utilities that you can use if you are writing a plugin / transform for a bundler or module system that compiles Vue Single File Components (SFCs) into JavaScript. It is used in [vue-loader](https://github.com/vuejs/vue-loader), [rollup-plugin-vue](https://github.com/vuejs/rollup-plugin-vue) and [vite](https://github.com/vitejs/vite).
|
||||||
|
|
||||||
## Browser Build Notes
|
|
||||||
|
|
||||||
The browser build relies on a browser-bundled build of `postcss` to be available under the global `postcss` (since it can't be properly bundled by Rollup).
|
|
||||||
|
|
||||||
## API
|
## API
|
||||||
|
|
||||||
The API is intentionally low-level due to the various considerations when integrating Vue SFCs in a build system:
|
The API is intentionally low-level due to the various considerations when integrating Vue SFCs in a build system:
|
||||||
|
@ -119,9 +119,7 @@ function createConfig(format, output, plugins = []) {
|
|||||||
const external =
|
const external =
|
||||||
isGlobalBuild || isBrowserESMBuild
|
isGlobalBuild || isBrowserESMBuild
|
||||||
? packageOptions.enableNonBrowserBranches
|
? packageOptions.enableNonBrowserBranches
|
||||||
? // externalize postcss for @vue/compiler-sfc
|
? []
|
||||||
// because @rollup/plugin-commonjs cannot bundle it properly
|
|
||||||
['postcss']
|
|
||||||
: // normal browser builds - non-browser only imports are tree-shaken,
|
: // normal browser builds - non-browser only imports are tree-shaken,
|
||||||
// they are only listed here to suppress warnings.
|
// they are only listed here to suppress warnings.
|
||||||
['source-map', '@babel/parser', 'estree-walker']
|
['source-map', '@babel/parser', 'estree-walker']
|
||||||
@ -141,14 +139,11 @@ function createConfig(format, output, plugins = []) {
|
|||||||
const nodePlugins =
|
const nodePlugins =
|
||||||
packageOptions.enableNonBrowserBranches && format !== 'cjs'
|
packageOptions.enableNonBrowserBranches && format !== 'cjs'
|
||||||
? [
|
? [
|
||||||
require('@rollup/plugin-node-resolve').nodeResolve({
|
|
||||||
preferBuiltins: true
|
|
||||||
}),
|
|
||||||
require('@rollup/plugin-commonjs')({
|
require('@rollup/plugin-commonjs')({
|
||||||
sourceMap: false
|
sourceMap: false
|
||||||
}),
|
}),
|
||||||
require('rollup-plugin-node-builtins')(),
|
require('rollup-plugin-node-polyfills')(),
|
||||||
require('rollup-plugin-node-globals')()
|
require('@rollup/plugin-node-resolve').nodeResolve()
|
||||||
]
|
]
|
||||||
: []
|
: []
|
||||||
|
|
||||||
|
36
yarn.lock
36
yarn.lock
@ -559,10 +559,10 @@
|
|||||||
"@nodelib/fs.scandir" "2.1.4"
|
"@nodelib/fs.scandir" "2.1.4"
|
||||||
fastq "^1.6.0"
|
fastq "^1.6.0"
|
||||||
|
|
||||||
"@rollup/plugin-commonjs@^17.0.0":
|
"@rollup/plugin-commonjs@^18.0.0":
|
||||||
version "17.1.0"
|
version "18.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-17.1.0.tgz#757ec88737dffa8aa913eb392fade2e45aef2a2d"
|
resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-18.0.0.tgz#50dc7518b5aa9e66a270e529ea85115d269825c4"
|
||||||
integrity sha512-PoMdXCw0ZyvjpCMT5aV4nkL0QywxP29sODQsSGeDpr/oI49Qq9tRtAsb/LbYbDzFlOydVEqHmmZWFtXJEAX9ew==
|
integrity sha512-fj92shhg8luw7XbA0HowAqz90oo7qtLGwqTKbyZ8pmOyH8ui5e+u0wPEgeHLH3djcVma6gUCUrjY6w5R2o1u6g==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@rollup/pluginutils" "^3.1.0"
|
"@rollup/pluginutils" "^3.1.0"
|
||||||
commondir "^1.0.1"
|
commondir "^1.0.1"
|
||||||
@ -579,10 +579,10 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@rollup/pluginutils" "^3.0.8"
|
"@rollup/pluginutils" "^3.0.8"
|
||||||
|
|
||||||
"@rollup/plugin-node-resolve@^11.0.0":
|
"@rollup/plugin-node-resolve@^11.2.1":
|
||||||
version "11.2.0"
|
version "11.2.1"
|
||||||
resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.0.tgz#a5ab88c35bb7622d115f44984dee305112b6f714"
|
resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz#82aa59397a29cd4e13248b106e6a4a1880362a60"
|
||||||
integrity sha512-qHjNIKYt5pCcn+5RUBQxK8krhRvf1HnyVgUCcFFcweDS7fhkOLZeYh0mhHK6Ery8/bb9tvN/ubPzmfF0qjDCTA==
|
integrity sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@rollup/pluginutils" "^3.1.0"
|
"@rollup/pluginutils" "^3.1.0"
|
||||||
"@types/resolve" "1.17.1"
|
"@types/resolve" "1.17.1"
|
||||||
@ -4617,7 +4617,7 @@ magic-string@^0.22.5:
|
|||||||
dependencies:
|
dependencies:
|
||||||
vlq "^0.2.2"
|
vlq "^0.2.2"
|
||||||
|
|
||||||
magic-string@^0.25.7:
|
magic-string@^0.25.3, magic-string@^0.25.7:
|
||||||
version "0.25.7"
|
version "0.25.7"
|
||||||
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
|
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
|
||||||
integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
|
integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
|
||||||
@ -6053,6 +6053,15 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
|
|||||||
hash-base "^3.0.0"
|
hash-base "^3.0.0"
|
||||||
inherits "^2.0.1"
|
inherits "^2.0.1"
|
||||||
|
|
||||||
|
rollup-plugin-inject@^3.0.0:
|
||||||
|
version "3.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/rollup-plugin-inject/-/rollup-plugin-inject-3.0.2.tgz#e4233855bfba6c0c12a312fd6649dff9a13ee9f4"
|
||||||
|
integrity sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w==
|
||||||
|
dependencies:
|
||||||
|
estree-walker "^0.6.1"
|
||||||
|
magic-string "^0.25.3"
|
||||||
|
rollup-pluginutils "^2.8.1"
|
||||||
|
|
||||||
rollup-plugin-node-builtins@^2.1.2:
|
rollup-plugin-node-builtins@^2.1.2:
|
||||||
version "2.1.2"
|
version "2.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz#24a1fed4a43257b6b64371d8abc6ce1ab14597e9"
|
resolved "https://registry.yarnpkg.com/rollup-plugin-node-builtins/-/rollup-plugin-node-builtins-2.1.2.tgz#24a1fed4a43257b6b64371d8abc6ce1ab14597e9"
|
||||||
@ -6075,6 +6084,13 @@ rollup-plugin-node-globals@^1.4.0:
|
|||||||
process-es6 "^0.11.6"
|
process-es6 "^0.11.6"
|
||||||
rollup-pluginutils "^2.3.1"
|
rollup-pluginutils "^2.3.1"
|
||||||
|
|
||||||
|
rollup-plugin-node-polyfills@^0.2.1:
|
||||||
|
version "0.2.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/rollup-plugin-node-polyfills/-/rollup-plugin-node-polyfills-0.2.1.tgz#53092a2744837164d5b8a28812ba5f3ff61109fd"
|
||||||
|
integrity sha512-4kCrKPTJ6sK4/gLL/U5QzVT8cxJcofO0OU74tnB19F40cmuAKSzH5/siithxlofFEjwvw1YAhPmbvGNA6jEroA==
|
||||||
|
dependencies:
|
||||||
|
rollup-plugin-inject "^3.0.0"
|
||||||
|
|
||||||
rollup-plugin-terser@^7.0.2:
|
rollup-plugin-terser@^7.0.2:
|
||||||
version "7.0.2"
|
version "7.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d"
|
resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d"
|
||||||
@ -6096,7 +6112,7 @@ rollup-plugin-typescript2@^0.27.2:
|
|||||||
resolve "1.17.0"
|
resolve "1.17.0"
|
||||||
tslib "2.0.1"
|
tslib "2.0.1"
|
||||||
|
|
||||||
rollup-pluginutils@^2.3.1:
|
rollup-pluginutils@^2.3.1, rollup-pluginutils@^2.8.1:
|
||||||
version "2.8.2"
|
version "2.8.2"
|
||||||
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
|
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
|
||||||
integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==
|
integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==
|
||||||
|
Loading…
Reference in New Issue
Block a user