@famalabs/web-form 1.0.0-beta.8 → 1.0.0-beta.9
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.
|
@@ -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/Container";import d from"@mui/material/Paper";import s from"@mui/material/Stack";import{ViewportList as c}from"react-viewport-list";import{EditorPageSkeleton as p}from"../../components/common/Skeletons.js";import{ItemMap as u,getMapType as h,Mapper as f}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{AddQuestionMenu as g}from"../common/CommonEditor.js";import{QuestionEditorComponent as x}from"../question_editor/QuestionMainComponent.js";import{LandingPageEditor as v}from"./LandingPageEditor.js";import{RenderHeader as b}from"./RenderPageHeader.js";u.layout.style.page,u.layout.style.page,u.layout.style.card;const y=u=>{const y=e(47),{pageId:I,loading:j}=u,{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=_,R=k?.items&&0!==k.items.length?k.items.reduce(w,0):0,q=o(),E=async e=>{const t=await Q.addQuestion(e,k?.id);t&&q({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(h(e)===f.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":d,
|
|
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/Container";import d from"@mui/material/Paper";import s from"@mui/material/Stack";import{ViewportList as c}from"react-viewport-list";import{EditorPageSkeleton as p}from"../../components/common/Skeletons.js";import{ItemMap as u,getMapType as h,Mapper as f}from"../../utils/config-map.js";import"../../utils/locale.js";import"@famalabs/survey";import"acorn";import{AddQuestionMenu as g}from"../common/CommonEditor.js";import{QuestionEditorComponent as x}from"../question_editor/QuestionMainComponent.js";import{LandingPageEditor as v}from"./LandingPageEditor.js";import{RenderHeader as b}from"./RenderPageHeader.js";u.layout.style.page,u.layout.style.page,u.layout.style.card;const y=u=>{const y=e(47),{pageId:I,loading:j}=u,{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=_,R=k?.items&&0!==k.items.length?k.items.reduce(w,0):0,q=o(),E=async e=>{const t=await Q.addQuestion(e,k?.id);t&&q({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(h(e)===f.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,T=M?"div":d,X=M?d:"div",B="div"===T?3:1,F=r.useRef(null),G=r.useRef(null),K=S;let L;y[0]!==P?(L=e=>P.getItem(e.id)?.globalIndex?.toString()||"",y[0]=P,y[1]=L):L=y[1];const O=L;let U;y[2]!==O||y[3]!==X||y[4]!==B?(U=e=>e?K(e)&&e.items?n(l,{id:`Question-${e.id}`,"aria-label":`question-editor-${e.text}`,component:X,maxWidth:"md",sx:{borderRadius:3,border:"div"!==X?"1px solid":"none",borderColor:"divider",p:"div"!==X?"6px !important":"0 !important","& + &":{mt:B}},children:e.items.map(t=>n(x,{globalQuestionIndex:O(e),question:t},t.id))},`${e.id}`):n(l,{id:`Question-${e.id}`,"aria-label":`question-editor-${e?.text}`,className:"questionEditor",component:X,maxWidth:"md",sx:{borderRadius:3,border:"div"!==X?"1px solid":"none",borderColor:"divider",p:"div"!==X?"6px !important":"0 !important","& + &":{mt:B}},children:n(x,{globalQuestionIndex:O(e),question:e})},`${e.id}`):null,y[2]=O,y[3]=X,y[4]=B,y[5]=U):U=y[5];const Y=U;if(j)return p;if(!k)return null;if("landing"===k.layout?.style){let e;return y[6]!==k?(e=n(v,{currentPage:k,loading:!1}),y[6]=k,y[7]=e):e=y[7],e}const z=`page-content-${k?.text}`,D="div"===T?0:1,J="div"===T?"none":"1px solid";let V,Z,ee,te,ie;y[8]!==D||y[9]!==J?(V={width:"100%",minHeight:"40vh",padding:D,border:J,borderRadius:3,borderColor:"divider",m:0},y[8]=D,y[9]=J,y[10]=V):V=y[10],y[11]===Symbol.for("react.memo_cache_sentinel")?(Z={width:"100%",p:"0 !important"},y[11]=Z):Z=y[11],y[12]!==k?(ee=n(l,{maxWidth:"md",sx:Z,children:n(b,{currentPage:k})}),y[12]=k,y[13]=ee):ee=y[13],y[14]===Symbol.for("react.memo_cache_sentinel")?(te={p:0,overflowX:"hidden"},y[14]=te):te=y[14],y[15]===Symbol.for("react.memo_cache_sentinel")?(ie={width:"100%",minHeight:0,alignItems:"stretch"},y[15]=ie):ie=y[15];const oe=R>=30?"1 1 auto":"0 1 auto",re="div"===T?0:1.5,ne=R>=30?"auto":"visible",ae=R>=30?"clamp(320px, 70svh, calc(100dvh - 192px))":"none";let me,le,de,se,ce,pe,ue,he;return y[16]!==oe||y[17]!==re||y[18]!==ne||y[19]!==ae?(me={flex:oe,width:"100%",minHeight:0,px:0,py:re,overflowY:ne,overflowX:"hidden",maxHeight:ae,scrollbarWidth:"thin",scrollbarColor:"silver transparent",WebkitOverflowScrolling:"touch"},y[16]=oe,y[17]=re,y[18]=ne,y[19]=ae,y[20]=me):me=y[20],y[21]!==Y||y[22]!==k.items||y[23]!==R?(le=R>0&&R>=30?n(c,{ref:G,viewportRef:F,items:k.items,initialIndex:0,initialAlignToTop:!0,initialPrerender:5,overscan:5,withCache:!0,children:Y}):k.items.map(Y),y[21]=Y,y[22]=k.items,y[23]=R,y[24]=le):le=y[24],y[25]!==me||y[26]!==le?(de=n(m,{className:"scroll-container",ref:F,sx:me,children:le}),y[25]=me,y[26]=le,y[27]=de):de=y[27],y[28]===Symbol.for("react.memo_cache_sentinel")?(se={display:"flex",justifyContent:"center",height:"100%",my:2},y[28]=se):se=y[28],y[29]!==k||y[30]!==E||y[31]!==H||y[32]!==A||y[33]!==$?(ce=!$&&n(g,{excludeKeys:[f.check.type],handleAddQuestion:E,handleGenerateSurvey:H,nextQuestionIndex:A,parent:k}),y[29]=k,y[30]=E,y[31]=H,y[32]=A,y[33]=$,y[34]=ce):ce=y[34],y[35]!==ce?(pe=n(m,{className:"addQuestion",sx:se,children:ce}),y[35]=ce,y[36]=pe):pe=y[36],y[37]!==B||y[38]!==de||y[39]!==pe?(ue=n(m,{component:"div",sx:te,children:a(s,{spacing:B,sx:ie,children:[de,pe]})}),y[37]=B,y[38]=de,y[39]=pe,y[40]=ue):ue=y[40],y[41]!==T||y[42]!==ue||y[43]!==z||y[44]!==V||y[45]!==ee?(he=a(m,{"aria-label":z,component:T,sx:V,children:[ee,ue]}),y[41]=T,y[42]=ue,y[43]=z,y[44]=V,y[45]=ee,y[46]=he):he=y[46],he};function w(e,t){return h(t)===f.section.type?e+(t.items?t.items.length:0):e+1}function S(e){return f.cond.type===h(e)}export{y as PageEditorForm};
|
|
@@ -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 r,{startTransition as a,useEffectEvent as l,useEffect as c}from"react";import{jsx as s,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 x from"@mui/lab/TabList";import b from"@mui/lab/TabPanel";import v from"@mui/material/Badge";import S from"@mui/material/Box";import I from"@mui/material/Button";import w from"@mui/material/Checkbox";import C from"@mui/material/Divider";import _ from"@mui/material/FormControlLabel";import k from"@mui/material/Grid";import Q from"@mui/material/MenuItem";import V from"@mui/material/Select";import z from"@mui/material/Stack";import j from"@mui/material/Tab";import M from"@mui/material/Typography";import q from"lodash-es/isEqual";import{Pencil as N,Network as O,Settings as W,Trash2 as E,PlusCircle as P}from"lucide-react";import{getMapType as T,Mapper as A,getDefaultData as D}from"../../utils/config-map.js";import{getLocaleItemTypeId as B}from"../../utils/locale.js";import{formatName as L}from"../../utils/format-utils.js";import{ConditionParser as F}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as H}from"../../utils/parsers/LegacyConditionParser.js";import{QuestionGeneralEdit as J}from"../common/CommonEditor.js";import{EditSimpleExpression as R,EditComplexExpression as $}from"../question_forms/ItemConditionalEditor.js";function G(t){const l=e(140),{index:c,question:y,contentEdit:I,contentOptions:w,contentLayout:_,readonlyMode:k}=t,Q=void 0!==k&&k,{editorState:V,navigationState:E}=n(),P=m(),D=o(),R=i(),{currentEditTab:$,setCurrentEditTab:G}=p();let ie;l[0]!==G?(ie=(e,t)=>{a(()=>{G(t)})},l[0]=G,l[1]=ie):ie=l[1];const ge=ie;let xe;l[2]!==P?(xe=P.getQuestionValue("options.min"),l[2]=P,l[3]=xe):xe=l[3];const be=xe;let ve;l[4]!==P?(ve=P.getQuestionValue("options.max"),l[4]=P,l[5]=ve):ve=l[5];const Se=ve;let Ie;l[6]!==P?(Ie=P.getQuestionValue("options.step"),l[6]=P,l[7]=Ie):Ie=l[7];const we=Boolean(be||Se||Ie);let Ce;l[8]!==y?(Ce=T(y),l[8]=y,l[9]=Ce):Ce=l[9];const _e=Ce===A.section.type;let ke,Qe,Ve,ze;if(l[10]!==y||l[11]!==P){let e,t;Ve=T(y),l[16]!==P?(e=(P.getQuestionValue("text")??"").trim(),l[16]=P,l[17]=e):e=l[17],Qe=e,l[18]!==P?(t=(P.getQuestionValue("name")??"").trim(),l[18]=P,l[19]=t):t=l[19],ke=t,ze=B(Ve),l[10]=y,l[11]=P,l[12]=ke,l[13]=Qe,l[14]=Ve,l[15]=ze}else ke=l[12],Qe=l[13],Ve=l[14],ze=l[15];const je=ze,Me=Qe.length>0?Qe:je;let qe;l[20]!==y?(qe=y instanceof f?y:y.parent()instanceof f?y.parent():null,l[20]=y,l[21]=qe):qe=l[21];const Ne=qe,Oe=r.useRef(null);let We;l[22]===Symbol.for("react.memo_cache_sentinel")?(We=()=>{if(Oe.current){const e=Oe.current.querySelectorAll("input, textarea");e.length>0&&e.forEach(fe)}},l[22]=We):We=l[22];const Ee=We;let Pe;l[23]!==D.isNew||l[24]!==y||l[25]!==P?(Pe=()=>{const e=T(y),t=P.getQuestionValue("text")||"",n=e===A.cond.type||e===A.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(pe);if(t.includes("")||t.some(me))return!1;const n=e.map(ue);if(n.length!==new Set(n).size)return!1}if(e===A.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===A.multipleSelect.type||e===A.autocomplete.type){const e=(P.getQuestionValue("items")??[]).filter(de);if(!e||0===e.length)return!1;const t=e.map(se);if(t.includes("")||t.some(ce))return!1;if(t.length!==new Set(t).size)return!1}if(e===A.selectTable.type){const e=(P.getQuestionValue("items")??[]).filter(le);if(!e||0===e.length)return!1;const t=e.map(ae);if(t.includes("")||t.some(re))return!1;if(t.length!==new Set(t).size)return!1}if(e===A.fn.type){return(P.getQuestionValue("parameters")??[]).length>=2}if(D.isNew&&(e===A.alert.type||e===A.cond.type)){const e=P.getQuestionValue("conditionCache")?.expression,t=e?.right;return"exp"===t?.type?null!=t.right:null!=t?.value}return e===A.section.type||n},l[23]=D.isNew,l[24]=y,l[25]=P,l[26]=Pe):Pe=l[26];const Te=Pe;let Ae;l[27]!==V||l[28]!==y||l[29]!==P?(Ae=async()=>{const e=V.getLatestId(),t=oe,n=P.getQuestionValue("layout.required"),o=(P.getQuestionValue("items")??[]).filter(ne),i=y.items?.filter(te).map(ee)||[],r=o.filter(Y).map(e=>{const t=i.find(t=>t.id===e.id);return t?{...t,name:e.name||t.name,text:e.text||t.text}:e}),a=o?.find(X),l=a?{...a,type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map(K)}:{id:(e+r.length+1).toString(),type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map(Z)},c=o?.find(U),s=c?{...c,parameters:[l.id],condition:`($${l.id}<1)`}:{id:(e+r.length+2).toString(),type:"cond",parameters:[l.id],condition:`($${l.id}<1)`};if(n){const e=H(s);if(!e)return;await V.replaceItem(y,{...P.value,items:t([l,e,...r])},"full")}else!P.getQuestionValue("layout.required")&&s&&await V.replaceItem(y,{...P.value,items:t([l,...r])},"full")},l[27]=V,l[28]=y,l[29]=P,l[30]=Ae):Ae=l[30];const De=Ae;let Be;l[31]!==V||l[32]!==y||l[33]!==P.value?(Be=async()=>{await V.replaceItem(y,{...P.value},"full")},l[31]=V,l[32]=y,l[33]=P.value,l[34]=Be):Be=l[34];const Le=Be;let Fe;l[35]!==V||l[36]!==Ne||l[37]!==E||l[38]!==y||l[39]!==P?(Fe=async()=>{const e=P.getQuestionValue("conditionCache"),t=e?F(e):null,n=P.getQuestionValue("conditionState")??"",o=E.getItem(y.id)?.localIndex??-1;e:switch(n){case"new":{const e=await V.addQuestion(A.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(A.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")||L(P.getQuestionValue("text"))},"silent"),await V.removeItem(y),P.updateItem("conditionState","edit");break e}case"edit":if(!Ne)return;if(q(t,Ne.toJSON())||null===t)return;T(Ne)===A.alert.type?await V.replaceItem(Ne,t,"silent"):await V.updateItem(Ne,void 0,t,"silent"),P.updateItem("conditionState","edit");break e;case"remove":if(!Ne)return;await V.moveItem(y,Ne.parent().items.indexOf(Ne),Ne.parent().id,"silent"),await V.removeItem(Ne,"silent"),P.updateItem("conditionState","new")}},l[35]=V,l[36]=Ne,l[37]=E,l[38]=y,l[39]=P,l[40]=Fe):Fe=l[40];const He=Fe;let Je;l[41]!==V||l[42]!==P?(Je=async e=>{const t=P.getQuestionValue("text"),n=P.getQuestionValue("description"),o=P.getQuestionValue("name"),i=L(t);P.updateItem("name",o||i),await V.updateItem(e,void 0,{...P.value,text:t,description:n||"",name:o||i},"full")},l[41]=V,l[42]=P,l[43]=Je):Je=l[43];const Re=Je;let $e;l[44]!==V||l[45]!==He||l[46]!==Te||l[47]!==De||l[48]!==y||l[49]!==Q||l[50]!==R||l[51]!==Le||l[52]!==Re?($e=async()=>{Te()&&!Q&&(T(y)===A.multipleSelect.type||T(y)===A.autocomplete.type?await De():T(y)===A.selectTable.type&&await Le(),await He(),await Re(y),R({id:"",isNew:!1}),await V.createHistorySnapshot())},l[44]=V,l[45]=He,l[46]=Te,l[47]=De,l[48]=y,l[49]=Q,l[50]=R,l[51]=Le,l[52]=Re,l[53]=$e):$e=l[53];const Ge=$e;let Ue;l[54]!==D.isNew||l[55]!==V||l[56]!==y||l[57]!==P||l[58]!==R?(Ue=async()=>{D.isNew&&await V.removeItem(y),R({id:"",isNew:!1}),P.updateItem(null,y.toJSON())},l[54]=D.isNew,l[55]=V,l[56]=y,l[57]=P,l[58]=R,l[59]=Ue):Ue=l[59];const Ze=Ue;let Ke,Xe,Ye,et;l[60]===Symbol.for("react.memo_cache_sentinel")?(Ke={borderRadius:3,bgcolor:"background.paper",border:"1px solid",borderColor:"divider",boxShadow:1,mx:1,minHeight:"20vh",overflow:"hidden"},l[60]=Ke):Ke=l[60],l[61]===Symbol.for("react.memo_cache_sentinel")?(Xe={position:"sticky",top:0,zIndex:3,backgroundColor:"background.paper",borderBottom:1,borderColor:"divider"},l[61]=Xe):Xe=l[61],l[62]===Symbol.for("react.memo_cache_sentinel")?(Ye={p:2,alignItems:"center"},l[62]=Ye):Ye=l[62],l[63]===Symbol.for("react.memo_cache_sentinel")?(et={width:34,height:34,display:"flex",alignItems:"center",justifyContent:"center",flex:"0 0 auto"},l[63]=et):et=l[63];const tt=A[Ve];let nt,ot,it;l[64]!==tt.icon?(nt=s(S,{sx:et,children:tt.icon}),l[64]=tt.icon,l[65]=nt):nt=l[65],l[66]===Symbol.for("react.memo_cache_sentinel")?(ot={minWidth:0,flex:1},l[66]=ot):ot=l[66],l[67]===Symbol.for("react.memo_cache_sentinel")?(it={alignItems:"center",minWidth:0,justifyContent:"flex-start"},l[67]=it):it=l[67];const rt=ke?"clamp(240px, 55vw, 820px)":"clamp(280px, 70vw, 980px)";let at,lt,ct,st,dt,ut,mt;l[68]!==rt?(at={minWidth:0,flexGrow:0,flexShrink:1,maxWidth:rt},l[68]=rt,l[69]=at):at=l[69],l[70]!==Me||l[71]!==at?(lt=s(M,{variant:"body1",sx:at,noWrap:!0,children:Me}),l[70]=Me,l[71]=at,l[72]=lt):lt=l[72],l[73]!==ke?(ct=ke?d(u,{children:[s(C,{orientation:"vertical",flexItem:!0,sx:{opacity:.6,mx:.25}}),s(M,{variant:"caption",sx:{flex:"0 0 auto",maxWidth:"18ch"},noWrap:!0,children:`#${ke}`})]}):null,l[73]=ke,l[74]=ct):ct=l[74],l[75]!==lt||l[76]!==ct?(st=s(S,{sx:ot,children:d(z,{direction:"row",spacing:1,sx:it,children:[lt,ct]})}),l[75]=lt,l[76]=ct,l[77]=st):st=l[77],l[78]!==nt||l[79]!==st?(dt=d(z,{direction:"row",spacing:2,sx:Ye,children:[nt,st]}),l[78]=nt,l[79]=st,l[80]=dt):dt=l[80],l[81]===Symbol.for("react.memo_cache_sentinel")?(ut={justifyContent:"center",minHeight:44},l[81]=ut):ut=l[81],l[82]===Symbol.for("react.memo_cache_sentinel")?(mt=s(N,{size:20}),l[82]=mt):mt=l[82];const pt="main"===$?"MODIFICA":null;let ft,ht,yt;l[83]===Symbol.for("react.memo_cache_sentinel")?(ft={minHeight:44},l[83]=ft):ft=l[83],l[84]!==pt?(ht=s(j,{"aria-label":"tab-main-panel",icon:mt,iconPosition:"start",label:pt,value:"main",sx:ft}),l[84]=pt,l[85]=ht):ht=l[85],l[86]!==Ne?(yt=Ne?s(v,{color:"secondary",badgeContent:"",variant:"dot",children:s(O,{size:20})}):s(O,{size:20}),l[86]=Ne,l[87]=yt):yt=l[87];const gt="condition"===$?"LOGICA":null;let xt,bt,vt,St,It,wt,Ct,_t,kt,Qt;l[88]===Symbol.for("react.memo_cache_sentinel")?(xt={minHeight:44},l[88]=xt):xt=l[88],l[89]!==yt||l[90]!==gt?(bt=s(j,{"aria-label":"tab-condition-panel",icon:yt,iconPosition:"start",label:gt,value:"condition",sx:xt}),l[89]=yt,l[90]=gt,l[91]=bt):bt=l[91],l[92]!==$||l[93]!==we||l[94]!==_e?(vt=!_e&&s(j,{"aria-label":"tab-options-panel",className:"optionsTab",icon:we?s(v,{color:"secondary",badgeContent:"",variant:"dot",children:s(W,{size:20})}):s(W,{size:20}),iconPosition:"start",label:"options"===$?"OPZIONI":null,value:"options",sx:{minHeight:44}}),l[92]=$,l[93]=we,l[94]=_e,l[95]=vt):vt=l[95],l[96]!==ge||l[97]!==ht||l[98]!==bt||l[99]!==vt?(St=d(x,{onChange:ge,variant:"fullWidth",sx:ut,children:[ht,bt,vt]}),l[96]=ge,l[97]=ht,l[98]=bt,l[99]=vt,l[100]=St):St=l[100],l[101]!==dt||l[102]!==St?(It=d(S,{sx:Xe,children:[dt,St]}),l[101]=dt,l[102]=St,l[103]=It):It=l[103],l[104]===Symbol.for("react.memo_cache_sentinel")?(wt={p:0},l[104]=wt):wt=l[104],l[105]!==y||l[106]!==Q?(Ct=s(J,{item:y,readonlyMode:Q}),l[105]=y,l[106]=Q,l[107]=Ct):Ct=l[107],l[108]!==I?(_t=I&&d(u,{children:[s(C,{textAlign:"left"}),I]}),l[108]=I,l[109]=_t):_t=l[109],l[110]!==Ct||l[111]!==_t?(kt=s(b,{ref:Oe,"aria-label":"tab-main-panel",value:"main",keepMounted:!0,sx:wt,children:d(S,{children:[Ct,_t]})}),l[110]=Ct,l[111]=_t,l[112]=kt):kt=l[112],l[113]===Symbol.for("react.memo_cache_sentinel")?(Qt={p:0},l[113]=Qt):Qt=l[113];const Vt=parseInt(c);let zt,jt,Mt,qt,Nt,Ot;l[114]!==y||l[115]!==Q||l[116]!==Vt?(zt=s(b,{value:"condition",keepMounted:!0,"aria-label":"tab-condition-panel",sx:Qt,children:s(he,{question:y,questionIndex:Vt,readonlyMode:Q})}),l[114]=y,l[115]=Q,l[116]=Vt,l[117]=zt):zt=l[117],l[118]===Symbol.for("react.memo_cache_sentinel")?(jt={px:3,py:2,backgroundColor:"background.default"},l[118]=jt):jt=l[118],l[119]!==w?(Mt=s(b,{ref:Oe,keepMounted:!0,"aria-label":"tab-options-panel",value:"options",sx:jt,children:w}),l[119]=w,l[120]=Mt):Mt=l[120],l[121]===Symbol.for("react.memo_cache_sentinel")?(qt={p:0},l[121]=qt):qt=l[121],l[122]!==_?(Nt=s(b,{"aria-label":"tab-layout-panel",keepMounted:!0,value:"layout",sx:qt,children:_}),l[122]=_,l[123]=Nt):Nt=l[123],l[124]!==$||l[125]!==It||l[126]!==kt||l[127]!==zt||l[128]!==Mt||l[129]!==Nt?(Ot=d(g,{value:$,children:[It,kt,zt,Mt,Nt]}),l[124]=$,l[125]=It,l[126]=kt,l[127]=zt,l[128]=Mt,l[129]=Nt,l[130]=Ot):Ot=l[130];const Wt=!Te();let Et,Pt;return l[131]!==Ze||l[132]!==Ge||l[133]!==y||l[134]!==Q||l[135]!==Wt?(Et=s(ye,{question:y,handleOnSave:Ge,handleOnCancel:Ze,isDisabled:Wt,blurAllForms:Ee,readonlyMode:Q}),l[131]=Ze,l[132]=Ge,l[133]=y,l[134]=Q,l[135]=Wt,l[136]=Et):Et=l[136],l[137]!==Ot||l[138]!==Et?(Pt=d(z,{sx:Ke,children:[Ot,Et]}),l[137]=Ot,l[138]=Et,l[139]=Pt):Pt=l[139],Pt}function U(e){return T(e)===A.cond.type}function Z(e){return e.id}function K(e){return e.id}function X(e){return T(e)===A.fn.type}function Y(e){return T(e)===A.check.type}function ee(e){return e.toJSON()}function te(e){return T(e)===A.check.type}function ne(e,t,n){return n.findIndex(t=>t.id===e.id)===t}function oe(e){return e&&0!==e.length?e.map(ie):[]}function ie(e){return T(e)===A.cond.type?F(e):e}function re(e){return!e}function ae(e){return e.text}function le(e){return e.type!==A.fn.type&&e.type!==A.cond.type}function ce(e){return!e}function se(e){return e.text}function de(e){return e.type!==A.fn.type&&e.type!==A.cond.type}function ue(e){return e.score}function me(e){return!e}function pe(e){return e.text}function fe(e){return e.blur()}const he=o=>{const i=e(52),{question:r,questionIndex:a,readonlyMode:p}=o,{editorState:h}=n(),{stageMutation:y}=t(),g=m();let x;i[0]!==r?(x=r instanceof f?H(r):r.parent()instanceof f?H(r.parent()):void 0,i[0]=r,i[1]=x):x=i[1];const b=x;let v;i[2]!==r?(v=r instanceof f?r:r.parent()instanceof f?r.parent():void 0,i[2]=r,i[3]=v):v=i[3];const w=v;let _;i[4]!==h||i[5]!==b||i[6]!==r||i[7]!==w||i[8]!==g?(_=async()=>{if(!b&&w){if(H(w))return;console.error("Fixing broken condition:",w.toJSON()),await h.moveItem(r,w.parent().items.indexOf(w),w.parent().id,"silent"),await h.removeItem(w,"full"),g.updateItem("conditionState","new")}},i[4]=h,i[5]=b,i[6]=r,i[7]=w,i[8]=g,i[9]=_):_=i[9];const k=l(_);let z,j,q;i[10]!==k?(z=()=>{k()},i[10]=k,i[11]=z):z=i[11],i[12]===Symbol.for("react.memo_cache_sentinel")?(j=[],i[12]=j):j=i[12],c(z,j),i[13]!==g?(q=g.getQuestionValue("conditionState"),i[13]=g,i[14]=q):q=i[14];const N=q;let O;i[15]!==g?(O=g.getQuestionValue("conditionCache"),i[15]=g,i[16]=O):O=i[16];const W=O;let B;i[17]!==g||i[18]!==y?(B=(e,t)=>{const n=y(n=>n.add(e.parent().id,{...D(A.cond.type)},t??-1));if(!n)return;y(e=>e.remove(n.id));const o={...n.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};g.updateItem("conditionCache",o),g.updateItem("conditionState","new")},i[17]=g,i[18]=y,i[19]=B):B=i[19];const L=B;let F;i[20]!==N||i[21]!==b||i[22]!==r||i[23]!==a||i[24]!==g||i[25]!==y?(F=()=>{if(b){if(T(r)===A.alert.type&&!N){const e=y(e=>e.add(r.parent().id,{...D(A.alert.type),...g.value},a??-1));if(!e)return;y(t=>t.remove(e.id));const t=b?.expression,n={...e.toJSON(),expression:{type:"exp",left:null,operator:null,right:null,...t||{}}};return g.updateItem("conditionCache",n),void g.updateItem("conditionState","alert")}g.updateItem("conditionCache",b),g.updateItem("conditionState","edit")}},i[20]=N,i[21]=b,i[22]=r,i[23]=a,i[24]=g,i[25]=y,i[26]=F):F=i[26];const J=l(F);let G,U;i[27]!==J?(G=()=>{J()},i[27]=J,i[28]=G):G=i[28],i[29]===Symbol.for("react.memo_cache_sentinel")?(U=[],i[29]=U):U=i[29],c(G,U);const Z=W?.expression,K=Z?.left,X=Z?.right;let Y;i[30]!==Z||i[31]!==W||i[32]!==g?(Y=()=>{const e={...W,expression:{...Z||{},type:"exp",left:Z,operator:"&&",right:{type:"exp",operator:null,left:null,right:null}}};g.updateItem("conditionCache",e)},i[30]=Z,i[31]=W,i[32]=g,i[33]=Y):Y=i[33];const ee=Y;let te;i[34]!==Z||i[35]!==W||i[36]!==g?(te=e=>{const t="left"===e?"right":"left",n=Z?.[t],o=n?.left,i=o?.name?o.name:void 0;g.updateItem("conditionCache",{...W,expression:n,parameters:i?[i]:[]})},i[34]=Z,i[35]=W,i[36]=g,i[37]=te):te=i[37];const ne=te;if(p&&!W){let e;return i[38]===Symbol.for("react.memo_cache_sentinel")?(e=s(S,{sx:{pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},children:s(M,{children:"Nessuna condizione impostata"})}),i[38]=e):e=i[38],e}let oe,ie;return i[39]===Symbol.for("react.memo_cache_sentinel")?(oe={pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},i[39]=oe):oe=i[39],i[40]!==L||i[41]!==ee||i[42]!==Z||i[43]!==W||i[44]!==K||i[45]!==r||i[46]!==a||i[47]!==g||i[48]!==p||i[49]!==ne||i[50]!==X?.type?(ie=s(S,{sx:oe,children:W?W.id===r.id?s(R,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),readonlyMode:p}):d(u,!Z||null!==Z?.right&&"v"!==X?.type?{children:[s($,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),path:"left",readonlyMode:p}),T(r)!==A.alert.type&&d(I,{fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>ne("left"),disabled:p,sx:{mt:2,mb:2},children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]}),s(C,{}),d(V,{title:"Seleziona operatore",defaultValue:"",size:"small",value:Z?.operator,disabled:p,onChange:async e=>{e.preventDefault();const t={...W,expression:{...Z||{},operator:e.target.value}};g.updateItem("conditionCache",t)},sx:{backgroundColor:"background.default",mt:2,mb:1},children:[s(Q,{value:"&&",children:"E"},"and"),s(Q,{value:"||",children:"Oppure"},"or")]}),s($,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),path:"right",readonlyMode:p}),d(I,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>ne("right"),disabled:p,children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]})]}:{children:[s(R,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),readonlyMode:p}),T(r)!==A.alert.type&&d(I,{fullWidth:!1,variant:"contained",color:"secondary",onClick:async()=>{g.updateItem("conditionCache",null),g.updateItem("conditionState","remove")},disabled:p,sx:{mt:2},children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]}),d(S,{sx:{mt:2},children:[s(C,{}),d(I,{fullWidth:!1,variant:"contained",color:"primary",sx:{mt:2},disabled:!K||p,onClick:ee,children:[s(P,{size:20}),s(M,{sx:{ml:1},children:"Aggiungi condizione"})]})]})]}):d(I,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>L(r,a),disabled:p,children:[s(P,{size:20}),s(M,{sx:{ml:1},children:"Aggiungi condizione"})]})}),i[40]=L,i[41]=ee,i[42]=Z,i[43]=W,i[44]=K,i[45]=r,i[46]=a,i[47]=g,i[48]=p,i[49]=ne,i[50]=X?.type,i[51]=ie):ie=i[51],ie},ye=t=>{const n=e(44),{question:o,handleOnSave:i,handleOnCancel:r,blurAllForms:a,isDisabled:l,readonlyMode:u}=t,p=m();let f,h,g;n[0]!==a||n[1]!==i||n[2]!==l?(f=()=>{const e=async e=>{"Enter"!==e.key||l||(a(),await i())};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},h=[a,i,l],n[0]=a,n[1]=i,n[2]=l,n[3]=f,n[4]=h):(f=n[3],h=n[4]),c(f,h),n[5]!==o?(g=o instanceof y||A.multipleSelect.type===T(o)||A.autocomplete.type===T(o)||A.fileUpload.type===T(o),n[5]=o,n[6]=g):g=n[6];const x=g;let b;n[7]!==o||n[8]!==p?(b=A.multipleSelect.type!==T(o)&&T(o)!==A.autocomplete.type||!o.items.length?p.getQuestionValue("options.required"):p.getQuestionValue("layout.required"),n[7]=o,n[8]=p,n[9]=b):b=n[9];const v=b;let S;n[10]!==o||n[11]!==p||n[12]!==u?(S=async e=>{u||(A.multipleSelect.type!==T(o)&&T(o)!==A.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]=S):S=n[13];const C=S;let Q,V;if(n[14]!==p){const e=p.getQuestionValue("conditionCache"),t=e?.expression,o=e=>{if(!e||"exp"!==e.type)return!1;const t=e=>{if(!e||"object"!=typeof e)return!0;const t=e,n=t.type;if("p"===n)return"string"!=typeof t.name||0===t.name.trim().length;if("v"===n){const e=t.value;return null==e||""===e}return"exp"===n&&o(e)};return!e.operator||(!!t(e.left)||!!t(e.right))};Q=Boolean,V=e&&o(t),n[14]=p,n[15]=Q,n[16]=V}else Q=n[15],V=n[16];const j=Q(V);let M,q,N,O,W;n[17]===Symbol.for("react.memo_cache_sentinel")?(M={width:"100%",flexWrap:"nowrap",justifyContent:"space-between",alignItems:"center",p:2},n[17]=M):M=n[17],n[18]!==x||n[19]!==v||n[20]!==C||n[21]!==u?(q=x&&s(_,{label:"Obbligatorio",control:s(w,{checked:v,onChange:C}),disabled:u}),n[18]=x,n[19]=v,n[20]=C,n[21]=u,n[22]=q):q=n[22],n[23]===Symbol.for("react.memo_cache_sentinel")?(N={justifyContent:"flex-end",width:"100%",alignItems:"center"},n[23]=N):N=n[23],n[24]!==a?(O=()=>a(),n[24]=a,n[25]=O):O=n[25],n[26]!==r?(W=()=>r(),n[26]=r,n[27]=W):W=n[27];const E=u?"Chiudi":"Annulla";let P,D,B,L;return n[28]!==O||n[29]!==W||n[30]!==E?(P=s(I,{variant:"outlined",color:"secondary",onMouseDown:O,onMouseUp:W,children:E}),n[28]=O,n[29]=W,n[30]=E,n[31]=P):P=n[31],n[32]!==a||n[33]!==i||n[34]!==l||n[35]!==j||n[36]!==u?(D=!u&&s(I,{variant:"contained",color:"primary",className:"save",disabled:l||j,onMouseDown:()=>a(),onMouseUp:()=>i(),children:"Salva"}),n[32]=a,n[33]=i,n[34]=l,n[35]=j,n[36]=u,n[37]=D):D=n[37],n[38]!==P||n[39]!==D?(B=d(z,{direction:"row",spacing:1,sx:N,children:[P,D]}),n[38]=P,n[39]=D,n[40]=B):B=n[40],n[41]!==B||n[42]!==q?(L=d(k,{container:!0,sx:M,children:[q,B]}),n[41]=B,n[42]=q,n[43]=L):L=n[43],L};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 r,{startTransition as a,useEffectEvent as l,useEffect as c}from"react";import{jsx as s,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 x from"@mui/lab/TabList";import b from"@mui/lab/TabPanel";import v from"@mui/material/Badge";import S from"@mui/material/Box";import I from"@mui/material/Button";import w from"@mui/material/Checkbox";import C from"@mui/material/Divider";import _ from"@mui/material/FormControlLabel";import k from"@mui/material/Grid";import Q from"@mui/material/MenuItem";import V from"@mui/material/Select";import z from"@mui/material/Stack";import j from"@mui/material/Tab";import M from"@mui/material/Typography";import q from"lodash-es/isEqual";import{Pencil as N,Network as O,Settings as W,Trash2 as E,PlusCircle as P}from"lucide-react";import{getMapType as T,Mapper as A,getDefaultData as D}from"../../utils/config-map.js";import{getLocaleItemTypeId as B}from"../../utils/locale.js";import{formatName as L}from"../../utils/format-utils.js";import{ConditionParser as F}from"../../utils/parsers/ConditionParser.js";import{LegacyConditionParser as H}from"../../utils/parsers/LegacyConditionParser.js";import{QuestionGeneralEdit as J}from"../common/CommonEditor.js";import{EditSimpleExpression as R,EditComplexExpression as $}from"../question_forms/ItemConditionalEditor.js";function G(l){const c=e(142),{index:y,question:I,contentEdit:w,contentOptions:_,contentLayout:k,readonlyMode:Q}=l,V=void 0!==Q&&Q,{formInstance:E}=t(),{editorState:P,navigationState:D}=n(),R=m(),$=o(),G=i(),{currentEditTab:ie,setCurrentEditTab:ge}=p();let xe;c[0]!==ge?(xe=(e,t)=>{a(()=>{ge(t)})},c[0]=ge,c[1]=xe):xe=c[1];const be=xe;let ve;c[2]!==R?(ve=R.getQuestionValue("options.min"),c[2]=R,c[3]=ve):ve=c[3];const Se=ve;let Ie;c[4]!==R?(Ie=R.getQuestionValue("options.max"),c[4]=R,c[5]=Ie):Ie=c[5];const we=Ie;let Ce;c[6]!==R?(Ce=R.getQuestionValue("options.step"),c[6]=R,c[7]=Ce):Ce=c[7];const _e=Boolean(Se||we||Ce);let ke;c[8]!==I?(ke=T(I),c[8]=I,c[9]=ke):ke=c[9];const Qe=ke===A.section.type;let Ve,ze,je,Me;if(c[10]!==I||c[11]!==R){let e,t;je=T(I),c[16]!==R?(e=(R.getQuestionValue("text")??"").trim(),c[16]=R,c[17]=e):e=c[17],ze=e,c[18]!==R?(t=(R.getQuestionValue("name")??"").trim(),c[18]=R,c[19]=t):t=c[19],Ve=t,Me=B(je),c[10]=I,c[11]=R,c[12]=Ve,c[13]=ze,c[14]=je,c[15]=Me}else Ve=c[12],ze=c[13],je=c[14],Me=c[15];const qe=Me,Ne=ze.length>0?ze:qe;let Oe;c[20]!==I?(Oe=I instanceof f?I:I.parent()instanceof f?I.parent():null,c[20]=I,c[21]=Oe):Oe=c[21];const We=Oe,Ee=r.useRef(null);let Pe;c[22]===Symbol.for("react.memo_cache_sentinel")?(Pe=()=>{if(Ee.current){const e=Ee.current.querySelectorAll("input, textarea");e.length>0&&e.forEach(fe)}},c[22]=Pe):Pe=c[22];const Te=Pe;let Ae;c[23]!==$.isNew||c[24]!==I||c[25]!==R?(Ae=()=>{const e=T(I),t=R.getQuestionValue("text")||"",n=e===A.cond.type||e===A.section.type||Boolean(t&&t.length>0);if(!n)return!1;if(I instanceof h){const e=R.getQuestionValue("options.select")??[];if(!e||0===e.length)return!1;const t=e.map(pe);if(t.includes("")||t.some(me))return!1;const n=e.map(ue);if(n.length!==new Set(n).size)return!1}if(e===A.date.type){const e=R.getQuestionValue("options.min"),t=R.getQuestionValue("options.max");if(e&&t){if(new Date(e)>new Date(t))return!1}}if("list"===I.type){const e=R.getQuestionValue("options.source")||"";return Boolean(e&&e.length>0)}if(e===A.multipleSelect.type||e===A.autocomplete.type){const e=(R.getQuestionValue("items")??[]).filter(de);if(!e||0===e.length)return!1;const t=e.map(se);if(t.includes("")||t.some(ce))return!1;if(t.length!==new Set(t).size)return!1}if(e===A.selectTable.type){const e=(R.getQuestionValue("items")??[]).filter(le);if(!e||0===e.length)return!1;const t=e.map(ae);if(t.includes("")||t.some(re))return!1;if(t.length!==new Set(t).size)return!1}if(e===A.fn.type){return(R.getQuestionValue("parameters")??[]).length>=2}if($.isNew&&(e===A.alert.type||e===A.cond.type)){const e=R.getQuestionValue("conditionCache")?.expression,t=e?.right;return"exp"===t?.type?null!=t.right:null!=t?.value}return e===A.section.type||n},c[23]=$.isNew,c[24]=I,c[25]=R,c[26]=Ae):Ae=c[26];const De=Ae;let Be;c[27]!==P||c[28]!==I||c[29]!==R?(Be=async()=>{const e=P.getLatestId(),t=oe,n=R.getQuestionValue("layout.required"),o=(R.getQuestionValue("items")??[]).filter(ne),i=I.items?.filter(te).map(ee)||[],r=o.filter(Y).map(e=>{const t=i.find(t=>t.id===e.id);return t?{...t,name:e.name||t.name,text:e.text||t.text}:e}),a=o?.find(X),l=a?{...a,type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map(K)}:{id:(e+r.length+1).toString(),type:"fn",fn:"Sum",text:"Numero selezionati",layout:{visibility:0},parameters:r.map(Z)},c=o?.find(U),s=c?{...c,parameters:[l.id],condition:`($${l.id}<1)`}:{id:(e+r.length+2).toString(),type:"cond",parameters:[l.id],condition:`($${l.id}<1)`};if(n){const e=H(s);if(!e)return;await P.replaceItem(I,{...R.value,items:t([l,e,...r])},"full")}else!R.getQuestionValue("layout.required")&&s&&await P.replaceItem(I,{...R.value,items:t([l,...r])},"full")},c[27]=P,c[28]=I,c[29]=R,c[30]=Be):Be=c[30];const Le=Be;let Fe;c[31]!==P||c[32]!==I||c[33]!==R.value?(Fe=async()=>{await P.replaceItem(I,{...R.value},"full")},c[31]=P,c[32]=I,c[33]=R.value,c[34]=Fe):Fe=c[34];const He=Fe;let Je;c[35]!==P||c[36]!==We||c[37]!==D||c[38]!==I||c[39]!==R?(Je=async()=>{const e=R.getQuestionValue("conditionCache"),t=e?F(e):null,n=R.getQuestionValue("conditionState")??"",o=D.getItem(I.id)?.localIndex??-1;e:switch(n){case"new":{const e=await P.addQuestion(A.cond.type,I.parent().id,o+1,void 0,"silent");await P.updateItem(e,void 0,t,"silent"),await P.moveItem(I,0,e.id,"silent"),R.updateItem("conditionState","edit");break e}case"alert":{const e=await P.addQuestion(A.alert.type,I.parent().id,o+1,void 0,"silent");await P.updateItem(e,void 0,{...t,text:R.getQuestionValue("text"),description:R.getQuestionValue("description")||"",name:R.getQuestionValue("name")||L(R.getQuestionValue("text"))},"silent"),await P.removeItem(I),R.updateItem("conditionState","edit");break e}case"edit":if(!We)return;if(q(t,We.toJSON())||null===t)return;T(We)===A.alert.type?await P.replaceItem(We,t,"silent"):await P.updateItem(We,void 0,t,"silent"),R.updateItem("conditionState","edit");break e;case"remove":if(!We)return;await P.moveItem(I,We.parent().items.indexOf(We),We.parent().id,"silent"),await P.removeItem(We,"silent"),R.updateItem("conditionState","new")}},c[35]=P,c[36]=We,c[37]=D,c[38]=I,c[39]=R,c[40]=Je):Je=c[40];const Re=Je;let $e;c[41]!==P||c[42]!==R?($e=async e=>{const t=R.getQuestionValue("text"),n=R.getQuestionValue("description"),o=R.getQuestionValue("name"),i=L(t);R.updateItem("name",o||i),await P.updateItem(e,void 0,{...R.value,text:t,description:n||"",name:o||i},"full")},c[41]=P,c[42]=R,c[43]=$e):$e=c[43];const Ge=$e;let Ue;c[44]!==P||c[45]!==Re||c[46]!==De||c[47]!==Le||c[48]!==I||c[49]!==V||c[50]!==G||c[51]!==He||c[52]!==Ge?(Ue=async()=>{De()&&!V&&(T(I)===A.multipleSelect.type||T(I)===A.autocomplete.type?await Le():T(I)===A.selectTable.type&&await He(),await Re(),await Ge(I),G({id:"",isNew:!1}),await P.createHistorySnapshot())},c[44]=P,c[45]=Re,c[46]=De,c[47]=Le,c[48]=I,c[49]=V,c[50]=G,c[51]=He,c[52]=Ge,c[53]=Ue):Ue=c[53];const Ze=Ue;let Ke;c[54]!==$.isNew||c[55]!==P||c[56]!==I||c[57]!==R||c[58]!==G?(Ke=async()=>{$.isNew&&await P.removeItem(I),G({id:"",isNew:!1}),R.updateItem(null,I.toJSON())},c[54]=$.isNew,c[55]=P,c[56]=I,c[57]=R,c[58]=G,c[59]=Ke):Ke=c[59];const Xe=Ke,Ye="multi-card"===E.root?.layout?.pageStyle?0:1;let et,tt,nt,ot;c[60]!==Ye?(et={borderRadius:3,bgcolor:"background.paper",border:"1px solid",borderColor:"divider",boxShadow:1,mx:Ye,minHeight:"20vh",overflow:"hidden"},c[60]=Ye,c[61]=et):et=c[61],c[62]===Symbol.for("react.memo_cache_sentinel")?(tt={position:"sticky",top:0,zIndex:3,backgroundColor:"background.paper",borderBottom:1,borderColor:"divider"},c[62]=tt):tt=c[62],c[63]===Symbol.for("react.memo_cache_sentinel")?(nt={p:2,alignItems:"center"},c[63]=nt):nt=c[63],c[64]===Symbol.for("react.memo_cache_sentinel")?(ot={width:34,height:34,display:"flex",alignItems:"center",justifyContent:"center",flex:"0 0 auto"},c[64]=ot):ot=c[64];const it=A[je];let rt,at,lt;c[65]!==it.icon?(rt=s(S,{sx:ot,children:it.icon}),c[65]=it.icon,c[66]=rt):rt=c[66],c[67]===Symbol.for("react.memo_cache_sentinel")?(at={minWidth:0,flex:1},c[67]=at):at=c[67],c[68]===Symbol.for("react.memo_cache_sentinel")?(lt={alignItems:"center",minWidth:0,justifyContent:"flex-start"},c[68]=lt):lt=c[68];const ct=Ve?"clamp(240px, 55vw, 820px)":"clamp(280px, 70vw, 980px)";let st,dt,ut,mt,pt,ft,ht;c[69]!==ct?(st={minWidth:0,flexGrow:0,flexShrink:1,maxWidth:ct},c[69]=ct,c[70]=st):st=c[70],c[71]!==Ne||c[72]!==st?(dt=s(M,{variant:"body1",sx:st,noWrap:!0,children:Ne}),c[71]=Ne,c[72]=st,c[73]=dt):dt=c[73],c[74]!==Ve?(ut=Ve?d(u,{children:[s(C,{orientation:"vertical",flexItem:!0,sx:{opacity:.6,mx:.25}}),s(M,{variant:"caption",sx:{flex:"0 0 auto",maxWidth:"18ch"},noWrap:!0,children:`#${Ve}`})]}):null,c[74]=Ve,c[75]=ut):ut=c[75],c[76]!==dt||c[77]!==ut?(mt=s(S,{sx:at,children:d(z,{direction:"row",spacing:1,sx:lt,children:[dt,ut]})}),c[76]=dt,c[77]=ut,c[78]=mt):mt=c[78],c[79]!==rt||c[80]!==mt?(pt=d(z,{direction:"row",spacing:2,sx:nt,children:[rt,mt]}),c[79]=rt,c[80]=mt,c[81]=pt):pt=c[81],c[82]===Symbol.for("react.memo_cache_sentinel")?(ft={justifyContent:"center",minHeight:44},c[82]=ft):ft=c[82],c[83]===Symbol.for("react.memo_cache_sentinel")?(ht=s(N,{size:20}),c[83]=ht):ht=c[83];const yt="main"===ie?"MODIFICA":null;let gt,xt,bt;c[84]===Symbol.for("react.memo_cache_sentinel")?(gt={minHeight:44},c[84]=gt):gt=c[84],c[85]!==yt?(xt=s(j,{"aria-label":"tab-main-panel",icon:ht,iconPosition:"start",label:yt,value:"main",sx:gt}),c[85]=yt,c[86]=xt):xt=c[86],c[87]!==We?(bt=We?s(v,{color:"secondary",badgeContent:"",variant:"dot",children:s(O,{size:20})}):s(O,{size:20}),c[87]=We,c[88]=bt):bt=c[88];const vt="condition"===ie?"LOGICA":null;let St,It,wt,Ct,_t,kt,Qt,Vt,zt,jt;c[89]===Symbol.for("react.memo_cache_sentinel")?(St={minHeight:44},c[89]=St):St=c[89],c[90]!==bt||c[91]!==vt?(It=s(j,{"aria-label":"tab-condition-panel",icon:bt,iconPosition:"start",label:vt,value:"condition",sx:St}),c[90]=bt,c[91]=vt,c[92]=It):It=c[92],c[93]!==ie||c[94]!==_e||c[95]!==Qe?(wt=!Qe&&s(j,{"aria-label":"tab-options-panel",className:"optionsTab",icon:_e?s(v,{color:"secondary",badgeContent:"",variant:"dot",children:s(W,{size:20})}):s(W,{size:20}),iconPosition:"start",label:"options"===ie?"OPZIONI":null,value:"options",sx:{minHeight:44}}),c[93]=ie,c[94]=_e,c[95]=Qe,c[96]=wt):wt=c[96],c[97]!==be||c[98]!==xt||c[99]!==It||c[100]!==wt?(Ct=d(x,{onChange:be,variant:"fullWidth",sx:ft,children:[xt,It,wt]}),c[97]=be,c[98]=xt,c[99]=It,c[100]=wt,c[101]=Ct):Ct=c[101],c[102]!==pt||c[103]!==Ct?(_t=d(S,{sx:tt,children:[pt,Ct]}),c[102]=pt,c[103]=Ct,c[104]=_t):_t=c[104],c[105]===Symbol.for("react.memo_cache_sentinel")?(kt={p:0},c[105]=kt):kt=c[105],c[106]!==I||c[107]!==V?(Qt=s(J,{item:I,readonlyMode:V}),c[106]=I,c[107]=V,c[108]=Qt):Qt=c[108],c[109]!==w?(Vt=w&&d(u,{children:[s(C,{textAlign:"left"}),w]}),c[109]=w,c[110]=Vt):Vt=c[110],c[111]!==Qt||c[112]!==Vt?(zt=s(b,{ref:Ee,"aria-label":"tab-main-panel",value:"main",keepMounted:!0,sx:kt,children:d(S,{children:[Qt,Vt]})}),c[111]=Qt,c[112]=Vt,c[113]=zt):zt=c[113],c[114]===Symbol.for("react.memo_cache_sentinel")?(jt={p:0},c[114]=jt):jt=c[114];const Mt=parseInt(y);let qt,Nt,Ot,Wt,Et,Pt;c[115]!==I||c[116]!==V||c[117]!==Mt?(qt=s(b,{value:"condition",keepMounted:!0,"aria-label":"tab-condition-panel",sx:jt,children:s(he,{question:I,questionIndex:Mt,readonlyMode:V})}),c[115]=I,c[116]=V,c[117]=Mt,c[118]=qt):qt=c[118],c[119]===Symbol.for("react.memo_cache_sentinel")?(Nt={px:3,py:2,backgroundColor:"background.default"},c[119]=Nt):Nt=c[119],c[120]!==_?(Ot=s(b,{ref:Ee,keepMounted:!0,"aria-label":"tab-options-panel",value:"options",sx:Nt,children:_}),c[120]=_,c[121]=Ot):Ot=c[121],c[122]===Symbol.for("react.memo_cache_sentinel")?(Wt={p:0},c[122]=Wt):Wt=c[122],c[123]!==k?(Et=s(b,{"aria-label":"tab-layout-panel",keepMounted:!0,value:"layout",sx:Wt,children:k}),c[123]=k,c[124]=Et):Et=c[124],c[125]!==ie||c[126]!==_t||c[127]!==zt||c[128]!==qt||c[129]!==Ot||c[130]!==Et?(Pt=d(g,{value:ie,children:[_t,zt,qt,Ot,Et]}),c[125]=ie,c[126]=_t,c[127]=zt,c[128]=qt,c[129]=Ot,c[130]=Et,c[131]=Pt):Pt=c[131];const Tt=!De();let At,Dt;return c[132]!==Xe||c[133]!==Ze||c[134]!==I||c[135]!==V||c[136]!==Tt?(At=s(ye,{question:I,handleOnSave:Ze,handleOnCancel:Xe,isDisabled:Tt,blurAllForms:Te,readonlyMode:V}),c[132]=Xe,c[133]=Ze,c[134]=I,c[135]=V,c[136]=Tt,c[137]=At):At=c[137],c[138]!==et||c[139]!==Pt||c[140]!==At?(Dt=d(z,{sx:et,children:[Pt,At]}),c[138]=et,c[139]=Pt,c[140]=At,c[141]=Dt):Dt=c[141],Dt}function U(e){return T(e)===A.cond.type}function Z(e){return e.id}function K(e){return e.id}function X(e){return T(e)===A.fn.type}function Y(e){return T(e)===A.check.type}function ee(e){return e.toJSON()}function te(e){return T(e)===A.check.type}function ne(e,t,n){return n.findIndex(t=>t.id===e.id)===t}function oe(e){return e&&0!==e.length?e.map(ie):[]}function ie(e){return T(e)===A.cond.type?F(e):e}function re(e){return!e}function ae(e){return e.text}function le(e){return e.type!==A.fn.type&&e.type!==A.cond.type}function ce(e){return!e}function se(e){return e.text}function de(e){return e.type!==A.fn.type&&e.type!==A.cond.type}function ue(e){return e.score}function me(e){return!e}function pe(e){return e.text}function fe(e){return e.blur()}const he=o=>{const i=e(52),{question:r,questionIndex:a,readonlyMode:p}=o,{editorState:h}=n(),{stageMutation:y}=t(),g=m();let x;i[0]!==r?(x=r instanceof f?H(r):r.parent()instanceof f?H(r.parent()):void 0,i[0]=r,i[1]=x):x=i[1];const b=x;let v;i[2]!==r?(v=r instanceof f?r:r.parent()instanceof f?r.parent():void 0,i[2]=r,i[3]=v):v=i[3];const w=v;let _;i[4]!==h||i[5]!==b||i[6]!==r||i[7]!==w||i[8]!==g?(_=async()=>{if(!b&&w){if(H(w))return;console.error("Fixing broken condition:",w.toJSON()),await h.moveItem(r,w.parent().items.indexOf(w),w.parent().id,"silent"),await h.removeItem(w,"full"),g.updateItem("conditionState","new")}},i[4]=h,i[5]=b,i[6]=r,i[7]=w,i[8]=g,i[9]=_):_=i[9];const k=l(_);let z,j,q;i[10]!==k?(z=()=>{k()},i[10]=k,i[11]=z):z=i[11],i[12]===Symbol.for("react.memo_cache_sentinel")?(j=[],i[12]=j):j=i[12],c(z,j),i[13]!==g?(q=g.getQuestionValue("conditionState"),i[13]=g,i[14]=q):q=i[14];const N=q;let O;i[15]!==g?(O=g.getQuestionValue("conditionCache"),i[15]=g,i[16]=O):O=i[16];const W=O;let B;i[17]!==g||i[18]!==y?(B=(e,t)=>{const n=y(n=>n.add(e.parent().id,{...D(A.cond.type)},t??-1));if(!n)return;y(e=>e.remove(n.id));const o={...n.toJSON(),expression:{type:"exp",left:null,operator:null,right:null}};g.updateItem("conditionCache",o),g.updateItem("conditionState","new")},i[17]=g,i[18]=y,i[19]=B):B=i[19];const L=B;let F;i[20]!==N||i[21]!==b||i[22]!==r||i[23]!==a||i[24]!==g||i[25]!==y?(F=()=>{if(b){if(T(r)===A.alert.type&&!N){const e=y(e=>e.add(r.parent().id,{...D(A.alert.type),...g.value},a??-1));if(!e)return;y(t=>t.remove(e.id));const t=b?.expression,n={...e.toJSON(),expression:{type:"exp",left:null,operator:null,right:null,...t||{}}};return g.updateItem("conditionCache",n),void g.updateItem("conditionState","alert")}g.updateItem("conditionCache",b),g.updateItem("conditionState","edit")}},i[20]=N,i[21]=b,i[22]=r,i[23]=a,i[24]=g,i[25]=y,i[26]=F):F=i[26];const J=l(F);let G,U;i[27]!==J?(G=()=>{J()},i[27]=J,i[28]=G):G=i[28],i[29]===Symbol.for("react.memo_cache_sentinel")?(U=[],i[29]=U):U=i[29],c(G,U);const Z=W?.expression,K=Z?.left,X=Z?.right;let Y;i[30]!==Z||i[31]!==W||i[32]!==g?(Y=()=>{const e={...W,expression:{...Z||{},type:"exp",left:Z,operator:"&&",right:{type:"exp",operator:null,left:null,right:null}}};g.updateItem("conditionCache",e)},i[30]=Z,i[31]=W,i[32]=g,i[33]=Y):Y=i[33];const ee=Y;let te;i[34]!==Z||i[35]!==W||i[36]!==g?(te=e=>{const t="left"===e?"right":"left",n=Z?.[t],o=n?.left,i=o?.name?o.name:void 0;g.updateItem("conditionCache",{...W,expression:n,parameters:i?[i]:[]})},i[34]=Z,i[35]=W,i[36]=g,i[37]=te):te=i[37];const ne=te;if(p&&!W){let e;return i[38]===Symbol.for("react.memo_cache_sentinel")?(e=s(S,{sx:{pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},children:s(M,{children:"Nessuna condizione impostata"})}),i[38]=e):e=i[38],e}let oe,ie;return i[39]===Symbol.for("react.memo_cache_sentinel")?(oe={pt:4,pl:2,pr:2,pb:4,backgroundColor:"background.default",justifyContent:"flex-start"},i[39]=oe):oe=i[39],i[40]!==L||i[41]!==ee||i[42]!==Z||i[43]!==W||i[44]!==K||i[45]!==r||i[46]!==a||i[47]!==g||i[48]!==p||i[49]!==ne||i[50]!==X?.type?(ie=s(S,{sx:oe,children:W?W.id===r.id?s(R,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),readonlyMode:p}):d(u,!Z||null!==Z?.right&&"v"!==X?.type?{children:[s($,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),path:"left",readonlyMode:p}),T(r)!==A.alert.type&&d(I,{fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>ne("left"),disabled:p,sx:{mt:2,mb:2},children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]}),s(C,{}),d(V,{title:"Seleziona operatore",defaultValue:"",size:"small",value:Z?.operator,disabled:p,onChange:async e=>{e.preventDefault();const t={...W,expression:{...Z||{},operator:e.target.value}};g.updateItem("conditionCache",t)},sx:{backgroundColor:"background.default",mt:2,mb:1},children:[s(Q,{value:"&&",children:"E"},"and"),s(Q,{value:"||",children:"Oppure"},"or")]}),s($,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),path:"right",readonlyMode:p}),d(I,{sx:{mt:2},fullWidth:!1,variant:"contained",color:"secondary",onClick:()=>ne("right"),disabled:p,children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]})]}:{children:[s(R,{question:r,itemCondition:W,setItemCondition:e=>g.updateItem("conditionCache",e),readonlyMode:p}),T(r)!==A.alert.type&&d(I,{fullWidth:!1,variant:"contained",color:"secondary",onClick:async()=>{g.updateItem("conditionCache",null),g.updateItem("conditionState","remove")},disabled:p,sx:{mt:2},children:[s(E,{size:20}),s(M,{sx:{pl:1},children:"Rimuovi condizione"})]}),d(S,{sx:{mt:2},children:[s(C,{}),d(I,{fullWidth:!1,variant:"contained",color:"primary",sx:{mt:2},disabled:!K||p,onClick:ee,children:[s(P,{size:20}),s(M,{sx:{ml:1},children:"Aggiungi condizione"})]})]})]}):d(I,{fullWidth:!1,variant:"contained",color:"primary",onClick:()=>L(r,a),disabled:p,children:[s(P,{size:20}),s(M,{sx:{ml:1},children:"Aggiungi condizione"})]})}),i[40]=L,i[41]=ee,i[42]=Z,i[43]=W,i[44]=K,i[45]=r,i[46]=a,i[47]=g,i[48]=p,i[49]=ne,i[50]=X?.type,i[51]=ie):ie=i[51],ie},ye=t=>{const n=e(44),{question:o,handleOnSave:i,handleOnCancel:r,blurAllForms:a,isDisabled:l,readonlyMode:u}=t,p=m();let f,h,g;n[0]!==a||n[1]!==i||n[2]!==l?(f=()=>{const e=async e=>{"Enter"!==e.key||l||(a(),await i())};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},h=[a,i,l],n[0]=a,n[1]=i,n[2]=l,n[3]=f,n[4]=h):(f=n[3],h=n[4]),c(f,h),n[5]!==o?(g=o instanceof y||A.multipleSelect.type===T(o)||A.autocomplete.type===T(o)||A.fileUpload.type===T(o),n[5]=o,n[6]=g):g=n[6];const x=g;let b;n[7]!==o||n[8]!==p?(b=A.multipleSelect.type!==T(o)&&T(o)!==A.autocomplete.type||!o.items.length?p.getQuestionValue("options.required"):p.getQuestionValue("layout.required"),n[7]=o,n[8]=p,n[9]=b):b=n[9];const v=b;let S;n[10]!==o||n[11]!==p||n[12]!==u?(S=async e=>{u||(A.multipleSelect.type!==T(o)&&T(o)!==A.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]=S):S=n[13];const C=S;let Q,V;if(n[14]!==p){const e=p.getQuestionValue("conditionCache"),t=e?.expression,o=e=>{if(!e||"exp"!==e.type)return!1;const t=e=>{if(!e||"object"!=typeof e)return!0;const t=e,n=t.type;if("p"===n)return"string"!=typeof t.name||0===t.name.trim().length;if("v"===n){const e=t.value;return null==e||""===e}return"exp"===n&&o(e)};return!e.operator||(!!t(e.left)||!!t(e.right))};Q=Boolean,V=e&&o(t),n[14]=p,n[15]=Q,n[16]=V}else Q=n[15],V=n[16];const j=Q(V);let M,q,N,O,W;n[17]===Symbol.for("react.memo_cache_sentinel")?(M={width:"100%",flexWrap:"nowrap",justifyContent:"space-between",alignItems:"center",p:2},n[17]=M):M=n[17],n[18]!==x||n[19]!==v||n[20]!==C||n[21]!==u?(q=x&&s(_,{label:"Obbligatorio",control:s(w,{checked:v,onChange:C}),disabled:u}),n[18]=x,n[19]=v,n[20]=C,n[21]=u,n[22]=q):q=n[22],n[23]===Symbol.for("react.memo_cache_sentinel")?(N={justifyContent:"flex-end",width:"100%",alignItems:"center"},n[23]=N):N=n[23],n[24]!==a?(O=()=>a(),n[24]=a,n[25]=O):O=n[25],n[26]!==r?(W=()=>r(),n[26]=r,n[27]=W):W=n[27];const E=u?"Chiudi":"Annulla";let P,D,B,L;return n[28]!==O||n[29]!==W||n[30]!==E?(P=s(I,{variant:"outlined",color:"secondary",onMouseDown:O,onMouseUp:W,children:E}),n[28]=O,n[29]=W,n[30]=E,n[31]=P):P=n[31],n[32]!==a||n[33]!==i||n[34]!==l||n[35]!==j||n[36]!==u?(D=!u&&s(I,{variant:"contained",color:"primary",className:"save",disabled:l||j,onMouseDown:()=>a(),onMouseUp:()=>i(),children:"Salva"}),n[32]=a,n[33]=i,n[34]=l,n[35]=j,n[36]=u,n[37]=D):D=n[37],n[38]!==P||n[39]!==D?(B=d(z,{direction:"row",spacing:1,sx:N,children:[P,D]}),n[38]=P,n[39]=D,n[40]=B):B=n[40],n[41]!==B||n[42]!==q?(L=d(k,{container:!0,sx:M,children:[q,B]}),n[41]=B,n[42]=q,n[43]=L):L=n[43],L};export{G as CommonQuestionEditor};
|