PackageTrack

npm Β· #3623

@vueuse/metadata

14.4.0vueuse/vueuse β†—

Metadata for VueUse functions

Release timeline

133 releases since 2022
20222023202420252026

Releases

  1. 10.4.025 Aug 2023
    Release notes

       πŸš€ Features

    • refAutoReset: Support maybe-ref as value  -  by @moander in https://github.com/vueuse/vueuse/issues/3342 <samp>(71685)</samp>
    • useAsyncQueue: Support in infinite tasks in typescript  -  by @ethansnow2012 in https://github.com/vueuse/vueuse/issues/3333 <samp>(22e26)</samp>
    • useBreakpoints: Add breakpoints for PrimeFlex  -  by @adrianrudnik and @antfu in https://github.com/vueuse/vueuse/issues/3317 <samp>(8b5ed)</samp>
    • useDraggable: Allowing calculations of bounds with fixed element  -  by @linspw in https://github.com/vueuse/vueuse/issues/3335 <samp>(c08e5)</samp>
    • useFetch: Introduce updateDataOnError option  -  by @climba03003 and @antfu in https://github.com/vueuse/vueuse/issues/3092 <samp>(945ca)</samp>
    • useIdbKeyval: Ability to wait for IDB writes  -  by @AbdallahAlhaddad and @antfu in https://github.com/vueuse/vueuse/issues/3338 <samp>(77a86)</samp>
    • useWebNotification: Add requestPermissions option, return permissionGranted and ensurePermissions  -  by @michealroberts and @antfu in https://github.com/vueuse/vueuse/issues/3325 <samp>(a1753)</samp>

       πŸž Bug Fixes

    • syncRef: Avoid infinite sync  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/3312 <samp>(bc966)</samp>
    • useElementSize: Add as prop for component usage  -  by @menghany in https://github.com/vueuse/vueuse/issues/3274 <samp>(791f7)</samp>
    • useElementVisibility: Adjust threshold to 0 to fix visibility issue with large element  -  by @erikkkwu in https://github.com/vueuse/vueuse/issues/3308 <samp>(429ed)</samp>
    • useFileSystemAccess: Make options to be optional  -  by @171h in https://github.com/vueuse/vueuse/issues/3320 <samp>(a9c8b)</samp>
    • useMouse: Position won't be changed on page scroll when type is page, closes #2922  -  by @CatsJuice and @antfu in https://github.com/vueuse/vueuse/issues/3244 and https://github.com/vueuse/vueuse/issues/2922 <samp>(c2f64)</samp>
    • useScroll: Evade edge case when window or document is Proxy  -  by @MinatoHikari in https://github.com/vueuse/vueuse/issues/3280 <samp>(c1b29)</samp>
    • useScrollLock: Support using window or document  -  by @lzl0304 in https://github.com/vueuse/vueuse/issues/3319 <samp>(8acdb)</samp>
    • useSortable: Fixed moveArrayElement repeatedly triggering side effects  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3322 <samp>(b8515)</samp>
    • useStorage: Read object only when it's serialized differently  -  by @chenglu4343, chenglu and @antfu in https://github.com/vueuse/vueuse/issues/2782 and https://github.com/vueuse/vueuse/issues/3091 <samp>(6fabe)</samp>
    • useVModel: Clone set to true triggered infinite loop  -  by @motian and @antfu in https://github.com/vueuse/vueuse/issues/3097 <samp>(48f4c)</samp>
    • useWebWorker: Prevent error event bubbling  -  by @Luvoy and @antfu in https://github.com/vueuse/vueuse/issues/3141 <samp>(34206)</samp>
    • useWebsocket: PongTimeout auto-reconnect no work  -  by @shanyi-front and @antfu in https://github.com/vueuse/vueuse/issues/3321 <samp>(93372)</samp>
    • useWebsocket: Reset pongTimeout on close  -  by @alipay404 and @antfu in https://github.com/vueuse/vueuse/issues/3324 <samp>(aea27)</samp>
    • utils: Update isClient to check document too  -  by @brc-dd and @antfu in https://github.com/vueuse/vueuse/issues/3329 <samp>(786cb)</samp>
        View changes on GitHub
    Open source β†’
  2. 10.3.030 Jul 2023
    Release notes

       πŸš€ Features

    • createReusableTemplate: Inherit attrs  -  by @wiidede and @antfu in https://github.com/vueuse/vueuse/issues/3226 <samp>(a32ae)</samp>
    • useActiveElement: Search deeply in shadow dom  -  by @duoduoObama and @antfu in https://github.com/vueuse/vueuse/issues/3208 <samp>(296dc)</samp>
    • useCounter: InitialValue support ref  -  by @Rock070 in https://github.com/vueuse/vueuse/issues/3266 <samp>(6ae3a)</samp>
    • useFocus: Support :focus-visible  -  by @onmax and @antfu in https://github.com/vueuse/vueuse/issues/3254 <samp>(80329)</samp>
    • useRTDB: Add errorHandler option  -  by @wobsoriano in https://github.com/vueuse/vueuse/issues/3232 <samp>(b5e52)</samp>
    • useSorted: Accept getter function as source  -  by @wvffle in https://github.com/vueuse/vueuse/issues/3249 <samp>(33a12)</samp>
    • useSpeechSynthesis: Add reactivity for pitch and rate  -  by @shestmintsev-kirill in https://github.com/vueuse/vueuse/issues/3205 <samp>(ac88f)</samp>

       πŸž Bug Fixes

    • build: Ensure correct typing for node esm  -  by @xiaoxiangmoe and @antfu in https://github.com/vueuse/vueuse/issues/3209 <samp>(e7556)</samp>
    • createReusableTemplate: Camelize props  -  by @94726, @antfu and @wvffle in https://github.com/vueuse/vueuse/issues/3253 <samp>(d79e1)</samp>
    • onClickOutside: Fix outside click on html element in ios  -  by @sibbng in https://github.com/vueuse/vueuse/issues/3252 <samp>(9091e)</samp>
    • reactiveComputed: Unwrap reactive type  -  by @sxzz in https://github.com/vueuse/vueuse/issues/3215 <samp>(17a72)</samp>
    • router: Improves router functions: synchronize values, adds tests, and optimize performance  -  by @anteriovieira, @antfu, CJBoy and tzyoo in https://github.com/vueuse/vueuse/issues/3184 <samp>(0d02f)</samp>
    • toRefs: Don't trigger unwanted watchEffects  -  by @wvffle in https://github.com/vueuse/vueuse/issues/3260 <samp>(5309c)</samp>
    • useDateFormat: Handle zero properly  -  by @JocelynFloresz and @antfu in https://github.com/vueuse/vueuse/issues/3272 <samp>(d6428)</samp>
    • useEventListener: Improved useEventListener overload  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3246 <samp>(4f414)</samp>
    • useFetch: Generated payloadType on execute  -  by @tolking in https://github.com/vueuse/vueuse/issues/3251 <samp>(b7e3d)</samp>
    • useInfiniteScroll: Improve visibility check  -  by @erikkkwu in https://github.com/vueuse/vueuse/issues/3212 <samp>(5ce61)</samp>
    • useMediaQuery: Only add/remove event listeners on query change  -  by @Ingramz and @antfu in https://github.com/vueuse/vueuse/issues/3236 <samp>(f3969)</samp>
    • useObjectUrl: Improve parameter type  -  by @ferreira-tb in https://github.com/vueuse/vueuse/issues/3239 <samp>(d3f7e)</samp>
    • usePointer: Add pointerup event for pressure field  -  by @cunzaizhuyi and @antfu in https://github.com/vueuse/vueuse/issues/3217 <samp>(ee425)</samp>
    • useScroll: Support configurable window  -  by @sheremet-va and @antfu in https://github.com/vueuse/vueuse/issues/3229 <samp>(dde41)</samp>
        View changes on GitHub
    Open source β†’
  3. 10.2.128 Jun 2023
    Release notes

       πŸš€ Features

       πŸž Bug Fixes

    • fromEvent: Torn down properly  -  by @benlesh in https://github.com/vueuse/vueuse/issues/3155 <samp>(fa7ed)</samp>
    • toRefs: Fix stack overflow caused by recursive setPrototypeOf  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3166 <samp>(9f998)</samp>
    • useFullscreen: Skip exiting when not in fullscreen mode  -  by @tawen, @antfu and Fernando FernΓ‘ndez in https://github.com/vueuse/vueuse/issues/3144 <samp>(14edb)</samp>
    • useInfiniteScroll: Prevent infinite load when v-show set false  -  by @wonderl17 in https://github.com/vueuse/vueuse/issues/3143 <samp>(a4dfa)</samp>
    • useRafFn: Set initial delta to zero  -  by @haykkh in https://github.com/vueuse/vueuse/issues/3150 <samp>(cf6eb)</samp>
    • useTimeoutPoll: Unexpected immediate execution  -  by @jiadesen in https://github.com/vueuse/vueuse/issues/3159 <samp>(7a897)</samp>
        View changes on GitHub
    Open source β†’
  4. 10.2.016 Jun 2023
    Release notes

       πŸš€ Features

    • useAsyncQueue: Add options.signal parameter  -  by @cross-origin in https://github.com/vueuse/vueuse/issues/3033 <samp>(7da7c)</samp>
    • useColorMode: DisableTransition support pseudo-elements  -  by @lainbo in https://github.com/vueuse/vueuse/issues/3129 <samp>(78a3a)</samp>
    • useDraggable: Improve component props  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3075 <samp>(6b670)</samp>
    • useElementByPoint: New multiple and interval options  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/3089 <samp>(31b66)</samp>
    • useFileDialog: Add a parameter reset  -  by @zaqvil in https://github.com/vueuse/vueuse/issues/3059 <samp>(6d847)</samp>
    • useImage: Support referrerPolicy option  -  by @btea in https://github.com/vueuse/vueuse/issues/3132 <samp>(04d32)</samp>
    • useSortable: Add option set get method  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3108 <samp>(14283)</samp>
    • useVModel: Improve types overload  -  by @Mini-ghost in https://github.com/vueuse/vueuse/issues/3055 <samp>(7d788)</samp>

       πŸž Bug Fixes

    • onClickOutside: Ensure focus on iframe captured in firefox  -  by @Geit in https://github.com/vueuse/vueuse/issues/3066 <samp>(2c66e)</samp>
    • useAxios: Prevent premature loading refs reset  -  by @MickaelOth in https://github.com/vueuse/vueuse/issues/3076 <samp>(b1701)</samp>
    • useCloned: Check for getter function to watch  -  by @ydcjeff in https://github.com/vueuse/vueuse/issues/3142 <samp>(6d630)</samp>
    • useCssVar: Observe changes based on element class list  -  by @Waleed-KH in https://github.com/vueuse/vueuse/issues/3131 <samp>(9d34a)</samp>
    • useMediaControls: Better representation for "waiting" value  -  by @ferferga in https://github.com/vueuse/vueuse/issues/3072 <samp>(0b253)</samp>
    • useRouteHash,useRouteQuery,useRouteParams: Re-evaluates the value immediately  -  by @anteriovieira in https://github.com/vueuse/vueuse/issues/3002 <samp>(d5252)</samp>
    • useScroll: Support window in setArrivedState  -  by @smallnine9 and yulj5 in https://github.com/vueuse/vueuse/issues/3086 <samp>(8855f)</samp>
    • useScrollLock: Fix scrollable children check  -  by @valerypatorius in https://github.com/vueuse/vueuse/issues/3065 <samp>(cdc28)</samp>
    • useTextareaAutosize: Autosize error when changing input asynchronously  -  by @jsonleex in https://github.com/vueuse/vueuse/issues/3118 <samp>(1b0ec)</samp>
    • useWebWorker: Add web worker transferable option  -  by @yassilah in https://github.com/vueuse/vueuse/issues/3123 <samp>(5988f)</samp>
    • watchImmediate: Fix overload signature  -  by @ferreira-tb in https://github.com/vueuse/vueuse/issues/3114 <samp>(4b4e6)</samp>

       πŸŽ Performance

    • useCssVar: Only listen for style changes  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/3057 <samp>(3233a)</samp>
        View changes on GitHub
    Open source β†’
  5. 10.1.22 May 2023

    Nothing published for this version

  6. 10.1.022 Apr 2023
    Release notes

       πŸš€ Features

    • useAsyncState: Add support directly await  -  by @Hfutsora and @antfu in https://github.com/vueuse/vueuse/issues/3004 <samp>(d4db0)</samp>
    • useColorMode: Expose state to the ref, deprecated emitAuto  -  by @Waleed-KH and @antfu in https://github.com/vueuse/vueuse/issues/2980 <samp>(a1bef)</samp>
    • useMouse: Support custom event extractor  -  by @RAX7 and @antfu in https://github.com/vueuse/vueuse/issues/2991 <samp>(4bb5b)</samp>
    • watch: watchImmediate and watchDeep support overloads  -  by @Mini-ghost in https://github.com/vueuse/vueuse/issues/2998 <samp>(8f6a0)</samp>

       πŸž Bug Fixes

    • Dialog mask add z-index  -  by @recallwei in https://github.com/vueuse/vueuse/issues/3005 <samp>(07ebe)</samp>
    • useColorMode: Element ref support, close #3003  -  by @antfu in https://github.com/vueuse/vueuse/issues/3003 <samp>(adbbb)</samp>
    • useCycleList: Correctly wrap list with ref  -  by @fan5530 and @antfu in https://github.com/vueuse/vueuse/issues/2988 <samp>(659b2)</samp>
    • useDateFormat: Error if Y or YYY provided  -  by @dinocam1 and Dino Camdzic in https://github.com/vueuse/vueuse/issues/3001 <samp>(a2147)</samp>
    • useFullscreen: isFullscreen handling for mutliple fullscreen elements  -  by @zaqvil and @antfu in https://github.com/vueuse/vueuse/issues/3000 <samp>(4a7a1)</samp>
    • useMediaControls: Apply state when target ref changes  -  by @ferferga in https://github.com/vueuse/vueuse/issues/2999 <samp>(b20aa)</samp>
    • useSwipe: Ignore multiple touches  -  by @ARZarkesh in https://github.com/vueuse/vueuse/issues/2994 <samp>(995aa)</samp>
    • useSwipe: Ignore multiple touches  -  by @ARZarkesh and @antfu in https://github.com/vueuse/vueuse/issues/2996 <samp>(af3ca)</samp>
    • useTransition: Fix regression with non-linear transition functions  -  by @scottbedard in https://github.com/vueuse/vueuse/issues/2973 <samp>(8b330)</samp>
        View changes on GitHub
    Open source β†’
  7. 10.0.214 Apr 2023
    Release notes

       πŸž Bug Fixes

    • Module reference, close #2972  -  by @antfu in https://github.com/vueuse/vueuse/issues/2972 <samp>(7d001)</samp>
        View changes on GitHub
    Open source β†’
  8. 10.0.114 Apr 2023
    Release notes

       πŸž Bug Fixes

    • nuxt: Do not auto-import toRef and toValue  -  by @antfu <samp>(9225f)</samp>
    • useIntersectionObserver: Targets length check  -  by @schelmo in https://github.com/vueuse/vueuse/issues/2968 <samp>(b95b6)</samp>
        View changes on GitHub
    Open source β†’
  9. 10.0.014 Apr 2023
    Release notes

       βœ¨ Highlights

    • createReusableTemplate from https://github.com/antfu/vue-reuse-template
    • createTemplatePromise from https://github.com/antfu/vue-template-promise
    • useAnimate for native animation API, thanks to @tolking
    • Renamed resolveRef to toRef, resolveUnref to toValue, aligning with Vue 3.3: https://github.com/vuejs/core/pull/7997
    • Improved tree-shaking
    • Cleaned up long-lasting PRs, thanks to all!

       πŸš¨ Breaking Changes

    • Remove deprecated types  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2656 <samp>(c2fee)</samp>
    • Remove isFunction and isString utils <samp>(cb644)</samp>
    • computedAsync:
      • Set shallow defalut to true  -  by @xiankaiqun and @antfu in https://github.com/vueuse/vueuse/issues/2621 <samp>(23c9d)</samp>
    • toRef:
    • types:
    • useAxios:
      • error should return type unknown  -  by @jbaubree and @antfu in https://github.com/vueuse/vueuse/issues/2807 <samp>(d8d73)</samp>
      • Remove deprecated apis <samp>(1f8b9)</samp>
      • Reject promise on execute  -  by @FRSgit and @antfu in https://github.com/vueuse/vueuse/issues/2485 <samp>(edece)</samp>
    • useColorMode:
    • useElementVisibility:
      • Use useIntersectionObserver instead of scroll event handler  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/2551 <samp>(74b00)</samp>
    • useEventBus,createEventHook:
      • Dedupe registration of the same function  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2748 <samp>(dd514)</samp>
    • useFullscreen:
      • Better cross-platform compatibility  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2915 <samp>(2e467)</samp>
    • useIDBKeyval:
      • Return format changed, add isFinished  -  by @jssullivan and james.sullivan in https://github.com/vueuse/vueuse/issues/2474 <samp>(ef281)</samp>
    • useInfiniteScroll:
      • Improve loading strategies, close #1701, close #1685  -  by @antfu in https://github.com/vueuse/vueuse/issues/1701 and https://github.com/vueuse/vueuse/issues/1685 <samp>(d3a2b)</samp>
    • useSwipe:
    • useToFixed:
    • useUserMedia:
    • useWebNotification:
      • Should be exposed as EventHooksOn  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2821 <samp>(bcd2a)</samp>
    • useWindowSize:
      • Use media query instead of orientationchange listener  -  by @zhousg and @antfu in https://github.com/vueuse/vueuse/issues/2919 <samp>(4e7b0)</samp>

       πŸš€ Features

    • Update deps <samp>(e75a5)</samp>
    • Improve tree-shaking <samp>(3275e)</samp>
    • createEventHook:
      • Allow awaiting on trigger  -  by @Akryum and @antfu in https://github.com/vueuse/vueuse/issues/2824 <samp>(31347)</samp>
    • createGlobalState:
      • Allow passing initial args  -  by @jd-solanki and @antfu in https://github.com/vueuse/vueuse/issues/2790 <samp>(f21b2)</samp>
    • createReusableTemplate:
    • createTemplatePromise:
      • New function  -  by @antfu and Enzo Innocenzi in https://github.com/vueuse/vueuse/issues/2957 <samp>(13169)</samp>
    • onKeyStroke:
      • Support ignoring repeated stroke  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2652 <samp>(22ca5)</samp>
    • reactiveOmit:
      • Add predicate parameter  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2849 <samp>(2e297)</samp>
    • reactivePick:
      • Add predicate parameter  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2850 <samp>(0bde4)</samp>
    • toRef:
    • toValue:
    • useAnimate:
      • New function  -  by @tolking and @antfu in https://github.com/vueuse/vueuse/issues/2109 <samp>(bcf5d)</samp>
    • useArrayDifference:
      • New function  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2710 <samp>(a2a33)</samp>
    • useArrayIncludes:
      • New function  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2708 <samp>(4d6bc)</samp>
    • useArrayUnique:
      • Add a custom function to deduplicate  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2612 <samp>(c8c30)</samp>
    • useAsyncValidator:
      • Add immediate and execute  -  by @jaw52 and @antfu in https://github.com/vueuse/vueuse/issues/2899 <samp>(79176)</samp>
      • Add manual option  -  by @jaw52 and @antfu in https://github.com/vueuse/vueuse/issues/2903 <samp>(16461)</samp>
    • useAxios:
      • Added onFinish callback  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2829 <samp>(a2f33)</samp>
      • Added initialData and resetOnExecute options  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2791 <samp>(f54a3)</samp>
    • useBreakpoints:
      • Getting current breakpoints  -  by @ineshbose and @antfu in https://github.com/vueuse/vueuse/issues/2906 <samp>(bbabd)</samp>
    • useBrowserLocation:
      • Two-way binding  -  by @sxzz in https://github.com/vueuse/vueuse/issues/2168 <samp>(a860c)</samp>
    • useColorMode:
      • Support passing element as selector  -  by @Wing-9527 and @antfu in https://github.com/vueuse/vueuse/issues/2760 <samp>(02ccc)</samp>
      • Expose system and store ref, close #2023  -  by @antfu in https://github.com/vueuse/vueuse/issues/2023 <samp>(d150c)</samp>
    • useCssVar:
      • Introduce observe option  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2800 <samp>(ae6e1)</samp>
    • useCycleList:
      • Allow receiving reactive list  -  by @hjJunior and @antfu in https://github.com/vueuse/vueuse/issues/2864 <samp>(b65c2)</samp>
    • useDark:
      • Passthrough default handler from useColorSchema  -  by @godismyjudge95 and @antfu in https://github.com/vueuse/vueuse/issues/2866 <samp>(d6d35)</samp>
    • useDark, useColorMode:
    • useDraggable:
      • Introduce axis option  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2948 <samp>(0842a)</samp>
      • Support capture option  -  by @faga295 and @antfu in https://github.com/vueuse/vueuse/issues/2725 <samp>(3996d)</samp>
    • useFetch:
      • Update data on success  -  by @pbrzosko and Przemyslaw Brzosko in https://github.com/vueuse/vueuse/issues/2711 <samp>(78cfb)</samp>
    • useFileDialog:
      • Add listener for file change events  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2893 <samp>(5e697)</samp>
    • useFirestore:
      • Support delay for autoDispose, fixes #2252  -  by @Zehir in https://github.com/vueuse/vueuse/issues/2276 and https://github.com/vueuse/vueuse/issues/2252 <samp>(05781)</samp>
    • useIdle:
      • Add reset capability  -  by @nahvego and @antfu in https://github.com/vueuse/vueuse/issues/2880 <samp>(f4d35)</samp>
    • useIntersectionObserver:
      • Support for Pausable interface  -  by @Mini-ghost and @antfu in https://github.com/vueuse/vueuse/issues/2883 <samp>(4b336)</samp>
      • Allow multiple targets  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2964 <samp>(f87f8)</samp>
    • useMouse:
      • Support type: screen  -  by @francoislevesque in https://github.com/vueuse/vueuse/issues/2467 <samp>(39d18)</samp>
    • useParentElement:
      • New function  -  by @jd-solanki and @antfu in https://github.com/vueuse/vueuse/issues/2855 <samp>(e8168)</samp>
    • usePerformanceObserver:
      • New function  -  by @LockingReal, Admin and @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2736 <samp>(21536)</samp>
    • useResizeObserver:
      • Support element list  -  by @acyza and @antfu in https://github.com/vueuse/vueuse/issues/2841 <samp>(3e187)</samp>
    • useRouteQuery,useRouteParams:
      • New transform handler  -  by @edumudu and @antfu in https://github.com/vueuse/vueuse/issues/2191 <samp>(d23ca)</samp>
    • useSortable:
      • New function  -  by @Alfred-Skyblue, @okxiaoliang4 and @antfu in https://github.com/vueuse/vueuse/issues/2763 <samp>(6bc60)</samp>
    • useSupported:
      • Support tracking reactivity for the callback function  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2904 <samp>(55a32)</samp>
    • useSwipe, usePointerSwipe, useTransition:
      • Improve tree-shaking  -  by @webistomin and @antfu in https://github.com/vueuse/vueuse/issues/2863 <samp>(08c21)</samp>
    • useTextareaAutosize:
      • Added styleTarget option to style other element  -  by @jd-solanki in https://github.com/vueuse/vueuse/issues/2312 <samp>(a3e95)</samp>
    • useTransition:
      • Expose transition utility for manual control  -  by @scottbedard in https://github.com/vueuse/vueuse/issues/2743 <samp>(526d5)</samp>
      • Support MaybeComputedRef  -  by @zhiyuanzmj in https://github.com/vueuse/vueuse/issues/2871 <samp>(5944e)</samp>
    • useVModel:
      • Add shouldEmit hook  -  by @baiwusanyu-c and @antfu in https://github.com/vueuse/vueuse/issues/2836 <samp>(f8a53)</samp>
    • watch:
      • Shorthands for watch  -  by @mrhammadasif in https://github.com/vueuse/vueuse/issues/2651 <samp>(b4ec7)</samp>

       πŸž Bug Fixes

    • Use ts-ignore instead of ts-expect-error for version-specifc errors  -  by @sodatea in https://github.com/vueuse/vueuse/issues/2802 <samp>(37ec7)</samp>
    • Upgrade vue-demi <samp>(976d8)</samp>
    • onStartTyping: Fix char ascii  -  by @meenie-net in https://github.com/vueuse/vueuse/issues/2932 <samp>(e9ab3)</samp>
    • toRef: Improve types overload, close #2925  -  by @antfu in https://github.com/vueuse/vueuse/issues/2925 <samp>(cb6f9)</samp>
    • useArrayDifference: Error with falsey  -  by @simpleoo0o and lix in https://github.com/vueuse/vueuse/issues/2869 <samp>(41858)</samp>
    • useAsyncState: Fix toThrowError error type  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2898 <samp>(b636f)</samp>
    • useAsyncValidator: Incorrect condition for choosing constructor  -  by @theruziev in https://github.com/vueuse/vueuse/issues/2788 <samp>(93b45)</samp>
    • useDevicesList: Show devices for Firefox  -  by @felixzapata in https://github.com/vueuse/vueuse/issues/2798 <samp>(0823d)</samp>
    • useElementHover: window is not defined  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2793 <samp>(c86f2)</samp>
    • useFetch: Abort before updating state  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2805 <samp>(fff45)</samp>
    • useFullscreen: Handle Safari iOS  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2822 <samp>(9d394)</samp>
    • useMounted: Check for the current instance <samp>(1aab1)</samp>
    • useScroll: Add support for row-reverse and column-reverse  -  by @OneLoneFox and @antfu in https://github.com/vueuse/vueuse/issues/2577 <samp>(23b9a)</samp>
    • useSortable: Order of dom and array is different  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2926 <samp>(3a508)</samp>
    • watchDeep,watchImmediate: Fix callback function execution logic  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2951 <samp>(e6e25)</samp>

       πŸŽ Performance

    • useStorageAsync,useFetch: Replace setTimeout with Promise  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2917 <samp>(8bd63)</samp>
        View changes on GitHub
    Open source β†’
  10. 10.0.0-beta.513 Apr 2023pre-release
    Release notes

       πŸš¨ Breaking Changes

    • Remove isFunction and isString utils  -  by @antfu <samp>(cb644)</samp>
    • useInfiniteScroll: Improve loading strategies, close #1701, close #1685  -  by @antfu in https://github.com/vueuse/vueuse/issues/1701 and https://github.com/vueuse/vueuse/issues/1685 <samp>(d3a2b)</samp>

       πŸš€ Features

    • Improve tree-shaking  -  by @antfu <samp>(3275e)</samp>
    • createReusableTemplate: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/2961 <samp>(bd53c)</samp>
    • createTemplatePromise: New function  -  by @antfu and Enzo Innocenzi in https://github.com/vueuse/vueuse/issues/2957 <samp>(13169)</samp>

       πŸž Bug Fixes

        View changes on GitHub
    Open source β†’
  11. 10.0.0-beta.413 Apr 2023pre-release
    Release notes

       πŸš¨ Breaking Changes

       πŸš€ Features

    • toRef: Support two argument overrides from Vue  -  by @antfu <samp>(f307f)</samp>
    • toValue: Rename resolveUnref to toValue  -  by @antfu <samp>(0a72b)</samp>
    • useAnimate: New function  -  by @tolking and @antfu in https://github.com/vueuse/vueuse/issues/2109 <samp>(bcf5d)</samp>
    • useAxios: Added initialData and resetOnExecute options  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2791 <samp>(f54a3)</samp>
    • useColorMode: Support passing element as selector  -  by @Wing-9527 and @antfu in https://github.com/vueuse/vueuse/issues/2760 <samp>(02ccc)</samp>
    • useColorMode: Expose system and store ref, close #2023  -  by @antfu in https://github.com/vueuse/vueuse/issues/2023 <samp>(d150c)</samp>
    • useDraggable: Support capture option  -  by @faga295 and @antfu in https://github.com/vueuse/vueuse/issues/2725 <samp>(3996d)</samp>
    • useIntersectionObserver: Support for Pausable interface  -  by @Mini-ghost and @antfu in https://github.com/vueuse/vueuse/issues/2883 <samp>(4b336)</samp>
    • useMouse: Support type: screen  -  by @francoislevesque in https://github.com/vueuse/vueuse/issues/2467 <samp>(39d18)</samp>
    • useRouteQuery,useRouteParams: New transform handler  -  by @edumudu and @antfu in https://github.com/vueuse/vueuse/issues/2191 <samp>(d23ca)</samp>

       πŸž Bug Fixes

    • useScroll: Add support for row-reverse and column-reverse  -  by @OneLoneFox and @antfu in https://github.com/vueuse/vueuse/issues/2577 <samp>(23b9a)</samp>
        View changes on GitHub
    Open source β†’
  12. 10.0.0-beta.312 Apr 2023pre-release
    Release notes

       πŸš¨ Breaking Changes

    • useAxios: Remove deprecated apis  -  by @antfu <samp>(1f8b9)</samp>
    • useFullscreen: Better cross-platform compatibility  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2915 <samp>(2e467)</samp>
    • useToFixed: Remove deprecated function  -  by @antfu <samp>(a6e5b)</samp>
    • useUserMedia: Remove deprecated apis  -  by @antfu <samp>(85468)</samp>
    • useWindowSize: Use media query instead of orientationchange listener  -  by @zhousg and @antfu in https://github.com/vueuse/vueuse/issues/2919 <samp>(4e7b0)</samp>

       πŸš€ Features

    • Update deps  -  by @antfu <samp>(e75a5)</samp>
    • useDraggable: Introduce axis option  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2948 <samp>(0842a)</samp>
    • useFirestore: Support delay for autoDispose, fixes #2252  -  by @Zehir in https://github.com/vueuse/vueuse/issues/2276 and https://github.com/vueuse/vueuse/issues/2252 <samp>(05781)</samp>

       πŸž Bug Fixes

    • onStartTyping: Fix char ascii  -  by @meenie-net in https://github.com/vueuse/vueuse/issues/2932 <samp>(e9ab3)</samp>
    • useMounted: Check for the current instance  -  by @antfu <samp>(1aab1)</samp>
    • useSortable: Order of dom and array is different  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2926 <samp>(3a508)</samp>
    • watchDeep,watchImmediate: Fix callback function execution logic  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2951 <samp>(e6e25)</samp>

       πŸŽ Performance

    • useStorageAsync,useFetch: Replace setTimeout with Promise  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2917 <samp>(8bd63)</samp>
        View changes on GitHub
    Open source β†’
  13. 10.0.0-beta.228 Mar 2023pre-release
    Release notes

       πŸš¨ Breaking Changes

    • useElementVisibility: Use useIntersectionObserver instead of scroll event handler  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/2551 <samp>(74b00)</samp>

       πŸš€ Features

    • onKeyStroke: Support ignoring repeated stroke  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2652 <samp>(22ca5)</samp>
    • reactiveOmit: Add predicate parameter  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2849 <samp>(2e297)</samp>
    • reactivePick: Add predicate parameter  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2850 <samp>(0bde4)</samp>
    • useArrayUnique: Add a custom function to deduplicate  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2612 <samp>(c8c30)</samp>
    • useAsyncValidator: Add manual option  -  by @jaw52 and @antfu in https://github.com/vueuse/vueuse/issues/2903 <samp>(16461)</samp>
    • useAxios: Added onFinish callback  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2829 <samp>(a2f33)</samp>
    • useBreakpoints: Getting current breakpoints  -  by @ineshbose and @antfu in https://github.com/vueuse/vueuse/issues/2906 <samp>(bbabd)</samp>
    • useDark: Passthrough default handler from useColorSchema  -  by @godismyjudge95 and @antfu in https://github.com/vueuse/vueuse/issues/2866 <samp>(d6d35)</samp>
    • useParentElement: New function  -  by @jd-solanki and @antfu in https://github.com/vueuse/vueuse/issues/2855 <samp>(e8168)</samp>
    • useResizeObserver: Support element list  -  by @acyza and @antfu in https://github.com/vueuse/vueuse/issues/2841 <samp>(3e187)</samp>
    • useSupported: Support tracking reactivity for the callback function  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2904 <samp>(55a32)</samp>

       πŸž Bug Fixes

    • useDevicesList: Show devices for Firefox  -  by @felixzapata in https://github.com/vueuse/vueuse/issues/2798 <samp>(0823d)</samp>
        View changes on GitHub
    Open source β†’
  14. 10.0.0-beta.123 Mar 2023pre-release
    Release notes

       πŸš€ Features

    • useAsyncValidator: Add immediate and execute  -  by @jaw52 and @antfu in https://github.com/vueuse/vueuse/issues/2899 <samp>(79176)</samp>
    • useFileDialog: Add listener for file change events  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2893 <samp>(5e697)</samp>
    • useIdle: Add reset capability  -  by @nahvego and @antfu in https://github.com/vueuse/vueuse/issues/2880 <samp>(f4d35)</samp>
    • useTransition: Support MaybeComputedRef  -  by @zhiyuanzmj in https://github.com/vueuse/vueuse/issues/2871 <samp>(5944e)</samp>
    • useVModel: Add shouldEmit hook  -  by @baiwusanyu-c and @antfu in https://github.com/vueuse/vueuse/issues/2836 <samp>(f8a53)</samp>

       πŸž Bug Fixes

    • useArrayDifference: Error with falsey  -  by @simpleoo0o and lix in https://github.com/vueuse/vueuse/issues/2869 <samp>(41858)</samp>
    • useAsyncState: Fix toThrowError error type  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2898 <samp>(b636f)</samp>
        View changes on GitHub
    Open source β†’
  15. 10.0.0-beta.014 Mar 2023pre-release
    Release notes

       πŸš¨ Breaking Changes

    • Remove deprecated types  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2656 <samp>(c2fee)</samp>
    • computedAsync: Set shallow defalut to true  -  by @xiankaiqun and @antfu in https://github.com/vueuse/vueuse/issues/2621 <samp>(23c9d)</samp>
    • useAxios: error should return type unknown  -  by @jbaubree and @antfu in https://github.com/vueuse/vueuse/issues/2807 <samp>(d8d73)</samp>
    • useEventBus,createEventHook: Dedupe registration of the same function  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2748 <samp>(dd514)</samp>
    • useIDBKeyval: Return format changed, add isFinished  -  by @jssullivan and james.sullivan in https://github.com/vueuse/vueuse/issues/2474 <samp>(ef281)</samp>
    • useSwipe: Use literal for swipe direction instead of enum  -  by @antfu <samp>(f285c)</samp>
    • useUserMedia: Add constraints - remove deviceIds  -  by @mango-martin in https://github.com/vueuse/vueuse/issues/2032 <samp>(8f2a3)</samp>
    • useWebNotification: Should be exposed as EventHooksOn  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2821 <samp>(bcd2a)</samp>

       πŸš€ Features

    • createEventHook: Allow awaiting on trigger  -  by @Akryum and @antfu in https://github.com/vueuse/vueuse/issues/2824 <samp>(31347)</samp>
    • createGlobalState: Allow passing initial args  -  by @jd-solanki and @antfu in https://github.com/vueuse/vueuse/issues/2790 <samp>(f21b2)</samp>
    • useArrayDifference: New function  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2710 <samp>(a2a33)</samp>
    • useArrayIncludes: New function  -  by @Alfred-Skyblue and @antfu in https://github.com/vueuse/vueuse/issues/2708 <samp>(4d6bc)</samp>
    • useBrowserLocation: Two-way binding  -  by @sxzz in https://github.com/vueuse/vueuse/issues/2168 <samp>(a860c)</samp>
    • useCssVar: Introduce observe option  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2800 <samp>(ae6e1)</samp>
    • useCycleList: Allow receiving reactive list  -  by @hjJunior and @antfu in https://github.com/vueuse/vueuse/issues/2864 <samp>(b65c2)</samp>
    • useDark, useColorMode: Introduce disableTransition option  -  by @antfu <samp>(320ab)</samp>
    • useFetch: Update data on success  -  by @pbrzosko and Przemyslaw Brzosko in https://github.com/vueuse/vueuse/issues/2711 <samp>(78cfb)</samp>
    • usePerformanceObserver: New function  -  by @LockingReal, Admin and @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2736 <samp>(21536)</samp>
    • useSortable: New function  -  by @Alfred-Skyblue, @okxiaoliang4 and @antfu in https://github.com/vueuse/vueuse/issues/2763 <samp>(6bc60)</samp>
    • useSwipe, usePointerSwipe, useTransition: Improve tree-shaking  -  by @webistomin and @antfu in https://github.com/vueuse/vueuse/issues/2863 <samp>(08c21)</samp>
    • useTextareaAutosize: Added styleTarget option to style other element  -  by @jd-solanki in https://github.com/vueuse/vueuse/issues/2312 <samp>(a3e95)</samp>
    • useTransition: Expose transition utility for manual control  -  by @scottbedard in https://github.com/vueuse/vueuse/issues/2743 <samp>(526d5)</samp>
    • watch: Shorthands for watch  -  by @mrhammadasif in https://github.com/vueuse/vueuse/issues/2651 <samp>(b4ec7)</samp>

       πŸž Bug Fixes

    • Use ts-ignore instead of ts-expect-error for version-specifc errors  -  by @sodatea in https://github.com/vueuse/vueuse/issues/2802 <samp>(37ec7)</samp>
    • useAsyncValidator: Incorrect condition for choosing constructor  -  by @theruziev in https://github.com/vueuse/vueuse/issues/2788 <samp>(93b45)</samp>
    • useElementHover: window is not defined  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2793 <samp>(c86f2)</samp>
    • useFetch: Abort before updating state  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2805 <samp>(fff45)</samp>
    • useFullscreen: Handle Safari iOS  -  by @ferferga and @antfu in https://github.com/vueuse/vueuse/issues/2822 <samp>(9d394)</samp>
        View changes on GitHub
    Open source β†’
  16. 9.13.018 Feb 2023
    Release notes

       πŸš€ Features

    • useArrayFindLast: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/2471 <samp>(b0ac4)</samp>
    • useAsyncState: Get a promise function parameter type declaration  -  by @Brain777777 in https://github.com/vueuse/vueuse/issues/2765 <samp>(b4c63)</samp>
    • useAxios: Add success and error callbacks  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2714 <samp>(809fc)</samp>
    • useClamp: Composable computed usage improvements  -  by @ClemDee and @antfu in https://github.com/vueuse/vueuse/issues/2696 <samp>(08a07)</samp>
    • useElementHover: Give hook delay properties  -  by @LockingReal and @antfu in https://github.com/vueuse/vueuse/issues/2741 <samp>(23283)</samp>
    • useEventListener: Support reactive options  -  by @antfu <samp>(103d6)</samp>
    • useFetch: Cancel previous request on refetch  -  by @Alfred-Skyblue and δΈΆθΏœζ–Ή in https://github.com/vueuse/vueuse/issues/2750 <samp>(cd9d6)</samp>
    • useInterval: Add reset function  -  by @mohammadhosry and Mohammad Agbareya in https://github.com/vueuse/vueuse/issues/2686 <samp>(81db6)</samp>
    • useMutationObserver: Added test cases  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2734 <samp>(192c8)</samp>
    • useScroll: Support scrollend event  -  by @kongmoumou in https://github.com/vueuse/vueuse/issues/2716 <samp>(f8872)</samp>
    • useSpeechSynthesis: Add stop function  -  by @zwkkwz1 in https://github.com/vueuse/vueuse/issues/2774 <samp>(820e2)</samp>

       πŸž Bug Fixes

    • useAsyncValidator: Fix Schema importing from async-validator  -  by @theruziev and @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2761 <samp>(dbcdb)</samp>
    • useAxios: Fix cancelToken  -  by @Alfred-Skyblue and δΈΆθΏœζ–Ή in https://github.com/vueuse/vueuse/issues/2728 <samp>(7ad51)</samp>
    • useDevicePixelRatio: Remove unnecessary cleanup  -  by @Waleed-KH and @antfu in https://github.com/vueuse/vueuse/issues/2325 <samp>(83feb)</samp>
    • useFetch: Check if it's object for isFetchOptions  -  by @antfu <samp>(c2bc6)</samp>
    • useFocus: Listen focus and blur to the targetElement  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2631 <samp>(7cd88)</samp>
    • useInterval: Fix types  -  by @antfu <samp>(db66c)</samp>
    • useScrollLock: Detect parent with overflow auto  -  by @dpschen in https://github.com/vueuse/vueuse/issues/2699 <samp>(7e590)</samp>
    • useStorage: Emit a custom event to support custom storage areas  -  by @43081j and @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2630 <samp>(c6185)</samp>
    • useStorageAsync: Handle mergeDefaults option  -  by @ModyQyW in https://github.com/vueuse/vueuse/issues/2773 <samp>(105f4)</samp>
    • useThrottleFn: Check negative timeout  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2620 <samp>(a7238)</samp>
    • useWindowScroll: Use scrollX instead of pageXOffset  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/2776 <samp>(e490a)</samp>
        View changes on GitHub
    Open source β†’
  17. 9.12.029 Jan 2023
    Release notes

       πŸš€ Features

    • usePrevious: New function  -  by @antfu <samp>(e101f)</samp>
    • useRafFn, useIntervalFn, useTimeoutFn: Make status readonly  -  by @rotu in https://github.com/vueuse/vueuse/issues/2685 <samp>(39183)</samp>
    • useWebSocket: Allow undefined ref for url  -  by @ferferga in https://github.com/vueuse/vueuse/issues/2473 <samp>(13924)</samp>

       πŸž Bug Fixes

    • useElementSize: Use contentBoxSize as an array in useElementSize  -  by @threedayAAAAA and vaakian X in https://github.com/vueuse/vueuse/issues/2520 <samp>(30475)</samp>
    • useElementSize: Fix incorrect element size on SVG  -  by @Lionad-Morotar, @wheatjs and @antfu in https://github.com/vueuse/vueuse/issues/2661 <samp>(902b3)</samp>
    • useMediaControls: Ended status not updating  -  by @ferferga in https://github.com/vueuse/vueuse/issues/2680 <samp>(4ef27)</samp>
    • useMouseInElement: Check if mouse out of window  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/2458 <samp>(54f4e)</samp>
    • usePrecision: Fix return type  -  by @ClemDee in https://github.com/vueuse/vueuse/issues/2676 <samp>(e331b)</samp>
    • useTimeoutFn: Respect callback parameters in start function  -  by @wvffle in https://github.com/vueuse/vueuse/issues/2693 <samp>(e054a)</samp>
        View changes on GitHub
    Open source β†’
  18. 9.11.120 Jan 2023
    Release notes

       πŸš€ Features

        View changes on GitHub
    Open source β†’
  19. 9.11.017 Jan 2023
    Release notes

       πŸš€ Features

    • computedAsync: Introduce shadow option  -  by @xiankaiqun in https://github.com/vueuse/vueuse/issues/2616 <samp>(a0656)</samp>
    • createInjectionState: Return state when providing injection state  -  by @Tanimodori and lsdsjy in https://github.com/vueuse/vueuse/issues/2309 <samp>(f7ce6)</samp>
    • reactivePick: Add test cases  -  by @Alfred-Skyblue, δΈΆθΏœζ–Ή and @wheatjs in https://github.com/vueuse/vueuse/issues/2653 <samp>(b06b8)</samp>
    • useAsyncState: Add test cases  -  by @Alfred-Skyblue and @wheatjs in https://github.com/vueuse/vueuse/issues/2657 <samp>(5907f)</samp>
    • usePointerLock: New function  -  by @daniser, Sergey Danilchenko, Jelf and @wheatjs in https://github.com/vueuse/vueuse/issues/2590 <samp>(ae69f)</samp>
    • useThrottleFn: Add test cases  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2649 <samp>(85ab1)</samp>

       πŸž Bug Fixes

    • Nuxt3 implementation  -  by @roiLeo in https://github.com/vueuse/vueuse/issues/2644 <samp>(8f6ce)</samp>
    • components: Mark defineComponent as pure  -  by @vaakian and @wheatjs in https://github.com/vueuse/vueuse/issues/2623 <samp>(d5321)</samp>
    • docs: Remove unnecessary import  -  by @yuyinws in https://github.com/vueuse/vueuse/issues/2611 <samp>(7a2ff)</samp>
    • useAxios: Assign AxiosError to error.value when no url provided  -  by @syy11cn and @wheatjs in https://github.com/vueuse/vueuse/issues/2478 and https://github.com/vueuse/vueuse/issues/2484 <samp>(1e270)</samp>
    • useDraggable: Write to useStorage  -  by @akifo in https://github.com/vueuse/vueuse/issues/2575 <samp>(e39c2)</samp>
    • useElementByPoint: Make document configurable  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2614 <samp>(c3639)</samp>
    • useRouteQuery: Allow setting multiple route queries in same tick  -  by @wheatjs in https://github.com/vueuse/vueuse/issues/2646 <samp>(07c95)</samp>
    • useVirtualList: List sometimes missing elements  -  by @begedin and @wheatjs in https://github.com/vueuse/vueuse/issues/2477 <samp>(25f6e)</samp>
        View changes on GitHub
    Open source β†’
  20. 9.10.03 Jan 2023
    Release notes

       πŸš€ Features

    • useActiveElement: Support shadow roots  -  by @43081j and @antfu in https://github.com/vueuse/vueuse/issues/2592 <samp>(07f20)</samp>
    • useArrayUnique: New function  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2597 <samp>(162cd)</samp>
    • useDebounceFn,useThrottleFn: Return result using promise  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2580 <samp>(4d305)</samp>
    • useMouse: Support for movement detection  -  by @daniser and Sergey Danilchenko in https://github.com/vueuse/vueuse/issues/2589 <samp>(0c39d)</samp>
    • useVirutalList: Expose scrollTo in component  -  by @Agapanthus and Eric Skaliks in https://github.com/vueuse/vueuse/issues/2397 <samp>(9f495)</samp>

       πŸž Bug Fixes

    • nuxt: Disable useImage in the Nuxt package for auto imports  -  by @wheatjs in https://github.com/vueuse/vueuse/issues/2602 <samp>(d3d1d)</samp>
    • onKeyStroke: Make target ref nullable  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2579 <samp>(28614)</samp>
    • useActiveElement: Ignore if relatedTarget is set  -  by @dpschen in https://github.com/vueuse/vueuse/issues/2600 <samp>(ae78d)</samp>
    • useElementBounding: Update on scroll  -  by @Ducz01 and sibbng in https://github.com/vueuse/vueuse/issues/2596 <samp>(268a6)</samp>
    • useScrollLock: Fix iOS touchmove bug  -  by @robinscholz, Robin Scholz, webfansplz and @antfu in https://github.com/vueuse/vueuse/issues/2362 <samp>(c9a9a)</samp>
        View changes on GitHub
    Open source β†’
  21. 9.9.023 Dec 2022
    Release notes

       πŸš€ Features

    • useAsyncState: Add onSuccess callbacks  -  by @Alfred-Skyblue in https://github.com/vueuse/vueuse/issues/2562 <samp>(ed64f)</samp>

       πŸž Bug Fixes

    • formatTimeAgo: Typo foramtTimeAgo -> formatTimeAgo  -  by @QGIsK in https://github.com/vueuse/vueuse/issues/2568 <samp>(bb0fd)</samp>
    • useFetch: Doesn't work with formData payload  -  by @abitwhy in https://github.com/vueuse/vueuse/issues/2440 <samp>(000fd)</samp>
        View changes on GitHub
    Open source β†’
  22. 9.8.220 Dec 2022
    Release notes

       πŸž Bug Fixes

    • useStorage: Sync within page, close #1595  -  by @antfu in https://github.com/vueuse/vueuse/issues/1595 <samp>(800f7)</samp>
        View changes on GitHub
    Open source β†’
  23. 9.8.120 Dec 2022
    Release notes

       πŸž Bug Fixes

    • useStorage: Resume the watch after setting the value, fix loop updates  -  by @antfu <samp>(c3851)</samp>
        View changes on GitHub
    Open source β†’
  24. 9.8.020 Dec 2022
    Release notes

       πŸš€ Features

    • extendRef: Support 2.7, close #2340  -  by @antfu in https://github.com/vueuse/vueuse/issues/2340 <samp>(8c82e)</samp>
    • onClickOutside: Allow selector strings for ignore list  -  by @sibbng and @antfu in https://github.com/vueuse/vueuse/issues/2439 <samp>(7b3db)</samp>
    • useTimeAgo: Non-reactive version formatTimeAgo  -  by @antfu <samp>(9293c)</samp>

       πŸž Bug Fixes

    • onClickOutside: Apply ignore list on keyboard clicks  -  by @sibbng in https://github.com/vueuse/vueuse/issues/2438 <samp>(12e21)</samp>
    • useTimeAgo: Rounding unit fallback  -  by @antfu <samp>(f40a0)</samp>
        View changes on GitHub
    Open source β†’
  25. 9.7.016 Dec 2022
    Release notes

       πŸš€ Features

    • createEeventHook: Auto dispose  -  by @ARZarkesh and @antfu in https://github.com/vueuse/vueuse/issues/2518 <samp>(fdd4d)</samp>
    • useBreakpoints: Add breakpoints for Master CSS  -  by @imsus in https://github.com/vueuse/vueuse/issues/2529 <samp>(30c5b)</samp>
    • useRafFn: Add delta and timestamp  -  by @innocenzi in https://github.com/vueuse/vueuse/issues/2493 <samp>(692d0)</samp>
    • useTimeAgo: Add floor and ceil value calculation  -  by @userquin and @antfu in https://github.com/vueuse/vueuse/issues/2543 <samp>(a7dc6)</samp>
    • useTimeAgo: Custom units, number rounding  -  by @antfu <samp>(324de)</samp>

       πŸž Bug Fixes

    • Reference  -  by @antfu <samp>(ea497)</samp>
    • useActiveElement: Ignore blur for relatedTarget  -  by @dpschen in https://github.com/vueuse/vueuse/issues/2540 <samp>(88b44)</samp>
    • useDraggable: Use clientX instead of pageX, close #2053  -  by @stefnotch in https://github.com/vueuse/vueuse/issues/2054 and https://github.com/vueuse/vueuse/issues/2053 <samp>(c9186)</samp>
    • useGeolocation: Implement immediate option  -  by @ebisbe in https://github.com/vueuse/vueuse/issues/2472 <samp>(161fd)</samp>
    • useIntervalFn: Watch computed refs instead of just refs  -  by @innocenzi in https://github.com/vueuse/vueuse/issues/2539 <samp>(8bb7b)</samp>
    • useMagicKeys: Also clear 'current' on @focus  -  by @hartmut <samp>(@blur)</samp>
    • useStyleTag: Allow multiline CSS  -  by @jameswragg in https://github.com/vueuse/vueuse/issues/2476 <samp>(cfcc2)</samp>
    • useTextareaAutosize: Support changes of element width  -  by @dpschen in https://github.com/vueuse/vueuse/issues/2541 <samp>(ebd48)</samp>
    • useTimeAgo: Add showSecond prop to component  -  by @CS-Birb in https://github.com/vueuse/vueuse/issues/2547 <samp>(0c333)</samp>
    • useWindowScroll: Use configured window onScroll  -  by @94726 in https://github.com/vueuse/vueuse/issues/2545 <samp>(5df0a)</samp>
        View changes on GitHub
    Open source β†’
  26. 9.6.022 Nov 2022
    Release notes

       πŸž Bug Fixes

    • onClickOutside: Call handler if click event is fired by a keypress  -  by @sibbng in https://github.com/vueuse/vueuse/issues/2426 <samp>(ff96d)</samp>
    • ssr-plugin: Use useHead instead of useMeta  -  by @daniil4udo in https://github.com/vueuse/vueuse/issues/2449 <samp>(01c28)</samp>
    • useFirestore: Fix falsy type error  -  by @kiyopikko in https://github.com/vueuse/vueuse/issues/2431 <samp>(6886e)</samp>
    • useIDBKeyval: Incorrect value init set  -  by @sun0day in https://github.com/vueuse/vueuse/issues/2416 <samp>(1d841)</samp>
    • useStyleTag: Allow use of existing node  -  by @jameswragg in https://github.com/vueuse/vueuse/issues/2442 <samp>(94413)</samp>
    • useTransition: Call pause() to stop useRafFn when disabling  -  by @huodoushigemi, ζŽδΌ—θ±ͺ and @antfu in https://github.com/vueuse/vueuse/issues/2360 <samp>(0a49e)</samp>
        View changes on GitHub
    Open source β†’
  27. 9.5.09 Nov 2022
    Release notes

       πŸš€ Features

    • onClickOutside: Support options in component  -  by @fiadone and @sibbng in https://github.com/vueuse/vueuse/issues/2391
    • useEventListener: Accept multiple events or listeners  -  by @vaakian and @antfu in https://github.com/vueuse/vueuse/issues/2180
    • useFetch: Allow configure lifecycle handler behavior  -  by @climba03003 in https://github.com/vueuse/vueuse/issues/2333
    • useFetch: Support sending the custom request to an absolute URL regardless baseURL  -  by @sun0day in https://github.com/vueuse/vueuse/issues/2210
    • useGeolocation: Pause and resume controls  -  by @benax-se in https://github.com/vueuse/vueuse/issues/2376
    • useIDBKeyval: New integration - Idb-keyval wrapper  -  by @Harmony222 in https://github.com/vueuse/vueuse/issues/2335
    • useWebsocket: Url to be ref/computed  -  by @rotu in https://github.com/vueuse/vueuse/issues/2367

       πŸž Bug Fixes

    • onClickOutside: Access correct document  -  by @sibbng in https://github.com/vueuse/vueuse/issues/2404
    • usePointerSwipe: Handle secondary clicks properly  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/2379
    • useScroll: The expected result cannot be returned after setting the throttle parameter  -  by @LittleSound in https://github.com/vueuse/vueuse/issues/2390
    • useWebSocket: Don't hide pong setTimeout reference  -  by @kellerza and @antfu in https://github.com/vueuse/vueuse/issues/2206
        View changes on GitHub
    Open source β†’
  28. 9.4.025 Oct 2022
    Release notes

       πŸš€ Features

    • refDebounced: Use MaybeComputedRef for ms  -  by @dominikklein in https://github.com/vueuse/vueuse/issues/2337
    • useClipboard: Support legacy copy  -  by @lumdzeehol in https://github.com/vueuse/vueuse/issues/2336
    • useVirtualList: Horizontal list  -  by @Surof1n in https://github.com/vueuse/vueuse/issues/2310
    • useWebWorker: Support overloads  -  by @GODLiangCY in https://github.com/vueuse/vueuse/issues/2259

       πŸž Bug Fixes

    • useCounter: Set and reset should also be limited  -  by @iChengbo in https://github.com/vueuse/vueuse/issues/2179
    • useRouteHash, useRouteParams, useRouteQuery: Override only selected route param  -  by @dvh91 in https://github.com/vueuse/vueuse/issues/2350
    • useWebSocket: Don't reconnect WebSocket if close issued between retries  -  by @rotu in https://github.com/vueuse/vueuse/issues/2330
    • watchThrottled: Wait incorrect remaining time  -  by @sun0day in https://github.com/vueuse/vueuse/issues/2267
        View changes on GitHub
    Open source β†’
  29. 9.3.117 Oct 2022
    Release notes

       πŸš€ Features

    • fromEvent: Support HTMLElement  -  by @rorry121 and @antfu in https://github.com/vueuse/vueuse/issues/2048
    • useAxios: Add R genericity type for custom response data  -  by @jahnli in https://github.com/vueuse/vueuse/issues/2304
    • useFocusTrap: Enable options in component  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2321
    • useSorted: New function  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1799

       πŸž Bug Fixes

    • nuxt: Wrap ssr plugin in defineNuxtPlugin  -  by @dan-online in https://github.com/vueuse/vueuse/issues/2326
    • useBluetooth: Use shallowRef for bluetooth instance  -  by @antfu <samp>(0199b)</samp>
    • useFetch: Fix incorrect chainCallbacks behavior  -  by @GODLiangCY in https://github.com/vueuse/vueuse/issues/2231
    • useFirestore: Auto dispose documents  -  by @Zehir in https://github.com/vueuse/vueuse/issues/2318
    • useStorage: Fixed data desynchronization in case of clearing storage  -  by @yuryrudey in https://github.com/vueuse/vueuse/issues/2221
    • useTitle: Prevent observe and titleTemplate been specified at the same time  -  by @huynl-96 and @antfu in https://github.com/vueuse/vueuse/issues/2049
        View changes on GitHub
    Open source β†’
  30. 9.3.026 Sept 2022
    Release notes

       πŸš€ Features

    • Optional callback for useInterval, useTimeout & useTimestamp  -  by @Waleed-KH in https://github.com/vueuse/vueuse/issues/2240
    • onClickOutside: Add bubble modifier to directive  -  by @sibbng in https://github.com/vueuse/vueuse/issues/2183
    • onKeyStroke: Support capture all handler  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2197
    • useAxios: Improve type  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2208
    • useAxios: Add second generic type to error  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2248
    • useAxios: Add option for choosing shallowRef or ref  -  by @jahnli in https://github.com/vueuse/vueuse/issues/2251
    • useDateFormat: Support MMM and MMMM formatter  -  by @777Vasya77 in https://github.com/vueuse/vueuse/issues/2234
    • useDateFormat: Support meridiem format  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/2011
    • useFirestore: Support dependent queries  -  by @kiyopikko in https://github.com/vueuse/vueuse/issues/2103
    • useMediaQuery: Allow query to be a ref  -  by @GODLiangCY in https://github.com/vueuse/vueuse/issues/2178
    • useScroll: Support setting scroll position and toggling smooth scrolling  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/1996
    • useTimeAgo: New showSecond option  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2209

       πŸž Bug Fixes

    • onClickOutside: Put ignore logic on pointerdown event  -  by @GODLiangCY in https://github.com/vueuse/vueuse/issues/2198
    • templateRef: Add Component type  -  by @Holi0317 in https://github.com/vueuse/vueuse/issues/2203
    • until: .not returns new instance  -  by @lsdsjy and @antfu in https://github.com/vueuse/vueuse/issues/2224
        View changes on GitHub
    Open source β†’
  31. 9.2.05 Sept 2022
    Release notes

       πŸš¨ Breaking Changes

    • Bump Nuxt support to RC.9, update autoImports:sources hook  -  by @DamianGlowala in https://github.com/vueuse/vueuse/issues/2166

       πŸš€ Features

    • useAxios: Support RequestConfig for execute  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2152
    • useBreakpoints: Support greaterOrEqual etc.  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2148
    • useCloned: New function  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/2045
    • useDraggable: Support customizing trigger element  -  by @imguolao in https://github.com/vueuse/vueuse/issues/2133
    • useElementSize: Support box sizing  -  by @vaakian and @antfu in https://github.com/vueuse/vueuse/issues/2143
    • useElementVisibility: Support watch the real element  -  by @sxzz in https://github.com/vueuse/vueuse/issues/2169
    • useUrlSearchParams: Add write option  -  by @waldonUB in https://github.com/vueuse/vueuse/issues/2165
    • useVModel: Support clone option  -  by @edumudu and @antfu in https://github.com/vueuse/vueuse/issues/2022
    • useWebSocket: Enhence heartbeat  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2170
    • useWindowSize: Support includeScrollbar  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2161

       πŸž Bug Fixes

    • useArrayMap: Allow return type matches the mapper function  -  by @GODLiangCY in https://github.com/vueuse/vueuse/issues/2172
    • useAxios: Reset error on execute  -  by @flyingTodream in https://github.com/vueuse/vueuse/issues/2095
    • useDevicePixelRatio: More efficient mechanism  -  by @Waleed-KH and @antfu in https://github.com/vueuse/vueuse/issues/2044
    • useFavicon: Improve type overload  -  by @azaleta in https://github.com/vueuse/vueuse/issues/2123
    • useFileDialog: Choose file not work on mobile  -  by @1SZX1 and @antfu in https://github.com/vueuse/vueuse/issues/2080
    • useFocusWithin: Change focused typing to ComputedRef  -  by @chaii3 in https://github.com/vueuse/vueuse/issues/2073
    • useMemoize: Allow number in getKey  -  by @chaii3 in https://github.com/vueuse/vueuse/issues/2074
        View changes on GitHub
    Open source β†’
  32. 9.1.123 Aug 2022
    Release notes

       πŸš€ Features

    • usePreferredContrast: New function  -  by @Zhaocl1997 in https://github.com/vueuse/vueuse/issues/2040

       πŸž Bug Fixes

    • firebase: Improve externalization  -  by @antfu <samp>(e2a78)</samp>
    • shared: Resolve internal circular reference  -  by @antfu <samp>(0fdbb)</samp>
    • useActiveElement: Use computedWithControl instead of counter ref  -  by @vaakian in https://github.com/vueuse/vueuse/issues/2093
    • useElementHover: Support set el ref type  -  by @JiatLn in https://github.com/vueuse/vueuse/issues/2079
    • useScroll: Account for rounding errors when calculating arrivedState  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/2051
    • useURLSearchParams: Avoid referencing to global location  -  by @mskr in https://github.com/vueuse/vueuse/issues/2066
        View changes on GitHub
    Open source β†’
  33. 9.1.04 Aug 2022
    Release notes

       πŸš€ Features

    • useCycleList: Support MaybeRef for initialValue  -  by @Waleed-KH in https://github.com/vueuse/vueuse/issues/2025
    • usePrecision: New function  -  by @antfu <samp>(49c8a)</samp>
    • usePreferredReducedMotion: New function  -  by @Zhaocl1997 in https://github.com/vueuse/vueuse/issues/2039
    • useToNumber: New function  -  by @antfu <samp>(f69a3)</samp>
    • useToString: New function  -  by @antfu <samp>(2b869)</samp>

       πŸž Bug Fixes

    • Improve MaybeComputedRef  -  by @antfu <samp>(28c5a)</samp>
    • useFavicon: Writable return type  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/2036
    • useOffsetPagination: Min value for pageCount should be 1  -  by @jd-solanki and @antfu in https://github.com/vueuse/vueuse/issues/2001
    • useScriptTag: Normalize src arg  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/2030
    • useToFixed: Deprecated in favor of usePrecision  -  by @antfu <samp>(790ef)</samp>
    • useTransition: Improve type of TransitionPresets  -  by @antfu <samp>(cc865)</samp>
        View changes on GitHub
    Open source β†’
  34. 9.0.229 Jul 2022
    Release notes

       πŸž Bug Fixes

        View changes on GitHub
    Open source β†’
  35. 9.0.129 Jul 2022
    Release notes

       πŸš€ Features

    • useDateFormat: Support dd, ddd and dddd formatter  -  by @aki77 in https://github.com/vueuse/vueuse/issues/1986
    • useFirestore: Support reactive query  -  by @kiyopikko in https://github.com/vueuse/vueuse/issues/2008
    • useToFixed: New function  -  by @FliPPeDround in https://github.com/vueuse/vueuse/issues/2003

       πŸž Bug Fixes

    • useColorMode: When emitAuto is true, onChanged does not trigger when preferredMode changed  -  by @Waleed-KH in https://github.com/vueuse/vueuse/issues/2004
    • useFetch: Broken callbacks when RequestInit and UseFetchOptions are both passed in  -  by @curtgrimes in https://github.com/vueuse/vueuse/issues/2013
        View changes on GitHub
    Open source β†’
  36. 9.0.026 Jul 2022
    Release notes

       πŸš¨ Breaking Changes

    • all: isSupported becomes Ref<boolean> instead of boolean for SSR compatibility  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1800
    • all: Rename function options type with consistant Use prefix, huge thanks to @okxiaoliang4! (this should not affect most of the usage case, unless you are importing those types directly)
      • <details><summary>All Changes</summary>

        • useSpeechSynthesis: Rename type Status to UseSpeechSynthesisStatus  -  by @antfu <samp>(db61f)</samp>
        • onKeyStroke: Rename type KeyStrokeOptions to OnKeyStrokeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1807
        • useAsyncState: Rename type AsyncStateOptions to UseAsyncStateOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1809
        • useClipboard: Rename type ClipboardOptions to UseClipboardOptions and ClipboardReturn to UseClipboardReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1861
        • useElementVisibility: Rename type VisibilityScrollTargetOptions to UseElementVisibilityOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1863
        • useEventSource: Return type should be UseEventSourceReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1864
        • useFavicon: Rename type FaviconOptions to UseFaviconOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1865
        • useFocusWithin: Rename type FocusWithinReturn to UseFocusWithinReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1866
        • useGeolocation: Rename type GeolocationOptions to UseGeolocationOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1868
        • useIdle: Rename type IdleOptions to UseIdleOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1869
        • useIntersectionObserver: Rename type IntersectionObserverOptions to UseIntersectionObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1870
        • useJwt: Rename type JwtOptions to UseJwtOptions and JwtResult to UseJwtReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1899
        • useKeyModifier: Rename type ModifierOptions to UseModifierOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1871
        • useMagicKeys: Rename type MagicKeys to UseMagicKeysReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1873
        • useMemoize: Rename type UseMemoizedFn to UseMemoizeReturn and new type UseMemoizeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1872
        • useMemory: Rename type MemoryOptions to UseMemoryOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1605
        • useMouse: Rename type MouseOptions to UseMouseOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1877
        • useMutationObserver: Rename type MutationObserverOptions to UseMutationObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1884
        • useParallax: Rename type ParallaxOptions to UseParallaxOptions and ParallaxReturn to UseParallaxReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1885
        • usePointerSwipe: Rename type PointerSwipeOptions to UsePointerSwipeOptions and PointerSwipeReturn to UsePointerSwipeReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1886
        • useRTDB: Rename type RTDBOptions to UseRTDBOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1901
        • useRafFn: Rename type RafFnOptions to UseRafFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1887
        • useResizeObserver: Rename type ResizeObserverOptions to UseResizeObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1862
        • useShare: Rename type ShareOptions to UseShareOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1888
        • useSpeechRecognition: Rename type SpeechRecognitionOptions to UseSpeechRecognitionOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1889
        • useSpeechSynthesis: Rename type SpeechSynthesisOptions to UseSpeechSynthesisOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1890
        • useSpeechSynthesis: Remove voiceInfo, allow voice as ref  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1882
        • useStorage: Rename type StorageOptions to UseStorageOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1867
        • useStorageAsync: Rename type StorageAsyncOptions to UseStorageAsyncOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1883
        • useSwipe: Rename type SwipeOptions to UseSwipeOptions and SwipeReturn to UseSwipeReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1891
        • useTimestamp: Rename type TimestampOptions to UseTimestampOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1892
        • useTransition: Rename type TransitionOptions to UseTransitionOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1893
        • useVModel: Rename type VModelOptions to UseVModelOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1894
        • useWebSocket: Rename type WebSocketOptions to UseWebSocketOptions and WebSocketResult to UseWebSocketReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1895
        • useWebWorkerFn: Rename type WebWorkerOptions to UseWebWorkerOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1896
        • useWindowSize: Rename type WindowSizeOptions to UseWindowSizeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1897
        • useInterval: Rename type IntervalOptions to UseIntervalOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1945
        • useIntervalFn: Rename type IntervalFnOptions to UseIntervalFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1943
        • useTimeoutFn,useTimeout: Rename type TimeoutOptions to UseTimeoutOptions and TimeoutFnOptions to UseTimeoutFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1944 </details>
    • firebase: Support firebase 9 modular  -  by @antfu <samp>(9c65f)</samp>
    • math: Move logicAnd, logicOr, logicNot, useClamp to @vueuse/math  -  by @antfu in https://github.com/vueuse/vueuse/issues/1794, https://github.com/vueuse/vueuse/issues/1810
    • reactify: Enable support for reactive getter by default  -  by @antfu in https://github.com/vueuse/vueuse/issues/1860
    • useThrottleFn: trailing option should be false by default  -  by @webfansplz and @antfu in https://github.com/vueuse/vueuse/issues/1687
    • useMagicKeys: Store key instead of keyCode in current  -  by @wvffle in https://github.com/vueuse/vueuse/issues/1506

       πŸš€ Features

    • all: Support reactive getter as argument  -  in https://github.com/vueuse/vueuse/issues/1768

      This introduces a new convention of passing reactive getters as arguments. Previously, many of VueUse functions supported a convention to accept optional Ref as arguments (MaybeRef<T>) to make the reactivity connections. For example:

      // pass plain value
      const title = useTitle('foo') // changes title to 'foo'
      
      // pass a ref
      const myTitle = ref('foo')
      useTitle(myTitle) // changes title to 'foo'
      
      // reactive triggers the update
      myTitle.value = 'bar' // changes title to 'bar'
      

      Since v9.0, most of the VueUse function also accepts a getter function similar to computed or the watch source of watch to provide better flexibility.

      // before
      const title = computed(() => `${foo.value} | template`)
      useTitle(title)
      
      // with 9.0
      useTitle(() => `${foo.value} | template`)
      

      It also works great with Reactivity Transform.

      // before
      const title = $('foo')
      useTitle($$(title)) // you need to use $$() to preserve the reactive
      
      // with 9.0
      const title = $('foo')
      useTitle(() => title) // you can use a getter function just like `watch`
      
    • math: New @vueuse/math package

      • useAbs: New function  -  by @LittleSound and @antfu in https://github.com/vueuse/vueuse/issues/1825
      • useCeil: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1818
      • useFloor: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1817
      • useMath: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/1935
      • useMax: New function  -  by @FrankFang and @antfu in https://github.com/vueuse/vueuse/issues/1829
      • useMin: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/1934
      • useRound: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1820
      • useSum: New function  -  by @holazz in https://github.com/vueuse/vueuse/issues/1837
      • useTrunc: New function  -  by @hanpei and @antfu in https://github.com/vueuse/vueuse/issues/1838
      • useAverage: New function  -  by @colgin and @antfu in https://github.com/vueuse/vueuse/issues/1826
    • New Array-related utilities

      • useArrayEvery: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1915
      • useArrayFilter: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1905
      • useArrayFind: New function  -  by @yjl9903 and @antfu in https://github.com/vueuse/vueuse/issues/1875
      • useArrayJoin: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1904
      • useArrayMap: New function  -  by @huynl-96 and @antfu in https://github.com/vueuse/vueuse/issues/1908
      • useArrayReduce: New function  -  by @yjl9903 and @antfu in https://github.com/vueuse/vueuse/issues/1919
      • useArraySome: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1916
      • useArrayFindIndex: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1973
    • syncRef: Support custom transforms  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/1968

    • useAsyncState: Add throwError option  -  by @TuiMao233 and @antfu in https://github.com/vueuse/vueuse/issues/1975

    • useColorMode: New initialValue option  -  by @antfu <samp>(fcaf9)</samp>

    • useStorage: mergeDefaults option  -  by @webfansplz and @antfu in https://github.com/vueuse/vueuse/issues/1957

    • useTextDirection: New function  -  by @iChengbo and @antfu in https://github.com/vueuse/vueuse/issues/1678

       πŸž Bug Fixes

    • nuxt: Support import submodules for @vueuse/integrations  -  by @antfu <samp>(18ba0)</samp>
    • onClickOutside: Fix handler type  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1961
    • useOffsetPagination: Incorrectly currentPageSize value  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1949
    • useSpeechSynthesis: Remove duplicated onend, fix demo  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1941
    • useWebSocket: Set initial status as CLOSED  -  by @chaii3 in https://github.com/vueuse/vueuse/issues/1960
    • useNProgress: Improve SSR support  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1990
        View changes on GitHub
    Open source β†’
  37. 9.0.0-beta.224 Jul 2022pre-release
    Release notes

       πŸš¨ Breaking Changes

       πŸš€ Features

    • syncRef: Support custom transforms  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/1968
    • useArrayFindIndex: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1973
    • useAsyncState: Add throwError option  -  by @TuiMao233 and @antfu in https://github.com/vueuse/vueuse/issues/1975
    • useColorMode: New initialValue option  -  by @antfu <samp>(fcaf9)</samp>
    • useStorage: mergeDefaults option  -  by @webfansplz and @antfu in https://github.com/vueuse/vueuse/issues/1957
    • useTextDirection: New function  -  by @iChengbo and @antfu in https://github.com/vueuse/vueuse/issues/1678
        View changes on GitHub
    Open source β†’
  38. 9.0.0-beta.120 Jul 2022pre-release
    Release notes

       πŸš¨ Breaking Changes

    • useInterval: Rename type IntervalOptions to UseIntervalOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1945
    • useIntervalFn: Rename type IntervalFnOptions to UseIntervalFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1943
    • useTimeoutFn,useTimeout: Rename type TimeoutOptions to UseTimeoutOptions and TimeoutFnOptions to UseTimeoutFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1944

       πŸž Bug Fixes

    • nuxt: Support import submodules for @vueuse/integrations  -  by @antfu <samp>(18ba0)</samp>
    • onClickOutside: Fix handler type  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1961
    • useOffsetPagination: Incorrectly currentPageSize value  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1949
    • useSpeechSynthesis: Remove duplicated onend, fix demo  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1941
    • useWebSocket: Set initial status as CLOSED  -  by @chaii3 in https://github.com/vueuse/vueuse/issues/1960
        View changes on GitHub
    Open source β†’
  39. 9.0.0-beta.017 Jul 2022pre-release
    Release notes

       πŸš¨ Breaking Changes

    • all: isSupported becomes Ref<boolean> instead of boolean for SSR compatibility  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1800
    • all: Rename function options type with consistant Use prefix, huge thanks to @okxiaoliang4! (this should not affect most of the usage case, unless you are importing those types directly)
      • <details><summary>All Changes</summary>

        • useSpeechSynthesis: Rename type Status to UseSpeechSynthesisStatus  -  by @antfu <samp>(db61f)</samp>
        • onKeyStroke: Rename type KeyStrokeOptions to OnKeyStrokeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1807
        • useAsyncState: Rename type AsyncStateOptions to UseAsyncStateOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1809
        • useClipboard: Rename type ClipboardOptions to UseClipboardOptions and ClipboardReturn to UseClipboardReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1861
        • useElementVisibility: Rename type VisibilityScrollTargetOptions to UseElementVisibilityOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1863
        • useEventSource: Return type should be UseEventSourceReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1864
        • useFavicon: Rename type FaviconOptions to UseFaviconOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1865
        • useFocusWithin: Rename type FocusWithinReturn to UseFocusWithinReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1866
        • useGeolocation: Rename type GeolocationOptions to UseGeolocationOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1868
        • useIdle: Rename type IdleOptions to UseIdleOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1869
        • useIntersectionObserver: Rename type IntersectionObserverOptions to UseIntersectionObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1870
        • useJwt: Rename type JwtOptions to UseJwtOptions and JwtResult to UseJwtReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1899
        • useKeyModifier: Rename type ModifierOptions to UseModifierOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1871
        • useMagicKeys: Rename type MagicKeys to UseMagicKeysReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1873
        • useMemoize: Rename type UseMemoizedFn to UseMemoizeReturn and new type UseMemoizeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1872
        • useMemory: Rename type MemoryOptions to UseMemoryOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1605
        • useMouse: Rename type MouseOptions to UseMouseOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1877
        • useMutationObserver: Rename type MutationObserverOptions to UseMutationObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1884
        • useParallax: Rename type ParallaxOptions to UseParallaxOptions and ParallaxReturn to UseParallaxReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1885
        • usePointerSwipe: Rename type PointerSwipeOptions to UsePointerSwipeOptions and PointerSwipeReturn to UsePointerSwipeReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1886
        • useRTDB: Rename type RTDBOptions to UseRTDBOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1901
        • useRafFn: Rename type RafFnOptions to UseRafFnOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1887
        • useResizeObserver: Rename type ResizeObserverOptions to UseResizeObserverOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1862
        • useShare: Rename type ShareOptions to UseShareOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1888
        • useSpeechRecognition: Rename type SpeechRecognitionOptions to UseSpeechRecognitionOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1889
        • useSpeechSynthesis: Rename type SpeechSynthesisOptions to UseSpeechSynthesisOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1890
        • useSpeechSynthesis: Remove voiceInfo, allow voice as ref  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1882
        • useStorage: Rename type StorageOptions to UseStorageOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1867
        • useStorageAsync: Rename type StorageAsyncOptions to UseStorageAsyncOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1883
        • useSwipe: Rename type SwipeOptions to UseSwipeOptions and SwipeReturn to UseSwipeReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1891
        • useTimestamp: Rename type TimestampOptions to UseTimestampOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1892
        • useTransition: Rename type TransitionOptions to UseTransitionOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1893
        • useVModel: Rename type VModelOptions to UseVModelOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1894
        • useWebSocket: Rename type WebSocketOptions to UseWebSocketOptions and WebSocketResult to UseWebSocketReturn  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1895
        • useWebWorkerFn: Rename type WebWorkerOptions to UseWebWorkerOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1896
        • useWindowSize: Rename type WindowSizeOptions to UseWindowSizeOptions  -  by @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1897 </details>
    • math: Move logicAnd, logicOr, logicNot, useClamp to @vueuse/math  -  by @antfu in https://github.com/vueuse/vueuse/issues/1794, https://github.com/vueuse/vueuse/issues/1810
    • reactify: Enable support for reactive getter by default  -  by @antfu in https://github.com/vueuse/vueuse/issues/1860
    • useThrottleFn: trailing option should be false by default  -  by @webfansplz and @antfu in https://github.com/vueuse/vueuse/issues/1687
    • useMagicKeys: Store key instead of keyCode in current  -  by @wvffle in https://github.com/vueuse/vueuse/issues/1506

       πŸš€ Features

    • all: Support reactive getter as argument  -  in https://github.com/vueuse/vueuse/issues/1768

      This introduces a new convention of passing reactive getters as arguments. Previously, many of VueUse functions supports a convention to accept optional Ref as arguments (MaybeRef<T>) to making the reactivity connections. For example:

      // pass plain value
      const title = useTitle('foo') // changes title to 'foo'
      
      // pass a ref
      const myTitle = ref('foo')
      useTitle(myTitle) // changes title to 'foo'
      
      // reactive triggers the update
      myTitle.value = 'bar' // changes title to 'bar'
      

      Since v9.0, most of the VueUse function also accepts a getter function similar to computed or the watch source of watch to provide better flexibility.

      // before
      const title = computed(() => `${foo.value} | template`)
      useTitle(title)
      
      // with 9.0
      useTitle(() => `${foo.value} | template`)
      

      It also works great with Reactivity Transform.

      // before
      const title = $('foo')
      useTitle($$(title)) // you need to use $$() to preseve the reactive
      
      // with 9.0
      const title = $('foo')
      useTitle(() => title) // you can use a getter function just like `watch`
      
    • math: New @vueuse/math package

      • useAbs: New function  -  by @LittleSound and @antfu in https://github.com/vueuse/vueuse/issues/1825
      • useCeil: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1818
      • useFloor: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1817
      • useMath: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/1935
      • useMax: New function  -  by @FrankFang and @antfu in https://github.com/vueuse/vueuse/issues/1829
      • useMin: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/1934
      • useRound: New function  -  by @webfansplz in https://github.com/vueuse/vueuse/issues/1820
      • useSum: New function  -  by @holazz in https://github.com/vueuse/vueuse/issues/1837
      • useTrunc: New function  -  by @hanpei and @antfu in https://github.com/vueuse/vueuse/issues/1838
      • useAverage: New function  -  by @colgin and @antfu in https://github.com/vueuse/vueuse/issues/1826
    • New Array related utilities

      • useArrayEvery: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1915
      • useArrayFilter: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1905
      • useArrayFind: New function  -  by @yjl9903 and @antfu in https://github.com/vueuse/vueuse/issues/1875
      • useArrayJoin: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1904
      • useArrayMap: New function  -  by @huynl-96 and @antfu in https://github.com/vueuse/vueuse/issues/1908
      • useArrayReduce: New function  -  by @yjl9903 and @antfu in https://github.com/vueuse/vueuse/issues/1919
      • useArraySome: New function  -  by @huynl-96 in https://github.com/vueuse/vueuse/issues/1916
        View changes on GitHub
    Open source β†’
  40. 8.9.417 Jul 2022
    Release notes

       πŸž Bug Fixes

    • useDropZone: Improve argument type  -  by @aki77 in https://github.com/vueuse/vueuse/issues/1933
    • useFileDialog: Explict UseFileDialogReturn type  -  by @xiaoxiangmoe in https://github.com/vueuse/vueuse/issues/1927
    • useInfiniteScroll: Add direction types  -  by @sand4rt in https://github.com/vueuse/vueuse/issues/1929
        View changes on GitHub
    Open source β†’
  41. 8.9.314 Jul 2022
    Release notes

       πŸž Bug Fixes

    • useStyleTag: Fix hydration mismatch issue  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1918
    • useVModel: Fix compact with 2.7, fix #1745  -  by @Staremang in https://github.com/vueuse/vueuse/issues/1898
        View changes on GitHub
    Open source β†’
  42. 8.9.212 Jul 2022
    Release notes

       πŸš€ Features

    • onClickOutside: Add detectIframe option  -  by @sibbng in https://github.com/vueuse/vueuse/issues/1795
    • useVModel: Compact with 2.7, fix #1745  -  by @jiuran in https://github.com/vueuse/vueuse/issues/1798

       πŸž Bug Fixes

    • useMagicKeys: Fix setting properties of undefined value  -  by @Matrixbirds in https://github.com/vueuse/vueuse/issues/1856
        View changes on GitHub
    Open source β†’
  43. 8.9.18 Jul 2022
    Release notes

       πŸž Bug Fixes

        View changes on GitHub
    Open source β†’
  44. 8.9.06 Jul 2022
    Release notes

       πŸš€ Features

    • useFileDialog: New function  -  by @wobsoriano, @antfu and @okxiaoliang4 in https://github.com/vueuse/vueuse/issues/1218
    • useObjectUrl: New function  -  by @michaelhue in https://github.com/vueuse/vueuse/issues/1763
    • useRouteParams: New function  -  by @DevilTea and @antfu in https://github.com/vueuse/vueuse/issues/1173
    • useStepper: New function  -  by @innocenzi and @antfu in https://github.com/vueuse/vueuse/issues/1754
    • useTextareaAutosize: New function  -  by @innocenzi and @antfu in https://github.com/vueuse/vueuse/issues/1756
    • watchArray: New function  -  by @w1ndy and @antfu in https://github.com/vueuse/vueuse/issues/1705

       πŸž Bug Fixes

    • useColorMode: Resolve auto to preferred mode internally  -  by @dfreier in https://github.com/vueuse/vueuse/issues/1766
    • useMagicKeys: Reset refs on target blur  -  by @lavolpecheprogramma and @antfu in https://github.com/vueuse/vueuse/issues/1755
        View changes on GitHub
    Open source β†’
  45. 8.8.16 Jul 2022
    Release notes

       πŸš€ Features

       πŸž Bug Fixes

    • computedWithControl: trigger only work in Vue 3  -  by @antfu <samp>(a1077)</samp>
    • useMediaQuery: Check if window.matchMedia is a function  -  by @dfreier in https://github.com/vueuse/vueuse/issues/1765
        View changes on GitHub
    Open source β†’
  46. 8.8.06 Jul 2022
    Release notes

       πŸš€ Features

    • onLongPress: Added modifiers  -  by @chaii3 in https://github.com/vueuse/vueuse/issues/1719
    • resolveRef: New function  -  by @antfu in https://github.com/vueuse/vueuse/issues/1743
    • useAxios: Awaitable execute method  -  by @FRSgit in https://github.com/vueuse/vueuse/issues/1723
    • useBase64: Accept objects  -  by @chaii3 and @antfu in https://github.com/vueuse/vueuse/issues/1706
    • useColorMode: Add option to return auto mode  -  by @dfreier and @antfu in https://github.com/vueuse/vueuse/issues/1627
    • useWindowSize: Listen to the orientationchange event  -  by @okxiaoliang4 and @antfu in https://github.com/vueuse/vueuse/issues/1609
    • watchTriggerable: Extending watch with a manual trigger  -  by @LittleSound in https://github.com/vueuse/vueuse/issues/1736

       πŸž Bug Fixes

    • computedWithControl: Source type match vue.watch  -  by @kongmoumou in https://github.com/vueuse/vueuse/issues/1674
    • reactivePick: Allow nested keys  -  by @antfu <samp>(80c16)</samp>
    • types: reactiveOmit and reactivePick support array as second arg  -  by @Brain777777 in https://github.com/vueuse/vueuse/issues/1742
    • useCssVar: Remove spaces at both ends  -  by @murongg in https://github.com/vueuse/vueuse/issues/1741
    • useDrauu: Fix Eraser does not work  -  by @qinwencheng and @antfu in https://github.com/vueuse/vueuse/issues/1753
    • useMediaQuery: Strict isSupported check  -  by @antfu <samp>(5a64c)</samp>
        View changes on GitHub
    Open source β†’
  47. 8.7.522 Jun 2022
    Release notes

       πŸž Bug Fixes

    • useBluetooth:
      • Add @types/web-bluetooth as dep, close #1704 by @antfu
        View changes on GitHub
    Open source β†’
  48. 8.7.418 Jun 2022
    Release notes

       πŸš€ Features

    • useAsyncValidator:
    • useBluetooth:

       πŸž Bug Fixes

    • unrefElement:

       β€οΈ Contributors

       Thanks to @antfu | @carlosgamezdev | @michealroberts | @okxiaoliang4

        View changes on GitHub
    Open source β†’
  49. 8.7.316 Jun 2022
    Release notes

       πŸž Bug Fixes

       β€οΈ Contributors

       Thanks to @antfu

        View changes on GitHub
    Open source β†’
  50. 8.7.216 Jun 2022
    Release notes

    No significant changes

       β€οΈ Contributors

       Thanks to @antfu

        View changes on GitHub
    Open source β†’
  51. 8.7.116 Jun 2022
    Release notes

    No significant changes

       β€οΈ Contributors

       Thanks to @antfu

        View changes on GitHub
    Open source β†’
  52. 8.7.016 Jun 2022
    Release notes

       πŸš€ Features

    • until:
      • Improved until types #1493
    • useImage:

       πŸž Bug Fixes

    • onClickOutside:
      • Avoid calling safari workaround on right click #1673
    • unrefElement:
      • Don't return the Vue instance when $el is null/undefined #1657
    • useFetch:
      • Ssr compactible for headersToObject 8f541b0a
    • useIntervalFn:
      • Watch interval correctly #1676
    • useMagicKeys:
      • getModifierState is not function error in Chrome #1654
    • useScroll:
      • Compatibility for mobile #1663
    • useUrlSearchParams:
      • Preserve history state when updating query #1661
    • watch*:
      • Fix T type for WatchCallback #1692

       β€οΈ Contributors

       Thanks to @antfu | @arcs- | @DrJume | @HannesOberreiter | @HassanZahirnia | @hsyq | @LeSuisse | @luciorubeens | @lvjiaxuan | @meteorlxy | @nhedger | @sibbng | @YunYouJun | @zojize

        View changes on GitHub
    Open source β†’
  53. 8.6.031 May 2022
    Release notes

    Bug Fixes

    • nuxt: add useStorage to disabled composables (#1652) (1ed33ec)
    • useDraggable: should pass the stopPropagation option for component (#1620) (5e3151d)
    • useIntervalFn: unref interval (#1633) (29fc50c)

    Features

    Open source β†’
  54. 8.5.016 May 2022
    Release notes

    Bug Fixes

    • shared: correct to ignore undefined (#1601) (0aecfe6)
    • toRefs: keep class prototype, close #1530 (#1599) (356da7d)
    • useAxios: normalize isCanceled flag (#1585) (b833957)
    • useFetch: respect custom fetch option (#1603) (56eb358)
    • useFetch: return PromiseLike after setting method (#1571) (9b28628)
    • useFocus: focused should be false when element is undefined (#1580) (f0067ac)
    • useMediaQuery: normalize isSupported flag (#1575) (0222d48)
    • useUrlSearchParams: should return initialValue (#1583) (fe58f8a)
    • useVModel: unified value (#1568) (70d8092)
    • watchThrottled: duplicate callback invokation when leading and trailing edges coincide (#1593) (8ba3b9d)

    Features

    Open source β†’
  55. 8.4.25 May 2022
    Release notes

    Bug Fixes

    • useScrollLock: lock on element instead of document (#1561) (847e12f)
    • useScrollLock: stop listener properly (#1562) (f31de43)
    • useVModel: defaultValue can work with null (#1565) (f4e882c)
    • useVModel: return default value when it's nil only (#1567) (50d8a4c)
    Open source β†’
  56. 8.4.14 May 2022
    Release notes

    Bug Fixes

    • useVModel: returning undefined on false values (#1557) (0f3ddca)
    Open source β†’
  57. 8.4.03 May 2022
    Release notes

    Bug Fixes

    • computedAsync: keep evaluating true for concurrent changes (#1555) (23549c3)
    • core: circular reference (#1553) (df9dd89)
    • integrations: mark change-case as an optional peer dependacy (#1542) (aa6e593)
    • onClickOutside: fallback to pointerup event if click event not propagate (#1522) (89c9e53)
    • onLongPress: make directive work normal (#1550) (53ba3ba)
    • useAsyncState: isLoading not reset (#1518) (a8fd617)
    • useAxios: exception when args incorrect (#1534) (81f355d)
    • useAxios: rename aborted to isAborted (#1519) (e2a9ac3)
    • useElementBounding: call update on mounted (#626) (#1541) (dccd1f3)
    • useMutationObserver: isSupported misjudge (#1540) (a4238a8)

    Features

    • rxjs: Correct useObservable type signature and provide means of creating a non-undefined Ref (#1551) (5f3d026)
    • useCurrentElement: new function (e24db79)
    • useNetwork: new onlineAt attribute (#1535) (4d5cf1c)
    • useScreenOrientation: new function (#1526) (e8c057c)
    • useToggle: new options (#1523) (7aaebb3)
    • useVModel: add option to define defaultValue (#1537) (66e82ec)
    Open source β†’
  58. 8.3.121 Apr 2022
    Release notes

    Bug Fixes

    • nuxt: transpile ssr plugin (dfcee11)

    Features

    • og:image for each route (c514265)
    Open source β†’
  59. 8.3.020 Apr 2022
    Release notes

    Bug Fixes

    Features

    Open source β†’
  60. 8.2.614 Apr 2022
    Release notes

    Bug Fixes

    • nuxt: disable useHead and useTitle (903a14c)
    • useNProgress: allow partial options (#1487) (14ae0c9)
    • useRouteQuery: unset route query on default value (#1490) (c1459ed)

    Features

    Open source β†’