@spark-ui/hooks 17.2.1-beta.1 → 17.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/dist/use-combined-state/index.js +670 -47
- package/dist/use-combined-state/index.js.map +1 -1
- package/dist/use-combined-state/index.mjs +664 -4
- package/dist/use-combined-state/index.mjs.map +1 -1
- package/dist/use-merge-refs/index.js +7 -37
- package/dist/use-merge-refs/index.js.map +1 -1
- package/dist/use-merge-refs/index.mjs +1 -2
- package/dist/use-merge-refs/index.mjs.map +1 -1
- package/dist/use-mounted-state/index.js +7 -35
- package/dist/use-mounted-state/index.js.map +1 -1
- package/dist/use-mounted-state/index.mjs +2 -3
- package/dist/use-mounted-state/index.mjs.map +1 -1
- package/dist/use-scroll-overflow/index.js +8 -36
- package/dist/use-scroll-overflow/index.js.map +1 -1
- package/dist/use-scroll-overflow/index.mjs +2 -3
- package/dist/use-scroll-overflow/index.mjs.map +1 -1
- package/dist/use-sortable-list/index.js +6 -36
- package/dist/use-sortable-list/index.js.map +1 -1
- package/dist/use-sortable-list/index.mjs +2 -5
- package/dist/use-sortable-list/index.mjs.map +1 -1
- package/package.json +2 -2
- package/vite.config.ts +43 -0
- package/.turbo/turbo-build.log +0 -35
- package/.turbo/turbo-lint.log +0 -327
- package/dist/use-combined-state/index.d.mts +0 -12
- package/dist/use-combined-state/index.d.ts +0 -12
- package/dist/use-merge-refs/index.d.mts +0 -7
- package/dist/use-merge-refs/index.d.ts +0 -7
- package/dist/use-mounted-state/index.d.mts +0 -3
- package/dist/use-mounted-state/index.d.ts +0 -3
- package/dist/use-scroll-overflow/index.d.mts +0 -22
- package/dist/use-scroll-overflow/index.d.ts +0 -22
- package/dist/use-sortable-list/index.d.mts +0 -98
- package/dist/use-sortable-list/index.d.ts +0 -98
- package/tsup.config.ts +0 -11
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { Ref } from 'react';
|
|
2
|
-
|
|
3
|
-
interface UseSortableListOptions<T> {
|
|
4
|
-
/**
|
|
5
|
-
* The list of items to be sortable
|
|
6
|
-
*/
|
|
7
|
-
items: T[];
|
|
8
|
-
/**
|
|
9
|
-
* Callback called when items are reordered
|
|
10
|
-
* @param newItems - The reordered items array
|
|
11
|
-
*/
|
|
12
|
-
onReorder: (newItems: T[]) => void;
|
|
13
|
-
/**
|
|
14
|
-
* Function to generate a unique key for each item
|
|
15
|
-
* @param item - The item to generate a key for
|
|
16
|
-
* @returns A unique string key for the item
|
|
17
|
-
*/
|
|
18
|
-
getItemKey: (item: T) => string;
|
|
19
|
-
}
|
|
20
|
-
interface SortableItemProps<TElement extends HTMLElement = HTMLElement> {
|
|
21
|
-
/**
|
|
22
|
-
* Whether the item is draggable
|
|
23
|
-
*/
|
|
24
|
-
draggable: boolean;
|
|
25
|
-
/**
|
|
26
|
-
* Handler for drag start event
|
|
27
|
-
*/
|
|
28
|
-
onDragStart: (e: React.DragEvent) => void;
|
|
29
|
-
/**
|
|
30
|
-
* Handler for drag enter event
|
|
31
|
-
*/
|
|
32
|
-
onDragEnter: (e: React.DragEvent) => void;
|
|
33
|
-
/**
|
|
34
|
-
* Handler for drag over event
|
|
35
|
-
*/
|
|
36
|
-
onDragOver: (e: React.DragEvent) => void;
|
|
37
|
-
/**
|
|
38
|
-
* Handler for drag leave event
|
|
39
|
-
*/
|
|
40
|
-
onDragLeave: (e: React.DragEvent) => void;
|
|
41
|
-
/**
|
|
42
|
-
* Handler for drag end event
|
|
43
|
-
*/
|
|
44
|
-
onDragEnd: (e: React.DragEvent) => void;
|
|
45
|
-
/**
|
|
46
|
-
* Handler for drop event
|
|
47
|
-
*/
|
|
48
|
-
onDrop: (e: React.DragEvent) => void;
|
|
49
|
-
/**
|
|
50
|
-
* Handler for keyboard navigation
|
|
51
|
-
*/
|
|
52
|
-
onKeyDown: (e: React.KeyboardEvent) => void;
|
|
53
|
-
/**
|
|
54
|
-
* Tab index for keyboard navigation
|
|
55
|
-
*/
|
|
56
|
-
tabIndex: number;
|
|
57
|
-
/**
|
|
58
|
-
* Ref callback to attach to the item element
|
|
59
|
-
*/
|
|
60
|
-
ref: Ref<TElement>;
|
|
61
|
-
}
|
|
62
|
-
interface UseSortableListReturn<T> {
|
|
63
|
-
/**
|
|
64
|
-
* Get props to spread on a sortable item element (includes ref)
|
|
65
|
-
* @param item - The item to get props for
|
|
66
|
-
* @param index - The current index of the item in the list
|
|
67
|
-
* @returns Props object to spread on the element
|
|
68
|
-
*/
|
|
69
|
-
getItemProps: <TElement extends HTMLElement = HTMLElement>(item: T, index: number) => SortableItemProps<TElement>;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Hook to make a list of items sortable via drag and drop and keyboard navigation
|
|
73
|
-
*
|
|
74
|
-
* @example
|
|
75
|
-
* ```tsx
|
|
76
|
-
* const { getItemProps } = useSortableList({
|
|
77
|
-
* items: myItems,
|
|
78
|
-
* onReorder: setMyItems,
|
|
79
|
-
* getItemKey: (item) => item.id
|
|
80
|
-
* })
|
|
81
|
-
*
|
|
82
|
-
* return (
|
|
83
|
-
* <ul>
|
|
84
|
-
* {myItems.map((item, index) => (
|
|
85
|
-
* <li
|
|
86
|
-
* key={getItemKey(item)}
|
|
87
|
-
* {...getItemProps(item, index)}
|
|
88
|
-
* >
|
|
89
|
-
* {item.name}
|
|
90
|
-
* </li>
|
|
91
|
-
* ))}
|
|
92
|
-
* </ul>
|
|
93
|
-
* )
|
|
94
|
-
* ```
|
|
95
|
-
*/
|
|
96
|
-
declare function useSortableList<T>({ items, onReorder, getItemKey, }: UseSortableListOptions<T>): UseSortableListReturn<T>;
|
|
97
|
-
|
|
98
|
-
export { type SortableItemProps, type UseSortableListOptions, type UseSortableListReturn, useSortableList };
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { Ref } from 'react';
|
|
2
|
-
|
|
3
|
-
interface UseSortableListOptions<T> {
|
|
4
|
-
/**
|
|
5
|
-
* The list of items to be sortable
|
|
6
|
-
*/
|
|
7
|
-
items: T[];
|
|
8
|
-
/**
|
|
9
|
-
* Callback called when items are reordered
|
|
10
|
-
* @param newItems - The reordered items array
|
|
11
|
-
*/
|
|
12
|
-
onReorder: (newItems: T[]) => void;
|
|
13
|
-
/**
|
|
14
|
-
* Function to generate a unique key for each item
|
|
15
|
-
* @param item - The item to generate a key for
|
|
16
|
-
* @returns A unique string key for the item
|
|
17
|
-
*/
|
|
18
|
-
getItemKey: (item: T) => string;
|
|
19
|
-
}
|
|
20
|
-
interface SortableItemProps<TElement extends HTMLElement = HTMLElement> {
|
|
21
|
-
/**
|
|
22
|
-
* Whether the item is draggable
|
|
23
|
-
*/
|
|
24
|
-
draggable: boolean;
|
|
25
|
-
/**
|
|
26
|
-
* Handler for drag start event
|
|
27
|
-
*/
|
|
28
|
-
onDragStart: (e: React.DragEvent) => void;
|
|
29
|
-
/**
|
|
30
|
-
* Handler for drag enter event
|
|
31
|
-
*/
|
|
32
|
-
onDragEnter: (e: React.DragEvent) => void;
|
|
33
|
-
/**
|
|
34
|
-
* Handler for drag over event
|
|
35
|
-
*/
|
|
36
|
-
onDragOver: (e: React.DragEvent) => void;
|
|
37
|
-
/**
|
|
38
|
-
* Handler for drag leave event
|
|
39
|
-
*/
|
|
40
|
-
onDragLeave: (e: React.DragEvent) => void;
|
|
41
|
-
/**
|
|
42
|
-
* Handler for drag end event
|
|
43
|
-
*/
|
|
44
|
-
onDragEnd: (e: React.DragEvent) => void;
|
|
45
|
-
/**
|
|
46
|
-
* Handler for drop event
|
|
47
|
-
*/
|
|
48
|
-
onDrop: (e: React.DragEvent) => void;
|
|
49
|
-
/**
|
|
50
|
-
* Handler for keyboard navigation
|
|
51
|
-
*/
|
|
52
|
-
onKeyDown: (e: React.KeyboardEvent) => void;
|
|
53
|
-
/**
|
|
54
|
-
* Tab index for keyboard navigation
|
|
55
|
-
*/
|
|
56
|
-
tabIndex: number;
|
|
57
|
-
/**
|
|
58
|
-
* Ref callback to attach to the item element
|
|
59
|
-
*/
|
|
60
|
-
ref: Ref<TElement>;
|
|
61
|
-
}
|
|
62
|
-
interface UseSortableListReturn<T> {
|
|
63
|
-
/**
|
|
64
|
-
* Get props to spread on a sortable item element (includes ref)
|
|
65
|
-
* @param item - The item to get props for
|
|
66
|
-
* @param index - The current index of the item in the list
|
|
67
|
-
* @returns Props object to spread on the element
|
|
68
|
-
*/
|
|
69
|
-
getItemProps: <TElement extends HTMLElement = HTMLElement>(item: T, index: number) => SortableItemProps<TElement>;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Hook to make a list of items sortable via drag and drop and keyboard navigation
|
|
73
|
-
*
|
|
74
|
-
* @example
|
|
75
|
-
* ```tsx
|
|
76
|
-
* const { getItemProps } = useSortableList({
|
|
77
|
-
* items: myItems,
|
|
78
|
-
* onReorder: setMyItems,
|
|
79
|
-
* getItemKey: (item) => item.id
|
|
80
|
-
* })
|
|
81
|
-
*
|
|
82
|
-
* return (
|
|
83
|
-
* <ul>
|
|
84
|
-
* {myItems.map((item, index) => (
|
|
85
|
-
* <li
|
|
86
|
-
* key={getItemKey(item)}
|
|
87
|
-
* {...getItemProps(item, index)}
|
|
88
|
-
* >
|
|
89
|
-
* {item.name}
|
|
90
|
-
* </li>
|
|
91
|
-
* ))}
|
|
92
|
-
* </ul>
|
|
93
|
-
* )
|
|
94
|
-
* ```
|
|
95
|
-
*/
|
|
96
|
-
declare function useSortableList<T>({ items, onReorder, getItemKey, }: UseSortableListOptions<T>): UseSortableListReturn<T>;
|
|
97
|
-
|
|
98
|
-
export { type SortableItemProps, type UseSortableListOptions, type UseSortableListReturn, useSortableList };
|