Commit Graph

54 Commits

Author SHA1 Message Date
Evan You 3d34f406ac
fix(runtime-core): bail manually rendered compiler slot fragments in all cases
Previously this bail was only applied on updates but not on initial mount,
and leads to different patch code paths between mount and update in edge
cases.

close #10870
2024-07-12 00:34:23 +08:00
edison 9c2de6244c
fix(runtime-core): ensure slot compiler marker writable (#10825)
close #10818
2024-04-29 11:47:40 +08:00
Evan You cde7f05787
fix(runtime-core): further fix slots _ctx check
close #10724
2024-04-18 12:27:15 +08:00
Evan You 6df53d85a2
fix(runtime-core): use same internal object mechanism for slots
close #10709
2024-04-16 22:47:24 +08:00
Evan You 6af733d68e perf: optimize component props/slots internal object checks 2024-04-12 14:41:03 +08:00
inottn 6fa33e67ec
fix(runtime-core): should not warn out-of-render slot fn usage when mounting another app in setup (#10125)
close #10124
2024-01-18 11:45:11 +08:00
三咲智子 Kevin Deng bfe6b459d3
style: update format & lint config (#9162)
Co-authored-by: 丶远方 <yangpanteng@gmail.com>
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
Co-authored-by: Guo Xingjun <99574369+Plumbiu@users.noreply.github.com>
2023-12-26 19:39:47 +08:00
Carlos Rodrigues 213eba479c
fix(types): support for generic keyof slots (#8374) 2023-12-08 22:54:57 +08:00
Kael 75b8722135
fix(runtime-core): delete stale slots which are present but undefined (#6484)
close #9109
2023-10-20 16:25:06 +08:00
Evan You 1279b17300 fix(types): remove short syntax support in defineSlots()
ref: https://github.com/vuejs/language-tools/issues/2758
2023-05-08 11:53:49 +08:00
Evan You 94fa67a4f7 fix(hmr): force update cached slots during HMR
close #7155
close #7158
2023-04-20 10:06:06 +08:00
三咲智子 Kevin Deng 5a2f5d59cf
feat(types/slots): support slot presence / props type checks via `defineSlots` macro and `slots` option (#7982) 2023-04-03 16:49:16 +08:00
Thorsten Lünborg e4dffe900a
fix(runtime-core): ensure raw slot function is only normalized once (#5358)
fix: #5343
2022-05-10 04:41:54 -04:00
Evan You 644971ec06 fix(runtime-core): ensure consistent arguments for tempalte and render funtion slot usage
fix #4367
2021-08-17 11:15:53 -04:00
HcySunYang 201060717d
fix(runtime-core): should not track dynamic children when the user calls a compiled slot inside template expression (#3554)
fix #3548, partial fix for #3569
2021-05-25 13:33:41 -04:00
HcySunYang 4ce0df6ef1
fix(runtime-core): avoid the proxy object polluting the slots of the internal instance (#3698)
fix #3695
2021-05-24 18:17:37 -04:00
Evan You 7e0224aa8c wip: more compat tweaks 2021-04-22 14:59:54 -04:00
Evan You 1b8f14ee76 wip: more compat progress 2021-04-21 15:09:18 -04:00
Evan You f6dee53270 wip: compat integration progress 2021-04-20 09:25:12 -04:00
HcySunYang 995d76bd12
fix(runtime-core): fix render function + optimized slot edge case (#3523)
fix #2893

Manually rendering the optimized slots should allow subsequent updates to exit the optimization mode correctly
2021-04-01 19:28:58 -04:00
Evan You 68416e988f chore: fix types 2021-03-05 18:28:12 -05:00
Evan You aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -05:00
Evan You aab99abd28 fix(slots): properly force update on forwarded slots
fix #1594
2020-07-15 20:12:49 -04:00
Evan You 65beba98fe fix(slots): differentiate dynamic/static compiled slots
fix #1557
2020-07-13 12:36:41 -04:00
Felix Rilling 829b35e426
chore: typo fixes (#1546)
* chore: fix typos in comments/JSDoc.

* chore: fix typo in internal function name.

* chore: fix typos in test comments/descriptions/variable names.
2020-07-08 12:32:42 +02:00
Evan You 6b23216e6d chore: comment on slot optimization hint [ci skip] 2020-06-30 12:01:05 -04:00
Evan You d2bf3cc4a8 chore: remove unnecessary loop 2020-06-30 11:43:15 -04:00
Evan You 062835d45a fix(slots): make compiled slot marker non-enumerable
fix #1470
2020-06-30 09:27:06 -04:00
Evan You 70ea76ae0c fix(slots): filter out compiler marker from resolved slots
fix #1451
2020-06-26 17:18:39 -04:00
Evan You e76ed4c269 refactor(hmr): simplify hmr force update check 2020-06-12 14:53:48 -04:00
Evan You 2408a65662 fix(hmr): force full update in child component on slot update 2020-05-29 10:50:01 -04:00
Evan You 09b4202a22 refactor(reactivity): adjust APIs
BREAKING CHANGE: Reactivity APIs adjustments:

- `readonly` is now non-tracking if called on plain objects.
  `lock` and `unlock` have been removed. A `readonly` proxy can no
  longer be directly mutated. However, it can still wrap an already
  reactive object and track changes to the source reactive object.

- `isReactive` now only returns true for proxies created by `reactive`,
   or a `readonly` proxy that wraps a `reactive` proxy.

- A new utility `isProxy` is introduced, which returns true for both
  reactive or readonly proxies.

- `markNonReactive` has been renamed to `markRaw`.
2020-04-15 16:45:20 -04:00
Evan You 84440780f9 fix(slots): should update compiled dynamic slots 2020-04-08 12:23:44 -04:00
Evan You cb504c287f refactor(runtime-core): refactor slots resolution
Get rid of need for setup proxy in production mode and improve console
inspection in dev mode
2020-04-06 21:06:53 -04:00
Evan You ba9a91c48c refactor: remove null comparisons 2020-03-18 18:14:51 -04:00
Evan You 8a58dce603 feat(runtime-core): set context for manual slot functions as well 2020-03-16 13:06:46 -04:00
Evan You 4a5b91bd1f fix(runtime-core): fix slot fallback + slots typing
fix #773
2020-02-25 09:41:07 -05:00
Evan You 6df2aca070 refactor(types): move shapeFlags to shared 2020-02-14 01:36:42 -05:00
Evan You 1389d7b88c refactor(compiler-core): use more concise marker for compiled slots 2020-02-12 13:45:35 -05:00
Evan You 6b1ce00621 wip(ssr): renderer support for optimized and manual slots 2020-01-28 22:58:02 -05:00
Evan You 43097987cf feat(core): respect $stable slots flag per RFC 2019-11-26 10:03:36 -05:00
Evan You c6fb506fc0 feat(transition): compat with keep-alive 2019-11-25 17:35:15 -05:00
Evan You 5eee1152ca types: (wip) improve dts output 2019-11-01 11:32:53 -04:00
Evan You 8da5b007b1 types: improve typing 2019-10-08 12:43:13 -04:00
Evan You 306c22efe1 feat(compiler): mark compiler-generated slots for runtime 2019-10-03 14:08:14 -04:00
Evan You 3d14265102 feat(compiler): handle conditional v-slot 2019-10-02 17:18:11 -04:00
Evan You ee66ce78b7 feat(compiler): transform slot outlets 2019-09-27 20:29:20 -04:00
Evan You 360f3b4f37 types: improve type exports 2019-09-06 12:58:31 -04:00
Evan You d5684e1a9d wip: function slot tips 2019-08-30 15:34:57 -04:00
Evan You 0cd8e16366 wip: warn slots when invoked in setup() 2019-08-30 15:26:16 -04:00