⬅️ Back to Table of Contents
📄 index.ts
📊 Analysis Summary
Metric |
Count |
🔧 Functions |
2 |
📦 Imports |
7 |
📊 Variables & Constants |
1 |
📐 Interfaces |
1 |
📑 Type Aliases |
2 |
📚 Table of Contents
🛠️ File Location:
📂 packages/shared/useToggle/index.ts
📦 Imports
Name |
Source |
MaybeRef |
vue |
MaybeRefOrGetter |
vue |
Ref |
vue |
ShallowRef |
vue |
isRef |
vue |
shallowRef |
vue |
toValue |
vue |
Variables & Constants
Name |
Type |
Kind |
Value |
Exported |
_value |
ShallowRef<boolean> |
const |
shallowRef(initialValue) as ShallowRef<boolean> |
✗ |
Functions
useToggle(initialValue: Ref<T>, options: UseToggleOptions<Truthy, Falsy>): (value?: T) => T
Code
export function useToggle<Truthy, Falsy, T = Truthy | Falsy>(initialValue: Ref<T>, options?: UseToggleOptions<Truthy, Falsy>): (value?: T) => T
- Parameters:
initialValue: Ref<T>
options: UseToggleOptions<Truthy, Falsy>
- Return Type:
(value?: T) => T
toggle(value: boolean): any
Code
function toggle(value?: boolean) {
// has arguments
if (arguments.length) {
_value.value = value!
return _value.value
}
else {
const truthy = toValue(truthyValue)
_value.value = _value.value === truthy
? toValue(falsyValue)
: truthy
return _value.value
}
}
- Parameters:
value: boolean
- Return Type:
any
- Calls:
toValue (from vue)
- Internal Comments:
Interfaces
UseToggleOptions<Truthy, Falsy>
Interface Code
export interface UseToggleOptions<Truthy, Falsy> {
truthyValue?: MaybeRefOrGetter<Truthy>
falsyValue?: MaybeRefOrGetter<Falsy>
}
Properties
Name |
Type |
Optional |
Description |
truthyValue |
MaybeRefOrGetter<Truthy> |
✓ |
|
falsyValue |
MaybeRefOrGetter<Falsy> |
✓ |
|
Type Aliases
ToggleFn
type ToggleFn = (value?: boolean) => void;
UseToggleReturn
type UseToggleReturn = [ShallowRef<boolean>, ToggleFn] | ToggleFn;