Commit Graph

492 Commits

Author SHA1 Message Date
三咲智子 Kevin Deng 8a882ce0a1
fix(compiler-sfc): handle method shorthand syntax in withDefaults (#6972)
fix #6971
2022-11-08 22:12:54 -05:00
三咲智子 Kevin Deng 910fa7677f
fix(compiler-sfc): resolve computed object key (#6963) 2022-11-08 21:57:40 -05:00
Evan You 6861d2380b refactor(compiler-sfc): optimize import alias check for binding analysis 2022-11-08 17:47:47 +08:00
Evan You 8d1f526174 fix(compiler-sfc): fix binding analysis for aliased late import 2022-11-08 17:19:45 +08:00
三咲智子 Kevin Deng 4a00fddfed
fix(compiler-sfc): check import source during binding analysation (#6826)
fix #6825
2022-11-08 04:07:28 -05:00
花果山大圣 a0c7f271a2
fix(compiler-sfc): require <template> or <script> in SFC (#6781)
fix #6676
2022-11-07 22:34:39 -05:00
花果山大圣 99b6697fb4
fix(compiler-sfc): fix macro usage in multi-variable declaration (#6778)
fix #6757
2022-11-07 22:16:21 -05:00
三咲智子 Kevin Deng b72a4af38a
fix(compiler-sfc): add semicolon after `defineProps` statement (#6461)
fix #6428
2022-11-07 21:17:48 -05:00
三咲智子 Kevin Deng 97aadd8290
types: use actual type for script block ASTs (#6457) 2022-11-07 21:14:10 -05:00
三咲智子 Kevin Deng c4f213b425
fix(reactivity-transform): add semicolon after statements (#6303) 2022-11-07 20:38:47 -05:00
三咲智子 (Kevin) bbb66d7ac7
ci: check prettier format (#6830) 2022-10-28 09:39:34 +08:00
ygj6 eab76046e3
fix(compiler-sfc): allow type annotation for defineEmits variable (#5394)
fix #5393
2022-10-26 05:12:55 -04:00
edison 83f7e6f8a6
fix(compiler-sfc): support using extends interface with defineProps() (#4512)
fix #4498
2022-10-26 04:44:30 -04:00
Travis 6958ec1b37
fix(compiler-sfc): fix expression check for v-on with object literal value (#6652)
fix #6650
fix #6674
2022-09-27 05:30:10 -04:00
林烁壕 81a7819535
fix(compiler-sfc): rewriteDefault for class with decorators (#6320)
fix #6318
2022-08-18 04:07:55 -04:00
Evan You 769e5555f9 fix(compiler-sfc): fix template usage check edge case for v-on statements
ref: https://github.com/vuejs/vue/issues/12591
2022-07-04 11:49:47 +08:00
Evan You fb3bfde264 chore: fix wrong condition in 3ff83694 2022-07-01 12:18:21 +08:00
Evan You 3ff83694f5 fix(compiler-sfc): only add decorators-legacy parser plugin when new decorators plugin is not used 2022-06-30 10:39:14 +08:00
Evan You e60244bcdf fix(compiler-sfc): improve css v-bind parsing
fix #6022
2022-06-06 20:02:08 +08:00
Evan You 9734b31c31 fix(sfc): avoid auto name inference leading to unwanted recursion
fix #5965
fix #6027
fix #6029
2022-06-06 17:36:49 +08:00
Jinesh Patel 0cd21ba77c
chore: remove unnecessary optional check (#5958) 2022-05-22 20:29:15 -04:00
Evan You 583b625987 fix(compiler-sfc): fix usage detection for types in v-for/v-slot expressions
fix #5959
2022-05-21 00:09:15 +08:00
小刘(liulinboyi) 73e6523134
fix(compiler-sfc): support `export { default } from '...'` (#5937)
fix #5935
2022-05-18 19:51:44 -04:00
Yunyoung LEE 991d62322f
fix(compiler-sfc): type-only defineProps does not recognize Promise (fix #5941) (#5943) 2022-05-18 19:34:52 -04:00
Evan You efea4a8b57 fix(ssr/sfc-css-vars): fix v-bind css vars codegen for SSR
fix #5443
close #5444
2022-05-17 09:21:44 +08:00
Evan You be6a0bff98 refactor: simplify logic 2022-05-13 15:41:49 +08:00
liulinboyi 6c3b681d23 fix(compiler-sfc): async transformer doesn't correctly detect need for semicolon in block #5808 2022-05-13 15:41:49 +08:00
Evan You de7a879cda chore: fix snapshot + simplify fix 2022-05-13 11:04:24 +08:00
liulinboyi 3b7b107120 fix(compiler-sfc): <script> after <script setup> the script content not end with `\\n` 2022-05-13 11:04:24 +08:00
edison 242914d938
fix(reactivity-transform): fix props access codegen for non-identifier prop names (#5436)
fix #5425
2022-05-12 22:38:46 -04:00
Travis f2c48f5352
fix(compiler-sfc): fix defineEmits() scope reference check error message (#5404) 2022-05-12 21:08:28 -04:00
Evan You 8a123ac34f fix(compiler-sfc): fix treeshaking of namespace import when used in template
fix #5209
2022-05-12 18:56:54 +08:00
Evan You ccf92564d3 fix(compiler-sfc): fix template usage check false positives on types
fix #5414
2022-05-12 18:23:10 +08:00
Evan You b7025d24f1 fix(compiler-sfc): ensure consistent behavior of export default render with script setup
close #4980
2022-05-11 17:20:32 +08:00
Evan You 41d255ba5d fix(compiler-sfc): fix skipped srcset transform when using base option
Based on implementation from #4835 due to conflicts

fix #4819
close #4834, close #4835
2022-05-11 16:55:58 +08:00
Evan You 57bb37bd64 fix(ssr): should not hoist transformed asset urls in ssr compile
fix #3874
2022-05-11 12:43:54 +08:00
Evan You 410144149f fix(compiler-sfc): defineProps return binding or rest binding should be considered reactive 2022-05-10 17:34:15 +08:00
那里好脏不可以 6042ab0f2f
chore: type [ci skip] 2022-05-09 22:51:51 -04:00
Evan You 29e454d4d1 chore: fix duplicate export 2022-05-10 09:50:12 +08:00
edison decad9df57
types(compiler-sfc): export SFCParseResult type (#2923)
close #2921
2022-05-09 21:37:59 -04:00
小刘(liulinboyi) 7d7a2410e5
fix(compiler-sfc): remove the jsx from the babelParserPlugins when not match the case of adding jsx (#5846)
fix #5845
2022-05-09 21:20:18 -04:00
ygj6 16939241b0
fix(compiler-sfc): automatically infer component name from filename when using script setup (#4997)
close #4993
2022-05-09 21:16:28 -04:00
Evan You 7dfe146096 fix(compiler-sfc): fix object default values for reactive props destructure 2022-05-10 08:39:27 +08:00
木杉 8e29ef6019
fix(compiler-sfc): handle type modifier in import specifiers (#5498) 2022-04-13 22:10:26 -04:00
Evan You 16fa18da6d fix(compiler-sfc): fix css v-bind inside other css functions
fix #5302, close #5306
2022-01-23 20:58:43 +08:00
edison 95d49bf7e7 fix(compiler-sfc): support complex expression in CSS v-bind() (#5114)
fix #5109
2022-01-21 15:57:30 +08:00
Evan You 4768f26f59 fix(compiler-sfc/reactivity-transform): fix edge case where normal script has ref macros but script setup does not 2022-01-21 08:47:48 +08:00
Evan You fef191fb07 chore: remove stale references of ref-transform 2021-12-23 16:56:36 +08:00
Evan You d6be3405b3 types(compiler-sfc): export additional types 2021-12-12 11:44:23 +08:00
Evan You 7e4f0a8694 fix(compiler-sfc): generate valid TS in script and script setup co-usage with TS
fix #5094
2021-12-12 09:53:52 +08:00
Evan You d70fd8d36b feat(reactivity-transform): rename @vue/ref-transform to @vue/reactivity-transform 2021-12-12 00:04:38 +08:00
Evan You 93ba6b974e feat(reactivity-transform): use toRef() for $() destructure codegen
- now supports destructuring reactive objects
- no longer supports rest elements
2021-12-11 17:13:15 +08:00
Ziwen Mei d70dd9faaa
chore(compiler-sfc): fix typo in comments (#5029) 2021-12-05 23:19:15 -05:00
Evan You 87c73e99d6 fix(compiler-sfc): make asset url imports stringifiable 2021-12-06 01:19:06 +08:00
Ziwen Mei 2d4f455434
chore(compiler-sfc): fix typo in compileScript (#5000)
Co-authored-by: meiziwen1 <meiziwen1@xdf.cn>
2021-11-26 10:21:35 +01:00
Evan You 68c45e73da feat(compiler-sfc): expose properties for more accurate HMR
ref #4358
reverts #4908
2021-11-26 14:22:26 +08:00
ygj6 c61baac75a
feat(compiler-sfc): export resolveTemplateUsageCheckString for HMR plugin use (#4908) 2021-11-25 22:58:14 -05:00
edison 31fd590fd4
fix(compiler-sfc): fix expose codegen edge case (#4919)
fix #4917
2021-11-14 22:22:53 -05:00
zisasign 574070f43f
fix(compiler-sfc): externalRE support automatic http/https prefix url pattern (#4922)
fix #4920
2021-11-14 21:37:50 -05:00
btea fd7c3407c7
refactor(compiler-sfc): replace filter method with for loop (#4905) 2021-11-14 21:31:44 -05:00
ygj6 9c42a1e2a3
fix(compiler-sfc): add type for props include Function in prod mode (#4938) 2021-11-14 21:31:11 -05:00
ygj6 090df0837e
fix(compiler-sfc): add type for props's properties in prod mode (#4790)
fix #4783
2021-11-02 22:04:04 -04:00
Evan You d4c04e9799 fix(compiler-sfc): fix props codegen w/ leading import
fix #4764
2021-10-08 12:52:48 -04:00
btea c9613ebe09
chore: prettier format (#4715) [ci skip] 2021-10-08 12:00:05 -04:00
HanochMa 7a1e6620bf
chore: grammar in comments [ci skip]
Co-authored-by: maheng <maheng01@longfor.com>
2021-10-08 11:59:47 -04:00
edison f66d456b7a
fix(compiler-sfc): support runtime Enum in normal script (#4698) 2021-10-08 11:57:39 -04:00
Evan You 646e694f0a chore: remove babelParserDefaultPlugins
The version of @babel/parser we are using now has these plugins enabled by default.
2021-10-07 19:33:06 -04:00
Evan You 467e113b95
feat(compiler-sfc): `<script setup>` defineProps destructure transform (#4690) 2021-09-27 14:24:21 -04:00
Evan You acd869f4d6 chore(compiler-sfc): avoid relying on estree type in generated dts 2021-09-23 00:13:54 -04:00
Evan You 6d6cc90912 fix(compiler-sfc): fix local var access check for bindings in normal script
fix #4644
2021-09-22 10:10:20 -04:00
Evan You 471f66a1f6 build: expose compiler-sfc and server-renderer under main vue package + optimize package size 2021-09-21 10:26:08 -04:00
Evan You a42a14d3bc types(compiler-sfc): type annotation tweaks + move @babel/types to devDeps 2021-09-20 22:06:12 -04:00
Evan You 585615beb1 feat(compiler-sfc): allow disabling sourcemap when not needed 2021-09-18 17:42:09 -04:00
edison 8055445b68
fix(compiler-sfc): register exported bindings in normal script when using script setup (#4601)
fix #4600
2021-09-16 17:22:29 -04:00
Evan You cab9541ffd refactor(compiler-sfc): improve TLA codegen 2021-09-16 17:07:29 -04:00
Evan You 39cebf5f7a fix(compiler-sfc): fix TLA codegen semicolon insertion
fix #4596
2021-09-16 16:49:59 -04:00
edison ae942cdcd9
fix(compiler-sfc): support nested await statements (#4458)
fix #4448
2021-09-16 16:23:46 -04:00
Thorsten Lünborg bdb1a7958b
fix(compiler-sfc): handle empty strings during template usage analysis of setup bindings (#4608)
fix #4599
2021-09-16 13:47:11 -04:00
ygj6 fcd5422b4a
fix(compile-sfc): add symbol judge in prop type checks. (#4594)
fix #4592
2021-09-16 13:45:55 -04:00
Evan You 06c5bf53ab fix(compiler-sfc): properly reuse hoisted asset imports
fix #4581
2021-09-16 13:33:02 -04:00
Evan You a6e5f82d8e fix(compiler-sfc): properly analyze destructured bindings with dynamic keys
fix #4540
2021-09-09 12:28:59 -04:00
webfansplz fac9a2926d
fix(compile-sfc): support `Date` prop type with defineProps (#4519) 2021-09-05 18:13:12 -04:00
edison 14d65181f1
fix(compiler-sfc): support using declared interface in normal script with defineProps() (#4522)
fix #4423
2021-09-05 18:10:15 -04:00
edison 5594643d7b
fix(compiler-sfc): fix script setup ref assignment codegen edge case (#4520)
fix #4514
2021-09-05 18:02:50 -04:00
webfansplz e6fe751b20
fix(compile-sfc): generate setup prop type format error (#4506)
fix #4505
2021-09-05 17:36:46 -04:00
Evan You 12acf5102c build: avoid require call to consolidate in esm-browser build 2021-09-05 17:30:18 -04:00
Evan You bacb2012ac fix(compiler-sfc): ensure script setup generates type-valid ts output
fix #4455
2021-09-02 11:51:41 -04:00
webfansplz 85807967dc
fix(compiler-sfc): generate matching prop types when withDefaults is used (#4466)
fix #4455
2021-09-02 11:26:52 -04:00
dependabot[bot] 305883a12f
build(deps-dev): bump typescript from 4.3.5 to 4.4.2 (#4482)
* build(deps-dev): bump typescript from 4.3.5 to 4.4.2

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.3.5 to 4.4.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.3.5...v4.4.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* build(deps-dev): bump typescript from 4.3.5 to 4.4.2

* test: fix nodeOps types

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Carlos Rodrigues <carlos@hypermob.co.uk>
Co-authored-by: Evan You <yyx990803@gmail.com>
2021-09-02 09:53:57 -04:00
Evan You b89ff9291e fix(compiler-sfc): ensure script setup lang=ts output is tree-shakable 2021-09-01 12:40:36 -04:00
Evan You 586ec51c49 chore: warnings for ref transform 2021-08-24 10:26:38 -04:00
klwf 98263821f8
fix(compiler-sfc): fix `<script>` and `<script setup>` co-usage ordering edge case (#4419)
Fix: #4395
Fix: #4376
2021-08-23 19:02:54 -04:00
lidlanca 4792ebd687
fix(compiler-sfc): fix 'export default' rewrite with extra whitespaces (#4375) 2021-08-23 18:40:16 -04:00
Evan You 06051c4bf2 feat(experimental): support ref transform for sfc normal `<script>` 2021-08-23 16:00:46 -04:00
Evan You 40994e967c chore: fix sfc playground ci build 2021-08-23 14:10:11 -04:00
Evan You 0805abe573 refactor(compiler-sfc): refSugar -> refTransform, export shouldTransformRef 2021-08-23 12:19:41 -04:00
Evan You e565831c98 feat(experimental): shouldTransform for ref-transform 2021-08-23 10:45:58 -04:00
Evan You 0c2ea1c134 refactor(compiler-sfc): remove parseOnly mode 2021-08-22 22:28:47 -04:00
Evan You db8dc753c0 feat(experimental): standalone ref transform 2021-08-22 22:21:42 -04:00
Evan You 84b24a71f0 chore: bump deps 2021-08-22 15:33:21 -04:00
Evan You 73f8cae465 refactor(compiler): further extract babel ast utilities 2021-08-22 14:51:16 -04:00
Evan You 62f752552a refactor(compiler): extract shared ast transform utils
Also improve referenced identifier check using isReferenced from  @babel/types
2021-08-22 13:24:16 -04:00
Evan You 872b3f7ec5 fix(compiler-sfc): should also expose regular script block bindings when `<script setup>` is used
close #4369
2021-08-17 15:52:48 -04:00
似水微寒 c51fb74599
refactor(compiler-sfc): remove duplicate judgment conditions (#4368) 2021-08-17 12:12:18 -04:00
Evan You 57f10812cc fix(compiler-sfc): fix import usage check for lowercase imported components
fix #4358
2021-08-17 10:10:26 -04:00
Evan You f855ccb2c1 fix(compiler-sfc): fix import usage check in template strings in expressions
fix #4340
2021-08-16 18:03:09 -04:00
webfansplz ad66295cb3
fix(defineProps): defineProps generates unnecessary array of same types (#4353)
fix #4352
2021-08-16 17:40:00 -04:00
Evan You aae3725e57 fix(compiler-sfc): bail on import usage check when template has custom lang
fix #4312
2021-08-16 16:08:52 -04:00
Evan You 00b76d3dc1 feat(sfc): support $shallowRef ref sugar 2021-08-11 10:19:58 -04:00
Evan You e42d7794cb chore(compiler-sfc): emit compiler error against incorrect ref sugar usage 2021-08-10 14:57:47 -04:00
Evan You 1e1682f060 fix(compiler-sfc): fix import usage check for last expression 2021-08-09 16:22:20 -04:00
Evan You 88a4504e82 fix(compiler-sfc): fix import usage detection for names containing $
fix #4274
2021-08-09 12:17:22 -04:00
Evan You 1994f1200d test: improve test case for 865b84bf 2021-08-06 13:01:39 -04:00
Eugene Kopich fdc9a4d301
chore: update link in comments for new ref sugar (#4265) [ci skip] 2021-08-06 12:58:40 -04:00
Evan You 865b84bfe8 fix(compiler-sfc): fix ref sugar rewrite for identifiers in ts casting expressions
fix #4254
2021-08-06 12:55:48 -04:00
Evan You 9bee5ccea4 chore: update new ref sugar warning link 2021-08-04 17:06:23 -04:00
Evan You bf2589b1f0 refactor(compiler-sfc): use shallowRef for ref sugar destructure 2021-08-04 15:39:32 -04:00
Evan You 3b38c9ae9b feat(sfc): remove experimental status for sfc style v-bind 2021-07-28 18:31:48 -04:00
edison 771635b72a
fix(sfc/style-vars): improve ignore style variable bindings in comments (#4202) 2021-07-28 10:51:25 -04:00
edison 3a75d5d694
fix(sfc/style-vars): should ignore style variable bindings in comments (#4188)
fix #4185
2021-07-26 11:19:56 -04:00
Evan You f0ca233d8b refactor(compiler-sfc): improve script setup import expose heuristics 2021-07-22 12:53:08 -04:00
Evan You 5a3ccfd914 feat(compiler-sfc): avoid exposing imports not used in template
close #3183
2021-07-22 12:04:46 -04:00
webfansplz 457c9aed1f
chore(type): remove unnecessary type assertion (#4150) 2021-07-20 09:31:40 -04:00
Evan You 8dbecfcbb3 feat(compiler-sfc): add ignoreEmpty option for sfc parse method 2021-07-19 19:02:46 -04:00
Evan You 47f488350c chore: run updated prettier 2021-07-19 18:24:18 -04:00
Evan You 93a950d60d fix(compiler-sfc): support const enum 2021-07-19 17:31:13 -04:00
Cédric Exbrayat b771fdbef9
perf(compiler-sfc): ignore empty blocks (#3520) 2021-07-19 17:24:40 -04:00
Evan You b274b08f5f fix(compiler-sfc): expose correct range for empty blocks 2021-07-19 17:05:37 -04:00
edison f7607d3a15
fix(compiler-sfc): defineProps infer TSParenthesizedType (#4147) 2021-07-19 11:09:24 -04:00
Evan You e66a493da1 refactor: remove deprecated defineEmit() support 2021-07-16 14:30:49 -04:00
Evan You 562bddb3ce feat(sfc): (experimental) new ref sugar 2021-07-16 14:30:49 -04:00
Evan You 27104eaaf0 feat: remove experimental status of `<script setup>` 2021-07-16 14:30:49 -04:00
Evan You f596e008ef refactor: remove deprecated scopeId codegen
BREAKING CHANGE: Output of SFC using `<style scoped>` generated by 3.2+
will be incompatible w/ runtime <3.2.
2021-07-16 14:30:49 -04:00
patak 29010501cc
fix(compiler-sfc): duplicated injected css var with repeated vars in style (#2802) 2021-07-15 16:45:37 -04:00
Tan Zhen Yong e508ee08e9
chore: fix typo in inherit-attrs warning (#4094) 2021-07-15 15:45:23 -04:00
Evan You 5df7dfcd71 fix(sfc): only enable jsx parser plugin when explicitly using tsx
fix #4106
2021-07-15 13:12:06 -04:00
Evan You 03e26845e2 fix(sfc): fix `<script setup>` async context preservation logic
fix #4050
2021-07-06 14:31:53 -04:00
Evan You 6fad2093a4 fix(compiler-sfc): should not rewrite ref sugar identifiers in types
fix #4062
2021-07-05 14:41:53 -04:00
Evan You 253ca2729d fix(compiler-sfc): fix parse-only mode when there is no script setup block 2021-07-02 08:24:24 -04:00
Evan You 1ffd48a2f5 fix(compiler-sfc): support TS runtime enum in `<script setup>` 2021-06-30 12:03:42 -04:00
Evan You 601a290caa feat(compiler-sfc): compileScript parseOnly mode
This is an internal feature meant for IDE support
2021-06-29 17:56:49 -04:00
Evan You 96cc335aa7 feat(sfc): make ref sugar disabled by default 2021-06-29 15:22:26 -04:00
Evan You 0240e82a38 feat(sfc): auto restore current instance after await statements in async setup() 2021-06-29 09:24:12 -04:00
Evan You 211793d376 fix(compiler-sfc): avoid script setup marker showing up in devtools 2021-06-28 18:48:38 -04:00
Evan You 2e10261b38 chore: warn script setup compiler macro imports 2021-06-28 17:57:58 -04:00
Evan You 62c1b2f7dc fix(compiler-sfc): fix defineProps/defineEmits usage in multi-variable declarations
fix #3739
2021-06-28 16:31:55 -04:00
Evan You 2973b6c30a feat(sfc): support referenced types for defineEmits 2021-06-28 16:03:27 -04:00
Evan You afdd2f2835 fix(compiler-sfc): support method signature in defineProps
fix #2983
2021-06-28 15:39:04 -04:00
Evan You 2f91db30cd feat(sfc): support using declared interface or type alias with defineProps() 2021-06-28 15:30:28 -04:00
Evan You 4c5844a9ca feat(sfc): withDefaults helper 2021-06-26 21:11:57 -04:00
Evan You 691d354af9 fix(compiler-sfc): fix defineProps() call on imported identifier 2021-06-25 14:05:59 -04:00
Evan You be2b1d3c2f feat(sfc): defineExpose 2021-06-25 13:14:49 -04:00
Evan You a5a66c5196 fix(compiler-sfc): fix script setup hidden flag codegen 2021-06-24 10:11:30 -04:00
Evan You 075889ebfc chore: comments 2021-06-23 10:21:33 -04:00
Evan You 0b8b576428 fix(sfc): allow variables that start with _ or $ in `<script setup>` 2021-06-23 10:13:23 -04:00
Evan You 6f6f0cf5dc feat(sfc): remove `<template inherit-attrs>` support 2021-06-22 21:06:51 -04:00
Eduardo San Martin Morote a137da8a9f
feat(sfc): add `defineEmits` and deprecate `defineEmit` (#3725) 2021-06-22 15:02:56 -04:00
ygj6 b228abb72f
fix(compiler-sfc): rewriteDefault support multiline (#3917) 2021-06-09 15:07:48 -04:00
Evan You 8b94464a3b fix(compiler-sfc): fix style injection when using normal script + setup
fix #3688
2021-05-28 18:40:45 -04:00
HcySunYang 6bfb50aff9
fix(compiler-sfc): correctly remove parens used for wrapping (#3582)
fix #3581
2021-05-28 16:02:31 -04:00
Jason 01e8ba8f87
fix(compiler-sfc): support tsx in setup script (#3825)
close #3808
2021-05-24 12:13:37 -04:00
Evan You c32760147c wip: relay compiler-core warnings in compiler-sfc with codeframe 2021-05-05 14:24:46 -04:00
Evan You 467076361a wip: warn against `<template functional>` 2021-04-17 23:51:40 -04:00
Evan You b39208cf06 perf(compiler-sfc): skip srcset transform if all candidates are external 2021-03-29 19:15:57 -04:00
Jonas Kruckenberg 42b68c773d
fix(compiler-sfc): fix missing whitespace issue in srcsets (#3132)
fix #3069
2021-03-29 18:28:22 -04:00
Evan You bb8cdcad9f fix(compiler-sfc): support proper type arguments for defineEmit helper
fix #2874
2021-03-29 16:38:07 -04:00
Evan You f5827fdf78 fix(compiler-sfc): do not resolve assets from setup bindings
when not using script setup

fix #3270, fix #3275
2021-03-29 16:11:38 -04:00
Evan You 69b4727204 fix(compiler-sfc): fix function scope variable declaration marking 2021-03-29 00:32:46 -04:00
Evan You d1bf35c8b8 workflow(sfc-playground): support multiple files 2021-03-28 18:41:33 -04:00
Evan You f76ddc5ac3 workflow: sfc playground 2021-03-28 01:35:45 -04:00
edison bbc5fe6a97
fix(compiler-sfc): should not rewrite scope variable (#3449)
fix #3445
2021-03-25 16:16:48 -04:00
HcySunYang 6cb94752b0
fix(compiler-sfc): scope Id should not be attached to @keyframe breakpoint rules (#3308)
fix #3304
2021-03-19 10:32:30 -04:00
Evan You 540e26f49c chore: only set slotted flag on sfc descriptor if style is scoped 2021-03-05 18:28:12 -05:00
Evan You 02cbbb718c perf: support only attaching slot scope ids when necessary
This is done by adding the `slotted: false` option to:

- compiler-dom
- compiler-ssr
- compiler-sfc (forwarded to template compiler)

At runtime, only slotted component will render slot fragments with
slot scope Ids. For SSR, only slotted component will add slot scope Ids
to rendered slot content. This should improve both runtime performance
and reduce SSR rendered markup size.

Note: requires SFC tooling (e.g. `vue-loader` and `vite`) to pass on
the `slotted` option from the SFC descriptoer to the `compileTemplate`
call.
2021-03-05 18:28:12 -05:00
Evan You 3e4c3ac66d build(deps): bump @babel/parser and @babel/types 2021-03-03 11:25:13 -05:00
Evan You 1dedc19e1f fix(compiler-sfc): handle more edge cases in default rewrite 2021-02-26 11:05:20 -05:00
Evan You c69f4ea857 fix(compiler-ssr): avoid duplicated asset imports merged from component slot client branch
fix vitejs/vite#2034
2021-02-15 12:12:50 -05:00
Matias Capeletto 6d762a84ca
fix(compiler-sfc): removeSpecifier issue when removing initial imports (script-setup) (#2729) 2021-02-13 10:06:34 +01:00
Evan You 03360cefa1 fix(compiler-sfc): treat const reactive() bindings as mutable 2021-02-10 11:39:07 -05:00
Evan You 49bc2e4db5
feat(compiler-sfc): upgrade to postcss 8 (#2710) 2021-02-04 14:37:55 +01:00
underfin 9dc816d634
fix(compiler-sfc): compiler blank srcset (#3005)
fix https://github.com/vitejs/vite/issues/1523
2021-02-03 19:27:34 +01:00
HcySunYang 6d5b623512
fix(compiler-sfc): the empty lang attribute should be treated as no lang specified (#3051) 2021-02-03 19:11:45 +01:00
Evan You fd16f2bd78 refactor: avoid global scope parentStack 2021-01-15 16:28:55 -05:00
Evan You 2ea9867398 fix(compiler-sfc): transformAssetUrls.base should not affect known module requests
fix https://github.com/vitejs/vite/issues/1343
2021-01-04 15:10:51 -05:00
meteorlxy 5b9b37fc9b
fix(compiler-sfc): should keep template nodes with no content (#2468)
close #2463
2020-12-04 18:23:01 -05:00
Joel Denning db786b1afe
fix(compiler-sfc): support transforming asset urls with full base url. (#2477) 2020-12-04 18:20:25 -05:00
Evan You 085bbd5fe0 fix(compiler-sfc): named imports from .vue file should not be treated as constant
fix #2699
2020-12-01 11:52:29 -05:00
edison 5f2a8533ac
fix(compiler-sfc): fix parsing error when `lang=""` is used on plain element (#2569)
fix #2566
2020-11-30 14:45:26 -05:00
Evan You 67d1aac6ae feat(sfc): allow sfcs to recursively self-reference in template via name inferred from filename
e.g. A file named `FooBar.vue` can refer to itself as `<FooBar/>`. This gets rid of the need for the `name` option.
2020-11-30 12:30:51 -05:00
Evan You 43eab923ea fix(compiler-sfc): should not remove import statements with no specifier when compiling script setup 2020-11-28 13:51:32 -05:00
Evan You faed98972c wip: support inherit-attrs="false" on sfc `<tempalte>` 2020-11-24 19:04:21 -05:00
Evan You 47d73c23e1 wip: defineOptions -> defineProps + defineEmit + useContext 2020-11-24 19:04:21 -05:00
Evan You 9cb74960ac chore: move style vars deprecation warning to a parse error 2020-11-21 23:53:32 -05:00
Evan You 90bdf59f4c refactor(compiler): better constant hoist/stringify checks 2020-11-20 19:26:07 -05:00
Evan You 8ac2241b22 wip: more consistent compiler-sfc usage + inline mode for ssr 2020-11-20 14:23:09 -05:00
Evan You 62830f8fa4 wip: better experimental feature warnings 2020-11-19 20:36:15 -05:00
Evan You 9db42889e6 Revert "wip: allow scriptCompiled to be cached on sfc descriptor"
This reverts commit 737ef424a0.
2020-11-19 20:02:27 -05:00
Evan You 6806facfa1 wip: fix default export side effect handling 2020-11-19 16:58:07 -05:00
Evan You 08879cc3b5 wip: fix compileScript script/script-setup co-usage 2020-11-19 16:17:54 -05:00
Evan You a9424354b0 wip: fix cssVars option warning check 2020-11-19 15:32:32 -05:00