UNPKG

geoiq-frontend-ui-kit

Version:

This project is a UI kit for GeoIQ's frontend. It's built with React, TypeScript, and Vite.

51 lines (50 loc) 3.35 kB
import { onDown as u, onMove as y, onUp as E, onDbl as f } from "./index163.es.js"; import { autoGrowTextEditor as a, commitTextEdit as m, blurTextEditor as g } from "./index156.es.js"; import { undo as L, redo as x } from "./index153.es.js"; import { applyModeCursor as k, selectLayer as l, setMode as D } from "./index155.es.js"; import { fitStage as w, render as p, syncCanvasSize as P } from "./index152.es.js"; import { normalizeSource as T, doLoadImage as z } from "./index159.es.js"; import { deleteLayer as K } from "./index158.es.js"; import { panPointerUp as t, resetPan as c, panPointerDown as C, panPointerMove as h } from "./index164.es.js"; function A(e, i, o) { e.canvasEl = o.canvas, e.overlayEl = o.overlay, e.textEditorEl = o.textEditor, e.stageEl = o.stage, e.ctx = e.canvasEl.getContext("2d"), e.octx = e.overlayEl.getContext("2d"), e.mounted = !0, k(e), e.overlayEl.addEventListener( "lostpointercapture", (r) => t(e, r) ), e.overlayEl.addEventListener("pointerdown", (r) => { r.preventDefault(), r.isPrimary && e.panPointers?.size && c(e), !C(e, r) && u(e, r); }), e.overlayEl.addEventListener("pointermove", (r) => { r.preventDefault(), !h(e, r) && y(e, r); }), e.overlayEl.addEventListener("pointerup", (r) => { t(e, r), E(e, r); }), e.overlayEl.addEventListener("pointercancel", (r) => { c(e), E(e, r); }), e.overlayEl.addEventListener("dblclick", (r) => f(e, r)); const d = () => { e.editingLayer && (g(e), l(e, null)); }; e.textEditorEl.addEventListener("keydown", (r) => { r.key === "Enter" ? (r.stopPropagation(), (r.metaKey || r.ctrlKey) && (r.preventDefault(), d())) : r.key === "Escape" && (r.stopPropagation(), e.editingLayer && (e.editingLayer._editing = !1), e.editingLayer = null, e.textEditorEl.blur(), l(e, null)); }), e.textEditorEl.addEventListener("input", () => a(e)), e.textEditorEl.addEventListener("blur", () => m(e)), e.stageEl.addEventListener( "pointerdown", (r) => { r.target !== e.textEditorEl && (d(), r.target !== e.overlayEl && e.selectedId != null && l(e, null)); }, !0 ), ["dragover", "dragenter"].forEach( (r) => e.stageEl.addEventListener(r, (n) => n.preventDefault()) ), e.stageEl.addEventListener("drop", (r) => { r.preventDefault(); const n = r.dataTransfer.files[0]; n && n.type.startsWith("image/") && T(e, n, (v) => z(e, v)); }), i._keyHandler = (r) => { if (!i.isOpen()) return; const n = document.activeElement && document.activeElement.tagName; n === "INPUT" || n === "TEXTAREA" || n === "SELECT" || ((r.metaKey || r.ctrlKey) && r.key === "z" && !r.shiftKey ? (r.preventDefault(), L(e)) : (r.metaKey || r.ctrlKey) && (r.key === "y" || r.shiftKey && r.key === "z") ? (r.preventDefault(), x(e)) : r.key === "Escape" ? e.mode !== "select" || e.selectedId != null ? (D(e, "select"), l(e, null)) : e.config.closeOnEscape !== !1 && i.close() : (r.key === "Delete" || r.key === "Backspace") && e.selectedId != null && e.mode === "select" && (r.preventDefault(), K(e, e.selectedId))); }, document.addEventListener("keydown", i._keyHandler), i._resizeHandler = () => { e.sourceCanvas.width && i.isOpen() && (w(e), p(e)); }, window.addEventListener("resize", i._resizeHandler), e.sourceCanvas.width && (P(e), p(e)); } export { A as mount }; //# sourceMappingURL=index160.es.js.map