Commit Graph

767 Commits

Author SHA1 Message Date
Evan You 1a1f680536 wip: pre tag handling 2023-11-25 16:18:29 +08:00
Evan You 5762288bdf wip: parse interpolation 2023-11-25 16:18:29 +08:00
Evan You 70edd1c61e wip: check duplicated attributes 2023-11-25 16:18:29 +08:00
Evan You ec33e61e87 wip: remove htmlMode 2023-11-25 16:18:29 +08:00
Evan You db085b4a79 wip: remove foreignContext check 2023-11-25 16:18:29 +08:00
Evan You 65c0b31148 wip: modifiers 2023-11-25 16:18:29 +08:00
Evan You b81415ceac wip: source location for props 2023-11-25 16:18:29 +08:00
Evan You 08038a938c wip: parse directive in tokenizer 2023-11-25 16:18:29 +08:00
Evan You 622d34efe1 wip: optimize condenseWhitespace 2023-11-25 16:18:29 +08:00
Evan You 9aa8effec3 wip: parse directives 2023-11-25 16:18:29 +08:00
Evan You f131a4723b wip: loc for elements 2023-11-25 16:18:29 +08:00
Evan You f7db16b9cf wip: refactor line / column generation 2023-11-25 16:18:29 +08:00
Evan You 6311ebbf32 wip: save 2023-11-25 16:18:29 +08:00
Evan You 19bd714239 wip: port parser 2023-11-25 16:18:29 +08:00
Evan You 2a6292e37f wip: remove unused options 2023-11-25 16:18:29 +08:00
Evan You bc37eae8b0 wip: strip xmlMode / htmlMode 2023-11-25 16:18:29 +08:00
Evan You 5b9141cc30 wip: setup 2023-11-25 16:18:29 +08:00
Evan You 1ea775633d chore: Merge branch 'main' into minor 2023-11-21 09:48:26 +08:00
renovate[bot] 16a6438236
chore(deps): update lint (#9627)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-11-18 10:33:24 +08:00
Tycho d5fd343555
refactor(compiler-sfc): reuse `forAliasRE` regex from compiler-core (#9568) 2023-11-10 14:22:00 +08:00
Ha Pam 341b5416b2
chore: typo and grammar (#8568) [ci skip]
Co-authored-by: Han <phamvanhan@gmail.com>
2023-11-10 13:42:26 +08:00
Evan You 364f319d21 fix(hydration): force hydration for v-bind with .prop modifier
ref #7490
2023-11-10 13:13:07 +08:00
edison a2d810eb40
fix(compiler-core): avoid rewriting scope variables in inline for loops (#7245)
close #7238
2023-11-09 17:20:54 +08:00
zhiyuanzmj 26399aa6fa
feat(compiler-core): support v-bind shorthand for key and value with the same name (#9451) 2023-11-02 17:48:11 +08:00
丶远方 a75d1c5c62
fix(compiler-core): known global should be shadowed by local variables in expression rewrite (#9492)
fix #9482
2023-10-28 15:22:03 +08:00
花果山大圣 f7e80ee4a0
feat(compiler-core): export error message (#8729) 2023-10-27 23:28:40 +09:00
edison e09c26bc9b
fix(compiler-ssr): proper scope analysis for ssr vnode slot fallback (#7184)
close #7095
2023-10-25 01:01:29 +08:00
Evan You 28a6f05bf5 chore: remove internal flag on hmr option 2023-10-22 09:10:43 +08:00
Evan You 733437691f fix(hmr): fix hmr error for hoisted children array in v-for
fix #6978
close #7114
2023-10-21 21:08:49 +08:00
丶远方 712f96d6ac
perf: replace Map/Set with WeakMap/WeakSet (#8549) 2023-10-20 17:11:52 +08:00
Evan You ae7453f0f1 chore: use moduleResolution: bundler + shim estree-walker 2023-06-23 08:54:25 +08:00
Evan You a95e612b25 chore: rename globals allow list
close #8416
2023-05-26 11:07:13 -05:00
Evan You 8dc8cf852b fix(compiler-core): treat floating point numbers as constants
close #8295
2023-05-12 10:53:40 +01:00
Evan You b434d12bf6 fix(compiler-core): handle slot argument parsing edge case
ref https://github.com/vuejs/language-tools/issues/2710
2023-04-27 16:55:37 +08:00
Evan You bbd8301a13 feat(deprecation): deprecate v-is directive 2023-04-21 15:30:26 +08:00
Evan You 5f0394a5ab feat(deprecation): deprecate @vnode hooks in favor of vue: prefix 2023-04-21 15:20:12 +08:00
Evan You 0f77a2b1d1 fix(compiler): fix expression codegen for literal const bindings in non-inline mode 2023-04-18 11:39:53 +08:00
Evan You 8aa4ea81d6 feat(compiler-sfc): support relative imported types in macros 2023-04-15 22:08:39 +08:00
Evan You d0ac57872c refactor(compiler-sfc): extract more defineProps logic 2023-04-11 16:05:00 +08:00
Evan You 19e17a951c perf(compiler): use source-map-js 2023-04-09 16:50:20 +08:00
Evan You 05f94cf7b0 fix(compiler-ssr): disable v-once transform in ssr vdom fallback branch
fix #7644
2023-04-05 11:10:21 +08:00
Evan You 6bda4b6688 fix(compiler-core): fix codegen for literal const in non-inline mode 2023-03-30 15:19:27 +08:00
Evan You ba9c2ae247
feat(compiler-sfc): enable reactive props destructure by default and deprecate withDefaults() (#7986) 2023-03-30 11:58:16 +08:00
三咲智子 Kevin Deng 77686cf476
fix(compiler-core): check if expression is constant (#7974)
close #7973
2023-03-29 09:02:16 +08:00
三咲智子 Kevin Deng 0002567728
feat(compiler-sfc): support module string names syntax (#7428)
https://github.com/tc39/ecma262/pull/2154
2023-03-28 16:28:06 +08:00
三咲智子 Kevin Deng 1b69d5f2f4
fix(compiler-sfc): unwrap TS node for defineProps (#7340) 2023-03-28 15:22:01 +08:00
三咲智子 Kevin Deng 7def8b15b8
feat(complier-sfc): hoist literal constants for script (#5752)
- Support using literal constants in macros
- fix useCssVars insert position edge case
- fix non-literal-const enum hoisting

close #5750
2023-03-28 11:34:29 +08:00
Evan You 58e5c51149 build: upgrade to TypeScript 5.x 2023-03-23 17:11:35 +08:00
Evan You aac163110f refactor: remove circular dependencies in compiler 2023-03-23 16:30:42 +08:00
Evan You e22b5c510d chore: remove hanging slash from import 2023-02-03 04:31:17 +08:00
Evan You 124373db50 wip: isolatedModules + use rollup-plugin-esbuild 2023-02-03 04:30:19 +08:00
Anthony Fu 4a16b204be chore: run format 2023-01-12 12:58:11 +01:00
三咲智子 Kevin Deng 87c72ae49a
fix(v-model): ensure v-model listener casing is consistent with manual v-on listener (#7067)
fix #7066
2022-11-14 02:21:29 -05:00
Cédric Exbrayat b46ba6e2ad
chore(compiler-core): missing space in v-slot mixed usage error message (#7076) 2022-11-14 02:06:24 -05:00
Samuel Rigaud 378386694b
fix(compiler-core): typeof should be allowed in browser expression validation (#7037) 2022-11-14 01:50:35 -05:00
三咲智子 Kevin Deng 9060bf0353
refactor(compiler-core): make ast.helpers a Set (#6774) 2022-11-13 20:44:02 -05:00
Evan You 15e889afaf fix(v-model): fix incorrect codegen for non-ref bindings
fix #6241
2022-11-10 15:32:58 +08:00
Evan You 001184e6bb fix(compiler/v-model): catch incorrect v-model usage on prop bindings
close #5584
2022-11-10 10:42:27 +08:00
白雾三语 2c27556fe5
fix(compiler): avoid namespace collisions when transforming template refs in inline mode (#6975)
fix #6964
2022-11-08 22:22:29 -05:00
白雾三语 5bfe438ef3
fix(compiler-core/v-on): only apply case preservation on native elements (#6902)
fix #6900
2022-11-08 21:58:22 -05:00
Evan You dd3354c4c7 fix(compiler-core): fix parsing error on comments between v-if in prod
close #6843
2022-11-08 23:35:35 +08:00
Rudy 48876182db
fix(compiler-core): keep whitespaces between interpolation and comment (#6828)
fix #6352
2022-11-08 09:50:43 -05:00
Travis bcfe480d75
fix(compiler-core/v-on): support inline handler with return type annotation (#6769)
fix #6378
2022-11-07 22:09:15 -05:00
被雨水过滤的空气(Rairn) 640cfce4ff
fix(compiler-core): avoid duplicate keys in codegen with `v-if` (#6689)
fix #6641
2022-11-07 22:04:31 -05:00
Evan You 09bb3e996e fix(compiler-ssr): fix invalid codegen when v-slot name is explicit empty attr (#3326)
squashed from fix by @tjk
2022-10-26 16:18:19 +08:00
世新 82e3f2dc30
chore: symbols as helperNameMap index type (#6622) 2022-10-06 05:26:16 +08:00
Anthony Fu 534593cfa8 chore: format 2022-10-03 15:30:43 +08:00
Evan You f402d416b8 refactor(compiler-core): extract props merging helper 2022-09-28 10:59:13 +08:00
Dunqing f9d43b99f8
fix(compilre-core): dynamic v-on and static v-on should be merged (#6747)
fix #6742
2022-09-27 22:46:55 -04:00
Evan You 03820193a8 fix(ssr): fix pre tag windows newline hydration mismatch
fix #6410
2022-09-28 08:45:32 +08:00
Evan You fc5bdb36ed fix(runtime-core): avoid hoisted vnodes retaining detached DOM nodes
fix #6591
2022-09-27 16:20:52 +08:00
Evan You 00036bb52c fix(slots): ensure different branches of dynamic slots have different keys
fix #6202
2022-08-30 15:55:09 +08:00
Evan You 0739f8909a fix(custom-element): fix event listeners with capital letter event names on custom elements
close https://github.com/vuejs/docs/issues/1708
close https://github.com/vuejs/docs/pull/1890
2022-08-30 14:07:35 +08:00
Travis 7fbc933f4d
fix(compiler-core): fix svg with directives being incorrectly hoisted (#5919)
fix #5289
2022-05-22 21:40:53 -04:00
Evan You 516bc548fc fix(compiler-ssr): fix wrong attrs fallthrough on non-single-root v-if branches
fix #5140
2022-05-19 11:21:17 +08:00
Evan You 415091b0ee fix(compiler-core): should generate HYDRATE_EVENTS flag on dynamic component that resolves to element
fix #5870
2022-05-17 16:39:48 +08:00
阿崔cxr e85e0a7f3a
chore: use ast node creation helper (#5255) 2022-05-13 04:37:50 -04: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
Evan You 6283b2ec41 fix(compiler-dom): properly stringify v-html/v-text with constant value
fix #5439
close #5445
2022-05-13 08:57:43 +08:00
Evan You 0f00cf43cf fix(compiler-core): normalize v-bind:style with array literal value
fix #5106
2022-05-12 16:31:16 +08:00
edison cd395559ce
chore(compiler-core): use aliasHelper (#3592) 2022-05-11 20:40:05 -04:00
Evan You 51f3d386de fix(compiler-core): template v-if should never be treated as dev root fragment
close #5189
2022-05-11 17:43:20 +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
Evan You ce34d9114e chore: remove v3.vuejs.org references 2022-02-07 13:13:26 +08:00
Evan You 60cf175d88 feat(ssr): support custom directive getSSRProps in optimized compilation
close #5304
2022-02-04 08:58:31 +08:00
btea 63210fe41a
refactor: includes instead of indexOf (#5117) 2022-01-21 02:36:48 -05:00
edison 9f55e6fbb1
fix(compiler-core): handle v-memo in template v-for (#5291)
fix #5288
2022-01-21 01:54:46 -05:00
Yugang Cao e603fd258c
chore: fix typo (#5261) [ci skip] 2022-01-21 01:18:34 -05:00
Evan You ae4b0783d7 chore: update repo references 2022-01-18 16:43:59 +08:00
Forzen FIsh 57a09331b2
chore: fix some typos (#5050) [ci skip] 2021-12-11 20:58:46 -05:00
Evan You 41c18effea feat: support ref in v-for, remove compat deprecation warnings 2021-12-10 23:49:01 +08:00
Evan You 4b0ca8709a feat(compiler-core): support aliasing vue: prefixed events to inline vnode hooks 2021-12-10 16:09:23 +08:00
Evan You 1c9a4810fc fix(compiler): force block for custom dirs and inline beforeUpdate hooks
to ensure they are called before children updates
2021-12-10 15:36:10 +08:00
Forzen FIsh 095fe269cb
chore: remove redundant variable declaration (#5053) 2021-12-05 23:10:58 -05:00
Evan You 29beda7c6f fix(compiler-dom): avoid bailing stringification on setup const bindings 2021-12-06 11:53:02 +08:00
btea e1ee3c4fe8
refactor(compiler-core): refactor isComponentTag method (#4934) 2021-11-14 21:39:13 -05:00
Che Guevara e772108922
chore: break compat mode v-for/v-if precedence check loop early (#4773) 2021-10-09 17:12:34 -04:00
Che Guevara 6bcb7a5ea3
chore: remove deprecated usage of String.prototype.substr (#4699) 2021-10-08 12:31:34 -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
Herrington Darkholme 7aa0ea06c8
fix(compiler-core): should treat attribute key as expression (#4658) 2021-09-25 14:21:09 -04:00
Evan You 7b7e28ad6a test: fix utils test 2021-09-24 12:34:31 -04:00
Evan You fc85ad28ae fix(build): avoid importing @babel/parser in esm-bundler build
fix #4665
2021-09-23 23:20:53 -04:00
Evan You 8e05b7f9fc fix(ssr): fix ssr runtime helper import in module mode 2021-09-23 10:08:28 -04:00
Evan You d74f21a42c fix(compiler-ssr): import ssr helpers from updated path 2021-09-22 23:28:20 -04:00
Evan You 6257adeaac fix(compiler-core): more robust member expression check in Node 2021-09-22 17:16:21 -04:00
Evan You 686d0149b6 fix(compiler-core): generate TS-cast safe assignment code for v-model
fix #4655
2021-09-22 16:55:06 -04:00
Ziwen Mei 1873f0f48c
chore(compiler-core): fix typo in transformElement (#4649) [ci skip] 2021-09-22 10:12:52 -04:00
Ziwen Mei bf267b1ce3
chore(compiler-core): fix typo in errors.ts and options.ts (#4650) [ci skip] 2021-09-22 10:12:33 -04:00
Ziwen Mei 56be30b5c7
chore(compiler-core): fix typo in hoistStatic (#4625) [ci skip] 2021-09-21 13:06:39 -04:00
就是喜欢陈粒 5addef8ecd
fix(compiler-core): add check when v-else-if is behind v-else (#4603) 2021-09-21 12:59:38 -04:00
Herrington Darkholme d8a36d0198
fix(compiler-core): only merge true handlers (#4577) 2021-09-21 12:37:51 -04:00
Herrington Darkholme 044812525f
fix(compiler-core): dedupe renderSlot's default props (#4557) 2021-09-21 12:31:27 -04:00
Evan You d23fde3d3b fix(compiler-core): more robust member expression check when running in node
fix #4640
2021-09-21 12:19:27 -04:00
Evan You 0dc521b9e1 fix(compiler-core): support ts syntax in expressions when isTS is true 2021-09-20 11:51:01 -04:00
Evan You cb2d7c0e3c fix(compiler-core): ensure hoisted scopeId code can be treeshaken 2021-09-19 17:14:26 -04:00
lidlanca fc968d607b
fix(compiler-core): v-on inline async function expression handler (#4569)
fix #4568
2021-09-16 12:36:04 -04:00
ygj6 f29d061124
fix(compiler): fix template ref codegen for setup-maybe-ref binding types (#4549)
fix #4546
2021-09-16 11:33:16 -04:00
Roy Eden b8653d390a
fix(compiler): condense whitespaces in static class attributes (#4432)
fix #4251
2021-09-07 12:01:17 -04:00
Herrington Darkholme 5d262e08d5
fix(compiler-core): pick last char when dynamic directive doesn't close (#4507) 2021-09-07 11:36:37 -04:00
Herrington Darkholme 1c4f0f0afd
chore: fix typo in jsdoc (#4526) [ci skip] 2021-09-07 11:31:27 -04:00
Evan You 1045590d4b fix(compiler-core): avoid runtime dependency on @babel/types
fix #4531
2021-09-07 09:54:49 -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
ygj6 4cd282b0a1
fix(compiler): generate function ref for script setup if inline is ture. (#4492) 2021-09-02 11:27:20 -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
Herrington Darkholme c00925ed5c
fix(compiler): report invalid directive name error (#4494) (#4495) 2021-09-02 09:42:20 -04:00
Evan You 3628991906 fix(compiler): only generate non-static ref for script setup if the binding exists
fix #4431
2021-09-01 17:27:03 -04:00
Herrington Darkholme 4502a0eab5
refactor(compiler): refine CDATA endTokens (#4459) 2021-09-01 16:43:10 -04:00
Herrington Darkholme 7178716b4c
chore: fix typo in error message (#4434) [ci skip] 2021-09-01 16:42:24 -04:00
Evan You 935b4e2210 fix(compiler-core): remove no longer necessary withScopeId import in generated code 2021-09-01 11:30:34 -04:00
Evan You 4c468eb30a fix(build): avoid imports to @babel/types in client build of compiler-core 2021-08-24 12:39:38 -04:00
shadowings-zy 32827506ff
fix(compiler-core): fix duplicated component identifier for names with non-ascii chars (#4429)
fix #4422
2021-08-24 11:48:08 -04:00
Evan You f1fa30adc3 refactor(ref-transform): improve algorithm into one pass 2021-08-23 18:22:21 -04:00
Evan You 06051c4bf2 feat(experimental): support ref transform for sfc normal `<script>` 2021-08-23 16:00:46 -04:00
Evan You 986681568f chore: export extractIdentifiers 2021-08-23 12:18:43 -04:00
Evan You e565831c98 feat(experimental): shouldTransform for ref-transform 2021-08-23 10:45:58 -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
fishDog 092bdcdf58
fix(compiler-core): fix style binding edge case (#4319)
where static `style` attribute and `:style` with constant binding are used together

fix #4317
2021-08-16 16:37:31 -04:00
Evan You a6c1db2728 fix(compiler-core): fix hoisting logic for elements with cached handlers + other bindings
fix #4327
2021-08-16 15:57:10 -04:00
fishDog abb3a81e87
fix(compiler-core): detected forwarded slots in nested components (#4268)
fix #4244
2021-08-06 22:37:55 -04:00
edison a211e271ee
fix(v-memo): ensure track block when returning cached vnode (#4270)
fix #4253
2021-08-06 21:44:45 -04:00
webfansplz 9c931d8154
chore(types): remove unnecessary non-null assertion (#4169) 2021-07-21 15:50:08 -04:00
Evan You a21ca3dccc fix(compiler-core): fix self-closing tags with v-pre 2021-07-19 19:29:28 -04:00
Evan You 7e75b4105a refactor: better fix for ec6abe8d 2021-07-19 19:23:44 -04:00
Evan You ec6abe8d5e fix(compiler-sfc): fix whitespace preservation when block contains single self-closing tag 2021-07-19 18:54:35 -04:00
Evan You 47f488350c chore: run updated prettier 2021-07-19 18:24:18 -04:00
Austin Keener dd0f9d1ce6
feat(compiler): allow 'comments' option to affect comment inclusion in dev (#4115)
Close: #3392
Replace: #3395
2021-07-19 11:40:37 -04:00