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

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 (52) hide show
  1. package/dist/core/compiler/common/CompilerProgress.js +1 -1
  2. package/dist/core/compiler/common/SidebarCompiler.js +1 -1
  3. package/dist/core/compiler/containers/PageCompiler.js +1 -1
  4. package/dist/core/compiler/containers/SectionCompiler.js +1 -1
  5. package/dist/core/compiler/question_forms/ItemConditionalCompiler.js +1 -1
  6. package/dist/core/compiler/question_forms/ItemFunctionCompiler.js +1 -1
  7. package/dist/core/compiler/question_forms/QuestionMultipleSelectCompiler.js +1 -1
  8. package/dist/core/compiler/question_forms/QuestionSelectCompiler.js +1 -1
  9. package/dist/core/compiler/question_forms/UploadFormCompiler.js +1 -1
  10. package/dist/core/components/common/DrawerCommon.js +1 -1
  11. package/dist/core/components/forms/QuestionAlertCommon.js +1 -1
  12. package/dist/core/components/forms/QuestionCommon.js +1 -1
  13. package/dist/core/components/forms/QuestionDateCommon.js +1 -1
  14. package/dist/core/components/forms/QuestionListCommon.js +1 -1
  15. package/dist/core/components/forms/QuestionMultipleSelectCommon.js +1 -1
  16. package/dist/core/components/forms/QuestionNumberCommon.js +1 -1
  17. package/dist/core/components/forms/QuestionSelectCommon.js +1 -1
  18. package/dist/core/components/forms/QuestionTableCommon.js +1 -1
  19. package/dist/core/editor/common/HierarchyEditor.js +1 -1
  20. package/dist/core/editor/common/OptionsEditor.js +1 -1
  21. package/dist/core/editor/common/sidebar/SidebarEditor.js +1 -1
  22. package/dist/core/editor/common/sidebar/SidebarPageStructure.js +1 -1
  23. package/dist/core/editor/common/sidebar/SidebarQuestionStructure.js +1 -1
  24. package/dist/core/editor/containers/FolderEditor.js +1 -1
  25. package/dist/core/editor/containers/PageEditor.js +1 -1
  26. package/dist/core/editor/containers/RenderPageEditModal.js +1 -1
  27. package/dist/core/editor/containers/RenderPageHeader.js +1 -1
  28. package/dist/core/editor/containers/RenderSectionEditModal.js +1 -1
  29. package/dist/core/editor/question_editor/QuestionCommonEditor.js +1 -1
  30. package/dist/core/editor/question_editor/QuestionMainComponent.js +1 -1
  31. package/dist/core/editor/question_editor/QuestionPreviewRender.js +1 -1
  32. package/dist/core/editor/question_forms/ItemConditionalEditor.js +1 -1
  33. package/dist/core/editor/question_forms/QuestionCheckEditor.js +1 -1
  34. package/dist/core/editor/question_forms/QuestionDateEditor.js +1 -1
  35. package/dist/core/editor/question_forms/QuestionMultipleSelectEditor.js +1 -1
  36. package/dist/core/editor/question_forms/QuestionSelectEditor.js +1 -1
  37. package/dist/core/editor/question_forms/QuestionTableEditor.js +1 -1
  38. package/dist/core/hooks/common/NavigationHook.js +1 -1
  39. package/dist/core/hooks/compiler/InitCompiler.js +1 -1
  40. package/dist/core/hooks/editor/EditorLocalMutations.js +1 -1
  41. package/dist/core/hooks/editor/EditorOperations.js +1 -1
  42. package/dist/core/hooks/editor/QuestionOperations.js +1 -1
  43. package/dist/core/presenter/FormPresenter.js +1 -1
  44. package/dist/core/presenter/common/QuestionPresenter.js +1 -1
  45. package/dist/core/presenter/containers/PagePresenter.js +1 -1
  46. package/dist/core/types/FormGlobalTypes.d.ts +1 -0
  47. package/dist/core/types/FormGlobalTypes.js +1 -1
  48. package/dist/core/utils/config-map.d.ts +1 -1
  49. package/dist/core/utils/config-map.js +1 -1
  50. package/dist/core/utils/parsers/LegacyConditionParser.js +1 -1
  51. package/dist/index.js +1 -1
  52. package/package.json +16 -13
