@dnd-kit/react 0.5.0-beta-20260518123953 → 0.5.0-beta-20260518131345
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/package.json +4 -4
- package/sortable.cjs +6 -1
- package/sortable.cjs.map +1 -1
- package/sortable.js +6 -1
- package/sortable.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dnd-kit/react",
|
|
3
|
-
"version": "0.5.0-beta-
|
|
3
|
+
"version": "0.5.0-beta-20260518131345",
|
|
4
4
|
"main": "./index.cjs",
|
|
5
5
|
"module": "./index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -64,9 +64,9 @@
|
|
|
64
64
|
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist"
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@dnd-kit/abstract": "0.5.0-beta-
|
|
68
|
-
"@dnd-kit/dom": "0.5.0-beta-
|
|
69
|
-
"@dnd-kit/state": "0.5.0-beta-
|
|
67
|
+
"@dnd-kit/abstract": "0.5.0-beta-20260518131345",
|
|
68
|
+
"@dnd-kit/dom": "0.5.0-beta-20260518131345",
|
|
69
|
+
"@dnd-kit/state": "0.5.0-beta-20260518131345",
|
|
70
70
|
"tslib": "^2.6.2"
|
|
71
71
|
},
|
|
72
72
|
"peerDependencies": {
|
package/sortable.cjs
CHANGED
|
@@ -86,7 +86,12 @@ function useSortable(input) {
|
|
|
86
86
|
hooks.useOnElementChange(handle, (handle2) => sortable$1.handle = handle2);
|
|
87
87
|
hooks.useOnElementChange(element, (element2) => sortable$1.element = element2);
|
|
88
88
|
hooks.useOnElementChange(target, (target2) => sortable$1.target = target2);
|
|
89
|
-
hooks.useOnValueChange(
|
|
89
|
+
hooks.useOnValueChange(
|
|
90
|
+
disabled,
|
|
91
|
+
() => sortable$1.disabled = disabled != null ? disabled : false,
|
|
92
|
+
void 0,
|
|
93
|
+
state.deepEqual
|
|
94
|
+
);
|
|
90
95
|
hooks.useOnValueChange(
|
|
91
96
|
sensors,
|
|
92
97
|
() => sortable$1.sensors = sensors,
|
package/sortable.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["src/sortable/useSortable.ts"],"names":["defaultSortableTransition","sortable","useInstance","Sortable","currentValue","useDeepSignal","useOnValueChange","useIsomorphicLayoutEffect","batch","deepEqual","immediateEffect","useOnElementChange","handle","element","target","useCallback"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,SAAS,YAAmC,KAA4B,EAAA;AAC7E,EAAM,MAAA;AAAA,IACJ,MAAA;AAAA,IACA,iBAAA;AAAA,IACA,iBAAA;AAAA,IACA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,IAAA;AAAA,IACA;AAAA,GACE,GAAA,KAAA;AACJ,EAAM,MAAA,UAAA,GAAa,cAAI,CAAA,cAAA,CAAA,EAAA,EAAAA,kCAAA,CAAA,EAA8B,KAAM,CAAA,UAAA,CAAA;AAC3D,EAAM,MAAAC,UAAA,GAAWC,iBAAY,CAAA,CAAC,OAAY,KAAA;AACxC,IAAA,OAAO,IAAIC,iBAAA;AAAA,MACT,iCACK,KADL,CAAA,EAAA;AAAA,QAEE,UAAA;AAAA,QACA,QAAU,EAAA,KAAA;AAAA,QACV,MAAA,EAAQC,uBAAa,MAAM,CAAA;AAAA,QAC3B,OAAA,EAASA,uBAAa,OAAO,CAAA;AAAA,QAC7B,MAAA,EAAQA,uBAAa,MAAM;AAAA,OAC7B,CAAA;AAAA,MACA;AAAA,KACF;AAAA,GACD,CAAA;AAED,EAAM,MAAA,eAAA,GAAkBC,mBAAc,CAAAJ,UAAA,EAAU,yBAAyB,CAAA;AAEzE,EAAAK,sBAAA,CAAiB,EAAI,EAAA,MAAOL,UAAS,CAAA,EAAA,GAAK,EAAG,CAAA;AAE7C,EAAAM,+BAAA,CAA0B,MAAM;AAC9B,IAAAC,WAAA,CAAM,MAAM;AACV,MAAAP,UAAA,CAAS,KAAQ,GAAA,KAAA;AACjB,MAAAA,UAAA,CAAS,KAAQ,GAAA,KAAA;AAAA,KAClB,CAAA;AAAA,GACA,EAAA,CAACA,UAAU,EAAA,KAAA,EAAO,KAAK,CAAC,CAAA;AAE3B,EAAAK,sBAAA,CAAiB,IAAM,EAAA,MAAOL,UAAS,CAAA,IAAA,GAAO,IAAK,CAAA;AACnD,EAAAK,sBAAA;AAAA,IACE,MAAA;AAAA,IACA,MAAOL,WAAS,MAAS,GAAA,MAAA;AAAA,IACzB,MAAA;AAAA,IACAQ;AAAA,GACF;AACA,EAAAH,sBAAA,CAAiB,IAAM,EAAA,MAAM,IAAS,KAAAL,UAAA,CAAS,OAAO,IAAK,CAAA,CAAA;AAC3D,EAAAK,sBAAA;AAAA,IACE,KAAA;AAAA,IACA,MAAM;AA5EV,MAAA,IAAA,EAAA;AA6EM,MAAA,IAAA,CAAA,CAAI,gBAAS,OAAT,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAkB,cAAc,MAAO,CAAA,IAAA,MAAQ,yCAAY,IAAM,CAAA,EAAA;AACnE,QAAAL,UAAA,CAAS,YAAa,EAAA;AAAA;AACxB,KACF;AAAA,IACAS;AAAA,GACF;AACA,EAAAC,wBAAA,CAAmB,MAAQ,EAAA,CAACC,OAAY,KAAAX,UAAA,CAAS,SAASW,OAAO,CAAA;AACjE,EAAAD,wBAAA,CAAmB,OAAS,EAAA,CAACE,QAAa,KAAAZ,UAAA,CAAS,UAAUY,QAAQ,CAAA;AACrE,EAAAF,wBAAA,CAAmB,MAAQ,EAAA,CAACG,OAAY,KAAAb,UAAA,CAAS,SAASa,OAAO,CAAA;AACjE,EAAAR,sBAAA,
|
|
1
|
+
{"version":3,"sources":["src/sortable/useSortable.ts"],"names":["defaultSortableTransition","sortable","useInstance","Sortable","currentValue","useDeepSignal","useOnValueChange","useIsomorphicLayoutEffect","batch","deepEqual","immediateEffect","useOnElementChange","handle","element","target","useCallback"],"mappings":"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","file":"sortable.cjs","sourcesContent":["import {useCallback} from 'react';\nimport {batch, deepEqual} from '@dnd-kit/state';\nimport {type Data} from '@dnd-kit/abstract';\nimport {Sortable, defaultSortableTransition} from '@dnd-kit/dom/sortable';\nimport type {SortableInput} from '@dnd-kit/dom/sortable';\nimport {useInstance} from '@dnd-kit/react';\nimport {\n useImmediateEffect as immediateEffect,\n useIsomorphicLayoutEffect,\n useOnValueChange,\n useOnElementChange,\n useDeepSignal,\n} from '@dnd-kit/react/hooks';\nimport {currentValue, type RefOrValue} from '@dnd-kit/react/utilities';\n\nexport interface UseSortableInput<T extends Data = Data>\n extends Omit<SortableInput<T>, 'handle' | 'element' | 'target'> {\n handle?: RefOrValue<Element>;\n element?: RefOrValue<Element>;\n target?: RefOrValue<Element>;\n}\n\nexport function useSortable<T extends Data = Data>(input: UseSortableInput<T>) {\n const {\n accept,\n collisionDetector,\n collisionPriority,\n id,\n data,\n element,\n handle,\n index,\n group,\n disabled,\n modifiers,\n sensors,\n target,\n type,\n plugins,\n } = input;\n const transition = {...defaultSortableTransition, ...input.transition};\n const sortable = useInstance((manager) => {\n return new Sortable(\n {\n ...input,\n transition,\n register: false,\n handle: currentValue(handle),\n element: currentValue(element),\n target: currentValue(target),\n },\n manager\n );\n });\n\n const trackedSortable = useDeepSignal(sortable, shouldUpdateSynchronously);\n\n useOnValueChange(id, () => (sortable.id = id));\n\n useIsomorphicLayoutEffect(() => {\n batch(() => {\n sortable.group = group;\n sortable.index = index;\n });\n }, [sortable, group, index]);\n\n useOnValueChange(type, () => (sortable.type = type));\n useOnValueChange(\n accept,\n () => (sortable.accept = accept),\n undefined,\n deepEqual\n );\n useOnValueChange(data, () => data && (sortable.data = data));\n useOnValueChange(\n index,\n () => {\n if (sortable.manager?.dragOperation.status.idle && transition?.idle) {\n sortable.refreshShape();\n }\n },\n immediateEffect\n );\n useOnElementChange(handle, (handle) => (sortable.handle = handle));\n useOnElementChange(element, (element) => (sortable.element = element));\n useOnElementChange(target, (target) => (sortable.target = target));\n useOnValueChange(\n disabled,\n () => (sortable.disabled = disabled ?? false),\n undefined,\n deepEqual\n );\n useOnValueChange(\n sensors,\n () => (sortable.sensors = sensors),\n undefined,\n deepEqual\n );\n useOnValueChange(\n collisionDetector,\n () => (sortable.collisionDetector = collisionDetector)\n );\n useOnValueChange(\n collisionPriority,\n () => (sortable.collisionPriority = collisionPriority)\n );\n useOnValueChange(\n plugins,\n () => (sortable.plugins = plugins),\n undefined,\n deepEqual\n );\n useOnValueChange(\n transition,\n () => (sortable.transition = transition),\n undefined,\n deepEqual\n );\n useOnValueChange(\n modifiers,\n () => (sortable.modifiers = modifiers),\n undefined,\n deepEqual\n );\n useOnValueChange(\n input.alignment,\n () => (sortable.alignment = input.alignment)\n );\n\n return {\n sortable: trackedSortable,\n get isDragging() {\n return trackedSortable.isDragging;\n },\n get isDropping() {\n return trackedSortable.isDropping;\n },\n get isDragSource() {\n return trackedSortable.isDragSource;\n },\n get isDropTarget() {\n return trackedSortable.isDropTarget;\n },\n handleRef: useCallback(\n (element: Element | null) => {\n sortable.handle = element ?? undefined;\n },\n [sortable]\n ),\n ref: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.element?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.element = element ?? undefined;\n },\n [sortable]\n ),\n sourceRef: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.source?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.source = element ?? undefined;\n },\n [sortable]\n ),\n targetRef: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.target?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.target = element ?? undefined;\n },\n [sortable]\n ),\n };\n}\n\nfunction shouldUpdateSynchronously(key: string, oldValue: any, newValue: any) {\n // Update synchronously after drop animation\n if (key === 'isDragSource' && !newValue && oldValue) return true;\n\n return false;\n}\n"]}
|
package/sortable.js
CHANGED
|
@@ -85,7 +85,12 @@ function useSortable(input) {
|
|
|
85
85
|
useOnElementChange(handle, (handle2) => sortable.handle = handle2);
|
|
86
86
|
useOnElementChange(element, (element2) => sortable.element = element2);
|
|
87
87
|
useOnElementChange(target, (target2) => sortable.target = target2);
|
|
88
|
-
useOnValueChange(
|
|
88
|
+
useOnValueChange(
|
|
89
|
+
disabled,
|
|
90
|
+
() => sortable.disabled = disabled != null ? disabled : false,
|
|
91
|
+
void 0,
|
|
92
|
+
deepEqual
|
|
93
|
+
);
|
|
89
94
|
useOnValueChange(
|
|
90
95
|
sensors,
|
|
91
96
|
() => sortable.sensors = sensors,
|
package/sortable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["src/sortable/useSortable.ts"],"names":["immediateEffect","handle","element","target"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBO,SAAS,YAAmC,KAA4B,EAAA;AAC7E,EAAM,MAAA;AAAA,IACJ,MAAA;AAAA,IACA,iBAAA;AAAA,IACA,iBAAA;AAAA,IACA,EAAA;AAAA,IACA,IAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,OAAA;AAAA,IACA,MAAA;AAAA,IACA,IAAA;AAAA,IACA;AAAA,GACE,GAAA,KAAA;AACJ,EAAM,MAAA,UAAA,GAAa,cAAI,CAAA,cAAA,CAAA,EAAA,EAAA,yBAAA,CAAA,EAA8B,KAAM,CAAA,UAAA,CAAA;AAC3D,EAAM,MAAA,QAAA,GAAW,WAAY,CAAA,CAAC,OAAY,KAAA;AACxC,IAAA,OAAO,IAAI,QAAA;AAAA,MACT,iCACK,KADL,CAAA,EAAA;AAAA,QAEE,UAAA;AAAA,QACA,QAAU,EAAA,KAAA;AAAA,QACV,MAAA,EAAQ,aAAa,MAAM,CAAA;AAAA,QAC3B,OAAA,EAAS,aAAa,OAAO,CAAA;AAAA,QAC7B,MAAA,EAAQ,aAAa,MAAM;AAAA,OAC7B,CAAA;AAAA,MACA;AAAA,KACF;AAAA,GACD,CAAA;AAED,EAAM,MAAA,eAAA,GAAkB,aAAc,CAAA,QAAA,EAAU,yBAAyB,CAAA;AAEzE,EAAA,gBAAA,CAAiB,EAAI,EAAA,MAAO,QAAS,CAAA,EAAA,GAAK,EAAG,CAAA;AAE7C,EAAA,yBAAA,CAA0B,MAAM;AAC9B,IAAA,KAAA,CAAM,MAAM;AACV,MAAA,QAAA,CAAS,KAAQ,GAAA,KAAA;AACjB,MAAA,QAAA,CAAS,KAAQ,GAAA,KAAA;AAAA,KAClB,CAAA;AAAA,GACA,EAAA,CAAC,QAAU,EAAA,KAAA,EAAO,KAAK,CAAC,CAAA;AAE3B,EAAA,gBAAA,CAAiB,IAAM,EAAA,MAAO,QAAS,CAAA,IAAA,GAAO,IAAK,CAAA;AACnD,EAAA,gBAAA;AAAA,IACE,MAAA;AAAA,IACA,MAAO,SAAS,MAAS,GAAA,MAAA;AAAA,IACzB,MAAA;AAAA,IACA;AAAA,GACF;AACA,EAAA,gBAAA,CAAiB,IAAM,EAAA,MAAM,IAAS,KAAA,QAAA,CAAS,OAAO,IAAK,CAAA,CAAA;AAC3D,EAAA,gBAAA;AAAA,IACE,KAAA;AAAA,IACA,MAAM;AA5EV,MAAA,IAAA,EAAA;AA6EM,MAAA,IAAA,CAAA,CAAI,cAAS,OAAT,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAkB,cAAc,MAAO,CAAA,IAAA,MAAQ,yCAAY,IAAM,CAAA,EAAA;AACnE,QAAA,QAAA,CAAS,YAAa,EAAA;AAAA;AACxB,KACF;AAAA,IACAA;AAAA,GACF;AACA,EAAA,kBAAA,CAAmB,MAAQ,EAAA,CAACC,OAAY,KAAA,QAAA,CAAS,SAASA,OAAO,CAAA;AACjE,EAAA,kBAAA,CAAmB,OAAS,EAAA,CAACC,QAAa,KAAA,QAAA,CAAS,UAAUA,QAAQ,CAAA;AACrE,EAAA,kBAAA,CAAmB,MAAQ,EAAA,CAACC,OAAY,KAAA,QAAA,CAAS,SAASA,OAAO,CAAA;AACjE,EAAA,gBAAA,
|
|
1
|
+
{"version":3,"sources":["src/sortable/useSortable.ts"],"names":["immediateEffect","handle","element","target"],"mappings":"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","file":"sortable.js","sourcesContent":["import {useCallback} from 'react';\nimport {batch, deepEqual} from '@dnd-kit/state';\nimport {type Data} from '@dnd-kit/abstract';\nimport {Sortable, defaultSortableTransition} from '@dnd-kit/dom/sortable';\nimport type {SortableInput} from '@dnd-kit/dom/sortable';\nimport {useInstance} from '@dnd-kit/react';\nimport {\n useImmediateEffect as immediateEffect,\n useIsomorphicLayoutEffect,\n useOnValueChange,\n useOnElementChange,\n useDeepSignal,\n} from '@dnd-kit/react/hooks';\nimport {currentValue, type RefOrValue} from '@dnd-kit/react/utilities';\n\nexport interface UseSortableInput<T extends Data = Data>\n extends Omit<SortableInput<T>, 'handle' | 'element' | 'target'> {\n handle?: RefOrValue<Element>;\n element?: RefOrValue<Element>;\n target?: RefOrValue<Element>;\n}\n\nexport function useSortable<T extends Data = Data>(input: UseSortableInput<T>) {\n const {\n accept,\n collisionDetector,\n collisionPriority,\n id,\n data,\n element,\n handle,\n index,\n group,\n disabled,\n modifiers,\n sensors,\n target,\n type,\n plugins,\n } = input;\n const transition = {...defaultSortableTransition, ...input.transition};\n const sortable = useInstance((manager) => {\n return new Sortable(\n {\n ...input,\n transition,\n register: false,\n handle: currentValue(handle),\n element: currentValue(element),\n target: currentValue(target),\n },\n manager\n );\n });\n\n const trackedSortable = useDeepSignal(sortable, shouldUpdateSynchronously);\n\n useOnValueChange(id, () => (sortable.id = id));\n\n useIsomorphicLayoutEffect(() => {\n batch(() => {\n sortable.group = group;\n sortable.index = index;\n });\n }, [sortable, group, index]);\n\n useOnValueChange(type, () => (sortable.type = type));\n useOnValueChange(\n accept,\n () => (sortable.accept = accept),\n undefined,\n deepEqual\n );\n useOnValueChange(data, () => data && (sortable.data = data));\n useOnValueChange(\n index,\n () => {\n if (sortable.manager?.dragOperation.status.idle && transition?.idle) {\n sortable.refreshShape();\n }\n },\n immediateEffect\n );\n useOnElementChange(handle, (handle) => (sortable.handle = handle));\n useOnElementChange(element, (element) => (sortable.element = element));\n useOnElementChange(target, (target) => (sortable.target = target));\n useOnValueChange(\n disabled,\n () => (sortable.disabled = disabled ?? false),\n undefined,\n deepEqual\n );\n useOnValueChange(\n sensors,\n () => (sortable.sensors = sensors),\n undefined,\n deepEqual\n );\n useOnValueChange(\n collisionDetector,\n () => (sortable.collisionDetector = collisionDetector)\n );\n useOnValueChange(\n collisionPriority,\n () => (sortable.collisionPriority = collisionPriority)\n );\n useOnValueChange(\n plugins,\n () => (sortable.plugins = plugins),\n undefined,\n deepEqual\n );\n useOnValueChange(\n transition,\n () => (sortable.transition = transition),\n undefined,\n deepEqual\n );\n useOnValueChange(\n modifiers,\n () => (sortable.modifiers = modifiers),\n undefined,\n deepEqual\n );\n useOnValueChange(\n input.alignment,\n () => (sortable.alignment = input.alignment)\n );\n\n return {\n sortable: trackedSortable,\n get isDragging() {\n return trackedSortable.isDragging;\n },\n get isDropping() {\n return trackedSortable.isDropping;\n },\n get isDragSource() {\n return trackedSortable.isDragSource;\n },\n get isDropTarget() {\n return trackedSortable.isDropTarget;\n },\n handleRef: useCallback(\n (element: Element | null) => {\n sortable.handle = element ?? undefined;\n },\n [sortable]\n ),\n ref: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.element?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.element = element ?? undefined;\n },\n [sortable]\n ),\n sourceRef: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.source?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.source = element ?? undefined;\n },\n [sortable]\n ),\n targetRef: useCallback(\n (element: Element | null) => {\n if (\n !element &&\n sortable.target?.isConnected &&\n !sortable.manager?.dragOperation.status.idle\n ) {\n return;\n }\n\n sortable.target = element ?? undefined;\n },\n [sortable]\n ),\n };\n}\n\nfunction shouldUpdateSynchronously(key: string, oldValue: any, newValue: any) {\n // Update synchronously after drop animation\n if (key === 'isDragSource' && !newValue && oldValue) return true;\n\n return false;\n}\n"]}
|