📄 index.ts
¶
📊 Analysis Summary¶
Metric | Count |
---|---|
🔧 Functions | 13 |
📦 Imports | 13 |
📊 Variables & Constants | 6 |
📐 Interfaces | 1 |
📑 Type Aliases | 1 |
📚 Table of Contents¶
🛠️ File Location:¶
📂 packages/integrations/useSortable/index.ts
📦 Imports¶
Name | Source |
---|---|
ConfigurableDocument |
@vueuse/core |
MaybeElement |
@vueuse/core |
Options |
sortablejs |
MaybeRef |
vue |
MaybeRefOrGetter |
vue |
defaultDocument |
@vueuse/core |
tryOnMounted |
@vueuse/core |
tryOnScopeDispose |
@vueuse/core |
unrefElement |
@vueuse/core |
Sortable |
sortablejs |
isRef |
vue |
nextTick |
vue |
toValue |
vue |
Variables & Constants¶
Name | Type | Kind | Value | Exported |
---|---|---|---|---|
sortable |
Sortable | undefined |
let/var | *not shown* |
✗ |
defaultOptions |
Options |
const | `{ | |
onUpdate: (e) => { | ||||
moveArrayElement(list, e.oldIndex!, e.newIndex!, e) | ||||
}, | ||||
}` | ✗ | |||
target |
any |
const | (typeof el === 'string' ? document?.querySelector(el) : unrefElement(el)) |
✗ |
refElement |
Element |
const | parentElement.children[index] |
✗ |
array |
any |
const | _valueIsRef ? [...toValue(list)] : toValue(list) |
✗ |
element |
any |
const | array.splice(from, 1)[0] |
✗ |
Functions¶
useSortable(selector: string, list: MaybeRefOrGetter<T[]>, options: UseSortableOptions): UseSortableReturn
¶
Code
- Parameters:
selector: string
list: MaybeRefOrGetter<T[]>
options: UseSortableOptions
- Return Type:
UseSortableReturn
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
onUpdate(e: any): void
¶
- Parameters:
e: any
- Return Type:
void
- Calls:
moveArrayElement
start(): void
¶
Code
- Return Type:
void
- Calls:
document?.querySelector
unrefElement (from @vueuse/core)
stop(): void
¶
- Return Type:
void
- Calls:
sortable?.destroy
option(name: K, value: Options[K]): any
¶
Code
- Parameters:
name: K
value: Options[K]
- Return Type:
any
- Calls:
sortable?.option
insertNodeAt(parentElement: Element, element: Element, index: number): void
¶
Code
-
JSDoc:
-
Parameters:
parentElement: Element
element: Element
index: number
- Return Type:
void
- Calls:
parentElement.insertBefore
removeNode(node: Node): void
¶
Code
-
JSDoc:
-
Parameters:
node: Node
- Return Type:
void
- Calls:
node.parentNode.removeChild
moveArrayElement(list: MaybeRefOrGetter<T[]>, from: number, to: number, e: Sortable.SortableEvent | null): void
¶
Code
export function moveArrayElement<T>(
list: MaybeRefOrGetter<T[]>,
from: number,
to: number,
e: Sortable.SortableEvent | null = null,
): void {
if (e != null) {
removeNode(e.item)
insertNodeAt(e.from, e.item, from)
}
const _valueIsRef = isRef(list)
// When the list is a ref, make a shallow copy of it to avoid repeatedly triggering side effects when moving elements
const array = _valueIsRef ? [...toValue(list)] : toValue(list)
if (to >= 0 && to < array.length) {
const element = array.splice(from, 1)[0]
nextTick(() => {
array.splice(to, 0, element)
// When list is ref, assign array to list.value
if (_valueIsRef)
(list as MaybeRef).value = array
})
}
}
- Parameters:
list: MaybeRefOrGetter<T[]>
from: number
to: number
e: Sortable.SortableEvent | null
- Return Type:
void
- Calls:
removeNode
insertNodeAt
isRef (from vue)
toValue (from vue)
array.splice
nextTick (from vue)
- Internal Comments:
Interfaces¶
UseSortableReturn
¶
Interface Code
export interface UseSortableReturn {
/**
* start sortable instance
*/
start: () => void
/**
* destroy sortable instance
*/
stop: () => void
/**
* Options getter/setter
* @param name a Sortable.Options property.
* @param value a value.
*/
option: (<K extends keyof Sortable.Options>(name: K, value: Sortable.Options[K]) => void) & (<K extends keyof Sortable.Options>(name: K) => Sortable.Options[K])
}
Properties¶
Name | Type | Optional | Description |
---|---|---|---|
start |
() => void |
✗ | |
stop |
() => void |
✗ | |
option |
(<K extends keyof Sortable.Options>(name: K, value: Sortable.Options[K]) => void) & (<K extends keyof Sortable.Options>(name: K) => Sortable.Options[K]) |
✗ |