@@ -1 +1 @@
1
- import{c as e}from"react/compiler-runtime";import{useNavigation as t}from"../common/NavigationHook.js";import{QuestionText as o,QuestionDate as i,QuestionNumber as s,QuestionSelect as r,ItemFunction as n,OperationType as a}from"@famalabs/survey";import{get as l,set as c}from"lodash-es";import{getMapType as u,Mapper as m,ItemFunctionMap as p,getDefaultData as d,ItemMap as f}from"../../utils/config-map.js";import"../../utils/locale.js";import{formatName as y}from"../../utils/format-utils.js";import"acorn";import{useEditorHistory as v}from"./EditorHistory.js";import{addLocalPage as S,addLocalQuestion as h,updateLocalItem as g,addLocalFolder as w,addLocalLandingPage as x,replaceLocalItem as H,duplicateLocalItem as N,removeLocalItem as O,moveLocalItem as E}from"./EditorLocalMutations.js";const P=e=>{let t=0;const o=e=>{const i=parseInt(e.id,10);!isNaN(i)&&i>t&&(t=i),e.items.forEach(o)};return e.root&&o(e.root),t},J=(e,t)=>l(e,t),I=(e,t)=>{t!==m.select.type&&t!==m.dropdown.type||(e.addSelect({text:"Selezione 1",score:0},-1),e.addSelect({text:"Selezione 2",score:1},-1))};function z(l,z,L,A,b,j){const Y=e(88),k=v(l,L,j),C=t(l);let Q;Y[0]!==l||Y[1]!==j||Y[2]!==z||Y[3]!==A?(Q=async function(e,t,a){const c=void 0===a?"full":a,p=e??l.root,{local:d}=S(l,z,p,-1,{text:t.text??void 0}),f=(u(p)===m.folder.type||"0"===p.id)&&d.some?d.value:p;("items"in t&&Array.isArray(t.items)?t.items:[]).map(e=>{if("folder"!==e.layout?.style&&"page"!==e.layout?.style){if(u(e)===m.multipleSelect.type){const{local:t}=h(z,e.type,f.id,-1,e.toJSON());if(!t.some)return;const o=t.value;return("items"in e&&Array.isArray(e.items)?e.items:[]).map((e,t)=>{if(u(e)===m.fn.type)return;const{local:i}=h(z,m.check.type,o.id,t,e.toJSON());return i.some?i.value:void 0}),h(z,m.fn.type,o.id,0,{fn:"sum",text:"Numero selezionati",layout:{visibility:0},parameters:[o.items[0].id,o.items[1].id]}),o}if(e.type===m.cond.type){const{local:t}=h(z,e.type,f.id,-1,{...e.toJSON(),parameters:[]});if(!t.some)return;const o=t.value;return("items"in e&&Array.isArray(e.items)?e.items:[]).map(e=>{const{local:t}=h(z,e.type,o.id,-1,e.toJSON());if(!t.some)return;const{local:i}=g(z,o,{...o,parameters:[...o.parameters,t.value.id]});return i.some?i.value:void 0}),o}if([o.TYPE,i.TYPE,s.TYPE,r.TYPE,n.TYPE].includes(e.type)){const{local:t}=h(z,e.type,f.id,-1,e.toJSON());return t.some?t.value:void 0}return}});const y={type:8,data:null,id:l.root.id};return await j(y,c),"full"===c&&A(),f},Y[0]=l,Y[1]=j,Y[2]=z,Y[3]=A,Y[4]=Q):Q=Y[4];const $=Q;let _;Y[5]!==l||Y[6]!==j||Y[7]!==z||Y[8]!==A?(_=async function(e){const t=void 0===e?"full":e,{local:o,server:i}=w(l,z);if(o.some)return await j(i,t),"full"===t&&A(),o.value},Y[5]=l,Y[6]=j,Y[7]=z,Y[8]=A,Y[9]=_):_=Y[9];const q=_;let R;Y[10]!==l||Y[11]!==j||Y[12]!==z||Y[13]!==A?(R=async function(e,t,o){const i=void 0===t?-1:t,s=void 0===o?"full":o,{local:r,server:n}=S(l,z,e,i);if(r.some)return await j(n,s),"full"===s&&A(),r.value},Y[10]=l,Y[11]=j,Y[12]=z,Y[13]=A,Y[14]=R):R=Y[14];const D=R;let F;Y[15]!==l||Y[16]!==j||Y[17]!==z||Y[18]!==A?(F=async function(e){const t=void 0===e?"full":e,{local:o,server:i}=x(l,z);if(o.some)return await j(i,t),"full"===t&&A(),o.value},Y[15]=l,Y[16]=j,Y[17]=z,Y[18]=A,Y[19]=F):F=Y[19];const M=F;let U;Y[20]!==j||Y[21]!==C||Y[22]!==z||Y[23]!==A?(U=async function(e,t,o,i,s){const r=void 0===s?"full":s,{local:n,server:l}=h(z,e,t||C.currentPage?.id||"0",o??-1,i);if(!n.some)return;const c=n.value;if(await j(l,r),I(c,e),e===m.selectTable.type){for(const e of[0,1]){const{local:t,server:o}=h(z,m.select.type,c.id,e,{...i,text:`sdf ${e+1}`,options:{required:!0,select:[]}});t.some&&(await j(o,"silent"),I(t.value,m.select.type))}const e={...c.toJSON(),items:c.items?.map((e,t)=>({...e.toJSON(),text:`Domanda ${t+1}`,name:y(`${c.name}_domanda_${t+1}`),options:{required:!0,select:[{text:"H1",score:0},{text:"H2",score:1},{text:"H3",score:2}]}}))},{local:t,server:o}=H(z,c,e);t.some&&await j(o,"silent");const s=t.some?t.value:c;if(!s)return c;await j({type:a.REPLACE,data:s.toJSON(),id:s.id,parent:s.parent()?.id,index:C.getItem(s.id)?.globalIndex},"silent")}else if(e===m.multipleSelect.type||e===m.autocomplete.type){const{local:e,server:t}=h(z,m.check.type,c.id,1,{...i,text:"Opzione 1",name:"opzione_1"});if(!e.some)return c;await j(t,"silent");const{local:o,server:s}=h(z,m.check.type,c.id,2,{...i,text:"Opzione 2",name:"opzione_2"});if(!o.some)return c;await j(s,"silent");const{server:r}=h(z,m.fn.type,c.id,0,{fn:p.fn.sum,text:"Numero selezionati",layout:{visibility:0},parameters:[e.value.id,o.value.id]});await j(r,"silent")}return"full"===r&&A(),c},Y[20]=j,Y[21]=C,Y[22]=z,Y[23]=A,Y[24]=U):U=Y[24];const V=U;let B;Y[25]!==j||Y[26]!==C||Y[27]!==z||Y[28]!==A?(B=async function(e,t,o,i,s){const r=void 0===s?"full":s,{local:n,server:a}=h(z,e,o||C.currentPage?.id||"0",i??-1,t);if(n.some)return await j(a,r),"full"===r&&A(),n.value},Y[25]=j,Y[26]=C,Y[27]=z,Y[28]=A,Y[29]=B):B=Y[29];const G=B;let K;Y[30]!==j||Y[31]!==z||Y[32]!==A?(K=async function(e,t,o){const i=void 0===o?"full":o,s=c({...e.toJSON()},"items",t),{local:r,server:n}=g(z,e,s);if(r.some)return await j(n,i),"full"===i&&A(),r.value},Y[30]=j,Y[31]=z,Y[32]=A,Y[33]=K):K=Y[33];const W=K;let X;Y[34]!==j||Y[35]!==z||Y[36]!==A?(X=async function(e,t,o,i){const s=void 0===i?"full":i,{local:r}=N(z,e,t,o);if(!r.some)return;const n=(e,t)=>{e.items?.length&&e.items.forEach(e=>{const{local:o}=N(z,e,t,-1);o.some&&n(e,o.value)})};n(e,r.value);const l=t.toJSON(),c={type:a.REPLACE,data:l,id:t.id,parent:t.parent()?.id,index:-1};await j(c,s),"full"===s&&A()},Y[34]=j,Y[35]=z,Y[36]=A,Y[37]=X):X=Y[37];const Z=X;let ee;Y[38]!==j||Y[39]!==z||Y[40]!==A?(ee=async function(e,t){const o=void 0===t?"full":t,i=e.parent(),s=u(i)===m.cond.type?i:e,{local:r,server:n}=O(z,s);if(r.some)return await j(n,o),"full"===o&&A(),r.value},Y[38]=j,Y[39]=z,Y[40]=A,Y[41]=ee):ee=Y[41];const te=ee;let oe;Y[42]!==j||Y[43]!==z||Y[44]!==A?(oe=async function(e,t,o,i){const s=void 0===i?"full":i,r=t?c({...e.toJSON()},t,o):{...e.toJSON(),...o||{}},{local:n,server:a}=g(z,e,r);if(n.some)return await j(a,s),"full"===s&&A(),n.value},Y[42]=j,Y[43]=z,Y[44]=A,Y[45]=oe):oe=Y[45];const ie=oe;let se;Y[46]!==j||Y[47]!==z||Y[48]!==A?(se=async function(e,t,o){const i=void 0===o?"full":o,{local:s,server:r}=H(z,e,t);if(s.some)return await j(r,i),"full"===i&&A(),s.value},Y[46]=j,Y[47]=z,Y[48]=A,Y[49]=se):se=Y[49];const re=se;let ne;Y[50]!==j||Y[51]!==z||Y[52]!==A?(ne=async function(e,t,o,i){const s=void 0===i?"full":i,{local:r,server:n}=E(z,e,t,o);if(r.some)return await j(n,s),"full"===s&&A(),r.value},Y[50]=j,Y[51]=z,Y[52]=A,Y[53]=ne):ne=Y[53];const ae=ne;let le;Y[54]!==V||Y[55]!==k||Y[56]!==te||Y[57]!==z||Y[58]!==A?(le=async function(e,t){const o=e.parent(),i=(u(o)!==m.cond.type?o:o.parent()).items.indexOf(e);if(u(o)===m.cond.type)return void alert("Per eseguire questa operazione elimina prima la condizione presente.");if(t===u(e))return console.warn("New type is the same as the current type."),e;if(t===m.section.type&&u(e)===m.page.type){if(e.items.map(T).includes(m.section.type))return console.error("Cannot convert page to section because it contains sections."),e;const t=z(e=>e.add(o.id,d(m.page.type),-1));if(!t)return;return z(()=>t.update({text:e.text,description:e.description})),E(z,e,0,t.id),void z(()=>t.items[0].update({layout:{style:f.layout.style.section}}))}if(t===m.page.type&&u(e)===m.section.type){g(z,e,{layout:{style:o.layout?.style}});const{local:t}=E(z,e,o.parent().items.length,o.parent().id);if(!t.some)return;return t.value}const s=await V(t,o.id,i,{name:e.name,text:e.text,description:e.description},"silent");return await te(e,"silent"),A(),await k.createHistorySnapshot(),s},Y[54]=V,Y[55]=k,Y[56]=te,Y[57]=z,Y[58]=A,Y[59]=le):le=Y[59];const ce=le;let ue,me,pe,de;return Y[60]!==b?(ue=()=>b.sources,Y[60]=b,Y[61]=ue):ue=Y[61],Y[62]!==k.currentSnapshotTime?(me=()=>k.currentSnapshotTime,Y[62]=k.currentSnapshotTime,Y[63]=me):me=Y[63],Y[64]!==l?(pe=()=>P(l),Y[64]=l,Y[65]=pe):pe=Y[65],Y[66]!==q||Y[67]!==M||Y[68]!==D||Y[69]!==G||Y[70]!==V||Y[71]!==ce||Y[72]!==Z||Y[73]!==k.clearHistory||Y[74]!==k.createHistorySnapshot||Y[75]!==k.getHistoryList||Y[76]!==k.restoreHistorySnapshot||Y[77]!==ae||Y[78]!==W||Y[79]!==te||Y[80]!==re||Y[81]!==$||Y[82]!==A||Y[83]!==ue||Y[84]!==me||Y[85]!==pe||Y[86]!==ie?(de={getSurveySources:ue,getCurrentSnapshot:me,getLatestId:pe,refreshSurveyInstance:A,getItemValue:J,schemaUpdate:$,addFolder:q,addPage:D,addLandingPage:M,addQuestion:V,addPremadeQuestion:G,patchQuestion:W,removeItem:te,updateItem:ie,replaceItem:re,duplicateItem:Z,moveItem:ae,changeQuestionType:ce,createHistorySnapshot:k.createHistorySnapshot,restoreHistorySnapshot:k.restoreHistorySnapshot,getHistoryList:k.getHistoryList,clearHistory:k.clearHistory},Y[66]=q,Y[67]=M,Y[68]=D,Y[69]=G,Y[70]=V,Y[71]=ce,Y[72]=Z,Y[73]=k.clearHistory,Y[74]=k.createHistorySnapshot,Y[75]=k.getHistoryList,Y[76]=k.restoreHistorySnapshot,Y[77]=ae,Y[78]=W,Y[79]=te,Y[80]=re,Y[81]=$,Y[82]=A,Y[83]=ue,Y[84]=me,Y[85]=pe,Y[86]=ie,Y[87]=de):de=Y[87],de}function T(e){return u(e)}export{P as getLatestId,z as useEditorState};
1
+ import{c as e}from"react/compiler-runtime";import{useNavigation as t}from"../common/NavigationHook.js";import{QuestionText as o,QuestionDate as i,QuestionNumber as s,QuestionSelect as r,ItemFunction as n,OperationType as a}from"@famalabs/survey";import{get as l,set as c}from"lodash-es";import{getMapType as u,Mapper as m,ItemFunctionMap as p,getDefaultData as d,ItemMap as f}from"../../utils/config-map.js";import"../../utils/locale.js";import{formatName as y}from"../../utils/format-utils.js";import"acorn";import{useEditorHistory as v}from"./EditorHistory.js";import{addLocalPage as S,addLocalQuestion as g,updateLocalItem as h,addLocalFolder as w,addLocalLandingPage as x,replaceLocalItem as H,duplicateLocalItem as N,removeLocalItem as O,moveLocalItem as P}from"./EditorLocalMutations.js";import{calculateLatestId as E}from"./QuestionOperations.js";const J=(e,t)=>l(e,t),z=(e,t)=>{t!==m.select.type&&t!==m.dropdown.type||(e.addSelect({text:"Selezione 1",score:0},-1),e.addSelect({text:"Selezione 2",score:1},-1))};function I(l,I,L,A,j,b){const Q=e(88),Y=v(l,L,b),k=t(l);let C;Q[0]!==l||Q[1]!==b||Q[2]!==I||Q[3]!==A?(C=async function(e,t,a){const c=void 0===a?"full":a,p=e??l.root,{local:d}=S(l,I,p,-1,{text:t.text??void 0}),f=(u(p)===m.folder.type||"0"===p.id)&&d.some?d.value:p;("items"in t&&Array.isArray(t.items)?t.items:[]).map(e=>{if("folder"!==e.layout?.style&&"page"!==e.layout?.style){if(u(e)===m.multipleSelect.type){const{local:t}=g(I,e.type,f.id,-1,e.toJSON());if(!t.some)return;const o=t.value;return("items"in e&&Array.isArray(e.items)?e.items:[]).map((e,t)=>{if(u(e)===m.fn.type)return;const{local:i}=g(I,m.check.type,o.id,t,e.toJSON());return i.some?i.value:void 0}),g(I,m.fn.type,o.id,0,{fn:"sum",text:"Numero selezionati",layout:{visibility:0},parameters:[o.items[0].id,o.items[1].id]}),o}if(e.type===m.cond.type){const{local:t}=g(I,e.type,f.id,-1,{...e.toJSON(),parameters:[]});if(!t.some)return;const o=t.value;return("items"in e&&Array.isArray(e.items)?e.items:[]).map(e=>{const{local:t}=g(I,e.type,o.id,-1,e.toJSON());if(!t.some)return;const{local:i}=h(I,o,{...o,parameters:[...o.parameters,t.value.id]});return i.some?i.value:void 0}),o}if([o.TYPE,i.TYPE,s.TYPE,r.TYPE,n.TYPE].includes(e.type)){const{local:t}=g(I,e.type,f.id,-1,e.toJSON());return t.some?t.value:void 0}return}});const y={type:8,data:null,id:l.root.id};return await b(y,c),"full"===c&&A(),f},Q[0]=l,Q[1]=b,Q[2]=I,Q[3]=A,Q[4]=C):C=Q[4];const $=C;let _;Q[5]!==l||Q[6]!==b||Q[7]!==I||Q[8]!==A?(_=async function(e){const t=void 0===e?"full":e,{local:o,server:i}=w(l,I);if(o.some)return await b(i,t),"full"===t&&A(),o.value},Q[5]=l,Q[6]=b,Q[7]=I,Q[8]=A,Q[9]=_):_=Q[9];const q=_;let R;Q[10]!==l||Q[11]!==b||Q[12]!==I||Q[13]!==A?(R=async function(e,t,o){const i=void 0===t?-1:t,s=void 0===o?"full":o,{local:r,server:n}=S(l,I,e,i);if(r.some)return await b(n,s),"full"===s&&A(),r.value},Q[10]=l,Q[11]=b,Q[12]=I,Q[13]=A,Q[14]=R):R=Q[14];const D=R;let F;Q[15]!==l||Q[16]!==b||Q[17]!==I||Q[18]!==A?(F=async function(e){const t=void 0===e?"full":e,{local:o,server:i}=x(l,I);if(o.some)return await b(i,t),"full"===t&&A(),o.value},Q[15]=l,Q[16]=b,Q[17]=I,Q[18]=A,Q[19]=F):F=Q[19];const M=F;let U;Q[20]!==b||Q[21]!==k||Q[22]!==I||Q[23]!==A?(U=async function(e,t,o,i,s){const r=void 0===s?"full":s,{local:n,server:l}=g(I,e,t||k.currentPage?.id||"0",o??-1,i);if(!n.some)return;const c=n.value;if(await b(l,r),z(c,e),e===m.selectTable.type){for(const e of[0,1]){const{local:t,server:o}=g(I,m.select.type,c.id,e,{...i,text:`sdf ${e+1}`,options:{required:!0,select:[]}});t.some&&(await b(o,"silent"),z(t.value,m.select.type))}const e={...c.toJSON(),items:c.items?.map((e,t)=>({...e.toJSON(),text:`Domanda ${t+1}`,name:y(`${c.name}_domanda_${t+1}`),options:{required:!0,select:[{text:"H1",score:0},{text:"H2",score:1},{text:"H3",score:2}]}}))},{local:t,server:o}=H(I,c,e);t.some&&await b(o,"silent");const s=t.some?t.value:c;if(!s)return c;await b({type:a.REPLACE,data:s.toJSON(),id:s.id,parent:s.parent()?.id,index:k.getItem(s.id)?.globalIndex},"silent")}else if(e===m.multipleSelect.type||e===m.autocomplete.type){const{local:e,server:t}=g(I,m.check.type,c.id,1,{...i,text:"Opzione 1",name:"opzione_1"});if(!e.some)return c;await b(t,"silent");const{local:o,server:s}=g(I,m.check.type,c.id,2,{...i,text:"Opzione 2",name:"opzione_2"});if(!o.some)return c;await b(s,"silent");const{server:r}=g(I,m.fn.type,c.id,0,{fn:p.fn.sum,text:"Numero selezionati",layout:{visibility:0},parameters:[e.value.id,o.value.id]});await b(r,"silent")}return"full"===r&&A(),c},Q[20]=b,Q[21]=k,Q[22]=I,Q[23]=A,Q[24]=U):U=Q[24];const V=U;let B;Q[25]!==b||Q[26]!==k||Q[27]!==I||Q[28]!==A?(B=async function(e,t,o,i,s){const r=void 0===s?"full":s,{local:n,server:a}=g(I,e,o||k.currentPage?.id||"0",i??-1,t);if(n.some)return await b(a,r),"full"===r&&A(),n.value},Q[25]=b,Q[26]=k,Q[27]=I,Q[28]=A,Q[29]=B):B=Q[29];const G=B;let K;Q[30]!==b||Q[31]!==I||Q[32]!==A?(K=async function(e,t,o){const i=void 0===o?"full":o,s=c({...e.toJSON()},"items",t),{local:r,server:n}=h(I,e,s);if(r.some)return await b(n,i),"full"===i&&A(),r.value},Q[30]=b,Q[31]=I,Q[32]=A,Q[33]=K):K=Q[33];const W=K;let X;Q[34]!==b||Q[35]!==I||Q[36]!==A?(X=async function(e,t,o,i){const s=void 0===i?"full":i,{local:r}=N(I,e,t,o);if(!r.some)return;const n=(e,t)=>{e.items?.length&&e.items.forEach(e=>{const{local:o}=N(I,e,t,-1);o.some&&n(e,o.value)})};n(e,r.value);const l=t.toJSON(),c={type:a.REPLACE,data:l,id:t.id,parent:t.parent()?.id,index:-1};await b(c,s),"full"===s&&A()},Q[34]=b,Q[35]=I,Q[36]=A,Q[37]=X):X=Q[37];const Z=X;let ee;Q[38]!==b||Q[39]!==I||Q[40]!==A?(ee=async function(e,t){const o=void 0===t?"full":t,i=e.parent(),s=u(i)===m.cond.type?i:e,{local:r,server:n}=O(I,s);if(r.some)return await b(n,o),"full"===o&&A(),r.value},Q[38]=b,Q[39]=I,Q[40]=A,Q[41]=ee):ee=Q[41];const te=ee;let oe;Q[42]!==b||Q[43]!==I||Q[44]!==A?(oe=async function(e,t,o,i){const s=void 0===i?"full":i,r=t?c({...e.toJSON()},t,o):{...e.toJSON(),...o||{}},{local:n,server:a}=h(I,e,r);if(n.some)return await b(a,s),"full"===s&&A(),n.value},Q[42]=b,Q[43]=I,Q[44]=A,Q[45]=oe):oe=Q[45];const ie=oe;let se;Q[46]!==b||Q[47]!==I||Q[48]!==A?(se=async function(e,t,o){const i=void 0===o?"full":o,{local:s,server:r}=H(I,e,t);if(s.some)return await b(r,i),"full"===i&&A(),s.value},Q[46]=b,Q[47]=I,Q[48]=A,Q[49]=se):se=Q[49];const re=se;let ne;Q[50]!==b||Q[51]!==I||Q[52]!==A?(ne=async function(e,t,o,i){const s=void 0===i?"full":i,{local:r,server:n}=P(I,e,t,o);if(r.some)return await b(n,s),"full"===s&&A(),r.value},Q[50]=b,Q[51]=I,Q[52]=A,Q[53]=ne):ne=Q[53];const ae=ne;let le;Q[54]!==V||Q[55]!==Y||Q[56]!==te||Q[57]!==I||Q[58]!==A?(le=async function(e,t){const o=e.parent(),i=(u(o)!==m.cond.type?o:o.parent()).items.indexOf(e);if(u(o)===m.cond.type)return void alert("Per eseguire questa operazione elimina prima la condizione presente.");if(t===u(e))return console.warn("New type is the same as the current type."),e;if(t===m.section.type&&u(e)===m.page.type){if(e.items.map(T).includes(m.section.type))return console.error("Cannot convert page to section because it contains sections."),e;const t=I(e=>e.add(o.id,d(m.page.type),-1));if(!t)return;return I(()=>t.update({text:e.text,description:e.description})),P(I,e,0,t.id),void I(()=>t.items[0].update({layout:{style:f.layout.style.section}}))}if(t===m.page.type&&u(e)===m.section.type){h(I,e,{layout:{style:o.layout?.style}});const{local:t}=P(I,e,o.parent().items.length,o.parent().id);if(!t.some)return;return t.value}const s=await V(t,o.id,i,{name:e.name,text:e.text,description:e.description},"silent");return await te(e,"silent"),A(),await Y.createHistorySnapshot(),s},Q[54]=V,Q[55]=Y,Q[56]=te,Q[57]=I,Q[58]=A,Q[59]=le):le=Q[59];const ce=le;let ue,me,pe,de;return Q[60]!==j?(ue=()=>j.sources,Q[60]=j,Q[61]=ue):ue=Q[61],Q[62]!==Y.currentSnapshotTime?(me=()=>Y.currentSnapshotTime,Q[62]=Y.currentSnapshotTime,Q[63]=me):me=Q[63],Q[64]!==l?(pe=()=>E(l),Q[64]=l,Q[65]=pe):pe=Q[65],Q[66]!==q||Q[67]!==M||Q[68]!==D||Q[69]!==G||Q[70]!==V||Q[71]!==ce||Q[72]!==Z||Q[73]!==Y.clearHistory||Q[74]!==Y.createHistorySnapshot||Q[75]!==Y.getHistoryList||Q[76]!==Y.restoreHistorySnapshot||Q[77]!==ae||Q[78]!==W||Q[79]!==te||Q[80]!==re||Q[81]!==$||Q[82]!==A||Q[83]!==ue||Q[84]!==me||Q[85]!==pe||Q[86]!==ie?(de={getSurveySources:ue,getCurrentSnapshot:me,getLatestId:pe,refreshSurveyInstance:A,getItemValue:J,schemaUpdate:$,addFolder:q,addPage:D,addLandingPage:M,addQuestion:V,addPremadeQuestion:G,patchQuestion:W,removeItem:te,updateItem:ie,replaceItem:re,duplicateItem:Z,moveItem:ae,changeQuestionType:ce,createHistorySnapshot:Y.createHistorySnapshot,restoreHistorySnapshot:Y.restoreHistorySnapshot,getHistoryList:Y.getHistoryList,clearHistory:Y.clearHistory},Q[66]=q,Q[67]=M,Q[68]=D,Q[69]=G,Q[70]=V,Q[71]=ce,Q[72]=Z,Q[73]=Y.clearHistory,Q[74]=Y.createHistorySnapshot,Q[75]=Y.getHistoryList,Q[76]=Y.restoreHistorySnapshot,Q[77]=ae,Q[78]=W,Q[79]=te,Q[80]=re,Q[81]=$,Q[82]=A,Q[83]=ue,Q[84]=me,Q[85]=pe,Q[86]=ie,Q[87]=de):de=Q[87],de}function T(e){return u(e)}export{I as useEditorState};
@@ -1 +1 @@
1
- import{c as t}from"react/compiler-runtime";import{get as e,set as n,isEqual as o}from"lodash-es";import r from"react";const c=t=>{const e=t=>{try{const n=t.parent();return n?e(n):t}catch{return t}};let n=0;const o=e(t),r=t=>{const e=parseInt(t.id,10);!isNaN(e)&&e>n&&(n=e),t.items.forEach(r)};return o&&r(o),n};function l(c){const l=t(11);let a;l[0]!==c?(a=c.toJSON(),l[0]=c,l[1]=a):a=l[1];const[u,f]=r.useState(a);let d;l[2]!==u?(d=t=>e(u,t,void 0),l[2]=u,l[3]=d):d=l[3];const p=d;let y;l[4]===Symbol.for("react.memo_cache_sentinel")?(y=(t,o,r)=>{const c=void 0===r?-1:r;f(r=>{const l=e(r,t,[]);let s;return s=-1===c||c>=l.length?l.concat(o):[...l.slice(0,c),o,...l.slice(c)],n({...r},t,s)})},l[4]=y):y=l[4];const h=y;let _;l[5]===Symbol.for("react.memo_cache_sentinel")?(_=(t,r)=>{f(c=>n({...c},t,e(c,t,[]).filter(t=>!o(t,r))))},l[5]=_):_=l[5];const I=_;let v;l[6]===Symbol.for("react.memo_cache_sentinel")?(v=(t,e)=>{const o=m;f(r=>t?n({...r},t,e):o(e)?{...r,...e}:r)},l[6]=v):v=l[6];const S=v;let b;l[7]===Symbol.for("react.memo_cache_sentinel")?(b=(t,o,r)=>{f(c=>{const l=e(c,t).filter(i);if(o<0||o>=l.length||r<0||r>l.length)return console.error("Invalid indices:",{idx:o,newIdx:r}),c;const m=l.filter((t,e)=>e!==o),a=[...m.slice(0,r),l[o],...m.slice(r)];return n({...c},t,e(c,t).filter(s).concat(a))})},l[7]=b):b=l[7];const g=b;let x;return l[8]!==p||l[9]!==u?(x={value:u,getQuestionValue:p,addItem:h,removeItem:I,updateItem:S,moveItem:g},l[8]=p,l[9]=u,l[10]=x):x=l[10],x}function s(t){return"fn"===t.type||"cond"===t.type}function i(t){return"fn"!==t.type&&"cond"!==t.type}function m(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}export{c as calculateLatestId,l as useQuestionState};
1
+ import{c as t}from"react/compiler-runtime";import{get as e,set as o,isEqual as n}from"lodash-es";import r from"react";const c=t=>{let e=0;const o=[];for(t.root&&o.push(t.root);o.length>0;){const t=o.pop();if(t){const n=parseInt(t.id,10);!isNaN(n)&&n>e&&(e=n),t.items&&t.items.forEach(t=>o.push(t))}}return e};function l(c){const l=t(11);let a;l[0]!==c?(a=c.toJSON(),l[0]=c,l[1]=a):a=l[1];const[f,u]=r.useState(a);let p;l[2]!==f?(p=t=>e(f,t,void 0),l[2]=f,l[3]=p):p=l[3];const d=p;let h;l[4]===Symbol.for("react.memo_cache_sentinel")?(h=(t,n,r)=>{const c=void 0===r?-1:r;u(r=>{const l=e(r,t,[]);let s;return s=-1===c||c>=l.length?l.concat(n):[...l.slice(0,c),n,...l.slice(c)],o({...r},t,s)})},l[4]=h):h=l[4];const y=h;let _;l[5]===Symbol.for("react.memo_cache_sentinel")?(_=(t,r)=>{u(c=>o({...c},t,e(c,t,[]).filter(t=>!n(t,r))))},l[5]=_):_=l[5];const I=_;let v;l[6]===Symbol.for("react.memo_cache_sentinel")?(v=(t,e)=>{const n=m;u(r=>t?o({...r},t,e):n(e)?{...r,...e}:r)},l[6]=v):v=l[6];const S=v;let b;l[7]===Symbol.for("react.memo_cache_sentinel")?(b=(t,n,r)=>{u(c=>{const l=e(c,t).filter(i);if(n<0||n>=l.length||r<0||r>l.length)return console.error("Invalid indices:",{idx:n,newIdx:r}),c;const m=l.filter((t,e)=>e!==n),a=[...m.slice(0,r),l[n],...m.slice(r)];return o({...c},t,e(c,t).filter(s).concat(a))})},l[7]=b):b=l[7];const g=b;let x;return l[8]!==d||l[9]!==f?(x={value:f,getQuestionValue:d,addItem:y,removeItem:I,updateItem:S,moveItem:g},l[8]=d,l[9]=f,l[10]=x):x=l[10],x}function s(t){return"fn"===t.type||"cond"===t.type}function i(t){return"fn"!==t.type&&"cond"!==t.type}function m(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}export{c as calculateLatestId,l as useQuestionState};
@@ -1 +1 @@
1
- import{c as i}from"react/compiler-runtime";import{useNavigation as m}from"../hooks/common/NavigationHook.js";import"@famalabs/survey";import"lodash-es";import"../utils/config-map.js";import"../utils/locale.js";import"acorn";import"idb";import"react";import{useCompilerInit as r}from"../hooks/compiler/InitCompiler.js";import{useFormStateContext as t}from"../providers/common/FormStateProvider.js";import{jsx as o}from"react/jsx-runtime";import{PresenterStateProvider as e}from"../providers/presenter/PresenterStateProvider.js";import a from"@mui/material/Box";import l from"@mui/material/Stack";import"@mui/material/Container";import"@mui/material/CircularProgress";import"@mui/material/Grid";import"@mui/material/IconButton";import"@mui/material/LinearProgress";import"@mui/material/Tooltip";import"lucide-react";import"@mui/material/styles";import"@mui/material/Button";import"@mui/material/Typography";import"../components/common/DrawerCommon.js";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../components/common/Skeletons.js";import"isomorphic-dompurify";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";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/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import"@mui/material/Divider";import"../validators/compiler/CompilerValidators.js";import"@mui/material/Collapse";import"@mui/material/List";import"@mui/material/ListItemButton";import"@mui/material/ListItemIcon";import"@mui/material/ListItemText";import{FolderPresenterForm as p}from"./containers/FolderPresenter.js";function n(n){const s=i(15),{submissionInfo:c,loading:d,configuration:f}=n;let h;s[0]!==c?(h=void 0===c?{}:c,s[0]=c,s[1]=h):h=s[1];const b=h,{formInstance:C,globalConfig:j}=t(),g=b?.answers||b;let v;s[2]!==f.loadAnswerMethod||s[3]!==d||s[4]!==g?(v={initAnswers:g,loadAnswerMethod:f.loadAnswerMethod,loading:d},s[2]=f.loadAnswerMethod,s[3]=d,s[4]=g,s[5]=v):v=s[5],r(v);const T=m(C,!1),w=j.locale||"it";let I,S,y,L;return s[6]!==T||s[7]!==w?(I={navigationState:T,locale:w},s[6]=T,s[7]=w,s[8]=I):I=s[8],s[9]===Symbol.for("react.memo_cache_sentinel")?(S={width:"100%"},s[9]=S):S=s[9],s[10]!==d?(y=o(a,{sx:S,children:o(l,{children:o(a,{component:"form",onSubmit:u,children:o(p,{loading:d})})})}),s[10]=d,s[11]=y):y=s[11],s[12]!==I||s[13]!==y?(L=o(e,{value:I,children:y}),s[12]=I,s[13]=y,s[14]=L):L=s[14],L}function u(i){return i.preventDefault()}export{n as default};
1
+ import{c as i}from"react/compiler-runtime";import{useNavigation as m}from"../hooks/common/NavigationHook.js";import"@famalabs/survey";import"lodash-es";import"../utils/config-map.js";import"../utils/locale.js";import"acorn";import"idb";import"react";import{useCompilerInit as r}from"../hooks/compiler/InitCompiler.js";import{useFormStateContext as t}from"../providers/common/FormStateProvider.js";import{jsx as o}from"react/jsx-runtime";import{PresenterStateProvider as e}from"../providers/presenter/PresenterStateProvider.js";import a from"@mui/material/Box";import l from"@mui/material/Stack";import"@mui/material/Container";import"@mui/material/CircularProgress";import"@mui/material/Grid";import"@mui/material/IconButton";import"@mui/material/LinearProgress";import"@mui/material/styles";import"@mui/material/Tooltip";import"lucide-react";import"@mui/material/Button";import"@mui/material/Typography";import"../components/common/DrawerCommon.js";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../components/common/Skeletons.js";import"isomorphic-dompurify";import"@mui/material/SvgIcon";import"@mui/material/Chip";import"@mui/material/FormLabel";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/useMediaQuery";import"react-dropzone";import"@mui/material/Alert";import"@mui/material/AlertTitle";import"@mui/material/Paper";import"@mui/material/Divider";import"../validators/compiler/CompilerValidators.js";import"@mui/material/Collapse";import"@mui/material/List";import"@mui/material/ListItemButton";import"@mui/material/ListItemIcon";import"@mui/material/ListItemText";import{FolderPresenterForm as p}from"./containers/FolderPresenter.js";function n(n){const s=i(15),{submissionInfo:c,loading:d,configuration:f}=n;let h;s[0]!==c?(h=void 0===c?{}:c,s[0]=c,s[1]=h):h=s[1];const b=h,{formInstance:C,globalConfig:j}=t(),g=b?.answers||b;let v;s[2]!==f.loadAnswerMethod||s[3]!==d||s[4]!==g?(v={initAnswers:g,loadAnswerMethod:f.loadAnswerMethod,loading:d},s[2]=f.loadAnswerMethod,s[3]=d,s[4]=g,s[5]=v):v=s[5],r(v);const T=m(C,!1),w=j.locale||"it";let I,S,y,L;return s[6]!==T||s[7]!==w?(I={navigationState:T,locale:w},s[6]=T,s[7]=w,s[8]=I):I=s[8],s[9]===Symbol.for("react.memo_cache_sentinel")?(S={width:"100%"},s[9]=S):S=s[9],s[10]!==d?(y=o(a,{sx:S,children:o(l,{children:o(a,{component:"form",onSubmit:u,children:o(p,{loading:d})})})}),s[10]=d,s[11]=y):y=s[11],s[12]!==I||s[13]!==y?(L=o(e,{value:I,children:y}),s[12]=I,s[13]=y,s[14]=L):L=s[14],L}function u(i){return i.preventDefault()}export{n as default};
@@ -1 +1 @@
1
- import{c as t}from"react/compiler-runtime";import{Question as i,QuestionFile as m,QuestionSelect as r,QuestionDate as e}from"@famalabs/survey";import o from"@mui/material/Grid";import a from"dayjs";import{QuestionHeaderCommon as l}from"../../components/forms/QuestionCommon.js";import"@famalabs/web-ui";import"@mui/material/IconButton";import"@mui/material/Stack";import"lucide-react";import"react-hook-form";import{getMapType as n,Mapper as p}from"../../utils/config-map.js";import"../../utils/locale.js";import"acorn";import{jsx as u,jsxs as s}from"react/jsx-runtime";import"@mui/material/Button";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 c from"@mui/material/Typography";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"react";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/Box";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"../../components/common/DrawerCommon.js";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../components/common/Skeletons.js";import"isomorphic-dompurify";import"@mui/material/SvgIcon";import"@mui/material/Alert";import"@mui/material/AlertTitle";import{SectionPresenterForm as f}from"../containers/SectionPresenter.js";const d=y=>{const b=t(18),{index:C,item:h}=y,j=h instanceof i?h.getAnswer()?.answer:null;if(n(h)===p.section.type){let t;return b[0]!==C||b[1]!==h?(t=u(f,{index:C,question:h}),b[0]=C,b[1]=h,b[2]=t):t=b[2],t}if(n(h)===p.cond.type||n(h)===p.alert.type){if(0===h.items?.length)return null;if(!h.compute())return null;let t;if(b[3]!==C||b[4]!==h.items){let i;b[6]!==C?(i=(t,i)=>u(d,{item:t,index:C},`${t.id}-${C}-${i}`),b[6]=C,b[7]=i):i=b[7],t=h.items.map(i),b[3]=C,b[4]=h.items,b[5]=t}else t=b[5];return t}if(h instanceof i&&(void 0===j||Array.isArray(h?.answer)&&!j?.length||0===h.layout?.visibility))return null;if(n(h)===p.switch.type||h instanceof m)return null;let x;b[8]!==C||b[9]!==h?(x=u(l,{index:C,question:h,required:!1}),b[8]=C,b[9]=h,b[10]=x):x=b[10];const w=h;let T,g,A;return b[11]!==w?(T=(t=>{const m=t instanceof i?t.getAnswer()?.answer:null;return t instanceof r?null==m?"":t.options?.select?.[m]?.text:t instanceof i&&"list"===t.type||t instanceof i&&n(t)===p.multipleSelect.type||n(t)===p.autocomplete.type?m?.join(", "):t instanceof e&&n(t)===p.date.type?null==m?"":a(m).format("DD/MM/YYYY"):m})(w),b[11]=w,b[12]=T):T=b[12],b[13]!==T?(g=u(o,{size:12,children:u(c,{children:T})}),b[13]=T,b[14]=g):g=b[14],b[15]!==x||b[16]!==g?(A=s(o,{size:12,container:!0,children:[x,g]}),b[15]=x,b[16]=g,b[17]=A):A=b[17],A};export{d as QuestionPresenterForm};
1
+ import{c as t}from"react/compiler-runtime";import{Question as i,QuestionFile as r,QuestionSelect as m,QuestionDate as e}from"@famalabs/survey";import o from"@mui/material/Grid";import a from"@mui/material/Typography";import n from"dayjs";import{QuestionHeaderCommon as l}from"../../components/forms/QuestionCommon.js";import"@famalabs/web-ui";import"@mui/material/IconButton";import"@mui/material/Stack";import"lucide-react";import"react-hook-form";import{getMapType as p,Mapper as u}from"../../utils/config-map.js";import"../../utils/locale.js";import"acorn";import{jsx as s,jsxs as c}from"react/jsx-runtime";import"@mui/material/Button";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"react";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/Box";import"@mui/material/styles";import"@mui/material/useMediaQuery";import"react-dropzone";import"../../components/common/DrawerCommon.js";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"../../components/common/Skeletons.js";import"isomorphic-dompurify";import"@mui/material/SvgIcon";import"@mui/material/Alert";import"@mui/material/AlertTitle";import{SectionPresenterForm as f}from"../containers/SectionPresenter.js";const d=y=>{const b=t(18),{index:h,item:C}=y,j=C instanceof i?C.getAnswer()?.answer:null;if(p(C)===u.section.type){let t;return b[0]!==h||b[1]!==C?(t=s(f,{index:h,question:C}),b[0]=h,b[1]=C,b[2]=t):t=b[2],t}if(p(C)===u.cond.type||p(C)===u.alert.type){if(0===C.items?.length)return null;try{if(!C.compute())return null}catch(x){const t=x;return console.error("Error computing condition",t),null}let t;if(b[3]!==h||b[4]!==C.items){let i;b[6]!==h?(i=(t,i)=>s(d,{item:t,index:h},`${t.id}-${h}-${i}`),b[6]=h,b[7]=i):i=b[7],t=C.items.map(i),b[3]=h,b[4]=C.items,b[5]=t}else t=b[5];return t}if(C instanceof i&&(void 0===j||Array.isArray(C?.answer)&&!j?.length||0===C.layout?.visibility))return null;if(p(C)===u.switch.type||C instanceof r)return null;let x;b[8]!==h||b[9]!==C?(x=s(l,{index:h,question:C,required:!1}),b[8]=h,b[9]=C,b[10]=x):x=b[10];const w=C;let T,g,A;return b[11]!==w?(T=(t=>{const r=t instanceof i?t.getAnswer()?.answer:null;return t instanceof m?null==r?"":t.options?.select?.[r]?.text:t instanceof i&&"list"===t.type||t instanceof i&&p(t)===u.multipleSelect.type||p(t)===u.autocomplete.type?r?.join(", "):t instanceof e&&p(t)===u.date.type?null==r?"":n(r).format("DD/MM/YYYY"):r})(w),b[11]=w,b[12]=T):T=b[12],b[13]!==T?(g=s(o,{size:12,children:s(a,{children:T})}),b[13]=T,b[14]=g):g=b[14],b[15]!==x||b[16]!==g?(A=c(o,{size:12,container:!0,children:[x,g]}),b[15]=x,b[16]=g,b[17]=A):A=b[17],A};export{d as QuestionPresenterForm};
@@ -1 +1 @@
1
- import{c as t}from"react/compiler-runtime";import e from"react";import{jsx as i,jsxs as o}from"react/jsx-runtime";import{usePresenterStateContext as r}from"../../providers/presenter/PresenterStateProvider.js";import{ItemConditional as n}from"@famalabs/survey";import m from"@mui/material/Box";import a from"@mui/material/Stack";import l from"@mui/material/Typography";import s from"isomorphic-dompurify";import{CompilerPageSkeleton as c}from"../../components/common/Skeletons.js";import{getMapType as p,Mapper as u,ItemMap as d}from"../../utils/config-map.js";import"../../utils/locale.js";import"acorn";import{QuestionPresenterForm as f}from"../common/QuestionPresenter.js";const y=y=>{const h=t(16),{currentPage:x,loading:g}=y,{navigationState:S}=r();if(x instanceof n&&!x.result){let t;return h[0]===Symbol.for("react.memo_cache_sentinel")?(t=i(l,{children:"Non puoi accedere a questa pagina"}),h[0]=t):t=h[0],t}if(g)return c;let b,v,j,_,P,$;return h[1]===Symbol.for("react.memo_cache_sentinel")?(b={sm:20,md:24},h[1]=b):b=h[1],h[2]!==x.text?(v=i(l,{variant:"h4",color:"text.primary",fontSize:b,children:x.text}),h[2]=x.text,h[3]=v):v=h[3],h[4]!==x.description?(j=x.description&&x.description?.length>0&&i(l,{component:"legend",sx:{fontSize:14},children:i("span",{dangerouslySetInnerHTML:{__html:s.sanitize(x.description)}})}),h[4]=x.description,h[5]=j):j=h[5],h[6]!==j?(_=i(e.Suspense,{fallback:null,children:j}),h[6]=j,h[7]=_):_=h[7],h[8]!==x.items||h[9]!==x.layout?.style||h[10]!==S?(P=x?.items?.map(t=>{const e=S.getItem(t.id)?.globalIndex.toString()||"";return p(t)!==u.cond.type&&p(t)!==u.alert.type||t.compute()?t.layout&&0===t?.layout?.visibility?null:x.layout?.style===d.layout.style?.card?i(m,{component:"div","aria-label":`question-compiler-${t?.text}`,id:`Question-${t.id}`,sx:t instanceof n&&!t.compute()?{mt:"0 !important"}:{},children:i(f,{index:e,item:t})},t.id):i(m,{"aria-label":`question-compiler-${t?.text}`,id:`Question-${t.id}`,children:i(f,{index:e,item:t})},t.id):(t.items,null)}),h[8]=x.items,h[9]=x.layout?.style,h[10]=S,h[11]=P):P=h[11],h[12]!==v||h[13]!==_||h[14]!==P?($=o(a,{spacing:2,p:2,children:[v,_,P]}),h[12]=v,h[13]=_,h[14]=P,h[15]=$):$=h[15],$};export{y as PagePresenterForm};
1
+ import{c as t}from"react/compiler-runtime";import e from"react";import{jsx as o,jsxs as i}from"react/jsx-runtime";import{usePresenterStateContext as r}from"../../providers/presenter/PresenterStateProvider.js";import{ItemConditional as n}from"@famalabs/survey";import m from"@mui/material/Box";import a from"@mui/material/Stack";import l from"@mui/material/Typography";import s from"isomorphic-dompurify";import{CompilerPageSkeleton as c}from"../../components/common/Skeletons.js";import{getMapType as p,Mapper as u,ItemMap as d}from"../../utils/config-map.js";import"../../utils/locale.js";import"acorn";import{QuestionPresenterForm as f}from"../common/QuestionPresenter.js";const y=y=>{const h=t(16),{currentPage:g,loading:x}=y,{navigationState:S}=r();if(g instanceof n&&!g.result){let t;return h[0]===Symbol.for("react.memo_cache_sentinel")?(t=o(l,{children:"Non puoi accedere a questa pagina"}),h[0]=t):t=h[0],t}if(x)return c;let b,v,j,_,q,P;return h[1]===Symbol.for("react.memo_cache_sentinel")?(b={sm:20,md:24},h[1]=b):b=h[1],h[2]!==g.text?(v=o(l,{variant:"h4",color:"text.primary",fontSize:b,children:g.text}),h[2]=g.text,h[3]=v):v=h[3],h[4]!==g.description?(j=g.description&&g.description?.length>0&&o(l,{component:"legend",sx:{fontSize:14},children:o("span",{dangerouslySetInnerHTML:{__html:s.sanitize(g.description)}})}),h[4]=g.description,h[5]=j):j=h[5],h[6]!==j?(_=o(e.Suspense,{fallback:null,children:j}),h[6]=j,h[7]=_):_=h[7],h[8]!==g.items||h[9]!==g.layout?.style||h[10]!==S?(q=g?.items?.map(t=>{const e=S.getItem(t.id)?.globalIndex.toString()||"";let i;try{i=Boolean(t.compute())}catch(t){const e=t;console.error("Error computing question condition",e),i=!1}return p(t)!==u.cond.type&&p(t)!==u.alert.type||i?t.layout&&0===t?.layout?.visibility?null:g.layout?.style===d.layout.style?.card?o(m,{component:"div","aria-label":`question-compiler-${t?.text}`,id:`Question-${t.id}`,sx:t instanceof n&&!i?{mt:"0 !important"}:{},children:o(f,{index:e,item:t})},t.id):o(m,{"aria-label":`question-compiler-${t?.text}`,id:`Question-${t.id}`,children:o(f,{index:e,item:t})},t.id):(t.items,null)}),h[8]=g.items,h[9]=g.layout?.style,h[10]=S,h[11]=q):q=h[11],h[12]!==v||h[13]!==_||h[14]!==q?(P=i(a,{spacing:2,p:2,children:[v,_,q]}),h[12]=v,h[13]=_,h[14]=q,h[15]=P):P=h[15],P};export{y as PagePresenterForm};
@@ -53,6 +53,7 @@ interface FormGlobalConfiguration {
53
53
  pagination?: 'single' | 'slide' | 'pages' | 'folders';
54
54
  questionIndex?: 'visible' | 'hidden' | 'user';
55
55
  reseveHeaderSpace?: boolean;
56
+ leftSidebarOffset?: number;
56
57
  previewMode?: boolean;
57
58
  disableAutoScroll?: boolean;
58
59
  readonlyMode?: boolean;
@@ -1 +1 @@
1
- const e=e=>"object"==typeof e&&null!=e&&!Array.isArray(e);function o(n,t){if(!t)return{...n};const r={...n};for(const i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;const a=t[i];if(void 0===a)continue;const c=n[i];e(c)&&e(a)?r[i]=o(c,a):r[i]=a}return r}const n={fieldSize:"medium",pagination:"folders",questionIndex:"visible",reseveHeaderSpace:!0,previewMode:!1,disableAutoScroll:!0,readonlyMode:!1,reloadOnFormChange:!1,mandatoryExportName:!1,enableDynamicText:!0,sourceConfig:{staticSources:[]},locale:"it"};export{n as defaultGlobalConfig,o as mergeWithDefaults};
1
+ const e=e=>"object"==typeof e&&null!=e&&!Array.isArray(e);function o(t,n){if(!n)return{...t};const r={...t};for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const a=n[i];if(void 0===a)continue;const c=t[i];e(c)&&e(a)?r[i]=o(c,a):r[i]=a}return r}const t={fieldSize:"medium",pagination:"folders",questionIndex:"visible",reseveHeaderSpace:!0,leftSidebarOffset:0,previewMode:!1,disableAutoScroll:!0,readonlyMode:!1,reloadOnFormChange:!1,mandatoryExportName:!1,enableDynamicText:!0,sourceConfig:{staticSources:[]},locale:"it"};export{t as defaultGlobalConfig,o as mergeWithDefaults};
@@ -1,5 +1,5 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { Item, ItemSchema } from '@famalabs/survey';
2
+ import { ItemSchema, Item } from '@famalabs/survey';
3
3
 
