geoiq-frontend-ui-kit
Version:
This project is a UI kit for GeoIQ's frontend. It's built with React, TypeScript, and Vite.
54 lines (53 loc) • 1.12 kB
JavaScript
import { useState as g, useEffect as l, useCallback as i } from "react";
const E = () => {
const [o, s] = g({
isClient: !1,
isDrawingMode: !1,
isEditingText: !1,
isSheetOpen: !1,
isTransforming: !1,
drawing: !1,
isCropping: !1,
isEraseMode: !1
});
l(() => {
typeof window < "u" && s((e) => ({ ...e, isClient: !0 }));
}, []);
const a = i(() => {
s((e) => ({
...e,
isDrawingMode: !e.isDrawingMode,
isEraseMode: !1
// Disable erase mode when enabling drawing mode
}));
}, []), n = i(() => {
s((e) => ({
...e,
isEraseMode: !e.isEraseMode,
isDrawingMode: !1
// Disable drawing mode when erasing
}));
}, []), r = i((e) => {
s((t) => ({
...t,
isEditingText: e
}));
}, []), d = i((e) => {
s((t) => ({
...t,
isSheetOpen: e
}));
}, []);
return {
editorState: o,
setEditorState: s,
toggleDrawingMode: a,
toggleTextEditing: r,
toggleSheetOpen: d,
toggleEraseMode: n
};
};
export {
E as useEditorState
};
//# sourceMappingURL=index.es97.js.map