dynamic-mui 2.5.3 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion-BSh2h2a_.js +1 -0
- package/dist/accordion-Cqu-4mCj.mjs +22 -0
- package/dist/addressfield-BYisUY6y.mjs +242 -0
- package/dist/addressfield-CRd4lfdV.js +1 -0
- package/dist/ai/index.cjs +1 -1
- package/dist/ai/index.mjs +1 -14
- package/dist/ai/react/AIForm.d.ts +2 -1
- package/dist/ai/react/AIFormGenerator.d.ts +1 -1
- package/dist/ai/react/AISchemaReview.d.ts +1 -1
- package/dist/ai/react/AITextAssist.d.ts +1 -1
- package/dist/ai/react/AIVisionImport.d.ts +2 -1
- package/dist/ai-CXI0Rnu8.js +29 -0
- package/dist/ai-D6hkfd_f.mjs +4533 -0
- package/dist/asyncautocomplete-B1fK0nUW.js +1 -0
- package/dist/asyncautocomplete-D4oCW2B0.mjs +72 -0
- package/dist/bar-CgYZxXHl.js +1 -0
- package/dist/bar-LVtZP6Ui.mjs +4 -0
- package/dist/cascadeselect-CYzYzmqv.js +1 -0
- package/dist/cascadeselect-s-LY4P0l.mjs +66 -0
- package/dist/chartControl-IQafKpDk.mjs +29 -0
- package/dist/chartControl-ifHiG3nr.js +1 -0
- package/dist/collection-Ccj0OayP.js +1 -0
- package/dist/collection-DGq2rxDx.mjs +1692 -0
- package/dist/colorpicker-TDpxW59g.mjs +110 -0
- package/dist/colorpicker-q2FYP06A.js +1 -0
- package/dist/components/DynamicComponent.d.ts +2 -1
- package/dist/components/FormGenerator.d.ts +1 -1
- package/dist/components/charts/Bar/bar.d.ts +6 -2
- package/dist/components/charts/Line/line.d.ts +6 -2
- package/dist/components/charts/Mixchart/mixChart.d.ts +2 -1
- package/dist/components/charts/Pie/pie.d.ts +6 -2
- package/dist/components/charts/chartControl.d.ts +15 -0
- package/dist/components/controls/Accordion/accordion.d.ts +2 -1
- package/dist/components/controls/AddressField/addressfield.d.ts +2 -1
- package/dist/components/controls/Alert/alert.d.ts +1 -1
- package/dist/components/controls/AsyncAutocomplete/asyncautocomplete.d.ts +1 -1
- package/dist/components/controls/Autocomplete/autocomplete.d.ts +1 -1
- package/dist/components/controls/Button/button.d.ts +1 -1
- package/dist/components/controls/CascadeSelect/cascadeselect.d.ts +2 -1
- package/dist/components/controls/CheckBox/checkbox.d.ts +2 -2
- package/dist/components/controls/CheckBox/toggleInput.d.ts +25 -0
- package/dist/components/controls/Chip/chip.d.ts +1 -1
- package/dist/components/controls/ChipSelect/chipselect.d.ts +2 -1
- package/dist/components/controls/Collection/CollectionList.d.ts +1 -1
- package/dist/components/controls/Collection/ItemDialog.d.ts +1 -1
- package/dist/components/controls/Collection/collection.d.ts +1 -1
- package/dist/components/controls/Collection/parts.d.ts +6 -6
- package/dist/components/controls/ColorPicker/colorpicker.d.ts +2 -1
- package/dist/components/controls/Computed/computed.d.ts +1 -1
- package/dist/components/controls/ConsentField/consentfield.d.ts +2 -1
- package/dist/components/controls/CurrencyField/currencyfield.d.ts +1 -1
- package/dist/components/controls/DataTable/datatable.d.ts +2 -1
- package/dist/components/controls/DateRangePicker/daterangepicker.d.ts +1 -1
- package/dist/components/controls/DateTime/datetime.d.ts +15 -1
- package/dist/components/controls/DateTimePicker/datetimepicker.d.ts +6 -2
- package/dist/components/controls/Divider/divider.d.ts +1 -1
- package/dist/components/controls/EditableTable/editabletable.d.ts +1 -1
- package/dist/components/controls/FileUpload/fileupload.d.ts +1 -1
- package/dist/components/controls/FormRepeater/formrepeater.d.ts +1 -1
- package/dist/components/controls/FormWizard/formwizard.d.ts +1 -1
- package/dist/components/controls/GeoField/geofield.d.ts +1 -1
- package/dist/components/controls/Group/group.d.ts +2 -1
- package/dist/components/controls/Hyperlink/hyperlink.d.ts +1 -1
- package/dist/components/controls/ImageList/imagelist.d.ts +1 -1
- package/dist/components/controls/IntlPhone/intlphone.d.ts +2 -1
- package/dist/components/controls/KeyValueField/keyvaluefield.d.ts +2 -1
- package/dist/components/controls/LineItemList/lineitemlist.d.ts +1 -1
- package/dist/components/controls/List/list.d.ts +1 -1
- package/dist/components/controls/LocationField/locationfield.d.ts +1 -1
- package/dist/components/controls/MarkdownEditor/markdowneditor.d.ts +2 -1
- package/dist/components/controls/MatrixField/matrixfield.d.ts +2 -1
- package/dist/components/controls/MultiTextbox/multitextbox.d.ts +1 -1
- package/dist/components/controls/NpsScale/npsscale.d.ts +2 -1
- package/dist/components/controls/NumberField/numberfield.d.ts +2 -1
- package/dist/components/controls/NumberStepper/numberstepper.d.ts +1 -1
- package/dist/components/controls/OtpField/otpfield.d.ts +2 -1
- package/dist/components/controls/PasswordField/passwordfield.d.ts +2 -1
- package/dist/components/controls/PhoneField/phonefield.d.ts +1 -1
- package/dist/components/controls/Radio/radio.d.ts +2 -1
- package/dist/components/controls/Rating/rating.d.ts +2 -1
- package/dist/components/controls/RichTextEditor/richtexteditor.d.ts +2 -1
- package/dist/components/controls/Select/select.d.ts +2 -1
- package/dist/components/controls/Signature/signature.d.ts +1 -1
- package/dist/components/controls/Slider/slider.d.ts +1 -1
- package/dist/components/controls/Stepper/stepper.d.ts +1 -1
- package/dist/components/controls/SummaryField/summaryfield.d.ts +2 -1
- package/dist/components/controls/Switch/switch.d.ts +1 -1
- package/dist/components/controls/Tabs/tabs.d.ts +2 -1
- package/dist/components/controls/TagsInput/tagsinput.d.ts +1 -1
- package/dist/components/controls/TextField/textfield.d.ts +1 -1
- package/dist/components/controls/TextField/useTextInput.d.ts +18 -0
- package/dist/components/controls/TimePicker/timepicker.d.ts +6 -2
- package/dist/components/controls/ToggleButtons/togglebuttons.d.ts +1 -1
- package/dist/components/controls/Typography/typography.d.ts +1 -1
- package/dist/components/controls/index.d.ts +24 -9
- package/dist/consentfield-C0qlg4CV.js +1 -0
- package/dist/consentfield-D3eHFCZf.mjs +68 -0
- package/dist/datatable-CMjaTDPM.js +1 -0
- package/dist/datatable-lZIwHx6a.mjs +29 -0
- package/dist/dynamic-mui.cjs +1 -1
- package/dist/dynamic-mui.d.ts +1 -1
- package/dist/dynamic-mui.mjs +264 -204
- package/dist/editabletable-B3Cl38Qm.js +1 -0
- package/dist/editabletable-BEnZM9qt.mjs +117 -0
- package/dist/fileupload-BLH0wrc2.mjs +191 -0
- package/dist/fileupload-D0TsC9DF.js +1 -0
- package/dist/formrepeater-BEFYw5ly.js +1 -0
- package/dist/formrepeater-BvW1lZ2k.mjs +82 -0
- package/dist/formwizard-BWdnCsJz.js +1 -0
- package/dist/formwizard-I6M99opg.mjs +82 -0
- package/dist/geofield-CcbP9EtG.mjs +116 -0
- package/dist/geofield-HXXeV9Bm.js +1 -0
- package/dist/group-BCGjUNL2.mjs +30 -0
- package/dist/group-saCPFLuL.js +1 -0
- package/dist/imagelist-CNe1Dp_M.mjs +23 -0
- package/dist/imagelist-Wm5Qa6wA.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/intlphone-Bj5nEUMa.mjs +341 -0
- package/dist/intlphone-D1V7m6MV.js +1 -0
- package/dist/keyvaluefield-ArJ4QM5z.js +1 -0
- package/dist/keyvaluefield-C-a0MGDM.mjs +128 -0
- package/dist/line-BGSi1tvf.js +1 -0
- package/dist/line-cK6taoCA.mjs +4 -0
- package/dist/lineitemlist-bmk7fEf9.mjs +169 -0
- package/dist/lineitemlist-mulPt3cO.js +1 -0
- package/dist/list-5wGZK7wa.js +1 -0
- package/dist/list-CIFEhaTq.mjs +20 -0
- package/dist/locationfield-DtWkxnX-.js +1 -0
- package/dist/locationfield-SPonkbMU.mjs +90 -0
- package/dist/markdowneditor-C0KQgAWY.js +2 -0
- package/dist/markdowneditor-C3l0_zuX.mjs +82 -0
- package/dist/matrixfield-BZ_3KcSk.js +1 -0
- package/dist/matrixfield-DQHet7LH.mjs +119 -0
- package/dist/mixChart-CSq7pQqJ.mjs +49 -0
- package/dist/mixChart-DoehYa8V.js +1 -0
- package/dist/muiX-BHOKpogF.mjs +12 -0
- package/dist/muiX-CG_D1XQ2.js +1 -0
- package/dist/multitextbox-Bsr8mHo5.mjs +96 -0
- package/dist/multitextbox-CkhPGI9i.js +1 -0
- package/dist/npsscale-BgU-fVZ4.mjs +111 -0
- package/dist/npsscale-CFtQ5Dkk.js +1 -0
- package/dist/numberstepper-B4ZS7GY_.js +1 -0
- package/dist/numberstepper-c0raw-fV.mjs +111 -0
- package/dist/pie-CueMspFX.js +1 -0
- package/dist/pie-DFO89j-z.mjs +4 -0
- package/dist/richtexteditor-B8NFysnM.js +1 -0
- package/dist/richtexteditor-aF2uky8O.mjs +178 -0
- package/dist/rolldown-runtime-5iZMYShA.js +1 -0
- package/dist/s3Upload-C3-wcrua.js +1 -0
- package/dist/s3Upload-HtE088XA.mjs +39 -0
- package/dist/signature-DjYfiNzq.js +3 -0
- package/dist/signature-HiL8FJ6C.mjs +1116 -0
- package/dist/stepper-BQB-Zpl2.js +1 -0
- package/dist/stepper-C8VaX9xu.mjs +166 -0
- package/dist/summaryfield-BN-NhzA6.mjs +65 -0
- package/dist/summaryfield-BqpfzvHe.js +1 -0
- package/dist/tabs-BBBpbfqk.js +1 -0
- package/dist/tabs-DvIbQ1qg.mjs +50 -0
- package/dist/tagsinput-CXmsu8K9.mjs +49 -0
- package/dist/tagsinput-CYoOBbY1.js +1 -0
- package/dist/useSyncedState-CzAO4D1o.mjs +17 -0
- package/dist/useSyncedState-DYNKkpDv.js +1 -0
- package/dist/useTextInput-Cm0_Ps2V.js +1 -0
- package/dist/useTextInput-Dr-ncTE8.mjs +1683 -0
- package/dist/useUpdateEffect-CNBo9hj8.js +1 -0
- package/dist/useUpdateEffect-CXAhttj7.mjs +14 -0
- package/dist/util/helper.d.ts +18 -1
- package/dist/util/muiVersion.d.ts +13 -0
- package/dist/util/stepperComponents.d.ts +1 -1
- package/dist/util/useSyncedState.d.ts +22 -0
- package/dist/util/validation.d.ts +40 -0
- package/dist/v4-Dyp-SQ1c.js +1 -0
- package/dist/v4-YCkfo8OR.mjs +27 -0
- package/dist/validation-B7DPZ218.js +7 -0
- package/dist/validation-BRcYhhsT.mjs +4991 -0
- package/package.json +35 -35
- package/dist/AIForm-D204ogdw.js +0 -44
- package/dist/AIForm-IafSvW2_.mjs +0 -12281
- package/dist/accordion-DA8VpkJ_.mjs +0 -23
- package/dist/accordion-yIxiSIl4.js +0 -1
- package/dist/addressfield-DCzPapIx.mjs +0 -164
- package/dist/addressfield-EFiWgeWB.js +0 -1
- package/dist/asyncautocomplete-5-8SXotM.mjs +0 -92
- package/dist/asyncautocomplete-BmHm-S4u.js +0 -1
- package/dist/bar-BvwjqB4v.mjs +0 -21
- package/dist/bar-DRjoPCtv.js +0 -1
- package/dist/cascadeselect-BEaoupK6.js +0 -1
- package/dist/cascadeselect-CzSf78Pg.mjs +0 -66
- package/dist/collection-CthMZ0Go.js +0 -1
- package/dist/collection-n9eBOioi.mjs +0 -1157
- package/dist/colorpicker-Bm9M38_c.mjs +0 -111
- package/dist/colorpicker-DHkdM8Q2.js +0 -1
- package/dist/consentfield-B2-UFm5n.mjs +0 -80
- package/dist/consentfield-DV8Gz0k9.js +0 -1
- package/dist/datatable-BVZFBd-8.mjs +0 -21
- package/dist/datatable-DnnyVWJm.js +0 -1
- package/dist/editabletable-B_JS4UZ9.js +0 -1
- package/dist/editabletable-BwvIvAt7.mjs +0 -128
- package/dist/fileupload-BHT7K0YT.mjs +0 -185
- package/dist/fileupload-CugVG3o3.js +0 -1
- package/dist/formrepeater-CaJMPo3Q.mjs +0 -75
- package/dist/formrepeater-DiKPaOfi.js +0 -1
- package/dist/formwizard-BzvdbvBY.js +0 -1
- package/dist/formwizard-C9fOIHQv.mjs +0 -83
- package/dist/geofield-BM4b5Zwx.js +0 -1
- package/dist/geofield-DYXx9K9o.mjs +0 -108
- package/dist/group-D5fMqJTx.mjs +0 -23
- package/dist/group-mwS8FSGJ.js +0 -1
- package/dist/imagelist-Bn9QhIv7.js +0 -1
- package/dist/imagelist-rqmJajHt.mjs +0 -18
- package/dist/intlphone-BQYytFWy.js +0 -1
- package/dist/intlphone-DHDwdBbm.mjs +0 -144
- package/dist/keyvaluefield-DM0eSfPF.mjs +0 -127
- package/dist/keyvaluefield-DXyuqDba.js +0 -1
- package/dist/line-Dst2QjuI.mjs +0 -21
- package/dist/line-hM3OgPH7.js +0 -1
- package/dist/lineitemlist-89hrdS0p.mjs +0 -170
- package/dist/lineitemlist-DfEjbNCH.js +0 -1
- package/dist/list-B8S2MrOx.js +0 -1
- package/dist/list-C97cCc78.mjs +0 -20
- package/dist/locationfield-BEMe22_x.mjs +0 -118
- package/dist/locationfield-DlgLvvdU.js +0 -1
- package/dist/markdowneditor-JoiWE-qO.js +0 -2
- package/dist/markdowneditor-K4TAKJ3s.mjs +0 -94
- package/dist/matrixfield-D4sHu6rU.mjs +0 -121
- package/dist/matrixfield-szah6uOP.js +0 -1
- package/dist/mixChart-Doq4lt7Z.mjs +0 -75
- package/dist/mixChart-rgyMCdnp.js +0 -1
- package/dist/multitextbox-CBChuyw9.js +0 -1
- package/dist/multitextbox-Cnrwie5U.mjs +0 -78
- package/dist/npsscale-Cc2eD9Nk.js +0 -1
- package/dist/npsscale-DgQPa1eH.mjs +0 -91
- package/dist/numberstepper-BcuSZHwZ.js +0 -1
- package/dist/numberstepper-BqINnIm7.mjs +0 -132
- package/dist/pie-B6dXjc4o.mjs +0 -21
- package/dist/pie-a_dhmBUq.js +0 -1
- package/dist/richtexteditor-Bs5-VQj3.js +0 -1
- package/dist/richtexteditor-CveBdsmJ.mjs +0 -143
- package/dist/s3Upload-B0JeoLkS.js +0 -1
- package/dist/s3Upload-dpioZ2c8.mjs +0 -51
- package/dist/signature-BRWAWqeA.mjs +0 -1227
- package/dist/signature-Bj9GDrvy.js +0 -2
- package/dist/stepper-B9sSsbQD.js +0 -1
- package/dist/stepper-DTMAP67o.mjs +0 -140
- package/dist/summaryfield-JKL3ZLl2.js +0 -1
- package/dist/summaryfield-xhr0Q4RL.mjs +0 -96
- package/dist/tabs-ClkmKlV8.mjs +0 -39
- package/dist/tabs-DmEP_QW0.js +0 -1
- package/dist/tagsinput-B0yVrYgB.mjs +0 -58
- package/dist/tagsinput-COKkxIxg.js +0 -1
- package/dist/v4-BysszJq8.mjs +0 -30
- package/dist/v4-CqdK_b8Y.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-5iZMYShA.js"),t=require("./ai-CXI0Rnu8.js"),n=require("./validation-B7DPZ218.js"),r=require("./useSyncedState-DYNKkpDv.js");let i=require("react"),a=require("react/jsx-runtime"),o=require("@mui/material/TextField");o=e.n(o);let s=require("@mui/material/Autocomplete");s=e.n(s);let c=require("@mui/material/CircularProgress");c=e.n(c);function l({attributes:e={},rules:l={},onChange:u}){let{MuiAttributes:d={},id:f=``,label:p=`Search`,placeholder:m=``,minChars:h=1,debounceMs:g=300,labelKey:_=`label`,valueKey:v=`value`,loadOptions:y,optionsUrl:b}=e,[x,S]=r.n(()=>e.value??null,[e.value]),[C,w]=(0,i.useState)([]),[T,E]=(0,i.useState)(!1),D=(0,i.useRef)(0),O=(0,i.useRef)(null);(0,i.useEffect)(()=>()=>{O.current&&clearTimeout(O.current)},[]);let k=async e=>{if(typeof y==`function`)return y(e);if(b){let t=`${b}${b.includes(`?`)?`&`:`?`}q=${encodeURIComponent(e)}`,n=await(await fetch(t)).json();return Array.isArray(n)?n:[]}return[]},A=e=>{let t=++D.current;E(!0),k(e).then(e=>{t===D.current&&(w(Array.isArray(e)?e:[]),E(!1))}).catch(()=>{t===D.current&&(w([]),E(!1))})},j=(e,t)=>{O.current&&clearTimeout(O.current),!t||t.length<h?(D.current++,E(!1),w([])):O.current=setTimeout(()=>{A(t)},g)},M=(e,t)=>{S(t),u?.({id:f,value:t==null?t:t?.[v]??t,option:t})},N=e=>typeof e==`string`?e:e?.[_]??``,P=n.r(l);return(0,a.jsx)(s.default,{value:x,onChange:M,onInputChange:j,options:C,loading:T,filterOptions:e=>e,getOptionLabel:N,renderOption:(e,t)=>(0,i.createElement)(`li`,{...e,key:(t&&t[v])??N(t)},N(t)),...d,renderInput:e=>(0,a.jsx)(o.default,{...e,label:p,placeholder:m,required:P,sx:t.U,slotProps:{...e.slotProps,input:{...e.slotProps.input,endAdornment:(0,a.jsxs)(a.Fragment,{children:[T?(0,a.jsx)(c.default,{color:`inherit`,size:20}):null,e.slotProps.input.endAdornment]})}}})})}exports.default=l;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { r as e } from "./validation-BRcYhhsT.mjs";
|
|
2
|
+
import { U as t } from "./ai-D6hkfd_f.mjs";
|
|
3
|
+
import { n } from "./useSyncedState-CzAO4D1o.mjs";
|
|
4
|
+
import { createElement as r, useEffect as i, useRef as a, useState as o } from "react";
|
|
5
|
+
import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
6
|
+
import u from "@mui/material/TextField";
|
|
7
|
+
import d from "@mui/material/Autocomplete";
|
|
8
|
+
import f from "@mui/material/CircularProgress";
|
|
9
|
+
// src/components/controls/AsyncAutocomplete/asyncautocomplete.tsx
|
|
10
|
+
function p({ attributes: p = {}, rules: m = {}, onChange: h }) {
|
|
11
|
+
let { MuiAttributes: g = {}, id: _ = "", label: v = "Search", placeholder: y = "", minChars: b = 1, debounceMs: x = 300, labelKey: S = "label", valueKey: C = "value", loadOptions: w, optionsUrl: T } = p, [E, D] = n(() => p.value ?? null, [p.value]), [O, k] = o([]), [A, j] = o(!1), M = a(0), N = a(null);
|
|
12
|
+
i(() => () => {
|
|
13
|
+
N.current && clearTimeout(N.current);
|
|
14
|
+
}, []);
|
|
15
|
+
let P = async (e) => {
|
|
16
|
+
if (typeof w == "function") return w(e);
|
|
17
|
+
if (T) {
|
|
18
|
+
let t = `${T}${T.includes("?") ? "&" : "?"}q=${encodeURIComponent(e)}`, n = await (await fetch(t)).json();
|
|
19
|
+
return Array.isArray(n) ? n : [];
|
|
20
|
+
}
|
|
21
|
+
return [];
|
|
22
|
+
}, F = (e) => {
|
|
23
|
+
let t = ++M.current;
|
|
24
|
+
j(!0), P(e).then((e) => {
|
|
25
|
+
t === M.current && (k(Array.isArray(e) ? e : []), j(!1));
|
|
26
|
+
}).catch(() => {
|
|
27
|
+
t === M.current && (k([]), j(!1));
|
|
28
|
+
});
|
|
29
|
+
}, I = (e, t) => {
|
|
30
|
+
N.current && clearTimeout(N.current), !t || t.length < b ? (M.current++, j(!1), k([])) : N.current = setTimeout(() => {
|
|
31
|
+
F(t);
|
|
32
|
+
}, x);
|
|
33
|
+
}, L = (e, t) => {
|
|
34
|
+
D(t), h?.({
|
|
35
|
+
id: _,
|
|
36
|
+
value: t == null ? t : t?.[C] ?? t,
|
|
37
|
+
option: t
|
|
38
|
+
});
|
|
39
|
+
}, R = (e) => typeof e == "string" ? e : e?.[S] ?? "", z = e(m);
|
|
40
|
+
return /* @__PURE__ */ c(d, {
|
|
41
|
+
value: E,
|
|
42
|
+
onChange: L,
|
|
43
|
+
onInputChange: I,
|
|
44
|
+
options: O,
|
|
45
|
+
loading: A,
|
|
46
|
+
filterOptions: (e) => e,
|
|
47
|
+
getOptionLabel: R,
|
|
48
|
+
renderOption: (e, t) => /* @__PURE__ */ r("li", {
|
|
49
|
+
...e,
|
|
50
|
+
key: (t && t[C]) ?? R(t)
|
|
51
|
+
}, R(t)),
|
|
52
|
+
...g,
|
|
53
|
+
renderInput: (e) => /* @__PURE__ */ c(u, {
|
|
54
|
+
...e,
|
|
55
|
+
label: v,
|
|
56
|
+
placeholder: y,
|
|
57
|
+
required: z,
|
|
58
|
+
sx: t,
|
|
59
|
+
slotProps: {
|
|
60
|
+
...e.slotProps,
|
|
61
|
+
input: {
|
|
62
|
+
...e.slotProps.input,
|
|
63
|
+
endAdornment: /* @__PURE__ */ l(s, { children: [A ? /* @__PURE__ */ c(f, {
|
|
64
|
+
color: "inherit",
|
|
65
|
+
size: 20
|
|
66
|
+
}) : null, e.slotProps.input.endAdornment] })
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
})
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
export { p as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=require("./chartControl-ifHiG3nr.js").n(`BarChart`,()=>import(`@mui/x-charts/BarChart`).then(e=>({default:e.BarChart})),`Bar`);exports.default=e;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-5iZMYShA.js"),t=require("./ai-CXI0Rnu8.js"),n=require("./validation-B7DPZ218.js"),r=require("./useUpdateEffect-CNBo9hj8.js"),i=require("./useSyncedState-DYNKkpDv.js");let a=require("react");a=e.n(a);let o=require("react/jsx-runtime"),s=require("@mui/material/TextField");s=e.n(s);let c=require("@mui/material/MenuItem");c=e.n(c);var l=e=>Array.isArray(e)?e.map(e=>typeof e==`object`&&e?{value:e.value,label:e.label??e.title??String(e.value)}:{value:e,label:String(e)}):[],u=(e,t,n)=>l((e&&t!=null&&t!==``?e[t]:void 0)??n??[]);function d({attributes:e={},rules:l={},onChange:d}){let{id:f=``,parentValue:p,optionsMap:m,options:h,label:g=``,placeholder:_=``,MuiAttributes:v={}}=e,y=n.r(l),[b,x]=a.default.useState(()=>u(m,p,h)),[S,C]=i.n(()=>e?.value??``,[e?.value]);r.t(()=>{let e=u(m,p,h);x(e),S!==``&&S!=null&&!e.some(e=>e.value===S)&&(C(``),d?.({id:f,value:``,option:null}))},[p,m,h]);let w=(0,a.useCallback)(e=>{let t=e.target.value,n=b.find(e=>e.value===t)??null;C(t),d?.({id:f,value:t,option:n})},[b,f,d]);return(0,o.jsxs)(s.default,{select:!0,fullWidth:!0,label:g,placeholder:_,required:y,value:S??``,onChange:w,...v,sx:t.B(t.U,v?.sx),slotProps:{select:{displayEmpty:!0,inputProps:{"aria-label":g||`cascade-select`}}},children:[_?(0,o.jsx)(c.default,{value:``,children:(0,o.jsx)(`em`,{children:_})}):null,b.map(e=>(0,o.jsx)(c.default,{value:e.value,children:e.label},String(e.value)))]})}exports.default=d;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { r as e } from "./validation-BRcYhhsT.mjs";
|
|
2
|
+
import { B as t, U as n } from "./ai-D6hkfd_f.mjs";
|
|
3
|
+
import { t as r } from "./useUpdateEffect-CXAhttj7.mjs";
|
|
4
|
+
import { n as i } from "./useSyncedState-CzAO4D1o.mjs";
|
|
5
|
+
import a, { useCallback as o } from "react";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
7
|
+
import l from "@mui/material/TextField";
|
|
8
|
+
import u from "@mui/material/MenuItem";
|
|
9
|
+
// src/components/controls/CascadeSelect/cascadeselect.tsx
|
|
10
|
+
var d = (e) => Array.isArray(e) ? e.map((e) => typeof e == "object" && e ? {
|
|
11
|
+
value: e.value,
|
|
12
|
+
label: e.label ?? e.title ?? String(e.value)
|
|
13
|
+
} : {
|
|
14
|
+
value: e,
|
|
15
|
+
label: String(e)
|
|
16
|
+
}) : [], f = (e, t, n) => d((e && t != null && t !== "" ? e[t] : void 0) ?? n ?? []);
|
|
17
|
+
function p({ attributes: d = {}, rules: p = {}, onChange: m }) {
|
|
18
|
+
let { id: h = "", parentValue: g, optionsMap: _, options: v, label: y = "", placeholder: b = "", MuiAttributes: x = {} } = d, S = e(p), [C, w] = a.useState(() => f(_, g, v)), [T, E] = i(() => d?.value ?? "", [d?.value]);
|
|
19
|
+
r(() => {
|
|
20
|
+
let e = f(_, g, v);
|
|
21
|
+
w(e), T !== "" && T != null && !e.some((e) => e.value === T) && (E(""), m?.({
|
|
22
|
+
id: h,
|
|
23
|
+
value: "",
|
|
24
|
+
option: null
|
|
25
|
+
}));
|
|
26
|
+
}, [
|
|
27
|
+
g,
|
|
28
|
+
_,
|
|
29
|
+
v
|
|
30
|
+
]);
|
|
31
|
+
let D = o((e) => {
|
|
32
|
+
let t = e.target.value, n = C.find((e) => e.value === t) ?? null;
|
|
33
|
+
E(t), m?.({
|
|
34
|
+
id: h,
|
|
35
|
+
value: t,
|
|
36
|
+
option: n
|
|
37
|
+
});
|
|
38
|
+
}, [
|
|
39
|
+
C,
|
|
40
|
+
h,
|
|
41
|
+
m
|
|
42
|
+
]);
|
|
43
|
+
return /* @__PURE__ */ c(l, {
|
|
44
|
+
select: !0,
|
|
45
|
+
fullWidth: !0,
|
|
46
|
+
label: y,
|
|
47
|
+
placeholder: b,
|
|
48
|
+
required: S,
|
|
49
|
+
value: T ?? "",
|
|
50
|
+
onChange: D,
|
|
51
|
+
...x,
|
|
52
|
+
sx: t(n, x?.sx),
|
|
53
|
+
slotProps: { select: {
|
|
54
|
+
displayEmpty: !0,
|
|
55
|
+
inputProps: { "aria-label": y || "cascade-select" }
|
|
56
|
+
} },
|
|
57
|
+
children: [b ? /* @__PURE__ */ s(u, {
|
|
58
|
+
value: "",
|
|
59
|
+
children: /* @__PURE__ */ s("em", { children: b })
|
|
60
|
+
}) : null, C.map((e) => /* @__PURE__ */ s(u, {
|
|
61
|
+
value: e.value,
|
|
62
|
+
children: e.label
|
|
63
|
+
}, String(e.value)))]
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
export { p as default };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { n as e } from "./muiX-BHOKpogF.mjs";
|
|
2
|
+
import t, { Suspense as n } from "react";
|
|
3
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
4
|
+
import i from "@mui/material/Box";
|
|
5
|
+
import a from "@mui/material/CircularProgress";
|
|
6
|
+
// src/components/charts/chartControl.tsx
|
|
7
|
+
var o = /* @__PURE__ */ r(i, {
|
|
8
|
+
sx: {
|
|
9
|
+
display: "flex",
|
|
10
|
+
justifyContent: "center",
|
|
11
|
+
p: 2
|
|
12
|
+
},
|
|
13
|
+
children: /* @__PURE__ */ r(a, {})
|
|
14
|
+
});
|
|
15
|
+
function s(i, a, s) {
|
|
16
|
+
let c = t.lazy(a);
|
|
17
|
+
function l({ attributes: t = {} }) {
|
|
18
|
+
let { MuiChartAttributes: a = {}, id: s = "" } = t, l = e(i) || c;
|
|
19
|
+
return /* @__PURE__ */ r(n, {
|
|
20
|
+
fallback: o,
|
|
21
|
+
children: /* @__PURE__ */ r(l, {
|
|
22
|
+
height: 300,
|
|
23
|
+
...a
|
|
24
|
+
}, s)
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return l.displayName = s, l;
|
|
28
|
+
}
|
|
29
|
+
export { s as n, o as t };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-5iZMYShA.js"),t=require("./muiX-CG_D1XQ2.js");let n=require("react");n=e.n(n);let r=require("react/jsx-runtime"),i=require("@mui/material/Box");i=e.n(i);let a=require("@mui/material/CircularProgress");a=e.n(a);var o=(0,r.jsx)(i.default,{sx:{display:`flex`,justifyContent:`center`,p:2},children:(0,r.jsx)(a.default,{})});function s(e,i,a){let s=n.default.lazy(i);function c({attributes:i={}}){let{MuiChartAttributes:a={},id:c=``}=i,l=t.n(e)||s;return(0,r.jsx)(n.Suspense,{fallback:o,children:(0,r.jsx)(l,{height:300,...a},c)})}return c.displayName=a,c}Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return o}});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-5iZMYShA.js"),t=require("./useTextInput-Cm0_Ps2V.js"),n=require("./ai-CXI0Rnu8.js"),r=require("./useUpdateEffect-CNBo9hj8.js");let i=require("react"),a=require("@mui/material"),o=require("@mui/material/styles"),s=require("react/jsx-runtime");var c=e.t(((e,n)=>{var r=t.g(),i=1,a=4;function o(e){return r(e,i|a)}n.exports=o})),l=e.n(c()),u=0,d=()=>`dmui-col-${++u}`,f=e=>(e.collections||[]).map(e=>e.id),p=e=>Object.fromEntries(f(e).map(e=>[e,[]])),m=(e,t)=>n.E(e).map(e=>{let n=new Set(f(t)),r=Object.fromEntries(Object.entries(e).filter(([e])=>!n.has(e))),i=Object.fromEntries((t.collections||[]).map(t=>[t.id,m(e[t.id],t)]));return{key:d(),data:r,children:i}}),h=(e,t)=>e.map(e=>{let n={...e.data};return(t.collections||[]).forEach(t=>{n[t.id]=h(e.children[t.id]||[],t)}),n}),g=e=>({key:d(),data:(0,l.default)(e.data),children:Object.fromEntries(Object.entries(e.children).map(([e,t])=>[e,t.map(g)]))}),_=e.t(((e,n)=>{var r=t.w(),i=t.D();function a(e,t,n){(n!==void 0&&!i(e[t],n)||n===void 0&&!(t in e))&&r(e,t,n)}n.exports=a})),v=e.t(((e,n)=>{var r=t.j(),i=t.P();function a(e){return i(e)&&r(e)}n.exports=a})),y=e.t(((e,n)=>{var r=t.L(),i=t.y(),a=t.P(),o=`[object Object]`,s=Function.prototype,c=Object.prototype,l=s.toString,u=c.hasOwnProperty,d=l.call(Object);function f(e){if(!a(e)||r(e)!=o)return!1;var t=i(e);if(t===null)return!0;var n=u.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n instanceof n&&l.call(n)==d}n.exports=f})),b=e.t(((e,t)=>{function n(e,t){if((t!==`constructor`||typeof e[t]!=`function`)&&t!=`__proto__`)return e[t]}t.exports=n})),x=e.t(((e,n)=>{var r=t.C(),i=t.S();function a(e){return r(e,i(e))}n.exports=a})),S=e.t(((e,n)=>{var r=_(),i=t.x(),a=t.v(),o=t.b(),s=t._(),c=t.N(),l=t.M(),u=v(),d=t.A(),f=t.F(),p=t.I(),m=y(),h=t.k(),g=b(),S=x();function C(e,t,n,_,v,y,b){var x=g(e,n),C=g(t,n),w=b.get(C);if(w)r(e,n,w);else{var T=y?y(x,C,n+``,e,t,b):void 0,E=T===void 0;if(E){var D=l(C),O=!D&&d(C),k=!D&&!O&&h(C);T=C,D||O||k?l(x)?T=x:u(x)?T=o(x):O?(E=!1,T=i(C,!0)):k?(E=!1,T=a(C,!0)):T=[]:m(C)||c(C)?(T=x,c(x)?T=S(x):(!p(x)||f(x))&&(T=s(C))):E=!1}E&&(b.set(C,T),v(T,C,_,y,b),b.delete(C)),r(e,n,T)}}n.exports=C})),C=e.t(((e,n)=>{var r=t.E(),i=_(),a=t.h(),o=S(),s=t.I(),c=t.S(),l=b();function u(e,t,n,d,f){e!==t&&a(t,function(a,c){if(f||=new r,s(a))o(e,t,c,n,u,d,f);else{var p=d?d(l(e,c),a,c+``,e,t,f):void 0;p===void 0&&(p=a),i(e,c,p)}},c)}n.exports=u})),w=e.t(((e,n)=>{var r=t.m(),i=t.p();function a(e){return r(function(t,n){var r=-1,a=n.length,o=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(o=e.length>3&&typeof o==`function`?(a--,o):void 0,s&&i(n[0],n[1],s)&&(o=a<3?void 0:o,a=1),t=Object(t);++r<a;){var c=n[r];c&&e(t,c,r,o)}return t})}n.exports=a})),T=e.t(((e,t)=>{var n=C();t.exports=w()(function(e,t,r){n(e,t,r)})})),E=e.n(T()),D=(e,t)=>{let n=e.palette[t||`primary`];if(n&&typeof n==`object`&&n.main)return n;try{return e.palette.augmentColor({color:{main:String(t)}})}catch{return e.palette.primary}},O=(e,t)=>e.palette.mode===`dark`?t.light:t.dark,k={add:`Add {label}`,addMore:`Add another {labelLower}`,emptyTitle:`No {pluralLower} yet`,emptyText:void 0,edit:`Edit`,duplicate:`Duplicate`,moveUp:`Move up`,moveDown:`Move down`,delete:`Delete`,more:`More actions`,collapse:`Collapse`,expand:`Expand`,editAria:`Edit {title}`,deleteAria:`Delete {title}`,viewAria:`View {title}`,moreAria:`More actions for {title}`,collapseAria:`Collapse {title}`,expandAria:`Expand {title}`,maxReached:`Maximum of {max} reached`,dialogAddTitle:`Add {label}`,dialogEditTitle:`Edit {label}`,dialogViewTitle:`{label}`,dialogContext:`For {parent}`,save:`Add {label}`,saveChanges:`Save changes`,saveAndAddAnother:`Save & add another`,cancel:`Cancel`,close:`Close`,closeAria:`Close dialog`,shortcut:`⌘/Ctrl + Enter`,deleteTitle:`Delete {labelLower}?`,deleteMessage:`{title} will be removed{detail}. This can’t be undone.`,deleteDetail:`, along with {detail}`,deleteConfirm:`Delete`},A=(e,t)=>e.replace(/\{(\w+)\}/g,(e,n)=>t[n]==null?e:String(t[n])),j=(e,t)=>{if(e==null)return`repeat(auto-fill, minmax(min(${t}px, 100%), 1fr))`;let n=e=>`repeat(${Math.max(1,e)}, minmax(0, 1fr))`;return typeof e==`number`?n(e):Object.fromEntries(Object.entries(e).map(([e,t])=>[e,n(Number(t))]))},M=e=>e==null?[]:Array.isArray(e)?e:[e],N=(e,t,r,i={})=>{let a=r>0,o=D(e,t.color),s=n.C(t),c=n.T(t),l={...k,...i,...t.texts||{}},u=t.styles||{},d={label:s,labelLower:s.toLowerCase(),plural:c,pluralLower:c.toLowerCase(),max:t.max};return{config:t,depth:r,nested:a,accent:o,ink:O(e,o),icon:t.icon||(a?`label`:`folder_open`),itemLabel:s,plural:c,texts:l,layout:t.layout||(a?`table`:`cards`),variant:t.variant||`outlined`,addButton:{position:`header`,variant:a?`outlined`:`contained`,icon:`add`,...t.addButton||{}},actions:{edit:!0,delete:!0,duplicate:!1,move:!1,collapse:!1,...t.actions||{}},t:(e,t={})=>A(String(l[e]??``),{...d,...t}),sx:(e,t)=>[...M(t),...M(u[e])],merged:(e,t={})=>(0,E.default)({},t,u[e]||{})}},P=`cubic-bezier(0.4, 0, 0.2, 1)`;function F({ui:e,n:t}){let n=(0,o.useTheme)();return(0,s.jsx)(a.Box,{component:`span`,sx:e.sx(`headerCount`,{minWidth:22,height:20,px:.75,borderRadius:`999px`,display:`inline-grid`,placeItems:`center`,fontSize:11.5,fontWeight:700,bgcolor:t>0?(0,o.alpha)(e.accent.main,.12):(0,o.alpha)(n.palette.text.primary,.07),color:t>0?e.ink:`text.secondary`,border:`1px solid ${t>0?(0,o.alpha)(e.accent.main,.2):`transparent`}`}),children:t})}var I=e=>e.split(/\s+/).map(e=>e.match(/[A-Za-z0-9]/)?.[0]||``).filter(Boolean).slice(0,2).join(``).toUpperCase()||`#`;function L({ui:e,mode:t,title:n,index:r}){return t===`none`?null:(0,s.jsx)(a.Box,{sx:e.sx(`avatar`,{width:40,height:40,flexShrink:0,borderRadius:`10px`,display:`grid`,placeItems:`center`,fontWeight:600,fontSize:14,bgcolor:(0,o.alpha)(e.accent.main,.1),color:e.ink,"& .MuiIcon-root":{fontSize:20}}),children:t===`initials`?I(n):t===`index`?r+1:(0,s.jsx)(a.Icon,{children:e.icon})})}function R({ui:e,text:t,color:n}){let r=(0,o.useTheme)(),i=n==="default"?null:D(r,n);return(0,s.jsx)(a.Box,{component:`span`,sx:e.sx(`badge`,{display:`inline-flex`,alignItems:`center`,gap:.5,px:1.25,py:.3,borderRadius:`999px`,fontSize:11.5,fontWeight:700,lineHeight:1.6,whiteSpace:`nowrap`,letterSpacing:`0.02em`,bgcolor:i?(0,o.alpha)(i.main,.1):(0,o.alpha)(r.palette.text.primary,.06),color:i?O(r,i):`text.secondary`,border:`1px solid ${i?(0,o.alpha)(i.main,.25):(0,o.alpha)(r.palette.text.primary,.12)}`,"&::before":{content:`""`,width:6,height:6,borderRadius:`50%`,bgcolor:i?i.main:`text.disabled`,flexShrink:0}}),children:t})}function ee({ui:e,placement:t,empty:n,disabled:r,onClick:i}){let{variant:c,icon:l,size:u,fullWidth:d}=e.addButton,f=t===`footer`&&!n?e.t(`addMore`):e.t(`add`),p=e.config.max!=null&&r,m=!!d||c===`dashed`&&d!==!1,h=t=>(0,s.jsx)(a.Tooltip,{title:p?e.t(`maxReached`):``,children:(0,s.jsx)(a.Box,{component:`span`,sx:{display:m?`block`:`inline-flex`,flexShrink:0},children:t})});if(c===`dashed`)return h((0,s.jsxs)(a.ButtonBase,{onClick:i,disabled:r,sx:e.sx(`addButton`,{width:m?`100%`:`auto`,display:`flex`,alignItems:`center`,justifyContent:`center`,gap:.75,py:1.1,px:2,borderRadius:`8px`,border:`1px dashed ${(0,o.alpha)(e.accent.main,.5)}`,color:e.ink,fontFamily:`inherit`,fontSize:14,fontWeight:600,transition:`background-color .15s ${P}`,"&:hover":{bgcolor:(0,o.alpha)(e.accent.main,.06)},"&.Mui-focusVisible":{outline:`2px solid ${(0,o.alpha)(e.accent.main,.5)}`,outlineOffset:2},"&.Mui-disabled":{opacity:.5},"& .MuiIcon-root":{fontSize:19}}),children:[(0,s.jsx)(a.Icon,{children:l}),f]}));let g={contained:{bgcolor:e.accent.main,color:e.accent.contrastText,"&:hover":{bgcolor:e.accent.dark}},outlined:{color:e.ink,borderColor:(0,o.alpha)(e.accent.main,.5),"&:hover":{borderColor:e.accent.main,bgcolor:(0,o.alpha)(e.accent.main,.05)}},text:{color:e.ink,"&:hover":{bgcolor:(0,o.alpha)(e.accent.main,.07)}},soft:{color:e.ink,bgcolor:(0,o.alpha)(e.accent.main,.1),"&:hover":{bgcolor:(0,o.alpha)(e.accent.main,.16)}}}[c]||{};return h((0,s.jsx)(a.Button,{onClick:i,disabled:r,variant:c===`soft`?`text`:c,color:`inherit`,size:u||(e.nested?`small`:`medium`),fullWidth:d,disableElevation:!0,startIcon:(0,s.jsx)(a.Icon,{children:l}),sx:e.sx(`addButton`,{textTransform:`none`,fontWeight:600,borderRadius:`8px`,px:e.nested?1.5:2,whiteSpace:`nowrap`,...g}),children:f}))}var te=e=>/^[aeiou]/i.test(e)?`an`:`a`,z=e=>e.length<=1?e.join(``):`${e.slice(0,-1).join(`, `)} and ${e[e.length-1]}`,B=e=>{if(e.nested)return``;let t=e.itemLabel.toLowerCase(),r=(e.config.collections||[]).map(e=>n.w(n.C(e)).toLowerCase());return r.length?`Add ${te(t)} ${t}, then add its ${z(r)}.`:`Add your first ${t} to get started.`};function ne({ui:e,readOnly:t,error:n}){let r=(0,o.useTheme)(),i=e.texts.emptyText==null?B(e):e.t(`emptyText`);return e.nested?(0,s.jsx)(a.Typography,{sx:e.sx(`empty`,{fontSize:13,color:`text.disabled`,fontStyle:`italic`,py:.75,px:0,display:`block`}),children:e.t(`emptyTitle`)}):(0,s.jsxs)(a.Box,{sx:e.sx(`empty`,{py:5,px:3,textAlign:`center`,borderRadius:`10px`,border:`1.5px dashed ${n?r.palette.error.main:(0,o.alpha)(r.palette.text.primary,.15)}`,bgcolor:n?(0,o.alpha)(r.palette.error.main,.03):(0,o.alpha)(r.palette.text.primary,.02)}),children:[(0,s.jsx)(a.Box,{sx:{width:48,height:48,borderRadius:`50%`,bgcolor:(0,o.alpha)(e.accent.main,.1),display:`flex`,alignItems:`center`,justifyContent:`center`,mx:`auto`,mb:1.5},children:(0,s.jsx)(a.Icon,{sx:{color:e.ink,fontSize:`22px !important`},children:e.icon||`inbox`})}),(0,s.jsx)(a.Typography,{sx:e.sx(`emptyTitle`,{fontSize:15,fontWeight:600,color:`text.primary`}),children:e.t(`emptyTitle`)}),i&&!t&&(0,s.jsx)(a.Typography,{sx:e.sx(`emptyText`,{fontSize:13.5,color:`text.secondary`,mt:.5,maxWidth:380,mx:`auto`}),children:i})]})}function re({ui:e,open:t,mode:r,guid:c,session:l,initial:u,context:d,onClose:f,onSave:p}){let m=(0,o.useTheme)(),h=e.config.dialog||{},g=(0,a.useMediaQuery)(m.breakpoints.down(`sm`)),_=h.fullScreen===!0||h.fullScreen!==!1&&g,v=(0,i.useRef)(null),[y,b]=(0,i.useState)(0),{accent:x}=e,S=e.t(r===`add`?`dialogAddTitle`:r===`edit`?`dialogEditTitle`:`dialogViewTitle`),C=`${c}-dialog-${l}-${y}`,w=e.t(`dialogContext`),[T,E]=w.includes(`{parent}`)?w.split(`{parent}`):[w,null],D=e=>{let t=v.current;t&&t.validate()&&(p({...t.getValues()},e),e&&b(e=>e+1))};return(0,s.jsxs)(a.Dialog,{open:t,onClose:(e,t)=>{t!==`backdropClick`&&f()},fullScreen:_,fullWidth:!0,maxWidth:h.maxWidth||`sm`,"aria-labelledby":`${c}-dialog-title`,onKeyDown:e=>{r!==`view`&&e.key===`Enter`&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),D(!1))},sx:{"& .MuiDialog-paper":e.merged(`dialog`,{borderRadius:_?0:`12px`,backgroundImage:`none`})},children:[(0,s.jsxs)(a.Box,{sx:e.sx(`dialogHeader`,{display:`flex`,alignItems:`flex-start`,gap:1,px:{xs:2,sm:3},pt:2.5,pb:2,borderBottom:`1px solid ${m.palette.divider}`}),children:[(0,s.jsxs)(a.Box,{sx:{flex:1,minWidth:0},children:[(0,s.jsx)(a.Typography,{id:`${c}-dialog-title`,sx:e.sx(`dialogTitle`,{fontWeight:600,fontSize:18,lineHeight:1.3}),children:S}),d&&(0,s.jsxs)(a.Typography,{sx:e.sx(`dialogContext`,{fontSize:13.5,color:`text.secondary`,mt:.25}),children:[T,E!==null&&(0,s.jsx)(a.Box,{component:`strong`,sx:{color:`text.primary`,fontWeight:600},children:d}),E]}),h.description&&(0,s.jsx)(a.Typography,{sx:e.sx(`dialogDescription`,{fontSize:13.5,color:`text.secondary`,mt:.25}),children:h.description})]}),(0,s.jsx)(a.IconButton,{"aria-label":e.t(`closeAria`),onClick:f,size:`small`,sx:{mt:-.5,mr:-1,color:`text.secondary`},children:(0,s.jsx)(a.Icon,{children:`close`})})]}),(0,s.jsx)(a.DialogContent,{sx:e.sx(`dialogContent`,{px:{xs:2,sm:3},pt:`20px !important`,pb:3}),children:(0,s.jsx)(n.m,{guid:C,data:e.config.fields||[],patch:r===`add`?{}:u||{},apiRef:v,readOnly:r===`view`,MuiGridAttributes:{spacing:h.spacing??2}},C)}),(0,s.jsx)(a.DialogActions,{sx:e.sx(`dialogActions`,{px:{xs:2,sm:3},py:1.5,gap:1,flexWrap:`wrap`,borderTop:`1px solid ${m.palette.divider}`,"& .MuiButton-root":{textTransform:`none`,fontWeight:600,borderRadius:`8px`,px:2,whiteSpace:`nowrap`,ml:`0 !important`}}),children:r===`view`?(0,s.jsx)(a.Button,{variant:`contained`,disableElevation:!0,onClick:f,sx:e.sx(`dialogSave`,{bgcolor:x.main,color:x.contrastText,"&:hover":{bgcolor:x.dark}}),children:e.t(`close`)}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(a.Button,{onClick:f,color:`inherit`,sx:e.sx(`dialogCancel`,{color:`text.secondary`}),children:e.t(`cancel`)}),r===`add`&&h.addAnother!==!1&&(0,s.jsx)(a.Button,{variant:`outlined`,color:`inherit`,onClick:()=>D(!0),sx:e.sx(`dialogSaveAnother`,{color:e.ink,borderColor:(0,o.alpha)(x.main,.5),"&:hover":{borderColor:x.main,bgcolor:(0,o.alpha)(x.main,.06)}}),children:e.t(`saveAndAddAnother`)}),(0,s.jsx)(a.Tooltip,{title:e.t(`shortcut`),placement:`top`,describeChild:!0,children:(0,s.jsx)(a.Button,{variant:`contained`,color:`inherit`,disableElevation:!0,startIcon:(0,s.jsx)(a.Icon,{children:r===`add`?`add`:`check`}),onClick:()=>D(!1),sx:e.sx(`dialogSave`,{bgcolor:x.main,color:x.contrastText,"&:hover":{bgcolor:x.dark}}),children:r===`add`?e.t(`save`):e.t(`saveChanges`)})})]})})]})}function ie({ui:e,count:t,required:n,action:r,alone:i=!1}){let{nested:c}=e;return(0,s.jsxs)(a.Box,{sx:e.sx(`header`,{display:`flex`,alignItems:`center`,gap:1.5,mb:i?0:c?1.25:2.5,flexWrap:`wrap`}),children:[(0,s.jsxs)(a.Box,{sx:{flex:1,minWidth:c?140:{xs:`100%`,sm:220}},children:[(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`center`,gap:c?.75:1},children:[e.config.icon&&(0,s.jsx)(a.Box,{sx:{width:c?26:32,height:c?26:32,borderRadius:c?`6px`:`8px`,bgcolor:(0,o.alpha)(e.accent.main,.12),display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0},children:(0,s.jsx)(a.Icon,{sx:e.sx(`headerIcon`,{color:e.ink,fontSize:`${c?14:18}px !important`}),children:e.icon})}),(0,s.jsxs)(a.Typography,{sx:e.sx(`headerTitle`,{fontWeight:700,fontSize:c?14:19,lineHeight:1.3,color:`text.primary`}),children:[e.plural,n&&(0,s.jsx)(a.Box,{component:`span`,sx:{color:`error.main`,ml:.25},children:`*`})]}),(0,s.jsx)(F,{ui:e,n:t})]}),e.config.description&&(0,s.jsx)(a.Typography,{sx:e.sx(`headerDescription`,{fontSize:13.5,color:`text.secondary`,mt:.5,ml:c?0:e.config.icon?`44px`:0}),children:e.config.description})]}),r]})}function V({ui:e,title:t,canEdit:n,onOpen:r,size:i}){return(0,s.jsx)(a.ButtonBase,{onClick:r,"aria-label":n?void 0:e.t(`viewAria`,{title:t}),"aria-haspopup":`dialog`,sx:e.sx(`itemTitle`,{borderRadius:`4px`,textAlign:`left`,justifyContent:`flex-start`,fontFamily:`inherit`,fontWeight:600,fontSize:i,lineHeight:1.4,color:`text.primary`,wordBreak:`break-word`,"&:hover":{color:e.ink,textDecoration:`underline`},"&.Mui-focusVisible":{outline:`2px solid ${(0,o.alpha)(e.accent.main,.5)}`,outlineOffset:2}}),children:t})}function H({ui:e,data:t}){let r=e.config.display||{},i=typeof r.badge==`string`?{field:r.badge}:r.badge;if(!i)return null;let a=t[i.field],o=n.S(n.x(e.config.fields||[],i.field),a);if(!o)return null;let c=i.colors?.[String(a)]??i.colors?.[o]??`default`;return(0,s.jsx)(R,{ui:e,text:o,color:c})}function U({ui:e,title:t,readOnly:n,open:r,canToggle:i,onEdit:c,onDelete:l,onMenu:u,onToggle:d}){let f=(0,o.useTheme)(),p=!n&&e.actions.edit,m=!n&&e.actions.delete,h=!n&&(e.actions.duplicate||e.actions.move),g=(e,t)=>({width:30,height:30,borderRadius:`8px`,color:e,transition:`background-color .15s ${P}, color .15s ${P}`,"&:hover":{bgcolor:t}});return(0,s.jsxs)(a.Box,{sx:e.sx(`actions`,{display:`flex`,alignItems:`center`,gap:.25,flexShrink:0}),children:[p&&(0,s.jsx)(a.Tooltip,{title:e.t(`edit`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`editAria`,{title:t}),onClick:c,sx:e.sx(`actionButton`,g(e.ink,(0,o.alpha)(e.accent.main,.1))),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`edit`})})}),m&&(0,s.jsx)(a.Tooltip,{title:e.t(`delete`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`deleteAria`,{title:t}),onClick:l,sx:e.sx(`actionButton`,g(f.palette.error.main,(0,o.alpha)(f.palette.error.main,.08))),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`delete_outline`})})}),h&&(0,s.jsx)(a.Tooltip,{title:e.t(`more`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`moreAria`,{title:t}),onClick:e=>u(e.currentTarget),sx:e.sx(`actionButton`,g(f.palette.text.secondary,(0,o.alpha)(f.palette.text.primary,.07))),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`more_vert`})})}),i&&(0,s.jsx)(a.Tooltip,{title:r?e.t(`collapse`):e.t(`expand`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(r?`collapseAria`:`expandAria`,{title:t}),"aria-expanded":r,onClick:d,sx:e.sx(`actionButton`,g(f.palette.text.secondary,(0,o.alpha)(f.palette.text.primary,.07))),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`19px !important`,transition:`transform .2s cubic-bezier(0.4, 0, 0.2, 1)`,transform:r?`rotate(180deg)`:`none`},children:`expand_more`})})})]})}function W({ui:e,node:t,guid:n,readOnly:r,issues:i,showErrors:c,texts:l,parentTitle:u,onChildChange:d}){let f=(0,o.useTheme)(),p=e.config.collections||[];return(0,s.jsx)(a.Box,{sx:e.sx(`sections`,{display:`grid`,gridTemplateColumns:j(e.config.sectionColumns??1,320)}),children:p.map((p,m)=>(0,s.jsx)(a.Box,{sx:e.sx(`section`,{borderTop:`1px solid ${f.palette.divider}`,bgcolor:f.palette.mode===`dark`?(0,o.alpha)(f.palette.common.white,.02):(0,o.alpha)(f.palette.grey[500],.03),minWidth:0,...m>0?{borderLeft:`1px solid ${f.palette.divider}`}:{}}),children:(0,s.jsx)(a.Box,{sx:{px:{xs:2,sm:2.5},pt:{xs:1.5,sm:1.75},pb:{xs:1.25,sm:1.5}},children:(0,s.jsx)(G,{config:p,nodes:t.children[p.id]||[],onChange:e=>d(p.id,e),guid:`${n}-${t.key}`,depth:e.depth+1,readOnly:r,issues:i.filter(e=>e.path[0]===p.id).map(e=>({...e,path:e.path.slice(1)})),showErrors:c,parentTitle:u,texts:l})})},p.id))})}function ae({ui:e,node:t,index:r,guid:i,readOnly:c,collapsed:l,issues:u,showErrors:d,texts:f,onOpen:p,onDelete:m,onMenu:h,onToggle:g,onChildChange:_}){let v=(0,o.useTheme)(),{config:y}=e,b=y.display||{},{title:x,subtitle:S,details:C}=n.v(t.data,y,r),w=y.collections||[],T=w.length>0,E=d&&u.length>0,D=b.avatar||`none`,O=!c&&e.actions.edit,k=!c&&e.actions.delete,A=!c&&(e.actions.duplicate||e.actions.move),j=C.length>0||T,M=!l,N=E?(0,o.alpha)(v.palette.error.main,.05):(0,o.alpha)(e.accent.main,.05),F=E?(0,o.alpha)(v.palette.error.main,.2):(0,o.alpha)(e.accent.main,.15),I=(e,t)=>({width:30,height:30,borderRadius:`8px`,color:e,transition:`background-color .15s ${P}`,"&:hover":{bgcolor:t}});return(0,s.jsxs)(a.Box,{sx:e.sx(`item`,{border:`1px solid ${E?v.palette.error.main:v.palette.divider}`,borderRadius:`14px`,overflow:`hidden`,bgcolor:`background.paper`,boxShadow:`0 1px 3px ${(0,o.alpha)(v.palette.common.black,.06)}, 0 4px 12px ${(0,o.alpha)(v.palette.common.black,.04)}`}),children:[(0,s.jsxs)(a.Box,{sx:e.sx(`itemHeader`,{px:{xs:2,sm:2.5},pt:{xs:1.75,sm:2},pb:{xs:1.5,sm:1.75},bgcolor:N,borderBottom:M&&j?`1px solid ${F}`:`1px solid transparent`,transition:`border-color .2s ${P}`,display:`flex`,alignItems:`flex-start`,gap:1.5}),children:[D!==`none`&&(0,s.jsx)(L,{ui:e,mode:D,title:x,index:r}),(0,s.jsxs)(a.Box,{sx:{flex:1,minWidth:0},children:[(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`center`,flexWrap:`wrap`,gap:.75,mb:S?.25:0},children:[(0,s.jsx)(V,{ui:e,title:x,canEdit:O,onOpen:p,size:15.5}),(0,s.jsx)(H,{ui:e,data:t.data})]}),S&&(0,s.jsxs)(a.Typography,{sx:e.sx(`subtitle`,{display:`flex`,alignItems:`center`,gap:.4,fontSize:13,color:`text.secondary`,wordBreak:`break-word`,"& .MuiIcon-root":{fontSize:14,color:`text.disabled`}}),children:[b.subtitleIcon&&(0,s.jsx)(a.Icon,{children:b.subtitleIcon}),S]}),!M&&T&&(0,s.jsx)(a.Box,{sx:{display:`flex`,flexWrap:`wrap`,gap:.75,mt:.6},children:w.map(r=>{let i=(t.children[r.id]||[]).length;return(0,s.jsxs)(a.Box,{component:`span`,sx:{fontSize:12,fontWeight:600,px:1,py:.2,borderRadius:`999px`,bgcolor:(0,o.alpha)(e.accent.main,.08),color:e.ink,border:`1px solid ${(0,o.alpha)(e.accent.main,.18)}`},children:[i,` `,n.w(n.C(r),i).toLowerCase()]},r.id)})})]}),(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`center`,flexShrink:0,gap:.25,mt:-.25},children:[O&&(0,s.jsx)(a.Tooltip,{title:e.t(`edit`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`editAria`,{title:x}),onClick:p,sx:I(e.ink,(0,o.alpha)(e.accent.main,.1)),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`edit`})})}),k&&(0,s.jsx)(a.Tooltip,{title:e.t(`delete`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`deleteAria`,{title:x}),onClick:m,sx:I(v.palette.error.main,(0,o.alpha)(v.palette.error.main,.08)),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`delete_outline`})})}),A&&(0,s.jsx)(a.Tooltip,{title:e.t(`more`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(`moreAria`,{title:x}),onClick:e=>h(e.currentTarget),sx:I(v.palette.text.secondary,(0,o.alpha)(v.palette.text.primary,.07)),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`more_vert`})})}),j&&(0,s.jsx)(a.Tooltip,{title:M?e.t(`collapse`):e.t(`expand`),children:(0,s.jsx)(a.IconButton,{size:`small`,"aria-label":e.t(M?`collapseAria`:`expandAria`,{title:x}),onClick:g,sx:I(v.palette.text.secondary,(0,o.alpha)(v.palette.text.primary,.07)),children:(0,s.jsx)(a.Icon,{sx:{fontSize:`19px !important`,transition:`transform .25s cubic-bezier(0.4, 0, 0.2, 1)`,transform:M?`rotate(180deg)`:`none`},children:`expand_more`})})})]})]}),j&&(0,s.jsxs)(a.Collapse,{in:M,timeout:220,children:[C.length>0&&(0,s.jsx)(a.Box,{sx:e.sx(`details`,{display:`flex`,overflowX:`auto`,borderBottom:T?`1px solid ${v.palette.divider}`:`none`,"&::-webkit-scrollbar":{height:0}}),children:C.map((t,n)=>(0,s.jsxs)(a.Box,{sx:e.sx(`detail`,{flex:`1 1 0`,minWidth:90,maxWidth:220,px:{xs:2,sm:2.5},py:1.5,borderLeft:n>0?`1px solid ${v.palette.divider}`:`none`}),children:[(0,s.jsxs)(a.Typography,{sx:e.sx(`detailLabel`,{fontSize:10.5,fontWeight:700,letterSpacing:`0.07em`,textTransform:`uppercase`,color:`text.disabled`,mb:.25,display:`flex`,alignItems:`center`,gap:.4,whiteSpace:`nowrap`}),children:[t.icon&&(0,s.jsx)(a.Icon,{sx:{fontSize:`11px !important`},children:t.icon}),t.label]}),(0,s.jsx)(a.Typography,{sx:e.sx(`detailValue`,{fontSize:13.5,fontWeight:600,color:t.value?`text.primary`:`text.disabled`,wordBreak:`break-word`,lineHeight:1.4}),children:t.value||`—`})]},t.id))}),T&&(0,s.jsx)(W,{ui:e,node:t,guid:i,readOnly:c,issues:u,showErrors:d,texts:f,parentTitle:x,onChildChange:_})]})]})}function oe({ui:e,nodes:t,guid:r,readOnly:c,issues:l,showErrors:u,texts:d,isCollapsed:f,onToggle:p,onOpen:m,onDelete:h,onMenu:g,onChildChange:_}){let v=(0,o.useTheme)(),y=(0,a.useMediaQuery)(v.breakpoints.down(`sm`)),{config:b}=e,x=b.fields||[],S=b.display||{},C=n.y(b),w=typeof S.badge==`string`?S.badge:S.badge?.field,T=typeof S.badge==`object`&&S.badge?.label||(w?n.b(n.x(x,w))||w:``),E=(b.collections||[]).length>0,D=!c&&e.actions.edit,O=!c&&(e.actions.edit||e.actions.delete||e.actions.duplicate||e.actions.move),k=e=>l.filter(t=>t.path[0]===e).map(e=>({...e,path:e.path.slice(1)})),A=(0,s.jsx)(a.Box,{component:`span`,sx:{color:`text.disabled`},children:`—`}),j=(t,n,i)=>E&&(0,s.jsx)(a.Collapse,{in:!f(t.key),timeout:200,unmountOnExit:!0,children:(0,s.jsx)(W,{ui:e,node:t,guid:r,readOnly:c,issues:k(n),showErrors:u,texts:d,parentTitle:i,onChildChange:(e,t)=>_(n,e,t)})}),M=(t,n,r)=>(0,s.jsx)(U,{ui:e,title:r,readOnly:c,open:!f(t.key),canToggle:E,onEdit:()=>m(n),onDelete:()=>h(n),onMenu:e=>g(e,n),onToggle:()=>p(t.key)}),N=(0,o.alpha)(v.palette.error.main,.06);if(y)return(0,s.jsx)(a.Box,{sx:e.sx(`table`,{border:`1px solid ${v.palette.divider}`,borderRadius:`8px`,overflow:`hidden`,bgcolor:`background.paper`}),children:t.map((t,r)=>{let{title:o,details:c}=n.v(t.data,b,r),l=u&&k(r).length>0;return(0,s.jsxs)(a.Box,{sx:e.sx(`mobileRow`,{borderTop:r?`1px solid ${v.palette.divider}`:`none`,...l?{bgcolor:N}:{}}),children:[(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`flex-start`,gap:1,p:1.5},children:[(0,s.jsxs)(a.Box,{sx:{flex:1,minWidth:0},children:[(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`center`,flexWrap:`wrap`,gap:1},children:[(0,s.jsx)(V,{ui:e,title:o,canEdit:D,onOpen:()=>m(r),size:14.5}),(0,s.jsx)(H,{ui:e,data:t.data})]}),c.length>0&&(0,s.jsx)(a.Box,{sx:{display:`grid`,gridTemplateColumns:`auto 1fr`,columnGap:1.5,rowGap:.25,mt:.75},children:c.map(t=>(0,s.jsxs)(i.Fragment,{children:[(0,s.jsx)(a.Typography,{sx:e.sx(`detailLabel`,{fontSize:13,color:`text.secondary`}),children:t.label}),(0,s.jsx)(a.Typography,{sx:e.sx(`detailValue`,{fontSize:13,fontWeight:500,wordBreak:`break-word`}),children:t.value})]},t.id))})]}),(O||E)&&M(t,r,o)]}),j(t,r,o)]},t.key)})});let P=e.sx(`tableHeadCell`,{fontSize:12.5,fontWeight:600,color:`text.secondary`,whiteSpace:`nowrap`,py:1,px:1.75}),F=e.sx(`tableCell`,{fontSize:14,color:`text.primary`,whiteSpace:`nowrap`,py:1.1,px:1.75}),I=1+C.length+ +!!w+(O||E?1:0);return(0,s.jsx)(a.Box,{sx:e.sx(`table`,{border:`1px solid ${v.palette.divider}`,borderRadius:`8px`,overflowX:`auto`,bgcolor:`background.paper`}),children:(0,s.jsxs)(a.Table,{size:`small`,children:[(0,s.jsx)(a.TableHead,{children:(0,s.jsxs)(a.TableRow,{sx:e.sx(`tableHead`,{bgcolor:(0,o.alpha)(v.palette.text.primary,v.palette.mode===`dark`?.05:.03)}),children:[(0,s.jsx)(a.TableCell,{sx:P,children:S.titleLabel||e.itemLabel}),C.map(e=>(0,s.jsx)(a.TableCell,{sx:P,children:e.label},e.id)),w&&(0,s.jsx)(a.TableCell,{sx:P,children:T}),(O||E)&&(0,s.jsx)(a.TableCell,{sx:P})]})}),(0,s.jsx)(a.TableBody,{children:t.map((r,o)=>{let{title:c,rawTitle:l}=n.v(r.data,b,o),d=u&&k(o).length>0,p=o===t.length-1,h=p&&(!E||f(r.key))?{"& > td":{borderBottom:0}}:{};return(0,s.jsxs)(i.Fragment,{children:[(0,s.jsxs)(a.TableRow,{hover:!0,sx:e.sx(`tableRow`,{...h,...d?{bgcolor:N}:{}}),children:[(0,s.jsx)(a.TableCell,{sx:F,children:l?(0,s.jsx)(V,{ui:e,title:l,canEdit:D,onOpen:()=>m(o),size:14}):(0,s.jsx)(a.Box,{component:D?`button`:`span`,type:D?`button`:void 0,onClick:D?()=>m(o):void 0,"aria-label":D?e.t(`editAria`,{title:c}):void 0,sx:{background:`none`,border:0,p:0,font:`inherit`,color:`text.disabled`,cursor:D?`pointer`:`default`},children:`—`})}),C.map(e=>(0,s.jsx)(a.TableCell,{sx:F,children:n.S(n.x(x,e.id),r.data[e.id])||A},e.id)),w&&(0,s.jsx)(a.TableCell,{sx:F,children:(0,s.jsx)(H,{ui:e,data:r.data})}),(O||E)&&(0,s.jsx)(a.TableCell,{align:`right`,sx:e.sx(`rowActions`,{width:`1%`,whiteSpace:`nowrap`,py:.25}),children:(0,s.jsx)(a.Box,{sx:{display:`inline-flex`},children:M(r,o,c)})})]}),E&&!f(r.key)&&(0,s.jsx)(a.TableRow,{children:(0,s.jsx)(a.TableCell,{colSpan:I,sx:{p:0,...p?{borderBottom:0}:{}},children:j(r,o,c)})})]},r.key)})})]})})}function G({config:e,nodes:t,onChange:r,guid:c,depth:l=0,readOnly:u=!1,issues:f=[],showErrors:m=!1,required:h=!1,parentTitle:_,texts:v}){let y=(0,o.useTheme)(),b=N(y,e,l,v),{emptyTitle:x,emptyText:S,...C}={...v||{},...e.texts||{}},w=e.max==null?void 0:Number(e.max),T=!u&&(w===void 0||t.length<w),E=u?`none`:b.addButton.position,D=E===`header`||E===`both`,O=E===`footer`||E===`both`,k=e.showEmpty??!b.nested,A=t.length===0&&k&&!(O&&b.addButton.variant===`dashed`),j=t.length===0&&!A&&!O,[M,P]=(0,i.useState)({open:!1,mode:`add`,index:-1,session:0}),[F,I]=(0,i.useState)({open:!1,index:-1,title:``,detail:``}),[L,R]=(0,i.useState)(null),[te,z]=(0,i.useState)({}),B=(e,t=-1)=>P(n=>({open:!0,mode:e,index:t,session:n.session+1})),V=()=>P(e=>({...e,open:!1})),H=()=>B(`add`),U=e=>B(!u&&b.actions.edit?`edit`:`view`,e),W=e.defaultCollapsed??b.layout===`table`,G=e=>te[e]??W,K=e=>z(t=>({...t,[e]:!G(e)})),q=(n,i)=>{if(M.mode===`add`){let a={key:d(),data:n,children:p(e)};b.layout===`cards`&&z(e=>({...e,[a.key]:!1})),r([...t,a]);let o=w!==void 0&&t.length+1>=w;(!i||o)&&V()}else M.mode===`edit`&&r(t.map((e,t)=>t===M.index?{...e,data:n}:e)),V()},J=e=>r(t.filter((t,n)=>n!==e)),se=r=>{if(e.confirmDelete===!1){J(r);return}let i=t[r];I({open:!0,index:r,title:n.v(i.data,e,r).title,detail:n._({...i.data,...i.children},e)})},ce=e=>{let n=[...t];n.splice(e+1,0,g(t[e])),r(n)},le=(e,n)=>{let i=e+n;if(i<0||i>=t.length)return;let a=[...t];[a[e],a[i]]=[a[i],a[e]],r(a)},ue=(e,n,i)=>r(t.map((t,r)=>r===e?{...t,children:{...t.children,[n]:i}}:t)),Y=m?f.find(e=>e.path.length===0)?.message:void 0,de=M.index>=0?t[M.index]:void 0,X=L?.index??-1,Z=e=>{R(null),e()},fe=()=>z(Object.fromEntries(t.map(e=>[e.key,!0]))),pe=()=>z(Object.fromEntries(t.map(e=>[e.key,!1]))),Q=t.length>0&&t.every(e=>G(e.key)),$=b.t(`deleteMessage`,{detail:F.detail?b.t(`deleteDetail`,{detail:F.detail}):``}),[me,he]=$.includes(`{title}`)?$.split(`{title}`):[$,null];return(0,s.jsxs)(a.Box,{"data-collection":e.id,sx:b.sx(`root`,{width:`100%`,minWidth:0}),children:[(0,s.jsx)(ie,{ui:b,count:t.length,required:h||(Number(e.min)||0)>0,alone:j&&!Y,action:(0,s.jsxs)(a.Box,{sx:{display:`flex`,alignItems:`center`,gap:1,flexWrap:`wrap`},children:[b.layout===`cards`&&t.length>=2&&(0,s.jsx)(a.Button,{size:`small`,variant:`text`,onClick:Q?pe:fe,sx:{fontSize:12.5,fontWeight:600,color:`text.secondary`,px:1,minWidth:0,textTransform:`none`,"&:hover":{color:`text.primary`,bgcolor:(0,o.alpha)(y.palette.text.primary,.05)}},startIcon:(0,s.jsx)(a.Icon,{sx:{fontSize:`15px !important`},children:Q?`unfold_more`:`unfold_less`}),children:Q?`Expand all`:`Collapse all`}),D&&(0,s.jsx)(ee,{ui:b,placement:`header`,empty:t.length===0,disabled:!T,onClick:H})]})}),Y&&(0,s.jsxs)(a.Typography,{role:`alert`,sx:b.sx(`error`,{display:`flex`,alignItems:`center`,gap:.5,color:`error.main`,fontSize:13,fontWeight:500,mt:-.5,mb:1.25}),children:[(0,s.jsx)(a.Icon,{sx:{fontSize:`17px !important`},children:`error_outline`}),Y]}),A&&(0,s.jsx)(ne,{ui:b,readOnly:u,error:!!Y}),t.length>0&&b.layout===`table`&&(0,s.jsx)(oe,{ui:b,nodes:t,guid:c,readOnly:u,issues:f,showErrors:m,texts:C,isCollapsed:G,onToggle:K,onOpen:U,onDelete:se,onMenu:(e,t)=>R({anchor:e,index:t}),onChildChange:ue}),t.length>0&&b.layout===`cards`&&(0,s.jsx)(a.Box,{sx:b.sx(`list`,{display:`flex`,flexDirection:`column`,gap:2}),children:t.map((e,t)=>(0,s.jsx)(ae,{ui:b,node:e,index:t,guid:c,readOnly:u,collapsed:G(e.key),issues:f.filter(e=>e.path[0]===t).map(e=>({...e,path:e.path.slice(1)})),showErrors:m,texts:C,onOpen:()=>U(t),onDelete:()=>se(t),onMenu:e=>R({anchor:e,index:t}),onToggle:()=>K(e.key),onChildChange:(e,n)=>ue(t,e,n)},e.key))}),O&&(0,s.jsx)(a.Box,{sx:{mt:t.length||b.addButton.variant!==`dashed`?1.25:0},children:(0,s.jsx)(ee,{ui:b,placement:`footer`,empty:t.length===0,disabled:!T,onClick:H})}),(0,s.jsx)(re,{ui:b,open:M.open,mode:M.mode,session:M.session,guid:`${c}-${e.id}`,initial:de?.data,context:_,onClose:V,onSave:q}),(0,s.jsxs)(a.Menu,{anchorEl:L?.anchor,open:!!L,onClose:()=>R(null),anchorOrigin:{vertical:`bottom`,horizontal:`right`},transformOrigin:{vertical:`top`,horizontal:`right`},sx:{"& .MuiPaper-root":b.merged(`menu`,{borderRadius:`10px`,minWidth:170})},children:[b.actions.duplicate&&(0,s.jsxs)(a.MenuItem,{sx:b.sx(`menuItem`),disabled:!T,onClick:()=>Z(()=>ce(X)),children:[(0,s.jsx)(a.ListItemIcon,{children:(0,s.jsx)(a.Icon,{fontSize:`small`,children:`content_copy`})}),(0,s.jsx)(a.ListItemText,{children:b.t(`duplicate`)})]}),b.actions.move&&(0,s.jsxs)(a.MenuItem,{sx:b.sx(`menuItem`),disabled:X<=0,onClick:()=>Z(()=>le(X,-1)),children:[(0,s.jsx)(a.ListItemIcon,{children:(0,s.jsx)(a.Icon,{fontSize:`small`,children:`arrow_upward`})}),(0,s.jsx)(a.ListItemText,{children:b.t(`moveUp`)})]}),b.actions.move&&(0,s.jsxs)(a.MenuItem,{sx:b.sx(`menuItem`),disabled:X>=t.length-1,onClick:()=>Z(()=>le(X,1)),children:[(0,s.jsx)(a.ListItemIcon,{children:(0,s.jsx)(a.Icon,{fontSize:`small`,children:`arrow_downward`})}),(0,s.jsx)(a.ListItemText,{children:b.t(`moveDown`)})]})]}),(0,s.jsxs)(a.Dialog,{open:F.open,onClose:()=>I(e=>({...e,open:!1})),maxWidth:`xs`,fullWidth:!0,sx:{"& .MuiDialog-paper":b.merged(`confirm`,{borderRadius:`12px`,backgroundImage:`none`})},children:[(0,s.jsxs)(a.DialogContent,{sx:{pt:3,pb:1},children:[(0,s.jsx)(a.Typography,{sx:b.sx(`confirmTitle`,{fontWeight:600,fontSize:17}),children:b.t(`deleteTitle`)}),(0,s.jsxs)(a.Typography,{sx:b.sx(`confirmText`,{fontSize:14,color:`text.secondary`,mt:1}),children:[me,he!==null&&(0,s.jsx)(a.Box,{component:`strong`,sx:{color:`text.primary`,fontWeight:600},children:F.title}),he]})]}),(0,s.jsxs)(a.DialogActions,{sx:{px:3,pb:2.5,pt:2,gap:1,"& .MuiButton-root":{textTransform:`none`,fontWeight:600,borderRadius:`8px`}},children:[(0,s.jsx)(a.Button,{color:`inherit`,onClick:()=>I(e=>({...e,open:!1})),sx:b.sx(`confirmCancel`,{color:`text.secondary`}),children:b.t(`cancel`)}),(0,s.jsx)(a.Button,{variant:`contained`,color:`error`,disableElevation:!0,onClick:()=>{J(F.index),I(e=>({...e,open:!1}))},sx:b.sx(`confirmDelete`),children:b.t(`deleteConfirm`)})]})]})]})}var K=[`mandatory`,`mandatoryselect`],q=e=>{try{return JSON.stringify(e)}catch{return``}};function J({attributes:e={},rules:t={},onChange:a,submitTick:o}){let{id:c=``,value:l}=e,u={...e,id:c,fields:e.fields||[]},f=!!(e.readOnly||e.disabled||e.MuiAttributes?.disabled),p=t?.validation?.find(e=>K.includes(e.rule)),[g]=(0,i.useState)(d),[_,v]=(0,i.useState)(()=>m(l,u)),[y,b]=(0,i.useState)(!1),x=(0,i.useRef)(q(n.E(l)));r.t(()=>{let e=q(n.E(l));e!==x.current&&(x.current=e,v(m(l,u)))},[l]),r.t(()=>{o&&b(!0)},[o]);let S=e=>{v(e);let t=h(e,u);x.current=q(t),a?.({id:c,value:t})},C=n.g(h(_,u),u,{required:!!p,requiredMessage:p?.message});return(0,s.jsx)(G,{config:u,nodes:_,onChange:S,guid:`${g}-${c}`,readOnly:f,issues:C,showErrors:y,required:!!p})}exports.default=J;
|