4
4
  declare const QuestionTextMap: {
5
5
  readonly id: "";
@@ -1 +1 @@
1
- import{QuestionText as e,QuestionNumber as t,QuestionSelect as l,QuestionCheck as o,QuestionDate as i,ItemFunction as y,ItemConditional as p,QuestionFile as s,Item as a}from"@famalabs/survey";import{DatabaseZap as n,Sigma as r,Calculator as u,TriangleAlert as d,Network as c,Clock as m,LetterText as f,CaseSensitive as g,Star as x,GitCommitHorizontal as h,Binary as z,CircleChevronDown as b,CircleDot as w,ToggleRight as T,CopyCheck as q,Calendar as P,CloudUpload as E,Presentation as Y,FileText as S,Folder as k,SquareChartGantt as v,TableProperties as A,SquareChevronDown as L}from"lucide-react";import{ThumbsOutlineIcon as U,ThumbsIcon as M,HearthOutlineIcon as j,HearthIcon as D,StarOutlineIcon as I,StarIcon as B}from"../components/common/QuestionIcons.js";import{getLocaleItemTypeId as F}from"./locale.js";import{jsx as $}from"react/jsx-runtime";const C={id:"",name:"",text:"",type:e.TYPE,types:{text:{type:"text",icon:$(g,{size:20}),defaults:{min:null,max:null}},textArea:{type:"textArea",icon:$(f,{size:20}),defaults:{min:null,max:null}},time:{type:"time",icon:$(m,{size:20}),defaults:{format:"/^(?:[01]d|2[0-3]):[0-5]d:[0-5]d$/"}}},options:{},layout:{style:{default:"default",area:"area",time:"time"}}},G={id:"",name:"",text:"",type:t.TYPE,types:{number:{type:"number",icon:$(z,{size:20}),defaults:{min:0,max:null,step:1}},range:{type:"range",icon:$(h,{size:20}),defaults:{min:0,max:100,step:1}},rating:{type:"rating",icon:$(x,{size:20}),defaults:{min:0,max:10,step:1}}},options:{unit:{default:void 0,undefined:void 0,kg:"kg",g:"g",m:"m",cm:"cm",mm:"mm",l:"l",cl:"cl",ml:"ml",dollar:"$",euro:"€"}},layout:{style:{default:"default",range:"range",rating:"rating"},icon:{star:{type:"star",element:{selected:$(B,{}),unselected:$(I,{})}},heart:{type:"heart",element:{selected:$(D,{}),unselected:$(j,{})}},thumb:{type:"thumb",element:{selected:$(M,{}),unselected:$(U,{})}}}}},O={id:"",name:"",text:"",type:l.TYPE,types:{select:{type:"select",icon:$(w,{size:20})},dropdown:{type:"dropdown",icon:$(b,{size:20})}},options:{multiSelect:{default:!1},activate:{default:e=>!(e instanceof Array&&e.length>0)}},layout:{style:{default:"radio",radio:"radio",dropdown:"dropdown"}}},Q={id:"",name:"",text:"",type:o.TYPE,types:{check:{type:"check",icon:$(q,{size:20})},switch:{type:"switch",icon:$(T,{size:20})}},options:{inverted:{default:!1,false:!1,true:!0},toggle:{default:!1,false:!1,true:!0}},layout:{style:{default:"check",check:"check",switch:"switch"}}},H={id:"",name:"",text:"",type:i.TYPE,types:{date:{type:"date",icon:$(P,{size:20}),defaults:{min:null,max:null}}}},J={id:"",name:"",text:"",type:"list",types:{sourceList:{type:"sourceList",icon:$(n,{size:20}),defaults:{source:null,min:null,max:null}}},options:{}},K={id:"",name:"",text:"",type:y.TYPE,types:{fn:{type:"fn",icon:$(u,{size:20})},score:{type:"score",icon:$(r,{size:20})}},parameters:[],fn:{sum:"Sum",mul:"Multiply",diff:"Diff",div:"Divide",avg:"Average",age:"Age",diffDays:"Days",max:"Max",min:"Min",pow:"Pow",sign:"Sign",log:"Log",abs:"Abs",BMI:"BMI"}},N={id:"",name:"",text:"",type:p.TYPE,types:{cond:{type:"cond",icon:$(c,{size:20})},alert:{type:"alert",icon:$(d,{size:20})}},expression:{operator:{default:"",sum:"+",diff:"-",mult:"*",div:"/",gt:">",lt:"<",gte:">=",lte:"<=",eq:"==",neq:"!=",and:"&&",or:"||"}}},R={id:"",name:"",text:"",type:s.TYPE,options:{acceptedFiles:[],maxSize:1e4},layout:{}},V={id:"",name:"",text:"",type:a.TYPE,types:{root:{type:"root",icon:$(S,{size:20})},multipleSelect:{type:"multipleSelect",icon:$(q,{size:20})},autocomplete:{type:"autocomplete",icon:$(L,{size:20})},selectTable:{type:"selectTable",icon:$(A,{size:20})},section:{type:"section",icon:$(v,{size:20}),hint:"Gruppo di domande"},folder:{type:"folder",icon:$(k,{size:20})},page:{type:"page",icon:$(S,{size:20})},landing:{type:"landing",icon:$(Y,{size:20})},fileUpload:{type:"fileUpload",icon:$(E,{size:20})}},options:{progress:{default:"default",bar:"bar",percentage:"percentage",none:"none"}},layout:{style:{default:"page",folder:"folder",page:"page",card:"card",multipleSelect:"multicheck",autocomplete:"autocomplete",section:"section",inline:"inline",table:"table",wizard:"wizard"},hide:{default:!1,false:!1,true:!0}}},W={text:C.types.text,textArea:C.types.textArea,number:G.types.number,range:G.types.range,rating:G.types.rating,select:O.types.select,multipleSelect:V.types.multipleSelect,autocomplete:V.types.autocomplete,dropdown:O.types.dropdown,check:Q.types.check,switch:Q.types.switch,date:H.types.date,time:C.types.time,fn:K.types.fn,score:K.types.score,cond:N.types.cond,selectTable:V.types.selectTable,sourceList:J.types.sourceList,fileUpload:V.types.fileUpload,section:V.types.section,landing:V.types.landing,root:V.types.root,page:V.types.page,folder:V.types.folder,alert:N.types.alert},X=e=>{if(!e)return"root";if(e.type===C.type){if(e.layout){if("time"===e.layout.style)return W.time.type;if("area"===e.layout.style)return W.textArea.type}return W.text.type}if(e.type===G.type)return e.layout&&e.layout.style===G.layout.style.range?W.range.type:e.layout&&e.layout.style===G.layout.style.rating?W.rating.type:W.number.type;if(e.type===O.type)return e.layout&&e.layout.style===O.layout.style.dropdown?W.dropdown.type:W.select.type;if(e.type===Q.type)return e.layout&&e.layout.style===Q.layout.style.switch?W.switch.type:W.check.type;if(e.type===H.type)return W.date.type;if(e.type===J.type)return W.sourceList.type;if(e.type===K.type)return"fn"in e&&e.fn?W.fn.type:"source"in e&&e.source?W.score.type:W.fn.type;if(e.type===R.type)return W.fileUpload.type;if(e.type===N.type)return e.items&&!e.items.length?W.alert.type:W.cond.type;if(e.type===a.TYPE&&e.layout&&("page"===e.layout.style||"card"===e.layout.style))return W.page.type;if(e.type===a.TYPE&&e.layout&&("folder"===e.layout.style||"undefined"===e.layout.style))return W.folder.type;if(e.type===a.TYPE&&e.layout&&"landing"===e.layout.style)return W.landing.type;if(e.type===a.TYPE&&e.items){const t=new Set(e.items?.map(e=>e.type));if(void 0!==e.layout&&e.layout){if(e.layout&&e.layout.style===V.layout.style.table)return 1===t.size&&t.has(O.type),W.selectTable.type;if(e.layout&&e.layout.style===V.layout.style.section)return W.section.type}return t.has(Q.type)?e.layout&&e.layout.style===V.layout.style.autocomplete?W.autocomplete.type:W.multipleSelect.type:e instanceof a&&e.parent()?e.parent().parent()?(e.parent().parent().parent(),W.page.type):W.folder.type:"root"}return"root"};function Z(e){let t={};const l=Object.keys(e);for(let o=0;o<l.length;o++)t={...t,[l[o]]:e[l[o]].default};return t}function _(e){return structuredClone(ee[e])}const ee={folder:{type:V.type,text:F(W.folder.type),items:[],layout:{style:"folder"}},page:{type:V.type,text:F(W.page.type),items:[],layout:{style:"card"}},landing:{type:V.type,text:F(W.landing.type),items:[],layout:{style:"landing",new:!0}},section:{type:V.type,text:"",description:"",items:[],layout:{style:V.layout.style.section,columns:1}},fileUpload:{type:R.type,text:"",description:"",items:[],options:{required:!0,acceptedFiles:[],maxSize:10},layout:{}},text:{type:C.type,text:"",description:"",layout:{style:C.layout.style.default},options:{required:!0}},textArea:{type:C.type,text:"",description:"",layout:{style:C.layout.style.area},options:{required:!0}},time:{type:C.type,text:"",description:"",layout:{style:C.layout.style.time},options:{required:!0}},number:{type:G.type,text:"",description:"",options:{min:G.types.number.defaults.min,step:G.types.number.defaults.step,unit:G.options.unit.default,required:!0},layout:{style:G.layout.style.default}},range:{type:G.type,text:"",description:"",options:{min:G.types.range.defaults.min,step:G.types.range.defaults.step,unit:G.options.unit.default,required:!0},layout:{style:G.layout.style.range}},rating:{type:G.type,text:"",description:"",options:{min:G.types.rating.defaults.min,max:G.types.rating.defaults.max,step:G.types.rating.defaults.step,required:!0},layout:{style:G.layout.style.rating,icon:G.layout.icon.star.type}},date:{type:H.type,text:"",description:"",options:{required:!0}},select:{type:O.type,text:"",description:"",layout:{style:O.layout.style.radio},options:{required:!0}},dropdown:{type:O.type,text:"",description:"",layout:{style:O.layout.style.dropdown},options:{required:!0}},switch:{type:Q.type,text:"",description:"",layout:{style:Q.layout.style.switch},options:{required:!0}},fn:{type:y.TYPE,text:"",description:"",parameters:[],options:{required:!0}},sourceList:{type:J.type,text:"",description:"",options:{required:!1,source:""}},cond:{type:p.TYPE,text:"",description:"",expression:{type:"exp",operator:null,left:null,right:null}},alert:{type:p.TYPE,text:"",description:"",layout:{style:"alert"},expression:{type:"exp",operator:null,left:null,right:null}},selectTable:{type:V.type,text:"",description:"",items:[],layout:{style:V.layout.style.table}},multipleSelect:{type:V.type,text:"",description:"",layout:{style:V.layout.style.multipleSelect},options:{required:!1}},autocomplete:{type:V.type,text:"",description:"",layout:{style:V.layout.style.autocomplete},options:{required:!1}},check:{type:Q.type,text:"",description:"",layout:{style:Q.layout.style.default},options:{required:!1}}};export{N as ItemConditionalMap,K as ItemFunctionMap,V as ItemMap,W as Mapper,Q as QuestionCheckMap,H as QuestionDateMap,R as QuestionFileMap,J as QuestionListMap,G as QuestionNumberMap,O as QuestionSelectMap,C as QuestionTextMap,Z as fromMapToDefault,_ as getDefaultData,X as getMapType};
1
+ import{QuestionText as e,QuestionNumber as t,QuestionSelect as l,QuestionCheck as o,QuestionDate as i,ItemFunction as y,ItemConditional as p,QuestionFile as s,Item as a}from"@famalabs/survey";import{TriangleAlert as n,Network as r,Sigma as u,Calculator as d,DatabaseZap as c,Clock as m,LetterText as f,CaseSensitive as g,Star as x,GitCommitHorizontal as h,Binary as z,CircleChevronDown as b,CircleDot as w,ToggleRight as T,CopyCheck as q,Calendar as P,CloudUpload as E,Presentation as Y,FileText as S,Folder as k,SquareChartGantt as v,TableProperties as A,SquareChevronDown as L}from"lucide-react";import{ThumbsOutlineIcon as U,ThumbsIcon as M,HearthOutlineIcon as j,HearthIcon as D,StarOutlineIcon as I,StarIcon as B}from"../components/common/QuestionIcons.js";import{getLocaleItemTypeId as F}from"./locale.js";import{jsx as $}from"react/jsx-runtime";const C={id:"",name:"",text:"",type:e.TYPE,types:{text:{type:"text",icon:$(g,{size:20}),defaults:{min:null,max:null}},textArea:{type:"textArea",icon:$(f,{size:20}),defaults:{min:null,max:null}},time:{type:"time",icon:$(m,{size:20}),defaults:{format:"/^(?:[01]d|2[0-3]):[0-5]d:[0-5]d$/"}}},options:{},layout:{style:{default:"default",area:"area",time:"time"}}},G={id:"",name:"",text:"",type:t.TYPE,types:{number:{type:"number",icon:$(z,{size:20}),defaults:{min:0,max:null,step:1}},range:{type:"range",icon:$(h,{size:20}),defaults:{min:0,max:100,step:1}},rating:{type:"rating",icon:$(x,{size:20}),defaults:{min:0,max:10,step:1}}},options:{unit:{default:void 0,undefined:void 0,kg:"kg",g:"g",m:"m",cm:"cm",mm:"mm",l:"l",cl:"cl",ml:"ml",dollar:"$",euro:"€"}},layout:{style:{default:"default",range:"range",rating:"rating"},icon:{star:{type:"star",element:{selected:$(B,{}),unselected:$(I,{})}},heart:{type:"heart",element:{selected:$(D,{}),unselected:$(j,{})}},thumb:{type:"thumb",element:{selected:$(M,{}),unselected:$(U,{})}}}}},O={id:"",name:"",text:"",type:l.TYPE,types:{select:{type:"select",icon:$(w,{size:20})},dropdown:{type:"dropdown",icon:$(b,{size:20})}},options:{multiSelect:{default:!1},activate:{default:e=>!(e instanceof Array&&e.length>0)}},layout:{style:{default:"radio",radio:"radio",dropdown:"dropdown"}}},Q={id:"",name:"",text:"",type:o.TYPE,types:{check:{type:"check",icon:$(q,{size:20})},switch:{type:"switch",icon:$(T,{size:20})}},options:{inverted:{default:!1,false:!1,true:!0},toggle:{default:!1,false:!1,true:!0}},layout:{style:{default:"check",check:"check",switch:"switch"}}},H={id:"",name:"",text:"",type:i.TYPE,types:{date:{type:"date",icon:$(P,{size:20}),defaults:{min:null,max:null}}}},J={id:"",name:"",text:"",type:"list",types:{sourceList:{type:"sourceList",icon:$(c,{size:20}),defaults:{source:null,min:null,max:null}}},options:{}},K={id:"",name:"",text:"",type:y.TYPE,types:{fn:{type:"fn",icon:$(d,{size:20})},score:{type:"score",icon:$(u,{size:20})}},parameters:[],fn:{sum:"Sum",mul:"Multiply",diff:"Diff",div:"Divide",avg:"Average",age:"Age",diffDays:"Days",max:"Max",min:"Min",pow:"Pow",sign:"Sign",log:"Log",abs:"Abs",BMI:"BMI"}},N={id:"",name:"",text:"",type:p.TYPE,types:{cond:{type:"cond",icon:$(r,{size:20})},alert:{type:"alert",icon:$(n,{size:20})}},expression:{operator:{default:"",sum:"+",diff:"-",mult:"*",div:"/",gt:">",lt:"<",gte:">=",lte:"<=",eq:"==",neq:"!=",and:"&&",or:"||"}}},R={id:"",name:"",text:"",type:s.TYPE,options:{acceptedFiles:[],maxSize:1e4},layout:{}},V={id:"",name:"",text:"",type:a.TYPE,types:{root:{type:"root",icon:$(S,{size:20})},multipleSelect:{type:"multipleSelect",icon:$(q,{size:20})},autocomplete:{type:"autocomplete",icon:$(L,{size:20})},selectTable:{type:"selectTable",icon:$(A,{size:20})},section:{type:"section",icon:$(v,{size:20}),hint:"Gruppo di domande"},folder:{type:"folder",icon:$(k,{size:20})},page:{type:"page",icon:$(S,{size:20})},landing:{type:"landing",icon:$(Y,{size:20})},fileUpload:{type:"fileUpload",icon:$(E,{size:20})}},options:{progress:{default:"default",bar:"bar",percentage:"percentage",none:"none"}},layout:{style:{default:"page",folder:"folder",page:"page",card:"card",multipleSelect:"multicheck",autocomplete:"autocomplete",section:"section",inline:"inline",table:"table",wizard:"wizard"},hide:{default:!1,false:!1,true:!0}}},W={text:C.types.text,textArea:C.types.textArea,number:G.types.number,range:G.types.range,rating:G.types.rating,select:O.types.select,multipleSelect:V.types.multipleSelect,autocomplete:V.types.autocomplete,dropdown:O.types.dropdown,check:Q.types.check,switch:Q.types.switch,date:H.types.date,time:C.types.time,fn:K.types.fn,score:K.types.score,cond:N.types.cond,selectTable:V.types.selectTable,sourceList:J.types.sourceList,fileUpload:V.types.fileUpload,section:V.types.section,landing:V.types.landing,root:V.types.root,page:V.types.page,folder:V.types.folder,alert:N.types.alert},X=e=>{if(!e)return"root";if(e.type===C.type){if(e.layout){if("time"===e.layout.style)return W.time.type;if("area"===e.layout.style)return W.textArea.type}return W.text.type}if(e.type===G.type)return e.layout&&e.layout.style===G.layout.style.range?W.range.type:e.layout&&e.layout.style===G.layout.style.rating?W.rating.type:W.number.type;if(e.type===O.type)return e.layout&&e.layout.style===O.layout.style.dropdown?W.dropdown.type:W.select.type;if(e.type===Q.type)return e.layout&&e.layout.style===Q.layout.style.switch?W.switch.type:W.check.type;if(e.type===H.type)return W.date.type;if(e.type===J.type)return W.sourceList.type;if(e.type===K.type)return"fn"in e&&e.fn?W.fn.type:"source"in e&&e.source?W.score.type:W.fn.type;if(e.type===R.type)return W.fileUpload.type;if(e.type===N.type)return e.items&&!e.items.length?W.alert.type:W.cond.type;if(e.type===a.TYPE&&e.layout&&("page"===e.layout.style||"card"===e.layout.style))return W.page.type;if(e.type===a.TYPE&&e.layout&&("folder"===e.layout.style||"undefined"===e.layout.style))return W.folder.type;if(e.type===a.TYPE&&e.layout&&"landing"===e.layout.style)return W.landing.type;if(e.type===a.TYPE&&e.items){const t=new Set(e.items?.map(e=>e.type));if(void 0!==e.layout&&e.layout){if(e.layout&&e.layout.style===V.layout.style.table)return 1===t.size&&t.has(O.type),W.selectTable.type;if(e.layout&&e.layout.style===V.layout.style.section)return W.section.type}return t.has(Q.type)?e.layout&&e.layout.style===V.layout.style.autocomplete?W.autocomplete.type:W.multipleSelect.type:e instanceof a&&e.parent()?e.parent().parent()?(e.parent().parent().parent(),W.page.type):W.folder.type:"root"}return"root"};function Z(e){let t={};const l=Object.keys(e);for(let o=0;o<l.length;o++)t={...t,[l[o]]:e[l[o]].default};return t}function _(e){return structuredClone(ee[e])}const ee={folder:{type:V.type,text:F(W.folder.type),items:[],layout:{style:"folder"}},page:{type:V.type,text:F(W.page.type),items:[],layout:{style:"card"}},landing:{type:V.type,text:F(W.landing.type),items:[],layout:{style:"landing",new:!0}},section:{type:V.type,text:"",description:"",items:[],layout:{style:V.layout.style.section,columns:1}},fileUpload:{type:R.type,text:"",description:"",items:[],options:{required:!0,acceptedFiles:[],maxSize:10},layout:{}},text:{type:C.type,text:"",description:"",layout:{style:C.layout.style.default},options:{required:!0}},textArea:{type:C.type,text:"",description:"",layout:{style:C.layout.style.area},options:{required:!0}},time:{type:C.type,text:"",description:"",layout:{style:C.layout.style.time},options:{required:!0}},number:{type:G.type,text:"",description:"",options:{min:G.types.number.defaults.min,step:G.types.number.defaults.step,unit:G.options.unit.default,required:!0},layout:{style:G.layout.style.default}},range:{type:G.type,text:"",description:"",options:{min:G.types.range.defaults.min,step:G.types.range.defaults.step,unit:G.options.unit.default,required:!0},layout:{style:G.layout.style.range}},rating:{type:G.type,text:"",description:"",options:{min:G.types.rating.defaults.min,max:G.types.rating.defaults.max,step:G.types.rating.defaults.step,required:!0},layout:{style:G.layout.style.rating,icon:G.layout.icon.star.type}},date:{type:H.type,text:"",description:"",options:{required:!0}},select:{type:O.type,text:"",description:"",layout:{style:O.layout.style.radio},options:{required:!0}},dropdown:{type:O.type,text:"",description:"",layout:{style:O.layout.style.dropdown},options:{required:!0}},switch:{type:Q.type,text:"",description:"",layout:{style:Q.layout.style.switch},options:{required:!0}},fn:{type:y.TYPE,text:"",description:"",parameters:[],options:{required:!0}},sourceList:{type:J.type,text:"",description:"",options:{required:!1,source:""}},cond:{type:p.TYPE,text:"",description:"",expression:{type:"exp",operator:null,left:null,right:null}},alert:{type:p.TYPE,text:"",description:"",layout:{style:"alert"},expression:{type:"exp",operator:null,left:null,right:null}},selectTable:{type:V.type,text:"",description:"",items:[],layout:{style:V.layout.style.table}},multipleSelect:{type:V.type,text:"",description:"",layout:{style:V.layout.style.multipleSelect},options:{required:!1}},autocomplete:{type:V.type,text:"",description:"",layout:{style:V.layout.style.autocomplete},options:{required:!1}},check:{type:Q.type,text:"",description:"",layout:{style:Q.layout.style.default},options:{required:!1}}};export{N as ItemConditionalMap,K as ItemFunctionMap,V as ItemMap,W as Mapper,Q as QuestionCheckMap,H as QuestionDateMap,R as QuestionFileMap,J as QuestionListMap,G as QuestionNumberMap,O as QuestionSelectMap,C as QuestionTextMap,Z as fromMapToDefault,_ as getDefaultData,X as getMapType};
@@ -1 +1 @@
1
- import{Item as e}from"@famalabs/survey";import*as r from"acorn";function t(e){switch(e.type){case"Literal":return null!=e.value?{type:"v",value:e.value}:void 0;case"Identifier":{const r=e.name.startsWith("$")?e.name.slice(1):e.name;return{type:e.name.startsWith("$")?"id":"v",name:r}}case"LogicalExpression":case"BinaryExpression":{const r=e,n=t(r.left),o=t(r.right);return{type:"exp",operator:r.operator,left:n,right:o}}case"ExpressionStatement":return t(e.expression);case"Program":for(const r of e.body)return t(r);return;default:return{type:"unsupported",value:`Nodo non supportato: ${e.type}`}}}function n(n){if(!n)return n;const o=n instanceof e?n?.toJSON():n,{condition:i,...s}=o;if(!i)return console.error("No condition found in question:",n),o;try{const e=r.parse(i,{ecmaVersion:2024,sourceType:"script"});return{...s,expression:t(e)}}catch(e){return console.error("Failed to parse condition:",e),o}}function o(e){if(!e)return{min:null,max:null};const t=r.parse(e,{ecmaVersion:2024}),n=(()=>{const e=t?.body;if(!Array.isArray(e)||0===e.length)return;const r=e[0];return"ExpressionStatement"===r.type?r.expression:r})();let o=null,i=null;const s=e=>{"number"==typeof e&&(o=null===o?e:Math.max(o,e))},a=e=>{"number"==typeof e&&(i=null===i?e:Math.min(i,e))},u=e=>{if(!e)return;const r=e.left,t=e.right;if("LogicalExpression"===e.type&&"&&"===e.operator)return u(r),void u(t);if("BinaryExpression"===e.type){const n="Literal"===t?.type?t.value:void 0,o="Literal"===r?.type?r.value:void 0;switch(e.operator){case">":case">=":void 0!==n?a(n):void 0!==o&&s(o);break;case"<":case"<=":void 0!==n?s(n):void 0!==o&&a(o)}}};return u(n),{min:o,max:i}}function i(e,t){if(!e)return e;const n=r.parse(e,{ecmaVersion:2024}),o=(()=>{const e=n?.body;if(!Array.isArray(e)||0===e.length)return;const r=e[0];return"ExpressionStatement"===r.type?r.expression:r})();if(!o)return e;const{min:i,max:s}=t,a=(e,r)=>{e.value=r,e.raw=(Number.isInteger(r),String(r))},u=e=>{if(e){if("LogicalExpression"===e.type&&"&&"===e.operator)return u(e.left),void u(e.right);if("BinaryExpression"===e.type){const r="Literal"===e.right?.type,t="Literal"===e.left?.type;switch(e.operator){case">":case">=":r&&null!=s?a(e.right,s):t&&null!=i&&a(e.left,i);break;case"<":case"<=":r&&null!=i?a(e.right,i):t&&null!=s&&a(e.left,s)}}}};return u(o),n.body.map(e=>{const r=e=>{switch(e.type){case"Literal":return"string"==typeof e.value?JSON.stringify(e.value):String(e.value);case"Identifier":return e.name;case"BinaryExpression":case"LogicalExpression":{const t=e=>{const t=r(e);return"Literal"===e.type||"Identifier"===e.type?t:`(${t})`};return`(${t(e.left)}${e.operator}${t(e.right)})`}case"ExpressionStatement":return r(e.expression);default:return""}};return"ExpressionStatement"===e.type?r(e.expression):r(e)}).join("\n").trim()}export{n as LegacyConditionParser,o as acornExtractMinMax,i as acornUpdateMinMax,t as transformNode};
1
+ import{Item as e}from"@famalabs/survey";import*as r from"acorn";function t(e){switch(e.type){case"Literal":return null!=e.value?{type:"v",value:e.value}:void 0;case"Identifier":{const r=e.name.startsWith("$")?e.name.slice(1):e.name;return{type:e.name.startsWith("$")?"id":"v",name:r}}case"LogicalExpression":case"BinaryExpression":{const r=e,n=t(r.left),o=t(r.right);return{type:"exp",operator:r.operator,left:n,right:o}}case"ExpressionStatement":return t(e.expression);case"Program":for(const r of e.body)return t(r);return;default:return{type:"unsupported",value:`Nodo non supportato: ${e.type}`}}}function n(n){if(!n)return n;const o=n instanceof e?n?.toJSON():n,{condition:i,...s}=o;if(!i)return console.error("No condition found in question:",n),o;try{const e=r.parse(i,{ecmaVersion:2024,sourceType:"script"});return{...s,expression:t(e)}}catch(e){return void console.error("Failed to parse condition:",e)}}function o(e){if(!e)return{min:null,max:null};const t=r.parse(e,{ecmaVersion:2024}),n=(()=>{const e=t?.body;if(!Array.isArray(e)||0===e.length)return;const r=e[0];return"ExpressionStatement"===r.type?r.expression:r})();let o=null,i=null;const s=e=>{"number"==typeof e&&(o=null===o?e:Math.max(o,e))},a=e=>{"number"==typeof e&&(i=null===i?e:Math.min(i,e))},u=e=>{if(!e)return;const r=e.left,t=e.right;if("LogicalExpression"===e.type&&"&&"===e.operator)return u(r),void u(t);if("BinaryExpression"===e.type){const n="Literal"===t?.type?t.value:void 0,o="Literal"===r?.type?r.value:void 0;switch(e.operator){case">":case">=":void 0!==n?a(n):void 0!==o&&s(o);break;case"<":case"<=":void 0!==n?s(n):void 0!==o&&a(o)}}};return u(n),{min:o,max:i}}function i(e,t){if(!e)return e;const n=r.parse(e,{ecmaVersion:2024}),o=(()=>{const e=n?.body;if(!Array.isArray(e)||0===e.length)return;const r=e[0];return"ExpressionStatement"===r.type?r.expression:r})();if(!o)return e;const{min:i,max:s}=t,a=(e,r)=>{e.value=r,e.raw=(Number.isInteger(r),String(r))},u=e=>{if(e){if("LogicalExpression"===e.type&&"&&"===e.operator)return u(e.left),void u(e.right);if("BinaryExpression"===e.type){const r="Literal"===e.right?.type,t="Literal"===e.left?.type;switch(e.operator){case">":case">=":r&&null!=s?a(e.right,s):t&&null!=i&&a(e.left,i);break;case"<":case"<=":r&&null!=i?a(e.right,i):t&&null!=s&&a(e.left,s)}}}};return u(o),n.body.map(e=>{const r=e=>{switch(e.type){case"Literal":return"string"==typeof e.value?JSON.stringify(e.value):String(e.value);case"Identifier":return e.name;case"BinaryExpression":case"LogicalExpression":{const t=e=>{const t=r(e);return"Literal"===e.type||"Identifier"===e.type?t:`(${t})`};return`(${t(e.left)}${e.operator}${t(e.right)})`}case"ExpressionStatement":return r(e.expression);default:return""}};return"ExpressionStatement"===e.type?r(e.expression):r(e)}).join("\n").trim()}export{n as LegacyConditionParser,o as acornExtractMinMax,i as acornUpdateMinMax,t as transformNode};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- export{FormCreator}from"./core/Form.js";import"react/compiler-runtime";import"./core/components/common/DrawerCommon.js";import"@mui/material/Typography";import"@mui/material/Grid";import"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"./core/components/common/Skeletons.js";import"react";import"isomorphic-dompurify";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";export{ItemConditionalMap,ItemFunctionMap,ItemMap,Mapper,QuestionCheckMap,QuestionDateMap,QuestionFileMap,QuestionListMap,QuestionNumberMap,QuestionSelectMap,QuestionTextMap,fromMapToDefault,getDefaultData,getMapType}from"./core/utils/config-map.js";export{LocaleMap,getLocale,getLocaleItemTypeId}from"./core/utils/locale.js";export{formatId,formatName,isNameValid,resolvePath}from"./core/utils/format-utils.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"./core/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"./core/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"./core/editor/common/CommonEditor.js";import"./core/editor/containers/PageEditor.js";import"@mui/material/Container";import"./core/editor/question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";export{isFormValid}from"./core/hooks/common/NavigationHook.js";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"./core/editor/question_forms/ItemConditionalEditor.js";import"./core/editor/question_forms/QuestionDateEditor.js";import"./core/editor/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"@mui/material/List";import"@mui/material/ListItemButton";import"@mui/material/ListItemIcon";import"@mui/material/ListItemText";import"@mui/material/Popover";import"@mui/material/Drawer";import"@mui/material/Skeleton";import"@hello-pangea/dnd";import"./core/editor/common/sidebar/SidebarSettingsView.js";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";import"@mui/material/CircularProgress";import"@mui/material/LinearProgress";import"./core/validators/compiler/CompilerValidators.js";
1
+ export{FormCreator}from"./core/Form.js";import"react/compiler-runtime";import"./core/components/common/DrawerCommon.js";import"@mui/material/Typography";import"@mui/material/Grid";import"react/jsx-runtime";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/material/Modal";import"./core/components/common/Skeletons.js";import"react";import"isomorphic-dompurify";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";export{ItemConditionalMap,ItemFunctionMap,ItemMap,Mapper,QuestionCheckMap,QuestionDateMap,QuestionFileMap,QuestionListMap,QuestionNumberMap,QuestionSelectMap,QuestionTextMap,fromMapToDefault,getDefaultData,getMapType}from"./core/utils/config-map.js";export{LocaleMap,getLocale,getLocaleItemTypeId}from"./core/utils/locale.js";export{formatId,formatName,isNameValid,resolvePath}from"./core/utils/format-utils.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"./core/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"./core/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"./core/editor/common/CommonEditor.js";import"./core/editor/containers/PageEditor.js";import"@mui/material/Container";import"./core/editor/question_forms/ItemFunctionEditor.js";import"@mui/material/InputAdornment";import"@mui/material/InputLabel";import"@mui/x-date-pickers";export{isFormValid}from"./core/hooks/common/NavigationHook.js";import"lodash-es";import"idb";import"@mui/lab/TabContext";import"@mui/lab/TabList";import"@mui/lab/TabPanel";import"@mui/material/Badge";import"@mui/material/Divider";import"@mui/material/Tab";import"lodash-es/isEqual";import"./core/editor/question_forms/ItemConditionalEditor.js";import"./core/editor/question_forms/QuestionDateEditor.js";import"./core/editor/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"./core/editor/common/sidebar/SidebarSettingsView.js";import"@mui/material/CardActionArea";import"@mui/material/CardMedia";import"@mui/material/CircularProgress";import"@mui/material/LinearProgress";import"./core/validators/compiler/CompilerValidators.js";import"@mui/material/Collapse";import"@mui/material/List";import"@mui/material/ListItemButton";import"@mui/material/ListItemIcon";import"@mui/material/ListItemText";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@famalabs/web-form",
3
- "version": "1.0.0-beta.3",
3
+ "version": "1.0.0-beta.6",
4
4
  "author": " Fama Labs <info@famalabs.com>",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -15,24 +15,24 @@
15
15
  }
