profile
viewpoint
宋铄运 fnlctrl @vuejs Zhejiang University http://fnlctrl.xyz/resume Web Developer, UI Designer

fnlctrl/NewTide 5

水朝夕线上杂志 (http://tide.zjuqsc.com/)

fnlctrl/ZJUYFF-2014 3

浙江大学第二届青年电影节网站

zenozeng/gsoc2015 3

My Proposals and Logs for Google Summer of Code 2015

fnlctrl/crx-hotreload 1

Chrome Extension Hot Reloader

HetongWang/ZJUYFF 1

ZJU youth film festival

posva/path-rank-tester 1

🛣 A Vue Router path debugger

fnlctrl/babel 0

:tropical_fish: Babel is a compiler for writing next generation JavaScript.

push eventfnlctrl/vue-next

Evan You

commit sha 78c4f321cd0902a117c599ac705dda294fa198ed

fix(compiler-core): only check is prop on `<component>`

view details

Evan You

commit sha 34e61197c705ccbd55368acc59621fd99d1e4446

refactor(compiler-core): improve template type handling

view details

Evan You

commit sha efbbd19b3d067a3a4981a361d58574adbe972ddd

wip(ssr): initial scaffold for compiler-ssr

view details

Evan You

commit sha 5dc374a8613d397fac09b757034ff271c1b7420f

chore: remove stale file

view details

push time in 19 days

push eventfnlctrl/vue-next

Evan You

commit sha 842b368097faa1758bae7789472a2ee5bc97ceca

chore: use more representative size check code

view details

Evan You

commit sha 5c2fe536dcb0080500cb05798e7de1628a494094

refactor(ssr): adjust renderToString implementation

view details

Evan You

commit sha c02e7bc7d6ded4eb90485c860bdc3ea1438300e4

wip(ssr): should apply app context when rendering app instance

view details

Gabriel Loiácono

commit sha c08816917007c2da0962287baee8cfe54928a819

style(compiler-core): while/expression instead of while/true (#680)

view details

dependabot-preview[bot]

commit sha 3604376bb448f64613956a44142daff6d6ac7d20

build(deps-dev): bump rollup from 1.30.1 to 1.31.0 Bumps [rollup](https://github.com/rollup/rollup) from 1.30.1 to 1.31.0. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.30.1...v1.31.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 87e8c8094f957ee514dfd614993443f74a59eab1

workflow: add version of template-explorer using local deps

view details

Evan You

commit sha 04da2a82e8fbde2b60b2392bc4bdcc5e61113202

feat(compiler-core): support mode: cjs in codegen

view details

Evan You

commit sha f503167fb7a08c56e875332ec20f4e24df248491

test: fix snapshots

view details

Evan You

commit sha bd9b690a51f9242a2f553e5c5f868c1b89795575

chore: rmeove unused export

view details

Evan You

commit sha 74cb207c2296c9865ba42e1539077f4bb68929f0

chore: use correct import path for vCloak

view details

push time in 20 days

push eventfnlctrl/vue-next

dependabot-preview[bot]

commit sha 963c71a7ed8bd4f2ff913dcccdc47acb64fbb506

build(deps-dev): bump @types/jest from 24.9.0 to 24.9.1 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 24.9.0 to 24.9.1. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 48152bc88ea817ae23e2987dce99d64b426366c1

fix(runtime-dom): should not access document in non-browser env fix #657

view details

Evan You

commit sha 2837ce842856d51dfbb55e3fa4a36a352446fb54

fix(v-model/emit): update:camelCase events should trigger kebab case equivalent close #656

view details

dependabot-preview[bot]

commit sha 70e730fd197f105139365e120ad424b8f9230aee

build(deps-dev): bump rollup from 1.29.1 to 1.30.0 Bumps [rollup](https://github.com/rollup/rollup) from 1.29.1 to 1.30.0. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.29.1...v1.30.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha eacd3909928fcd84e1f99d2e4bbee95a8edc79e2

chore: scaffold ssr compiler

view details

Evan You

commit sha c07751fd3605f301dc0f02fd2a48acc7ba7a0397

refactor: adjust `createApp` related API signatures BREAKING CHANGE: `createApp` API has been adjusted. - `createApp()` now accepts the root component, and optionally a props object to pass to the root component. - `app.mount()` now accepts a single argument (the root container) - `app.unmount()` no longer requires arguments. New behavior looks like the following: ``` js const app = createApp(RootComponent) app.mount('#app') app.unmount() ```

view details

Evan You

commit sha da255173778860f92ed7985f8cf472147bc15c20

wip(ssr): initial work on server-renderer

view details

Evan You

commit sha cee36ad0288e1947f54ce0b25b4e04dc7eed5b60

wip(ssr): render real components

view details

Evan You

commit sha 25a0d4a65ff8d5c9dec85dd454c9355421e88db6

wip(ssr): reduce reactivity overhead during ssr

view details

Evan You

commit sha 8c892e03925884bf4ff5b201e98cf029cd48c182

test: fix dts tests for 1ccecc0

view details

Evan You

commit sha 297282a81259289bfed207d0c9393337aea70117

perf(ssr): avoid unnecessary async overhead

view details

Evan You

commit sha 4e40d0d7c84cfe01066c673ecc42d4b4a39273df

chore: fix ssr compiler version

view details

Evan You

commit sha 066ba82c7f245c507cdf2f5085daf8f2164fa575

wip(ssr): escape helpers

view details

Evan You

commit sha e43f5935b5eb282376357b33fd4561df863eb67c

refactor: better variable naming

view details

Evan You

commit sha 2884831065e16ccf5bd3ae1ee95116803ee3b18c

fix(runtime-core): instance should not expose non-declared props

view details

Evan You

commit sha cc47ae0118d269e1710c71eba4c0795c34958b1e

test: update snapshots for toDisplayString

view details

Evan You

commit sha 763faac18268ad98bca5e3cb36e209c03e566d45

wip(ssr): revert reactivity ssr paths The perf gains are not worth the correctness issues these paths may lead to

view details

Evan You

commit sha 6b10f0cd1da942c1d96746672b5f595df7d125b5

refactor: remove implicit reactive() call on renderContext reference: https://github.com/vuejs/rfcs/issues/121 BREAKING CHANGE: object returned from `setup()` are no longer implicitly passed to `reactive()`. The renderContext is the object returned by `setup()` (or a new object if no setup() is present). Before this change, it was implicitly passed to `reactive()` for ref unwrapping. But this has the side effect of unnecessary deep reactive conversion on properties that should not be made reactive (e.g. computed return values and injected non-reactive objects), and can lead to performance issues. This change removes the `reactive()` call and instead performs a shallow ref unwrapping at the render proxy level. The breaking part is when the user returns an object with a plain property from `setup()`, e.g. `return { count: 0 }`, this property will no longer trigger updates when mutated by a in-template event handler. Instead, explicit refs are required. This also means that any objects not explicitly made reactive in `setup()` will remain non-reactive. This can be desirable when exposing heavy external stateful objects on `this`.

view details

Evan You

commit sha ccc3312113165213f64ffeef137728d2f2509ce1

chore: add compiler-ssr to skipped packages for now

view details

Evan You

commit sha d293876c347684d2f4030a4ec6a7991b4b5df942

release: v3.0.0-alpha.4

view details

push time in 22 days

push eventfnlctrl/vue-next

dependabot-preview[bot]

commit sha 95a8beb787e6936e6555a9fcf66a1a1545802b59

build(deps-dev): bump @microsoft/api-extractor from 7.7.5 to 7.7.6 Bumps [@microsoft/api-extractor](https://github.com/microsoft/rushstack) from 7.7.5 to 7.7.6. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/compare/@microsoft/api-extractor_v7.7.5...@microsoft/api-extractor_v7.7.6) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 2569890e31c84146b3fa1e7503e3f5e9ca466c3a

refactor: move mockWarn utility to @vue/shared close #652

view details

likui

commit sha ec63623fe8d395e1cd759f27b90b1ccc1b616931

fix: Suspense should include into dynamic children (#653) fix #649

view details

Evan You

commit sha 0b992307a6113d8b87cb7406b61138dc05ef1f4a

build: adjust release tag

view details

Evan You

commit sha b41677bf42a91a1c039e6ce352d303339d533459

release: v3.0.0-alpha.3

view details

Evan You

commit sha 52e4ac072765b018837c5ba9781a27a467bf6956

chore: fix changelog formatting [ci skip]

view details

dependabot-preview[bot]

commit sha 3919c7840d80d970cc443fc88c82323585fc1794

build(deps-dev): bump @microsoft/api-extractor from 7.7.6 to 7.7.7 Bumps [@microsoft/api-extractor](https://github.com/microsoft/rushstack) from 7.7.6 to 7.7.7. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/compare/@microsoft/api-extractor_v7.7.6...@microsoft/api-extractor_v7.7.7) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha aefb7d282ed716923ca1a288a63a83a94af87ebc

fix(reactivity): Array methods relying on identity should work with raw values

view details

push time in a month

push eventfnlctrl/vue-next

Evan You

commit sha 7cab6ccceb39e45470c0095150914c598ef4161d

chore: add issue template [ci skip]

view details

Evan You

commit sha b518f9d4e359175e96e85fec7611f92ef21a6fce

build: changelog generation

view details

Evan You

commit sha 9351264affb54950331e7b18f0e1dba9d259a183

build: fix skipped package check

view details

Evan You

commit sha 5c4833e204ca0b73b9742c59b2d097c5f02d6ca5

build: generate changelog during release

view details

Evan You

commit sha cee536360e4a31c6706af9ae12a9fae25ed7bd83

types: fix compiler-dom rolled up dts

view details

Evan You

commit sha 1bb1271b5e78cc4b446ce363de73e68db74a6c89

release: v3.0.0-alpha.1

view details

Evan You

commit sha 15cccad09f1b834c7c130cdf4895f14e8e1cce15

build(release): only log actually publisehd packages

view details

Evan You

commit sha 7770d6d034e915b480e8992cd519af9684313c2a

chore: update readme [ci skip]

view details

dependabot-preview[bot]

commit sha 46a793717a13b89b31a93053cb083589273619ba

build(deps-dev): bump rollup from 1.27.14 to 1.28.0 Bumps [rollup](https://github.com/rollup/rollup) from 1.27.14 to 1.28.0. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.14...v1.28.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 137893a4fdd3d2b901adca31e30d916df925b108

fix(compiler/v-on): handle multiple statements in v-on handler (close #572)

view details

Evan You

commit sha 84dc5a686275528733977ea1570e0a892ba3e177

fix(runtime-core/vnode): should not render boolean values in vnode children (close #574)

view details

Evan You

commit sha 8aca71b3543f06d8d57d07992422a96932d66a70

build: adjust release tag for alpha/beta phase

view details

Evan You

commit sha bb6a346996ce0bf05596c605ba5ddbe0743ef84b

fix(runtime-core): should preserve props casing when component has no declared props close #583

view details

Evan You

commit sha 2ac4b723e010082488b5be64af73e41c9677a28d

fix(compiler/v-slot): handle implicit default slot mixed with named slots

view details

Carlos Rodrigues

commit sha 985f4c91d9d3f47e1314d230c249b3faf79c6b90

types: improve isRef typing (#578)

view details

Yu Zong

commit sha 54bb820f73062214e361d900cb11f2dbb90e8c1e

types: update jsx support (#587)

view details

Turtuvshin Byambaa

commit sha 7c90aa55394c8cd3097081088333cf268f445f25

chore: fix typo in contributing guide (#589)

view details

dependabot-preview[bot]

commit sha 6e39bcd8e8beac4994ead4917f85aa0e531a7f39

build(deps-dev): bump ts-jest from 24.2.0 to 24.3.0 Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 24.2.0 to 24.3.0. - [Release notes](https://github.com/kulshekhar/ts-jest/releases) - [Changelog](https://github.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md) - [Commits](https://github.com/kulshekhar/ts-jest/compare/v24.2.0...v24.3.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Jason Yu

commit sha c9bb346941f25de9dbab013513f132880218316f

chore: update README.md (#592) [ci skip]

view details

dependabot-preview[bot]

commit sha 507b9ed3b31b3139fe75a0ea057b23de2af3884f

build(deps-dev): bump @microsoft/api-extractor from 7.7.0 to 7.7.1 Bumps [@microsoft/api-extractor](https://github.com/microsoft/rushstack) from 7.7.0 to 7.7.1. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/commits) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

push time in a month

push eventfnlctrl/vue-next

Evan You

commit sha 59c595c1e897c0addff6306260c344be09a7537c

refactor: use named export for compiled render function

view details

Evan You

commit sha 7df5e70c83378ba23d4359693a7a6a72a4e1d18c

types: accept defineComponent return types in app.mount

view details

Yingya Zhang

commit sha 08de7f1085702beadfc213df47a31c8b4af82924

chore: fix typo jest moduleNameMapper (#566)

view details

dependabot-preview[bot]

commit sha f8b7ad5a775917da6355322e85bf9a7d3b05fdc7

build(deps-dev): bump @types/jest from 24.0.24 to 24.0.25 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 24.0.24 to 24.0.25. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Yang Mingshan

commit sha 3980ad65de0e637fe45e3fdfec43a4fdef8e4d39

types: exports watch api types (#562)

view details

Yingya Zhang

commit sha 9996d7acbc9024175005e71d9ba543d51019859a

chore: fix typo api.json (#565) [ci skip]

view details

djy0

commit sha ad2a0bde988de743d4abc62b681b6a4888545a51

perf(compiler-core): simplify `advancePositionWithMutation` (#564)

view details

likui

commit sha a7ef59c4c3b4dc0aa1e17a3b983258bb7cd66de3

test(vnode): add test for dynamic children (#563)

view details

susiwen8

commit sha dee54803177bcb4e1e230e8efc855a170880cdea

chore: use Boolean to filter TemplateChildNode (#569)

view details

dependabot-preview[bot]

commit sha 5ec05f09cae8a7cc946057834aae5b33cfaba590

build(deps): [security] bump handlebars from 4.1.2 to 4.5.3 (#567) Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.1.2 to 4.5.3. **This update includes a security fix.** - [Release notes](https://github.com/wycats/handlebars.js/releases) - [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md) - [Commits](https://github.com/wycats/handlebars.js/compare/v4.1.2...v4.5.3) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Elad Frizi

commit sha 1cf1ad5e94e7c5c23ea81ae9535e82c800a6ceb7

test(reactivity): extracted repetitive assertions (#554)

view details

Evan You

commit sha bfb0ad5a5e9b0b91d9436e43cb67388de47c7dbc

types: refactor watcher types naming

view details

push time in 2 months

push eventfnlctrl/vue-next

宋铄运

commit sha 4d20981eb069b20e1627916b977aedb2d68eca86

fix(runtime-core): pass options to plugins (#561)

view details

push time in 2 months

delete branch fnlctrl/vue-next

delete branch : plugin-options

delete time in 2 months

Pull request review commentvuejs/vue-next

fix(runtime-core): pass options to plugins

 export function createAppAPI<HostNode, HostElement>(         }       }, -      use(plugin: Plugin) {+      use(plugin: Plugin, ...options: any[]) {         if (installedPlugins.has(plugin)) {           __DEV__ && warn(`Plugin has already been applied to target app.`)         } else if (isFunction(plugin)) {           installedPlugins.add(plugin)-          plugin(app)+          plugin(app, ...options)

should we use arguments to avoid overhead of transpiled code?

fnlctrl

comment created time in 2 months

PR opened vuejs/vue-next

fix(runtime-core): pass options to plugins
+7 -7

0 comment

2 changed files

pr created time in 2 months

create barnchfnlctrl/vue-next

branch : plugin-options

created branch time in 2 months

startedposva/pinia

started time in 2 months

push eventfnlctrl/vue-next

Chris Fritz

commit sha 1c4cdd841daa2ba9c1ec35068c92f1ae776cacea

refactor(createComponent): rename to defineComponent (#549)

view details

Evan You

commit sha c9b9ae394183758a12e4a05be42d1927d9af7b56

refactor: rename apiApp.ts -> apiCreateApp.ts

view details

Evan You

commit sha c3e1c812e31a6943100177be730e2d8c369f1990

build: warn invalid format in build script

view details

Evan You

commit sha eda495efd824f17095728a4d2a6db85ca874e5ca

feat(hmr): root instance reload

view details

Evan You

commit sha 47a6a846311203fa59584486265f5da387afa51d

fix(core): clone mounted hoisted vnodes on patch ...since they may need to be checked as fragment child

view details

Evan You

commit sha 2fdb499bd96b4d1a8a7a1964d59e8dc5dacd9d22

fix(fragment): perform direct remove when removing fragments This avoids trying to grab .el from hoisted child nodes (which can be created by another instance), and also skips transition check since fragment children cannot have transitions.

view details

Evan You

commit sha 7d436ab59a30562a049e199ae579df7ac8066829

fix: mounting new children

view details

Evan You

commit sha 90ddb7c26001ecfdd5cb8cd70d55708cd0aa391b

refactor: expose parse in compiler-dom, improve sfc parse error handling

view details

Evan You

commit sha d6275a3c310e6e9426f897afe35ff6cdb125c023

fix(sfc): treat custom block content as raw text

view details

dependabot-preview[bot]

commit sha e128f673913c819a962b9f16e6a35e016f1f288f

build(deps-dev): bump rollup from 1.27.13 to 1.27.14 Bumps [rollup](https://github.com/rollup/rollup) from 1.27.13 to 1.27.14. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.13...v1.27.14) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha f601f87dad718f5e07be4ea98ba565dd79f4abe4

build(deps-dev): bump typescript from 3.7.3 to 3.7.4 Bumps [typescript](https://github.com/Microsoft/TypeScript) from 3.7.3 to 3.7.4. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/commits) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 51764d3195eff3469394e015cd3caadceca087d0

chore: more details on build formats [ci skip]

view details

Evan You

commit sha 6614f21bf41dd3fae07deeff7aac04c2d1c30592

chore: further edit formats and include it in vue package readme [ci skip]

view details

Evan You

commit sha 80f8b461771f9696c4a110e2103d29d2998d4282

ci: skip e2e tests on netlify coverage builds

view details

dependabot-preview[bot]

commit sha 7eb46dbd86b62565191b9b5f9d75ed941c296f78

build(deps-dev): bump @rollup/plugin-replace from 2.2.1 to 2.3.0 Bumps [@rollup/plugin-replace](https://github.com/rollup/plugins) from 2.2.1 to 2.3.0. - [Release notes](https://github.com/rollup/plugins/releases) - [Commits](https://github.com/rollup/plugins/compare/replace-v2.2.1...replace-v2.3.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha 6a14542f782468bc123b35c35c8fc118b759215f

build(deps-dev): bump @rollup/plugin-json from 4.0.0 to 4.0.1 (#558) Bumps [@rollup/plugin-json](https://github.com/rollup/plugins) from 4.0.0 to 4.0.1. - [Release notes](https://github.com/rollup/plugins/releases) - [Commits](https://github.com/rollup/plugins/compare/url-v4.0.0...json-v4.0.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

push time in 2 months

issue commentDevExpress/testcafe-hammerhead

All event handlers are cleaned after the document.open function call

🎉 🎉 🎉 🎉 🎉

fnlctrl

comment created time in 2 months

push eventfnlctrl/vue-next

dependabot-preview[bot]

commit sha 94ba8475ebb7c40357ec906d60fde2d64630a22d

build(deps-dev): bump rollup from 1.27.9 to 1.27.11 Bumps [rollup](https://github.com/rollup/rollup) from 1.27.9 to 1.27.11. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.9...v1.27.11) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha 20ea67c8343143fbeb0609472fefedae7472fd16

build(deps-dev): bump rollup-plugin-terser from 5.1.2 to 5.1.3 Bumps [rollup-plugin-terser](https://github.com/TrySound/rollup-plugin-terser) from 5.1.2 to 5.1.3. - [Release notes](https://github.com/TrySound/rollup-plugin-terser/releases) - [Commits](https://github.com/TrySound/rollup-plugin-terser/compare/v5.1.2...v5.1.3) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 3de7315b7aba61f25db14f45d848076290c84fb5

types: use RawSourceMap types

view details

Evan You

commit sha 5658f8b6789e7d68c81bed9c31d5aea4957743a6

feat(compiler): expose generateCodeFrame

view details

Evan You

commit sha 3116b5d6c3628c88a290c487bc0a21c63689c606

fix(runtime-core): initialize renderCache if not present

view details

Evan You

commit sha efe39db023dcd4bad5692031d2be0d0e6a0c1853

feat(runtime-core): hot module replacement

view details

Evan You

commit sha ef50c333ce0d6b48dfc9e1f1219f26d6f2406e76

fix(core): generate fragment root with patchFlag + optimize fragment w/ patchFlag

view details

Evan You

commit sha f77ae132e5a94a279b1cccb87061603fda42e2aa

feat(hmr): reload and force slot update on re-render

view details

Evan You

commit sha 8ffd79c75402d73280dc3bc948599a8d7416676e

fix(compiler-core): handle template root and template v-if as stable fragments

view details

Evan You

commit sha c36941c4987c38c5a92a1ae0d554dbf746177e71

fix(compiler-core): should apply text transform to <template v-for> children

view details

Evan You

commit sha 4e91b1328dda38e342b9dd0794ee1483ad2a7002

chore: add package dependency graph

view details

Evan You

commit sha 2c3c65772b628fc4013b5d777be41b0fe1d515ce

perf: optimize props resolution Store the keys for props that need default or boolean casting during normalization, so that later we only need to iterate through this array instead of the entire props object.

view details

Evan You

commit sha 7431c2e46e4d5c94632a34a6ff44ef0dd4f4ef8b

fix(runtime-core): ensure $forceUpdate behavior consistency with 2.x

view details

dependabot-preview[bot]

commit sha 6a50d125f6f369bb77175cb91e8ca7a3f60d7498

build(deps-dev): bump rollup from 1.27.11 to 1.27.12 Bumps [rollup](https://github.com/rollup/rollup) from 1.27.11 to 1.27.12. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.11...v1.27.12) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Cr

commit sha 6797e3570392f70aaac165a5aafa8991de88773c

chore: fix typos (#541)

view details

Evan You

commit sha fa5390fb6fae4a4f7f6ffa2c0823fd3c48099d41

fix(fragment): properly remove compiler generated fragments

view details

Evan You

commit sha a0ee4fbc36fa202035d1ac4f2c21ef4541025a2f

types: use more specific type names

view details

Evan You

commit sha 8277d131c470f337b9febd6cef43b914f5ced8a4

refactor(compiler): downgrade to source-map v6 for sync API

view details

Evan You

commit sha 9e757b5cc5baab30842ab314ee20d728b466cdbc

refactor(compiler-core): move compile into separate file

view details

Evan You

commit sha 865c1ce9ee9f884242f35e9f6591b510ac0063a7

feat(compiler-sfc): generate source map for template block

view details

push time in 2 months

push eventfnlctrl/vue-next

CodinCat

commit sha 532d3b68abecb86d4d45605b02434cbe96133388

test(e2e): add e2e test for markdown example (#533)

view details

宋铄运

commit sha 559fa27185e72a7687eed4d8ad5529002489a446

test(compiler-sfc): more tests (#536)

view details

Evan You

commit sha d3d4fe84cdc3f93838acb5d657d60672182a2f18

fix(vue): properly cache runtime compilation

view details

Evan You

commit sha 2a994094de6e16a1b7a7e6fd1678e26880c3a101

test: ignore size-check in coverage

view details

CodinCat

commit sha f48a4f71a7315c048ef90ba2fe2c261cf2eea34d

test(e2e): add e2e test for commits example (#526) * test(e2e): add e2e test for commits example * test(e2e): add waitForResponse to enhance the test * test(e2e): use mocks for commits test

view details

Evan You

commit sha c202bd6ac0c76f65b70ef4161a1f21252ab1332b

test(e2e): use better mocking strategy for commits example

view details

Evan You

commit sha 4d730f464d0a361a149d20838e8cd9aa6ddebb15

refactor: move runtime compile error handling to vue

view details

Evan You

commit sha b983c685755774f7b9c89264841c3029647fe7cc

test(e2e): avoid relying on CDN + reduce debounce delay

view details

Evan You

commit sha 5ecc77df5a94166f22d83502ba2cb158e9b0f7c7

chore: fix missed save

view details

push time in 2 months

delete branch fnlctrl/vue-next

delete branch : sfc-tmpl-coverage

delete time in 2 months

Pull request review commentvuejs/vue-next

test(compiler-sfc): more tests for compileTemplate

 export function compileTemplate(   const preprocessor =     preprocessLang && consolidate[preprocessLang as keyof typeof consolidate]   if (preprocessor) {-    return doCompileTemplate({-      ...options,-      source: preprocess(options, preprocessor)-    })+    try {+      return doCompileTemplate({+        ...options,+        source: preprocess(options, preprocessor)+      })+    } catch (e) {+      return {+        code: `export default function render() {}`,+        source: options.source,+        tips: [],+        errors: [e]+      }+    }

Added a try-catch for preprocess, not sure if it was intended to not be try-cached in component-compiler-utils.

The error from a preprocessor is arbitrary - should we keep it as-is, coerce to string, or try to normalize it?

fnlctrl

comment created time in 2 months

PR opened vuejs/vue-next

test(compiler-sfc): more tests for compileTemplate

100% coverage image

+107 -6

0 comment

3 changed files

pr created time in 2 months

create barnchfnlctrl/vue-next

branch : sfc-tmpl-coverage

created branch time in 2 months

push eventfnlctrl/vue-next

Evan You

commit sha cd5ba7cfcc5bc56392c293422188225cf42b9062

build: remove lerna

view details

Evan You

commit sha 8ed04ed5036a07567d7e5b5eb52b2f7b5807b03b

build: release script

view details

Evan You

commit sha 136ab753b3e6ebad913ddb04b5618e46586368ff

build: adjust esm formats

view details

Evan You

commit sha 818bf17cb710f5a881bc34378e02333c3232482d

feat(compiler-sfc): use @vue/compiler-dom by default

view details

push time in 2 months

push eventfnlctrl/vue-next

Evan You

commit sha c97d83aff2d90a6b47c7b29dfe5e28a6954380fe

refactor(runtime-core): tweak component proxy implementation

view details

Evan You

commit sha b198a665cf5ae76ea1a4349c133e33e31fed3348

workflow: add size-check package

view details

宋铄运

commit sha 0a14c04c81edd0706f5030a1f4cb9db6095a56ef

feat(compiler-sfc): compile template WIP (#534)

view details

Evan You

commit sha c8c5b16ef7f977cf4038e3390a0b2652b6e03d99

feat(compiler-sfc): properly pass on options

view details

Evan You

commit sha 03301b264e8ef592cac15ee372d658ba21eaeb5b

workflow(template-explorer): fix cacheHandlers disabled state

view details

Evan You

commit sha 5cd1495767e0917453036046e897b9e83f562bf2

refactor(compiler-core): centralize compiler options

view details

Evan You

commit sha 95b2cb6fd26790f3f371c8475e9fdc4b3f2ee02d

fix(compiler-core): should only parse interpolations in DATA text mode

view details

Evan You

commit sha 3e3188fa9fa614b36f4c0f7e543b486a4b157305

refactor: adjust sfc compiler options

view details

Evan You

commit sha 7aca27392f1f3f43091f9a6092dbb56a15ecc9ea

build: no need for alias in rollup config

view details

push time in 2 months

delete branch fnlctrl/vue-next

delete branch : sfc-tmpl

delete time in 2 months

PR opened vuejs/vue-next

feat(compiler-sfc): compile template

Basically a port of the current component-compiler-utils, though drastically simplified due to new architecture (though there could be something that I didn't get right...).

+166 -3

0 comment

3 changed files

pr created time in 2 months

create barnchfnlctrl/vue-next

branch : sfc-tmpl

created branch time in 2 months

push eventfnlctrl/vue-next

dependabot-preview[bot]

commit sha 9b66c527a1dc7d465d8b2701331147a93ccf823c

build(deps-dev): bump rollup from 1.27.8 to 1.27.9 Bumps [rollup](https://github.com/rollup/rollup) from 1.27.8 to 1.27.9. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.27.8...v1.27.9) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha 0c59cf89f364fe7c361ce221f9320fdc5b12934d

build(deps): bump postcss from 7.0.23 to 7.0.24 (#531) Bumps [postcss](https://github.com/postcss/postcss) from 7.0.23 to 7.0.24. - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/master/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/7.0.23...7.0.24) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha 83428fb84452a684b937fec0cb26517aa13563af

chore: update readme

view details

Evan You

commit sha c53fae987d5b7980b7df48305e36f2c0ddf6c8a8

feat(runtime-core): warn incorrect root props value (close #375)

view details

Cédric Exbrayat

commit sha 65bfe0130c6da2c29d0a7ef1dbee354d5d84990c

chore: fix grid composition example (#519) [ci skip] Commit 27a72bd8f150be956a7931b64590cf3867bb4803 fixed the example but introduced a useless import.

view details

CodinCat

commit sha 9b5c4a2ec1790ca06eacd38530ebc9fef850f800

chore: fix debounce of markdown example (#525) [ci skip]

view details

Pocho

commit sha 55e234816ee31891b755d4a28ceb5aca6f396eb6

types(compiler-sfc): use specific preprocessLang instead of string (#528)

view details

CodinCat

commit sha 12ec62e6881f83dfa6c7f8a3c3650ec2567e6b1e

test(e2e): add e2e test for tree example (#529)

view details

Evan You

commit sha e7e1314cccd1a66fcf8b8526ec21350ec16cc3ad

test: fix warning

view details

GCA

commit sha 2383b45e322272ddc102d6914c149b284a25d04f

chore: fix typo (#530) [ci skip]

view details

Haoqun Jiang

commit sha d1527fbee422c7170e56845e55b49c4fd6de72a7

test: add test for runtime-dom/modules/class (#75)

view details

push time in 2 months

issue commentprotobufjs/protobuf.js

pbts does not work with Node 12.0

I'm running node v12.13.0 on mac and everything is working fine for pbjs/pbts.

thomastoye

comment created time in 2 months

push eventfnlctrl/vue-next

dependabot-preview[bot]

commit sha d89eabf29efdfe86b19851b99215ffbe6a072651

build(deps-dev): bump lerna from 3.18.2 to 3.18.3 Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.18.2 to 3.18.3. - [Release notes](https://github.com/lerna/lerna/releases) - [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md) - [Commits](https://github.com/lerna/lerna/commits/v3.18.3/core/lerna) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha fad691de9d33738cc940b5a6eebbee7d3ccdab94

build(deps-dev): bump rollup from 1.25.1 to 1.25.2 Bumps [rollup](https://github.com/rollup/rollup) from 1.25.1 to 1.25.2. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.25.1...v1.25.2) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

likui

commit sha e34d2bd853ec893c45616a4c5c0e8ee2aebde222

types: improve slots type (#366)

view details

edison

commit sha 9dcbf17f3af18d8e10e01a71003c6de8d87b812c

perf(runtime-core): use `makeMap` instead of `RE` (#350)

view details

大江东去

commit sha 7cd1b7fcaf43a93d637f74ba724bf34549bdca27

test(compiler-dom): test namespace parsing (#356)

view details

Evan You

commit sha 113339c7b600a62cfcc703c6b1f6af646653b05b

fix(compiler-dom): style transform of static styles should not add STYLE patchFlag

view details

Evan You

commit sha 09c248ae87ac4f5720e8541ab1d4c0926e2dca65

chore: fix snapshot

view details

Cr

commit sha 246cad74598f12f9466e9222730636bb41382ed6

fix(reactivity): Map.set should trigger when adding new entry with undefined value (#364)

view details

wangtao0101

commit sha 11d0778f9c6e0002af17e1e8d985245f510dc1d1

workflow: support debug single jest test file in vscode (#360)

view details

Mayness

commit sha 18a349ce8c26d04ccd980938d87964ab2c5771e3

fix(reactivity): account for NaN in value change checks (#361)

view details

Dmitry Sharshakov

commit sha 3b613cbecd8e817d0882eb8bc2411f5b082fcde7

test(template-refs): add tests for function refs (#359)

view details

Evan You

commit sha 9291011456e98ee1f2ce69f41f09a906d268c260

chore: comments [ci skip]

view details

Evan You

commit sha af5a8e11544ce836d1aa07457a51b59a29101ac4

feat(compiler-core): re-implement v-once to use cache mechanism

view details

Evan You

commit sha e2917fef96554f99a751feb972c4b2793cc734a1

feat(props): kebab -> camel prop case support in full build

view details

Evan You

commit sha 42bf9ca3e5babe6e9bc4967ed2904e7e56023c5b

feat(props): enable case conversion in all builds, preserve casing for attrs

view details

相学长

commit sha abfb2ec8eda080abd17202e445366695140db905

types(reactivity): computed types remove `as` (#367)

view details

Evan You

commit sha f7a7e8d71deeb86fc89810323b4c51ec9ec46b49

refactor(parser): remove ignoreSpaces option

view details

Evan You

commit sha 516501e20ef1db8a4b02f685a090712e807ede9f

chore: remove unused util function

view details

Evan You

commit sha 9298f46f929fff18cf5e2d93b523fd27782225ba

feat(compiler-core): whitespace handling

view details

Evan You

commit sha eb20730a67ce5f0012d05b5ed8aafcc58b7b2c0d

feat(compiler): preserve whitespace in pre tag, add tests

view details

push time in 2 months

delete branch fnlctrl/fabric

delete branch : patch-1

delete time in 3 months

push eventfnlctrl/fabric

宋铄运

commit sha 24d1954e5f5ffd9613c486d3d67b76100b3ba25c

replace http with https in install.rst Signed-off-by: Alan <fnlctrl@gmail.com>

view details

push time in 3 months

PR opened hyperledger/fabric

Reviewers
replace http with https in install.rst

<!--- DELETE MARKDOWN COMMENTS BEFORE SUBMITTING PULL REQUEST. -->

<!--- Provide a descriptive summary of your changes in the Title above. -->

Type of change

<!--- What type of change? Pick one option and delete the others. -->

  • Documentation update

Description

curl and running a bash script from http is way too scary.

I ctrl+c-ed in shock the second I pasted the command into my terminal.

Why was it even http in the first place?

Additional details

<!--- Additional implementation details or comments to reviewers. --> <!--- Summarize how the pull request was tested (if not obvious from commit). -->

Related issues

<!--- Include a link to any associated issues, e.g. Jira issue or approved rfc. -->

<!---

Release Note

If change impacts current users, uncomment Release Note heading and provide release note text. Also, copy release note text into the release specific /release_notes file. -->

<!-- Checklist (DELETE AFTER READING):

  • Signed-off-by added to commits (required for DCO check to pass)
  • Tests have been added/updated (required for bug fixes and features)
  • Unit and/or integration tests pass locally
  • Run linters and checks locally using 'make checks'
  • If change requires documentation updates, make updates in pull request, or open a separate issue and provide link
  • Squash commits into a single commit, unless a stack of commits is intentional to assist reviewers or to preserve review comments.
  • For additional contribution guidelines see the project's CONTRIBUTING.md file -->
+3 -3

0 comment

1 changed file

pr created time in 3 months

push eventfnlctrl/fabric

宋铄运

commit sha 315b7f9f56573cd97a7b5881fe680adf3da06501

replace http with https in install.rst

view details

push time in 3 months

pull request commentvuejs/vue-next

组件上传递的事件会自动绑定到组件内部所有元素上

要等这个rfc最终敲定了才能确定,也有可能有变动。目前的实现是这个行为。

Polaris-z

comment created time in 3 months

pull request commentvuejs/vue-next

组件上传递的事件会自动绑定到组件内部所有元素上

新的attr fallthrough rfc里移除了.native https://github.com/vuejs/rfcs/pull/92

Polaris-z

comment created time in 3 months

push eventfnlctrl/vue-next

Evan You

commit sha 522beaa76650fac794bdb88ac7c7734a4125ba64

chore: upgrade prettier

view details

Evan You

commit sha b5886189ba2c268eda538db07ec37dc59fd67239

types: massive refactor

view details

Evan You

commit sha af57ad110fc04e3abefa5993ea18ba203273ab9c

chore: revert prettier

view details

Evan You

commit sha 590e4e0ba970621b02eec7978564629645cd5aab

chore: fix DebuggerEvent export

view details

push time in 4 months

push eventfnlctrl/vue-next

Evan You

commit sha 869ae19c4194bf74e486157c74ee623bc684af24

fix(compiler): cache handlers should be per-instance, fix hoist w/ cached handlers

view details

Evan You

commit sha 6f9692dcdd83a82dd4ded1de64ed534eec7e3cf6

chore: cache isStaticNode result for missing branch

view details

dependabot-preview[bot]

commit sha 403a37eefa53836943c2a5976b28c0e158c6f546

build(deps-dev): bump rollup-plugin-alias from 2.0.1 to 2.2.0 Bumps [rollup-plugin-alias](https://github.com/frostney/rollup-plugin-alias) from 2.0.1 to 2.2.0. - [Release notes](https://github.com/frostney/rollup-plugin-alias/releases) - [Changelog](https://github.com/rollup/rollup-plugin-alias/blob/master/CHANGELOG.md) - [Commits](https://github.com/frostney/rollup-plugin-alias/compare/v2.0.1...v2.2.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha f757e3d0c80ca898850341ff61b13d9eaf272a5f

build(deps-dev): bump @microsoft/api-extractor from 7.5.0 to 7.5.1 Bumps [@microsoft/api-extractor](https://github.com/microsoft/rushstack) from 7.5.0 to 7.5.1. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/commits) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha 65bd838cb806e019cf70d8d0eb43adf39b5b5f56

build(deps-dev): bump rollup from 1.24.0 to 1.25.1 Bumps [rollup](https://github.com/rollup/rollup) from 1.24.0 to 1.25.1. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.24.0...v1.25.1) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

HcySunYang

commit sha 71f3826f995867ffdcd94cbf0d7e5f4a391ca446

chore: rename & property missing (#335)

view details

Evan You

commit sha 1b9bd6912e6acd683b4c34856faf21c2eea71cc4

perf: v-for fragments do not need to track dynamicChildren

view details

Evan You

commit sha f241c92917621d40245a9c13352cf2ae6768f2c7

chore: remove todo

view details

Dmitry Sharshakov

commit sha 27f3c2d751d50dbc3018cb7dd44b0acd375c9700

chore: fix typo (#339)

view details

HcySunYang

commit sha 920773fc6b082269e5c54a9c44609e6fd7dba5f3

feat(compiler-core): hoist element with static ref (#344)

view details

Evan You

commit sha 4abd8d29ef9baee62d2f5d917b79b0860221fe84

chore: fix merge conflict

view details

Evan You

commit sha 40ccbdeaac3e933fe491e74baf28f0f611a92a88

chore: remove refs from setupContext explicit refs should be preferred

view details

Evan You

commit sha 8be578b6b6886bd0f13bf197fa9778b6cc7dad1e

perf: micro optimizations for vnode creation

view details

Evan You

commit sha 520af9787b54955e2ae883679d241f2013271df8

perf: skip normalizeVNode in optimized mode

view details

Dmitry Sharshakov

commit sha 1f4937c2fdf62c0a1ccf53381179450772dd2f60

types: use RenderFunction type (#342)

view details

Dmitry Sharshakov

commit sha 74d8c5919dacdccc95b6df35cdf3f34afcb62162

types: improve computed types (#343)

view details

Jooger

commit sha 67eb29f63bb736821a317ac73c81fdb01a98c979

refactor(errorHandlling): handle array in callWithAsyncErrorHandling (#332)

view details

likui

commit sha f85ba092cec72e17da10d0eb720ef8197b1607f7

types: improve emit type (#345)

view details

Evan You

commit sha a0d570b16d49a304e550ce3105cd02bfc0b05ea4

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 920773fc6b082269e5c54a9c44609e6fd7dba5f3.

view details

Evan You

commit sha 052febc12799044a002fcf2ef648376b195f845b

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.

view details

push time in 4 months

startedvuejs/composition-api

started time in 4 months

push eventfnlctrl/vue-next

Dmitry Sharshakov

commit sha 39157f7671c61842838959e38d48648e3c646b37

chore: fix ci (#338)

view details

push time in 4 months

push eventfnlctrl/vue-next

Dmitry Sharshakov

commit sha 2238925fbea7a57d5a0e69e39ff00afdfce267db

feat(core): validate directives names (#326)

view details

Stanislav Lashmanov

commit sha 58fcd15000ba0961059e41ae9700f3b03391baab

fix: add missing compiler to the full build on Windows (#333)

view details

扩散性百万甜面包

commit sha 3cd2f7e68edd3db896e0254f3a4006798dcb0ef2

types: fix ref unwrapping when nested inside arrays (#331)

view details

Evan You

commit sha b5194b16bfd7761058c2c8de2e7a49183350cb13

refactor: rename vnode hooks So that they can be used as @vnodeMounted="..." in templates

view details

Dmitry Sharshakov

commit sha 068902abecb41ed91917e749981253a414828eb4

types: fix createComponent type when using simple function (#334)

view details

Evan You

commit sha d69d3bf76540c83cf3a1d39ecf45efc3f82510a8

fix(reactivity): revert to Reflect.get and add test cases

view details

Evan You

commit sha cba34453db0698a4398cd8be55023b8ec7cbb24c

refactor(v-on): avoid empty modifier guard with only key modifier

view details

Evan You

commit sha e98a85f3cbda7e2c34955295f0a353d42bd48f8c

refactor: applyDirectives -> withDirectives

view details

Evan You

commit sha 39ea67a2d20ed329cbfc5796758194bfb8208442

chore: rename v-on guard constants

view details

Evan You

commit sha 58593c47144d8022ef46814bce04687d2585a9d3

feat(v-on): cache handlers

view details

push time in 4 months

startedfluture-js/Fluture

started time in 4 months

push eventfnlctrl/vue-next

宋铄运

commit sha 7f23eaf661555df64464a0f41fc1d77b3d1addde

feat(core): support dynamic component via <component :is> (#320)

view details

edison

commit sha 60961ef5b6bd180fc7483571cfaa9c887d168734

perf(reactivity): optimize the performance of the `canObserve` (#330)

view details

push time in 4 months

delete branch fnlctrl/vue-next

delete branch : component-is

delete time in 4 months

Pull request review commentvuejs/vue-next

feat(compiler-core/runtime-core): dynamic component implementation & tests

 export const transformElement: NodeTransform = (node, context) => {     let patchFlag: number = 0     let runtimeDirectives: DirectiveNode[] | undefined     let dynamicPropNames: string[] | undefined+    let dynamicComponent: string | CallExpression | undefined -    if (isComponent) {+    // handle dynamic component+    const isProp = findProp(node, 'is')+    if (node.tag === 'component') {+      if (isProp) {+        // static <component is="foo" />+        if (isProp.type === NodeTypes.ATTRIBUTE) {+          const tag = isProp.value && isProp.value.content+          if (tag) {+            context.helper(RESOLVE_COMPONENT)+            context.components.add(tag)+            dynamicComponent = toValidAssetId(tag, `component`)+          }+        }+        // dynamic <component :is="asdf" />+        else if (isProp.exp) {+          dynamicComponent = createCallExpression(+            context.helper(RESOLVE_DYNAMIC_COMPONENT),+            [isProp.exp]+          )+        }+      }+    }++    if (isComponent && !dynamicComponent) {       context.helper(RESOLVE_COMPONENT)       context.components.add(node.tag)     }      const args: CallExpression['arguments'] = [-      isComponent-        ? toValidAssetId(node.tag, `component`)-        : node.tagType === ElementTypes.PORTAL-          ? context.helper(PORTAL)-          : node.tagType === ElementTypes.SUSPENSE-            ? context.helper(SUSPENSE)-            : `"${node.tag}"`+      dynamicComponent+        ? dynamicComponent+        : isComponent+          ? toValidAssetId(node.tag, `component`)+          : node.tagType === ElementTypes.PORTAL+            ? context.helper(PORTAL)+            : node.tagType === ElementTypes.SUSPENSE+              ? context.helper(SUSPENSE)+              : `"${node.tag}"`     ]     // props     if (hasProps) {-      const propsBuildResult = buildProps(node, context)+      const propsBuildResult = buildProps(+        node,+        context,+        // skip reserved "is" prop <component is>

hmm Prettier seemed to be ok about that...😂 I'll add a ruler in vscode.

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 2e889495dd426662690fb00350cc817b8dfa2f88

test: add test for resolveDynamicComponent

view details

push time in 4 months

Pull request review commentvuejs/vue-next

feat(compiler-core/runtime-core): dynamic component implementation & tests

 describe('compiler: element transform', () => {       expect(vnodeCall.arguments[3]).toBe(genFlagText(PatchFlags.NEED_PATCH))     })   })++  describe('dynamic component', () => {+    test('static binding', () => {+      const { node, root } = parseWithBind(`<component is="foo" />`)+      expect(root.helpers).not.toContain(RESOLVE_DYNAMIC_COMPONENT)+      expect(node).toMatchObject({+        callee: CREATE_VNODE,+        arguments: ['_component_foo']+      })+    })++    test('dynamic binding', () => {+      const { node, root } = parseWithBind(`<component :is="foo" />`)+      expect(root.helpers).toContain(RESOLVE_DYNAMIC_COMPONENT)+      expect(node.arguments).toMatchObject([+        {+          callee: RESOLVE_DYNAMIC_COMPONENT,+          arguments: [+            {+              type: NodeTypes.SIMPLE_EXPRESSION,+              content: 'foo'+            }+          ]+        }+      ])+    })++    test('empty "is" prop', () => {+      const result = {+        callee: CREATE_VNODE,+        arguments: ['"component"']

removed the test altogether - <component :is /> is now compilation error <component is /> still compiles, but should probably be checked along with key, ref, etc. in a central place.

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

Carlos Rodrigues

commit sha 6c80e139868150800b87a32bf537bb8d0afc8522

chore: typos [ci-skip] (#323)

view details

Evan You

commit sha cdee65aa1b3f0187949a0c186ee6ee78bf0df5c3

perf: revert to _isRef for perf Benchmarking shows checking for a plain property is about 4~5x faster than checking for a Symbol, likely because the Symbol does not fit well into V8's hidden class model.

view details

Evan You

commit sha 4771319a1544afa46920c30e33c02d4fe5fd9561

perf(core): cache property access types on renderProxy

view details

Evan You

commit sha e3b68972d8eacfd89158dff9e496ec90f62da602

perf: minor tweaks

view details

大江东去

commit sha bb9dca204712cf4d9ff60dff36c4e53d1863336c

test(compiler-core): add test for custom delimiter (#315)

view details

Dmitry Sharshakov

commit sha 7305f693b18f8916cc193e70d10d262389bfc0fb

refactor(runtime-core): extract promise check into shared (#325)

view details

Evan You

commit sha d179918001e7bf88b0701ab73f982ca1e7626781

perf: further tweak accessCache

view details

fnlCtrl

commit sha 41ba7ca7a3a901fc72118b84c54035687f2457d7

chore: Merge branch 'master' into component-is

view details

fnlCtrl

commit sha 43e007d127320c79e915940f2536358fa54108bc

feat: refactor

view details

push time in 4 months

push eventfnlctrl/vue-next

Carlos Rodrigues

commit sha 6c80e139868150800b87a32bf537bb8d0afc8522

chore: typos [ci-skip] (#323)

view details

Evan You

commit sha cdee65aa1b3f0187949a0c186ee6ee78bf0df5c3

perf: revert to _isRef for perf Benchmarking shows checking for a plain property is about 4~5x faster than checking for a Symbol, likely because the Symbol does not fit well into V8's hidden class model.

view details

Evan You

commit sha 4771319a1544afa46920c30e33c02d4fe5fd9561

perf(core): cache property access types on renderProxy

view details

Evan You

commit sha e3b68972d8eacfd89158dff9e496ec90f62da602

perf: minor tweaks

view details

大江东去

commit sha bb9dca204712cf4d9ff60dff36c4e53d1863336c

test(compiler-core): add test for custom delimiter (#315)

view details

Dmitry Sharshakov

commit sha 7305f693b18f8916cc193e70d10d262389bfc0fb

refactor(runtime-core): extract promise check into shared (#325)

view details

Evan You

commit sha d179918001e7bf88b0701ab73f982ca1e7626781

perf: further tweak accessCache

view details

push time in 4 months

push eventfnlctrl/vue-next

Ruijia Tang

commit sha 3e51200bae45d911d48b07105cee823881b38df5

chore: Remove unnecessary console.log (#312)

view details

Carlos Rodrigues

commit sha b54c05f75163ea5b70555a46fa1380b64d5a060a

types: improve typing (#313)

view details

xiaoboost

commit sha 32499b16e7d88b0c6f53c6a0e0998e4a40d1c1f3

types: improve typing (#309)

view details

Evan You

commit sha b20b922d9943397bcd9ac33d7bde88caa84e986e

perf(v-for): use faster array population in renderList

view details

Carlos Rodrigues

commit sha 6607edab2da8c03ffd525ef5caaf2dfb3c581de2

refactor(compiler-core): avoid has call (#314)

view details

Evan You

commit sha 6a75c3463b7f7ef669b070051ab231f6abb5bd6f

feat(compiler-core): do not generate TEXT flag if child is constant

view details

Carlos Rodrigues

commit sha 48b79d02e8a7c077eeae40bd94e3383067e54030

perf(runtime-core): use faster diff map population (#319)

view details

Evan You

commit sha 5481f76ce835f29c29d4a5a083e5d8ec1e25b9e7

feat(compiler-core/v-model): avoid patching v-model handler when possible

view details

Evan You

commit sha 25dd507f71b1df065a81e0cb8623674ae672fa71

feat(compiler-core/v-model): error when v-model is used on scope variable

view details

Evan You

commit sha 5e97643c85a67b82c7b61c386e351e5db7dc6729

feat(compiler-core/v-model): generate modelModifiers for component v-model

view details

Evan You

commit sha d69db0b2fd8388cceb87b207292e28753395d323

feat(compiler-core/v-slot): only force dynamic slots when referencing scope vars This feature is only applied with prefixIdentifiers: true.

view details

Evan You

commit sha b980ddb607f12e82b86cffbc96051c8b41f0da8b

perf: skip hasScopeRef check if there are no scope vars

view details

dependabot-preview[bot]

commit sha 0ca4896a388c3b7d0f126b30d981ea8e7ba6b7c2

build(deps-dev): bump lerna from 3.18.0 to 3.18.1 Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.18.0 to 3.18.1. - [Release notes](https://github.com/lerna/lerna/releases) - [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md) - [Commits](https://github.com/lerna/lerna/commits/v3.18.1/core/lerna) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha e97951dd2e9c3d6894d34eb5a2b4f8f0e46f4db4

feat: emit compiler error for invalid JavaScript expressions

view details

Evan You

commit sha 4b2b29efa1d531af6c2a59e73eb0cda3b078aad6

feat(compiler-core): support Suspense in templates

view details

Evan You

commit sha 1722dc05c5840c3ac3cbc7e7c49612a0102dc4d0

fix(runtime-core): handle dynamicChildren when portal is used as a block

view details

fnlCtrl

commit sha f66105b140e28b14f3c6ed876b6f87894d712c37

chore: Merge branch 'master' into component-is

view details

push time in 4 months

push eventfnlctrl/vue-next

Ruijia Tang

commit sha 3e51200bae45d911d48b07105cee823881b38df5

chore: Remove unnecessary console.log (#312)

view details

Carlos Rodrigues

commit sha b54c05f75163ea5b70555a46fa1380b64d5a060a

types: improve typing (#313)

view details

xiaoboost

commit sha 32499b16e7d88b0c6f53c6a0e0998e4a40d1c1f3

types: improve typing (#309)

view details

Evan You

commit sha b20b922d9943397bcd9ac33d7bde88caa84e986e

perf(v-for): use faster array population in renderList

view details

Carlos Rodrigues

commit sha 6607edab2da8c03ffd525ef5caaf2dfb3c581de2

refactor(compiler-core): avoid has call (#314)

view details

Evan You

commit sha 6a75c3463b7f7ef669b070051ab231f6abb5bd6f

feat(compiler-core): do not generate TEXT flag if child is constant

view details

Carlos Rodrigues

commit sha 48b79d02e8a7c077eeae40bd94e3383067e54030

perf(runtime-core): use faster diff map population (#319)

view details

Evan You

commit sha 5481f76ce835f29c29d4a5a083e5d8ec1e25b9e7

feat(compiler-core/v-model): avoid patching v-model handler when possible

view details

Evan You

commit sha 25dd507f71b1df065a81e0cb8623674ae672fa71

feat(compiler-core/v-model): error when v-model is used on scope variable

view details

Evan You

commit sha 5e97643c85a67b82c7b61c386e351e5db7dc6729

feat(compiler-core/v-model): generate modelModifiers for component v-model

view details

Evan You

commit sha d69db0b2fd8388cceb87b207292e28753395d323

feat(compiler-core/v-slot): only force dynamic slots when referencing scope vars This feature is only applied with prefixIdentifiers: true.

view details

Evan You

commit sha b980ddb607f12e82b86cffbc96051c8b41f0da8b

perf: skip hasScopeRef check if there are no scope vars

view details

dependabot-preview[bot]

commit sha 0ca4896a388c3b7d0f126b30d981ea8e7ba6b7c2

build(deps-dev): bump lerna from 3.18.0 to 3.18.1 Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.18.0 to 3.18.1. - [Release notes](https://github.com/lerna/lerna/releases) - [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md) - [Commits](https://github.com/lerna/lerna/commits/v3.18.1/core/lerna) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

Evan You

commit sha e97951dd2e9c3d6894d34eb5a2b4f8f0e46f4db4

feat: emit compiler error for invalid JavaScript expressions

view details

Evan You

commit sha 4b2b29efa1d531af6c2a59e73eb0cda3b078aad6

feat(compiler-core): support Suspense in templates

view details

Evan You

commit sha 1722dc05c5840c3ac3cbc7e7c49612a0102dc4d0

fix(runtime-core): handle dynamicChildren when portal is used as a block

view details

push time in 4 months

Pull request review commentvuejs/vue-next

feat(compiler-core/runtime-core): dynamic component implementation & tests

 describe('compiler: element transform', () => {       expect(vnodeCall.arguments[3]).toBe(genFlagText(PatchFlags.NEED_PATCH))     })   })++  describe('dynamic component', () => {+    test('static binding', () => {+      const { node, root } = parseWithBind(`<component is="foo" />`)+      expect(root.helpers).not.toContain(RESOLVE_DYNAMIC_COMPONENT)+      expect(node).toMatchObject({+        callee: CREATE_VNODE,+        arguments: ['_component_foo']+      })+    })++    test('dynamic binding', () => {+      const { node, root } = parseWithBind(`<component :is="foo" />`)+      expect(root.helpers).toContain(RESOLVE_DYNAMIC_COMPONENT)+      expect(node.arguments).toMatchObject([+        {+          callee: RESOLVE_DYNAMIC_COMPONENT,+          arguments: [+            {+              type: NodeTypes.SIMPLE_EXPRESSION,+              content: 'foo'+            }+          ]+        }+      ])+    })++    test('empty "is" prop', () => {+      const result = {+        callee: CREATE_VNODE,+        arguments: ['"component"']

The arguments I see in template-explorer is "_component_foo"... I may have missed a transform in compiler options.

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha d9096b63425efce68c8b26e0144558b66d3fac19

test: adjust test

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha f0212af21c3887de653bec7b1816c89efee0fc8d

test: fix test

view details

push time in 4 months

create barnchfnlctrl/vue-next

branch : component-is

created branch time in 4 months

push eventfnlctrl/vue-next

夜宴

commit sha 9a37c4b2c307c6c99a96f08b9b28769fe77f71c7

refactor(effect): use includes instead of indexOf (#286)

view details

HcySunYang

commit sha 68a3879b8851bc34344e6466c0eb97319684a398

feat(compiler-core): more hoisting optimizations (#276)

view details

Evan You

commit sha 4cee06ddabfd79ed41fdfd3d45ddf28d10fe735b

refactor(compiler-core): follow up on #276

view details

edison

commit sha b5209277de6cf0a33afe803bfd5eb2fb600a35fe

refactor(reactivity): define hadKey if necessary (#288)

view details

Evan You

commit sha e3b14f5904aea364d61ddb306f87f5012a601a78

chore: comments grammar

view details

Evan You

commit sha eb28d45933c69027cd2d1c7e89ffb414e6bbdc92

ci: check size in CI

view details

Ayush Goyal

commit sha 58fffcb98795fc84ecd0ca27802c513c0b042c75

refactor(core): use makeMap for faster string match checks (#282)

view details

Evan You

commit sha 7de3aee31798e3f2c008d4f3f4f9f25b54142eb7

fix: ensure makeMap calls are tree-shakable

view details

Evan You

commit sha 74d501829cc4c1f685be3b83c1b9694c0b658a40

chore: use webpack-compatible pure annotation

view details

Cr

commit sha 8eba1aba087dccf85c10f29bdf7e78b015012a8b

feat(vModel): warn if v-model is used on file input (#295)

view details

MichealXie

commit sha a3032b9b39bb3838684469b6d8143de669db9ab2

types: use `Omit` instead of `Pick + Exclude` (#296)

view details

Carlos Rodrigues

commit sha 0b2573f3d1de9539372bc15ac447f800937801ca

types(runtime-dom): cast to the correct eventType instead of any (#292)

view details

Adam Lewkowicz

commit sha 555e3be69d39f4b35a312916253d9f38cbcab495

types(watch): allow readonly arrays for watching multiple sources (#281)

view details

HcySunYang

commit sha 3385480ba7a0c1afd12c285b75d6ccc086412dcd

fix(compiler-core): avoid prefixing empty interpolations (#290)

view details

宋铄运

commit sha db5c343c33c099d18419c1559c063f371b44024c

test(runtime-dom): add test coverage for v-on runtime guards, fix "exact" guard (#298)

view details

Ivan Sieder

commit sha b60355d857840af3d7a1d58a7b6c2ea40c8bf0b4

chore: updated error message for not-found fuzzy-matching error (#303)

view details

月迷津渡

commit sha f71bf2f1d39bcf6f6d84467f02b20762245319fb

feat: add isCustomElement option (#299)

view details

dependabot-preview[bot]

commit sha 42589a2841a32c6c4573e78da8b1bd74b98c42e9

build(deps-dev): bump @types/jest from 24.0.18 to 24.0.19 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 24.0.18 to 24.0.19. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha fd713b6a503db24cd599e23153fd92168fe740a7

build(deps-dev): bump lerna from 3.17.0 to 3.18.0 Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.17.0 to 3.18.0. - [Release notes](https://github.com/lerna/lerna/releases) - [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md) - [Commits](https://github.com/lerna/lerna/commits/v3.18.0/core/lerna) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha 11ea3d35d8f8c7d6bcb3b9d6e0acecf0c4e615dd

build(deps-dev): bump rollup from 1.23.1 to 1.24.0 Bumps [rollup](https://github.com/rollup/rollup) from 1.23.1 to 1.24.0. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v1.23.1...v1.24.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

push time in 4 months

delete branch fnlctrl/vue-next

delete branch : v-on-test

delete time in 4 months

Pull request review commentvuejs/vue-next

test(runtime-dom): add test coverage for runtime guards, fix "exact" guard

 const modifierGuards: Record<   left: e => 'button' in e && (e as any).button !== 0,   middle: e => 'button' in e && (e as any).button !== 1,   right: e => 'button' in e && (e as any).button !== 2,-  exact: (e, modifiers) =>-    modifiers!.some(m => systemModifiers.has(m) && (e as any)[`${m}Key`])+  exact: (e, modifiers: string[]) => {+    // todo: replace with makeMap+    let map = modifiers.reduce(+      (map, m) => ((map[m] = true), map),+      Object.create(null)+    )+    // Some of the system modifiers are not specified, but is flagged true on the event

Turns out we have to loop all of the system modifiers like in 2.x (https://github.com/vuejs/vue/blob/dev/src/compiler/codegen/events.js#L131-L138)... If we don't, we can't check for "shiftKey" given modifiers ["a"] or just empty array. This makeMap is only called when event is triggered, so no render perf impact. It's not slow in run time either.

fnlctrl

comment created time in 4 months

create barnchfnlctrl/vue-next

branch : v-on-test

created branch time in 4 months

push eventfnlctrl/vue-next

Jooger

commit sha d8b2b9eb9c5836bef7650f46c0f661bc3c1b0cd3

types(ref): improve UnwrapRef types (#266)

view details

Evan You

commit sha 1c56d1bf19e91731d5e2e4d8f47a76b95bb24255

test: test unwrapping computed refs

view details

Cr

commit sha 6bd26636c39a570942f1f4d38f3549ffc8184eb3

test: add test for resolveAsset (#273)

view details

Evan You

commit sha 6b3ad95fa4bdbea99f2f96404cc0b35f4a691595

fix(watch): type inference for computed refs

view details

fisker Cheung

commit sha 532a248798ae5ec923cb17c765aae81405185ff8

chore: fix yarn lint failure on windows (#278)

view details

fisker Cheung

commit sha c0adcb5669271255d22597488c0af24788238da2

ci: add step name (#279)

view details

Evan You

commit sha 37cbd0098d8545643934dba778d1a1ff22fd1904

chore: lint + include tsx files for lint

view details

terencez

commit sha 4547d85a388ebb0f982a8bc48c66c83aca3cae24

feat(compiler-core): support <portal> in template (#203)

view details

Dmitry Sharshakov

commit sha fd209f5a668ddf4b74cabab60d35c2d6b3d29fea

feat(core): export version (#254)

view details

月迷津渡

commit sha 66023a888633b00ef328d7a7154cf8a9cda527ec

feat: runtime component name validation (#217)

view details

Stanislav Lashmanov

commit sha b4eeb2fa1b1cdd193e3d563f484bfbf68c69c0a3

test(runtime-dom): vModel tests (#255)

view details

Evan You

commit sha 004223ade6ef590ccf45e9eca12f399bcdbd44cc

chore: use consistent type signature

view details

Evan You

commit sha 8df3e0a41e4aaa573cfd2eff3bff4683f718d8a0

refactor: move looseEqual to vModel

view details

Evan You

commit sha 2b3d5b3f967cadf552e57369026bc41f33ba2105

chore: move vModel.spec.ts

view details

Evan You

commit sha 2d6d5d4517e78a1e383f0f9644f05ee721ecb696

chore: move events.spec.ts

view details

Evan You

commit sha bd0bc3b3e64713789344a981da1be7903149d419

build: fix runtimeCompile global injection

view details

Evan You

commit sha c7074c703eec8e67a6eb16f1fc9f77b7fa3939ae

refactor(v-on): do not generate persistent flag when no listener modifier is present

view details

Evan You

commit sha ebaa87dfcb812627efa22f75e458186eb2ce467b

chore: update readme [ci skip]

view details

fisker Cheung

commit sha e5d60a0f7a1dcb2a67fd39266349baec2e654cb2

types: use hook type in options (#284)

view details

fisker Cheung

commit sha 1fbb4d22fa168a44a76e31d3fefcf633d5c4c4bf

chore: use `const` instead of `let` (#283)

view details

push time in 4 months

pull request commentvuejs/vue-next

feat(shared,runtime-core): created `uniq` method for arrays and replace dedupe

The O(n) complexity of indexOf, and total (worst case) complexity O(n^2) of calling indexOf inside filter is hidden by a small input of 6*3.

Try with 100*3 and you'll see the power of O(n^2): https://jsperf.com/dedupe-large-input

image

pikax

comment created time in 4 months

pull request commentvuejs/vue-next

types(runtime-dom): cast to the correct eventType instead of any

replacing as any to the expected event, in my opinion makes more sense. But we're indeed expecting KeyboardEvent | MouseEvent - both are valid usage.

<div @click.ctrl="foo"/>   Ctrl click
<div @keydown.a.ctrl="foo"/>  Ctrl+A

TouchEvent also has ctrlKey, so it's technically valid (though people may not actually use it) If we really want type correctness, these should all be typed.

pikax

comment created time in 4 months

pull request commentvuejs/vue-next

types(runtime-dom): cast to the correct eventType instead of any

I originally wrote these types but then found them to be misleading - It's not going to be just "KeyboardEvent" and there're many other possibilities. For example you can do <div @click.ctrl="foo"/> . So to properly type it we'll need to use something like:

type Events = KeyboardEvent | MouseEvent | TouchEvent
{ ctrl: e => !(e as Events).ctrlKey }

and it's too verbose. And after that I realized users can even do <div @input.ctrl="bar"/> - so I just gave up typing it.

pikax

comment created time in 4 months

push eventfnlctrl/vue-next

herochen

commit sha 056764ce4731eddc18fe18d3f58e9c5086310d91

chore: typo (#198)

view details

Cr

commit sha 3cdefdbe2ddbf62de87fb8734c6abf6cc25e6f39

test: add array of objects class test case for mergeProps (#201)

view details

Carlos Rodrigues

commit sha a84490858fc5b3b3aebdb4aa8507b544ddb49f0a

test(compiler-dom): add DOM compiler integration compile test (#189)

view details

Evan You

commit sha 9ad7ae479e5b65e475a2b26d0f66cc7d2e8218a3

fix(compiler): export COMMENT instead EMPTY runtime helper

view details

Evan You

commit sha 35d31a2ba24ffef37cd98e2ba450a5b8e7c70a05

chore: remove duplicate helperNameMap entry

view details

Illya Klymov

commit sha 584ac88b54b8053cf2c9adc13e4b1a5cadb36302

fix(compiler): update v-if directive to use Comment instead of Empty (#208)

view details

Francois Hendriks

commit sha 68f4e5e04d4f542856db87c0f84ad164904480f8

workflow: use prettier for vscode formatting (#207)

view details

Evan You

commit sha 95d7e1f471ed098f1f3bb3fa9cb4bd27bc2e76c8

feat: log on the fly template compilation error

view details

Evan You

commit sha 1321e8893de460a8f182b15860379e22d9cccf34

workflow: remove non-existent commit script from verifyCommit message

view details

Evan You

commit sha e57d686b9ae1f175445211315089df773cce58c7

test(vnode): tests for normlaizeVNode

view details

Evan You

commit sha 5f28708cb99c631302b0cc1ccc14c1fc71af0730

test(vnode): tests for shapeFlag and cloneVNode

view details

Illya Klymov

commit sha e32da9169bcad1b811d27695e368a8d996d9cf4a

fix(runtime-core): support object syntax for class (#215)

view details

Leonardo Piccioni de Almeida

commit sha a371b2ec0e18fcab34b5321a1f09d47882385ba3

chore: fix typo (#216)

view details

Evan You

commit sha a42ad6cc9d420decccd98df5115a80e721fca862

feat(runtime-dom): v-model directive runtime

view details

Evan You

commit sha 1b06b3c424a7d754aa3a118da4e391f239d5a377

perf: avoid parentNode call when dynamic child is not a Fragment

view details

Evan You

commit sha b0156b5df34e5a6d2f7f9ee102137e3acc02f776

chore: improve formatting

view details

Evan You

commit sha 59e18e54781564417e22a97d2eab5520e5661a5c

fix(runtime-dom): cast to true for boolean props

view details

Evan You

commit sha acf406b7798e73c5a324c01bf0e121f0addd2eab

fix(compiler-core): fix directive args with empty holes

view details

Evan You

commit sha 14aabf0f98d4bc6084266e763b40b14e5d02c5b0

feat(v-model): number/trim modifier + array checkbox support

view details

Chester

commit sha e68321eac0233a1e45d3169611b9091eec83410f

chore: use '' instead of undefined (#205)

view details

push time in 4 months

delete branch fnlctrl/vue-next

delete branch : feat/v-on

delete time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

+import { isArray } from '@vue/shared'++const modifierGuards: Record<string, (e: Event) => void | boolean> = {+  stop: e => e.stopPropagation(),+  prevent: e => e.preventDefault(),+  self: e => e.target !== e.currentTarget,+  ctrl: e => !(e as any).ctrlKey,+  shift: e => !(e as any).shiftKey,+  alt: e => !(e as any).altKey,+  meta: e => !(e as any).metaKey,+  left: e => 'button' in e && (e as any).button !== 0,+  middle: e => 'button' in e && (e as any).button !== 1,+  right: e => 'button' in e && (e as any).button !== 2+}++const keyNames: Record<string, string | string[]> = {+  esc: 'escape',+  // IE11 uses `Spacebar` for Space key name.+  space: [' ', 'spacebar'],+  up: 'arrowup',+  left: 'arrowleft',+  right: 'arrowright',+  down: 'arrowdown',+  // IE11 uses `Del` for Delete key name.+  delete: ['backspace', 'del']+}++const modifierKeys = ['ctrl', 'shift', 'alt', 'meta']++export const vOnModifiersGuard = (fn: Function, modifiers: string[]) => {+  return (event: Event) => {+    for (let modifier of modifiers) {+      if (+        modifier === 'exact' &&+        // Some of the modifierKeys are not specified as modifier, but is flagged true on the event+        modifierKeys.some(

I tried (m + 'Key') in event at first and then found out that it can actually be false { ctrlKey: false }...

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 4376ce3a57a5cf57bd5646ff4c2c6e9f25b2a478

feat(v-on): separate key modifier logic into vOnKeysGuard

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha b60d7d5cd33e9bf5e62ff713ef64360a8ed583de

feat(v-on): fix createSimpleExpression usage

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 4fd93cb1cb48d27e62f0594fe63f3d3a03a162d0

feat(v-on): adjust typings for modifiers guard

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 8de92ece333cf9defd8b17eb8fea05f24c3d76a0

feat(v-on): minor fix

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 241f91ff173fd7ee3e7fe2a849a9809338bc1afb

feat(v-on): fix typo

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha c08e1594cb048001b2c15bd99eab29f349c123a1

feat(v-on): minor fixes

view details

push time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

+const modifierGuards: Record<string, (e: Event) => void | boolean> = {+  stop: e => e.stopPropagation(),+  prevent: e => e.preventDefault(),+  self: e => e.target !== e.currentTarget,+  ctrl: e => e instanceof KeyboardEvent && !e.ctrlKey,+  shift: e => e instanceof KeyboardEvent && !e.shiftKey,+  alt: e => e instanceof KeyboardEvent && !e.altKey,+  meta: e => e instanceof KeyboardEvent && !e.metaKey,+  left: e => e instanceof MouseEvent && 'button' in e && e.button !== 0,+  middle: e => e instanceof MouseEvent && 'button' in e && e.button !== 1,+  right: e => e instanceof MouseEvent && 'button' in e && e.button !== 2+}++const keyNames: Record<string, string | string[]> = {+  esc: 'Escape',+  // IE11 uses `Spacebar` for Space key name.+  space: [' ', 'Spacebar'],+  up: 'ArrowUp',+  left: 'ArrowLeft',+  right: 'ArrowRight',+  down: 'ArrowDown',+  // IE11 uses `Del` for Delete key name.+  delete: ['Backspace', 'Del']+}++const modifierKeys = ['ctrl', 'shift', 'alt', 'meta']+// Currently there's no way to let ts know 'ctrl' + 'Key' is 'ctrlKey'+// https://github.com/microsoft/TypeScript/issues/12754+type ModifierKeysProperty = 'ctrlKey' | 'shiftKey' | 'altKey' | 'metaKey'++export const vOnModifiersGuard = (fn: Function, modifiers: string[]) => {+  return (event: Event) => {+    for (let modifier in modifiers) {+      if (+        modifier === 'exact' &&+        event instanceof KeyboardEvent &&+        // Some of the modifierKeys are not specified as modifier, but is flagged true on the event+        modifierKeys.some(modifierKey => {+          modifiers.indexOf(modifierKey) === -1 &&+            event[`${modifierKey}Key` as ModifierKeysProperty]+        })+      ) {+        return+      }+      const guard = modifierGuards[modifier]+      if (guard && guard(event)) return+    }+    if (event instanceof KeyboardEvent && 'key' in event) {+      const eventKey = event.key.toLowerCase()+      const keysToMatch = modifiers.filter(m => !modifierGuards[m])+      if (+        // None of the provided key modifiers match the current event key+        !keysToMatch.some(+          k =>+            k === eventKey ||+            (Array.isArray(keyNames[k])+              ? keyNames[k].indexOf(eventKey) > -1

I was under the impression that vue 3.0 target ES2015 so we're limited to it. Current tsconfig targets esnext so no polyfill is added. Though it's indeed used elsewhere in the repo... Guess we'll have to wait for Evan to set up the polyfill. I'll update it to includes for now.

fnlctrl

comment created time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

+const modifierGuards: Record<string, (e: Event) => void | boolean> = {+  stop: e => e.stopPropagation(),+  prevent: e => e.preventDefault(),+  self: e => e.target !== e.currentTarget,+  ctrl: e => !('ctrlKey' in e),+  shift: e => !('shiftKey' in e),+  alt: e => !('altKey' in e),+  meta: e => !('metaKey' in e),+  left: (e: MouseEvent) => 'button' in e && e.button !== 0,+  middle: (e: MouseEvent) => 'button' in e && e.button !== 1,+  right: (e: MouseEvent) => 'button' in e && e.button !== 2+}++// todo+// KeyboardEvent.keyCode aliases+// const keyCodes: { [key: string]: number | Array<number> } = {+//   esc: 27,+//   tab: 9,+//   enter: 13,+//   space: 32,+//   up: 38,+//   left: 37,+//   right: 39,+//   down: 40,+//   delete: [8, 46]+// }++export const vOnModifiersGuard = (fn: Function, modifiers: string[]) => {+  return (event: Event) => {+    for (let modifier in modifiers) {+      let guard = modifierGuards[modifier]+      if (guard && guard(event)) return+    }

Modern js runtimes (which vue 3.0 targets) optimizes this already: https://stackoverflow.com/questions/40070631/v8-javascript-performance-implications-of-const-let-and-var

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 013c3b10a849bbefb740018a9a6471bc8510d9f7

feat(v-on): add runtime tests (wip)

view details

push time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

+const modifierGuards: Record<string, (e: Event) => void | boolean> = {

I think putting it inline wouldn't harm readability, and I'd prefer fewer lines...

fnlctrl

comment created time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

+const modifierGuards: Record<string, (e: Event) => void | boolean> = {+  stop: e => e.stopPropagation(),+  prevent: e => e.preventDefault(),+  self: e => e.target !== e.currentTarget,+  ctrl: e => !('ctrlKey' in e),+  shift: e => !('shiftKey' in e),+  alt: e => !('altKey' in e),+  meta: e => !('metaKey' in e),+  left: (e: MouseEvent) => 'button' in e && e.button !== 0,+  middle: (e: MouseEvent) => 'button' in e && e.button !== 1,+  right: (e: MouseEvent) => 'button' in e && e.button !== 2+}++// todo+// KeyboardEvent.keyCode aliases+// const keyCodes: { [key: string]: number | Array<number> } = {+//   esc: 27,+//   tab: 9,+//   enter: 13,+//   space: 32,+//   up: 38,+//   left: 37,+//   right: 39,+//   down: 40,+//   delete: [8, 46]+// }++export const vOnModifiersGuard = (fn: Function, modifiers: string[]) => {+  return (event: Event) => {+    for (let modifier in modifiers) {+      let guard = modifierGuards[modifier]+      if (guard && guard(event)) return+    }

What's the benefit of moving it outside?

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 62a8f8f276866c5001e2496ec727e2e50e022f95

feat(v-on): implement keyboard guards

view details

push time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

-// TODO+import {+  transformOn as baseTransform,+  DirectiveTransform,+  createObjectProperty,+  createCallExpression,+  createObjectExpression,+  createSimpleExpression+} from '@vue/compiler-core'+import { V_ON_MODIFIERS_GUARD } from '../runtimeHelpers'++const EVENT_OPTION_MODIFIERS = { passive: true, once: true, capture: true }++export const transformOn: DirectiveTransform = (dir, node, context) => {+  const { modifiers } = dir+  const baseResult = baseTransform(dir, node, context)+  if (!modifiers.length) return baseResult+  const { key, value } = baseResult.props[0]+  const properties = [+    createObjectProperty(+      'handler',+      createCallExpression(context.helper(V_ON_MODIFIERS_GUARD), [+        value,+        JSON.stringify(modifiers.filter(m => !(m in EVENT_OPTION_MODIFIERS)))+      ])+    ),+    createObjectProperty(+      'persistent',+      createSimpleExpression(true as any, true)

How do I create a primitive expression without breaking everything😂

  • Let SimpleExpressionNode['content'] support boolean (maybe also number)?
  • Add PrimitiveExpressionNode+NodeTypes.PRIMITIVE_EXPRESSION and implement its AST utils / code gen?
fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha caea9303632334928f442eafb2f6b24800999bb0

feat(v-on): support event options

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 722173a5ffbc381a71988e7c69ff964c979fd3c5

feat(v-on): minor fixes

view details

push time in 4 months

Pull request review commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

-// TODO+import {+  transformOn as baseTransform,+  DirectiveTransform,+  createObjectProperty,+  createCallExpression+} from '@vue/compiler-core'+import { V_ON_MODIFIERS_GUARD } from '../runtimeHelpers'++export const transformOn: DirectiveTransform = (dir, node, context) => {+  const { modifiers } = dir+  let baseResult = baseTransform(dir, node, context)

Maybe we can set up typescript-eslint and use it's prefer-const rule?

fnlctrl

comment created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 9300de1f000fe688a93d1c25e482d47376580ff3

feat(v-on): wip

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha b48fb93635841eb28b1f35a112f73a6a6658406c

feat(v-on): use runtime helper, wip

view details

push time in 4 months

pull request commentvuejs/vue-next

[WIP] feat(compiler-dom,v-on): create transform for v-on

Got it, I'll update to use runtime wrappers instead

fnlctrl

comment created time in 4 months

PR opened vuejs/vue-next

[WIP] feat(compiler-dom,v-model): create transform for v-model

todo:

  • [ ] key codes/aliases and runtime
  • [ ] more tests
+227 -31

0 comment

6 changed files

pr created time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 06c423634708dceb20e959c34f294dcd154a2237

feat(v-on): add tests

view details

push time in 4 months

push eventfnlctrl/vue-next

fnlCtrl

commit sha 4fdd306d75bb9bb219759333a6ba0ebc29be0330

feat(v-on): wip

view details

push time in 4 months

create barnchfnlctrl/vue-next

branch : feat/v-on

created branch time in 4 months

push eventfnlctrl/vue-next

Stanislav Lashmanov

commit sha 6d5c12b63a2e920fae0f49ba2f056ac1c157087e

fix(runtime-dom/events): fix wrong scope for event value (#117)

view details

Evan You

commit sha caaeaff2fdfa29ccfad2a562bddb21d9c4f03b74

refactor(runtime-dom/events): use more explicit variable name to avoid shadowing

view details

Evan You

commit sha 3146e6b942aa7b024184dfc466b4d85200c5bc32

fix(compiler/v-if): avoid incorrect transform application on v-else/else-if branch children

view details

Evan You

commit sha 802ecccc495270fac06246bf3d2f47673a559dad

refactor: give runtimeHelper symbols more readable names during dev

view details

Evan You

commit sha 57a5c61320b6b6584a535122c3946a5f7a1ee068

test: tests for hoistStatic

view details

dependabot-preview[bot]

commit sha 2e70a210ac2144f7c896a10e9ebc6f099bc76465

build(deps-dev): bump lint-staged from 9.4.1 to 9.4.2 Bumps [lint-staged](https://github.com/okonet/lint-staged) from 9.4.1 to 9.4.2. - [Release notes](https://github.com/okonet/lint-staged/releases) - [Commits](https://github.com/okonet/lint-staged/compare/v9.4.1...v9.4.2) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

dependabot-preview[bot]

commit sha ff0f3bdf7c883725ac19a8606edcce6479df7346

build(deps-dev): bump lerna from 3.16.4 to 3.16.5 Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.16.4 to 3.16.5. - [Release notes](https://github.com/lerna/lerna/releases) - [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md) - [Commits](https://github.com/lerna/lerna/commits/v3.16.5/core/lerna) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

view details

扩散性百万甜面包

commit sha 016231d09f1abc99b0654b8454d2e9a969251e17

types: improve type for WatchHandler (#160)

view details

Evan You

commit sha 1393ee52ca20b956ae3ef4775192ad645dbdcaf8

types: improve typing

view details

Evan You

commit sha 16da9ae89f714cffdc459c0dd883caf27dc04b54

fix(compiler): handle block nodes with custom directives + improve ast types

view details

夜宴

commit sha 8d10096d24142ed7dbe31ccd7e752b271620ba9e

test(reactivity): check for key in entries iteration (#152)

view details

meteorlxy

commit sha 174d13acf07ad2f4dfcf5798987e59c4c6ea81e9

build: sepecify yarn in lerna config (#154)

view details

Evan You

commit sha b4d375b0b87076c18d27bcddbde643c9bbf4ac4a

fix(compiler): should not prefix reserved literals (close #142)

view details

Evan You

commit sha f15528350e301e26be79067e43f79db1d090d5c0

test: test expression transform for reserved literals

view details

Evan You

commit sha b68eb229c75a78109fb48b1adcd0d4db3173d4af

types: move scopeIds into PrefixMeta

view details

Evan You

commit sha 8da5b007b1844d6aef3a0de7d1bd483ba428197f

types: improve typing

view details

扩散性百万甜面包

commit sha 80e5b16f995240a87cdfbb5da0ca3476864d6e0d

types: improve type 'ReactiveEffect' with generics (#99)

view details

Rahul Kadyan

commit sha 5c4478b00b9e758952b8dc2cd9697d875b255e05

chore(jest): ignore node_modules from watched files (#162) `jest --watch` fails with open file limit reached:

view details

Evan You

commit sha eadcaead37116a9506302f9a55917c32552eded9

feat(compiler-dom): transform for v-html

view details

Evan You

commit sha e8ee163fdd4e41147b0e6d697e86914fea211857

chore: remove unnecessary type cast

view details

push time in 4 months

startedvuejs/vue-next

started time in 5 months

startedNetchX/Netch

started time in 5 months

more