import React from "react";
import { v4 } from "uuid";
import { CrosshairLayer } from "../../layers";
export function useMultiViewCursorTracking(props) {
    var _a, _b;
    const id = React.useRef(`crosshair-${v4()}`);
    let worldCoordinates = null;
    if (((_a = props.worldCoordinates) === null || _a === void 0 ? void 0 : _a.length) === 3) {
        worldCoordinates = props.worldCoordinates;
    }
    if (((_b = props.worldCoordinates) === null || _b === void 0 ? void 0 : _b.length) === 2) {
        worldCoordinates = [...props.worldCoordinates, 0];
    }
    const crosshairLayer = new CrosshairLayer(Object.assign({ id: id.current, worldCoordinates }, props.crosshairProps));
    const layers = [...props.layers, crosshairLayer];
    const viewports = props.viewports.map((viewport) => {
        var _a;
        if (viewport.id !== props.activeViewportId) {
            return Object.assign(Object.assign({}, viewport), { layerIds: [...((_a = viewport.layerIds) !== null && _a !== void 0 ? _a : []), id.current] });
        }
        return viewport;
    });
    return {
        viewports,
        layers,
    };
}
//# sourceMappingURL=useMultiViewCursorTracking.js.map