vueuse/vueuse (@vueuse/core)
### [`v10.6.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.6.1)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.6.0...v10.6.1)
##### 🐞 Bug Fixes
- **useScroll**: Can not read properties of null (reading document) - by [@Jokerzhzh](https://togithub.com/Jokerzhzh) and [@joaopslins](https://togithub.com/joaopslins) in [https://github.com/vueuse/vueuse/issues/3544](https://togithub.com/vueuse/vueuse/issues/3544) [(e9742)](https://togithub.com/vueuse/vueuse/commit/e97427f2)
- **useVirtualList**: `.style` can be undefined - by [@antfu](https://togithub.com/antfu) [(3d6b9)](https://togithub.com/vueuse/vueuse/commit/3d6b9c62)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.6.0...v10.6.1)
### [`v10.6.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.6.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.5.0...v10.6.0)
##### 🚀 Features
- **createEventHook**: Allow trigger to optionally have no parameters - by [@curtgrimes](https://togithub.com/curtgrimes) in [https://github.com/vueuse/vueuse/issues/3507](https://togithub.com/vueuse/vueuse/issues/3507) [(6040e)](https://togithub.com/vueuse/vueuse/commit/6040e1cc)
- **onLongClick**: Return stop function - by [@its-lee](https://togithub.com/its-lee) and **lee** in [https://github.com/vueuse/vueuse/issues/3506](https://togithub.com/vueuse/vueuse/issues/3506) [(8eb0b)](https://togithub.com/vueuse/vueuse/commit/8eb0b2d7)
- **syncRef**: Enhance syncRef type restrict - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3515](https://togithub.com/vueuse/vueuse/issues/3515) [(89266)](https://togithub.com/vueuse/vueuse/commit/892666b7)
- **useClipboard**: UseClipboard component - by [@alexzvn](https://togithub.com/alexzvn), **Alexzvn** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3359](https://togithub.com/vueuse/vueuse/issues/3359) [(71b46)](https://togithub.com/vueuse/vueuse/commit/71b4653d)
- **useClipboardItems**: New function - by [@Doctor-wu](https://togithub.com/Doctor-wu) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3477](https://togithub.com/vueuse/vueuse/issues/3477) [(1aa50)](https://togithub.com/vueuse/vueuse/commit/1aa50f82)
- **useDateFormat**: Add date ordinal formatting - by [@Jokerzhzh](https://togithub.com/Jokerzhzh) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3474](https://togithub.com/vueuse/vueuse/issues/3474) [(61ceb)](https://togithub.com/vueuse/vueuse/commit/61ceb19f)
- **useDropZone**: Add `dataTypes` option - by [@rtugeek](https://togithub.com/rtugeek) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3471](https://togithub.com/vueuse/vueuse/issues/3471) [(3f3f1)](https://togithub.com/vueuse/vueuse/commit/3f3f153e)
- **useElementSize**: Stop function - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3367](https://togithub.com/vueuse/vueuse/issues/3367) [(5f545)](https://togithub.com/vueuse/vueuse/commit/5f545be9)
- **useFileDialog**: Add directory parameters - by [@huiliangShen](https://togithub.com/huiliangShen) and **banruo** in [https://github.com/vueuse/vueuse/issues/3513](https://togithub.com/vueuse/vueuse/issues/3513) [(cefca)](https://togithub.com/vueuse/vueuse/commit/cefca9ab)
- **useMutationObserver**: Add `takeRecords` function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3480](https://togithub.com/vueuse/vueuse/issues/3480) [(f9136)](https://togithub.com/vueuse/vueuse/commit/f9136e85)
- **useStorage**: Add `waitOnMounted` option for SSR - by [@posva](https://togithub.com/posva) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3504](https://togithub.com/vueuse/vueuse/issues/3504) [(dc6f2)](https://togithub.com/vueuse/vueuse/commit/dc6f2e8c)
- **useWindowScroll**: Allow rewriting back to scroll - by [@nothing-sy](https://togithub.com/nothing-sy), **chensiyuan** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3500](https://togithub.com/vueuse/vueuse/issues/3500) [(931b2)](https://togithub.com/vueuse/vueuse/commit/931b2797)
- **watchOnce**: Return function for manual watcher stopping - by [@valerypatorius](https://togithub.com/valerypatorius) in [https://github.com/vueuse/vueuse/issues/3475](https://togithub.com/vueuse/vueuse/issues/3475) [(bb0a7)](https://togithub.com/vueuse/vueuse/commit/bb0a78e1)
##### 🐞 Bug Fixes
- **onClickOutside**: Adjust shouldListen handling timing - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3503](https://togithub.com/vueuse/vueuse/issues/3503) [(69851)](https://togithub.com/vueuse/vueuse/commit/6985152d)
- **onScrollLock**: Cache the el initial overflow value - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3527](https://togithub.com/vueuse/vueuse/issues/3527) [(03866)](https://togithub.com/vueuse/vueuse/commit/038666ba)
- **useAxios**: Bail out on request abort - by [@jahnli](https://togithub.com/jahnli) in [https://github.com/vueuse/vueuse/issues/3394](https://togithub.com/vueuse/vueuse/issues/3394) [(151f9)](https://togithub.com/vueuse/vueuse/commit/151f9b00)
- **useClipboard**: Use legacy way when without permission - by [@Cat1007](https://togithub.com/Cat1007), **catye**, [@posva](https://togithub.com/posva) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3379](https://togithub.com/vueuse/vueuse/issues/3379) [(37e86)](https://togithub.com/vueuse/vueuse/commit/37e866cd)
- **useDraggable**: Element can't relative parent element move - by [@huiliangShen](https://togithub.com/huiliangShen) and **banruo** in [https://github.com/vueuse/vueuse/issues/3531](https://togithub.com/vueuse/vueuse/issues/3531) [(08246)](https://togithub.com/vueuse/vueuse/commit/082462da)
- **useElementSize**: Get value in onMounted hook - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3366](https://togithub.com/vueuse/vueuse/issues/3366) [(165c8)](https://togithub.com/vueuse/vueuse/commit/165c88ab)
- **useFetch**: Don't set isFetching to false when a request is aborted because of a refetch - by [@mweghorst](https://togithub.com/mweghorst) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3479](https://togithub.com/vueuse/vueuse/issues/3479) [(75ca2)](https://togithub.com/vueuse/vueuse/commit/75ca2bb6)
- **useMouseInElement**: Optimize outside computation - by [@qiYuei](https://togithub.com/qiYuei), **fengmingjian** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3380](https://togithub.com/vueuse/vueuse/issues/3380) [(7c88d)](https://togithub.com/vueuse/vueuse/commit/7c88d81b)
- **useRouteQuery,useRouteParams**: Prevent reset on other scope dispose - by [@s-montigny-desautels](https://togithub.com/s-montigny-desautels) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3418](https://togithub.com/vueuse/vueuse/issues/3418) [(771e7)](https://togithub.com/vueuse/vueuse/commit/771e7ffd)
- **useScroll**: Trigger once `onMounted` to get correct inital arrivedStates values - by [@nicooprat](https://togithub.com/nicooprat) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3384](https://togithub.com/vueuse/vueuse/issues/3384) [(86bd8)](https://togithub.com/vueuse/vueuse/commit/86bd8e8f)
- **useSortable**: Prevent from creating multi instances - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3501](https://togithub.com/vueuse/vueuse/issues/3501) [(d9846)](https://togithub.com/vueuse/vueuse/commit/d98468d1)
- **useStorage**: Fix defaults not unwrapped - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3534](https://togithub.com/vueuse/vueuse/issues/3534) [(b6d2b)](https://togithub.com/vueuse/vueuse/commit/b6d2bd35)
- **useWebSocket**: Webworker support - by [@binary-signal](https://togithub.com/binary-signal) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3469](https://togithub.com/vueuse/vueuse/issues/3469) [(9b014)](https://togithub.com/vueuse/vueuse/commit/9b0141ca)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.5.0...v10.6.0)
### [`v10.5.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.5.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.4.1...v10.5.0)
##### 🚀 Features
- Add `Promisify` type definition - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3420](https://togithub.com/vueuse/vueuse/issues/3420) [(b067b)](https://togithub.com/vueuse/vueuse/commit/b067b8e4)
- **createInjectionState**: Allow provide and inject in same component - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3387](https://togithub.com/vueuse/vueuse/issues/3387) [(5d948)](https://togithub.com/vueuse/vueuse/commit/5d948714)
- **createInjectionState**: Add injectionKey option - by [@PPetau](https://togithub.com/PPetau) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3404](https://togithub.com/vueuse/vueuse/issues/3404) [(90d34)](https://togithub.com/vueuse/vueuse/commit/90d34004)
- **rxjs**: Add useExtractedObservable and watchExtractedObservable - by [@Voltra](https://togithub.com/Voltra) in [https://github.com/vueuse/vueuse/issues/3453](https://togithub.com/vueuse/vueuse/issues/3453) [(23b8c)](https://togithub.com/vueuse/vueuse/commit/23b8ca9c)
- **useFavicon**: Add link tag if it doesn't exist - by [@babu-ch](https://togithub.com/babu-ch) in [https://github.com/vueuse/vueuse/issues/3444](https://togithub.com/vueuse/vueuse/issues/3444) [(d1fcc)](https://togithub.com/vueuse/vueuse/commit/d1fcc573)
- **useMousePressed**: Add capture option - by [@DerZade](https://togithub.com/DerZade) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3392](https://togithub.com/vueuse/vueuse/issues/3392) [(d5c81)](https://togithub.com/vueuse/vueuse/commit/d5c81b3c)
- **useMutationObserver**: Use MaybeComputedElementRef - by [@huodoushigemi](https://togithub.com/huodoushigemi) in [https://github.com/vueuse/vueuse/issues/3430](https://togithub.com/vueuse/vueuse/issues/3430) [(8167b)](https://togithub.com/vueuse/vueuse/commit/8167bc4b)
- **useRafFn**: Option fpsLimit - by [@f820602h](https://togithub.com/f820602h) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3459](https://togithub.com/vueuse/vueuse/issues/3459) [(8e4c0)](https://togithub.com/vueuse/vueuse/commit/8e4c01bd)
##### 🐞 Bug Fixes
- Vue 2 support for provideLocal and injectLocal - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) in [https://github.com/vueuse/vueuse/issues/3464](https://togithub.com/vueuse/vueuse/issues/3464) [(cf757)](https://togithub.com/vueuse/vueuse/commit/cf757029)
- **useBreakpoints**: Add missing breakpoint for the bootstrap - by [@edtorba](https://togithub.com/edtorba) in [https://github.com/vueuse/vueuse/issues/3413](https://togithub.com/vueuse/vueuse/issues/3413) [(ec9a4)](https://togithub.com/vueuse/vueuse/commit/ec9a45b4)
- **useDrauu**: Spread options for `brush` - by [@17359898647](https://togithub.com/17359898647) in [https://github.com/vueuse/vueuse/issues/3463](https://togithub.com/vueuse/vueuse/issues/3463) [(87ea3)](https://togithub.com/vueuse/vueuse/commit/87ea324a)
- **useVModels**: Type error with passive: true - by [@chaii3](https://togithub.com/chaii3) in [https://github.com/vueuse/vueuse/issues/3362](https://togithub.com/vueuse/vueuse/issues/3362) [(51f01)](https://togithub.com/vueuse/vueuse/commit/51f012b5)
- **useWebNotification**: Condition check on permission - by [@SampsonCrowley](https://togithub.com/SampsonCrowley) in [https://github.com/vueuse/vueuse/issues/3422](https://togithub.com/vueuse/vueuse/issues/3422) [(2f2b4)](https://togithub.com/vueuse/vueuse/commit/2f2b4923)
- **useWebSocket**: Ssr support - by [@huangyan321](https://togithub.com/huangyan321) in [https://github.com/vueuse/vueuse/issues/3370](https://togithub.com/vueuse/vueuse/issues/3370) [(c3a69)](https://togithub.com/vueuse/vueuse/commit/c3a69eea)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.4.1...v10.5.0)
### [`v10.4.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.4.1)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.4.0...v10.4.1)
##### 🐞 Bug Fixes
- Transpile target to `es2018`, close [#3349](https://togithub.com/vueuse/vueuse/issues/3349) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3349](https://togithub.com/vueuse/vueuse/issues/3349) [(0e4a5)](https://togithub.com/vueuse/vueuse/commit/0e4a5f03)
- **useEventListener**: Immutable options on removal, close [#2825](https://togithub.com/vueuse/vueuse/issues/2825) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3346](https://togithub.com/vueuse/vueuse/issues/3346) and [https://github.com/vueuse/vueuse/issues/2825](https://togithub.com/vueuse/vueuse/issues/2825) [(3ef59)](https://togithub.com/vueuse/vueuse/commit/3ef59cb1)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.4.0...v10.4.1)
### [`v10.4.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.4.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.3.0...v10.4.0)
##### 🚀 Features
- **refAutoReset**: Support maybe-ref as value - by [@moander](https://togithub.com/moander) in [https://github.com/vueuse/vueuse/issues/3342](https://togithub.com/vueuse/vueuse/issues/3342) [(71685)](https://togithub.com/vueuse/vueuse/commit/71685357)
- **useAsyncQueue**: Support in infinite tasks in typescript - by [@ethansnow2012](https://togithub.com/ethansnow2012) in [https://github.com/vueuse/vueuse/issues/3333](https://togithub.com/vueuse/vueuse/issues/3333) [(22e26)](https://togithub.com/vueuse/vueuse/commit/22e26dc5)
- **useBreakpoints**: Add breakpoints for PrimeFlex - by [@adrianrudnik](https://togithub.com/adrianrudnik) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3317](https://togithub.com/vueuse/vueuse/issues/3317) [(8b5ed)](https://togithub.com/vueuse/vueuse/commit/8b5ed4d2)
- **useDraggable**: Allowing calculations of bounds with fixed element - by [@linspw](https://togithub.com/linspw) in [https://github.com/vueuse/vueuse/issues/3335](https://togithub.com/vueuse/vueuse/issues/3335) [(c08e5)](https://togithub.com/vueuse/vueuse/commit/c08e5e09)
- **useFetch**: Introduce `updateDataOnError` option - by [@climba03003](https://togithub.com/climba03003) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3092](https://togithub.com/vueuse/vueuse/issues/3092) [(945ca)](https://togithub.com/vueuse/vueuse/commit/945ca167)
- **useIdbKeyval**: Ability to wait for IDB writes - by [@AbdallahAlhaddad](https://togithub.com/AbdallahAlhaddad) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3338](https://togithub.com/vueuse/vueuse/issues/3338) [(77a86)](https://togithub.com/vueuse/vueuse/commit/77a8627d)
- **useWebNotification**: Add `requestPermissions` option, return `permissionGranted` and `ensurePermissions` - by [@michealroberts](https://togithub.com/michealroberts) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3325](https://togithub.com/vueuse/vueuse/issues/3325) [(a1753)](https://togithub.com/vueuse/vueuse/commit/a1753d98)
##### 🐞 Bug Fixes
- **syncRef**: Avoid infinite sync - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3312](https://togithub.com/vueuse/vueuse/issues/3312) [(bc966)](https://togithub.com/vueuse/vueuse/commit/bc9665d1)
- **useElementSize**: Add `as` prop for component usage - by [@menghany](https://togithub.com/menghany) in [https://github.com/vueuse/vueuse/issues/3274](https://togithub.com/vueuse/vueuse/issues/3274) [(791f7)](https://togithub.com/vueuse/vueuse/commit/791f7b10)
- **useElementVisibility**: Adjust threshold to 0 to fix visibility issue with large element - by [@erikkkwu](https://togithub.com/erikkkwu) in [https://github.com/vueuse/vueuse/issues/3308](https://togithub.com/vueuse/vueuse/issues/3308) [(429ed)](https://togithub.com/vueuse/vueuse/commit/429edda7)
- **useFileSystemAccess**: Make options to be optional - by [@171h](https://togithub.com/171h) in [https://github.com/vueuse/vueuse/issues/3320](https://togithub.com/vueuse/vueuse/issues/3320) [(a9c8b)](https://togithub.com/vueuse/vueuse/commit/a9c8b069)
- **useMouse**: Position won't be changed on page scroll when `type` is `page`, closes [#2922](https://togithub.com/vueuse/vueuse/issues/2922) - by [@CatsJuice](https://togithub.com/CatsJuice) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3244](https://togithub.com/vueuse/vueuse/issues/3244) and [https://github.com/vueuse/vueuse/issues/2922](https://togithub.com/vueuse/vueuse/issues/2922) [(c2f64)](https://togithub.com/vueuse/vueuse/commit/c2f641de)
- **useScroll**: Evade edge case when window or document is Proxy - by [@MinatoHikari](https://togithub.com/MinatoHikari) in [https://github.com/vueuse/vueuse/issues/3280](https://togithub.com/vueuse/vueuse/issues/3280) [(c1b29)](https://togithub.com/vueuse/vueuse/commit/c1b296cc)
- **useScrollLock**: Support using window or document - by [@lzl0304](https://togithub.com/lzl0304) in [https://github.com/vueuse/vueuse/issues/3319](https://togithub.com/vueuse/vueuse/issues/3319) [(8acdb)](https://togithub.com/vueuse/vueuse/commit/8acdb474)
- **useSortable**: Fixed moveArrayElement repeatedly triggering side effects - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3322](https://togithub.com/vueuse/vueuse/issues/3322) [(b8515)](https://togithub.com/vueuse/vueuse/commit/b85154f5)
- **useStorage**: Read object only when it's serialized differently - by [@chenglu4343](https://togithub.com/chenglu4343), **chenglu** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2782](https://togithub.com/vueuse/vueuse/issues/2782) and [https://github.com/vueuse/vueuse/issues/3091](https://togithub.com/vueuse/vueuse/issues/3091) [(6fabe)](https://togithub.com/vueuse/vueuse/commit/6fabe9bf)
- **useVModel**: Clone set to true triggered infinite loop - by [@motian](https://togithub.com/motian) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3097](https://togithub.com/vueuse/vueuse/issues/3097) [(48f4c)](https://togithub.com/vueuse/vueuse/commit/48f4c6e1)
- **useWebWorker**: Prevent error event bubbling - by [@Luvoy](https://togithub.com/Luvoy) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3141](https://togithub.com/vueuse/vueuse/issues/3141) [(34206)](https://togithub.com/vueuse/vueuse/commit/34206407)
- **useWebsocket**: PongTimeout auto-reconnect no work - by [@shanyi-front](https://togithub.com/shanyi-front) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3321](https://togithub.com/vueuse/vueuse/issues/3321) [(93372)](https://togithub.com/vueuse/vueuse/commit/93372535)
- **useWebsocket**: Reset pongTimeout on close - by [@alipay404](https://togithub.com/alipay404) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3324](https://togithub.com/vueuse/vueuse/issues/3324) [(aea27)](https://togithub.com/vueuse/vueuse/commit/aea27f89)
- **utils**: Update `isClient` to check `document` too - by [@brc-dd](https://togithub.com/brc-dd) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3329](https://togithub.com/vueuse/vueuse/issues/3329) [(786cb)](https://togithub.com/vueuse/vueuse/commit/786cbba7)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.3.0...v10.4.0)
### [`v10.3.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.3.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.2.1...v10.3.0)
##### 🚀 Features
- **createReusableTemplate**: Inherit attrs - by [@wiidede](https://togithub.com/wiidede) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3226](https://togithub.com/vueuse/vueuse/issues/3226) [(a32ae)](https://togithub.com/vueuse/vueuse/commit/a32ae737)
- **useActiveElement**: Search deeply in shadow dom - by [@duoduoObama](https://togithub.com/duoduoObama) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3208](https://togithub.com/vueuse/vueuse/issues/3208) [(296dc)](https://togithub.com/vueuse/vueuse/commit/296dcc5e)
- **useCounter**: InitialValue support ref - by [@Rock070](https://togithub.com/Rock070) in [https://github.com/vueuse/vueuse/issues/3266](https://togithub.com/vueuse/vueuse/issues/3266) [(6ae3a)](https://togithub.com/vueuse/vueuse/commit/6ae3a8c8)
- **useFocus**: Support `:focus-visible` - by [@onmax](https://togithub.com/onmax) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3254](https://togithub.com/vueuse/vueuse/issues/3254) [(80329)](https://togithub.com/vueuse/vueuse/commit/80329333)
- **useRTDB**: Add errorHandler option - by [@wobsoriano](https://togithub.com/wobsoriano) in [https://github.com/vueuse/vueuse/issues/3232](https://togithub.com/vueuse/vueuse/issues/3232) [(b5e52)](https://togithub.com/vueuse/vueuse/commit/b5e52f59)
- **useSorted**: Accept getter function as source - by [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3249](https://togithub.com/vueuse/vueuse/issues/3249) [(33a12)](https://togithub.com/vueuse/vueuse/commit/33a12b2a)
- **useSpeechSynthesis**: Add reactivity for pitch and rate - by [@shestmintsev-kirill](https://togithub.com/shestmintsev-kirill) in [https://github.com/vueuse/vueuse/issues/3205](https://togithub.com/vueuse/vueuse/issues/3205) [(ac88f)](https://togithub.com/vueuse/vueuse/commit/ac88fd76)
##### 🐞 Bug Fixes
- **build**: Ensure correct typing for node esm - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3209](https://togithub.com/vueuse/vueuse/issues/3209) [(e7556)](https://togithub.com/vueuse/vueuse/commit/e755653b)
- **createReusableTemplate**: Camelize props - by [@94726](https://togithub.com/94726), [@antfu](https://togithub.com/antfu) and [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3253](https://togithub.com/vueuse/vueuse/issues/3253) [(d79e1)](https://togithub.com/vueuse/vueuse/commit/d79e174f)
- **onClickOutside**: Fix outside click on html element in ios - by [@sibbng](https://togithub.com/sibbng) in [https://github.com/vueuse/vueuse/issues/3252](https://togithub.com/vueuse/vueuse/issues/3252) [(9091e)](https://togithub.com/vueuse/vueuse/commit/9091e2c8)
- **reactiveComputed**: Unwrap reactive type - by [@sxzz](https://togithub.com/sxzz) in [https://github.com/vueuse/vueuse/issues/3215](https://togithub.com/vueuse/vueuse/issues/3215) [(17a72)](https://togithub.com/vueuse/vueuse/commit/17a725e2)
- **router**: Improves router functions: synchronize values, adds tests, and optimize performance - by [@anteriovieira](https://togithub.com/anteriovieira), [@antfu](https://togithub.com/antfu), **CJBoy** and **tzyoo** in [https://github.com/vueuse/vueuse/issues/3184](https://togithub.com/vueuse/vueuse/issues/3184) [(0d02f)](https://togithub.com/vueuse/vueuse/commit/0d02f6cc)
- **toRefs**: Don't trigger unwanted watchEffects - by [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3260](https://togithub.com/vueuse/vueuse/issues/3260) [(5309c)](https://togithub.com/vueuse/vueuse/commit/5309c26a)
- **useDateFormat**: Handle zero properly - by [@JocelynFloresz](https://togithub.com/JocelynFloresz) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3272](https://togithub.com/vueuse/vueuse/issues/3272) [(d6428)](https://togithub.com/vueuse/vueuse/commit/d642866a)
- **useEventListener**: Improved `useEventListener` overload - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3246](https://togithub.com/vueuse/vueuse/issues/3246) [(4f414)](https://togithub.com/vueuse/vueuse/commit/4f4141ad)
- **useFetch**: Generated payloadType on execute - by [@tolking](https://togithub.com/tolking) in [https://github.com/vueuse/vueuse/issues/3251](https://togithub.com/vueuse/vueuse/issues/3251) [(b7e3d)](https://togithub.com/vueuse/vueuse/commit/b7e3d7e8)
- **useInfiniteScroll**: Improve visibility check - by [@erikkkwu](https://togithub.com/erikkkwu) in [https://github.com/vueuse/vueuse/issues/3212](https://togithub.com/vueuse/vueuse/issues/3212) [(5ce61)](https://togithub.com/vueuse/vueuse/commit/5ce6151c)
- **useMediaQuery**: Only add/remove event listeners on query change - by [@Ingramz](https://togithub.com/Ingramz) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3236](https://togithub.com/vueuse/vueuse/issues/3236) [(f3969)](https://togithub.com/vueuse/vueuse/commit/f39691f7)
- **useObjectUrl**: Improve parameter type - by [@ferreira-tb](https://togithub.com/ferreira-tb) in [https://github.com/vueuse/vueuse/issues/3239](https://togithub.com/vueuse/vueuse/issues/3239) [(d3f7e)](https://togithub.com/vueuse/vueuse/commit/d3f7e6a9)
- **usePointer**: Add `pointerup` event for `pressure` field - by [@cunzaizhuyi](https://togithub.com/cunzaizhuyi) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3217](https://togithub.com/vueuse/vueuse/issues/3217) [(ee425)](https://togithub.com/vueuse/vueuse/commit/ee425ff8)
- **useScroll**: Support configurable window - by [@sheremet-va](https://togithub.com/sheremet-va) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3229](https://togithub.com/vueuse/vueuse/issues/3229) [(dde41)](https://togithub.com/vueuse/vueuse/commit/dde41666)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.2.1...v10.3.0)
### [`v10.2.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.2.1)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.2.0...v10.2.1)
##### 🚀 Features
- **useDropZone**: Expose more hooks - by [@antfu](https://togithub.com/antfu) [(17d8d)](https://togithub.com/vueuse/vueuse/commit/17d8da63)
- **useDropZone**: Expose files as ref - by [@antfu](https://togithub.com/antfu) [(6d4ef)](https://togithub.com/vueuse/vueuse/commit/6d4efc56)
##### 🐞 Bug Fixes
- **fromEvent**: Torn down properly - by [@benlesh](https://togithub.com/benlesh) in [https://github.com/vueuse/vueuse/issues/3155](https://togithub.com/vueuse/vueuse/issues/3155) [(fa7ed)](https://togithub.com/vueuse/vueuse/commit/fa7ed3a7)
- **toRefs**: Fix stack overflow caused by recursive `setPrototypeOf` - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3166](https://togithub.com/vueuse/vueuse/issues/3166) [(9f998)](https://togithub.com/vueuse/vueuse/commit/9f998a49)
- **useFullscreen**: Skip exiting when not in fullscreen mode - by [@tawen](https://togithub.com/tawen), [@antfu](https://togithub.com/antfu) and **Fernando Fernández** in [https://github.com/vueuse/vueuse/issues/3144](https://togithub.com/vueuse/vueuse/issues/3144) [(14edb)](https://togithub.com/vueuse/vueuse/commit/14edb4a6)
- **useInfiniteScroll**: Prevent infinite load when v-show set false - by [@wonderl17](https://togithub.com/wonderl17) in [https://github.com/vueuse/vueuse/issues/3143](https://togithub.com/vueuse/vueuse/issues/3143) [(a4dfa)](https://togithub.com/vueuse/vueuse/commit/a4dfa5ba)
- **useRafFn**: Set initial delta to zero - by [@haykkh](https://togithub.com/haykkh) in [https://github.com/vueuse/vueuse/issues/3150](https://togithub.com/vueuse/vueuse/issues/3150) [(cf6eb)](https://togithub.com/vueuse/vueuse/commit/cf6eb5fc)
- **useTimeoutPoll**: Unexpected immediate execution - by [@jiadesen](https://togithub.com/jiadesen) in [https://github.com/vueuse/vueuse/issues/3159](https://togithub.com/vueuse/vueuse/issues/3159) [(7a897)](https://togithub.com/vueuse/vueuse/commit/7a897e54)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.2.0...v10.2.1)
### [`v10.2.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.2.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.1.2...v10.2.0)
##### 🚀 Features
- **useAsyncQueue**: Add `options.signal` parameter - by [@cross-origin](https://togithub.com/cross-origin) in [https://github.com/vueuse/vueuse/issues/3033](https://togithub.com/vueuse/vueuse/issues/3033) [(7da7c)](https://togithub.com/vueuse/vueuse/commit/7da7c4e3)
- **useColorMode**: DisableTransition support pseudo-elements - by [@lainbo](https://togithub.com/lainbo) in [https://github.com/vueuse/vueuse/issues/3129](https://togithub.com/vueuse/vueuse/issues/3129) [(78a3a)](https://togithub.com/vueuse/vueuse/commit/78a3a622)
- **useDraggable**: Improve component props - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3075](https://togithub.com/vueuse/vueuse/issues/3075) [(6b670)](https://togithub.com/vueuse/vueuse/commit/6b6701ca)
- **useElementByPoint**: New `multiple` and `interval` options - by [@okxiaoliang4](https://togithub.com/okxiaoliang4) in [https://github.com/vueuse/vueuse/issues/3089](https://togithub.com/vueuse/vueuse/issues/3089) [(31b66)](https://togithub.com/vueuse/vueuse/commit/31b66263)
- **useFileDialog**: Add a parameter `reset` - by [@zaqvil](https://togithub.com/zaqvil) in [https://github.com/vueuse/vueuse/issues/3059](https://togithub.com/vueuse/vueuse/issues/3059) [(6d847)](https://togithub.com/vueuse/vueuse/commit/6d8477c7)
- **useImage**: Support referrerPolicy option - by [@btea](https://togithub.com/btea) in [https://github.com/vueuse/vueuse/issues/3132](https://togithub.com/vueuse/vueuse/issues/3132) [(04d32)](https://togithub.com/vueuse/vueuse/commit/04d32d8d)
- **useSortable**: Add option set get method - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3108](https://togithub.com/vueuse/vueuse/issues/3108) [(14283)](https://togithub.com/vueuse/vueuse/commit/14283908)
- **useVModel**: Improve types overload - by [@Mini-ghost](https://togithub.com/Mini-ghost) in [https://github.com/vueuse/vueuse/issues/3055](https://togithub.com/vueuse/vueuse/issues/3055) [(7d788)](https://togithub.com/vueuse/vueuse/commit/7d788aaf)
##### 🐞 Bug Fixes
- **onClickOutside**: Ensure focus on iframe captured in firefox - by [@Geit](https://togithub.com/Geit) in [https://github.com/vueuse/vueuse/issues/3066](https://togithub.com/vueuse/vueuse/issues/3066) [(2c66e)](https://togithub.com/vueuse/vueuse/commit/2c66ef5f)
- **useAxios**: Prevent premature loading refs reset - by [@MickaelOth](https://togithub.com/MickaelOth) in [https://github.com/vueuse/vueuse/issues/3076](https://togithub.com/vueuse/vueuse/issues/3076) [(b1701)](https://togithub.com/vueuse/vueuse/commit/b17010f8)
- **useCloned**: Check for getter function to watch - by [@ydcjeff](https://togithub.com/ydcjeff) in [https://github.com/vueuse/vueuse/issues/3142](https://togithub.com/vueuse/vueuse/issues/3142) [(6d630)](https://togithub.com/vueuse/vueuse/commit/6d630272)
- **useCssVar**: Observe changes based on element class list - by [@Waleed-KH](https://togithub.com/Waleed-KH) in [https://github.com/vueuse/vueuse/issues/3131](https://togithub.com/vueuse/vueuse/issues/3131) [(9d34a)](https://togithub.com/vueuse/vueuse/commit/9d34afc4)
- **useMediaControls**: Better representation for "waiting" value - by [@ferferga](https://togithub.com/ferferga) in [https://github.com/vueuse/vueuse/issues/3072](https://togithub.com/vueuse/vueuse/issues/3072) [(0b253)](https://togithub.com/vueuse/vueuse/commit/0b253bb4)
- **useRouteHash,useRouteQuery,useRouteParams**: Re-evaluates the value immediately - by [@anteriovieira](https://togithub.com/anteriovieira) in [https://github.com/vueuse/vueuse/issues/3002](https://togithub.com/vueuse/vueuse/issues/3002) [(d5252)](https://togithub.com/vueuse/vueuse/commit/d5252444)
- **useScroll**: Support window in setArrivedState - by [@smallnine9](https://togithub.com/smallnine9) and **yulj5** in [https://github.com/vueuse/vueuse/issues/3086](https://togithub.com/vueuse/vueuse/issues/3086) [(8855f)](https://togithub.com/vueuse/vueuse/commit/8855f246)
- **useScrollLock**: Fix scrollable children check - by [@valerypatorius](https://togithub.com/valerypatorius) in [https://github.com/vueuse/vueuse/issues/3065](https://togithub.com/vueuse/vueuse/issues/3065) [(cdc28)](https://togithub.com/vueuse/vueuse/commit/cdc28615)
- **useTextareaAutosize**: Autosize error when changing `input` asynchronously - by [@jsonleex](https://togithub.com/jsonleex) in [https://github.com/vueuse/vueuse/issues/3118](https://togithub.com/vueuse/vueuse/issues/3118) [(1b0ec)](https://togithub.com/vueuse/vueuse/commit/1b0ec281)
- **useWebWorker**: Add web worker transferable option - by [@yassilah](https://togithub.com/yassilah) in [https://github.com/vueuse/vueuse/issues/3123](https://togithub.com/vueuse/vueuse/issues/3123) [(5988f)](https://togithub.com/vueuse/vueuse/commit/5988f730)
- **watchImmediate**: Fix overload signature - by [@ferreira-tb](https://togithub.com/ferreira-tb) in [https://github.com/vueuse/vueuse/issues/3114](https://togithub.com/vueuse/vueuse/issues/3114) [(4b4e6)](https://togithub.com/vueuse/vueuse/commit/4b4e6c26)
##### 🏎 Performance
- **useCssVar**: Only listen for style changes - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3057](https://togithub.com/vueuse/vueuse/issues/3057) [(3233a)](https://togithub.com/vueuse/vueuse/commit/3233af2c)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.1.2...v10.2.0)
### [`v10.1.2`](https://togithub.com/vueuse/vueuse/compare/v10.1.0...v10.1.2)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.1.0...v10.1.2)
### [`v10.1.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.1.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.2...v10.1.0)
##### 🚀 Features
- **useAsyncState**: Add support directly await - by [@Hfutsora](https://togithub.com/Hfutsora) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3004](https://togithub.com/vueuse/vueuse/issues/3004) [(d4db0)](https://togithub.com/vueuse/vueuse/commit/d4db0adf)
- **useColorMode**: Expose `state` to the ref, deprecated `emitAuto` - by [@Waleed-KH](https://togithub.com/Waleed-KH) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2980](https://togithub.com/vueuse/vueuse/issues/2980) [(a1bef)](https://togithub.com/vueuse/vueuse/commit/a1bef490)
- **useMouse**: Support custom event extractor - by [@RAX7](https://togithub.com/RAX7) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2991](https://togithub.com/vueuse/vueuse/issues/2991) [(4bb5b)](https://togithub.com/vueuse/vueuse/commit/4bb5bf0e)
- **watch**: `watchImmediate` and `watchDeep` support overloads - by [@Mini-ghost](https://togithub.com/Mini-ghost) in [https://github.com/vueuse/vueuse/issues/2998](https://togithub.com/vueuse/vueuse/issues/2998) [(8f6a0)](https://togithub.com/vueuse/vueuse/commit/8f6a0c5c)
##### 🐞 Bug Fixes
- Dialog mask add z-index - by [@recallwei](https://togithub.com/recallwei) in [https://github.com/vueuse/vueuse/issues/3005](https://togithub.com/vueuse/vueuse/issues/3005) [(07ebe)](https://togithub.com/vueuse/vueuse/commit/07ebe338)
- **useColorMode**: Element ref support, close [#3003](https://togithub.com/vueuse/vueuse/issues/3003) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3003](https://togithub.com/vueuse/vueuse/issues/3003) [(adbbb)](https://togithub.com/vueuse/vueuse/commit/adbbb6ef)
- **useCycleList**: Correctly wrap list with ref - by [@fan5530](https://togithub.com/fan5530) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2988](https://togithub.com/vueuse/vueuse/issues/2988) [(659b2)](https://togithub.com/vueuse/vueuse/commit/659b2c9d)
- **useDateFormat**: Error if Y or YYY provided - by [@dinocam1](https://togithub.com/dinocam1) and **Dino Camdzic** in [https://github.com/vueuse/vueuse/issues/3001](https://togithub.com/vueuse/vueuse/issues/3001) [(a2147)](https://togithub.com/vueuse/vueuse/commit/a2147fdd)
- **useFullscreen**: `isFullscreen` handling for mutliple fullscreen elements - by [@zaqvil](https://togithub.com/zaqvil) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3000](https://togithub.com/vueuse/vueuse/issues/3000) [(4a7a1)](https://togithub.com/vueuse/vueuse/commit/4a7a12cc)
- **useMediaControls**: Apply state when target ref changes - by [@ferferga](https://togithub.com/ferferga) in [https://github.com/vueuse/vueuse/issues/2999](https://togithub.com/vueuse/vueuse/issues/2999) [(b20aa)](https://togithub.com/vueuse/vueuse/commit/b20aacf5)
- **useSwipe**: Ignore multiple touches - by [@ARZarkesh](https://togithub.com/ARZarkesh) in [https://github.com/vueuse/vueuse/issues/2994](https://togithub.com/vueuse/vueuse/issues/2994) [(995aa)](https://togithub.com/vueuse/vueuse/commit/995aadb0)
- **useSwipe**: Ignore multiple touches - by [@ARZarkesh](https://togithub.com/ARZarkesh) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2996](https://togithub.com/vueuse/vueuse/issues/2996) [(af3ca)](https://togithub.com/vueuse/vueuse/commit/af3ca89d)
- **useTransition**: Fix regression with non-linear transition functions - by [@scottbedard](https://togithub.com/scottbedard) in [https://github.com/vueuse/vueuse/issues/2973](https://togithub.com/vueuse/vueuse/issues/2973) [(8b330)](https://togithub.com/vueuse/vueuse/commit/8b3300be)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.2...v10.1.0)
### [`v10.0.2`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.2)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.1...v10.0.2)
##### 🐞 Bug Fixes
- Module reference, close [#2972](https://togithub.com/vueuse/vueuse/issues/2972) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2972](https://togithub.com/vueuse/vueuse/issues/2972) [(7d001)](https://togithub.com/vueuse/vueuse/commit/7d001e33)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.1...v10.0.2)
### [`v10.0.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.1)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.0...v10.0.1)
##### 🐞 Bug Fixes
- **nuxt**: Do not auto-import `toRef` and `toValue` - by [@antfu](https://togithub.com/antfu) [(9225f)](https://togithub.com/vueuse/vueuse/commit/9225fc77)
- **useIntersectionObserver**: Targets length check - by [@schelmo](https://togithub.com/schelmo) in [https://github.com/vueuse/vueuse/issues/2968](https://togithub.com/vueuse/vueuse/issues/2968) [(b95b6)](https://togithub.com/vueuse/vueuse/commit/b95b6210)
##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.0...v10.0.1)
### [`v10.0.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.0)
[Compare Source](https://togithub.com/vueuse/vueuse/compare/v9.13.0...v10.0.0)
![VueUse v10](https://user-images.githubusercontent.com/11247099/231996807-fb756cbe-8e19-45f0-a33a-91a80b35482b.png)
##### ✨ Highlights
- [`createReusableTemplate`](https://vueuse.org/core/createreusabletemplate/) from https://github.com/antfu/vue-reuse-template
- [`createTemplatePromise`](https://vueuse.org/core/createTemplatePromise/) from https://github.com/antfu/vue-template-promise
- [`useAnimate`](https://vueuse.org/core/useAnimate/) for native animation API, thanks to [@tolking](https://togithub.com/tolking)
- Renamed `resolveRef` to `toRef`, `resolveUnref` to `toValue`, aligning with Vue 3.3: [https://github.com/vuejs/core/pull/7997](https://togithub.com/vuejs/core/pull/7997)
- Improved tree-shaking
- Cleaned up long-lasting PRs, thanks to all!
##### 🚨 Breaking Changes
- Remove deprecated types - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2656](https://togithub.com/vueuse/vueuse/issues/2656) [(c2fee)](https://togithub.com/vueuse/vueuse/commit/c2fee4e5)
- Remove `isFunction` and `isString` utils [(cb644)](https://togithub.com/vueuse/vueuse/commit/cb644e03)
- **computedAsync**:
- Set shallow defalut to true - by [@xiankaiqun](https://togithub.com/xiankaiqun) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2621](https://togithub.com/vueuse/vueuse/issues/2621) [(23c9d)](https://togithub.com/vueuse/vueuse/commit/23c9d45d)
- **toRef**:
- Rename `resolveRef` to `toRef` [(10e98)](https://togithub.com/vueuse/vueuse/commit/10e98911)
- **types**:
- Rename `MaybeComputedRef` to `MaybeRefOrGetter` [(4d757)](https://togithub.com/vueuse/vueuse/commit/4d7577ee)
- **useAxios**:
- `error` should return type `unknown` - by [@jbaubree](https://togithub.com/jbaubree) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2807](https://togithub.com/vueuse/vueuse/issues/2807) [(d8d73)](https://togithub.com/vueuse/vueuse/commit/d8d732e0)
- Remove deprecated apis [(1f8b9)](https://togithub.com/vueuse/vueuse/commit/1f8b92c1)
- Reject promise on `execute` - by [@FRSgit](https://togithub.com/FRSgit) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2485](https://togithub.com/vueuse/vueuse/issues/2485) [(edece)](https://togithub.com/vueuse/vueuse/commit/edece1a2)
- **useColorMode**:
- Enable `disableTransition` by default [(5c82c)](https://togithub.com/vueuse/vueuse/commit/5c82cf3a)
- **useElementVisibility**:
- Use useIntersectionObserver instead of scroll event handler - by [@curtgrimes](https://togithub.com/curtgrimes) in [https://github.com/vueuse/vueuse/issues/2551](https://togithub.com/vueuse/vueuse/issues/2551) [(74b00)](https://togithub.com/vueuse/vueuse/commit/74b00a09)
- **useEventBus,createEventHook**:
- Dedupe registration of the same function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2748](https://togithub.com/vueuse/vueuse/issues/2748) [(dd514)](https://togithub.com/vueuse/vueuse/commit/dd514616)
- **useFullscreen**:
- Better cross-platform compatibility - by [@ferferga](https://togithub.com/ferferga) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2915](https://togithub.com/vueuse/vueuse/issues/2915) [(2e467)](https://togithub.com/vueuse/vueuse/commit/2e46781f)
- **useIDBKeyval**:
- Return format changed, add `isFinished` - by [@jssullivan](https://togithub.com/jssullivan) and **james.sullivan** in [https://github.com/vueuse/vueuse/issues/2474](https://togithub.com/vueuse/vueuse/issues/2474) [(ef281)](https://togithub.com/vueuse/vueuse/commit/ef281cdf)
- **useInfiniteScroll**:
- Improve loading strategies, close [#1701](https://togithub.com/vueuse/vueuse/issues/1701), close [#1685](https://togithub.com/vueuse/vueuse/issues/1685) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/1701](https://togithub.com/vueuse/vueuse/issues/1701) and [https://github.com/vueuse/vueuse/issues/1685](https://togithub.com/vueuse/vueuse/issues/1685) [(d3a2b)](https://togithub.com/vueuse/vueuse/commit/d3a2bcae)
- **useSwipe**:
- Use literal for swipe direction instead of enum [(f285c)](https://togithub.com/vueuse/vueuse/commit/f285c12e)
- **useToFixed**:
- Remove deprecated function [(a6e5b)](https://togithub.com/vueuse/vueuse/commit/a6e5b6da)
- **useUserMedia**:
- Add constraints - remove deviceIds - by [@mango-martin](https://togithub.com/mango-martin) in [https://github.com/vueuse/vueuse/issues/2032](https://togithub.com/vueuse/vueuse/issues/2032) [(8f2a3)](https://togithub.com/vueuse/vueuse/commit/8f2a3c48)
- Remove deprecated apis [(85468)](https://togithub.com/vueuse/vueuse/commit/854689c7)
- **useWebNotification**:
- Should be exposed as EventHooksOn - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2821](https://togithub.com/vueuse/vueuse/issues/2821) [(bcd2a)](https://togithub.com/vueuse/vueuse/commit/bcd2ada1)
- **useWindowSize**:
- Use media query instead of `orientationchange` listener - by [@zhousg](https://togithub.com/zhousg) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2919](https://togithub.com/vueuse/vueuse/issues/2919) [(4e7b0)](https://togithub.com/vueuse/vueuse/commit/4e7b025c)
##### 🚀 Features
- Update deps [(e75a5)](https://togithub.com/vueuse/vueuse/commit/e75a5e61)
- Improve tree-shaking [(3275e)](https://togithub.com/vueuse/vueuse/commit/3275e94a)
- **createEventHook**:
- Allow awaiting on `trigger` - by [@Akryum](https://togithub.com/Akryum) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2824](https://togithub.com/vueuse/vueuse/issues/2824) [(31347)](https://togithub.com/vueuse/vueuse/commit/313477d1)
- **createGlobalState**:
- Allow passing initial args - by [@jd-solanki](https://togithub.com/jd-solanki) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2790](https://togithub.com/vueuse/vueuse/issues/2790) [(f21b2)](https://togithub.com/vueuse/vueuse/commit/f21b26a7)
- **createReusableTemplate**:
- New function - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2961](https://togithub.com/vueuse/vueuse/issues/2961) [(bd53c)](https://togithub.com/vueuse/vueuse/commit/bd53cc30)
- **createTemplatePromise**:
- New function - by [@antfu](https://togithub.com/antfu) and **Enzo Innocenzi** in [https://github.com/vueuse/vueuse/issues/2957](https://togithub.com/vueuse/vueuse/issues/2957) [(13169)](https://togithub.com/vueuse/vueuse/commit/131696de)
- **onKeyStroke**:
- Support ignoring repeated stroke - by [@vaakian](https://togithub.com/vaakian) in [https://github.com/vueuse/vueuse/issues/2652](https://togithub.com/vueuse/vueuse/issues/2652) [(22ca5)](https://togithub.com/vueuse/vueuse/commit/22ca5137)
- **reactiveOmit**:
- Add predicate parameter - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2849](https://togithub.com/vueuse/vueuse/issues/2849) [(2e297)](https://togithub.com/vueuse/vueuse/commit/2e297db7)
- **reactivePick**:
- Add predicate parameter - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2850](https://togithub.com/vueuse/vueuse/issues/2850) [(0bde4)](https://togithub.com/vueuse/vueuse/commit/0bde4543)
- **toRef**:
- Support two argument overrides from Vue [(f307f)](https://togithub.com/vueuse/vueuse/commit/f307ff77)
- **toValue**:
- Rename `resolveUnref` to `toValue` [(0a72b)](https://togithub.com/vueuse/vueuse/commit/0a72ba10)
- **useAnimate**:
- New function - by [@tolking](https://togithub.com/tolking) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2109](https://togithub.com/vueuse/vueuse/issues/2109) [(bcf5d)](https://togithub.com/vueuse/vueuse/commit/bcf5da09)
- **useArrayDifference**:
- New function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2710](https://togithub.com/vueuse/vueuse/issues/2710) [(a2a33)](https://togithub.com/vueuse/vueuse/commit/a2a338d5)
- **useArrayIncludes**:
- New function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2708](https://togithub.com/vueuse/vueuse/issues/2708) [(4d6bc)](https://togithub.com/vueuse/vueuse/commit/4d6bc001)
- **useArrayUnique**:
- Add a custom function to deduplicate - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2612](https://togithub.com/vueuse/vueuse/issues/2612) [(c8c30)](https://togithub.com/vueuse/vueuse/commit/c8c30435)
- **useAsyncValidator**:
- Add immediate and execute - by [@jaw52](https://togithub.com/jaw52) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2899](https://togithub.com/vueuse/vueuse/issues/2899) [(79176)](https://togithub.com/vueuse/vueuse/commit/79176651)
- Add `manual` option - by [@jaw52](https://togithub.com/jaw52) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2903](https://togithub.com/vueuse/vueuse/issues/2903) [(16461)](https://togithub.com/vueuse/vueuse/commit/16461dbe)
- **useAxios**:
- Added `onFinish` callback - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2829](https://togithub.com/vueuse/vueuse/issues/2829) [(a2f33)](https://togithub.com/vueuse/vueuse/commit/a2f334d7)
- Added `initialData` and `resetOnExecute` options - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2791](https://togithub.com/vueuse/vueuse/issues/2791) [(f54a3)](https://togithub.com/vueuse/vueuse/commit/f54a3c47)
- **useBreakpoints**:
- Getting current breakpoints - by [@ineshbose](https://togithub.com/ineshbose) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2906](https://togithub.com/vueuse/vueuse/issues/2906) [(bbabd)](https://togithub.com/vueuse/vueuse/commit/bbabdbdc)
- **useBrowserLocation**:
- Two-way binding - by [@sxzz](https://togithub.com/sxzz) in [https://github.com/vueuse/vueuse/issues/2168](https://togithub.com/vueuse/vueuse/issues/2168) [(a860c)](https://togithub.com/vueuse/vueuse/commit/a860cf8c)
- **useColorMode**:
- Support passing element as `selector` - by [@Wing-9527](https://togithub.com/Wing-9527) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2760](https://togithub.com/vueuse/vueuse/issues/2760) [(02ccc)](https://togithub.com/vueuse/vueuse/commit/02ccce9a)
- Expose `system` and `store` ref, close [#2023](https://togithub.com/vueuse/vueuse/issues/2023) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2023](https://togithub.com/vueuse/vueuse/issues/2023) [(d150c)](https://togithub.com/vueuse/vueuse/commit/d150ca22)
- **useCssVar**:
- Introduce `observe` option - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2800](https://togithub.com/vueuse/vueuse/issues/2800) [(ae6e1)](https://togithub.com/vueuse/vueuse/commit/ae6e174d)
- **useCycleList**:
- Allow receiving reactive list - by [@hjJunior](https://togithub.com/hjJunior) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2864](https://togithub.com/vueuse/vueuse/issues/2864) [(b65c2)](https://togithub.com/vueuse/vueuse/commit/b65c2ccd)
- **useDark**:
- Passthrough default handler from `useColorSchema` - by [@godismyjudge95](https://togithub.com/godismyjudge95) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2866](https://togi
Configuration
📅 Schedule: Branch creation - "every 3 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
^9.0.0
->^10.0.0
^9.13.0
->^10.0.0
Release Notes
vueuse/vueuse (@vueuse/core)
### [`v10.6.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.6.1) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.6.0...v10.6.1) ##### 🐞 Bug Fixes - **useScroll**: Can not read properties of null (reading document) - by [@Jokerzhzh](https://togithub.com/Jokerzhzh) and [@joaopslins](https://togithub.com/joaopslins) in [https://github.com/vueuse/vueuse/issues/3544](https://togithub.com/vueuse/vueuse/issues/3544) [(e9742)](https://togithub.com/vueuse/vueuse/commit/e97427f2) - **useVirtualList**: `.style` can be undefined - by [@antfu](https://togithub.com/antfu) [(3d6b9)](https://togithub.com/vueuse/vueuse/commit/3d6b9c62) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.6.0...v10.6.1) ### [`v10.6.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.6.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.5.0...v10.6.0) ##### 🚀 Features - **createEventHook**: Allow trigger to optionally have no parameters - by [@curtgrimes](https://togithub.com/curtgrimes) in [https://github.com/vueuse/vueuse/issues/3507](https://togithub.com/vueuse/vueuse/issues/3507) [(6040e)](https://togithub.com/vueuse/vueuse/commit/6040e1cc) - **onLongClick**: Return stop function - by [@its-lee](https://togithub.com/its-lee) and **lee** in [https://github.com/vueuse/vueuse/issues/3506](https://togithub.com/vueuse/vueuse/issues/3506) [(8eb0b)](https://togithub.com/vueuse/vueuse/commit/8eb0b2d7) - **syncRef**: Enhance syncRef type restrict - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3515](https://togithub.com/vueuse/vueuse/issues/3515) [(89266)](https://togithub.com/vueuse/vueuse/commit/892666b7) - **useClipboard**: UseClipboard component - by [@alexzvn](https://togithub.com/alexzvn), **Alexzvn** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3359](https://togithub.com/vueuse/vueuse/issues/3359) [(71b46)](https://togithub.com/vueuse/vueuse/commit/71b4653d) - **useClipboardItems**: New function - by [@Doctor-wu](https://togithub.com/Doctor-wu) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3477](https://togithub.com/vueuse/vueuse/issues/3477) [(1aa50)](https://togithub.com/vueuse/vueuse/commit/1aa50f82) - **useDateFormat**: Add date ordinal formatting - by [@Jokerzhzh](https://togithub.com/Jokerzhzh) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3474](https://togithub.com/vueuse/vueuse/issues/3474) [(61ceb)](https://togithub.com/vueuse/vueuse/commit/61ceb19f) - **useDropZone**: Add `dataTypes` option - by [@rtugeek](https://togithub.com/rtugeek) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3471](https://togithub.com/vueuse/vueuse/issues/3471) [(3f3f1)](https://togithub.com/vueuse/vueuse/commit/3f3f153e) - **useElementSize**: Stop function - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3367](https://togithub.com/vueuse/vueuse/issues/3367) [(5f545)](https://togithub.com/vueuse/vueuse/commit/5f545be9) - **useFileDialog**: Add directory parameters - by [@huiliangShen](https://togithub.com/huiliangShen) and **banruo** in [https://github.com/vueuse/vueuse/issues/3513](https://togithub.com/vueuse/vueuse/issues/3513) [(cefca)](https://togithub.com/vueuse/vueuse/commit/cefca9ab) - **useMutationObserver**: Add `takeRecords` function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3480](https://togithub.com/vueuse/vueuse/issues/3480) [(f9136)](https://togithub.com/vueuse/vueuse/commit/f9136e85) - **useStorage**: Add `waitOnMounted` option for SSR - by [@posva](https://togithub.com/posva) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3504](https://togithub.com/vueuse/vueuse/issues/3504) [(dc6f2)](https://togithub.com/vueuse/vueuse/commit/dc6f2e8c) - **useWindowScroll**: Allow rewriting back to scroll - by [@nothing-sy](https://togithub.com/nothing-sy), **chensiyuan** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3500](https://togithub.com/vueuse/vueuse/issues/3500) [(931b2)](https://togithub.com/vueuse/vueuse/commit/931b2797) - **watchOnce**: Return function for manual watcher stopping - by [@valerypatorius](https://togithub.com/valerypatorius) in [https://github.com/vueuse/vueuse/issues/3475](https://togithub.com/vueuse/vueuse/issues/3475) [(bb0a7)](https://togithub.com/vueuse/vueuse/commit/bb0a78e1) ##### 🐞 Bug Fixes - **onClickOutside**: Adjust shouldListen handling timing - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3503](https://togithub.com/vueuse/vueuse/issues/3503) [(69851)](https://togithub.com/vueuse/vueuse/commit/6985152d) - **onScrollLock**: Cache the el initial overflow value - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3527](https://togithub.com/vueuse/vueuse/issues/3527) [(03866)](https://togithub.com/vueuse/vueuse/commit/038666ba) - **useAxios**: Bail out on request abort - by [@jahnli](https://togithub.com/jahnli) in [https://github.com/vueuse/vueuse/issues/3394](https://togithub.com/vueuse/vueuse/issues/3394) [(151f9)](https://togithub.com/vueuse/vueuse/commit/151f9b00) - **useClipboard**: Use legacy way when without permission - by [@Cat1007](https://togithub.com/Cat1007), **catye**, [@posva](https://togithub.com/posva) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3379](https://togithub.com/vueuse/vueuse/issues/3379) [(37e86)](https://togithub.com/vueuse/vueuse/commit/37e866cd) - **useDraggable**: Element can't relative parent element move - by [@huiliangShen](https://togithub.com/huiliangShen) and **banruo** in [https://github.com/vueuse/vueuse/issues/3531](https://togithub.com/vueuse/vueuse/issues/3531) [(08246)](https://togithub.com/vueuse/vueuse/commit/082462da) - **useElementSize**: Get value in onMounted hook - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3366](https://togithub.com/vueuse/vueuse/issues/3366) [(165c8)](https://togithub.com/vueuse/vueuse/commit/165c88ab) - **useFetch**: Don't set isFetching to false when a request is aborted because of a refetch - by [@mweghorst](https://togithub.com/mweghorst) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3479](https://togithub.com/vueuse/vueuse/issues/3479) [(75ca2)](https://togithub.com/vueuse/vueuse/commit/75ca2bb6) - **useMouseInElement**: Optimize outside computation - by [@qiYuei](https://togithub.com/qiYuei), **fengmingjian** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3380](https://togithub.com/vueuse/vueuse/issues/3380) [(7c88d)](https://togithub.com/vueuse/vueuse/commit/7c88d81b) - **useRouteQuery,useRouteParams**: Prevent reset on other scope dispose - by [@s-montigny-desautels](https://togithub.com/s-montigny-desautels) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3418](https://togithub.com/vueuse/vueuse/issues/3418) [(771e7)](https://togithub.com/vueuse/vueuse/commit/771e7ffd) - **useScroll**: Trigger once `onMounted` to get correct inital arrivedStates values - by [@nicooprat](https://togithub.com/nicooprat) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3384](https://togithub.com/vueuse/vueuse/issues/3384) [(86bd8)](https://togithub.com/vueuse/vueuse/commit/86bd8e8f) - **useSortable**: Prevent from creating multi instances - by [@Doctor-wu](https://togithub.com/Doctor-wu) in [https://github.com/vueuse/vueuse/issues/3501](https://togithub.com/vueuse/vueuse/issues/3501) [(d9846)](https://togithub.com/vueuse/vueuse/commit/d98468d1) - **useStorage**: Fix defaults not unwrapped - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3534](https://togithub.com/vueuse/vueuse/issues/3534) [(b6d2b)](https://togithub.com/vueuse/vueuse/commit/b6d2bd35) - **useWebSocket**: Webworker support - by [@binary-signal](https://togithub.com/binary-signal) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3469](https://togithub.com/vueuse/vueuse/issues/3469) [(9b014)](https://togithub.com/vueuse/vueuse/commit/9b0141ca) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.5.0...v10.6.0) ### [`v10.5.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.5.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.4.1...v10.5.0) ##### 🚀 Features - Add `Promisify` type definition - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3420](https://togithub.com/vueuse/vueuse/issues/3420) [(b067b)](https://togithub.com/vueuse/vueuse/commit/b067b8e4) - **createInjectionState**: Allow provide and inject in same component - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3387](https://togithub.com/vueuse/vueuse/issues/3387) [(5d948)](https://togithub.com/vueuse/vueuse/commit/5d948714) - **createInjectionState**: Add injectionKey option - by [@PPetau](https://togithub.com/PPetau) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3404](https://togithub.com/vueuse/vueuse/issues/3404) [(90d34)](https://togithub.com/vueuse/vueuse/commit/90d34004) - **rxjs**: Add useExtractedObservable and watchExtractedObservable - by [@Voltra](https://togithub.com/Voltra) in [https://github.com/vueuse/vueuse/issues/3453](https://togithub.com/vueuse/vueuse/issues/3453) [(23b8c)](https://togithub.com/vueuse/vueuse/commit/23b8ca9c) - **useFavicon**: Add link tag if it doesn't exist - by [@babu-ch](https://togithub.com/babu-ch) in [https://github.com/vueuse/vueuse/issues/3444](https://togithub.com/vueuse/vueuse/issues/3444) [(d1fcc)](https://togithub.com/vueuse/vueuse/commit/d1fcc573) - **useMousePressed**: Add capture option - by [@DerZade](https://togithub.com/DerZade) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3392](https://togithub.com/vueuse/vueuse/issues/3392) [(d5c81)](https://togithub.com/vueuse/vueuse/commit/d5c81b3c) - **useMutationObserver**: Use MaybeComputedElementRef - by [@huodoushigemi](https://togithub.com/huodoushigemi) in [https://github.com/vueuse/vueuse/issues/3430](https://togithub.com/vueuse/vueuse/issues/3430) [(8167b)](https://togithub.com/vueuse/vueuse/commit/8167bc4b) - **useRafFn**: Option fpsLimit - by [@f820602h](https://togithub.com/f820602h) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3459](https://togithub.com/vueuse/vueuse/issues/3459) [(8e4c0)](https://togithub.com/vueuse/vueuse/commit/8e4c01bd) ##### 🐞 Bug Fixes - Vue 2 support for provideLocal and injectLocal - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) in [https://github.com/vueuse/vueuse/issues/3464](https://togithub.com/vueuse/vueuse/issues/3464) [(cf757)](https://togithub.com/vueuse/vueuse/commit/cf757029) - **useBreakpoints**: Add missing breakpoint for the bootstrap - by [@edtorba](https://togithub.com/edtorba) in [https://github.com/vueuse/vueuse/issues/3413](https://togithub.com/vueuse/vueuse/issues/3413) [(ec9a4)](https://togithub.com/vueuse/vueuse/commit/ec9a45b4) - **useDrauu**: Spread options for `brush` - by [@17359898647](https://togithub.com/17359898647) in [https://github.com/vueuse/vueuse/issues/3463](https://togithub.com/vueuse/vueuse/issues/3463) [(87ea3)](https://togithub.com/vueuse/vueuse/commit/87ea324a) - **useVModels**: Type error with passive: true - by [@chaii3](https://togithub.com/chaii3) in [https://github.com/vueuse/vueuse/issues/3362](https://togithub.com/vueuse/vueuse/issues/3362) [(51f01)](https://togithub.com/vueuse/vueuse/commit/51f012b5) - **useWebNotification**: Condition check on permission - by [@SampsonCrowley](https://togithub.com/SampsonCrowley) in [https://github.com/vueuse/vueuse/issues/3422](https://togithub.com/vueuse/vueuse/issues/3422) [(2f2b4)](https://togithub.com/vueuse/vueuse/commit/2f2b4923) - **useWebSocket**: Ssr support - by [@huangyan321](https://togithub.com/huangyan321) in [https://github.com/vueuse/vueuse/issues/3370](https://togithub.com/vueuse/vueuse/issues/3370) [(c3a69)](https://togithub.com/vueuse/vueuse/commit/c3a69eea) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.4.1...v10.5.0) ### [`v10.4.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.4.1) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.4.0...v10.4.1) ##### 🐞 Bug Fixes - Transpile target to `es2018`, close [#3349](https://togithub.com/vueuse/vueuse/issues/3349) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3349](https://togithub.com/vueuse/vueuse/issues/3349) [(0e4a5)](https://togithub.com/vueuse/vueuse/commit/0e4a5f03) - **useEventListener**: Immutable options on removal, close [#2825](https://togithub.com/vueuse/vueuse/issues/2825) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3346](https://togithub.com/vueuse/vueuse/issues/3346) and [https://github.com/vueuse/vueuse/issues/2825](https://togithub.com/vueuse/vueuse/issues/2825) [(3ef59)](https://togithub.com/vueuse/vueuse/commit/3ef59cb1) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.4.0...v10.4.1) ### [`v10.4.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.4.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.3.0...v10.4.0) ##### 🚀 Features - **refAutoReset**: Support maybe-ref as value - by [@moander](https://togithub.com/moander) in [https://github.com/vueuse/vueuse/issues/3342](https://togithub.com/vueuse/vueuse/issues/3342) [(71685)](https://togithub.com/vueuse/vueuse/commit/71685357) - **useAsyncQueue**: Support in infinite tasks in typescript - by [@ethansnow2012](https://togithub.com/ethansnow2012) in [https://github.com/vueuse/vueuse/issues/3333](https://togithub.com/vueuse/vueuse/issues/3333) [(22e26)](https://togithub.com/vueuse/vueuse/commit/22e26dc5) - **useBreakpoints**: Add breakpoints for PrimeFlex - by [@adrianrudnik](https://togithub.com/adrianrudnik) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3317](https://togithub.com/vueuse/vueuse/issues/3317) [(8b5ed)](https://togithub.com/vueuse/vueuse/commit/8b5ed4d2) - **useDraggable**: Allowing calculations of bounds with fixed element - by [@linspw](https://togithub.com/linspw) in [https://github.com/vueuse/vueuse/issues/3335](https://togithub.com/vueuse/vueuse/issues/3335) [(c08e5)](https://togithub.com/vueuse/vueuse/commit/c08e5e09) - **useFetch**: Introduce `updateDataOnError` option - by [@climba03003](https://togithub.com/climba03003) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3092](https://togithub.com/vueuse/vueuse/issues/3092) [(945ca)](https://togithub.com/vueuse/vueuse/commit/945ca167) - **useIdbKeyval**: Ability to wait for IDB writes - by [@AbdallahAlhaddad](https://togithub.com/AbdallahAlhaddad) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3338](https://togithub.com/vueuse/vueuse/issues/3338) [(77a86)](https://togithub.com/vueuse/vueuse/commit/77a8627d) - **useWebNotification**: Add `requestPermissions` option, return `permissionGranted` and `ensurePermissions` - by [@michealroberts](https://togithub.com/michealroberts) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3325](https://togithub.com/vueuse/vueuse/issues/3325) [(a1753)](https://togithub.com/vueuse/vueuse/commit/a1753d98) ##### 🐞 Bug Fixes - **syncRef**: Avoid infinite sync - by [@chaii3](https://togithub.com/chaii3) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3312](https://togithub.com/vueuse/vueuse/issues/3312) [(bc966)](https://togithub.com/vueuse/vueuse/commit/bc9665d1) - **useElementSize**: Add `as` prop for component usage - by [@menghany](https://togithub.com/menghany) in [https://github.com/vueuse/vueuse/issues/3274](https://togithub.com/vueuse/vueuse/issues/3274) [(791f7)](https://togithub.com/vueuse/vueuse/commit/791f7b10) - **useElementVisibility**: Adjust threshold to 0 to fix visibility issue with large element - by [@erikkkwu](https://togithub.com/erikkkwu) in [https://github.com/vueuse/vueuse/issues/3308](https://togithub.com/vueuse/vueuse/issues/3308) [(429ed)](https://togithub.com/vueuse/vueuse/commit/429edda7) - **useFileSystemAccess**: Make options to be optional - by [@171h](https://togithub.com/171h) in [https://github.com/vueuse/vueuse/issues/3320](https://togithub.com/vueuse/vueuse/issues/3320) [(a9c8b)](https://togithub.com/vueuse/vueuse/commit/a9c8b069) - **useMouse**: Position won't be changed on page scroll when `type` is `page`, closes [#2922](https://togithub.com/vueuse/vueuse/issues/2922) - by [@CatsJuice](https://togithub.com/CatsJuice) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3244](https://togithub.com/vueuse/vueuse/issues/3244) and [https://github.com/vueuse/vueuse/issues/2922](https://togithub.com/vueuse/vueuse/issues/2922) [(c2f64)](https://togithub.com/vueuse/vueuse/commit/c2f641de) - **useScroll**: Evade edge case when window or document is Proxy - by [@MinatoHikari](https://togithub.com/MinatoHikari) in [https://github.com/vueuse/vueuse/issues/3280](https://togithub.com/vueuse/vueuse/issues/3280) [(c1b29)](https://togithub.com/vueuse/vueuse/commit/c1b296cc) - **useScrollLock**: Support using window or document - by [@lzl0304](https://togithub.com/lzl0304) in [https://github.com/vueuse/vueuse/issues/3319](https://togithub.com/vueuse/vueuse/issues/3319) [(8acdb)](https://togithub.com/vueuse/vueuse/commit/8acdb474) - **useSortable**: Fixed moveArrayElement repeatedly triggering side effects - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3322](https://togithub.com/vueuse/vueuse/issues/3322) [(b8515)](https://togithub.com/vueuse/vueuse/commit/b85154f5) - **useStorage**: Read object only when it's serialized differently - by [@chenglu4343](https://togithub.com/chenglu4343), **chenglu** and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2782](https://togithub.com/vueuse/vueuse/issues/2782) and [https://github.com/vueuse/vueuse/issues/3091](https://togithub.com/vueuse/vueuse/issues/3091) [(6fabe)](https://togithub.com/vueuse/vueuse/commit/6fabe9bf) - **useVModel**: Clone set to true triggered infinite loop - by [@motian](https://togithub.com/motian) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3097](https://togithub.com/vueuse/vueuse/issues/3097) [(48f4c)](https://togithub.com/vueuse/vueuse/commit/48f4c6e1) - **useWebWorker**: Prevent error event bubbling - by [@Luvoy](https://togithub.com/Luvoy) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3141](https://togithub.com/vueuse/vueuse/issues/3141) [(34206)](https://togithub.com/vueuse/vueuse/commit/34206407) - **useWebsocket**: PongTimeout auto-reconnect no work - by [@shanyi-front](https://togithub.com/shanyi-front) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3321](https://togithub.com/vueuse/vueuse/issues/3321) [(93372)](https://togithub.com/vueuse/vueuse/commit/93372535) - **useWebsocket**: Reset pongTimeout on close - by [@alipay404](https://togithub.com/alipay404) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3324](https://togithub.com/vueuse/vueuse/issues/3324) [(aea27)](https://togithub.com/vueuse/vueuse/commit/aea27f89) - **utils**: Update `isClient` to check `document` too - by [@brc-dd](https://togithub.com/brc-dd) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3329](https://togithub.com/vueuse/vueuse/issues/3329) [(786cb)](https://togithub.com/vueuse/vueuse/commit/786cbba7) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.3.0...v10.4.0) ### [`v10.3.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.3.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.2.1...v10.3.0) ##### 🚀 Features - **createReusableTemplate**: Inherit attrs - by [@wiidede](https://togithub.com/wiidede) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3226](https://togithub.com/vueuse/vueuse/issues/3226) [(a32ae)](https://togithub.com/vueuse/vueuse/commit/a32ae737) - **useActiveElement**: Search deeply in shadow dom - by [@duoduoObama](https://togithub.com/duoduoObama) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3208](https://togithub.com/vueuse/vueuse/issues/3208) [(296dc)](https://togithub.com/vueuse/vueuse/commit/296dcc5e) - **useCounter**: InitialValue support ref - by [@Rock070](https://togithub.com/Rock070) in [https://github.com/vueuse/vueuse/issues/3266](https://togithub.com/vueuse/vueuse/issues/3266) [(6ae3a)](https://togithub.com/vueuse/vueuse/commit/6ae3a8c8) - **useFocus**: Support `:focus-visible` - by [@onmax](https://togithub.com/onmax) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3254](https://togithub.com/vueuse/vueuse/issues/3254) [(80329)](https://togithub.com/vueuse/vueuse/commit/80329333) - **useRTDB**: Add errorHandler option - by [@wobsoriano](https://togithub.com/wobsoriano) in [https://github.com/vueuse/vueuse/issues/3232](https://togithub.com/vueuse/vueuse/issues/3232) [(b5e52)](https://togithub.com/vueuse/vueuse/commit/b5e52f59) - **useSorted**: Accept getter function as source - by [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3249](https://togithub.com/vueuse/vueuse/issues/3249) [(33a12)](https://togithub.com/vueuse/vueuse/commit/33a12b2a) - **useSpeechSynthesis**: Add reactivity for pitch and rate - by [@shestmintsev-kirill](https://togithub.com/shestmintsev-kirill) in [https://github.com/vueuse/vueuse/issues/3205](https://togithub.com/vueuse/vueuse/issues/3205) [(ac88f)](https://togithub.com/vueuse/vueuse/commit/ac88fd76) ##### 🐞 Bug Fixes - **build**: Ensure correct typing for node esm - by [@xiaoxiangmoe](https://togithub.com/xiaoxiangmoe) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3209](https://togithub.com/vueuse/vueuse/issues/3209) [(e7556)](https://togithub.com/vueuse/vueuse/commit/e755653b) - **createReusableTemplate**: Camelize props - by [@94726](https://togithub.com/94726), [@antfu](https://togithub.com/antfu) and [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3253](https://togithub.com/vueuse/vueuse/issues/3253) [(d79e1)](https://togithub.com/vueuse/vueuse/commit/d79e174f) - **onClickOutside**: Fix outside click on html element in ios - by [@sibbng](https://togithub.com/sibbng) in [https://github.com/vueuse/vueuse/issues/3252](https://togithub.com/vueuse/vueuse/issues/3252) [(9091e)](https://togithub.com/vueuse/vueuse/commit/9091e2c8) - **reactiveComputed**: Unwrap reactive type - by [@sxzz](https://togithub.com/sxzz) in [https://github.com/vueuse/vueuse/issues/3215](https://togithub.com/vueuse/vueuse/issues/3215) [(17a72)](https://togithub.com/vueuse/vueuse/commit/17a725e2) - **router**: Improves router functions: synchronize values, adds tests, and optimize performance - by [@anteriovieira](https://togithub.com/anteriovieira), [@antfu](https://togithub.com/antfu), **CJBoy** and **tzyoo** in [https://github.com/vueuse/vueuse/issues/3184](https://togithub.com/vueuse/vueuse/issues/3184) [(0d02f)](https://togithub.com/vueuse/vueuse/commit/0d02f6cc) - **toRefs**: Don't trigger unwanted watchEffects - by [@wvffle](https://togithub.com/wvffle) in [https://github.com/vueuse/vueuse/issues/3260](https://togithub.com/vueuse/vueuse/issues/3260) [(5309c)](https://togithub.com/vueuse/vueuse/commit/5309c26a) - **useDateFormat**: Handle zero properly - by [@JocelynFloresz](https://togithub.com/JocelynFloresz) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3272](https://togithub.com/vueuse/vueuse/issues/3272) [(d6428)](https://togithub.com/vueuse/vueuse/commit/d642866a) - **useEventListener**: Improved `useEventListener` overload - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3246](https://togithub.com/vueuse/vueuse/issues/3246) [(4f414)](https://togithub.com/vueuse/vueuse/commit/4f4141ad) - **useFetch**: Generated payloadType on execute - by [@tolking](https://togithub.com/tolking) in [https://github.com/vueuse/vueuse/issues/3251](https://togithub.com/vueuse/vueuse/issues/3251) [(b7e3d)](https://togithub.com/vueuse/vueuse/commit/b7e3d7e8) - **useInfiniteScroll**: Improve visibility check - by [@erikkkwu](https://togithub.com/erikkkwu) in [https://github.com/vueuse/vueuse/issues/3212](https://togithub.com/vueuse/vueuse/issues/3212) [(5ce61)](https://togithub.com/vueuse/vueuse/commit/5ce6151c) - **useMediaQuery**: Only add/remove event listeners on query change - by [@Ingramz](https://togithub.com/Ingramz) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3236](https://togithub.com/vueuse/vueuse/issues/3236) [(f3969)](https://togithub.com/vueuse/vueuse/commit/f39691f7) - **useObjectUrl**: Improve parameter type - by [@ferreira-tb](https://togithub.com/ferreira-tb) in [https://github.com/vueuse/vueuse/issues/3239](https://togithub.com/vueuse/vueuse/issues/3239) [(d3f7e)](https://togithub.com/vueuse/vueuse/commit/d3f7e6a9) - **usePointer**: Add `pointerup` event for `pressure` field - by [@cunzaizhuyi](https://togithub.com/cunzaizhuyi) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3217](https://togithub.com/vueuse/vueuse/issues/3217) [(ee425)](https://togithub.com/vueuse/vueuse/commit/ee425ff8) - **useScroll**: Support configurable window - by [@sheremet-va](https://togithub.com/sheremet-va) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3229](https://togithub.com/vueuse/vueuse/issues/3229) [(dde41)](https://togithub.com/vueuse/vueuse/commit/dde41666) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.2.1...v10.3.0) ### [`v10.2.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.2.1) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.2.0...v10.2.1) ##### 🚀 Features - **useDropZone**: Expose more hooks - by [@antfu](https://togithub.com/antfu) [(17d8d)](https://togithub.com/vueuse/vueuse/commit/17d8da63) - **useDropZone**: Expose files as ref - by [@antfu](https://togithub.com/antfu) [(6d4ef)](https://togithub.com/vueuse/vueuse/commit/6d4efc56) ##### 🐞 Bug Fixes - **fromEvent**: Torn down properly - by [@benlesh](https://togithub.com/benlesh) in [https://github.com/vueuse/vueuse/issues/3155](https://togithub.com/vueuse/vueuse/issues/3155) [(fa7ed)](https://togithub.com/vueuse/vueuse/commit/fa7ed3a7) - **toRefs**: Fix stack overflow caused by recursive `setPrototypeOf` - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3166](https://togithub.com/vueuse/vueuse/issues/3166) [(9f998)](https://togithub.com/vueuse/vueuse/commit/9f998a49) - **useFullscreen**: Skip exiting when not in fullscreen mode - by [@tawen](https://togithub.com/tawen), [@antfu](https://togithub.com/antfu) and **Fernando Fernández** in [https://github.com/vueuse/vueuse/issues/3144](https://togithub.com/vueuse/vueuse/issues/3144) [(14edb)](https://togithub.com/vueuse/vueuse/commit/14edb4a6) - **useInfiniteScroll**: Prevent infinite load when v-show set false - by [@wonderl17](https://togithub.com/wonderl17) in [https://github.com/vueuse/vueuse/issues/3143](https://togithub.com/vueuse/vueuse/issues/3143) [(a4dfa)](https://togithub.com/vueuse/vueuse/commit/a4dfa5ba) - **useRafFn**: Set initial delta to zero - by [@haykkh](https://togithub.com/haykkh) in [https://github.com/vueuse/vueuse/issues/3150](https://togithub.com/vueuse/vueuse/issues/3150) [(cf6eb)](https://togithub.com/vueuse/vueuse/commit/cf6eb5fc) - **useTimeoutPoll**: Unexpected immediate execution - by [@jiadesen](https://togithub.com/jiadesen) in [https://github.com/vueuse/vueuse/issues/3159](https://togithub.com/vueuse/vueuse/issues/3159) [(7a897)](https://togithub.com/vueuse/vueuse/commit/7a897e54) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.2.0...v10.2.1) ### [`v10.2.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.2.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.1.2...v10.2.0) ##### 🚀 Features - **useAsyncQueue**: Add `options.signal` parameter - by [@cross-origin](https://togithub.com/cross-origin) in [https://github.com/vueuse/vueuse/issues/3033](https://togithub.com/vueuse/vueuse/issues/3033) [(7da7c)](https://togithub.com/vueuse/vueuse/commit/7da7c4e3) - **useColorMode**: DisableTransition support pseudo-elements - by [@lainbo](https://togithub.com/lainbo) in [https://github.com/vueuse/vueuse/issues/3129](https://togithub.com/vueuse/vueuse/issues/3129) [(78a3a)](https://togithub.com/vueuse/vueuse/commit/78a3a622) - **useDraggable**: Improve component props - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3075](https://togithub.com/vueuse/vueuse/issues/3075) [(6b670)](https://togithub.com/vueuse/vueuse/commit/6b6701ca) - **useElementByPoint**: New `multiple` and `interval` options - by [@okxiaoliang4](https://togithub.com/okxiaoliang4) in [https://github.com/vueuse/vueuse/issues/3089](https://togithub.com/vueuse/vueuse/issues/3089) [(31b66)](https://togithub.com/vueuse/vueuse/commit/31b66263) - **useFileDialog**: Add a parameter `reset` - by [@zaqvil](https://togithub.com/zaqvil) in [https://github.com/vueuse/vueuse/issues/3059](https://togithub.com/vueuse/vueuse/issues/3059) [(6d847)](https://togithub.com/vueuse/vueuse/commit/6d8477c7) - **useImage**: Support referrerPolicy option - by [@btea](https://togithub.com/btea) in [https://github.com/vueuse/vueuse/issues/3132](https://togithub.com/vueuse/vueuse/issues/3132) [(04d32)](https://togithub.com/vueuse/vueuse/commit/04d32d8d) - **useSortable**: Add option set get method - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3108](https://togithub.com/vueuse/vueuse/issues/3108) [(14283)](https://togithub.com/vueuse/vueuse/commit/14283908) - **useVModel**: Improve types overload - by [@Mini-ghost](https://togithub.com/Mini-ghost) in [https://github.com/vueuse/vueuse/issues/3055](https://togithub.com/vueuse/vueuse/issues/3055) [(7d788)](https://togithub.com/vueuse/vueuse/commit/7d788aaf) ##### 🐞 Bug Fixes - **onClickOutside**: Ensure focus on iframe captured in firefox - by [@Geit](https://togithub.com/Geit) in [https://github.com/vueuse/vueuse/issues/3066](https://togithub.com/vueuse/vueuse/issues/3066) [(2c66e)](https://togithub.com/vueuse/vueuse/commit/2c66ef5f) - **useAxios**: Prevent premature loading refs reset - by [@MickaelOth](https://togithub.com/MickaelOth) in [https://github.com/vueuse/vueuse/issues/3076](https://togithub.com/vueuse/vueuse/issues/3076) [(b1701)](https://togithub.com/vueuse/vueuse/commit/b17010f8) - **useCloned**: Check for getter function to watch - by [@ydcjeff](https://togithub.com/ydcjeff) in [https://github.com/vueuse/vueuse/issues/3142](https://togithub.com/vueuse/vueuse/issues/3142) [(6d630)](https://togithub.com/vueuse/vueuse/commit/6d630272) - **useCssVar**: Observe changes based on element class list - by [@Waleed-KH](https://togithub.com/Waleed-KH) in [https://github.com/vueuse/vueuse/issues/3131](https://togithub.com/vueuse/vueuse/issues/3131) [(9d34a)](https://togithub.com/vueuse/vueuse/commit/9d34afc4) - **useMediaControls**: Better representation for "waiting" value - by [@ferferga](https://togithub.com/ferferga) in [https://github.com/vueuse/vueuse/issues/3072](https://togithub.com/vueuse/vueuse/issues/3072) [(0b253)](https://togithub.com/vueuse/vueuse/commit/0b253bb4) - **useRouteHash,useRouteQuery,useRouteParams**: Re-evaluates the value immediately - by [@anteriovieira](https://togithub.com/anteriovieira) in [https://github.com/vueuse/vueuse/issues/3002](https://togithub.com/vueuse/vueuse/issues/3002) [(d5252)](https://togithub.com/vueuse/vueuse/commit/d5252444) - **useScroll**: Support window in setArrivedState - by [@smallnine9](https://togithub.com/smallnine9) and **yulj5** in [https://github.com/vueuse/vueuse/issues/3086](https://togithub.com/vueuse/vueuse/issues/3086) [(8855f)](https://togithub.com/vueuse/vueuse/commit/8855f246) - **useScrollLock**: Fix scrollable children check - by [@valerypatorius](https://togithub.com/valerypatorius) in [https://github.com/vueuse/vueuse/issues/3065](https://togithub.com/vueuse/vueuse/issues/3065) [(cdc28)](https://togithub.com/vueuse/vueuse/commit/cdc28615) - **useTextareaAutosize**: Autosize error when changing `input` asynchronously - by [@jsonleex](https://togithub.com/jsonleex) in [https://github.com/vueuse/vueuse/issues/3118](https://togithub.com/vueuse/vueuse/issues/3118) [(1b0ec)](https://togithub.com/vueuse/vueuse/commit/1b0ec281) - **useWebWorker**: Add web worker transferable option - by [@yassilah](https://togithub.com/yassilah) in [https://github.com/vueuse/vueuse/issues/3123](https://togithub.com/vueuse/vueuse/issues/3123) [(5988f)](https://togithub.com/vueuse/vueuse/commit/5988f730) - **watchImmediate**: Fix overload signature - by [@ferreira-tb](https://togithub.com/ferreira-tb) in [https://github.com/vueuse/vueuse/issues/3114](https://togithub.com/vueuse/vueuse/issues/3114) [(4b4e6)](https://togithub.com/vueuse/vueuse/commit/4b4e6c26) ##### 🏎 Performance - **useCssVar**: Only listen for style changes - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/3057](https://togithub.com/vueuse/vueuse/issues/3057) [(3233a)](https://togithub.com/vueuse/vueuse/commit/3233af2c) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.1.2...v10.2.0) ### [`v10.1.2`](https://togithub.com/vueuse/vueuse/compare/v10.1.0...v10.1.2) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.1.0...v10.1.2) ### [`v10.1.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.1.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.2...v10.1.0) ##### 🚀 Features - **useAsyncState**: Add support directly await - by [@Hfutsora](https://togithub.com/Hfutsora) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3004](https://togithub.com/vueuse/vueuse/issues/3004) [(d4db0)](https://togithub.com/vueuse/vueuse/commit/d4db0adf) - **useColorMode**: Expose `state` to the ref, deprecated `emitAuto` - by [@Waleed-KH](https://togithub.com/Waleed-KH) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2980](https://togithub.com/vueuse/vueuse/issues/2980) [(a1bef)](https://togithub.com/vueuse/vueuse/commit/a1bef490) - **useMouse**: Support custom event extractor - by [@RAX7](https://togithub.com/RAX7) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2991](https://togithub.com/vueuse/vueuse/issues/2991) [(4bb5b)](https://togithub.com/vueuse/vueuse/commit/4bb5bf0e) - **watch**: `watchImmediate` and `watchDeep` support overloads - by [@Mini-ghost](https://togithub.com/Mini-ghost) in [https://github.com/vueuse/vueuse/issues/2998](https://togithub.com/vueuse/vueuse/issues/2998) [(8f6a0)](https://togithub.com/vueuse/vueuse/commit/8f6a0c5c) ##### 🐞 Bug Fixes - Dialog mask add z-index - by [@recallwei](https://togithub.com/recallwei) in [https://github.com/vueuse/vueuse/issues/3005](https://togithub.com/vueuse/vueuse/issues/3005) [(07ebe)](https://togithub.com/vueuse/vueuse/commit/07ebe338) - **useColorMode**: Element ref support, close [#3003](https://togithub.com/vueuse/vueuse/issues/3003) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3003](https://togithub.com/vueuse/vueuse/issues/3003) [(adbbb)](https://togithub.com/vueuse/vueuse/commit/adbbb6ef) - **useCycleList**: Correctly wrap list with ref - by [@fan5530](https://togithub.com/fan5530) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2988](https://togithub.com/vueuse/vueuse/issues/2988) [(659b2)](https://togithub.com/vueuse/vueuse/commit/659b2c9d) - **useDateFormat**: Error if Y or YYY provided - by [@dinocam1](https://togithub.com/dinocam1) and **Dino Camdzic** in [https://github.com/vueuse/vueuse/issues/3001](https://togithub.com/vueuse/vueuse/issues/3001) [(a2147)](https://togithub.com/vueuse/vueuse/commit/a2147fdd) - **useFullscreen**: `isFullscreen` handling for mutliple fullscreen elements - by [@zaqvil](https://togithub.com/zaqvil) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/3000](https://togithub.com/vueuse/vueuse/issues/3000) [(4a7a1)](https://togithub.com/vueuse/vueuse/commit/4a7a12cc) - **useMediaControls**: Apply state when target ref changes - by [@ferferga](https://togithub.com/ferferga) in [https://github.com/vueuse/vueuse/issues/2999](https://togithub.com/vueuse/vueuse/issues/2999) [(b20aa)](https://togithub.com/vueuse/vueuse/commit/b20aacf5) - **useSwipe**: Ignore multiple touches - by [@ARZarkesh](https://togithub.com/ARZarkesh) in [https://github.com/vueuse/vueuse/issues/2994](https://togithub.com/vueuse/vueuse/issues/2994) [(995aa)](https://togithub.com/vueuse/vueuse/commit/995aadb0) - **useSwipe**: Ignore multiple touches - by [@ARZarkesh](https://togithub.com/ARZarkesh) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2996](https://togithub.com/vueuse/vueuse/issues/2996) [(af3ca)](https://togithub.com/vueuse/vueuse/commit/af3ca89d) - **useTransition**: Fix regression with non-linear transition functions - by [@scottbedard](https://togithub.com/scottbedard) in [https://github.com/vueuse/vueuse/issues/2973](https://togithub.com/vueuse/vueuse/issues/2973) [(8b330)](https://togithub.com/vueuse/vueuse/commit/8b3300be) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.2...v10.1.0) ### [`v10.0.2`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.2) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.1...v10.0.2) ##### 🐞 Bug Fixes - Module reference, close [#2972](https://togithub.com/vueuse/vueuse/issues/2972) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2972](https://togithub.com/vueuse/vueuse/issues/2972) [(7d001)](https://togithub.com/vueuse/vueuse/commit/7d001e33) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.1...v10.0.2) ### [`v10.0.1`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.1) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v10.0.0...v10.0.1) ##### 🐞 Bug Fixes - **nuxt**: Do not auto-import `toRef` and `toValue` - by [@antfu](https://togithub.com/antfu) [(9225f)](https://togithub.com/vueuse/vueuse/commit/9225fc77) - **useIntersectionObserver**: Targets length check - by [@schelmo](https://togithub.com/schelmo) in [https://github.com/vueuse/vueuse/issues/2968](https://togithub.com/vueuse/vueuse/issues/2968) [(b95b6)](https://togithub.com/vueuse/vueuse/commit/b95b6210) ##### [View changes on GitHub](https://togithub.com/vueuse/vueuse/compare/v10.0.0...v10.0.1) ### [`v10.0.0`](https://togithub.com/vueuse/vueuse/releases/tag/v10.0.0) [Compare Source](https://togithub.com/vueuse/vueuse/compare/v9.13.0...v10.0.0) ![VueUse v10](https://user-images.githubusercontent.com/11247099/231996807-fb756cbe-8e19-45f0-a33a-91a80b35482b.png) ##### ✨ Highlights - [`createReusableTemplate`](https://vueuse.org/core/createreusabletemplate/) from https://github.com/antfu/vue-reuse-template - [`createTemplatePromise`](https://vueuse.org/core/createTemplatePromise/) from https://github.com/antfu/vue-template-promise - [`useAnimate`](https://vueuse.org/core/useAnimate/) for native animation API, thanks to [@tolking](https://togithub.com/tolking) - Renamed `resolveRef` to `toRef`, `resolveUnref` to `toValue`, aligning with Vue 3.3: [https://github.com/vuejs/core/pull/7997](https://togithub.com/vuejs/core/pull/7997) - Improved tree-shaking - Cleaned up long-lasting PRs, thanks to all! ##### 🚨 Breaking Changes - Remove deprecated types - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2656](https://togithub.com/vueuse/vueuse/issues/2656) [(c2fee)](https://togithub.com/vueuse/vueuse/commit/c2fee4e5) - Remove `isFunction` and `isString` utils [(cb644)](https://togithub.com/vueuse/vueuse/commit/cb644e03) - **computedAsync**: - Set shallow defalut to true - by [@xiankaiqun](https://togithub.com/xiankaiqun) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2621](https://togithub.com/vueuse/vueuse/issues/2621) [(23c9d)](https://togithub.com/vueuse/vueuse/commit/23c9d45d) - **toRef**: - Rename `resolveRef` to `toRef` [(10e98)](https://togithub.com/vueuse/vueuse/commit/10e98911) - **types**: - Rename `MaybeComputedRef` to `MaybeRefOrGetter` [(4d757)](https://togithub.com/vueuse/vueuse/commit/4d7577ee) - **useAxios**: - `error` should return type `unknown` - by [@jbaubree](https://togithub.com/jbaubree) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2807](https://togithub.com/vueuse/vueuse/issues/2807) [(d8d73)](https://togithub.com/vueuse/vueuse/commit/d8d732e0) - Remove deprecated apis [(1f8b9)](https://togithub.com/vueuse/vueuse/commit/1f8b92c1) - Reject promise on `execute` - by [@FRSgit](https://togithub.com/FRSgit) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2485](https://togithub.com/vueuse/vueuse/issues/2485) [(edece)](https://togithub.com/vueuse/vueuse/commit/edece1a2) - **useColorMode**: - Enable `disableTransition` by default [(5c82c)](https://togithub.com/vueuse/vueuse/commit/5c82cf3a) - **useElementVisibility**: - Use useIntersectionObserver instead of scroll event handler - by [@curtgrimes](https://togithub.com/curtgrimes) in [https://github.com/vueuse/vueuse/issues/2551](https://togithub.com/vueuse/vueuse/issues/2551) [(74b00)](https://togithub.com/vueuse/vueuse/commit/74b00a09) - **useEventBus,createEventHook**: - Dedupe registration of the same function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2748](https://togithub.com/vueuse/vueuse/issues/2748) [(dd514)](https://togithub.com/vueuse/vueuse/commit/dd514616) - **useFullscreen**: - Better cross-platform compatibility - by [@ferferga](https://togithub.com/ferferga) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2915](https://togithub.com/vueuse/vueuse/issues/2915) [(2e467)](https://togithub.com/vueuse/vueuse/commit/2e46781f) - **useIDBKeyval**: - Return format changed, add `isFinished` - by [@jssullivan](https://togithub.com/jssullivan) and **james.sullivan** in [https://github.com/vueuse/vueuse/issues/2474](https://togithub.com/vueuse/vueuse/issues/2474) [(ef281)](https://togithub.com/vueuse/vueuse/commit/ef281cdf) - **useInfiniteScroll**: - Improve loading strategies, close [#1701](https://togithub.com/vueuse/vueuse/issues/1701), close [#1685](https://togithub.com/vueuse/vueuse/issues/1685) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/1701](https://togithub.com/vueuse/vueuse/issues/1701) and [https://github.com/vueuse/vueuse/issues/1685](https://togithub.com/vueuse/vueuse/issues/1685) [(d3a2b)](https://togithub.com/vueuse/vueuse/commit/d3a2bcae) - **useSwipe**: - Use literal for swipe direction instead of enum [(f285c)](https://togithub.com/vueuse/vueuse/commit/f285c12e) - **useToFixed**: - Remove deprecated function [(a6e5b)](https://togithub.com/vueuse/vueuse/commit/a6e5b6da) - **useUserMedia**: - Add constraints - remove deviceIds - by [@mango-martin](https://togithub.com/mango-martin) in [https://github.com/vueuse/vueuse/issues/2032](https://togithub.com/vueuse/vueuse/issues/2032) [(8f2a3)](https://togithub.com/vueuse/vueuse/commit/8f2a3c48) - Remove deprecated apis [(85468)](https://togithub.com/vueuse/vueuse/commit/854689c7) - **useWebNotification**: - Should be exposed as EventHooksOn - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2821](https://togithub.com/vueuse/vueuse/issues/2821) [(bcd2a)](https://togithub.com/vueuse/vueuse/commit/bcd2ada1) - **useWindowSize**: - Use media query instead of `orientationchange` listener - by [@zhousg](https://togithub.com/zhousg) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2919](https://togithub.com/vueuse/vueuse/issues/2919) [(4e7b0)](https://togithub.com/vueuse/vueuse/commit/4e7b025c) ##### 🚀 Features - Update deps [(e75a5)](https://togithub.com/vueuse/vueuse/commit/e75a5e61) - Improve tree-shaking [(3275e)](https://togithub.com/vueuse/vueuse/commit/3275e94a) - **createEventHook**: - Allow awaiting on `trigger` - by [@Akryum](https://togithub.com/Akryum) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2824](https://togithub.com/vueuse/vueuse/issues/2824) [(31347)](https://togithub.com/vueuse/vueuse/commit/313477d1) - **createGlobalState**: - Allow passing initial args - by [@jd-solanki](https://togithub.com/jd-solanki) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2790](https://togithub.com/vueuse/vueuse/issues/2790) [(f21b2)](https://togithub.com/vueuse/vueuse/commit/f21b26a7) - **createReusableTemplate**: - New function - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2961](https://togithub.com/vueuse/vueuse/issues/2961) [(bd53c)](https://togithub.com/vueuse/vueuse/commit/bd53cc30) - **createTemplatePromise**: - New function - by [@antfu](https://togithub.com/antfu) and **Enzo Innocenzi** in [https://github.com/vueuse/vueuse/issues/2957](https://togithub.com/vueuse/vueuse/issues/2957) [(13169)](https://togithub.com/vueuse/vueuse/commit/131696de) - **onKeyStroke**: - Support ignoring repeated stroke - by [@vaakian](https://togithub.com/vaakian) in [https://github.com/vueuse/vueuse/issues/2652](https://togithub.com/vueuse/vueuse/issues/2652) [(22ca5)](https://togithub.com/vueuse/vueuse/commit/22ca5137) - **reactiveOmit**: - Add predicate parameter - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2849](https://togithub.com/vueuse/vueuse/issues/2849) [(2e297)](https://togithub.com/vueuse/vueuse/commit/2e297db7) - **reactivePick**: - Add predicate parameter - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2850](https://togithub.com/vueuse/vueuse/issues/2850) [(0bde4)](https://togithub.com/vueuse/vueuse/commit/0bde4543) - **toRef**: - Support two argument overrides from Vue [(f307f)](https://togithub.com/vueuse/vueuse/commit/f307ff77) - **toValue**: - Rename `resolveUnref` to `toValue` [(0a72b)](https://togithub.com/vueuse/vueuse/commit/0a72ba10) - **useAnimate**: - New function - by [@tolking](https://togithub.com/tolking) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2109](https://togithub.com/vueuse/vueuse/issues/2109) [(bcf5d)](https://togithub.com/vueuse/vueuse/commit/bcf5da09) - **useArrayDifference**: - New function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2710](https://togithub.com/vueuse/vueuse/issues/2710) [(a2a33)](https://togithub.com/vueuse/vueuse/commit/a2a338d5) - **useArrayIncludes**: - New function - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2708](https://togithub.com/vueuse/vueuse/issues/2708) [(4d6bc)](https://togithub.com/vueuse/vueuse/commit/4d6bc001) - **useArrayUnique**: - Add a custom function to deduplicate - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2612](https://togithub.com/vueuse/vueuse/issues/2612) [(c8c30)](https://togithub.com/vueuse/vueuse/commit/c8c30435) - **useAsyncValidator**: - Add immediate and execute - by [@jaw52](https://togithub.com/jaw52) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2899](https://togithub.com/vueuse/vueuse/issues/2899) [(79176)](https://togithub.com/vueuse/vueuse/commit/79176651) - Add `manual` option - by [@jaw52](https://togithub.com/jaw52) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2903](https://togithub.com/vueuse/vueuse/issues/2903) [(16461)](https://togithub.com/vueuse/vueuse/commit/16461dbe) - **useAxios**: - Added `onFinish` callback - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2829](https://togithub.com/vueuse/vueuse/issues/2829) [(a2f33)](https://togithub.com/vueuse/vueuse/commit/a2f334d7) - Added `initialData` and `resetOnExecute` options - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2791](https://togithub.com/vueuse/vueuse/issues/2791) [(f54a3)](https://togithub.com/vueuse/vueuse/commit/f54a3c47) - **useBreakpoints**: - Getting current breakpoints - by [@ineshbose](https://togithub.com/ineshbose) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2906](https://togithub.com/vueuse/vueuse/issues/2906) [(bbabd)](https://togithub.com/vueuse/vueuse/commit/bbabdbdc) - **useBrowserLocation**: - Two-way binding - by [@sxzz](https://togithub.com/sxzz) in [https://github.com/vueuse/vueuse/issues/2168](https://togithub.com/vueuse/vueuse/issues/2168) [(a860c)](https://togithub.com/vueuse/vueuse/commit/a860cf8c) - **useColorMode**: - Support passing element as `selector` - by [@Wing-9527](https://togithub.com/Wing-9527) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2760](https://togithub.com/vueuse/vueuse/issues/2760) [(02ccc)](https://togithub.com/vueuse/vueuse/commit/02ccce9a) - Expose `system` and `store` ref, close [#2023](https://togithub.com/vueuse/vueuse/issues/2023) - by [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2023](https://togithub.com/vueuse/vueuse/issues/2023) [(d150c)](https://togithub.com/vueuse/vueuse/commit/d150ca22) - **useCssVar**: - Introduce `observe` option - by [@Alfred-Skyblue](https://togithub.com/Alfred-Skyblue) in [https://github.com/vueuse/vueuse/issues/2800](https://togithub.com/vueuse/vueuse/issues/2800) [(ae6e1)](https://togithub.com/vueuse/vueuse/commit/ae6e174d) - **useCycleList**: - Allow receiving reactive list - by [@hjJunior](https://togithub.com/hjJunior) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2864](https://togithub.com/vueuse/vueuse/issues/2864) [(b65c2)](https://togithub.com/vueuse/vueuse/commit/b65c2ccd) - **useDark**: - Passthrough default handler from `useColorSchema` - by [@godismyjudge95](https://togithub.com/godismyjudge95) and [@antfu](https://togithub.com/antfu) in [https://github.com/vueuse/vueuse/issues/2866](https://togiConfiguration
📅 Schedule: Branch creation - "every 3 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.