@payloadcms/ui 3.78.0-canary.6 → 3.78.0-canary.8
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/dist/elements/DocumentStaleData/index.d.ts +7 -0
- package/dist/elements/DocumentStaleData/index.d.ts.map +1 -0
- package/dist/elements/DocumentStaleData/index.js +102 -0
- package/dist/elements/DocumentStaleData/index.js.map +1 -0
- package/dist/elements/DocumentStaleData/index.scss +34 -0
- package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/index.js +45 -33
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/exports/client/index.js +24 -24
- package/dist/exports/client/index.js.map +4 -4
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +2 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/index.d.ts +1 -0
- package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/index.js +19 -1
- package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +39 -14
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/index.d.ts +1 -0
- package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/index.js +18 -1
- package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
- package/dist/utilities/buildFormState.d.ts +6 -0
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +22 -5
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/utilities/getClientSchemaMap.d.ts +1 -0
- package/dist/utilities/getClientSchemaMap.d.ts.map +1 -1
- package/dist/utilities/getClientSchemaMap.js +7 -4
- package/dist/utilities/getClientSchemaMap.js.map +1 -1
- package/dist/utilities/getSchemaMap.d.ts +1 -0
- package/dist/utilities/getSchemaMap.d.ts.map +1 -1
- package/dist/utilities/getSchemaMap.js +7 -4
- package/dist/utilities/getSchemaMap.js.map +1 -1
- package/dist/utilities/handleLivePreview.d.ts.map +1 -1
- package/dist/utilities/handleStaleDataCheck.d.ts +15 -0
- package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -0
- package/dist/utilities/handleStaleDataCheck.js +61 -0
- package/dist/utilities/handleStaleDataCheck.js.map +1 -0
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +36 -1
- package/dist/views/Edit/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DocumentStaleData/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAMxC,OAAO,cAAc,CAAA;AAMrB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACrC,CAsCA,CAAA"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import React, { useEffect } from 'react';
|
|
6
|
+
import { useRouteCache } from '../../providers/RouteCache/index.js';
|
|
7
|
+
import { useTranslation } from '../../providers/Translation/index.js';
|
|
8
|
+
import { Button } from '../Button/index.js';
|
|
9
|
+
import { Modal, useModal } from '../Modal/index.js';
|
|
10
|
+
import './index.scss';
|
|
11
|
+
const modalSlug = 'document-stale-data';
|
|
12
|
+
const baseClass = 'document-stale-data';
|
|
13
|
+
export const DocumentStaleData = t0 => {
|
|
14
|
+
const $ = _c(14);
|
|
15
|
+
const {
|
|
16
|
+
isActive,
|
|
17
|
+
onReload
|
|
18
|
+
} = t0;
|
|
19
|
+
const {
|
|
20
|
+
closeModal,
|
|
21
|
+
openModal
|
|
22
|
+
} = useModal();
|
|
23
|
+
const {
|
|
24
|
+
clearRouteCache
|
|
25
|
+
} = useRouteCache();
|
|
26
|
+
const {
|
|
27
|
+
t
|
|
28
|
+
} = useTranslation();
|
|
29
|
+
let t1;
|
|
30
|
+
let t2;
|
|
31
|
+
if ($[0] !== closeModal || $[1] !== isActive || $[2] !== openModal) {
|
|
32
|
+
t1 = () => {
|
|
33
|
+
if (isActive) {
|
|
34
|
+
openModal(modalSlug);
|
|
35
|
+
} else {
|
|
36
|
+
closeModal(modalSlug);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
t2 = [isActive, openModal, closeModal];
|
|
40
|
+
$[0] = closeModal;
|
|
41
|
+
$[1] = isActive;
|
|
42
|
+
$[2] = openModal;
|
|
43
|
+
$[3] = t1;
|
|
44
|
+
$[4] = t2;
|
|
45
|
+
} else {
|
|
46
|
+
t1 = $[3];
|
|
47
|
+
t2 = $[4];
|
|
48
|
+
}
|
|
49
|
+
useEffect(t1, t2);
|
|
50
|
+
let t3;
|
|
51
|
+
if ($[5] !== clearRouteCache || $[6] !== closeModal || $[7] !== onReload || $[8] !== t) {
|
|
52
|
+
let t4;
|
|
53
|
+
if ($[10] !== clearRouteCache || $[11] !== closeModal || $[12] !== onReload) {
|
|
54
|
+
t4 = async () => {
|
|
55
|
+
closeModal(modalSlug);
|
|
56
|
+
clearRouteCache();
|
|
57
|
+
await onReload();
|
|
58
|
+
};
|
|
59
|
+
$[10] = clearRouteCache;
|
|
60
|
+
$[11] = closeModal;
|
|
61
|
+
$[12] = onReload;
|
|
62
|
+
$[13] = t4;
|
|
63
|
+
} else {
|
|
64
|
+
t4 = $[13];
|
|
65
|
+
}
|
|
66
|
+
t3 = _jsx(Modal, {
|
|
67
|
+
className: baseClass,
|
|
68
|
+
closeOnBlur: false,
|
|
69
|
+
slug: modalSlug,
|
|
70
|
+
children: _jsxs("div", {
|
|
71
|
+
className: `${baseClass}__wrapper`,
|
|
72
|
+
children: [_jsxs("div", {
|
|
73
|
+
className: `${baseClass}__content`,
|
|
74
|
+
children: [_jsx("h1", {
|
|
75
|
+
children: t("general:documentModified")
|
|
76
|
+
}), _jsx("p", {
|
|
77
|
+
children: t("general:documentOutOfDate")
|
|
78
|
+
})]
|
|
79
|
+
}), _jsx("div", {
|
|
80
|
+
className: `${baseClass}__controls`,
|
|
81
|
+
children: _jsx(Button, {
|
|
82
|
+
buttonStyle: "primary",
|
|
83
|
+
id: `${modalSlug}-reload`,
|
|
84
|
+
margin: false,
|
|
85
|
+
onClick: t4,
|
|
86
|
+
size: "medium",
|
|
87
|
+
children: t("general:reloadDocument")
|
|
88
|
+
})
|
|
89
|
+
})]
|
|
90
|
+
})
|
|
91
|
+
});
|
|
92
|
+
$[5] = clearRouteCache;
|
|
93
|
+
$[6] = closeModal;
|
|
94
|
+
$[7] = onReload;
|
|
95
|
+
$[8] = t;
|
|
96
|
+
$[9] = t3;
|
|
97
|
+
} else {
|
|
98
|
+
t3 = $[9];
|
|
99
|
+
}
|
|
100
|
+
return t3;
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useEffect","useRouteCache","useTranslation","Button","Modal","useModal","modalSlug","baseClass","DocumentStaleData","t0","$","isActive","onReload","closeModal","openModal","clearRouteCache","t","t1","t2","t3","t4","_jsx","className","closeOnBlur","slug","children","_jsxs","buttonStyle","id","margin","onClick","size"],"sources":["../../../src/elements/DocumentStaleData/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect } from 'react'\n\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { Modal, useModal } from '../Modal/index.js'\nimport './index.scss'\n\nconst modalSlug = 'document-stale-data'\n\nconst baseClass = 'document-stale-data'\n\nexport const DocumentStaleData: React.FC<{\n isActive: boolean\n onReload: () => Promise<void> | void\n}> = ({ isActive, onReload }) => {\n const { closeModal, openModal } = useModal()\n const { clearRouteCache } = useRouteCache()\n const { t } = useTranslation()\n\n useEffect(() => {\n if (isActive) {\n openModal(modalSlug)\n } else {\n closeModal(modalSlug)\n }\n }, [isActive, openModal, closeModal])\n\n return (\n <Modal className={baseClass} closeOnBlur={false} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('general:documentModified')}</h1>\n <p>{t('general:documentOutOfDate')}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"primary\"\n id={`${modalSlug}-reload`}\n margin={false}\n onClick={async () => {\n closeModal(modalSlug)\n clearRouteCache()\n await onReload()\n }}\n size=\"medium\"\n >\n {t('general:reloadDocument')}\n </Button>\n </div>\n </div>\n </Modal>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,SAAS,QAAQ;AAEjC,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,KAAK,EAAEC,QAAQ,QAAQ;AAChC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,iBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,QAAA;IAAAC;EAAA,IAAAH,EAAsB;EAC1B;IAAAI,UAAA;IAAAC;EAAA,IAAkCT,QAAA;EAClC;IAAAU;EAAA,IAA4Bd,aAAA;EAC5B;IAAAe;EAAA,IAAcd,cAAA;EAAA,IAAAe,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAR,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAI,SAAA;IAEJG,EAAA,GAAAA,CAAA;MAAA,IACJN,QAAA;QACFG,SAAA,CAAAR,SAAU;MAAA;QAEVO,UAAA,CAAAP,SAAW;MAAA;IAAA;IAEZY,EAAA,IAACP,QAAA,EAAUG,SAAA,EAAWD,UAAA;IAAWH,CAAA,MAAAG,UAAA;IAAAH,CAAA,MAAAC,QAAA;IAAAD,CAAA,MAAAI,SAAA;IAAAJ,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAQ,EAAA;EAAA;IAAAD,EAAA,GAAAP,CAAA;IAAAQ,EAAA,GAAAR,CAAA;EAAA;EANpCV,SAAA,CAAUiB,EAMV,EAAGC,EAAiC;EAAA,IAAAC,EAAA;EAAA,IAAAT,CAAA,QAAAK,eAAA,IAAAL,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAM,CAAA;IAAA,IAAAI,EAAA;IAAA,IAAAV,CAAA,SAAAK,eAAA,IAAAL,CAAA,SAAAG,UAAA,IAAAH,CAAA,SAAAE,QAAA;MAcjBQ,EAAA,SAAAA,CAAA;QACPP,UAAA,CAAAP,SAAW;QACXS,eAAA;QAAA,MACMH,QAAA;MAAA;MACRF,CAAA,OAAAK,eAAA;MAAAL,CAAA,OAAAG,UAAA;MAAAH,CAAA,OAAAE,QAAA;MAAAF,CAAA,OAAAU,EAAA;IAAA;MAAAA,EAAA,GAAAV,CAAA;IAAA;IAfRS,EAAA,GAAAE,IAAA,CAAAjB,KAAA;MAAAkB,SAAA,EAAAf,SAAA;MAAAgB,WAAA;MAAAC,IAAA,EAAAlB,SAAA;MAAAmB,QAAA,EACEC,KAAA,CAAC;QAAAJ,SAAA,EAAe,GAAAf,SAAA,WAAuB;QAAAkB,QAAA,GACrCC,KAAA,CAAC;UAAAJ,SAAA,EAAe,GAAAf,SAAA,WAAuB;UAAAkB,QAAA,GACrCJ,IAAA,CAAC;YAAAI,QAAA,EAAIT,CAAA,CAAE;UAAA,C,GACPK,IAAA,CAAC;YAAAI,QAAA,EAAGT,CAAA,CAAE;UAAA,C;YAERK,IAAA,CAAC;UAAAC,SAAA,EAAe,GAAAf,SAAA,YAAwB;UAAAkB,QAAA,EACtCJ,IAAA,CAAAlB,MAAA;YAAAwB,WAAA,EACc;YAAAC,EAAA,EACR,GAAAtB,SAAA,SAAqB;YAAAuB,MAAA;YAAAC,OAAA,EAEhBV,EAIT;YAAAW,IAAA,EACK;YAAAN,QAAA,EAEJT,CAAA,CAAE;UAAA,C;;;;;;;;;;;;SAlBXG,E;CAwBJ","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
@import '../../scss/styles.scss';
|
|
2
|
+
|
|
3
|
+
@layer payload-default {
|
|
4
|
+
.document-stale-data {
|
|
5
|
+
@include blur-bg;
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
height: 100%;
|
|
10
|
+
|
|
11
|
+
&__wrapper {
|
|
12
|
+
z-index: 1;
|
|
13
|
+
position: relative;
|
|
14
|
+
display: flex;
|
|
15
|
+
flex-direction: column;
|
|
16
|
+
gap: var(--base);
|
|
17
|
+
padding: base(2);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&__content {
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-direction: column;
|
|
23
|
+
gap: var(--base);
|
|
24
|
+
|
|
25
|
+
> * {
|
|
26
|
+
margin: 0;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&__controls {
|
|
31
|
+
display: flex;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DraggableSortable/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DraggableSortable/index.tsx"],"names":[],"mappings":"AAcA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAEjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,EAAE,KAAK,EAAE,CAAA;AAEhB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAmF7C,CAAA"}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import { closestCenter, DndContext, KeyboardSensor,
|
|
5
|
+
import { closestCenter, DndContext, KeyboardSensor, MouseSensor, TouchSensor, useDroppable, useSensor, useSensors } from '@dnd-kit/core';
|
|
6
6
|
import { SortableContext, sortableKeyboardCoordinates } from '@dnd-kit/sortable';
|
|
7
7
|
import React, { useCallback, useId } from 'react';
|
|
8
8
|
export const DraggableSortable = props => {
|
|
9
|
-
const $ = _c(
|
|
9
|
+
const $ = _c(20);
|
|
10
10
|
const {
|
|
11
11
|
children,
|
|
12
12
|
className,
|
|
@@ -43,16 +43,28 @@ export const DraggableSortable = props => {
|
|
|
43
43
|
let t2;
|
|
44
44
|
if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
|
|
45
45
|
t2 = {
|
|
46
|
-
|
|
46
|
+
activationConstraint: {
|
|
47
|
+
delay: 200,
|
|
48
|
+
tolerance: 5
|
|
49
|
+
}
|
|
47
50
|
};
|
|
48
51
|
$[3] = t2;
|
|
49
52
|
} else {
|
|
50
53
|
t2 = $[3];
|
|
51
54
|
}
|
|
52
|
-
const sensors = useSensors(useSensor(PointerSensor, t1), useSensor(KeyboardSensor, t2));
|
|
53
55
|
let t3;
|
|
54
|
-
if ($[4]
|
|
55
|
-
t3 =
|
|
56
|
+
if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
|
|
57
|
+
t3 = {
|
|
58
|
+
coordinateGetter: sortableKeyboardCoordinates
|
|
59
|
+
};
|
|
60
|
+
$[4] = t3;
|
|
61
|
+
} else {
|
|
62
|
+
t3 = $[4];
|
|
63
|
+
}
|
|
64
|
+
const sensors = useSensors(useSensor(MouseSensor, t1), useSensor(TouchSensor, t2), useSensor(KeyboardSensor, t3));
|
|
65
|
+
let t4;
|
|
66
|
+
if ($[5] !== ids || $[6] !== onDragEnd) {
|
|
67
|
+
t4 = event => {
|
|
56
68
|
const {
|
|
57
69
|
active,
|
|
58
70
|
over
|
|
@@ -69,16 +81,16 @@ export const DraggableSortable = props => {
|
|
|
69
81
|
});
|
|
70
82
|
}
|
|
71
83
|
};
|
|
72
|
-
$[
|
|
73
|
-
$[
|
|
74
|
-
$[
|
|
84
|
+
$[5] = ids;
|
|
85
|
+
$[6] = onDragEnd;
|
|
86
|
+
$[7] = t4;
|
|
75
87
|
} else {
|
|
76
|
-
|
|
88
|
+
t4 = $[7];
|
|
77
89
|
}
|
|
78
|
-
const handleDragEnd =
|
|
79
|
-
let
|
|
80
|
-
if ($[
|
|
81
|
-
|
|
90
|
+
const handleDragEnd = t4;
|
|
91
|
+
let t5;
|
|
92
|
+
if ($[8] !== onDragStart) {
|
|
93
|
+
t5 = event_0 => {
|
|
82
94
|
const {
|
|
83
95
|
active: active_0
|
|
84
96
|
} = event_0;
|
|
@@ -92,15 +104,15 @@ export const DraggableSortable = props => {
|
|
|
92
104
|
});
|
|
93
105
|
}
|
|
94
106
|
};
|
|
95
|
-
$[
|
|
96
|
-
$[
|
|
107
|
+
$[8] = onDragStart;
|
|
108
|
+
$[9] = t5;
|
|
97
109
|
} else {
|
|
98
|
-
|
|
110
|
+
t5 = $[9];
|
|
99
111
|
}
|
|
100
|
-
const handleDragStart =
|
|
101
|
-
let
|
|
102
|
-
if ($[
|
|
103
|
-
|
|
112
|
+
const handleDragStart = t5;
|
|
113
|
+
let t6;
|
|
114
|
+
if ($[10] !== children || $[11] !== className || $[12] !== dndContextID || $[13] !== handleDragEnd || $[14] !== handleDragStart || $[15] !== ids || $[16] !== sensors || $[17] !== setNodeRef || $[18] !== sortableContextID) {
|
|
115
|
+
t6 = _jsx(DndContext, {
|
|
104
116
|
collisionDetection: closestCenter,
|
|
105
117
|
id: dndContextID,
|
|
106
118
|
onDragEnd: handleDragEnd,
|
|
@@ -116,19 +128,19 @@ export const DraggableSortable = props => {
|
|
|
116
128
|
})
|
|
117
129
|
})
|
|
118
130
|
});
|
|
119
|
-
$[
|
|
120
|
-
$[
|
|
121
|
-
$[
|
|
122
|
-
$[
|
|
123
|
-
$[
|
|
124
|
-
$[
|
|
125
|
-
$[
|
|
126
|
-
$[
|
|
127
|
-
$[
|
|
128
|
-
$[
|
|
131
|
+
$[10] = children;
|
|
132
|
+
$[11] = className;
|
|
133
|
+
$[12] = dndContextID;
|
|
134
|
+
$[13] = handleDragEnd;
|
|
135
|
+
$[14] = handleDragStart;
|
|
136
|
+
$[15] = ids;
|
|
137
|
+
$[16] = sensors;
|
|
138
|
+
$[17] = setNodeRef;
|
|
139
|
+
$[18] = sortableContextID;
|
|
140
|
+
$[19] = t6;
|
|
129
141
|
} else {
|
|
130
|
-
|
|
142
|
+
t6 = $[19];
|
|
131
143
|
}
|
|
132
|
-
return
|
|
144
|
+
return t6;
|
|
133
145
|
};
|
|
134
146
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","closestCenter","DndContext","KeyboardSensor","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","closestCenter","DndContext","KeyboardSensor","MouseSensor","TouchSensor","useDroppable","useSensor","useSensors","SortableContext","sortableKeyboardCoordinates","React","useCallback","useId","DraggableSortable","props","$","children","className","ids","onDragEnd","onDragStart","dndContextID","sortableContextID","t0","id","setNodeRef","t1","Symbol","for","activationConstraint","distance","t2","delay","tolerance","t3","coordinateGetter","sensors","t4","event","active","over","activatorEvent","stopPropagation","moveFromIndex","findIndex","_id","moveToIndex","_id_0","handleDragEnd","t5","event_0","active_0","handleDragStart","t6","_jsx","collisionDetection","items","ref"],"sources":["../../../src/elements/DraggableSortable/index.tsx"],"sourcesContent":["'use client'\nimport type { DragEndEvent, DragStartEvent } from '@dnd-kit/core'\n\nimport {\n closestCenter,\n DndContext,\n KeyboardSensor,\n MouseSensor,\n TouchSensor,\n useDroppable,\n useSensor,\n useSensors,\n} from '@dnd-kit/core'\nimport { SortableContext, sortableKeyboardCoordinates } from '@dnd-kit/sortable'\nimport React, { useCallback, useId } from 'react'\n\nimport type { Props } from './types.js'\n\nexport { Props }\n\nexport const DraggableSortable: React.FC<Props> = (props) => {\n const { children, className, ids, onDragEnd, onDragStart } = props\n\n const dndContextID = useId()\n const sortableContextID = useId()\n\n const { setNodeRef } = useDroppable({\n id: dndContextID,\n })\n\n const sensors = useSensors(\n useSensor(MouseSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n useSensor(TouchSensor, {\n activationConstraint: {\n delay: 200,\n tolerance: 5,\n },\n }),\n useSensor(KeyboardSensor, {\n coordinateGetter: sortableKeyboardCoordinates,\n }),\n )\n\n const handleDragEnd = useCallback(\n (event: DragEndEvent) => {\n const { active, over } = event\n\n event.activatorEvent.stopPropagation()\n\n if (!active || !over) {\n return\n }\n\n if (typeof onDragEnd === 'function') {\n onDragEnd({\n event,\n moveFromIndex: ids.findIndex((_id) => _id === active.id),\n moveToIndex: ids.findIndex((_id) => _id === over.id),\n })\n }\n },\n [onDragEnd, ids],\n )\n\n const handleDragStart = useCallback(\n (event: DragStartEvent) => {\n const { active } = event\n\n if (!active) {\n return\n }\n\n if (typeof onDragStart === 'function') {\n onDragStart({ id: active.id, event })\n }\n },\n [onDragStart],\n )\n\n return (\n <DndContext\n collisionDetection={closestCenter}\n // Provide stable ID to fix hydration issues: https://github.com/clauderic/dnd-kit/issues/926\n id={dndContextID}\n onDragEnd={handleDragEnd}\n onDragStart={handleDragStart}\n sensors={sensors}\n >\n <SortableContext\n // Provide stable ID to fix hydration issues: https://github.com/clauderic/dnd-kit/issues/926\n id={sortableContextID}\n items={ids}\n >\n <div className={className} ref={setNodeRef}>\n {children}\n </div>\n </SortableContext>\n </DndContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|