@kcuf/canvas-marking-react-headless
Version:
The React headless wrapping of @kcuf/canvas-marking.
65 lines • 2.82 kB
JavaScript
import { useEffect } from 'react';
import { pluginCursor, pluginTooltip, pluginMagnet, pluginSnapping, pluginZoom, pluginMove, pluginStats, pluginFps } from '@kcuf/canvas-marking';
import useModelProps from './_use-model-props';
import useMarkingInstance from './use-marking-instance';
export default function useEffectRegisterPlugins() {
var _useModelProps = useModelProps(),
_useModelProps$plugin = _useModelProps.plugins,
_useModelProps$plugin2 = _useModelProps$plugin === void 0 ? {} : _useModelProps$plugin,
_useModelProps$plugin3 = _useModelProps$plugin2.cursor,
cursor = _useModelProps$plugin3 === void 0 ? true : _useModelProps$plugin3,
_useModelProps$plugin4 = _useModelProps$plugin2.tooltip,
tooltip = _useModelProps$plugin4 === void 0 ? true : _useModelProps$plugin4,
_useModelProps$plugin5 = _useModelProps$plugin2.magnet,
magnet = _useModelProps$plugin5 === void 0 ? true : _useModelProps$plugin5,
_useModelProps$plugin6 = _useModelProps$plugin2.snapping,
snapping = _useModelProps$plugin6 === void 0 ? true : _useModelProps$plugin6,
_useModelProps$plugin7 = _useModelProps$plugin2.zoom,
zoom = _useModelProps$plugin7 === void 0 ? true : _useModelProps$plugin7,
_useModelProps$plugin8 = _useModelProps$plugin2.move,
move = _useModelProps$plugin8 === void 0 ? true : _useModelProps$plugin8,
stats = _useModelProps$plugin2.stats,
fps = _useModelProps$plugin2.fps;
var markingInstance = useMarkingInstance();
useEffect(function () {
if (markingInstance && cursor) {
return markingInstance.registerPlugin(pluginCursor);
}
}, [markingInstance, cursor]);
useEffect(function () {
if (markingInstance && tooltip) {
return markingInstance.registerPlugin(pluginTooltip);
}
}, [markingInstance, tooltip]);
useEffect(function () {
if (markingInstance && magnet) {
return markingInstance.registerPlugin(pluginMagnet);
}
}, [markingInstance, magnet]);
useEffect(function () {
if (markingInstance && snapping) {
return markingInstance.registerPlugin(pluginSnapping);
}
}, [markingInstance, snapping]);
useEffect(function () {
if (markingInstance && zoom) {
return markingInstance.registerPlugin(pluginZoom);
}
}, [markingInstance, zoom]);
useEffect(function () {
if (markingInstance && move) {
return markingInstance.registerPlugin(pluginMove);
}
}, [markingInstance, move]);
useEffect(function () {
if (markingInstance && stats) {
return markingInstance.registerPlugin(pluginStats);
}
}, [markingInstance, stats]);
useEffect(function () {
if (markingInstance && fps) {
return markingInstance.registerPlugin(pluginFps);
}
}, [markingInstance, fps]);
}
//# sourceMappingURL=use-effect-register-plugins.js.map