@maas/vue-equipment 0.21.4 → 0.21.5
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/nuxt/module.json
CHANGED
|
@@ -265,12 +265,14 @@ export function useDrawerDrag(args) {
|
|
|
265
265
|
snappedY.value = 0;
|
|
266
266
|
activeSnapPoint.value = void 0;
|
|
267
267
|
}
|
|
268
|
-
function
|
|
269
|
-
if (
|
|
268
|
+
function afterLeaveCallback(payload) {
|
|
269
|
+
if (payload === toValue(id)) {
|
|
270
270
|
resetDragged();
|
|
271
271
|
resetSnapped();
|
|
272
272
|
}
|
|
273
|
-
|
|
273
|
+
}
|
|
274
|
+
function snapToCallback(payload) {
|
|
275
|
+
if (payload.id === toValue(id)) {
|
|
274
276
|
if (!toValue(isActive)) {
|
|
275
277
|
console.warn("Cannot snap to point when drawer is not open");
|
|
276
278
|
return;
|
|
@@ -322,6 +324,11 @@ export function useDrawerDrag(args) {
|
|
|
322
324
|
break;
|
|
323
325
|
}
|
|
324
326
|
}
|
|
327
|
+
useDrawerEmitter().emit("afterDrag", {
|
|
328
|
+
id: toValue(id),
|
|
329
|
+
x: draggedX.value,
|
|
330
|
+
y: draggedY.value
|
|
331
|
+
});
|
|
325
332
|
resetStateAndListeners();
|
|
326
333
|
resetScrollLock();
|
|
327
334
|
if (hasDragged.value) {
|
|
@@ -344,12 +351,22 @@ export function useDrawerDrag(args) {
|
|
|
344
351
|
checkMomentum({ x: e.screenX, y: e.screenY });
|
|
345
352
|
setDragged({ x: e.screenX, y: e.screenY });
|
|
346
353
|
checkPosition({ x: e.screenX, y: e.screenY });
|
|
354
|
+
useDrawerEmitter().emit("drag", {
|
|
355
|
+
id: toValue(id),
|
|
356
|
+
x: draggedX.value,
|
|
357
|
+
y: draggedY.value
|
|
358
|
+
});
|
|
347
359
|
}
|
|
348
360
|
function onPointerdown(e) {
|
|
349
361
|
if (dragging.value) {
|
|
350
362
|
return;
|
|
351
363
|
} else {
|
|
352
364
|
dragging.value = true;
|
|
365
|
+
useDrawerEmitter().emit("beforeDrag", {
|
|
366
|
+
id: toValue(id),
|
|
367
|
+
x: draggedX.value,
|
|
368
|
+
y: draggedY.value
|
|
369
|
+
});
|
|
353
370
|
}
|
|
354
371
|
lastDraggedX.value = draggedX.value;
|
|
355
372
|
lastDraggedY.value = draggedY.value;
|
|
@@ -370,7 +387,8 @@ export function useDrawerDrag(args) {
|
|
|
370
387
|
}
|
|
371
388
|
onMounted(async () => {
|
|
372
389
|
await getSizes();
|
|
373
|
-
useDrawerEmitter().on("
|
|
390
|
+
useDrawerEmitter().on("snapTo", snapToCallback);
|
|
391
|
+
useDrawerEmitter().on("afterLeave", afterLeaveCallback);
|
|
374
392
|
});
|
|
375
393
|
watch(
|
|
376
394
|
() => [unrefElement(elRef), unrefElement(wrapperRef)],
|
|
@@ -396,7 +414,8 @@ export function useDrawerDrag(args) {
|
|
|
396
414
|
}, 100)();
|
|
397
415
|
});
|
|
398
416
|
onBeforeUnmount(() => {
|
|
399
|
-
useDrawerEmitter().off("
|
|
417
|
+
useDrawerEmitter().off("snapTo", snapToCallback);
|
|
418
|
+
useDrawerEmitter().off("afterLeave", afterLeaveCallback);
|
|
400
419
|
});
|
|
401
420
|
return {
|
|
402
421
|
style,
|
|
@@ -51,6 +51,21 @@ export type DrawerEvents = {
|
|
|
51
51
|
id: string;
|
|
52
52
|
snapPoint: SnapPoint;
|
|
53
53
|
};
|
|
54
|
+
beforeDrag: {
|
|
55
|
+
id: string;
|
|
56
|
+
x: number;
|
|
57
|
+
y: number;
|
|
58
|
+
};
|
|
59
|
+
drag: {
|
|
60
|
+
id: string;
|
|
61
|
+
x: number;
|
|
62
|
+
y: number;
|
|
63
|
+
};
|
|
64
|
+
afterDrag: {
|
|
65
|
+
id: string;
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
};
|
|
54
69
|
};
|
|
55
70
|
export interface CustomMouseEvent extends MouseEvent {
|
|
56
71
|
custom?: string;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maas/vue-equipment",
|
|
3
3
|
"description": "A magic collection of Vue composables, plugins, components and directives",
|
|
4
|
-
"version": "0.21.
|
|
4
|
+
"version": "0.21.5",
|
|
5
5
|
"author": "Robin Scholz <https://github.com/robinscholz>, Christoph Jeworutzki <https://github.com/ChristophJeworutzki>",
|
|
6
6
|
"devDependencies": {
|
|
7
7
|
"@antfu/ni": "^0.21.12",
|