geostyler
Version:
Framework for styling geodata
104 lines (103 loc) • 3.4 kB
JavaScript
import { jsxs as g, jsx as l } from "react/jsx-runtime";
import { MarkEditor as S } from "../MarkEditor/MarkEditor.js";
import { LineEditor as h } from "../LineEditor/LineEditor.js";
import { FillEditor as C } from "../FillEditor/FillEditor.js";
import { TextEditor as I } from "../TextEditor/TextEditor.js";
/* empty css */
import "ol/ol.css";
import { KindField as K } from "../Field/KindField/KindField.js";
import { IconEditor as L } from "../IconEditor/IconEditor.js";
import d from "../../../Util/SymbolizerUtil.js";
import { RasterEditor as x } from "../RasterEditor/RasterEditor.js";
import { Form as T } from "antd";
import { useGeoStylerComposition as M, useGeoStylerLocale as R } from "../../../context/GeoStylerContext/GeoStylerContext.js";
import { getFormItemConfig as w } from "../../../Util/FormItemUtil.js";
const W = (u) => {
const b = M("Editor"), c = { ...u, ...b }, {
symbolizer: i,
onSymbolizerChange: r,
fillEditor: s,
iconEditor: o,
lineEditor: t,
markEditor: n,
rasterEditor: m,
textEditor: a
} = c, f = R("Editor"), y = () => {
switch (i.kind) {
case "Mark":
return (n == null ? void 0 : n.visibility) === !1 ? null : /* @__PURE__ */ l(
S,
{
symbolizer: i,
onSymbolizerChange: r
}
);
case "Icon":
return (o == null ? void 0 : o.visibility) === !1 ? null : /* @__PURE__ */ l(
L,
{
symbolizer: i,
onSymbolizerChange: r
}
);
case "Line":
return (t == null ? void 0 : t.visibility) === !1 ? null : /* @__PURE__ */ l(
h,
{
symbolizer: i,
onSymbolizerChange: r
}
);
case "Fill":
return (s == null ? void 0 : s.visibility) === !1 ? null : /* @__PURE__ */ l(
C,
{
symbolizer: i,
onSymbolizerChange: r
}
);
case "Text":
return (a == null ? void 0 : a.visibility) === !1 ? null : /* @__PURE__ */ l(
I,
{
symbolizer: i,
onSymbolizerChange: r
}
);
case "Raster":
return (m == null ? void 0 : m.visibility) === !1 ? null : /* @__PURE__ */ l(
x,
{
symbolizer: i,
onSymbolizerChange: r
}
);
default:
return f.unknownSymbolizerText;
}
}, p = (e) => {
const F = d.generateSymbolizer(e);
r(F);
}, v = ["Mark", "Fill", "Icon", "Line", "Text", "Raster"].filter((e) => !(e === "Mark" && (n == null ? void 0 : n.visibility) === !1 || e === "Fill" && (s == null ? void 0 : s.visibility) === !1 || e === "Icon" && (o == null ? void 0 : o.visibility) === !1 || e === "Line" && (t == null ? void 0 : t.visibility) === !1 || e === "Text" && (a == null ? void 0 : a.visibility) === !1 || e === "Raster" && (m == null ? void 0 : m.visibility) === !1)), z = w();
return /* @__PURE__ */ g("div", { className: "gs-symbolizer-editor", children: [
/* @__PURE__ */ l(
T.Item,
{
...z,
label: f.kindFieldLabel,
children: /* @__PURE__ */ l(
K,
{
value: i.kind,
onChange: p,
symbolizerKinds: v
}
)
}
),
y()
] });
};
export {
W as Editor
};