@famalabs/web-form 1.0.0-beta.1 → 1.0.0-beta.3

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.
Files changed (36) hide show
  1. package/dist/core/compiler/FormCompiler.js +1 -1
  2. package/dist/core/compiler/common/CompilerProgress.js +1 -1
  3. package/dist/core/compiler/common/NavigationButtonsCompiler.js +1 -1
  4. package/dist/core/compiler/common/SidebarCompiler.js +1 -1
  5. package/dist/core/compiler/question_forms/ItemFunctionCompiler.js +1 -1
  6. package/dist/core/components/forms/QuestionCommon.js +1 -1
  7. package/dist/core/editor/common/CommonEditor.js +1 -1
  8. package/dist/core/editor/common/HierarchyEditor.js +1 -1
  9. package/dist/core/editor/common/OptionsEditor.js +1 -1
  10. package/dist/core/editor/common/sidebar/SidebarEditor.js +1 -1
  11. package/dist/core/editor/common/sidebar/SidebarPageStructure.js +1 -1
  12. package/dist/core/editor/common/sidebar/SidebarQuestionStructure.js +1 -1
  13. package/dist/core/editor/common/sidebar/SidebarSettingsView.js +1 -1
  14. package/dist/core/editor/containers/PageEditor.js +1 -1
  15. package/dist/core/editor/containers/RenderPageEditModal.js +1 -1
  16. package/dist/core/editor/containers/RenderSectionEditModal.js +1 -1
  17. package/dist/core/editor/containers/SectionPreview.js +1 -1
  18. package/dist/core/editor/question_editor/QuestionCommonEditor.js +1 -1
  19. package/dist/core/editor/question_editor/QuestionMainComponent.js +1 -1
  20. package/dist/core/editor/question_editor/QuestionPreviewRender.js +1 -1
  21. package/dist/core/editor/question_editor/QuestionTypePreview.js +1 -1
  22. package/dist/core/editor/question_forms/ItemConditionalEditor.js +1 -1
  23. package/dist/core/editor/question_forms/ItemFunctionEditor.js +1 -1
  24. package/dist/core/editor/question_forms/QuestionDateEditor.js +1 -1
  25. package/dist/core/editor/question_forms/QuestionListEditor.js +1 -1
  26. package/dist/core/editor/question_forms/QuestionSelectEditor.js +1 -1
  27. package/dist/core/editor/question_forms/UploadFormEditor.js +1 -1
  28. package/dist/core/hooks/common/NavigationHook.js +1 -1
  29. package/dist/core/hooks/compiler/InitCompiler.js +1 -1
  30. package/dist/core/hooks/editor/EditorOperations.js +1 -1
  31. package/dist/core/hooks/editor/QuestionOperations.js +1 -1
  32. package/dist/core/utils/config-map.d.ts +1 -9
  33. package/dist/core/utils/config-map.js +1 -1
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +1 -1
  36. package/package.json +3 -2
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import"../../../components/common/DrawerCommon.js";import"@mui/material/Typography";import i from"@mui/material/Grid";import{jsx as t,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../../components/common/Skeletons.js";import r from"react";import{useFormStateContext as a}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../../providers/editor/EditorStateProvider.js";import{useSetQuestionEdit as m}from"../../../providers/editor/QuestionEditProvider.js";import"isomorphic-dompurify";import l from"@mui/material/Box";import s from"@mui/material/Button";import{CogIcon as d,Presentation as c,Folder as p,Plus as u,FileText as h,MessageSquare as f,ChevronDown as g,FolderOpen as v}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import y from"@mui/material/IconButton";import"@mui/material/Stack";import b from"@mui/material/Tooltip";import{Mapper as x,getMapType as w}from"../../../utils/config-map.js";import"../../../utils/locale.js";import{ItemConditional as S}from"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import{AddQuestionMenu as C,MoreVerticalItemHover as I}from"../CommonEditor.js";import"../../containers/PageEditor.js";import"@mui/material/Container";import"../../question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import P from"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"../../question_forms/ItemConditionalEditor.js";import"../../question_editor/QuestionPreviewRender.js";import"@mui/material/ToggleButton";import"@mui/material/ToggleButtonGroup";import T from"@mui/material/Collapse";import _ from"@mui/material/List";import z from"@mui/material/ListItemButton";import E from"@mui/material/ListItemIcon";import j from"@mui/material/ListItemText";import{ViewEditorHistory as O}from"../EditorHistoryDrawer.js";import k from"@mui/material/Popover";import"@hello-pangea/dnd";import"@mui/material/Breadcrumbs";import"@mui/material/CardHeader";import"@mui/material/Link";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";const B=B=>{const H=e(125),{questionTab:L,setQuestionTab:M,setMenuState:A,setCurrentModal:F,setActionItem:Q,setItemHovered:q}=B,D=void 0===L?"add":L,{formInstance:N,globalConfig:R}=a(),{editorState:G,navigationState:V,editorConfig:Y}=n(),U=R.readonlyMode;let W;H[0]!==N.root?.items?(W=N.root?.items||[],H[0]=N.root?.items,H[1]=W):W=H[1];const $=W,Z=V.currentPage?.id;let X,J;if(H[2]!==Z||H[3]!==N||H[4]!==V){const e=V.getPageByIndex(0)?.id;let i;X=V.currentPageIndex||0,H[7]!==N?(i=e=>{if(e)try{return N.get(e)}catch(i){const t=i;return void console.error("Error getting the page: ",e,t)}},H[7]=N,H[8]=i):i=H[8];const t=i;J=t(Z)??t(e),H[2]=Z,H[3]=N,H[4]=V,H[5]=X,H[6]=J}else X=H[5],J=H[6];const K=J,ee=V.currentPage?.folderId;let ie;if(ee)try{let e;H[9]!==ee||H[10]!==N?(e=N.get(ee),H[9]=ee,H[10]=N,H[11]=e):e=H[11],ie=e}catch(ne){const e=ne;console.error("Error getting current folder:",e),ie=N.root}else ie=N.root;const te=ie,[oe,re]=r.useState(null),ae=Boolean(oe);let ne;H[12]===Symbol.for("react.memo_cache_sentinel")?(ne=()=>re(null),H[12]=ne):ne=H[12];const me=ne;let le;H[13]===Symbol.for("react.memo_cache_sentinel")?(le=async e=>{re(e.currentTarget)},H[13]=le):le=H[13];const se=le,[de,ce]=r.useState(ee);let pe,ue;H[14]!==ee?(pe=()=>{ce(ee||null)},ue=[ee],H[14]=ee,H[15]=pe,H[16]=ue):(pe=H[15],ue=H[16]),r.useEffect(pe,ue);const he=m();let fe;H[17]!==te||H[18]!==K?.id||H[19]!==X||H[20]!==G||H[21]!==V||H[22]!==he?(fe=async e=>{if(0===V.pageCount){const i=await G.addPage(te,X+1);if(!i)return;await G.addQuestion(e,i?.id),he({id:i?.items[0].id,isNew:!0}),V.goToPage(i?.id)}else{const i=await G.addQuestion(e,K?.id);if(!i)return;he({id:i.id,isNew:!0})}},H[17]=te,H[18]=K?.id,H[19]=X,H[20]=G,H[21]=V,H[22]=he,H[23]=fe):fe=H[23];const ge=fe;let ve;H[24]!==G||H[25]!==N.root||H[26]!==V?(ve=async e=>{const i=await G.schemaUpdate(N.root,e);V.goToPage(i?.id)},H[24]=G,H[25]=N.root,H[26]=V,H[27]=ve):ve=H[27];const ye=ve,[be,xe]=r.useState(!1);let we;H[28]!==V||H[29]!==de?(we=e=>{const i="folder"===w(e),o=(()=>{if(i)return de===e.id?t(v,{size:20}):t(p,{size:20});const o=e.layout?.style;return o===x.landing.type?t(c,{size:20}):t(h,{size:20})})();return(()=>{if(!e?.items)return!1;if(i)return e.items.every(e=>{const i=w(e)===x.cond.type?e.items[0]:e;return Boolean(V.getItem(i.id)?.isValid)});const t=V.getItem(e.id)?.isValid;return Boolean(t)})()?o:t(b,{arrow:!0,color:"#E63946",title:"Errore presente",children:o})},H[28]=V,H[29]=de,H[30]=we):we=H[30];const Se=we;let Ce,Ie,Pe,Te,_e,ze,Ee,je,Oe,ke,Be,He,Le,Me,Ae,Fe,Qe,qe;H[31]===Symbol.for("react.memo_cache_sentinel")?(Ce={height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},H[31]=Ce):Ce=H[31],H[32]===Symbol.for("react.memo_cache_sentinel")?(Ie={justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},H[32]=Ie):Ie=H[32],H[33]===Symbol.for("react.memo_cache_sentinel")?(Pe=t(u,{}),H[33]=Pe):Pe=H[33],H[34]!==U?(Te=t(i,{children:t(s,{id:"new-button",startIcon:Pe,variant:"contained",color:"primary",size:"small",disabled:U,onClick:se,children:"Nuovo"})}),H[34]=U,H[35]=Te):Te=H[35],H[36]===Symbol.for("react.memo_cache_sentinel")?(_e=t(i,{children:t(O,{})}),H[36]=_e):_e=H[36],H[37]!==Te?(ze=o(i,{container:!0,alignItems:"center",spacing:1,children:[Te,_e]}),H[37]=Te,H[38]=ze):ze=H[38],H[39]!==Y.showUserSettings||H[40]!==U||H[41]!==A?(Ee=Y.showUserSettings&&t(i,{children:t(b,{title:"Impostazioni",arrow:!0,children:t(y,{color:"primary",disabled:U,onClick:()=>A("settings"),children:t(d,{size:20})})})}),H[39]=Y.showUserSettings,H[40]=U,H[41]=A,H[42]=Ee):Ee=H[42],H[43]===Symbol.for("react.memo_cache_sentinel")?(je={vertical:"top",horizontal:"right"},Oe={vertical:"top",horizontal:"left"},H[43]=je,H[44]=Oe):(je=H[43],Oe=H[44]),H[45]===Symbol.for("react.memo_cache_sentinel")?(ke={padding:0},H[45]=ke):ke=H[45],H[46]!==G||H[47]!==V||H[48]!==$[0]?.layout?.style?(Be=$[0]?.layout?.style!==x.landing.type&&o(z,{onClick:async()=>{me();const e=await G.addLandingPage();e&&V.goToPage(e.id)},children:[t(E,{children:t(c,{size:20})}),t(j,{primary:"Paginda Introduttiva"})]}),H[46]=G,H[47]=V,H[48]=$[0]?.layout?.style,H[49]=Be):Be=H[49],H[50]!==G||H[51]!==R.pagination||H[52]!==Q||H[53]!==F?(He="folders"===R.pagination&&o(z,{onClick:async()=>{me();const e=await G.addFolder();e&&(ce(e.id),Q(e),F("edit"))},children:[t(E,{children:t(p,{size:20})}),t(j,{primary:"Cartella"})]}),H[50]=G,H[51]=R.pagination,H[52]=Q,H[53]=F,H[54]=He):He=H[54],H[55]!==G||H[56]!==N.root||H[57]!==V||H[58]!==Q||H[59]!==F?(Le=async()=>{me();const e=await G.addPage(N.root,V.pageCount);e?(V.goToPage(e.id),Q(e),F("edit")):console.error("Errore durante la creazione della nuova pagina")},H[55]=G,H[56]=N.root,H[57]=V,H[58]=Q,H[59]=F,H[60]=Le):Le=H[60],H[61]===Symbol.for("react.memo_cache_sentinel")?(Me=t(E,{children:t(h,{size:20})}),Ae=t(j,{primary:"Pagina"}),H[61]=Me,H[62]=Ae):(Me=H[61],Ae=H[62]),H[63]!==Le?(Fe=o(z,{onClick:Le,children:[Me,Ae]}),H[63]=Le,H[64]=Fe):Fe=H[64],H[65]!==M?(Qe=async()=>{me(),M("add"),xe(!0)},H[65]=M,H[66]=Qe):Qe=H[66],H[67]===Symbol.for("react.memo_cache_sentinel")?(qe=t(E,{children:t(f,{size:20})}),H[67]=qe):qe=H[67];const De="single"!==R.pagination?"Domanda":"Campo";let Ne,Re,Ge,Ve,Ye,Ue,We,$e,Ze,Xe,Je,Ke;if(H[68]!==De?(Ne=t(j,{primary:De}),H[68]=De,H[69]=Ne):Ne=H[69],H[70]!==Qe||H[71]!==Ne?(Re=o(z,{onClick:Qe,children:[qe,Ne]}),H[70]=Qe,H[71]=Ne,H[72]=Re):Re=H[72],H[73]!==Be||H[74]!==He||H[75]!==Fe||H[76]!==Re?(Ge=o(_,{dense:!0,sx:ke,children:[Be,He,Fe,Re]}),H[73]=Be,H[74]=He,H[75]=Fe,H[76]=Re,H[77]=Ge):Ge=H[77],H[78]!==oe||H[79]!==ae||H[80]!==Ge?(Ve=t(k,{"aria-label":"sidebar-popover",open:ae,anchorEl:oe,onClose:me,anchorOrigin:je,transformOrigin:Oe,elevation:6,children:Ge}),H[78]=oe,H[79]=ae,H[80]=Ge,H[81]=Ve):Ve=H[81],H[82]!==ge||H[83]!==ye||H[84]!==be||H[85]!==D?(Ye=be&&t(C,{mode:"controlled",isOpen:be,setIsOpen:xe,handleAddQuestion:ge,handleGenerateSurvey:ye,defaultOpenTab:D}),H[82]=ge,H[83]=ye,H[84]=be,H[85]=D,H[86]=Ye):Ye=H[86],H[87]!==ze||H[88]!==Ee||H[89]!==Ve||H[90]!==Ye?(Ue=o(i,{container:!0,sx:Ie,children:[ze,Ee,Ve,Ye]}),H[87]=ze,H[88]=Ee,H[89]=Ve,H[90]=Ye,H[91]=Ue):Ue=H[91],H[92]===Symbol.for("react.memo_cache_sentinel")?(We=t(P,{flexItem:!0,sx:{flexShrink:0}}),H[92]=We):We=H[92],H[93]===Symbol.for("react.memo_cache_sentinel")?($e={flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",overscrollBehavior:"contain",pr:.5},H[93]=$e):$e=H[93],H[94]===Symbol.for("react.memo_cache_sentinel")?(Ze={width:"100%",py:0},H[94]=Ze):Ze=H[94],H[95]!==ee||H[96]!==Z||H[97]!==G||H[98]!==R.pagination||H[99]!==V||H[100]!==de||H[101]!==U||H[102]!==Se||H[103]!==$||H[104]!==Q||H[105]!==F||H[106]!==q){let e;H[108]!==ee||H[109]!==Z||H[110]!==G||H[111]!==R.pagination||H[112]!==V||H[113]!==de||H[114]!==U||H[115]!==Se||H[116]!==Q||H[117]!==F||H[118]!==q?(e=(e,i)=>{const r="cond"===w(e)?e.items[0]:e;return o(l,{"aria-label":"folder"===w(r)?`sidebar-root-container-${r.text}`:`sidebar-page-${r.text}`,sx:{mx:1,mb:1,p:.5,borderColor:"divider",borderStyle:"solid",borderWidth:"1px",borderRadius:"12px"},children:[o(z,{dense:!0,divider:!0,selected:"folder"===w(e)?ee===r.id:Z===r.id,onClick:()=>{r.id!==Z&&("folder"===w(e)?ce(de===r.id?null:r.id):V.goToPage(r.id))},onMouseOver:q,sx:{whiteSpace:"normal",minHeight:"42px",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[t(E,{children:Se(r)}),t(j,{primary:r.text,slotProps:{primary:{variant:"subtitle1",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:14,maxWidth:"15ch"}}}}),!U&&"single"!==R.pagination&&t(l,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:"folder"===w(e)?32:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:t(I,{handleOnEdit:()=>{Q(e),F("edit")},handleOnAddPage:"folder"===w(r)?async()=>{const e=await G.addPage(r);await G.createHistorySnapshot(),V.goToPage(e?.id),ce(r.id)}:void 0,handleOnMove:"cond"===w(e)||"landing"===w(e)?void 0:()=>{Q(e),F("move")},handleOnDuplicate:"cond"===w(e)||"landing"===w(e)?void 0:()=>{Q(e),F("duplicate")},handleOnRemove:async()=>{const e="folder"===w(r)?"Vuoi eliminare questa cartella?":"Vuoi eliminare questa pagina?";window.confirm(e)&&(await G.removeItem(r),await G.createHistorySnapshot())}})}),"folder"===w(r)&&t(g,{size:20,className:"chevron-down",style:{position:"absolute",right:12,transform:de===r.id?"rotateZ(180deg)":"rotateZ(0deg)",transition:"transform 0.3s ease"}}),e instanceof S&&e.items.length&&t(b,{arrow:!0,title:"Condizione presente",children:t(y,{size:"small",color:"primary",sx:{position:"absolute",right:"folder"===w(e)?48:36,top:"50%",transform:"translateY(-50%)"},children:x.cond.icon})})]},r.id),"folder"===w(e)&&e.items?.length>0&&t(T,{in:de===e.id,timeout:"auto",children:t(_,{component:"div",disablePadding:!0,sx:{minHeight:"20px"},children:e.items.map(i=>{const r="cond"===w(i)?i.items[0]:i;return o(z,{"aria-label":`sidebar-page-${r.text}`,dense:!0,selected:Z===r.id,onClick:()=>{r.id!==Z&&V.goToPage(r?.id)},sx:{whiteSpace:"normal",pl:4,mt:.5,minHeight:"42px",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[t(E,{children:Se(r)}),t(j,{primary:r.text,slotProps:{primary:{variant:"subtitle1",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:14,maxWidth:"18ch"}}}}),!U&&t(l,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:t(I,{handleOnEdit:"cond"===w(i)?void 0:()=>{Q(i),F("edit")},handleOnMove:"cond"===w(i)?void 0:()=>{Q(i),F("move")},handleOnDuplicate:"cond"===w(i)?void 0:()=>{Q(i),F("duplicate")},handleOnRemove:async()=>{window.confirm("Vuoi eliminare questa pagina?")&&(await G.removeItem(r),await G.createHistorySnapshot())}})}),e instanceof S&&e.items.length&&t(b,{arrow:!0,title:"Condizione presente",children:t(y,{size:"small",color:"primary",sx:{position:"absolute",right:"folder"===w(e)?48:36,top:"50%",transform:"translateY(-50%)"},children:x.cond.icon})})]},r.id)})})},"c"+e.id)]},i)},H[108]=ee,H[109]=Z,H[110]=G,H[111]=R.pagination,H[112]=V,H[113]=de,H[114]=U,H[115]=Se,H[116]=Q,H[117]=F,H[118]=q,H[119]=e):e=H[119],Xe=$.map(e),H[95]=ee,H[96]=Z,H[97]=G,H[98]=R.pagination,H[99]=V,H[100]=de,H[101]=U,H[102]=Se,H[103]=$,H[104]=Q,H[105]=F,H[106]=q,H[107]=Xe}else Xe=H[107];return H[120]!==Xe?(Je=t(l,{sx:$e,children:t(_,{component:"nav","aria-label":"sidebar",sx:Ze,children:Xe})}),H[120]=Xe,H[121]=Je):Je=H[121],H[122]!==Ue||H[123]!==Je?(Ke=o(l,{sx:Ce,children:[Ue,We,Je]}),H[122]=Ue,H[123]=Je,H[124]=Ke):Ke=H[124],Ke};export{B as RenderPageStructure};
1
+ import{c as e}from"react/compiler-runtime";import"../../../components/common/DrawerCommon.js";import"@mui/material/Typography";import i from"@mui/material/Grid";import{jsx as t,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../../components/common/Skeletons.js";import r from"react";import{useFormStateContext as a}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../../providers/editor/EditorStateProvider.js";import{useSetQuestionEdit as m}from"../../../providers/editor/QuestionEditProvider.js";import"isomorphic-dompurify";import l from"@mui/material/Box";import s from"@mui/material/Button";import{CogIcon as d,Presentation as c,Folder as p,Plus as u,FileText as h,MessageSquare as f,ChevronDown as g,FolderOpen as v}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import y from"@mui/material/IconButton";import"@mui/material/Stack";import b from"@mui/material/Tooltip";import{Mapper as w,getMapType as x}from"../../../utils/config-map.js";import"../../../utils/locale.js";import{ItemConditional as S}from"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import{AddQuestionMenu as C,MoreVerticalItemHover as I}from"../CommonEditor.js";import"../../containers/PageEditor.js";import"@mui/material/Container";import"../../question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import _ from"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"../../question_forms/ItemConditionalEditor.js";import"../../question_forms/QuestionDateEditor.js";import"../../question_editor/QuestionPreviewRender.js";import"@mui/material/ToggleButton";import"@mui/material/ToggleButtonGroup";import"@mui/material/Breadcrumbs";import"@mui/material/CardHeader";import"@mui/material/Link";import P from"@mui/material/Collapse";import T from"@mui/material/List";import z from"@mui/material/ListItemButton";import E from"@mui/material/ListItemIcon";import j from"@mui/material/ListItemText";import{ViewEditorHistory as O}from"../EditorHistoryDrawer.js";import k from"@mui/material/Popover";import"@hello-pangea/dnd";import"./SidebarSettingsView.js";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";const B=B=>{const H=e(125),{questionTab:L,setQuestionTab:M,setMenuState:Q,setCurrentModal:q,setActionItem:A,setItemHovered:F}=B,D=void 0===L?"add":L,{formInstance:N,globalConfig:R}=a(),{editorState:V,navigationState:G,editorConfig:Y}=n(),U=R.readonlyMode;let W;H[0]!==N.root?.items?(W=N.root?.items||[],H[0]=N.root?.items,H[1]=W):W=H[1];const $=W;let Z,X,J;if(H[2]!==N||H[3]!==G){const e=G.getPageByIndex(0)?.id;let i;Z=G?.currentPage?.id??e,X=G.currentPageIndex||0,H[7]!==N?(i=e=>{if(e)try{return N.get(e)}catch(i){const t=i;return void console.error("Error getting the page: ",e,t)}},H[7]=N,H[8]=i):i=H[8];const t=i;J=t(Z)??t(e),H[2]=N,H[3]=G,H[4]=Z,H[5]=X,H[6]=J}else Z=H[4],X=H[5],J=H[6];const K=J,ee=G.currentPage?.folderId;let ie;if(ee)try{let e;H[9]!==ee||H[10]!==N?(e=N.get(ee),H[9]=ee,H[10]=N,H[11]=e):e=H[11],ie=e}catch(ne){const e=ne;console.error("Error getting current folder:",e),ie=N.root}else ie=N.root;const te=ie,[oe,re]=r.useState(null),ae=Boolean(oe);let ne;H[12]===Symbol.for("react.memo_cache_sentinel")?(ne=()=>re(null),H[12]=ne):ne=H[12];const me=ne;let le;H[13]===Symbol.for("react.memo_cache_sentinel")?(le=async e=>{re(e.currentTarget)},H[13]=le):le=H[13];const se=le,[de,ce]=r.useState(ee);let pe,ue;H[14]!==ee?(pe=()=>{ce(ee||null)},ue=[ee],H[14]=ee,H[15]=pe,H[16]=ue):(pe=H[15],ue=H[16]),r.useEffect(pe,ue);const he=m();let fe;H[17]!==te||H[18]!==K?.id||H[19]!==X||H[20]!==V||H[21]!==G||H[22]!==he?(fe=async e=>{if(0===G.pageCount){const i=await V.addPage(te,X+1);if(!i)return;await V.addQuestion(e,i?.id),he({id:i?.items[0].id,isNew:!0}),G.goToPage(i?.id)}else{const i=await V.addQuestion(e,K?.id);if(!i)return;he({id:i.id,isNew:!0})}},H[17]=te,H[18]=K?.id,H[19]=X,H[20]=V,H[21]=G,H[22]=he,H[23]=fe):fe=H[23];const ge=fe;let ve;H[24]!==V||H[25]!==N.root||H[26]!==G?(ve=async e=>{const i=await V.schemaUpdate(N.root,e);G.goToPage(i?.id)},H[24]=V,H[25]=N.root,H[26]=G,H[27]=ve):ve=H[27];const ye=ve,[be,we]=r.useState(!1);let xe;H[28]!==G||H[29]!==de?(xe=e=>{const i="folder"===x(e),o=(()=>{if(i)return de===e.id?t(v,{size:20}):t(p,{size:20});const o=e.layout?.style;return o===w.landing.type?t(c,{size:20}):t(h,{size:20})})();return(()=>{if(!e?.items)return!1;if(i)return e.items.every(e=>{const i=x(e)===w.cond.type?e.items[0]:e;return Boolean(G.getItem(i.id)?.isValid)});const t=G.getItem(e.id)?.isValid;return Boolean(t)})()?o:t(b,{arrow:!0,color:"#E63946",title:"Errore presente",children:o})},H[28]=G,H[29]=de,H[30]=xe):xe=H[30];const Se=xe;let Ce,Ie,_e,Pe,Te,ze,Ee,je,Oe,ke,Be,He,Le,Me,Qe,qe,Ae,Fe;H[31]===Symbol.for("react.memo_cache_sentinel")?(Ce={height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},H[31]=Ce):Ce=H[31],H[32]===Symbol.for("react.memo_cache_sentinel")?(Ie={justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},H[32]=Ie):Ie=H[32],H[33]===Symbol.for("react.memo_cache_sentinel")?(_e=t(u,{}),H[33]=_e):_e=H[33],H[34]!==U?(Pe=t(i,{children:t(s,{id:"new-button",startIcon:_e,variant:"contained",color:"primary",size:"small",disabled:U,onClick:se,children:"Nuovo"})}),H[34]=U,H[35]=Pe):Pe=H[35],H[36]===Symbol.for("react.memo_cache_sentinel")?(Te=t(i,{children:t(O,{})}),H[36]=Te):Te=H[36],H[37]!==Pe?(ze=o(i,{container:!0,alignItems:"center",spacing:1,children:[Pe,Te]}),H[37]=Pe,H[38]=ze):ze=H[38],H[39]!==Y.showUserSettings||H[40]!==U||H[41]!==Q?(Ee=Y.showUserSettings&&t(i,{children:t(b,{title:"Impostazioni",arrow:!0,children:t(y,{color:"primary",disabled:U,onClick:()=>Q("settings"),children:t(d,{size:20})})})}),H[39]=Y.showUserSettings,H[40]=U,H[41]=Q,H[42]=Ee):Ee=H[42],H[43]===Symbol.for("react.memo_cache_sentinel")?(je={vertical:"top",horizontal:"right"},Oe={vertical:"top",horizontal:"left"},H[43]=je,H[44]=Oe):(je=H[43],Oe=H[44]),H[45]===Symbol.for("react.memo_cache_sentinel")?(ke={padding:0},H[45]=ke):ke=H[45],H[46]!==V||H[47]!==G||H[48]!==$[0]?.layout?.style?(Be=$[0]?.layout?.style!==w.landing.type&&o(z,{onClick:async()=>{me();const e=await V.addLandingPage();e&&G.goToPage(e.id)},children:[t(E,{children:t(c,{size:20})}),t(j,{primary:"Paginda Introduttiva"})]}),H[46]=V,H[47]=G,H[48]=$[0]?.layout?.style,H[49]=Be):Be=H[49],H[50]!==V||H[51]!==R.pagination||H[52]!==A||H[53]!==q?(He="folders"===R.pagination&&o(z,{onClick:async()=>{me();const e=await V.addFolder();e&&(ce(e.id),A(e),q("edit"))},children:[t(E,{children:t(p,{size:20})}),t(j,{primary:"Cartella"})]}),H[50]=V,H[51]=R.pagination,H[52]=A,H[53]=q,H[54]=He):He=H[54],H[55]!==V||H[56]!==N.root||H[57]!==G||H[58]!==A||H[59]!==q?(Le=async()=>{me();const e=await V.addPage(N.root,G.pageCount);e?(G.goToPage(e.id),A(e),q("edit")):console.error("Errore durante la creazione della nuova pagina")},H[55]=V,H[56]=N.root,H[57]=G,H[58]=A,H[59]=q,H[60]=Le):Le=H[60],H[61]===Symbol.for("react.memo_cache_sentinel")?(Me=t(E,{children:t(h,{size:20})}),Qe=t(j,{primary:"Pagina"}),H[61]=Me,H[62]=Qe):(Me=H[61],Qe=H[62]),H[63]!==Le?(qe=o(z,{onClick:Le,children:[Me,Qe]}),H[63]=Le,H[64]=qe):qe=H[64],H[65]!==M?(Ae=async()=>{me(),M("add"),we(!0)},H[65]=M,H[66]=Ae):Ae=H[66],H[67]===Symbol.for("react.memo_cache_sentinel")?(Fe=t(E,{children:t(f,{size:20})}),H[67]=Fe):Fe=H[67];const De="single"!==R.pagination?"Domanda":"Campo";let Ne,Re,Ve,Ge,Ye,Ue,We,$e,Ze,Xe,Je,Ke;if(H[68]!==De?(Ne=t(j,{primary:De}),H[68]=De,H[69]=Ne):Ne=H[69],H[70]!==Ae||H[71]!==Ne?(Re=o(z,{onClick:Ae,children:[Fe,Ne]}),H[70]=Ae,H[71]=Ne,H[72]=Re):Re=H[72],H[73]!==Be||H[74]!==He||H[75]!==qe||H[76]!==Re?(Ve=o(T,{dense:!0,sx:ke,children:[Be,He,qe,Re]}),H[73]=Be,H[74]=He,H[75]=qe,H[76]=Re,H[77]=Ve):Ve=H[77],H[78]!==oe||H[79]!==ae||H[80]!==Ve?(Ge=t(k,{"aria-label":"sidebar-popover",open:ae,anchorEl:oe,onClose:me,anchorOrigin:je,transformOrigin:Oe,elevation:6,children:Ve}),H[78]=oe,H[79]=ae,H[80]=Ve,H[81]=Ge):Ge=H[81],H[82]!==ge||H[83]!==ye||H[84]!==be||H[85]!==D?(Ye=be&&t(C,{mode:"controlled",isOpen:be,setIsOpen:we,handleAddQuestion:ge,handleGenerateSurvey:ye,defaultOpenTab:D}),H[82]=ge,H[83]=ye,H[84]=be,H[85]=D,H[86]=Ye):Ye=H[86],H[87]!==ze||H[88]!==Ee||H[89]!==Ge||H[90]!==Ye?(Ue=o(i,{container:!0,sx:Ie,children:[ze,Ee,Ge,Ye]}),H[87]=ze,H[88]=Ee,H[89]=Ge,H[90]=Ye,H[91]=Ue):Ue=H[91],H[92]===Symbol.for("react.memo_cache_sentinel")?(We=t(_,{flexItem:!0,sx:{flexShrink:0}}),H[92]=We):We=H[92],H[93]===Symbol.for("react.memo_cache_sentinel")?($e={flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",overscrollBehavior:"contain",pr:.5},H[93]=$e):$e=H[93],H[94]===Symbol.for("react.memo_cache_sentinel")?(Ze={width:"100%",py:0},H[94]=Ze):Ze=H[94],H[95]!==ee||H[96]!==Z||H[97]!==V||H[98]!==R.pagination||H[99]!==G||H[100]!==de||H[101]!==U||H[102]!==Se||H[103]!==$||H[104]!==A||H[105]!==q||H[106]!==F){let e;H[108]!==ee||H[109]!==Z||H[110]!==V||H[111]!==R.pagination||H[112]!==G||H[113]!==de||H[114]!==U||H[115]!==Se||H[116]!==A||H[117]!==q||H[118]!==F?(e=(e,i)=>{const r=x(e)===w.cond.type?e.items[0]:e;return o(l,{"aria-label":"folder"===x(r)?`sidebar-root-container-${r.text}`:`sidebar-page-${r.text}`,sx:{mx:1,mb:1,p:.5,borderColor:"divider",borderStyle:"solid",borderWidth:"1px",borderRadius:"12px"},children:[o(z,{dense:!0,divider:!0,selected:x(e)===w.folder.type?ee===r.id:Z===r.id,onClick:()=>{r.id!==Z&&(x(e)===w.folder.type?ce(de===r.id?null:r.id):G.goToPage(r.id))},onMouseOver:F,sx:{whiteSpace:"normal",minHeight:"42px",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[t(E,{children:Se(r)}),t(j,{primary:r.text,slotProps:{primary:{variant:"subtitle1",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:14,maxWidth:"15ch"}}}}),!U&&"single"!==R.pagination&&t(l,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:"folder"===x(e)?32:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:t(I,{handleOnEdit:()=>{A(e),q("edit")},handleOnAddPage:"folder"===x(r)?async()=>{const e=await V.addPage(r);await V.createHistorySnapshot(),G.goToPage(e?.id),ce(r.id)}:void 0,handleOnMove:"cond"===x(e)||"landing"===x(e)?void 0:()=>{A(e),q("move")},handleOnDuplicate:"cond"===x(e)||"landing"===x(e)?void 0:()=>{A(e),q("duplicate")},handleOnRemove:async()=>{const e="folder"===x(r)?"Vuoi eliminare questa cartella?":"Vuoi eliminare questa pagina?";window.confirm(e)&&(await V.removeItem(r),await V.createHistorySnapshot())}})}),"folder"===x(r)&&t(g,{size:20,className:"chevron-down",style:{position:"absolute",right:12,transform:de===r.id?"rotateZ(180deg)":"rotateZ(0deg)",transition:"transform 0.3s ease"}}),e instanceof S&&e.items.length&&t(b,{arrow:!0,title:"Condizione presente",children:t(y,{size:"small",color:"primary",sx:{position:"absolute",right:"folder"===x(e)?48:36,top:"50%",transform:"translateY(-50%)"},children:w.cond.icon})})]},r.id),"folder"===x(e)&&e.items?.length>0&&t(P,{in:de===e.id,timeout:"auto",children:t(T,{component:"div",disablePadding:!0,sx:{minHeight:"20px"},children:e.items.map(i=>{const r="cond"===x(i)?i.items[0]:i;return o(z,{"aria-label":`sidebar-page-${r.text}`,dense:!0,selected:Z===r.id,onClick:()=>{r.id!==Z&&G.goToPage(r?.id)},sx:{whiteSpace:"normal",pl:4,mt:.5,minHeight:"42px",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[t(E,{children:Se(r)}),t(j,{primary:r.text,slotProps:{primary:{variant:"subtitle1",style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:14,maxWidth:"18ch"}}}}),!U&&t(l,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:t(I,{handleOnEdit:"cond"===x(i)?void 0:()=>{A(i),q("edit")},handleOnMove:"cond"===x(i)?void 0:()=>{A(i),q("move")},handleOnDuplicate:"cond"===x(i)?void 0:()=>{A(i),q("duplicate")},handleOnRemove:async()=>{window.confirm("Vuoi eliminare questa pagina?")&&(await V.removeItem(r),await V.createHistorySnapshot())}})}),e instanceof S&&e.items.length&&t(b,{arrow:!0,title:"Condizione presente",children:t(y,{size:"small",color:"primary",sx:{position:"absolute",right:"folder"===x(e)?48:36,top:"50%",transform:"translateY(-50%)"},children:w.cond.icon})})]},r.id)})})},"c"+e.id)]},i)},H[108]=ee,H[109]=Z,H[110]=V,H[111]=R.pagination,H[112]=G,H[113]=de,H[114]=U,H[115]=Se,H[116]=A,H[117]=q,H[118]=F,H[119]=e):e=H[119],Xe=$.map(e),H[95]=ee,H[96]=Z,H[97]=V,H[98]=R.pagination,H[99]=G,H[100]=de,H[101]=U,H[102]=Se,H[103]=$,H[104]=A,H[105]=q,H[106]=F,H[107]=Xe}else Xe=H[107];return H[120]!==Xe?(Je=t(l,{sx:$e,children:t(T,{component:"nav","aria-label":"sidebar",sx:Ze,children:Xe})}),H[120]=Xe,H[121]=Je):Je=H[121],H[122]!==Ue||H[123]!==Je?(Ke=o(l,{sx:Ce,children:[Ue,We,Je]}),H[122]=Ue,H[123]=Je,H[124]=Ke):Ke=H[124],Ke};export{B as RenderPageStructure};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import"../../../components/common/DrawerCommon.js";import i from"@mui/material/Typography";import t from"@mui/material/Grid";import{jsx as r,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../../components/common/Skeletons.js";import a from"react";import{useFormStateContext as n}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as m}from"../../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as l,useSetQuestionEdit as s}from"../../../providers/editor/QuestionEditProvider.js";import"isomorphic-dompurify";import d from"@mui/material/Box";import c from"@mui/material/Button";import{CogIcon as p,Plus as u,GripVertical as h,NetworkIcon as f}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import g from"@mui/material/IconButton";import"@mui/material/Stack";import b from"@mui/material/Tooltip";import{getMapType as y,Mapper as v}from"../../../utils/config-map.js";import"../../../utils/locale.js";import"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import x from"@mui/material/ListItem";import"@mui/material/TextField";import"../../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import{AddQuestionMenu as I,MoreVerticalItemHover as C}from"../CommonEditor.js";import"../../containers/PageEditor.js";import"@mui/material/Container";import"../../question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import w from"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"../../question_forms/ItemConditionalEditor.js";import"../../question_editor/QuestionPreviewRender.js";import"@mui/material/ToggleButton";import"@mui/material/ToggleButtonGroup";import"@mui/material/Collapse";import S from"@mui/material/List";import P from"@mui/material/ListItemButton";import T from"@mui/material/ListItemIcon";import j from"@mui/material/ListItemText";import{ViewEditorHistory as E}from"../EditorHistoryDrawer.js";import"@mui/material/Popover";import{Droppable as _,Draggable as k,DragDropContext as z}from"@hello-pangea/dnd";import"@mui/material/Breadcrumbs";import"@mui/material/CardHeader";import"@mui/material/Link";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";const D=D=>{const A=e(73),{questionTab:F,setMenuState:M,setCurrentModal:N,setActionItem:q}=D,G=void 0===F?"add":F,{globalConfig:U,formInstance:V}=n(),{editorState:$,navigationState:Y,editorConfig:W}=m(),X=U.readonlyMode,J=Y.currentPage?.id;let K,Z;if(A[0]!==J||A[1]!==V||A[2]!==Y){const e=Y.getPageByIndex(0)?.id;let i;K=Y.currentPageIndex||0,A[5]!==V?(i=e=>{if(e)try{return V.get(e)}catch(i){const t=i;return void console.error("Error getting the page: ",e,t)}},A[5]=V,A[6]=i):i=A[6];const t=i;Z=t(J)??t(e),A[0]=J,A[1]=V,A[2]=Y,A[3]=K,A[4]=Z}else K=A[3],Z=A[4];const ee=Z,ie=Y.currentPage?.folderId;let te;if(ie)try{let e;A[7]!==ie||A[8]!==V?(e=V.get(ie),A[7]=ie,A[8]=V,A[9]=e):e=A[9],te=e}catch(ne){const e=ne;console.error("Error getting current folder:",e),te=V.root}else te=V.root;const re=te,oe=l(),ae=s();let ne;A[10]!==re||A[11]!==ee?.id||A[12]!==K||A[13]!==$||A[14]!==Y||A[15]!==ae?(ne=async e=>{if(0===Y.pageCount){const i=await $.addPage(re,K+1);if(!i)return;await $.addQuestion(e,i?.id),ae({id:i?.items[0].id,isNew:!0}),Y.goToPage(i?.id)}else{const i=await $.addQuestion(e,ee?.id);if(!i)return;ae({id:i.id,isNew:!0})}},A[10]=re,A[11]=ee?.id,A[12]=K,A[13]=$,A[14]=Y,A[15]=ae,A[16]=ne):ne=A[16];const me=ne;let le;A[17]!==$||A[18]!==V.root||A[19]!==Y?(le=async e=>{const i=await $.schemaUpdate(V.root,e);Y.goToPage(i?.id)},A[17]=$,A[18]=V.root,A[19]=Y,A[20]=le):le=A[20];const se=le,[de,ce]=a.useState(!1),[pe,ue]=a.useState(!1),he=B;let fe;A[21]!==oe?(fe=e=>oe.isNew&&oe.id===e.id,A[21]=oe,A[22]=fe):fe=A[22];const ge=fe;let be;A[23]===Symbol.for("react.memo_cache_sentinel")?(be=()=>ue(!0),A[23]=be):be=A[23];const ye=be;let ve;A[24]!==ee?.items||A[25]!==$||A[26]!==V?(ve=async e=>{if(!e.destination||!e.source||!ee?.items)return void ue(!1);const i=e.source.index-1,t=e.destination.index-1;if(i<0||t<0||i===t)ue(!1);else{try{const i=e.draggableId.split("-")[1],r=V.get(i),o=t;await $.moveItem(r,o,void 0,"full"),await $.createHistorySnapshot()}catch(e){const i=e;console.error("Error dragging item",i)}ue(!1)}},A[24]=ee?.items,A[25]=$,A[26]=V,A[27]=ve):ve=A[27];const xe=ve;let Ie;A[28]!==oe||A[29]!==ae?(Ie=e=>{if(oe.id===e.id||y(e)===v.section.type)return;ae({id:e.id,isNew:!1});const i=document.getElementById(`Question-${e.id}`);i&&i.scrollIntoView({behavior:"smooth",block:"center"})},A[28]=oe,A[29]=ae,A[30]=Ie):Ie=A[30];const Ce=Ie,we=R,Se=H,Pe=L;let Te,je,Ee,_e,ke,ze,De,Be,Re,He,Le,Oe,Qe,Ae,Fe,Me;return A[31]===Symbol.for("react.memo_cache_sentinel")?(Te={height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},A[31]=Te):Te=A[31],A[32]===Symbol.for("react.memo_cache_sentinel")?(je={justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},A[32]=je):je=A[32],A[33]===Symbol.for("react.memo_cache_sentinel")?(Ee=r(u,{}),A[33]=Ee):Ee=A[33],A[34]===Symbol.for("react.memo_cache_sentinel")?(_e=()=>ce(!0),A[34]=_e):_e=A[34],A[35]!==X?(ke=r(t,{children:r(c,{id:"new-button",startIcon:Ee,variant:"contained",color:"primary",size:"small",disabled:X,onClick:_e,children:"Nuovo Campo"})}),A[35]=X,A[36]=ke):ke=A[36],A[37]===Symbol.for("react.memo_cache_sentinel")?(ze=r(t,{children:r(E,{})}),A[37]=ze):ze=A[37],A[38]!==ke?(De=o(t,{container:!0,alignItems:"center",spacing:1,children:[ke,ze]}),A[38]=ke,A[39]=De):De=A[39],A[40]!==W.showUserSettings||A[41]!==X||A[42]!==M?(Be=W.showUserSettings&&r(t,{children:r(b,{title:"Impostazioni",arrow:!0,children:r(g,{color:"primary",disabled:X,onClick:()=>M("settings"),children:r(p,{size:20})})})}),A[40]=W.showUserSettings,A[41]=X,A[42]=M,A[43]=Be):Be=A[43],A[44]!==me||A[45]!==se||A[46]!==de||A[47]!==G?(Re=de&&r(I,{mode:"controlled",isOpen:de,setIsOpen:ce,handleAddQuestion:me,handleGenerateSurvey:se,defaultOpenTab:G}),A[44]=me,A[45]=se,A[46]=de,A[47]=G,A[48]=Re):Re=A[48],A[49]!==De||A[50]!==Be||A[51]!==Re?(He=o(t,{container:!0,sx:je,children:[De,Be,Re]}),A[49]=De,A[50]=Be,A[51]=Re,A[52]=He):He=A[52],A[53]===Symbol.for("react.memo_cache_sentinel")?(Le=r(w,{flexItem:!0,sx:{flexShrink:0}}),A[53]=Le):Le=A[53],A[54]===Symbol.for("react.memo_cache_sentinel")?(Oe={flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",overscrollBehavior:"contain",pr:.5},A[54]=Oe):Oe=A[54],A[55]===Symbol.for("react.memo_cache_sentinel")?(Qe={width:"100%",py:0},A[55]=Qe):Qe=A[55],A[56]!==ee?.items||A[57]!==oe||A[58]!==$||A[59]!==Ce||A[60]!==pe||A[61]!==ge||A[62]!==Y||A[63]!==X||A[64]!==q||A[65]!==N?(Ae=r(_,{droppableId:"droppableMain",type:"droppable-items",isDropDisabled:!1,children:e=>o(S,{ref:e.innerRef,dense:!0,style:{width:"100%"},...e?.droppableProps,children:[ee?.items.filter(e=>!ge(e)).map((e,a)=>r(k,{draggableId:`draggable-${e.id}`,isDragDisabled:X||!he(e),index:a+1,children:a=>r(x,{ref:a?.innerRef,...a?.draggableProps,draggable:!1,children:o(P,{onClick:()=>Ce(e),selected:oe.id===e.id,sx:{p:1,borderRadius:1,backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",pointerEvents:pe?"none":"auto",cursor:"pointer",userSelect:"none",overflow:"hidden",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[r(t,{container:!0,justifyContent:"center",alignItems:"center",px:.75,pr:1.75,onClick:O,...a?.dragHandleProps,children:!X&&he(e)&&r(h,{size:20})}),y(e)!==v.section.type&&r(T,{children:Se(e)}),r(j,{id:e.id,primary:o(t,{container:!0,size:12,justifyContent:"space-between",alignItems:"center",spacing:2,mb:y(e)===v.section.type&&e.items?.length?1:0,px:y(e)===v.section.type&&e.items?.length?0:1,children:[o(t,{container:!0,alignItems:"center",spacing:1,flex:1,children:[y(e)===v.section.type&&r(T,{children:Se(e)}),r(t,{children:r(i,{variant:"body1",children:Pe(e)})}),r(t,{children:y(e)===v.cond.type&&r(b,{title:"Condizione presente",arrow:!0,children:r(g,{size:"small",color:"primary",children:r(f,{size:16})})})})]}),!X&&r(t,{children:r(d,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",mr:y(e)===v.section.type?1:0,zIndex:2},children:r(C,{handleOnEdit:y(e)===v.cond.type?void 0:()=>{q(e),N("edit")},handleOnDuplicate:y(e)===v.cond.type?void 0:()=>$.duplicateItem(e,e.parent(),Y.getItem(e.id)?.globalIndex??-1,"full"),handleOnRemove:async()=>{window.confirm("Vuoi eliminare questo campo?")&&(await $.removeItem(e),await $.createHistorySnapshot())}})})})]}),disableTypography:!0,secondary:we(e)&&r(_,{droppableId:`droppable-section-${e.id}`,type:"droppable-section-items",children:(i,a)=>o(S,{ref:i.innerRef,dense:!0,sx:{mt:.5,minHeight:a.isDraggingOver?60:20,backgroundColor:a.isDraggingOver?"action.hover":"transparent",borderRadius:1,transition:"all 0.2s ease",maxHeight:162,overflowY:"auto",scrollbarWidth:"thin",scrollbarColor:"silver transparent"},...i.droppableProps,children:[we(e)?.filter(e=>!ge(e))?.map((e,i)=>r(k,{draggableId:`draggable-${e.id}`,index:i+1,children:i=>r(x,{ref:i?.innerRef,...i?.draggableProps,draggable:!1,sx:{py:.5,px:0,pr:2},children:o(P,{onClick:()=>Ce(e),selected:oe.id===e.id,sx:{p:1,borderRadius:1,backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",pointerEvents:pe?"none":"auto",cursor:"pointer",userSelect:"none",overflow:"hidden",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[r(t,{container:!0,justifyContent:"center",alignItems:"center",px:.75,pr:1.75,onClick:Q,style:{visibility:he(e)?"visible":"hidden"},...i?.dragHandleProps,children:r(h,{size:20})}),r(T,{children:Se(e)}),r(j,{id:e.id,primary:Pe(e),slotProps:{primary:{fontSize:14}}}),r(d,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:r(C,{handleOnEdit:"cond"===y(e)?void 0:()=>{q(e),N("edit")},handleOnDuplicate:"cond"===y(e)?void 0:()=>$.duplicateItem(e,e.parent(),Y.getItem(e.id)?.globalIndex??-1,"full"),handleOnRemove:async()=>{window.confirm("Vuoi eliminare questo campo?")&&(await $.removeItem(e),await $.createHistorySnapshot())}})})]})})},e.id)),i.placeholder]})}),slotProps:{primary:{fontSize:14}}})]})})},e.id)),e.placeholder]})}),A[56]=ee?.items,A[57]=oe,A[58]=$,A[59]=Ce,A[60]=pe,A[61]=ge,A[62]=Y,A[63]=X,A[64]=q,A[65]=N,A[66]=Ae):Ae=A[66],A[67]!==xe||A[68]!==Ae?(Fe=r(d,{sx:Oe,children:r(S,{component:"nav","aria-label":"sidebar",sx:Qe,children:r(z,{onDragStart:ye,onDragEnd:xe,children:Ae})})}),A[67]=xe,A[68]=Ae,A[69]=Fe):Fe=A[69],A[70]!==He||A[71]!==Fe?(Me=o(d,{sx:Te,children:[He,Le,Fe]}),A[70]=He,A[71]=Fe,A[72]=Me):Me=A[72],Me};function B(e){return Boolean(e.isValid()||y(e)===v.sourceList.type)}function R(e){if(!e.items)return null;if(y(e)===v.cond.type){const i=e.items?.[0];return y(i)===v.section.type?i.items:null}return y(e)===v.section.type?e.items:null}function H(e){const i=y(e)===v.cond.type?e.items?.[0]:e;return v[y(i)]?.icon}function L(e){const i=y(e)===v.cond.type?e.items?.[0]:e;return i?.text}function O(e){return e.stopPropagation()}function Q(e){return e.stopPropagation()}export{D as RenderQuestionStructure};
1
+ import{c as e}from"react/compiler-runtime";import"../../../components/common/DrawerCommon.js";import i from"@mui/material/Typography";import t from"@mui/material/Grid";import{jsx as r,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../../components/common/Skeletons.js";import a from"react";import{useFormStateContext as n}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as m}from"../../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as l,useSetQuestionEdit as s}from"../../../providers/editor/QuestionEditProvider.js";import"isomorphic-dompurify";import d from"@mui/material/Box";import c from"@mui/material/Button";import{CogIcon as p,Plus as u,GripVertical as h,NetworkIcon as f}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import g from"@mui/material/IconButton";import"@mui/material/Stack";import b from"@mui/material/Tooltip";import{getMapType as y,Mapper as v}from"../../../utils/config-map.js";import"../../../utils/locale.js";import"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import x from"@mui/material/ListItem";import"@mui/material/TextField";import"../../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import{AddQuestionMenu as I,MoreVerticalItemHover as w}from"../CommonEditor.js";import"../../containers/PageEditor.js";import"@mui/material/Container";import"../../question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import C from"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"../../question_forms/ItemConditionalEditor.js";import"../../question_forms/QuestionDateEditor.js";import"../../question_editor/QuestionPreviewRender.js";import"@mui/material/ToggleButton";import"@mui/material/ToggleButtonGroup";import"@mui/material/Breadcrumbs";import"@mui/material/CardHeader";import"@mui/material/Link";import"@mui/material/Collapse";import S from"@mui/material/List";import P from"@mui/material/ListItemButton";import j from"@mui/material/ListItemIcon";import T from"@mui/material/ListItemText";import{ViewEditorHistory as E}from"../EditorHistoryDrawer.js";import"@mui/material/Popover";import{Droppable as _,Draggable as k,DragDropContext as D}from"@hello-pangea/dnd";import"./SidebarSettingsView.js";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";const z=z=>{const q=e(73),{questionTab:A,setMenuState:F,setCurrentModal:M,setActionItem:N}=z,G=void 0===A?"add":A,{globalConfig:V,formInstance:U}=n(),{editorState:$,navigationState:Y,editorConfig:W}=m(),X=V.readonlyMode,J=Y.currentPage?.id;let K,Z;if(q[0]!==J||q[1]!==U||q[2]!==Y){const e=Y.getPageByIndex(0)?.id;let i;K=Y.currentPageIndex||0,q[5]!==U?(i=e=>{if(e)try{return U.get(e)}catch(i){const t=i;return void console.error("Error getting the page: ",e,t)}},q[5]=U,q[6]=i):i=q[6];const t=i;Z=t(J)??t(e),q[0]=J,q[1]=U,q[2]=Y,q[3]=K,q[4]=Z}else K=q[3],Z=q[4];const ee=Z,ie=Y.currentPage?.folderId;let te;if(ie)try{let e;q[7]!==ie||q[8]!==U?(e=U.get(ie),q[7]=ie,q[8]=U,q[9]=e):e=q[9],te=e}catch(ne){const e=ne;console.error("Error getting current folder:",e),te=U.root}else te=U.root;const re=te,oe=l(),ae=s();let ne;q[10]!==re||q[11]!==ee?.id||q[12]!==K||q[13]!==$||q[14]!==Y||q[15]!==ae?(ne=async e=>{if(0===Y.pageCount){const i=await $.addPage(re,K+1);if(!i)return;await $.addQuestion(e,i?.id),ae({id:i?.items[0].id,isNew:!0}),Y.goToPage(i?.id)}else{const i=await $.addQuestion(e,ee?.id);if(!i)return;ae({id:i.id,isNew:!0})}},q[10]=re,q[11]=ee?.id,q[12]=K,q[13]=$,q[14]=Y,q[15]=ae,q[16]=ne):ne=q[16];const me=ne;let le;q[17]!==$||q[18]!==U.root||q[19]!==Y?(le=async e=>{const i=await $.schemaUpdate(U.root,e);Y.goToPage(i?.id)},q[17]=$,q[18]=U.root,q[19]=Y,q[20]=le):le=q[20];const se=le,[de,ce]=a.useState(!1),[pe,ue]=a.useState(!1),he=B;let fe;q[21]!==oe?(fe=e=>oe.isNew&&oe.id===e.id,q[21]=oe,q[22]=fe):fe=q[22];const ge=fe;let be;q[23]===Symbol.for("react.memo_cache_sentinel")?(be=()=>ue(!0),q[23]=be):be=q[23];const ye=be;let ve;q[24]!==ee?.items||q[25]!==$||q[26]!==U?(ve=async e=>{if(!e.destination||!e.source||!ee?.items)return void ue(!1);const i=e.source.index-1,t=e.destination.index-1;if(i<0||t<0||i===t)ue(!1);else{try{const i=e.draggableId.split("-")[1],r=U.get(i),o=t;await $.moveItem(r,o,void 0,"full"),await $.createHistorySnapshot()}catch(e){const i=e;console.error("Error dragging item",i)}ue(!1)}},q[24]=ee?.items,q[25]=$,q[26]=U,q[27]=ve):ve=q[27];const xe=ve;let Ie;q[28]!==oe||q[29]!==ae?(Ie=e=>{if(oe.id===e.id||y(e)===v.section.type)return;ae({id:e.id,isNew:!1});const i=document.getElementById(`Question-${e.id}`);i&&i.scrollIntoView({behavior:"smooth",block:"center"})},q[28]=oe,q[29]=ae,q[30]=Ie):Ie=q[30];const we=Ie,Ce=R,Se=H,Pe=L;let je,Te,Ee,_e,ke,De,ze,Be,Re,He,Le,Oe,Qe,qe,Ae,Fe;return q[31]===Symbol.for("react.memo_cache_sentinel")?(je={height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},q[31]=je):je=q[31],q[32]===Symbol.for("react.memo_cache_sentinel")?(Te={justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},q[32]=Te):Te=q[32],q[33]===Symbol.for("react.memo_cache_sentinel")?(Ee=r(u,{}),q[33]=Ee):Ee=q[33],q[34]===Symbol.for("react.memo_cache_sentinel")?(_e=()=>ce(!0),q[34]=_e):_e=q[34],q[35]!==X?(ke=r(t,{children:r(c,{id:"new-button",startIcon:Ee,variant:"contained",color:"primary",size:"small",disabled:X,onClick:_e,children:"Nuovo Campo"})}),q[35]=X,q[36]=ke):ke=q[36],q[37]===Symbol.for("react.memo_cache_sentinel")?(De=r(t,{children:r(E,{})}),q[37]=De):De=q[37],q[38]!==ke?(ze=o(t,{container:!0,alignItems:"center",spacing:1,children:[ke,De]}),q[38]=ke,q[39]=ze):ze=q[39],q[40]!==W.showUserSettings||q[41]!==X||q[42]!==F?(Be=W.showUserSettings&&r(t,{children:r(b,{title:"Impostazioni",arrow:!0,children:r(g,{color:"primary",disabled:X,onClick:()=>F("settings"),children:r(p,{size:20})})})}),q[40]=W.showUserSettings,q[41]=X,q[42]=F,q[43]=Be):Be=q[43],q[44]!==me||q[45]!==se||q[46]!==de||q[47]!==G?(Re=de&&r(I,{mode:"controlled",isOpen:de,setIsOpen:ce,handleAddQuestion:me,handleGenerateSurvey:se,defaultOpenTab:G}),q[44]=me,q[45]=se,q[46]=de,q[47]=G,q[48]=Re):Re=q[48],q[49]!==ze||q[50]!==Be||q[51]!==Re?(He=o(t,{container:!0,sx:Te,children:[ze,Be,Re]}),q[49]=ze,q[50]=Be,q[51]=Re,q[52]=He):He=q[52],q[53]===Symbol.for("react.memo_cache_sentinel")?(Le=r(C,{flexItem:!0,sx:{flexShrink:0}}),q[53]=Le):Le=q[53],q[54]===Symbol.for("react.memo_cache_sentinel")?(Oe={flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",overscrollBehavior:"contain",pr:.5},q[54]=Oe):Oe=q[54],q[55]===Symbol.for("react.memo_cache_sentinel")?(Qe={width:"100%",py:0},q[55]=Qe):Qe=q[55],q[56]!==ee?.items||q[57]!==oe||q[58]!==$||q[59]!==we||q[60]!==pe||q[61]!==ge||q[62]!==Y||q[63]!==X||q[64]!==N||q[65]!==M?(qe=r(_,{droppableId:"droppableMain",type:"droppable-items",isDropDisabled:!1,children:e=>o(S,{ref:e.innerRef,dense:!0,style:{width:"100%"},...e?.droppableProps,children:[ee?.items.filter(e=>!ge(e)).map((e,a)=>r(k,{draggableId:`draggable-${e.id}`,isDragDisabled:X||!he(e),index:a+1,children:a=>r(x,{ref:a?.innerRef,...a?.draggableProps,draggable:!1,children:o(P,{onClick:()=>we(e),selected:oe.id===e.id,sx:{p:1,borderRadius:1,backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",pointerEvents:pe?"none":"auto",cursor:"pointer",userSelect:"none",overflow:"hidden",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[r(t,{container:!0,justifyContent:"center",alignItems:"center",px:.75,pr:1.75,onClick:O,...a?.dragHandleProps,children:!X&&he(e)&&r(h,{size:20})}),y(e)!==v.section.type&&r(j,{children:Se(e)}),r(T,{id:e.id,primary:o(t,{container:!0,size:12,justifyContent:"space-between",alignItems:"center",spacing:2,mb:y(e)===v.section.type&&e.items?.length?1:0,px:y(e)===v.section.type&&e.items?.length?0:1,children:[o(t,{container:!0,alignItems:"center",spacing:1,flex:1,children:[y(e)===v.section.type&&r(j,{children:Se(e)}),r(t,{children:r(i,{variant:"body1",children:Pe(e)})}),r(t,{children:y(e)===v.cond.type&&r(b,{title:"Condizione presente",arrow:!0,children:r(g,{size:"small",color:"primary",children:r(f,{size:16})})})})]}),!X&&r(t,{children:r(d,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",mr:y(e)===v.section.type?1:0,zIndex:2},children:r(w,{handleOnEdit:y(e)===v.cond.type?void 0:()=>{N(e),M("edit")},handleOnDuplicate:y(e)===v.cond.type?void 0:()=>$.duplicateItem(e,e.parent(),Y.getItem(e.id)?.globalIndex??-1,"full"),handleOnRemove:async()=>{window.confirm("Vuoi eliminare questo campo?")&&(await $.removeItem(e),await $.createHistorySnapshot())}})})})]}),disableTypography:!0,secondary:Ce(e)&&r(_,{droppableId:`droppable-section-${e.id}`,type:"droppable-section-items",children:(i,a)=>o(S,{ref:i.innerRef,dense:!0,sx:{mt:.5,minHeight:a.isDraggingOver?60:20,backgroundColor:a.isDraggingOver?"action.hover":"transparent",borderRadius:1,transition:"all 0.2s ease",maxHeight:162,overflowY:"auto",scrollbarWidth:"thin",scrollbarColor:"silver transparent"},...i.droppableProps,children:[Ce(e)?.filter(e=>!ge(e))?.map((e,i)=>r(k,{draggableId:`draggable-${e.id}`,index:i+1,children:i=>r(x,{ref:i?.innerRef,...i?.draggableProps,draggable:!1,sx:{py:.5,px:0,pr:2},children:o(P,{onClick:()=>we(e),selected:oe.id===e.id,sx:{p:1,borderRadius:1,backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",pointerEvents:pe?"none":"auto",cursor:"pointer",userSelect:"none",overflow:"hidden",position:"relative","&:hover .more-vertical-hover":{visibility:"visible",pointerEvents:"auto"}},children:[r(t,{container:!0,justifyContent:"center",alignItems:"center",px:.75,pr:1.75,onClick:Q,style:{visibility:he(e)?"visible":"hidden"},...i?.dragHandleProps,children:r(h,{size:20})}),r(j,{children:Se(e)}),r(T,{id:e.id,primary:Pe(e),slotProps:{primary:{fontSize:14}}}),r(d,{className:"more-vertical-hover",sx:{visibility:"hidden",pointerEvents:"none",position:"absolute",right:8,top:"50%",transform:"translateY(-50%)",zIndex:2},children:r(w,{handleOnEdit:"cond"===y(e)?void 0:()=>{N(e),M("edit")},handleOnDuplicate:"cond"===y(e)?void 0:()=>$.duplicateItem(e,e.parent(),Y.getItem(e.id)?.globalIndex??-1,"full"),handleOnRemove:async()=>{window.confirm("Vuoi eliminare questo campo?")&&(await $.removeItem(e),await $.createHistorySnapshot())}})})]})})},e.id)),i.placeholder]})}),slotProps:{primary:{fontSize:14}}})]})})},e.id)),e.placeholder]})}),q[56]=ee?.items,q[57]=oe,q[58]=$,q[59]=we,q[60]=pe,q[61]=ge,q[62]=Y,q[63]=X,q[64]=N,q[65]=M,q[66]=qe):qe=q[66],q[67]!==xe||q[68]!==qe?(Ae=r(d,{sx:Oe,children:r(S,{component:"nav","aria-label":"sidebar",sx:Qe,children:r(D,{onDragStart:ye,onDragEnd:xe,children:qe})})}),q[67]=xe,q[68]=qe,q[69]=Ae):Ae=q[69],q[70]!==He||q[71]!==Ae?(Fe=o(d,{sx:je,children:[He,Le,Ae]}),q[70]=He,q[71]=Ae,q[72]=Fe):Fe=q[72],Fe};function B(e){return Boolean(e.isValid()||y(e)===v.sourceList.type)}function R(e){if(!e.items)return null;if(y(e)===v.cond.type){const i=e.items?.[0];return y(i)===v.section.type?i.items:null}return y(e)===v.section.type?e.items:null}function H(e){const i=y(e)===v.cond.type?e.items?.[0]:e;return v[y(i)]?.icon}function L(e){const i=y(e)===v.cond.type?e.items?.[0]:e;return i?.text}function O(e){return e.stopPropagation()}function Q(e){return e.stopPropagation()}export{z as RenderQuestionStructure};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import{useFormStateContext as t}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as i}from"../../../providers/editor/EditorStateProvider.js";import r,{createElement as o}from"react";import{jsxs as l,jsx as a,Fragment as n}from"react/jsx-runtime";import c from"@mui/material/Box";import s from"@mui/material/Button";import m from"@mui/material/Checkbox";import h from"@mui/material/Divider";import d from"@mui/material/FormControl";import u from"@mui/material/Grid";import g from"@mui/material/IconButton";import p from"@mui/material/TextField";import y from"@mui/material/Autocomplete";import f from"@mui/material/ToggleButton";import v from"@mui/material/ToggleButtonGroup";import b from"@mui/material/Tooltip";import x from"@mui/material/Typography";import{HelpCircleIcon as z,PanelLeftIcon as S,PanelLeftDashedIcon as w,ListOrderedIcon as C,TextAlignJustifyIcon as I,LoaderCircleIcon as _,MinusIcon as k,CircleCheckIcon as W,TrendingUpDownIcon as j,ArrowLeftIcon as B,CogIcon as R,SquareChartGanttIcon as P,UngroupIcon as q}from"lucide-react";import{RenderSelectModal as T}from"../HierarchyEditor.js";import L from"@mui/material/ListItem";const O=e=>e.reduce((e,t)=>({...e,[t]:t}),{}),V=o=>{const m=e(84),{setMenuState:p}=o,{formInfo:L,formInstance:V,globalConfig:G}=t(),{editorState:H,navigationState:M,compilerConfig:$}=i();let A;m[0]!==G.sourceConfig?.staticSources?(A=G.sourceConfig?.staticSources||[],m[0]=G.sourceConfig?.staticSources,m[1]=A):A=m[1];const J=A,K=G.sourceConfig?.onSaveSources,Q=M.currentPage?.id;let U;if(Q)try{let e;m[2]!==Q||m[3]!==V?(e=V.get(Q),m[2]=Q,m[3]=V,m[4]=e):e=m[4],U=e}catch(Y){const e=Y;console.error("Error getting current page:",e),U=V.root}else U=V.root;const X=U;let Y;m[5]!==H||m[6]!==V?(Y=(e,t)=>{V&&t&&H.updateItem(V.root,"layout",{...V.root.layout,...t})},m[5]=H,m[6]=V,m[7]=Y):Y=m[7];const Z=Y,[ee,te]=r.useState(!1),ie=V?.root.layout?.score||L?.score;let re;e:{if(V?.root.layout?.sources){let e;m[8]!==V.root.layout.sources?(e=Object.keys(V.root.layout.sources),m[8]=V.root.layout.sources,m[9]=e):e=m[9],re=e;break e}if(L?.sources){let e;m[10]!==L.sources?(e=Object.keys(L.sources),m[10]=L.sources,m[11]=e):e=m[11],re=e;break e}let e;m[12]===Symbol.for("react.memo_cache_sentinel")?(e=[],m[12]=e):e=m[12],re=e}const oe=re;let le;m[13]!==H||m[14]!==V.root||m[15]!==K||m[16]!==ie?(le=async(e,t)=>{const i=t.map(F);H.updateItem(V.root,"layout",{...V.root.layout,sources:O(i)}),await(K?.(O(i),ie))},m[13]=H,m[14]=V.root,m[15]=K,m[16]=ie,m[17]=le):le=m[17];const ae=le;let ne;m[18]!==H||m[19]!==V.root||m[20]!==K||m[21]!==oe?(ne=async e=>{e&&(H.updateItem(V.root,"layout",{...V.root.layout,score:e.nextContainer.items[e.nextIndex].id}),await(K?.(O(oe),e.nextContainer.items[e.nextIndex]?.id)))},m[18]=H,m[19]=V.root,m[20]=K,m[21]=oe,m[22]=ne):ne=m[22];const ce=ne;let se,me,he,de,ue,ge,pe,ye,fe,ve,be,xe,ze;m[23]===Symbol.for("react.memo_cache_sentinel")?(se={height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},m[23]=se):se=m[23],m[24]===Symbol.for("react.memo_cache_sentinel")?(me={justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},m[24]=me):me=m[24],m[25]!==p?(he=()=>p("structure"),m[25]=p,m[26]=he):he=m[26],m[27]===Symbol.for("react.memo_cache_sentinel")?(de=a(B,{size:20}),m[27]=de):de=m[27],m[28]!==he?(ue=a(u,{children:a(g,{onClick:he,children:de})}),m[28]=he,m[29]=ue):ue=m[29],m[30]===Symbol.for("react.memo_cache_sentinel")?(ge=a(u,{children:a(x,{variant:"h6",fontWeight:"normal",children:"Impostazioni"})}),m[30]=ge):ge=m[30],m[31]!==ue?(pe=l(u,{container:!0,alignItems:"center",spacing:1,children:[ue,ge]}),m[31]=ue,m[32]=pe):pe=m[32],m[33]===Symbol.for("react.memo_cache_sentinel")?(ye=a(u,{children:a(b,{title:"Impostazioni",arrow:!0,children:a(g,{color:"primary",children:a(R,{size:20})})})}),m[33]=ye):ye=m[33],m[34]!==pe?(fe=l(u,{container:!0,sx:me,children:[pe,ye]}),m[34]=pe,m[35]=fe):fe=m[35],m[36]===Symbol.for("react.memo_cache_sentinel")?(ve=a(h,{flexItem:!0,sx:{flexShrink:0}}),m[36]=ve):ve=m[36],m[37]===Symbol.for("react.memo_cache_sentinel")?(be={flex:1,minHeight:0,display:"flex",flexDirection:"column",position:"relative",p:2,gap:2},m[37]=be):be=m[37],m[38]===Symbol.for("react.memo_cache_sentinel")?(xe=a(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Layout campi"}),m[38]=xe):xe=m[38],m[39]===Symbol.for("react.memo_cache_sentinel")?(ze=l(u,{size:12,container:!0,justifyContent:"space-between",children:[xe,a(b,{title:"Stile di visualizzazione delle domande",arrow:!0,children:a(g,{size:"small",color:"primary",children:a(z,{style:{width:16,height:16}})})})]}),m[39]=ze):ze=m[39];const Se=V?.root.layout?.pageStyle||"single-card";let we,Ce,Ie,_e,ke,We,je,Be,Re,Pe,qe;return m[40]!==Z?(we=(e,t)=>Z(e,{pageStyle:t}),m[40]=Z,m[41]=we):we=m[41],m[42]===Symbol.for("react.memo_cache_sentinel")?(Ce=l(f,{value:"single-card",children:[a(P,{style:{width:16,height:16,marginRight:6}}),"Scheda unica"]}),m[42]=Ce):Ce=m[42],m[43]===Symbol.for("react.memo_cache_sentinel")?(Ie=l(f,{value:"multi-card",children:[a(q,{style:{width:16,height:16,marginRight:6}}),"Campi separati"]}),m[43]=Ie):Ie=m[43],m[44]!==Se||m[45]!==we?(_e=l(u,{size:12,mt:2,children:[ze,l(v,{color:"primary",exclusive:!0,value:Se,size:"small",fullWidth:!0,onChange:we,children:[Ce,Ie]})]}),m[44]=Se,m[45]=we,m[46]=_e):_e=m[46],m[47]!==$.sidebar||m[48]!==V.root.layout?.sidebar||m[49]!==Z?(ke="user"===$.sidebar&&l(u,{size:12,mt:2,children:[l(u,{size:12,container:!0,justifyContent:"space-between",children:[a(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Barra laterale"}),a(b,{title:"Visibilità della barra laterale",arrow:!0,children:a(g,{size:"small",color:"primary",children:a(z,{style:{width:16,height:16}})})})]}),l(v,{color:"primary",exclusive:!0,value:V?.root.layout?.sidebar||"visible",size:"small",fullWidth:!0,onChange:(e,t)=>Z(e,{sidebar:t}),children:[l(f,{value:"visible",children:[a(S,{style:{width:16,height:16,marginRight:6}}),"Visibile"]}),l(f,{value:"hidden",children:[a(w,{style:{width:16,height:16,marginRight:6}}),"Nascosta"]})]})]}),m[47]=$.sidebar,m[48]=V.root.layout?.sidebar,m[49]=Z,m[50]=ke):ke=m[50],m[51]!==V.root.layout?.questionIndex||m[52]!==G.questionIndex||m[53]!==Z?(We="user"===G.questionIndex&&l(u,{size:12,mt:2,children:[l(u,{size:12,container:!0,justifyContent:"space-between",children:[a(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Indice domande"}),a(b,{title:"Visibilità dell'indice domande",arrow:!0,children:a(g,{size:"small",color:"primary",children:a(z,{style:{width:16,height:16}})})})]}),l(v,{color:"primary",exclusive:!0,value:V?.root.layout?.questionIndex||"visible",size:"small",fullWidth:!0,onChange:(e,t)=>Z(e,{questionIndex:t}),children:[l(f,{value:"visible",children:[a(C,{style:{width:16,height:16,marginRight:6}}),"Visibile"]}),l(f,{value:"hidden",children:[a(I,{style:{width:16,height:16,marginRight:6}}),"Nascosta"]})]})]}),m[51]=V.root.layout?.questionIndex,m[52]=G.questionIndex,m[53]=Z,m[54]=We):We=m[54],m[55]!==$.compilerProgress||m[56]!==V.root.layout?.compilerProgress||m[57]!==Z?(je="user"===$.compilerProgress&&l(u,{size:12,mt:2,children:[l(u,{size:12,container:!0,justifyContent:"space-between",children:[a(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Barra di avanzamento"}),a(b,{title:"Tipo di barra di avanzamento",arrow:!0,children:a(g,{size:"small",color:"primary",children:a(z,{style:{width:16,height:16}})})})]}),l(v,{color:"primary",exclusive:!0,value:V?.root.layout?.compilerProgress||"circular",size:"small",fullWidth:!0,onChange:(e,t)=>Z(e,{compilerProgress:t}),children:[l(f,{value:"circular",children:[a(_,{style:{width:16,height:16,marginRight:6}}),"Circolare"]}),l(f,{value:"linear",children:[a(k,{style:{width:16,height:16,marginRight:6}}),"Lineare"]})]})]}),m[55]=$.compilerProgress,m[56]=V.root.layout?.compilerProgress,m[57]=Z,m[58]=je):je=m[58],m[59]!==$.navigation||m[60]!==V.root.layout?.navigation||m[61]!==Z?(Be="user"===$.navigation&&l(u,{size:12,mt:2,children:[l(u,{size:12,container:!0,justifyContent:"space-between",children:[a(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Navigazione pagine"}),a(b,{title:"Seleziona tra navigazione vincolata dal completamento delle pagine o libera",arrow:!0,children:a(g,{size:"small",color:"primary",children:a(z,{style:{width:16,height:16}})})})]}),l(v,{color:"primary",exclusive:!0,value:V?.root.layout?.navigation||"strict",size:"small",fullWidth:!0,onChange:(e,t)=>Z(e,{navigation:t}),children:[l(f,{value:"strict",children:[a(W,{style:{width:16,height:16,marginRight:6}}),"Vincolata"]}),l(f,{value:"free",children:[a(j,{style:{width:16,height:16,marginRight:6}}),"Libera"]})]})]}),m[59]=$.navigation,m[60]=V.root.layout?.navigation,m[61]=Z,m[62]=Be):Be=m[62],m[63]!==X||m[64]!==V||m[65]!==ce||m[66]!==ae||m[67]!==M||m[68]!==K||m[69]!==ie||m[70]!==oe||m[71]!==ee||m[72]!==J?(Re=K&&J.length>0&&l(n,{children:[a(h,{flexItem:!0,sx:{flexShrink:0,my:2}}),l(c,{children:[a(x,{variant:"h6",fontWeight:"normal",children:"Fonti dati"}),a(c,{children:a(d,{size:"small",sx:{width:"100%"},children:a(y,{multiple:!0,disableCloseOnSelect:!0,options:J,getOptionLabel:D,size:"small",value:J.filter(e=>oe.includes(e.value)),onChange:ae,renderOption:E,renderInput:N})})}),a(c,{children:a(d,{sx:{width:"100%",mt:2},children:a(s,{variant:"outlined",fullWidth:!0,onClick:()=>te(!0),children:ie?`${M.getItem(ie)?.globalIndex}. ${V.get(ie).text}`:"Seleziona Score"})})})]}),X&&a(T,{question:X,open:ee,closeModal:()=>te(!1),select:ce})]}),m[63]=X,m[64]=V,m[65]=ce,m[66]=ae,m[67]=M,m[68]=K,m[69]=ie,m[70]=oe,m[71]=ee,m[72]=J,m[73]=Re):Re=m[73],m[74]!==_e||m[75]!==ke||m[76]!==We||m[77]!==je||m[78]!==Be||m[79]!==Re?(Pe=l(c,{sx:be,children:[_e,ke,We,je,Be,Re]}),m[74]=_e,m[75]=ke,m[76]=We,m[77]=je,m[78]=Be,m[79]=Re,m[80]=Pe):Pe=m[80],m[81]!==fe||m[82]!==Pe?(qe=l(c,{sx:se,children:[fe,ve,Pe]}),m[81]=fe,m[82]=Pe,m[83]=qe):qe=m[83],qe};function F(e){return e.value}function D(e){return e.label}function E(e,t,i){const{selected:r}=i;return o(L,{...e,key:e.key,dense:!0},a(m,{style:{marginRight:8},checked:!!r}),t.label)}function N(e){return a(p,{...e,label:"Sorgenti dati"})}export{V as RenderSettings};
1
+ import{useFormStateContext as e}from"../../../providers/common/FormStateProvider.js";import{useEditorStateContext as i}from"../../../providers/editor/EditorStateProvider.js";import"react/compiler-runtime";import t,{createElement as r}from"react";import{jsxs as o,jsx as l,Fragment as a}from"react/jsx-runtime";import n from"@mui/material/Box";import c from"@mui/material/Button";import s from"@mui/material/Checkbox";import m from"@mui/material/Divider";import h from"@mui/material/FormControl";import d from"@mui/material/Grid";import u from"@mui/material/IconButton";import g from"@mui/material/TextField";import p from"@mui/material/Autocomplete";import y from"@mui/material/ToggleButton";import f from"@mui/material/ToggleButtonGroup";import v from"@mui/material/Tooltip";import x from"@mui/material/Typography";import{ArrowLeftIcon as b,CogIcon as z,HelpCircleIcon as w,SquareChartGanttIcon as C,UngroupIcon as I,PanelLeftIcon as S,PanelLeftDashedIcon as j,ListOrderedIcon as W,TextAlignJustifyIcon as k,LoaderCircleIcon as B,MinusIcon as R,CircleCheckIcon as T,TrendingUpDownIcon as L}from"lucide-react";import{RenderSelectModal as P}from"../HierarchyEditor.js";import{Mapper as q,getMapType as O}from"../../../utils/config-map.js";import"../../../utils/locale.js";import"@famalabs/survey";import"acorn";import V from"@mui/material/ListItem";const E=e=>e.reduce((e,i)=>({...e,[i]:i}),{}),F=F=>{const{setMenuState:N}=F,{formInfo:A,formInstance:G,globalConfig:H}=e(),{editorState:M,navigationState:$,compilerConfig:J}=i(),K=H.sourceConfig?.staticSources||[],Q=H.sourceConfig?.onSaveSources,U=$.currentPage?.id,X=(()=>{if(!U)return G.root;try{return G.get(U)}catch(e){return console.error("Error getting current page:",e),G.root}})(),Y=(e,i)=>{G&&i&&M.updateItem(G.root,"layout",{...G.root.layout,...i})},[Z,_]=t.useState(!1),ee=G?.root.layout?.score||A?.score,ie=G?.root.layout?.sources?Object.keys(G.root.layout.sources):A?.sources?Object.keys(A.sources):[],te=(()=>{try{return ee?G.get(ee):null}catch{return console.error("Error getting saved score question"),null}})();return o(n,{sx:{height:"100%",flex:1,overflow:"hidden",display:"flex",flexDirection:"column",gap:2},children:[o(d,{container:!0,sx:{justifyContent:"space-between",alignItems:"center",px:1,flexShrink:0},children:[o(d,{container:!0,alignItems:"center",spacing:1,children:[l(d,{children:l(u,{onClick:()=>N("structure"),children:l(b,{size:20})})}),l(d,{children:l(x,{variant:"h6",fontWeight:"normal",children:"Impostazioni"})})]}),l(d,{children:l(v,{title:"Impostazioni",arrow:!0,children:l(u,{color:"primary",children:l(z,{size:20})})})})]}),l(m,{flexItem:!0,sx:{flexShrink:0}}),o(n,{sx:{flex:1,minHeight:0,display:"flex",flexDirection:"column",position:"relative",p:2,gap:2},children:[o(d,{size:12,mt:2,children:[o(d,{size:12,container:!0,justifyContent:"space-between",children:[l(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Layout campi"}),l(v,{title:"Stile di visualizzazione delle domande",arrow:!0,children:l(u,{size:"small",color:"primary",children:l(w,{style:{width:16,height:16}})})})]}),o(f,{color:"primary",exclusive:!0,value:G?.root.layout?.pageStyle||"single-card",size:"small",fullWidth:!0,onChange:(e,i)=>Y(0,{pageStyle:i}),children:[o(y,{value:"single-card",children:[l(C,{style:{width:16,height:16,marginRight:6}}),"Scheda unica"]}),o(y,{value:"multi-card",children:[l(I,{style:{width:16,height:16,marginRight:6}}),"Campi separati"]})]})]}),"user"===J.sidebar&&o(d,{size:12,mt:2,children:[o(d,{size:12,container:!0,justifyContent:"space-between",children:[l(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Barra laterale"}),l(v,{title:"Visibilità della barra laterale",arrow:!0,children:l(u,{size:"small",color:"primary",children:l(w,{style:{width:16,height:16}})})})]}),o(f,{color:"primary",exclusive:!0,value:G?.root.layout?.sidebar||"visible",size:"small",fullWidth:!0,onChange:(e,i)=>Y(0,{sidebar:i}),children:[o(y,{value:"visible",children:[l(S,{style:{width:16,height:16,marginRight:6}}),"Visibile"]}),o(y,{value:"hidden",children:[l(j,{style:{width:16,height:16,marginRight:6}}),"Nascosta"]})]})]}),"user"===H.questionIndex&&o(d,{size:12,mt:2,children:[o(d,{size:12,container:!0,justifyContent:"space-between",children:[l(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Indice domande"}),l(v,{title:"Visibilità dell'indice domande",arrow:!0,children:l(u,{size:"small",color:"primary",children:l(w,{style:{width:16,height:16}})})})]}),o(f,{color:"primary",exclusive:!0,value:G?.root.layout?.questionIndex||"visible",size:"small",fullWidth:!0,onChange:(e,i)=>Y(0,{questionIndex:i}),children:[o(y,{value:"visible",children:[l(W,{style:{width:16,height:16,marginRight:6}}),"Visibile"]}),o(y,{value:"hidden",children:[l(k,{style:{width:16,height:16,marginRight:6}}),"Nascosta"]})]})]}),"user"===J.compilerProgress&&o(d,{size:12,mt:2,children:[o(d,{size:12,container:!0,justifyContent:"space-between",children:[l(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Barra di avanzamento"}),l(v,{title:"Tipo di barra di avanzamento",arrow:!0,children:l(u,{size:"small",color:"primary",children:l(w,{style:{width:16,height:16}})})})]}),o(f,{color:"primary",exclusive:!0,value:G?.root.layout?.compilerProgress||"circular",size:"small",fullWidth:!0,onChange:(e,i)=>Y(0,{compilerProgress:i}),children:[o(y,{value:"circular",children:[l(B,{style:{width:16,height:16,marginRight:6}}),"Circolare"]}),o(y,{value:"linear",children:[l(R,{style:{width:16,height:16,marginRight:6}}),"Lineare"]})]})]}),"user"===J.navigation&&o(d,{size:12,mt:2,children:[o(d,{size:12,container:!0,justifyContent:"space-between",children:[l(x,{variant:"h6",gutterBottom:!0,fontWeight:"normal",children:"Navigazione pagine"}),l(v,{title:"Seleziona tra navigazione vincolata dal completamento delle pagine o libera",arrow:!0,children:l(u,{size:"small",color:"primary",children:l(w,{style:{width:16,height:16}})})})]}),o(f,{color:"primary",exclusive:!0,value:G?.root.layout?.navigation||"strict",size:"small",fullWidth:!0,onChange:(e,i)=>Y(0,{navigation:i}),children:[o(y,{value:"strict",children:[l(T,{style:{width:16,height:16,marginRight:6}}),"Vincolata"]}),o(y,{value:"free",children:[l(L,{style:{width:16,height:16,marginRight:6}}),"Libera"]})]})]}),Q&&K.length>0&&o(a,{children:[l(m,{flexItem:!0,sx:{flexShrink:0,my:2}}),o(n,{children:[l(x,{variant:"h6",fontWeight:"normal",children:"Fonti dati"}),l(n,{children:l(h,{size:"small",sx:{width:"100%"},children:l(p,{multiple:!0,disableCloseOnSelect:!0,options:K,getOptionLabel:e=>e.label,size:"small",value:K.filter(e=>ie.includes(e.value)),onChange:async(e,i)=>{const t=i.map(e=>e.value);M.updateItem(G.root,"layout",{...G.root.layout,sources:E(t)}),await(Q?.(E(t),ee))},renderOption:(e,i,{selected:t})=>r(V,{...e,key:e.key,dense:!0},l(s,{style:{marginRight:8},checked:!!t}),i.label),renderInput:e=>l(g,{...e,label:"Sorgenti dati"})})})}),l(n,{children:l(h,{sx:{width:"100%",mt:2},children:l(c,{variant:"outlined",fullWidth:!0,onClick:()=>_(!0),startIcon:te?q[O(te)].icon:null,children:ee?`${$.getItem(ee)?.globalIndex}. ${te?.text}`:"Seleziona Score"})})})]}),X&&l(P,{question:X,open:Z,closeModal:()=>_(!1),select:async e=>{e&&(M.updateItem(G.root,"layout",{...G.root.layout,score:e.nextContainer.items[e.nextIndex].id}),await(Q?.(E(ie),e.nextContainer.items[e.nextIndex]?.id)))},selectableItemTypes:D})]})]})]})},D=[q.check.type,q.date.type,q.dropdown.type,q.fn.type,q.number.type,q.range.type,q.select.type,q.selectTable.type,q.switch.type,q.text.type,q.textArea.type,q.time.type,q.sourceList.type];export{F as RenderSettings};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import{useFormStateContext as t}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as i}from"../../providers/editor/EditorStateProvider.js";import{useSetQuestionEdit as o}from"../../providers/editor/QuestionEditProvider.js";import r from"react";import{jsx as n,jsxs as a}from"react/jsx-runtime";import m from"@mui/material/Box";import l from"@mui/material/Paper";import d from"@mui/material/Stack";import{ViewportList as s}from"react-viewport-list";import{EditorPageSkeleton as c}from"../../components/common/Skeletons.js";import{ItemMap as p,getMapType as u,Mapper as h}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{AddQuestionMenu as f}from"../common/CommonEditor.js";import{QuestionEditorComponent as g}from"../question_editor/QuestionMainComponent.js";import{LandingPageEditor as x}from"./LandingPageEditor.js";import{RenderHeader as v}from"./RenderPageHeader.js";import b from"@mui/material/Container";p.layout.style.page,p.layout.style.page,p.layout.style.card;const y=p=>{const y=e(47),{pageId:I,loading:j}=p,{formInstance:C,globalConfig:N}=t(),{editorState:Q,navigationState:P}=i(),$=N.readonlyMode,_=I?C.get(I):void 0,k=_?.items&&0!==_.items.length?_.items.reduce(S,0):0,q=o(),R=async e=>{const t=await Q.addQuestion(e,_?.id);t&&q({id:t.id,isNew:!0})},E=async e=>{_&&await Q.schemaUpdate(_,e)};let H;e:{if(!_?.items?.length){H="";break e}const e=_?.items?.[_?.items.length-1];if(u(e)===h.alert.type){if(_.items.length<2){H="";break e}const e=_?.items?.[_?.items.length-2],t=Number(P.getItem(e.id)?.globalIndex);H=isNaN(t)?"":`${t+1}.`;break e}const t=Number(P.getItem(e.id)?.globalIndex);H=isNaN(t)?"":`${t+1}.`}const W=H,A="multi-card"===C.root?.layout?.pageStyle?"div":l,M="multi-card"===C.root?.layout?.pageStyle?l:"div",T="div"===A?3:1,X=r.useRef(null),B=r.useRef(null),F=w;let G;y[0]!==P?(G=e=>P.getItem(e.id)?.globalIndex?.toString()||"",y[0]=P,y[1]=G):G=y[1];const K=G;let L;y[2]!==K||y[3]!==M||y[4]!==T?(L=e=>e?F(e)&&e.items?n(b,{id:`Question-${e.id}`,"aria-label":`question-editor-${e.text}`,component:M,maxWidth:"md",sx:{borderRadius:"12px",border:"div"!==M?"1px solid":"none",borderColor:"divider",p:"div"!==M?"6px !important":"0 !important","& + &":{mt:T}},children:e.items.map(t=>n(g,{globalQuestionIndex:K(e),question:t},t.id))},`${e.id}`):n(b,{id:`Question-${e.id}`,"aria-label":`question-editor-${e?.text}`,className:"questionEditor",component:M,maxWidth:"md",sx:{borderRadius:"12px",border:"div"!==M?"1px solid":"none",borderColor:"divider",p:"div"!==M?"6px !important":"0 !important","& + &":{mt:T}},children:n(g,{globalQuestionIndex:K(e),question:e})},`${e.id}`):null,y[2]=K,y[3]=M,y[4]=T,y[5]=L):L=y[5];const O=L;if(j)return c;if(!_)return null;if("landing"===_.layout?.style){let e;return y[6]!==_?(e=n(x,{currentPage:_,loading:!1}),y[6]=_,y[7]=e):e=y[7],e}const U=`page-content-${_?.text}`,Y="div"===A?0:1,z="div"===A?"none":"1px solid";let D,J,V,Z,ee;y[8]!==Y||y[9]!==z?(D={width:"100%",minHeight:"40vh",padding:Y,border:z,borderColor:"divider",m:0},y[8]=Y,y[9]=z,y[10]=D):D=y[10],y[11]===Symbol.for("react.memo_cache_sentinel")?(J={width:"100%",p:"0 !important"},y[11]=J):J=y[11],y[12]!==_?(V=n(b,{maxWidth:"md",sx:J,children:n(v,{currentPage:_})}),y[12]=_,y[13]=V):V=y[13],y[14]===Symbol.for("react.memo_cache_sentinel")?(Z={p:0,overflowX:"hidden"},y[14]=Z):Z=y[14],y[15]===Symbol.for("react.memo_cache_sentinel")?(ee={width:"100%",minHeight:0,alignItems:"stretch"},y[15]=ee):ee=y[15];const te=k>=30?"1 1 auto":"0 1 auto",ie="div"===A?0:1.5,oe=k>=30?"auto":"visible",re=k>=30?"clamp(320px, 70svh, calc(100dvh - 192px))":"none";let ne,ae,me,le,de,se,ce,pe;return y[16]!==te||y[17]!==ie||y[18]!==oe||y[19]!==re?(ne={flex:te,width:"100%",minHeight:0,px:0,py:ie,overflowY:oe,overflowX:"hidden",maxHeight:re,scrollbarWidth:"thin",scrollbarColor:"silver transparent",WebkitOverflowScrolling:"touch"},y[16]=te,y[17]=ie,y[18]=oe,y[19]=re,y[20]=ne):ne=y[20],y[21]!==O||y[22]!==_.items||y[23]!==k?(ae=k>0&&k>=30?n(s,{ref:B,viewportRef:X,items:_.items,initialIndex:0,initialAlignToTop:!0,initialPrerender:5,overscan:5,withCache:!0,children:O}):_.items.map(O),y[21]=O,y[22]=_.items,y[23]=k,y[24]=ae):ae=y[24],y[25]!==ne||y[26]!==ae?(me=n(m,{className:"scroll-container",ref:X,sx:ne,children:ae}),y[25]=ne,y[26]=ae,y[27]=me):me=y[27],y[28]===Symbol.for("react.memo_cache_sentinel")?(le={display:"flex",justifyContent:"center",height:"100%",my:2},y[28]=le):le=y[28],y[29]!==_||y[30]!==R||y[31]!==E||y[32]!==W||y[33]!==$?(de=!$&&n(f,{excludeKeys:[h.check.type],handleAddQuestion:R,handleGenerateSurvey:E,nextQuestionIndex:W,parent:_}),y[29]=_,y[30]=R,y[31]=E,y[32]=W,y[33]=$,y[34]=de):de=y[34],y[35]!==de?(se=n(m,{className:"addQuestion",sx:le,children:de}),y[35]=de,y[36]=se):se=y[36],y[37]!==T||y[38]!==me||y[39]!==se?(ce=n(m,{component:"div",sx:Z,children:a(d,{spacing:T,sx:ee,children:[me,se]})}),y[37]=T,y[38]=me,y[39]=se,y[40]=ce):ce=y[40],y[41]!==A||y[42]!==ce||y[43]!==U||y[44]!==D||y[45]!==V?(pe=a(m,{"aria-label":U,component:A,sx:D,children:[V,ce]}),y[41]=A,y[42]=ce,y[43]=U,y[44]=D,y[45]=V,y[46]=pe):pe=y[46],pe};function S(e,t){return u(t)===h.section.type?e+(t.items?t.items.length:0):e+1}function w(e){return h.cond.type===u(e)}export{y as PageEditorForm};
1
+ import{c as e}from"react/compiler-runtime";import{useFormStateContext as t}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as i}from"../../providers/editor/EditorStateProvider.js";import{useSetQuestionEdit as o}from"../../providers/editor/QuestionEditProvider.js";import r from"react";import{jsx as n,jsxs as a}from"react/jsx-runtime";import m from"@mui/material/Box";import l from"@mui/material/Paper";import d from"@mui/material/Stack";import{ViewportList as s}from"react-viewport-list";import{EditorPageSkeleton as c}from"../../components/common/Skeletons.js";import{ItemMap as p,getMapType as u,Mapper as h}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{AddQuestionMenu as f}from"../common/CommonEditor.js";import{QuestionEditorComponent as g}from"../question_editor/QuestionMainComponent.js";import{LandingPageEditor as x}from"./LandingPageEditor.js";import{RenderHeader as v}from"./RenderPageHeader.js";import b from"@mui/material/Container";p.layout.style.page,p.layout.style.page,p.layout.style.card;const y=p=>{const y=e(47),{pageId:I,loading:j}=p,{formInstance:C,globalConfig:N}=t(),{editorState:Q,navigationState:P}=i(),$=N.readonlyMode;let _;e:try{if(I){_=C.get(I);break e}_=null}catch(W){const e=W;console.error("Error retrieving current page with id:",I,e),_=null}const k=_,q=k?.items&&0!==k.items.length?k.items.reduce(w,0):0,E=o(),R=async e=>{const t=await Q.addQuestion(e,k?.id);t&&E({id:t.id,isNew:!0})},H=async e=>{k&&await Q.schemaUpdate(k,e)};let W;e:{if(!k?.items?.length){W="";break e}const e=k?.items?.[k?.items.length-1];if(u(e)===h.alert.type){if(k.items.length<2){W="";break e}const e=k?.items?.[k?.items.length-2],t=Number(P.getItem(e.id)?.globalIndex);W=isNaN(t)?"":`${t+1}.`;break e}const t=Number(P.getItem(e.id)?.globalIndex);W=isNaN(t)?"":`${t+1}.`}const A=W,M="multi-card"===C.root?.layout?.pageStyle?"div":l,T="multi-card"===C.root?.layout?.pageStyle?l:"div",X="div"===M?3:1,B=r.useRef(null),F=r.useRef(null),G=S;let K;y[0]!==P?(K=e=>P.getItem(e.id)?.globalIndex?.toString()||"",y[0]=P,y[1]=K):K=y[1];const L=K;let O;y[2]!==L||y[3]!==T||y[4]!==X?(O=e=>e?G(e)&&e.items?n(b,{id:`Question-${e.id}`,"aria-label":`question-editor-${e.text}`,component:T,maxWidth:"md",sx:{borderRadius:"12px",border:"div"!==T?"1px solid":"none",borderColor:"divider",p:"div"!==T?"6px !important":"0 !important","& + &":{mt:X}},children:e.items.map(t=>n(g,{globalQuestionIndex:L(e),question:t},t.id))},`${e.id}`):n(b,{id:`Question-${e.id}`,"aria-label":`question-editor-${e?.text}`,className:"questionEditor",component:T,maxWidth:"md",sx:{borderRadius:"12px",border:"div"!==T?"1px solid":"none",borderColor:"divider",p:"div"!==T?"6px !important":"0 !important","& + &":{mt:X}},children:n(g,{globalQuestionIndex:L(e),question:e})},`${e.id}`):null,y[2]=L,y[3]=T,y[4]=X,y[5]=O):O=y[5];const U=O;if(j)return c;if(!k)return null;if("landing"===k.layout?.style){let e;return y[6]!==k?(e=n(x,{currentPage:k,loading:!1}),y[6]=k,y[7]=e):e=y[7],e}const Y=`page-content-${k?.text}`,z="div"===M?0:1,D="div"===M?"none":"1px solid";let J,V,Z,ee,te;y[8]!==z||y[9]!==D?(J={width:"100%",minHeight:"40vh",padding:z,border:D,borderColor:"divider",m:0},y[8]=z,y[9]=D,y[10]=J):J=y[10],y[11]===Symbol.for("react.memo_cache_sentinel")?(V={width:"100%",p:"0 !important"},y[11]=V):V=y[11],y[12]!==k?(Z=n(b,{maxWidth:"md",sx:V,children:n(v,{currentPage:k})}),y[12]=k,y[13]=Z):Z=y[13],y[14]===Symbol.for("react.memo_cache_sentinel")?(ee={p:0,overflowX:"hidden"},y[14]=ee):ee=y[14],y[15]===Symbol.for("react.memo_cache_sentinel")?(te={width:"100%",minHeight:0,alignItems:"stretch"},y[15]=te):te=y[15];const ie=q>=30?"1 1 auto":"0 1 auto",oe="div"===M?0:1.5,re=q>=30?"auto":"visible",ne=q>=30?"clamp(320px, 70svh, calc(100dvh - 192px))":"none";let ae,me,le,de,se,ce,pe,ue;return y[16]!==ie||y[17]!==oe||y[18]!==re||y[19]!==ne?(ae={flex:ie,width:"100%",minHeight:0,px:0,py:oe,overflowY:re,overflowX:"hidden",maxHeight:ne,scrollbarWidth:"thin",scrollbarColor:"silver transparent",WebkitOverflowScrolling:"touch"},y[16]=ie,y[17]=oe,y[18]=re,y[19]=ne,y[20]=ae):ae=y[20],y[21]!==U||y[22]!==k.items||y[23]!==q?(me=q>0&&q>=30?n(s,{ref:F,viewportRef:B,items:k.items,initialIndex:0,initialAlignToTop:!0,initialPrerender:5,overscan:5,withCache:!0,children:U}):k.items.map(U),y[21]=U,y[22]=k.items,y[23]=q,y[24]=me):me=y[24],y[25]!==ae||y[26]!==me?(le=n(m,{className:"scroll-container",ref:B,sx:ae,children:me}),y[25]=ae,y[26]=me,y[27]=le):le=y[27],y[28]===Symbol.for("react.memo_cache_sentinel")?(de={display:"flex",justifyContent:"center",height:"100%",my:2},y[28]=de):de=y[28],y[29]!==k||y[30]!==R||y[31]!==H||y[32]!==A||y[33]!==$?(se=!$&&n(f,{excludeKeys:[h.check.type],handleAddQuestion:R,handleGenerateSurvey:H,nextQuestionIndex:A,parent:k}),y[29]=k,y[30]=R,y[31]=H,y[32]=A,y[33]=$,y[34]=se):se=y[34],y[35]!==se?(ce=n(m,{className:"addQuestion",sx:de,children:se}),y[35]=se,y[36]=ce):ce=y[36],y[37]!==X||y[38]!==le||y[39]!==ce?(pe=n(m,{component:"div",sx:ee,children:a(d,{spacing:X,sx:te,children:[le,ce]})}),y[37]=X,y[38]=le,y[39]=ce,y[40]=pe):pe=y[40],y[41]!==M||y[42]!==pe||y[43]!==Y||y[44]!==J||y[45]!==Z?(ue=a(m,{"aria-label":Y,component:M,sx:J,children:[Z,pe]}),y[41]=M,y[42]=pe,y[43]=Y,y[44]=J,y[45]=Z,y[46]=ue):ue=y[46],ue};function w(e,t){return u(t)===h.section.type?e+(t.items?t.items.length:0):e+1}function S(e){return h.cond.type===u(e)}export{y as PageEditorForm};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import t from"@mui/material/Typography";import"@mui/material/Grid";import{jsxs as i,jsx as o,Fragment as r}from"react/jsx-runtime";import{ModalCommon as a}from"../../components/common/ModalCommon.js";import"../../components/common/Skeletons.js";import m,{startTransition as n}from"react";import{useFormStateContext as l}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as s}from"../../providers/editor/EditorStateProvider.js";import"isomorphic-dompurify";import c from"@mui/material/Box";import p from"@mui/material/Button";import{Trash as d,CirclePlus as u,Pencil as f,Network as h}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import"@mui/material/IconButton";import b from"@mui/material/Stack";import"@mui/material/Tooltip";import{getDefaultData as y,Mapper as v}from"../../utils/config-map.js";import{getLocale as x,LocaleMap as C}from"../../utils/locale.js";import{ConditionParser as g}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as w}from"../../utils/parsers/LegacyConditionParser.js";import{RichTextEditor as S}from"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import{useTheme as I}from"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"acorn";import{ItemConditional as j}from"@famalabs/survey";import T from"@mui/material/Badge";import k from"@mui/material/CardContent";import z from"@mui/material/CardHeader";import _ from"@mui/material/Tab";import O from"@mui/material/Tabs";import{isEqual as P}from"lodash-es";import{OptionTextField as F}from"../common/OptionsEditor.js";import{EditCondition as M}from"../question_forms/ItemConditionalEditor.js";const V=V=>{const A=e(112),{currentPage:B,currentPageIndex:L,open:W,closeModal:G}=V,{stageMutation:H,globalConfig:N}=l(),{editorState:Q}=s(),R=I(),D=N.readonlyMode;let E;A[0]!==B?(E=B instanceof j?w(B):B.parent()instanceof j?w(B.parent()):void 0,A[0]=B,A[1]=E):E=A[1];const q=E;let J;A[2]!==B?(J=B instanceof j?B:B.parent()instanceof j?B.parent():void 0,A[2]=B,A[3]=J):J=A[3];const K=J,[U,X]=m.useState(!1),[Y,Z]=m.useState(q);U||(Z(q),X(!0));const[$,ee]=m.useState(q?"edit":null),[te,ie]=m.useState("edit");let oe;A[4]===Symbol.for("react.memo_cache_sentinel")?(oe=(e,t)=>{n(()=>{ie(t)})},A[4]=oe):oe=A[4];const re=oe;let ae;A[5]!==B||A[6]!==Q?(ae=Q.getItemValue(B,"text"),A[5]=B,A[6]=Q,A[7]=ae):ae=A[7];const[me,ne]=m.useState(ae);let le;A[8]!==B||A[9]!==Q?(le=Q.getItemValue(B,"name"),A[8]=B,A[9]=Q,A[10]=le):le=A[10];const[se,ce]=m.useState(le);let pe;A[11]!==B||A[12]!==Q?(pe=Q.getItemValue(B,"description"),A[11]=B,A[12]=Q,A[13]=pe):pe=A[13];const[de,ue]=m.useState(pe);let fe;A[14]!==B||A[15]!==Q?(fe=async e=>{e!==Q.getItemValue(B,"text")&&await Q.updateItem(B,"text",e,"silent")},A[14]=B,A[15]=Q,A[16]=fe):fe=A[16];const he=fe;let be;A[17]!==B||A[18]!==Q?(be=async e=>{e!==Q.getItemValue(B,"name")&&await Q.updateItem(B,"name",e,"silent")},A[17]=B,A[18]=Q,A[19]=be):be=A[19];const ye=be;let ve;A[20]!==B||A[21]!==Q?(ve=async e=>{e!==Q.getItemValue(B,"description")&&await Q.updateItem(B,"description",e,"silent")},A[20]=B,A[21]=Q,A[22]=ve):ve=A[22];const xe=ve;let Ce;A[23]!==B?(Ce=B.parent().items.indexOf(B),A[23]=B,A[24]=Ce):Ce=A[24];const ge=Ce;let we;A[25]!==B||A[26]!==H?(we=e=>{const t=H(t=>t.add(B.parent().id,{...y(v.cond.type)},e??-1));if(!t)return;H(e=>{e.remove(t.id)});const i={...t.toJSON(),expression:{type:"exp",operator:null,left:null,right:null}};Z(i),ee("new")},A[25]=B,A[26]=H,A[27]=we):we=A[27];const Se=we;let Ie;A[28]!==Y||A[29]!==$||A[30]!==B||A[31]!==L||A[32]!==Q||A[33]!==K?(Ie=async e=>{e:switch($){case"new":{if(!Y||!e)return;const t=g(e),i=await Q.addQuestion(v.cond.type,B.parent()?.id,L+1,void 0,"silent");await Q.updateItem(i,void 0,t,"silent"),await Q.moveItem(B,0,i.id,"silent"),ee("edit");break e}case"edit":{if(!K||!e)return;const t=g(e);await Q.updateItem(K,void 0,t,"silent"),ee("edit");break e}case"remove":if(!K)return;await Q.moveItem(B,K.parent().items.indexOf(K),K.parent().id,"silent"),await Q.removeItem(K,"silent"),ee("new")}},A[28]=Y,A[29]=$,A[30]=B,A[31]=L,A[32]=Q,A[33]=K,A[34]=Ie):Ie=A[34];const je=Ie;let Te;e:if("edit"!==te){if("cond"===te){if("remove"===$){Te=!1;break e}if(!Y&&q){Te=!1;break e}if(!Y&&!q){Te=!0;break e}const e=Y?.expression,t=e?.left,i=e?.right;let o;A[35]!==e?.operator||A[36]!==Y||A[37]!==t?.name||A[38]!==q||A[39]!==i?.value?(o=!t?.name||!e?.operator||void 0===i?.value||P(Y,q),A[35]=e?.operator,A[36]=Y,A[37]=t?.name,A[38]=q,A[39]=i?.value,A[40]=o):o=A[40],Te=o;break e}Te=!1}else Te=!me;const ke=Te;let ze;A[41]!==G||A[42]!==Y||A[43]!==$||A[44]!==de||A[45]!==se||A[46]!==me||A[47]!==Q||A[48]!==je||A[49]!==xe||A[50]!==ye||A[51]!==he?(ze=async()=>{await he(me),await ye(se),await xe(de),(Y||"remove"===$)&&await je(Y),Q.refreshSurveyInstance(),G(),await Q.createHistorySnapshot()},A[41]=G,A[42]=Y,A[43]=$,A[44]=de,A[45]=se,A[46]=me,A[47]=Q,A[48]=je,A[49]=xe,A[50]=ye,A[51]=he,A[52]=ze):ze=A[52];const _e=ze;let Oe,Pe;A[53]!==G?(Oe=()=>{G()},A[53]=G,A[54]=Oe):Oe=A[54],A[55]===Symbol.for("react.memo_cache_sentinel")?(Pe={whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"45ch"},A[55]=Pe):Pe=A[55];const Fe=("item"!==B.type?L:"")+" "+B.text;let Me,Ve,Ae,Be,Le,We,Ge;A[56]!==Fe?(Me=o(t,{variant:"body1",color:"white",fontSize:20,sx:Pe,children:Fe}),A[56]=Fe,A[57]=Me):Me=A[57],A[58]!==R.palette.primary.contrastText?(Ve={title:{sx:{color:R.palette.primary.contrastText}},subheader:{sx:{color:R.palette.primary.contrastText}}},A[58]=R.palette.primary.contrastText,A[59]=Ve):Ve=A[59],A[60]!==R.palette.primary.main?(Ae={backgroundColor:R.palette.primary.main},A[60]=R.palette.primary.main,A[61]=Ae):Ae=A[61],A[62]!==Me||A[63]!==Ve||A[64]!==Ae?(Be=o(z,{title:Me,subheader:null,slotProps:Ve,sx:Ae}),A[62]=Me,A[63]=Ve,A[64]=Ae,A[65]=Be):Be=A[65],A[66]===Symbol.for("react.memo_cache_sentinel")?(Le={width:"100%",borderBottom:1,borderColor:"divider"},A[66]=Le):Le=A[66],A[67]===Symbol.for("react.memo_cache_sentinel")?(We={justifyContent:"center"},A[67]=We):We=A[67],A[68]===Symbol.for("react.memo_cache_sentinel")?(Ge=o(f,{size:20}),A[68]=Ge):Ge=A[68];const He="edit"===te?"MODIFICA":null;let Ne,Qe;A[69]!==He?(Ne=o(_,{icon:Ge,iconPosition:"start",label:He,value:"edit"}),A[69]=He,A[70]=Ne):Ne=A[70],A[71]!==Y?(Qe=Y?o(T,{color:"secondary",badgeContent:"",variant:"dot",children:o(h,{size:20})}):o(h,{size:20}),A[71]=Y,A[72]=Qe):Qe=A[72];const Re="cond"===te?"LOGICA":null;let De,Ee,qe,Je;A[73]!==Qe||A[74]!==Re?(De=o(_,{icon:Qe,iconPosition:"start",label:Re,value:"cond"}),A[73]=Qe,A[74]=Re,A[75]=De):De=A[75],A[76]!==te||A[77]!==Ne||A[78]!==De?(Ee=o(c,{sx:Le,children:i(O,{value:te,onChange:re,sx:We,children:[Ne,De]})}),A[76]=te,A[77]=Ne,A[78]=De,A[79]=Ee):Ee=A[79],A[80]!==Se||A[81]!==Y||A[82]!==de||A[83]!==se||A[84]!==B||A[85]!==te||A[86]!==me||A[87]!==ge||A[88]!==D?(qe="edit"===te?i(b,{spacing:2,sx:{p:3},children:[o(F,{label:"text",defaultValue:null,text:x(C.items.item.page.pageName),value:me,handleOnChange:e=>ne(e),fullWidth:!0,size:"small",disabled:D}),o(F,{label:"name",defaultValue:null,text:"Nome esportazione",hint:"Il nome del campo da visualizzare nelle esportazioni",value:se,handleOnChange:e=>ce(e),fullWidth:!0,size:"small",disabled:D}),o(S,{value:de,placeholder:"Descrizione",onChange:ue,disabled:D})]}):o(c,{sx:{pt:4,pl:2,pr:2,pb:4,justifyContent:"flex-start"},children:Y?i(r,{children:[o(M,{question:B,itemCondition:Y,setItemCondition:Z,readonlyMode:D}),Y.id!==B.id&&i(p,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>{Z(void 0),ee("remove")},disabled:D,children:[o(d,{}),o(t,{sx:{pl:1},children:"Rimuovi condizione"})]})]}):i(p,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>Se(ge+1),disabled:D,children:[o(u,{}),o(t,{sx:{pl:1},children:"Aggiungi condizione"})]})}),A[80]=Se,A[81]=Y,A[82]=de,A[83]=se,A[84]=B,A[85]=te,A[86]=me,A[87]=ge,A[88]=D,A[89]=qe):qe=A[89],A[90]===Symbol.for("react.memo_cache_sentinel")?(Je={justifyContent:"flex-end",p:3},A[90]=Je):Je=A[90];const Ke=D?"Chiudi":"Annulla";let Ue,Xe,Ye,Ze,$e,et;return A[91]!==G||A[92]!==Ke?(Ue=o(p,{variant:"outlined",color:"secondary",onClick:G,children:Ke}),A[91]=G,A[92]=Ke,A[93]=Ue):Ue=A[93],A[94]!==_e||A[95]!==ke||A[96]!==D?(Xe=!D&&o(p,{variant:"contained",color:"primary",disabled:ke,onClick:_e,children:"Salva"}),A[94]=_e,A[95]=ke,A[96]=D,A[97]=Xe):Xe=A[97],A[98]!==Ue||A[99]!==Xe?(Ye=i(b,{direction:"row",spacing:2,sx:Je,children:[Ue,Xe]}),A[98]=Ue,A[99]=Xe,A[100]=Ye):Ye=A[100],A[101]!==Ee||A[102]!==qe||A[103]!==Ye?(Ze=i(k,{children:[Ee,qe,Ye]}),A[101]=Ee,A[102]=qe,A[103]=Ye,A[104]=Ze):Ze=A[104],A[105]!==Be||A[106]!==Ze?($e=i(r,{children:[Be,Ze]}),A[105]=Be,A[106]=Ze,A[107]=$e):$e=A[107],A[108]!==W||A[109]!==Oe||A[110]!==$e?(et=o(a,{minWidth:460,open:W,onClose:Oe,children:$e}),A[108]=W,A[109]=Oe,A[110]=$e,A[111]=et):et=A[111],et};export{V as RenderPageEditModal};
1
+ import{c as e}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import t from"@mui/material/Typography";import"@mui/material/Grid";import{jsxs as i,jsx as o,Fragment as r}from"react/jsx-runtime";import{ModalCommon as a}from"../../components/common/ModalCommon.js";import"../../components/common/Skeletons.js";import m,{startTransition as n}from"react";import{useFormStateContext as l}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as s}from"../../providers/editor/EditorStateProvider.js";import"isomorphic-dompurify";import c from"@mui/material/Box";import p from"@mui/material/Button";import{Trash as d,CirclePlus as u,Pencil as f,Network as h}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import"@mui/material/IconButton";import b from"@mui/material/Stack";import"@mui/material/Tooltip";import{getDefaultData as y,Mapper as v}from"../../utils/config-map.js";import{getLocale as x,LocaleMap as C}from"../../utils/locale.js";import{ConditionParser as g}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as w}from"../../utils/parsers/LegacyConditionParser.js";import{RichTextEditor as S}from"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import{useTheme as I}from"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"acorn";import{ItemConditional as j}from"@famalabs/survey";import T from"@mui/material/Badge";import k from"@mui/material/CardContent";import z from"@mui/material/CardHeader";import _ from"@mui/material/Tab";import O from"@mui/material/Tabs";import{isEqual as P}from"lodash-es";import{OptionTextField as F}from"../common/OptionsEditor.js";import{EditCondition as M}from"../question_forms/ItemConditionalEditor.js";const V=V=>{const A=e(112),{currentPage:B,currentPageIndex:L,open:W,closeModal:G}=V,{stageMutation:H,globalConfig:N}=l(),{editorState:Q}=s(),R=I(),D=N.readonlyMode;let E;A[0]!==B?(E=B instanceof j?w(B):B.parent()instanceof j?w(B.parent()):void 0,A[0]=B,A[1]=E):E=A[1];const q=E;let J;A[2]!==B?(J=B instanceof j?B:B.parent()instanceof j?B.parent():void 0,A[2]=B,A[3]=J):J=A[3];const K=J,[U,X]=m.useState(!1),[Y,Z]=m.useState();U||Y||!q||(Z(q),X(!0));const[$,ee]=m.useState(q?"edit":null),[te,ie]=m.useState("edit");let oe;A[4]===Symbol.for("react.memo_cache_sentinel")?(oe=(e,t)=>{n(()=>{ie(t)})},A[4]=oe):oe=A[4];const re=oe;let ae;A[5]!==B||A[6]!==Q?(ae=Q.getItemValue(B,"text"),A[5]=B,A[6]=Q,A[7]=ae):ae=A[7];const[me,ne]=m.useState(ae);let le;A[8]!==B||A[9]!==Q?(le=Q.getItemValue(B,"name"),A[8]=B,A[9]=Q,A[10]=le):le=A[10];const[se,ce]=m.useState(le);let pe;A[11]!==B||A[12]!==Q?(pe=Q.getItemValue(B,"description"),A[11]=B,A[12]=Q,A[13]=pe):pe=A[13];const[de,ue]=m.useState(pe);let fe;A[14]!==B||A[15]!==Q?(fe=async e=>{e!==Q.getItemValue(B,"text")&&await Q.updateItem(B,"text",e,"silent")},A[14]=B,A[15]=Q,A[16]=fe):fe=A[16];const he=fe;let be;A[17]!==B||A[18]!==Q?(be=async e=>{e!==Q.getItemValue(B,"name")&&await Q.updateItem(B,"name",e,"silent")},A[17]=B,A[18]=Q,A[19]=be):be=A[19];const ye=be;let ve;A[20]!==B||A[21]!==Q?(ve=async e=>{e!==Q.getItemValue(B,"description")&&await Q.updateItem(B,"description",e,"silent")},A[20]=B,A[21]=Q,A[22]=ve):ve=A[22];const xe=ve;let Ce;A[23]!==B?(Ce=B.parent().items.indexOf(B),A[23]=B,A[24]=Ce):Ce=A[24];const ge=Ce;let we;A[25]!==B||A[26]!==H?(we=e=>{const t=H(t=>t.add(B.parent().id,{...y(v.cond.type)},e??-1));if(!t)return;H(e=>{e.remove(t.id)});const i={...t.toJSON(),expression:{type:"exp",operator:null,left:null,right:null}};Z(i),ee("new")},A[25]=B,A[26]=H,A[27]=we):we=A[27];const Se=we;let Ie;A[28]!==Y||A[29]!==$||A[30]!==B||A[31]!==L||A[32]!==Q||A[33]!==K?(Ie=async e=>{e:switch($){case"new":{if(!Y||!e)return;const t=g(e),i=await Q.addQuestion(v.cond.type,B.parent()?.id,L+1,void 0,"silent");await Q.updateItem(i,void 0,t,"silent"),await Q.moveItem(B,0,i.id,"silent"),ee("edit");break e}case"edit":{if(!K||!e)return;const t=g(e);await Q.updateItem(K,void 0,t,"silent"),ee("edit");break e}case"remove":if(!K)return;await Q.moveItem(B,K.parent().items.indexOf(K),K.parent().id,"silent"),await Q.removeItem(K,"silent"),ee("new")}},A[28]=Y,A[29]=$,A[30]=B,A[31]=L,A[32]=Q,A[33]=K,A[34]=Ie):Ie=A[34];const je=Ie;let Te;e:if("edit"!==te){if("cond"===te){if("remove"===$){Te=!1;break e}if(!Y&&q){Te=!1;break e}if(!Y&&!q){Te=!0;break e}const e=Y?.expression,t=e?.left,i=e?.right;let o;A[35]!==e?.operator||A[36]!==Y||A[37]!==t?.name||A[38]!==q||A[39]!==i?.value?(o=!t?.name||!e?.operator||void 0===i?.value||P(Y,q),A[35]=e?.operator,A[36]=Y,A[37]=t?.name,A[38]=q,A[39]=i?.value,A[40]=o):o=A[40],Te=o;break e}Te=!1}else Te=!me;const ke=Te;let ze;A[41]!==G||A[42]!==Y||A[43]!==$||A[44]!==de||A[45]!==se||A[46]!==me||A[47]!==Q||A[48]!==je||A[49]!==xe||A[50]!==ye||A[51]!==he?(ze=async()=>{await he(me),await ye(se),await xe(de),(Y||"remove"===$)&&await je(Y),Q.refreshSurveyInstance(),G(),await Q.createHistorySnapshot()},A[41]=G,A[42]=Y,A[43]=$,A[44]=de,A[45]=se,A[46]=me,A[47]=Q,A[48]=je,A[49]=xe,A[50]=ye,A[51]=he,A[52]=ze):ze=A[52];const _e=ze;let Oe,Pe;A[53]!==G?(Oe=()=>{G()},A[53]=G,A[54]=Oe):Oe=A[54],A[55]===Symbol.for("react.memo_cache_sentinel")?(Pe={whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:"45ch"},A[55]=Pe):Pe=A[55];const Fe=("item"!==B.type?L:"")+" "+B.text;let Me,Ve,Ae,Be,Le,We,Ge;A[56]!==Fe?(Me=o(t,{variant:"body1",color:"white",fontSize:20,sx:Pe,children:Fe}),A[56]=Fe,A[57]=Me):Me=A[57],A[58]!==R.palette.primary.contrastText?(Ve={title:{sx:{color:R.palette.primary.contrastText}},subheader:{sx:{color:R.palette.primary.contrastText}}},A[58]=R.palette.primary.contrastText,A[59]=Ve):Ve=A[59],A[60]!==R.palette.primary.main?(Ae={backgroundColor:R.palette.primary.main},A[60]=R.palette.primary.main,A[61]=Ae):Ae=A[61],A[62]!==Me||A[63]!==Ve||A[64]!==Ae?(Be=o(z,{title:Me,subheader:null,slotProps:Ve,sx:Ae}),A[62]=Me,A[63]=Ve,A[64]=Ae,A[65]=Be):Be=A[65],A[66]===Symbol.for("react.memo_cache_sentinel")?(Le={width:"100%",borderBottom:1,borderColor:"divider"},A[66]=Le):Le=A[66],A[67]===Symbol.for("react.memo_cache_sentinel")?(We={justifyContent:"center"},A[67]=We):We=A[67],A[68]===Symbol.for("react.memo_cache_sentinel")?(Ge=o(f,{size:20}),A[68]=Ge):Ge=A[68];const He="edit"===te?"MODIFICA":null;let Ne,Qe;A[69]!==He?(Ne=o(_,{icon:Ge,iconPosition:"start",label:He,value:"edit"}),A[69]=He,A[70]=Ne):Ne=A[70],A[71]!==Y?(Qe=Y?o(T,{color:"secondary",badgeContent:"",variant:"dot",children:o(h,{size:20})}):o(h,{size:20}),A[71]=Y,A[72]=Qe):Qe=A[72];const Re="cond"===te?"LOGICA":null;let De,Ee,qe,Je;A[73]!==Qe||A[74]!==Re?(De=o(_,{icon:Qe,iconPosition:"start",label:Re,value:"cond"}),A[73]=Qe,A[74]=Re,A[75]=De):De=A[75],A[76]!==te||A[77]!==Ne||A[78]!==De?(Ee=o(c,{sx:Le,children:i(O,{value:te,onChange:re,sx:We,children:[Ne,De]})}),A[76]=te,A[77]=Ne,A[78]=De,A[79]=Ee):Ee=A[79],A[80]!==Se||A[81]!==Y||A[82]!==de||A[83]!==se||A[84]!==B||A[85]!==te||A[86]!==me||A[87]!==ge||A[88]!==D?(qe="edit"===te?i(b,{spacing:2,sx:{p:3},children:[o(F,{label:"text",defaultValue:null,text:x(C.items.item.page.pageName),value:me,handleOnChange:e=>ne(e),fullWidth:!0,size:"small",disabled:D}),o(F,{label:"name",defaultValue:null,text:"Nome esportazione",hint:"Il nome del campo da visualizzare nelle esportazioni",value:se,handleOnChange:e=>ce(e),fullWidth:!0,size:"small",disabled:D}),o(S,{value:de,placeholder:"Descrizione",onChange:ue,disabled:D})]}):o(c,{sx:{pt:4,pl:2,pr:2,pb:4,justifyContent:"flex-start"},children:Y?i(r,{children:[o(M,{question:B,itemCondition:Y,setItemCondition:Z,readonlyMode:D}),Y.id!==B.id&&i(p,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>{Z(void 0),ee("remove")},disabled:D,children:[o(d,{}),o(t,{sx:{pl:1},children:"Rimuovi condizione"})]})]}):i(p,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>Se(ge+1),disabled:D,children:[o(u,{}),o(t,{sx:{pl:1},children:"Aggiungi condizione"})]})}),A[80]=Se,A[81]=Y,A[82]=de,A[83]=se,A[84]=B,A[85]=te,A[86]=me,A[87]=ge,A[88]=D,A[89]=qe):qe=A[89],A[90]===Symbol.for("react.memo_cache_sentinel")?(Je={justifyContent:"flex-end",p:3},A[90]=Je):Je=A[90];const Ke=D?"Chiudi":"Annulla";let Ue,Xe,Ye,Ze,$e,et;return A[91]!==G||A[92]!==Ke?(Ue=o(p,{variant:"outlined",color:"secondary",onClick:G,children:Ke}),A[91]=G,A[92]=Ke,A[93]=Ue):Ue=A[93],A[94]!==_e||A[95]!==ke||A[96]!==D?(Xe=!D&&o(p,{variant:"contained",color:"primary",disabled:ke,onClick:_e,children:"Salva"}),A[94]=_e,A[95]=ke,A[96]=D,A[97]=Xe):Xe=A[97],A[98]!==Ue||A[99]!==Xe?(Ye=i(b,{direction:"row",spacing:2,sx:Je,children:[Ue,Xe]}),A[98]=Ue,A[99]=Xe,A[100]=Ye):Ye=A[100],A[101]!==Ee||A[102]!==qe||A[103]!==Ye?(Ze=i(k,{children:[Ee,qe,Ye]}),A[101]=Ee,A[102]=qe,A[103]=Ye,A[104]=Ze):Ze=A[104],A[105]!==Be||A[106]!==Ze?($e=i(r,{children:[Be,Ze]}),A[105]=Be,A[106]=Ze,A[107]=$e):$e=A[107],A[108]!==W||A[109]!==Oe||A[110]!==$e?(et=o(a,{minWidth:460,open:W,onClose:Oe,children:$e}),A[108]=W,A[109]=Oe,A[110]=$e,A[111]=et):et=A[111],et};export{V as RenderPageEditModal};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import t from"@mui/material/Typography";import"@mui/material/Grid";import{jsxs as i,jsx as o,Fragment as r}from"react/jsx-runtime";import{ModalCommon as a}from"../../components/common/ModalCommon.js";import"../../components/common/Skeletons.js";import m from"react";import{useFormStateContext as l}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../providers/editor/EditorStateProvider.js";import"isomorphic-dompurify";import s from"@mui/material/Box";import c from"@mui/material/Button";import{Trash as p,CirclePlus as u,GalleryVertical as d,Columns2 as f,Columns3 as h,Columns4 as v,Pencil as b,Network as y,Ruler as C}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import x from"@mui/material/FormLabel";import"@mui/material/IconButton";import g from"@mui/material/Stack";import"@mui/material/Tooltip";import{getDefaultData as I,Mapper as S}from"../../utils/config-map.js";import{getLocale as T,LocaleMap as w}from"../../utils/locale.js";import{ConditionParser as z}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as j}from"../../utils/parsers/LegacyConditionParser.js";import{RichTextEditor as k}from"@famalabs/web-ui";import"react-hook-form";import O from"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import{useTheme as _}from"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"acorn";import{ItemConditional as Q}from"@famalabs/survey";import A from"@mui/material/Badge";import B from"@mui/material/CardContent";import F from"@mui/material/CardHeader";import M from"@mui/material/Tab";import P from"@mui/material/Tabs";import L from"@mui/material/ToggleButton";import N from"@mui/material/ToggleButtonGroup";import{isEqual as V}from"lodash-es";import{useQuestionState as G}from"../../hooks/editor/QuestionOperations.js";import{OptionTextField as W}from"../common/OptionsEditor.js";import{EditCondition as H}from"../question_forms/ItemConditionalEditor.js";const R=R=>{const E=e(100),{currentSection:q,currentSectionIndex:D,open:J,closeModal:U}=R,{stageMutation:Y,globalConfig:K}=l(),{editorState:X}=n(),Z=G(q),$=_(),ee=K.readonlyMode;let te;E[0]!==q?(te=q instanceof Q?j(q):q.parent()instanceof Q?j(q.parent()):void 0,E[0]=q,E[1]=te):te=E[1];const ie=te;let oe;E[2]!==q?(oe=q instanceof Q?q:q.parent()instanceof Q?q.parent():void 0,E[2]=q,E[3]=oe):oe=E[3];const re=oe,[ae,me]=m.useState(ie),[le,ne]=m.useState(ie?"edit":null),[se,ce]=m.useState("edit");let pe;E[4]!==q||E[5]!==X||E[6]!==Z.value?(pe=async()=>{await X.updateItem(q,void 0,Z.value,"silent")},E[4]=q,E[5]=X,E[6]=Z.value,E[7]=pe):pe=E[7];const ue=pe;let de;E[8]!==q?(de=q.parent().items.indexOf(q),E[8]=q,E[9]=de):de=E[9];const fe=de;let he;E[10]!==q||E[11]!==Y?(he=e=>{const t=Y(t=>t.add(q.parent()?.id,{...I(S.cond.type)},e??-1));if(!t)return;Y(e=>{e.remove(t.id)});const i={...t.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};me(i),ne("new")},E[10]=q,E[11]=Y,E[12]=he):he=E[12];const ve=he;let be;E[13]!==ae||E[14]!==le||E[15]!==q||E[16]!==D||E[17]!==X||E[18]!==re?(be=async e=>{e:switch(le){case"new":{if(!ae||!e)return;const t=z(e),i=await X.addQuestion(S.cond.type,q.parent()?.id,D+1,void 0,"silent");await X.updateItem(i,void 0,t,"silent"),await X.moveItem(q,0,i.id,"silent"),ne("edit");break e}case"edit":{if(!re||!e)return;const t=z(e);await X.updateItem(re,void 0,t,"silent"),ne("edit");break e}case"remove":if(!re)return;await X.moveItem(q,re.parent().items.indexOf(re),re.parent().id,"silent"),await X.removeItem(re,"silent"),ne("new")}},E[13]=ae,E[14]=le,E[15]=q,E[16]=D,E[17]=X,E[18]=re,E[19]=be):be=E[19];const ye=be;let Ce;e:{if("edit"===se){let e;E[20]!==q||E[21]!==Z.value?(e=V(Z.value,q.toJSON()),E[20]=q,E[21]=Z.value,E[22]=e):e=E[22],Ce=e;break e}if("cond"===se){if("remove"===le){Ce=!1;break e}if(!ae&&ie){Ce=!1;break e}if(!ae&&!ie){Ce=!0;break e}const e=ae?.expression,t=e?.left,i=e?.right;let o;E[23]!==e?.operator||E[24]!==ae||E[25]!==t?.name||E[26]!==ie||E[27]!==i?.value?(o=!t?.name||!e?.operator||void 0===i?.value||V(ae,ie),E[23]=e?.operator,E[24]=ae,E[25]=t?.name,E[26]=ie,E[27]=i?.value,E[28]=o):o=E[28],Ce=o;break e}Ce=!1}const xe=Ce;let ge;E[29]!==U||E[30]!==ae||E[31]!==le||E[32]!==X||E[33]!==ue||E[34]!==ye?(ge=async()=>{await ue(),(ae||"remove"===le)&&await ye(ae),X.refreshSurveyInstance(),U(),await X.createHistorySnapshot()},E[29]=U,E[30]=ae,E[31]=le,E[32]=X,E[33]=ue,E[34]=ye,E[35]=ge):ge=E[35];const Ie=ge,Se=("item"!==q.type?D:"")+" "+q.text;let Te,we,ze,je,ke,Oe,_e;E[36]!==$.palette.primary.contrastText?(Te={title:{sx:{color:$.palette.primary.contrastText}},subheader:{sx:{color:$.palette.primary.contrastText}}},E[36]=$.palette.primary.contrastText,E[37]=Te):Te=E[37],E[38]!==$.palette.primary.main?(we={backgroundColor:$.palette.primary.main},E[38]=$.palette.primary.main,E[39]=we):we=E[39],E[40]!==we||E[41]!==Se||E[42]!==Te?(ze=o(F,{title:Se,subheader:null,slotProps:Te,sx:we}),E[40]=we,E[41]=Se,E[42]=Te,E[43]=ze):ze=E[43],E[44]===Symbol.for("react.memo_cache_sentinel")?(je={width:"100%",borderBottom:1,borderColor:"divider"},E[44]=je):je=E[44],E[45]===Symbol.for("react.memo_cache_sentinel")?(ke=(e,t)=>ce(t),Oe={justifyContent:"center"},E[45]=ke,E[46]=Oe):(ke=E[45],Oe=E[46]),E[47]===Symbol.for("react.memo_cache_sentinel")?(_e=o(b,{size:20}),E[47]=_e):_e=E[47];const Qe="edit"===se?"MODIFICA":null;let Ae,Be;E[48]!==Qe?(Ae=o(M,{icon:_e,iconPosition:"start",label:Qe,value:"edit"}),E[48]=Qe,E[49]=Ae):Ae=E[49],E[50]!==ae?(Be=ae?o(A,{color:"secondary",badgeContent:"",variant:"dot",children:o(y,{size:20})}):o(y,{size:20}),E[50]=ae,E[51]=Be):Be=E[51];const Fe="cond"===se?"LOGICA":null;let Me,Pe;E[52]!==Be||E[53]!==Fe?(Me=o(M,{icon:Be,iconPosition:"start",label:Fe,value:"cond"}),E[52]=Be,E[53]=Fe,E[54]=Me):Me=E[54],E[55]===Symbol.for("react.memo_cache_sentinel")?(Pe=o(C,{size:20}),E[55]=Pe):Pe=E[55];const Le="layout"===se?"LAYOUT":null;let Ne,Ve,Ge,We,He,Re;E[56]!==Le?(Ne=o(M,{icon:Pe,iconPosition:"start",label:Le,value:"layout"}),E[56]=Le,E[57]=Ne):Ne=E[57],E[58]!==se||E[59]!==Ae||E[60]!==Me||E[61]!==Ne?(Ve=o(s,{sx:je,children:i(P,{value:se,onChange:ke,sx:Oe,children:[Ae,Me,Ne]})}),E[58]=se,E[59]=Ae,E[60]=Me,E[61]=Ne,E[62]=Ve):Ve=E[62],E[63]!==se||E[64]!==Z?(Ge="edit"===se&&i(g,{spacing:2,sx:{p:3},children:[o(W,{label:"Titolo",defaultValue:null,text:T(w.items.item.section.pageName),value:Z.getQuestionValue("text"),handleOnChange:e=>Z.updateItem("text",e),fullWidth:!0,size:"small"}),o(W,{label:"name",defaultValue:null,text:"Nome esportazione",hint:"Il nome del campo da visualizzare nelle esportazioni",value:Z.getQuestionValue("name"),handleOnChange:e=>Z.updateItem("name",e),fullWidth:!0,size:"small"}),o(k,{placeholder:"Indicazioni aggiuntive per il completamento del campo",value:Z.getQuestionValue("description"),onChange:e=>Z.updateItem("description",e)})]}),E[63]=se,E[64]=Z,E[65]=Ge):Ge=E[65],E[66]!==ve||E[67]!==ae||E[68]!==q||E[69]!==se||E[70]!==fe||E[71]!==ee?(We="cond"===se&&o(s,{sx:{pt:4,pl:2,pr:2,pb:4,justifyContent:"flex-start"},children:ae?i(r,{children:[o(H,{question:q,itemCondition:ae,setItemCondition:me,readonlyMode:ee}),ae.id!==q.id&&i(c,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>{me(void 0),ne("remove")},disabled:ee,children:[o(p,{size:20}),o(t,{sx:{pl:1},children:"Rimuovi condizione"})]})]}):i(c,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>ve(fe+1),disabled:ee,children:[o(u,{size:20}),o(t,{sx:{pl:1},children:"Aggiungi condizione"})]})}),E[66]=ve,E[67]=ae,E[68]=q,E[69]=se,E[70]=fe,E[71]=ee,E[72]=We):We=E[72],E[73]!==se||E[74]!==Z?(He="layout"===se&&o(g,{spacing:2,sx:{p:3},children:i(O,{children:[o(x,{children:"Colonne"}),i(N,{exclusive:!0,color:"primary",value:Z.getQuestionValue("layout.columns"),onChange:(e,t)=>{Z.updateItem("layout.columns",Number(t))},"aria-label":"columns layout",children:[o(L,{value:1,title:"1 colonna","aria-label":"1 colonna",children:o(d,{size:20})}),o(L,{value:2,title:"2 colonne","aria-label":"2 colonne",children:o(f,{size:20})}),o(L,{value:3,title:"3 colonne","aria-label":"3 colonne",children:o(h,{size:20})}),o(L,{value:4,title:"4 colonne","aria-label":"4 colonne",children:o(v,{size:20})})]})]})}),E[73]=se,E[74]=Z,E[75]=He):He=E[75],E[76]===Symbol.for("react.memo_cache_sentinel")?(Re={justifyContent:"flex-end",p:3},E[76]=Re):Re=E[76];const Ee=ee?"Chiudi":"Annulla";let qe,De,Je,Ue,Ye,Ke;return E[77]!==U||E[78]!==Ee?(qe=o(c,{variant:"outlined",color:"secondary",onClick:U,children:Ee}),E[77]=U,E[78]=Ee,E[79]=qe):qe=E[79],E[80]!==Ie||E[81]!==xe||E[82]!==ee?(De=!ee&&o(c,{variant:"contained",color:"primary",disabled:xe,onClick:Ie,children:"Salva"}),E[80]=Ie,E[81]=xe,E[82]=ee,E[83]=De):De=E[83],E[84]!==qe||E[85]!==De?(Je=i(g,{direction:"row",spacing:2,sx:Re,children:[qe,De]}),E[84]=qe,E[85]=De,E[86]=Je):Je=E[86],E[87]!==Ve||E[88]!==Ge||E[89]!==We||E[90]!==He||E[91]!==Je?(Ue=i(B,{children:[Ve,Ge,We,He,Je]}),E[87]=Ve,E[88]=Ge,E[89]=We,E[90]=He,E[91]=Je,E[92]=Ue):Ue=E[92],E[93]!==ze||E[94]!==Ue?(Ye=i(r,{children:[ze,Ue]}),E[93]=ze,E[94]=Ue,E[95]=Ye):Ye=E[95],E[96]!==U||E[97]!==J||E[98]!==Ye?(Ke=o(a,{minWidth:460,open:J,onClose:U,children:Ye}),E[96]=U,E[97]=J,E[98]=Ye,E[99]=Ke):Ke=E[99],Ke};export{R as RenderSectionEditModal};
1
+ import{c as e}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import t from"@mui/material/Typography";import"@mui/material/Grid";import{jsxs as o,jsx as i,Fragment as r}from"react/jsx-runtime";import{ModalCommon as a}from"../../components/common/ModalCommon.js";import"../../components/common/Skeletons.js";import m from"react";import{useFormStateContext as l}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../providers/editor/EditorStateProvider.js";import"isomorphic-dompurify";import s from"@mui/material/Box";import c from"@mui/material/Button";import{Trash as p,CirclePlus as u,GalleryVertical as d,Columns2 as f,Columns3 as h,Columns4 as v,Pencil as b,Network as y,Ruler as C}from"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import x from"@mui/material/FormLabel";import"@mui/material/IconButton";import g from"@mui/material/Stack";import"@mui/material/Tooltip";import{getDefaultData as S,Mapper as I}from"../../utils/config-map.js";import{getLocale as T,LocaleMap as w}from"../../utils/locale.js";import{ConditionParser as z}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as j}from"../../utils/parsers/LegacyConditionParser.js";import{RichTextEditor as k}from"@famalabs/web-ui";import"react-hook-form";import O from"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import{useTheme as _}from"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"acorn";import{ItemConditional as Q}from"@famalabs/survey";import A from"@mui/material/Badge";import B from"@mui/material/CardContent";import F from"@mui/material/CardHeader";import M from"@mui/material/Tab";import P from"@mui/material/Tabs";import L from"@mui/material/ToggleButton";import N from"@mui/material/ToggleButtonGroup";import{isEqual as V}from"lodash-es";import{useQuestionState as G}from"../../hooks/editor/QuestionOperations.js";import{OptionTextField as W}from"../common/OptionsEditor.js";import{EditCondition as H}from"../question_forms/ItemConditionalEditor.js";const R=R=>{const E=e(100),{currentSection:q,currentSectionIndex:D,open:J,closeModal:U}=R,{stageMutation:Y,globalConfig:K}=l(),{editorState:X}=n(),Z=G(q),$=_(),ee=K.readonlyMode;let te;E[0]!==q?(te=q instanceof Q?j(q):q.parent()instanceof Q?j(q.parent()):void 0,E[0]=q,E[1]=te):te=E[1];const oe=te;let ie;E[2]!==q?(ie=q instanceof Q?q:q.parent()instanceof Q?q.parent():void 0,E[2]=q,E[3]=ie):ie=E[3];const re=ie,[ae,me]=m.useState(!1),[le,ne]=m.useState();ae||le||!oe||(ne(oe),me(!0));const[se,ce]=m.useState(oe?"edit":null),[pe,ue]=m.useState("edit");let de;E[4]!==q||E[5]!==X||E[6]!==Z.value?(de=async()=>{await X.updateItem(q,void 0,Z.value,"silent")},E[4]=q,E[5]=X,E[6]=Z.value,E[7]=de):de=E[7];const fe=de;let he;E[8]!==q?(he=q.parent().items.indexOf(q),E[8]=q,E[9]=he):he=E[9];const ve=he;let be;E[10]!==q||E[11]!==Y?(be=e=>{const t=Y(t=>t.add(q.parent()?.id,{...S(I.cond.type)},e??-1));if(!t)return;Y(e=>{e.remove(t.id)});const o={...t.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};ne(o),ce("new")},E[10]=q,E[11]=Y,E[12]=be):be=E[12];const ye=be;let Ce;E[13]!==le||E[14]!==se||E[15]!==q||E[16]!==D||E[17]!==X||E[18]!==re?(Ce=async e=>{e:switch(se){case"new":{if(!le||!e)return;const t=z(e),o=await X.addQuestion(I.cond.type,q.parent()?.id,D+1,void 0,"silent");await X.updateItem(o,void 0,t,"silent"),await X.moveItem(q,0,o.id,"silent"),ce("edit");break e}case"edit":{if(!re||!e)return;const t=z(e);await X.updateItem(re,void 0,t,"silent"),ce("edit");break e}case"remove":if(!re)return;await X.moveItem(q,re.parent().items.indexOf(re),re.parent().id,"silent"),await X.removeItem(re,"silent"),ce("new")}},E[13]=le,E[14]=se,E[15]=q,E[16]=D,E[17]=X,E[18]=re,E[19]=Ce):Ce=E[19];const xe=Ce;let ge;e:{if("edit"===pe){let e;E[20]!==q||E[21]!==Z.value?(e=V(Z.value,q.toJSON()),E[20]=q,E[21]=Z.value,E[22]=e):e=E[22],ge=e;break e}if("cond"===pe){if("remove"===se){ge=!1;break e}if(!le&&oe){ge=!1;break e}if(!le&&!oe){ge=!0;break e}const e=le?.expression,t=e?.left,o=e?.right;let i;E[23]!==e?.operator||E[24]!==le||E[25]!==t?.name||E[26]!==oe||E[27]!==o?.value?(i=!t?.name||!e?.operator||void 0===o?.value||V(le,oe),E[23]=e?.operator,E[24]=le,E[25]=t?.name,E[26]=oe,E[27]=o?.value,E[28]=i):i=E[28],ge=i;break e}ge=!1}const Se=ge;let Ie;E[29]!==U||E[30]!==le||E[31]!==se||E[32]!==X||E[33]!==fe||E[34]!==xe?(Ie=async()=>{await fe(),(le||"remove"===se)&&await xe(le),X.refreshSurveyInstance(),U(),await X.createHistorySnapshot()},E[29]=U,E[30]=le,E[31]=se,E[32]=X,E[33]=fe,E[34]=xe,E[35]=Ie):Ie=E[35];const Te=Ie,we=("item"!==q.type?D:"")+" "+q.text;let ze,je,ke,Oe,_e,Qe,Ae;E[36]!==$.palette.primary.contrastText?(ze={title:{sx:{color:$.palette.primary.contrastText}},subheader:{sx:{color:$.palette.primary.contrastText}}},E[36]=$.palette.primary.contrastText,E[37]=ze):ze=E[37],E[38]!==$.palette.primary.main?(je={backgroundColor:$.palette.primary.main},E[38]=$.palette.primary.main,E[39]=je):je=E[39],E[40]!==je||E[41]!==we||E[42]!==ze?(ke=i(F,{title:we,subheader:null,slotProps:ze,sx:je}),E[40]=je,E[41]=we,E[42]=ze,E[43]=ke):ke=E[43],E[44]===Symbol.for("react.memo_cache_sentinel")?(Oe={width:"100%",borderBottom:1,borderColor:"divider"},E[44]=Oe):Oe=E[44],E[45]===Symbol.for("react.memo_cache_sentinel")?(_e=(e,t)=>ue(t),Qe={justifyContent:"center"},E[45]=_e,E[46]=Qe):(_e=E[45],Qe=E[46]),E[47]===Symbol.for("react.memo_cache_sentinel")?(Ae=i(b,{size:20}),E[47]=Ae):Ae=E[47];const Be="edit"===pe?"MODIFICA":null;let Fe,Me;E[48]!==Be?(Fe=i(M,{icon:Ae,iconPosition:"start",label:Be,value:"edit"}),E[48]=Be,E[49]=Fe):Fe=E[49],E[50]!==le?(Me=le?i(A,{color:"secondary",badgeContent:"",variant:"dot",children:i(y,{size:20})}):i(y,{size:20}),E[50]=le,E[51]=Me):Me=E[51];const Pe="cond"===pe?"LOGICA":null;let Le,Ne;E[52]!==Me||E[53]!==Pe?(Le=i(M,{icon:Me,iconPosition:"start",label:Pe,value:"cond"}),E[52]=Me,E[53]=Pe,E[54]=Le):Le=E[54],E[55]===Symbol.for("react.memo_cache_sentinel")?(Ne=i(C,{size:20}),E[55]=Ne):Ne=E[55];const Ve="layout"===pe?"LAYOUT":null;let Ge,We,He,Re,Ee,qe;E[56]!==Ve?(Ge=i(M,{icon:Ne,iconPosition:"start",label:Ve,value:"layout"}),E[56]=Ve,E[57]=Ge):Ge=E[57],E[58]!==pe||E[59]!==Fe||E[60]!==Le||E[61]!==Ge?(We=i(s,{sx:Oe,children:o(P,{value:pe,onChange:_e,sx:Qe,children:[Fe,Le,Ge]})}),E[58]=pe,E[59]=Fe,E[60]=Le,E[61]=Ge,E[62]=We):We=E[62],E[63]!==pe||E[64]!==Z?(He="edit"===pe&&o(g,{spacing:2,sx:{p:3},children:[i(W,{label:"Titolo",defaultValue:null,text:T(w.items.item.section.pageName),value:Z.getQuestionValue("text"),handleOnChange:e=>Z.updateItem("text",e),fullWidth:!0,size:"small"}),i(W,{label:"name",defaultValue:null,text:"Nome esportazione",hint:"Il nome del campo da visualizzare nelle esportazioni",value:Z.getQuestionValue("name"),handleOnChange:e=>Z.updateItem("name",e),fullWidth:!0,size:"small"}),i(k,{placeholder:"Indicazioni aggiuntive per il completamento del campo",value:Z.getQuestionValue("description"),onChange:e=>Z.updateItem("description",e)})]}),E[63]=pe,E[64]=Z,E[65]=He):He=E[65],E[66]!==ye||E[67]!==le||E[68]!==q||E[69]!==pe||E[70]!==ve||E[71]!==ee?(Re="cond"===pe&&i(s,{sx:{pt:4,pl:2,pr:2,pb:4,justifyContent:"flex-start"},children:le?o(r,{children:[i(H,{question:q,itemCondition:le,setItemCondition:ne,readonlyMode:ee}),le.id!==q.id&&o(c,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>{ne(void 0),ce("remove")},disabled:ee,children:[i(p,{size:20}),i(t,{sx:{pl:1},children:"Rimuovi condizione"})]})]}):o(c,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>ye(ve+1),disabled:ee,children:[i(u,{size:20}),i(t,{sx:{pl:1},children:"Aggiungi condizione"})]})}),E[66]=ye,E[67]=le,E[68]=q,E[69]=pe,E[70]=ve,E[71]=ee,E[72]=Re):Re=E[72],E[73]!==pe||E[74]!==Z?(Ee="layout"===pe&&i(g,{spacing:2,sx:{p:3},children:o(O,{children:[i(x,{children:"Colonne"}),o(N,{exclusive:!0,color:"primary",value:Z.getQuestionValue("layout.columns"),onChange:(e,t)=>{Z.updateItem("layout.columns",Number(t))},"aria-label":"columns layout",children:[i(L,{value:1,title:"1 colonna","aria-label":"1 colonna",children:i(d,{size:20})}),i(L,{value:2,title:"2 colonne","aria-label":"2 colonne",children:i(f,{size:20})}),i(L,{value:3,title:"3 colonne","aria-label":"3 colonne",children:i(h,{size:20})}),i(L,{value:4,title:"4 colonne","aria-label":"4 colonne",children:i(v,{size:20})})]})]})}),E[73]=pe,E[74]=Z,E[75]=Ee):Ee=E[75],E[76]===Symbol.for("react.memo_cache_sentinel")?(qe={justifyContent:"flex-end",p:3},E[76]=qe):qe=E[76];const De=ee?"Chiudi":"Annulla";let Je,Ue,Ye,Ke,Xe,Ze;return E[77]!==U||E[78]!==De?(Je=i(c,{variant:"outlined",color:"secondary",onClick:U,children:De}),E[77]=U,E[78]=De,E[79]=Je):Je=E[79],E[80]!==Te||E[81]!==Se||E[82]!==ee?(Ue=!ee&&i(c,{variant:"contained",color:"primary",disabled:Se,onClick:Te,children:"Salva"}),E[80]=Te,E[81]=Se,E[82]=ee,E[83]=Ue):Ue=E[83],E[84]!==Je||E[85]!==Ue?(Ye=o(g,{direction:"row",spacing:2,sx:qe,children:[Je,Ue]}),E[84]=Je,E[85]=Ue,E[86]=Ye):Ye=E[86],E[87]!==We||E[88]!==He||E[89]!==Re||E[90]!==Ee||E[91]!==Ye?(Ke=o(B,{children:[We,He,Re,Ee,Ye]}),E[87]=We,E[88]=He,E[89]=Re,E[90]=Ee,E[91]=Ye,E[92]=Ke):Ke=E[92],E[93]!==ke||E[94]!==Ke?(Xe=o(r,{children:[ke,Ke]}),E[93]=ke,E[94]=Ke,E[95]=Xe):Xe=E[95],E[96]!==U||E[97]!==J||E[98]!==Xe?(Ze=i(a,{minWidth:460,open:J,onClose:U,children:Xe}),E[96]=U,E[97]=J,E[98]=Xe,E[99]=Ze):Ze=E[99],Ze};export{R as RenderSectionEditModal};
@@ -1 +1 @@
1
- import{c as i}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import"@mui/material/Typography";import t from"@mui/material/Grid";import{jsx as m,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../components/common/Skeletons.js";import{SectionCommon as e}from"../../components/common/SectionCommon.js";import"isomorphic-dompurify";import"react";import"@mui/material/Box";import"@mui/material/Button";import"lucide-react";import"@mui/material/SvgIcon";import{useFormStateContext as r}from"../../providers/common/FormStateProvider.js";import"@mui/material/Chip";import"@mui/material/FormLabel";import"@mui/material/IconButton";import"@mui/material/Stack";import"@mui/material/Tooltip";import{getMapType as a,Mapper as n}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import{useEditorStateContext as l}from"../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as p,useSetQuestionEdit as s}from"../../providers/editor/QuestionEditProvider.js";import{AddQuestionMenu as u}from"../common/CommonEditor.js";import{QuestionEditorComponent as d}from"../question_editor/QuestionMainComponent.js";function c(c){const f=i(27),{index:b,section:C}=c,{globalConfig:j}=r(),{editorState:h}=l(),y=p(),g=s(),x=j.readonlyMode,Q=12/(Number(C?.layout?.columns)||1);let T;f[0]!==y||f[1]!==C.items||f[2]!==Q?(T=C.items.some(i=>a(i)===n.cond.type?i.items.some(i=>i.id===y.id):i.id===y.id)?12:Q,f[0]=y,f[1]=C.items,f[2]=Q,f[3]=T):T=f[3];const v=T;let S;f[4]!==h||f[5]!==C.id||f[6]!==g?(S=async i=>{if(void 0!==i){const t=await h.addQuestion(i,C.id);if(!t)return;g({id:t.id,isNew:!0})}},f[4]=h,f[5]=C.id,f[6]=g,f[7]=S):S=f[7];const I=S;let $,F,w;if(f[8]!==b||f[9]!==C.items||f[10]!==v){let i;f[12]!==b||f[13]!==v?(i=(i,o)=>n.cond.type===a(i)&&i.items?i.items.map(i=>m(t,{id:`Question-${i.id}`,size:v,children:m(d,{globalQuestionIndex:`${b}.${o+1}`,question:i})},i.id)):m(t,{id:`Question-${i.id}`,size:v,children:m(d,{globalQuestionIndex:`${b}.${o+1}`,question:i})},i.id),f[12]=b,f[13]=v,f[14]=i):i=f[14],$=C.items.map(i),f[8]=b,f[9]=C.items,f[10]=v,f[11]=$}else $=f[11];f[15]!==I||f[16]!==b||f[17]!==x||f[18]!==C.items.length?(F=!x&&m(t,{container:!0,size:12,justifyContent:"center",alignItems:"center",children:m(u,{handleAddQuestion:I,nextQuestionIndex:`${b}.${C.items.length+1}`})}),f[15]=I,f[16]=b,f[17]=x,f[18]=C.items.length,f[19]=F):F=f[19],f[20]!==$||f[21]!==F?(w=o(t,{container:!0,size:12,spacing:1,children:[$,F]}),f[20]=$,f[21]=F,f[22]=w):w=f[22];const z=w;let M;return f[23]!==b||f[24]!==z||f[25]!==C?(M=m(e,{index:b,question:C,content:z}),f[23]=b,f[24]=z,f[25]=C,f[26]=M):M=f[26],M}export{c as SectionPreview};
1
+ import{c as i}from"react/compiler-runtime";import"../../components/common/DrawerCommon.js";import"@mui/material/Typography";import t from"@mui/material/Grid";import{jsx as m,jsxs as o}from"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../components/common/Skeletons.js";import{SectionCommon as r}from"../../components/common/SectionCommon.js";import"isomorphic-dompurify";import"react";import"@mui/material/Box";import"@mui/material/Button";import"lucide-react";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";import"@mui/material/IconButton";import"@mui/material/Stack";import"@mui/material/Tooltip";import{useFormStateContext as e}from"../../providers/common/FormStateProvider.js";import{getMapType as a,Mapper as n}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import"@famalabs/web-ui";import"react-hook-form";import"@mui/material/FormControl";import"@mui/material/FormControlLabel";import"@mui/material/MenuItem";import"@mui/material/Radio";import"@mui/material/RadioGroup";import"@mui/material/Select";import"@mui/material/Checkbox";import"@mui/material/Switch";import"../../components/forms/QuestionNumberCommon.js";import"@mui/material/Table";import"@mui/material/TableBody";import"@mui/material/TableCell";import"@mui/material/TableContainer";import"@mui/material/TableHead";import"@mui/material/TableRow";import"dayjs";import"@mui/material/Autocomplete";import"@mui/material/FormGroup";import"@mui/material/FormHelperText";import"@mui/material/ListItem";import"@mui/material/TextField";import"../../components/forms/QuestionListCommon.js";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import{useEditorStateContext as l}from"../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as p,useSetQuestionEdit as s}from"../../providers/editor/QuestionEditProvider.js";import{AddQuestionMenu as u}from"../common/CommonEditor.js";import{QuestionEditorComponent as d}from"../question_editor/QuestionMainComponent.js";function c(c){const b=i(27),{index:C,section:j}=c,{globalConfig:h}=e(),{editorState:y}=l(),g=p(),x=s(),Q=h.readonlyMode,T=12/(Number(j?.layout?.columns)||1);let v;b[0]!==g||b[1]!==j.items||b[2]!==T?(v=j.items.some(i=>a(i)===n.cond.type?i.items.some(i=>i.id===g.id):i.id===g.id)?12:T,b[0]=g,b[1]=j.items,b[2]=T,b[3]=v):v=b[3];const S=v;let I;b[4]!==y||b[5]!==j.id||b[6]!==x?(I=async i=>{if(void 0!==i){const t=await y.addQuestion(i,j.id);if(!t)return;x({id:t.id,isNew:!0})}},b[4]=y,b[5]=j.id,b[6]=x,b[7]=I):I=b[7];const $=I;let F,w,z;if(b[8]!==C||b[9]!==j.items||b[10]!==S){let i;b[12]!==C||b[13]!==S?(i=(i,o)=>{if(!i)return null;return n.cond.type===a(i)&&i.items?i.items.map(i=>i?m(t,{id:`Question-${i.id}`,size:S,children:m(d,{globalQuestionIndex:`${C}.${o+1}`,question:i})},i.id):null):m(t,{id:`Question-${i.id}`,size:S,children:m(d,{globalQuestionIndex:`${C}.${o+1}`,question:i})},i.id)},b[12]=C,b[13]=S,b[14]=i):i=b[14],F=j.items.filter(f).map(i),b[8]=C,b[9]=j.items,b[10]=S,b[11]=F}else F=b[11];b[15]!==$||b[16]!==C||b[17]!==Q||b[18]!==j.items.length?(w=!Q&&m(t,{container:!0,size:12,justifyContent:"center",alignItems:"center",children:m(u,{handleAddQuestion:$,nextQuestionIndex:`${C}.${j.items.length+1}`})}),b[15]=$,b[16]=C,b[17]=Q,b[18]=j.items.length,b[19]=w):w=b[19],b[20]!==F||b[21]!==w?(z=o(t,{container:!0,size:12,spacing:1,children:[F,w]}),b[20]=F,b[21]=w,b[22]=z):z=b[22];const M=z;let k;return b[23]!==C||b[24]!==M||b[25]!==j?(k=m(r,{index:C,question:j,content:M}),b[23]=C,b[24]=M,b[25]=j,b[26]=k):k=b[26],k}function f(i){return null!=i}export{c as SectionPreview};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import{useFormStateContext as t}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as o,useSetQuestionEdit as i}from"../../providers/editor/QuestionEditProvider.js";import a,{startTransition as r,useEffectEvent as l,useEffect as s}from"react";import{jsx as c,jsxs as d,Fragment as u}from"react/jsx-runtime";import{useQuestionStateContext as m}from"../../providers/editor/QuestionStateProvider.js";import{useTabStateContext as p}from"../../providers/editor/TabStateProvider.js";import{ItemConditional as f,QuestionSelect as h,Question as y}from"@famalabs/survey";import g from"@mui/lab/TabContext";import b from"@mui/lab/TabList";import v from"@mui/lab/TabPanel";import x from"@mui/material/Badge";import I from"@mui/material/Box";import C from"@mui/material/Button";import S from"@mui/material/Checkbox";import w from"@mui/material/Divider";import k from"@mui/material/FormControlLabel";import Q from"@mui/material/Grid";import _ from"@mui/material/MenuItem";import V from"@mui/material/Select";import z from"@mui/material/Stack";import M from"@mui/material/Tab";import q from"@mui/material/Typography";import j from"lodash-es/isEqual";import{Pencil as N,Network as O,Settings as E,Trash2 as P,PlusCircle as T}from"lucide-react";import{getMapType as A,Mapper as B,getDefaultData as L}from"../../utils/config-map.js";import"../../utils/locale.js";import{formatName as D}from"../../utils/format-utils.js";import{ConditionParser as R}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as W}from"../../utils/parsers/LegacyConditionParser.js";import{QuestionGeneralEdit as F}from"../common/CommonEditor.js";import{EditCondition as J,EditExpression as U}from"../question_forms/ItemConditionalEditor.js";function G(t){const l=e(108),{index:s,question:y,contentEdit:C,contentOptions:S,contentLayout:k,readonlyMode:Q}=t,_=void 0!==Q&&Q,{editorState:V,navigationState:q}=n(),P=m(),T=o(),L=i(),{currentEditTab:J,setCurrentEditTab:U}=p();let G;l[0]!==U?(G=(e,t)=>{r(()=>{U(t)})},l[0]=U,l[1]=G):G=l[1];const oe=G;let ye;l[2]!==P?(ye=P.getQuestionValue("options.min"),l[2]=P,l[3]=ye):ye=l[3];const ge=ye;let be;l[4]!==P?(be=P.getQuestionValue("options.max"),l[4]=P,l[5]=be):be=l[5];const ve=be;let xe;l[6]!==P?(xe=P.getQuestionValue("options.step"),l[6]=P,l[7]=xe):xe=l[7];const Ie=Boolean(ge||ve||xe);let Ce;l[8]!==y?(Ce=A(y),l[8]=y,l[9]=Ce):Ce=l[9];const Se=Ce===B.section.type;let we;l[10]!==y?(we=y instanceof f?y:y.parent()instanceof f?y.parent():null,l[10]=y,l[11]=we):we=l[11];const ke=we,Qe=a.useRef(null);let _e;l[12]===Symbol.for("react.memo_cache_sentinel")?(_e=()=>{if(Qe.current){const e=Qe.current.querySelectorAll("input, textarea");e.length>0&&e.forEach(pe)}},l[12]=_e):_e=l[12];const Ve=_e;let ze;l[13]!==T.isNew||l[14]!==y||l[15]!==P?(ze=()=>{const e=A(y),t=P.getQuestionValue("text")||"",n=e===B.cond.type||e===B.section.type||Boolean(t&&t.length>0);if(!n)return!1;if(y instanceof h){const e=P.getQuestionValue("options.select")??[];if(!e||0===e.length)return!1;const t=e.map(me);if(t.includes("")||t.some(ue))return!1;const n=e.map(de);if(n.length!==new Set(n).size)return!1}if("list"===y.type){const e=P.getQuestionValue("options.source")||"";return Boolean(e&&e.length>0)}if(e===B.multipleSelect.type||e===B.autocomplete.type){const e=(P.getQuestionValue("items")??[]).filter(ce);if(!e||0===e.length)return!1;const t=e.map(se);if(t.includes("")||t.some(le))return!1;if(t.length!==new Set(t).size)return!1}if(e===B.selectTable.type){const e=(P.getQuestionValue("items")??[]).filter(re);if(!e||0===e.length)return!1;const t=e.map(ae);if(t.includes("")||t.some(ie))return!1;if(t.length!==new Set(t).size)return!1}if(e===B.fn.type){return(P.getQuestionValue("parameters")??[]).length>=2}if(T.isNew&&(e===B.alert.type||e===B.cond.type)){const e=P.getQuestionValue("conditionCache")?.expression,t=e?.right;return null!=t?.value}return e===B.section.type||n},l[13]=T.isNew,l[14]=y,l[15]=P,l[16]=ze):ze=l[16];const Me=ze;let qe;l[17]!==V?(qe=V.getLatestId(),l[17]=V,l[18]=qe):qe=l[18];const je=a.useRef(qe);let Ne;l[19]!==V||l[20]!==y||l[21]!==P?(Ne=async()=>{const e=ne,t=P.getQuestionValue("layout.required"),n=(P.getQuestionValue("items")??[]).filter(te),o=y.items?.filter(ee).map(Y)||[],i=n.filter(X),a=i.filter(e=>!o.find(t=>t.id===e.id)),r=i.map(e=>{const t=o.find(t=>t.id===e.id);return t?{...t,name:e.name,text:e.text}:a.find(t=>t.name===e.name)}).filter(Boolean),l=n?.find(K),s=l?{...l,parameters:r.map(Z)}:{id:(je.current+r.length+1).toString(),type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map($)},c=n?.find(H),d=s&&c?{...c,parameters:[s.id]}:{id:(je.current+r.length+2).toString(),type:"cond",parameters:[s.id],condition:`($${s.id} < 1)`};t?await V.replaceItem(y,{...P.value,items:e([s,W(d),...r])},"full"):!P.getQuestionValue("layout.required")&&d&&await V.replaceItem(y,{...P.value,items:e([s,...r])},"full")},l[19]=V,l[20]=y,l[21]=P,l[22]=Ne):Ne=l[22];const Oe=Ne;let Ee;l[23]!==V||l[24]!==y||l[25]!==P.value?(Ee=async()=>{await V.replaceItem(y,{...P.value},"full")},l[23]=V,l[24]=y,l[25]=P.value,l[26]=Ee):Ee=l[26];const Pe=Ee;let Te;l[27]!==V||l[28]!==ke||l[29]!==q||l[30]!==y||l[31]!==P?(Te=async()=>{const e=P.getQuestionValue("conditionCache"),t=e?R(e):null,n=P.getQuestionValue("conditionState")??"",o=q.getItem(y.id)?.localIndex??-1;e:switch(n){case"new":{const e=await V.addQuestion(B.cond.type,y.parent().id,o+1,void 0,"silent");await V.updateItem(e,void 0,t,"silent"),await V.moveItem(y,0,e.id,"silent"),P.updateItem("conditionState","edit");break e}case"alert":{const e=await V.addQuestion(B.alert.type,y.parent().id,o+1,void 0,"silent");await V.updateItem(e,void 0,{...t,text:P.getQuestionValue("text"),description:P.getQuestionValue("description")||"",name:P.getQuestionValue("name")||D(P.getQuestionValue("text"))},"silent"),await V.removeItem(y),P.updateItem("conditionState","edit");break e}case"edit":if(!ke)return;if(j(t,ke.toJSON())||null===t)return;A(ke)===B.alert.type?await V.replaceItem(ke,t,"silent"):await V.updateItem(ke,void 0,t,"silent"),P.updateItem("conditionState","edit");break e;case"remove":if(!ke)return;await V.moveItem(y,ke.parent().items.indexOf(ke),ke.parent().id,"silent"),await V.removeItem(ke,"silent"),P.updateItem("conditionState","new")}},l[27]=V,l[28]=ke,l[29]=q,l[30]=y,l[31]=P,l[32]=Te):Te=l[32];const Ae=Te;let Be;l[33]!==V||l[34]!==P?(Be=async e=>{const t=P.getQuestionValue("text"),n=P.getQuestionValue("description"),o=P.getQuestionValue("name"),i=D(t);P.updateItem("name",o||i),await V.updateItem(e,void 0,{...P.value,text:t,description:n||"",name:o||i},"full")},l[33]=V,l[34]=P,l[35]=Be):Be=l[35];const Le=Be;let De;l[36]!==V||l[37]!==Ae||l[38]!==Me||l[39]!==Oe||l[40]!==y||l[41]!==_||l[42]!==L||l[43]!==Pe||l[44]!==Le?(De=async()=>{Me()&&!_&&(A(y)===B.multipleSelect.type||A(y)===B.autocomplete.type?await Oe():A(y)===B.selectTable.type&&await Pe(),await Ae(),await Le(y),L({id:"",isNew:!1}),await V.createHistorySnapshot())},l[36]=V,l[37]=Ae,l[38]=Me,l[39]=Oe,l[40]=y,l[41]=_,l[42]=L,l[43]=Pe,l[44]=Le,l[45]=De):De=l[45];const Re=De;let We;l[46]!==T.isNew||l[47]!==V||l[48]!==y||l[49]!==P||l[50]!==L?(We=async()=>{T.isNew&&await V.removeItem(y),L({id:"",isNew:!1}),P.updateItem(null,y.toJSON())},l[46]=T.isNew,l[47]=V,l[48]=y,l[49]=P,l[50]=L,l[51]=We):We=l[51];const Fe=We;let Je,Ue,Ge,He;l[52]===Symbol.for("react.memo_cache_sentinel")?(Je={borderRadius:3,bgcolor:"background.paper",boxShadow:"rgba(25, 25, 25, 0.09) 0px 0px 0px 3px",border:"1px solid rgba(25, 25, 25, 0.15)",minHeight:"20vh"},l[52]=Je):Je=l[52],l[53]===Symbol.for("react.memo_cache_sentinel")?(Ue={width:"100%",borderBottom:1,borderColor:"divider"},l[53]=Ue):Ue=l[53],l[54]===Symbol.for("react.memo_cache_sentinel")?(Ge={justifyContent:"center"},l[54]=Ge):Ge=l[54],l[55]===Symbol.for("react.memo_cache_sentinel")?(He=c(N,{size:20}),l[55]=He):He=l[55];const $e="main"===J?"MODIFICA":null;let Ze,Ke;l[56]!==$e?(Ze=c(M,{"aria-label":"tab-main-panel",icon:He,iconPosition:"start",label:$e,value:"main"}),l[56]=$e,l[57]=Ze):Ze=l[57],l[58]!==ke?(Ke=ke?c(x,{color:"secondary",badgeContent:"",variant:"dot",children:c(O,{size:20})}):c(O,{size:20}),l[58]=ke,l[59]=Ke):Ke=l[59];const Xe="condition"===J?"LOGICA":null;let Ye,et,tt,nt,ot,it,at,rt;l[60]!==Ke||l[61]!==Xe?(Ye=c(M,{"aria-label":"tab-condition-panel",icon:Ke,iconPosition:"start",label:Xe,value:"condition"}),l[60]=Ke,l[61]=Xe,l[62]=Ye):Ye=l[62],l[63]!==J||l[64]!==Ie||l[65]!==Se?(et=!Se&&c(M,{"aria-label":"tab-options-panel",className:"optionsTab",icon:Ie?c(x,{color:"secondary",badgeContent:"",variant:"dot",children:c(E,{size:20})}):c(E,{size:20}),iconPosition:"start",label:"options"===J?"OPZIONI":null,value:"options"}),l[63]=J,l[64]=Ie,l[65]=Se,l[66]=et):et=l[66],l[67]!==oe||l[68]!==Ze||l[69]!==Ye||l[70]!==et?(tt=c(I,{sx:Ue,children:d(b,{onChange:oe,sx:Ge,children:[Ze,Ye,et]})}),l[67]=oe,l[68]=Ze,l[69]=Ye,l[70]=et,l[71]=tt):tt=l[71],l[72]===Symbol.for("react.memo_cache_sentinel")?(nt={p:0},l[72]=nt):nt=l[72],l[73]!==y||l[74]!==_?(ot=c(F,{item:y,readonlyMode:_}),l[73]=y,l[74]=_,l[75]=ot):ot=l[75],l[76]!==C?(it=C&&d(u,{children:[c(w,{textAlign:"left"}),C]}),l[76]=C,l[77]=it):it=l[77],l[78]!==ot||l[79]!==it?(at=c(v,{ref:Qe,"aria-label":"tab-main-panel",value:"main",keepMounted:!0,sx:nt,children:d(I,{children:[ot,it]})}),l[78]=ot,l[79]=it,l[80]=at):at=l[80],l[81]===Symbol.for("react.memo_cache_sentinel")?(rt={p:0},l[81]=rt):rt=l[81];const lt=parseInt(s);let st,ct,dt,ut,mt,pt;l[82]!==y||l[83]!==_||l[84]!==lt?(st=c(v,{value:"condition",keepMounted:!0,"aria-label":"tab-condition-panel",sx:rt,children:c(fe,{question:y,questionIndex:lt,readonlyMode:_})}),l[82]=y,l[83]=_,l[84]=lt,l[85]=st):st=l[85],l[86]===Symbol.for("react.memo_cache_sentinel")?(ct={px:3,py:2,backgroundColor:"background.default"},l[86]=ct):ct=l[86],l[87]!==S?(dt=c(v,{ref:Qe,keepMounted:!0,"aria-label":"tab-options-panel",value:"options",sx:ct,children:S}),l[87]=S,l[88]=dt):dt=l[88],l[89]===Symbol.for("react.memo_cache_sentinel")?(ut={p:0},l[89]=ut):ut=l[89],l[90]!==k?(mt=c(v,{"aria-label":"tab-layout-panel",keepMounted:!0,value:"layout",sx:ut,children:k}),l[90]=k,l[91]=mt):mt=l[91],l[92]!==J||l[93]!==tt||l[94]!==at||l[95]!==st||l[96]!==dt||l[97]!==mt?(pt=d(g,{value:J,children:[tt,at,st,dt,mt]}),l[92]=J,l[93]=tt,l[94]=at,l[95]=st,l[96]=dt,l[97]=mt,l[98]=pt):pt=l[98];const ft=!Me();let ht,yt;return l[99]!==Fe||l[100]!==Re||l[101]!==y||l[102]!==_||l[103]!==ft?(ht=c(he,{question:y,handleOnSave:Re,handleOnCancel:Fe,isDisabled:ft,blurAllForms:Ve,readonlyMode:_}),l[99]=Fe,l[100]=Re,l[101]=y,l[102]=_,l[103]=ft,l[104]=ht):ht=l[104],l[105]!==pt||l[106]!==ht?(yt=d(z,{sx:Je,children:[pt,ht]}),l[105]=pt,l[106]=ht,l[107]=yt):yt=l[107],yt}function H(e){return A(e)===B.cond.type}function $(e){return e.id}function Z(e){return e.id}function K(e){return A(e)===B.fn.type}function X(e){return A(e)===B.check.type}function Y(e){return e.toJSON()}function ee(e){return A(e)===B.check.type}function te(e,t,n){return n.findIndex(t=>t.id===e.id)===t}function ne(e){return e&&0!==e.length?e.map(oe):[]}function oe(e){return A(e)===B.cond.type?R(e):e}function ie(e){return!e}function ae(e){return e.text}function re(e){return"fn"!==e.type&&"cond"!==e.type}function le(e){return!e}function se(e){return e.text}function ce(e){return"fn"!==e.type&&"cond"!==e.type}function de(e){return e.score}function ue(e){return!e}function me(e){return e.text}function pe(e){return e.blur()}const fe=n=>{const o=e(41),{question:i,questionIndex:a,readonlyMode:r}=n,{stageMutation:p}=t(),h=m();let y;o[0]!==i?(y=i instanceof f?W(i):i.parent()instanceof f?W(i.parent()):void 0,o[0]=i,o[1]=y):y=o[1];const g=y;let b;o[2]!==h?(b=h.getQuestionValue("conditionCache"),o[2]=h,o[3]=b):b=o[3];const v=b;let x;o[4]!==h?(x=h.getQuestionValue("conditionState"),o[4]=h,o[5]=x):x=o[5];const S=x;let k;o[6]!==h||o[7]!==p?(k=(e,t)=>{const n=p(n=>n.add(e.parent().id,{...L(B.cond.type)},t??-1));if(!n)return;p(e=>e.remove(n.id));const o={...n.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};h.updateItem("conditionCache",o),h.updateItem("conditionState","new")},o[6]=h,o[7]=p,o[8]=k):k=o[8];const Q=k;let z;o[9]!==S||o[10]!==g||o[11]!==i||o[12]!==a||o[13]!==h||o[14]!==p?(z=()=>{if(g){if(A(i)===B.alert.type&&!S){const e=p(e=>e.add(i.parent().id,{...L(B.alert.type),...h.value},a??-1));if(!e)return;p(t=>t.remove(e.id));const t={...e.toJSON(),expression:{type:"exp",left:null,operator:null,right:null,...g?.expression||{}}};return h.updateItem("conditionCache",t),void h.updateItem("conditionState","alert")}h.updateItem("conditionCache",g),h.updateItem("conditionState","edit")}},o[9]=S,o[10]=g,o[11]=i,o[12]=a,o[13]=h,o[14]=p,o[15]=z):z=o[15];const M=l(z);let j,N;o[16]!==M?(j=()=>{M()},o[16]=M,o[17]=j):j=o[17],o[18]===Symbol.for("react.memo_cache_sentinel")?(N=[],o[18]=N):N=o[18],s(j,N);const O=v?.expression,E=O?.left,D=O?.right;let R;o[19]!==O||o[20]!==v||o[21]!==h?(R=()=>{const e={...v,expression:{...O||{},type:"exp",left:O,operator:"&&",right:{type:"exp",operator:null,left:null,right:null}}};h.updateItem("conditionCache",e)},o[19]=O,o[20]=v,o[21]=h,o[22]=R):R=o[22];const F=R;let G;o[23]!==O||o[24]!==v||o[25]!==h?(G=e=>{const t="left"===e?"right":"left",n=O?.[t]??null,o=n?.left??null,i=o&&o.name?o.name:void 0;h.updateItem("conditionCache",{...v,expression:n,parameters:i?[i]:[]})},o[23]=O,o[24]=v,o[25]=h,o[26]=G):G=o[26];const H=G;if(r&&!v){let e;return o[27]===Symbol.for("react.memo_cache_sentinel")?(e=c(I,{sx:{pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},children:c(q,{children:"Nessuna condizione impostata"})}),o[27]=e):e=o[27],e}let $,Z;return o[28]===Symbol.for("react.memo_cache_sentinel")?($={pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},o[28]=$):$=o[28],o[29]!==Q||o[30]!==F||o[31]!==O||o[32]!==v||o[33]!==E||o[34]!==i||o[35]!==a||o[36]!==h||o[37]!==r||o[38]!==H||o[39]!==D?.type?(Z=c(I,{sx:$,children:v?v.id===i.id?c(J,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),readonlyMode:r}):d(u,!O||null!==O?.right&&"v"!==D?.type?{children:[c(U,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),path:"left",readonlyMode:r}),A(i)!==B.alert.type&&d(C,{fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>H("left"),disabled:r,sx:{mt:2,mb:2},children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]}),c(w,{}),d(V,{title:"Seleziona operatore",defaultValue:"",size:"small",value:O?.operator,disabled:r,onChange:async e=>{e.preventDefault();const t={...v,expression:{...O||{},operator:e.target.value}};h.updateItem("conditionCache",t)},sx:{backgroundColor:"background.default",mt:2,mb:1},children:[c(_,{value:"&&",children:"E"},"and"),c(_,{value:"||",children:"Oppure"},"or")]}),c(U,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),path:"right",readonlyMode:r}),d(C,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>H("right"),disabled:r,children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]})]}:{children:[c(J,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),readonlyMode:r}),A(i)!==B.alert.type&&d(C,{fullWidth:!1,variant:"contained",color:"secondary",onClick:async()=>{h.updateItem("conditionCache",null),h.updateItem("conditionState","remove")},disabled:r,sx:{mt:2},children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]}),d(I,{sx:{mt:2},children:[c(w,{}),d(C,{fullWidth:!1,variant:"contained",color:"primary",sx:{mt:2},disabled:!E||r,onClick:F,children:[c(T,{size:20}),c(q,{sx:{ml:1},children:"Aggiungi condizione"})]})]})]}):d(C,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>Q(i,a),disabled:r,children:[c(T,{size:20}),c(q,{sx:{ml:1},children:"Aggiungi condizione"})]})}),o[29]=Q,o[30]=F,o[31]=O,o[32]=v,o[33]=E,o[34]=i,o[35]=a,o[36]=h,o[37]=r,o[38]=H,o[39]=D?.type,o[40]=Z):Z=o[40],Z},he=t=>{const n=e(40),{question:o,handleOnSave:i,handleOnCancel:a,blurAllForms:r,isDisabled:l,readonlyMode:u}=t,p=m();let f,h,g;n[0]!==r||n[1]!==i||n[2]!==l?(f=()=>{const e=async e=>{"Enter"!==e.key||l||(r(),await i())};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},h=[r,i,l],n[0]=r,n[1]=i,n[2]=l,n[3]=f,n[4]=h):(f=n[3],h=n[4]),s(f,h),n[5]!==o?(g=o instanceof y||B.multipleSelect.type===A(o)||B.autocomplete.type===A(o)||B.fileUpload.type===A(o),n[5]=o,n[6]=g):g=n[6];const b=g;let v;n[7]!==o||n[8]!==p?(v=B.multipleSelect.type!==A(o)&&A(o)!==B.autocomplete.type||!o.items.length?p.getQuestionValue("options.required"):p.getQuestionValue("layout.required"),n[7]=o,n[8]=p,n[9]=v):v=n[9];const x=v;let I;n[10]!==o||n[11]!==p||n[12]!==u?(I=async e=>{u||(B.multipleSelect.type!==A(o)&&A(o)!==B.autocomplete.type||!o.items.length?p.updateItem("options.required",e.target.checked):p.updateItem("layout.required",e.target.checked))},n[10]=o,n[11]=p,n[12]=u,n[13]=I):I=n[13];const w=I;let _,V,M,q,j;n[14]===Symbol.for("react.memo_cache_sentinel")?(_={width:"100%",flexWrap:"nowrap",justifyContent:"space-between",alignItems:"center",p:2},n[14]=_):_=n[14],n[15]!==b||n[16]!==x||n[17]!==w||n[18]!==u?(V=b&&c(k,{label:"Obbligatorio",control:c(S,{checked:x,onChange:w}),disabled:u}),n[15]=b,n[16]=x,n[17]=w,n[18]=u,n[19]=V):V=n[19],n[20]===Symbol.for("react.memo_cache_sentinel")?(M={justifyContent:"flex-end",width:"100%",alignItems:"center"},n[20]=M):M=n[20],n[21]!==r?(q=()=>r(),n[21]=r,n[22]=q):q=n[22],n[23]!==a?(j=()=>a(),n[23]=a,n[24]=j):j=n[24];const N=u?"Chiudi":"Annulla";let O,E,P,T;return n[25]!==N||n[26]!==q||n[27]!==j?(O=c(C,{variant:"outlined",color:"secondary",onMouseDown:q,onMouseUp:j,children:N}),n[25]=N,n[26]=q,n[27]=j,n[28]=O):O=n[28],n[29]!==r||n[30]!==i||n[31]!==l||n[32]!==u?(E=!u&&c(C,{variant:"contained",color:"primary",className:"save",disabled:l,onMouseDown:()=>r(),onMouseUp:()=>i(),children:"Salva"}),n[29]=r,n[30]=i,n[31]=l,n[32]=u,n[33]=E):E=n[33],n[34]!==O||n[35]!==E?(P=d(z,{direction:"row",spacing:1,sx:M,children:[O,E]}),n[34]=O,n[35]=E,n[36]=P):P=n[36],n[37]!==P||n[38]!==V?(T=d(Q,{container:!0,sx:_,children:[V,P]}),n[37]=P,n[38]=V,n[39]=T):T=n[39],T};export{G as CommonQuestionEditor};
1
+ import{c as e}from"react/compiler-runtime";import{useFormStateContext as t}from"../../providers/common/FormStateProvider.js";import{useEditorStateContext as n}from"../../providers/editor/EditorStateProvider.js";import{useGetCurrentQuestionEdit as o,useSetQuestionEdit as i}from"../../providers/editor/QuestionEditProvider.js";import a,{startTransition as r,useEffectEvent as l,useEffect as s}from"react";import{jsx as c,jsxs as u,Fragment as d}from"react/jsx-runtime";import{useQuestionStateContext as m}from"../../providers/editor/QuestionStateProvider.js";import{useTabStateContext as p}from"../../providers/editor/TabStateProvider.js";import{ItemConditional as f,QuestionSelect as h,Question as y}from"@famalabs/survey";import g from"@mui/lab/TabContext";import b from"@mui/lab/TabList";import v from"@mui/lab/TabPanel";import x from"@mui/material/Badge";import I from"@mui/material/Box";import C from"@mui/material/Button";import S from"@mui/material/Checkbox";import w from"@mui/material/Divider";import Q from"@mui/material/FormControlLabel";import k from"@mui/material/Grid";import V from"@mui/material/MenuItem";import _ from"@mui/material/Select";import z from"@mui/material/Stack";import M from"@mui/material/Tab";import q from"@mui/material/Typography";import j from"lodash-es/isEqual";import{Pencil as N,Network as O,Settings as E,Trash2 as P,PlusCircle as T}from"lucide-react";import{getMapType as A,Mapper as D,getDefaultData as B}from"../../utils/config-map.js";import"../../utils/locale.js";import{formatName as L}from"../../utils/format-utils.js";import{ConditionParser as R}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as W}from"../../utils/parsers/LegacyConditionParser.js";import{QuestionGeneralEdit as F}from"../common/CommonEditor.js";import{EditCondition as J,EditExpression as U}from"../question_forms/ItemConditionalEditor.js";function G(t){const l=e(108),{index:s,question:y,contentEdit:C,contentOptions:S,contentLayout:Q,readonlyMode:k}=t,V=void 0!==k&&k,{editorState:_,navigationState:q}=n(),P=m(),T=o(),B=i(),{currentEditTab:J,setCurrentEditTab:U}=p();let G;l[0]!==U?(G=(e,t)=>{r(()=>{U(t)})},l[0]=U,l[1]=G):G=l[1];const oe=G;let ye;l[2]!==P?(ye=P.getQuestionValue("options.min"),l[2]=P,l[3]=ye):ye=l[3];const ge=ye;let be;l[4]!==P?(be=P.getQuestionValue("options.max"),l[4]=P,l[5]=be):be=l[5];const ve=be;let xe;l[6]!==P?(xe=P.getQuestionValue("options.step"),l[6]=P,l[7]=xe):xe=l[7];const Ie=Boolean(ge||ve||xe);let Ce;l[8]!==y?(Ce=A(y),l[8]=y,l[9]=Ce):Ce=l[9];const Se=Ce===D.section.type;let we;l[10]!==y?(we=y instanceof f?y:y.parent()instanceof f?y.parent():null,l[10]=y,l[11]=we):we=l[11];const Qe=we,ke=a.useRef(null);let Ve;l[12]===Symbol.for("react.memo_cache_sentinel")?(Ve=()=>{if(ke.current){const e=ke.current.querySelectorAll("input, textarea");e.length>0&&e.forEach(pe)}},l[12]=Ve):Ve=l[12];const _e=Ve;let ze;l[13]!==T.isNew||l[14]!==y||l[15]!==P?(ze=()=>{const e=A(y),t=P.getQuestionValue("text")||"",n=e===D.cond.type||e===D.section.type||Boolean(t&&t.length>0);if(!n)return!1;if(y instanceof h){const e=P.getQuestionValue("options.select")??[];if(!e||0===e.length)return!1;const t=e.map(me);if(t.includes("")||t.some(de))return!1;const n=e.map(ue);if(n.length!==new Set(n).size)return!1}if(e===D.date.type){const e=P.getQuestionValue("options.min"),t=P.getQuestionValue("options.max");if(e&&t){if(new Date(e)>new Date(t))return!1}}if("list"===y.type){const e=P.getQuestionValue("options.source")||"";return Boolean(e&&e.length>0)}if(e===D.multipleSelect.type||e===D.autocomplete.type){const e=(P.getQuestionValue("items")??[]).filter(ce);if(!e||0===e.length)return!1;const t=e.map(se);if(t.includes("")||t.some(le))return!1;if(t.length!==new Set(t).size)return!1}if(e===D.selectTable.type){const e=(P.getQuestionValue("items")??[]).filter(re);if(!e||0===e.length)return!1;const t=e.map(ae);if(t.includes("")||t.some(ie))return!1;if(t.length!==new Set(t).size)return!1}if(e===D.fn.type){return(P.getQuestionValue("parameters")??[]).length>=2}if(T.isNew&&(e===D.alert.type||e===D.cond.type)){const e=P.getQuestionValue("conditionCache")?.expression,t=e?.right;return null!=t?.value}return e===D.section.type||n},l[13]=T.isNew,l[14]=y,l[15]=P,l[16]=ze):ze=l[16];const Me=ze;let qe;l[17]!==_?(qe=_.getLatestId(),l[17]=_,l[18]=qe):qe=l[18];const je=a.useRef(qe);let Ne;l[19]!==_||l[20]!==y||l[21]!==P?(Ne=async()=>{const e=ne,t=P.getQuestionValue("layout.required"),n=(P.getQuestionValue("items")??[]).filter(te),o=y.items?.filter(ee).map(Y)||[],i=n.filter(X),a=i.filter(e=>!o.find(t=>t.id===e.id)),r=i.map(e=>{const t=o.find(t=>t.id===e.id);return t?{...t,name:e.name,text:e.text}:a.find(t=>t.name===e.name)}).filter(Boolean),l=n?.find(K),s=l?{...l,parameters:r.map(Z)}:{id:(je.current+r.length+1).toString(),type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map($)},c=n?.find(H),u=s&&c?{...c,parameters:[s.id]}:{id:(je.current+r.length+2).toString(),type:"cond",parameters:[s.id],condition:`($${s.id} < 1)`};t?await _.replaceItem(y,{...P.value,items:e([s,W(u),...r])},"full"):!P.getQuestionValue("layout.required")&&u&&await _.replaceItem(y,{...P.value,items:e([s,...r])},"full")},l[19]=_,l[20]=y,l[21]=P,l[22]=Ne):Ne=l[22];const Oe=Ne;let Ee;l[23]!==_||l[24]!==y||l[25]!==P.value?(Ee=async()=>{await _.replaceItem(y,{...P.value},"full")},l[23]=_,l[24]=y,l[25]=P.value,l[26]=Ee):Ee=l[26];const Pe=Ee;let Te;l[27]!==_||l[28]!==Qe||l[29]!==q||l[30]!==y||l[31]!==P?(Te=async()=>{const e=P.getQuestionValue("conditionCache"),t=e?R(e):null,n=P.getQuestionValue("conditionState")??"",o=q.getItem(y.id)?.localIndex??-1;e:switch(n){case"new":{const e=await _.addQuestion(D.cond.type,y.parent().id,o+1,void 0,"silent");await _.updateItem(e,void 0,t,"silent"),await _.moveItem(y,0,e.id,"silent"),P.updateItem("conditionState","edit");break e}case"alert":{const e=await _.addQuestion(D.alert.type,y.parent().id,o+1,void 0,"silent");await _.updateItem(e,void 0,{...t,text:P.getQuestionValue("text"),description:P.getQuestionValue("description")||"",name:P.getQuestionValue("name")||L(P.getQuestionValue("text"))},"silent"),await _.removeItem(y),P.updateItem("conditionState","edit");break e}case"edit":if(!Qe)return;if(j(t,Qe.toJSON())||null===t)return;A(Qe)===D.alert.type?await _.replaceItem(Qe,t,"silent"):await _.updateItem(Qe,void 0,t,"silent"),P.updateItem("conditionState","edit");break e;case"remove":if(!Qe)return;await _.moveItem(y,Qe.parent().items.indexOf(Qe),Qe.parent().id,"silent"),await _.removeItem(Qe,"silent"),P.updateItem("conditionState","new")}},l[27]=_,l[28]=Qe,l[29]=q,l[30]=y,l[31]=P,l[32]=Te):Te=l[32];const Ae=Te;let De;l[33]!==_||l[34]!==P?(De=async e=>{const t=P.getQuestionValue("text"),n=P.getQuestionValue("description"),o=P.getQuestionValue("name"),i=L(t);P.updateItem("name",o||i),await _.updateItem(e,void 0,{...P.value,text:t,description:n||"",name:o||i},"full")},l[33]=_,l[34]=P,l[35]=De):De=l[35];const Be=De;let Le;l[36]!==_||l[37]!==Ae||l[38]!==Me||l[39]!==Oe||l[40]!==y||l[41]!==V||l[42]!==B||l[43]!==Pe||l[44]!==Be?(Le=async()=>{Me()&&!V&&(A(y)===D.multipleSelect.type||A(y)===D.autocomplete.type?await Oe():A(y)===D.selectTable.type&&await Pe(),await Ae(),await Be(y),B({id:"",isNew:!1}),await _.createHistorySnapshot())},l[36]=_,l[37]=Ae,l[38]=Me,l[39]=Oe,l[40]=y,l[41]=V,l[42]=B,l[43]=Pe,l[44]=Be,l[45]=Le):Le=l[45];const Re=Le;let We;l[46]!==T.isNew||l[47]!==_||l[48]!==y||l[49]!==P||l[50]!==B?(We=async()=>{T.isNew&&await _.removeItem(y),B({id:"",isNew:!1}),P.updateItem(null,y.toJSON())},l[46]=T.isNew,l[47]=_,l[48]=y,l[49]=P,l[50]=B,l[51]=We):We=l[51];const Fe=We;let Je,Ue,Ge,He;l[52]===Symbol.for("react.memo_cache_sentinel")?(Je={borderRadius:3,bgcolor:"background.paper",boxShadow:"rgba(25, 25, 25, 0.09) 0px 0px 0px 3px",border:"1px solid rgba(25, 25, 25, 0.15)",minHeight:"20vh"},l[52]=Je):Je=l[52],l[53]===Symbol.for("react.memo_cache_sentinel")?(Ue={width:"100%",borderBottom:1,borderColor:"divider"},l[53]=Ue):Ue=l[53],l[54]===Symbol.for("react.memo_cache_sentinel")?(Ge={justifyContent:"center"},l[54]=Ge):Ge=l[54],l[55]===Symbol.for("react.memo_cache_sentinel")?(He=c(N,{size:20}),l[55]=He):He=l[55];const $e="main"===J?"MODIFICA":null;let Ze,Ke;l[56]!==$e?(Ze=c(M,{"aria-label":"tab-main-panel",icon:He,iconPosition:"start",label:$e,value:"main"}),l[56]=$e,l[57]=Ze):Ze=l[57],l[58]!==Qe?(Ke=Qe?c(x,{color:"secondary",badgeContent:"",variant:"dot",children:c(O,{size:20})}):c(O,{size:20}),l[58]=Qe,l[59]=Ke):Ke=l[59];const Xe="condition"===J?"LOGICA":null;let Ye,et,tt,nt,ot,it,at,rt;l[60]!==Ke||l[61]!==Xe?(Ye=c(M,{"aria-label":"tab-condition-panel",icon:Ke,iconPosition:"start",label:Xe,value:"condition"}),l[60]=Ke,l[61]=Xe,l[62]=Ye):Ye=l[62],l[63]!==J||l[64]!==Ie||l[65]!==Se?(et=!Se&&c(M,{"aria-label":"tab-options-panel",className:"optionsTab",icon:Ie?c(x,{color:"secondary",badgeContent:"",variant:"dot",children:c(E,{size:20})}):c(E,{size:20}),iconPosition:"start",label:"options"===J?"OPZIONI":null,value:"options"}),l[63]=J,l[64]=Ie,l[65]=Se,l[66]=et):et=l[66],l[67]!==oe||l[68]!==Ze||l[69]!==Ye||l[70]!==et?(tt=c(I,{sx:Ue,children:u(b,{onChange:oe,sx:Ge,children:[Ze,Ye,et]})}),l[67]=oe,l[68]=Ze,l[69]=Ye,l[70]=et,l[71]=tt):tt=l[71],l[72]===Symbol.for("react.memo_cache_sentinel")?(nt={p:0},l[72]=nt):nt=l[72],l[73]!==y||l[74]!==V?(ot=c(F,{item:y,readonlyMode:V}),l[73]=y,l[74]=V,l[75]=ot):ot=l[75],l[76]!==C?(it=C&&u(d,{children:[c(w,{textAlign:"left"}),C]}),l[76]=C,l[77]=it):it=l[77],l[78]!==ot||l[79]!==it?(at=c(v,{ref:ke,"aria-label":"tab-main-panel",value:"main",keepMounted:!0,sx:nt,children:u(I,{children:[ot,it]})}),l[78]=ot,l[79]=it,l[80]=at):at=l[80],l[81]===Symbol.for("react.memo_cache_sentinel")?(rt={p:0},l[81]=rt):rt=l[81];const lt=parseInt(s);let st,ct,ut,dt,mt,pt;l[82]!==y||l[83]!==V||l[84]!==lt?(st=c(v,{value:"condition",keepMounted:!0,"aria-label":"tab-condition-panel",sx:rt,children:c(fe,{question:y,questionIndex:lt,readonlyMode:V})}),l[82]=y,l[83]=V,l[84]=lt,l[85]=st):st=l[85],l[86]===Symbol.for("react.memo_cache_sentinel")?(ct={px:3,py:2,backgroundColor:"background.default"},l[86]=ct):ct=l[86],l[87]!==S?(ut=c(v,{ref:ke,keepMounted:!0,"aria-label":"tab-options-panel",value:"options",sx:ct,children:S}),l[87]=S,l[88]=ut):ut=l[88],l[89]===Symbol.for("react.memo_cache_sentinel")?(dt={p:0},l[89]=dt):dt=l[89],l[90]!==Q?(mt=c(v,{"aria-label":"tab-layout-panel",keepMounted:!0,value:"layout",sx:dt,children:Q}),l[90]=Q,l[91]=mt):mt=l[91],l[92]!==J||l[93]!==tt||l[94]!==at||l[95]!==st||l[96]!==ut||l[97]!==mt?(pt=u(g,{value:J,children:[tt,at,st,ut,mt]}),l[92]=J,l[93]=tt,l[94]=at,l[95]=st,l[96]=ut,l[97]=mt,l[98]=pt):pt=l[98];const ft=!Me();let ht,yt;return l[99]!==Fe||l[100]!==Re||l[101]!==y||l[102]!==V||l[103]!==ft?(ht=c(he,{question:y,handleOnSave:Re,handleOnCancel:Fe,isDisabled:ft,blurAllForms:_e,readonlyMode:V}),l[99]=Fe,l[100]=Re,l[101]=y,l[102]=V,l[103]=ft,l[104]=ht):ht=l[104],l[105]!==pt||l[106]!==ht?(yt=u(z,{sx:Je,children:[pt,ht]}),l[105]=pt,l[106]=ht,l[107]=yt):yt=l[107],yt}function H(e){return A(e)===D.cond.type}function $(e){return e.id}function Z(e){return e.id}function K(e){return A(e)===D.fn.type}function X(e){return A(e)===D.check.type}function Y(e){return e.toJSON()}function ee(e){return A(e)===D.check.type}function te(e,t,n){return n.findIndex(t=>t.id===e.id)===t}function ne(e){return e&&0!==e.length?e.map(oe):[]}function oe(e){return A(e)===D.cond.type?R(e):e}function ie(e){return!e}function ae(e){return e.text}function re(e){return"fn"!==e.type&&"cond"!==e.type}function le(e){return!e}function se(e){return e.text}function ce(e){return"fn"!==e.type&&"cond"!==e.type}function ue(e){return e.score}function de(e){return!e}function me(e){return e.text}function pe(e){return e.blur()}const fe=n=>{const o=e(41),{question:i,questionIndex:a,readonlyMode:r}=n,{stageMutation:p}=t(),h=m();let y;o[0]!==i?(y=i instanceof f?W(i):i.parent()instanceof f?W(i.parent()):void 0,o[0]=i,o[1]=y):y=o[1];const g=y;let b;o[2]!==h?(b=h.getQuestionValue("conditionCache"),o[2]=h,o[3]=b):b=o[3];const v=b;let x;o[4]!==h?(x=h.getQuestionValue("conditionState"),o[4]=h,o[5]=x):x=o[5];const S=x;let Q;o[6]!==h||o[7]!==p?(Q=(e,t)=>{const n=p(n=>n.add(e.parent().id,{...B(D.cond.type)},t??-1));if(!n)return;p(e=>e.remove(n.id));const o={...n.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};h.updateItem("conditionCache",o),h.updateItem("conditionState","new")},o[6]=h,o[7]=p,o[8]=Q):Q=o[8];const k=Q;let z;o[9]!==S||o[10]!==g||o[11]!==i||o[12]!==a||o[13]!==h||o[14]!==p?(z=()=>{if(g){if(A(i)===D.alert.type&&!S){const e=p(e=>e.add(i.parent().id,{...B(D.alert.type),...h.value},a??-1));if(!e)return;p(t=>t.remove(e.id));const t=g?.expression,n={...e.toJSON(),expression:{type:"exp",left:null,operator:null,right:null,...t||{}}};return h.updateItem("conditionCache",n),void h.updateItem("conditionState","alert")}h.updateItem("conditionCache",g),h.updateItem("conditionState","edit")}},o[9]=S,o[10]=g,o[11]=i,o[12]=a,o[13]=h,o[14]=p,o[15]=z):z=o[15];const M=l(z);let j,N;o[16]!==M?(j=()=>{M()},o[16]=M,o[17]=j):j=o[17],o[18]===Symbol.for("react.memo_cache_sentinel")?(N=[],o[18]=N):N=o[18],s(j,N);const O=v?.expression,E=O?.left,L=O?.right;let R;o[19]!==O||o[20]!==v||o[21]!==h?(R=()=>{const e={...v,expression:{...O||{},type:"exp",left:O,operator:"&&",right:{type:"exp",operator:null,left:null,right:null}}};h.updateItem("conditionCache",e)},o[19]=O,o[20]=v,o[21]=h,o[22]=R):R=o[22];const F=R;let G;o[23]!==O||o[24]!==v||o[25]!==h?(G=e=>{const t="left"===e?"right":"left",n=O?.[t]??null,o=n?.left??null,i=o&&o.name?o.name:void 0;h.updateItem("conditionCache",{...v,expression:n,parameters:i?[i]:[]})},o[23]=O,o[24]=v,o[25]=h,o[26]=G):G=o[26];const H=G;if(r&&!v){let e;return o[27]===Symbol.for("react.memo_cache_sentinel")?(e=c(I,{sx:{pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},children:c(q,{children:"Nessuna condizione impostata"})}),o[27]=e):e=o[27],e}let $,Z;return o[28]===Symbol.for("react.memo_cache_sentinel")?($={pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},o[28]=$):$=o[28],o[29]!==k||o[30]!==F||o[31]!==O||o[32]!==v||o[33]!==E||o[34]!==i||o[35]!==a||o[36]!==h||o[37]!==r||o[38]!==H||o[39]!==L?.type?(Z=c(I,{sx:$,children:v?v.id===i.id?c(J,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),readonlyMode:r}):u(d,!O||null!==O?.right&&"v"!==L?.type?{children:[c(U,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),path:"left",readonlyMode:r}),A(i)!==D.alert.type&&u(C,{fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>H("left"),disabled:r,sx:{mt:2,mb:2},children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]}),c(w,{}),u(_,{title:"Seleziona operatore",defaultValue:"",size:"small",value:O?.operator,disabled:r,onChange:async e=>{e.preventDefault();const t={...v,expression:{...O||{},operator:e.target.value}};h.updateItem("conditionCache",t)},sx:{backgroundColor:"background.default",mt:2,mb:1},children:[c(V,{value:"&&",children:"E"},"and"),c(V,{value:"||",children:"Oppure"},"or")]}),c(U,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),path:"right",readonlyMode:r}),u(C,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>H("right"),disabled:r,children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]})]}:{children:[c(J,{question:i,itemCondition:v,setItemCondition:e=>h.updateItem("conditionCache",e),readonlyMode:r}),A(i)!==D.alert.type&&u(C,{fullWidth:!1,variant:"contained",color:"secondary",onClick:async()=>{h.updateItem("conditionCache",null),h.updateItem("conditionState","remove")},disabled:r,sx:{mt:2},children:[c(P,{size:20}),c(q,{sx:{pl:1},children:"Rimuovi condizione"})]}),u(I,{sx:{mt:2},children:[c(w,{}),u(C,{fullWidth:!1,variant:"contained",color:"primary",sx:{mt:2},disabled:!E||r,onClick:F,children:[c(T,{size:20}),c(q,{sx:{ml:1},children:"Aggiungi condizione"})]})]})]}):u(C,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>k(i,a),disabled:r,children:[c(T,{size:20}),c(q,{sx:{ml:1},children:"Aggiungi condizione"})]})}),o[29]=k,o[30]=F,o[31]=O,o[32]=v,o[33]=E,o[34]=i,o[35]=a,o[36]=h,o[37]=r,o[38]=H,o[39]=L?.type,o[40]=Z):Z=o[40],Z},he=t=>{const n=e(40),{question:o,handleOnSave:i,handleOnCancel:a,blurAllForms:r,isDisabled:l,readonlyMode:d}=t,p=m();let f,h,g;n[0]!==r||n[1]!==i||n[2]!==l?(f=()=>{const e=async e=>{"Enter"!==e.key||l||(r(),await i())};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},h=[r,i,l],n[0]=r,n[1]=i,n[2]=l,n[3]=f,n[4]=h):(f=n[3],h=n[4]),s(f,h),n[5]!==o?(g=o instanceof y||D.multipleSelect.type===A(o)||D.autocomplete.type===A(o)||D.fileUpload.type===A(o),n[5]=o,n[6]=g):g=n[6];const b=g;let v;n[7]!==o||n[8]!==p?(v=D.multipleSelect.type!==A(o)&&A(o)!==D.autocomplete.type||!o.items.length?p.getQuestionValue("options.required"):p.getQuestionValue("layout.required"),n[7]=o,n[8]=p,n[9]=v):v=n[9];const x=v;let I;n[10]!==o||n[11]!==p||n[12]!==d?(I=async e=>{d||(D.multipleSelect.type!==A(o)&&A(o)!==D.autocomplete.type||!o.items.length?p.updateItem("options.required",e.target.checked):p.updateItem("layout.required",e.target.checked))},n[10]=o,n[11]=p,n[12]=d,n[13]=I):I=n[13];const w=I;let V,_,M,q,j;n[14]===Symbol.for("react.memo_cache_sentinel")?(V={width:"100%",flexWrap:"nowrap",justifyContent:"space-between",alignItems:"center",p:2},n[14]=V):V=n[14],n[15]!==b||n[16]!==x||n[17]!==w||n[18]!==d?(_=b&&c(Q,{label:"Obbligatorio",control:c(S,{checked:x,onChange:w}),disabled:d}),n[15]=b,n[16]=x,n[17]=w,n[18]=d,n[19]=_):_=n[19],n[20]===Symbol.for("react.memo_cache_sentinel")?(M={justifyContent:"flex-end",width:"100%",alignItems:"center"},n[20]=M):M=n[20],n[21]!==r?(q=()=>r(),n[21]=r,n[22]=q):q=n[22],n[23]!==a?(j=()=>a(),n[23]=a,n[24]=j):j=n[24];const N=d?"Chiudi":"Annulla";let O,E,P,T;return n[25]!==N||n[26]!==q||n[27]!==j?(O=c(C,{variant:"outlined",color:"secondary",onMouseDown:q,onMouseUp:j,children:N}),n[25]=N,n[26]=q,n[27]=j,n[28]=O):O=n[28],n[29]!==r||n[30]!==i||n[31]!==l||n[32]!==d?(E=!d&&c(C,{variant:"contained",color:"primary",className:"save",disabled:l,onMouseDown:()=>r(),onMouseUp:()=>i(),children:"Salva"}),n[29]=r,n[30]=i,n[31]=l,n[32]=d,n[33]=E):E=n[33],n[34]!==O||n[35]!==E?(P=u(z,{direction:"row",spacing:1,sx:M,children:[O,E]}),n[34]=O,n[35]=E,n[36]=P):P=n[36],n[37]!==P||n[38]!==_?(T=u(k,{container:!0,sx:V,children:[_,P]}),n[37]=P,n[38]=_,n[39]=T):T=n[39],T};export{G as CommonQuestionEditor};
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import{useFormStateContext as o}from"../../providers/common/FormStateProvider.js";import"react";import{jsx as i,jsxs as r}from"react/jsx-runtime";import{useIsQuestionEditing as t}from"../../providers/editor/QuestionEditProvider.js";import{QuestionStateProvider as n}from"../../providers/editor/QuestionStateProvider.js";import{TabStateProvider as m}from"../../providers/editor/TabStateProvider.js";import s from"@mui/material/Box";import l from"@mui/material/Divider";import{Mapper as d,getMapType as a}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{RenderQuestionPreview as p}from"./QuestionPreviewRender.js";import{QuestionTypeEdit as c}from"./QuestionTypeEdit.js";import u from"@mui/material/Chip";const f=f=>{const v=e(23),{question:x,globalQuestionIndex:b}=f,{globalConfig:j}=o(),g=t(x.id);let h;v[0]!==x?(h=x.parent()?.items.indexOf(x),v[0]=x,v[1]=h):h=v[1];const y=h;let q,Q;v[2]===Symbol.for("react.memo_cache_sentinel")?(q={borderRadius:"8px",marginTop:0},v[2]=q):q=v[2],v[3]!==b||v[4]!==x?(Q=d.section.type===a(x)&&i(l,{textAlign:"center",children:i(u,{label:`Inizio Sezione ${b}`,color:"default",size:"small"})}),v[3]=b,v[4]=x,v[5]=Q):Q=v[5];const S=`question-provider-${x.id}-${g?"edit":"view"}`;let z,P,I,$;return v[6]!==j||v[7]!==b||v[8]!==g||v[9]!==y||v[10]!==x?(z=g?i(m,{children:i(c,{index:b,question:x,readonlyMode:j.readonlyMode})}):i(p,{globalQuestionIndex:b,questionIndex:y,question:x}),v[6]=j,v[7]=b,v[8]=g,v[9]=y,v[10]=x,v[11]=z):z=v[11],v[12]!==x||v[13]!==S||v[14]!==z?(P=i(n,{question:x,children:z},S),v[12]=x,v[13]=S,v[14]=z,v[15]=P):P=v[15],v[16]!==b||v[17]!==x?(I=d.section.type===a(x)&&i(l,{textAlign:"center",children:i(u,{label:`Fine Sezione ${b}`,color:"default",size:"small"})}),v[16]=b,v[17]=x,v[18]=I):I=v[18],v[19]!==Q||v[20]!==P||v[21]!==I?($=r(s,{component:"div",sx:q,children:[Q,P,I]}),v[19]=Q,v[20]=P,v[21]=I,v[22]=$):$=v[22],$};export{f as QuestionEditorComponent};
1
+ import{c as e}from"react/compiler-runtime";import{useFormStateContext as o}from"../../providers/common/FormStateProvider.js";import"react";import{jsx as i,jsxs as r}from"react/jsx-runtime";import{useIsQuestionEditing as t}from"../../providers/editor/QuestionEditProvider.js";import{QuestionStateProvider as n}from"../../providers/editor/QuestionStateProvider.js";import{TabStateProvider as m}from"../../providers/editor/TabStateProvider.js";import l from"@mui/material/Box";import s from"@mui/material/Divider";import{Mapper as d,getMapType as a}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{RenderQuestionPreview as p}from"./QuestionPreviewRender.js";import{QuestionTypeEdit as c}from"./QuestionTypeEdit.js";import u from"@mui/material/Chip";const f=f=>{const v=e(23),{question:x,globalQuestionIndex:b}=f,{globalConfig:j}=o(),g=t(x?.id);if(!x)return null;let h;v[0]!==x?(h=x.parent()?.items.indexOf(x),v[0]=x,v[1]=h):h=v[1];const y=h;let q,Q;v[2]===Symbol.for("react.memo_cache_sentinel")?(q={borderRadius:"8px",marginTop:0},v[2]=q):q=v[2],v[3]!==b||v[4]!==x?(Q=d.section.type===a(x)&&i(s,{textAlign:"center",children:i(u,{label:`Inizio Sezione ${b}`,color:"default",size:"small"})}),v[3]=b,v[4]=x,v[5]=Q):Q=v[5];const S=`question-provider-${x.id}-${g?"edit":"view"}`;let z,P,I,$;return v[6]!==j||v[7]!==b||v[8]!==g||v[9]!==y||v[10]!==x?(z=g?i(m,{children:i(c,{index:b,question:x,readonlyMode:j.readonlyMode})}):i(p,{globalQuestionIndex:b,questionIndex:y,question:x}),v[6]=j,v[7]=b,v[8]=g,v[9]=y,v[10]=x,v[11]=z):z=v[11],v[12]!==x||v[13]!==S||v[14]!==z?(P=i(n,{question:x,children:z},S),v[12]=x,v[13]=S,v[14]=z,v[15]=P):P=v[15],v[16]!==b||v[17]!==x?(I=d.section.type===a(x)&&i(s,{textAlign:"center",children:i(u,{label:`Fine Sezione ${b}`,color:"default",size:"small"})}),v[16]=b,v[17]=x,v[18]=I):I=v[18],v[19]!==Q||v[20]!==P||v[21]!==I?($=r(l,{component:"div",sx:q,children:[Q,P,I]}),v[19]=Q,v[20]=P,v[21]=I,v[22]=$):$=v[22],$};export{f as QuestionEditorComponent};