fix(mi-dia): 5 bugs críticos + 8 mejoras UX
Bugs críticos: descartar, kanban drag&drop, escrituración, fases API, export filtros UX: tel clicable, WhatsApp, filtros por tab, tareas, calendario, estado, notas, navegación
This commit is contained in:
@@ -26,8 +26,9 @@ export default function KanbanView<T extends { id: string; nombre: string; estad
|
||||
const [arrastrando, setArrastrando] = useState<string | null>(null)
|
||||
|
||||
const onDragStart = useCallback((e: React.DragEvent, itemId: string) => {
|
||||
setArrastrando(itemId)
|
||||
e.dataTransfer.setData('text/plain', itemId)
|
||||
e.dataTransfer.effectAllowed = 'move'
|
||||
setArrastrando(itemId)
|
||||
}, [])
|
||||
|
||||
const onDragOver = useCallback((e: React.DragEvent) => {
|
||||
@@ -38,11 +39,12 @@ export default function KanbanView<T extends { id: string; nombre: string; estad
|
||||
const onDrop = useCallback((e: React.DragEvent, columnaId: string) => {
|
||||
e.preventDefault()
|
||||
const itemId = e.dataTransfer.getData('text/plain')
|
||||
if (itemId && itemId !== arrastrando) {
|
||||
onCambiarEstado(itemId, columnaId)
|
||||
}
|
||||
setArrastrando(null)
|
||||
}, [arrastrando, onCambiarEstado])
|
||||
if (itemId === '') return
|
||||
const item = items.find((i) => i.id === itemId)
|
||||
if (!item || obtenerColumna(item) === columnaId) return
|
||||
onCambiarEstado(itemId, columnaId)
|
||||
}, [items, obtenerColumna, onCambiarEstado])
|
||||
|
||||
return (
|
||||
<div className="flex gap-3 overflow-x-auto pb-4 scroll-smooth">
|
||||
|
||||
Reference in New Issue
Block a user