diff --git a/src/components/ui/data-table/DataTableLayout.vue b/src/components/ui/data-table/DataTableLayout.vue index ef473408..d83f8c7a 100644 --- a/src/components/ui/data-table/DataTableLayout.vue +++ b/src/components/ui/data-table/DataTableLayout.vue @@ -20,9 +20,12 @@
+ @touchstart.stop="header.getResizeHandler?.()($event)"> +
+
@@ -224,7 +227,7 @@ const columnDef = header?.column?.columnDef; const meta = columnDef?.meta ?? {}; return joinClasses( - 'sticky top-0 z-10 bg-background relative', + 'sticky top-0 z-10 bg-background relative group', isSpacer(header.column) && 'p-0', resolveClassValue(meta.class, header?.getContext?.()), resolveClassValue(meta.headerClass, header?.getContext?.()), diff --git a/src/composables/useAuthenticatedLayoutResizable.js b/src/composables/useAuthenticatedLayoutResizable.js index a2a70bf7..46d79e2e 100644 --- a/src/composables/useAuthenticatedLayoutResizable.js +++ b/src/composables/useAuthenticatedLayoutResizable.js @@ -39,7 +39,23 @@ export function useAuthenticatedLayoutResizable() { return Number.isFinite(width) && width > 0 ? width : fallbackWidth; }; - const setIsDragging = (isDragging) => { + const resolveDraggingPayload = (payload) => { + if (typeof payload === 'boolean') { + return payload; + } + if (payload && typeof payload === 'object') { + if (typeof payload.detail === 'boolean') { + return payload.detail; + } + if (typeof payload.dragging === 'boolean') { + return payload.dragging; + } + } + return Boolean(payload); + }; + + const setIsDragging = (payload) => { + const isDragging = resolveDraggingPayload(payload); const next = draggingCount.value + (isDragging ? 1 : -1); draggingCount.value = Math.max(0, next); }; diff --git a/src/views/Layout/AuthenticatedLayout.vue b/src/views/Layout/AuthenticatedLayout.vue index cc582a1b..f740fc73 100644 --- a/src/views/Layout/AuthenticatedLayout.vue +++ b/src/views/Layout/AuthenticatedLayout.vue @@ -9,7 +9,10 @@ - + @@ -24,7 +27,8 @@ :class="[ isAsideCollapsed(layout) ? 'opacity-100' : 'opacity-0', 'z-20 [&>div]:-translate-x-1/2' - ]"> + ]" + @dragging="setIsDragging">