Commit Graph

156 Commits

Author SHA1 Message Date
Evan You 3107b57e2e
refactor: isVNode -> isVOnce 2024-07-13 21:07:45 +08:00
Evan You aef807746a
refactor(compiler): move patchFlag text generation to codegen phase 2024-07-13 19:40:04 +08:00
Wouter 5d258502a0
fix(compiler-core): emit TS-compatible function declaration when requested (#9363)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Haoqun Jiang <haoqunjiang@gmail.com>
2024-05-30 18:19:04 +08:00
Evan You 7ae9dbf57d
chore(deps): bump TS to 5.4 2024-04-15 13:36:43 +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
ZHAO Jin-Xiang fff7b864f4
feat: use enum to replace const enum (#9261)
close #1228
2023-11-29 12:24:50 +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 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 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
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
Evan You 19e17a951c perf(compiler): use source-map-js 2023-04-09 16:50:20 +08:00
Evan You aac163110f refactor: remove circular dependencies in compiler 2023-03-23 16:30:42 +08:00
三咲智子 Kevin Deng 9060bf0353
refactor(compiler-core): make ast.helpers a Set (#6774) 2022-11-13 20:44:02 -05:00
edison cd395559ce
chore(compiler-core): use aliasHelper (#3592) 2022-05-11 20:40:05 -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 cb2d7c0e3c fix(compiler-core): ensure hoisted scopeId code can be treeshaken 2021-09-19 17:14:26 -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 47f488350c chore: run updated prettier 2021-07-19 18:24:18 -04:00
Evan You 317654b34f chore: fix codegen error due to scopeId deprecation change 2021-07-16 14:30:49 -04:00
Evan You a8edf2bdff refactor: remove outdated slot ctx wrapper codegen 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
Evan You 3b64508e3b feat: v-memo 2021-07-16 14:30:49 -04:00
Evan You b7ea7c1485 perf: also hoist all-static children array 2021-07-16 14:30:49 -04:00
HcySunYang ceff89905b perf: improve VNode creation performance with compiler hints (#3334) 2021-07-16 14:30:49 -04:00
Evan You a44d528af1 fix(codegen): ensure valid types in genreated code when using global directives
fix #4054
2021-07-02 07:59:47 -04:00
Evan You 7f93c76b96 wip: exclude legacy slots from $scopedSlots 2021-05-05 11:06:15 -04:00
Evan You e486254431 fix(compiler-core): preserve comment content in production when comments option is enabled 2021-04-28 11:22:16 -04:00
Evan You 7dc681c196 wip: filters compat 2021-04-19 12:29:55 -04:00
Evan You 7f7dcc9f7d fix(compiler-sfc): fix wrong scopeId for nested `<script setup>` components 2021-04-01 18:11:04 -04:00
Evan You 37c17091fd fix: ensure backwards compat for pre-compiled sfc components
fix #3493
2021-03-27 10:53:45 -04:00
Evan You abd129d845 fix(component): prioritize registered component over implicit self-reference via filename
ref: #2827
2021-03-26 10:04:36 -04:00
Evan You aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -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 4d5242128e chore: fix tests 2020-11-18 22:34:55 -05:00
Evan You 64160e89cc wip: ignore non-ref const mutation cases in codegen 2020-11-18 21:16:09 -05:00
Evan You 41bb7fa330 feat(compiler-sfc): new SFC css varaible injection implementation
ref: https://github.com/vuejs/rfcs/pull/231
2020-11-16 18:27:25 -05:00
Evan You 2a4fc32d15 wip: remove unnecessary inlinePropsIdentifier option 2020-11-11 10:36:59 -05:00
Evan You 3019508e75 wip: fix binding type fallback 2020-11-10 17:31:09 -05:00
Evan You 886ed7681d feat(compiler-sfc): compileScript inline render function mode 2020-11-10 16:28:34 -05:00
Rahul Kadyan 615dccd00e
feat(compiler-core/internal): add `onContextCreated` option to `generate` (#1672) 2020-07-21 15:16:20 -04:00
Evan You b9595e64cf feat: ssr support for `<style vars>` 2020-07-12 18:04:09 -04:00
Evan You b6cdd5621e wip: template binding optimization 2020-07-10 22:12:25 -04:00
Evan You b51b79f5c4 refactor: rename optimizeBindings -> optimizeImports 2020-07-10 20:43:52 -04:00
Felix Rilling 829b35e426
chore: typo fixes (#1546)
* chore: fix typos in comments/JSDoc.

* chore: fix typo in internal function name.

* chore: fix typos in test comments/descriptions/variable names.
2020-07-08 12:32:42 +02:00
Evan You afe13e0584 fix(ssr): fix ssr scopeId on component root 2020-06-27 00:27:44 -04:00
Evan You d5dbd27193 fix(ssr): handle fallthrough attrs in ssr compile output 2020-06-26 16:55:37 -04:00