docs: add advanced skills for Vitest, Pinia, and Vue built-ins
Add comprehensive reference documentation for: - Vitest: environments, projects/workspaces, type testing, vi utilities - Pinia: HMR, Nuxt integration, SSR setup - Vue: built-in components (Transition, Teleport, Suspense, KeepAlive) and advanced directives
This commit is contained in:
86
.agents/skills/vueuse-functions/references/useVibrate.md
Normal file
86
.agents/skills/vueuse-functions/references/useVibrate.md
Normal file
@@ -0,0 +1,86 @@
|
||||
---
|
||||
category: Browser
|
||||
---
|
||||
|
||||
# useVibrate
|
||||
|
||||
Reactive [Vibration API](https://developer.mozilla.org/en-US/docs/Web/API/Vibration_API)
|
||||
|
||||
Most modern mobile devices include vibration hardware, which lets software
|
||||
code provides physical feedback to the user by causing the device to shake.
|
||||
|
||||
The Vibration API offers Web apps the ability to access this hardware,
|
||||
if it exists, and does nothing if the device doesn't support it.
|
||||
|
||||
## Usage
|
||||
|
||||
Vibration is described as a pattern of on-off pulses, which may be of varying
|
||||
lengths.
|
||||
|
||||
The pattern may consist of either a single integer describing the
|
||||
number of milliseconds to vibrate, or an array of integers describing
|
||||
a pattern of vibrations and pauses.
|
||||
|
||||
```ts
|
||||
import { useVibrate } from '@vueuse/core'
|
||||
|
||||
// This vibrates the device for 300 ms
|
||||
// then pauses for 100 ms before vibrating the device again for another 300 ms:
|
||||
const { vibrate, stop, isSupported } = useVibrate({ pattern: [300, 100, 300] })
|
||||
|
||||
// Start the vibration, it will automatically stop when the pattern is complete:
|
||||
vibrate()
|
||||
|
||||
// But if you want to stop it, you can:
|
||||
stop()
|
||||
```
|
||||
|
||||
## Type Declarations
|
||||
|
||||
```ts
|
||||
export interface UseVibrateOptions
|
||||
extends ConfigurableNavigator, ConfigurableScheduler {
|
||||
/**
|
||||
*
|
||||
* Vibration Pattern
|
||||
*
|
||||
* An array of values describes alternating periods in which the
|
||||
* device is vibrating and not vibrating. Each value in the array
|
||||
* is converted to an integer, then interpreted alternately as
|
||||
* the number of milliseconds the device should vibrate and the
|
||||
* number of milliseconds it should not be vibrating
|
||||
*
|
||||
* @default []
|
||||
*
|
||||
*/
|
||||
pattern?: MaybeRefOrGetter<Arrayable<number>>
|
||||
/**
|
||||
* Interval to run a persistent vibration, in ms
|
||||
*
|
||||
* Pass `0` to disable
|
||||
*
|
||||
* @deprecated Please use `scheduler` option instead
|
||||
* @default 0
|
||||
*
|
||||
*/
|
||||
interval: number
|
||||
}
|
||||
export interface UseVibrateReturn extends Supportable {
|
||||
pattern: MaybeRefOrGetter<Arrayable<number>>
|
||||
intervalControls?: Pausable
|
||||
vibrate: (pattern?: Arrayable<number>) => void
|
||||
stop: () => void
|
||||
}
|
||||
/**
|
||||
* Reactive vibrate
|
||||
*
|
||||
* @see https://vueuse.org/useVibrate
|
||||
* @see https://developer.mozilla.org/en-US/docs/Web/API/Vibration_API
|
||||
* @param options
|
||||
*
|
||||
* @__NO_SIDE_EFFECTS__
|
||||
*/
|
||||
export declare function useVibrate(
|
||||
options?: UseVibrateOptions,
|
||||
): UseVibrateReturn
|
||||
```
|
||||
Reference in New Issue
Block a user