geostyler
Version:
Framework for styling geodata
69 lines (68 loc) • 2.1 kB
JavaScript
import { jsx as n, jsxs as S } from "react/jsx-runtime";
import { Form as a, Row as v, Col as s, InputNumber as t } from "antd";
import c from "../../_virtual/cloneDeep.js";
/* empty css */
import { useGeoStylerLocale as g } from "../../context/GeoStylerContext/GeoStylerContext.js";
const b = ({
scaleDenominator: e,
onChange: l
}) => {
const d = g("RuleTable"), m = e != null && e.min ? parseFloat(e.min) : void 0, u = e != null && e.max ? parseFloat(e.max) : void 0, f = (r) => {
let o = c(e);
o || (o = {}), o.min = r, l && l(o);
}, p = (r) => {
let o = c(e);
o || (o = {}), o.max = r, l && l(o);
}, [h] = a.useForm();
return /* @__PURE__ */ n("div", { className: "gs-scaledenominator", children: /* @__PURE__ */ n(a, { form: h, children: /* @__PURE__ */ S(v, { gutter: 4, children: [
/* @__PURE__ */ n(s, { span: 12, className: "gs-small-col", children: /* @__PURE__ */ n(
a.Item,
{
name: "min-scale-denominator",
children: /* @__PURE__ */ n(
t,
{
addonBefore: "1: ",
controls: !1,
value: m,
min: 0,
onChange: (r) => {
f(r);
}
}
)
}
) }),
/* @__PURE__ */ n(s, { span: 12, className: "gs-small-col", children: /* @__PURE__ */ n(
a.Item,
{
name: "max-scale-denominator",
dependencies: ["min-scale-denominator"],
hasFeedback: !0,
rules: [
({ getFieldValue: r }) => ({
validator(o, i) {
const x = r("min-scale-denominator");
return i && m && i < x ? Promise.reject(d.errorMaxScaleGreaterThanMinScale) : Promise.resolve();
}
})
],
children: /* @__PURE__ */ n(
t,
{
addonBefore: "1: ",
controls: !1,
value: u,
min: 0,
onChange: (r) => {
p(r);
}
}
)
}
) })
] }) }) });
};
export {
b as InputScaleDenominator
};