@sme.up/ketchup 11.0.0-SNAPSHOT-20241025123250 → 11.0.0-SNAPSHOT-20241028084747
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{f-cell-b2dccf6d.js → f-cell-0732e0d2.js} +7 -6
- package/dist/cjs/f-cell-0732e0d2.js.map +1 -0
- package/dist/cjs/ketchup.cjs.js +1 -1
- package/dist/cjs/kup-autocomplete_28.cjs.entry.js +7 -5
- package/dist/cjs/kup-autocomplete_28.cjs.entry.js.map +1 -1
- package/dist/cjs/kup-box.cjs.entry.js +1 -1
- package/dist/cjs/kup-cell.cjs.entry.js +1 -1
- package/dist/cjs/kup-image-list.cjs.entry.js +1 -1
- package/dist/cjs/kup-input-panel.cjs.entry.js +5 -5
- package/dist/cjs/kup-input-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/kup-date-picker/kup-date-picker.js +24 -2
- package/dist/collection/components/kup-date-picker/kup-date-picker.js.map +1 -1
- package/dist/collection/components/kup-input-panel/kup-input-panel.js +4 -4
- package/dist/collection/components/kup-input-panel/kup-input-panel.js.map +1 -1
- package/dist/collection/components/kup-time-picker/kup-time-picker.js +24 -2
- package/dist/collection/components/kup-time-picker/kup-time-picker.js.map +1 -1
- package/dist/collection/f-components/f-cell/f-cell.js +6 -5
- package/dist/collection/f-components/f-cell/f-cell.js.map +1 -1
- package/dist/components/kup-autocomplete2.js +14 -9
- package/dist/components/kup-autocomplete2.js.map +1 -1
- package/dist/components/kup-input-panel.js +4 -4
- package/dist/components/kup-input-panel.js.map +1 -1
- package/dist/esm/{f-cell-960082db.js → f-cell-5bf2115d.js} +7 -6
- package/dist/esm/f-cell-5bf2115d.js.map +1 -0
- package/dist/esm/ketchup.js +1 -1
- package/dist/esm/kup-autocomplete_28.entry.js +7 -5
- package/dist/esm/kup-autocomplete_28.entry.js.map +1 -1
- package/dist/esm/kup-box.entry.js +1 -1
- package/dist/esm/kup-cell.entry.js +1 -1
- package/dist/esm/kup-image-list.entry.js +1 -1
- package/dist/esm/kup-input-panel.entry.js +5 -5
- package/dist/esm/kup-input-panel.entry.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/ketchup/ketchup.esm.js +1 -1
- package/dist/ketchup/ketchup.esm.js.map +1 -1
- package/dist/ketchup/{p-1894934d.entry.js → p-0a0cbb17.entry.js} +2 -2
- package/dist/ketchup/p-0a0cbb17.entry.js.map +1 -0
- package/dist/ketchup/{p-69568081.entry.js → p-2d4db7e9.entry.js} +3 -3
- package/dist/ketchup/{p-69568081.entry.js.map → p-2d4db7e9.entry.js.map} +1 -1
- package/dist/ketchup/p-33e84dd7.js +2 -0
- package/dist/ketchup/p-33e84dd7.js.map +1 -0
- package/dist/ketchup/{p-033996ac.entry.js → p-346a60f6.entry.js} +2 -2
- package/dist/ketchup/{p-dbbc62c5.entry.js → p-8eaf9ea9.entry.js} +2 -2
- package/dist/ketchup/{p-073dc37e.entry.js → p-f4eabd6c.entry.js} +2 -2
- package/dist/types/components/kup-date-picker/kup-date-picker.d.ts +5 -0
- package/dist/types/components/kup-time-picker/kup-time-picker.d.ts +5 -0
- package/dist/types/components.d.ts +20 -0
- package/package.json +1 -1
- package/dist/cjs/f-cell-b2dccf6d.js.map +0 -1
- package/dist/esm/f-cell-960082db.js.map +0 -1
- package/dist/ketchup/p-1894934d.entry.js.map +0 -1
- package/dist/ketchup/p-f55c264d.js +0 -2
- package/dist/ketchup/p-f55c264d.js.map +0 -1
- /package/dist/ketchup/{p-033996ac.entry.js.map → p-346a60f6.entry.js.map} +0 -0
- /package/dist/ketchup/{p-dbbc62c5.entry.js.map → p-8eaf9ea9.entry.js.map} +0 -0
- /package/dist/ketchup/{p-073dc37e.entry.js.map → p-f4eabd6c.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a8 as e,a9 as t,d as s,a5 as n,aa as i,ab as c,ac as a,ad as l,F as r,ae as o,af as u,ag as f,ah as d,ai as p,e as b}from"./p-41e9e598.js";import{h as k,g as h,F as v}from"./p-d7c15b0e.js";import{F as m}from"./p-5d03c077.js";import{F as g}from"./p-ca3f5c62.js";import{F as w}from"./p-2b519589.js";import{F as j,c as O}from"./p-b95e7cbf.js";import{F as y}from"./p-cc32b7a2.js";var $;(function(e){e["customStyle"]="Custom style of the component.";e["data"]="The data of the list.";e["displayMode"]="Selects how the items must display their label and how they can be filtered for.";e["filter"]="Keeps string for filtering elements when filter mode is active";e["hideText"]="Hides rows' text, ideally to display a list of icons only.";e["isMenu"]="Defines whether the list is a menu or not.";e["keyboardNavigation"]="When true, enables items' navigation through arrow keys.";e["menuVisible"]="Sets the status of the menu, when false it's hidden otherwise it's visible.";e["roleType"]="Defines the type of selection. Values accepted: listbox, radiogroup or group.";e["selectable"]="Defines whether items are selectable or not.";e["showIcons"]="Displays the icons associated to each row when set to true.";e["twoLine"]="The list elements descriptions will be arranged in two lines."})($||($={}));var x;(function(e){e["LISTBOX"]="listbox";e["RADIOGROUP"]="radiogroup";e["GROUP"]="group"})(x||(x={}));var _;(function(e){e["CODE"]="code";e["DESCRIPTION"]="description";e["DESCRIPTION_AND_CODE"]="both"})(_||(_={}));var I;(function(e){e["SMALL"]="small";e["MEDIUM"]="medium"})(I||(I={}));const C=e=>{if(!e.sizing){e.sizing=I.MEDIUM}e.sizing.toLowerCase()===I.SMALL;const t={switch:true,"switch--checked":e.checked,"switch--disabled":e.disabled,[`switch--${e.sizing}`]:e.sizing?true:false};return k("div",Object.assign({class:`f-switch ${e.danger?"kup-danger":""} ${e.info?"kup-info":""} ${e.secondary?"kup-secondary":""} ${e.success?"kup-success":""} ${e.warning?"kup-warning":""} ${e.wrapperClass?e.wrapperClass:""}`},e.dataSet,{id:e.id,title:e.title}),k("div",{class:`form-field ${e.leadingLabel?"form-field--align-end":""}`},k("div",{class:t},k("div",{class:"switch__track"}),k("div",{class:"switch__thumb-underlay"},k("div",{class:"switch__thumb"},k("input",{type:"checkbox",class:"switch__native-control",role:"switch",checked:e.checked,disabled:e.disabled,value:e.checked?"on":"off",onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus})))),k("label",{onClick:e.onChange},e.label)))};const z=e=>{if(!e.centeredLabel&&!e.centeredLabel!==false){e.centeredLabel=true}let t=`f-progress-bar ${e.danger?"kup-danger":""} ${e.animated?"kup-animated":""} ${e.padded?"kup-padded":""} ${e.info?"kup-info":""} ${e.slim?"kup-slim":""} ${e.striped?"kup-striped":""} ${e.secondary?"kup-secondary":""} ${e.slim?"kup-slim":""} ${e.success?"kup-success":""} ${e.warning?"kup-warning":""} ${e.wrapperClass?e.wrapperClass:""}`;let s="pie";let n=undefined;if(e.isRadial){t+=" pie-wrapper is-radial"}else{t+=" progress-bar"}let i=undefined;const c={width:`${e.value}%`};if(!e.centeredLabel){i=c;if(e.value>2){t+=" text-color-on-primary"}}else if(e.value>49){t+=" text-color-on-primary"}let a=null;if(e.icon){a=N(e)}else{if(!e.hideLabel){if(e.isRadial){if(e.label){a=k("span",{class:"label"},e.label)}else{a=k("span",{class:"label"},e.value,k("span",{class:"smaller"},"%"))}}else{if(e.label){a=e.label}else{a=e.value+"%"}}}}if(e.value>0){s+=" has-value";if(e.value>50){s+=" is-more-than-half"}else{s+=" is-less-than-half"}}if(e.isRadial){return k("div",{class:t},a,k("div",{class:s},k("div",{style:n,class:"left-side half-circle"}),k("div",{class:"right-side half-circle"})),k("div",{class:"shadow"}))}else{return k("div",{class:t},k("div",{class:"progress-bar-percentage",style:c},k("span",{style:i},a)))}};function N(e){if(!e.icon){return undefined}if(e.icon.indexOf(".")>-1||e.icon.indexOf("/")>-1||e.icon.indexOf("\\")>-1){return k("span",{class:"label kup-icon is-image"},k("img",{src:e.icon}))}else{let t=`url('${h(`./assets/svg/${e.icon}.svg`)}') no-repeat center`;let s={mask:t,webkitMask:t};return k("span",{style:s,class:"label kup-icon"})}}var F;(function(e){e["RADIO"]="radio";e["CHEVRON"]="chevron"})(F||(F={}));const H=e=>{var t;const s=!!e.columns;const n=[];const i=e.type||F.RADIO;for(let s=0;s<((t=e.data)===null||t===void 0?void 0:t.length);s++){const t=e.data[s];const c={radio:true,"radio--checked":t.checked?true:false,"radio--disabled":e.disabled?true:false,[`radio--${e.type}`]:e.type?true:false};n.push(k("div",{class:`form-field \n ${e.leadingLabel?" form-field--align-end":""} ${e.disabled?"radio--disabled":""}`},k("div",{class:c},i===F.RADIO?k("input",{class:"radio__native-control",type:"radio",name:"radio-element",value:t.value,checked:t.checked,disabled:e.disabled,onBlur:e.onBlur,onChange:e.onChange?e.onChange.bind(e.onChange,s):null,onFocus:e.onFocus}):k(v,null,t.checked?k(w,{resource:"check",sizeX:"14px",sizeY:"14px"}):k(w,{sizeX:"14px",sizeY:"14px",onClick:e.onChange?e.onChange.bind(e.onChange,s):null})),i===F.RADIO&&k("div",{class:"radio__background"},k("div",{class:"radio__outer-circle"}),k("div",{class:"radio__inner-circle"}))),k("label",{htmlFor:"radio-element",onClick:e.onChange?e.onChange.bind(e.onChange,s):null},t.label?t.label:"")))}const c={"--kup_radio_columns":s?`repeat(${e.columns}, 1fr)`:""};return k("div",{class:`f-radio radio-wrapper\n ${s?"radio-wrapper-grid":""} ${e.danger?"kup-danger":""} ${e.info?"kup-info":""} ${e.secondary?"kup-secondary":""} ${e.success?"kup-success":""} ${e.warning?"kup-warning":""} ${e.wrapperClass?e.wrapperClass:""} ${e.horizontal?"kup-horizontal":""}`,style:c},n)};const D=e=>{if(!e.maxValue){e.maxValue=5}return k("div",{class:`f-rating ${e.disabled?"disabled":""} ${e.danger?"kup-danger":""} ${e.info?"kup-info":""} ${e.secondary?"kup-secondary":""} ${e.success?"kup-success":""} ${e.warning?"kup-warning":""} ${e.wrapperClass?e.wrapperClass:""}`},T(e))};function T(e){const t=[];for(let s=1;s<=e.maxValue;s++){if(s<=e.value){t.push(k("span",{class:"rating",onClick:e.onClick?e.onClick.bind(e.onClick,s):null},"★"))}else{t.push(k("span",{class:"rating",onClick:e.onClick?e.onClick.bind(e.onClick,s):null},"☆"))}}return t}const M=document.documentElement;const S=(i,c)=>{const a=i.cell;const l=i.column;const r=i.row;const o=i.shape?i.shape:a.shape?a.shape:l.shape?l.shape:null;const f=!M.ketchup.objects.isEmptyKupObj(a.obj);let d=false;if(a.hasOwnProperty("isEditable")){d=a.isEditable}else if(l.hasOwnProperty("isEditable")){d=l.isEditable}d=d&&i.editable;if(a.options){const e=E(a);a.data=e?Object.assign(Object.assign({},e),a.data):a.data}const b=i.previousValue!==a.value?a.value:"";const h=M.ketchup.data.cell.getType(a,o);const v=Object.assign({},a.data);let m=a.cssClass?a.cssClass:(l===null||l===void 0?void 0:l.cssClass)?l===null||l===void 0?void 0:l.cssClass:"";if(i.component.legacyLook){m+=" monospace c-pre"}const g={"f-cell":true,[u.OBJ]:f?true:false,[h+"-cell"]:true,[i.wrapperClass]:i.wrapperClass?true:false,[i.density]:i.density&&h!==n.BAR?true:false,[m]:m?true:false};let j=b;if(!a.data){te(h,a)}if(d&&e.includes(h)){j=Q(h,g,a,l,i)}else if(a.data&&t.includes(h)){if(i.setSizes){J(h,v,a)}if(!i.renderKup){const e="cell-"+h+" placeholder";j=k("span",{class:e})}else{j=ee(h,g,v,a,r,l,i)}}else{if(i.setSizes){q(h,v,a,i)}j=Z(h,v,j,g,a,l,i)}let O=null;if(!d&&(l.icon||a.icon)&&j){const e={color:`rgba(var(${s.TEXT}-rgb), 0.375)`,resource:a.icon?a.icon:l.icon,placeholderResource:a.placeholderIcon?a.placeholderIcon:l.placeholderIcon,sizeX:"1.25em",sizeY:"1.25em",wrapperClass:"obj-icon"};O=k(w,Object.assign({},e))}let y=null;if(M.ketchup.debug.isDebug()&&f){y=a.obj.t+"; "+a.obj.p+"; "+a.obj.k+";"}else if(a.title!=null&&a.title.trim()!=""){y=a.title}let $=null;if(a.info){const e=Object.assign({},a.info);if(!e.color){e.color=`var(${s.INFO})`}if(!e.icon){e.icon="info"}const t={color:e.color,resource:e.icon,placeholderResource:e.placeholderIcon,sizeX:"1.25em",sizeY:"1.25em",title:e.message?e.message:"",wrapperClass:"cell-info"};$=k(w,Object.assign({},t))}return k("div",{onKeyUp:e=>se(e,i,h,p.KEYUP),class:g,"kup-get-cell-props":()=>i,ref:e=>a.element=e,style:a.style},k("div",{class:"f-cell__content",style:a.styleContent,title:y},i.cellActionIcon&&k(w,{resource:"more_vert",sizeX:"16px",sizeY:"16px",wrapperClass:`f-cell__iconfunction ${h===n.NUMBER?"left":"right"}`,onClick:i.cellActionIcon.onClick,tabIndex:0}),c&&c.length>0?c:[i.indents,$,O,j]))};const E=e=>{if(!e){return null}const t=e.options;const s=e.title;const i=e.value;const c=M.ketchup.data.cell.getType(e,e.shape);const a=new Map([[n.BUTTON_LIST,Y.bind(undefined)],[n.STRING,K.bind(undefined)],[n.RADIO,W.bind(undefined)],[n.AUTOCOMPLETE,A.bind(undefined)],[n.COMBOBOX,A.bind(undefined)],[n.CHECKBOX,R.bind(undefined)],[n.OBJECT,X.bind(undefined)],[n.CHIP,V.bind(undefined)]]);const l=a.get(c);return l?l(t,s,i,e):null};const V=(e,t,s)=>i(s);const X=(e,t,s,n,i)=>({data:{initialValue:s||"",label:t||"",value:s||""}});const R=(e,t,s,n)=>Object.assign(Object.assign({},n.data),{checked:s==="on"||s==="1",label:t});const Y=(e,t,s,n)=>({data:[Object.assign(Object.assign({},n.data),{icon:n.icon,value:s})]});const K=(e,t,s,n)=>Object.assign(Object.assign({},n.data),{label:t});const W=(e,t,s,n)=>{const i=c(s,e);n.data=Object.assign(Object.assign({},n.data),i)};const A=(e,t,s,n,i)=>{var c;if(!((c=n.data)===null||c===void 0?void 0:c.data)&&e){const n=a(s,t,[]);n.data["kup-list"].data=B(e,s);return n}};const B=(e,t)=>{const s=U.get(e.type);if(s){return s(e,t)}else{return e.map((e=>({value:e.label,id:e.id,selected:t===e.id})))}};const G=(e,t)=>e.children.map((e=>{var s;return{id:e.content.codice,value:e.content.testo,selected:t===e.content.codice,children:((s=e.children)===null||s===void 0?void 0:s.length)?G(e,t):[]}}));const P=(e,t)=>e.children.map((e=>{var s;return{id:e.obj.k,value:e.value,selected:t===e.obj.k,children:((s=e.children)===null||s===void 0?void 0:s.length)?P(e,t):[]}}));const L=(e,t)=>e.rows.map((e=>{var s;const n=e.fields||e.cells;const[i,c]=Object.keys(n);return{id:n[i].value,value:((s=n[c])===null||s===void 0?void 0:s.value)||n[i].value,selected:t===n[i].value}}));const U=new Map([["SmeupTreeNode",G.bind(undefined)],["SmeupDataTree",P.bind(undefined)],["SmeupTable",L.bind(undefined)],["SmeupDataTable",L.bind(undefined)]]);function q(e,t,s,i){var c;switch(e){case n.CHECKBOX:case n.ICON:if(!t.sizeX){t.sizeX="18px"}if(!t.sizeY){t.sizeY="18px"}if(s.style){if(!s.style.height){s.style["minHeight"]=t.sizeY}}else{s.style={minHeight:t.sizeY}}break;case n.IMAGE:const e=((c=i.cell)===null||c===void 0?void 0:c.value)||"";const a=e.indexOf(".")>-1||e.indexOf("/")>-1||e.indexOf("\\")>-1;if(i.component.rootElement.tagName===l.DATA_TABLE&&!a){if(!t.sizeX&&!t.sizeY){t.sizeX="100%";t.sizeY="64px";t.wrapperClass="noWidth"}else{if(!t.sizeX){t.sizeX="100%";t.wrapperClass="noWidth"}if(!t.sizeY){t.sizeY="auto"}}}if(i.component.rootElement.tagName===l.BOX){if(!t.sizeY){t.sizeY="auto"}if(t.fit===undefined){t.fit=true}}else if(!t.sizeX){t.sizeX="auto"}if(!t.sizeY){t.sizeY="64px"}break}}function J(e,t,s){switch(e){case n.BAR:if(!t.sizeY){t.sizeY="26px"}break;case n.BUTTON:let e="";if(t.label){e="36px"}if(s.style){if(!s.style.height){s.style["minHeight"]=e}}else{s.style={minHeight:e}}break;case n.CHART:if(!t.sizeX){t.sizeX="100%"}if(!t.sizeY){t.sizeY="100%"}break;case n.CHIP:if(s.style){if(!s.style.height){s.style["minHeight"]="40px"}}else{s.style={minHeight:"40px"}}break;case n.RADIO:if(s.style){if(!s.style.height){s.style["minHeight"]="40px"}}else{s.style={minHeight:"40px"}}break}}function Q(e,t,s,i,c){var a,l;switch(e){case n.AUTOCOMPLETE:return k("kup-autocomplete",Object.assign({key:i.name+c.row.id,initialValue:s.value},s.data,{class:ce(c)?"kup-full-width":"","onkup-autocomplete-change":t=>se(t,c,e,p.UPDATE),"onkup-autocomplete-input":t=>se(t,c,e,p.INPUT),"onkup-autocomplete-iconclick":t=>se(t,c,e,p.ICON_CLICK)}));case n.CHECKBOX:if(ie(c)){t[u.C_CENTERED]=true}if(s.shape===r.INPUT_CHECKBOX){return k("input",{checked:s.value==="on"||s.value==="1"?true:false,class:"input-checkbox",onChange:t=>se(t,c,e,p.UPDATE),type:"checkbox"})}else{return k(m,Object.assign({},s.data,{onChange:t=>se(t,c,e,p.UPDATE)}))}case n.CHIP:return k("kup-chip",Object.assign({},s.data,{type:j.INPUT,enableInput:true,"onKup-chip-change":t=>se(t,c,e,p.UPDATE)}),k("kup-text-field",Object.assign({fullWidth:true,slot:"field"},s.slotData,{error:s.data.error})));case n.COLOR_PICKER:return k("kup-color-picker",Object.assign({key:i.name+c.row.id,initialValue:s.value},s.data,{class:ce(c)?"kup-full-width":"",disabled:false,"onkup-colorpicker-change":t=>se(t,c,e,p.UPDATE)}));case n.COMBOBOX:return k("kup-combobox",Object.assign({key:i.name+c.row.id,initialValue:s.value},s.data,{class:ce(c)?"kup-full-width":"","onkup-combobox-change":t=>se(t,c,e,p.UPDATE),"onkup-combobox-input":t=>se(t,c,e,p.INPUT),"onkup-combobox-iconclick":t=>se(t,c,e,p.ICON_CLICK)}));case n.DATE:return k("kup-date-picker",Object.assign({key:i.name+c.row.id,initialValue:s.value},s.data,{class:ce(c)?"kup-full-width":"","onkup-datepicker-change":t=>se(t,c,e,p.UPDATE),"onkup-datepicker-input":t=>se(t,c,e,p.INPUT)}));case n.MULTI_AUTOCOMPLETE:return k("kup-chip",Object.assign({displayId:true},s.data,{type:j.INPUT,enableInput:true,"onKup-chip-change":t=>se(t,c,e,p.UPDATE)}),k("kup-autocomplete",Object.assign({class:"kup-full-width",slot:"field",displayMode:_.DESCRIPTION_AND_CODE,selectMode:_.DESCRIPTION_AND_CODE,"onkup-autocomplete-input":t=>se(t,c,e,p.INPUT),"onkup-autocomplete-iconclick":t=>se(t,c,e,p.ICON_CLICK),showDropDownIcon:false},s.slotData,{error:s.data.error})));case n.MULTI_COMBOBOX:return k("kup-chip",Object.assign({displayId:true},s.data,{type:j.INPUT,enableInput:true,"onKup-chip-change":t=>se(t,c,e,p.UPDATE)}),k("kup-combobox",Object.assign({class:"kup-full-width",slot:"field",displayMode:_.DESCRIPTION_AND_CODE,selectMode:_.DESCRIPTION_AND_CODE,"onkup-combobox-input":t=>se(t,c,e,p.INPUT),"onkup-combobox-iconclick":t=>se(t,c,e,p.ICON_CLICK)},s.slotData,{error:s.data.error})));case n.RADIO:return k(H,Object.assign({},s.data,{disabled:false,onChange:(t,n)=>{const i=s.data.data;for(let e=0;e<i.length;e++){const s=i[e];if(e===t){s.checked=true}else{s.checked=false}}se(n,c,e,p.UPDATE)}}));case n.RATING:return k("kup-rating",Object.assign({key:i.name+c.row.id},s.data,{disabled:false,"onkup-rating-click":t=>se(t,c,e,p.UPDATE)}));case n.SWITCH:return k(C,Object.assign({},s.data,{disabled:false,onChange:t=>se(t,c,e,p.UPDATE)}));case n.TIME:return k("kup-time-picker",Object.assign({key:i.name+c.row.id,initialValue:s.value},s.data,{class:ce(c)?"kup-full-width":"","onkup-timepicker-change":t=>se(t,c,e,p.UPDATE),"onkup-timepicker-input":t=>se(t,c,e,p.INPUT)}));case n.OBJECT:return k(g,Object.assign({icon:"table"},s.data,{disabled:false,onIconClick:t=>se(t,c,e,p.ICON_CLICK)}));case n.NUMBER:t[u.C_RIGHT_ALIGNED]=true;case n.LINK:case n.STRING:const o=t=>se(t,c,e,p.UPDATE);const f=t=>se(t,c,e,p.INPUT);const d=e===n.NUMBER?"number":null;const b=e===n.NUMBER&&s.value?M.ketchup.math.numberifySafe(s.value).toString():s.value;if(s.shape===r.INPUT_FIELD){return k("input",{class:"input-field",onChange:o,onInput:f,type:d,value:b,maxLength:(l=(a=i.cellData)===null||a===void 0?void 0:a.maxLength)!==null&&l!==void 0?l:-1})}else{return k(g,Object.assign({inputType:d,fullWidth:ce(c)?true:false},s.data,{icon:s.data&&s.data.icon?s.data.icon:s.icon?s.icon:i.icon?i.icon:null,value:b,onChange:o,onInput:f,onIconClick:t=>se(t,c,e,p.ICON_CLICK)}))}}}function Z(e,t,s,i,c,a,l){switch(e){case n.AUTOCOMPLETE:case n.COMBOBOX:case n.DATE:case n.DATETIME:case n.TIME:if(s&&s!=""){const e=d(a,c);return k("div",{class:"f-cell__text"},e)}return s;case n.CHECKBOX:if(ie(l)){i[u.C_CENTERED]=true}return k(w,{resource:t.checked?"check_box":"check_box_outline_blank",sizeX:"18px",sizeY:"18px"});case n.EDITOR:return k("div",{innerHTML:c.value});case n.ICON:if(ie(l)){i[u.C_CENTERED]=true}if(t.badgeData){i[u.C_PADDED]=true}return k(w,Object.assign({},t));case n.IMAGE:if(ie(l)){i[u.C_CENTERED]=true}if(t.badgeData){i[u.C_PADDED]=true}return k(w,Object.assign({},t));case n.LINK:return k("a",{href:s,target:"_blank"},c.value);case n.NUMBER:if(s&&s!=""){const e=M.ketchup.math.numberifySafe(c.value);const t=d(a,c);if(e<0){i[u.TEXT_DANGER]=true}if(ie(l)){i[u.C_RIGHT_ALIGNED]=true}return k("div",{class:"f-cell__text"},t)}return k("div",{class:"f-cell__text"},s);case n.SWITCH:if(ie(l)){i[u.C_CENTERED]=true}t["disabled"]=true;return k(C,Object.assign({},t));default:return k("div",{class:"f-cell__text"},s)}}function ee(e,t,s,i,c,a,l){switch(e){case n.BAR:if(!s.data){return k("kup-image",Object.assign({key:a.name+l.row.id,sizeX:"250px"},s))}else{const e={height:s.sizeY,width:"100%"};return k("div",{style:e},k(w,Object.assign({},s)))}case n.BUTTON:if(ie(l)){t[u.C_CENTERED]=true}return k(y,Object.assign({},s,{onClick:t=>se(t,l,e,p.CLICK)}));case n.BUTTON_LIST:if(ie(l)){t[u.C_CENTERED]=true}s["data-storage"]={cell:i,row:c,column:a};return k("kup-button-list",Object.assign({key:a.name+l.row.id},s));case n.CHART:if(ie(l)){t[u.C_CENTERED]=true}return k("kup-chart",Object.assign({key:a.name+l.row.id},s));case n.MULTI_AUTOCOMPLETE:case n.MULTI_COMBOBOX:case n.CHIP:return k(O,Object.assign({},s));case n.COLOR_PICKER:return k("kup-color-picker",Object.assign({key:a.name+l.row.id},s,{class:ce(l)?"kup-full-width":"",disabled:true}));case n.GAUGE:return k("kup-gauge",Object.assign({key:a.name+l.row.id,value:M.ketchup.math.numberifySafe(i.value),"width-component":"280px"},s));case n.KNOB:case n.PROGRESS_BAR:return s.customStyle?k("kup-progress-bar",Object.assign({key:a.name+l.row.id},s)):k(z,Object.assign({},s));case n.RADIO:if(ie(l)){t[u.C_CENTERED]=true}s["disabled"]=c.readOnly;return k(H,Object.assign({},s));case n.RATING:return k(D,Object.assign({},s,{disabled:true}));case n.OBJECT:return k(g,Object.assign({icon:"table"},s,{disabled:true}))}}function te(e,t){function s(e){return e.toUpperCase().startsWith("SHAPE;BAR")}function i(e){return e.toUpperCase().startsWith("SHAPE;")}function c(e){return e.toUpperCase().startsWith("BCOLOR;")}function a(e){return e.toUpperCase().startsWith("HEIGHT;")}function l(e){return e.toUpperCase().startsWith("SEP;")||e.toUpperCase().startsWith("DIV;")||e.toUpperCase().startsWith("ARW;")||e.toUpperCase().startsWith("GRID;")}function r(e){if(!e){return null}const t=e.split("\\\\AND\\");const s=[];for(const e of t){const t=o(e);if(t){s.push(...t)}else{return null}}return s}function o(e){const t={};const n=e.split("\\\\");const r=[];for(const e of n){if(e){if(l(e)){return null}if(i(e)){if(!s(e)){return null}else{const s=e.split(";");if(s.length===3){const e=s[2].replace(",",".");if(!isNaN(parseFloat(e))){t.width=`${e}%`}}}}else if(c(e));else if(a(e)){const s=e.substring("HEIGHT;".length).replace(",",".");if(!isNaN(parseFloat(s))){t.height=`${s}%`}}else{r.push(o(e,t))}}return r.length?r:null}function o(e,t){const s=Object.assign({},t);const n=e.split(";");if(n.length>=1){const e=/R(\d+)G(\d+)B(\d+)/;const t=e.exec(n[0]);if(t){const[,e,n,i]=t;if(!isNaN(parseInt(e,10))&&!isNaN(parseInt(n,10))&&!isNaN(parseInt(i,10))){s.color=`rgb(${parseInt(e)},${parseInt(n)},${parseInt(i)})`}}if(n.length>=2){const e=n[1].replace(",",".");if(!isNaN(parseFloat(e))){s.width=`${e}%`}}}return s}}t.data={};const u=()=>{var e;const s=(e=t.value)===null||e===void 0?void 0:e.split(";");if((s===null||s===void 0?void 0:s[s.length-1].trim())===""){s.pop()}if(s&&s.length){t.data.data=[];for(let e of s){t.data.data.push({id:e,value:e})}}};switch(e){case n.CHECKBOX:case n.SWITCH:t.data.checked=t.value==="1"?true:false;break;case n.BAR:if(i(t.value)){t.data.isCanvas=true;t.data.resource=t.value}else{t.data.data=r(t.value)}break;case n.BUTTON:t.data.label=t.value;break;case n.CHART:Object.assign(t.data,{sizeX:"100px",sizeY:"100px",offlineMode:{value:t.value,shape:"pie"}});break;case n.BUTTON_LIST:case n.CHIP:case n.MULTI_AUTOCOMPLETE:case n.MULTI_COMBOBOX:case n.RADIO:u();break;case n.COLOR_PICKER:t.data.initialValue=t.value;break;case n.GAUGE:case n.KNOB:case n.PROGRESS_BAR:case n.RATING:t.data.value=parseInt(t.value);break;case n.ICON:case n.IMAGE:t.data.resource=t.value;break}}function se(e,t,s,i){const c=t.cell;const a=t.column;const l=t.component;const r=t.row;if(i===p.UPDATE){let t=ne(e,s);switch(s){case n.AUTOCOMPLETE:case n.COMBOBOX:case n.DATE:case n.TIME:if(c.data){c.data["initialValue"]=t}break;case n.CHECKBOX:case n.SWITCH:t=t==="on"?"0":"1";if(c.data){c.data.checked=t==="0"?false:true}break;case n.RADIO:if(c.data.data){const e=c.data.data;const s=e.find((e=>e.checked));if(s){t=s.value}}break;case n.CHIP:case n.MULTI_AUTOCOMPLETE:case n.MULTI_COMBOBOX:t=e.detail.stringifiedValues;if(c.data){c.data.data=e.detail.comp.data}break}if(c.obj){c.obj.k=t===null||t===void 0?void 0:t.toString()}c.value=t===null||t===void 0?void 0:t.toString();c.displayedValue=null;c.displayedValue=d(a,c)}if(l&&l.rootElement){const t=new CustomEvent(i,{bubbles:true,cancelable:true,composed:true,detail:{comp:l,id:l.rootElement.id,cell:c,column:a,event:e,row:r,type:s}});l.rootElement.dispatchEvent(t);if(i===p.UPDATE){try{l.refresh()}catch(e){M.ketchup.debug.logMessage(l,e,b.ERROR)}}}}function ne(e,t){const s=!!(e.target.tagName==="INPUT");let i=s?e.target.value:e.detail.value;if(t===n.CHECKBOX&&s){i=e.target.checked?"off":"on"}if(t===n.NUMBER&&s){i=M.ketchup.math.formattedStringToNumberString(i,"")}return i}function ie(e){var t;return f.includes((t=e.component)===null||t===void 0?void 0:t.rootElement.tagName)}function ce(e){var t;return o.includes((t=e.component)===null||t===void 0?void 0:t.rootElement.tagName)}export{S as F,_ as I,x as K,$ as a,z as b,H as c,D as d,I as e,C as f};
|
|
2
|
+
//# sourceMappingURL=p-33e84dd7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["KupListProps","KupListRole","ItemsDisplayMode","FSwitchSizing","FSwitch","props","sizing","MEDIUM","toLowerCase","SMALL","classObj","switch","checked","disabled","h","Object","assign","class","danger","info","secondary","success","warning","wrapperClass","dataSet","id","title","leadingLabel","type","role","value","onBlur","onChange","onFocus","onClick","label","FProgressBar","centeredLabel","componentClass","animated","padded","slim","striped","pieClass","radialStyle","undefined","isRadial","labelStyle","valueStyle","width","icon","createIconElement","hideLabel","style","indexOf","src","svg","getAssetPath","iconStyle","mask","webkitMask","FRadioType","FRadio","hasColumns","columns","radioList","radioType","RADIO","i","_a","data","length","radio","push","name","bind","Fragment","FImage","resource","sizeX","sizeY","htmlFor","styleObj","horizontal","FRating","maxValue","buildStars","stars","dom","document","documentElement","FCell","children","cell","column","row","shape","hasObj","ketchup","objects","isEmptyKupObj","obj","isEditable","hasOwnProperty","editable","options","cellData","mapData","valueToDisplay","previousValue","cellType","getType","subcomponentProps","cssClasses","cssClass","component","legacyLook","FCellClasses","OBJ","density","FCellTypes","BAR","content","setDefaults","editableTypes","includes","setEditableCell","kupTypes","setSizes","setCellSizeKup","renderKup","lazyClass","setKupCell","setCellSize","setCell","fProps","color","KupThemeColorValues","TEXT","placeholderResource","placeholderIcon","cellTitle","debug","isDebug","t","p","k","trim","infoEl","INFO","message","onKeyUp","e","cellEvent","FCellEvents","KEYUP","ref","el","element","styleContent","cellActionIcon","NUMBER","tabIndex","indents","fieldLabel","currentValue","dataAdapterMap","Map","BUTTON_LIST","MainBTNAdapter","this","STRING","MainITXAdapter","MainRADAdapter","AUTOCOMPLETE","MainCMBandACPAdapter","COMBOBOX","CHECKBOX","MainCHKAdapter","OBJECT","MainObjectAdapter","CHIP","MainCHIAdapter","adapter","get","_options","_fieldLabel","CHIAdapter","_cell","_id","initialValue","_currentValue","newData","RADAdapter","configCMandACP","CMBandACPAdapter","optionsTreeComboAdapter","optionsAdapterMap","map","option","selected","treeOptionsNodeAdapter","child","codice","testo","dataTreeOptionsChildrenAdapter","tableOptionsAdapter","rows","cells","fields","keys","ICON","height","minHeight","IMAGE","cellValue","hasExternalResource","rootElement","tagName","KupTagNames","DATA_TABLE","BOX","fit","BUTTON","CHART","key","isFullWidth","UPDATE","INPUT","ICON_CLICK","isAutoCentered","C_CENTERED","FCellShapes","INPUT_CHECKBOX","FCheckbox","FChipType","enableInput","fullWidth","slot","slotData","error","COLOR_PICKER","DATE","MULTI_AUTOCOMPLETE","displayId","displayMode","DESCRIPTION_AND_CODE","selectMode","showDropDownIcon","MULTI_COMBOBOX","radioData","index","radioEl","RATING","SWITCH","TIME","FTextField","onIconClick","C_RIGHT_ALIGNED","LINK","onInput","math","numberifySafe","toString","INPUT_FIELD","maxLength","_b","inputType","DATETIME","getCellValueForDisplay","EDITOR","innerHTML","badgeData","C_PADDED","href","target","cellValueNumber","TEXT_DANGER","barStyle","FButton","CLICK","FChip","GAUGE","KNOB","PROGRESS_BAR","customStyle","readOnly","isShapeBarMarker","toUpperCase","startsWith","isShapeMarker","isBgColorMarker","isHeightMarker","isDecoratorMarker","getData","graphicElementDefinitionArr","split","graphicElem","elementData","getElementData","commonsData","markersArray","shapesArray","vString","attr","replace","isNaN","parseFloat","substring","getShapeData","shapeData","pattern","match","exec","r","g","b","parseInt","createDataset","parts","pop","part","isCanvas","offlineMode","cellEventName","comp","getValueFromEventTarget","checkedItem","find","item","detail","stringifiedValues","displayedValue","CustomEvent","bubbles","cancelable","composed","event","dispatchEvent","refresh","logMessage","KupDebugCategory","ERROR","isInputEvent","formattedStringToNumberString","autoCenterComps","fullWidthFieldsComps"],"sources":["src/components/kup-list/kup-list-declarations.ts","src/f-components/f-switch/f-switch-declarations.ts","src/f-components/f-switch/f-switch.tsx","src/f-components/f-progress-bar/f-progress-bar.tsx","src/f-components/f-radio/f-radio-declarations.ts","src/f-components/f-radio/f-radio.tsx","src/f-components/f-rating/f-rating.tsx","src/f-components/f-cell/f-cell.tsx"],"sourcesContent":["import { KupEventPayload } from '../../types/GenericTypes';\nimport { ValueDisplayedValue as vdv } from '../../utils/filters/filters-declarations';\nimport { KupDataNode } from '../../managers/kup-data/kup-data-declarations';\n\n/**\n * Props of the kup-list component.\n * Used to export every prop in an object.\n */\nexport enum KupListProps {\n customStyle = 'Custom style of the component.',\n data = 'The data of the list.',\n displayMode = 'Selects how the items must display their label and how they can be filtered for.',\n filter = 'Keeps string for filtering elements when filter mode is active',\n hideText = \"Hides rows' text, ideally to display a list of icons only.\",\n isMenu = 'Defines whether the list is a menu or not.',\n keyboardNavigation = \"When true, enables items' navigation through arrow keys.\",\n menuVisible = \"Sets the status of the menu, when false it's hidden otherwise it's visible.\",\n roleType = 'Defines the type of selection. Values accepted: listbox, radiogroup or group.',\n selectable = 'Defines whether items are selectable or not.',\n showIcons = 'Displays the icons associated to each row when set to true.',\n twoLine = 'The list elements descriptions will be arranged in two lines.',\n}\n/**\n * Data structure of a single list item.\n */\nexport interface KupListNode extends KupDataNode {\n secondaryText?: string;\n selected?: boolean;\n separator?: boolean;\n}\n/**\n * Available types of selection.\n */\nexport enum KupListRole {\n LISTBOX = 'listbox',\n RADIOGROUP = 'radiogroup',\n GROUP = 'group',\n}\n\nexport interface ValueDisplayedValue extends vdv {\n exists: boolean;\n}\n\nexport enum ItemsDisplayMode {\n CODE = 'code',\n DESCRIPTION = 'description',\n DESCRIPTION_AND_CODE = 'both',\n}\nexport interface KupListEventPayload extends KupEventPayload {\n selected: KupListNode;\n index?: number;\n}\n","import type { FComponent } from '../../types/GenericTypes';\n/**\n * Props of the f-switch component.\n */\nexport interface FSwitchProps extends FComponent {\n checked?: boolean;\n disabled?: boolean;\n label?: string;\n leadingLabel?: boolean;\n onBlur?: (event: FocusEvent) => void;\n onClick?: (event: MouseEvent) => void;\n onChange?: (event: Event) => void;\n onFocus?: (event: FocusEvent) => void;\n sizing?: FSwitchSizing;\n}\n\n/**\n * Types of the f-chip component.\n * @enum {string}\n * @property {string} SMALL - Small size: height = 24px\n * @property {string} MEDIUM - Medium size: height = 32px (default)\n */\n\nexport enum FSwitchSizing { // GenericTypes to be studied because small chips goes with small button/textfield but has different sizes\n SMALL = 'small',\n MEDIUM = 'medium',\n}\n","import { FSwitchSizing, type FSwitchProps } from './f-switch-declarations';\nimport { FunctionalComponent, h } from '@stencil/core';\n\n/*-------------------------------------------------*/\n/* C o m p o n e n t */\n/*-------------------------------------------------*/\n\nexport const FSwitch: FunctionalComponent<FSwitchProps> = (\n props: FSwitchProps\n) => {\n if (!props.sizing) {\n props.sizing = FSwitchSizing.MEDIUM;\n }\n const isSmall: boolean = props.sizing.toLowerCase() === FSwitchSizing.SMALL;\n const classObj: Record<string, boolean> = {\n switch: true,\n 'switch--checked': props.checked,\n 'switch--disabled': props.disabled,\n [`switch--${props.sizing}`]: props.sizing ? true : false,\n };\n\n return (\n <div\n class={`f-switch ${props.danger ? 'kup-danger' : ''} ${\n props.info ? 'kup-info' : ''\n } ${props.secondary ? 'kup-secondary' : ''} ${\n props.success ? 'kup-success' : ''\n } ${props.warning ? 'kup-warning' : ''} ${\n props.wrapperClass ? props.wrapperClass : ''\n }`}\n {...props.dataSet}\n id={props.id}\n title={props.title}\n >\n <div\n class={`form-field ${\n props.leadingLabel ? 'form-field--align-end' : ''\n }`}\n >\n <div class={classObj}>\n <div class=\"switch__track\"></div>\n <div class=\"switch__thumb-underlay\">\n <div class=\"switch__thumb\">\n <input\n type=\"checkbox\"\n class=\"switch__native-control\"\n role=\"switch\"\n checked={props.checked}\n disabled={props.disabled}\n value={props.checked ? 'on' : 'off'}\n onBlur={props.onBlur}\n onChange={props.onChange}\n onFocus={props.onFocus}\n ></input>\n </div>\n </div>\n </div>\n <label onClick={props.onChange}>{props.label}</label>\n </div>\n </div>\n );\n};\n","import type { FProgressBarProps } from './f-progress-bar-declarations';\nimport { FunctionalComponent, getAssetPath, h } from '@stencil/core';\n\n/*-------------------------------------------------*/\n/* C o m p o n e n t */\n/*-------------------------------------------------*/\n\nexport const FProgressBar: FunctionalComponent<FProgressBarProps> = (\n props: FProgressBarProps\n) => {\n if (!props.centeredLabel && !props.centeredLabel !== false) {\n props.centeredLabel = true;\n }\n\n let componentClass = `f-progress-bar ${props.danger ? 'kup-danger' : ''} ${\n props.animated ? 'kup-animated' : ''\n } ${props.padded ? 'kup-padded' : ''} ${props.info ? 'kup-info' : ''} ${\n props.slim ? 'kup-slim' : ''\n } ${props.striped ? 'kup-striped' : ''} ${\n props.secondary ? 'kup-secondary' : ''\n } ${props.slim ? 'kup-slim' : ''} ${props.success ? 'kup-success' : ''} ${\n props.warning ? 'kup-warning' : ''\n } ${props.wrapperClass ? props.wrapperClass : ''}`;\n let pieClass: string = 'pie';\n let radialStyle = undefined;\n if (props.isRadial) {\n componentClass += ' pie-wrapper is-radial';\n } else {\n componentClass += ' progress-bar';\n }\n\n let labelStyle = undefined;\n\n const valueStyle = {\n width: `${props.value}%`,\n };\n\n if (!props.centeredLabel) {\n labelStyle = valueStyle;\n if (props.value > 2) {\n componentClass += ' text-color-on-primary';\n }\n } else if (props.value > 49) {\n componentClass += ' text-color-on-primary';\n }\n\n let label = null;\n if (props.icon) {\n label = createIconElement(props);\n } else {\n if (!props.hideLabel) {\n if (props.isRadial) {\n if (props.label) {\n label = <span class=\"label\">{props.label}</span>;\n } else {\n label = (\n <span class=\"label\">\n {props.value}\n <span class=\"smaller\">%</span>\n </span>\n );\n }\n } else {\n if (props.label) {\n label = props.label;\n } else {\n label = props.value + '%';\n }\n }\n }\n }\n\n if (props.value > 0) {\n pieClass += ' has-value';\n if (props.value > 50) {\n pieClass += ' is-more-than-half';\n } else {\n pieClass += ' is-less-than-half';\n }\n }\n\n if (props.isRadial) {\n return (\n <div class={componentClass}>\n {label}\n <div class={pieClass}>\n <div\n style={radialStyle}\n class=\"left-side half-circle\"\n ></div>\n <div class=\"right-side half-circle\"></div>\n </div>\n <div class=\"shadow\"></div>\n </div>\n );\n } else {\n return (\n <div class={componentClass}>\n <div class=\"progress-bar-percentage\" style={valueStyle}>\n <span style={labelStyle}>{label}</span>\n </div>\n </div>\n );\n }\n};\n\nfunction createIconElement(props: FProgressBarProps) {\n if (!props.icon) {\n return undefined;\n }\n\n if (\n props.icon.indexOf('.') > -1 ||\n props.icon.indexOf('/') > -1 ||\n props.icon.indexOf('\\\\') > -1\n ) {\n return (\n <span class=\"label kup-icon is-image\">\n <img src={props.icon}></img>\n </span>\n );\n } else {\n let svg: string = `url('${getAssetPath(\n `./assets/svg/${props.icon}.svg`\n )}') no-repeat center`;\n let iconStyle = {\n mask: svg,\n webkitMask: svg,\n };\n return <span style={iconStyle} class=\"label kup-icon\"></span>;\n }\n}\n","import type { FComponent } from '../../types/GenericTypes';\n/**\n * Props of the f-radio component.\n */\nexport interface FRadioProps extends FComponent {\n columns?: number;\n data?: FRadioData[];\n disabled?: boolean;\n label?: string;\n leadingLabel?: boolean;\n onBlur?: (event: FocusEvent) => void;\n onChange?: (i: number, event: Event) => void;\n onFocus?: (event: FocusEvent) => void;\n horizontal?: boolean;\n type?: FRadioType;\n}\n/**\n * The object of a single radio.\n */\nexport interface FRadioData {\n checked: boolean;\n label: string;\n value: string;\n}\n\nexport enum FRadioType {\n RADIO = 'radio',\n CHEVRON = 'chevron',\n}\n","import { FunctionalComponent, VNode, h, Fragment } from '@stencil/core';\nimport { GenericObject } from '../../components';\nimport {\n FRadioType,\n type FRadioData,\n type FRadioProps,\n} from './f-radio-declarations';\nimport { FImage } from '../f-image/f-image';\n\n/*-------------------------------------------------*/\n/* C o m p o n e n t */\n/*-------------------------------------------------*/\n\nexport const FRadio: FunctionalComponent<FRadioProps> = (\n props: FRadioProps\n) => {\n const hasColumns: boolean = !!props.columns;\n const radioList: Array<VNode> = [];\n\n // Default to 'radio' if props.type is not specified\n const radioType = props.type || FRadioType.RADIO;\n for (let i = 0; i < props.data?.length; i++) {\n const data: FRadioData = props.data[i];\n const classObj: GenericObject = {\n radio: true,\n 'radio--checked': data.checked ? true : false,\n 'radio--disabled': props.disabled ? true : false,\n [`radio--${props.type}`]: props.type ? true : false,\n };\n\n radioList.push(\n <div\n class={`form-field \n ${props.leadingLabel ? ' form-field--align-end' : ''} ${\n props.disabled ? 'radio--disabled' : ''\n }`}\n >\n <div class={classObj}>\n {radioType === FRadioType.RADIO ? (\n <input\n class=\"radio__native-control\"\n type=\"radio\"\n name=\"radio-element\"\n value={data.value}\n checked={data.checked}\n disabled={props.disabled}\n onBlur={props.onBlur}\n onChange={\n props.onChange\n ? props.onChange.bind(props.onChange, i)\n : null\n }\n onFocus={props.onFocus}\n ></input>\n ) : (\n <>\n {data.checked ? (\n <FImage\n resource=\"check\"\n sizeX=\"14px\"\n sizeY=\"14px\"\n ></FImage>\n ) : (\n <FImage\n sizeX=\"14px\"\n sizeY=\"14px\"\n onClick={\n props.onChange\n ? props.onChange.bind(\n props.onChange,\n i\n )\n : null\n }\n ></FImage>\n )}\n </>\n )}\n {radioType === FRadioType.RADIO && (\n <div class=\"radio__background\">\n <div class=\"radio__outer-circle\"></div>\n <div class=\"radio__inner-circle\"></div>\n </div>\n )}\n </div>\n <label\n htmlFor={'radio-element'}\n onClick={\n props.onChange\n ? props.onChange.bind(props.onChange, i)\n : null\n }\n >\n {data.label ? data.label : ''}\n </label>\n </div>\n );\n }\n\n const styleObj: GenericObject = {\n '--kup_radio_columns': hasColumns\n ? `repeat(${props.columns}, 1fr)`\n : '',\n };\n\n return (\n <div\n class={`f-radio radio-wrapper\n ${hasColumns ? 'radio-wrapper-grid' : ''} ${\n props.danger ? 'kup-danger' : ''\n } ${props.info ? 'kup-info' : ''} ${\n props.secondary ? 'kup-secondary' : ''\n } ${props.success ? 'kup-success' : ''} ${\n props.warning ? 'kup-warning' : ''\n } ${props.wrapperClass ? props.wrapperClass : ''} ${\n props.horizontal ? 'kup-horizontal' : ''\n }`}\n style={styleObj}\n >\n {radioList}\n </div>\n );\n};\n","import { FunctionalComponent, VNode, h } from '@stencil/core';\nimport type { FRatingProps } from './f-rating-declarations';\n\n/*-------------------------------------------------*/\n/* C o m p o n e n t */\n/*-------------------------------------------------*/\n\nexport const FRating: FunctionalComponent<FRatingProps> = (\n props: FRatingProps\n) => {\n if (!props.maxValue) {\n props.maxValue = 5;\n }\n return (\n <div\n class={`f-rating ${props.disabled ? 'disabled' : ''} ${\n props.danger ? 'kup-danger' : ''\n } ${props.info ? 'kup-info' : ''} ${\n props.secondary ? 'kup-secondary' : ''\n } ${props.success ? 'kup-success' : ''} ${\n props.warning ? 'kup-warning' : ''\n } ${props.wrapperClass ? props.wrapperClass : ''}`}\n >\n {buildStars(props)}\n </div>\n );\n};\n\nfunction buildStars(props: FRatingProps) {\n const stars: VNode[] = [];\n\n for (let i = 1; i <= props.maxValue; i++) {\n if (i <= props.value) {\n stars.push(\n <span\n class=\"rating\"\n onClick={\n props.onClick\n ? props.onClick.bind(props.onClick, i)\n : null\n }\n >\n ★\n </span>\n );\n } else {\n stars.push(\n <span\n class=\"rating\"\n onClick={\n props.onClick\n ? props.onClick.bind(props.onClick, i)\n : null\n }\n >\n ☆\n </span>\n );\n }\n }\n\n return stars;\n}\n","import type { FCheckboxProps } from '../f-checkbox/f-checkbox-declarations';\nimport type { FImageData, FImageProps } from '../f-image/f-image-declarations';\nimport type { FButtonProps } from '../f-button/f-button-declarations';\nimport type { KupChart } from '../../components/kup-chart/kup-chart';\nimport type { KupDom } from '../../managers/kup-manager/kup-manager-declarations';\nimport type { KupAutocompleteEventPayload } from '../../components/kup-autocomplete/kup-autocomplete-declarations';\nimport type { KupComboboxEventPayload } from '../../components/kup-combobox/kup-combobox-declarations';\nimport type { KupDatePickerEventPayload } from '../../components/kup-date-picker/kup-date-picker-declarations';\nimport type { KupTimePickerEventPayload } from '../../components/kup-time-picker/kup-time-picker-declarations';\nimport type { KupRatingClickEventPayload } from '../../components/kup-rating/kup-rating-declarations';\nimport type { KupColorPickerEventPayload } from '../../components/kup-color-picker/kup-color-picker-declarations';\nimport {\n GenericObject,\n KupComponent,\n KupTagNames,\n} from '../../types/GenericTypes';\nimport {\n autoCenterComps,\n editableTypes,\n FCellClasses,\n FCellEventPayload,\n FCellEvents,\n FCellInfo,\n FCellProps,\n FCellShapes,\n FCellTypes,\n fullWidthFieldsComps,\n kupTypes,\n} from './f-cell-declarations';\nimport { FunctionalComponent, h, VNode } from '@stencil/core';\nimport {\n CHIAdapter,\n CMBandACPAdapter,\n getCellValueForDisplay,\n RADAdapter,\n} from '../../utils/cell-utils';\nimport { FCheckbox } from '../f-checkbox/f-checkbox';\nimport { FTextField } from '../f-text-field/f-text-field';\nimport { FImage } from '../f-image/f-image';\nimport { FChip } from '../f-chip/f-chip';\nimport { KupThemeColorValues } from '../../managers/kup-theme/kup-theme-declarations';\nimport {\n CellOptions,\n KupDataCell,\n KupDataCellOptions,\n KupDataColumn,\n KupDataNode,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { FSwitch } from '../f-switch/f-switch';\nimport { KupChipChangeEventPayload } from '../../components/kup-chip/kup-chip-declarations';\nimport { FChipsProps, FChipType } from '../f-chip/f-chip-declarations';\nimport { ItemsDisplayMode } from '../../components/kup-list/kup-list-declarations';\nimport { FButton } from '../f-button/f-button';\nimport { FProgressBar } from '../f-progress-bar/f-progress-bar';\nimport { FRadio } from '../f-radio/f-radio';\nimport { FRating } from '../f-rating/f-rating';\nimport type { KupDataTable } from '../../components/kup-data-table/kup-data-table';\nimport { FRadioData, FRadioProps } from '../f-radio/f-radio-declarations';\nimport { KupDebugCategory } from '../../managers/kup-debug/kup-debug-declarations';\nimport {\n DataAdapterFn,\n KupInputPanelCell,\n} from '../../components/kup-input-panel/kup-input-panel-declarations';\n\nconst dom: KupDom = document.documentElement as KupDom;\n\n/*-------------------------------------------------*/\n/* C o m p o n e n t */\n/*-------------------------------------------------*/\n\nexport const FCell: FunctionalComponent<FCellProps> = (\n props: FCellProps,\n children?: VNode[]\n) => {\n const cell = props.cell;\n const column = props.column;\n const row = props.row;\n const shape = props.shape\n ? props.shape\n : cell.shape\n ? cell.shape\n : column.shape\n ? column.shape\n : null;\n const hasObj = !dom.ketchup.objects.isEmptyKupObj(cell.obj);\n let isEditable = false;\n if (cell.hasOwnProperty('isEditable')) {\n isEditable = cell.isEditable;\n } else if (column.hasOwnProperty('isEditable')) {\n isEditable = column.isEditable;\n }\n isEditable = isEditable && props.editable;\n\n if (cell.options) {\n const cellData = mapData(cell);\n cell.data = cellData\n ? {\n ...cellData,\n ...cell.data,\n }\n : cell.data;\n }\n\n const valueToDisplay = props.previousValue !== cell.value ? cell.value : '';\n const cellType = dom.ketchup.data.cell.getType(cell, shape);\n const subcomponentProps: unknown = { ...cell.data };\n let cssClasses = cell.cssClass\n ? cell.cssClass\n : column?.cssClass\n ? column?.cssClass\n : '';\n\n if ((props.component as KupDataTable).legacyLook) {\n cssClasses += ' monospace c-pre';\n }\n const classObj: Record<string, boolean> = {\n 'f-cell': true,\n [FCellClasses.OBJ]: hasObj ? true : false,\n [cellType + '-cell']: true,\n [props.wrapperClass]: props.wrapperClass ? true : false,\n [props.density]:\n props.density && cellType !== FCellTypes.BAR ? true : false,\n [cssClasses]: cssClasses ? true : false,\n };\n let content: unknown = valueToDisplay;\n if (!cell.data) {\n setDefaults(cellType, cell);\n }\n if (isEditable && editableTypes.includes(cellType)) {\n content = setEditableCell(cellType, classObj, cell, column, props);\n } else if (cell.data && kupTypes.includes(cellType)) {\n if (props.setSizes) {\n setCellSizeKup(cellType, subcomponentProps, cell);\n }\n if (!props.renderKup) {\n const lazyClass = 'cell-' + cellType + ' placeholder';\n content = <span class={lazyClass}></span>;\n } else {\n content = setKupCell(\n cellType,\n classObj,\n subcomponentProps,\n cell,\n row,\n column,\n props\n );\n }\n } else {\n if (props.setSizes) {\n setCellSize(cellType, subcomponentProps, cell, props);\n }\n content = setCell(\n cellType,\n subcomponentProps,\n content,\n classObj,\n cell,\n column,\n props\n );\n }\n\n let icon: VNode = null;\n if (!isEditable && (column.icon || cell.icon) && content) {\n const fProps: FImageProps = {\n color: `rgba(var(${KupThemeColorValues.TEXT}-rgb), 0.375)`,\n resource: cell.icon ? cell.icon : column.icon,\n placeholderResource: cell.placeholderIcon\n ? cell.placeholderIcon\n : column.placeholderIcon,\n sizeX: '1.25em',\n sizeY: '1.25em',\n wrapperClass: 'obj-icon',\n };\n icon = <FImage {...fProps} />;\n }\n\n let cellTitle: string = null;\n if (dom.ketchup.debug.isDebug() && hasObj) {\n cellTitle = cell.obj.t + '; ' + cell.obj.p + '; ' + cell.obj.k + ';';\n } else if (cell.title != null && cell.title.trim() != '') {\n cellTitle = cell.title;\n }\n\n let infoEl: HTMLElement = null;\n if (cell.info) {\n const info: FCellInfo = { ...cell.info };\n if (!info.color) {\n info.color = `var(${KupThemeColorValues.INFO})`;\n }\n if (!info.icon) {\n info.icon = 'info';\n }\n const fProps: FImageProps = {\n color: info.color,\n resource: info.icon,\n placeholderResource: info.placeholderIcon,\n sizeX: '1.25em',\n sizeY: '1.25em',\n title: info.message ? info.message : '',\n wrapperClass: 'cell-info',\n };\n infoEl = <FImage {...fProps} />;\n }\n\n return (\n <div\n onKeyUp={(e) => cellEvent(e, props, cellType, FCellEvents.KEYUP)}\n class={classObj}\n kup-get-cell-props={() => {\n return props;\n }}\n ref={(el) => (cell.element = el)}\n style={cell.style}\n >\n <div\n class=\"f-cell__content\"\n style={cell.styleContent}\n title={cellTitle}\n >\n {props.cellActionIcon && (\n <FImage\n resource=\"more_vert\"\n sizeX=\"16px\"\n sizeY=\"16px\"\n wrapperClass={`f-cell__iconfunction ${\n cellType === FCellTypes.NUMBER ? 'left' : 'right'\n }`}\n onClick={props.cellActionIcon.onClick}\n tabIndex={0}\n />\n )}\n {children && children.length > 0\n ? children\n : [props.indents, infoEl, icon, content]}\n </div>\n </div>\n );\n};\n\nconst mapData = (cell: KupDataCellOptions) => {\n if (!cell) {\n return null;\n }\n const options = cell.options;\n const fieldLabel = cell.title;\n const currentValue = cell.value;\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const dataAdapterMap = new Map<FCellTypes, DataAdapterFn>([\n [FCellTypes.BUTTON_LIST, MainBTNAdapter.bind(this)],\n [FCellTypes.STRING, MainITXAdapter.bind(this)],\n [FCellTypes.RADIO, MainRADAdapter.bind(this)],\n [FCellTypes.AUTOCOMPLETE, MainCMBandACPAdapter.bind(this)],\n [FCellTypes.COMBOBOX, MainCMBandACPAdapter.bind(this)],\n [FCellTypes.CHECKBOX, MainCHKAdapter.bind(this)],\n [FCellTypes.OBJECT, MainObjectAdapter.bind(this)],\n [FCellTypes.CHIP, MainCHIAdapter.bind(this)],\n ]);\n\n const adapter = dataAdapterMap.get(cellType);\n return adapter ? adapter(options, fieldLabel, currentValue, cell) : null;\n};\n\nconst MainCHIAdapter = (\n _options: CellOptions[],\n _fieldLabel: string,\n currentValue: string\n) => {\n return CHIAdapter(currentValue);\n};\n\nconst MainObjectAdapter = (\n _options: CellOptions[],\n fieldLabel: string,\n currentValue: string,\n _cell: KupInputPanelCell,\n _id: string\n) => ({\n data: {\n initialValue: currentValue || '',\n label: fieldLabel || '',\n value: currentValue || '',\n },\n});\n\nconst MainCHKAdapter = (\n _options: CellOptions[],\n fieldLabel: string,\n currentValue: string,\n cell: KupDataCellOptions\n) => ({\n ...cell.data,\n checked: currentValue === 'on' || currentValue === '1',\n label: fieldLabel,\n});\n\nconst MainBTNAdapter = (\n _options: CellOptions[],\n _fieldLabel: string,\n currentValue: string,\n cell: KupDataCellOptions\n) => ({\n data: [\n {\n ...cell.data,\n icon: cell.icon,\n value: currentValue,\n },\n ],\n});\n\nconst MainITXAdapter = (\n _options: CellOptions[],\n fieldLabel: string,\n _currentValue: string,\n cell: KupDataCellOptions\n) => ({\n ...cell.data,\n label: fieldLabel,\n});\n\nconst MainRADAdapter = (\n options: CellOptions[],\n _fieldLabel: string,\n currentValue: string,\n cell?: KupDataCellOptions\n) => {\n const newData = RADAdapter(currentValue, options);\n cell.data = { ...cell.data, ...newData };\n};\n\nconst MainCMBandACPAdapter = (\n options: CellOptions[],\n fieldLabel: string,\n currentValue: string,\n cell: KupDataCellOptions,\n _id: string\n) => {\n if (!cell.data?.data && options) {\n const configCMandACP = CMBandACPAdapter(currentValue, fieldLabel, []);\n configCMandACP.data['kup-list'].data = optionsTreeComboAdapter(\n options,\n currentValue\n );\n return configCMandACP;\n }\n};\n\nconst optionsTreeComboAdapter = (options: any, currentValue: string) => {\n const adapter = optionsAdapterMap.get(options.type);\n\n if (adapter) {\n return adapter(options, currentValue);\n } else {\n return options.map((option) => ({\n value: option.label,\n id: option.id,\n selected: currentValue === option.id,\n }));\n }\n};\n\nconst treeOptionsNodeAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.content.codice,\n value: child.content.testo,\n selected: currentValue === child.content.codice,\n children: child.children?.length\n ? treeOptionsNodeAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst dataTreeOptionsChildrenAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.obj.k,\n value: child.value,\n selected: currentValue === child.obj.k,\n children: child.children?.length\n ? dataTreeOptionsChildrenAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst tableOptionsAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.rows.map((row) => {\n const cells = row.fields || row.cells;\n const [id, value] = Object.keys(cells);\n\n return {\n id: cells[id].value,\n value: cells[value]?.value || cells[id].value,\n selected: currentValue === cells[id].value,\n };\n });\n};\n\nconst optionsAdapterMap = new Map<\n string,\n (options: any, currentValue: string) => GenericObject[]\n>([\n ['SmeupTreeNode', treeOptionsNodeAdapter.bind(this)],\n ['SmeupDataTree', dataTreeOptionsChildrenAdapter.bind(this)],\n ['SmeupTable', tableOptionsAdapter.bind(this)],\n ['SmeupDataTable', tableOptionsAdapter.bind(this)],\n]);\n\nfunction setCellSize(\n cellType: string,\n subcomponentProps: unknown,\n cell: KupDataCell,\n props: FCellProps\n) {\n switch (cellType) {\n case FCellTypes.CHECKBOX:\n case FCellTypes.ICON:\n if (!(subcomponentProps as FImageProps).sizeX) {\n (subcomponentProps as FImageProps).sizeX = '18px';\n }\n if (!(subcomponentProps as FImageProps).sizeY) {\n (subcomponentProps as FImageProps).sizeY = '18px';\n }\n if (cell.style) {\n if (!cell.style.height) {\n cell.style['minHeight'] = (\n subcomponentProps as FImageProps\n ).sizeY;\n }\n } else {\n cell.style = {\n minHeight: (subcomponentProps as FImageProps).sizeY,\n };\n }\n break;\n case FCellTypes.IMAGE:\n const cellValue = props.cell?.value || '';\n const hasExternalResource =\n cellValue.indexOf('.') > -1 ||\n cellValue.indexOf('/') > -1 ||\n cellValue.indexOf('\\\\') > -1;\n if (\n (props.component as KupComponent).rootElement.tagName ===\n KupTagNames.DATA_TABLE &&\n !hasExternalResource\n ) {\n if (\n !(subcomponentProps as FImageProps).sizeX &&\n !(subcomponentProps as FImageProps).sizeY\n ) {\n (subcomponentProps as FImageProps).sizeX = '100%';\n (subcomponentProps as FImageProps).sizeY = '64px';\n (subcomponentProps as FImageProps).wrapperClass = 'noWidth';\n } else {\n if (!(subcomponentProps as FImageProps).sizeX) {\n (subcomponentProps as FImageProps).sizeX = '100%';\n (subcomponentProps as FImageProps).wrapperClass =\n 'noWidth';\n }\n if (!(subcomponentProps as FImageProps).sizeY) {\n (subcomponentProps as FImageProps).sizeY = 'auto';\n }\n }\n }\n if (\n (props.component as KupComponent).rootElement.tagName ===\n KupTagNames.BOX\n ) {\n if (!(subcomponentProps as FImageProps).sizeY) {\n (subcomponentProps as FImageProps).sizeY = 'auto';\n }\n if ((subcomponentProps as FImageProps).fit === undefined) {\n (subcomponentProps as FImageProps).fit = true;\n }\n } else if (!(subcomponentProps as FImageProps).sizeX) {\n (subcomponentProps as FImageProps).sizeX = 'auto';\n }\n if (!(subcomponentProps as FImageProps).sizeY) {\n (subcomponentProps as FImageProps).sizeY = '64px';\n }\n\n break;\n }\n}\n\nfunction setCellSizeKup(\n cellType: string,\n subcomponentProps: unknown,\n cell: KupDataCell\n) {\n switch (cellType) {\n case FCellTypes.BAR:\n if (!(subcomponentProps as FImageProps).sizeY) {\n (subcomponentProps as FImageProps).sizeY = '26px';\n }\n break;\n case FCellTypes.BUTTON:\n let height: string = '';\n if ((subcomponentProps as FButtonProps).label) {\n height = '36px';\n }\n if (cell.style) {\n if (!cell.style.height) {\n cell.style['minHeight'] = height;\n }\n } else {\n cell.style = { minHeight: height };\n }\n break;\n case FCellTypes.CHART:\n if (!(subcomponentProps as KupChart).sizeX) {\n (subcomponentProps as KupChart).sizeX = '100%';\n }\n if (!(subcomponentProps as KupChart).sizeY) {\n (subcomponentProps as KupChart).sizeY = '100%';\n }\n break;\n case FCellTypes.CHIP:\n if (cell.style) {\n if (!cell.style.height) {\n cell.style['minHeight'] = '40px';\n }\n } else {\n cell.style = { minHeight: '40px' };\n }\n break;\n case FCellTypes.RADIO:\n if (cell.style) {\n if (!cell.style.height) {\n cell.style['minHeight'] = '40px';\n }\n } else {\n cell.style = { minHeight: '40px' };\n }\n break;\n }\n}\n\nfunction setEditableCell(\n cellType: string,\n classObj: Record<string, boolean>,\n cell: KupDataCell,\n column: KupDataColumn,\n props: FCellProps\n): unknown {\n switch (cellType) {\n case FCellTypes.AUTOCOMPLETE:\n return (\n <kup-autocomplete\n key={column.name + props.row.id}\n initialValue={cell.value}\n {...cell.data}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n onkup-autocomplete-change={(\n e: CustomEvent<KupAutocompleteEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n onkup-autocomplete-input={(\n e: CustomEvent<KupAutocompleteEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n onkup-autocomplete-iconclick={(\n e: CustomEvent<KupAutocompleteEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.ICON_CLICK)}\n />\n );\n case FCellTypes.CHECKBOX:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n\n if (cell.shape === FCellShapes.INPUT_CHECKBOX) {\n return (\n <input\n checked={\n cell.value === 'on' || cell.value === '1'\n ? true\n : false\n }\n class=\"input-checkbox\"\n onChange={(e: InputEvent) =>\n cellEvent(e, props, cellType, FCellEvents.UPDATE)\n }\n type=\"checkbox\"\n ></input>\n );\n } else {\n return (\n <FCheckbox\n {...cell.data}\n onChange={(e: InputEvent) =>\n cellEvent(e, props, cellType, FCellEvents.UPDATE)\n }\n />\n );\n }\n case FCellTypes.CHIP:\n return (\n <kup-chip\n {...cell.data}\n type={FChipType.INPUT}\n enableInput={true}\n onKup-chip-change={(\n e: CustomEvent<KupChipChangeEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n >\n <kup-text-field\n fullWidth={true}\n slot=\"field\"\n {...cell.slotData}\n error={cell.data.error}\n ></kup-text-field>\n </kup-chip>\n );\n case FCellTypes.COLOR_PICKER:\n return (\n <kup-color-picker\n key={column.name + props.row.id}\n initialValue={cell.value}\n {...cell.data}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n disabled={false}\n onkup-colorpicker-change={(\n e: CustomEvent<KupColorPickerEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n ></kup-color-picker>\n );\n case FCellTypes.COMBOBOX:\n return (\n <kup-combobox\n key={column.name + props.row.id}\n initialValue={cell.value}\n {...cell.data}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n onkup-combobox-change={(\n e: CustomEvent<KupComboboxEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n onkup-combobox-input={(\n e: CustomEvent<KupComboboxEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n onkup-combobox-iconclick={(\n e: CustomEvent<KupComboboxEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.ICON_CLICK)}\n />\n );\n case FCellTypes.DATE:\n return (\n <kup-date-picker\n key={column.name + props.row.id}\n initialValue={cell.value}\n {...cell.data}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n onkup-datepicker-change={(\n e: CustomEvent<KupDatePickerEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n onkup-datepicker-input={(\n e: CustomEvent<KupDatePickerEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n />\n );\n case FCellTypes.MULTI_AUTOCOMPLETE:\n return (\n <kup-chip\n displayId={true}\n {...cell.data}\n type={FChipType.INPUT}\n enableInput={true}\n onKup-chip-change={(\n e: CustomEvent<KupChipChangeEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n >\n <kup-autocomplete\n class=\"kup-full-width\"\n slot=\"field\"\n displayMode={ItemsDisplayMode.DESCRIPTION_AND_CODE}\n selectMode={ItemsDisplayMode.DESCRIPTION_AND_CODE}\n onkup-autocomplete-input={(\n e: CustomEvent<KupAutocompleteEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n onkup-autocomplete-iconclick={(\n e: CustomEvent<KupComboboxEventPayload>\n ) =>\n cellEvent(\n e,\n props,\n cellType,\n FCellEvents.ICON_CLICK\n )\n }\n showDropDownIcon={false}\n {...cell.slotData}\n error={cell.data.error}\n ></kup-autocomplete>\n </kup-chip>\n );\n case FCellTypes.MULTI_COMBOBOX:\n return (\n <kup-chip\n displayId={true}\n {...cell.data}\n type={FChipType.INPUT}\n enableInput={true}\n onKup-chip-change={(\n e: CustomEvent<KupChipChangeEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n >\n <kup-combobox\n class=\"kup-full-width\"\n slot=\"field\"\n displayMode={ItemsDisplayMode.DESCRIPTION_AND_CODE}\n selectMode={ItemsDisplayMode.DESCRIPTION_AND_CODE}\n onkup-combobox-input={(\n e: CustomEvent<KupComboboxEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n onkup-combobox-iconclick={(\n e: CustomEvent<KupComboboxEventPayload>\n ) =>\n cellEvent(\n e,\n props,\n cellType,\n FCellEvents.ICON_CLICK\n )\n }\n {...cell.slotData}\n error={cell.data.error}\n ></kup-combobox>\n </kup-chip>\n );\n case FCellTypes.RADIO:\n return (\n <FRadio\n {...cell.data}\n disabled={false}\n onChange={(i: number, e: InputEvent) => {\n const radioData = (cell.data as FRadioProps).data;\n for (let index = 0; index < radioData.length; index++) {\n const radioEl = radioData[index];\n if (index === i) {\n radioEl.checked = true;\n } else {\n radioEl.checked = false;\n }\n }\n cellEvent(e, props, cellType, FCellEvents.UPDATE);\n }}\n ></FRadio>\n );\n case FCellTypes.RATING:\n return (\n <kup-rating\n key={column.name + props.row.id}\n {...cell.data}\n disabled={false}\n onkup-rating-click={(\n e: CustomEvent<KupRatingClickEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n ></kup-rating>\n );\n case FCellTypes.SWITCH:\n return (\n <FSwitch\n {...cell.data}\n disabled={false}\n onChange={(e: InputEvent) =>\n cellEvent(e, props, cellType, FCellEvents.UPDATE)\n }\n ></FSwitch>\n );\n case FCellTypes.TIME:\n return (\n <kup-time-picker\n key={column.name + props.row.id}\n initialValue={cell.value}\n {...cell.data}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n onkup-timepicker-change={(\n e: CustomEvent<KupTimePickerEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.UPDATE)}\n onkup-timepicker-input={(\n e: CustomEvent<KupTimePickerEventPayload>\n ) => cellEvent(e, props, cellType, FCellEvents.INPUT)}\n />\n );\n case FCellTypes.OBJECT:\n return (\n <FTextField\n icon={'table'}\n {...cell.data}\n disabled={false}\n onIconClick={(e) =>\n cellEvent(e, props, cellType, FCellEvents.ICON_CLICK)\n }\n ></FTextField>\n );\n case FCellTypes.NUMBER:\n classObj[FCellClasses.C_RIGHT_ALIGNED] = true;\n case FCellTypes.LINK:\n case FCellTypes.STRING:\n const onChange = (e: InputEvent) =>\n cellEvent(e, props, cellType, FCellEvents.UPDATE);\n const onInput = (e: InputEvent) =>\n cellEvent(e, props, cellType, FCellEvents.INPUT);\n const type = cellType === FCellTypes.NUMBER ? 'number' : null;\n const value =\n cellType === FCellTypes.NUMBER && cell.value\n ? dom.ketchup.math.numberifySafe(cell.value).toString()\n : cell.value;\n if (cell.shape === FCellShapes.INPUT_FIELD) {\n return (\n <input\n class={'input-field'}\n onChange={onChange}\n onInput={onInput}\n type={type}\n value={value}\n maxLength={column.cellData?.maxLength ?? -1}\n ></input>\n );\n } else {\n return (\n <FTextField\n inputType={type}\n fullWidth={isFullWidth(props) ? true : false}\n {...cell.data}\n icon={\n cell.data && cell.data.icon\n ? cell.data.icon\n : cell.icon\n ? cell.icon\n : column.icon\n ? column.icon\n : null\n }\n value={value}\n onChange={onChange}\n onInput={onInput}\n onIconClick={(e: MouseEvent) =>\n cellEvent(\n e,\n props,\n cellType,\n FCellEvents.ICON_CLICK\n )\n }\n />\n );\n }\n }\n}\n\nfunction setCell(\n cellType: string,\n subcomponentProps: GenericObject,\n content: unknown,\n classObj: Record<string, boolean>,\n cell: KupDataCell,\n column: KupDataColumn,\n props: FCellProps\n): unknown {\n switch (cellType) {\n case FCellTypes.AUTOCOMPLETE:\n case FCellTypes.COMBOBOX:\n case FCellTypes.DATE:\n case FCellTypes.DATETIME:\n case FCellTypes.TIME:\n if (content && content != '') {\n const cellValue = getCellValueForDisplay(column, cell);\n return <div class=\"f-cell__text\">{cellValue}</div>;\n }\n return content;\n case FCellTypes.CHECKBOX:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n return (\n <FImage\n resource={\n (subcomponentProps as FCheckboxProps).checked\n ? 'check_box'\n : 'check_box_outline_blank'\n }\n sizeX=\"18px\"\n sizeY=\"18px\"\n />\n );\n case FCellTypes.EDITOR:\n return <div innerHTML={cell.value}></div>;\n case FCellTypes.ICON:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n if ((subcomponentProps as FImageProps).badgeData) {\n classObj[FCellClasses.C_PADDED] = true;\n }\n return <FImage {...subcomponentProps} />;\n case FCellTypes.IMAGE:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n if ((subcomponentProps as FImageProps).badgeData) {\n classObj[FCellClasses.C_PADDED] = true;\n }\n\n return <FImage {...subcomponentProps} />;\n\n case FCellTypes.LINK:\n return (\n <a href={content as string} target=\"_blank\">\n {cell.value}\n </a>\n );\n case FCellTypes.NUMBER:\n if (content && content != '') {\n const cellValueNumber = dom.ketchup.math.numberifySafe(\n cell.value\n );\n const cellValue = getCellValueForDisplay(column, cell);\n if (cellValueNumber < 0) {\n classObj[FCellClasses.TEXT_DANGER] = true;\n }\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_RIGHT_ALIGNED] = true;\n }\n return <div class=\"f-cell__text\">{cellValue}</div>;\n }\n return <div class=\"f-cell__text\">{content}</div>;\n case FCellTypes.SWITCH:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n subcomponentProps['disabled'] = true;\n return <FSwitch {...subcomponentProps}></FSwitch>;\n default:\n return <div class=\"f-cell__text\">{content}</div>;\n }\n}\n\nfunction setKupCell(\n cellType: string,\n classObj: Record<string, boolean>,\n subcomponentProps: GenericObject,\n cell: KupDataCell,\n row: KupDataRow,\n column: KupDataColumn,\n props: FCellProps\n): unknown {\n switch (cellType) {\n case FCellTypes.BAR:\n if (!(subcomponentProps as FImageProps).data) {\n return (\n <kup-image\n key={column.name + props.row.id}\n sizeX=\"250px\"\n {...subcomponentProps}\n />\n );\n } else {\n const barStyle = {\n height: (subcomponentProps as FImageProps).sizeY,\n width: '100%',\n };\n return (\n <div style={barStyle}>\n <FImage {...subcomponentProps} />\n </div>\n );\n }\n case FCellTypes.BUTTON:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n return (\n <FButton\n {...subcomponentProps}\n onClick={(e) =>\n cellEvent(e, props, cellType, FCellEvents.CLICK)\n }\n ></FButton>\n );\n case FCellTypes.BUTTON_LIST:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n subcomponentProps['data-storage'] = {\n cell: cell,\n row: row,\n column: column,\n };\n return (\n <kup-button-list\n key={column.name + props.row.id}\n {...subcomponentProps}\n ></kup-button-list>\n );\n case FCellTypes.CHART:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n return (\n <kup-chart\n key={column.name + props.row.id}\n {...subcomponentProps}\n />\n );\n case FCellTypes.MULTI_AUTOCOMPLETE:\n case FCellTypes.MULTI_COMBOBOX:\n case FCellTypes.CHIP:\n return <FChip {...subcomponentProps} />;\n case FCellTypes.COLOR_PICKER:\n return (\n <kup-color-picker\n key={column.name + props.row.id}\n {...subcomponentProps}\n class={isFullWidth(props) ? 'kup-full-width' : ''}\n disabled\n ></kup-color-picker>\n );\n case FCellTypes.GAUGE:\n return (\n <kup-gauge\n key={column.name + props.row.id}\n value={dom.ketchup.math.numberifySafe(cell.value)}\n width-component=\"280px\"\n {...subcomponentProps}\n ></kup-gauge>\n );\n case FCellTypes.KNOB:\n case FCellTypes.PROGRESS_BAR:\n return subcomponentProps.customStyle ? (\n <kup-progress-bar\n key={column.name + props.row.id}\n {...subcomponentProps}\n ></kup-progress-bar>\n ) : (\n <FProgressBar {...subcomponentProps}></FProgressBar>\n );\n case FCellTypes.RADIO:\n if (isAutoCentered(props)) {\n classObj[FCellClasses.C_CENTERED] = true;\n }\n subcomponentProps['disabled'] = row.readOnly;\n return <FRadio {...subcomponentProps}></FRadio>;\n case FCellTypes.RATING:\n return <FRating {...subcomponentProps} disabled={true}></FRating>;\n case FCellTypes.OBJECT:\n return (\n <FTextField\n icon={'table'}\n {...subcomponentProps}\n disabled={true}\n ></FTextField>\n );\n }\n}\n\nfunction setDefaults(cellType: string, cell: KupDataCell): void {\n function isShapeBarMarker(value: string): boolean {\n return value.toUpperCase().startsWith('SHAPE;BAR');\n }\n\n function isShapeMarker(value: string): boolean {\n return value.toUpperCase().startsWith('SHAPE;');\n }\n\n function isBgColorMarker(value: string): boolean {\n return value.toUpperCase().startsWith('BCOLOR;');\n }\n\n function isHeightMarker(value: string): boolean {\n return value.toUpperCase().startsWith('HEIGHT;');\n }\n\n function isDecoratorMarker(value: string): boolean {\n return (\n value.toUpperCase().startsWith('SEP;') ||\n value.toUpperCase().startsWith('DIV;') ||\n value.toUpperCase().startsWith('ARW;') ||\n value.toUpperCase().startsWith('GRID;')\n );\n }\n function getData(value: string): FImageData[] | null {\n if (!value) {\n return null;\n }\n const graphicElementDefinitionArr = value.split('\\\\\\\\AND\\\\');\n const data: FImageData[] = [];\n for (const graphicElem of graphicElementDefinitionArr) {\n const elementData = getElementData(graphicElem);\n if (elementData) {\n data.push(...elementData);\n } else {\n return null;\n }\n }\n return data;\n }\n\n function getElementData(value: string): FImageData[] | null {\n const commonsData: FImageData = {};\n\n const markersArray = value.split('\\\\\\\\');\n const shapesArray: FImageData[] = [];\n\n for (const vString of markersArray) {\n if (vString) {\n if (isDecoratorMarker(vString)) {\n return null;\n }\n\n if (isShapeMarker(vString)) {\n if (!isShapeBarMarker(vString)) {\n return null;\n } else {\n const attr = vString.split(';');\n if (attr.length === 3) {\n const width = attr[2].replace(',', '.');\n if (!isNaN(parseFloat(width))) {\n commonsData.width = `${width}%`;\n }\n }\n }\n } else if (isBgColorMarker(vString)) {\n // Background color handling can be added here if needed\n } else if (isHeightMarker(vString)) {\n const height = vString\n .substring('HEIGHT;'.length)\n .replace(',', '.');\n if (!isNaN(parseFloat(height))) {\n commonsData.height = `${height}%`;\n }\n } else {\n shapesArray.push(getShapeData(vString, commonsData));\n }\n }\n return shapesArray.length ? shapesArray : null;\n }\n\n function getShapeData(\n value: string,\n commonsData: FImageData\n ): FImageData {\n const shapeData: FImageData = { ...commonsData };\n const attr = value.split(';');\n if (attr.length >= 1) {\n const pattern = /R(\\d+)G(\\d+)B(\\d+)/;\n const match = pattern.exec(attr[0]);\n if (match) {\n const [, r, g, b] = match;\n if (\n !isNaN(parseInt(r, 10)) &&\n !isNaN(parseInt(g, 10)) &&\n !isNaN(parseInt(b, 10))\n ) {\n shapeData.color = `rgb(${parseInt(r)},${parseInt(\n g\n )},${parseInt(b)})`;\n }\n }\n if (attr.length >= 2) {\n const width = attr[1].replace(',', '.');\n if (!isNaN(parseFloat(width))) {\n shapeData.width = `${width}%`;\n }\n }\n }\n return shapeData;\n }\n }\n\n cell.data = {};\n\n const createDataset = () => {\n const parts = cell.value?.split(';');\n if (parts?.[parts.length - 1].trim() === '') {\n parts.pop();\n }\n if (parts && parts.length) {\n cell.data.data = [];\n for (let part of parts) {\n (cell.data.data as KupDataNode[]).push({\n id: part,\n value: part,\n });\n }\n }\n };\n\n switch (cellType) {\n case FCellTypes.CHECKBOX:\n case FCellTypes.SWITCH:\n cell.data.checked = cell.value === '1' ? true : false;\n break;\n\n case FCellTypes.BAR:\n if (isShapeMarker(cell.value)) {\n cell.data.isCanvas = true;\n cell.data.resource = cell.value;\n } else {\n cell.data.data = getData(cell.value);\n }\n break;\n\n case FCellTypes.BUTTON:\n cell.data.label = cell.value;\n break;\n\n case FCellTypes.CHART:\n Object.assign(cell.data, {\n sizeX: '100px',\n sizeY: '100px',\n offlineMode: {\n value: cell.value,\n shape: 'pie',\n },\n });\n break;\n\n case FCellTypes.BUTTON_LIST:\n case FCellTypes.CHIP:\n case FCellTypes.MULTI_AUTOCOMPLETE:\n case FCellTypes.MULTI_COMBOBOX:\n case FCellTypes.RADIO:\n createDataset();\n break;\n\n case FCellTypes.COLOR_PICKER:\n cell.data.initialValue = cell.value;\n break;\n\n case FCellTypes.GAUGE:\n case FCellTypes.KNOB:\n case FCellTypes.PROGRESS_BAR:\n case FCellTypes.RATING:\n cell.data.value = parseInt(cell.value);\n break;\n\n case FCellTypes.ICON:\n case FCellTypes.IMAGE:\n cell.data.resource = cell.value;\n break;\n }\n}\n\nfunction cellEvent(\n e: InputEvent | CustomEvent | MouseEvent | KeyboardEvent,\n props: FCellProps,\n cellType: FCellTypes,\n cellEventName: FCellEvents\n): void {\n const cell = props.cell;\n const column = props.column;\n const comp = props.component;\n const row = props.row;\n if (cellEventName === FCellEvents.UPDATE) {\n let value = getValueFromEventTarget(e, cellType);\n switch (cellType) {\n case FCellTypes.AUTOCOMPLETE:\n case FCellTypes.COMBOBOX:\n case FCellTypes.DATE:\n case FCellTypes.TIME:\n if (cell.data) {\n cell.data['initialValue'] = value;\n }\n break;\n case FCellTypes.CHECKBOX:\n case FCellTypes.SWITCH:\n value = value === 'on' ? '0' : '1';\n if (cell.data) {\n (cell.data as FCheckboxProps).checked =\n value === '0' ? false : true;\n }\n break;\n case FCellTypes.RADIO:\n if (cell.data.data) {\n const radioData = cell.data.data as FRadioData[];\n const checkedItem = radioData.find((item) => item.checked);\n if (checkedItem) {\n value = checkedItem.value;\n }\n }\n break;\n case FCellTypes.CHIP:\n case FCellTypes.MULTI_AUTOCOMPLETE:\n case FCellTypes.MULTI_COMBOBOX:\n value = (e as CustomEvent<KupChipChangeEventPayload>).detail\n .stringifiedValues;\n if (cell.data) {\n (cell.data as FChipsProps).data = (\n e as CustomEvent<KupChipChangeEventPayload>\n ).detail.comp.data;\n }\n break;\n }\n if (cell.obj) {\n cell.obj.k = value?.toString();\n }\n cell.value = value?.toString();\n cell.displayedValue = null;\n cell.displayedValue = getCellValueForDisplay(column, cell);\n }\n if (comp && (comp as KupComponent).rootElement) {\n const cellEvent = new CustomEvent<FCellEventPayload>(cellEventName, {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n comp: comp,\n id: (comp as KupComponent).rootElement.id,\n cell: cell,\n column: column,\n event: e,\n row: row,\n type: cellType,\n },\n });\n (comp as KupComponent).rootElement.dispatchEvent(cellEvent);\n if (cellEventName === FCellEvents.UPDATE) {\n try {\n (comp as KupComponent).refresh();\n } catch (error) {\n dom.ketchup.debug.logMessage(\n comp,\n error,\n KupDebugCategory.ERROR\n );\n }\n }\n }\n}\n\nfunction getValueFromEventTarget(\n e: InputEvent | CustomEvent | MouseEvent | KeyboardEvent,\n cellType: FCellTypes\n): string {\n const isInputEvent = !!((e.target as HTMLElement).tagName === 'INPUT');\n let value = isInputEvent\n ? (e.target as HTMLInputElement).value\n : e.detail.value;\n\n if (cellType === FCellTypes.CHECKBOX && isInputEvent) {\n value = (e.target as HTMLInputElement).checked ? 'off' : 'on';\n }\n\n if (cellType === FCellTypes.NUMBER && isInputEvent) {\n value = dom.ketchup.math.formattedStringToNumberString(value, '');\n }\n\n return value;\n}\n\nfunction isAutoCentered(props: FCellProps) {\n return autoCenterComps.includes(\n (props.component as KupComponent)?.rootElement.tagName as KupTagNames\n );\n}\n\nfunction isFullWidth(props: FCellProps) {\n return fullWidthFieldsComps.includes(\n (props.component as KupComponent)?.rootElement.tagName as KupTagNames\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as i,f as e,h as s,H as n,d as a}from"./p-d7c15b0e.js";import{k as f,f as o,ao as h,g as p,s as l,R as r,h as c,ap as m,aq as
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as i,f as e,h as s,H as n,d as a}from"./p-d7c15b0e.js";import{k as f,f as o,ao as h,g as p,s as l,R as r,h as c,ap as m,aq as d}from"./p-41e9e598.js";import{c as g}from"./p-635bb4b3.js";import{F as u}from"./p-cc32b7a2.js";import{F as y}from"./p-33e84dd7.js";import"./p-029c7cbe.js";import"./p-e3062c19.js";import"./p-2b519589.js";import"./p-5d03c077.js";import"./p-ca3f5c62.js";import"./p-b95e7cbf.js";const k=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{display:block;height:100%;width:100%}#kup-component{height:100%;width:100%}";const b=k;var x=undefined&&undefined.__classPrivateFieldGet||function(t,i,e,s){if(e==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof i==="function"?t!==i||!s:!i.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return e==="m"?s:e==="a"?s.call(t):s?s.value:i.get(t)};var w;const v=class{constructor(e){t(this,e);this.kupCellSubmitClick=i(this,"kup-cell-submit-click",6);w.set(this,f());this.customStyle="";this.data=null;this.density=o.NONE;this.dragEnabled=false;this.showSubmit=false;this.submitPosition=h.right}async addCssClasses(t){if(!this.data.cssClass){this.data.cssClass=""}if(t){for(let i=0;i<t.length;i++){const e=t[i];if(this.data.cssClass.indexOf(e)<0){this.data.cssClass+=` ${e}`}}}this.refresh()}async getProps(t){return p(this,d,t)}async refresh(){e(this)}async removeCssClasses(t){if(!this.data.cssClass){return}if(t){for(let i=0;i<t.length;i++){const e=t[i];if(this.data.cssClass.indexOf(e)>0){this.data.cssClass=this.data.cssClass.replace(new RegExp(e,"g"),"")}}}this.refresh()}async setProps(t){l(this,d,t)}didRenderInteractables(){if(this.dragEnabled){const t=()=>({cell:this.data,column:this.generateColumn(),id:this.rootElement.id,multiple:false,row:this.generateRow()});x(this,w,"f").interact.draggable(this.rootElement.shadowRoot.querySelector("#"+g),{cursorChecker(){return null}},{callback:t},r.BADGE)}}generateColumn(){const t=this.data&&this.data.obj&&this.data.obj.t?this.data.obj.t+";"+this.data.obj.p:"KUPCELL";const i=this.data&&this.data.obj&&this.data.obj.t?this.data.obj.t+";"+this.data.obj.p:x(this,w,"f").language.translate(c.EMPTY_OBJECT);return{name:t,title:i}}generateRow(){const t=this.generateColumn();const i={cells:{}};i.cells[t.name]=this.data;return i}submitClick(t){t.stopPropagation();this.kupCellSubmitClick.emit({comp:this,id:this.rootElement.id,cell:this.data})}componentWillLoad(){x(this,w,"f").dates.register(this);x(this,w,"f").debug.logLoad(this,false);x(this,w,"f").language.register(this);x(this,w,"f").theme.register(this)}componentDidLoad(){x(this,w,"f").debug.logLoad(this,true)}componentWillRender(){x(this,w,"f").debug.logRender(this,false)}componentDidRender(){this.didRenderInteractables();x(this,w,"f").debug.logRender(this,true)}render(){const t={cell:this.data,column:this.generateColumn(),component:this,density:this.density,editable:this.data.isEditable,renderKup:true,row:this.generateRow()};return s(n,{key:"f12fd8802b3ece98d2638f70584f9d0e922cb1c6"},s("style",{key:"38db9c993baf168da9178866b5b25db9d9e8f914"},x(this,w,"f").theme.setKupStyle(this.rootElement)),s("div",{key:"95b1c5fb70e1b4f0e531cc31bcbab17d414a67b9",id:g,style:this.showSubmit?{display:"flex","flex-direction":m(this.submitPosition),"align-items":"center",gap:"0.5rem"}:{}},s(y,Object.assign({key:"9fd21848cf6db9a068f2b7dd909b2b6a50cd77dc"},t)),this.showSubmit?s(u,{buttonType:"submit",label:x(this,w,"f").language.translate(c.CONFIRM),wrapperClass:"form__submit",onClick:t=>{this.submitClick(t)}}):null))}disconnectedCallback(){x(this,w,"f").dates.unregister(this);x(this,w,"f").language.unregister(this);x(this,w,"f").theme.unregister(this)}get rootElement(){return a(this)}};w=new WeakMap;v.style=b;export{v as kup_cell};
|
|
2
|
+
//# sourceMappingURL=p-346a60f6.entry.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as t,c as e,f as i,h as o,H as s,d as n}from"./p-d7c15b0e.js";import{k as r,y as a,g as l,s as h,a1 as c,v as p,h as u,b as d,e as f,N as b,R as x,au as g,V as m,E as k}from"./p-41e9e598.js";import{f as w,p as v,s as y}from"./p-172e642a.js";import{F as _}from"./p-2b519589.js";import{c as j}from"./p-b95e7cbf.js";import{c as C}from"./p-635bb4b3.js";import{F as z}from"./p-f55c264d.js";import{p as P,r as M,F as R}from"./p-23d7a078.js";import{F as A}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-5d03c077.js";import"./p-ca3f5c62.js";import"./p-cc32b7a2.js";import"./p-e3062c19.js";import"./p-d4a879fc.js";var I;(function(t){t["cardData"]="Data of the card linked to the box when the latter's layout must be a premade template.";t["columns"]="Number of columns.";t["customStyle"]="Custom style of the component.";t["data"]="Actual data of the box.";t["dragEnabled"]="Enable dragging.";t["dropEnabled"]="Enable dropping.";t["dropOnSection"]="Drop can be done in section.";t["enableRowActions"]="If enabled, a button to load / display the row actions will be displayed on the right of every box.";t["globalFilter"]="When set to true it activates the global filter.";t["globalFilterValue"]="The value of the global filter.";t["kanban"]="Displays the boxlist as a Kanban.";t["layout"]="How the field will be displayed. If not present, a default one will be created.";t["lazyLoadRows"]="When set to true, extra rows will be automatically loaded once the last row enters the viewport.";t["loadMoreLimit"]="Sets a maximum limit of new records which can be required by the load more functionality.";t["loadMoreMode"]="Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.";t["loadMoreStep"]="The number of records which will be requested to be downloaded when clicking on the load more button. This property is regulated also by loadMoreMode.";t["multiSelection"]="Enable multi selection.";t["pageSelected"]="Current page number.";t["pagination"]="Enables pagination.";t["rowsPerPage"]="Number of current rows per page.";t["scrollOnHover"]="Activates the scroll on hover function.";t["selectBox"]="Automatically selects the box at the specified index.";t["selectedRowsState"]="Multiple selection.";t["showLoadMore"]="If set to true, displays the button to load more records.";t["showSelection"]="If enabled, highlights the selected box/boxes.";t["sortBy"]="If sorting is enabled, specifies which column to sort.";t["sortEnabled"]="Enable sorting.";t["stateId"]="";t["store"]="";t["swipeDisabled"]="Disable swipe."})(I||(I={}));var E;(function(t){t["CONSTANT"]="constant";t["CONSTANT_INCREMENT"]="constant_increment";t["PROGRESSIVE_THRESHOLD"]="progressive_threshold"})(E||(E={}));class S{constructor(){this.globalFilterValue="";this.sortBy="";this.selectedRowsState="";this.pageSelected=1;this.rowsPerPage=0;this.load=false;this.loadMoreLimit=1e3;this.showLoadMore=false}toDebugString(){return"box state"}}const O=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_box_background_color:var(--kup-box-background-color, var(--kup-layer-1));--kup_box_background_color_hover:var(\n --kup-box-background-color-hover,\n var(--kup-layer-1-hover)\n );--kup_box_background_color_selected:var(\n --kup-box-background-color-selected,\n var(--kup-layer-1-selected)\n );--kup_box_text_color:var(--kup-box-text-color, var(--kup-text-secondary));--kup_box_grid_gap:var(--kup-box-grid-gap, var(--kup-space-03));--kup_box_transition:var(--kup-box-transition, 0.25s);--kup_box_border_color_drag:var(--kup-box-border-color-drag, var(--kup-border-interactive))\n display: block;--kup_box_padding:var(--kup-box-padding, var(--kup-space-05))}.box-component{transition:border var(--kup_box_transition) ease}.box-component[kup-drag-over]{position:relative;border:3px dashed var(--kup_box_border_color_drag)}#box-container{display:grid;grid-gap:var(--kup_box_grid_gap);color:var(--kup_box_text_color);overflow:auto}#box-container.is-kanban .kanban-section{overflow:auto}#box-container.is-kanban .box-wrapper{padding-top:1em}#box-container.is-kanban .box-wrapper .box{overflow:auto}#box-container *:not(.progress-bar-percentage){box-sizing:border-box}#box-container .box-wrapper{display:flex;align-items:center;background-color:var(--kup_box_background_color);border-radius:var(--kup-radius-00)}#box-container .box-wrapper:hover{background-color:var(--kup_box_background_color_hover)}#box-container .box-wrapper.selected{background-color:var(--kup_box_background_color_selected)}#box-container .box-wrapper.selected .box-section.titled>h3{background-color:transparent}#box-container .box-wrapper .box{flex-grow:1;cursor:pointer;position:relative;display:flex;padding:var(--kup_box_padding);transition:background-color var(--kup_box_transition) ease, box-shadow var(--kup_box_transition) ease, border var(--kup_box_transition) ease}#box-container .box-wrapper .box.draggable{touch-action:none;user-select:none}#box-container .box-wrapper .box.column{flex-direction:column}#box-container .box-wrapper .box[kup-draggable]{opacity:0.5}#box-container .box-wrapper .box[kup-drag-over]{border:3px dashed var(--kup_box_border_color_drag);position:relative;z-index:2}#box-container .box-wrapper .box .box-section{display:flex;flex-direction:row;flex:1 1 1%;flex-wrap:wrap}#box-container .box-wrapper .box .box-section.column{flex-direction:column;justify-content:center;flex-wrap:unset}#box-container .box-wrapper .box .box-section.column>.box-section{flex:0 0 auto}#box-container .box-wrapper .box .box-section.grid{display:grid}#box-container .box-wrapper .box .box-section .box-object{min-height:16px}#box-container .box-wrapper .box .box-section .box-object img{height:auto}#box-container .box-wrapper .box .box-section.collapse-section .header{border-top:1px solid var(--kup-border-subtle);color:rgba(var(--kup-text-secondary-rgb), 0.75);display:flex;justify-content:space-around;width:100%}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content{margin:0.5em;display:flex;align-items:center}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image{transition:transform 0.15s}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image.toggled{transform:rotate(-180deg)}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .kup-icon.kup-dropdown-icon{margin:0;-webkit-mask:var(--kup-dropdown-icon);mask:var(--kup-dropdown-icon)}#box-container .box-wrapper .box .box-section.collapse-section .content{display:none;width:100%}#box-container .box-wrapper .box .box-section.collapse-section.open .content{display:block}#box-container .box-wrapper .box .box-section.titled{border:1px solid var(--kup-border-subtle);padding-top:5px;position:relative;margin:10px}#box-container .box-wrapper .box .box-section.titled>h3{background:var(--kup-background-color);font-size:calc(var(--kup-font-size) * 1.15);position:absolute;margin:0px;padding:0 8px;top:-11px;left:5px;transition:background-color 0.25s ease}#box-container .box-wrapper .box .box-selection{position:absolute;top:0.5em;right:0.5em;z-index:1}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler{position:relative;width:24px;height:24px;margin-left:3px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler svg{cursor:pointer;opacity:0;fill:var(--kup-text-color);transition:opacity 300ms ease-out}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu{background:var(--kup-background-color);border:1px solid var(--kup-border-subtle);box-shadow:0px 0px 7.5px 0px rgba(128, 128, 128, 0.5);position:absolute;top:0;right:24px;display:none;z-index:10}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul{list-style-type:none;margin:0;padding:0}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li{cursor:pointer;white-space:nowrap;padding:0 12px;display:flex;align-items:center;line-height:30px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li:not(:last-child){border-bottom:1px solid var(--kup-border-subtle)}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu.open{display:block}#box-container .box-wrapper:hover .row-actions-wrapper .row-actions-toggler svg{opacity:1}#sort-panel,#global-filter{margin-bottom:1em}:host(.kup-center-aligned) #kup-component .box-section{text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell img{margin:auto}:host(.kup-right-aligned) #kup-component .box-section{text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell img{margin-left:auto;margin-right:0}:host(.kup-top-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-start}:host(.kup-bottom-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-end}:host(.kup-flat-on-hover) #box-container .box-wrapper .box:hover{box-shadow:none}:host(.kup-shaped) .box{border-radius:10px}:host(.kup-round) .box{border-radius:25px}:host(.kup-dashed-sections) .box-section{border:2px dashed var(--kup-text-color)}:host(:not(.kup-paddingless)) #box-container .box .box-section .box-object{padding:1px 4px}:host(:not(.kup-paddingless)) #box-container .box .box-section.last-child{padding:3px 4px}:host(.kup-danger){--kup-box-primary-color-rgb:var(--kup-danger-color-rgb)}:host(.kup-info){--kup-box-primary-color-rgb:var(--kup-info-color-rgb)}:host(.kup-secondary){--kup-box-primary-color-rgb:var(--kup-secondary-color-rgb)}:host(.kup-success){--kup-box-primary-color-rgb:var(--kup-success-color-rgb)}:host(.kup-warning){--kup-box-primary-color-rgb:var(--kup-warning-color-rgb)}";const D=O;var W=undefined&&undefined.__classPrivateFieldGet||function(t,e,i,o){if(i==="a"&&!o)throw new TypeError("Private accessor was defined without a getter");if(typeof e==="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?o:i==="a"?o.call(t):o?o.value:e.get(t)};var B=undefined&&undefined.__classPrivateFieldSet||function(t,e,i,o,s){if(o==="m")throw new TypeError("Private method is not writable");if(o==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e==="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return o==="a"?s.call(t,i):s?s.value=i:e.set(t,i),i};var T,$,L,F,H,N,G,V,q;const K=class{constructor(i){t(this,i);this.kupBoxClick=e(this,"kup-box-click",6);this.kupBoxSelected=e(this,"kup-box-selected",6);this.kupAutoBoxSelect=e(this,"kup-box-autoselect",6);this.kupRowActionMenuClick=e(this,"kup-box-rowactionmenuclick",6);this.kupRowActionClick=e(this,"kup-box-rowactionclick",6);this.kupDidLoad=e(this,"kup-box-didload",6);this.kupDidUnload=e(this,"kup-box-didunload",6);this.kupBoxContextMenu=e(this,"kup-box-contextmenu",6);this.kupLoadMoreClick=e(this,"kup-box-loadmoreclick",6);T.add(this);this.state=new S;this.kupManager=r();this.visibleColumns=[];this.rows=[];this.filteredRows=[];this.sectionRef=null;this.rowsRefs=[];this.hold=false;this.interactableDrag=[];this.interactableDrop=[];this.interactableTouch=[];$.set(this,undefined);L.set(this,[]);F.set(this,0);H.set(this,0);N.set(this,0);this.collapsedSection={};this.selectedRows=[];this.rowActionMenuOpened=undefined;this.currentPage=1;this.currentRowsPerPage=10;this.cardData=null;this.columns=1;this.customStyle="";this.data=null;this.dragEnabled=false;this.dropEnabled=false;this.dropOnSection=false;this.editableData=false;this.enableRowActions=false;this.globalFilter=false;this.globalFilterValue="";this.kanban=null;this.layout=undefined;this.lazyLoadRows=false;this.loadMoreLimit=1e3;this.loadMoreMode=E.PROGRESSIVE_THRESHOLD;this.loadMoreStep=60;this.multiSelection=false;this.pageSelected=1;this.pagination=false;this.rowsPerPage=undefined;this.scrollOnHover=false;this.selectBox=undefined;this.selectedRowsState=undefined;this.showLoadMore=false;this.showSelection=true;this.sortBy=undefined;this.sortEnabled=false;this.stateId="";this.store=undefined;this.swipeDisabled=false}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){this.kupManager.debug.logMessage(this,"Initialize with state for stateId "+this.stateId+": "+t);this.sortBy=this.state.sortBy;this.globalFilterValue=this.state.globalFilterValue;this.selectedRowsState=this.state.selectedRowsState;this.pageSelected=this.state.pageSelected;this.rowsPerPage=this.state.rowsPerPage;this.loadMoreLimit=t.loadMoreLimit;this.showLoadMore=t.showLoadMore}}}persistState(){if(this.store&&this.stateId){let t=false;if(!this.kupManager.objects.deepEqual(this.state.sortBy,this.sortBy)){this.state.sortBy=this.sortBy;t=true}if(!this.kupManager.objects.deepEqual(this.state.globalFilterValue,this.globalFilterValue)){this.state.globalFilterValue=this.globalFilterValue;t=true}if(!this.kupManager.objects.deepEqual(this.state.pageSelected,this.currentPage)){this.state.pageSelected=this.currentPage;t=true}if(!this.kupManager.objects.deepEqual(this.state.rowsPerPage,this.currentRowsPerPage)){this.state.rowsPerPage=this.currentRowsPerPage;t=true}const e=this.selectedRows.reduce(((t,e,i)=>{const o=i>0?";":"";return t+o+e.id}),"");if(!this.kupManager.objects.deepEqual(this.state.selectedRowsState,e)){this.state.selectedRowsState=e;t=true}if(!this.kupManager.objects.deepEqual(this.state.loadMoreLimit,this.loadMoreLimit)){this.state.loadMoreLimit=this.loadMoreLimit;t=true}if(!this.kupManager.objects.deepEqual(this.state.showLoadMore,this.showLoadMore)){this.state.showLoadMore=this.showLoadMore;t=true}if(!this.state.load){this.state.load=true;return}if(t){this.kupManager.debug.logMessage(this,"Persisting state for stateId "+this.stateId+": "+this.state);this.store.persistState(this.stateId,this.state)}}}rowsPerPageHandler(t){this.currentRowsPerPage=t}recalculateRows(){this.initRows()}onDataChanged(){a(this.getRows());this.initVisibleColumns();this.initRows();this.checkLayout()}onLayoutChanged(){this.checkLayout()}onSelectBoxChanged(){this.handleAutomaticBoxSelection()}async getProps(t){return l(this,I,t)}async loadRowActions(t,e){t.actions=e;this.rowActionMenuOpened=t}async refresh(){i(this)}async setProps(t){h(this,I,t)}getColumns(){return this.data&&this.data.columns?this.data.columns:[{title:"",name:"",size:undefined}]}initVisibleColumns(){this.visibleColumns=this.getColumns().filter((t=>{if(t.hasOwnProperty("visible")){return t.visible}return true}))}getRows(){return this.data&&this.data.rows?this.data.rows:[]}initRows(){this.filteredRows=this.getRows();if(this.globalFilter&&this.globalFilterValue){this.filteredRows=w(this.filteredRows,null,this.globalFilterValue,this.visibleColumns)}this.rows=this.sortRows(this.filteredRows);if(this.pagination){this.rows=v(this.rows,this.currentPage,this.currentRowsPerPage,false)}}sortRows(t){let e=t;if(this.sortBy){e=y(e,this.toSortObjectList())}return e}toSortObjectList(){const t=this.sortBy.split("|").map((t=>{const e=t.split(",");const i={column:e[0],sortMode:e.length>1?c[e[1]]:c.A};return i}));return t}checkScrollOnHover(){if(this.boxContainer){if(!this.kupManager.scrollOnHover.isRegistered(this.boxContainer)){if(this.scrollOnHover){this.kupManager.scrollOnHover.register(this.boxContainer)}}else{if(!this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}}}}checkLayout(){if(this.layout){this.boxLayout=this.layout;return}const t={horizontal:false,sections:[]};const e=this.visibleColumns;let i=e.length;let o=[];let s=0;while(i-- >0){o.push({column:e[s++].name})}t.content=o;this.boxLayout={sections:[t]}}onSortChange(t){let e=p(this.visibleColumns,t.detail.value);this.sortBy=e.name}onGlobalFilterChange({detail:t}){let e="";if(t&&t.value){e=t.value}this.globalFilterValue=e}isSectionExpanded(t,e){if(!t.id||!e.id){return false}return this.collapsedSection[e.id]&&this.collapsedSection[e.id][t.id]}handleAutomaticBoxSelection(){if(this.selectBox&&this.selectBox>0&&this.selectBox<=this.data.rows.length){this.selectedRows=[];for(let t of this.data.rows){if(t.id===(this.selectBox-1).toString()){this.selectedRows.push(t);break}}this.kupAutoBoxSelect.emit({comp:this,id:this.rootElement.id,row:this.selectedRows[0]})}}getEventDetails(t,e){let i=null;let o=null;let s=null;let n=null;if(t){for(let e=t.length-1;e>=0;e--){let o=t[e];if(!o.tagName){continue}switch(o.tagName.toUpperCase()){default:{if(o.classList.contains("box-object")){i=o}if(!s&&o["data-row"]){s=o["data-row"]}break}}}}if(i){if(i.classList.contains("f-cell")){const t=i["kup-get-cell-props"]();o=t.cell;n=t.column;s=t.row}else{o=i["data-cell"];s=i["data-row"];n=p(this.visibleColumns,i.dataset.column)}}return{boxObject:i?i:null,column:n?n:null,cell:o?o:null,originalEvent:e,row:s?s:null}}clickHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);if(e.row){if(this.multiSelection){this.onSelectionCheckChange(e.row)}else{this.selectedRows=[e.row]}}return e}contextMenuHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);return e}checkIfElementIsActionMenuIcon(t){if(t.tagName&&t.parentElement){return t.tagName==="svg"&&t.parentElement.classList.contains("row-actions-toggler")}return false}onSelectionCheckChange(t){var e=-1;for(let i=0;i<this.selectedRows.length;i++){const o=this.selectedRows[i];if(o.id===t.id){e=i;break}}if(e>=0){this.selectedRows.splice(e,1);this.selectedRows=[...this.selectedRows]}else{this.selectedRows=[...this.selectedRows,t]}this.kupBoxSelected.emit({comp:this,id:this.rootElement.id,rows:this.selectedRows})}toggleSectionExpand(t,e){if(!e.id){console.error("cannot expand / collapse a section withoun an ID");return}if(!t.id){console.error("cannot expand / collapse a section of a row without ad id");return}if(!this.collapsedSection[e.id]){this.collapsedSection[e.id]={};this.collapsedSection[e.id][t.id]=true}else{const i=this.collapsedSection[e.id];if(!i[t.id]){i[t.id]=true}else{i[t.id]=!i[t.id]}}this.collapsedSection=Object.assign({},this.collapsedSection)}onRowAction(t){if(!t){return}if(t===this.rowActionMenuOpened){this.rowActionMenuOpened=null;return}if(t.actions){this.rowActionMenuOpened=t}else{this.kupRowActionMenuClick.emit({comp:this,id:this.rootElement.id,row:t})}}onRowActionClick(t,e,i){this.kupRowActionClick.emit({comp:this,id:this.rootElement.id,row:t,action:e,index:i})}clickFunction(t){try{const e=t.composedPath();for(let t of e){if(this.checkIfElementIsActionMenuIcon(t)){return}}}catch(e){if(this.checkIfElementIsActionMenuIcon(t.target)){return}}this.rowActionMenuOpened=null}handlePageChange(t){const e=P(t,this.filteredRows.length,this.currentRowsPerPage);if(e){this.currentPage=e}}handleRowsPerPageChange(t){const e=M(t,this.filteredRows.length);if(e){this.currentRowsPerPage=e;this.adjustPaginator()}}adjustPaginator(){const t=this.rows.length;const e=Math.ceil(t/this.currentRowsPerPage);if(this.currentPage>e){this.currentPage=1}}renderSectionAsCard(t){let e=false;const i={button:[],cell:[],columns:[],image:[],progressbar:[],text:[]};for(let e=0;e<this.data.columns.length;e++){const o=this.data.columns[e];if(o.visible!==false){i.cell.push(t.cells[o.name]);i.columns.push(o)}}for(const e in t.cells){if(t.cells.hasOwnProperty(e)){const o=t.cells[e];if(o.cardID!==undefined&&o.obj){switch(o.obj.p){case"BTN":do{i.button.push({})}while(i.button.length<o.cardID);i.button[o.cardID]={label:o.value};break;case"IMG":do{i.image.push({})}while(i.image.length<o.cardID);i.image[o.cardID]={resource:o.value};break;case"PGB":do{i.progressbar.push({})}while(i.progressbar.length<o.cardID);i.progressbar[o.cardID]={value:o.value};break;default:do{i.text.push("")}while(i.text.length<o.cardID);i.text[o.cardID]=o.value;break}}}}for(const o in t.cells){if(t.cells.hasOwnProperty(o)){const s=t.cells[o];if(s.cardID===undefined&&s.obj){e=false;switch(s.obj.p){case"BTN":for(let t=0;t<i.button.length;t++){if(!Object.keys(i.button[t]).length){i.button[t]={label:s.value};e=true;break}}if(!e){i.button.push({label:s.value})}break;case"IMG":for(let t=0;t<i.image.length;t++){if(!Object.keys(i.image[t]).length){i.image[t]={resource:s.value};e=true;break}}if(!e){i.image.push({resource:s.value})}break;case"PGB":for(let t=0;t<i.progressbar.length;t++){if(!Object.keys(i.progressbar[t]).length){i.progressbar[t]={value:s.value};e=true;break}}if(!e){i.progressbar.push({value:s.value})}break;default:for(let t=0;t<i.text.length;t++){if(i.text[t]===""){i.text[t]=s.value;e=true;break}}if(!e){i.text.push(s.value)}break}}}}return o("kup-card",Object.assign({data:i},this.cardData))}renderRow(t){const e=[...this.visibleColumns];let i=null;let s=t.layout;if(!s){s=this.boxLayout}let n=false;if(s){if(s.horizontal){n=true}const o=s.sections;let r=o.length;let a=0;if(r>0){i=[]}const l={horizontal:n};while(r-- >0){if(this.cardData!==null&&this.cardData!==undefined&&typeof this.cardData==="object"){i.push(this.renderSectionAsCard(t))}else{i.push(this.renderSection(o[a++],l,t,e))}}}var r=false;for(let e of this.selectedRows){if(e.id===t.id){r=true}}let a=null;if(this.multiSelection){a=o("div",{class:"box-selection"},o("kup-checkbox",{checked:r}))}let l=null;if(this.enableRowActions&&!this.swipeDisabled){const e={"row-action-menu":true,open:t===this.rowActionMenuOpened};let i=null;if(t.actions){const e=t.actions.map(((e,i)=>{const s=`icon ${e.icon}`;return o("li",{tabindex:"0",onClick:()=>this.onRowActionClick(t,e,i)},o("div",{class:s}),o("div",{class:"text"},e.text))}));i=o("ul",null,e)}l=o("div",{class:"row-actions-wrapper"},o("div",{class:"row-actions-toggler"},o("svg",{version:"1.1",width:"24",height:"24",viewBox:"0 0 24 24",onClick:()=>this.onRowAction(t)},o("path",{d:"M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z"})),o("div",{class:e},i)))}let h=null;if(t.badgeData&&t.badgeData.length>0){h=t.badgeData.map((t=>o("kup-badge",{text:t.text,class:t["className"]?`centered ${t["className"]}`:"centered",imageData:t.imageData})))}const c={box:true,draggable:this.dragEnabled,selected:this.showSelection&&r,column:!n};const p=t.style||{};return o("div",{class:"box-wrapper",style:p,ref:t=>{if(t){W(this,L,"f").push(t)}}},o("div",{class:c,"data-row":t,ref:t=>this.rowsRefs.push(t)},a,i,h),l)}renderSection(t,e,i,s){let n=null;if(t.sections&&t.sections.length>0){const e=t.sections;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderSection(e[r++],t,i,s))}}else if(t.content){const e=t.content;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderBoxObject({boxObject:e[r++],row:i,visibleColumns:s},true))}}else if(s.length>0){const t=s[0];n=this.renderBoxObject({boxObject:{column:t.name},row:i,visibleColumns:s})}const r=this.isSectionExpanded(i,t);const a=!!t.columns;const l={"box-section":true,open:r,column:!a&&!t.horizontal,grid:a,titled:!!t.title,"last-child":!t.sections||t.sections.length===0};const h=t.style||{};if(t.dim&&e){h.flex=`0 0 ${t.dim}`;h.overflow="hidden";if(e.horizontal){h.maxWidth=t.dim}else{h.maxHeight=t.dim}}if(a){h["grid-template-columns"]=`repeat(${t.columns}, 1fr)`}let c=null;if(t.collapsible){l["collapse-section"]=true;const e={content:true};let s="";if(t.title){s=t.title}else if(r){s=this.kupManager.language.translate(u.COLLAPSE)}else{s=this.kupManager.language.translate(u.EXPAND)}c=o("div",{class:l,style:h},o("div",{class:e},n),o("div",{class:"header",role:"button",onClick:e=>{e.stopPropagation();this.toggleSectionExpand(i,t)}},o("div",{class:"header-content"},o("span",null,s),o(_,{resource:`${d.DROPDOWN}`,sizeX:"1.25em",sizeY:"1.25em",wrapperClass:r?"toggled":""}))))}else{const e=t.title?o("h3",null,t.title):null;c=o("div",{class:l,style:h},e,n)}return c}renderBoxObject({boxObject:t,row:e,visibleColumns:i},s){const n={"box-object":true};const r={};let a=null;let l=-1;for(let e=0;e<i.length;e++){const o=i[e];if(o.name===t.column){l=e;break}}if(l>=0){a=i[l];i.splice(l,1)}else if(s){a=this.data.columns.find((e=>e.name===t.column))}const h=e.cells[t.column];let c=undefined;if(h&&!this.kupManager.objects.isEmptyKupObj(h.obj)){n["is-obj"]=true;if(this.kupManager.debug.isDebug()){c=h.obj.t+"; "+h.obj.p+"; "+h.obj.k+";"}}const p={cell:h,column:a,component:this,editable:this.editableData,renderKup:true,row:e,setSizes:true,shape:t.shape};return o("div",{"data-cell":h,"data-row":e,"data-column":t.column,class:n,style:r,title:c},h&&a?o(z,Object.assign({},p)):o("span",null,t.value))}kanbanMode(){if(!this.kanban.columns||this.kanban.columns.length===0){this.kupManager.debug.logMessage(this,"No columns to group by detected.",f.ERROR);return{jsx:o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{ref:t=>this.rowsRefs.push(t)}),this.kupManager.language.translate(u.EMPTY_DATA)),style:{"grid-template-columns":`repeat(1, 1fr)`}}}const t=[];if(this.kanban.labels){for(let e=0;e<this.kanban.labels.length;e++){const i=this.kanban.labels[e];t.push({labels:i,nodes:[]})}}for(let e=0;e<this.rows.length;e++){let i=[];for(let t=0;t<this.kanban.columns.length;t++){try{i.push(this.rows[e].cells[this.kanban.columns[t]].value)}catch(t){this.kupManager.debug.logMessage(this,t,f.WARNING)}}const o={found:false,index:null};for(let e=0;e<t.length;e++){let s=t[e].labels;let n=true;for(let t=0;t<s.length;t++){if(i[t]!==s[t]){n=false;break}}if(n){o.found=true;o.index=e;break}}if(o.found){t[o.index].nodes.push(this.renderRow(this.rows[e]))}else{t.push({labels:i,nodes:[this.renderRow(this.rows[e])]})}}const e=[];for(let i=0;i<t.length;i++){const s=t[i].labels;const n={data:[]};for(let t=0;t<s.length;t++){n.data.push({value:s[t],id:s[t]})}e.push(o("div",{class:"kanban-section"},o(j,Object.assign({},n)),t[i].nodes))}return{jsx:e,style:{"grid-template-columns":this.kanban.isStacked?"repeat(1fr)":this.kanban.size?`repeat(${Object.keys(t).length}, ${this.kanban.size})`:`repeat(${Object.keys(t).length}, 1fr)`}}}didLoadInteractables(){this.interactableTouch.push(this.boxContainer);const t=t=>{var e;if(this.hold){this.hold=false;return}switch(t.button){case 0:const i={};for(const e in t){i[e]=t[e]}const o=this.clickHandler(i);this.kupBoxClick.emit({comp:this,id:this.rootElement.id,row:o.row,column:(e=o.column)===null||e===void 0?void 0:e.name});break;case 2:this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)});break}};const e=t=>{if(t.pointerType==="pen"||t.pointerType==="touch"){this.hold=true;this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)})}};this.kupManager.interact.on(this.boxContainer,b.TAP,t);this.kupManager.interact.on(this.boxContainer,b.HOLD,e)}didRenderInteractables(){if(this.dragEnabled){for(let t=0;t<this.rowsRefs.length;t++){const e=this.rowsRefs[t];const i=()=>{const t=this.rootElement.shadowRoot.querySelector(".box-object:hover");return{cell:t["data-cell"],column:p(this.visibleColumns,t.dataset.column),id:this.rootElement.id,multiple:this.multiSelection,row:t["data-row"],selectedRows:this.selectedRows}};if(e&&!this.interactableDrag.includes(e)){this.interactableDrag.push(e);this.kupManager.interact.draggable(e,{allowFrom:".box-object",cursorChecker(){return null}},{callback:i},x.BADGE)}}}if(this.dropEnabled){const t=()=>{const t=this.rootElement.shadowRoot.querySelector(".box:hover");if(!t){this.kupManager.debug.logMessage(this,"Couldn't find cell hovered to retrieve dropzone informations!",f.WARNING);return}const e=this.kupManager.getEventPath(t,this.rootElement);const i=this.getEventDetails(e);return{cell:i.cell,column:i.column,id:this.rootElement.id,row:i.row}};if(!this.interactableDrop.includes(this.sectionRef)){this.interactableDrop.push(this.sectionRef);this.kupManager.interact.dropzone(this.sectionRef,{accept:`[${g}]`},{dispatcher:this.rootElement,type:m.BOX})}for(let e=0;e<this.rowsRefs.length;e++){const i=this.rowsRefs[e];if(i&&!this.interactableDrop.includes(i)){this.interactableDrop.push(i);this.kupManager.interact.dropzone(i,{accept:`[${g}]`},{callback:t,dispatcher:this.rootElement,type:m.BOX})}}}}componentWillLoad(){this.kupManager.debug.logLoad(this,false);if(this.rowsPerPage){this.currentRowsPerPage=this.rowsPerPage}if(this.data&&this.data.rows&&this.currentRowsPerPage>this.data.rows.length){this.currentRowsPerPage=this.data.rows.length}this.kupManager.language.register(this);this.kupManager.theme.register(this);this.onDataChanged();this.adjustPaginator();if(document.querySelector(".header")){B(this,F,document.querySelector(".header").clientHeight,"f")}else{B(this,F,0,"f")}if(document.querySelector(".topbar")){B(this,F,W(this,F,"f")+document.querySelector(".topbar").clientHeight,"f")}W(this,T,"m",V).call(this)}componentDidLoad(){this.handleAutomaticBoxSelection();document.addEventListener("click",this.clickFunction.bind(this));this.currentPage=this.pageSelected;if(this.multiSelection&&this.selectedRowsState){this.selectedRows=[];let t=this.selectedRowsState.split(";");this.selectedRows=this.data.rows.filter((e=>t.indexOf(e.id)>=0))}this.didLoadInteractables();this.kupDidLoad.emit({comp:this,id:this.rootElement.id});this.kupManager.debug.logLoad(this,true)}componentWillRender(){this.kupManager.debug.logRender(this,false)}componentDidRender(){const t=this.rootElement.shadowRoot;if(t){const e=t.querySelectorAll(".f-text-field");for(let t=0;t<e.length;t++){A(e[t])}}this.checkScrollOnHover();this.persistState();this.didRenderInteractables();W(this,T,"m",G).call(this);this.kupManager.debug.logRender(this,true)}render(){B(this,L,[],"f");const t=!!(typeof this.kanban==="object"&&this.kanban!==null);let e=null;if(this.sortEnabled){const t=this.visibleColumns.map((t=>{const e={value:t.title,id:t.name,selected:t.name===this.sortBy};return e}));const i=[{value:"",id:""},...t];let s={label:this.kupManager.language.translate(u.SORT_BY),trailingIcon:true};let n={data:i,selectable:true};let r={"kup-text-field":s,"kup-list":n};e=o("div",{id:"sort-panel"},o("kup-combobox",{data:r,initialValue:this.sortBy,"onkup-combobox-itemclick":t=>this.onSortChange(t)}))}let i=null;if(this.globalFilter){i=o("div",{id:"global-filter"},o("kup-text-field",{fullWidth:true,label:this.kupManager.language.translate(k.SEARCH),icon:d.SEARCH,initialValue:this.globalFilterValue,"onkup-textfield-input":t=>{window.clearTimeout(this.globalFilterTimeout);this.globalFilterTimeout=window.setTimeout((()=>this.onGlobalFilterChange(t)),600)}}))}let n=null;if(this.showLoadMore||!this.lazyLoadRows&&this.pagination){n=o(R,{id:"top-paginator",currentPage:this.currentPage,max:this.filteredRows.length,perPage:this.currentRowsPerPage?this.currentRowsPerPage:this.rowsPerPage,onLoadMore:this.showLoadMore?()=>{W(this,T,"m",q).call(this)}:null,onNextPage:()=>this.handlePageChange(this.currentPage+1),onPrevPage:()=>this.handlePageChange(this.currentPage-1),onPageChange:t=>this.handlePageChange(t.detail.value),onRowsChange:t=>this.handleRowsPerPageChange(t.detail.value)})}let r=null;let a={};if(this.rows.length===0){r=o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{class:"box",ref:t=>this.rowsRefs.push(t)},this.kupManager.language.translate(u.EMPTY_DATA)));a={"grid-template-columns":`repeat(1, 1fr)`}}else if(t){const t=this.kanbanMode();r=t.jsx;a=t.style}else{a={"grid-template-columns":`repeat(${this.columns}, 1fr)`};const t=this.rows;let e=t.length;let i=0;r=[];while(e-- >0){r.push(this.renderRow(t[i++]))}}return o(s,null,o("style",null,this.kupManager.theme.setKupStyle(this.rootElement)),o("div",{id:C},o("div",{class:"box-component",ref:t=>this.sectionRef=t},e,i,n,o("div",{class:t?"is-kanban":"",id:"box-container",style:a,onContextMenu:t=>{t.preventDefault()},ref:t=>this.boxContainer=t},r))))}disconnectedCallback(){this.kupManager.interact.unregister(this.interactableDrag.concat(this.interactableDrop));this.kupManager.language.unregister(this);this.kupManager.theme.unregister(this);if(this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}document.removeEventListener("click",this.clickFunction.bind(this));this.kupDidUnload.emit({comp:this,id:this.rootElement.id})}get rootElement(){return n(this)}static get watchers(){return{rowsPerPage:["rowsPerPageHandler","recalculateRows"],globalFilterValue:["recalculateRows"],sortBy:["recalculateRows"],pagination:["recalculateRows"],currentPage:["recalculateRows"],currentRowsPerPage:["recalculateRows"],data:["onDataChanged"],layout:["onLayoutChanged"],selectBox:["onSelectBoxChanged"]}}};$=new WeakMap,L=new WeakMap,F=new WeakMap,H=new WeakMap,N=new WeakMap,T=new WeakSet,G=function t(){if(this.lazyLoadRows&&this.currentRowsPerPage<this.data.rows.length){W(this,$,"f").observe(W(this,L,"f")[W(this,L,"f").length-1])}},V=function t(){const e=t=>{t.forEach((t=>{if(t.isIntersecting){this.kupManager.debug.logMessage(this,"Last row entering the viewport, loading more elements.");const e=this.data.rows.length-this.currentRowsPerPage;if(e<this.loadMoreStep){this.currentRowsPerPage+=e}else{this.currentRowsPerPage+=this.loadMoreStep}t.target.classList.remove("last-row");W(this,$,"f").unobserve(t.target)}}))};const i={threshold:0,rootMargin:"-"+W(this,F,"f")+"px 0px 0px 0px"};B(this,$,new IntersectionObserver(e,i),"f")},q=function t(){var e;let i=0;switch(this.loadMoreMode){case E.CONSTANT:i=this.loadMoreStep;break;case E.CONSTANT_INCREMENT:i=this.loadMoreStep*(W(this,H,"f")+1);break;case E.PROGRESSIVE_THRESHOLD:i=Math.max(W(this,N,"f"),this.loadMoreStep)*Math.min(W(this,H,"f")+1,2);break}if(i>this.loadMoreLimit){i=this.loadMoreLimit}this.kupLoadMoreClick.emit({comp:this,id:this.rootElement.id,loadItems:i});B(this,N,i,"f");B(this,H,(e=W(this,H,"f"),e++,e),"f")};K.style=D;export{K as kup_box};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as t,c as e,f as i,h as o,H as s,d as n}from"./p-d7c15b0e.js";import{k as r,y as a,g as l,s as h,a1 as c,v as p,h as u,b as d,e as f,N as b,R as x,au as g,V as m,E as k}from"./p-41e9e598.js";import{f as w,p as v,s as y}from"./p-172e642a.js";import{F as _}from"./p-2b519589.js";import{c as j}from"./p-b95e7cbf.js";import{c as C}from"./p-635bb4b3.js";import{F as z}from"./p-33e84dd7.js";import{p as P,r as M,F as R}from"./p-23d7a078.js";import{F as A}from"./p-c4054aba.js";import"./p-029c7cbe.js";import"./p-5d03c077.js";import"./p-ca3f5c62.js";import"./p-cc32b7a2.js";import"./p-e3062c19.js";import"./p-d4a879fc.js";var I;(function(t){t["cardData"]="Data of the card linked to the box when the latter's layout must be a premade template.";t["columns"]="Number of columns.";t["customStyle"]="Custom style of the component.";t["data"]="Actual data of the box.";t["dragEnabled"]="Enable dragging.";t["dropEnabled"]="Enable dropping.";t["dropOnSection"]="Drop can be done in section.";t["enableRowActions"]="If enabled, a button to load / display the row actions will be displayed on the right of every box.";t["globalFilter"]="When set to true it activates the global filter.";t["globalFilterValue"]="The value of the global filter.";t["kanban"]="Displays the boxlist as a Kanban.";t["layout"]="How the field will be displayed. If not present, a default one will be created.";t["lazyLoadRows"]="When set to true, extra rows will be automatically loaded once the last row enters the viewport.";t["loadMoreLimit"]="Sets a maximum limit of new records which can be required by the load more functionality.";t["loadMoreMode"]="Establish the modality of how many new records will be downloaded. This property is regulated also by loadMoreStep.";t["loadMoreStep"]="The number of records which will be requested to be downloaded when clicking on the load more button. This property is regulated also by loadMoreMode.";t["multiSelection"]="Enable multi selection.";t["pageSelected"]="Current page number.";t["pagination"]="Enables pagination.";t["rowsPerPage"]="Number of current rows per page.";t["scrollOnHover"]="Activates the scroll on hover function.";t["selectBox"]="Automatically selects the box at the specified index.";t["selectedRowsState"]="Multiple selection.";t["showLoadMore"]="If set to true, displays the button to load more records.";t["showSelection"]="If enabled, highlights the selected box/boxes.";t["sortBy"]="If sorting is enabled, specifies which column to sort.";t["sortEnabled"]="Enable sorting.";t["stateId"]="";t["store"]="";t["swipeDisabled"]="Disable swipe."})(I||(I={}));var E;(function(t){t["CONSTANT"]="constant";t["CONSTANT_INCREMENT"]="constant_increment";t["PROGRESSIVE_THRESHOLD"]="progressive_threshold"})(E||(E={}));class S{constructor(){this.globalFilterValue="";this.sortBy="";this.selectedRowsState="";this.pageSelected=1;this.rowsPerPage=0;this.load=false;this.loadMoreLimit=1e3;this.showLoadMore=false}toDebugString(){return"box state"}}const O=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{--kup_box_background_color:var(--kup-box-background-color, var(--kup-layer-1));--kup_box_background_color_hover:var(\n --kup-box-background-color-hover,\n var(--kup-layer-1-hover)\n );--kup_box_background_color_selected:var(\n --kup-box-background-color-selected,\n var(--kup-layer-1-selected)\n );--kup_box_text_color:var(--kup-box-text-color, var(--kup-text-secondary));--kup_box_grid_gap:var(--kup-box-grid-gap, var(--kup-space-03));--kup_box_transition:var(--kup-box-transition, 0.25s);--kup_box_border_color_drag:var(--kup-box-border-color-drag, var(--kup-border-interactive))\n display: block;--kup_box_padding:var(--kup-box-padding, var(--kup-space-05))}.box-component{transition:border var(--kup_box_transition) ease}.box-component[kup-drag-over]{position:relative;border:3px dashed var(--kup_box_border_color_drag)}#box-container{display:grid;grid-gap:var(--kup_box_grid_gap);color:var(--kup_box_text_color);overflow:auto}#box-container.is-kanban .kanban-section{overflow:auto}#box-container.is-kanban .box-wrapper{padding-top:1em}#box-container.is-kanban .box-wrapper .box{overflow:auto}#box-container *:not(.progress-bar-percentage){box-sizing:border-box}#box-container .box-wrapper{display:flex;align-items:center;background-color:var(--kup_box_background_color);border-radius:var(--kup-radius-00)}#box-container .box-wrapper:hover{background-color:var(--kup_box_background_color_hover)}#box-container .box-wrapper.selected{background-color:var(--kup_box_background_color_selected)}#box-container .box-wrapper.selected .box-section.titled>h3{background-color:transparent}#box-container .box-wrapper .box{flex-grow:1;cursor:pointer;position:relative;display:flex;padding:var(--kup_box_padding);transition:background-color var(--kup_box_transition) ease, box-shadow var(--kup_box_transition) ease, border var(--kup_box_transition) ease}#box-container .box-wrapper .box.draggable{touch-action:none;user-select:none}#box-container .box-wrapper .box.column{flex-direction:column}#box-container .box-wrapper .box[kup-draggable]{opacity:0.5}#box-container .box-wrapper .box[kup-drag-over]{border:3px dashed var(--kup_box_border_color_drag);position:relative;z-index:2}#box-container .box-wrapper .box .box-section{display:flex;flex-direction:row;flex:1 1 1%;flex-wrap:wrap}#box-container .box-wrapper .box .box-section.column{flex-direction:column;justify-content:center;flex-wrap:unset}#box-container .box-wrapper .box .box-section.column>.box-section{flex:0 0 auto}#box-container .box-wrapper .box .box-section.grid{display:grid}#box-container .box-wrapper .box .box-section .box-object{min-height:16px}#box-container .box-wrapper .box .box-section .box-object img{height:auto}#box-container .box-wrapper .box .box-section.collapse-section .header{border-top:1px solid var(--kup-border-subtle);color:rgba(var(--kup-text-secondary-rgb), 0.75);display:flex;justify-content:space-around;width:100%}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content{margin:0.5em;display:flex;align-items:center}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image{transition:transform 0.15s}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .f-image.toggled{transform:rotate(-180deg)}#box-container .box-wrapper .box .box-section.collapse-section .header .header-content .kup-icon.kup-dropdown-icon{margin:0;-webkit-mask:var(--kup-dropdown-icon);mask:var(--kup-dropdown-icon)}#box-container .box-wrapper .box .box-section.collapse-section .content{display:none;width:100%}#box-container .box-wrapper .box .box-section.collapse-section.open .content{display:block}#box-container .box-wrapper .box .box-section.titled{border:1px solid var(--kup-border-subtle);padding-top:5px;position:relative;margin:10px}#box-container .box-wrapper .box .box-section.titled>h3{background:var(--kup-background-color);font-size:calc(var(--kup-font-size) * 1.15);position:absolute;margin:0px;padding:0 8px;top:-11px;left:5px;transition:background-color 0.25s ease}#box-container .box-wrapper .box .box-selection{position:absolute;top:0.5em;right:0.5em;z-index:1}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler{position:relative;width:24px;height:24px;margin-left:3px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler svg{cursor:pointer;opacity:0;fill:var(--kup-text-color);transition:opacity 300ms ease-out}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu{background:var(--kup-background-color);border:1px solid var(--kup-border-subtle);box-shadow:0px 0px 7.5px 0px rgba(128, 128, 128, 0.5);position:absolute;top:0;right:24px;display:none;z-index:10}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul{list-style-type:none;margin:0;padding:0}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li{cursor:pointer;white-space:nowrap;padding:0 12px;display:flex;align-items:center;line-height:30px}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu ul>li:not(:last-child){border-bottom:1px solid var(--kup-border-subtle)}#box-container .box-wrapper .row-actions-wrapper .row-actions-toggler .row-action-menu.open{display:block}#box-container .box-wrapper:hover .row-actions-wrapper .row-actions-toggler svg{opacity:1}#sort-panel,#global-filter{margin-bottom:1em}:host(.kup-center-aligned) #kup-component .box-section{text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:center;margin:auto;text-align:center}:host(.kup-center-aligned) #kup-component .box-section .f-cell img{margin:auto}:host(.kup-right-aligned) #kup-component .box-section{text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell .f-cell__content{justify-content:flex-end;margin-left:auto;margin-right:0;text-align:right}:host(.kup-right-aligned) #kup-component .box-section .f-cell img{margin-left:auto;margin-right:0}:host(.kup-top-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-start}:host(.kup-bottom-aligned) #box-container .box-wrapper .box .box-section .column{justify-content:flex-end}:host(.kup-flat-on-hover) #box-container .box-wrapper .box:hover{box-shadow:none}:host(.kup-shaped) .box{border-radius:10px}:host(.kup-round) .box{border-radius:25px}:host(.kup-dashed-sections) .box-section{border:2px dashed var(--kup-text-color)}:host(:not(.kup-paddingless)) #box-container .box .box-section .box-object{padding:1px 4px}:host(:not(.kup-paddingless)) #box-container .box .box-section.last-child{padding:3px 4px}:host(.kup-danger){--kup-box-primary-color-rgb:var(--kup-danger-color-rgb)}:host(.kup-info){--kup-box-primary-color-rgb:var(--kup-info-color-rgb)}:host(.kup-secondary){--kup-box-primary-color-rgb:var(--kup-secondary-color-rgb)}:host(.kup-success){--kup-box-primary-color-rgb:var(--kup-success-color-rgb)}:host(.kup-warning){--kup-box-primary-color-rgb:var(--kup-warning-color-rgb)}";const D=O;var W=undefined&&undefined.__classPrivateFieldGet||function(t,e,i,o){if(i==="a"&&!o)throw new TypeError("Private accessor was defined without a getter");if(typeof e==="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?o:i==="a"?o.call(t):o?o.value:e.get(t)};var B=undefined&&undefined.__classPrivateFieldSet||function(t,e,i,o,s){if(o==="m")throw new TypeError("Private method is not writable");if(o==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e==="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return o==="a"?s.call(t,i):s?s.value=i:e.set(t,i),i};var T,$,L,F,H,N,G,V,q;const K=class{constructor(i){t(this,i);this.kupBoxClick=e(this,"kup-box-click",6);this.kupBoxSelected=e(this,"kup-box-selected",6);this.kupAutoBoxSelect=e(this,"kup-box-autoselect",6);this.kupRowActionMenuClick=e(this,"kup-box-rowactionmenuclick",6);this.kupRowActionClick=e(this,"kup-box-rowactionclick",6);this.kupDidLoad=e(this,"kup-box-didload",6);this.kupDidUnload=e(this,"kup-box-didunload",6);this.kupBoxContextMenu=e(this,"kup-box-contextmenu",6);this.kupLoadMoreClick=e(this,"kup-box-loadmoreclick",6);T.add(this);this.state=new S;this.kupManager=r();this.visibleColumns=[];this.rows=[];this.filteredRows=[];this.sectionRef=null;this.rowsRefs=[];this.hold=false;this.interactableDrag=[];this.interactableDrop=[];this.interactableTouch=[];$.set(this,undefined);L.set(this,[]);F.set(this,0);H.set(this,0);N.set(this,0);this.collapsedSection={};this.selectedRows=[];this.rowActionMenuOpened=undefined;this.currentPage=1;this.currentRowsPerPage=10;this.cardData=null;this.columns=1;this.customStyle="";this.data=null;this.dragEnabled=false;this.dropEnabled=false;this.dropOnSection=false;this.editableData=false;this.enableRowActions=false;this.globalFilter=false;this.globalFilterValue="";this.kanban=null;this.layout=undefined;this.lazyLoadRows=false;this.loadMoreLimit=1e3;this.loadMoreMode=E.PROGRESSIVE_THRESHOLD;this.loadMoreStep=60;this.multiSelection=false;this.pageSelected=1;this.pagination=false;this.rowsPerPage=undefined;this.scrollOnHover=false;this.selectBox=undefined;this.selectedRowsState=undefined;this.showLoadMore=false;this.showSelection=true;this.sortBy=undefined;this.sortEnabled=false;this.stateId="";this.store=undefined;this.swipeDisabled=false}initWithPersistedState(){if(this.store&&this.stateId){const t=this.store.getState(this.stateId);if(t!=null){this.kupManager.debug.logMessage(this,"Initialize with state for stateId "+this.stateId+": "+t);this.sortBy=this.state.sortBy;this.globalFilterValue=this.state.globalFilterValue;this.selectedRowsState=this.state.selectedRowsState;this.pageSelected=this.state.pageSelected;this.rowsPerPage=this.state.rowsPerPage;this.loadMoreLimit=t.loadMoreLimit;this.showLoadMore=t.showLoadMore}}}persistState(){if(this.store&&this.stateId){let t=false;if(!this.kupManager.objects.deepEqual(this.state.sortBy,this.sortBy)){this.state.sortBy=this.sortBy;t=true}if(!this.kupManager.objects.deepEqual(this.state.globalFilterValue,this.globalFilterValue)){this.state.globalFilterValue=this.globalFilterValue;t=true}if(!this.kupManager.objects.deepEqual(this.state.pageSelected,this.currentPage)){this.state.pageSelected=this.currentPage;t=true}if(!this.kupManager.objects.deepEqual(this.state.rowsPerPage,this.currentRowsPerPage)){this.state.rowsPerPage=this.currentRowsPerPage;t=true}const e=this.selectedRows.reduce(((t,e,i)=>{const o=i>0?";":"";return t+o+e.id}),"");if(!this.kupManager.objects.deepEqual(this.state.selectedRowsState,e)){this.state.selectedRowsState=e;t=true}if(!this.kupManager.objects.deepEqual(this.state.loadMoreLimit,this.loadMoreLimit)){this.state.loadMoreLimit=this.loadMoreLimit;t=true}if(!this.kupManager.objects.deepEqual(this.state.showLoadMore,this.showLoadMore)){this.state.showLoadMore=this.showLoadMore;t=true}if(!this.state.load){this.state.load=true;return}if(t){this.kupManager.debug.logMessage(this,"Persisting state for stateId "+this.stateId+": "+this.state);this.store.persistState(this.stateId,this.state)}}}rowsPerPageHandler(t){this.currentRowsPerPage=t}recalculateRows(){this.initRows()}onDataChanged(){a(this.getRows());this.initVisibleColumns();this.initRows();this.checkLayout()}onLayoutChanged(){this.checkLayout()}onSelectBoxChanged(){this.handleAutomaticBoxSelection()}async getProps(t){return l(this,I,t)}async loadRowActions(t,e){t.actions=e;this.rowActionMenuOpened=t}async refresh(){i(this)}async setProps(t){h(this,I,t)}getColumns(){return this.data&&this.data.columns?this.data.columns:[{title:"",name:"",size:undefined}]}initVisibleColumns(){this.visibleColumns=this.getColumns().filter((t=>{if(t.hasOwnProperty("visible")){return t.visible}return true}))}getRows(){return this.data&&this.data.rows?this.data.rows:[]}initRows(){this.filteredRows=this.getRows();if(this.globalFilter&&this.globalFilterValue){this.filteredRows=w(this.filteredRows,null,this.globalFilterValue,this.visibleColumns)}this.rows=this.sortRows(this.filteredRows);if(this.pagination){this.rows=v(this.rows,this.currentPage,this.currentRowsPerPage,false)}}sortRows(t){let e=t;if(this.sortBy){e=y(e,this.toSortObjectList())}return e}toSortObjectList(){const t=this.sortBy.split("|").map((t=>{const e=t.split(",");const i={column:e[0],sortMode:e.length>1?c[e[1]]:c.A};return i}));return t}checkScrollOnHover(){if(this.boxContainer){if(!this.kupManager.scrollOnHover.isRegistered(this.boxContainer)){if(this.scrollOnHover){this.kupManager.scrollOnHover.register(this.boxContainer)}}else{if(!this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}}}}checkLayout(){if(this.layout){this.boxLayout=this.layout;return}const t={horizontal:false,sections:[]};const e=this.visibleColumns;let i=e.length;let o=[];let s=0;while(i-- >0){o.push({column:e[s++].name})}t.content=o;this.boxLayout={sections:[t]}}onSortChange(t){let e=p(this.visibleColumns,t.detail.value);this.sortBy=e.name}onGlobalFilterChange({detail:t}){let e="";if(t&&t.value){e=t.value}this.globalFilterValue=e}isSectionExpanded(t,e){if(!t.id||!e.id){return false}return this.collapsedSection[e.id]&&this.collapsedSection[e.id][t.id]}handleAutomaticBoxSelection(){if(this.selectBox&&this.selectBox>0&&this.selectBox<=this.data.rows.length){this.selectedRows=[];for(let t of this.data.rows){if(t.id===(this.selectBox-1).toString()){this.selectedRows.push(t);break}}this.kupAutoBoxSelect.emit({comp:this,id:this.rootElement.id,row:this.selectedRows[0]})}}getEventDetails(t,e){let i=null;let o=null;let s=null;let n=null;if(t){for(let e=t.length-1;e>=0;e--){let o=t[e];if(!o.tagName){continue}switch(o.tagName.toUpperCase()){default:{if(o.classList.contains("box-object")){i=o}if(!s&&o["data-row"]){s=o["data-row"]}break}}}}if(i){if(i.classList.contains("f-cell")){const t=i["kup-get-cell-props"]();o=t.cell;n=t.column;s=t.row}else{o=i["data-cell"];s=i["data-row"];n=p(this.visibleColumns,i.dataset.column)}}return{boxObject:i?i:null,column:n?n:null,cell:o?o:null,originalEvent:e,row:s?s:null}}clickHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);if(e.row){if(this.multiSelection){this.onSelectionCheckChange(e.row)}else{this.selectedRows=[e.row]}}return e}contextMenuHandler(t){const e=this.getEventDetails(this.kupManager.getEventPath(t.target,this.rootElement),t);return e}checkIfElementIsActionMenuIcon(t){if(t.tagName&&t.parentElement){return t.tagName==="svg"&&t.parentElement.classList.contains("row-actions-toggler")}return false}onSelectionCheckChange(t){var e=-1;for(let i=0;i<this.selectedRows.length;i++){const o=this.selectedRows[i];if(o.id===t.id){e=i;break}}if(e>=0){this.selectedRows.splice(e,1);this.selectedRows=[...this.selectedRows]}else{this.selectedRows=[...this.selectedRows,t]}this.kupBoxSelected.emit({comp:this,id:this.rootElement.id,rows:this.selectedRows})}toggleSectionExpand(t,e){if(!e.id){console.error("cannot expand / collapse a section withoun an ID");return}if(!t.id){console.error("cannot expand / collapse a section of a row without ad id");return}if(!this.collapsedSection[e.id]){this.collapsedSection[e.id]={};this.collapsedSection[e.id][t.id]=true}else{const i=this.collapsedSection[e.id];if(!i[t.id]){i[t.id]=true}else{i[t.id]=!i[t.id]}}this.collapsedSection=Object.assign({},this.collapsedSection)}onRowAction(t){if(!t){return}if(t===this.rowActionMenuOpened){this.rowActionMenuOpened=null;return}if(t.actions){this.rowActionMenuOpened=t}else{this.kupRowActionMenuClick.emit({comp:this,id:this.rootElement.id,row:t})}}onRowActionClick(t,e,i){this.kupRowActionClick.emit({comp:this,id:this.rootElement.id,row:t,action:e,index:i})}clickFunction(t){try{const e=t.composedPath();for(let t of e){if(this.checkIfElementIsActionMenuIcon(t)){return}}}catch(e){if(this.checkIfElementIsActionMenuIcon(t.target)){return}}this.rowActionMenuOpened=null}handlePageChange(t){const e=P(t,this.filteredRows.length,this.currentRowsPerPage);if(e){this.currentPage=e}}handleRowsPerPageChange(t){const e=M(t,this.filteredRows.length);if(e){this.currentRowsPerPage=e;this.adjustPaginator()}}adjustPaginator(){const t=this.rows.length;const e=Math.ceil(t/this.currentRowsPerPage);if(this.currentPage>e){this.currentPage=1}}renderSectionAsCard(t){let e=false;const i={button:[],cell:[],columns:[],image:[],progressbar:[],text:[]};for(let e=0;e<this.data.columns.length;e++){const o=this.data.columns[e];if(o.visible!==false){i.cell.push(t.cells[o.name]);i.columns.push(o)}}for(const e in t.cells){if(t.cells.hasOwnProperty(e)){const o=t.cells[e];if(o.cardID!==undefined&&o.obj){switch(o.obj.p){case"BTN":do{i.button.push({})}while(i.button.length<o.cardID);i.button[o.cardID]={label:o.value};break;case"IMG":do{i.image.push({})}while(i.image.length<o.cardID);i.image[o.cardID]={resource:o.value};break;case"PGB":do{i.progressbar.push({})}while(i.progressbar.length<o.cardID);i.progressbar[o.cardID]={value:o.value};break;default:do{i.text.push("")}while(i.text.length<o.cardID);i.text[o.cardID]=o.value;break}}}}for(const o in t.cells){if(t.cells.hasOwnProperty(o)){const s=t.cells[o];if(s.cardID===undefined&&s.obj){e=false;switch(s.obj.p){case"BTN":for(let t=0;t<i.button.length;t++){if(!Object.keys(i.button[t]).length){i.button[t]={label:s.value};e=true;break}}if(!e){i.button.push({label:s.value})}break;case"IMG":for(let t=0;t<i.image.length;t++){if(!Object.keys(i.image[t]).length){i.image[t]={resource:s.value};e=true;break}}if(!e){i.image.push({resource:s.value})}break;case"PGB":for(let t=0;t<i.progressbar.length;t++){if(!Object.keys(i.progressbar[t]).length){i.progressbar[t]={value:s.value};e=true;break}}if(!e){i.progressbar.push({value:s.value})}break;default:for(let t=0;t<i.text.length;t++){if(i.text[t]===""){i.text[t]=s.value;e=true;break}}if(!e){i.text.push(s.value)}break}}}}return o("kup-card",Object.assign({data:i},this.cardData))}renderRow(t){const e=[...this.visibleColumns];let i=null;let s=t.layout;if(!s){s=this.boxLayout}let n=false;if(s){if(s.horizontal){n=true}const o=s.sections;let r=o.length;let a=0;if(r>0){i=[]}const l={horizontal:n};while(r-- >0){if(this.cardData!==null&&this.cardData!==undefined&&typeof this.cardData==="object"){i.push(this.renderSectionAsCard(t))}else{i.push(this.renderSection(o[a++],l,t,e))}}}var r=false;for(let e of this.selectedRows){if(e.id===t.id){r=true}}let a=null;if(this.multiSelection){a=o("div",{class:"box-selection"},o("kup-checkbox",{checked:r}))}let l=null;if(this.enableRowActions&&!this.swipeDisabled){const e={"row-action-menu":true,open:t===this.rowActionMenuOpened};let i=null;if(t.actions){const e=t.actions.map(((e,i)=>{const s=`icon ${e.icon}`;return o("li",{tabindex:"0",onClick:()=>this.onRowActionClick(t,e,i)},o("div",{class:s}),o("div",{class:"text"},e.text))}));i=o("ul",null,e)}l=o("div",{class:"row-actions-wrapper"},o("div",{class:"row-actions-toggler"},o("svg",{version:"1.1",width:"24",height:"24",viewBox:"0 0 24 24",onClick:()=>this.onRowAction(t)},o("path",{d:"M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z"})),o("div",{class:e},i)))}let h=null;if(t.badgeData&&t.badgeData.length>0){h=t.badgeData.map((t=>o("kup-badge",{text:t.text,class:t["className"]?`centered ${t["className"]}`:"centered",imageData:t.imageData})))}const c={box:true,draggable:this.dragEnabled,selected:this.showSelection&&r,column:!n};const p=t.style||{};return o("div",{class:"box-wrapper",style:p,ref:t=>{if(t){W(this,L,"f").push(t)}}},o("div",{class:c,"data-row":t,ref:t=>this.rowsRefs.push(t)},a,i,h),l)}renderSection(t,e,i,s){let n=null;if(t.sections&&t.sections.length>0){const e=t.sections;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderSection(e[r++],t,i,s))}}else if(t.content){const e=t.content;let o=e.length;let r=0;if(o>0){n=[]}while(o-- >0){n.push(this.renderBoxObject({boxObject:e[r++],row:i,visibleColumns:s},true))}}else if(s.length>0){const t=s[0];n=this.renderBoxObject({boxObject:{column:t.name},row:i,visibleColumns:s})}const r=this.isSectionExpanded(i,t);const a=!!t.columns;const l={"box-section":true,open:r,column:!a&&!t.horizontal,grid:a,titled:!!t.title,"last-child":!t.sections||t.sections.length===0};const h=t.style||{};if(t.dim&&e){h.flex=`0 0 ${t.dim}`;h.overflow="hidden";if(e.horizontal){h.maxWidth=t.dim}else{h.maxHeight=t.dim}}if(a){h["grid-template-columns"]=`repeat(${t.columns}, 1fr)`}let c=null;if(t.collapsible){l["collapse-section"]=true;const e={content:true};let s="";if(t.title){s=t.title}else if(r){s=this.kupManager.language.translate(u.COLLAPSE)}else{s=this.kupManager.language.translate(u.EXPAND)}c=o("div",{class:l,style:h},o("div",{class:e},n),o("div",{class:"header",role:"button",onClick:e=>{e.stopPropagation();this.toggleSectionExpand(i,t)}},o("div",{class:"header-content"},o("span",null,s),o(_,{resource:`${d.DROPDOWN}`,sizeX:"1.25em",sizeY:"1.25em",wrapperClass:r?"toggled":""}))))}else{const e=t.title?o("h3",null,t.title):null;c=o("div",{class:l,style:h},e,n)}return c}renderBoxObject({boxObject:t,row:e,visibleColumns:i},s){const n={"box-object":true};const r={};let a=null;let l=-1;for(let e=0;e<i.length;e++){const o=i[e];if(o.name===t.column){l=e;break}}if(l>=0){a=i[l];i.splice(l,1)}else if(s){a=this.data.columns.find((e=>e.name===t.column))}const h=e.cells[t.column];let c=undefined;if(h&&!this.kupManager.objects.isEmptyKupObj(h.obj)){n["is-obj"]=true;if(this.kupManager.debug.isDebug()){c=h.obj.t+"; "+h.obj.p+"; "+h.obj.k+";"}}const p={cell:h,column:a,component:this,editable:this.editableData,renderKup:true,row:e,setSizes:true,shape:t.shape};return o("div",{"data-cell":h,"data-row":e,"data-column":t.column,class:n,style:r,title:c},h&&a?o(z,Object.assign({},p)):o("span",null,t.value))}kanbanMode(){if(!this.kanban.columns||this.kanban.columns.length===0){this.kupManager.debug.logMessage(this,"No columns to group by detected.",f.ERROR);return{jsx:o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{ref:t=>this.rowsRefs.push(t)}),this.kupManager.language.translate(u.EMPTY_DATA)),style:{"grid-template-columns":`repeat(1, 1fr)`}}}const t=[];if(this.kanban.labels){for(let e=0;e<this.kanban.labels.length;e++){const i=this.kanban.labels[e];t.push({labels:i,nodes:[]})}}for(let e=0;e<this.rows.length;e++){let i=[];for(let t=0;t<this.kanban.columns.length;t++){try{i.push(this.rows[e].cells[this.kanban.columns[t]].value)}catch(t){this.kupManager.debug.logMessage(this,t,f.WARNING)}}const o={found:false,index:null};for(let e=0;e<t.length;e++){let s=t[e].labels;let n=true;for(let t=0;t<s.length;t++){if(i[t]!==s[t]){n=false;break}}if(n){o.found=true;o.index=e;break}}if(o.found){t[o.index].nodes.push(this.renderRow(this.rows[e]))}else{t.push({labels:i,nodes:[this.renderRow(this.rows[e])]})}}const e=[];for(let i=0;i<t.length;i++){const s=t[i].labels;const n={data:[]};for(let t=0;t<s.length;t++){n.data.push({value:s[t],id:s[t]})}e.push(o("div",{class:"kanban-section"},o(j,Object.assign({},n)),t[i].nodes))}return{jsx:e,style:{"grid-template-columns":this.kanban.isStacked?"repeat(1fr)":this.kanban.size?`repeat(${Object.keys(t).length}, ${this.kanban.size})`:`repeat(${Object.keys(t).length}, 1fr)`}}}didLoadInteractables(){this.interactableTouch.push(this.boxContainer);const t=t=>{var e;if(this.hold){this.hold=false;return}switch(t.button){case 0:const i={};for(const e in t){i[e]=t[e]}const o=this.clickHandler(i);this.kupBoxClick.emit({comp:this,id:this.rootElement.id,row:o.row,column:(e=o.column)===null||e===void 0?void 0:e.name});break;case 2:this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)});break}};const e=t=>{if(t.pointerType==="pen"||t.pointerType==="touch"){this.hold=true;this.kupBoxContextMenu.emit({comp:this,id:this.rootElement.id,details:this.contextMenuHandler(t)})}};this.kupManager.interact.on(this.boxContainer,b.TAP,t);this.kupManager.interact.on(this.boxContainer,b.HOLD,e)}didRenderInteractables(){if(this.dragEnabled){for(let t=0;t<this.rowsRefs.length;t++){const e=this.rowsRefs[t];const i=()=>{const t=this.rootElement.shadowRoot.querySelector(".box-object:hover");return{cell:t["data-cell"],column:p(this.visibleColumns,t.dataset.column),id:this.rootElement.id,multiple:this.multiSelection,row:t["data-row"],selectedRows:this.selectedRows}};if(e&&!this.interactableDrag.includes(e)){this.interactableDrag.push(e);this.kupManager.interact.draggable(e,{allowFrom:".box-object",cursorChecker(){return null}},{callback:i},x.BADGE)}}}if(this.dropEnabled){const t=()=>{const t=this.rootElement.shadowRoot.querySelector(".box:hover");if(!t){this.kupManager.debug.logMessage(this,"Couldn't find cell hovered to retrieve dropzone informations!",f.WARNING);return}const e=this.kupManager.getEventPath(t,this.rootElement);const i=this.getEventDetails(e);return{cell:i.cell,column:i.column,id:this.rootElement.id,row:i.row}};if(!this.interactableDrop.includes(this.sectionRef)){this.interactableDrop.push(this.sectionRef);this.kupManager.interact.dropzone(this.sectionRef,{accept:`[${g}]`},{dispatcher:this.rootElement,type:m.BOX})}for(let e=0;e<this.rowsRefs.length;e++){const i=this.rowsRefs[e];if(i&&!this.interactableDrop.includes(i)){this.interactableDrop.push(i);this.kupManager.interact.dropzone(i,{accept:`[${g}]`},{callback:t,dispatcher:this.rootElement,type:m.BOX})}}}}componentWillLoad(){this.kupManager.debug.logLoad(this,false);if(this.rowsPerPage){this.currentRowsPerPage=this.rowsPerPage}if(this.data&&this.data.rows&&this.currentRowsPerPage>this.data.rows.length){this.currentRowsPerPage=this.data.rows.length}this.kupManager.language.register(this);this.kupManager.theme.register(this);this.onDataChanged();this.adjustPaginator();if(document.querySelector(".header")){B(this,F,document.querySelector(".header").clientHeight,"f")}else{B(this,F,0,"f")}if(document.querySelector(".topbar")){B(this,F,W(this,F,"f")+document.querySelector(".topbar").clientHeight,"f")}W(this,T,"m",V).call(this)}componentDidLoad(){this.handleAutomaticBoxSelection();document.addEventListener("click",this.clickFunction.bind(this));this.currentPage=this.pageSelected;if(this.multiSelection&&this.selectedRowsState){this.selectedRows=[];let t=this.selectedRowsState.split(";");this.selectedRows=this.data.rows.filter((e=>t.indexOf(e.id)>=0))}this.didLoadInteractables();this.kupDidLoad.emit({comp:this,id:this.rootElement.id});this.kupManager.debug.logLoad(this,true)}componentWillRender(){this.kupManager.debug.logRender(this,false)}componentDidRender(){const t=this.rootElement.shadowRoot;if(t){const e=t.querySelectorAll(".f-text-field");for(let t=0;t<e.length;t++){A(e[t])}}this.checkScrollOnHover();this.persistState();this.didRenderInteractables();W(this,T,"m",G).call(this);this.kupManager.debug.logRender(this,true)}render(){B(this,L,[],"f");const t=!!(typeof this.kanban==="object"&&this.kanban!==null);let e=null;if(this.sortEnabled){const t=this.visibleColumns.map((t=>{const e={value:t.title,id:t.name,selected:t.name===this.sortBy};return e}));const i=[{value:"",id:""},...t];let s={label:this.kupManager.language.translate(u.SORT_BY),trailingIcon:true};let n={data:i,selectable:true};let r={"kup-text-field":s,"kup-list":n};e=o("div",{id:"sort-panel"},o("kup-combobox",{data:r,initialValue:this.sortBy,"onkup-combobox-itemclick":t=>this.onSortChange(t)}))}let i=null;if(this.globalFilter){i=o("div",{id:"global-filter"},o("kup-text-field",{fullWidth:true,label:this.kupManager.language.translate(k.SEARCH),icon:d.SEARCH,initialValue:this.globalFilterValue,"onkup-textfield-input":t=>{window.clearTimeout(this.globalFilterTimeout);this.globalFilterTimeout=window.setTimeout((()=>this.onGlobalFilterChange(t)),600)}}))}let n=null;if(this.showLoadMore||!this.lazyLoadRows&&this.pagination){n=o(R,{id:"top-paginator",currentPage:this.currentPage,max:this.filteredRows.length,perPage:this.currentRowsPerPage?this.currentRowsPerPage:this.rowsPerPage,onLoadMore:this.showLoadMore?()=>{W(this,T,"m",q).call(this)}:null,onNextPage:()=>this.handlePageChange(this.currentPage+1),onPrevPage:()=>this.handlePageChange(this.currentPage-1),onPageChange:t=>this.handlePageChange(t.detail.value),onRowsChange:t=>this.handleRowsPerPageChange(t.detail.value)})}let r=null;let a={};if(this.rows.length===0){r=o("div",{id:"empty-data-message",class:"box-wrapper"},o("div",{class:"box",ref:t=>this.rowsRefs.push(t)},this.kupManager.language.translate(u.EMPTY_DATA)));a={"grid-template-columns":`repeat(1, 1fr)`}}else if(t){const t=this.kanbanMode();r=t.jsx;a=t.style}else{a={"grid-template-columns":`repeat(${this.columns}, 1fr)`};const t=this.rows;let e=t.length;let i=0;r=[];while(e-- >0){r.push(this.renderRow(t[i++]))}}return o(s,null,o("style",null,this.kupManager.theme.setKupStyle(this.rootElement)),o("div",{id:C},o("div",{class:"box-component",ref:t=>this.sectionRef=t},e,i,n,o("div",{class:t?"is-kanban":"",id:"box-container",style:a,onContextMenu:t=>{t.preventDefault()},ref:t=>this.boxContainer=t},r))))}disconnectedCallback(){this.kupManager.interact.unregister(this.interactableDrag.concat(this.interactableDrop));this.kupManager.language.unregister(this);this.kupManager.theme.unregister(this);if(this.scrollOnHover){this.kupManager.scrollOnHover.unregister(this.boxContainer)}document.removeEventListener("click",this.clickFunction.bind(this));this.kupDidUnload.emit({comp:this,id:this.rootElement.id})}get rootElement(){return n(this)}static get watchers(){return{rowsPerPage:["rowsPerPageHandler","recalculateRows"],globalFilterValue:["recalculateRows"],sortBy:["recalculateRows"],pagination:["recalculateRows"],currentPage:["recalculateRows"],currentRowsPerPage:["recalculateRows"],data:["onDataChanged"],layout:["onLayoutChanged"],selectBox:["onSelectBoxChanged"]}}};$=new WeakMap,L=new WeakMap,F=new WeakMap,H=new WeakMap,N=new WeakMap,T=new WeakSet,G=function t(){if(this.lazyLoadRows&&this.currentRowsPerPage<this.data.rows.length){W(this,$,"f").observe(W(this,L,"f")[W(this,L,"f").length-1])}},V=function t(){const e=t=>{t.forEach((t=>{if(t.isIntersecting){this.kupManager.debug.logMessage(this,"Last row entering the viewport, loading more elements.");const e=this.data.rows.length-this.currentRowsPerPage;if(e<this.loadMoreStep){this.currentRowsPerPage+=e}else{this.currentRowsPerPage+=this.loadMoreStep}t.target.classList.remove("last-row");W(this,$,"f").unobserve(t.target)}}))};const i={threshold:0,rootMargin:"-"+W(this,F,"f")+"px 0px 0px 0px"};B(this,$,new IntersectionObserver(e,i),"f")},q=function t(){var e;let i=0;switch(this.loadMoreMode){case E.CONSTANT:i=this.loadMoreStep;break;case E.CONSTANT_INCREMENT:i=this.loadMoreStep*(W(this,H,"f")+1);break;case E.PROGRESSIVE_THRESHOLD:i=Math.max(W(this,N,"f"),this.loadMoreStep)*Math.min(W(this,H,"f")+1,2);break}if(i>this.loadMoreLimit){i=this.loadMoreLimit}this.kupLoadMoreClick.emit({comp:this,id:this.rootElement.id,loadItems:i});B(this,N,i,"f");B(this,H,(e=W(this,H,"f"),e++,e),"f")};K.style=D;export{K as kup_box};
|
|
2
|
+
//# sourceMappingURL=p-8eaf9ea9.entry.js.map
|