@sme.up/ketchup2 2.0.0-SNAPSHOT-20250811082635 → 2.0.0-SNAPSHOT-20250811104448
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
|
-
{"version":3,"file":"useColumnWidths.d.ts","sourceRoot":"","sources":["../../../../src/components/data-table/columns/useColumnWidths.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAEpE,UAAU,oBAAoB;IAC5B,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACjD,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,aAAa,CAAA;CACjD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,GAAI,8CAK7B,oBAAoB,KAAG,CACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtB,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"useColumnWidths.d.ts","sourceRoot":"","sources":["../../../../src/components/data-table/columns/useColumnWidths.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAA;AAEpE,UAAU,oBAAoB;IAC5B,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;IACjD,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,aAAa,CAAA;CACjD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,GAAI,8CAK7B,oBAAoB,KAAG,CACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtB,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAsD7D,CAAA"}
|
package/dist/ketchup2.cjs.js
CHANGED
|
@@ -47,4 +47,4 @@ Valid keys: `+JSON.stringify(Object.keys(g),null," "));var B=se(H,J,L,V,G+"."+J
|
|
|
47
47
|
${g?"smp-datepickercalendar-td-selected":""}
|
|
48
48
|
${S?"smp-datepickercalendar-td-focused":""}
|
|
49
49
|
${$?"smp-datepickercalendar-td-disabled":""}`},P=()=>`${_[d]} ${f.toString()}`;return p.jsxs("div",{className:I.wrapper,ref:s,role:"dialog",tabIndex:-1,"aria-modal":"true","data-component":"datepicker-calendar",children:[p.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"16px"},children:[p.jsx(fe,{onClick:T,ariaLabel:a(Bt.PREVIOUS_MONTH),optionalDisplayValue:"<",appearance:"ghost",variant:"base",bindValue:"<"}),p.jsx("div",{"aria-label":P(),className:I.label,children:P()}),p.jsx(fe,{onClick:F,ariaLabel:a(Bt.NEXT_MONTH),bindValue:">",optionalDisplayValue:">",appearance:"ghost",variant:"base"})]}),p.jsxs("table",{ref:x,role:"grid","aria-label":`${a(_e.CALENDAR_FOR)} ${_[d]} ${f}`,className:I.table,children:[p.jsx("thead",{children:p.jsx("tr",{children:w.map(N=>p.jsx("th",{scope:"col",abbr:N.full,className:I.th,children:N.value},N.value))})}),p.jsx("tbody",{children:K.map((N,g)=>p.jsx("tr",{children:N.map((S,$)=>{const D=g*7+$;if(S===null)return p.jsx("td",{className:I.td(!1,!1,!1,!0)},`empty-${$}`);const L=S.getDate()===i.getDate()&&S.getMonth()===i.getMonth()&&S.getFullYear()===i.getFullYear(),V=l&&S.getDate()===l.getDate()&&S.getMonth()===l.getMonth()&&S.getFullYear()===l.getFullYear(),G=h===S.getDate(),H=C(S);return p.jsx("td",{role:"gridcell","aria-selected":V,tabIndex:G?0:-1,onClick:()=>b(S),onKeyDown:W=>j(W,D),"aria-label":`${S.getDate()} ${_[S.getMonth()]} ${S.getFullYear()}`,"data-selected":V,"aria-disabled":H,ref:W=>{v.current[D]=W},className:I.td(L,V,G,H),children:S.getDate()},`day-${$}`)})},`week-${g}`))})]})]})}const Zt=({bindValue:t,optionalDisplayValue:e,label:r,className:n,...s})=>{const a={wrapper:"smp-text-wrapper"};return r?p.jsxs("div",{className:a.wrapper,children:[p.jsx(De,{label:r,helper:s.helper}),p.jsx(Re,{variant:"body",bindValue:e||t,className:n})]}):p.jsx(Re,{variant:"body",bindValue:e||t,className:n})},er=({bindValue:t,placeholder:e,onChange:r,disabledDateRanges:n,isEditable:s=!0,isOptimized:a,...o})=>{const i=E.useRef(null),[l,c]=E.useState(!1),[d,u]=E.useState(t||""),[f,m]=E.useState(""),{anchorRef:h,targetRef:y}=je({position:"bottom",enabled:l}),x=E.useCallback(()=>{c(!1),i?.current?.focus()},[]);Je([y,h],l,()=>{x()}),Qt(l,y);const{format:v,getCurrentLanguage:_}=Ce(),w=E.useCallback(R=>{const j=R.length>5&&as(R,_())||R,O=v(j,void 0,void 0,{type:"date"}),A=typeof j!="string",k=A&&j.toISOString().substring(0,10)||"";return{isValid:A,formattedDate:O,isoDate:k,normalizedDate:j}},[_,v]);E.useEffect(()=>{const{formattedDate:R,isoDate:j,isValid:O}=w(t);u(O&&j||t),m(O&&R||t)},[t,v,w]);const C=()=>c(R=>!R),b=()=>{F(f)},T=R=>{F(R),x()},F=R=>{const{isoDate:j,isValid:O}=w(R);r&&r(O&&j||R)},U=R=>{m(R)},M=R=>{R.key==="Enter"&&(R.preventDefault(),F(f))};return p.jsx("div",{"data-component":"date-picker",children:a?p.jsx(Zt,{bindValue:f}):p.jsxs(p.Fragment,{children:[p.jsx(ve,{...o,bindValue:f,placeholder:e,onBlur:b,onChange:U,onKeyDown:M,shapeIcon:"calendar",onShapeIconClick:C,ref:h,inputRef:i,isEditable:s,size:10,maxLength:o.maxLength?o.maxLength:10}),l&&p.jsx(Oe,{children:p.jsx(Qs,{disabledDateRanges:n,onDateChange:T,initialValue:Kt(d)&&d||"",targetRef:y})})]})})},Zs=({elements:t,displayMode:e,minimumChars:r,listDisplayMode:n,isEditable:s=!0,placeholder:a,label:o,disabled:i,fun:l,error:c,onOptionsRequest:d,onChange:u,onBlur:f,...m})=>{const h=t.map(v=>v.bindValue),y=(v,_)=>{const w=[...t];if(v=="")w.pop();else{const C=w.findIndex(b=>b.bindValue===v&&b.optionalDisplayValue===_);C>=0?w.splice(C,1):w.push({bindValue:v,optionalDisplayValue:_})}u?.(w)},x={container:"smp-multipleAutocomplete-container"};return p.jsxs("div",{className:x.container,"data-component":"multiple-autocomplete",children:[o&&p.jsx(De,{label:o,disabled:i,helper:m.helper}),p.jsx(Xt,{elements:t,displayMode:e,isEditable:s,onChange:v=>{u?.(v)}}),p.jsx(Jt,{...m,bindValue:"",fun:l,isEditable:s,onChange:y,_changeOnEnter:!0,listDisplayMode:n,minimumChars:r,placeholder:a,onOptionsRequest:d,_multiActiveIndex:h,error:c,onBlur:f})]})},ln=({...t})=>{const[e,r]=E.useState(!1),n=e?"visibility-off":"visibility";return p.jsx(ve,{...t,inputType:e?"text":"password",shapeIcon:n,onShapeIconClick:()=>r(!e),ariaLabel:"password","data-component":"password"})},ea=({...t})=>{const[e,r]=E.useState(t.bindValue),{translate:n}=Ce(),s=o=>{o.key==="Enter"&&(o.preventDefault(),t.onEnter?.(e))},a=o=>{r(o),t.onChange?.(o)};return p.jsx(ve,{...t,placeholder:t.placeholder?t.placeholder:n(_e.SPOTLIGHT_DEFAULT_PLACEHOLDER),icon:"magnify",inputType:"search",bindValue:e,onChange:a,onKeyDown:s,ariaLabel:"search bar",_dataComponent:"search-bar"})};class Ae{class;value;constructor(e,r){this.class=e,this.value=r}static fromDataObj(e){return new Ae(e,e.k==""?[]:e.k.split(";"))}static fromString(e){return new Ae({t:"",p:""},e.split(";"))}getValue(){return this.value}getLegacyValue(){return this.value.join(";")}}const $e=(t,e,r)=>({obj:{t:t.obj.t,p:t.obj.p,k:e},decode:r??t.decode,shape:t.shape,fun:t.fun,data:t.data}),Br=t=>{const e=Ae.fromDataObj(t.obj),r=t.decode?Ae.fromString(t.decode).getValue():[];return e.getValue().map((n,s)=>({bindValue:n,optionalDisplayValue:r.length>=s?r[s]:""}))},ta=(t,e)=>{const r=new Ae(t.obj,e.map(s=>s.bindValue)).getLegacyValue(),n=new Ae(t.obj,e.map(s=>s.optionalDisplayValue?s.optionalDisplayValue:"")).getLegacyValue();return $e(t,r,n)},cn=({min:t,max:e,step:r=1,inputMode:n="decimal",dSep:s,bindValue:a,onChange:o,onEnter:i,isOptimized:l,...c})=>{const{getCurrentLanguage:d}=Ce(),u=E.useRef(null),f=d(),{groupingChar:m,decimalChar:h}=E.useMemo(()=>Vs(f,s),[f,s]),y=E.useCallback((A,k)=>new Intl.NumberFormat(f,{minimumFractionDigits:k,maximumFractionDigits:k,useGrouping:!0}).format(A),[f]),x=E.useCallback(Ws,[m,h]),v=E.useCallback(Ms,[t,e]),_=a!=null&&a.toString().includes(".")?a.toString().split(".")[1].length:0,[w,C]=E.useState(_),[b,T]=E.useState(a!=null?y(a,w):""),F=E.useRef(a??null);E.useEffect(()=>{if(a==null){T(""),F.current=null;return}const A=a.toString().includes(".")?a.toString().split(".")[1].length:0,k=A===0?w:A;k!==w&&C(k),T(y(a,k)),F.current=a},[a,y]);const U=E.useCallback((A,k=!1)=>{if(A.trim()===""){T(""),F.current=null,o?.(void 0,""),k&&i?.(void 0);return}const K=x(A,m,h);if(isNaN(K))if(F.current!=null){const q=y(F.current,w);T(q)}else T("");else{const q=v(K,t,e),I=Bs(A,m,h);C(I);const P=y(q,I);T(P),F.current=q,o?.(q,P),k&&i?.(q)}},[x,m,h,v,t,e,y,o,i,w]),M=A=>T(A),R=()=>U(b),j=A=>{if(A.key==="Enter"){A.preventDefault(),U(b,!0);return}if(A.key==="ArrowUp"||A.key==="ArrowDown"){A.preventDefault();const k=A.key==="ArrowUp"?1:-1,K=F.current??0,q=v(K+k*r,t,e);U(y(q,w))}},O=A=>{if(!A.currentTarget.contains(document.activeElement))return;A.preventDefault();const k=A.deltaY<0?1:-1,K=F.current??0,q=v(K+k*r,t,e);U(y(q,w))};return p.jsx("div",{ref:u,"data-component":"input-number",onWheel:O,children:l?p.jsx(Zt,{bindValue:b,className:`smp-text-number${F.current!=null&&F.current<0?" smp-text-negative":""}`}):p.jsx(ve,{...c,"aria-valuemin":t,"aria-valuemax":e,"aria-valuenow":F.current??void 0,bindValue:b,inputType:"text",inputMode:n,min:t,max:e,step:r,onChange:M,onBlur:R,onKeyDown:j})})};class ze{class;value;decimalSeparator;constructor(e,r,n="."){this.class=e,this.value=r,this.decimalSeparator=n}static fromDataObj(e,r){const n=r==="."?",":".";if(e.k==="")return new ze(e,void 0,r);let s=e.k.trim();const a=s.endsWith("-");a&&(s=s.slice(0,-1));const i=s.replace(new RegExp(`\\${n}`,"g"),"").replace(r,"."),l=parseFloat(i),c=a?-l:l;return new ze(e,c,r)}getLegacyValue(){return this.value!=null?this.value.toString().replace(".",this.decimalSeparator):""}getValue(){return this.value}}const ra=({disabled:t,bindValue:e,onChange:r,placeholder:n,state:s,appearance:a,isEditable:o,label:i,ariaLabel:l,helperText:c,error:d,onBlur:u,onKeyDown:f,rows:m=10,cols:h=35,...y})=>{const x=E.useId(),v=`${x}-helper`,_=d?"danger":s,w=c||!!d,C=T=>{r?.(T.target.value)},b={wrapper:"smp-textarea-wrapper",container:`smp-textarea ${t?"smp-textarea-disabled":""} ${n?"smp-textarea-placeholder":""} ${_?`smp-textarea-${_}`:""} ${a?`smp-textarea-${a}`:""} ${o?"":"smp-textarea-readOnly"}`};return p.jsxs("div",{className:b.wrapper,"data-component":"textarea",children:[i&&p.jsx(De,{htmlFor:x,label:i,disabled:t,helper:y.helper}),p.jsx("textarea",{id:x,value:e,placeholder:n,onChange:C,onBlur:u,className:b.container,disabled:t,readOnly:!o,onKeyDown:f,"aria-label":i?void 0:l,"aria-labelledby":i?x:void 0,"aria-describedby":w?v:void 0,rows:m,cols:h}),w&&p.jsx(en,{id:v,helperText:d,disabled:t,state:_})]})};var Wt=(t=>(t.PAGE_DIRECTION="pageDirection",t.LINE_DIRECTION="lineDirection",t))(Wt||{});const Pe={"smp-radio":"_smp-radio_1fqe8_1","smp-radio-options-container":"_smp-radio-options-container_1fqe8_10","smp-radio-horizontal":"_smp-radio-horizontal_1fqe8_16","smp-radio-element":"_smp-radio-element_1fqe8_20","smp-radio-disabled":"_smp-radio-disabled_1fqe8_26","smp-radio-horizontal-grid":"_smp-radio-horizontal-grid_1fqe8_32"},na=({disabled:t=!1,displayMode:e="DescOnly",RadLay:r=Wt.PAGE_DIRECTION,RadCol:n,options:s,onOptionsRequest:a,fun:o,label:i,...l})=>{const[c,d]=E.useState(s),u=E.useId();E.useEffect(()=>{!c&&a&&o&&a(o,void 0).then(b=>d(Ue(b))).catch(b=>{console.error("Error during loading options (radio)",b)})},[c,a,o]);const f=parseInt(n??"",10),m=r===Wt.LINE_DIRECTION,h=m&&!isNaN(f),y=h?Pe["smp-radio-horizontal-grid"]:m?Pe["smp-radio-horizontal"]:"",x=h?{gridTemplateColumns:`repeat(${f}, 1fr)`}:void 0,v={container:Pe["smp-radio"],optionsContainer:`${Pe["smp-radio-options-container"]} ${y}`,option:`${Pe["smp-radio-element"]} ${t?Pe["smp-radio-disabled"]:""}`},_=()=>{t||l.onBlur?.()},w=b=>{t||l.onChange?.(b.obj.k,b.decode)},C=E.useId();return p.jsxs("div",{"smp-id":"radio-container",className:v.container,id:u,children:[i&&p.jsx(De,{label:i,disabled:t,htmlFor:u,helper:l.helper}),p.jsx("div",{className:v.optionsContainer,style:x,children:c?.map((b,T)=>p.jsxs("label",{className:v.option,children:[p.jsx("input",{type:"radio",name:C,value:b.obj.k,disabled:t,checked:b.obj.k===l.bindValue,onChange:()=>w(b),onBlur:_}),p.jsx(Re,{variant:"body",bindValue:Ke(b.obj.k,b.decode,e)})]},T))})]})},sa=({value:t,onChange:e,targetRef:r,isOpen:n})=>{const s=E.useRef(null);E.useEffect(()=>{n&&s?.current&&s.current.focus()},[n,s]);const[a,o,i]=t,l=c=>Array.from({length:c},(d,u)=>p.jsx("option",{value:u,children:u.toString().padStart(2,"0")},u));return p.jsxs("div",{className:"smp-timepicker-widget",ref:r,children:[p.jsx("select",{value:a,ref:s,onChange:c=>e(+c.target.value,o,i),id:"time-picker-hours",children:l(24)}),":",p.jsx("select",{value:o,onChange:c=>e(a,+c.target.value,i),id:"time-picker-minutes",children:l(60)}),":",p.jsx("select",{value:i||0,onChange:c=>e(a,o,+c.target.value),id:"time-picker-seconds",children:l(60)})]})},Wr=t=>{const e=t.match(/^(\d{1,2}):(\d{1,2})(?::(\d{1,2}))?$/);if(!e)return!1;const[,r,n,s]=e,a=parseInt(r,10),o=parseInt(n,10),i=s?parseInt(s,10):0;return a>=0&&a<=23&&o>=0&&o<=59&&(s===void 0||i>=0&&i<=59)},aa=t=>{const e=t.split(":").map(r=>parseInt(r,10));return[e[0]||0,e[1]||0,e[2]||0]},oa=(t,e,r)=>{const n=t!=null&&!isNaN(t)?t.toString().padStart(2,"0"):"",s=e!=null&&!isNaN(e)?e.toString().padStart(2,"0"):"",a=r!=null&&!isNaN(r)?r.toString().padStart(2,"0"):"";return n&&s?`${n}:${s}:${a}`:s?`${s}:${a}`:a},ia=({bindValue:t,placeholder:e="HH:MM:SS",onChange:r,isEditable:n=!0,...s})=>{const a=E.useRef(null),[o,i]=E.useState(!1),[l,c]=E.useState(t||""),[d,u]=E.useState(""),{anchorRef:f,targetRef:m}=je({position:"bottom",enabled:o}),h=E.useCallback(()=>{i(!1),a?.current?.focus()},[]);Je([m,f],o,()=>i(!1)),Qt(o,m),E.useEffect(()=>{const b=t||"",T=Wr(b)?b:t||"";c(b),u(T)},[t]),E.useEffect(()=>{const b=T=>{T.key==="Escape"&&i(!1)};return o&&document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}},[o]);const y=()=>{n&&i(b=>!b)},x=b=>{u(b)},v=(b,T,F)=>{const U=oa(b,T,F);c(U),u(U),r?.(U),h()},_=()=>{C(d)},w=b=>{b.key==="Enter"&&(b.preventDefault(),C(d))},C=b=>{if(b.trim()===""){c(""),u(""),r?.("");return}Wr(b)?(c(b),u(b),r?.(b)):u(b)};return p.jsxs("div",{"data-component":"time-picker",children:[p.jsx(ve,{...s,bindValue:d,placeholder:e,onChange:x,onBlur:_,onKeyDown:w,shapeIcon:"clock",onShapeIconClick:y,isEditable:n,ref:f,inputRef:a}),o&&p.jsx(Oe,{children:p.jsx(sa,{value:aa(l),onChange:v,targetRef:m,isOpen:o})})]})};function la(t){return typeof t=="string"&&/^\d{6}$/.test(t)}class vt{class;time;constructor(e,r){this.class=e,this.time=r}static fromDataObj(e){const r=Yr.get(`${e.t}${e.p}`);if(r)return new vt(e,r.legacyToIso(e.k));throw new Error(`time creation from ${e.t}${e.p} not implemented yet`)}getLegacyValue(){const e=Yr.get(`${this.class.t}${this.class.p}`);if(e)return e.isoToLegacy(this.time);throw new Error(`Time object not implemented ${this.class.t}${this.class.p}`)}getValue(){return this.time}}const Yr=new Map([["I12",{legacyToIso(t){return la(t)&&`${t.substring(0,2)}:${t.substring(2,4)}:${t.substring(4,6)}`||t},isoToLegacy(t){return t.replaceAll(":","")||t}}]]),ca={"smp-cell-wrapper":"_smp-cell-wrapper_mdlkz_1"},le=t=>t==null?!1:typeof t=="string"?t.toLocaleLowerCase()=="yes"||t.toLocaleLowerCase()=="true":t,un=({bindValue:t,disabled:e=!1,label:r,displayMode:n="DescOnly",BtoVer:s="false",options:a,onOptionsRequest:o,fun:i,helper:l,...c})=>{const[d,u]=E.useState(a),f=E.useId(),m=y=>{e||c.onChange?.(y.obj.k,y.decode)};E.useEffect(()=>{!d&&o&&i&&o(i,void 0).then(y=>u(Ue(y))).catch(y=>{console.error("Error during loading options (button group)",y)})},[d,o,i]);const h={container:`smp-button-group-container ${le(s)?"smp-button-group-vertical":""}`,optionsContainer:`smp-button-group-options-container ${le(s)?"smp-button-group-vertical":""}`};return p.jsxs("div",{"smp-id":"buttonGroup-container",className:h.container,id:f,children:[r&&p.jsx(De,{label:r,disabled:e,htmlFor:f,helper:l}),p.jsx("div",{className:h.optionsContainer,children:d?.map(y=>p.jsx(fe,{appearance:"raised",variant:"base",active:t===y.obj.k,onClick:()=>m(y),bindValue:y.obj.k,optionalDisplayValue:Ke(y.obj.k,y.decode,n),disabled:e,justify:le(s)?"start":"center",icon:y.icon,buttonExt:`oneButton-${le(s)?"vertical":"horizontal"}`},y.obj.k))})]})};function Me(t){return!!t&&"children"in t}function it(t){return!Me(t)}const Se={"smp-row":"_smp-row_qr95z_2","smp-row-data":"_smp-row-data_qr95z_15","smp-row-selected":"_smp-row-selected_qr95z_26","smp-row-clickable":"_smp-row-clickable_qr95z_36","smp-row-indent":"_smp-row-indent_qr95z_41","smp-row-toggle":"_smp-row-toggle_qr95z_47","smp-row-icon":"_smp-row-icon_qr95z_52","smp-row-wrapperCell":"_smp-row-wrapperCell_qr95z_58","smp-row-leftSection":"_smp-row-leftSection_qr95z_65","smp-row-node-label":"_smp-row-node-label_qr95z_73"},tr=({row:t,columns:e,columnWidths:r={},level:n=0,rowHeight:s=26,offsetTop:a,enableSelection:o,isSelected:i=!1,onToggleSelect:l,onRowClick:c,onNodeClick:d,onContextMenu:u})=>{const[f,m]=E.useState(Me(t)),h=Me(t)&&!!t.children?.length,y=t.cells&&Object.keys(t.cells).length>0,x=h,v=n*16,_=()=>{h&&m(!f)},w={content:`${Se["smp-row"]} ${it(t)?Se["smp-row-data"]:""} ${Me(t)?Se["smp-row-clickable"]:""} ${i?Se["smp-row-selected"]:""}`,toggle:`${Se["smp-row-toggle"]} ${Se["smp-row-icon"]}`,indent:`${Se["smp-row-indent"]}`,cell:`${Se["smp-row-wrapperCell"]}`,leftSection:`${Se["smp-row-leftSection"]}`,nodeLabel:Se["smp-row-node-label"]},C=j=>{let O=j.shape;return j.shape==="ACP"||j.shape==="CMB"||j.shape==="ITX"?O="LBL":j.shape==="AML"&&(O="CHI"),p.jsx(Le,{...j,shape:O,onContextMenu:u,data:{...j.data,isOptimized:!0}})},b=()=>p.jsx("span",{className:w.toggle,children:x&&p.jsx(ae,{icon:f?"arrow_drop_right":"arrow_drop_down",width:16})}),T=(j,O)=>p.jsx("span",{className:w.toggle,children:p.jsx(ae,{icon:j,placeholderIcon:O,width:16})}),F=()=>p.jsx("span",{className:w.indent,style:{width:`${v}px`},"aria-hidden":"true"}),U=()=>{if(l)return p.jsx(wt,{bindValue:i,onChange:()=>{l()}})},M=()=>{const j=it(t)?"":t.decode||(y?"":"Untitled"),O=a??s*n,A={height:`${s}px`,lineHeight:`calc(${s}px - 2*2px)`,...it(t)&&{transform:`translateY(${O}px)`}};return p.jsxs("tr",{className:w.content,onClick:_,role:Me(t)?"button":"row","aria-expanded":h?!f:void 0,style:A,children:[o&&p.jsx("td",{className:w.cell,style:{height:`${s}px`,minWidth:40,justifyContent:"center"},children:U()}),Me(t)&&p.jsxs("td",{className:w.leftSection,style:{height:`${s}px`},onClick:()=>d?.(t),children:[F(),b(),t.icon&&T(t.icon,t.placeholderIcon),p.jsx("span",{className:w.nodeLabel,children:j})]}),e&&e.length>0?e.filter(k=>k.visible!==!1).map((k,K)=>{const q=t.cells?.[k.name];return q?p.jsx("td",{className:w.cell,onClick:()=>{c?.(t,k.name)},style:{width:r[k.name],minWidth:r[k.name],height:`${s}px`},children:C({...q,id:k.name})},k.name+K):null}):t.cells&&Object.entries(t.cells).map(([k,K])=>{const q=t.cells?.[k];return q?p.jsx("td",{className:w.cell,style:{height:`${s}px`},children:C({...q,id:k})},k+K):null})]})},R=()=>f||!h||it(t)?null:p.jsx(p.Fragment,{children:t.children?.map((j,O)=>p.jsx(tr,{row:j,level:n+1,columns:e,columnWidths:r,onNodeClick:()=>d?.(j),onContextMenu:u},`child-${O}`))});return p.jsxs(p.Fragment,{children:[M(),R()]})},ua={"smp-tree":"_smp-tree_19u9h_1"},da=({fun:t,onOptionsRequest:e,onClick:r})=>{const[n,s]=E.useState(void 0);E.useEffect(()=>{!n&&e&&t&&e(t,void 0).then(o=>s(Ue(o))).catch(o=>{console.error("Errore nel caricamento delle opzioni per il Tree",o)})},[n,t,e]);const a={table:ua["smp-tree"]};return n&&n.length&&p.jsx("table",{className:a.table,children:p.jsx("tbody",{children:n.map((o,i)=>p.jsx(tr,{row:o,onNodeClick:r},i))})})},Le=({id:t,decode:e,shape:r,obj:n,data:s,icon:a,fun:o,placeholderIcon:i,label:l,helper:c,tooltip:d,options:u,inputSettings:f,onChange:m,onClick:h,onEnter:y,onBlur:x,onOptionsRequest:v,onContextMenu:_,isEditable:w,dSep:C=".",value:b})=>{const T={obj:{...n,k:f?.forceUppercase?n.k.toLocaleUpperCase():n.k},shape:r,decode:e,icon:a,fun:o,data:s},F=()=>rs(T.obj)?"INR":Tr(T.obj)?"CAL":r,U=T.data&&T.data.size&&T.data.size>=256&&(F()==="ITX"||!F())?"MEM":F(),M=e||b,R={id:t,onBlur:x,onOptionsRequest:v,fun:o,icon:a,placeholderIcon:i,tooltip:d,label:l,helper:c,isEditable:w,size:T.data&&T.data.size?T.data.size:20,isOptimized:T.data?.isOptimized,...s},j=(I,P,N)=>Tr(n)?$e(I,new ht(n,P).getLegacyValue()):ns(n)?$e(I,new vt(n,P).getLegacyValue()):f?.forceUppercase?$e(I,P.toLocaleUpperCase(),N):$e(I,P,N),O=(I,P)=>$e(I,new ze(n,P,C).getLegacyValue()),A=I=>$e(T,new pt(n,I).getLegacyValue()),k=I=>ta(T,I),K=()=>{switch(U){case te.AUTOCOMPLETE:{const I={...R,bindValue:T.obj.k,optionalDisplayValue:M,onChange:(P,N)=>{m?.(j(T,P,N))}};return p.jsx(Jt,{...I})}case te.BUTTON:{const I=s?.label&&typeof s.label=="string"?s.label:void 0,P={...R,bindValue:I||"",showText:!!I,title:M,onClick:()=>{h?.(j(T,n.k))}};return p.jsx(fe,{...P})}case te.BUTTON_LIST:{const I={...R,options:u,onClick:(P,N)=>{const g={...T,fun:N};h?.(j(g,P))}};return p.jsx(on,{...I})}case te.CHIP:{const I={...R,elements:Br(T)};return p.jsx(Xt,{...I})}case te.CHECKBOX:case te.SWITCH:{const I=r===te.SWITCH,P={...R,bindValue:pt.fromDataObj(n).getValue(),optionalDisplayValue:M,onChange:N=>{m?.(A(N))},...I&&{variant:"switch"}};return p.jsx(wt,{...P})}case te.COMBOBOX:{const I={...R,bindValue:T.obj.k,optionalDisplayValue:M,onChange:(P,N)=>{m?.(j(T,P,N))}};return p.jsx(yt,{...I})}case te.DATE:{const I={...R,bindValue:ht.fromDataObj(n).getValue(),onChange:P=>{m?.(j(T,P))}};return p.jsx(er,{...I})}case te.ICON:case te.IMAGE:{const I={...R,icon:a,isInteractable:!!R.fun,onClick:()=>{h?.(j(T,n.k))}};return p.jsx(ae,{...I})}case te.INPUT_NUMBER:{const I={...R,bindValue:ze.fromDataObj(n,C).getValue(),onChange:P=>{m?.(O(T,P))}};return p.jsx(cn,{...I})}case te.EDITOR:case te.MEMO:{const I={...R,bindValue:n.k,optionalDisplayValue:M,onChange:P=>{m?.(j(T,P))}};return p.jsx(ra,{...I})}case te.MULTI_AUTOCOMPLETE:{const I={...R,elements:Br(T),onChange:P=>{m?.(k(P))}};return p.jsx(Zs,{...I})}case te.MULTI_CONFIG:{const I={...R,bindValue:l||"",showText:!!l,title:M,icon:a??"list",onClick:()=>{h?.(j(T,n.k))}};return p.jsx(fe,{...I})}case te.PASSWORD:{const I={...R,bindValue:T.obj.k,onChange:P=>{m?.(j(T,P))}};return p.jsx(ln,{...I})}case te.RADIO:{const I={...R,bindValue:n.k,onChange:(P,N)=>{m?.(j(T,P,N))}};return p.jsx(na,{...I})}case te.SPOTLIGHT:{const I={...R,bindValue:T.obj.k,onEnter:P=>{y?.(j(T,P))},onChange:(P,N)=>{m?.(j(T,P,N))}};return p.jsx(ea,{...I})}case te.TEXT_FIELD:{const I={...R,bindValue:T.obj.k,optionalDisplayValue:M,onChange:P=>{m?.(j(T,P))}};return p.jsx(ve,{...I})}case te.BUTTON_GROUP:{const I={...R,bindValue:n.k,onChange:(P,N)=>{m?.(j(T,P,N))}};return p.jsx(un,{...I})}case te.TIME:{const I={...R,bindValue:vt.fromDataObj(n).getValue(),onChange:P=>{m?.(j(T,P))}};return p.jsx(ia,{...I})}case te.TREE:{const I={...R,onClick:P=>{h?.(P)}};return p.jsx(da,{...I})}default:{const I={...R,bindValue:T.obj.k,optionalDisplayValue:M};return p.jsx(Zt,{...I})}}},q={wrapper:`${ca["smp-cell-wrapper"]}`};return p.jsx("span",{className:q.wrapper,onContextMenu:I=>{_&&d&&(I.preventDefault(),_(T,I.currentTarget))},children:K()})},fa=({data:t,onClick:e,onEnter:r,onContextMenu:n})=>{const[s,a]=E.useState(),o=E.useCallback(i=>{if(!i.rows?.length||!i.columns?.length)return{};const l=i.rows[0];return i.columns.filter(c=>c.visible).reduce((c,d)=>{const u=l.cells[d.name],f={...u,id:d.name,onChange:m=>{a(h=>h&&{...h,[d.name]:{...h[d.name],obj:{...h[d.name].obj,k:m.obj.k}}})},onClick:()=>{u.fun&&e&&e({...u})},onEnter:m=>{r&&r(m)},onContextMenu:(m,h)=>{n&&n(m,h)}};return{...c,[d.name]:f}},{})},[e,r,n]);return E.useEffect(()=>{t&&a(o(t))},[t,o]),!t?.rows?.length||!t.columns?.length?null:s&&p.jsx("header",{className:"smp-appbar","aria-label":"App Bar",children:p.jsx(ft,{layout:t.rows[0].layout,children:Object.values(s).map(i=>p.jsx(Le,{...i}))})})},pa=({data:t,logo:e,open:r,minifiedOnClose:n=!0,customHeight:s="100vh",onClick:a,onEnter:o,onClose:i,loadOptions:l,onContextMenu:c})=>{const[d,u]=E.useState(),[f,m]=E.useState(r??!0),h=E.useRef(null),y=s.trim()?s:"100vh",x=E.useCallback(C=>{if(!C?.rows?.length||!C?.columns?.length)return{};const b=C.rows[0];return C.columns.filter(T=>T.visible??!0).reduce((T,F)=>{const U=b.cells[F.name];if(!U||!f&&le(n)&&U.shape!==te.BUTTON&&U.shape!==te.BUTTON_LIST)return T;const M={...U,id:F.name,onOptionsRequest:l,onChange:R=>{u(j=>{const O={...j};return O?.[F.name]&&(O[F.name].obj.k=R.obj.k),O})},onClick:R=>{R.fun&&a&&a(R)},onEnter:R=>{o&&o(R)},onContextMenu:(R,j)=>{c&&c(R,j)}};return!f&&le(n)&&(M.data={...M.data,showText:!1,justify:"center",squared:!0}),{...T,[F.name]:M}},{})},[f,n,a,o,l,c]),v=E.useCallback(()=>{i?.()},[i]),_=()=>{le(n)?m(C=>!C):(m(!1),i?.())};if(E.useEffect(()=>{u(x(t))},[t]),E.useEffect(()=>{if(!h.current)return;if(!le(n)){u(x(t));return}const C=getComputedStyle(h.current).getPropertyValue("--smp-drawer-slide-transition");let b=Number(C);C.endsWith("ms")?b=parseFloat(C):C.endsWith("s")&&(b=parseFloat(C)*1e3),setTimeout(()=>{u(x(t))},b/2)},[f,n]),E.useEffect(()=>{r!==void 0&&!le(n)&&m(r)},[n,r]),!t?.rows?.length||!t.columns?.length)return null;const w={drawer:`smp-drawer ${le(n)?"smp-drawer-minified":"smp-drawer-fixed"} ${f?"smp-drawer-open":""} ${!le(n)&&!f?"smp-drawer-no-border":""}`,container:"smp-drawer-container",containerHeader:"smp-drawer-container-header",containerIcon:`${f?"":"smp-drawer-container-icon-close"} smp-drawer-container-icon`,containerLayout:"smp-drawer-container-layout",containerLogo:"smp-drawer-container-logo",backdrop:`smp-drawer-backdrop ${f?"smp-drawer-backdrop-open":""}`};return d&&p.jsxs(p.Fragment,{children:[!le(n)&&p.jsx("div",{"aria-hidden":"true","aria-label":"drawer-backdrop",className:w.backdrop,onClick:v}),p.jsx("aside",{ref:h,className:w.drawer,style:{height:y},"aria-label":"Drawer","smp-id":"drawer",children:p.jsxs("div",{className:w.container,children:[p.jsxs("div",{className:w.containerHeader,children:[e&&p.jsx("div",{className:w.containerLogo,children:p.jsx(ae,{icon:e,title:"drawer_logo",width:"100%",height:24})}),p.jsx("div",{className:w.containerIcon,children:p.jsx(ae,{icon:le(n)?"menu_close":"close",title:"drawer_icon",rotated:!f,isInteractable:!0,onClick:_,width:20,height:20})})]}),p.jsx("div",{className:w.containerLayout,children:p.jsx(ft,{layout:t.rows[0].layout,children:Object.values(d).map(C=>p.jsx(Le,{...C}))})})]})})]})},ha=({ColumnsNumber:t=1,data:e={},ForceText:r,TextColName:n,TextColor:s="var(--smp-dashList-color-base)",Fillspace:a,FontSize:o,Horizontal:i,ForceIcon:l,IconColName:c,IconColor:d="var(--smp-dashList-color-base)",NumberFormat:u,ForceUM:f,UmColName:m,UmColor:h="var(--smp-dashList-color-base)",ForceValue:y,ValueColName:x,ValueColor:v="var(--smp-dashList-color-base)",SelectLayout:_="1",onClick:w})=>{const C="N/A",b=e?.columns||[],T=e?.rows||[],F=T.length>0,U="--smp-dashList-color",M="smp-layout",R="descr",j="icon",O="um",A="value",k=o||"1em",K="18px",q="--smp-dashList-columns",I="--smp-dashList-fontSize",P={dash:(z="1")=>{const ee=g(z),Y=ee,X=S(ee,R),ie=S(ee,j),de=S(ee,O),oe=S(ee,A);return{container:Y,descr:X,icon:ie,um:de,value:oe}},dashList:`smp-dash-list ${le(a)?"smp-dash-list-fill-space":""}
|
|
50
|
-
${le(i)?"smp-dash-list-horizontal":""}`},{format:N}=Ce(),g=z=>`${M}-${z}`,S=(z,ee)=>`${z}__${ee}`,$=z=>`${U}-${z}`,D=z=>{const ee=/R(\d{1,3})G(\d{1,3})B(\d{1,3})/;if(ee.test(z)){const X=z.match(ee)||[];if(X?.length>3)return"rgb("+X[1]+","+X[2]+","+X[3]+")"}return z},L=z=>{if(!u)return z;const[ee,Y]=V(u).map(be=>parseInt(be||"0")),X="0,0"+(Y?"."+"0".repeat(Y):""),ie=N(z,X,"it");if(!ee)return ie;const[de,oe]=ie.split(",");return de+(oe?`,${oe}`:"")},V=z=>z.includes(";")?z.split(";"):[z],G=z=>{const ee=X=>{if(X)return z?.cells[X]?.obj.k},Y=X=>{if(!(b.length<=X))return z?.cells[b[X].name]?.obj?.k};return{descr:r||ee(n)||Y(2)||"",icon:l||ee(c)||Y(3)||"",um:f||ee(m)||Y(1)||"",value:y||ee(x)||Y(0)||""}},H=z=>{w?.(z)},W=(z,ee)=>{(z.key==="Enter"||z.key===" ")&&(z.preventDefault(),z.stopPropagation(),H(ee))},J=(z=>{const ee=P.dash(z);return{className:ee,descr:Y=>p.jsx("div",{className:ee.descr,children:Y},`${z}-${R}`),icon:Y=>p.jsx("div",{className:ee.icon,children:p.jsx(ae,{color:d,height:K,icon:Y,width:K})},`${z}-${j}`),um:Y=>p.jsx("div",{className:ee.um,children:Y},`${z}-${O}`),value:Y=>p.jsx("div",{className:ee.value,children:Y},`${z}-${A}`)}})(_),se=z=>{const{descr:ee,icon:Y,um:X,value:ie}=G(z),de={[$(R)]:D(s),[$(O)]:D(h),[$(A)]:D(v)},oe=[],be=L(ie);switch(_){case"2":Y&&oe.push(J.icon(Y)),oe.push(J.descr(ee)),oe.push(J.value(X?be+" "+X:be));break;default:case"1":oe.push(J.descr(ee)),oe.push(J.value(X?be+" "+X:be))}return p.jsx("div",{className:J.className.container,role:"button",style:de,tabIndex:0,onClick:()=>H(z),onKeyDown:St=>W(St,z),children:oe},z.rowId)},B={[q]:String(t),[I]:k};return p.jsx("div",{className:P.dashList,style:B,children:F?T.map(z=>se(z)):C})},dn={"smp-table":"_smp-table_v715o_1"};function ma(t,e){const r=new Set(t);return r.has(e)?r.delete(e):r.add(e),r}function ga(t,e){return t.map(r=>{const n=e.find(s=>s.column===r.bindValue);return{column:r.bindValue,visible:n?.visible??!0}})}function ba(t,e,r,n){const s=[];let a=0;return o(t,0,[]),{flatRows:s,offset:a};function o(u,f,m){if(f>=e.length){d(u);return}const h=e[f].column,y=i(u,h);for(const[x,v]of y){const _=[...m,x],w=l(_,f),C=n.has(w);s.push(c(x,w,f,C)),a+=r,C&&o(v,f+1,_)}}function i(u,f){const m=new Map;for(const h of u){const y=(h.cells[f]?.decode||h.cells[f]?.value)??"N/D";m.has(y)||m.set(y,[]),m.get(y).push(h)}return m}function l(u,f){return`group-${u.join("-")}-${f}`}function c(u,f,m,h){return{isGroup:!0,value:u,cells:{},id:f,level:m,isExpanded:h}}function d(u){for(const f of u)s.push(f),a+=r}}const ya=({columns:t,rows:e,containerRef:r,sizingMode:n})=>{const[s,a]=E.useState({}),o=3,i=7;return E.useEffect(()=>{if(!(!t||t.length===0)){if(n==="fixed"){const c=Object.fromEntries(t.map(d=>[d.name,120]));a(c)}else if(n==="fit-grid"){const l=r.current?.offsetWidth||800,c=t.filter(f=>f.visible!==!1),d=l/c.length,u=Object.fromEntries(c.map(f=>[f.name,d]));a(u)}else if(n==="fit-content"){const l={};for(const c of t){if(!c.visible)continue;const d=c.title?.length+o*2||0,u=Math.max(...e.map(f=>`${f.cells?.[c.name]?.decode||f.cells?.[c.name]?.value||""}`.length),d);l[c.name]=u*i+24}a(l)}}},[t,e,r,n]),[s,a]};function va(t,e){return t.map(r=>({id:r.name,label:r.title,type:"string"}))}function Gr(t,e){return t?typeof t=="object"&&"logic"in t&&"filters"in t?t:typeof t=="string"?xa(t,e):{logic:"and",filters:[]}:{logic:"and",filters:[]}}function xa(t,e){const r=t.split("|").map(s=>s.trim()).filter(Boolean),n=[];for(const s of r){const a=wa(s,e);a&&n.push(a)}return{logic:"and",filters:n}}function wa(t,e){if(!t.trim())return null;if(t.includes(";OR;")){const n=t.split(";OR;").map(l=>l.trim()).filter(Boolean);if(n.length===0)return null;const s=Nt(n[0],e);if(!s)return null;const a=s.field,o=s.columnsType,i=n.slice(1).map(l=>Nt(l,e,a.id,o)).filter(l=>l!==null);return{logic:"or",filters:[s,...i]}}else{const n=Nt(t,e);return n?{logic:"and",filters:[n]}:null}}function Nt(t,e,r,n){const s=t.split(";").map(u=>u.trim());let a,o,i;if(s.length===3)[a,o,i]=s;else if(s.length===2&&r&&n)[o,i]=s,a=r;else return null;const l=e.find(u=>u.id===a)??(r&&n?{id:r,label:r,type:n}:void 0);if(!l)throw new Error(`Campo '${a}' non trovato nei FieldOption.`);const c={...ct,obj:{t:"",p:"",k:o}},d=Sa(i,l.type);return{field:l,columnsType:l.type,operator:c,value:d}}function Sa(t,e){switch(e){case"number":return Number(t);case"date":return new Date(t);default:return t}}function Ea(t,e){return!e||"filters"in e&&e.filters.length===0?t:t.filter(r=>fn(e,r))}function fn(t,e){if("filters"in t){const{logic:r,filters:n}=t;if(n.length===0)return!0;const s=n.map(a=>fn(a,e));return r==="and"?s.every(Boolean):s.some(Boolean)}return Ca(t,e)}function Ca(t,e){const{field:r,operator:n,value:s,columnsType:a}=t,o=e.cells?.[r.id],i=Ta(o);if(i==null)return!1;switch(a){case"string":return _a(i,n.obj.k,s);case"number":return Oa(i,n.obj.k,s);case"date":return ja(i,n.obj.k,s);default:return!1}}function Ta(t){if(t==null||typeof t!="object")return t;if("value"in t)return t.value;if("decode"in t)return t.decode}function _a(t,e,r){const n=String(t).toLowerCase(),s=String(r).toLowerCase();switch(e.toLowerCase()){case"contains":return n.includes(s);case"starts":return n.startsWith(s);case"eq":return n===s;case"neq":return n!==s;default:return!1}}function Oa(t,e,r){const n=Number(t),s=Number(r);if(isNaN(n)||isNaN(s))return!1;switch(e.toLowerCase()){case"eq":return n===s;case"neq":return n!==s;case"gt":return n>s;case"lt":return n<s;case"gte":return n>=s;case"lte":return n<=s;default:return!1}}function ja(t,e,r){const n=new Date(t),s=new Date(r);if(isNaN(n.getTime())||isNaN(s.getTime()))return!1;switch(e.toLowerCase()){case"eq":case"on":return n.toDateString()===s.toDateString();case"after":return n>s;case"before":return n<s;case"onorafter":return n>=s;case"onorbefore":return n<=s;default:return!1}}const Ra=(t,e)=>{const r=n=>n.filters.some(s=>"filters"in s?r(s):s.field.id===t&&s.operator&&s.value!=="");return r(e)},Da=t=>{const e=r=>r.filters.reduce((n,s)=>"filters"in s?n+e(s):n+1,0);return e(t)};function ka(t,e){const r=E.useRef(null),n=E.useCallback(o=>{r.current=o},[]),s=E.useCallback(o=>{o.preventDefault(),o.dataTransfer.dropEffect="move"},[]),a=E.useCallback(o=>{const i=r.current;if(!i||i===o)return;const l=t.findIndex(f=>f.name===i),c=t.findIndex(f=>f.name===o);if(l===-1||c===-1)return;const d=[...t],[u]=d.splice(l,1);d.splice(c,0,u),e(d),r.current=null},[t,e]);return{handleDragStart:n,handleDragOver:s,handleDrop:a}}function pn(t,e,r){const s=t.columns.find(o=>o.name===e)?.obj?.t,a=[...t.rows].sort((o,i)=>{const l=o.cells[e]?.obj?.k,c=i.cells[e]?.obj?.k;if(l==null&&c!=null)return r==="asc"?1:-1;if(l!=null&&c==null)return r==="asc"?-1:1;if(l==null&&c==null)return 0;switch(s){case"NR":{const d=Number(l),u=Number(c);return r==="asc"?d-u:u-d}case"DATE":{const d=new Date(l),u=new Date(c);return r==="asc"?d.getTime()-u.getTime():u.getTime()-d.getTime()}default:return r==="asc"?String(l).localeCompare(String(c)):String(c).localeCompare(String(l))}});return{...t,rows:a}}function Na(t){const[e,r]=E.useState(null),[n,s]=E.useState("asc");return{sortedRows:E.useMemo(()=>e?pn({...t,rows:t.rows},e,n).rows:t.rows,[t,e,n]),sortBy:e,sortOrder:n,handleSort:i=>{r(l=>l===i?(s(c=>c==="asc"?"desc":"asc"),i):(s("asc"),i))}}}const $a=({columns:t,columnWidths:e})=>p.jsx("tfoot",{children:p.jsx("tr",{children:t.map(r=>r.visible&&p.jsx("td",{className:dn["smp-headerCell"],style:{width:e[r.name],minWidth:e[r.name],maxWidth:e[r.name]}},r.name))})}),La=({label:t,rowHeight:e=28,offsetTop:r=0,level:n=0,onClick:s,isExpanded:a})=>{const o={tr:"smp-groupRow-tr",td:"smp-groupRow-td"};return p.jsx("tr",{className:o.tr,style:{height:e,top:r,lineHeight:`${e}px`},onClick:s,children:p.jsxs("td",{className:o.td,style:{paddingLeft:10+n*20},children:[p.jsx(ae,{icon:a?"arrow_drop_down":"arrow_drop_right",width:16}),p.jsx(Re,{variant:"title",bindValue:t})]})})};function Aa(t){return t.split("|")}function Ia(t,e){return t.columns.map(r=>({...r,visible:e.includes(r.name)}))}const Ve={"smp-filter-wrapper":"_smp-filter-wrapper_1dest_1","smp-filter-group":"_smp-filter-group_1dest_10","smp-filter-row":"_smp-filter-row_1dest_18","smp-filter-list":"_smp-filter-list_1dest_24","smp-filter-toolbar":"_smp-filter-toolbar_1dest_31","smp-filter-actionButtons":"_smp-filter-actionButtons_1dest_41"},Pa=({filter:t,onChange:e,onDelete:r,fieldOptions:n,hasCurrentColumn:s})=>{const{translate:a}=Ce(),o={string:ut([{id:"st",label:a(ye.STRING_STARTS)},{id:"contains",label:a(ye.STRING_CONTAINS)},{id:"eq",label:a(ye.STRING_EQUALS)}]),number:ut([{id:"eq",label:a(ye.NUMBER_EQUALS)},{id:"gt",label:a(ye.NUMBER_GREATER)},{id:"ge",label:a(ye.NUMBER_GREATER_OR_EQUAL)},{id:"lt",label:a(ye.NUMBER_LESS)},{id:"le",label:a(ye.NUMBER_LESS_OR_EQUAL)}]),date:ut([{id:"before",label:"Prima di"},{id:"after",label:"Dopo il"},{id:"on",label:"Il giorno"}])},i=f=>{const m=n.find(y=>y.id===f);if(!m)return;const h=o[m.type]?.[0]||{obj:{t:"",p:"",k:""},decode:"",shape:void 0};e({...t,field:m,columnsType:m.type,operator:h,value:""})},l=f=>{const m=o[t.columnsType]?.find(h=>h.obj.k===f);m&&e({...t,operator:m})},c=f=>{e({...t,value:f})},d=()=>{switch(t.columnsType){case"string":return p.jsx(ve,{bindValue:t.value,onChange:c});case"number":return p.jsx(cn,{bindValue:t.value,onChange:c});case"date":return p.jsx(er,{bindValue:t.value,onChange:c})}},u={row:`${Ve["smp-filter-row"]}`};return p.jsxs("div",{className:u.row,children:[!s&&p.jsx(yt,{bindValue:t.field.id,optionalDisplayValue:t.field.label,options:n.map(f=>({obj:{t:"",p:"",k:f.id},decode:f.label,shape:void 0})),onChange:i,listDisplayMode:nt.BOTH,displayMode:nt.DESC_ONLY,isEditable:!0}),p.jsx(yt,{bindValue:t.operator.obj.k,optionalDisplayValue:t.operator.decode,options:o[t.columnsType],onChange:l,listDisplayMode:nt.DESC_ONLY,displayMode:nt.DESC_ONLY,isEditable:!0}),d(),p.jsx(fe,{bindValue:"",showText:!1,label:"Delete",onClick:r,appearance:"ghost",variant:"base",icon:"delete"})]})},hn=({group:t,onChange:e,onDelete:r,onClose:n,level:s=0,fieldOptions:a,hasSubGroups:o=!0,hasSubFilters:i=!0,currentColumnName:l,hasButtonGroup:c=!0})=>{const{translate:d}=Ce(),u=(v,_)=>{const w=[...t.filters];w[v]=_,e({...t,filters:w})},f=v=>{const _=[...t.filters];_.splice(v,1),e({...t,filters:_})},m=()=>{const v=a[0],_={...ct},w={field:v,columnsType:v?.type||"string",operator:_,value:""};e({...t,filters:[...t.filters,w]})},h=()=>{let v;if(l){const w=a.find(b=>b.id===l),C={...ct};v={field:w||a[0]||"",columnsType:w?.type||a[0]?.type||"string",operator:C,value:""}}else{const w={...ct};v={field:a[0]||"",columnsType:a[0]?.type||"string",operator:w,value:""}}const _={logic:"and",filters:[v]};e({...t,filters:[...t.filters,_]})},y=v=>{e({...t,logic:v})},x={filterGroup:`${Ve["smp-filter-group"]}`,filterToolbar:`${Ve["smp-filter-toolbar"]}`,filterList:`${Ve["smp-filter-list"]}`,actionButtons:`${Ve["smp-filter-actionButtons"]}`};return p.jsxs("div",{className:x.filterGroup,style:s!=0?{marginLeft:20}:void 0,"data-component":s===0?"filter":void 0,children:[p.jsxs("div",{className:x.filterToolbar,children:[c&&p.jsx(un,{options:ut([{id:"and",label:"AND"},{id:"or",label:"OR"}]),bindValue:t.logic,onChange:y}),p.jsxs("div",{className:x.actionButtons,children:[i&&p.jsx(fe,{onClick:m,bindValue:d(ye.ADD_FILTER),icon:"plus",appearance:"outlined",variant:"base"}),o&&p.jsx(fe,{onClick:h,bindValue:d(ye.ADD_SUB_GROUP),icon:"plus",appearance:"outlined",variant:"base"}),r&&p.jsx(fe,{bindValue:"",showText:!1,label:"Delete",onClick:r,appearance:"outlined",variant:"base",icon:"delete"}),n&&p.jsx(fe,{bindValue:d(_e.CLOSE),showText:!0,label:"Delete",onClick:n,icon:"close",appearance:"outlined",variant:"base"})]})]}),p.jsx("div",{className:x.filterList,children:t.filters.map((v,_)=>({filter:v,index:_})).filter(({filter:v})=>l?"logic"in v?v.filters.some(_=>"logic"in _?!1:_.field.id===l):v.field.id===l:!0).map(({filter:v,index:_})=>"logic"in v?p.jsx(hn,{group:v,onChange:w=>u(_,w),onDelete:()=>f(_),level:s+1,fieldOptions:a,hasSubGroups:!1,hasSubFilters:!0,currentColumnName:l,hasButtonGroup:!0},_):p.jsx(Pa,{filter:v,onChange:w=>u(_,w),onDelete:()=>f(_),fieldOptions:a,hasCurrentColumn:!!l},_))})]})},qr=({filters:t,onChange:e,fieldOptions:r,hasSubGroups:n,hasSubFilters:s,ref:a,currentColumnName:o,hasButtonGroup:i,onClose:l})=>{const c={filterWrapper:`${Ve["smp-filter-wrapper"]}`};return p.jsx("div",{className:c.filterWrapper,ref:a,children:p.jsx(hn,{group:t,onChange:e,fieldOptions:r,hasSubFilters:s,hasSubGroups:n,currentColumnName:o,hasButtonGroup:i,onClose:l})})},Fa=({groups:t=[],isDraggable:e=!0,isEditable:r=!0,onChange:n,onDrop:s,onDragOver:a})=>{const o=t.map(i=>({bindValue:i.column}));return p.jsxs("th",{className:"smp-groupBar-container",onDragOver:a,onDrop:s,children:[p.jsx(ae,{icon:"groups"}),p.jsx(Xt,{elements:o,isEditable:r,isDraggable:e,displayMode:"CodeOnly",onChange:n})]})},Ne={"smp-headerCell":"_smp-headerCell_laepr_1","smp-headerCell-container":"_smp-headerCell-container_laepr_9","smp-headerCell-iconNotification":"_smp-headerCell-iconNotification_laepr_16","smp-resizer":"_smp-resizer_laepr_34","smp-datatable-toolbar":"_smp-datatable-toolbar_laepr_52","smp-datatable-filter":"_smp-datatable-filter_laepr_53"},Ma=({columns:t,columnWidths:e,groups:r,groupState:n,showGroupBar:s,showFilter:a,filterColumn:o,activeFilters:i,fieldOptions:l,Filter:c,enableSelection:d,allVisibleRowsSelected:u,sortBy:f,sortOrder:m,onToggleFilter:h,onToggleColumnFilter:y,onFiltersChange:x,onResetFilters:v,onGroupChange:_,onGroupDrop:w,onGroupDragOver:C,onMouseDown:b,onToggleAllRows:T,onSort:F,onDragStart:U,onDragOver:M,onDrop:R})=>{const j=E.useRef({}),{anchorRef:O,targetRef:A}=je({position:"bottom",enabled:a}),{anchorRef:k,targetRef:K}=je({position:"bottom",enabled:o!==null}),q=E.useCallback(N=>Ra(N,i),[i]),I=E.useMemo(()=>Da(i),[i]),P={headerCell:`${Ne["smp-headerCell"]}`,headerCellContainer:`${Ne["smp-headerCell-container"]}`,resizer:`${Ne["smp-resizer"]}`,datatableToolbar:`${Ne["smp-datatable-toolbar"]} ${Ne["smp-headerCell-"]}`,datatableFilter:`${Ne["smp-datatable-filter"]}`};return p.jsxs("thead",{children:[p.jsxs("tr",{className:P.datatableToolbar,children:[p.jsx("th",{children:p.jsxs("div",{ref:O,className:P.datatableFilter,children:[p.jsx(fe,{onClick:h,bindValue:`${I}`,label:a?"Nascondi filtri":"Mostra filtri",icon:"filter_list",variant:"base"}),(c||I>0)&&p.jsx(p.Fragment,{children:p.jsx(fe,{onClick:v,bindValue:"Reset",icon:"cancel",appearance:"ghost",variant:"base",label:"Rimuovi tutti i filtri"})})]})}),(r||s)&&p.jsx(Fa,{groups:n,onChange:_,onDrop:w,onDragOver:C})]}),a&&p.jsx(Oe,{children:p.jsx(qr,{filters:i,fieldOptions:l,onChange:x,hasSubGroups:!0,ref:A,hasSubFilters:!1,onClose:h})}),p.jsxs("tr",{children:[d&&p.jsx("th",{className:P.headerCell,style:{minWidth:40,justifyContent:"center"},children:p.jsx(wt,{bindValue:u,onChange:T})}),t&&t?.map(N=>N.visible&&p.jsx("th",{tabIndex:0,role:"columnheader",onClick:()=>F(N.name),onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),F(N.name))},onDragStart:()=>U(N.name),onDragOver:M,onDrop:()=>R(N.name),className:P.headerCell,style:{width:e[N.name],minWidth:e[N.name],maxWidth:e[N.name]},ref:g=>{j.current[N.name]=g,o===N.name&&g&&(typeof k=="function"?k(g):k&&"current"in k&&(k.current=g))},children:p.jsxs("div",{draggable:!0,onDragStart:g=>{g.dataTransfer.setData("text/plain",N.name)},className:P.headerCellContainer,children:[p.jsx(Re,{variant:"title",bindValue:N.title}),p.jsxs("div",{children:[f===N.name?p.jsx(ae,{icon:m==="asc"?"arrow-up":"arrow-down",isInteractable:!0}):p.jsx("span",{style:{minWidth:"1rem",minHeight:"1rem"}}),p.jsx("span",{className:`${q(N.name)?Ne["smp-headerCell-iconNotification"]:""}`,children:p.jsx(ae,{icon:"filter_list",onClick:g=>{y(N.name),g.stopPropagation()},tabIndex:0,isInteractable:!0})})]}),o===N.name&&p.jsx(Oe,{children:p.jsx(qr,{filters:i,fieldOptions:l.filter(g=>g.id===o),onChange:x,hasSubGroups:!0,ref:K,hasSubFilters:!1,currentColumnName:o,hasButtonGroup:!1,onClose:()=>y(N.name)})}),p.jsx("div",{className:P.resizer,onMouseDown:g=>{b(g,N.name)},role:"region"})]})},N.name))]})]})},Va=({data:t,lineHeight:e=28,TableHeight:r=400,groups:n,columnSizingMode:s="fit-content",ShowGroup:a="Yes",Filter:o,MultiSelect:i="No",Columns:l,onRowClick:c,onMultiSelectionChange:d,onContextMenu:u})=>{const[f,m]=E.useState(()=>t?{columns:l?Ia(t,Aa(l)):t.columns,rows:t.rows??[]}:{columns:[],rows:[]}),[h,y]=E.useState(n||[]),[x,v]=E.useState(new Set),[_,w]=E.useState(!1),[C,b]=E.useState(new Set),[T,F]=E.useState(null),U=E.useMemo(()=>va(t?.columns||[]),[t?.columns]),[M,R]=E.useState(()=>Gr(o,U)),j=E.useRef(null),[O,A]=ya({columns:f?.columns??[],rows:f?.rows??[],containerRef:j,sizingMode:s}),{handleDragStart:k,handleDragOver:K,handleDrop:q}=ka(f.columns,Y=>m(X=>({...X,columns:Y}))),I=E.useMemo(()=>{const Y=f.rows.map((X,ie)=>ie);return Y.every(X=>C.has(X))&&Y.length>0},[C,f.rows]),{sortBy:P,sortOrder:N,handleSort:g}=Na({...f,rows:f.rows}),{virtualItems:S,containerProps:$,innerProps:D}=tn({items:f?.rows??[],itemHeight:e,containerHeight:r,overscan:5});E.useEffect(()=>{if(le(i)&&d){const Y=Array.from(C).map(X=>f.rows[X]).filter(Boolean);d(Y)}},[C,i,f.rows,d]),E.useEffect(()=>{let Y=t?.rows??[];M?.filters?.length>0&&(Y=Ea(Y,M));let X=Y;P&&(X=pn({...t??{columns:[],rows:[]},rows:Y},P,N).rows);let ie=X;if(h?.length&&X.length>0){const{flatRows:de}=ba(X,h,e,x);ie=de}m(de=>({...de,rows:ie}))},[t,h,x,e,M,P,N]);const L=E.useCallback(Y=>{R(Y)},[]),V=E.useCallback(()=>{R(Gr(o,U))},[o,U]),G=E.useCallback(()=>{w(Y=>!Y)},[]),H=E.useCallback(Y=>{F(X=>X===Y?null:Y)},[]),W=Y=>{y(ga(Y,h))},Z=Y=>{Y.preventDefault();const X=Y.dataTransfer.getData("text/plain");if(!X||h.some(oe=>oe.column===X))return;const de=[...h,{column:X,visible:!0}];y(de)},J=Y=>{Y.preventDefault()},se=(Y,X)=>{const ie=Y.clientX,de=O[X],oe=St=>{const mn=St.clientX-ie,gn=Math.max(50,de+mn);A(bn=>({...bn,[X]:gn}))},be=()=>{window.removeEventListener("mousemove",oe),window.removeEventListener("mouseup",be)};window.addEventListener("mousemove",oe),window.addEventListener("mouseup",be)},B=Y=>{b(X=>{const ie=new Set(X);return Y.every(oe=>ie.has(oe))?Y.forEach(oe=>ie.delete(oe)):Y.forEach(oe=>ie.add(oe)),ie})},z=()=>{const Y=f.rows.map((X,ie)=>ie);B(Y)},ee={smpTable:`${dn["smp-table"]}`};return f&&p.jsx("div",{className:ee.smpTable,...$,ref:j,children:p.jsxs("table",{children:[p.jsx(Ma,{columns:f.columns,columnWidths:O,groups:n,groupState:h,showGroupBar:le(a),showFilter:_,filterColumn:T,activeFilters:M,fieldOptions:U,Filter:o,enableSelection:le(i),allVisibleRowsSelected:I,sortBy:P,sortOrder:N,onToggleFilter:G,onToggleColumnFilter:H,onFiltersChange:L,onResetFilters:V,onGroupChange:W,onGroupDrop:Z,onGroupDragOver:J,onMouseDown:se,onToggleAllRows:z,onSort:g,onDragStart:k,onDragOver:K,onDrop:q}),p.jsx("tbody",{...D,children:S.map(({item:Y,index:X,offsetTop:ie})=>{const de=Y.id||Y.value||`${Y.isGroup?"group":"row"}-${X}`;return Y.isGroup?p.jsx(La,{label:Y.value||"",rowHeight:e,offsetTop:ie,level:Y.level,onClick:()=>{const oe=Y.id;oe&&v(be=>ma(be,oe))},isExpanded:Y.isExpanded},`group-${de}`):p.jsx(tr,{row:Y,columns:f.columns,columnWidths:O,rowHeight:e,offsetTop:ie,isGroup:!1,enableSelection:le(i),isSelected:C.has(X),onToggleSelect:()=>{B([X])},onRowClick:c,onContextMenu:u},`row-${de}`)})}),p.jsx($a,{columns:f.columns,columnWidths:O})]})})},Ua=({data:t,Type:e,ShowSubmit:r=!1,SubmitPosition:n="Right",DefaultValue:s,Label:a,LabelPosition:o="Left",Helper:i,onBlur:l,onClick:c,onOptionsRequest:d})=>{const[u,f]=E.useState();E.useEffect(()=>{f(()=>{if(!t)return;const x={...t};return e&&(x.shape=e),x.shape==null&&(x.shape=te.TEXT_FIELD),s&&(x.obj=ss(s)),x})},[t,s,e]);const h={container:`smp-field-container ${le(r)?`smp-field-position-${n}`:""}`},y=()=>{le(r)||l?.(u)};if(u)return p.jsxs("div",{className:h.container,children:[p.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px",font:"var(--smp-fontLabel-base)"},children:p.jsx(Le,{...u,id:"FLD",onChange:f,onOptionsRequest:d,fun:t?.fun,onBlur:y,label:a,labelPosition:o,helper:i})}),le(r)&&p.jsx(fe,{optionalDisplayValue:"Confirm",onClick:()=>c?.(u),bindValue:"Confirm"})]})},Yt="command-submit",$t=(t,e)=>({before:t,after:{type:"SmeupDataTable",columns:JSON.parse(JSON.stringify(t.columns)),rows:[{cells:JSON.parse(JSON.stringify(e)),id:"1"}]}}),Hr=(t,e,r)=>{if(!t.rows?.length||!t.columns?.length)return{};const n=t.rows?.[0];return t.columns.filter(s=>s.visible??!0).reduce((s,a)=>{const o={...n.cells[a.name],id:a.name,label:a.title,dSep:e,helper:a.helper,data:{...n.cells[a.name].data,dSep:e}};return o.isEditable==null&&(o.isEditable=!0),r&&(o.isEditable=!1),o.isEditable&&o.shape==null&&(o.shape=te.TEXT_FIELD),{...s,[a.name]:o}},{})},Ba={"smp-form":"_smp-form_9ox03_1"},Wa=({data:t,id:e,readOnly:r=!1,hiddenSubmitButton:n=!1,updateOnClick:s=!1,decimalSeparator:a=".",autoFocus:o,autoSkip:i,optionsHandler:l,onSubmit:c,onCheck:d,onCheckObj:u,onContextMenu:f,onButtonClick:m})=>{const h=E.useRef(!1),y=E.useRef([]),[x,v]=E.useState(()=>Hr(t,a,r)),{translate:_}=Ce(),w=E.useId(),C=E.useRef(null);E.useEffect(()=>{const j=C.current;if(!j)return;const O=A=>{T(A.detail.id)};return j.addEventListener(Yt,O),()=>{j.removeEventListener(Yt,O)}},[]),E.useEffect(()=>{h.current?v(Hr(t,a,r)):(h.current=!0,C.current&&C.current.querySelectorAll('[type="text"]').forEach(O=>{O instanceof HTMLInputElement&&y.current.push(O)}))},[t]),E.useEffect(()=>{o&&C.current&&y.current.length>0&&y.current[0].focus()},[o]);const b=(j,O)=>{if(v(A=>({...A,[j]:{...A[j],obj:{...A[j].obj,k:O.obj.k},decode:O.decode,data:{...A[j].data,error:void 0},value:O.obj.k}})),s&&(O.shape==te.CHECKBOX||O.shape==te.SWITCH)){const A=structuredClone(x);A[j].obj.k=O.obj.k,A[j].value=O.obj.k,c({value:$t(t,A),cell:j})}if(i&&O.data?.maxLength&&O.data.maxLength<=O.obj.k.length){const A=y.current.findIndex(k=>k.name==j);A<y.current.length-1&&y.current[A+1].focus()}},T=j=>{const O=$t(t,x);c({value:O,cell:j})},F=(j,O)=>{m?.({cellId:j,currentState:{type:"SmeupDataTable",columns:t.columns,rows:[{cells:x,id:"1"}]},fun:O||""})},U=async j=>{if(x[j].obj.k!=t.rows[0].cells[j].obj.k&&(x[j].inputSettings?.checkObject&&u&&((await u({obj:x[j].obj,fun:x[j].fun,cellId:j})).valid||v(A=>({...A,[j]:{...A[j],data:{...A[j].data,error:_(_e.CHECK_OBJECT_WRONG_VALIDATION)}}}))),x[j].inputSettings?.checkValueOnExit)){const O=$t(t,x);d?.({value:O,cell:j})}},M=t.setup?.commands?.map((j,O)=>E.createElement(Le,{...j,decode:j.value,data:{label:j.value},id:`command-${O}`,key:`command-${O}`,shape:te.BUTTON,onClick:()=>T(j.obj.k)}))||[];n||M.unshift(p.jsx(Le,{decode:_(_e.CONFIRM_BUTTON),shape:te.BUTTON,id:"",obj:{t:"",p:"",k:""},data:{submit:!0,label:_(_e.CONFIRM_BUTTON)}},"submit-command"));const R={smpForm:`${Ba["smp-form"]}`};return x&&p.jsxs("form",{"data-component":"input-panel",className:R.smpForm,id:e||w,onSubmit:j=>{j.preventDefault(),T()},ref:C,role:"form",children:[p.jsx(ft,{layout:t.rows[0].layout,children:Object.values(x).map(j=>p.jsx(Le,{...j,onOptionsRequest:j.fun?async(O,A)=>await l(O,A,t,j.id):void 0,onChange:O=>b(j.id,O),onBlur:()=>U(j.id),onContextMenu:f,onClick:()=>{(j.shape=="BTN"||j.shape=="CFM")&&F(j.id,j.fun)},data:{...j.data,autocomplete:"off"}}))}),M.length>0&&p.jsx(ft,{layout:{sections:[{id:"1",horizontal:!0,justify:"start",content:M.map(j=>({id:j.props.id}))}]},children:M})]})};exports.AppBar=fa;exports.Autocomplete=Jt;exports.Button=fe;exports.ButtonList=on;exports.Checkbox=wt;exports.Combobox=yt;exports.DashList=ha;exports.DataTableComponent=Va;exports.DatePicker=er;exports.Drawer=pa;exports.Field=Ua;exports.INPUT_PANEL_COMMAND_SUBMIT_EVENT_NAME=Yt;exports.Icon=ae;exports.InputPanel=Wa;exports.Password=ln;exports.TabBar=rn;exports.Textfield=ve;exports.configurePaths=Yn;
|
|
50
|
+
${le(i)?"smp-dash-list-horizontal":""}`},{format:N}=Ce(),g=z=>`${M}-${z}`,S=(z,ee)=>`${z}__${ee}`,$=z=>`${U}-${z}`,D=z=>{const ee=/R(\d{1,3})G(\d{1,3})B(\d{1,3})/;if(ee.test(z)){const X=z.match(ee)||[];if(X?.length>3)return"rgb("+X[1]+","+X[2]+","+X[3]+")"}return z},L=z=>{if(!u)return z;const[ee,Y]=V(u).map(be=>parseInt(be||"0")),X="0,0"+(Y?"."+"0".repeat(Y):""),ie=N(z,X,"it");if(!ee)return ie;const[de,oe]=ie.split(",");return de+(oe?`,${oe}`:"")},V=z=>z.includes(";")?z.split(";"):[z],G=z=>{const ee=X=>{if(X)return z?.cells[X]?.obj.k},Y=X=>{if(!(b.length<=X))return z?.cells[b[X].name]?.obj?.k};return{descr:r||ee(n)||Y(2)||"",icon:l||ee(c)||Y(3)||"",um:f||ee(m)||Y(1)||"",value:y||ee(x)||Y(0)||""}},H=z=>{w?.(z)},W=(z,ee)=>{(z.key==="Enter"||z.key===" ")&&(z.preventDefault(),z.stopPropagation(),H(ee))},J=(z=>{const ee=P.dash(z);return{className:ee,descr:Y=>p.jsx("div",{className:ee.descr,children:Y},`${z}-${R}`),icon:Y=>p.jsx("div",{className:ee.icon,children:p.jsx(ae,{color:d,height:K,icon:Y,width:K})},`${z}-${j}`),um:Y=>p.jsx("div",{className:ee.um,children:Y},`${z}-${O}`),value:Y=>p.jsx("div",{className:ee.value,children:Y},`${z}-${A}`)}})(_),se=z=>{const{descr:ee,icon:Y,um:X,value:ie}=G(z),de={[$(R)]:D(s),[$(O)]:D(h),[$(A)]:D(v)},oe=[],be=L(ie);switch(_){case"2":Y&&oe.push(J.icon(Y)),oe.push(J.descr(ee)),oe.push(J.value(X?be+" "+X:be));break;default:case"1":oe.push(J.descr(ee)),oe.push(J.value(X?be+" "+X:be))}return p.jsx("div",{className:J.className.container,role:"button",style:de,tabIndex:0,onClick:()=>H(z),onKeyDown:St=>W(St,z),children:oe},z.rowId)},B={[q]:String(t),[I]:k};return p.jsx("div",{className:P.dashList,style:B,children:F?T.map(z=>se(z)):C})},dn={"smp-table":"_smp-table_v715o_1"};function ma(t,e){const r=new Set(t);return r.has(e)?r.delete(e):r.add(e),r}function ga(t,e){return t.map(r=>{const n=e.find(s=>s.column===r.bindValue);return{column:r.bindValue,visible:n?.visible??!0}})}function ba(t,e,r,n){const s=[];let a=0;return o(t,0,[]),{flatRows:s,offset:a};function o(u,f,m){if(f>=e.length){d(u);return}const h=e[f].column,y=i(u,h);for(const[x,v]of y){const _=[...m,x],w=l(_,f),C=n.has(w);s.push(c(x,w,f,C)),a+=r,C&&o(v,f+1,_)}}function i(u,f){const m=new Map;for(const h of u){const y=(h.cells[f]?.decode||h.cells[f]?.value)??"N/D";m.has(y)||m.set(y,[]),m.get(y).push(h)}return m}function l(u,f){return`group-${u.join("-")}-${f}`}function c(u,f,m,h){return{isGroup:!0,value:u,cells:{},id:f,level:m,isExpanded:h}}function d(u){for(const f of u)s.push(f),a+=r}}const ya=({columns:t,rows:e,containerRef:r,sizingMode:n})=>{const[s,a]=E.useState({}),o=3,i=7;return E.useEffect(()=>{if(!(!t||t.length===0)){if(n==="fixed"){const c=Object.fromEntries(t.map(d=>[d.name,120]));a(c)}else if(n==="fit-grid"){const l=r.current?.offsetWidth||800,c=t.filter(f=>f.visible!==!1),d=l/c.length,u=Object.fromEntries(c.map(f=>[f.name,d]));a(u)}else if(n==="fit-content"){const l={},c=[...e].sort(()=>.5-Math.random()).slice(0,100),d=e.slice(0,100).concat(c);for(const u of t){if(!u.visible)continue;const f=u.title?.length+o*2||0,m=Math.max(f,...d.map(h=>{const y=h.cells?.[u.name];return`${y?.decode??y?.value??""}`.length}));l[u.name]=m*i+24}a(l)}}},[t,e,r,n]),[s,a]};function va(t,e){return t.map(r=>({id:r.name,label:r.title,type:"string"}))}function Gr(t,e){return t?typeof t=="object"&&"logic"in t&&"filters"in t?t:typeof t=="string"?xa(t,e):{logic:"and",filters:[]}:{logic:"and",filters:[]}}function xa(t,e){const r=t.split("|").map(s=>s.trim()).filter(Boolean),n=[];for(const s of r){const a=wa(s,e);a&&n.push(a)}return{logic:"and",filters:n}}function wa(t,e){if(!t.trim())return null;if(t.includes(";OR;")){const n=t.split(";OR;").map(l=>l.trim()).filter(Boolean);if(n.length===0)return null;const s=Nt(n[0],e);if(!s)return null;const a=s.field,o=s.columnsType,i=n.slice(1).map(l=>Nt(l,e,a.id,o)).filter(l=>l!==null);return{logic:"or",filters:[s,...i]}}else{const n=Nt(t,e);return n?{logic:"and",filters:[n]}:null}}function Nt(t,e,r,n){const s=t.split(";").map(u=>u.trim());let a,o,i;if(s.length===3)[a,o,i]=s;else if(s.length===2&&r&&n)[o,i]=s,a=r;else return null;const l=e.find(u=>u.id===a)??(r&&n?{id:r,label:r,type:n}:void 0);if(!l)throw new Error(`Campo '${a}' non trovato nei FieldOption.`);const c={...ct,obj:{t:"",p:"",k:o}},d=Sa(i,l.type);return{field:l,columnsType:l.type,operator:c,value:d}}function Sa(t,e){switch(e){case"number":return Number(t);case"date":return new Date(t);default:return t}}function Ea(t,e){return!e||"filters"in e&&e.filters.length===0?t:t.filter(r=>fn(e,r))}function fn(t,e){if("filters"in t){const{logic:r,filters:n}=t;if(n.length===0)return!0;const s=n.map(a=>fn(a,e));return r==="and"?s.every(Boolean):s.some(Boolean)}return Ca(t,e)}function Ca(t,e){const{field:r,operator:n,value:s,columnsType:a}=t,o=e.cells?.[r.id],i=Ta(o);if(i==null)return!1;switch(a){case"string":return _a(i,n.obj.k,s);case"number":return Oa(i,n.obj.k,s);case"date":return ja(i,n.obj.k,s);default:return!1}}function Ta(t){if(t==null||typeof t!="object")return t;if("value"in t)return t.value;if("decode"in t)return t.decode}function _a(t,e,r){const n=String(t).toLowerCase(),s=String(r).toLowerCase();switch(e.toLowerCase()){case"contains":return n.includes(s);case"starts":return n.startsWith(s);case"eq":return n===s;case"neq":return n!==s;default:return!1}}function Oa(t,e,r){const n=Number(t),s=Number(r);if(isNaN(n)||isNaN(s))return!1;switch(e.toLowerCase()){case"eq":return n===s;case"neq":return n!==s;case"gt":return n>s;case"lt":return n<s;case"gte":return n>=s;case"lte":return n<=s;default:return!1}}function ja(t,e,r){const n=new Date(t),s=new Date(r);if(isNaN(n.getTime())||isNaN(s.getTime()))return!1;switch(e.toLowerCase()){case"eq":case"on":return n.toDateString()===s.toDateString();case"after":return n>s;case"before":return n<s;case"onorafter":return n>=s;case"onorbefore":return n<=s;default:return!1}}const Ra=(t,e)=>{const r=n=>n.filters.some(s=>"filters"in s?r(s):s.field.id===t&&s.operator&&s.value!=="");return r(e)},Da=t=>{const e=r=>r.filters.reduce((n,s)=>"filters"in s?n+e(s):n+1,0);return e(t)};function ka(t,e){const r=E.useRef(null),n=E.useCallback(o=>{r.current=o},[]),s=E.useCallback(o=>{o.preventDefault(),o.dataTransfer.dropEffect="move"},[]),a=E.useCallback(o=>{const i=r.current;if(!i||i===o)return;const l=t.findIndex(f=>f.name===i),c=t.findIndex(f=>f.name===o);if(l===-1||c===-1)return;const d=[...t],[u]=d.splice(l,1);d.splice(c,0,u),e(d),r.current=null},[t,e]);return{handleDragStart:n,handleDragOver:s,handleDrop:a}}function pn(t,e,r){const s=t.columns.find(o=>o.name===e)?.obj?.t,a=[...t.rows].sort((o,i)=>{const l=o.cells[e]?.obj?.k,c=i.cells[e]?.obj?.k;if(l==null&&c!=null)return r==="asc"?1:-1;if(l!=null&&c==null)return r==="asc"?-1:1;if(l==null&&c==null)return 0;switch(s){case"NR":{const d=Number(l),u=Number(c);return r==="asc"?d-u:u-d}case"DATE":{const d=new Date(l),u=new Date(c);return r==="asc"?d.getTime()-u.getTime():u.getTime()-d.getTime()}default:return r==="asc"?String(l).localeCompare(String(c)):String(c).localeCompare(String(l))}});return{...t,rows:a}}function Na(t){const[e,r]=E.useState(null),[n,s]=E.useState("asc");return{sortedRows:E.useMemo(()=>e?pn({...t,rows:t.rows},e,n).rows:t.rows,[t,e,n]),sortBy:e,sortOrder:n,handleSort:i=>{r(l=>l===i?(s(c=>c==="asc"?"desc":"asc"),i):(s("asc"),i))}}}const $a=({columns:t,columnWidths:e})=>p.jsx("tfoot",{children:p.jsx("tr",{children:t.map(r=>r.visible&&p.jsx("td",{className:dn["smp-headerCell"],style:{width:e[r.name],minWidth:e[r.name],maxWidth:e[r.name]}},r.name))})}),La=({label:t,rowHeight:e=28,offsetTop:r=0,level:n=0,onClick:s,isExpanded:a})=>{const o={tr:"smp-groupRow-tr",td:"smp-groupRow-td"};return p.jsx("tr",{className:o.tr,style:{height:e,top:r,lineHeight:`${e}px`},onClick:s,children:p.jsxs("td",{className:o.td,style:{paddingLeft:10+n*20},children:[p.jsx(ae,{icon:a?"arrow_drop_down":"arrow_drop_right",width:16}),p.jsx(Re,{variant:"title",bindValue:t})]})})};function Aa(t){return t.split("|")}function Ia(t,e){return t.columns.map(r=>({...r,visible:e.includes(r.name)}))}const Ve={"smp-filter-wrapper":"_smp-filter-wrapper_1dest_1","smp-filter-group":"_smp-filter-group_1dest_10","smp-filter-row":"_smp-filter-row_1dest_18","smp-filter-list":"_smp-filter-list_1dest_24","smp-filter-toolbar":"_smp-filter-toolbar_1dest_31","smp-filter-actionButtons":"_smp-filter-actionButtons_1dest_41"},Pa=({filter:t,onChange:e,onDelete:r,fieldOptions:n,hasCurrentColumn:s})=>{const{translate:a}=Ce(),o={string:ut([{id:"st",label:a(ye.STRING_STARTS)},{id:"contains",label:a(ye.STRING_CONTAINS)},{id:"eq",label:a(ye.STRING_EQUALS)}]),number:ut([{id:"eq",label:a(ye.NUMBER_EQUALS)},{id:"gt",label:a(ye.NUMBER_GREATER)},{id:"ge",label:a(ye.NUMBER_GREATER_OR_EQUAL)},{id:"lt",label:a(ye.NUMBER_LESS)},{id:"le",label:a(ye.NUMBER_LESS_OR_EQUAL)}]),date:ut([{id:"before",label:"Prima di"},{id:"after",label:"Dopo il"},{id:"on",label:"Il giorno"}])},i=f=>{const m=n.find(y=>y.id===f);if(!m)return;const h=o[m.type]?.[0]||{obj:{t:"",p:"",k:""},decode:"",shape:void 0};e({...t,field:m,columnsType:m.type,operator:h,value:""})},l=f=>{const m=o[t.columnsType]?.find(h=>h.obj.k===f);m&&e({...t,operator:m})},c=f=>{e({...t,value:f})},d=()=>{switch(t.columnsType){case"string":return p.jsx(ve,{bindValue:t.value,onChange:c});case"number":return p.jsx(cn,{bindValue:t.value,onChange:c});case"date":return p.jsx(er,{bindValue:t.value,onChange:c})}},u={row:`${Ve["smp-filter-row"]}`};return p.jsxs("div",{className:u.row,children:[!s&&p.jsx(yt,{bindValue:t.field.id,optionalDisplayValue:t.field.label,options:n.map(f=>({obj:{t:"",p:"",k:f.id},decode:f.label,shape:void 0})),onChange:i,listDisplayMode:nt.BOTH,displayMode:nt.DESC_ONLY,isEditable:!0}),p.jsx(yt,{bindValue:t.operator.obj.k,optionalDisplayValue:t.operator.decode,options:o[t.columnsType],onChange:l,listDisplayMode:nt.DESC_ONLY,displayMode:nt.DESC_ONLY,isEditable:!0}),d(),p.jsx(fe,{bindValue:"",showText:!1,label:"Delete",onClick:r,appearance:"ghost",variant:"base",icon:"delete"})]})},hn=({group:t,onChange:e,onDelete:r,onClose:n,level:s=0,fieldOptions:a,hasSubGroups:o=!0,hasSubFilters:i=!0,currentColumnName:l,hasButtonGroup:c=!0})=>{const{translate:d}=Ce(),u=(v,_)=>{const w=[...t.filters];w[v]=_,e({...t,filters:w})},f=v=>{const _=[...t.filters];_.splice(v,1),e({...t,filters:_})},m=()=>{const v=a[0],_={...ct},w={field:v,columnsType:v?.type||"string",operator:_,value:""};e({...t,filters:[...t.filters,w]})},h=()=>{let v;if(l){const w=a.find(b=>b.id===l),C={...ct};v={field:w||a[0]||"",columnsType:w?.type||a[0]?.type||"string",operator:C,value:""}}else{const w={...ct};v={field:a[0]||"",columnsType:a[0]?.type||"string",operator:w,value:""}}const _={logic:"and",filters:[v]};e({...t,filters:[...t.filters,_]})},y=v=>{e({...t,logic:v})},x={filterGroup:`${Ve["smp-filter-group"]}`,filterToolbar:`${Ve["smp-filter-toolbar"]}`,filterList:`${Ve["smp-filter-list"]}`,actionButtons:`${Ve["smp-filter-actionButtons"]}`};return p.jsxs("div",{className:x.filterGroup,style:s!=0?{marginLeft:20}:void 0,"data-component":s===0?"filter":void 0,children:[p.jsxs("div",{className:x.filterToolbar,children:[c&&p.jsx(un,{options:ut([{id:"and",label:"AND"},{id:"or",label:"OR"}]),bindValue:t.logic,onChange:y}),p.jsxs("div",{className:x.actionButtons,children:[i&&p.jsx(fe,{onClick:m,bindValue:d(ye.ADD_FILTER),icon:"plus",appearance:"outlined",variant:"base"}),o&&p.jsx(fe,{onClick:h,bindValue:d(ye.ADD_SUB_GROUP),icon:"plus",appearance:"outlined",variant:"base"}),r&&p.jsx(fe,{bindValue:"",showText:!1,label:"Delete",onClick:r,appearance:"outlined",variant:"base",icon:"delete"}),n&&p.jsx(fe,{bindValue:d(_e.CLOSE),showText:!0,label:"Delete",onClick:n,icon:"close",appearance:"outlined",variant:"base"})]})]}),p.jsx("div",{className:x.filterList,children:t.filters.map((v,_)=>({filter:v,index:_})).filter(({filter:v})=>l?"logic"in v?v.filters.some(_=>"logic"in _?!1:_.field.id===l):v.field.id===l:!0).map(({filter:v,index:_})=>"logic"in v?p.jsx(hn,{group:v,onChange:w=>u(_,w),onDelete:()=>f(_),level:s+1,fieldOptions:a,hasSubGroups:!1,hasSubFilters:!0,currentColumnName:l,hasButtonGroup:!0},_):p.jsx(Pa,{filter:v,onChange:w=>u(_,w),onDelete:()=>f(_),fieldOptions:a,hasCurrentColumn:!!l},_))})]})},qr=({filters:t,onChange:e,fieldOptions:r,hasSubGroups:n,hasSubFilters:s,ref:a,currentColumnName:o,hasButtonGroup:i,onClose:l})=>{const c={filterWrapper:`${Ve["smp-filter-wrapper"]}`};return p.jsx("div",{className:c.filterWrapper,ref:a,children:p.jsx(hn,{group:t,onChange:e,fieldOptions:r,hasSubFilters:s,hasSubGroups:n,currentColumnName:o,hasButtonGroup:i,onClose:l})})},Fa=({groups:t=[],isDraggable:e=!0,isEditable:r=!0,onChange:n,onDrop:s,onDragOver:a})=>{const o=t.map(i=>({bindValue:i.column}));return p.jsxs("th",{className:"smp-groupBar-container",onDragOver:a,onDrop:s,children:[p.jsx(ae,{icon:"groups"}),p.jsx(Xt,{elements:o,isEditable:r,isDraggable:e,displayMode:"CodeOnly",onChange:n})]})},Ne={"smp-headerCell":"_smp-headerCell_laepr_1","smp-headerCell-container":"_smp-headerCell-container_laepr_9","smp-headerCell-iconNotification":"_smp-headerCell-iconNotification_laepr_16","smp-resizer":"_smp-resizer_laepr_34","smp-datatable-toolbar":"_smp-datatable-toolbar_laepr_52","smp-datatable-filter":"_smp-datatable-filter_laepr_53"},Ma=({columns:t,columnWidths:e,groups:r,groupState:n,showGroupBar:s,showFilter:a,filterColumn:o,activeFilters:i,fieldOptions:l,Filter:c,enableSelection:d,allVisibleRowsSelected:u,sortBy:f,sortOrder:m,onToggleFilter:h,onToggleColumnFilter:y,onFiltersChange:x,onResetFilters:v,onGroupChange:_,onGroupDrop:w,onGroupDragOver:C,onMouseDown:b,onToggleAllRows:T,onSort:F,onDragStart:U,onDragOver:M,onDrop:R})=>{const j=E.useRef({}),{anchorRef:O,targetRef:A}=je({position:"bottom",enabled:a}),{anchorRef:k,targetRef:K}=je({position:"bottom",enabled:o!==null}),q=E.useCallback(N=>Ra(N,i),[i]),I=E.useMemo(()=>Da(i),[i]),P={headerCell:`${Ne["smp-headerCell"]}`,headerCellContainer:`${Ne["smp-headerCell-container"]}`,resizer:`${Ne["smp-resizer"]}`,datatableToolbar:`${Ne["smp-datatable-toolbar"]} ${Ne["smp-headerCell-"]}`,datatableFilter:`${Ne["smp-datatable-filter"]}`};return p.jsxs("thead",{children:[p.jsxs("tr",{className:P.datatableToolbar,children:[p.jsx("th",{children:p.jsxs("div",{ref:O,className:P.datatableFilter,children:[p.jsx(fe,{onClick:h,bindValue:`${I}`,label:a?"Nascondi filtri":"Mostra filtri",icon:"filter_list",variant:"base"}),(c||I>0)&&p.jsx(p.Fragment,{children:p.jsx(fe,{onClick:v,bindValue:"Reset",icon:"cancel",appearance:"ghost",variant:"base",label:"Rimuovi tutti i filtri"})})]})}),(r||s)&&p.jsx(Fa,{groups:n,onChange:_,onDrop:w,onDragOver:C})]}),a&&p.jsx(Oe,{children:p.jsx(qr,{filters:i,fieldOptions:l,onChange:x,hasSubGroups:!0,ref:A,hasSubFilters:!1,onClose:h})}),p.jsxs("tr",{children:[d&&p.jsx("th",{className:P.headerCell,style:{minWidth:40,justifyContent:"center"},children:p.jsx(wt,{bindValue:u,onChange:T})}),t&&t?.map(N=>N.visible&&p.jsx("th",{tabIndex:0,role:"columnheader",onClick:()=>F(N.name),onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&(g.preventDefault(),F(N.name))},onDragStart:()=>U(N.name),onDragOver:M,onDrop:()=>R(N.name),className:P.headerCell,style:{width:e[N.name],minWidth:e[N.name],maxWidth:e[N.name]},ref:g=>{j.current[N.name]=g,o===N.name&&g&&(typeof k=="function"?k(g):k&&"current"in k&&(k.current=g))},children:p.jsxs("div",{draggable:!0,onDragStart:g=>{g.dataTransfer.setData("text/plain",N.name)},className:P.headerCellContainer,children:[p.jsx(Re,{variant:"title",bindValue:N.title}),p.jsxs("div",{children:[f===N.name?p.jsx(ae,{icon:m==="asc"?"arrow-up":"arrow-down",isInteractable:!0}):p.jsx("span",{style:{minWidth:"1rem",minHeight:"1rem"}}),p.jsx("span",{className:`${q(N.name)?Ne["smp-headerCell-iconNotification"]:""}`,children:p.jsx(ae,{icon:"filter_list",onClick:g=>{y(N.name),g.stopPropagation()},tabIndex:0,isInteractable:!0})})]}),o===N.name&&p.jsx(Oe,{children:p.jsx(qr,{filters:i,fieldOptions:l.filter(g=>g.id===o),onChange:x,hasSubGroups:!0,ref:K,hasSubFilters:!1,currentColumnName:o,hasButtonGroup:!1,onClose:()=>y(N.name)})}),p.jsx("div",{className:P.resizer,onMouseDown:g=>{b(g,N.name)},role:"region"})]})},N.name))]})]})},Va=({data:t,lineHeight:e=28,TableHeight:r=400,groups:n,columnSizingMode:s="fit-content",ShowGroup:a="Yes",Filter:o,MultiSelect:i="No",Columns:l,onRowClick:c,onMultiSelectionChange:d,onContextMenu:u})=>{const[f,m]=E.useState(()=>t?{columns:l?Ia(t,Aa(l)):t.columns,rows:t.rows??[]}:{columns:[],rows:[]}),[h,y]=E.useState(n||[]),[x,v]=E.useState(new Set),[_,w]=E.useState(!1),[C,b]=E.useState(new Set),[T,F]=E.useState(null),U=E.useMemo(()=>va(t?.columns||[]),[t?.columns]),[M,R]=E.useState(()=>Gr(o,U)),j=E.useRef(null),[O,A]=ya({columns:f?.columns??[],rows:f?.rows??[],containerRef:j,sizingMode:s}),{handleDragStart:k,handleDragOver:K,handleDrop:q}=ka(f.columns,Y=>m(X=>({...X,columns:Y}))),I=E.useMemo(()=>{const Y=f.rows.map((X,ie)=>ie);return Y.every(X=>C.has(X))&&Y.length>0},[C,f.rows]),{sortBy:P,sortOrder:N,handleSort:g}=Na({...f,rows:f.rows}),{virtualItems:S,containerProps:$,innerProps:D}=tn({items:f?.rows??[],itemHeight:e,containerHeight:r,overscan:5});E.useEffect(()=>{if(le(i)&&d){const Y=Array.from(C).map(X=>f.rows[X]).filter(Boolean);d(Y)}},[C,i,f.rows,d]),E.useEffect(()=>{let Y=t?.rows??[];M?.filters?.length>0&&(Y=Ea(Y,M));let X=Y;P&&(X=pn({...t??{columns:[],rows:[]},rows:Y},P,N).rows);let ie=X;if(h?.length&&X.length>0){const{flatRows:de}=ba(X,h,e,x);ie=de}m(de=>({...de,rows:ie}))},[t,h,x,e,M,P,N]);const L=E.useCallback(Y=>{R(Y)},[]),V=E.useCallback(()=>{R(Gr(o,U))},[o,U]),G=E.useCallback(()=>{w(Y=>!Y)},[]),H=E.useCallback(Y=>{F(X=>X===Y?null:Y)},[]),W=Y=>{y(ga(Y,h))},Z=Y=>{Y.preventDefault();const X=Y.dataTransfer.getData("text/plain");if(!X||h.some(oe=>oe.column===X))return;const de=[...h,{column:X,visible:!0}];y(de)},J=Y=>{Y.preventDefault()},se=(Y,X)=>{const ie=Y.clientX,de=O[X],oe=St=>{const mn=St.clientX-ie,gn=Math.max(50,de+mn);A(bn=>({...bn,[X]:gn}))},be=()=>{window.removeEventListener("mousemove",oe),window.removeEventListener("mouseup",be)};window.addEventListener("mousemove",oe),window.addEventListener("mouseup",be)},B=Y=>{b(X=>{const ie=new Set(X);return Y.every(oe=>ie.has(oe))?Y.forEach(oe=>ie.delete(oe)):Y.forEach(oe=>ie.add(oe)),ie})},z=()=>{const Y=f.rows.map((X,ie)=>ie);B(Y)},ee={smpTable:`${dn["smp-table"]}`};return f&&p.jsx("div",{className:ee.smpTable,...$,ref:j,children:p.jsxs("table",{children:[p.jsx(Ma,{columns:f.columns,columnWidths:O,groups:n,groupState:h,showGroupBar:le(a),showFilter:_,filterColumn:T,activeFilters:M,fieldOptions:U,Filter:o,enableSelection:le(i),allVisibleRowsSelected:I,sortBy:P,sortOrder:N,onToggleFilter:G,onToggleColumnFilter:H,onFiltersChange:L,onResetFilters:V,onGroupChange:W,onGroupDrop:Z,onGroupDragOver:J,onMouseDown:se,onToggleAllRows:z,onSort:g,onDragStart:k,onDragOver:K,onDrop:q}),p.jsx("tbody",{...D,children:S.map(({item:Y,index:X,offsetTop:ie})=>{const de=Y.id||Y.value||`${Y.isGroup?"group":"row"}-${X}`;return Y.isGroup?p.jsx(La,{label:Y.value||"",rowHeight:e,offsetTop:ie,level:Y.level,onClick:()=>{const oe=Y.id;oe&&v(be=>ma(be,oe))},isExpanded:Y.isExpanded},`group-${de}`):p.jsx(tr,{row:Y,columns:f.columns,columnWidths:O,rowHeight:e,offsetTop:ie,isGroup:!1,enableSelection:le(i),isSelected:C.has(X),onToggleSelect:()=>{B([X])},onRowClick:c,onContextMenu:u},`row-${de}`)})}),p.jsx($a,{columns:f.columns,columnWidths:O})]})})},Ua=({data:t,Type:e,ShowSubmit:r=!1,SubmitPosition:n="Right",DefaultValue:s,Label:a,LabelPosition:o="Left",Helper:i,onBlur:l,onClick:c,onOptionsRequest:d})=>{const[u,f]=E.useState();E.useEffect(()=>{f(()=>{if(!t)return;const x={...t};return e&&(x.shape=e),x.shape==null&&(x.shape=te.TEXT_FIELD),s&&(x.obj=ss(s)),x})},[t,s,e]);const h={container:`smp-field-container ${le(r)?`smp-field-position-${n}`:""}`},y=()=>{le(r)||l?.(u)};if(u)return p.jsxs("div",{className:h.container,children:[p.jsx("div",{style:{display:"flex",flexDirection:"column",gap:"8px",font:"var(--smp-fontLabel-base)"},children:p.jsx(Le,{...u,id:"FLD",onChange:f,onOptionsRequest:d,fun:t?.fun,onBlur:y,label:a,labelPosition:o,helper:i})}),le(r)&&p.jsx(fe,{optionalDisplayValue:"Confirm",onClick:()=>c?.(u),bindValue:"Confirm"})]})},Yt="command-submit",$t=(t,e)=>({before:t,after:{type:"SmeupDataTable",columns:JSON.parse(JSON.stringify(t.columns)),rows:[{cells:JSON.parse(JSON.stringify(e)),id:"1"}]}}),Hr=(t,e,r)=>{if(!t.rows?.length||!t.columns?.length)return{};const n=t.rows?.[0];return t.columns.filter(s=>s.visible??!0).reduce((s,a)=>{const o={...n.cells[a.name],id:a.name,label:a.title,dSep:e,helper:a.helper,data:{...n.cells[a.name].data,dSep:e}};return o.isEditable==null&&(o.isEditable=!0),r&&(o.isEditable=!1),o.isEditable&&o.shape==null&&(o.shape=te.TEXT_FIELD),{...s,[a.name]:o}},{})},Ba={"smp-form":"_smp-form_9ox03_1"},Wa=({data:t,id:e,readOnly:r=!1,hiddenSubmitButton:n=!1,updateOnClick:s=!1,decimalSeparator:a=".",autoFocus:o,autoSkip:i,optionsHandler:l,onSubmit:c,onCheck:d,onCheckObj:u,onContextMenu:f,onButtonClick:m})=>{const h=E.useRef(!1),y=E.useRef([]),[x,v]=E.useState(()=>Hr(t,a,r)),{translate:_}=Ce(),w=E.useId(),C=E.useRef(null);E.useEffect(()=>{const j=C.current;if(!j)return;const O=A=>{T(A.detail.id)};return j.addEventListener(Yt,O),()=>{j.removeEventListener(Yt,O)}},[]),E.useEffect(()=>{h.current?v(Hr(t,a,r)):(h.current=!0,C.current&&C.current.querySelectorAll('[type="text"]').forEach(O=>{O instanceof HTMLInputElement&&y.current.push(O)}))},[t]),E.useEffect(()=>{o&&C.current&&y.current.length>0&&y.current[0].focus()},[o]);const b=(j,O)=>{if(v(A=>({...A,[j]:{...A[j],obj:{...A[j].obj,k:O.obj.k},decode:O.decode,data:{...A[j].data,error:void 0},value:O.obj.k}})),s&&(O.shape==te.CHECKBOX||O.shape==te.SWITCH)){const A=structuredClone(x);A[j].obj.k=O.obj.k,A[j].value=O.obj.k,c({value:$t(t,A),cell:j})}if(i&&O.data?.maxLength&&O.data.maxLength<=O.obj.k.length){const A=y.current.findIndex(k=>k.name==j);A<y.current.length-1&&y.current[A+1].focus()}},T=j=>{const O=$t(t,x);c({value:O,cell:j})},F=(j,O)=>{m?.({cellId:j,currentState:{type:"SmeupDataTable",columns:t.columns,rows:[{cells:x,id:"1"}]},fun:O||""})},U=async j=>{if(x[j].obj.k!=t.rows[0].cells[j].obj.k&&(x[j].inputSettings?.checkObject&&u&&((await u({obj:x[j].obj,fun:x[j].fun,cellId:j})).valid||v(A=>({...A,[j]:{...A[j],data:{...A[j].data,error:_(_e.CHECK_OBJECT_WRONG_VALIDATION)}}}))),x[j].inputSettings?.checkValueOnExit)){const O=$t(t,x);d?.({value:O,cell:j})}},M=t.setup?.commands?.map((j,O)=>E.createElement(Le,{...j,decode:j.value,data:{label:j.value},id:`command-${O}`,key:`command-${O}`,shape:te.BUTTON,onClick:()=>T(j.obj.k)}))||[];n||M.unshift(p.jsx(Le,{decode:_(_e.CONFIRM_BUTTON),shape:te.BUTTON,id:"",obj:{t:"",p:"",k:""},data:{submit:!0,label:_(_e.CONFIRM_BUTTON)}},"submit-command"));const R={smpForm:`${Ba["smp-form"]}`};return x&&p.jsxs("form",{"data-component":"input-panel",className:R.smpForm,id:e||w,onSubmit:j=>{j.preventDefault(),T()},ref:C,role:"form",children:[p.jsx(ft,{layout:t.rows[0].layout,children:Object.values(x).map(j=>p.jsx(Le,{...j,onOptionsRequest:j.fun?async(O,A)=>await l(O,A,t,j.id):void 0,onChange:O=>b(j.id,O),onBlur:()=>U(j.id),onContextMenu:f,onClick:()=>{(j.shape=="BTN"||j.shape=="CFM")&&F(j.id,j.fun)},data:{...j.data,autocomplete:"off"}}))}),M.length>0&&p.jsx(ft,{layout:{sections:[{id:"1",horizontal:!0,justify:"start",content:M.map(j=>({id:j.props.id}))}]},children:M})]})};exports.AppBar=fa;exports.Autocomplete=Jt;exports.Button=fe;exports.ButtonList=on;exports.Checkbox=wt;exports.Combobox=yt;exports.DashList=ha;exports.DataTableComponent=Va;exports.DatePicker=er;exports.Drawer=pa;exports.Field=Ua;exports.INPUT_PANEL_COMMAND_SUBMIT_EVENT_NAME=Yt;exports.Icon=ae;exports.InputPanel=Wa;exports.Password=ln;exports.TabBar=rn;exports.Textfield=ve;exports.configurePaths=Yn;
|
package/dist/ketchup2.es.js
CHANGED
|
@@ -6576,14 +6576,17 @@ const wa = ({
|
|
|
6576
6576
|
);
|
|
6577
6577
|
a(u);
|
|
6578
6578
|
} else if (n === "fit-content") {
|
|
6579
|
-
const l = {};
|
|
6580
|
-
for (const
|
|
6581
|
-
if (!
|
|
6582
|
-
const
|
|
6583
|
-
|
|
6584
|
-
d
|
|
6579
|
+
const l = {}, c = [...e].sort(() => 0.5 - Math.random()).slice(0, 100), d = e.slice(0, 100).concat(c);
|
|
6580
|
+
for (const u of t) {
|
|
6581
|
+
if (!u.visible) continue;
|
|
6582
|
+
const f = u.title?.length + o * 2 || 0, m = Math.max(
|
|
6583
|
+
f,
|
|
6584
|
+
...d.map((h) => {
|
|
6585
|
+
const y = h.cells?.[u.name];
|
|
6586
|
+
return `${y?.decode ?? y?.value ?? ""}`.length;
|
|
6587
|
+
})
|
|
6585
6588
|
);
|
|
6586
|
-
l[
|
|
6589
|
+
l[u.name] = m * i + 24;
|
|
6587
6590
|
}
|
|
6588
6591
|
a(l);
|
|
6589
6592
|
}
|
package/package.json
CHANGED