react-luminus-components 1.3.131 → 1.3.132

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/main.cjs.js CHANGED
@@ -6,4 +6,4 @@
6
6
  Prefix can't start with '-' when allowNegative is true.
7
7
  prefix: `+o+`
8
8
  allowNegative: `+a+`
9
- `),a=!1),Object.assign(Object.assign({},t),{allowNegative:a})}function La(t){t=$a(t),t.decimalSeparator,t.allowedDecimalSeparators,t.thousandsGroupStyle;var n=t.suffix,s=t.allowNegative,r=t.allowLeadingZeros,o=t.onKeyDown;o===void 0&&(o=_e);var a=t.onBlur;a===void 0&&(a=_e);var l=t.thousandSeparator,u=t.decimalScale,c=t.fixedDecimalScale,x=t.prefix;x===void 0&&(x="");var d=t.defaultValue,p=t.value,g=t.valueIsNumericString,j=t.onValueChange,f=ss(t,["decimalSeparator","allowedDecimalSeparators","thousandsGroupStyle","suffix","allowNegative","allowLeadingZeros","onKeyDown","onBlur","thousandSeparator","decimalScale","fixedDecimalScale","prefix","defaultValue","value","valueIsNumericString","onValueChange"]),h=at(t),v=h.decimalSeparator,R=h.allowedDecimalSeparators,E=function($){return Xt($,t)},m=function($,T){return Fa($,T,t)},y=Be(p)?d:p,w=g??Da(y,x,n);Be(p)?Be(d)||(w=w||typeof d=="number"):w=w||typeof p=="number";var _=function($){return rs($)?$:(typeof $=="number"&&($=is($)),w&&typeof u=="number"?Zt($,u,!!c):$)},S=cs(_(p),_(d),!!w,E,m,j),C=S[0],D=C.numAsString,k=C.formattedValue,I=S[1],b=function($){var T=$.target,M=$.key,V=T.selectionStart,z=T.selectionEnd,U=T.value;if(U===void 0&&(U=""),(M==="Backspace"||M==="Delete")&&z<x.length){$.preventDefault();return}if(V!==z){o($);return}M==="Backspace"&&U[0]==="-"&&V===x.length+1&&s&&Te(T,1),u&&c&&(M==="Backspace"&&U[V-1]===v?(Te(T,V-1),$.preventDefault()):M==="Delete"&&U[V]===v&&$.preventDefault()),R!=null&&R.includes(M)&&U[V]===v&&Te(T,V+1);var q=l===!0?",":l;M==="Backspace"&&U[V-1]===q&&Te(T,V-1),M==="Delete"&&U[V]===q&&Te(T,V+1),o($)},B=function($){var T=D;if(T.match(/\d/g)||(T=""),r||(T=ga(T)),c&&u&&(T=Zt(T,u,c)),T!==D){var M=Xt(T,t);I({formattedValue:M,value:T,floatValue:parseFloat(T)},{event:$,source:qe.event})}a($)},H=function($){return $===v?!0:Qe($)},K=function($){var T=$.currentValue,M=$.lastValue,V=$.formattedValue,z=$.currentValueIndex,U=$.formattedValueIndex,q=T[z],O=V[U],N=ls(M,T),P=N.to;return z>=P.start&&z<P.end&&R&&R.includes(q)&&O===v?!0:q===O};return Object.assign(Object.assign({},f),{value:k,valueIsNumericString:!1,isValidInputCharacter:H,isCharacterSame:K,onValueChange:I,format:E,removeFormatting:m,getCaretBoundary:function($){return Ta($,t)},onKeyDown:b,onBlur:B})}function Tt(t){var n=La(t);return i.createElement(ka,Object.assign({},n))}const Oa=({InputContainer:t=e.FloatingLabelInput,value:n,onChange:s,debounceMs:r,label:o,withoutLabel:a,placeholder:l,size:u,hidden:c,disabled:x,showClearIcon:d,clearValue:p,className:g,step:j,noSelectOnFocus:f,decimalScale:h,numberPrefix:v,numberSuffix:R,min:E,max:m})=>{const y=i.useCallback(()=>{if(!s)return;const k=p??null;s(k?Number(k):null)},[p,s]),w=i.useRef(null),[_,S]=i.useState((n==null?void 0:n.toString())??""),C=i.useCallback(k=>{const I=k;s&&s(I==null||I===""?null:Number(I))},[s]),D=i.useCallback(k=>{var b,B;let I=parseFloat(((B=(b=k.target)==null?void 0:b.value)==null?void 0:B.replaceAll(" ",""))??0);if(Number.isNaN(I)&&(I=0),!r){C(I.toString());return}S(I.toString()),w.current!==null&&window.clearTimeout(w.current),w.current=window.setTimeout(()=>{C(I.toString())},r)},[r,C]);return i.useEffect(()=>{S(n===null?"":n.toString())},[m,E,n]),i.useEffect(()=>{m!==void 0&&Number(_)>m&&S(m.toString()),E!==void 0&&Number(_)<E&&S(E.toString())},[_,m,E,S]),i.useEffect(()=>{!s||n===null||(m!==void 0&&n>m&&s(m),E!==void 0&&n<E&&s(E))},[n,m,E,s]),e.jsxRuntimeExports.jsxs(t,{withoutLabel:a,label:o??"",hidden:c,className:g,children:[e.jsxRuntimeExports.jsx(Tt,{displayType:"input",thousandSeparator:" ",decimalScale:h,prefix:v,suffix:R,defaultValue:"",value:r?_:(n==null?void 0:n.toString())??"",placeholder:l??o,onFocus:k=>{!f&&k.target.select()},onChange:D,hidden:c,disabled:x,className:e.classNames("form-control text-end w-100",{[`form-control-${u}`]:u}),step:j,min:E,max:m}),d&&n!==null&&s&&!x&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:y,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})})]})},en=[["D","day"],["M","month"],["Y","year"],["C","custom"]],Ma="_wrapper_qfqux_1",Ba="_lg_qfqux_7",Aa="_sm_qfqux_11",Pa="_md_qfqux_14",tn={wrapper:Ma,lg:Ba,sm:Aa,md:Pa},et=t=>{const n=new Date(t),s=e.trimIsoDate(n.toISOString());n.setMonth(n.getMonth()+1),n.setDate(n.getDate()-1);const r=e.trimIsoDate(n.toISOString());return{from:s,to:r}},Ke=t=>{const n=new Date(t),s=e.trimIsoDate(n.toISOString());n.setFullYear(n.getFullYear()+1),n.setDate(n.getDate()-1);const r=e.trimIsoDate(n.toISOString());return{from:s,to:r}},Va=(t,n)=>{if(t===null||n===null)return"C";if(t===n)return"D";const s=new Date(t);return et(s).to===n?"M":Ke(s).to===n?"Y":(console.log(Ke(s),n),"C")},Ha=(t,n,s)=>{const r=i.useCallback((l,u)=>{if(t==="C"){s(c=>({...c,[l]:u}));return}switch(l){case"from":s(c=>{if(u===null)return c;const x=new Date(u);if(t==="D"){const d=e.trimIsoDate(x.toISOString());return{from:d,to:d}}return t==="M"?et(x):t==="Y"?Ke(x):c});break;case"to":n("C"),s(c=>({...c,[l]:u}));break}},[t,s,n]),o=i.useCallback(l=>{s(u=>{if(u.from===null||u.to===null)return u;const c=new Date(u.from);c.setHours(c.getHours()-c.getTimezoneOffset()/60);const x=new Date(u.to);if(t==="D"){c.setDate(c.getDate()+l);const d=e.trimIsoDate(c.toISOString());return{from:d,to:d}}return t==="M"?(c.setMonth(c.getMonth()+l),et(c)):t==="Y"?(c.setFullYear(c.getFullYear()+l),Ke(c)):{from:e.trimIsoDate(c.toISOString()),to:e.trimIsoDate(x.toISOString())}})},[t,s]),a=i.useCallback(l=>{l==="D"?s(u=>({from:u.from,to:u.from})):l==="M"?s(u=>{if(u.from===null)return u;const c=e.getFirstDayOfMonth(u.from);return et(c)}):l==="Y"&&s(u=>{if(u.from===null)return u;const c=e.getFirstDayOfYear(new Date(u.from).getFullYear());return Ke(c)}),n(l)},[s,n]);return{setFromToProp:r,handleArrowClick:o,handleRangeChange:a}},Wa=({fromtoState:[t,n],className:s,size:r})=>{const{texts:{date:o},ProjectIconComponent:a}=i.useContext(e.LuminusComponentsContext),[l,u]=i.useState("C"),{handleArrowClick:c,handleRangeChange:x,setFromToProp:d}=Ha(l,u,n),p=i.useMemo(()=>l==="C",[l]),g=i.useRef(!0);return i.useEffect(()=>{if(g.current){const j=Va(t.from,t.to);u(j),g.current=!1}},[t.from,t.to]),e.jsxRuntimeExports.jsxs("div",{className:e.classNames("d-inline-flex align-items-center gap-1",tn.wrapper,tn[r??"md"],s),children:[e.jsxRuntimeExports.jsx(e.IconButton,{disabled:p,onClick:()=>{c(-1)},children:e.jsxRuntimeExports.jsx(a,{icon:"chevron-left"})}),e.jsxRuntimeExports.jsx("div",{children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[e.jsxRuntimeExports.jsx($e,{type:"date",value:t.from,onChange:j=>d("from",j===null?null:j.toString()),InputContainer:e.NoInputContainer,size:r}),e.jsxRuntimeExports.jsx(e.Dropdown,{toggle:e.jsxRuntimeExports.jsx(e.DropdownToggle,{text:o[en.find(j=>j[0]===l)[1]].substring(0,1),as:e.FromToDatePickerDropdownToggle}),children:en.map(j=>e.jsxRuntimeExports.jsx(e.DropdownItem,{disabled:j[0]===l,className:e.classNames(j[0]===l?"text-black-50":""),onClick:()=>x(j[0]),role:"button",children:o[j[1]]},j[0]))}),e.jsxRuntimeExports.jsx($e,{type:"date",value:t.to,onChange:j=>d("to",j===null?null:j.toString()),InputContainer:e.NoInputContainer,size:r})]})}),e.jsxRuntimeExports.jsx(e.IconButton,{disabled:p,onClick:()=>{c(1)},children:e.jsxRuntimeExports.jsx(a,{icon:"chevron-right"})})]})},za=({defaultMonth:t,searchKey:n="monthFrom",yearMin:s,yearMax:r})=>{const{localizationContext:o}=i.useContext(e.LuminusComponentsContext),{dateFnsLocale:a}=i.useContext(o),{searchParams:l,setSearch:u}=Ae.useSearchQuery(),c=l.get(n),x=c?e.parseISO(c):t,d=i.useCallback(p=>{u(n,gt(p,{representation:"date"}))},[n,u]);return e.jsxRuntimeExports.jsx(Un,{month:x,onChangeMonth:d,locale:a,yearMin:s,yearMax:r})},Ua=({defaultYear:t,searchKey:n="yearFrom",optionMin:s,optionMax:r,className:o})=>{const[a,l]=Ae.useSearchQueryState(n,gt(t,{representation:"date"})),u=a?e.parseISO(a):t,c=i.useCallback(x=>{l(gt(x,{representation:"date"}))},[l]);return e.jsxRuntimeExports.jsx(Gn,{year:u,onChangeYear:c,optionMin:s,optionMax:r,className:o})},Ga=({data:t,showLegend:n=!1,legendPosition:s="left",onClick:r})=>{const{chartColorPalette:o}=i.useContext(e.LuminusComponentsContext);return e.jsxRuntimeExports.jsx(e._,{data:t,margin:{top:50,right:n&&s==="right"?200:100,bottom:50,left:n&&s==="left"?200:100},innerRadius:.4,padAngle:4,cornerRadius:2,activeOuterRadiusOffset:10,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},colors:o,arcLinkLabelsSkipAngle:10,arcLinkLabelsTextColor:{from:"color",modifiers:[["darker",.5]]},arcLinkLabelsThickness:2,arcLinkLabelsColor:{from:"color"},enableArcLabels:!1,legends:n?[{anchor:s,direction:s==="left"||s==="right"?"column":"row",justify:!1,translateX:s==="left"?-200:s==="right"?200:0,translateY:s==="top"?-50:s==="bottom"?50:0,itemsSpacing:4,itemWidth:120,itemHeight:18,itemTextColor:"#1e2832",itemDirection:"left-to-right",itemOpacity:1,symbolSize:18,symbolShape:"circle",padding:10}]:[],onClick:a=>r&&r(a.data)})},Ka=({errors:t,schema:n})=>{const s=r=>{var o,a;return r.toLowerCase()==="others"?"Obecné":((a=(o=n.columns)==null?void 0:o.find(l=>l.field===r))==null?void 0:a.caption)??r};return e.jsxRuntimeExports.jsx("div",{className:"alert alert-danger w-100 m-0 p-2",children:e.jsxRuntimeExports.jsx("table",{children:e.jsxRuntimeExports.jsx("tbody",{children:t.map(r=>e.jsxRuntimeExports.jsxs("tr",{children:[e.jsxRuntimeExports.jsx("td",{className:"fw-bold pe-2",children:e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:[s(r.name),":"]})}),e.jsxRuntimeExports.jsx("td",{className:"",children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"body",children:r.errors})})]},r.name))})})})},us=t=>{const n={};return Object.keys(t).forEach(s=>{if(t[s].value===!0){n[s]=1;return}if(t[s].value===!1){n[s]=0;return}n[s]=t[s].value}),n},nn=(t,n)=>{const s={};return Object.keys(t).forEach(r=>{var l;const o=t[r],a=(l=n.columns)==null?void 0:l.find(u=>u.field===r);if((a==null?void 0:a.type)==="BIT"&&(o===1||o===0)){s[r]={value:o===1,defaultValue:o===1};return}s[r]={value:o,defaultValue:o}}),s},Ya="_table_1klfy_1",qa="_table-header_1klfy_10",Qa="_table-row_1klfy_10",Za="_table-head_1klfy_10",Ja="_filters-row_1klfy_19",Xa="_table-body_1klfy_30",ei="_table-cell_1klfy_30",ti="_action-column_1klfy_43",ni="_sticky-top_1klfy_47",si="_sticky-first_1klfy_54",ri="_sticky-last_1klfy_61",oi="_sticky-bottom_1klfy_68",se={table:Ya,"table-header":"_table-header_1klfy_10",tableHeader:qa,"table-row":"_table-row_1klfy_10",tableRow:Qa,"table-head":"_table-head_1klfy_10",tableHead:Za,"filters-row":"_filters-row_1klfy_19",filtersRow:Ja,"table-body":"_table-body_1klfy_30",tableBody:Xa,"table-cell":"_table-cell_1klfy_30",tableCell:ei,"action-column":"_action-column_1klfy_43",actionColumn:ti,"sticky-top":"_sticky-top_1klfy_47",stickyTop:ni,"sticky-first":"_sticky-first_1klfy_54",stickyFirst:si,"sticky-last":"_sticky-last_1klfy_61",stickyLast:ri,"sticky-bottom":"_sticky-bottom_1klfy_68",stickyBottom:oi},ai="_input_13mhy_1",Oe={input:ai},ds=({type:t,value:n,field:s,isPrimary:r,isReadonly:o,primaryEditable:a=!1,valuesForSelect:l,onChangeHandler:u,hideClearIcon:c,clearValue:x})=>{switch(t){case"NUM":return l&&l.length>0?e.jsxRuntimeExports.jsx(Ye,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,d===null?null:Number(d)),options:l,disabled:o||a?!1:r,showClearIcon:!c,clearValue:x}):e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"number",value:n===null?null:Number(n),onChange:d=>u(s,d===null?null:Number(d)),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});case"STR":return l&&l.length>0?e.jsxRuntimeExports.jsx(Ye,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),options:l,disabled:o||a?!1:r,showClearIcon:!c,clearValue:x}):e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"text",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});case"BIT":return e.jsxRuntimeExports.jsx(Dt,{InputContainer:e.NoInputContainer,className:Oe.input,value:n===!0,onChange:d=>u(s,d),disabled:o||a?!1:r});case"DT":return e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"date",value:n?n.toString().split("T")[0]??"":"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});default:return e.jsxRuntimeExports.jsx("div",{className:"alert alert-warning p-1 m-0",children:e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:["Neznámý typ ",t]})})}},ii=({schema:t,columns:n,initialItem:s,onEdit:r,onDelete:o})=>{const{ProjectIconComponent:a}=i.useContext(e.LuminusComponentsContext),[l,u]=i.useState(s),c=i.useCallback((p,g)=>{console.log("changeValue",p,g),u(j=>({...j,[p]:{...j[p],value:g}}))},[]),x=p=>(p==null?void 0:p.value)!==(p==null?void 0:p.defaultValue),d=i.useCallback(()=>Object.keys(l).some(p=>x(l[p])),[l]);return i.useEffect(()=>{u(s)},[s]),e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row",se.tableRow),children:[e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell,se.stickyFirst),children:d()&&e.jsxRuntimeExports.jsx(e.IconButton,{color:"success",onClick:()=>r(us(l)),children:e.jsxRuntimeExports.jsx(a,{icon:"check"})})}),n.map(p=>{var g,j;return e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell),children:e.jsxRuntimeExports.jsx(ds,{type:p.type,value:(g=l[p.field??""])==null?void 0:g.value,field:p.field,isReadonly:p.readOnly,isPrimary:t.primaryKey===p.field,valuesForSelect:p.valuesForSelect,onChangeHandler:c,hideClearIcon:!x(l[p.field??""]),clearValue:(j=l[p.field??""].defaultValue)==null?void 0:j.toString()})},`${t.id}-${p.field}`)}),e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell,se.stickyLast),children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>o(l[t.primaryKey??""].value),children:e.jsxRuntimeExports.jsx(a,{icon:"delete"})})})]})},li=({schema:t,columns:n,onCreate:s})=>{const{ProjectIconComponent:r}=i.useContext(e.LuminusComponentsContext),[o,a]=i.useState(null),l=i.useCallback(()=>{var x;const c={};(x=t.columns)==null||x.forEach(d=>{const p=d.type==="BIT"?!1:d.type==="NUM"?0:d.type==="STR"?"":null;c[d.field??""]={value:p,defaultValue:p}}),a(c)},[t]),u=i.useCallback((c,x)=>{a(d=>d&&{...d,[c]:{...d[c],value:x}})},[]);return o?e.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[e.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"success",onClick:async()=>{const c=us(o);c&&await s(c)&&a(null)},children:e.jsxRuntimeExports.jsx(r,{icon:"check"})})}),n.map(c=>e.jsxRuntimeExports.jsx("td",{children:e.jsxRuntimeExports.jsx(ds,{type:c.type,value:o[c.field??""].value,field:c.field,isReadonly:c.readOnly,isPrimary:t.primaryKey===c.field,valuesForSelect:c.valuesForSelect,onChangeHandler:u,primaryEditable:!0})},`${t.id}-${c.field}`)),e.jsxRuntimeExports.jsx("td",{className:"sticky-last",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>a(null),children:e.jsxRuntimeExports.jsx(r,{icon:"cancel"})})})]}):e.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[e.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:e.jsxRuntimeExports.jsx(e.IconButton,{onClick:l,children:e.jsxRuntimeExports.jsx(r,{icon:"add"})})}),e.jsxRuntimeExports.jsx("td",{colSpan:n.length+1})]})},ci=({column:t,children:n})=>t.description?e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{placement:"bottom",text:t.description??"",children:e.jsxRuntimeExports.jsx("div",{children:n})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:n}),ui=({schema:t,items:n,onEditItem:s,onDeleteItem:r,onCreateItem:o,filters:a,setFilter:l,sortByField:u,sortByType:c,setSortBy:x,selectedMaster:d})=>{const{texts:{dynamicForms:p},ProjectIconComponent:g}=i.useContext(e.LuminusComponentsContext),[j,f]=i.useState([]);return i.useEffect(()=>{var h,v,R;f([...((R=(v=(h=t.columns)==null?void 0:h.filter(E=>!E.hidden))==null?void 0:v.filter(E=>t.masterReference?E.field!==t.masterReferenceColumn:!0))==null?void 0:R.map(E=>{var m;return{label:E.caption??"",description:E.description??null,field:E.field??"",type:E.type,readOnly:E.readOnly,valuesForSelect:((m=E.values)==null?void 0:m.filter(y=>E.valuesFilteredByMaster?y.masterValue===d:!0).map(y=>({id:y.id??"",name:y.name})))??void 0}}))??[]])},[t,d]),e.jsxRuntimeExports.jsxs("table",{id:`dynamic-table-${t.id}`,className:e.classNames("table table-borderless luminus-df-table",se.table),children:[e.jsxRuntimeExports.jsxs("thead",{className:e.classNames("text-nowrap table-header",se.stickyTop,se.tableHeader),children:[e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row",se.tableRow),children:[e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyFirst)}),j.map(h=>e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead),onClick:()=>{const v=u===h.field?c:null;if(v==="asc"){x(h.field,"desc");return}if(v==="desc"){x(h.field,null);return}x(h.field,"asc")},children:e.jsxRuntimeExports.jsx(ci,{column:h,children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[h.label,u===h.field&&e.jsxRuntimeExports.jsx(g,{icon:c==="asc"?"chevron-up":"chevron-down"})]})})},`${t.id}-${h.field}`)),e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyLast)})]}),e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row filters-row",se.tableRow,se.filtersRow),children:[e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyFirst)}),j.map(h=>e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead),children:h.valuesForSelect&&h.valuesForSelect.length>0||h.type==="BIT"?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx(Ye,{InputContainer:e.NoInputContainer,withoutLabel:!0,size:"sm",value:a[h.field]??"",onChange:v=>l(h.field,(v==null?void 0:v.toString())??null),options:h.type==="BIT"?[{id:1,name:p.yes},{id:0,name:p.no}]:h.valuesForSelect??[],isNumber:h.type==="BIT",showClearIcon:!0})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx($e,{InputContainer:e.NoInputContainer,withoutLabel:!0,size:"sm",type:h.type==="NUM"?"number":h.type==="DT"?"date":"text",value:a[h.field]??"",onChange:v=>l(h.field,(v==null?void 0:v.toString())??null)})})},`${t.id}-${h.field}`)),e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyLast)})]})]}),e.jsxRuntimeExports.jsxs("tbody",{className:e.classNames("table-body",se.tableBody),children:[n.filter(h=>h[t.primaryKey??""]).map(h=>e.jsxRuntimeExports.jsx(ii,{schema:t,columns:j,initialItem:h,onEdit:s,onDelete:r},`${t.id}-${h[t.primaryKey??""].value}`)),e.jsxRuntimeExports.jsx(li,{schema:t,columns:j,onCreate:o})]})]})},di=({master:t,onChange:n,options:s,label:r})=>e.jsxRuntimeExports.jsx(Ye,{label:r,value:t,onChange:o=>n(o?o.toString():null),options:s,size:"sm"}),xi="_pagination_gujwe_1",sn={pagination:xi},rn={appDetail:"/settings/:id"},Me={apiSchemaGet:"/dynamicForms/schema",apiDataGet:"/dynamicForms/data",apiItemPost:"/dynamicForms/update",apiItemDelete:"/dynamicForms/delete",apiItemCreate:"/dynamicForms/insert"},mi=({id:t,page:n,setPage:s,filters:r,setFilter:o,sortByField:a,sortByType:l,setSortBy:u,appUrls:{appDetail:c=rn.appDetail}=rn,apiUrls:{apiSchemaGet:x=Me.apiSchemaGet,apiDataGet:d=Me.apiDataGet,apiItemPost:p=Me.apiItemPost,apiItemDelete:g=Me.apiItemDelete,apiItemCreate:j=Me.apiItemCreate}=Me})=>{var te,me,ne,Z,fe,ve;const{texts:{dynamicForms:f},ProjectIconComponent:h}=i.useContext(e.LuminusComponentsContext),v=e.useAxios(),{startLoading:R,stopLoading:E}=i.useContext(e.LoadingContext),[m,y]=i.useState(null),[w,_]=i.useState(null),[S,C]=i.useState(null),[D,k]=i.useState(null),[I,b]=i.useState(!1),{addNotification:B}=e.useNotifications(),[H,K]=i.useState([]),{confirm:$}=e.useConfirm(),T=20,M=T+1,V=D?Math.ceil(D.length/T):1,z=n?n>1:!1,U=n?n<V:!1,q=n?(n-1)*T:0,O=n?n*T:T,[N,P]=i.useState(!1),ee=N?D==null?void 0:D.slice(q,O):D,[re,pe]=i.useState(null);i.useEffect(()=>{y(null),_(null),b(!1),K([]),pe(null)},[t]);const Y=i.useCallback(async()=>{R("dynamicFormSchema"),await v.get(`${x}?id=${t}`).then(({data:A})=>{y(A),E("dynamicFormSchema")}).catch(()=>E("dynamicFormSchema"))},[v,t,R,E,x]),le=i.useCallback(async()=>{var A;if(!(m===null||((A=m.id)==null?void 0:A.toString())!==t)){if(m.masterReference&&!re){_([]);return}R("dynamicFormData"),await v.get(`${d}?id=${t}&showArchive=${I}${m.masterReference?`&master=${re}`:""}`).then(({data:Q})=>{const ae=Q.map(X=>{var ie;return Object.fromEntries(((ie=m.columns)==null?void 0:ie.filter(ce=>ce.field).map(ce=>[ce.field,{value:X[ce.field??""],defaultValue:X[ce.field??""]}]))??[])});_(ae),E("dynamicFormData")}).catch(()=>E("dynamicFormData"))}},[v,t,m,R,E,I,re,d]),ge=i.useCallback(async A=>(R("dynamicFormEdit"),v.post(`${p}?id=${t}`,A).then(()=>(E("dynamicFormEdit"),K([]),!0)).catch(Q=>(E("dynamicFormEdit"),K(e.extractErrorsFromResponse(Q)),!1))),[v,t,R,E,p]),ke=i.useCallback(async A=>(R("dynamicFormDelete"),v.delete(`${g}?id=${t}&pk=${A}`).then(()=>(E("dynamicFormDelete"),K([]),!0)).catch(Q=>(E("dynamicFormDelete"),K(e.extractErrorsFromResponse(Q)),!1))),[v,t,R,E,g]),W=i.useCallback(async A=>(R("dynamicFormCreate"),v.post(`${j}?id=${t}`,A).then(({data:Q})=>(E("dynamicFormCreate"),K([]),Q)).catch(Q=>(E("dynamicFormCreate"),K(e.extractErrorsFromResponse(Q)),null))),[v,t,R,E,j]),oe=i.useCallback(async A=>{m&&await ge(m.masterReference?{...A,[m.masterReferenceColumn??""]:re}:A)&&(B(f.editSuccess,"success"),_(Q=>Q&&Q.map(ae=>{var X;return((X=ae[(m==null?void 0:m.primaryKey)??""])==null?void 0:X.value)===A[(m==null?void 0:m.primaryKey)??""]?nn(A,m):ae})))},[B,ge,m,re,f]),ue=i.useCallback(async A=>{await $(f.deleteConfirm)&&await ke(A)&&(B(f.deleteSuccess,"success"),_(Q=>Q&&Q.filter(ae=>{var X;return((X=ae[(m==null?void 0:m.primaryKey)??""])==null?void 0:X.value)!==A})))},[B,ke,f,$,m]),Le=i.useCallback(async A=>{if(!m)return!1;const Q=await W(m.masterReference?{...A,[m.masterReferenceColumn??""]:re}:A);if(Q!==null){B(f.createSuccess,"success");const ae=nn(A,m);return ae[(m==null?void 0:m.primaryKey)??""]={value:Q,defaultValue:Q},_(X=>[...X??[],ae]),!0}return!1},[B,W,f,m,re]),F=A=>{A>V?s(V):A<1&&s(1),s(A)},L=i.useCallback(()=>{if(!w||!m){C(null);return}const A=w.filter(Q=>Object.entries(r).every(([ae,X])=>{var He,We,ze;if(X===null)return!0;const ie=(He=Q[ae])==null?void 0:He.value;if(ie==null)return!1;const ce=(We=m.columns)==null?void 0:We.find(Je=>Je.field===ae),Pe=ce==null?void 0:ce.type,Ve=(ce==null?void 0:ce.values)&&((ze=ce==null?void 0:ce.values)==null?void 0:ze.length)>0;if(!Pe)return!1;switch(Pe){case"STR":return Ve?ie===X:ie.toString().toLowerCase().includes(X.toLowerCase());case"NUM":return Ve?Number(ie)===Number(X):ie.toString().toLowerCase().includes(X.toLowerCase());case"DT":return ie.toString().toLowerCase().includes(X.toLowerCase());case"BIT":return Number(ie)===Number(X);default:return ie.toString().toLowerCase().includes(X.toLowerCase())}}));C(A)},[w,r,m]),G=i.useCallback(()=>{if(!S||!m){k([]);return}if(!a){k(S);return}k([...S].sort((A,Q)=>{var Pe,Ve,He,We,ze,Je;const ae=((Ve=(Pe=A[a])==null?void 0:Pe.value)==null?void 0:Ve.toString())??"",X=((We=(He=Q[a])==null?void 0:He.value)==null?void 0:We.toString())??"",ie=m.columns.find(ye=>ye.field===a),ce=ie==null?void 0:ie.type;if(!ie||!ce||!ae&&!X)return 0;if(!ae)return 1;if(!X)return-1;if(ie.values&&ie.values.length>0){const ye=((ze=ie.values.find(it=>{var Ue;return((Ue=it.id)==null?void 0:Ue.toString())===ae}))==null?void 0:ze.name)??"",Ne=((Je=ie.values.find(it=>{var Ue;return((Ue=it.id)==null?void 0:Ue.toString())===X}))==null?void 0:Je.name)??"";return l==="asc"?ye.localeCompare(Ne):Ne.localeCompare(ye)}if(ce==="NUM"){const ye=Number(ae),Ne=Number(X);return l==="asc"?ye-Ne:Ne-ye}if(ce==="DT"){const ye=e.parseISO(ae==null?void 0:ae.toString()).getTime(),Ne=e.parseISO(X==null?void 0:X.toString()).getTime();return l==="asc"?ye-Ne:Ne-ye}return l==="asc"?ae.toString().localeCompare(X.toString()):X.toString().localeCompare(ae.toString())}))},[S,m,a,l]);return i.useEffect(()=>{Y()},[Y]),i.useEffect(()=>{le()},[le]),i.useEffect(()=>{L()},[L]),i.useEffect(()=>{G()},[G]),i.useEffect(()=>{D&&D.length>M?(P(!0),n||s(1)):(P(!1),D&&s(null))},[D,s,n,M]),i.useEffect(()=>{!N||!n||(n>V&&s(V),n<1&&s(1))},[n,N,V,s]),e.jsxRuntimeExports.jsxs("div",{className:"h-100 w-100 d-flex flex-column",children:[e.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex justify-content-between align-items-center",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h3",children:(m==null?void 0:m.name)??""}),e.jsxRuntimeExports.jsx(Dt,{label:f.showArchived,value:I===!0,onChange:A=>b(A)})]}),(m==null?void 0:m.description)&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"mb-3",children:m==null?void 0:m.description}),(m==null?void 0:m.masterReference)&&e.jsxRuntimeExports.jsx("div",{className:"mb-3 d-flex",children:e.jsxRuntimeExports.jsx(di,{label:((me=(te=m.columns)==null?void 0:te.find(A=>A.field===m.masterReferenceColumn))==null?void 0:me.caption)??"",options:((Z=(ne=m.columns)==null?void 0:ne.find(A=>A.field===m.masterReferenceColumn))==null?void 0:Z.values)??[],master:re,onChange:A=>pe(A)})}),(m==null?void 0:m.slaves)&&m.slaves.length>0&&e.jsxRuntimeExports.jsx("div",{className:"mb-3 d-flex align-items-center flex-start",children:m.slaves.map(A=>{var Q;return e.jsxRuntimeExports.jsx(e.ContextButton,{as:"link",href:`${xe.generatePath(c,{id:(Q=A.id)==null?void 0:Q.toString()})}?type=dynamic-form`,children:A.name},A.id)})}),m!=null&&m.masterReference&&!re?e.jsxRuntimeExports.jsx(ot,{variant:"warning",children:f.selectMaster(((ve=(fe=m.columns)==null?void 0:fe.find(A=>A.field===m.masterReferenceColumn))==null?void 0:ve.caption)??"").toLowerCase()}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[m&&H.length>0&&e.jsxRuntimeExports.jsx("div",{className:"mb-2",children:e.jsxRuntimeExports.jsx(Ka,{errors:H,schema:m})}),m&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("rounded border overflow-auto",sn.tableContainer),children:e.jsxRuntimeExports.jsx(ui,{schema:m,items:(N?ee:D)??[],onEditItem:oe,onDeleteItem:ue,onCreateItem:Le,filters:r,setFilter:o,sortByField:a,sortByType:l,setSortBy:u,selectedMaster:(re==null?void 0:re.toString())??null})}),N&&n&&e.jsxRuntimeExports.jsxs("div",{className:e.classNames(sn.pagination,"d-flex align-items-center gap-3 p-1 border-bottom border-start border-end rounded"),children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(1),disabled:!z,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-double-left"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(n-1),disabled:!z,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-left"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(n+1),disabled:!U,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-right"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(V),disabled:!U,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-double-right"})})]}),e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:[f.tablePage," ",n," ",f.tablePageFrom," ",V]})]})]})]})]})},on={appDetail:"/settings/:id"},an={apiDynamicFormsGet:"/dynamicForms"},pi=({item:t,children:n})=>t.description?e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{placement:"left",text:t.description??"",children:e.jsxRuntimeExports.jsx("div",{children:n})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:n}),fi=({activeId:t,otherForms:n=[],groupsDefs:s=[],searchQuery:r,fullSize:o,appUrls:{appDetail:a=on.appDetail}=on,apiUrls:{apiDynamicFormsGet:l=an.apiDynamicFormsGet}=an})=>{const u=e.useAxios(),{startLoading:c,stopLoading:x}=i.useContext(e.LoadingContext),[d,p]=i.useState(null),g=i.useMemo(()=>[...(d==null?void 0:d.map(h=>({...h,type:"dynamic-form"})))??[],...n].filter(h=>we.stringSearchWithin(h.name,r)||we.stringSearchWithin(h.description,r)).sort((h,v)=>(h.name??"").localeCompare(v.name??""))??[],[d,n,r]),j=i.useMemo(()=>s.map(h=>({id:h.id,name:h.name??"",items:g.filter(v=>v.group===h.id)})).filter(h=>h.items.length>0),[s,g]),f=i.useCallback(async()=>{c("dynamicForms"),await u.get(l).then(({data:h})=>{p(h),x("dynamicForms")}).catch(()=>x("dynamicForms"))},[u,c,x,l]);return i.useEffect(()=>{!d&&f()},[f,d]),g.length>0?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx("div",{className:"w-auto list-group forms-items overflow-x-hidden",children:j.map(h=>e.jsxRuntimeExports.jsx(nt,{title:h.name,defaultOpen:!0,children:h.items.map(v=>{var R,E,m,y;return o?e.jsxRuntimeExports.jsxs(xe.Link,{to:`${xe.generatePath(a,{id:(R=v.id)==null?void 0:R.toString()})}?type=${v.type}`,className:`text-nowrap list-group-item list-group-item-action ${(t==null?void 0:t.toString())===((E=v.id)==null?void 0:E.toString())?"active":""}`,children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"body",children:v.name}),v.description&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"text-muted mt-2",children:v.description})]},v.id):e.jsxRuntimeExports.jsx(pi,{item:v,children:e.jsxRuntimeExports.jsx(xe.Link,{to:`${xe.generatePath(a,{id:(m=v.id)==null?void 0:m.toString()})}?type=${v.type}`,className:`text-nowrap list-group-item list-group-item-action ${(t==null?void 0:t.toString())===((y=v.id)==null?void 0:y.toString())?"active":""}`,children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",children:v.name})})},v.id)})},h.id))})}):null},hi=({label:t,to:n,value:s})=>e.jsxRuntimeExports.jsxs(e.RowLabelInput,{label:t,children:[e.jsxRuntimeExports.jsx("input",{disabled:!0,className:"form-control d-none"}),n?e.jsxRuntimeExports.jsx(xe.Link,{to:n,className:"border-bottom luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:s}):e.jsxRuntimeExports.jsx("div",{className:"luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:s})]}),ji=()=>{const{localizationContext:t}=i.useContext(e.LuminusComponentsContext),{language:n,setLanguage:s}=i.useContext(t),r=o=>{s(o)};return e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:o=>{r(n==="cz"?"en":"cz"),o.stopPropagation()},children:n==="cz"?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("strong",{children:"CZ"}),e.jsxRuntimeExports.jsx(e.MdArrowRight,{}),e.jsxRuntimeExports.jsx("span",{children:"EN"})]}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("strong",{children:"EN"}),e.jsxRuntimeExports.jsx(e.MdArrowRight,{}),e.jsxRuntimeExports.jsx("span",{children:"CZ"})]})})},gi=({controlId:t,...n})=>e.jsxRuntimeExports.jsx(e.Form.Group,{controlId:t,...n}),vi=({employeeId:t,alt:n,noPhotoImage:s,cafmApiUrl:r,showLargeInLightBox:o=!1})=>{const{user:a}=i.useContext(e.UserContext),{photoPath:l,photoPathSm:u}=Ae.useEmployeePhotoPath(t);return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:t&&e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:o?e.jsxRuntimeExports.jsx(Xn,{baseUrl:r,customToken:a.cafmToken??void 0,photos:[{id:t.toString(),alt:n??"",isDefault:!0,smSrc:u,lgSrc:l}],placeholder:s,ImgComponent:yt}):e.jsxRuntimeExports.jsx(yt,{baseUrl:r,customToken:a.cafmToken??void 0,src:u,alt:n,placeholder:s,className:"rounded w-100"})})})},Ei=({text:t,setText:n,onSearchButtonClick:s,className:r})=>{const o=a=>{n(a)};return e.jsxRuntimeExports.jsxs(Xe,{className:`${r}`,children:[e.jsxRuntimeExports.jsx(e.Form.Control,{value:t,onChange:a=>n(a.target.value)}),t&&e.jsxRuntimeExports.jsx(e.Button$1,{onClick:()=>o(""),variant:"link",className:"border text-muted",children:e.jsxRuntimeExports.jsx(e.MdClear,{})}),e.jsxRuntimeExports.jsx(e.Button$1,{onClick:()=>s&&s(t),variant:"link",className:"border",children:e.jsxRuntimeExports.jsx(e.MdSearch,{})})]})},Ri=({value:t,numberPrefix:n,numberSuffix:s,decimalScale:r=2,className:o})=>e.jsxRuntimeExports.jsx(Tt,{value:t,displayType:"text",thousandSeparator:" ",decimalScale:r,defaultValue:"",prefix:n,suffix:s,className:o}),yi=({data:t,keys:n,colors:s,tooltipLabel:r})=>e.jsxRuntimeExports.jsx(e.Re,{data:t.map(o=>({name:o.name,...o.values})),indexBy:"name",keys:n,margin:{top:20,right:50,bottom:30,left:150},layout:"horizontal",colors:s,padding:.2,borderRadius:2,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},axisTop:null,axisRight:null,axisBottom:{tickSize:5,tickPadding:5,tickRotation:0},axisLeft:{tickSize:5,tickPadding:5,tickRotation:0},labelSkipWidth:12,labelSkipHeight:12,labelTextColor:{from:"color",modifiers:[["darker",1.6]]},tooltipLabel:r}),bi=({InputContainer:t=e.RowLabelInput,formField:n,label:s,resetsFields:r,type:o,required:a,hidden:l,disabled:u,withoutLabel:c,className:x})=>{const{register:d,formState:p,setValue:g}=Re.useFormContext(),[j,f]=i.useState(void 0),[h,v]=i.useState(!1);i.useEffect(()=>{const E=n.split(".");let m=p.errors;E.forEach(y=>{m!==void 0&&(m=m[y])}),f(m)},[p,n]),i.useEffect(()=>{p.isSubmitted&&v(!0)},[p]);const R=j!==void 0;return e.jsxRuntimeExports.jsxs(t,{isForCheckInput:!0,hidden:l,label:`${s}${a?" *":""}`,isInvalid:R,withoutLabel:c,className:x,children:[e.jsxRuntimeExports.jsx(e.Form.Check,{id:`check-${n}`,type:o??"checkbox",label:`${s}${a?" *":""}`,...d(n,{onChange:()=>{r&&r.forEach(E=>g(E,null,{shouldDirty:!0,shouldValidate:h}))}}),isInvalid:R,hidden:l,disabled:u,className:"w-100"}),j&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:j.message})]})},wi=({InputContainer:t=e.RowLabelInput,label:n,formField:s,options:r,resetsFields:o,required:a,disabled:l,hidden:u,className:c})=>{const{register:x,formState:d,setValue:p,watch:g}=Re.useFormContext(),[j,f]=i.useState(void 0),[h,v]=i.useState(!1),R=i.useMemo(()=>r,[r]);i.useEffect(()=>{const m=s.split(".");let y=d.errors;m.forEach(w=>{y!==void 0&&(y=y[w])}),f(y)},[d,s]),i.useEffect(()=>{d.isSubmitted&&v(!0)},[d]);const E=j!==void 0;return e.jsxRuntimeExports.jsxs(t,{isForRadioInput:!0,hidden:u,withoutLabel:!n,label:`${n}${a?" *":""}`,isInvalid:E,className:c,children:[R.map(m=>e.jsxRuntimeExports.jsx(e.Form.Check,{id:`radio-${m.id}`,label:m.name,type:"radio",value:m.id??"",checked:g(s)===m.id,...x(s,{onChange:()=>{o&&o.forEach(y=>p(y,null,{shouldDirty:!0,shouldValidate:h}))}}),isInvalid:E,hidden:u,disabled:l,className:"w-100"},m.id)),j&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:j.message})]})},Ni=({InputContainer:t=e.RowLabelInput,formField:n,label:s,size:r,defaultSelection:o,resetsFields:a,isNumber:l,required:u,hidden:c,disabled:x,items:d,onSearchQueryChange:p,selectedItemNavigateTo:g,texts:j,dropdownItemsNameWidth:f,isLoading:h,withoutLabel:v,additionalColumns:R,CustomOnChangeComponent:E,icon:m,displayIdAsName:y,onSelect:w,className:_,archiveColumn:S})=>{const{formState:C,setValue:D,watch:k,control:I}=Re.useFormContext(),[b,B]=i.useState(void 0),[H,K]=i.useState(!1),[$,T]=i.useState(!1),M=k(n)??null,V=M===(o==null?void 0:o.id)?o==null?void 0:o.name:k(`${n}-DropdownName`),z=i.useMemo(()=>M==null?null:{id:M??null,name:V??""},[M,V]),U=i.useCallback(()=>{const Y=n.split(".");let le=C.errors;Y.forEach(ge=>{le!==void 0&&(le=le[ge])}),B(le)},[C,n]),q=i.useCallback(Y=>{if((Y==null?void 0:Y.id)===M)return;if(w&&w(Y),a&&a.forEach(ge=>D(ge,null,{shouldDirty:!0,shouldValidate:$})),Y===null){D(n,null,{shouldDirty:!0,shouldValidate:$}),D(`${n}-DropdownName`,null);return}let le=null;l?le=(Y==null?void 0:Y.id)!==null&&(Y==null?void 0:Y.id)!==""?parseInt(Y.id.toString(),10):null:le=Y.id===null||Y.id===void 0||Y.id===""?null:Y.id,D(n,le,{shouldDirty:!0,shouldValidate:$}),D(`${n}-DropdownName`,Y.name??"")},[D,n,$,l,a,M,w]),O=i.useCallback(Y=>{K(!1),q(Y)},[q]),N=i.useCallback(()=>{K(!1)},[]);i.useEffect(()=>{U()},[U]),i.useEffect(()=>{C.isSubmitted&&T(!0)},[C]);const P=i.useRef(null),ee=b!==void 0,re=g!==void 0,pe=re&&z!==null;return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs(t,{label:`${s}${u?" *":""}`,hidden:c,withoutLabel:v,isInvalid:ee,inputContainerClassName:e.classNames({"luminus-dropdown-select-open":H}),className:_,children:[e.jsxRuntimeExports.jsxs(ns,{currentSelection:z,selectedItemNavigateTo:g,children:[y&&(z==null?void 0:z.name)&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"caption",className:"d-flex justify-content-end mt-2 luminus-dropdown-selection-name",children:z.name}),e.jsxRuntimeExports.jsx(Re.Controller,{control:I,name:n,render:()=>e.jsxRuntimeExports.jsx(e.Form.Select,{size:r,onMouseDown:Y=>{Y.currentTarget.focus(),Y.preventDefault()},onClick:()=>{!re&&!x&&K(!0)},ref:P,value:M??"",onChange:()=>{},isInvalid:ee,hidden:c,className:e.classNames("w-100",{"luminus-dropdown-picker-disabled":x,"luminus-dropdown-picker-link":pe}),children:e.jsxRuntimeExports.jsx("option",{value:M,children:y?M:(V==null?void 0:V.length)>0?V:M})})}),E||!x&&re?e.jsxRuntimeExports.jsxs("div",{className:"custom-picker-button",children:[!E&&!x&&re&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",color:"secondary",onClick:Y=>{Y.preventDefault(),Y.stopPropagation(),K(!0)},children:m??e.jsxRuntimeExports.jsx(e.MdOutlineEdit,{})}),E??null]}):null]}),b&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:b.message}),P.current&&e.jsxRuntimeExports.jsx(rt,{show:H,onCancel:N,items:d,currentSelection:z,onSelectionChange:O,onSearchQueryChange:p,texts:j,itemsNameWidth:f,additionalColumns:R,displayIdAsName:y,isLoading:h,disabled:x,inputRef:P,archiveColumn:S})]})})},Ci=({InputContainer:t=e.RowLabelInput,label:n,formField:s,hidden:r,required:o,placeholder:a,disabled:l,showClearIcon:u,resetsFields:c,multiple:x,accept:d,withoutLabel:p,className:g})=>{const{watch:j,setValue:f,register:h,formState:v}=Re.useFormContext(),[R,E]=i.useState(!1),[m,y]=i.useState(void 0),w=i.useCallback(()=>{f(s,"")},[f,s]),_=i.useCallback(()=>{const C=s.split(".");let D=v.errors;C.forEach(k=>{D!==void 0&&(D=D[k])}),y(D)},[v,s]);i.useEffect(_,[_]),i.useEffect(()=>{v.isSubmitted&&E(!0)},[v]);const S=m!==void 0;return e.jsxRuntimeExports.jsxs(t,{label:`${n}${o?"*":""}`,hidden:r,withoutLabel:p,isInvalid:S,className:g,children:[e.jsxRuntimeExports.jsx(e.FormControl,{type:"file",multiple:x,accept:d.join(", "),placeholder:a??n,isInvalid:S,hidden:r,disabled:l,className:"w-100",...h(s,{onChange:()=>{c&&c.forEach(C=>f(C,null,{shouldDirty:!0,shouldValidate:R}))}})}),u&&j(s)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:w,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),m&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:m.message})]})},_i=({children:t,onStorno:n,noSpacer:s})=>{const{formState:r}=Re.useFormContext(),[o,a]=i.useState(!1);return i.useEffect(()=>{a(Object.keys(r.dirtyFields).length>0)},[r]),o?e.jsxRuntimeExports.jsx(zn,{onStorno:n,noSpacer:s,children:t}):null},ki=({InputContainer:t=e.RowLabelInput,options:n,formField:s,label:r,size:o,resetsFields:a,isNumber:l,required:u,hidden:c,disabled:x,withoutLabel:d,noSortOptions:p,suffixIdToName:g,onSelect:j,className:f,appendCurrentSelectionWithName:h})=>{const{texts:{customSelect:v}}=i.useContext(e.LuminusComponentsContext),{formState:R,setValue:E,watch:m,control:y}=Re.useFormContext(),[w,_]=i.useState(void 0),[S,C]=i.useState(!1),[D,k]=i.useState(!1),[I,b]=i.useState(""),B=m(s),H=i.useMemo(()=>n.find(O=>O.id===B)??null,[n,B]),K=i.useCallback(()=>{const O=s.split(".");let N=R.errors;O.forEach(P=>{N!==void 0&&(N=N[P])}),_(N)},[R,s]),$=i.useCallback(O=>{if((O==null?void 0:O.id)===B)return;if(j&&j(O),a&&a.forEach(P=>E(P,null,{shouldDirty:!0,shouldValidate:D})),O===null){E(s,null,{shouldDirty:!0,shouldValidate:D});return}let N=null;l?N=(O==null?void 0:O.id)!==null&&(O==null?void 0:O.id)!==""?parseInt(O.id.toString(),10):null:N=O.id===null||O.id===void 0||O.id===""?null:O.id,E(s,N,{shouldDirty:!0,shouldValidate:D})},[E,s,l,a,B,D,j]),T=i.useCallback(O=>{C(!1),$(O)},[$]),M=i.useCallback(O=>{b(O)},[]);i.useEffect(()=>{K()},[K]),i.useEffect(()=>{R.isSubmitted&&k(!0)},[R]);const V=i.useCallback(O=>{var N;return O===null?"":!O.name||O.name.length===0?((N=O.id)==null?void 0:N.toString())??"":g?`${O.name} (${O.id})`:O.name},[g]),z=i.useMemo(()=>{const O=n??[];return h!==void 0&&B&&(O.some(N=>N.id===B)||O.push({id:B,name:h})),O.map(N=>({id:N.id,name:V(N)})).filter(N=>we.stringSearchWithin(N.name,I)).sort((N,P)=>p?0:(N.name??"").localeCompare(P.name??""))},[n,p,I,V,h,B]),U=i.useRef(null),q=w!==void 0;return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs(t,{label:`${r}${u?" *":""}`,hidden:c,withoutLabel:d,isInvalid:q,inputContainerClassName:e.classNames({"luminus-dropdown-select-open":S}),className:f,children:[e.jsxRuntimeExports.jsx(Re.Controller,{control:y,name:s,render:()=>e.jsxRuntimeExports.jsx(e.Form.Select,{size:o,onMouseDown:O=>{O.currentTarget.focus(),O.preventDefault()},onClick:()=>{C(!0)},ref:U,value:B??"",onChange:()=>{},isInvalid:q,hidden:c,disabled:x,className:"w-100",children:e.jsxRuntimeExports.jsx("option",{value:(H==null?void 0:H.id)??"",children:V(H)})})}),w&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:w.message}),U.current&&e.jsxRuntimeExports.jsx(rt,{show:S,onCancel:()=>C(!1),items:z,currentSelection:H??null,onSelectionChange:T,onSearchQueryChange:M,texts:v,disabled:x,inputRef:U,autoHideSearch:!0,allItemsLength:n.length})]})})},Si=({InputContainer:t=e.RowLabelInput,formField:n,label:s,placeholder:r,size:o,resetsFields:a,showClearIcon:l,clearValue:u,required:c,hidden:x,disabled:d,withoutLabel:p,step:g,stepperStep:j=1,className:f,min:h,max:v})=>{const{register:R,formState:E,setValue:m,watch:y}=Re.useFormContext(),[w,_]=i.useState(void 0),[S,C]=i.useState(!1),D=i.useCallback((H,K,$)=>{m(H,we.limitNumber(K,h,v),$)},[v,h,m]),k=i.useCallback(()=>{const H=u??null;D(n,H!==null?Number(H):null,{shouldDirty:!0,shouldValidate:S})},[u,D,n,S]),I=i.useCallback(()=>{const H=n.split(".");let K=E.errors;H.forEach($=>{K!==void 0&&(K=K[$])}),_(K)},[E,n]);i.useEffect(()=>{I()},[I]),i.useEffect(()=>{E.isSubmitted&&C(!0)},[E]);const b=w!==void 0,B=y(n);return e.jsxRuntimeExports.jsxs(t,{label:`${s}${c?" *":""}`,hidden:x,withoutLabel:p,isInvalid:b,className:f,children:[e.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[e.jsxRuntimeExports.jsx(e.Form.Control,{type:"number",placeholder:r??s,size:o,...R(n,{setValueAs:H=>H==null||H===""?null:we.limitNumber(Number(H),h,v),min:h,max:v,onChange:()=>{a&&a.forEach(H=>m(H,null,{shouldDirty:!0,shouldValidate:S}))}}),isInvalid:b,hidden:x,disabled:d,className:"w-100 luminus-numeric-stepper",step:g,min:h,max:v}),e.jsxRuntimeExports.jsx("div",{className:"stepper-icon left",children:!d&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:H=>{H.preventDefault(),H.stopPropagation(),D(n,((B?Number(B):0)-j).toString(),{shouldDirty:!0,shouldValidate:S})},children:e.jsxRuntimeExports.jsx(e.FaMinus,{})})}),e.jsxRuntimeExports.jsx("div",{className:"stepper-icon right",children:!d&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:H=>{H.preventDefault(),H.stopPropagation(),D(n,((B?Number(B):0)+j).toString(),{shouldDirty:!0,shouldValidate:S})},children:e.jsxRuntimeExports.jsx(e.FaPlus,{})})})]}),l&&y(n)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:k,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),w&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:w.message})]})},Ii=({InputContainer:t=e.RowLabelInput,formField:n,label:s,placeholder:r,resetsFields:o,showClearIcon:a,clearValue:l,required:u,hidden:c,disabled:x,withoutLabel:d,step:p,size:g,CustomOnChangeComponent:j,noSelectOnFocus:f,className:h,decimalScale:v=2,numberPrefix:R,numberSuffix:E,min:m,max:y})=>{const{formState:w,setValue:_,watch:S,control:C}=Re.useFormContext(),[D,k]=i.useState(void 0),[I,b]=i.useState(!1),B=i.useCallback(()=>{const T=l??null;_(n,T!==null?Number(T):null,{shouldDirty:!0,shouldValidate:I})},[l,_,n,I]),H=i.useCallback(()=>{const T=n.split(".");let M=w.errors;T.forEach(V=>{M!==void 0&&(M=M[V])}),k(M)},[w,n]);i.useEffect(()=>{H()},[H]),i.useEffect(()=>{w.isSubmitted&&b(!0)},[w]);const K=S(n);i.useEffect(()=>{y!==void 0&&K>y&&_(n,y),m!==void 0&&K<m&&_(n,m)},[n,K,y,m,_]);const $=D!==void 0;return e.jsxRuntimeExports.jsxs(t,{label:`${s}${u?" *":""}`,hidden:c,withoutLabel:d,isInvalid:$,className:h,children:[e.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[e.jsxRuntimeExports.jsx(Re.Controller,{control:C,name:n,render:({field:{ref:T,onChange:M,name:V,value:z}})=>e.jsxRuntimeExports.jsx(Tt,{displayType:"input",thousandSeparator:" ",decimalScale:v,prefix:R,suffix:E,defaultValue:"",name:V,value:z??"",placeholder:r??s,onFocus:U=>{!f&&U.target.select()},onChange:U=>{var O,N;const q=parseFloat(((N=(O=U.target)==null?void 0:O.value)==null?void 0:N.replaceAll(" ",""))??0);o&&o.forEach(P=>_(P,null,{shouldDirty:!0,shouldValidate:I})),M(q==null||Number.isNaN(q)?null:Number(q))},hidden:c,disabled:x,className:e.classNames("form-control text-end w-100",{"is-invalid":$},{[`form-control-${g}`]:g}),step:p,getInputRef:T,min:m,max:y})}),j&&e.jsxRuntimeExports.jsx("div",{className:"custom-picker-button",children:j})]}),a&&S(n)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:B,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),D&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:D.message})]})},$t=["slice","options","formats","conditions"],ln=t=>{const n=t.current.flexmonster.getReport({withDefaults:!0});if(typeof n=="string")throw alert("report is string"),new Error("report is string");const s={};return $t.forEach(r=>{s[r]=n[r]}),JSON.stringify(s)},Di=t=>{if(t.settings){const n=JSON.parse(t.settings);return $t.forEach(s=>{n[s]===void 0&&(n[s]=null)}),n}return{}},Fi=t=>{const n={};return $t.forEach(s=>{n[s]=(t==null?void 0:t[s])??void 0}),n},xs=({dataSource:t,settings:n,pivotRef:s,localization:r,licenseKey:o,enabled:a=!0})=>{const{texts:{reports:l}}=i.useContext(e.LuminusComponentsContext),[u,c]=i.useState(!1),x=i.useRef(null),d=s??x,p=i.useMemo(()=>({localization:r}),[r]),g=i.useCallback(f=>{delete f[0],delete f[1],delete f[2];const h=[{id:"fm-tab-expand",title:l.expandAll,handler:d.current.flexmonster.expandAllData,icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>'},{id:"fm-tab-collapse",title:l.collapseAll,handler:d.current.flexmonster.collapseAllData,icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"/><path d="M0 0h24v24H0z" fill="none"/></svg>'}];return f.unshift({id:"fm-tab-expand",title:l.expand,icon:'<svg height="42" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><path d=" M16 4 L28 4 L28 16 L24 12 L20 16 L16 12 L20 8z M4 16 L8 20 L12 16 L16 20 L12 24 L16 28 L4 28z "/></svg>',menu:h,rightGroup:!0}),f},[d,l.collapseAll,l.expand,l.expandAll]),j=f=>{const h=f.getTabs();f.getTabs=()=>g(h)};return i.useEffect(()=>{var f;u&&a&&((f=d.current)==null||f.flexmonster.updateData(t),console.log("Updating flexmonster dataSource to: ",t))},[t,a,u,d]),i.useEffect(()=>{var f,h,v;if(u&&a){const{options:R,conditions:E,formats:m,slice:y,...w}=(f=d.current)==null?void 0:f.flexmonster.getReport();if(w===void 0||typeof w=="string")return;const _=Fi(n);_.options={...n==null?void 0:n.options,grid:{...(h=n==null?void 0:n.options)==null?void 0:h.grid,autoSwitchToCompact:!1}};const S={...w,..._};(v=d.current)==null||v.flexmonster.setReport(S),console.log("Refreshing flexmonster settings. New report: ",S)}},[a,u,d,n]),e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx(fs.Pivot,{ref:d,global:p,licenseKey:o,toolbar:!0,height:"100%",beforetoolbarcreated:j,ready:()=>{c(!0)},width:"100%"})})},Ti=(t,n,s,r)=>{const{texts:{reports:o}}=i.useContext(e.LuminusComponentsContext),{prompt:a}=e.usePrompt(),{confirm:l}=e.useConfirm(),u=e.useAxios(),{user:c}=i.useContext(e.UserContext),{startLoading:x,stopLoading:d}=i.useContext(e.LoadingContext),{addNotification:p}=e.useNotifications(),g=i.useCallback(async R=>{x("report-versionSavingAs");try{const E=await u.post("/reports/version",R);p(o.saveSuccessful,"success"),await r(E.data)}finally{d("report-versionSavingAs")}},[p,r,u,o.saveSuccessful,x,d]),j=i.useCallback(async()=>{if(s===null){p("none open","warning");return}if(!await l(o.confirmOverwriteSave))return;const E=ln(n);g({reportSourceName:t,reportVersionId:s,settings:E})},[p,l,n,t,o.confirmOverwriteSave,g,s]),f=i.useCallback(async()=>{const R=await a(o.enterName,{input:"input",required:!0});if(R===null)return;const E=ln(n);g({reportSourceName:t,name:R,settings:E})},[n,a,t,o.enterName,g]),h=i.useCallback(async()=>{x("report-versionSavingAs");try{await u.post("/reports/version",{reportVersionId:s??void 0,reportSourceName:t,isArchived:!0}),p(o.deleteSuccessful,"success")}finally{d("report-versionSavingAs")}},[p,u,t,o.deleteSuccessful,s,x,d]),v=i.useCallback(async()=>{x("report-versionSavingAs");try{await u.post("/reports/version-restrictions",{reportVersionId:s??void 0,userRestricts:[{employeeId:c.personalNumber,addRights:!1}]}),p(o.detachSuccessful,"success")}finally{d("report-versionSavingAs")}},[p,u,o.detachSuccessful,s,x,d,c.personalNumber]);return{saveAs:f,save:j,archive:h,detach:v}},$i=t=>{const n=e.useAxios(),{startLoading:s,stopLoading:r}=i.useContext(e.LoadingContext);return{changeEmployeeRights:i.useCallback(async(a,l)=>{let u=null;s("reportSharing-addPerson");try{u=(await n.post("/reports/version-restrictions",{reportVersionId:t,userRestricts:[{employeeId:a,addRights:l}]})).data}finally{r("reportSharing-addPerson")}return u},[n,t,s,r])}},Li=({isOpen:t,onHide:n,usersData:s,setUsersData:r,reportVersionId:o,EmployeePicker:a})=>{const{ProjectIconComponent:l,texts:{reports:u}}=i.useContext(e.LuminusComponentsContext),{confirm:c}=e.useConfirm(),[x,d]=i.useState(null),{changeEmployeeRights:p}=$i(o),g=i.useCallback(async()=>{if(x===null)return;const f=await p(x,!0);r(o,f)},[x,p,o,r]),j=i.useCallback(async f=>{if(!await c(u.removeSharingWith(f)))return;const v=await p(f,!1);r(o,v)},[p,c,o,u,r]);return e.jsxRuntimeExports.jsxs(e.Modal,{show:t,onHide:n,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{closeButton:!0,children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:u.reportSharing})}),e.jsxRuntimeExports.jsxs(e.Modal.Body,{children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h6",children:u.sharedWith}),e.jsxRuntimeExports.jsxs(Ps,{variant:"flush",children:[s&&s.length===0?e.jsxRuntimeExports.jsx("div",{className:"px-2",children:u.noone.toLowerCase()}):null,s==null?void 0:s.map(f=>e.jsxRuntimeExports.jsxs(Ct,{className:"d-flex justify-content-between align-items-center gap-3 border-bottom px-2 py-1",children:[f.lastName," ",f.firstName," [",f.id,"]",e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>j(f.id),children:e.jsxRuntimeExports.jsx(l,{icon:"delete"})})]},f.id))]}),e.jsxRuntimeExports.jsx(e.Typography,{variant:"h6",className:"mt-2 mb-2",children:u.addSharing}),e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center",children:[e.jsxRuntimeExports.jsx("div",{className:"flex-grow-1",children:e.jsxRuntimeExports.jsx(a,{defaultSelection:null,label:u.shareWith,onSelect:f=>{d(f===null?null:Number(f.id))}})}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{onClick:g,disabled:x===null,children:u.add})]})]})]})},Oi=(t,n)=>{const[s,r]=i.useState(null);return i.useEffect(()=>{t.then(({default:o})=>{const a=n!==void 0?n(o):o;r(a)})},[n,t]),{mappings:s}},Mi=({reportType:t,title:n,data:s,filterElements:r,getReportRoute:o,localization:a,licenseKey:l,EmployeePicker:u,localizationJsonFile:c,localizationTransformer:x})=>{const{texts:{reports:d}}=i.useContext(e.LuminusComponentsContext),{confirm:p}=e.useConfirm(),g=xe.useNavigate(),{id:j}=xe.useParams(),f=i.useMemo(()=>j===void 0?null:Number(j),[j]),h=i.useCallback(N=>{const P=N===null?"":N.toString();g(xe.generatePath(o(t),{id:P}),{replace:!0})},[o,g,t]),[v,R]=i.useState(!1),E=i.useRef(null),{user:m}=i.useContext(e.UserContext),{data:y,reloadData:w,setData:_}=hs.useGetApiData(`/reports/${t}`),{mappings:S}=Oi(c,x),[C,D]=i.useState({}),k=i.useCallback(N=>{if(y===null)return;const P=N.target.value,ee=P===""?null:Number(P);h(ee)},[y,h]),I=i.useCallback(async N=>{await w(),h(N)},[w,h]),b=i.useMemo(()=>{if(y===null)return null;const N=y.reportVersions.find(P=>P.reportVersionId===f);return N===void 0?null:N},[y,f]);i.useEffect(()=>{var P;if(y===null)return;if(b===null){D({});return}const N=Di(b)??{};D(N),(P=E.current)==null||P.flexmonster.refresh()},[y,b,f]);const{save:B,saveAs:H,archive:K,detach:$}=Ti(t,E,f,I),T=i.useMemo(()=>({data:s??[],mapping:S??void 0}),[s,S]),M=i.useCallback(async()=>{var P;await p(d.confirmRevertChanges)&&((P=E.current)==null||P.flexmonster.setReport({dataSource:T,...C}))},[p,T,d.confirmRevertChanges,C]),V=i.useMemo(()=>(b==null?void 0:b.ownerId)===m.personalNumber,[b==null?void 0:b.ownerId,m.personalNumber]),z=i.useMemo(()=>{var N;return(N=b==null?void 0:b.users)==null?void 0:N.some(P=>P.id===m.personalNumber&&!P.isReportOwner)},[b==null?void 0:b.users,m.personalNumber]),U=i.useCallback((N,P)=>{_(ee=>{const re=ee==null?void 0:ee.reportVersions.findIndex(le=>le.reportVersionId===N);if(re===void 0||ee===null)return ee;const pe={...ee.reportVersions[re],users:P.filter(le=>le.isReportOwner===!1)},Y=[...ee.reportVersions];return Y[re]=pe,{...ee,reportVersions:Y}})},[_]),q=i.useCallback(async()=>{await p(d.confirmDelete(b==null?void 0:b.name))&&(await K(),h(null),await w())},[K,p,w,b==null?void 0:b.name,d,h]),O=i.useCallback(async()=>{await p(d.confirmDetach(b==null?void 0:b.name))&&(await $(),h(null),await w())},[p,$,w,b==null?void 0:b.name,d,h]);return i.useEffect(()=>{var N;f===null&&h(((N=y==null?void 0:y.reportVersions.find(P=>P.isSystem===!0))==null?void 0:N.reportVersionId)??null)},[y==null?void 0:y.reportVersions,f,h]),e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(js.FullScreenContainer,{title:e.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-start gap-3",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h3",children:n}),r,e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[e.jsxRuntimeExports.jsxs(e.FormSelect,{size:"sm",value:f??void 0,onChange:k,children:[e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectSystem,children:y==null?void 0:y.reportVersions.filter(N=>N.isSystem===!0).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:N.name},N.reportVersionId))}),e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectYour,children:y==null?void 0:y.reportVersions.filter(N=>N.ownerId===m.personalNumber).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:N.name},N.reportVersionId))}),e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectSharedWithYou,children:y==null?void 0:y.reportVersions.filter(N=>N.isSystem===!1&&N.ownerId!==m.personalNumber).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:`${N.name} [${N.ownerId}]`},N.reportVersionId))})]}),e.jsxRuntimeExports.jsx(e.ContextButton,{icon:e.jsxRuntimeExports.jsx(e.MdSave,{}),onClick:B,disabled:f===null||(b==null?void 0:b.isSystem)||!V,children:d.save}),e.jsxRuntimeExports.jsx(e.ContextButton,{icon:e.jsxRuntimeExports.jsx(e.MdSaveAs,{}),onClick:H,className:"flex-shrink-0",children:d.saveAs}),e.jsxRuntimeExports.jsxs(e.Dropdown,{toggle:e.jsxRuntimeExports.jsx(e.DropdownToggle,{as:e.SimpleDropdownToggle}),children:[e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:M,children:d.revertChanges}),e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:()=>R(!0),disabled:!V||(b==null?void 0:b.isSystem),children:d.share}),V&&!(b!=null&&b.isSystem)?e.jsxRuntimeExports.jsx(e.DropdownItem,{color:"danger",onClick:q,children:d.delete}):null,z&&!(b!=null&&b.isSystem)?e.jsxRuntimeExports.jsx(e.DropdownItem,{color:"danger",onClick:O,children:d.detach}):null]})]})]}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("h-100 w-100",T.data&&T.data.length>0?"":"d-none"),children:e.jsxRuntimeExports.jsx(xs,{dataSource:T,settings:C,pivotRef:E,enabled:T.data&&T.data.length>0,localization:a,licenseKey:l})})}),b!==null?e.jsxRuntimeExports.jsx(Li,{isOpen:v,onHide:()=>R(!1),usersData:b.users??null,setUsersData:U,reportVersionId:b==null?void 0:b.reportVersionId,EmployeePicker:u}):null]})},Bi=({cell:{value:t}})=>e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:t?e.jsxRuntimeExports.jsx(e.AvatarIcon,{name:t,size:21,fontSize:12}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{})}),Ai=({knownTypes:t,typeFilters:n,onChangeTypeFilters:s})=>e.jsxRuntimeExports.jsx("div",{className:"mb-1 d-flex justify-content-center gap-2",children:t.map(r=>e.jsxRuntimeExports.jsx("div",{role:"button",style:{height:"14px",width:"14px",borderRadius:"50%",border:"2px solid transparent",backgroundColor:"transparent"},className:e.classNames(`border-${r}`,n.includes(r)&&`bg-${r}`),onClick:()=>{n.includes(r)?s(n.filter(o=>o!==r)):s([...n,r])}},r))}),Pi=({linksTo:t,onClick:n,children:s})=>t?e.jsxRuntimeExports.jsx(xe.Link,{to:t,className:"text-decoration-none",onClick:n,children:s}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:s}),Vi=({message:t,onDeleteMessage:n,onClickMessage:s,getIcon:r,getLinksTo:o})=>{const{ProjectIconComponent:a,localizationContext:l}=i.useContext(e.LuminusComponentsContext),{dateFnsLocale:u}=i.useContext(l),c=t.dateTime?e.parseISO(t.dateTime):null,x=c?ys(new Date(Date.now()),c):0;return e.jsxRuntimeExports.jsxs("div",{children:[c&&e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end",children:e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{text:e.format(c,"dd.MM.yyyy HH:mm"),placement:"left",children:e.jsxRuntimeExports.jsx("div",{children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"caption",children:x>2?e.format(c,"dd.MM.yyyy"):ws(c,new Date(Date.now()),{locale:u.code})})})})}),e.jsxRuntimeExports.jsx(Pi,{linksTo:o(t)??void 0,onClick:s,children:e.jsxRuntimeExports.jsx(es,{level:t.type,noIcon:!0,children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start gap-2",children:[r(t),e.jsxRuntimeExports.jsxs("div",{className:"d-flex flex-column gap-1 w-100",children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start justify-content-between gap-3",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"fw-bold",children:t.subject}),e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:d=>{d.preventDefault(),d.stopPropagation(),n(t.id)},children:e.jsxRuntimeExports.jsx(a,{icon:"delete"})})]}),e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",children:t.text})]})]})})})]})},cn=["info","warning","danger"],un=({messages:t,isLoading:n,onDeleteMessage:s,onClickMessage:r,getIcon:o,getLinksTo:a})=>{const{texts:{messageBoard:l}}=i.useContext(e.LuminusComponentsContext),[u,c]=i.useState(cn),x=i.useMemo(()=>t.filter(d=>u.includes(d.type??"")),[u,t]);return e.jsxRuntimeExports.jsxs("div",{className:"h-100 d-flex flex-column overflow-hidden",children:[e.jsxRuntimeExports.jsx(Ai,{knownTypes:cn,typeFilters:u,onChangeTypeFilters:d=>c(d)}),n&&e.jsxRuntimeExports.jsxs("div",{className:"p-3 w-100",children:[e.jsxRuntimeExports.jsx(Ce,{as:Vt.Title,animation:"glow",children:e.jsxRuntimeExports.jsx(Ce,{xs:6})}),e.jsxRuntimeExports.jsxs(Ce,{as:Vt.Text,animation:"glow",children:[e.jsxRuntimeExports.jsx(Ce,{xs:7})," ",e.jsxRuntimeExports.jsx(Ce,{xs:4})," ",e.jsxRuntimeExports.jsx(Ce,{xs:4})," ",e.jsxRuntimeExports.jsx(Ce,{xs:6})," ",e.jsxRuntimeExports.jsx(Ce,{xs:8})]})]}),!n&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[t.length===0&&e.jsxRuntimeExports.jsx(ot,{variant:"info",size:"sm",className:"mt-2",children:l.noMessages}),e.jsxRuntimeExports.jsx("div",{className:"h-100 overflow-y-auto d-flex flex-column gap-2 luminus-thin-scrollbar",children:x.map(d=>e.jsxRuntimeExports.jsx(Vi,{message:d,onDeleteMessage:s,onClickMessage:r,getIcon:o,getLinksTo:a},d.id))})]})]})},ft={apiGet:"/messageBoard",apiDelete:"/messageBoard/"},Hi=({renderAsNotifPanel:t,notifIcon:n,apiUrls:{apiGet:s=ft.apiGet,apiDelete:r=ft.apiDelete}=ft,getIcon:o,getLinksTo:a})=>{const u=e.useAxios(),[c,x]=i.useState([]),[d,p]=i.useState(!1),[g,j]=i.useState(!1),[f,h]=i.useState(!1),v=i.useCallback(async()=>{j(!0),await u.get(s).then(({data:w})=>{x(w),p(!0),j(!1)}).catch(()=>{x([]),j(!1)})},[s,u]),R=i.useCallback(async w=>u.delete(`${r}${w}`).then(()=>!0).catch(()=>!1),[r,u]),E=i.useCallback(w=>{R(w).then(_=>{_&&x(c.filter(S=>S.id!==w))})},[R,c]);i.useEffect(()=>{v();const w=setInterval(()=>v(),60*1e3);return()=>{clearInterval(w)}},[v]);const m=c.filter(w=>w.type==="danger").length,y=d?!1:g;return t?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs("div",{className:"position-relative",children:[e.jsxRuntimeExports.jsx(e.IconButton,{size:"md",onClick:()=>h(!f),children:n}),m>0&&e.jsxRuntimeExports.jsx("div",{className:"badge rounded-pill bg-danger p-1 px-2 text-white",style:{position:"absolute",top:"-6px",right:"-10px",fontSize:"10px"},children:m})]}),e.jsxRuntimeExports.jsx(Ut,{show:f,onHide:()=>h(!1),placement:"end",children:e.jsxRuntimeExports.jsx(Ut.Body,{children:e.jsxRuntimeExports.jsx(un,{messages:c,isLoading:y,onDeleteMessage:E,onClickMessage:()=>h(!1),getIcon:o,getLinksTo:a})})})]}):e.jsxRuntimeExports.jsx(un,{messages:c,isLoading:y,onDeleteMessage:E,getIcon:o,getLinksTo:a})},Wi="_tab-panel_d8l8q_1",zi="_full-height-no-overflow_d8l8q_5",Ui="_disabled_d8l8q_12",ht={"tab-panel":"_tab-panel_d8l8q_1",tabPanel:Wi,"full-height-no-overflow":"_full-height-no-overflow_d8l8q_5",fullHeightNoOverflow:zi,disabled:Ui},Gi=({eventKey:t,activeTab:n,fullHeightNoOverflow:s,disabled:r,className:o,children:a})=>t!==n?null:e.jsxRuntimeExports.jsx("div",{className:e.classNames("luminus-tab-panel",ht.tabPanel,{[ht.fullHeightNoOverflow]:s},{disabled:r},{[ht.disabled]:r},o),children:a}),Ki="_join-line_1q9e8_1",Yi={"join-line":"_join-line_1q9e8_1",joinLine:Ki},qi=({activeTab:t,onSelect:n,children:s,vertical:r,verticalStepper:o})=>e.jsxRuntimeExports.jsx("div",{className:e.classNames("luminus-tabs d-flex mb-2",{"gap-1":!o},{"gap-0":o},{"flex-column":r||o}),children:s.map((a,l)=>{const u=a.type,c=a.props;if(!c)return null;const x=c.eventKey,d=c.children,p=c.className,g=c.onClick;return e.jsxRuntimeExports.jsxs(i.Fragment,{children:[e.jsxRuntimeExports.jsx(u,{...c,className:e.classNames({active:t===x},p),onClick:()=>{n(x),g&&g(x)},vertical:r||o,children:d}),o&&l<s.length-1&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("join-line",Yi.joinLine)})]},c.eventKey)})}),Qi="_tab_1tbi7_1",Zi="_disabled_1tbi7_7",Ji="_vertical_1tbi7_13",jt={tab:Qi,disabled:Zi,vertical:Ji},Xi=({eventKey:t,className:n,onClick:s,disabled:r,vertical:o,children:a})=>e.jsxRuntimeExports.jsx("div",{role:"button",className:e.classNames("luminus-tab text-primary rounded",jt.tab,n,{disabled:r},{[jt.disabled]:r},{vertical:o},{[jt.vertical]:o}),onClick:()=>s&&!r&&s(t),children:typeof a=="string"?e.jsxRuntimeExports.jsx(e.Typography,{variant:o?"body":"h6",className:o?"":"text-primary",children:a}):a});exports.AvatarIcon=e.AvatarIcon;exports.ContextButton=e.ContextButton;exports.Documents=e.Documents;exports.Dropdown=e.Dropdown;exports.DropdownItem=e.DropdownItem;exports.DropdownToggle=e.DropdownToggle;exports.FileExtensionIcon=e.FileExtensionIcon;exports.FloatingLabelInput=e.FloatingLabelInput;exports.HookFormTextAreaInput=e.HookFormTextAreaInput;exports.HookFormTextInput=e.HookFormTextInput;exports.IconButton=e.IconButton;exports.InvalidFeedback=e.InvalidFeedback;exports.NoInputContainer=e.NoInputContainer;exports.PrimaryButton=e.PrimaryButton;exports.ResponsiveContextDropdown=e.ResponsiveContextDropdown;exports.ResponsiveContextDropdownItem=e.ResponsiveContextDropdownItem;exports.RowLabelInput=e.RowLabelInput;exports.SimpleToggle=e.SimpleDropdownToggle;exports.Typography=e.Typography;exports.UserAvatarToggle=e.UserAvatarToggle;exports.Loading=Ee.Loading;exports.SimpleTooltip=Ze.SimpleTooltip;exports.Alert=ot;exports.AlertItem=es;exports.ApiFileDownloadButton=vs;exports.AppSearch=ho;exports.AuthTemplate=Uo;exports.Backdrop=St;exports.Badge=kr;exports.BarChart=yi;exports.Card=qn;exports.CheckInput=Dt;exports.Collapse=nt;exports.DisabledRowLabelLink=hi;exports.DropdownDivider=Jr;exports.DropdownPicker=ua;exports.DynamicForm=mi;exports.EmployeeSmallPhoto=vi;exports.ErrorBoundary=Kn;exports.FileUploadButton=qs;exports.FileUploadContextButton=kt;exports.FileUploadDropdownItem=qr;exports.Flexmonster=xs;exports.FloatingActionContainer=ts;exports.FloatingFormSubmit=zn;exports.FromToDatePicker=Wa;exports.HomeDashboard=yr;exports.HookFormCheckInput=bi;exports.HookFormDropdownPicker=Ni;exports.HookFormFileInput=Ci;exports.HookFormFloatingSubmit=_i;exports.HookFormNumericStepperInput=Si;exports.HookFormNumericTextInput=Ii;exports.HookFormRadioInput=wi;exports.HookFormSelectInput=ki;exports.HtmlTooltip=Ys;exports.ImgApi=yt;exports.ImgDirect=It;exports.LanguageSwitch=ji;exports.LoadingBlock=xn;exports.MessageBoard=Hi;exports.MonthPicker=Un;exports.MonthPickerSearchParams=za;exports.NumericFormat=Ri;exports.NumericStepperInput=xa;exports.NumericTextInput=Oa;exports.PhotoLibrary=Xn;exports.PhotoLightbox=Jn;exports.PieChart=Ga;exports.ReportPage=Mi;exports.SearchBox=Ei;exports.SelectInput=Ye;exports.SettingsFormPicker=fi;exports.SimplePicker=rt;exports.Tab=Xi;exports.TabPanel=Gi;exports.Tabs=qi;exports.TextAreaInput=da;exports.TextInput=$e;exports.Timeline=la;exports.TypedFormGroup=gi;exports.UserAvatarValueFormat=Bi;exports.VersionInfo=Jo;exports.WidgetCard=Et;exports.YearPicker=Gn;exports.YearPickerSearchParams=Ua;
9
+ `),a=!1),Object.assign(Object.assign({},t),{allowNegative:a})}function La(t){t=$a(t),t.decimalSeparator,t.allowedDecimalSeparators,t.thousandsGroupStyle;var n=t.suffix,s=t.allowNegative,r=t.allowLeadingZeros,o=t.onKeyDown;o===void 0&&(o=_e);var a=t.onBlur;a===void 0&&(a=_e);var l=t.thousandSeparator,u=t.decimalScale,c=t.fixedDecimalScale,x=t.prefix;x===void 0&&(x="");var d=t.defaultValue,p=t.value,g=t.valueIsNumericString,j=t.onValueChange,f=ss(t,["decimalSeparator","allowedDecimalSeparators","thousandsGroupStyle","suffix","allowNegative","allowLeadingZeros","onKeyDown","onBlur","thousandSeparator","decimalScale","fixedDecimalScale","prefix","defaultValue","value","valueIsNumericString","onValueChange"]),h=at(t),v=h.decimalSeparator,R=h.allowedDecimalSeparators,E=function($){return Xt($,t)},m=function($,T){return Fa($,T,t)},y=Be(p)?d:p,w=g??Da(y,x,n);Be(p)?Be(d)||(w=w||typeof d=="number"):w=w||typeof p=="number";var _=function($){return rs($)?$:(typeof $=="number"&&($=is($)),w&&typeof u=="number"?Zt($,u,!!c):$)},S=cs(_(p),_(d),!!w,E,m,j),C=S[0],D=C.numAsString,k=C.formattedValue,I=S[1],b=function($){var T=$.target,M=$.key,V=T.selectionStart,z=T.selectionEnd,U=T.value;if(U===void 0&&(U=""),(M==="Backspace"||M==="Delete")&&z<x.length){$.preventDefault();return}if(V!==z){o($);return}M==="Backspace"&&U[0]==="-"&&V===x.length+1&&s&&Te(T,1),u&&c&&(M==="Backspace"&&U[V-1]===v?(Te(T,V-1),$.preventDefault()):M==="Delete"&&U[V]===v&&$.preventDefault()),R!=null&&R.includes(M)&&U[V]===v&&Te(T,V+1);var q=l===!0?",":l;M==="Backspace"&&U[V-1]===q&&Te(T,V-1),M==="Delete"&&U[V]===q&&Te(T,V+1),o($)},B=function($){var T=D;if(T.match(/\d/g)||(T=""),r||(T=ga(T)),c&&u&&(T=Zt(T,u,c)),T!==D){var M=Xt(T,t);I({formattedValue:M,value:T,floatValue:parseFloat(T)},{event:$,source:qe.event})}a($)},H=function($){return $===v?!0:Qe($)},K=function($){var T=$.currentValue,M=$.lastValue,V=$.formattedValue,z=$.currentValueIndex,U=$.formattedValueIndex,q=T[z],O=V[U],N=ls(M,T),P=N.to;return z>=P.start&&z<P.end&&R&&R.includes(q)&&O===v?!0:q===O};return Object.assign(Object.assign({},f),{value:k,valueIsNumericString:!1,isValidInputCharacter:H,isCharacterSame:K,onValueChange:I,format:E,removeFormatting:m,getCaretBoundary:function($){return Ta($,t)},onKeyDown:b,onBlur:B})}function Tt(t){var n=La(t);return i.createElement(ka,Object.assign({},n))}const Oa=({InputContainer:t=e.FloatingLabelInput,value:n,onChange:s,debounceMs:r,label:o,withoutLabel:a,placeholder:l,size:u,hidden:c,disabled:x,showClearIcon:d,clearValue:p,className:g,step:j,noSelectOnFocus:f,decimalScale:h,numberPrefix:v,numberSuffix:R,min:E,max:m})=>{const y=i.useCallback(()=>{if(!s)return;const k=p??null;s(k?Number(k):null)},[p,s]),w=i.useRef(null),[_,S]=i.useState((n==null?void 0:n.toString())??""),C=i.useCallback(k=>{const I=k;s&&s(I==null||I===""?null:Number(I))},[s]),D=i.useCallback(k=>{var b,B;let I=parseFloat(((B=(b=k.target)==null?void 0:b.value)==null?void 0:B.replaceAll(" ","").replaceAll(",","."))??0);if(Number.isNaN(I)&&(I=0),!r){C(I.toString());return}S(I.toString()),w.current!==null&&window.clearTimeout(w.current),w.current=window.setTimeout(()=>{C(I.toString())},r)},[r,C]);return i.useEffect(()=>{S(n===null?"":n.toString())},[m,E,n]),i.useEffect(()=>{m!==void 0&&Number(_)>m&&S(m.toString()),E!==void 0&&Number(_)<E&&S(E.toString())},[_,m,E,S]),i.useEffect(()=>{!s||n===null||(m!==void 0&&n>m&&s(m),E!==void 0&&n<E&&s(E))},[n,m,E,s]),e.jsxRuntimeExports.jsxs(t,{withoutLabel:a,label:o??"",hidden:c,className:g,children:[e.jsxRuntimeExports.jsx(Tt,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:h,prefix:v,suffix:R,defaultValue:"",value:r?_:(n==null?void 0:n.toString())??"",placeholder:l??o,onFocus:k=>{!f&&k.target.select()},onChange:D,hidden:c,disabled:x,className:e.classNames("form-control text-end w-100",{[`form-control-${u}`]:u}),step:j,min:E,max:m}),d&&n!==null&&s&&!x&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:y,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})})]})},en=[["D","day"],["M","month"],["Y","year"],["C","custom"]],Ma="_wrapper_qfqux_1",Ba="_lg_qfqux_7",Aa="_sm_qfqux_11",Pa="_md_qfqux_14",tn={wrapper:Ma,lg:Ba,sm:Aa,md:Pa},et=t=>{const n=new Date(t),s=e.trimIsoDate(n.toISOString());n.setMonth(n.getMonth()+1),n.setDate(n.getDate()-1);const r=e.trimIsoDate(n.toISOString());return{from:s,to:r}},Ke=t=>{const n=new Date(t),s=e.trimIsoDate(n.toISOString());n.setFullYear(n.getFullYear()+1),n.setDate(n.getDate()-1);const r=e.trimIsoDate(n.toISOString());return{from:s,to:r}},Va=(t,n)=>{if(t===null||n===null)return"C";if(t===n)return"D";const s=new Date(t);return et(s).to===n?"M":Ke(s).to===n?"Y":(console.log(Ke(s),n),"C")},Ha=(t,n,s)=>{const r=i.useCallback((l,u)=>{if(t==="C"){s(c=>({...c,[l]:u}));return}switch(l){case"from":s(c=>{if(u===null)return c;const x=new Date(u);if(t==="D"){const d=e.trimIsoDate(x.toISOString());return{from:d,to:d}}return t==="M"?et(x):t==="Y"?Ke(x):c});break;case"to":n("C"),s(c=>({...c,[l]:u}));break}},[t,s,n]),o=i.useCallback(l=>{s(u=>{if(u.from===null||u.to===null)return u;const c=new Date(u.from);c.setHours(c.getHours()-c.getTimezoneOffset()/60);const x=new Date(u.to);if(t==="D"){c.setDate(c.getDate()+l);const d=e.trimIsoDate(c.toISOString());return{from:d,to:d}}return t==="M"?(c.setMonth(c.getMonth()+l),et(c)):t==="Y"?(c.setFullYear(c.getFullYear()+l),Ke(c)):{from:e.trimIsoDate(c.toISOString()),to:e.trimIsoDate(x.toISOString())}})},[t,s]),a=i.useCallback(l=>{l==="D"?s(u=>({from:u.from,to:u.from})):l==="M"?s(u=>{if(u.from===null)return u;const c=e.getFirstDayOfMonth(u.from);return et(c)}):l==="Y"&&s(u=>{if(u.from===null)return u;const c=e.getFirstDayOfYear(new Date(u.from).getFullYear());return Ke(c)}),n(l)},[s,n]);return{setFromToProp:r,handleArrowClick:o,handleRangeChange:a}},Wa=({fromtoState:[t,n],className:s,size:r})=>{const{texts:{date:o},ProjectIconComponent:a}=i.useContext(e.LuminusComponentsContext),[l,u]=i.useState("C"),{handleArrowClick:c,handleRangeChange:x,setFromToProp:d}=Ha(l,u,n),p=i.useMemo(()=>l==="C",[l]),g=i.useRef(!0);return i.useEffect(()=>{if(g.current){const j=Va(t.from,t.to);u(j),g.current=!1}},[t.from,t.to]),e.jsxRuntimeExports.jsxs("div",{className:e.classNames("d-inline-flex align-items-center gap-1",tn.wrapper,tn[r??"md"],s),children:[e.jsxRuntimeExports.jsx(e.IconButton,{disabled:p,onClick:()=>{c(-1)},children:e.jsxRuntimeExports.jsx(a,{icon:"chevron-left"})}),e.jsxRuntimeExports.jsx("div",{children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[e.jsxRuntimeExports.jsx($e,{type:"date",value:t.from,onChange:j=>d("from",j===null?null:j.toString()),InputContainer:e.NoInputContainer,size:r}),e.jsxRuntimeExports.jsx(e.Dropdown,{toggle:e.jsxRuntimeExports.jsx(e.DropdownToggle,{text:o[en.find(j=>j[0]===l)[1]].substring(0,1),as:e.FromToDatePickerDropdownToggle}),children:en.map(j=>e.jsxRuntimeExports.jsx(e.DropdownItem,{disabled:j[0]===l,className:e.classNames(j[0]===l?"text-black-50":""),onClick:()=>x(j[0]),role:"button",children:o[j[1]]},j[0]))}),e.jsxRuntimeExports.jsx($e,{type:"date",value:t.to,onChange:j=>d("to",j===null?null:j.toString()),InputContainer:e.NoInputContainer,size:r})]})}),e.jsxRuntimeExports.jsx(e.IconButton,{disabled:p,onClick:()=>{c(1)},children:e.jsxRuntimeExports.jsx(a,{icon:"chevron-right"})})]})},za=({defaultMonth:t,searchKey:n="monthFrom",yearMin:s,yearMax:r})=>{const{localizationContext:o}=i.useContext(e.LuminusComponentsContext),{dateFnsLocale:a}=i.useContext(o),{searchParams:l,setSearch:u}=Ae.useSearchQuery(),c=l.get(n),x=c?e.parseISO(c):t,d=i.useCallback(p=>{u(n,gt(p,{representation:"date"}))},[n,u]);return e.jsxRuntimeExports.jsx(Un,{month:x,onChangeMonth:d,locale:a,yearMin:s,yearMax:r})},Ua=({defaultYear:t,searchKey:n="yearFrom",optionMin:s,optionMax:r,className:o})=>{const[a,l]=Ae.useSearchQueryState(n,gt(t,{representation:"date"})),u=a?e.parseISO(a):t,c=i.useCallback(x=>{l(gt(x,{representation:"date"}))},[l]);return e.jsxRuntimeExports.jsx(Gn,{year:u,onChangeYear:c,optionMin:s,optionMax:r,className:o})},Ga=({data:t,showLegend:n=!1,legendPosition:s="left",onClick:r})=>{const{chartColorPalette:o}=i.useContext(e.LuminusComponentsContext);return e.jsxRuntimeExports.jsx(e._,{data:t,margin:{top:50,right:n&&s==="right"?200:100,bottom:50,left:n&&s==="left"?200:100},innerRadius:.4,padAngle:4,cornerRadius:2,activeOuterRadiusOffset:10,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},colors:o,arcLinkLabelsSkipAngle:10,arcLinkLabelsTextColor:{from:"color",modifiers:[["darker",.5]]},arcLinkLabelsThickness:2,arcLinkLabelsColor:{from:"color"},enableArcLabels:!1,legends:n?[{anchor:s,direction:s==="left"||s==="right"?"column":"row",justify:!1,translateX:s==="left"?-200:s==="right"?200:0,translateY:s==="top"?-50:s==="bottom"?50:0,itemsSpacing:4,itemWidth:120,itemHeight:18,itemTextColor:"#1e2832",itemDirection:"left-to-right",itemOpacity:1,symbolSize:18,symbolShape:"circle",padding:10}]:[],onClick:a=>r&&r(a.data)})},Ka=({errors:t,schema:n})=>{const s=r=>{var o,a;return r.toLowerCase()==="others"?"Obecné":((a=(o=n.columns)==null?void 0:o.find(l=>l.field===r))==null?void 0:a.caption)??r};return e.jsxRuntimeExports.jsx("div",{className:"alert alert-danger w-100 m-0 p-2",children:e.jsxRuntimeExports.jsx("table",{children:e.jsxRuntimeExports.jsx("tbody",{children:t.map(r=>e.jsxRuntimeExports.jsxs("tr",{children:[e.jsxRuntimeExports.jsx("td",{className:"fw-bold pe-2",children:e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:[s(r.name),":"]})}),e.jsxRuntimeExports.jsx("td",{className:"",children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"body",children:r.errors})})]},r.name))})})})},us=t=>{const n={};return Object.keys(t).forEach(s=>{if(t[s].value===!0){n[s]=1;return}if(t[s].value===!1){n[s]=0;return}n[s]=t[s].value}),n},nn=(t,n)=>{const s={};return Object.keys(t).forEach(r=>{var l;const o=t[r],a=(l=n.columns)==null?void 0:l.find(u=>u.field===r);if((a==null?void 0:a.type)==="BIT"&&(o===1||o===0)){s[r]={value:o===1,defaultValue:o===1};return}s[r]={value:o,defaultValue:o}}),s},Ya="_table_1klfy_1",qa="_table-header_1klfy_10",Qa="_table-row_1klfy_10",Za="_table-head_1klfy_10",Ja="_filters-row_1klfy_19",Xa="_table-body_1klfy_30",ei="_table-cell_1klfy_30",ti="_action-column_1klfy_43",ni="_sticky-top_1klfy_47",si="_sticky-first_1klfy_54",ri="_sticky-last_1klfy_61",oi="_sticky-bottom_1klfy_68",se={table:Ya,"table-header":"_table-header_1klfy_10",tableHeader:qa,"table-row":"_table-row_1klfy_10",tableRow:Qa,"table-head":"_table-head_1klfy_10",tableHead:Za,"filters-row":"_filters-row_1klfy_19",filtersRow:Ja,"table-body":"_table-body_1klfy_30",tableBody:Xa,"table-cell":"_table-cell_1klfy_30",tableCell:ei,"action-column":"_action-column_1klfy_43",actionColumn:ti,"sticky-top":"_sticky-top_1klfy_47",stickyTop:ni,"sticky-first":"_sticky-first_1klfy_54",stickyFirst:si,"sticky-last":"_sticky-last_1klfy_61",stickyLast:ri,"sticky-bottom":"_sticky-bottom_1klfy_68",stickyBottom:oi},ai="_input_13mhy_1",Oe={input:ai},ds=({type:t,value:n,field:s,isPrimary:r,isReadonly:o,primaryEditable:a=!1,valuesForSelect:l,onChangeHandler:u,hideClearIcon:c,clearValue:x})=>{switch(t){case"NUM":return l&&l.length>0?e.jsxRuntimeExports.jsx(Ye,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,d===null?null:Number(d)),options:l,disabled:o||a?!1:r,showClearIcon:!c,clearValue:x}):e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"number",value:n===null?null:Number(n),onChange:d=>u(s,d===null?null:Number(d)),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});case"STR":return l&&l.length>0?e.jsxRuntimeExports.jsx(Ye,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),options:l,disabled:o||a?!1:r,showClearIcon:!c,clearValue:x}):e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"text",value:(n==null?void 0:n.toString())??"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});case"BIT":return e.jsxRuntimeExports.jsx(Dt,{InputContainer:e.NoInputContainer,className:Oe.input,value:n===!0,onChange:d=>u(s,d),disabled:o||a?!1:r});case"DT":return e.jsxRuntimeExports.jsx($e,{withoutLabel:!0,InputContainer:e.NoInputContainer,className:Oe.input,size:"sm",type:"date",value:n?n.toString().split("T")[0]??"":"",onChange:d=>u(s,(d==null?void 0:d.toString())??null),disabled:o||a?!1:r,showClearIcon:!c,clearValue:x});default:return e.jsxRuntimeExports.jsx("div",{className:"alert alert-warning p-1 m-0",children:e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:["Neznámý typ ",t]})})}},ii=({schema:t,columns:n,initialItem:s,onEdit:r,onDelete:o})=>{const{ProjectIconComponent:a}=i.useContext(e.LuminusComponentsContext),[l,u]=i.useState(s),c=i.useCallback((p,g)=>{console.log("changeValue",p,g),u(j=>({...j,[p]:{...j[p],value:g}}))},[]),x=p=>(p==null?void 0:p.value)!==(p==null?void 0:p.defaultValue),d=i.useCallback(()=>Object.keys(l).some(p=>x(l[p])),[l]);return i.useEffect(()=>{u(s)},[s]),e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row",se.tableRow),children:[e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell,se.stickyFirst),children:d()&&e.jsxRuntimeExports.jsx(e.IconButton,{color:"success",onClick:()=>r(us(l)),children:e.jsxRuntimeExports.jsx(a,{icon:"check"})})}),n.map(p=>{var g,j;return e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell),children:e.jsxRuntimeExports.jsx(ds,{type:p.type,value:(g=l[p.field??""])==null?void 0:g.value,field:p.field,isReadonly:p.readOnly,isPrimary:t.primaryKey===p.field,valuesForSelect:p.valuesForSelect,onChangeHandler:c,hideClearIcon:!x(l[p.field??""]),clearValue:(j=l[p.field??""].defaultValue)==null?void 0:j.toString()})},`${t.id}-${p.field}`)}),e.jsxRuntimeExports.jsx("td",{className:e.classNames("table-cell",se.tableCell,se.stickyLast),children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>o(l[t.primaryKey??""].value),children:e.jsxRuntimeExports.jsx(a,{icon:"delete"})})})]})},li=({schema:t,columns:n,onCreate:s})=>{const{ProjectIconComponent:r}=i.useContext(e.LuminusComponentsContext),[o,a]=i.useState(null),l=i.useCallback(()=>{var x;const c={};(x=t.columns)==null||x.forEach(d=>{const p=d.type==="BIT"?!1:d.type==="NUM"?0:d.type==="STR"?"":null;c[d.field??""]={value:p,defaultValue:p}}),a(c)},[t]),u=i.useCallback((c,x)=>{a(d=>d&&{...d,[c]:{...d[c],value:x}})},[]);return o?e.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[e.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"success",onClick:async()=>{const c=us(o);c&&await s(c)&&a(null)},children:e.jsxRuntimeExports.jsx(r,{icon:"check"})})}),n.map(c=>e.jsxRuntimeExports.jsx("td",{children:e.jsxRuntimeExports.jsx(ds,{type:c.type,value:o[c.field??""].value,field:c.field,isReadonly:c.readOnly,isPrimary:t.primaryKey===c.field,valuesForSelect:c.valuesForSelect,onChangeHandler:u,primaryEditable:!0})},`${t.id}-${c.field}`)),e.jsxRuntimeExports.jsx("td",{className:"sticky-last",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>a(null),children:e.jsxRuntimeExports.jsx(r,{icon:"cancel"})})})]}):e.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[e.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:e.jsxRuntimeExports.jsx(e.IconButton,{onClick:l,children:e.jsxRuntimeExports.jsx(r,{icon:"add"})})}),e.jsxRuntimeExports.jsx("td",{colSpan:n.length+1})]})},ci=({column:t,children:n})=>t.description?e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{placement:"bottom",text:t.description??"",children:e.jsxRuntimeExports.jsx("div",{children:n})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:n}),ui=({schema:t,items:n,onEditItem:s,onDeleteItem:r,onCreateItem:o,filters:a,setFilter:l,sortByField:u,sortByType:c,setSortBy:x,selectedMaster:d})=>{const{texts:{dynamicForms:p},ProjectIconComponent:g}=i.useContext(e.LuminusComponentsContext),[j,f]=i.useState([]);return i.useEffect(()=>{var h,v,R;f([...((R=(v=(h=t.columns)==null?void 0:h.filter(E=>!E.hidden))==null?void 0:v.filter(E=>t.masterReference?E.field!==t.masterReferenceColumn:!0))==null?void 0:R.map(E=>{var m;return{label:E.caption??"",description:E.description??null,field:E.field??"",type:E.type,readOnly:E.readOnly,valuesForSelect:((m=E.values)==null?void 0:m.filter(y=>E.valuesFilteredByMaster?y.masterValue===d:!0).map(y=>({id:y.id??"",name:y.name})))??void 0}}))??[]])},[t,d]),e.jsxRuntimeExports.jsxs("table",{id:`dynamic-table-${t.id}`,className:e.classNames("table table-borderless luminus-df-table",se.table),children:[e.jsxRuntimeExports.jsxs("thead",{className:e.classNames("text-nowrap table-header",se.stickyTop,se.tableHeader),children:[e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row",se.tableRow),children:[e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyFirst)}),j.map(h=>e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead),onClick:()=>{const v=u===h.field?c:null;if(v==="asc"){x(h.field,"desc");return}if(v==="desc"){x(h.field,null);return}x(h.field,"asc")},children:e.jsxRuntimeExports.jsx(ci,{column:h,children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[h.label,u===h.field&&e.jsxRuntimeExports.jsx(g,{icon:c==="asc"?"chevron-up":"chevron-down"})]})})},`${t.id}-${h.field}`)),e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyLast)})]}),e.jsxRuntimeExports.jsxs("tr",{className:e.classNames("table-row filters-row",se.tableRow,se.filtersRow),children:[e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyFirst)}),j.map(h=>e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead),children:h.valuesForSelect&&h.valuesForSelect.length>0||h.type==="BIT"?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx(Ye,{InputContainer:e.NoInputContainer,withoutLabel:!0,size:"sm",value:a[h.field]??"",onChange:v=>l(h.field,(v==null?void 0:v.toString())??null),options:h.type==="BIT"?[{id:1,name:p.yes},{id:0,name:p.no}]:h.valuesForSelect??[],isNumber:h.type==="BIT",showClearIcon:!0})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx($e,{InputContainer:e.NoInputContainer,withoutLabel:!0,size:"sm",type:h.type==="NUM"?"number":h.type==="DT"?"date":"text",value:a[h.field]??"",onChange:v=>l(h.field,(v==null?void 0:v.toString())??null)})})},`${t.id}-${h.field}`)),e.jsxRuntimeExports.jsx("th",{className:e.classNames("table-head",se.tableHead,se.actionColumn,se.stickyLast)})]})]}),e.jsxRuntimeExports.jsxs("tbody",{className:e.classNames("table-body",se.tableBody),children:[n.filter(h=>h[t.primaryKey??""]).map(h=>e.jsxRuntimeExports.jsx(ii,{schema:t,columns:j,initialItem:h,onEdit:s,onDelete:r},`${t.id}-${h[t.primaryKey??""].value}`)),e.jsxRuntimeExports.jsx(li,{schema:t,columns:j,onCreate:o})]})]})},di=({master:t,onChange:n,options:s,label:r})=>e.jsxRuntimeExports.jsx(Ye,{label:r,value:t,onChange:o=>n(o?o.toString():null),options:s,size:"sm"}),xi="_pagination_gujwe_1",sn={pagination:xi},rn={appDetail:"/settings/:id"},Me={apiSchemaGet:"/dynamicForms/schema",apiDataGet:"/dynamicForms/data",apiItemPost:"/dynamicForms/update",apiItemDelete:"/dynamicForms/delete",apiItemCreate:"/dynamicForms/insert"},mi=({id:t,page:n,setPage:s,filters:r,setFilter:o,sortByField:a,sortByType:l,setSortBy:u,appUrls:{appDetail:c=rn.appDetail}=rn,apiUrls:{apiSchemaGet:x=Me.apiSchemaGet,apiDataGet:d=Me.apiDataGet,apiItemPost:p=Me.apiItemPost,apiItemDelete:g=Me.apiItemDelete,apiItemCreate:j=Me.apiItemCreate}=Me})=>{var te,me,ne,Z,fe,ve;const{texts:{dynamicForms:f},ProjectIconComponent:h}=i.useContext(e.LuminusComponentsContext),v=e.useAxios(),{startLoading:R,stopLoading:E}=i.useContext(e.LoadingContext),[m,y]=i.useState(null),[w,_]=i.useState(null),[S,C]=i.useState(null),[D,k]=i.useState(null),[I,b]=i.useState(!1),{addNotification:B}=e.useNotifications(),[H,K]=i.useState([]),{confirm:$}=e.useConfirm(),T=20,M=T+1,V=D?Math.ceil(D.length/T):1,z=n?n>1:!1,U=n?n<V:!1,q=n?(n-1)*T:0,O=n?n*T:T,[N,P]=i.useState(!1),ee=N?D==null?void 0:D.slice(q,O):D,[re,pe]=i.useState(null);i.useEffect(()=>{y(null),_(null),b(!1),K([]),pe(null)},[t]);const Y=i.useCallback(async()=>{R("dynamicFormSchema"),await v.get(`${x}?id=${t}`).then(({data:A})=>{y(A),E("dynamicFormSchema")}).catch(()=>E("dynamicFormSchema"))},[v,t,R,E,x]),le=i.useCallback(async()=>{var A;if(!(m===null||((A=m.id)==null?void 0:A.toString())!==t)){if(m.masterReference&&!re){_([]);return}R("dynamicFormData"),await v.get(`${d}?id=${t}&showArchive=${I}${m.masterReference?`&master=${re}`:""}`).then(({data:Q})=>{const ae=Q.map(X=>{var ie;return Object.fromEntries(((ie=m.columns)==null?void 0:ie.filter(ce=>ce.field).map(ce=>[ce.field,{value:X[ce.field??""],defaultValue:X[ce.field??""]}]))??[])});_(ae),E("dynamicFormData")}).catch(()=>E("dynamicFormData"))}},[v,t,m,R,E,I,re,d]),ge=i.useCallback(async A=>(R("dynamicFormEdit"),v.post(`${p}?id=${t}`,A).then(()=>(E("dynamicFormEdit"),K([]),!0)).catch(Q=>(E("dynamicFormEdit"),K(e.extractErrorsFromResponse(Q)),!1))),[v,t,R,E,p]),ke=i.useCallback(async A=>(R("dynamicFormDelete"),v.delete(`${g}?id=${t}&pk=${A}`).then(()=>(E("dynamicFormDelete"),K([]),!0)).catch(Q=>(E("dynamicFormDelete"),K(e.extractErrorsFromResponse(Q)),!1))),[v,t,R,E,g]),W=i.useCallback(async A=>(R("dynamicFormCreate"),v.post(`${j}?id=${t}`,A).then(({data:Q})=>(E("dynamicFormCreate"),K([]),Q)).catch(Q=>(E("dynamicFormCreate"),K(e.extractErrorsFromResponse(Q)),null))),[v,t,R,E,j]),oe=i.useCallback(async A=>{m&&await ge(m.masterReference?{...A,[m.masterReferenceColumn??""]:re}:A)&&(B(f.editSuccess,"success"),_(Q=>Q&&Q.map(ae=>{var X;return((X=ae[(m==null?void 0:m.primaryKey)??""])==null?void 0:X.value)===A[(m==null?void 0:m.primaryKey)??""]?nn(A,m):ae})))},[B,ge,m,re,f]),ue=i.useCallback(async A=>{await $(f.deleteConfirm)&&await ke(A)&&(B(f.deleteSuccess,"success"),_(Q=>Q&&Q.filter(ae=>{var X;return((X=ae[(m==null?void 0:m.primaryKey)??""])==null?void 0:X.value)!==A})))},[B,ke,f,$,m]),Le=i.useCallback(async A=>{if(!m)return!1;const Q=await W(m.masterReference?{...A,[m.masterReferenceColumn??""]:re}:A);if(Q!==null){B(f.createSuccess,"success");const ae=nn(A,m);return ae[(m==null?void 0:m.primaryKey)??""]={value:Q,defaultValue:Q},_(X=>[...X??[],ae]),!0}return!1},[B,W,f,m,re]),F=A=>{A>V?s(V):A<1&&s(1),s(A)},L=i.useCallback(()=>{if(!w||!m){C(null);return}const A=w.filter(Q=>Object.entries(r).every(([ae,X])=>{var He,We,ze;if(X===null)return!0;const ie=(He=Q[ae])==null?void 0:He.value;if(ie==null)return!1;const ce=(We=m.columns)==null?void 0:We.find(Je=>Je.field===ae),Pe=ce==null?void 0:ce.type,Ve=(ce==null?void 0:ce.values)&&((ze=ce==null?void 0:ce.values)==null?void 0:ze.length)>0;if(!Pe)return!1;switch(Pe){case"STR":return Ve?ie===X:ie.toString().toLowerCase().includes(X.toLowerCase());case"NUM":return Ve?Number(ie)===Number(X):ie.toString().toLowerCase().includes(X.toLowerCase());case"DT":return ie.toString().toLowerCase().includes(X.toLowerCase());case"BIT":return Number(ie)===Number(X);default:return ie.toString().toLowerCase().includes(X.toLowerCase())}}));C(A)},[w,r,m]),G=i.useCallback(()=>{if(!S||!m){k([]);return}if(!a){k(S);return}k([...S].sort((A,Q)=>{var Pe,Ve,He,We,ze,Je;const ae=((Ve=(Pe=A[a])==null?void 0:Pe.value)==null?void 0:Ve.toString())??"",X=((We=(He=Q[a])==null?void 0:He.value)==null?void 0:We.toString())??"",ie=m.columns.find(ye=>ye.field===a),ce=ie==null?void 0:ie.type;if(!ie||!ce||!ae&&!X)return 0;if(!ae)return 1;if(!X)return-1;if(ie.values&&ie.values.length>0){const ye=((ze=ie.values.find(it=>{var Ue;return((Ue=it.id)==null?void 0:Ue.toString())===ae}))==null?void 0:ze.name)??"",Ne=((Je=ie.values.find(it=>{var Ue;return((Ue=it.id)==null?void 0:Ue.toString())===X}))==null?void 0:Je.name)??"";return l==="asc"?ye.localeCompare(Ne):Ne.localeCompare(ye)}if(ce==="NUM"){const ye=Number(ae),Ne=Number(X);return l==="asc"?ye-Ne:Ne-ye}if(ce==="DT"){const ye=e.parseISO(ae==null?void 0:ae.toString()).getTime(),Ne=e.parseISO(X==null?void 0:X.toString()).getTime();return l==="asc"?ye-Ne:Ne-ye}return l==="asc"?ae.toString().localeCompare(X.toString()):X.toString().localeCompare(ae.toString())}))},[S,m,a,l]);return i.useEffect(()=>{Y()},[Y]),i.useEffect(()=>{le()},[le]),i.useEffect(()=>{L()},[L]),i.useEffect(()=>{G()},[G]),i.useEffect(()=>{D&&D.length>M?(P(!0),n||s(1)):(P(!1),D&&s(null))},[D,s,n,M]),i.useEffect(()=>{!N||!n||(n>V&&s(V),n<1&&s(1))},[n,N,V,s]),e.jsxRuntimeExports.jsxs("div",{className:"h-100 w-100 d-flex flex-column",children:[e.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex justify-content-between align-items-center",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h3",children:(m==null?void 0:m.name)??""}),e.jsxRuntimeExports.jsx(Dt,{label:f.showArchived,value:I===!0,onChange:A=>b(A)})]}),(m==null?void 0:m.description)&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"mb-3",children:m==null?void 0:m.description}),(m==null?void 0:m.masterReference)&&e.jsxRuntimeExports.jsx("div",{className:"mb-3 d-flex",children:e.jsxRuntimeExports.jsx(di,{label:((me=(te=m.columns)==null?void 0:te.find(A=>A.field===m.masterReferenceColumn))==null?void 0:me.caption)??"",options:((Z=(ne=m.columns)==null?void 0:ne.find(A=>A.field===m.masterReferenceColumn))==null?void 0:Z.values)??[],master:re,onChange:A=>pe(A)})}),(m==null?void 0:m.slaves)&&m.slaves.length>0&&e.jsxRuntimeExports.jsx("div",{className:"mb-3 d-flex align-items-center flex-start",children:m.slaves.map(A=>{var Q;return e.jsxRuntimeExports.jsx(e.ContextButton,{as:"link",href:`${xe.generatePath(c,{id:(Q=A.id)==null?void 0:Q.toString()})}?type=dynamic-form`,children:A.name},A.id)})}),m!=null&&m.masterReference&&!re?e.jsxRuntimeExports.jsx(ot,{variant:"warning",children:f.selectMaster(((ve=(fe=m.columns)==null?void 0:fe.find(A=>A.field===m.masterReferenceColumn))==null?void 0:ve.caption)??"").toLowerCase()}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[m&&H.length>0&&e.jsxRuntimeExports.jsx("div",{className:"mb-2",children:e.jsxRuntimeExports.jsx(Ka,{errors:H,schema:m})}),m&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("div",{className:e.classNames("rounded border overflow-auto",sn.tableContainer),children:e.jsxRuntimeExports.jsx(ui,{schema:m,items:(N?ee:D)??[],onEditItem:oe,onDeleteItem:ue,onCreateItem:Le,filters:r,setFilter:o,sortByField:a,sortByType:l,setSortBy:u,selectedMaster:(re==null?void 0:re.toString())??null})}),N&&n&&e.jsxRuntimeExports.jsxs("div",{className:e.classNames(sn.pagination,"d-flex align-items-center gap-3 p-1 border-bottom border-start border-end rounded"),children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(1),disabled:!z,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-double-left"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(n-1),disabled:!z,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-left"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(n+1),disabled:!U,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-right"})}),e.jsxRuntimeExports.jsx(e.IconButton,{color:"primary",onClick:()=>F(V),disabled:!U,children:e.jsxRuntimeExports.jsx(h,{icon:"chevron-double-right"})})]}),e.jsxRuntimeExports.jsxs(e.Typography,{variant:"body",children:[f.tablePage," ",n," ",f.tablePageFrom," ",V]})]})]})]})]})},on={appDetail:"/settings/:id"},an={apiDynamicFormsGet:"/dynamicForms"},pi=({item:t,children:n})=>t.description?e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{placement:"left",text:t.description??"",children:e.jsxRuntimeExports.jsx("div",{children:n})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:n}),fi=({activeId:t,otherForms:n=[],groupsDefs:s=[],searchQuery:r,fullSize:o,appUrls:{appDetail:a=on.appDetail}=on,apiUrls:{apiDynamicFormsGet:l=an.apiDynamicFormsGet}=an})=>{const u=e.useAxios(),{startLoading:c,stopLoading:x}=i.useContext(e.LoadingContext),[d,p]=i.useState(null),g=i.useMemo(()=>[...(d==null?void 0:d.map(h=>({...h,type:"dynamic-form"})))??[],...n].filter(h=>we.stringSearchWithin(h.name,r)||we.stringSearchWithin(h.description,r)).sort((h,v)=>(h.name??"").localeCompare(v.name??""))??[],[d,n,r]),j=i.useMemo(()=>s.map(h=>({id:h.id,name:h.name??"",items:g.filter(v=>v.group===h.id)})).filter(h=>h.items.length>0),[s,g]),f=i.useCallback(async()=>{c("dynamicForms"),await u.get(l).then(({data:h})=>{p(h),x("dynamicForms")}).catch(()=>x("dynamicForms"))},[u,c,x,l]);return i.useEffect(()=>{!d&&f()},[f,d]),g.length>0?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx("div",{className:"w-auto list-group forms-items overflow-x-hidden",children:j.map(h=>e.jsxRuntimeExports.jsx(nt,{title:h.name,defaultOpen:!0,children:h.items.map(v=>{var R,E,m,y;return o?e.jsxRuntimeExports.jsxs(xe.Link,{to:`${xe.generatePath(a,{id:(R=v.id)==null?void 0:R.toString()})}?type=${v.type}`,className:`text-nowrap list-group-item list-group-item-action ${(t==null?void 0:t.toString())===((E=v.id)==null?void 0:E.toString())?"active":""}`,children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"body",children:v.name}),v.description&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"text-muted mt-2",children:v.description})]},v.id):e.jsxRuntimeExports.jsx(pi,{item:v,children:e.jsxRuntimeExports.jsx(xe.Link,{to:`${xe.generatePath(a,{id:(m=v.id)==null?void 0:m.toString()})}?type=${v.type}`,className:`text-nowrap list-group-item list-group-item-action ${(t==null?void 0:t.toString())===((y=v.id)==null?void 0:y.toString())?"active":""}`,children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",children:v.name})})},v.id)})},h.id))})}):null},hi=({label:t,to:n,value:s})=>e.jsxRuntimeExports.jsxs(e.RowLabelInput,{label:t,children:[e.jsxRuntimeExports.jsx("input",{disabled:!0,className:"form-control d-none"}),n?e.jsxRuntimeExports.jsx(xe.Link,{to:n,className:"border-bottom luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:s}):e.jsxRuntimeExports.jsx("div",{className:"luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:s})]}),ji=()=>{const{localizationContext:t}=i.useContext(e.LuminusComponentsContext),{language:n,setLanguage:s}=i.useContext(t),r=o=>{s(o)};return e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:o=>{r(n==="cz"?"en":"cz"),o.stopPropagation()},children:n==="cz"?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("strong",{children:"CZ"}),e.jsxRuntimeExports.jsx(e.MdArrowRight,{}),e.jsxRuntimeExports.jsx("span",{children:"EN"})]}):e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx("strong",{children:"EN"}),e.jsxRuntimeExports.jsx(e.MdArrowRight,{}),e.jsxRuntimeExports.jsx("span",{children:"CZ"})]})})},gi=({controlId:t,...n})=>e.jsxRuntimeExports.jsx(e.Form.Group,{controlId:t,...n}),vi=({employeeId:t,alt:n,noPhotoImage:s,cafmApiUrl:r,showLargeInLightBox:o=!1})=>{const{user:a}=i.useContext(e.UserContext),{photoPath:l,photoPathSm:u}=Ae.useEmployeePhotoPath(t);return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:t&&e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:o?e.jsxRuntimeExports.jsx(Xn,{baseUrl:r,customToken:a.cafmToken??void 0,photos:[{id:t.toString(),alt:n??"",isDefault:!0,smSrc:u,lgSrc:l}],placeholder:s,ImgComponent:yt}):e.jsxRuntimeExports.jsx(yt,{baseUrl:r,customToken:a.cafmToken??void 0,src:u,alt:n,placeholder:s,className:"rounded w-100"})})})},Ei=({text:t,setText:n,onSearchButtonClick:s,className:r})=>{const o=a=>{n(a)};return e.jsxRuntimeExports.jsxs(Xe,{className:`${r}`,children:[e.jsxRuntimeExports.jsx(e.Form.Control,{value:t,onChange:a=>n(a.target.value)}),t&&e.jsxRuntimeExports.jsx(e.Button$1,{onClick:()=>o(""),variant:"link",className:"border text-muted",children:e.jsxRuntimeExports.jsx(e.MdClear,{})}),e.jsxRuntimeExports.jsx(e.Button$1,{onClick:()=>s&&s(t),variant:"link",className:"border",children:e.jsxRuntimeExports.jsx(e.MdSearch,{})})]})},Ri=({value:t,numberPrefix:n,numberSuffix:s,decimalScale:r=2,className:o})=>e.jsxRuntimeExports.jsx(Tt,{value:t,displayType:"text",thousandSeparator:" ",decimalScale:r,defaultValue:"",prefix:n,suffix:s,className:o,decimalSeparator:","}),yi=({data:t,keys:n,colors:s,tooltipLabel:r})=>e.jsxRuntimeExports.jsx(e.Re,{data:t.map(o=>({name:o.name,...o.values})),indexBy:"name",keys:n,margin:{top:20,right:50,bottom:30,left:150},layout:"horizontal",colors:s,padding:.2,borderRadius:2,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},axisTop:null,axisRight:null,axisBottom:{tickSize:5,tickPadding:5,tickRotation:0},axisLeft:{tickSize:5,tickPadding:5,tickRotation:0},labelSkipWidth:12,labelSkipHeight:12,labelTextColor:{from:"color",modifiers:[["darker",1.6]]},tooltipLabel:r}),bi=({InputContainer:t=e.RowLabelInput,formField:n,label:s,resetsFields:r,type:o,required:a,hidden:l,disabled:u,withoutLabel:c,className:x})=>{const{register:d,formState:p,setValue:g}=Re.useFormContext(),[j,f]=i.useState(void 0),[h,v]=i.useState(!1);i.useEffect(()=>{const E=n.split(".");let m=p.errors;E.forEach(y=>{m!==void 0&&(m=m[y])}),f(m)},[p,n]),i.useEffect(()=>{p.isSubmitted&&v(!0)},[p]);const R=j!==void 0;return e.jsxRuntimeExports.jsxs(t,{isForCheckInput:!0,hidden:l,label:`${s}${a?" *":""}`,isInvalid:R,withoutLabel:c,className:x,children:[e.jsxRuntimeExports.jsx(e.Form.Check,{id:`check-${n}`,type:o??"checkbox",label:`${s}${a?" *":""}`,...d(n,{onChange:()=>{r&&r.forEach(E=>g(E,null,{shouldDirty:!0,shouldValidate:h}))}}),isInvalid:R,hidden:l,disabled:u,className:"w-100"}),j&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:j.message})]})},wi=({InputContainer:t=e.RowLabelInput,label:n,formField:s,options:r,resetsFields:o,required:a,disabled:l,hidden:u,className:c})=>{const{register:x,formState:d,setValue:p,watch:g}=Re.useFormContext(),[j,f]=i.useState(void 0),[h,v]=i.useState(!1),R=i.useMemo(()=>r,[r]);i.useEffect(()=>{const m=s.split(".");let y=d.errors;m.forEach(w=>{y!==void 0&&(y=y[w])}),f(y)},[d,s]),i.useEffect(()=>{d.isSubmitted&&v(!0)},[d]);const E=j!==void 0;return e.jsxRuntimeExports.jsxs(t,{isForRadioInput:!0,hidden:u,withoutLabel:!n,label:`${n}${a?" *":""}`,isInvalid:E,className:c,children:[R.map(m=>e.jsxRuntimeExports.jsx(e.Form.Check,{id:`radio-${m.id}`,label:m.name,type:"radio",value:m.id??"",checked:g(s)===m.id,...x(s,{onChange:()=>{o&&o.forEach(y=>p(y,null,{shouldDirty:!0,shouldValidate:h}))}}),isInvalid:E,hidden:u,disabled:l,className:"w-100"},m.id)),j&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:j.message})]})},Ni=({InputContainer:t=e.RowLabelInput,formField:n,label:s,size:r,defaultSelection:o,resetsFields:a,isNumber:l,required:u,hidden:c,disabled:x,items:d,onSearchQueryChange:p,selectedItemNavigateTo:g,texts:j,dropdownItemsNameWidth:f,isLoading:h,withoutLabel:v,additionalColumns:R,CustomOnChangeComponent:E,icon:m,displayIdAsName:y,onSelect:w,className:_,archiveColumn:S})=>{const{formState:C,setValue:D,watch:k,control:I}=Re.useFormContext(),[b,B]=i.useState(void 0),[H,K]=i.useState(!1),[$,T]=i.useState(!1),M=k(n)??null,V=M===(o==null?void 0:o.id)?o==null?void 0:o.name:k(`${n}-DropdownName`),z=i.useMemo(()=>M==null?null:{id:M??null,name:V??""},[M,V]),U=i.useCallback(()=>{const Y=n.split(".");let le=C.errors;Y.forEach(ge=>{le!==void 0&&(le=le[ge])}),B(le)},[C,n]),q=i.useCallback(Y=>{if((Y==null?void 0:Y.id)===M)return;if(w&&w(Y),a&&a.forEach(ge=>D(ge,null,{shouldDirty:!0,shouldValidate:$})),Y===null){D(n,null,{shouldDirty:!0,shouldValidate:$}),D(`${n}-DropdownName`,null);return}let le=null;l?le=(Y==null?void 0:Y.id)!==null&&(Y==null?void 0:Y.id)!==""?parseInt(Y.id.toString(),10):null:le=Y.id===null||Y.id===void 0||Y.id===""?null:Y.id,D(n,le,{shouldDirty:!0,shouldValidate:$}),D(`${n}-DropdownName`,Y.name??"")},[D,n,$,l,a,M,w]),O=i.useCallback(Y=>{K(!1),q(Y)},[q]),N=i.useCallback(()=>{K(!1)},[]);i.useEffect(()=>{U()},[U]),i.useEffect(()=>{C.isSubmitted&&T(!0)},[C]);const P=i.useRef(null),ee=b!==void 0,re=g!==void 0,pe=re&&z!==null;return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs(t,{label:`${s}${u?" *":""}`,hidden:c,withoutLabel:v,isInvalid:ee,inputContainerClassName:e.classNames({"luminus-dropdown-select-open":H}),className:_,children:[e.jsxRuntimeExports.jsxs(ns,{currentSelection:z,selectedItemNavigateTo:g,children:[y&&(z==null?void 0:z.name)&&e.jsxRuntimeExports.jsx(e.Typography,{variant:"caption",className:"d-flex justify-content-end mt-2 luminus-dropdown-selection-name",children:z.name}),e.jsxRuntimeExports.jsx(Re.Controller,{control:I,name:n,render:()=>e.jsxRuntimeExports.jsx(e.Form.Select,{size:r,onMouseDown:Y=>{Y.currentTarget.focus(),Y.preventDefault()},onClick:()=>{!re&&!x&&K(!0)},ref:P,value:M??"",onChange:()=>{},isInvalid:ee,hidden:c,className:e.classNames("w-100",{"luminus-dropdown-picker-disabled":x,"luminus-dropdown-picker-link":pe}),children:e.jsxRuntimeExports.jsx("option",{value:M,children:y?M:(V==null?void 0:V.length)>0?V:M})})}),E||!x&&re?e.jsxRuntimeExports.jsxs("div",{className:"custom-picker-button",children:[!E&&!x&&re&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",color:"secondary",onClick:Y=>{Y.preventDefault(),Y.stopPropagation(),K(!0)},children:m??e.jsxRuntimeExports.jsx(e.MdOutlineEdit,{})}),E??null]}):null]}),b&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:b.message}),P.current&&e.jsxRuntimeExports.jsx(rt,{show:H,onCancel:N,items:d,currentSelection:z,onSelectionChange:O,onSearchQueryChange:p,texts:j,itemsNameWidth:f,additionalColumns:R,displayIdAsName:y,isLoading:h,disabled:x,inputRef:P,archiveColumn:S})]})})},Ci=({InputContainer:t=e.RowLabelInput,label:n,formField:s,hidden:r,required:o,placeholder:a,disabled:l,showClearIcon:u,resetsFields:c,multiple:x,accept:d,withoutLabel:p,className:g})=>{const{watch:j,setValue:f,register:h,formState:v}=Re.useFormContext(),[R,E]=i.useState(!1),[m,y]=i.useState(void 0),w=i.useCallback(()=>{f(s,"")},[f,s]),_=i.useCallback(()=>{const C=s.split(".");let D=v.errors;C.forEach(k=>{D!==void 0&&(D=D[k])}),y(D)},[v,s]);i.useEffect(_,[_]),i.useEffect(()=>{v.isSubmitted&&E(!0)},[v]);const S=m!==void 0;return e.jsxRuntimeExports.jsxs(t,{label:`${n}${o?"*":""}`,hidden:r,withoutLabel:p,isInvalid:S,className:g,children:[e.jsxRuntimeExports.jsx(e.FormControl,{type:"file",multiple:x,accept:d.join(", "),placeholder:a??n,isInvalid:S,hidden:r,disabled:l,className:"w-100",...h(s,{onChange:()=>{c&&c.forEach(C=>f(C,null,{shouldDirty:!0,shouldValidate:R}))}})}),u&&j(s)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:w,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),m&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:m.message})]})},_i=({children:t,onStorno:n,noSpacer:s})=>{const{formState:r}=Re.useFormContext(),[o,a]=i.useState(!1);return i.useEffect(()=>{a(Object.keys(r.dirtyFields).length>0)},[r]),o?e.jsxRuntimeExports.jsx(zn,{onStorno:n,noSpacer:s,children:t}):null},ki=({InputContainer:t=e.RowLabelInput,options:n,formField:s,label:r,size:o,resetsFields:a,isNumber:l,required:u,hidden:c,disabled:x,withoutLabel:d,noSortOptions:p,suffixIdToName:g,onSelect:j,className:f,appendCurrentSelectionWithName:h})=>{const{texts:{customSelect:v}}=i.useContext(e.LuminusComponentsContext),{formState:R,setValue:E,watch:m,control:y}=Re.useFormContext(),[w,_]=i.useState(void 0),[S,C]=i.useState(!1),[D,k]=i.useState(!1),[I,b]=i.useState(""),B=m(s),H=i.useMemo(()=>n.find(O=>O.id===B)??null,[n,B]),K=i.useCallback(()=>{const O=s.split(".");let N=R.errors;O.forEach(P=>{N!==void 0&&(N=N[P])}),_(N)},[R,s]),$=i.useCallback(O=>{if((O==null?void 0:O.id)===B)return;if(j&&j(O),a&&a.forEach(P=>E(P,null,{shouldDirty:!0,shouldValidate:D})),O===null){E(s,null,{shouldDirty:!0,shouldValidate:D});return}let N=null;l?N=(O==null?void 0:O.id)!==null&&(O==null?void 0:O.id)!==""?parseInt(O.id.toString(),10):null:N=O.id===null||O.id===void 0||O.id===""?null:O.id,E(s,N,{shouldDirty:!0,shouldValidate:D})},[E,s,l,a,B,D,j]),T=i.useCallback(O=>{C(!1),$(O)},[$]),M=i.useCallback(O=>{b(O)},[]);i.useEffect(()=>{K()},[K]),i.useEffect(()=>{R.isSubmitted&&k(!0)},[R]);const V=i.useCallback(O=>{var N;return O===null?"":!O.name||O.name.length===0?((N=O.id)==null?void 0:N.toString())??"":g?`${O.name} (${O.id})`:O.name},[g]),z=i.useMemo(()=>{const O=n??[];return h!==void 0&&B&&(O.some(N=>N.id===B)||O.push({id:B,name:h})),O.map(N=>({id:N.id,name:V(N)})).filter(N=>we.stringSearchWithin(N.name,I)).sort((N,P)=>p?0:(N.name??"").localeCompare(P.name??""))},[n,p,I,V,h,B]),U=i.useRef(null),q=w!==void 0;return e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsxs(t,{label:`${r}${u?" *":""}`,hidden:c,withoutLabel:d,isInvalid:q,inputContainerClassName:e.classNames({"luminus-dropdown-select-open":S}),className:f,children:[e.jsxRuntimeExports.jsx(Re.Controller,{control:y,name:s,render:()=>e.jsxRuntimeExports.jsx(e.Form.Select,{size:o,onMouseDown:O=>{O.currentTarget.focus(),O.preventDefault()},onClick:()=>{C(!0)},ref:U,value:B??"",onChange:()=>{},isInvalid:q,hidden:c,disabled:x,className:"w-100",children:e.jsxRuntimeExports.jsx("option",{value:(H==null?void 0:H.id)??"",children:V(H)})})}),w&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:w.message}),U.current&&e.jsxRuntimeExports.jsx(rt,{show:S,onCancel:()=>C(!1),items:z,currentSelection:H??null,onSelectionChange:T,onSearchQueryChange:M,texts:v,disabled:x,inputRef:U,autoHideSearch:!0,allItemsLength:n.length})]})})},Si=({InputContainer:t=e.RowLabelInput,formField:n,label:s,placeholder:r,size:o,resetsFields:a,showClearIcon:l,clearValue:u,required:c,hidden:x,disabled:d,withoutLabel:p,step:g,stepperStep:j=1,className:f,min:h,max:v})=>{const{register:R,formState:E,setValue:m,watch:y}=Re.useFormContext(),[w,_]=i.useState(void 0),[S,C]=i.useState(!1),D=i.useCallback((H,K,$)=>{m(H,we.limitNumber(K,h,v),$)},[v,h,m]),k=i.useCallback(()=>{const H=u??null;D(n,H!==null?Number(H):null,{shouldDirty:!0,shouldValidate:S})},[u,D,n,S]),I=i.useCallback(()=>{const H=n.split(".");let K=E.errors;H.forEach($=>{K!==void 0&&(K=K[$])}),_(K)},[E,n]);i.useEffect(()=>{I()},[I]),i.useEffect(()=>{E.isSubmitted&&C(!0)},[E]);const b=w!==void 0,B=y(n);return e.jsxRuntimeExports.jsxs(t,{label:`${s}${c?" *":""}`,hidden:x,withoutLabel:p,isInvalid:b,className:f,children:[e.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[e.jsxRuntimeExports.jsx(e.Form.Control,{type:"number",placeholder:r??s,size:o,...R(n,{setValueAs:H=>H==null||H===""?null:we.limitNumber(Number(H),h,v),min:h,max:v,onChange:()=>{a&&a.forEach(H=>m(H,null,{shouldDirty:!0,shouldValidate:S}))}}),isInvalid:b,hidden:x,disabled:d,className:"w-100 luminus-numeric-stepper",step:g,min:h,max:v}),e.jsxRuntimeExports.jsx("div",{className:"stepper-icon left",children:!d&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:H=>{H.preventDefault(),H.stopPropagation(),D(n,((B?Number(B):0)-j).toString(),{shouldDirty:!0,shouldValidate:S})},children:e.jsxRuntimeExports.jsx(e.FaMinus,{})})}),e.jsxRuntimeExports.jsx("div",{className:"stepper-icon right",children:!d&&e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:H=>{H.preventDefault(),H.stopPropagation(),D(n,((B?Number(B):0)+j).toString(),{shouldDirty:!0,shouldValidate:S})},children:e.jsxRuntimeExports.jsx(e.FaPlus,{})})})]}),l&&y(n)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:k,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),w&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:w.message})]})},Ii=({InputContainer:t=e.RowLabelInput,formField:n,label:s,placeholder:r,resetsFields:o,showClearIcon:a,clearValue:l,required:u,hidden:c,disabled:x,withoutLabel:d,step:p,size:g,CustomOnChangeComponent:j,noSelectOnFocus:f,className:h,decimalScale:v=2,numberPrefix:R,numberSuffix:E,min:m,max:y})=>{const{formState:w,setValue:_,watch:S,control:C}=Re.useFormContext(),[D,k]=i.useState(void 0),[I,b]=i.useState(!1),B=i.useCallback(()=>{const T=l??null;_(n,T!==null?Number(T):null,{shouldDirty:!0,shouldValidate:I})},[l,_,n,I]),H=i.useCallback(()=>{const T=n.split(".");let M=w.errors;T.forEach(V=>{M!==void 0&&(M=M[V])}),k(M)},[w,n]);i.useEffect(()=>{H()},[H]),i.useEffect(()=>{w.isSubmitted&&b(!0)},[w]);const K=S(n);i.useEffect(()=>{y!==void 0&&K>y&&_(n,y),m!==void 0&&K<m&&_(n,m)},[n,K,y,m,_]);const $=D!==void 0;return e.jsxRuntimeExports.jsxs(t,{label:`${s}${u?" *":""}`,hidden:c,withoutLabel:d,isInvalid:$,className:h,children:[e.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[e.jsxRuntimeExports.jsx(Re.Controller,{control:C,name:n,render:({field:{ref:T,onChange:M,name:V,value:z}})=>e.jsxRuntimeExports.jsx(Tt,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:v,prefix:R,suffix:E,defaultValue:"",name:V,value:z??"",placeholder:r??s,onFocus:U=>{!f&&U.target.select()},onChange:U=>{var O,N;const q=parseFloat(((N=(O=U.target)==null?void 0:O.value)==null?void 0:N.replaceAll(" ","").replaceAll(",","."))??0);o&&o.forEach(P=>_(P,null,{shouldDirty:!0,shouldValidate:I})),M(q==null||Number.isNaN(q)?null:Number(q))},hidden:c,disabled:x,className:e.classNames("form-control text-end w-100",{"is-invalid":$},{[`form-control-${g}`]:g}),step:p,getInputRef:T,min:m,max:y})}),j&&e.jsxRuntimeExports.jsx("div",{className:"custom-picker-button",children:j})]}),a&&S(n)&&e.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:e.jsxRuntimeExports.jsx(e.IconButton,{color:"secondary",size:"sm",onClick:B,children:e.jsxRuntimeExports.jsx(e.MdClear,{})})}),D&&e.jsxRuntimeExports.jsx(e.InvalidFeedback,{message:D.message})]})},$t=["slice","options","formats","conditions"],ln=t=>{const n=t.current.flexmonster.getReport({withDefaults:!0});if(typeof n=="string")throw alert("report is string"),new Error("report is string");const s={};return $t.forEach(r=>{s[r]=n[r]}),JSON.stringify(s)},Di=t=>{if(t.settings){const n=JSON.parse(t.settings);return $t.forEach(s=>{n[s]===void 0&&(n[s]=null)}),n}return{}},Fi=t=>{const n={};return $t.forEach(s=>{n[s]=(t==null?void 0:t[s])??void 0}),n},xs=({dataSource:t,settings:n,pivotRef:s,localization:r,licenseKey:o,enabled:a=!0})=>{const{texts:{reports:l}}=i.useContext(e.LuminusComponentsContext),[u,c]=i.useState(!1),x=i.useRef(null),d=s??x,p=i.useMemo(()=>({localization:r}),[r]),g=i.useCallback(f=>{delete f[0],delete f[1],delete f[2];const h=[{id:"fm-tab-expand",title:l.expandAll,handler:d.current.flexmonster.expandAllData,icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg>'},{id:"fm-tab-collapse",title:l.collapseAll,handler:d.current.flexmonster.collapseAllData,icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z"/><path d="M0 0h24v24H0z" fill="none"/></svg>'}];return f.unshift({id:"fm-tab-expand",title:l.expand,icon:'<svg height="42" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><path d=" M16 4 L28 4 L28 16 L24 12 L20 16 L16 12 L20 8z M4 16 L8 20 L12 16 L16 20 L12 24 L16 28 L4 28z "/></svg>',menu:h,rightGroup:!0}),f},[d,l.collapseAll,l.expand,l.expandAll]),j=f=>{const h=f.getTabs();f.getTabs=()=>g(h)};return i.useEffect(()=>{var f;u&&a&&((f=d.current)==null||f.flexmonster.updateData(t),console.log("Updating flexmonster dataSource to: ",t))},[t,a,u,d]),i.useEffect(()=>{var f,h,v;if(u&&a){const{options:R,conditions:E,formats:m,slice:y,...w}=(f=d.current)==null?void 0:f.flexmonster.getReport();if(w===void 0||typeof w=="string")return;const _=Fi(n);_.options={...n==null?void 0:n.options,grid:{...(h=n==null?void 0:n.options)==null?void 0:h.grid,autoSwitchToCompact:!1}};const S={...w,..._};(v=d.current)==null||v.flexmonster.setReport(S),console.log("Refreshing flexmonster settings. New report: ",S)}},[a,u,d,n]),e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:e.jsxRuntimeExports.jsx(fs.Pivot,{ref:d,global:p,licenseKey:o,toolbar:!0,height:"100%",beforetoolbarcreated:j,ready:()=>{c(!0)},width:"100%"})})},Ti=(t,n,s,r)=>{const{texts:{reports:o}}=i.useContext(e.LuminusComponentsContext),{prompt:a}=e.usePrompt(),{confirm:l}=e.useConfirm(),u=e.useAxios(),{user:c}=i.useContext(e.UserContext),{startLoading:x,stopLoading:d}=i.useContext(e.LoadingContext),{addNotification:p}=e.useNotifications(),g=i.useCallback(async R=>{x("report-versionSavingAs");try{const E=await u.post("/reports/version",R);p(o.saveSuccessful,"success"),await r(E.data)}finally{d("report-versionSavingAs")}},[p,r,u,o.saveSuccessful,x,d]),j=i.useCallback(async()=>{if(s===null){p("none open","warning");return}if(!await l(o.confirmOverwriteSave))return;const E=ln(n);g({reportSourceName:t,reportVersionId:s,settings:E})},[p,l,n,t,o.confirmOverwriteSave,g,s]),f=i.useCallback(async()=>{const R=await a(o.enterName,{input:"input",required:!0});if(R===null)return;const E=ln(n);g({reportSourceName:t,name:R,settings:E})},[n,a,t,o.enterName,g]),h=i.useCallback(async()=>{x("report-versionSavingAs");try{await u.post("/reports/version",{reportVersionId:s??void 0,reportSourceName:t,isArchived:!0}),p(o.deleteSuccessful,"success")}finally{d("report-versionSavingAs")}},[p,u,t,o.deleteSuccessful,s,x,d]),v=i.useCallback(async()=>{x("report-versionSavingAs");try{await u.post("/reports/version-restrictions",{reportVersionId:s??void 0,userRestricts:[{employeeId:c.personalNumber,addRights:!1}]}),p(o.detachSuccessful,"success")}finally{d("report-versionSavingAs")}},[p,u,o.detachSuccessful,s,x,d,c.personalNumber]);return{saveAs:f,save:j,archive:h,detach:v}},$i=t=>{const n=e.useAxios(),{startLoading:s,stopLoading:r}=i.useContext(e.LoadingContext);return{changeEmployeeRights:i.useCallback(async(a,l)=>{let u=null;s("reportSharing-addPerson");try{u=(await n.post("/reports/version-restrictions",{reportVersionId:t,userRestricts:[{employeeId:a,addRights:l}]})).data}finally{r("reportSharing-addPerson")}return u},[n,t,s,r])}},Li=({isOpen:t,onHide:n,usersData:s,setUsersData:r,reportVersionId:o,EmployeePicker:a})=>{const{ProjectIconComponent:l,texts:{reports:u}}=i.useContext(e.LuminusComponentsContext),{confirm:c}=e.useConfirm(),[x,d]=i.useState(null),{changeEmployeeRights:p}=$i(o),g=i.useCallback(async()=>{if(x===null)return;const f=await p(x,!0);r(o,f)},[x,p,o,r]),j=i.useCallback(async f=>{if(!await c(u.removeSharingWith(f)))return;const v=await p(f,!1);r(o,v)},[p,c,o,u,r]);return e.jsxRuntimeExports.jsxs(e.Modal,{show:t,onHide:n,children:[e.jsxRuntimeExports.jsx(e.Modal.Header,{closeButton:!0,children:e.jsxRuntimeExports.jsx(e.Modal.Title,{children:u.reportSharing})}),e.jsxRuntimeExports.jsxs(e.Modal.Body,{children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h6",children:u.sharedWith}),e.jsxRuntimeExports.jsxs(Ps,{variant:"flush",children:[s&&s.length===0?e.jsxRuntimeExports.jsx("div",{className:"px-2",children:u.noone.toLowerCase()}):null,s==null?void 0:s.map(f=>e.jsxRuntimeExports.jsxs(Ct,{className:"d-flex justify-content-between align-items-center gap-3 border-bottom px-2 py-1",children:[f.lastName," ",f.firstName," [",f.id,"]",e.jsxRuntimeExports.jsx(e.IconButton,{color:"danger",onClick:()=>j(f.id),children:e.jsxRuntimeExports.jsx(l,{icon:"delete"})})]},f.id))]}),e.jsxRuntimeExports.jsx(e.Typography,{variant:"h6",className:"mt-2 mb-2",children:u.addSharing}),e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center",children:[e.jsxRuntimeExports.jsx("div",{className:"flex-grow-1",children:e.jsxRuntimeExports.jsx(a,{defaultSelection:null,label:u.shareWith,onSelect:f=>{d(f===null?null:Number(f.id))}})}),e.jsxRuntimeExports.jsx(e.PrimaryButton,{onClick:g,disabled:x===null,children:u.add})]})]})]})},Oi=(t,n)=>{const[s,r]=i.useState(null);return i.useEffect(()=>{t.then(({default:o})=>{const a=n!==void 0?n(o):o;r(a)})},[n,t]),{mappings:s}},Mi=({reportType:t,title:n,data:s,filterElements:r,getReportRoute:o,localization:a,licenseKey:l,EmployeePicker:u,localizationJsonFile:c,localizationTransformer:x})=>{const{texts:{reports:d}}=i.useContext(e.LuminusComponentsContext),{confirm:p}=e.useConfirm(),g=xe.useNavigate(),{id:j}=xe.useParams(),f=i.useMemo(()=>j===void 0?null:Number(j),[j]),h=i.useCallback(N=>{const P=N===null?"":N.toString();g(xe.generatePath(o(t),{id:P}),{replace:!0})},[o,g,t]),[v,R]=i.useState(!1),E=i.useRef(null),{user:m}=i.useContext(e.UserContext),{data:y,reloadData:w,setData:_}=hs.useGetApiData(`/reports/${t}`),{mappings:S}=Oi(c,x),[C,D]=i.useState({}),k=i.useCallback(N=>{if(y===null)return;const P=N.target.value,ee=P===""?null:Number(P);h(ee)},[y,h]),I=i.useCallback(async N=>{await w(),h(N)},[w,h]),b=i.useMemo(()=>{if(y===null)return null;const N=y.reportVersions.find(P=>P.reportVersionId===f);return N===void 0?null:N},[y,f]);i.useEffect(()=>{var P;if(y===null)return;if(b===null){D({});return}const N=Di(b)??{};D(N),(P=E.current)==null||P.flexmonster.refresh()},[y,b,f]);const{save:B,saveAs:H,archive:K,detach:$}=Ti(t,E,f,I),T=i.useMemo(()=>({data:s??[],mapping:S??void 0}),[s,S]),M=i.useCallback(async()=>{var P;await p(d.confirmRevertChanges)&&((P=E.current)==null||P.flexmonster.setReport({dataSource:T,...C}))},[p,T,d.confirmRevertChanges,C]),V=i.useMemo(()=>(b==null?void 0:b.ownerId)===m.personalNumber,[b==null?void 0:b.ownerId,m.personalNumber]),z=i.useMemo(()=>{var N;return(N=b==null?void 0:b.users)==null?void 0:N.some(P=>P.id===m.personalNumber&&!P.isReportOwner)},[b==null?void 0:b.users,m.personalNumber]),U=i.useCallback((N,P)=>{_(ee=>{const re=ee==null?void 0:ee.reportVersions.findIndex(le=>le.reportVersionId===N);if(re===void 0||ee===null)return ee;const pe={...ee.reportVersions[re],users:P.filter(le=>le.isReportOwner===!1)},Y=[...ee.reportVersions];return Y[re]=pe,{...ee,reportVersions:Y}})},[_]),q=i.useCallback(async()=>{await p(d.confirmDelete(b==null?void 0:b.name))&&(await K(),h(null),await w())},[K,p,w,b==null?void 0:b.name,d,h]),O=i.useCallback(async()=>{await p(d.confirmDetach(b==null?void 0:b.name))&&(await $(),h(null),await w())},[p,$,w,b==null?void 0:b.name,d,h]);return i.useEffect(()=>{var N;f===null&&h(((N=y==null?void 0:y.reportVersions.find(P=>P.isSystem===!0))==null?void 0:N.reportVersionId)??null)},[y==null?void 0:y.reportVersions,f,h]),e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(js.FullScreenContainer,{title:e.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-start gap-3",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"h3",children:n}),r,e.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[e.jsxRuntimeExports.jsxs(e.FormSelect,{size:"sm",value:f??void 0,onChange:k,children:[e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectSystem,children:y==null?void 0:y.reportVersions.filter(N=>N.isSystem===!0).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:N.name},N.reportVersionId))}),e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectYour,children:y==null?void 0:y.reportVersions.filter(N=>N.ownerId===m.personalNumber).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:N.name},N.reportVersionId))}),e.jsxRuntimeExports.jsx("optgroup",{label:d.versionSelectSharedWithYou,children:y==null?void 0:y.reportVersions.filter(N=>N.isSystem===!1&&N.ownerId!==m.personalNumber).map(N=>e.jsxRuntimeExports.jsx("option",{value:N.reportVersionId,children:`${N.name} [${N.ownerId}]`},N.reportVersionId))})]}),e.jsxRuntimeExports.jsx(e.ContextButton,{icon:e.jsxRuntimeExports.jsx(e.MdSave,{}),onClick:B,disabled:f===null||(b==null?void 0:b.isSystem)||!V,children:d.save}),e.jsxRuntimeExports.jsx(e.ContextButton,{icon:e.jsxRuntimeExports.jsx(e.MdSaveAs,{}),onClick:H,className:"flex-shrink-0",children:d.saveAs}),e.jsxRuntimeExports.jsxs(e.Dropdown,{toggle:e.jsxRuntimeExports.jsx(e.DropdownToggle,{as:e.SimpleDropdownToggle}),children:[e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:M,children:d.revertChanges}),e.jsxRuntimeExports.jsx(e.DropdownItem,{onClick:()=>R(!0),disabled:!V||(b==null?void 0:b.isSystem),children:d.share}),V&&!(b!=null&&b.isSystem)?e.jsxRuntimeExports.jsx(e.DropdownItem,{color:"danger",onClick:q,children:d.delete}):null,z&&!(b!=null&&b.isSystem)?e.jsxRuntimeExports.jsx(e.DropdownItem,{color:"danger",onClick:O,children:d.detach}):null]})]})]}),children:e.jsxRuntimeExports.jsx("div",{className:e.classNames("h-100 w-100",T.data&&T.data.length>0?"":"d-none"),children:e.jsxRuntimeExports.jsx(xs,{dataSource:T,settings:C,pivotRef:E,enabled:T.data&&T.data.length>0,localization:a,licenseKey:l})})}),b!==null?e.jsxRuntimeExports.jsx(Li,{isOpen:v,onHide:()=>R(!1),usersData:b.users??null,setUsersData:U,reportVersionId:b==null?void 0:b.reportVersionId,EmployeePicker:u}):null]})},Bi=({cell:{value:t}})=>e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:t?e.jsxRuntimeExports.jsx(e.AvatarIcon,{name:t,size:21,fontSize:12}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{})}),Ai=({knownTypes:t,typeFilters:n,onChangeTypeFilters:s})=>e.jsxRuntimeExports.jsx("div",{className:"mb-1 d-flex justify-content-center gap-2",children:t.map(r=>e.jsxRuntimeExports.jsx("div",{role:"button",style:{height:"14px",width:"14px",borderRadius:"50%",border:"2px solid transparent",backgroundColor:"transparent"},className:e.classNames(`border-${r}`,n.includes(r)&&`bg-${r}`),onClick:()=>{n.includes(r)?s(n.filter(o=>o!==r)):s([...n,r])}},r))}),Pi=({linksTo:t,onClick:n,children:s})=>t?e.jsxRuntimeExports.jsx(xe.Link,{to:t,className:"text-decoration-none",onClick:n,children:s}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:s}),Vi=({message:t,onDeleteMessage:n,onClickMessage:s,getIcon:r,getLinksTo:o})=>{const{ProjectIconComponent:a,localizationContext:l}=i.useContext(e.LuminusComponentsContext),{dateFnsLocale:u}=i.useContext(l),c=t.dateTime?e.parseISO(t.dateTime):null,x=c?ys(new Date(Date.now()),c):0;return e.jsxRuntimeExports.jsxs("div",{children:[c&&e.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end",children:e.jsxRuntimeExports.jsx(Ze.SimpleTooltip,{text:e.format(c,"dd.MM.yyyy HH:mm"),placement:"left",children:e.jsxRuntimeExports.jsx("div",{children:e.jsxRuntimeExports.jsx(e.Typography,{variant:"caption",children:x>2?e.format(c,"dd.MM.yyyy"):ws(c,new Date(Date.now()),{locale:u.code})})})})}),e.jsxRuntimeExports.jsx(Pi,{linksTo:o(t)??void 0,onClick:s,children:e.jsxRuntimeExports.jsx(es,{level:t.type,noIcon:!0,children:e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start gap-2",children:[r(t),e.jsxRuntimeExports.jsxs("div",{className:"d-flex flex-column gap-1 w-100",children:[e.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start justify-content-between gap-3",children:[e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",className:"fw-bold",children:t.subject}),e.jsxRuntimeExports.jsx(e.IconButton,{size:"sm",onClick:d=>{d.preventDefault(),d.stopPropagation(),n(t.id)},children:e.jsxRuntimeExports.jsx(a,{icon:"delete"})})]}),e.jsxRuntimeExports.jsx(e.Typography,{variant:"body2",children:t.text})]})]})})})]})},cn=["info","warning","danger"],un=({messages:t,isLoading:n,onDeleteMessage:s,onClickMessage:r,getIcon:o,getLinksTo:a})=>{const{texts:{messageBoard:l}}=i.useContext(e.LuminusComponentsContext),[u,c]=i.useState(cn),x=i.useMemo(()=>t.filter(d=>u.includes(d.type??"")),[u,t]);return e.jsxRuntimeExports.jsxs("div",{className:"h-100 d-flex flex-column overflow-hidden",children:[e.jsxRuntimeExports.jsx(Ai,{knownTypes:cn,typeFilters:u,onChangeTypeFilters:d=>c(d)}),n&&e.jsxRuntimeExports.jsxs("div",{className:"p-3 w-100",children:[e.jsxRuntimeExports.jsx(Ce,{as:Vt.Title,animation:"glow",children:e.jsxRuntimeExports.jsx(Ce,{xs:6})}),e.jsxRuntimeExports.jsxs(Ce,{as:Vt.Text,animation:"glow",children:[e.jsxRuntimeExports.jsx(Ce,{xs:7})," ",e.jsxRuntimeExports.jsx(Ce,{xs:4})," ",e.jsxRuntimeExports.jsx(Ce,{xs:4})," ",e.jsxRuntimeExports.jsx(Ce,{xs:6})," ",e.jsxRuntimeExports.jsx(Ce,{xs:8})]})]}),!n&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[t.length===0&&e.jsxRuntimeExports.jsx(ot,{variant:"info",size:"sm",className:"mt-2",children:l.noMessages}),e.jsxRuntimeExports.jsx("div",{className:"h-100 overflow-y-auto d-flex flex-column gap-2 luminus-thin-scrollbar",children:x.map(d=>e.jsxRuntimeExports.jsx(Vi,{message:d,onDeleteMessage:s,onClickMessage:r,getIcon:o,getLinksTo:a},d.id))})]})]})},ft={apiGet:"/messageBoard",apiDelete:"/messageBoard/"},Hi=({renderAsNotifPanel:t,notifIcon:n,apiUrls:{apiGet:s=ft.apiGet,apiDelete:r=ft.apiDelete}=ft,getIcon:o,getLinksTo:a})=>{const u=e.useAxios(),[c,x]=i.useState([]),[d,p]=i.useState(!1),[g,j]=i.useState(!1),[f,h]=i.useState(!1),v=i.useCallback(async()=>{j(!0),await u.get(s).then(({data:w})=>{x(w),p(!0),j(!1)}).catch(()=>{x([]),j(!1)})},[s,u]),R=i.useCallback(async w=>u.delete(`${r}${w}`).then(()=>!0).catch(()=>!1),[r,u]),E=i.useCallback(w=>{R(w).then(_=>{_&&x(c.filter(S=>S.id!==w))})},[R,c]);i.useEffect(()=>{v();const w=setInterval(()=>v(),60*1e3);return()=>{clearInterval(w)}},[v]);const m=c.filter(w=>w.type==="danger").length,y=d?!1:g;return t?e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs("div",{className:"position-relative",children:[e.jsxRuntimeExports.jsx(e.IconButton,{size:"md",onClick:()=>h(!f),children:n}),m>0&&e.jsxRuntimeExports.jsx("div",{className:"badge rounded-pill bg-danger p-1 px-2 text-white",style:{position:"absolute",top:"-6px",right:"-10px",fontSize:"10px"},children:m})]}),e.jsxRuntimeExports.jsx(Ut,{show:f,onHide:()=>h(!1),placement:"end",children:e.jsxRuntimeExports.jsx(Ut.Body,{children:e.jsxRuntimeExports.jsx(un,{messages:c,isLoading:y,onDeleteMessage:E,onClickMessage:()=>h(!1),getIcon:o,getLinksTo:a})})})]}):e.jsxRuntimeExports.jsx(un,{messages:c,isLoading:y,onDeleteMessage:E,getIcon:o,getLinksTo:a})},Wi="_tab-panel_d8l8q_1",zi="_full-height-no-overflow_d8l8q_5",Ui="_disabled_d8l8q_12",ht={"tab-panel":"_tab-panel_d8l8q_1",tabPanel:Wi,"full-height-no-overflow":"_full-height-no-overflow_d8l8q_5",fullHeightNoOverflow:zi,disabled:Ui},Gi=({eventKey:t,activeTab:n,fullHeightNoOverflow:s,disabled:r,className:o,children:a})=>t!==n?null:e.jsxRuntimeExports.jsx("div",{className:e.classNames("luminus-tab-panel",ht.tabPanel,{[ht.fullHeightNoOverflow]:s},{disabled:r},{[ht.disabled]:r},o),children:a}),Ki="_join-line_1q9e8_1",Yi={"join-line":"_join-line_1q9e8_1",joinLine:Ki},qi=({activeTab:t,onSelect:n,children:s,vertical:r,verticalStepper:o})=>e.jsxRuntimeExports.jsx("div",{className:e.classNames("luminus-tabs d-flex mb-2",{"gap-1":!o},{"gap-0":o},{"flex-column":r||o}),children:s.map((a,l)=>{const u=a.type,c=a.props;if(!c)return null;const x=c.eventKey,d=c.children,p=c.className,g=c.onClick;return e.jsxRuntimeExports.jsxs(i.Fragment,{children:[e.jsxRuntimeExports.jsx(u,{...c,className:e.classNames({active:t===x},p),onClick:()=>{n(x),g&&g(x)},vertical:r||o,children:d}),o&&l<s.length-1&&e.jsxRuntimeExports.jsx("div",{className:e.classNames("join-line",Yi.joinLine)})]},c.eventKey)})}),Qi="_tab_1tbi7_1",Zi="_disabled_1tbi7_7",Ji="_vertical_1tbi7_13",jt={tab:Qi,disabled:Zi,vertical:Ji},Xi=({eventKey:t,className:n,onClick:s,disabled:r,vertical:o,children:a})=>e.jsxRuntimeExports.jsx("div",{role:"button",className:e.classNames("luminus-tab text-primary rounded",jt.tab,n,{disabled:r},{[jt.disabled]:r},{vertical:o},{[jt.vertical]:o}),onClick:()=>s&&!r&&s(t),children:typeof a=="string"?e.jsxRuntimeExports.jsx(e.Typography,{variant:o?"body":"h6",className:o?"":"text-primary",children:a}):a});exports.AvatarIcon=e.AvatarIcon;exports.ContextButton=e.ContextButton;exports.Documents=e.Documents;exports.Dropdown=e.Dropdown;exports.DropdownItem=e.DropdownItem;exports.DropdownToggle=e.DropdownToggle;exports.FileExtensionIcon=e.FileExtensionIcon;exports.FloatingLabelInput=e.FloatingLabelInput;exports.HookFormTextAreaInput=e.HookFormTextAreaInput;exports.HookFormTextInput=e.HookFormTextInput;exports.IconButton=e.IconButton;exports.InvalidFeedback=e.InvalidFeedback;exports.NoInputContainer=e.NoInputContainer;exports.PrimaryButton=e.PrimaryButton;exports.ResponsiveContextDropdown=e.ResponsiveContextDropdown;exports.ResponsiveContextDropdownItem=e.ResponsiveContextDropdownItem;exports.RowLabelInput=e.RowLabelInput;exports.SimpleToggle=e.SimpleDropdownToggle;exports.Typography=e.Typography;exports.UserAvatarToggle=e.UserAvatarToggle;exports.Loading=Ee.Loading;exports.SimpleTooltip=Ze.SimpleTooltip;exports.Alert=ot;exports.AlertItem=es;exports.ApiFileDownloadButton=vs;exports.AppSearch=ho;exports.AuthTemplate=Uo;exports.Backdrop=St;exports.Badge=kr;exports.BarChart=yi;exports.Card=qn;exports.CheckInput=Dt;exports.Collapse=nt;exports.DisabledRowLabelLink=hi;exports.DropdownDivider=Jr;exports.DropdownPicker=ua;exports.DynamicForm=mi;exports.EmployeeSmallPhoto=vi;exports.ErrorBoundary=Kn;exports.FileUploadButton=qs;exports.FileUploadContextButton=kt;exports.FileUploadDropdownItem=qr;exports.Flexmonster=xs;exports.FloatingActionContainer=ts;exports.FloatingFormSubmit=zn;exports.FromToDatePicker=Wa;exports.HomeDashboard=yr;exports.HookFormCheckInput=bi;exports.HookFormDropdownPicker=Ni;exports.HookFormFileInput=Ci;exports.HookFormFloatingSubmit=_i;exports.HookFormNumericStepperInput=Si;exports.HookFormNumericTextInput=Ii;exports.HookFormRadioInput=wi;exports.HookFormSelectInput=ki;exports.HtmlTooltip=Ys;exports.ImgApi=yt;exports.ImgDirect=It;exports.LanguageSwitch=ji;exports.LoadingBlock=xn;exports.MessageBoard=Hi;exports.MonthPicker=Un;exports.MonthPickerSearchParams=za;exports.NumericFormat=Ri;exports.NumericStepperInput=xa;exports.NumericTextInput=Oa;exports.PhotoLibrary=Xn;exports.PhotoLightbox=Jn;exports.PieChart=Ga;exports.ReportPage=Mi;exports.SearchBox=Ei;exports.SelectInput=Ye;exports.SettingsFormPicker=fi;exports.SimplePicker=rt;exports.Tab=Xi;exports.TabPanel=Gi;exports.Tabs=qi;exports.TextAreaInput=da;exports.TextInput=$e;exports.Timeline=la;exports.TypedFormGroup=gi;exports.UserAvatarValueFormat=Bi;exports.VersionInfo=Jo;exports.WidgetCard=Et;exports.YearPicker=Gn;exports.YearPickerSearchParams=Ua;
package/dist/main.es.js CHANGED
@@ -2667,7 +2667,7 @@ const wd = ({ InputContainer: e = tt, value: t, onChange: r, debounceMs: s, labe
2667
2667
  r && r(E == null || E === "" ? null : Number(E));
2668
2668
  }, [r]), F = S((D) => {
2669
2669
  var _, P;
2670
- let E = parseFloat(((P = (_ = D.target) == null ? void 0 : _.value) == null ? void 0 : P.replaceAll(" ", "")) ?? 0);
2670
+ let E = parseFloat(((P = (_ = D.target) == null ? void 0 : _.value) == null ? void 0 : P.replaceAll(" ", "").replaceAll(",", ".")) ?? 0);
2671
2671
  if (Number.isNaN(E) && (E = 0), !s) {
2672
2672
  k(E.toString());
2673
2673
  return;
@@ -2683,7 +2683,7 @@ const wd = ({ InputContainer: e = tt, value: t, onChange: r, debounceMs: s, labe
2683
2683
  }, [I, f, j, $]), L(() => {
2684
2684
  !r || t === null || (f !== void 0 && t > f && r(f), j !== void 0 && t < j && r(j));
2685
2685
  }, [t, f, j, r]), /* @__PURE__ */ n.jsxs(e, { withoutLabel: o, label: a ?? "", hidden: l, className: x, children: [
2686
- /* @__PURE__ */ n.jsx(Nn, { displayType: "input", thousandSeparator: " ", decimalScale: g, prefix: v, suffix: y, defaultValue: "", value: s ? I : (t == null ? void 0 : t.toString()) ?? "", placeholder: i ?? a, onFocus: (D) => {
2686
+ /* @__PURE__ */ n.jsx(Nn, { displayType: "input", thousandSeparator: " ", decimalSeparator: ",", decimalScale: g, prefix: v, suffix: y, defaultValue: "", value: s ? I : (t == null ? void 0 : t.toString()) ?? "", placeholder: i ?? a, onFocus: (D) => {
2687
2687
  !h && D.target.select();
2688
2688
  }, onChange: F, hidden: l, disabled: u, className: b("form-control text-end w-100", {
2689
2689
  [`form-control-${c}`]: c
@@ -3259,7 +3259,7 @@ const wd = ({ InputContainer: e = tt, value: t, onChange: r, debounceMs: s, labe
3259
3259
  e && /* @__PURE__ */ n.jsx(tn, { onClick: () => a(""), variant: "link", className: "border text-muted", children: /* @__PURE__ */ n.jsx(Te, {}) }),
3260
3260
  /* @__PURE__ */ n.jsx(tn, { onClick: () => r && r(e), variant: "link", className: "border", children: /* @__PURE__ */ n.jsx(ya, {}) })
3261
3261
  ] });
3262
- }, Od = ({ value: e, numberPrefix: t, numberSuffix: r, decimalScale: s = 2, className: a }) => /* @__PURE__ */ n.jsx(Nn, { value: e, displayType: "text", thousandSeparator: " ", decimalScale: s, defaultValue: "", prefix: t, suffix: r, className: a }), Td = ({ data: e, keys: t, colors: r, tooltipLabel: s }) => /* @__PURE__ */ n.jsx(wa, { data: e.map((a) => ({ name: a.name, ...a.values })), indexBy: "name", keys: t, margin: {
3262
+ }, Od = ({ value: e, numberPrefix: t, numberSuffix: r, decimalScale: s = 2, className: a }) => /* @__PURE__ */ n.jsx(Nn, { value: e, displayType: "text", thousandSeparator: " ", decimalScale: s, defaultValue: "", prefix: t, suffix: r, className: a, decimalSeparator: "," }), Td = ({ data: e, keys: t, colors: r, tooltipLabel: s }) => /* @__PURE__ */ n.jsx(wa, { data: e.map((a) => ({ name: a.name, ...a.values })), indexBy: "name", keys: t, margin: {
3263
3263
  top: 20,
3264
3264
  right: 50,
3265
3265
  bottom: 30,
@@ -3528,11 +3528,11 @@ const wd = ({ InputContainer: e = tt, value: t, onChange: r, debounceMs: s, labe
3528
3528
  const A = F !== void 0;
3529
3529
  return /* @__PURE__ */ n.jsxs(e, { label: `${r}${c ? " *" : ""}`, hidden: l, withoutLabel: d, isInvalid: A, className: g, children: [
3530
3530
  /* @__PURE__ */ n.jsxs("div", { className: "luminus-input-container position-relative w-100", children: [
3531
- /* @__PURE__ */ n.jsx(gn, { control: k, name: t, render: ({ field: { ref: R, onChange: V, name: W, value: G } }) => /* @__PURE__ */ n.jsx(Nn, { displayType: "input", thousandSeparator: " ", decimalScale: v, prefix: y, suffix: j, defaultValue: "", name: W, value: G ?? "", placeholder: s ?? r, onFocus: (K) => {
3531
+ /* @__PURE__ */ n.jsx(gn, { control: k, name: t, render: ({ field: { ref: R, onChange: V, name: W, value: G } }) => /* @__PURE__ */ n.jsx(Nn, { displayType: "input", thousandSeparator: " ", decimalSeparator: ",", decimalScale: v, prefix: y, suffix: j, defaultValue: "", name: W, value: G ?? "", placeholder: s ?? r, onFocus: (K) => {
3532
3532
  !h && K.target.select();
3533
3533
  }, onChange: (K) => {
3534
3534
  var B, C;
3535
- const te = parseFloat(((C = (B = K.target) == null ? void 0 : B.value) == null ? void 0 : C.replaceAll(" ", "")) ?? 0);
3535
+ const te = parseFloat(((C = (B = K.target) == null ? void 0 : B.value) == null ? void 0 : C.replaceAll(" ", "").replaceAll(",", ".")) ?? 0);
3536
3536
  a && a.forEach((H) => I(H, null, { shouldDirty: !0, shouldValidate: E })), V(te == null || Number.isNaN(te) ? null : Number(te));
3537
3537
  }, hidden: l, disabled: u, className: b("form-control text-end w-100", {
3538
3538
  "is-invalid": A
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-luminus-components",
3
- "version": "1.3.131",
3
+ "version": "1.3.132",
4
4
  "description": "Library of React Components reusable in Luminus projects (Fleetman, CAFM)",
5
5
  "type": "module",
6
6
  "repository": {