JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr{ gilour

File "drag-state.ts"

Full Path: /home/markqprx/iniasli.pro/client/ui/interactions/dnd/drag-state.ts
File size: 628 bytes
MIME-type: text/plain
Charset: utf-8

import {DragMonitor} from './use-drag-monitor';
import {ConnectedDraggable, DraggableId} from './use-draggable';
import {ConnectedDroppable} from './use-droppable';

export type DragSessionStatus =
  | 'dropSuccess'
  | 'dropFail'
  | 'dragging'
  | 'inactive';

export interface DragSession {
  dragTargetId?: DraggableId;
  status: DragSessionStatus;
}

export const draggables = new Map<DraggableId, ConnectedDraggable>();
export const droppables = new Map<DraggableId, ConnectedDroppable>();
export const dragMonitors = new Map<DraggableId, DragMonitor>();
export const dragSession: DragSession = {
  status: 'inactive',
};