📄 index.ts¶
📊 Analysis Summary¶
| Metric | Count |
|---|---|
| 🔧 Functions | 1 |
| 📦 Imports | 6 |
| 📑 Type Aliases | 1 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/core/useDeviceOrientation/index.ts
📦 Imports¶
| Name | Source |
|---|---|
Ref |
vue |
ConfigurableWindow |
../_configurable |
shallowRef |
vue |
defaultWindow |
../_configurable |
useEventListener |
../useEventListener |
useSupported |
../useSupported |
Functions¶
useDeviceOrientation(options: ConfigurableWindow): { isSupported: any; isAbsolute: any; alpha: Ref<number>; beta: Ref<number>; gamma: Ref<number>; }¶
Code
export function useDeviceOrientation(options: ConfigurableWindow = {}) {
const { window = defaultWindow } = options
const isSupported = useSupported(() => window && 'DeviceOrientationEvent' in window)
const isAbsolute = shallowRef(false)
const alpha: Ref<number | null> = shallowRef(null)
const beta: Ref<number | null> = shallowRef(null)
const gamma: Ref<number | null> = shallowRef(null)
if (window && isSupported.value) {
useEventListener(window, 'deviceorientation', (event) => {
isAbsolute.value = event.absolute
alpha.value = event.alpha
beta.value = event.beta
gamma.value = event.gamma
}, { passive: true })
}
return {
isSupported,
isAbsolute,
alpha,
beta,
gamma,
}
}
-
JSDoc:
-
Parameters:
options: ConfigurableWindow- Return Type:
{ isSupported: any; isAbsolute: any; alpha: Ref<number>; beta: Ref<number>; gamma: Ref<number>; } - Calls:
useSupported (from ../useSupported)shallowRef (from vue)useEventListener (from ../useEventListener)