Evan You
f709238c30
chore: use correct parse in parser tests for whitespace: condense
2024-04-15 11:35:05 +08:00
Evan You
e0e02535cd
fix(parser): should not treat uppercase components as special tags
...
close #10395
2024-02-25 23:05:15 +08:00
Evan You
2b0a706dc7
chore: move X_V_BIND_INVALID_SAME_NAME_ARGUMENT to preserve error code order
2024-02-08 11:36:51 +08:00
Evan You
cb87b6213d
fix(compiler-core): handle same-name shorthand edge case for in-DOM templates
...
Also add error for invalid arguments for same-name shorthand.
close #10280
2024-02-07 12:15:39 +08:00
zhoulixiang
91f058a90c
fix(compiler-core): support v-bind shorthand syntax for dynamic slot name ( #10218 )
...
close #10213
2024-02-06 17:54:06 +08:00
Evan You
c3087ff2cc
fix: correct url for production error reference links
2024-01-18 20:00:01 +08:00
Evan You
c60479146a
dx(defineModel): warn against reference of setup scope variables in defineModel options
...
close #10093
2024-01-12 22:07:16 +08:00
zhangenming
9c54dacd0d
chore: use NOOP. ( #9938 )
2024-01-09 15:24:10 +08:00
Haoqun Jiang
923d560d0b
fix(parser): skip compat mode check for SFC root `<template>` tags ( #10034 )
...
Fixes https://github.com/vitejs/vite-plugin-vue/issues/330
2024-01-09 11:14:00 +08:00
Evan You
ae60a91cc2
fix(compiler-sfc): fix sfc template unref rewrite for class instantiation
...
close #6483
close #6491
2024-01-04 15:58:13 +08:00
Masa-Shin
77d33e263c
fix(compat): correct enum value for COMPILER_FILTERS feature ( #9875 )
2023-12-29 12:41:21 +08:00
三咲智子 Kevin Deng
bfe6b459d3
style: update format & lint config ( #9162 )
...
Co-authored-by: 丶远方 <yangpanteng@gmail.com>
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
Co-authored-by: Guo Xingjun <99574369+Plumbiu@users.noreply.github.com>
2023-12-26 19:39:47 +08:00
Evan You
7aa3f250f2
fix(compiler-core): fix parsing `<script setup>` generics with >
...
close #9890
2023-12-22 22:49:30 +08:00
Evan You
95f6fffea2
chore: Merge branch 'main' into minor
2023-12-19 18:16:16 +08:00
edison
eb51b23d85
fix(compile-sfc): fix identifier prefixing edge case caused by reused AST ( #9867 )
...
close #9853
close #9863
2023-12-19 18:04:36 +08:00
白雾三语
bae79ddf85
fix(compiler-core): fix v-on with modifiers on inline expression of undefined ( #9866 )
...
close #9865
improve isMemberExpression check for undefined
2023-12-19 17:08:46 +08:00
Cédric Exbrayat
7bc3c9e205
fix(compiler-core): vnode hooks error message ( #9842 )
2023-12-15 23:07:15 +08:00
Evan You
0b6effb423
chore: preserve error code enum order
2023-12-13 00:48:32 +08:00
三咲智子 Kevin Deng
cf77435338
refactor(compiler-core): reuse unwrapTS utility function ( #9795 )
2023-12-11 10:46:28 +08:00
Evan You
2ffc1e8cfd
feat(ssr): improve ssr hydration mismatch checks ( #5953 )
...
- Include the actual element in the warning message
- Also warn class/style/attribute mismatches
Note: class/style/attribute mismatches are check-only and will not be
rectified.
close #5063
2023-12-08 15:49:09 +08:00
Adrien Foulon
638f1abbb6
feat(compiler-core): add current filename to TransformContext ( #8950 )
2023-12-08 15:23:50 +08:00
三咲智子 Kevin Deng
0dc875d53e
fix(compiler-core): use the same resolved options for all compile stages ( #9760 )
2023-12-06 14:41:21 +08:00
Evan You
e12b10ac3e
chore: Merge branch 'main' into minor
2023-12-04 23:17:41 +08:00
Evan You
53aaa1eb28
fix(parser): fix interpolation parsing in v-pre
...
ref: https://github.com/vuejs/docs/issues/2586
2023-12-04 23:06:56 +08:00
Evan You
c3b704e446
chore: remove v-is deprecation enum
...
support is already removed during parser rewrite
2023-12-01 11:57:22 +08:00
Evan You
8abc754d5d
feat(compiler): lift vnode hooks deprecation warning to error
2023-12-01 11:56:29 +08:00
Evan You
e8bbc946cb
feat(compiler-sfc): analyze import usage in template via AST ( #9729 )
...
close #8897
close nuxt/nuxt#22416
2023-12-01 11:14:48 +08:00
Evan You
4d94ebfe75
perf(v-on): constant handlers with modifiers should not be treated as dynamic
2023-11-30 19:26:36 +08:00
edison
7cbcee3d83
fix(compiler-sfc): support resolving components from props ( #8785 )
2023-11-30 18:03:23 +08:00
ZHAO Jin-Xiang
3071de44bc
fix(compiler-core): fix referencing typo ( #9708 )
2023-11-29 21:15:44 +08:00
edison
509c192ff4
chore: fix typo ( #9689 )
2023-11-29 12:26:10 +08:00
ZHAO Jin-Xiang
fff7b864f4
feat: use enum to replace const enum ( #9261 )
...
close #1228
2023-11-29 12:24:50 +08:00
Evan You
47ea285be3
fix(parser): properly set initial inXML state based on root ns
2023-11-28 18:37:17 +08:00
Evan You
ef97e8b07d
fix(parser): should reset inRCDATA state
2023-11-28 18:31:17 +08:00
三咲智子 Kevin Deng
9f8ba9821f
feat(dx): link errors to docs in prod build ( #9165 )
2023-11-28 07:39:11 +08:00
Evan You
e49dffc9ec
fix(parser): directive arg should be undefined on shorthands with no arg
2023-11-27 18:10:00 +08:00
Evan You
41ff68ea57
feat(compiler): improve parsing tolerance for language-tools
2023-11-27 16:55:54 +08:00
Evan You
fb619cf9a4
fix(compiler-sfc): fix ast reuse for ssr
2023-11-27 15:38:30 +08:00
Evan You
2e65ea481f
fix(compiler-core): fix line/column tracking when fast forwarding
2023-11-27 14:49:13 +08:00
Evan You
50cde7cfbc
perf(compiler-sfc): use faster source map addMapping
2023-11-27 14:42:12 +08:00
Evan You
d193666fdc
chore: use MappingItem type
2023-11-27 14:16:16 +08:00
Evan You
f15d2f6cf6
perf: avoid sfc source map unnecessary serialization and parsing
2023-11-27 12:26:51 +08:00
Evan You
157cfcb796
refactor: restore isSelfClosing as optional property
2023-11-25 22:55:39 +08:00
Evan You
e48cbf02be
refactor: restore SourceLocation.source
...
this is used extensively in @vue/language-tools and does not have
noticeable impact on performance
2023-11-25 19:22:39 +08:00
Evan You
08f0baa2ad
refactor: preserve source location convention in sfc mode for base parser
...
For compatibility w/ usage like https://github.com/vue-macros/vue-macros/blob/main/packages/setup-block/src/core/index.ts
2023-11-25 18:07:29 +08:00
Evan You
be6cae7dac
chore: remove isSelfClosing property
2023-11-25 18:03:22 +08:00
Evan You
6ec85ae872
chore: restructure parser files
2023-11-25 16:18:29 +08:00
Evan You
c11002f16a
perf(codegen): optimize source map generation
2023-11-25 16:18:29 +08:00
Evan You
3be53d9b97
perf(codegen): optimize line / column calculation during codegen
...
Previously, many CodegenContext.push() calls were unnecessarily
iterating through the entire pushed string to find newlines, when we
already know the newline positions for most of calls. Providing fast
paths for these calls significantly improves codegen performance when
source map is needed.
In benchmarks, this PR improves full SFC compilation performance by ~6%.
2023-11-25 16:18:29 +08:00
Evan You
20732366b9
perf: optimize position cloning
2023-11-25 16:18:29 +08:00
Evan You
3ee343928a
wip: parser v2 compat
2023-11-25 16:18:29 +08:00
Evan You
6022ac05c4
chore: document rationale for ignoring some parsing errors
2023-11-25 16:18:29 +08:00
Evan You
e702b278d4
wip: shorten some method names
2023-11-25 16:18:29 +08:00
Evan You
59227d4124
wip: parse error tests
2023-11-25 16:18:29 +08:00
Evan You
1b4efc30c3
wip: should parse sfc template with lang=html
2023-11-25 16:18:29 +08:00
Evan You
e41cf8dc59
refactor: better naming for baseCompile argument
2023-11-25 16:18:29 +08:00
Evan You
94c86269d0
refactor: fix v-bind no-exp shorthand for new parser
2023-11-25 16:18:29 +08:00
Evan You
e5afca6c1e
wip: treat template with preprocessor as plain text
2023-11-25 16:18:29 +08:00
Evan You
059caafc13
wip: pass all compiler-sfc tests
2023-11-25 16:18:29 +08:00
Evan You
dda4fd526e
wip: pass all compiler-ssr tests
2023-11-25 16:18:29 +08:00
Evan You
5a44b84cde
wip: pass all compiler-dom tests
2023-11-25 16:18:29 +08:00
Evan You
40f72d5e50
feat(compiler-core): support specifying root namespace when parsing
2023-11-25 16:18:29 +08:00
Evan You
a1b10a21ac
wip: pass more compiler-dom tests
2023-11-25 16:18:29 +08:00
Evan You
1912af04e3
wip: entities parsing in browser
2023-11-25 16:18:29 +08:00
Evan You
caabba7590
wip: tune perf
2023-11-25 16:18:29 +08:00
Evan You
082b5a71c6
wip: pass all compiler-core tests
2023-11-25 16:18:29 +08:00
Evan You
c4e50e46bb
wip: more tests passing
2023-11-25 16:18:29 +08:00
Evan You
e05ba29555
wip: pass all non-error parsing tests
2023-11-25 16:18:29 +08:00
Evan You
a60ad9180d
refactor: swap to new template parser
...
- get rid of SourceLocation.source for memory efficiency
- move source location generation logic transform phase into the parser
itself so that SourceLocation.source is no longer needed
- move v-for expression parsing into the parser itself
- added nameLoc on AttributeNode for use in transformElement
Tests are not passing yet.
2023-11-25 16:18:29 +08:00
Evan You
65b44045ef
wip: parse mode
2023-11-25 16:18:29 +08:00
Evan You
66c0ed0a3c
perf: optimize away isBuiltInType
2023-11-25 16:18:29 +08:00
Evan You
59e38f18d8
wip: parseMode
2023-11-25 16:18:29 +08:00
Evan You
81e941da5b
wip: getting ready for textmode handling
2023-11-25 16:18:29 +08:00
Evan You
5a855c57d7
wip: comments
2023-11-25 16:18:29 +08:00
Evan You
a12abe72bc
wip: refine element type
2023-11-25 16:18:29 +08:00
Evan You
c342433cb5
wip: v-pre handling
2023-11-25 16:18:29 +08:00
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