Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /var/www/html/wincloud_gateway/node_modules/react-dnd/lib/hooks/internal/ drwxr-xr-x | |
| Viewing file: Select action/file-type: import { useMemo } from 'react';
import { registerTarget } from '../../common/registration';
import { useDragDropManager } from './useDragDropManager';
import { TargetConnector } from '../../common/TargetConnector';
import { DropTargetMonitorImpl } from '../../common/DropTargetMonitorImpl';
import { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect';
export function useDropTargetMonitor() {
const manager = useDragDropManager();
const monitor = useMemo(() => new DropTargetMonitorImpl(manager), [manager]);
const connector = useMemo(() => new TargetConnector(manager.getBackend()), [
manager,
]);
return [monitor, connector];
}
export function useDropHandler(spec, monitor, connector) {
const manager = useDragDropManager();
const handler = useMemo(() => {
return {
canDrop() {
const { canDrop } = spec.current;
return canDrop ? canDrop(monitor.getItem(), monitor) : true;
},
hover() {
const { hover } = spec.current;
if (hover) {
hover(monitor.getItem(), monitor);
}
},
drop() {
const { drop } = spec.current;
if (drop) {
return drop(monitor.getItem(), monitor);
}
},
};
}, [monitor]);
useIsomorphicLayoutEffect(function registerHandler() {
const [handlerId, unregister] = registerTarget(spec.current.accept, handler, manager);
monitor.receiveHandlerId(handlerId);
connector.receiveHandlerId(handlerId);
return unregister;
}, [monitor, connector]);
}
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0051 ]-- |