diff --git a/configure/src/pages/Catalogs.tsx b/configure/src/pages/Catalogs.tsx
index 33bf82c..87cf064 100644
--- a/configure/src/pages/Catalogs.tsx
+++ b/configure/src/pages/Catalogs.tsx
@@ -1,7 +1,15 @@
import { useEffect } from "react";
import { useConfig } from "@/contexts/ConfigContext";
import { baseCatalogs, authCatalogs, mdblistCatalogs, streamingCatalogs } from "@/data/catalogs";
-import { DndContext, DragEndEvent, closestCenter } from "@dnd-kit/core";
+import {
+ DndContext,
+ DragEndEvent,
+ closestCenter,
+ TouchSensor,
+ MouseSensor,
+ useSensor,
+ useSensors
+} from "@dnd-kit/core";
import { SortableContext, verticalListSortingStrategy, arrayMove } from "@dnd-kit/sortable";
import { SortableCatalogCard } from "@/components/SortableCatalogCard";
@@ -11,10 +19,15 @@ const CatalogColumn = ({
catalogConfigs,
onCatalogChange,
onDragEnd,
+ sensors
}) => (
{title}
-
+
`${c.id}-${c.type}`)}
strategy={verticalListSortingStrategy}
@@ -39,6 +52,24 @@ const CatalogColumn = ({
const Catalogs = () => {
const { sessionId, mdblistkey, streaming, catalogs, setCatalogs } = useConfig();
+ // Configuração dos sensores
+ const mouseSensor = useSensor(MouseSensor, {
+ // Aumentar um pouco a distância mínima para evitar cliques acidentais
+ activationConstraint: {
+ distance: 10,
+ },
+ });
+
+ const touchSensor = useSensor(TouchSensor, {
+ // Configurar um delay para distinguir entre toque e scroll
+ activationConstraint: {
+ delay: 250,
+ tolerance: 5,
+ },
+ });
+
+ const sensors = useSensors(mouseSensor, touchSensor);
+
useEffect(() => {
const allCatalogs = [
...baseCatalogs,
@@ -107,6 +138,7 @@ const Catalogs = () => {
catalogConfigs={catalogConfigs}
onCatalogChange={handleCatalogChange}
onDragEnd={handleDragEnd}
+ sensors={sensors}
/>
{
catalogConfigs={catalogConfigs}
onCatalogChange={handleCatalogChange}
onDragEnd={handleDragEnd}
+ sensors={sensors}
/>