diff --git a/build/sfc.config.js b/build/vue-compile.config.js similarity index 93% rename from build/sfc.config.js rename to build/vue-compile.config.js index b147e94c..e95ab902 100644 --- a/build/sfc.config.js +++ b/build/vue-compile.config.js @@ -1,5 +1,4 @@ module.exports = { - input: 'src', outDir: 'lib', include: '**', constants: { diff --git a/package.json b/package.json index d8221f47..c9a34e51 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "4.11.0", "scripts": { "build:umd": "poi --config build/poi.lib.config.js --prod", - "build:es": "sfc normalize --config build/sfc.config.js", + "build:es": "vue-compile src --config build/vue-compile.config.js", "build": "npm run build:umd && npm run build:es", "test": "npm run lint && npm run test:unit", "lint": "xo", @@ -51,7 +51,7 @@ "power-assert": "^1.6.1", "rollup-plugin-vue": "^4.3.2", "semantic-release": "^15.12.0", - "sfc": "^0.2.13", + "vue-compile": "^0.3.1", "webpack-node-externals": "^1.7.2", "xo": "^0.23.0" }, diff --git a/yarn.lock b/yarn.lock index 1fafa36c..641aa56b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -623,6 +623,14 @@ "@babel/helper-plugin-utils" "^7.0.0" "@babel/plugin-syntax-typescript" "^7.2.0" +"@babel/plugin-transform-typescript@^7.3.2": + version "7.4.0" + resolved "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.4.0.tgz#0389ec53a34e80f99f708c4ca311181449a68eb1" + integrity sha512-U7/+zKnRZg04ggM/Bm+xmu2B/PrwyDQTT/V89FXWYWNMxBDwSx56u6jtk9SEbfLFbZaEI72L+5LPvQjeZgFCrQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-typescript" "^7.2.0" + "@babel/plugin-transform-unicode-regex@^7.2.0": version "7.2.0" resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.2.0.tgz#4eb8db16f972f8abb5062c161b8b115546ade08b" @@ -690,7 +698,15 @@ "@babel/plugin-transform-react-jsx-self" "^7.0.0" "@babel/plugin-transform-react-jsx-source" "^7.0.0" -"@babel/preset-typescript@^7.0.0", "@babel/preset-typescript@^7.1.0": +"@babel/preset-typescript@^7.0.0": + version "7.3.3" + resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz#88669911053fa16b2b276ea2ede2ca603b3f307a" + integrity sha512-mzMVuIP4lqtn4du2ynEfdO0+RYcslwrZiJHXu4MGaC1ctJiW2fyaeDrtjJGs7R/KebZ1sgowcIoWf4uRpEfKEg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-typescript" "^7.3.2" + +"@babel/preset-typescript@^7.1.0": version "7.1.0" resolved "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.1.0.tgz#49ad6e2084ff0bfb5f1f7fb3b5e76c434d442c7f" integrity sha512-LYveByuF9AOM8WrsNne5+N79k1YxjNB6gmpCQsnuSBAcV8QUeB+ZUxQzL7Rz7HksPbahymKkq2qBR+o36ggFZA== @@ -973,7 +989,7 @@ resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.2.tgz#5dc0a7f76809b7518c0df58689cd16a19bd751c6" integrity sha512-iHI60IbyfQilNubmxsq4zqSjdynlmc2Q/QvH9kjzg9+CCYVVzq1O6tc7VBzSygIwnmOt07w80IG6HDQvjv3Liw== -"@vue/component-compiler-utils@^2.0.0", "@vue/component-compiler-utils@^2.1.0", "@vue/component-compiler-utils@^2.3.0": +"@vue/component-compiler-utils@^2.0.0", "@vue/component-compiler-utils@^2.1.0": version "2.3.1" resolved "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.3.1.tgz#d1c2623f02ad3fe6b6fc9c3762be55c9c61e3977" integrity sha512-8VuzMhHTf5UU7+HvBeEbBmYiNLvRxIXtDpvxUl5x26WBPgKmQuuJVFY3dN3GFgnWK9Rveh/u/8NF4quhdUUQ1Q== @@ -988,6 +1004,21 @@ source-map "^0.5.6" vue-template-es2015-compiler "^1.6.0" +"@vue/component-compiler-utils@^2.3.0": + version "2.6.0" + resolved "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-2.6.0.tgz#aa46d2a6f7647440b0b8932434d22f12371e543b" + integrity sha512-IHjxt7LsOFYc0DkTncB7OXJL7UzwOLPPQCfEUNyxL2qt+tF12THV+EO33O1G2Uk4feMSWua3iD39Itszx0f0bw== + dependencies: + consolidate "^0.15.1" + hash-sum "^1.0.2" + lru-cache "^4.1.2" + merge-source-map "^1.1.0" + postcss "^7.0.14" + postcss-selector-parser "^5.0.0" + prettier "1.16.3" + source-map "~0.6.1" + vue-template-es2015-compiler "^1.9.0" + "@vue/component-compiler@^3.4.4": version "3.6.0" resolved "https://registry.npmjs.org/@vue/component-compiler/-/component-compiler-3.6.0.tgz#8db313e50eaa2903cef5aac68c37a09364dba79d" @@ -2305,6 +2336,15 @@ chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.3 escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + character-entities-legacy@^1.0.0: version "1.1.2" resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.2.tgz#7c6defb81648498222c9855309953d05f4d63a9c" @@ -4500,7 +4540,7 @@ fast-diff@^1.1.1: resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== -fast-glob@^2.0.2, fast-glob@^2.2.1, fast-glob@^2.2.4: +fast-glob@^2.0.2, fast-glob@^2.2.4: version "2.2.4" resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.4.tgz#e54f4b66d378040e0e4d6a68ec36bbc5b04363c0" integrity sha512-FjK2nCGI/McyzgNtTESqaWP3trPvHyRyoyY70hxjc3oKPNmDe8taohLZpoVKoUjW85tbU5txaYUZCNtVzygl1g== @@ -4512,6 +4552,18 @@ fast-glob@^2.0.2, fast-glob@^2.2.1, fast-glob@^2.2.4: merge2 "^1.2.3" micromatch "^3.1.10" +fast-glob@^2.2.1: + version "2.2.6" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.6.tgz#a5d5b697ec8deda468d85a74035290a025a95295" + integrity sha512-0BvMaZc1k9F+MeWWMe8pL6YltFzZYcJsYU7D4JyDA6PAczaXvxqQQ/z+mDF7/4Mw01DeUc+i3CTKajnkANkV4w== + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + fast-json-stable-stringify@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" @@ -6333,7 +6385,12 @@ jest-worker@^23.2.0: dependencies: merge-stream "^1.0.1" -joycon@^2.1.2, joycon@^2.2.1: +joycon@^2.1.2: + version "2.2.4" + resolved "https://registry.npmjs.org/joycon/-/joycon-2.2.4.tgz#ac4119d2673dfaa89b41efe5d6d670208e348bc6" + integrity sha512-Z4G7ZPovoSfAHCSEKznWV4IjyyUxzTY78Sgtr8inbnRxaZMAQGwqNJ46BDwcH3WgIwk0Xt1kpCsC/DFAioRtBA== + +joycon@^2.2.1: version "2.2.2" resolved "https://registry.npmjs.org/joycon/-/joycon-2.2.2.tgz#c1c331b3a66c42bd386346c485639d392f4a9f80" integrity sha512-pHMuJBQlVsaTc75MpaaLD9IdsMbs7J7hmqrOZH5ranw77feiqQANGZsabN0DoM8hv2ZIwqokJU6Tt/UyzaCPfQ== @@ -9522,6 +9579,15 @@ postcss-selector-parser@^3.0.0, postcss-selector-parser@^3.1.1: indexes-of "^1.0.1" uniq "^1.0.1" +postcss-selector-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" + integrity sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ== + dependencies: + cssesc "^2.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: version "5.0.0-rc.4" resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0-rc.4.tgz#ca5e77238bf152966378c13e91ad6d611568ea87" @@ -9629,6 +9695,15 @@ postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.2, postcss@^7.0.5, postcss@^7.0.6: source-map "^0.6.1" supports-color "^5.5.0" +postcss@^7.0.14: + version "7.0.14" + resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.14.tgz#4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5" + integrity sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg== + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + power-assert-context-formatter@^1.0.7: version "1.2.0" resolved "https://registry.npmjs.org/power-assert-context-formatter/-/power-assert-context-formatter-1.2.0.tgz#8fbe72692288ec5a7203cdf215c8b838a6061d2a" @@ -9748,6 +9823,11 @@ prettier@1.13.7: resolved "https://registry.npmjs.org/prettier/-/prettier-1.13.7.tgz#850f3b8af784a49a6ea2d2eaa7ed1428a34b7281" integrity sha512-KIU72UmYPGk4MujZGYMFwinB7lOf2LsDNGSOC8ufevsrPLISrZbNJlWstRi3m0AMuszbH+EFSQ/r6w56RSPK6w== +prettier@1.16.3: + version "1.16.3" + resolved "https://registry.npmjs.org/prettier/-/prettier-1.16.3.tgz#8c62168453badef702f34b45b6ee899574a6a65d" + integrity sha512-kn/GU6SMRYPxUakNXhpP0EedT/KmaPzr0H5lIsDogrykbaxOpOfAFfk5XA7DZrJyMAv1wlMV3CPcZruGXVVUZw== + prettier@^1.12.1, prettier@^1.2.2: version "1.15.3" resolved "https://registry.npmjs.org/prettier/-/prettier-1.15.3.tgz#1feaac5bdd181237b54dbe65d874e02a1472786a" @@ -10921,31 +11001,6 @@ setprototypeof@1.1.0: resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== -sfc@^0.2.13: - version "0.2.13" - resolved "https://registry.npmjs.org/sfc/-/sfc-0.2.13.tgz#3ad6df1ead970cd6ddb004cfffd5414435a74eee" - integrity sha512-30DYjndePtVXjj+5YS4C84ldUx2RM7V/tF8/3r4ddSwiqH9W22YzNZ6l4gKoKrLStOhxgshC/8Ra122aooNhow== - dependencies: - "@babel/core" "^7.0.0" - "@babel/preset-typescript" "^7.0.0" - "@vue/component-compiler-utils" "^2.3.0" - babel-preset-minimal "^0.1.1" - cac "^5.0.15" - chalk "^2.4.1" - debug "^3.1.0" - fast-async "^6.3.7" - fast-glob "^2.2.1" - find-babel-config "^1.1.0" - fs-extra "^6.0.0" - import-from "^2.1.0" - is-binary-path "^2.0.0" - joycon "^2.1.2" - postcss "^7.0.6" - postcss-load-config "^2.0.0" - resolve "^1.8.1" - stringify-attributes "^1.0.0" - vue-template-compiler "^2.5.17" - sha.js@^2.4.0, sha.js@^2.4.8: version "2.4.11" resolved "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" @@ -11601,6 +11656,13 @@ supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.4.0, supports-co dependencies: has-flag "^3.0.0" +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + svgo@^0.7.0: version "0.7.2" resolved "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" @@ -12314,6 +12376,31 @@ vm-browserify@0.0.4: dependencies: indexof "0.0.1" +vue-compile@^0.3.1: + version "0.3.1" + resolved "https://registry.npmjs.org/vue-compile/-/vue-compile-0.3.1.tgz#b58a6ab501fb3a78f9989427a1fe52bd58a58c42" + integrity sha512-9WORB6j812gt5MH8aHvRPLTHl7QQWLnax481ITOFJFcEHFmphXkAAKk98fK0KwqWR05fOXqRkP9Ssv4qgdWY2A== + dependencies: + "@babel/core" "^7.0.0" + "@babel/preset-typescript" "^7.0.0" + "@vue/component-compiler-utils" "^2.3.0" + babel-preset-minimal "^0.1.1" + cac "^5.0.15" + chalk "^2.4.1" + debug "^3.1.0" + fast-async "^6.3.7" + fast-glob "^2.2.1" + find-babel-config "^1.1.0" + fs-extra "^6.0.0" + import-from "^2.1.0" + is-binary-path "^2.0.0" + joycon "^2.1.2" + postcss "^7.0.6" + postcss-load-config "^2.0.0" + resolve "^1.8.1" + stringify-attributes "^1.0.0" + vue-template-compiler "^2.5.17" + vue-content-loader@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/vue-content-loader/-/vue-content-loader-0.2.1.tgz#0eb332e2a72643d57fb209d72d6526573b191f5a" @@ -12372,15 +12459,7 @@ vue-style-loader@^4.1.0, vue-style-loader@^4.1.2: hash-sum "^1.0.2" loader-utils "^1.0.2" -vue-template-compiler@^2.5.17: - version "2.5.21" - resolved "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.5.21.tgz#a57ceb903177e8f643560a8d639a0f8db647054a" - integrity sha512-Vmk5Cv7UcmI99B9nXJEkaK262IQNnHp5rJYo+EwYpe2epTAXqcVyExhV6pk8jTkxQK2vRc8v8KmZBAwdmUZvvw== - dependencies: - de-indent "^1.0.2" - he "^1.1.0" - -vue-template-compiler@^2.6.10: +vue-template-compiler@^2.5.17, vue-template-compiler@^2.6.10: version "2.6.10" resolved "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.10.tgz#323b4f3495f04faa3503337a82f5d6507799c9cc" integrity sha512-jVZkw4/I/HT5ZMvRnhv78okGusqe0+qH2A0Em0Cp8aq78+NK9TII263CDVz2QXZsIT+yyV/gZc/j/vlwa+Epyg== @@ -12393,6 +12472,11 @@ vue-template-es2015-compiler@^1.6.0: resolved "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.6.0.tgz#dc42697133302ce3017524356a6c61b7b69b4a18" integrity sha512-x3LV3wdmmERhVCYy3quqA57NJW7F3i6faas++pJQWtknWT+n7k30F4TVdHvCLn48peTJFRvCpxs3UuFPqgeELg== +vue-template-es2015-compiler@^1.9.0: + version "1.9.1" + resolved "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" + integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== + vue@^2.6.10: version "2.6.10" resolved "https://registry.npmjs.org/vue/-/vue-2.6.10.tgz#a72b1a42a4d82a721ea438d1b6bf55e66195c637"