Skip to content

⬅️ 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:
    // has arguments
    

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;