Aurelius333
86cdf6694d
chore(compiler-core): improve X_V_IF_KEY error message ( #1757 )
2020-08-03 17:14:14 -04:00
Evan You
848d9ce2ea
release: v3.0.0-rc.5
2020-07-28 17:42:05 -04:00
Evan You
6f5d840612
feat(sfc): support resolving template components from <script setup>
exports
2020-07-28 17:31:46 -04:00
Evan You
58b4a382f9
refactor(compiler-core): emit error on v-if key usage
2020-07-28 15:18:41 -04:00
Evan You
fbf865d9d4
fix(compiler-core): always compile Teleport and Suspense as blocks
2020-07-28 11:12:43 -04:00
underfin
d4527230e4
fix(compiler-core): prevent generating invalid code for v-bind with empty expression ( #1720 )
2020-07-27 18:31:08 -04:00
Evan You
5fbd1f4ccb
fix(compiler-core/v-on): only cache empty handler when the option is used
...
fix #1716
The original idea is that the empty handler can be cached in all cases,
but this contradicts with the assumption that `hasCachedProps` check in
the static hoist transform can simply return `false` in the browser
build.
2020-07-27 18:28:39 -04:00
Evan You
71c3c6e2a0
fix(v-model): allow v-model usage on declared custom elements
...
fix #1699
2020-07-27 17:09:30 -04:00
Evan You
ba17c871d8
feat: support delimiters option for runtime compilation
...
close #1679
2020-07-23 14:27:17 -04:00
Evan You
d63daaf9b6
release: v3.0.0-rc.4
2020-07-21 15:40:46 -04:00
Evan You
11c2ad4a04
fix(deps): move @babel/types back to dependencies
2020-07-21 15:39:54 -04:00
Evan You
7753485baa
release: v3.0.0-rc.3
2020-07-21 15:27:26 -04:00
Rahul Kadyan
615dccd00e
feat(compiler-core/internal): add onContextCreated
option to generate
( #1672 )
2020-07-21 15:16:20 -04:00
Evan You
be4df124e6
refactor: move @babel/types to dev deps, reduce install size
2020-07-20 22:14:05 -04:00
Evan You
1f4045a086
release: v3.0.0-rc.2
2020-07-19 14:52:42 -04:00
Evan You
af7e100ef2
fix(compiler-core): fix v-if + v-for on <template>
...
fix #1637
2020-07-19 14:36:01 -04:00
HcySunYang
f9826fa963
fix(compiler-core/v-on): fix codegen for event handler with newlines ( #1640 )
2020-07-19 11:48:26 -04:00
Evan You
0ea14cade9
release: v3.0.0-rc.1
2020-07-17 15:30:17 -04:00
lawvs
a935998b33
chore: better comment hovers preview [ci skip] ( #1612 )
2020-07-17 11:24:12 -04:00
Evan You
5ed73cd874
release: v3.0.0-beta.24
2020-07-16 13:51:52 -04:00
Evan You
8b5d153d7f
release: v3.0.0-beta.23
2020-07-16 12:48:56 -04:00
Evan You
aab99abd28
fix(slots): properly force update on forwarded slots
...
fix #1594
2020-07-15 20:12:49 -04:00
Evan You
fcbefdb769
release: v3.0.0-beta.22
2020-07-15 12:43:41 -04:00
HcySunYang
64c7b2f9ce
fix(compiler-core): generate incremental keys for v-if/else-if/else chains ( #1589 )
...
fix #1587
2020-07-15 09:21:40 -04:00
Evan You
9188e9ea74
release: v3.0.0-beta.21
2020-07-14 17:18:07 -04:00
Evan You
380c6792d8
fix(v-on): refactor DOM event options modifer handling
...
fix #1567
Previously multiple `v-on` handlers with different event attach option
modifers (`.once`, `.capture` and `.passive`) are generated as an array
of objects in the form of `[{ handler, options }]` - however, this
makes it pretty complex for `runtime-dom` to properly handle all
possible value permutations, as each handler may need to be attached
with different options.
With this commit, they are now generated as event props with different
keys - e.g. `v-on:click.capture` is now generated as a prop named
`onClick.capture`. This allows them to be patched as separate props
which makes the runtime handling much simpler.
2020-07-14 11:48:05 -04:00
Evan You
9152a89016
fix(v-on): capitalize dynamic event names
2020-07-13 17:36:46 -04:00
Evan You
576344d2c3
refactor(compiler): extract isStaticExp util
2020-07-13 16:48:24 -04:00
Evan You
65beba98fe
fix(slots): differentiate dynamic/static compiled slots
...
fix #1557
2020-07-13 12:36:41 -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
Evan You
4c43d4e5b9
feat(compiler-sfc): <script setup>
support (experimental)
...
This is the last commit for the feature which adds async/await detection.
2020-07-10 18:00:13 -04:00
Evan You
3e1cdba9db
wip: tests for compileScriptSetup
2020-07-09 12:17:28 -04:00
Evan You
a47478caf4
wip: compileScriptSetup full js support
2020-07-09 12:17:28 -04:00
Evan You
1359cc3a28
wip: compileScriptSetup
2020-07-09 12:17:28 -04:00
Evan You
20df2f3817
release: v3.0.0-beta.20
2020-07-08 12:45:30 -04:00
Evan You
87c2a1e50f
fix(compiler-core/v-on): bail caching for member expression handlers on components
...
to preserve correct arity when it is passed down.
fix #1541
2020-07-08 11:48:12 -04:00
Evan You
4b5ce8b456
refactor(compiler-core): remove unnecessary arg in cached handler codegen
2020-07-08 11:48:12 -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
d5ab70ba66
release: v3.0.0-beta.19
2020-07-07 10:04:31 -04:00
Jack Robertson
64e2f46436
fix(compiler-core): add \r
to accepted chars after end tag name ( #1515 )
...
fix #1476
2020-07-06 16:00:26 -04:00
Evan You
7f83856f34
release: v3.0.0-beta.18
2020-07-01 21:06:25 -04:00
Evan You
f6da6bf999
release: v3.0.0-beta.17
2020-06-30 12:10:15 -04:00
Evan You
ec3c12ee10
release: v3.0.0-beta.16
2020-06-29 18:34:50 -04:00
Evan You
afe13e0584
fix(ssr): fix ssr scopeId on component root
2020-06-27 00:27:44 -04:00
Evan You
7777473ddd
chore: fix missed snapshots
2020-06-26 17:00:50 -04:00
Evan You
d5dbd27193
fix(ssr): handle fallthrough attrs in ssr compile output
2020-06-26 16:55:37 -04:00
HcySunYang
8a2cf21b71
perf(compiler-core): treat v-for with constant exp as a stable fragment ( #1394 )
2020-06-17 16:13:14 -04:00
Joseph Xia
d57749cbf7
test(compiler-core): add v-if with comments test case ( #1389 )
2020-06-17 16:01:12 -04:00
Evan You
605953a154
refactor: only inject rest args for member expression handlers + fix tests
2020-06-15 15:24:46 -04:00
Cathrine Vaage
7e28173312
fix(compiler-core/v-on): pass noninitial arguments in cached event handlers ( #1265 )
2020-06-15 15:04:03 -04:00
underfin
35dbef268c
fix(compiler-core): should not prefix object method ( #1375 )
2020-06-15 11:20:00 -04:00
Evan You
afb231ec5c
fix(compiler-core): skip empty expressions when validating expressions in browser mode
2020-06-15 10:59:03 -04:00
Evan You
cf2f278f48
release: v3.0.0-beta.15
2020-06-12 18:09:05 -04:00
Evan You
91fa52850a
chore: lint for unused arguments
2020-06-12 16:31:31 -04:00
Evan You
825ec1500f
fix(compiler-core): support static slot names containing dots for 2.x compat
...
close #1241
2020-06-12 16:09:27 -04:00
Evan You
0d26413433
fix(compiler-core): fix parsing for directive with dynamic argument containing dots
2020-06-12 15:59:13 -04:00
Evan You
e29f0b3fc2
feat(compiler): better warning for invalid expressions in function/browser mode
...
fix #1266
2020-06-11 16:31:51 -04:00
Evan You
f3623e4d1e
fix(compiler-core): fix prod whitespace/comment removal
...
fix #1256
2020-06-11 11:45:10 -04:00
Evan You
80c868aefe
workflow: setup eslint for prohibited syntax and globals
...
fix #1285
2020-06-10 16:54:23 -04:00
Evan You
9b5d13e598
fix: bail stringification for slots
...
fix #1281 , close #1286
2020-06-10 14:31:59 -04:00
Carlos Rodrigues
958b6c80cf
fix(compiler-core): allow multiline expression on v-model and v-on ( #1234 )
2020-06-09 17:24:48 -04:00
Evan You
5f15d9aa4b
fix(compiler-ssr): should escape template string interpolation chars in generated code
2020-05-26 14:38:24 -04:00
Evan You
32b3f78a36
release: v3.0.0-beta.14
2020-05-18 14:42:11 -04:00
Evan You
dd2bfb5a8f
fix(compiler-dom): should bail stringification on runtime constant regardless of position
...
ref: vuejs/vite#157
2020-05-18 10:04:18 -04:00
Evan You
449fd05ad6
release: v3.0.0-beta.13
2020-05-16 21:53:47 -04:00
Evan You
d965bb6227
feat: improve static content stringiciation
...
Now a single static vnode can contain stringified content
for multiple consecutive nodes, which greatly improves the
coverage of this optimization.
2020-05-16 21:30:16 -04:00
Evan You
baa6973b13
wip(compiler): tests for new stringification
2020-05-15 15:50:42 -04:00
Evan You
cb9444807e
wip(compiler): improve node stringification to support adjacent nodes
2020-05-15 12:58:44 -04:00
Evan You
c2f3ee4dc0
chore: use jsdoc comments in ast
2020-05-15 11:00:07 -04:00
Evan You
3c88299f6a
release: v3.0.0-beta.12
2020-05-11 15:52:37 -04:00
Evan You
7887c54dfe
release: v3.0.0-beta.11
2020-05-11 14:25:36 -04:00
Evan You
13acb9134e
release: v3.0.0-beta.10
2020-05-07 11:21:18 -04:00
Evan You
e58beecc97
refactor(compiler/types): convert compiler options documentation to jsdoc
...
BREAKING CHANGE: `getTextMode` compiler option signature has changed from
```ts
(tag: string, ns: string, parent: ElementNode | undefined) => TextModes
```
to
```ts
(node: ElementNode, parent: ElementNode | undefined) => TextModes
```
2020-05-07 11:01:36 -04:00
Evan You
675330ba54
fix(compiler): warn against v-bind with empty attribute value
...
ref: https://github.com/vuejs/vue-next/issues/1128#issuecomment-624647434
2020-05-07 10:32:54 -04:00
Evan You
c32ed52b97
release: v3.0.0-beta.9
2020-05-04 17:14:42 -04:00
Evan You
f9a3766fd6
fix(compiler): bail strigification on runtime constant expressions
2020-05-04 15:15:26 -04:00
Evan You
3c3fe88c64
release: v3.0.0-beta.8
2020-05-04 10:49:23 -04:00
Evan You
0dc44a6a86
release: v3.0.0-beta.7
2020-05-02 17:06:16 -04:00
Evan You
b570287dfe
release: v3.0.0-beta.6
2020-05-01 18:56:53 -04:00
HiiTea
f0d52d5428
chore: code comment formatting ( #1089 ) [ci skip]
2020-05-01 18:48:44 -04:00
Evan You
c5e7d8b532
fix(compiler-core): hoist pure annotations should apply to all nested calls
2020-05-01 18:36:34 -04:00
Evan You
cad25d95a3
fix(compiler-core): hoisted vnode calls and scoped id calls should be marked pure
...
Otherwise they cannot be tree-shaken
2020-05-01 17:34:11 -04:00
HiiTea
22717772dd
chore: fix typos ( #1090 )
2020-05-01 09:42:58 -04:00
Evan You
c9bf7ded2e
refactor(types): mark internal API exports and exclude from d.ts
...
BREAKING CHANGE: Internal APIs are now excluded from type decalrations.
2020-04-30 17:04:35 -04:00
Evan You
a5bb1d02b7
release: v3.0.0-beta.5
2020-04-30 16:20:25 -04:00
Evan You
bd0f7da2c6
build: add browser builds for @vue/compiler-sfc
2020-04-26 01:24:25 -04:00
Evan You
d29aefcf99
release: v3.0.0-beta.4
2020-04-24 16:20:20 -04:00
underfin
2b19965bcf
fix(slots): compiled slot fallback should be functions ( #1030 )
...
This avoids it being collected as dynamic children when it's not used.
fix #1021
2020-04-22 16:52:41 -04:00
Evan You
7d858a9001
test(compiler-core): test dynamic component block
2020-04-22 14:47:31 -04:00
Evan You
7d0ab3392a
fix(compiler-core): dynamic component should always be made blocks
...
since it can potentially resolve to plain elements
fix #1018
2020-04-22 14:45:00 -04:00
Evan You
6fefeafe98
release: v3.0.0-beta.3
2020-04-20 17:00:26 -04:00
Evan You
c1a85cb124
release: v3.0.0-beta.2
2020-04-17 11:01:01 -04:00
扩散性百万甜面包
70c8c58be2
test(compiler-core): expect onError to be called ( #976 )
2020-04-17 08:58:38 -04:00
Evan You
ca6912554c
release: v3.0.0-beta.1
2020-04-16 15:45:04 -04:00
Evan You
11654a6e50
release: v3.0.0-alpha.13
2020-04-15 12:46:26 -04:00
Evan You
1068212cb2
chore: run prettier
2020-04-15 10:51:07 -04:00
Evan You
a6e2b1052a
fix(compiler-core): should not generate CLASS/STYLE patch flags on components
...
ref #677
2020-04-10 10:19:26 -04:00
Evan You
1d9f8fc979
release: v3.0.0-alpha.12
2020-04-08 18:59:49 -04:00
Evan You
1f6e72b110
fix(compiler): support full range of entity decoding in browser builds
...
BREAKING CHANGE: compiler options have been adjusted.
- new option `decodeEntities` is added.
- `namedCharacterReferences` option has been removed.
- `maxCRNameLength` option has been rmeoved.
2020-04-08 18:51:25 -04:00
Evan You
8c17535a47
fix(compiler): should not condense
...
fix #945
2020-04-08 17:33:07 -04:00
Evan You
be666ebd59
fix(compiler): should only strip leading newline directly in pre tag
2020-04-08 16:44:32 -04:00
Evan You
d531686f91
fix(compiler-core): elements with dynamic keys should be forced into blocks
...
fix #916
2020-04-07 18:44:21 -04:00
Evan You
7402951d94
release: v3.0.0-alpha.11
2020-04-03 21:45:50 -04:00
Evan You
7f30cb5772
fix(compiler): fix pre tag whitespace handling
...
- should preserve whitespace even in nested elements
- should remove leading newline per spec
fix #908
2020-04-03 21:02:20 -04:00
Evan You
eee5095692
refactor: rename <portal>
to <teleport>
...
BREAKING CHANGE: `<portal>` has been renamed to `<teleport>`.
`target` prop is also renmaed to `to`, so the new usage will be:
```html
<Teleport to="#modal-layer" :disabled="isMobile">
<div class="modal">
hello
</div>
</Teleport>
```
The primary reason for the renaming is to avoid potential naming
conflict with [native portals](https://wicg.github.io/portals/ ).
2020-04-01 21:55:19 -04:00
Evan You
a022b63605
fix(compiler-core/slots): should support on-component named slots
2020-04-01 20:44:53 -04:00
Igor Randjelovic
20f4965b45
feat(compiler-core): export transformElement
from compiler-core ( #907 )
2020-04-01 11:25:05 -04:00
Evan You
9ed9bf3687
feat(portal): SSR support for portal disabled prop
2020-03-30 11:24:29 -04:00
Evan You
aafb880a0a
feat(portal): support multiple portal appending to same target
2020-03-27 18:42:57 -04:00
Evan You
b8ffbffaf7
feat(compiler-core): support v-is
...
see https://github.com/vuejs/rfcs/pull/149 for details
2020-03-27 16:38:31 -04:00
Evan You
16cd8eee78
fix(portal): portal should always remove its children when unmounted
2020-03-25 17:27:55 -04:00
Evan You
de81faf00a
release: v3.0.0-alpha.10
2020-03-24 18:33:40 -04:00
Evan You
c403c39126
chore: improve parser option comments [ci skip]
2020-03-24 18:29:15 -04:00
Evan You
0831b98eac
fix(compiler-core): support interpolation in RCDATA mode (e.g. textarea)
2020-03-23 17:25:29 -04:00
Evan You
f529dbde23
fix: dynamic component fallback to native element
...
fix #870
2020-03-23 14:47:04 -04:00
Evan You
b8c1be18f3
refactor(types): use stricter settings
...
fix #847
2020-03-23 11:08:22 -04:00
ysj16
a3601e9fa7
perf(transform-vif): don't need to createBlock for a component ( #853 )
2020-03-20 11:29:44 -04:00
Evan You
ba9a91c48c
refactor: remove null comparisons
2020-03-18 18:14:51 -04:00
Evan You
a1da9c28a0
fix(compiler-core): assign patchFlag for template v-if fragment
...
fix #850
2020-03-17 11:36:56 -04:00
Evan You
5282ff0edb
release: v3.0.0-alpha.9
2020-03-16 18:56:44 -04:00
Evan You
3b40fc56db
fix(compiler-ssr): fix input w/ v-bind="obj" codegen
2020-03-16 18:14:49 -04:00
Evan You
4dc8ffc378
fix: simplify and use correct ctx in withCtx
2020-03-16 13:06:46 -04:00
Evan You
19228a469a
refactor: simplify resolveDyanmicComponent
2020-03-16 13:06:46 -04:00
Evan You
9ad65b1653
refactor(template-ref): improve template ref handling
...
close #836 , close #839
2020-03-16 13:06:46 -04:00
Evan You
ecd7ce60d5
feat(compiler-core): wrap slot functions with render context
2020-03-16 13:06:46 -04:00
Evan You
586e5bb800
fix(compiler-core): fix property shorthand detection
...
fix #845
2020-03-16 10:27:03 -04:00
Evan You
1f9c9c14ae
chore: move hydration tests
2020-03-13 13:05:05 -04:00
Evan You
a05d41c940
refactor(ssr): adjust ssr fragment anchor content
2020-03-13 13:05:05 -04:00
Evan You
a3cc970030
feat(ssr/suspense): suspense hydration
...
In order to support hydration of async components, server-rendered
fragments must be explicitly marked with comment nodes.
2020-03-13 13:05:05 -04:00
Evan You
c75388d538
release: v3.0.0-alpha.8
2020-03-06 15:58:40 -05:00
Evan You
dd2d25fee1
test(ssr): test for hydration mismatch handling
2020-03-06 15:39:54 -05:00
Evan You
f7a026109d
test(ssr): ssr + hydration integration test
2020-03-06 15:14:12 -05:00
Evan You
08bba093af
test(ssr): more hydration tests
2020-03-05 10:29:50 -06:00
Evan You
fb4856b363
test(ssr): hydratioon tests (wip)
2020-03-04 17:06:50 -06:00
Evan You
bcb2a9b4a6
build: make @vue/shared public
...
This avoids it being inlined multiple times in esm bundler builds
2020-02-29 22:04:42 -05: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
Evan You
312513d255
release: v3.0.0-alpha.7
2020-02-26 14:36:38 -05:00
Evan You
3eab143843
fix(template-ref): fix string template refs inside slots
2020-02-25 18:29:51 -05:00
djy0
c11905fe36
chore: fix typo ( #764 ) [ci skip]
2020-02-24 18:01:26 +01:00
Evan You
9ab22c7ae6
release: v3.0.0-alpha.6
2020-02-22 08:25:32 +01:00
Evan You
1b9b235663
fix(compiler-dom): properly stringify class/style bindings when hoisting static strings
2020-02-21 13:10:13 +01:00
Luxiaosong
c54aa43fa7
chore: use 'const' instead of 'let' ( #755 ) [ci skip]
2020-02-21 11:21:24 +01:00
likui
7b987d9450
fix(compiler-core): should alias name in helperString ( #743 )
...
fix #740
2020-02-19 09:49:46 -05:00
Evan You
478b4cfb2c
release: v3.0.0-alpha.5
2020-02-18 15:00:55 -05:00
Evan You
028f748c32
fix(v-on): transform click.right and click.middle modifiers
...
fix #735
2020-02-18 14:32:06 -05:00
Evan You
66b5f0b480
chore: fix hoistStatic exhaustive check
2020-02-14 16:41:55 -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
5455e8e69a
fix(compiler-core): should not hoist element with cached + merged event handlers
2020-02-13 18:34:08 -05:00
Evan You
9aaef60ad2
wip(ssr): adjust event hydration flag
2020-02-13 18:28:40 -05:00
Evan You
6b505dcd23
wip(ssr): basic element hydration
2020-02-13 17:47:00 -05:00
Evan You
8b7c162125
feat(compiler-dom): handle constant expressions when stringifying static content
2020-02-12 15:00:00 -05:00
Evan You
1389d7b88c
refactor(compiler-core): use more concise marker for compiled slots
2020-02-12 13:45:35 -05:00
Evan You
175f8aae8d
feat(compiler): mark hoisted trees with patchFlag
2020-02-12 13:31:29 -05:00
Evan You
27913e661a
feat(compiler-dom/runtime-dom): stringify eligible static trees
2020-02-12 11:56:42 -05:00
Evan You
e861c6da90
test: test updates for d40c642
2020-02-11 18:40: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
f4c54a888b
refactor(compiler-core): hoist static text calls between elements
2020-02-10 18:32:11 -05:00
Evan You
12fcf9ab95
fix(compiler): fix v-for fragment openBlock argument
2020-02-10 18:19:49 -05:00
Evan You
47e984d31f
refactor(compiler): provide _ctx and _cache via arguments
2020-02-10 17:29:12 -05:00
Evan You
ade07c64a1
fix(compiler-core): fix keep-alive when used in templates
...
fix #715
2020-02-10 16:49:37 -05:00
Evan You
571ed4226b
feat(compiler-core/v-on): support @vnode-xxx usage for vnode hooks
2020-02-10 11:00:37 -05:00
djy0
782db6d7f5
chore(compiler-core/codegen): avoid generate indent spaces of empty lines. ( #701 )
2020-02-10 09:33:04 -05:00
Evan You
8b2d6a35d0
test: update tests and snapshots for helper prefixing
2020-02-07 19:04:55 -05:00
Evan You
51317af6e8
refactor(compiler): prefix all imported helpers to avoid scope collision
2020-02-07 18:53:39 -05:00
Evan You
c44d9fbe3d
build: drop unnecessary codegen branch for global build
2020-02-07 18:00:30 -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
4cc39e14a2
feat(compiler): warn invalid children for transition and keep-alive
2020-02-06 17:45:46 -05:00
Evan You
3c27bf6133
wip(compiler-ssr): built-in component fallthrough
2020-02-06 17:45:46 -05:00
Evan You
bc8f91d181
refactor(ssr): prefix ssr helpers
2020-02-06 12:07:25 -05:00
Evan You
ee5ed73361
wip(ssr): basic components
2020-02-05 23:07:23 -05:00
Evan You
9b3b6962df
wip(srr): slot outlet
2020-02-05 21:04:40 -05:00
Evan You
7a63103a11
chore: fix snapshot
2020-02-05 17:29:41 -05:00
Evan You
201f18b58b
wip(ssr): v-model w/ dynamic type & props
2020-02-05 17:01:00 -05:00
Evan You
1f2de9e232
fix(v-model): should use dynamic directive on input with dynamic v-bind
2020-02-05 15:21:47 -05:00
Evan You
8f9e85afb1
test: fix tests w/ nested CompoundExpressions
2020-02-05 14:30:34 -05:00
Evan You
c952321fcf
wip(compiler-ssr): v-model static types + textarea
2020-02-05 14:23:03 -05:00
Evan You
c441e88469
chore: fix snapshots
2020-02-04 22:56:53 -05:00
Evan You
8da6df7235
wip(ssr): handle <textarea>
with dynamic key v-bind
2020-02-04 22:49:47 -05:00
Evan You
1958314976
wip(compiler-ssr): v-show
2020-02-04 21:03:16 -05:00
Evan You
ebf920e6af
wip(compiler-ssr): dynamic v-bind + class/style merging
2020-02-04 18:37:32 -05:00
Evan You
c059fc88b9
wip(compiler-ssr): v-bind with static keys
2020-02-04 16:47:12 -05:00
Evan You
ba263c909c
wip(ssr): remove cjs codegen mode
2020-02-04 15:58:54 -05:00
Evan You
6a5ed49ea9
wip(ssr): v-bind basic usage
2020-02-04 12:21:04 -05:00
Evan You
eb9e089277
chore: fix test types
2020-02-03 22:21:45 -05:00
Evan You
8cf6b5731d
test(compiler-ssr): v-for tests
2020-02-03 20:47:41 -05:00
Evan You
93c37b94f2
wip(ssr): v-for
2020-02-03 18:31:11 -05:00
Evan You
889a0276eb
wip(ssr): do not generate commas between statements
2020-02-03 18:31:11 -05:00
Evan You
b685805a26
wip(ssr): ssr helper codegen
2020-02-03 18:31:10 -05:00
Evan You
e8c5de6cfd
wip(compiler-ssr): v-if
2020-02-03 18:31:10 -05:00
Evan You
63e4486645
wip(compiler-ssr): text and interpolation
2020-02-02 22:28:54 -05:00
Evan You
8fd9e9ba97
test(compiler-core): test TempalteLiteral and IfStatement codegen
2020-02-02 21:35:44 -05:00
Evan You
efbbd19b3d
wip(ssr): initial scaffold for compiler-ssr
2020-02-02 00:05:27 -05:00
Evan You
34e61197c7
refactor(compiler-core): improve template type handling
2020-01-31 17:20:52 -05:00
Evan You
78c4f321cd
fix(compiler-core): only check is prop on <component>
2020-01-31 16:15:05 -05:00
Evan You
f503167fb7
test: fix snapshots
2020-01-31 11:06:37 -05:00
Evan You
04da2a82e8
feat(compiler-core): support mode: cjs in codegen
2020-01-31 10:01:33 -05:00
Gabriel Loiácono
c088169170
style(compiler-core): while/expression instead of while/true ( #680 )
2020-01-31 09:43:34 -05:00
Evan You
730d329f79
fix(compiler-core): relax error on unknown entities
...
close #663
2020-01-29 12:16:58 -05:00
Evan You
d293876c34
release: v3.0.0-alpha.4
2020-01-27 16:20:00 -05:00
Evan You
cc47ae0118
test: update snapshots for toDisplayString
2020-01-27 16:00:18 -05:00
Evan You
066ba82c7f
wip(ssr): escape helpers
2020-01-27 16:00:18 -05:00
Evan You
b41677bf42
release: v3.0.0-alpha.3
2020-01-22 11:10:30 -05:00
Evan You
4f06eebc1c
fix(dom): fix <svg> and <foreignObject> mount and updates
2020-01-21 11:32:33 -05:00
Evan You
f2ac28b31e
fix(compiler-core): force <svg> into blocks for correct runtime isSVG
...
state during patch
2020-01-20 14:48:26 -05:00
Ruijia Tang
aca2c2a81e
fix(compiler-core): avoid override user keys when injecting branch key ( #630 )
2020-01-20 10:15:53 -05:00
Evan You
9f65d811af
release: v3.0.0-alpha.2
2020-01-13 17:44:30 -05:00
Evan You
2ac4b723e0
fix(compiler/v-slot): handle implicit default slot mixed with named slots
2020-01-06 15:31:21 -05:00
Evan You
137893a4fd
fix(compiler/v-on): handle multiple statements in v-on handler ( close #572 )
2020-01-06 11:45:48 -05:00
Evan You
1bb1271b5e
release: v3.0.0-alpha.1
2020-01-02 18:25:17 -05:00
susiwen8
dee5480317
chore: use Boolean to filter TemplateChildNode ( #569 )
2019-12-30 11:26:45 -05:00
djy0
ad2a0bde98
perf(compiler-core): simplify advancePositionWithMutation
( #564 )
2019-12-30 11:25:06 -05:00
Evan You
59c595c1e8
refactor: use named export for compiled render function
2019-12-24 11:04:44 -05:00
Evan You
d6275a3c31
fix(sfc): treat custom block content as raw text
2019-12-22 21:09:39 -05:00
Evan You
90ddb7c260
refactor: expose parse in compiler-dom, improve sfc parse error handling
2019-12-22 19:44:21 -05:00
Evan You
94d692b0cf
test: fix tests after missing end tag error location fix
2019-12-20 10:10:08 -05:00
Evan You
3a3a24d621
feat(sfc): accept inMap in compileTemplate()
2019-12-19 16:25:05 -05:00
Evan You
02c6d5c4e3
fix: codeframe marker should have min width of 1
2019-12-19 15:42:53 -05:00
Evan You
bdbfead1e0
chore: adjust package.json
2019-12-19 14:19:58 -05:00
Evan You
9550302df4
build: esm-bunlder builds should be considered browser builds
2019-12-17 17:34:10 -05:00
Evan You
b689ca6e85
test: test scopeId support
2019-12-17 12:31:38 -05:00
Evan You
51980afca2
feat(sfc): wip scopeId compiler support
2019-12-17 12:31:38 -05:00
Evan You
35858cec8c
build: adjust global names + allow inline overrides of build flags
2019-12-15 15:37:43 -05:00
Evan You
75113c8d3e
test: fix tests
2019-12-14 22:28:54 -05:00
Evan You
49a50d3c9c
feat(compiler): accept line offset in codeframe
2019-12-13 18:01:04 -05:00
Evan You
b15951e190
chore: remove line numbers from default errors
2019-12-13 17:28:12 -05:00
Evan You
9e757b5cc5
refactor(compiler-core): move compile into separate file
2019-12-13 13:22:15 -05:00
Evan You
8277d131c4
refactor(compiler): downgrade to source-map v6 for sync API
2019-12-13 12:56:31 -05:00
Cr
6797e35703
chore: fix typos ( #541 )
2019-12-13 11:49:01 +01:00
Evan You
c36941c498
fix(compiler-core): should apply text transform to <template v-for> children
2019-12-12 21:09:47 -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
5658f8b678
feat(compiler): expose generateCodeFrame
2019-12-12 21:09:47 -05:00
Evan You
136ab753b3
build: adjust esm formats
2019-12-10 22:14:02 -05:00
Evan You
8ed04ed503
build: release script
2019-12-10 21:29:52 -05:00
Evan You
95b2cb6fd2
fix(compiler-core): should only parse interpolations in DATA text mode
2019-12-10 15:30:17 -05:00
Evan You
5cd1495767
refactor(compiler-core): centralize compiler options
2019-12-10 12:53:26 -05:00
Evan You
a984d3a531
test: skip optimizing single text root
2019-12-02 15:49:59 -05:00
Evan You
42f3f9e832
fix(compiler-core): should pre-convert text nodes in all non-element cases
2019-12-02 15:17:00 -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
4e8d57bdfb
feat(compiler-core): options.isBuiltInComponent
2019-11-29 12:13:49 -05:00
Evan You
52134a88d0
fix(compiler-core): handle base-transition
2019-11-29 12:02:31 -05:00
Gabriel Loiácono
812a0626ce
style(compiler): changed object-assign to spread ( #507 )
2019-11-28 10:49:39 -05:00
Gabriel Loiácono
009dc80674
perf(compiler-core): set simple expression outside map ( #485 )
2019-11-26 09:02:22 -05:00
Evan You
c6fb506fc0
feat(transition): compat with keep-alive
2019-11-25 17:35:15 -05:00
Evan You
08a3d95e52
fix: resolveDynamicComponent should use context instance
2019-11-25 11:41:28 -05:00
Evan You
1765985ec2
feat(transition): support in templates
2019-11-24 18:37:59 -05:00
Evan You
9e16ea3d30
test: update snapshots
2019-11-17 21:29:12 -05:00
Evan You
e89d009937
fix(compiler): include createTextVNode helper for hoisted static content ( fix #465 )
2019-11-17 21:26:25 -05:00
Evan You
1de072567d
perf(compiler): pre-compute maxCRNameLength for perf
2019-11-16 16:19:47 -05:00
Gabriel Loiácono
2780e0df4c
perf(compiler-core): add perf optimization to parseText ( #458 )
2019-11-15 17:48:01 -05:00
Evan You
353b06df77
perf(compiler): should only perform assertions during tests
...
Compiler assertions are made to ensure implementation correctness,
but they have performance costs that should not affect users
during development.
2019-11-15 17:29:08 -05:00
Evan You
51d57b4566
perf(compiler): minor perf tweaks
2019-11-15 16:47:55 -05:00
Evan You
4fef8f342a
perf(compiler): improve perf of parseTextData
2019-11-15 16:17:52 -05:00
QuincyChen
d7d87622ce
refactor: use isArray function from shared ( #441 )
2019-11-08 09:52:24 -05:00
Evan You
f178874ace
fix(v-model): generate separate modifiers for v-model with args
2019-11-07 09:40:34 -05:00
Evan You
4b739e3bc0
fix(compiler-core): should not condense whitespace in RAWTEXT mode
2019-11-06 20:52:19 -05:00
Evan You
acbbe3298c
refactor: move codeframe to @vue/shared
2019-11-06 15:13:15 -05:00
Evan You
98e9b769e6
feat(compiler): support keep-alive in templates
2019-11-05 10:26:56 -05:00
Dmitry Sharshakov
4b9483fd5e
feat(compiler): compile suspense children as slots ( #419 )
2019-11-04 14:35:00 -05:00
Evan You
5eee1152ca
types: (wip) improve dts output
2019-11-01 11:32:53 -04:00
likui
ea2e2ce5bd
chore: fix typo ( #409 )
2019-10-29 13:51:48 -04:00
Cédric Exbrayat
36b7e4e52e
chore: fix comments referencing renamed file [ci skip] ( #404 )
2019-10-28 12:04:04 -04:00
Evan You
34989ef7fe
chore: license
2019-10-28 11:15:17 -04:00
Evan You
ed29af7bea
fix: generate v-if fallback comment as block
2019-10-24 21:19:02 -04:00
Evan You
1c0a2c6d41
refactor(compiler): use shorter helpers for text and comment nodes
2019-10-24 17:55:00 -04:00
Evan You
eb20730a67
feat(compiler): preserve whitespace in pre tag, add tests
2019-10-24 16:42:09 -04:00
Evan You
9298f46f92
feat(compiler-core): whitespace handling
2019-10-24 16:22:48 -04:00
Evan You
516501e20e
chore: remove unused util function
2019-10-24 15:39:31 -04:00
Evan You
f7a7e8d71d
refactor(parser): remove ignoreSpaces option
2019-10-24 12:47:29 -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
052febc127
feat(compiler): convert text mixed with elements into createVNode calls
...
This ensures they are tracked as dynamic children when inside blocks.
Also guaruntees compiled vnodes always have vnode children in arrays
so that they can skip normalizeVNode safely in optimized mode.
2019-10-21 15:52:29 -04:00
Evan You
a0d570b16d
Revert "feat(compiler-core): hoist element with static ref ( #344 )"
...
Static refs still need to be tracked in dynamicChildren because unmount
also takes the fast path when dynamicChildren is present, and all refs
need to be properly unmounted.
This reverts commit 920773fc6b
.
2019-10-21 15:17:29 -04:00
Evan You
4abd8d29ef
chore: fix merge conflict
2019-10-21 10:33:10 -04:00
HcySunYang
920773fc6b
feat(compiler-core): hoist element with static ref ( #344 )
2019-10-21 10:29:17 -04:00
Evan You
1b9bd6912e
perf: v-for fragments do not need to track dynamicChildren
2019-10-21 10:00:45 -04:00
HcySunYang
71f3826f99
chore: rename & property missing ( #335 )
2019-10-21 10:00:23 -04:00
Evan You
6f9692dcdd
chore: cache isStaticNode result for missing branch
2019-10-20 17:01:01 -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
Dmitry Sharshakov
39157f7671
chore: fix ci ( #338 )
2019-10-19 20:03:15 -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
cba34453db
refactor(v-on): avoid empty modifier guard with only key modifier
2019-10-18 16:20:45 -04:00
宋铄运
7f23eaf661
feat(core): support dynamic component via <component :is> ( #320 )
2019-10-18 12:09:04 -04:00
大江东去
bb9dca2047
test(compiler-core): add test for custom delimiter ( #315 )
2019-10-17 15:04:52 -04:00
Carlos Rodrigues
6c80e13986
chore: typos [ci-skip] ( #323 )
2019-10-17 15:01:51 -04:00
Evan You
4b2b29efa1
feat(compiler-core): support Suspense in templates
2019-10-16 17:43:41 -04:00
Evan You
e97951dd2e
feat: emit compiler error for invalid JavaScript expressions
2019-10-16 17:43:41 -04:00
Evan You
b980ddb607
perf: skip hasScopeRef check if there are no scope vars
2019-10-16 15:35:04 -04:00
Evan You
d69db0b2fd
feat(compiler-core/v-slot): only force dynamic slots when referencing scope vars
...
This feature is only applied with prefixIdentifiers: true.
2019-10-16 15:35:04 -04:00
Evan You
5e97643c85
feat(compiler-core/v-model): generate modelModifiers for component v-model
2019-10-16 15:35:04 -04:00
Evan You
25dd507f71
feat(compiler-core/v-model): error when v-model is used on scope variable
2019-10-16 15:35:04 -04:00
Evan You
5481f76ce8
feat(compiler-core/v-model): avoid patching v-model handler when possible
2019-10-16 15:35:04 -04:00
Evan You
6a75c3463b
feat(compiler-core): do not generate TEXT flag if child is constant
2019-10-16 12:00:55 -04:00
Carlos Rodrigues
6607edab2d
refactor(compiler-core): avoid has call ( #314 )
2019-10-16 10:46:41 -04:00
xiaoboost
32499b16e7
types: improve typing ( #309 )
2019-10-16 10:31:40 -04:00
Carlos Rodrigues
b54c05f751
types: improve typing ( #313 )
2019-10-16 10:15:03 -04:00
月迷津渡
f71bf2f1d3
feat: add isCustomElement option ( #299 )
2019-10-15 17:30:47 -04:00
HcySunYang
3385480ba7
fix(compiler-core): avoid prefixing empty interpolations ( #290 )
2019-10-15 16:58:01 -04:00
MichealXie
a3032b9b39
types: use Omit
instead of Pick + Exclude
( #296 )
2019-10-15 12:24:16 -04:00
Evan You
74d501829c
chore: use webpack-compatible pure annotation
2019-10-15 12:22:32 -04:00
Evan You
7de3aee317
fix: ensure makeMap calls are tree-shakable
2019-10-15 12:19:46 -04:00
Ayush Goyal
58fffcb987
refactor(core): use makeMap for faster string match checks ( #282 )
2019-10-15 12:11:08 -04:00
Evan You
4cee06ddab
refactor(compiler-core): follow up on #276
2019-10-15 11:51:52 -04:00
HcySunYang
68a3879b88
feat(compiler-core): more hoisting optimizations ( #276 )
2019-10-15 11:41:24 -04:00
Evan You
004223ade6
chore: use consistent type signature
2019-10-14 17:12:02 -04:00
terencez
4547d85a38
feat(compiler-core): support <portal> in template ( #203 )
2019-10-14 15:11:04 -04:00
宋铄运
57a94b530d
feat(dom): transform + runtime for v-on ( #213 )
2019-10-14 00:33:23 -04:00
likui
46e64b257c
feat(compiler-core/runtime-core): show codeframe in runtime compile errors ( #220 )
2019-10-12 19:49:23 -04:00
Natalia Tepluhina
5d98c51b74
chore: use name
const consistently ( #249 )
2019-10-12 19:43:36 -04:00
Sangeeth Sudheer
96681942c1
types: remove unnecessary types ( #234 )
2019-10-12 19:33:48 -04:00
HcySunYang
4587f4f7c9
chore: consistent call to the newline function ( #222 )
2019-10-12 10:30:39 -04:00
Evan You
acf406b779
fix(compiler-core): fix directive args with empty holes
2019-10-11 20:35:01 -04:00
Illya Klymov
584ac88b54
fix(compiler): update v-if directive to use Comment instead of Empty ( #208 )
2019-10-11 11:04:55 -04:00
Evan You
35d31a2ba2
chore: remove duplicate helperNameMap entry
2019-10-11 10:49:35 -04:00
Evan You
9ad7ae479e
fix(compiler): export COMMENT instead EMPTY runtime helper
2019-10-11 10:47:59 -04:00
herochen
056764ce47
chore: typo ( #198 )
2019-10-11 09:59:52 -04:00
Evan You
e6d0d08a43
test(compiler): test for DirectiveTransform returning needRuntime: Symbol
2019-10-10 18:05:43 -04:00
Evan You
d376439167
wip(compiler-dom): v-model runtime
2019-10-10 18:02:51 -04:00
Adam Dorling
497ed19277
chore: remove copy-paste comment from v-cloak ( #193 )
2019-10-10 14:54:50 -04:00
月迷津渡
78f60347dc
feat(compiler): add isNativeTag option for determining element type ( #139 )
2019-10-10 14:54:06 -04:00
月迷津渡
f71d252ffe
fix(compiler-core): assest id ( #190 )
...
* fix(compile-core): asset id
* test(compile-core): asset id
2019-10-10 13:55:26 -04:00
Cédric Exbrayat
4ca32c537d
test(compiler): fix copy paste in v-once spec ( #191 )
2019-10-10 13:54:22 -04:00
Illya Klymov
80f5cb2700
fix(compiler): do not hoist element with dynamic key ( #187 )
2019-10-10 11:19:17 -04:00
Evan You
f11dadc1d2
refactor(compiler): improve member expression check for v-on & v-model
2019-10-10 11:15:24 -04:00
Rahul Kadyan
87c3d2edae
feat(compiler-core): create transform for v-model ( #146 )
2019-10-10 10:33:58 -04:00
二当家的
99bdc5a8c8
chore: correct typo ( #188 )
2019-10-10 10:26:13 -04:00
Evan You
2967745e7b
refactor: use early return style in v-for
2019-10-09 22:31:27 -04:00
Evan You
93c6aa4c90
feat: v-once
...
Note: only compiler transform is tested - integration with runtime
still needs to be tested.
2019-10-09 17:32:58 -04:00
Evan You
5dfb271551
feat(compiler): implement support for v-pre
2019-10-09 16:00:08 -04:00
Evan You
b255f42ab3
types: fix error inference for public compile method
2019-10-09 11:30:56 -04:00
Evan You
f91d335e65
feat(compiler): v-text transform + move dom-specific errros codes to compiler-dom
2019-10-09 11:13:13 -04:00
Rahul Kadyan
19c65a61ea
refactor(compiler-core): use directive name in error code identifier ( #163 )
2019-10-09 10:27:24 -04:00
Evan You
0615cf0108
refactor(compiler): flush transform onExit in reverse
2019-10-08 16:53:26 -04:00
Evan You
e8ee163fdd
chore: remove unnecessary type cast
2019-10-08 15:58:35 -04:00
Evan You
eadcaead37
feat(compiler-dom): transform for v-html
2019-10-08 15:35:57 -04:00
Evan You
8da5b007b1
types: improve typing
2019-10-08 12:43:13 -04:00
Evan You
b68eb229c7
types: move scopeIds into PrefixMeta
2019-10-08 12:09:22 -04:00
Evan You
f15528350e
test: test expression transform for reserved literals
2019-10-08 11:27:48 -04:00
Evan You
b4d375b0b8
fix(compiler): should not prefix reserved literals ( close #142 )
2019-10-08 11:25:38 -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
802ecccc49
refactor: give runtimeHelper symbols more readable names during dev
2019-10-07 13:32:29 -04:00
Evan You
3146e6b942
fix(compiler/v-if): avoid incorrect transform application on v-else/else-if branch children
2019-10-07 12:48:43 -04:00
Evan You
c4f9b6d592
test: fix import
2019-10-05 23:20:02 -04:00