16
16
  },
17
17
  "peerDependencies": {
18
- "@blocknote/core": "^0.46.1",
19
- "@blocknote/mantine": "^0.46.1",
20
- "@blocknote/react": "^0.46.1",
21
- "@famalabs/web-ui": "^1.0.0-beta.3",
18
+ "@blocknote/core": "^0.46.0",
19
+ "@blocknote/mantine": "^0.46.0",
20
+ "@blocknote/react": "^0.46.0",
21
+ "@famalabs/web-ui": "^1.0.0-beta.4",
22
22
  "@famalabs/survey": "^1.0.2",
23
- "@hello-pangea/dnd": "^18.0.1",
23
+ "@hello-pangea/dnd": "^18.0.0",
24
24
  "@mui/lab": "^7.0.1-beta.21",
25
25
  "@mui/material": "^7.3.7",
26
- "@mui/x-date-pickers": ">=8.20.0 <9.0.0",
26
+ "@mui/x-date-pickers": "^8.20.0",
27
27
  "acorn": "^8.15.0",
28
28
  "dayjs": "^1.11.19",
29
- "idb": "^8.0.3",
29
+ "idb": "^8.0.0",
30
30
  "isomorphic-dompurify": "^2.35.0",
31
- "lodash-es": "^4.17.22",
32
- "lucide-react": ">=0.542.0 <1.0.0",
33
- "react": "^19.2.3",
34
- "react-dom": "^19.2.3",
35
- "react-dropzone": "^14.3.8",
31
+ "lodash-es": "^4.17.23",
32
+ "lucide-react": "^0.563.0",
33
+ "react": "^19.0.0",
34
+ "react-dom": "^19.0.0",
35
+ "react-dropzone": "^14.4.0",
36
36
  "react-hook-form": "^7.71.0",
37
37
  "react-viewport-list": "^7.1.2",
38
38
  "zod": "^4.3.5"
@@ -43,6 +43,9 @@
43
43
  "files": [
44
44
  "dist"
45
45
  ],
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
46
49
  "nx": {
47
50
  "targets": {
48
51
  "typecheck": {