三咲智子 Kevin Deng
2075042956
refactor: remove append helper
...
replace `append` with `insertBefore`
2024-02-26 21:38:04 +08:00
三咲智子 Kevin Deng
11bda8a088
refactor(runtime-vapor): move template to dom
...
[skip release]
2024-02-26 21:19:28 +08:00
三咲智子 Kevin Deng
e5c1f8d1a2
refactor: split delegate & register event
2024-02-26 15:18:16 +08:00
三咲智子 Kevin Deng
67e785afd7
chore(runtime-vapor): simplify
2024-02-25 21:06:19 +08:00
三咲智子 Kevin Deng
c1d9b64b7b
refactor: re-organize exports
2024-02-25 15:23:29 +08:00
三咲智子 Kevin Deng
fb3e8ee8c0
refactor: merge delegate & modifier options of event
2024-02-25 15:11:25 +08:00
Evan You
ff943f4ddf
perf: optimize scheduler queueJob performance ( #138 )
2024-02-25 11:29:45 +08:00
三咲智子 Kevin Deng
669fec8dad
feat: delegate event for vapor
...
closes #136
2024-02-25 02:07:20 +08:00
三咲智子 Kevin Deng
23653cc447
refactor(runtime-vapor): split props & event metadata
2024-02-23 13:31:32 +08:00
三咲智子 Kevin Deng
26f29b2529
refactor(runtime-vapor): move metadata from instance to node
2024-02-23 01:21:00 +08:00
三咲智子 Kevin Deng
a87d2120e0
refactor(runtime-vapor): drop array parent
2024-02-23 00:53:42 +08:00
三咲智子 Kevin Deng
d7bd6c99da
refactor(compiler-vapor): generate fragment for only one element
...
closes #133
2024-02-23 00:52:02 +08:00
三咲智子 Kevin Deng
531f4f0052
perf(runtime-vapor): improve traverse children
2024-02-22 02:08:05 +08:00
ygj6
b11ecbda69
feat(runtime-vapor): reset old props when setting dynamic props ( #131 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-20 21:13:48 +08:00
三咲智子 Kevin Deng
e10f7d1689
refactor(runtime-vapor): fix component type
2024-02-14 14:43:18 +08:00
三咲智子 Kevin Deng
66cea4b325
revert: "refactor: remove update function from compiler"
...
Bad for performance, so revert it temporarily
This reverts commit be65b98a33
.
2024-02-12 22:01:42 +08:00
FireBushtree
3d10925c53
feat(runtime-vapor): support patch style ( #126 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-10 21:31:44 +08:00
三咲智子 Kevin Deng
184d72e747
feat(runtime-vapor): implement vModelRadio
...
Fully supported v-model for native elements.
2024-02-10 16:15:23 +08:00
三咲智子 Kevin Deng
3550765147
refactor: add isVaporReservedProp
2024-02-10 14:41:51 +08:00
ubugeeei
52311fa7ae
feat(runtime-vapor): component attrs ( #124 )
2024-02-10 13:07:13 +08:00
三咲智子 Kevin Deng
d16359c45b
feat(runtime-vapor): add no side effects annotation
2024-02-08 23:22:03 +08:00
三咲智子 Kevin Deng
985d4c7422
refactor: return only one node from children helper
2024-02-08 23:03:42 +08:00
Rizumu Ayaka
ccdc634c24
fix(runtime-vapor): v-for move list items are not always effective ( #121 )
2024-02-07 22:01:22 +08:00
Rizumu Ayaka
a15f609044
test(runtime-vapor): refactor duplicate compoent test code ( #120 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-07 21:03:46 +08:00
三咲智子 Kevin Deng
75c8ff5cb7
fix(runtime-vapor): update old value even if no beforeUpdate hook
2024-02-07 20:38:26 +08:00
三咲智子 Kevin Deng
4be349ebc4
feat(runtime-vapor): implement vModelCheckbox & vModelDynamic
2024-02-07 20:14:50 +08:00
三咲智子 Kevin Deng
f4f467811a
fix(runtime-vapor): only update oldValue in beforeUpdate hook
2024-02-07 19:47:56 +08:00
三咲智子 Kevin Deng
94272c6163
fix(runtime-vapor): retrieve prop value from element
2024-02-07 19:24:06 +08:00
三咲智子 Kevin Deng
99da2e5abe
refactor(compiler-vapor): remove runtime fragment
...
returns array directly
2024-02-07 17:29:04 +08:00
三咲智子 Kevin Deng
68b0caf495
fix(compiler-vapor): convert to display string for each text
2024-02-07 04:40:49 +08:00
三咲智子 Kevin Deng
38865c7ca1
refactor: simplify event handler
2024-02-07 01:37:07 +08:00
三咲智子 Kevin Deng
77743006b8
refactor(runtime-vapor): update selected option
2024-02-06 20:24:59 +08:00
ubugeeei
e9e7fe414b
feat(runtime-vapor): component props validator ( #114 )
2024-02-05 03:29:59 +08:00
三咲智子 Kevin Deng
95782883b3
fix(runtime-vapor): special check for setDOMProp
2024-02-05 03:28:32 +08:00
ygj6
d573a3d2f2
feat: support v-bind="{}" ( #106 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-05 02:44:30 +08:00
三咲智子 Kevin Deng
ed954bcd33
feat(runtime-vapor): support v-model w/ select tag
2024-02-04 22:49:59 +08:00
ubugeeei
cde91e4fb5
feat(runtime-vapor): component emits ( #103 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-04 21:18:57 +08:00
ubugeeei
ea5f7ec076
test(runtime-vapor): component props ( #99 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-04 20:46:08 +08:00
三咲智子 Kevin Deng
be65b98a33
refactor: remove update function from compiler
2024-02-03 05:02:07 +08:00
三咲智子 Kevin Deng
e7e3b1c73e
revert: "refactor: id rewrite of vapor v-for"
...
This reverts commit 31f497b1d1
.
2024-02-01 19:12:29 +08:00
三咲智子 Kevin Deng
31f497b1d1
refactor: id rewrite of vapor v-for
2024-02-01 17:42:46 +08:00
Rizumu Ayaka
757af933dc
test(runtime-vapor): `dom/patchProp.ts` ( #102 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-02-01 14:35:52 +08:00
三咲智子 Kevin Deng
261b7d40a4
feat(runtime-vapor): add defineComponent
2024-01-31 18:08:07 +08:00
三咲智子 Kevin Deng
46e83e9681
refactor(compiler-vapor): symbol for newline ( #104 )
2024-01-31 17:26:07 +08:00
三咲智子 Kevin Deng
681dc5d954
feat(compiler-vapor): v-for ( #101 )
2024-01-31 17:00:19 +08:00
三咲智子 Kevin Deng
f7642ab77c
refactor(compiler-vapor): remove createTextNode argument
2024-01-31 13:16:03 +08:00
三咲智子 Kevin Deng
e02725665d
fix(compiler-vapor): import helper with type check
2024-01-30 22:21:59 +08:00
三咲智子 Kevin Deng
74f7e56fb8
refactor(runtime-vapor): throw errors when node is not found
2024-01-30 05:39:53 +08:00
三咲智子 Kevin Deng
cd0e3273d2
test: add normalizeBlock
2024-01-30 05:39:53 +08:00
Rizumu Ayaka
489f11a1f9
refactor(runtime-vapor): template fragment ( #100 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-01-30 04:15:52 +08:00
三咲智子 Kevin Deng
63aacf6194
style: respect root prettier config
2024-01-29 03:11:30 +08:00
三咲智子 Kevin Deng
17af64c0c1
feat(runtime-vapor): createFor
2024-01-28 20:16:35 +08:00
Rizumu Ayaka
ede6c29434
feat(compiler-vapor): `v-if` ( #96 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-01-28 01:31:20 +08:00
三咲智子 Kevin Deng
359a5dab19
refactor: get oldVal from metadata
2024-01-25 17:00:19 +08:00
三咲智子 Kevin Deng
1f134ae43a
feat(runtime-vapor): expose vapor mode flag
2024-01-24 22:11:46 +08:00
三咲智子 Kevin Deng
32604cf91c
refactor(runtime-vapor): template refs
2024-01-21 13:59:56 +08:00
三咲智子 Kevin Deng
31e8fa35c0
feat: v-model for input & textarea
2024-01-21 02:16:53 +08:00
三咲智子 Kevin Deng
782d60475d
feat: basic template ref
2024-01-20 23:48:10 +08:00
三咲智子 Kevin Deng
6a26db2adc
refactor(runtime-vapor): remove ref wrapper for mounted state
2024-01-20 20:46:41 +08:00
三咲智子 Kevin Deng
9d071e7c31
fix(runtime-vapor): set setupState
2024-01-20 20:22:06 +08:00
三咲智子 Kevin Deng
35334fd33e
fix(runtime-vapor): patch prop
2024-01-20 13:38:20 +08:00
ygj6
775491e46d
feat: prop and attr modifiers for v-bind ( #79 )
2024-01-20 13:31:16 +08:00
三咲智子 Kevin Deng
fc651f6905
fix(runtime-vapor): normalize state&block
2024-01-19 22:43:43 +08:00
三咲智子 Kevin Deng
305a651c68
chore: update comment
2024-01-19 17:10:10 +08:00
三咲智子 Kevin Deng
5c0b8bbeb3
refactor: simplify code
2024-01-19 16:59:03 +08:00
Rizumu Ayaka
1e0070c208
feat(runtime-vapor): createIf ( #95 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-01-19 16:38:41 +08:00
Rizumu Ayaka
2cce436aaf
feat(runtime-vapor): lifecycle beforeUpdate and updated hooks ( #89 )
2024-01-13 03:25:57 +08:00
Rizumu Ayaka
26fee414ff
feat: compound expression for `v-on` ( #60 )
2024-01-08 14:07:49 +08:00
Rizumu Ayaka
fb4d9a1443
feat: renderWatch / renderEffect ( #86 )
...
* refactor: use baseWatch to drive watchAPI
* feat: basic implementation of renderWatch and effectId
* chore: remove effect id
* chore: export and simplify types
* test: render watch
* chore: add todo comment
* fix: sync code changes according to the review in PR #82
* fix: enum values conflict
* chore: rename
* feat: change watchEffect to renderEffect in compiler-vapor
* chore: update
---------
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2024-01-07 01:31:01 +08:00
Rizumu Ayaka
dce55475a5
style: fix lint errors in vapor
2023-12-29 22:05:33 +08:00
三咲智子 Kevin Deng
22ed5a7782
chore: remove unused
2023-12-26 23:48:45 +08:00
三咲智子 Kevin Deng
efc32b716f
refactor(runtime-vapor): remove public instance
2023-12-25 02:51:51 +08:00
GaoNeng
3d4bc018d7
feat(runtime-vapor): onErrorCaptured ( #71 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-25 02:44:01 +08:00
Kaine
d3a86cf144
fix(runtime-vapor): fix v-show value ( #70 )
2023-12-23 15:23:34 +08:00
Rizumu Ayaka
5b3027f0a9
feat(runtime-vapor): `watchEffect`/`watch` and `onEffectCleanup` ( #69 )
2023-12-23 15:17:18 +08:00
GaoNeng
9d3abcf24b
feat(runtime-vapor): mounted & unmounted hook ( #46 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-15 01:47:56 +08:00
三咲智子 Kevin Deng
9dda97e736
refactor(runtime-vapor): clean up
2023-12-15 01:30:34 +08:00
白雾三语
6eaf4b651b
fix(runtime-vapor): `unmountComponent` ( #63 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-15 01:23:17 +08:00
白雾三语
9e031275d7
fix: throw error without `script` block ( #61 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-13 15:16:33 +08:00
白雾三语
5e681b5945
feat(compiler-vapor): functional custom directive support updated hooks ( #58 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-13 15:01:07 +08:00
三咲智子 Kevin Deng
19fb55febf
fix(runtime-vapor): custom directive instance
...
closes #50
2023-12-12 15:39:00 +08:00
三咲智子 Kevin Deng
3ba1315e72
refactor(runtime-vapor): remove argument generic
2023-12-11 16:24:07 +08:00
ubugeeei
12250a85b9
feat(runtime-vapor): component props ( #40 )
2023-12-10 01:33:18 +08:00
三咲智子 Kevin Deng
5f90f8bef0
feat: v-show
2023-12-08 17:37:21 +08:00
三咲智子 Kevin Deng
71bc13575f
types(runtime-vapor): add modifiers & argument type
2023-12-07 10:46:34 +08:00
三咲智子 Kevin Deng
41a7079493
refactor: extract Data
2023-12-07 01:55:00 +08:00
白雾三语
0cca23f574
feat(compiler-vapor): support custom directives argument & modifiers ( #34 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-07 01:41:17 +08:00
三咲智子 Kevin Deng
9e9703d7b6
feat(runtime-vapor): render component
2023-12-06 18:49:41 +08:00
三咲智子 Kevin Deng
25f90b2a97
chore: fix lint
2023-12-04 16:45:26 +08:00
三咲智子 Kevin Deng
f3e80d7706
feat: support more directive hook
2023-12-04 16:08:15 +08:00
三咲智子 Kevin Deng
db151e1b43
feat: custom directlve
...
closes #19
2023-12-03 18:36:54 +08:00
白雾三语
28caf8f566
feat: v-on modifiers support native options and keyboards ( #28 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-12-03 03:49:44 +08:00
三咲智子 Kevin Deng
281d468020
style: format
2023-12-01 01:28:16 +08:00
ubugeeei
503615a31e
feat(compiler): v-on event modifier ( #8 )
2023-11-30 05:11:59 +08:00
ubugeeei
61f339ce7d
feat: vapor component base ( #5 )
...
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-11-30 02:11:21 +08:00
三咲智子 Kevin Deng
b3fdccec6f
refactor: remove InsertPosition
2023-11-29 21:20:05 +08:00
三咲智子 Kevin Deng
4549e28665
fix: playground
2023-11-29 02:38:01 +08:00
三咲智子 Kevin Deng
ab9a2d28d7
feat: build vapor & add @vue/vapor package
2023-11-29 01:26:01 +08:00
三咲智子 Kevin Deng
8b075796d7
feat: scheduler
2023-11-27 23:48:36 +08:00
三咲智子 Kevin Deng
f9c607dbe4
chore: add todo comment for prepend append
2023-11-27 06:34:37 +08:00
三咲智子 Kevin Deng
71cf732d6d
feat: append & prepend multiple elements
2023-11-27 06:22:10 +08:00
三咲智子 Kevin Deng
6ff8b1bf0d
feat: use Array for Fragment, instead of native DocumentFragment
2023-11-27 05:29:38 +08:00
三咲智子 Kevin Deng
07373d41fd
feat: append multiple node
2023-11-27 05:16:21 +08:00
三咲智子 Kevin Deng
12187fbc85
feat: dynamic root nodes
2023-11-26 03:53:47 +08:00
三咲智子 Kevin Deng
9602cd2011
feat: add api for document.createTextNode
2023-11-26 03:12:02 +08:00
三咲智子 Kevin Deng
ac686033aa
feat: fragment
2023-11-26 02:13:59 +08:00
三咲智子 Kevin Deng
74b4328337
feat: v-html
2023-11-24 14:44:57 +08:00
三咲智子 Kevin Deng
cd768d262f
refactor: tidy
2023-11-23 23:43:19 +08:00
三咲智子 Kevin Deng
1d2f66e111
feat: binding
2023-11-23 23:42:16 +08:00
三咲智子 Kevin Deng
2a0a3dd059
feat: basic render
2023-11-17 03:03:50 +08:00
三咲智子 Kevin Deng
ef9628ce7f
feat(runtime-vapor): template
2023-11-17 03:01:53 +08:00
三咲智子 Kevin Deng
135f5eb8e7
feat: init runtime vapor
2023-11-17 03:01:53 +08:00