Evan You
cb9444807e
wip(compiler): improve node stringification to support adjacent nodes
2020-05-15 12:58:44 -04:00
Evan You
8449a9727c
feat(compiler-core): switch to @babel/parser for expression parsing
...
This enables default support for parsing bigInt, optional chaining
and nullish coalescing, and also adds the `expressionPlugins`
compiler option for enabling additional parsing plugins listed at
https://babeljs.io/docs/en/next/babel-parser#plugins .
2020-02-27 16:53:51 -05:00
likui
7b987d9450
fix(compiler-core): should alias name in helperString ( #743 )
...
fix #740
2020-02-19 09:49:46 -05:00
Evan You
e0f3c6b352
fix(compiler-core): should apply text transform to if branches
...
fix #725
2020-02-14 15:57:14 -05:00
Evan You
27913e661a
feat(compiler-dom/runtime-dom): stringify eligible static trees
2020-02-12 11:56:42 -05:00
Evan You
e3988b40d8
refactor(compiler-core): use dedicated node type for element codegen
...
Previously codegen node for elements and components used raw expressions,
which leads to multiple permutations of AST shapes based on whether the
node is a block or has directives. The complexity is spread across the
entire compiler and occurs whenever a transform needs to deal with
element codegen nodes.
This refactor centralizes the handling of all possible permutations
into the codegen phase, so that all elements/components will have a
consistent node type throughout the transform phase.
The refactor is split into two commits (with test updates in a separate
one) so changes can be easier to inspect.
2020-02-11 18:40:42 -05:00
Evan You
a51e710396
wip(ssr): proper scope analysis for ssr vnode slot fallback
2020-02-07 13:56:18 -05:00
Evan You
b7a74d0439
wip(ssr): ssr slot vnode fallback
2020-02-07 01:06:51 -05:00
Evan You
797cc18967
wip(ssr): element scopeId
2020-02-06 17:45:46 -05:00
Evan You
201f18b58b
wip(ssr): v-model w/ dynamic type & props
2020-02-05 17:01:00 -05:00
Evan You
8da6df7235
wip(ssr): handle <textarea>
with dynamic key v-bind
2020-02-04 22:49:47 -05:00
Evan You
ebf920e6af
wip(compiler-ssr): dynamic v-bind + class/style merging
2020-02-04 18:37:32 -05:00
Evan You
6a5ed49ea9
wip(ssr): v-bind basic usage
2020-02-04 12:21:04 -05:00
Evan You
b685805a26
wip(ssr): ssr helper codegen
2020-02-03 18:31:10 -05:00
Evan You
066ba82c7f
wip(ssr): escape helpers
2020-01-27 16:00:18 -05:00
Evan You
51980afca2
feat(sfc): wip scopeId compiler support
2019-12-17 12:31:38 -05:00
Evan You
8ffd79c754
fix(compiler-core): handle template root and template v-if as stable fragments
2019-12-12 21:09:47 -05:00
Evan You
ef50c333ce
fix(core): generate fragment root with patchFlag + optimize fragment w/ patchFlag
2019-12-12 21:09:47 -05:00
Evan You
5cd1495767
refactor(compiler-core): centralize compiler options
2019-12-10 12:53:26 -05:00
likui
810b3a3e2a
feat(compiler-sfc): transform asset url ( #500 )
2019-12-01 12:02:53 -05:00
Evan You
0e3e07079a
feat(transition): properly handle transition & transition-group in compiler
2019-11-29 12:42:04 -05:00
Evan You
1c0a2c6d41
refactor(compiler): use shorter helpers for text and comment nodes
2019-10-24 17:55:00 -04:00
Evan You
af5a8e1154
feat(compiler-core): re-implement v-once to use cache mechanism
2019-10-23 17:57:40 -04:00
Evan You
113339c7b6
fix(compiler-dom): style transform of static styles should not add STYLE patchFlag
2019-10-23 10:49:16 -04:00
Evan You
869ae19c41
fix(compiler): cache handlers should be per-instance, fix hoist w/ cached handlers
2019-10-20 17:00:11 -04:00
Evan You
58593c4714
feat(v-on): cache handlers
2019-10-18 21:51:34 -04:00
Evan You
e98a85f3cb
refactor: applyDirectives -> withDirectives
2019-10-18 16:35:01 -04:00
Evan You
004223ade6
chore: use consistent type signature
2019-10-14 17:12:02 -04:00
Evan You
d376439167
wip(compiler-dom): v-model runtime
2019-10-10 18:02:51 -04:00
Evan You
0615cf0108
refactor(compiler): flush transform onExit in reverse
2019-10-08 16:53:26 -04:00
Evan You
eadcaead37
feat(compiler-dom): transform for v-html
2019-10-08 15:35:57 -04:00
Evan You
16da9ae89f
fix(compiler): handle block nodes with custom directives + improve ast types
2019-10-08 10:50:10 -04:00
Evan You
57a5c61320
test: tests for hoistStatic
2019-10-07 17:12:22 -04:00
Evan You
bfecf2cdce
refactor(compiler): use symbols for runtime helpers
2019-10-05 22:48:13 -04:00
Carlos Rodrigues
fbabae0c0a
chore: replace some type casts and fix variable and filename typos ( #93 )
2019-10-05 10:38:02 -04:00
Evan You
b61d9652dd
chore: shorten option name
2019-10-04 09:03:00 -04:00
Evan You
095f5edf8d
feat(compiler): hoist static trees
2019-10-03 23:30:25 -04:00
Evan You
2e2b6924da
feat(compiler): v-on inline statement handling
2019-10-03 17:47:00 -04:00
Evan You
c2fc7e3347
feat(compiler): force dynamicSlots flag when inside v-for or v-slot
2019-10-03 16:27:46 -04:00
Evan You
aa9245d55c
feat(compiler): render <slot/> as block fragments
2019-10-03 12:03:14 -04:00
Evan You
fc47029ed3
feat(compiler): support v-for on named slots
2019-10-02 23:10:41 -04:00
Evan You
3d14265102
feat(compiler): handle conditional v-slot
2019-10-02 17:18:11 -04:00
Evan You
e90b83600a
test(compiler): tests for RootNode codegen transform
2019-10-02 14:03:28 -04:00
Evan You
24bd6c27e0
feat(compiler): block optimization codegen for RootNode
2019-10-02 13:11:07 -04:00
Evan You
e31fb3c172
wip: Sequence & Conditional expressions for AST
2019-10-01 12:25:29 -04:00
Evan You
d67418002f
feat(compiler): generate patchFlags for runtime
2019-09-30 21:17:12 -04:00
Evan You
e5e40e1e38
feat(compiler): optimize text by merging adjacent nodes
2019-09-30 14:52:10 -04:00
Evan You
389a07835c
feat(compiler): handle complex destructure expressions in v-for
2019-09-28 16:02:08 -04:00
Evan You
6461b3853e
refactor(compiler): split slot / slot outlet / slot scope handling into separate transforms
2019-09-28 00:19:24 -04:00
Evan You
262be6733c
wip(compiler): tweak codegen, avoid duplicated asset resolution, improve formatting
2019-09-27 22:49:20 -04:00