@open-formulieren/formio-builder
Version:
An opinionated Formio webform builder for Open Forms
94 lines (93 loc) • 2.1 kB
JavaScript
import { jsx as r } from "react/jsx-runtime";
import { useFormikContext as d } from "formik";
import { defineMessage as a, useIntl as n, FormattedMessage as f } from "react-intl";
import "../../../components/formio/tabs.js";
import "clsx";
/* empty css */
import "@floating-ui/react";
import "react";
/* empty css */
import "../../../context.js";
import "@formio/vanilla-text-mask";
import "formiojs";
import "lodash";
/* empty css */
import v from "../../../components/formio/select.js";
import "dompurify";
import "../../../components/formio/datagrid.js";
const c = [{
value: "fixedValue",
label: a({
id: "45IQhq",
defaultMessage: [{
type: 0,
value: "Fixed value"
}]
})
}, {
value: "future",
label: a({
id: "SH67gH",
defaultMessage: [{
type: 0,
value: "In the future"
}]
})
}, {
value: "past",
label: a({
id: "WZJG0y",
defaultMessage: [{
type: 0,
value: "In the past"
}]
})
}, {
value: "relativeToVariable",
label: a({
id: "7Ldfn+",
defaultMessage: [{
type: 0,
value: "Relative to variable"
}]
})
}], b = {
minDate: ["past"],
maxDate: ["future"]
}, M = {
"": {},
fixedValue: {},
future: {},
past: {},
relativeToVariable: {
variable: "now",
delta: {
years: null,
months: null,
days: null
},
operator: "add"
}
}, U = ({
constraint: t
}) => {
const s = `openForms.${t}.mode`, i = n(), {
setFieldValue: l
} = d(), u = b[t], m = c.filter((e) => !u.includes(e.value));
return /* @__PURE__ */ r(v, { name: s, label: /* @__PURE__ */ r(f, { id: "SEXqhC", defaultMessage: [{
type: 0,
value: "Mode preset"
}] }), options: m.map((e) => ({
...e,
label: i.formatMessage(e.label)
})), isClearable: !0, onChange: (e) => {
const o = e.target.value ?? "", p = {
mode: o,
...M[o]
};
l(`openForms.${t}`, p), l(`datePicker.${t}`, null);
} });
};
export {
U as default
};