react-luminus-components 1.5.2 → 1.5.3
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 +1 -1
- package/dist/main.es.js +413 -413
- package/package.json +1 -1
package/dist/main.cjs.js
CHANGED
|
@@ -183,4 +183,4 @@
|
|
|
183
183
|
Prefix can't start with '-' when allowNegative is true.
|
|
184
184
|
prefix: `+s+`
|
|
185
185
|
allowNegative: `+a+`
|
|
186
|
-
`),a=!1),Object.assign(Object.assign({},e),{allowNegative:a})}function zg(e){e=Hg(e),e.decimalSeparator,e.allowedDecimalSeparators,e.thousandsGroupStyle;var t=e.suffix,r=e.allowNegative,o=e.allowLeadingZeros,s=e.onKeyDown;s===void 0&&(s=Qe);var a=e.onBlur;a===void 0&&(a=Qe);var i=e.thousandSeparator,l=e.decimalScale,c=e.fixedDecimalScale,p=e.prefix;p===void 0&&(p="");var u=e.defaultValue,m=e.value,f=e.valueIsNumericString,x=e.onValueChange,g=zi(e,["decimalSeparator","allowedDecimalSeparators","thousandsGroupStyle","suffix","allowNegative","allowLeadingZeros","onKeyDown","onBlur","thousandSeparator","decimalScale","fixedDecimalScale","prefix","defaultValue","value","valueIsNumericString","onValueChange"]),b=Pn(e),v=b.decimalSeparator,h=b.allowedDecimalSeparators,y=function(P){return Os(P,e)},R=function(P,B){return Wg(P,B,e)},j=bt(m)?u:m,E=f??Gg(j,p,t);bt(m)?bt(u)||(E=E||typeof u=="number"):E=E||typeof m=="number";var S=function(P){return qi(P)?P:(typeof P=="number"&&(P=Xi(P)),E&&typeof l=="number"?Is(P,l,!!c):P)},D=Ji(S(m),S(u),!!E,y,R,x),I=D[0],w=I.numAsString,_=I.formattedValue,T=D[1],A=function(P){var B=P.target,G=P.key,L=B.selectionStart,$=B.selectionEnd,U=B.value;if(U===void 0&&(U=""),(G==="Backspace"||G==="Delete")&&$<p.length){P.preventDefault();return}if(L!==$){s(P);return}G==="Backspace"&&U[0]==="-"&&L===p.length+1&&r&&dt(B,1),l&&c&&(G==="Backspace"&&U[L-1]===v?(dt(B,L-1),P.preventDefault()):G==="Delete"&&U[L]===v&&P.preventDefault()),h!=null&&h.includes(G)&&U[L]===v&&dt(B,L+1);var q=i===!0?",":i;G==="Backspace"&&U[L-1]===q&&dt(B,L-1),G==="Delete"&&U[L]===q&&dt(B,L+1),s(P)},C=function(P){var B=w;if(B.match(/\d/g)||(B=""),o||(B=Ig(B)),c&&l&&(B=Is(B,l,c)),B!==w){var G=Os(B,e);T({formattedValue:G,value:B,floatValue:parseFloat(B)},{event:P,source:Jt.event})}a(P)},O=function(P){return P===v?!0:Zt(P)},F=function(P){var B=P.currentValue,G=P.lastValue,L=P.formattedValue,$=P.currentValueIndex,U=P.formattedValueIndex,q=B[$],X=L[U],Q=Qi(G,B),le=Q.to,V=function(Y){return R(Y).indexOf(".")+p.length};return m===0&&c&&l&&B[le.start]===v&&V(B)<$&&V(L)>U?!1:$>=le.start&&$<le.end&&h&&h.includes(q)&&X===v?!0:q===X};return Object.assign(Object.assign({},g),{value:_,valueIsNumericString:!1,isValidInputCharacter:O,isCharacterSame:F,onValueChange:T,format:y,removeFormatting:R,getCaretBoundary:function(P){return Ug(P,e)},onKeyDown:A,onBlur:C})}function io(e){var t=zg(e);return d.createElement(Fg,Object.assign({},t))}const Zi=({InputContainer:e=n.FloatingLabelInput,value:t,onChange:r,debounceMs:o,label:s,withoutLabel:a,placeholder:i,size:l,hidden:c,disabled:p,showClearIcon:u,clearValue:m,className:f,step:x,noSelectOnFocus:g,decimalScale:b,fixedDecimalScale:v=!1,numberPrefix:h,numberSuffix:y,min:R,max:j,hint:E})=>{const S=d.useCallback(()=>{if(!r)return;const A=m??null;r(A?Number(A):null)},[m,r]),D=d.useRef(null),[I,w]=d.useState((t==null?void 0:t.toString())??""),_=d.useCallback(A=>{const C=A;r&&r(C==null||C===""?null:Number(C))},[r]),T=d.useCallback(A=>{var O,F;let C=parseFloat(((F=(O=A.target)==null?void 0:O.value)==null?void 0:F.replaceAll(" ","").replaceAll(",","."))??0);if(Number.isNaN(C)&&(C=0),!o){_(C.toString());return}w(C.toString()),D.current!==null&&window.clearTimeout(D.current),D.current=window.setTimeout(()=>{_(C.toString())},o)},[o,_]);return d.useEffect(()=>{w(t===null?"":t.toString())},[j,R,t]),d.useEffect(()=>{j!==void 0&&Number(I)>j&&w(j.toString()),R!==void 0&&Number(I)<R&&w(R.toString())},[I,j,R,w]),d.useEffect(()=>{!r||t===null||(j!==void 0&&t>j&&r(j),R!==void 0&&t<R&&r(R))},[t,j,R,r]),n.jsxRuntimeExports.jsxs(e,{withoutLabel:a,label:s??"",hidden:c,className:f,hint:E,disabled:p,children:[n.jsxRuntimeExports.jsx(io,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:b,fixedDecimalScale:v,prefix:h,suffix:y,defaultValue:"",value:o?I:(t==null?void 0:t.toString())??"",placeholder:i??s,onFocus:A=>{!g&&A.target.select()},onChange:T,hidden:c,disabled:p,className:n.classNames("form-control text-end w-100",{[`form-control-${l}`]:l}),step:x,min:R,max:j}),u&&t!==null&&r&&!p&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:S,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})})]})},el=({InputContainer:e=n.RowLabelInput,label:t,options:r,disabled:o,hidden:s,className:a,value:i,onChange:l})=>{const c=d.useCallback(p=>{l&&l(p.target.value)},[l]);return n.jsxRuntimeExports.jsx(e,{isForRadioInput:!0,hidden:s,withoutLabel:!t,label:`${t}`,className:a,disabled:o,children:r.map(p=>n.jsxRuntimeExports.jsx(n.Form.Check,{id:`radio-${p.id}`,label:p.name,type:"radio",value:p.id??"",checked:i===p.id,onChange:c,hidden:s,disabled:o,className:"w-100"},p.id))})},Ts=[["D","day"],["M","month"],["Y","year"],["C","custom"]],qg="_wrapper_qfqux_1",Yg="_lg_qfqux_7",Kg="_sm_qfqux_11",Xg="_md_qfqux_14",ks={wrapper:qg,lg:Yg,sm:Kg,md:Xg},jn=e=>{const t=new Date(e),r=n.trimIsoDate(t.toISOString());t.setUTCMonth(t.getUTCMonth()+1),t.setUTCDate(t.getUTCDate()-1);const o=n.trimIsoDate(t.toISOString());return{from:r,to:o}},$t=e=>{const t=new Date(e),r=n.trimIsoDate(t.toISOString());t.setUTCFullYear(t.getUTCFullYear()+1),t.setUTCDate(t.getUTCDate()-1);const o=n.trimIsoDate(t.toISOString());return{from:r,to:o}},Qg=(e,t)=>{if(e===null||t===null)return"C";if(e===t)return"D";const r=new Date(e);return jn(r).to===t?"M":$t(r).to===t?"Y":(console.log($t(r),t),"C")},Jg=(e,t,r)=>{const o=d.useCallback((i,l)=>{if(e==="C"){r(c=>({...c,[i]:l}));return}switch(i){case"from":r(c=>{if(l===null)return c;const p=new Date(l);if(e==="D"){const u=n.trimIsoDate(p.toISOString());return{from:u,to:u}}return e==="M"?jn(p):e==="Y"?$t(p):c});break;case"to":t("C"),r(c=>({...c,[i]:l}));break}},[e,r,t]),s=d.useCallback(i=>{r(l=>{if(l.from===null||l.to===null)return l;const c=new Date(l.from);c.setHours(c.getHours()-c.getTimezoneOffset()/60);const p=new Date(l.to);if(e==="D"){c.setDate(c.getDate()+i);const u=n.trimIsoDate(c.toISOString());return{from:u,to:u}}return e==="M"?(c.setMonth(c.getMonth()+i),jn(c)):e==="Y"?(c.setFullYear(c.getFullYear()+i),$t(c)):{from:n.trimIsoDate(c.toISOString()),to:n.trimIsoDate(p.toISOString())}})},[e,r]),a=d.useCallback(i=>{i==="D"?r(l=>({from:l.from,to:l.from})):i==="M"?r(l=>{if(l.from===null)return l;const c=n.getFirstDayOfMonth(l.from);return jn(c)}):i==="Y"&&r(l=>{if(l.from===null)return l;const c=n.getFirstDayOfYear(new Date(l.from).getFullYear());return $t(c)}),t(i)},[r,t]);return{setFromToProp:o,handleArrowClick:s,handleRangeChange:a}},Zg=({fromtoState:[e,t],className:r,size:o})=>{const{texts:{date:s},ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState("C"),{handleArrowClick:c,handleRangeChange:p,setFromToProp:u}=Jg(i,l,t),m=d.useMemo(()=>i==="C",[i]),f=d.useRef(!0);return d.useEffect(()=>{if(f.current){const x=Qg(e.from,e.to);l(x),f.current=!1}},[e.from,e.to]),n.jsxRuntimeExports.jsxs("div",{className:n.classNames("d-inline-flex align-items-center gap-1",ks.wrapper,ks[o??"md"],r),children:[n.jsxRuntimeExports.jsx(n.IconButton,{disabled:m,onClick:()=>{c(-1)},children:n.jsxRuntimeExports.jsx(a,{icon:"chevron-left"})}),n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.TextInput,{type:"date",value:e.from,onChange:x=>u("from",x===null?null:x.toString()),InputContainer:n.NoInputContainer,size:o}),n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{text:s[Ts.find(x=>x[0]===i)[1]].substring(0,1),as:n.FromToDatePickerDropdownToggle}),children:Ts.map(x=>n.jsxRuntimeExports.jsx(n.DropdownItem,{disabled:x[0]===i,className:n.classNames(x[0]===i?"text-black-50":""),onClick:()=>p(x[0]),role:"button",children:s[x[1]]},x[0]))}),n.jsxRuntimeExports.jsx(n.TextInput,{type:"date",value:e.to,onChange:x=>u("to",x===null?null:x.toString()),InputContainer:n.NoInputContainer,size:o})]})}),n.jsxRuntimeExports.jsx(n.IconButton,{disabled:m,onClick:()=>{c(1)},children:n.jsxRuntimeExports.jsx(a,{icon:"chevron-right"})})]})},ev=({defaultMonth:e,searchKey:t="monthFrom",yearMin:r,yearMax:o})=>{const{localizationContext:s}=d.useContext(n.LuminusComponentsContext),{dateFnsLocale:a}=d.useContext(s),{searchParams:i,setSearch:l}=Nt.useSearchQuery(),c=i.get(t),p=c?n.parseISO(c):e,u=d.useCallback(m=>{l(t,ur(m,{representation:"date"}))},[t,l]);return n.jsxRuntimeExports.jsx(ja,{month:p,onChangeMonth:u,locale:a,yearMin:r,yearMax:o})},tv=({defaultYear:e,searchKey:t="yearFrom",...r})=>{const[o,s]=Nt.useSearchQueryState(t,ur(e,{representation:"date"})),a=o?n.parseISO(o):e,i=d.useCallback(l=>{s(ur(l,{representation:"date"}))},[s]);return n.jsxRuntimeExports.jsx(Ea,{year:a,onChangeYear:i,...r})},nv=({data:e,showLegend:t=!1,legendPosition:r="left",onClick:o})=>{const{chartColorPalette:s}=d.useContext(n.LuminusComponentsContext);return n.jsxRuntimeExports.jsx(n._,{data:e,margin:{top:50,right:t&&r==="right"?200:100,bottom:50,left:t&&r==="left"?200:100},innerRadius:.4,padAngle:4,cornerRadius:2,activeOuterRadiusOffset:10,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},colors:s,arcLinkLabelsSkipAngle:10,arcLinkLabelsTextColor:{from:"color",modifiers:[["darker",.5]]},arcLinkLabelsThickness:2,arcLinkLabelsColor:{from:"color"},enableArcLabels:!1,legends:t?[{anchor:r,direction:r==="left"||r==="right"?"column":"row",justify:!1,translateX:r==="left"?-200:r==="right"?200:0,translateY:r==="top"?-50:r==="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=>o&&o(a.data)})},rv=({val:e,translateKey:t,data:r})=>{var l,c;const o=e.point.id.split("."),s=o[0],a=Number(o[1]),i=d.useMemo(()=>{const p=e.point.x<100?"56%":"-56%",u=e.point.y<60?"70px":"8px";return{transform:`translate(${p}, ${u})`}},[e.point.x,e.point.y]);return n.jsxRuntimeExports.jsxs("div",{className:"bg-white shadow-sm px-2 py-1 rounded",style:i,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:t(e.point.serieId)}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex",children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"pe-1",children:[(l=e.point.data.x)==null?void 0:l.toString(),":"]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"fw-bold",children:(c=r==null?void 0:r[a])==null?void 0:c[s]})]})]})},ov=({data:e,xKey:t,yKeys:r,translateKey:o,usePercentageValue:s=!1,variant:a="default",legendPosition:i,noSort:l=!1})=>{const{confirm:c}=n.useConfirm(),{chartColorPalette:p,texts:{chart:u}}=d.useContext(n.LuminusComponentsContext),[m,f]=d.useState(new Set),x=d.useRef(null),g=async()=>{var _;const w=(_=x.current)==null?void 0:_.querySelector("svg");if(w&&await c(u.confirmExport)){const T=w.cloneNode(!0);T.setAttribute("fill","none");const C=new XMLSerializer().serializeToString(T);n.saveFile(new Blob([C],{type:"image/svg+xml"}),"graf.svg")}},b=w=>{f(_=>{const T=new Set(_);return T.has(w.id)?T.delete(w.id):T.add(w.id),T})},v=d.useMemo(()=>l?e:e.toSorted((w,_)=>{var T;return typeof _[t]=="number"&&typeof w[t]=="number"?w[t]-_[t]:(w[t]??"").toString().localeCompare(((T=_[t])==null?void 0:T.toString())??"")}),[e,l,t]),h=d.useMemo(()=>{const w=[];return r.forEach(_=>{if(s){const T=Math.max(...v.map(C=>C[_]??-1/0));if(T===-1/0)return;const A=[];v.forEach(C=>{C[_]!=null&&A.push({x:C[t],y:T===0?0:C[_]/T})}),w.push({id:_,data:A})}else w.push({id:_,data:v.map(T=>({x:T[t],y:T[_]}))})}),w},[v,s,t,r]),y=d.useCallback(w=>n.jsxRuntimeExports.jsx(rv,{data:v,translateKey:o,val:w}),[v,o]),R=d.useMemo(()=>Math.min(...e.map(w=>w[t]??1/0)),[e,t]),j=d.useMemo(()=>Math.max(...e.map(w=>w[t]??-1/0)),[e,t]),E=d.useMemo(()=>{var w;return typeof((w=e==null?void 0:e[0])==null?void 0:w[t])},[e,t]),S=i??(a==="sideContent"?"bottom":"right"),D=d.useMemo(()=>!s&&a!=="sideContent",[s,a]),I=d.useMemo(()=>[R,j],[j,R]);return n.jsxRuntimeExports.jsx("div",{ref:x,className:"d-flex h-100 w-100",children:n.jsxRuntimeExports.jsx(n.pe,{onClick:()=>g(),data:h,xScale:E==="string"?{type:"point"}:{type:"linear",min:R},yScale:{type:"linear",nice:!0},axisLeft:D?{tickSize:5,tickPadding:5,tickRotation:0,legend:s?"%":"count",legendOffset:-40,legendPosition:"middle",truncateTickAt:0}:null,axisBottom:{tickValues:a==="sideContent"?I:void 0},gridYValues:a==="sideContent"?[0]:void 0,legends:S!=="none"?[{data:r.map((w,_)=>({id:w,label:o(w),color:p==null?void 0:p[_],hidden:m.has(w)})),onClick:b,anchor:S,direction:S==="right"?"column":"row",toggleSerie:!0,justify:!1,translateX:S==="right"?120:void 0,translateY:S==="right"?0:S==="bottom"?44:void 0,itemsSpacing:0,itemDirection:"left-to-right",itemWidth:100,itemHeight:20,itemOpacity:.75,symbolSize:12,symbolShape:"circle",effects:[{on:"hover",style:{itemBackground:"rgba(0, 0, 0, .04)",itemOpacity:1,symbolSize:14}}]}]:void 0,pointSize:6,pointColor:{theme:"background"},pointBorderWidth:2,pointBorderColor:{from:"serieColor"},margin:{top:10,right:S==="right"?130:20,bottom:S==="bottom"?44:20,left:D?50:20},colors:p,isInteractive:!0,enableCrosshair:!0,enableTouchCrosshair:!0,useMesh:!0,animate:!1,tooltip:y})})},sv=({errors:e,schema:t})=>{const r=o=>{var s,a;return o.toLowerCase()==="others"?"Obecné":((a=(s=t.columns)==null?void 0:s.find(i=>i.field===o))==null?void 0:a.caption)??o};return n.jsxRuntimeExports.jsx("div",{className:"alert alert-danger w-100 m-0 p-2",children:n.jsxRuntimeExports.jsx("table",{children:n.jsxRuntimeExports.jsx("tbody",{children:e.map(o=>n.jsxRuntimeExports.jsxs("tr",{children:[n.jsxRuntimeExports.jsx("td",{className:"fw-bold pe-2",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[r(o.name),":"]})}),n.jsxRuntimeExports.jsx("td",{className:"",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:o.errors})})]},o.name))})})})},tl=e=>{const t={};return Object.keys(e).forEach(r=>{if(e[r].value===!0){t[r]=1;return}if(e[r].value===!1){t[r]=0;return}t[r]=e[r].value}),t},Ps=(e,t)=>{const r={};return Object.keys(e).forEach(o=>{var i;const s=e[o],a=(i=t.columns)==null?void 0:i.find(l=>l.field===o);if((a==null?void 0:a.type)==="BIT"&&(s===1||s===0)){r[o]={value:s===1,defaultValue:s===1};return}r[o]={value:s,defaultValue:s}}),r},av="_table_1klfy_1",iv="_table-header_1klfy_10",lv="_table-row_1klfy_10",cv="_table-head_1klfy_10",uv="_filters-row_1klfy_19",dv="_table-body_1klfy_30",pv="_table-cell_1klfy_30",mv="_action-column_1klfy_43",fv="_sticky-top_1klfy_47",xv="_sticky-first_1klfy_54",gv="_sticky-last_1klfy_61",vv="_sticky-bottom_1klfy_68",de={table:av,"table-header":"_table-header_1klfy_10",tableHeader:iv,"table-row":"_table-row_1klfy_10",tableRow:lv,"table-head":"_table-head_1klfy_10",tableHead:cv,"filters-row":"_filters-row_1klfy_19",filtersRow:uv,"table-body":"_table-body_1klfy_30",tableBody:dv,"table-cell":"_table-cell_1klfy_30",tableCell:pv,"action-column":"_action-column_1klfy_43",actionColumn:mv,"sticky-top":"_sticky-top_1klfy_47",stickyTop:fv,"sticky-first":"_sticky-first_1klfy_54",stickyFirst:xv,"sticky-last":"_sticky-last_1klfy_61",stickyLast:gv,"sticky-bottom":"_sticky-bottom_1klfy_68",stickyBottom:vv},hv="_input_pxkkh_1",Ye={input:hv},bv="_multiselect_134m5_1",jv="_multiselect-menu_134m5_10",Ev="_dropdown-item_134m5_18",yv="_special-option_134m5_24",vt={multiselect:bv,"multiselect-menu":"_multiselect-menu_134m5_10",multiselectMenu:jv,"dropdown-item":"_dropdown-item_134m5_18",dropdownItem:Ev,"special-option":"_special-option_134m5_24",specialOption:yv},As=10,Bs=({value:e,field:t,disabled:r,valuesForSelect:o,onChangeHandler:s,separator:a})=>{var v,h,y,R;const{texts:{dynamicForms:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState("");o==null||o.sort((j,E)=>(j.name??"").localeCompare(E.name??""));const p=d.useMemo(()=>{var j;return e?(j=e==null?void 0:e.toString())==null?void 0:j.split(a):[]},[e,a]),u=d.useCallback((j,E)=>{const S=j.split(a),D=E?S.every(I=>p.includes(I))&&p.length===S.length?null:S:j===""?void 0:p.includes(j)?p.filter(I=>I!==j):[...p,j];s(D!=null&&D.length?D.join(a):null)},[s,p,a]),m=d.useMemo(()=>{const j=[{value:o.map(E=>{var S;return((S=E.id)==null?void 0:S.toString())??""}).join(a),label:i.allOptionsMultiselect,specialOption:!0}];return o.forEach(E=>{var S,D;j.push({value:((S=E.id)==null?void 0:S.toString())??"",label:((D=E.name)==null?void 0:D.toString())??"",specialOption:!1})}),j},[o,i,a]),f=d.useRef(null),x=d.useRef(null),[g,b]=d.useState(!1);return d.useEffect(()=>{g&&x.current&&x.current.focus()},[g]),d.useEffect(()=>{m.length<As&&c("")},[m]),n.jsxRuntimeExports.jsxs(n.Dropdown$1,{autoClose:"outside",onToggle:j=>b(j),children:[n.jsxRuntimeExports.jsx(n.Dropdown$1.Toggle,{variant:"light",ref:f,id:`multiselect-${t}`,size:"sm",className:n.classNames("bg-white border",vt.multiselect),onKeyDown:j=>{r||j.key==="Escape"&&s(null)},children:p.length>1||p.length===0?i.xValuesMultiselect(p.length):p.length===1?(v=m.find(j=>j.value===p.at(0)))==null?void 0:v.label:i.allOptionsMultiselect}),n.jsxRuntimeExports.jsxs(n.Dropdown$1.Menu,{className:n.classNames(vt.multiselectMenu),style:{left:(h=f.current)==null?void 0:h.getBoundingClientRect().left,top:(y=f.current)==null?void 0:y.getBoundingClientRect().bottom,maxWidth:`max(300px, ${(R=f.current)==null?void 0:R.getBoundingClientRect().width}px)`},children:[m.length>=As?n.jsxRuntimeExports.jsx(n.Dropdown$1.Item,{className:n.classNames("rounded",vt.dropdownItem,vt.searchItem),children:n.jsxRuntimeExports.jsx(n.Form.Control,{ref:x,type:"search",size:"sm",value:l,onChange:j=>c(j.target.value??""),className:"w-100"})}):null,m.filter(j=>j.specialOption?!0:l?n.stringSearchWithin(j.value,l):!0).map(j=>n.jsxRuntimeExports.jsx(n.Dropdown$1.Item,{onClick:()=>!r&&u(j.value,j.specialOption),disabled:r,className:n.classNames("rounded",vt.dropdownItem,{[vt.specialOption]:j.specialOption},{"text-muted":r}),children:n.jsxRuntimeExports.jsx(n.Form.Check,{disabled:r,label:j.label,checked:j.specialOption?p.length===j.value.split(a).length&&p.every(E=>j.value.split(a).includes(E)):p.includes(j.value),onChange:()=>{}})},j.value))]})]})},nl=({type:e,value:t,field:r,isPrimary:o,isReadonly:s,primaryEditable:a=!1,valuesForSelect:i,addValueToValuesForSelect:l,onChangeHandler:c,hideClearIcon:p,clearValue:u,customPickers:m,isMultiChoice:f,multiChoiceSeparator:x})=>{var g;switch(e){case"NUM":return i&&i.length>0?f?n.jsxRuntimeExports.jsx(Bs,{field:r,value:(t==null?void 0:t.toString())??"",separator:x??",",onChangeHandler:b=>c(r,b),valuesForSelect:i,disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,b===null?null:Number(b)),options:i,disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u,dropdownWidth:200}):n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",type:"number",value:t===null?null:Number(t),onChange:b=>c(r,b===null?null:Number(b)),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});case"STR":return i&&i.length>0?f?n.jsxRuntimeExports.jsx(Bs,{field:r,value:(t==null?void 0:t.toString())??"",separator:x??",",onChangeHandler:b=>{c(r,b)},valuesForSelect:i,disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),options:i,disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u,dropdownWidth:200}):n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:n.classNames(Ye.input,Ye.longer),size:"sm",type:"text",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});case"BIT":return n.jsxRuntimeExports.jsx(Qt,{InputContainer:n.NoInputContainer,className:Ye.input,value:t===!0,onChange:b=>c(r,b),disabled:s?!0:o?!a:!1});case"DT":return n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",type:"date",value:t?t.toString().split("T")[0]??"":"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});default:{const b=m==null?void 0:m.find(v=>v.type===e);return b?n.jsxRuntimeExports.jsx(b.picker,{className:n.classNames(Ye.input,Ye.longer),value:t?{id:(t==null?void 0:t.toString())??null,name:((g=i==null?void 0:i.find(v=>{var h;return((h=v.id)==null?void 0:h.toString())===(t==null?void 0:t.toString())}))==null?void 0:g.name)??""}:null,onChange:v=>{var h;c(r,(v==null?void 0:v.id)??null),console.log(v,i==null?void 0:i.some(y=>{var R,j;return((R=y.id)==null?void 0:R.toString())===((j=v==null?void 0:v.id)==null?void 0:j.toString())}),l),v&&!(i!=null&&i.some(y=>{var R,j;return((R=y.id)==null?void 0:R.toString())===((j=v==null?void 0:v.id)==null?void 0:j.toString())}))&&l&&(console.log("adding to values for select"),l({id:((h=v.id)==null?void 0:h.toString())??"",name:v.name}))},disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx("div",{className:"alert alert-warning p-1 m-0",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:["Neznámý typ ",e]})})}}},Rv=({schema:e,columns:t,setColumns:r,initialItem:o,onEdit:s,onDelete:a,customPickers:i,appDetail:l})=>{const{ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(o),m=d.useCallback((g,b)=>{console.log("changeValue",g,b),u(v=>({...v,[g]:{...v[g],value:b}}))},[]),f=g=>(g==null?void 0:g.value)!==(g==null?void 0:g.defaultValue),x=d.useCallback(()=>Object.keys(p).some(g=>f(p[g])),[p]);return d.useEffect(()=>{u(o)},[o]),n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row",de.tableRow),children:[n.jsxRuntimeExports.jsx("td",{className:n.classNames("table-cell",de.tableCell,de.stickyFirst),children:x()&&n.jsxRuntimeExports.jsx(n.IconButton,{color:"success",onClick:()=>s(tl(p)),children:n.jsxRuntimeExports.jsx(c,{icon:"check"})})}),t.map(g=>{var b,v;return n.jsxRuntimeExports.jsx("td",{className:n.classNames("table-cell",de.tableCell),children:n.jsxRuntimeExports.jsx(nl,{type:g.type,value:(b=p[g.field??""])==null?void 0:b.value,field:g.field,isReadonly:g.readOnly,isPrimary:e.primaryKey===g.field,valuesForSelect:g.valuesForSelect,addValueToValuesForSelect:h=>{r(t.map(y=>y.field===g.field?{...y,valuesForSelect:[...y.valuesForSelect??[],h]}:y))},onChangeHandler:m,hideClearIcon:!f(p[g.field??""]),clearValue:(v=p[g.field??""].defaultValue)==null?void 0:v.toString(),customPickers:i,isMultiChoice:g.multiChoice??!1,multiChoiceSeparator:g.multiChoiceSeparator??null})},`${e.id}-${g.field}`)}),n.jsxRuntimeExports.jsxs("td",{className:n.classNames("table-cell d-flex gap-1",de.tableCell,de.stickyLast),children:[e!=null&&e.slaves&&e.slaves.length>0?e.slaves.map((g,b)=>{var v,h;return n.jsxRuntimeExports.jsx(n.IconButton,{as:"link",href:`${oe.generatePath(l,{id:(v=g.id)==null?void 0:v.toString()})}?type=dynamic-form&masterId=${(h=p.id)==null?void 0:h.value}`,children:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:g.name??"",placement:"left",children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"d-flex align-items-center text-primary",children:[e.slaves.length>1?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:b+1}):null,n.jsxRuntimeExports.jsx(n.MdOutlineSubdirectoryArrowRight,{})]})})})},g.id)}):null,n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>a(p[e.primaryKey??""].value),children:n.jsxRuntimeExports.jsx(c,{icon:"delete"})})]})]})},Cv=({schema:e,columns:t,setColumns:r,onCreate:o,customPickers:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(null),c=d.useCallback(()=>{var m;const u={};(m=e.columns)==null||m.forEach(f=>{const x=f.type==="BIT"?!1:f.type==="NUM"?null:f.type==="STR"?"":null;u[f.field??""]={value:x,defaultValue:x}}),l(u)},[e]),p=d.useCallback((u,m)=>{l(f=>f&&{...f,[u]:{...f[u],value:m}})},[]);return i?n.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[n.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"success",onClick:async()=>{const u=tl(i);u&&await o(u)&&l(null)},children:n.jsxRuntimeExports.jsx(a,{icon:"check"})})}),t.map(u=>n.jsxRuntimeExports.jsx("td",{children:n.jsxRuntimeExports.jsx(nl,{type:u.type,value:i[u.field??""].value,field:u.field,isReadonly:u.readOnly,isPrimary:e.primaryKey===u.field,valuesForSelect:u.valuesForSelect,addValueToValuesForSelect:m=>{r(t.map(f=>f.field===u.field?{...f,valuesForSelect:[...f.valuesForSelect??[],m]}:f))},onChangeHandler:p,primaryEditable:!0,customPickers:s,isMultiChoice:u.multiChoice??!1,multiChoiceSeparator:u.multiChoiceSeparator??null})},`${e.id}-${u.field}`)),n.jsxRuntimeExports.jsx("td",{className:"sticky-last",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>l(null),children:n.jsxRuntimeExports.jsx(a,{icon:"cancel"})})})]}):n.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[n.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:n.jsxRuntimeExports.jsx(n.IconButton,{onClick:c,children:n.jsxRuntimeExports.jsx(a,{icon:"add"})})}),n.jsxRuntimeExports.jsx("td",{colSpan:t.length+1})]})},Nv="_resizer_ref0b_1",wv="_content_ref0b_11",Sv="_dragging_ref0b_16",mn={resizer:Nv,content:wv,dragging:Sv},rl=({cellRef:e,defaultWidth:t})=>{const[r,o]=d.useState(t),[,s]=d.useState(null);return d.useEffect(()=>{o(t)},[t]),d.useEffect(()=>{e.current&&(e.current.style.minWidth=`${r}px`)},[r,e]),n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-column-resizer",mn.resizer),draggable:!0,onDragStart:a=>{s(a.currentTarget.getBoundingClientRect().x),a.currentTarget.classList.add(mn.dragging)},onDrag:a=>{s(i=>(e.current&&o(l=>l+a.clientX-(i??0)),a.clientX))},onDragEnd:a=>{s(null),a.currentTarget.classList.remove(mn.dragging)},children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("content",mn.content)})})},Dv=({column:e,children:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext);return e.description?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:e.description??"",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between",children:[t,n.jsxRuntimeExports.jsx(r,{icon:"info"})]})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:t})},Iv=({column:e,sortByField:t,sortByType:r,setSortBy:o})=>{const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),a=d.useRef(null),i=d.useMemo(()=>{if(e.valuesForSelect&&e.valuesForSelect.length>0)return 200;switch(e.type){case"NUM":return 80;case"STR":return 200;case"BIT":return 50;case"DT":return 100;default:return 100}},[e.type,e.valuesForSelect]);return n.jsxRuntimeExports.jsxs("th",{ref:a,className:n.classNames("table-head",de.tableHead),onClick:()=>{const l=t===e.field?r:null;if(l==="asc"){o(e.field,"desc");return}if(l==="desc"){o(e.field,null);return}o(e.field,"asc")},children:[n.jsxRuntimeExports.jsx(Dv,{column:e,children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[e.label,t===e.field&&n.jsxRuntimeExports.jsx(s,{icon:r==="asc"?"chevron-up":"chevron-down"})]})}),n.jsxRuntimeExports.jsx(rl,{cellRef:a,defaultWidth:i})]})},_v=({schema:e,items:t,onEditItem:r,onDeleteItem:o,onCreateItem:s,filters:a,setFilter:i,sortByField:l,sortByType:c,setSortBy:p,selectedMaster:u,customPickers:m,appDetail:f})=>{const{texts:{dynamicForms:x}}=d.useContext(n.LuminusComponentsContext),[g,b]=d.useState([]);return d.useEffect(()=>{var v,h,y;b([...((y=(h=(v=e.columns)==null?void 0:v.filter(R=>!R.hidden))==null?void 0:h.filter(R=>e.masterReference?R.field!==e.masterReferenceColumn:!0))==null?void 0:y.map(R=>{var j;return{label:R.caption??"",width:100,description:R.description??null,field:R.field??"",type:R.type,readOnly:R.readOnly,valuesForSelect:((j=R.values)==null?void 0:j.filter(E=>R.valuesFilteredByMaster?E.masterValue===u:!0).map(E=>({id:E.id??"",name:E.name})))??void 0,multiChoice:R.multiChoice??!1,multiChoiceSeparator:R.multiChoiceSeparator??null}}))??[]])},[e,u]),n.jsxRuntimeExports.jsxs("table",{id:`dynamic-table-${e.id}`,className:n.classNames("table table-borderless luminus-df-table",de.table),children:[n.jsxRuntimeExports.jsxs("thead",{className:n.classNames("text-nowrap table-header",de.stickyTop,de.tableHeader),children:[n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row",de.tableRow),children:[n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyFirst)}),g.map(v=>n.jsxRuntimeExports.jsx(Iv,{column:v,sortByField:l,sortByType:c,setSortBy:p},`${e.id}-${v.field}`)),n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyLast)})]}),n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row filters-row",de.tableRow,de.filtersRow),children:[n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyFirst)}),g.map(v=>n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead),children:v.valuesForSelect&&v.valuesForSelect.length>0||v.type==="BIT"?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{InputContainer:n.NoInputContainer,withoutLabel:!0,size:"sm",value:a[v.field]??"",onChange:h=>i(v.field,(h==null?void 0:h.toString())??null),options:v.type==="BIT"?[{id:1,name:x.yes},{id:0,name:x.no}]:v.valuesForSelect??[],isNumber:v.type==="BIT",showClearIcon:!0,dropdownWidth:200})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.TextInput,{InputContainer:n.NoInputContainer,withoutLabel:!0,size:"sm",type:v.type==="NUM"?"number":v.type==="DT"?"date":"text",value:a[v.field]??"",onChange:h=>i(v.field,(h==null?void 0:h.toString())??null)})})},`${e.id}-${v.field}`)),n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyLast)})]})]}),n.jsxRuntimeExports.jsxs("tbody",{className:n.classNames("table-body",de.tableBody),children:[t.filter(v=>v[e.primaryKey??""]).map(v=>n.jsxRuntimeExports.jsx(Rv,{schema:e,columns:g,setColumns:b,initialItem:v,onEdit:r,onDelete:o,customPickers:m,appDetail:f},`${e.id}-${v[e.primaryKey??""].value}`)),n.jsxRuntimeExports.jsx(Cv,{schema:e,columns:g,setColumns:b,onCreate:s,customPickers:m})]})]})},Ov=({master:e,onChange:t,options:r,label:o})=>n.jsxRuntimeExports.jsx("div",{style:{minWidth:"200px"},children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:o,value:e,onChange:s=>t(s?s.toString():null),options:r,size:"sm"})}),Tv="_pagination_gujwe_1",Ms={pagination:Tv},Ls={appDetail:"/settings/:id"},at={apiSchemaGet:"/dynamicForms/schema",apiDataGet:"/dynamicForms/data",apiItemPost:"/dynamicForms/update",apiItemDelete:"/dynamicForms/delete",apiItemCreate:"/dynamicForms/insert",apiExportGet:"/dynamicForms/export"},kv=({id:e,page:t,setPage:r,filters:o,setFilter:s,sortByField:a,sortByType:i,setSortBy:l,appUrls:{appDetail:c=Ls.appDetail}=Ls,apiUrls:{apiSchemaGet:p=at.apiSchemaGet,apiDataGet:u=at.apiDataGet,apiItemPost:m=at.apiItemPost,apiItemDelete:f=at.apiItemDelete,apiItemCreate:x=at.apiItemCreate,apiExportGet:g=at.apiExportGet}=at,customPickers:b})=>{var Re,Ve,$e,xt,fo,xo,go;const{texts:{dynamicForms:v},ProjectIconComponent:h}=d.useContext(n.LuminusComponentsContext),y=n.useAxios(),{startLoading:R,stopLoading:j}=d.useContext(n.LoadingContext),[E,S]=d.useState(null),[D,I]=d.useState(null),[w,_]=d.useState(null),[T,A]=d.useState(null),[C,O]=d.useState(!1),{addNotification:F}=n.useNotifications(),[P,B]=d.useState([]),{confirm:G}=n.useConfirm(),L=20,$=L+1,U=T?Math.ceil(T.length/L):1,q=t?t>1:!1,X=t?t<U:!1,Q=t?(t-1)*L:0,le=t?t*L:L,V=d.useMemo(()=>T?T.length>$:!1,[T,$]),Y=d.useMemo(()=>V?(T==null?void 0:T.slice(Q,le))??null:T??null,[V,T,Q,le]),[re,fe]=Nt.useSearchQueryState("masterId",null,"string"),[te,k]=d.useState(re);d.useEffect(()=>{S(null),I(null),O(!1),B([])},[e]),d.useEffect(()=>{re!==null&&(k(re),fe(null))},[re,e,fe]);const Z=d.useCallback(async()=>{R("dynamicFormSchema"),await y.get(`${p}?id=${e}`).then(({data:K})=>{S(K),j("dynamicFormSchema")}).catch(()=>j("dynamicFormSchema"))},[y,e,R,j,p]),ve=d.useCallback(async()=>{var K;if(!(E===null||((K=E.id)==null?void 0:K.toString())!==e)){if(E.masterReference&&!te){I([]);return}R("dynamicFormData"),await y.get(`${u}?id=${e}&showArchive=${C}${E.masterReference?`&master=${te}`:""}`).then(({data:ae})=>{const me=ae.map(ie=>{var he;return Object.fromEntries(((he=E.columns)==null?void 0:he.filter(be=>be.field).map(be=>[be.field,{value:ie[be.field??""],defaultValue:ie[be.field??""]}]))??[])});I(me),j("dynamicFormData")}).catch(()=>j("dynamicFormData"))}},[y,e,E,R,j,C,te,u]),_e=d.useCallback(async()=>{var K;E===null||((K=E.id)==null?void 0:K.toString())!==e||E.masterReference&&!te||(R("dynamicFormExport"),await y.get(`${g}?id=${e}&showArchive=${C}${E.masterReference?`&master=${te}`:""}`,{responseType:"blob"}).then(ae=>n.saveFileFromResponse(ae,{fallbackName:`export-${e}`})).finally(()=>j("dynamicFormExport")))},[y,e,E,R,j,C,te,g]),Ae=d.useCallback(async K=>(R("dynamicFormEdit"),y.post(`${m}?id=${e}`,K).then(()=>(j("dynamicFormEdit"),B([]),!0)).catch(ae=>(j("dynamicFormEdit"),B(n.extractErrorsFromResponse(ae)),!1))),[y,e,R,j,m]),qe=d.useCallback(async K=>(R("dynamicFormDelete"),y.delete(`${f}?id=${e}&pk=${K}`).then(()=>(j("dynamicFormDelete"),B([]),!0)).catch(ae=>(j("dynamicFormDelete"),B(n.extractErrorsFromResponse(ae)),!1))),[y,e,R,j,f]),W=d.useCallback(async K=>(R("dynamicFormCreate"),y.post(`${x}?id=${e}`,K).then(({data:ae})=>(j("dynamicFormCreate"),B([]),ae)).catch(ae=>(j("dynamicFormCreate"),B(n.extractErrorsFromResponse(ae)),null))),[y,e,R,j,x]),M=d.useCallback(async K=>{E&&await Ae(E.masterReference?{...K,[E.masterReferenceColumn??""]:te}:K)&&(F(v.editSuccess,"success"),I(ae=>ae&&ae.map(me=>{var ie;return((ie=me[(E==null?void 0:E.primaryKey)??""])==null?void 0:ie.value)===K[(E==null?void 0:E.primaryKey)??""]?Ps(K,E):me})))},[F,Ae,E,te,v]),z=d.useCallback(async K=>{await G(v.deleteConfirm)&&await qe(K)&&(F(v.deleteSuccess,"success"),I(ae=>ae&&ae.filter(me=>{var ie;return((ie=me[(E==null?void 0:E.primaryKey)??""])==null?void 0:ie.value)!==K})))},[F,qe,v,G,E]),ee=d.useCallback(async K=>{if(!E)return!1;const ae=await W(E.masterReference?{...K,[E.masterReferenceColumn??""]:te}:K);if(ae!==null){F(v.createSuccess,"success");const me=Ps(K,E);return me[(E==null?void 0:E.primaryKey)??""]={value:ae,defaultValue:ae},I(ie=>[...ie??[],me]),!0}return!1},[F,W,v,E,te]),xe=K=>{K>U?r(U):K<1&&r(1),r(K)},se=d.useCallback(()=>{if(!D||!E){_(null);return}const K=D.filter(ae=>Object.entries(o).every(([me,ie])=>{var _t,Ot,Tt;if(ie===null)return!0;const he=(_t=ae[me])==null?void 0:_t.value;if(he==null)return!1;const be=(Ot=E.columns)==null?void 0:Ot.find(an=>an.field===me),Dt=be==null?void 0:be.type,It=(be==null?void 0:be.values)&&((Tt=be==null?void 0:be.values)==null?void 0:Tt.length)>0;if(!Dt)return!1;switch(Dt){case"STR":return It?he===ie:he.toString().toLowerCase().includes(ie.toLowerCase());case"NUM":return It?Number(he)===Number(ie):he.toString().toLowerCase().includes(ie.toLowerCase());case"DT":return he.toString().toLowerCase().includes(ie.toLowerCase());case"BIT":return Number(he)===Number(ie);default:return he.toString().toLowerCase().includes(ie.toLowerCase())}}));_(K)},[D,o,E]),J=d.useCallback(()=>{if(!w||!E){A([]);return}if(!a){A(w);return}A([...w].sort((K,ae)=>{var Dt,It,_t,Ot,Tt,an;const me=((It=(Dt=K[a])==null?void 0:Dt.value)==null?void 0:It.toString())??"",ie=((Ot=(_t=ae[a])==null?void 0:_t.value)==null?void 0:Ot.toString())??"",he=E.columns.find(Ue=>Ue.field===a),be=he==null?void 0:he.type;if(!he||!be||!me&&!ie)return 0;if(!me)return 1;if(!ie)return-1;if(he.values&&he.values.length>0){const Ue=((Tt=he.values.find(An=>{var kt;return((kt=An.id)==null?void 0:kt.toString())===me}))==null?void 0:Tt.name)??"",Ke=((an=he.values.find(An=>{var kt;return((kt=An.id)==null?void 0:kt.toString())===ie}))==null?void 0:an.name)??"";return i==="asc"?Ue.localeCompare(Ke):Ke.localeCompare(Ue)}if(be==="NUM"){const Ue=Number(me),Ke=Number(ie);return i==="asc"?Ue-Ke:Ke-Ue}if(be==="DT"){const Ue=n.parseISO(me==null?void 0:me.toString()).getTime(),Ke=n.parseISO(ie==null?void 0:ie.toString()).getTime();return i==="asc"?Ue-Ke:Ke-Ue}return i==="asc"?me.toString().localeCompare(ie.toString()):ie.toString().localeCompare(me.toString())}))},[w,E,a,i]);return d.useEffect(()=>{Z()},[Z]),d.useEffect(()=>{ve()},[ve]),d.useEffect(()=>{se()},[se]),d.useEffect(()=>{J()},[J]),d.useEffect(()=>{V?t||r(1):T&&r(null)},[T,V,t,r]),d.useEffect(()=>{!V||!t||(t>U&&r(U),t<1&&r(1))},[t,V,U,r]),n.jsxRuntimeExports.jsxs("div",{className:"h-100 w-100 d-flex flex-column",children:[n.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex justify-content-between align-items-start",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:(E==null?void 0:E.name)??""}),(E==null?void 0:E.masterReference)&&n.jsxRuntimeExports.jsx(Ov,{label:((Ve=(Re=E.columns)==null?void 0:Re.find(K=>K.field===E.masterReferenceColumn))==null?void 0:Ve.caption)??"",options:((xt=($e=E.columns)==null?void 0:$e.find(K=>K.field===E.masterReferenceColumn))==null?void 0:xt.values)??[],master:te,onChange:K=>k(K)})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[(fo=E==null?void 0:E.slaves)==null?void 0:fo.map((K,ae)=>{var me;return n.jsxRuntimeExports.jsxs(n.ContextButton,{as:"link",href:`${oe.generatePath(c,{id:(me=K.id)==null?void 0:me.toString()})}?type=dynamic-form`,children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center",children:[E.slaves.length>1?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:ae+1}):null,n.jsxRuntimeExports.jsx(n.MdOutlineSubdirectoryArrowRight,{})]}),K.name]},K.id)}),n.jsxRuntimeExports.jsxs(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:[n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>O(!C),children:C?v.hideArchived:v.showArchived}),n.jsxRuntimeExports.jsx(n.DropdownDivider,{}),n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:_e,icon:n.jsxRuntimeExports.jsx(h,{icon:"file-download"}),children:v.downloadExport})]})]})]}),(E==null?void 0:E.description)&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"mb-3",children:E==null?void 0:E.description}),E!=null&&E.masterReference&&!te?n.jsxRuntimeExports.jsx(n.Alert,{variant:"warning",children:v.selectMaster(((go=(xo=E.columns)==null?void 0:xo.find(K=>K.field===E.masterReferenceColumn))==null?void 0:go.caption)??"").toLowerCase()}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[E&&P.length>0&&n.jsxRuntimeExports.jsx("div",{className:"mb-2",children:n.jsxRuntimeExports.jsx(sv,{errors:P,schema:E})}),E&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("div",{className:n.classNames("rounded border overflow-auto",Ms.tableContainer),children:n.jsxRuntimeExports.jsx(_v,{schema:E,items:!V&&T&&(T==null?void 0:T.length)>$?[]:(V?Y:T)??[],onEditItem:M,onDeleteItem:z,onCreateItem:ee,filters:o,setFilter:s,sortByField:a,sortByType:i,setSortBy:l,selectedMaster:(te==null?void 0:te.toString())??null,customPickers:b,appDetail:c})}),V&&t&&n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ms.pagination,"d-flex align-items-center gap-3 p-1 border-bottom border-start border-end rounded"),children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(1),disabled:!q,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-double-left"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(t-1),disabled:!q,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-left"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(t+1),disabled:!X,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-right"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(U),disabled:!X,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-double-right"})})]}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[v.tablePage," ",t," ",v.tablePageFrom," ",U]})]})]})]})]})},Fs={appDetail:"/settings/:id"},Vs={apiDynamicFormsGet:"/dynamicForms"},Pv=({item:e,children:t})=>e.description?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:e.description??"",children:n.jsxRuntimeExports.jsx("div",{children:t})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:t}),Av=({activeId:e,otherForms:t=[],groupsDefs:r=[],searchQuery:o,fullSize:s,appUrls:{appDetail:a=Fs.appDetail}=Fs,apiUrls:{apiDynamicFormsGet:i=Vs.apiDynamicFormsGet}=Vs})=>{const l=n.useAxios(),{startLoading:c,stopLoading:p}=d.useContext(n.LoadingContext),[u,m]=d.useState(null),[f]=Nt.useSearchQueryState("search",""),x=d.useMemo(()=>[...(u==null?void 0:u.map(v=>({...v,type:"dynamic-form"})))??[],...t].filter(v=>n.stringSearchWithin(v.name,o)||n.stringSearchWithin(v.description,o)).sort((v,h)=>(v.name??"").localeCompare(h.name??""))??[],[u,t,o]),g=d.useMemo(()=>r.map(v=>({id:v.id,name:v.name??"",items:x.filter(h=>h.group===v.id)})).filter(v=>v.items.length>0),[r,x]),b=d.useCallback(async()=>{c("dynamicForms"),await l.get(i).then(({data:v})=>{m(v),p("dynamicForms")}).catch(()=>p("dynamicForms"))},[l,c,p,i]);return d.useEffect(()=>{!u&&b()},[b,u]),x.length>0?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx("div",{className:"w-auto list-group forms-items overflow-x-hidden",children:g.map(v=>n.jsxRuntimeExports.jsx(pt,{title:v.name,defaultOpen:!0,children:v.items.map(h=>{var y,R,j,E;return s?n.jsxRuntimeExports.jsxs(oe.Link,{to:`${oe.generatePath(a,{id:(y=h.id)==null?void 0:y.toString()})}?type=${h.type}&search=${f??""}`,className:`text-nowrap list-group-item list-group-item-action ${(e==null?void 0:e.toString())===((R=h.id)==null?void 0:R.toString())?"active":""}`,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:h.name}),h.description&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-muted mt-2",children:h.description})]},h.id):n.jsxRuntimeExports.jsx(Pv,{item:h,children:n.jsxRuntimeExports.jsx(oe.Link,{to:`${oe.generatePath(a,{id:(j=h.id)==null?void 0:j.toString()})}?type=${h.type}&search=${f??""}`,className:`text-nowrap list-group-item list-group-item-action ${(e==null?void 0:e.toString())===((E=h.id)==null?void 0:E.toString())?"active":""}`,children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:h.name})})},h.id)})},v.id))})}):null},Bv=({label:e,to:t,value:r})=>n.jsxRuntimeExports.jsxs(n.RowLabelInput,{label:e,children:[n.jsxRuntimeExports.jsx("input",{disabled:!0,className:"form-control d-none"}),t?n.jsxRuntimeExports.jsx(oe.Link,{to:t,className:"border-bottom luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:r}):n.jsxRuntimeExports.jsx("div",{className:"luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:r})]}),Mv=()=>{const{localizationContext:e}=d.useContext(n.LuminusComponentsContext),{language:t,setLanguage:r}=d.useContext(e),o=s=>{r(s)};return n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:s=>{o(t==="cz"?"en":t==="en"?"de":"cz"),s.stopPropagation()},children:t==="cz"?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"CZ"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"EN"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"DE"})]}):t==="en"?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"EN"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"DE"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"CZ"})]}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"DE"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"CZ"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"EN"})]})})},Lv=({controlId:e,...t})=>n.jsxRuntimeExports.jsx(n.Form.Group,{controlId:e,...t}),Fv=({employeeId:e,alt:t,noPhotoImage:r,cafmApiUrl:o,showLargeInLightBox:s=!1})=>{const{user:a}=d.useContext(n.UserContext),{photoPath:i,photoPathSm:l}=Nt.useEmployeePhotoPath(e);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e&&n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:s?n.jsxRuntimeExports.jsx(Fi,{baseUrl:o,customToken:a.cafmToken??void 0,photos:[{id:e.toString(),alt:t??"",isDefault:!0,smSrc:l,lgSrc:i}],placeholder:r,ImgComponent:Rr}):n.jsxRuntimeExports.jsx(Rr,{baseUrl:o,customToken:a.cafmToken??void 0,src:l,alt:t,placeholder:r,className:"rounded w-100"})})})},Vv=({text:e,setText:t,onSearchButtonClick:r,className:o})=>{const s=a=>{t(a)};return n.jsxRuntimeExports.jsxs(hn,{className:`${o}`,children:[n.jsxRuntimeExports.jsx(n.Form.Control,{value:e,onChange:a=>t(a.target.value)}),e&&n.jsxRuntimeExports.jsx(n.Button,{onClick:()=>s(""),variant:"link",className:"border text-muted",children:n.jsxRuntimeExports.jsx(n.MdClear,{})}),n.jsxRuntimeExports.jsx(n.Button,{onClick:()=>r&&r(e),variant:"link",className:"border",children:n.jsxRuntimeExports.jsx(n.MdSearch,{})})]})},$v=({value:e,numberPrefix:t,numberSuffix:r,decimalScale:o=2,fixedDecimalScale:s=!1,className:a})=>n.jsxRuntimeExports.jsx(io,{value:e,displayType:"text",thousandSeparator:" ",decimalScale:o,fixedDecimalScale:s,defaultValue:"",prefix:t,suffix:r,className:a,decimalSeparator:","}),Gv=({data:e,keys:t,colors:r,tooltipLabel:o})=>n.jsxRuntimeExports.jsx(n.Re,{data:e.map(s=>({name:s.name,...s.values})),indexBy:"name",keys:t,margin:{top:20,right:50,bottom:30,left:150},layout:"horizontal",colors:r,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:o}),Wv="_hrText_xxish_1",Uv={hrText:Wv},ol=({text:e})=>n.jsxRuntimeExports.jsx("hr",{className:n.classNames(Uv.hrText),"data-content":e}),Hv="_cards-group_1gvpy_1",zv="_group-title_1gvpy_1",qv="_group-content_1gvpy_8",Yv="_report-card_1gvpy_12",Kv="_card-title-link_1gvpy_22",ht={"cards-group":"_cards-group_1gvpy_1",cardsGroup:Hv,"group-title":"_group-title_1gvpy_1",groupTitle:zv,"group-content":"_group-content_1gvpy_8",groupContent:qv,"report-card":"_report-card_1gvpy_12",reportCard:Yv,"card-title-link":"_card-title-link_1gvpy_22",cardTitleLink:Kv},Xv=({reportsLastUsedGet:e,getReportRoute:t,getReportName:r})=>{const{texts:{reports:o}}=d.useContext(n.LuminusComponentsContext),{data:s}=Se.useGetApiData(e);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(pt,{defaultOpen:!0,title:o.index.lastUsedReports,children:n.jsxRuntimeExports.jsx(n.ListGroup,{children:s&&s.map(a=>a.versions.map(i=>n.jsxRuntimeExports.jsxs(n.ListGroupItem,{as:oe.Link,to:t(a,i.id),className:"p-1 px-2",action:!0,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-uppercase",children:r(a)}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"caption",className:"d-flex justify-content-between align-items-center gap-3 text-dark",children:[i.name,n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-end opacity-50",children:n.formatDate(i.lastUsedDate)})]})]})))})})})},$s=({reportVersion:e,getReportRoute:t,report:r})=>n.jsxRuntimeExports.jsx(n.ListGroupItem,{as:oe.Link,to:t(r,e.id),className:"p-1 px-2",action:!0,children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"d-flex justify-content-between align-items-center gap-3",children:n.jsxRuntimeExports.jsx("div",{className:"link",children:e.name})})}),fn=5,Gs=({versionsList:e,getReportRoute:t,report:r})=>{const{ProjectIconComponent:o}=d.useContext(n.LuminusComponentsContext),[s,a]=d.useState(!0),i=d.useMemo(()=>e.length<=fn?e:e.slice(0,fn-1),[e]),l=d.useMemo(()=>e.length<=fn?[]:e.slice(fn-1),[e]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(n.ListGroup,{children:[i.map(c=>n.jsxRuntimeExports.jsx($s,{reportVersion:c,getReportRoute:t,report:r})),s?null:l.map(c=>n.jsxRuntimeExports.jsx($s,{reportVersion:c,getReportRoute:t,report:r})),l.length>0&&n.jsxRuntimeExports.jsx(n.ListGroupItem,{onClick:()=>a(c=>!c),className:"py-0 d-flex justify-content-center",children:s?n.jsxRuntimeExports.jsx(o,{icon:"chevron-down"}):n.jsxRuntimeExports.jsx(o,{icon:"chevron-up"})})]})})},Qv=({report:e,getReportRoute:t,getReportName:r,getReportDescription:o})=>{const s=d.useMemo(()=>e.versionsCustom.length===0?{xs:12}:{xs:12,sm:6,md:12,lg:12,xl:12,xxl:6},[e.versionsCustom.length]);return n.jsxRuntimeExports.jsx("div",{className:"col-12 col-lg-4",children:n.jsxRuntimeExports.jsxs(Gt,{title:n.jsxRuntimeExports.jsx(oe.Link,{to:t(e),className:n.classNames(ht.cardTitleLink,"w-100 text-uppercase fw-normal"),children:r(e)}),headerClassName:"bg-darker",className:n.classNames(ht.reportCard,"shadow h-100 d-flex flex-column"),contentClassName:"d-flex flex-column gap-2 h-100",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"px-2",children:o(e)}),n.jsxRuntimeExports.jsxs(Ir,{className:"h-100 g-2",children:[e.versions&&e.versions.length>0?n.jsxRuntimeExports.jsx(n.Col,{...s,children:n.jsxRuntimeExports.jsx(Gs,{versionsList:e.versions,getReportRoute:t,report:e})}):null,e.versionsCustom&&e.versionsCustom.length>0?n.jsxRuntimeExports.jsx(n.Col,{...s,children:n.jsxRuntimeExports.jsx(Gs,{versionsList:e.versionsCustom,getReportRoute:t,report:e})}):null]})]})},e.id)},sr={reportsGet:"/reports",reportsLastUsedGet:"/reports/last-used"},Jv=({groups:e,apiUrls:{reportsGet:t=sr.reportsGet,reportsLastUsedGet:r=sr.reportsLastUsedGet}=sr,getReportName:o,getReportDescription:s,getGroupTitle:a,getReportRoute:i})=>{const{texts:{reports:l}}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState(""),[u]=n.a(c,500),m=d.useCallback(v=>v.map(h=>({...h,groupId:!h.groupId||h.groupId===0||!e.some(y=>y===h.groupId)?999:h.groupId})),[e]),{data:f}=Se.useGetApiData(t,{dataTransformer:m}),x=d.useMemo(()=>{if(f===null)return{};const v={};return e.forEach(h=>{v[h]=f.filter(y=>y.groupId===h&&(n.stringSearchWithin(o(y),u)||n.stringSearchWithin(s(y),u)||y.versions.some(R=>n.stringSearchWithin(R.name,u))||y.versionsCustom.some(R=>n.stringSearchWithin(R.name,u))))}),v},[u,e,f,s,o]),g=d.useMemo(()=>e.filter(v=>{var h;return((h=x[v])==null?void 0:h.length)>0}),[x,e]),{isMobile:b}=n.useWindowSize();return n.jsxRuntimeExports.jsxs(n.PageContainer,{unavailableOnMobile:!0,variant:"fullScreen",sideContent:n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(Xv,{reportsLastUsedGet:r,getReportName:o,getReportRoute:i})}),children:[n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(n.Form.Control,{className:"mb-3",type:"search",value:c,onChange:v=>{var h;return p(((h=v.target)==null?void 0:h.value)??"")},placeholder:l.index.search})}),n.jsxRuntimeExports.jsx("div",{className:"overflow-x-hidden luminus-thin-scrollbar luminus-reports-index",children:g.map(v=>n.jsxRuntimeExports.jsxs("div",{className:n.classNames(ht.cardsGroup,{[ht.mobile]:b}),children:[n.jsxRuntimeExports.jsx("div",{className:n.classNames("group-title z-1",ht.groupTitle),children:n.jsxRuntimeExports.jsx(ol,{text:a(v)})}),n.jsxRuntimeExports.jsx("div",{className:n.classNames(ht.groupContent),children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("row gx-3 gy-3"),children:x[v].map(h=>n.jsxRuntimeExports.jsx(Qv,{report:h,getReportRoute:i,getReportName:o,getReportDescription:s}))})})]},v))})]})},Zv="_mini-detail-popover_obryf_1",eh="_sm_obryf_5",th="_lg_obryf_9",Ws={"mini-detail-popover":"_mini-detail-popover_obryf_1",miniDetailPopover:Zv,sm:eh,lg:th},nh=({children:e,useMiniDetail:t,miniDetailProps:r,placement:o="bottom",trigger:s=["hover"],delayMs:a=500})=>{const{user:i}=d.useContext(n.UserContext),[l,c]=d.useState(!1),{isLoading:p,detail:u,heading:m,tooltipWidth:f}=t({...r,enabled:l&&!(i!=null&&i.external)}),x=d.useRef(null);return n.jsxRuntimeExports.jsx("div",{onMouseEnter:()=>{x.current=window.setTimeout(()=>c(!0),a)},onMouseLeave:()=>{x.current&&clearTimeout(x.current),c(!1)},children:l&&!(i!=null&&i.external)?n.jsxRuntimeExports.jsx(n.HtmlTooltip,{heading:p?n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"placeholder-glow",children:n.jsxRuntimeExports.jsx("span",{className:"placeholder bg-primary col-6"})}):m,content:n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:p?n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"placeholder-glow",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-5"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-3"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-2"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-6"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-3"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-5"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"})]})]}):u}),placement:o,trigger:s,popoverClassName:n.classNames(Ws.miniDetailPopover,Ws[f]),children:n.jsxRuntimeExports.jsx("div",{children:e})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e})})},rh=({label:e,value:t})=>n.jsxRuntimeExports.jsxs("div",{className:"py-1 border-bottom d-flex gap-3 align-items-center justify-content-between",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:e}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-end",children:t??"-"})]}),oh=({route:e,variant:t="link",children:r,className:o,disabled:s=!1,routeParams:a})=>{const{checkUserHasPermissions:i}=n.usePermissions(),l=d.useMemo(()=>s||!(e.permissions===void 0||i(e.permissions)),[i,s,e.permissions]),c=r??e.name,p=d.useMemo(()=>{switch(t){case"primaryButton":return n.PrimaryButton;case"contextButton":return n.ContextButton;case"iconButton":return n.IconButton;default:return d.Fragment}},[t]);return t==="link"?n.jsxRuntimeExports.jsx(oe.Link,{to:ze.generateApiPath(e.route,a),className:n.classNames("link font-size-14",l?"disabled":void 0,o),children:c}):n.jsxRuntimeExports.jsx(p,{as:"link",href:ze.generateApiPath(e.route,a),className:n.classNames(l?"disabled":void 0,o),children:c})},sh=({id:e,getTimelineApiPath:t})=>{var i;const{texts:{approval:r},ProjectIconComponent:o}=d.useContext(n.LuminusComponentsContext),{data:s}=Se.useGetApiData(t(e)),a=d.useCallback((l,c=!1)=>{switch(l){case n.ApprovalState.Zamitnuto:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateRejected,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"cancel-simple",className:c?"text-danger":"bg-danger rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Nevyrizeno:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateUnrealized,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"pending",className:c?"text-secondary":"bg-secondary rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Odebrano:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateRemoved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"cancel-simple",className:c?"text-warning":"bg-warning rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Schvaleno:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateApproved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"check-simple",className:c?"text-success":"bg-success rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});default:return null}},[r,o]);return n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(Gi,{dontSort:!0,steps:[s!=null&&s.startDate?{date:n.parseISO(s.startDate),title:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:r.startDate}),dateFormat:"date"}:null,...((i=s==null?void 0:s.approvalLevels)==null?void 0:i.map(l=>{var c;return{date:void 0,title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center justify-content-between w-100",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"fw-bold",children:r.getLevelText(l.index)}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-end",children:r.getThresholdText(l.threshold)})]}),icon:a(l.state),text:l.approvers&&((c=l.approvers)==null?void 0:c.length)>0?n.jsxRuntimeExports.jsx("div",{className:"list-group",children:l.approvers.map(p=>n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center gap-2",children:[p.automaticApproval?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.autoApproved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx("div",{className:"text-success",style:{fontSize:"14px"},children:"A"})})}):a(p.state,!0),n.jsxRuntimeExports.jsxs("div",{className:"text-end",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:p.delegatedApprover?p.delegatedApprover.name:p.approver.name}),p.responseDate?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:n.formatDate(p.responseDate)}):null]})]})},p.id))}):null}}))??[],s!=null&&s.finishedDate?{date:n.parseISO(s.finishedDate),title:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:r.finishedDate}),dateFormat:"date"}:null].filter(l=>l!==null).map(l=>l)})})},ah="_state-switch_uc6su_1",ih="_switch-button_uc6su_7",lh="_bg-layer_uc6su_17",ch="_text-layer_uc6su_26",uh="_left_uc6su_38",dh="_right_uc6su_41",ph="_active_uc6su_44",Ge={"state-switch":"_state-switch_uc6su_1",stateSwitch:ah,"switch-button":"_switch-button_uc6su_7",switchButton:ih,"bg-layer":"_bg-layer_uc6su_17",bgLayer:lh,"text-layer":"_text-layer_uc6su_26",textLayer:ch,left:uh,right:dh,active:ph},mh=({isLeftStateActive:e,toggleState:t,leftStateLabel:r,rightStateLabel:o})=>n.jsxRuntimeExports.jsxs("div",{role:"button",className:n.classNames("gap-1",Ge.stateSwitch),onClick:t,children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:n.classNames(Ge.switchButton,Ge.left,{[Ge.active]:e}),children:[n.jsxRuntimeExports.jsx("div",{className:Ge.bgLayer}),n.jsxRuntimeExports.jsx("div",{className:Ge.textLayer,children:r})]}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:n.classNames(Ge.switchButton,Ge.right,{[Ge.active]:!e}),children:[n.jsxRuntimeExports.jsx("div",{className:Ge.bgLayer}),n.jsxRuntimeExports.jsx("div",{className:Ge.textLayer,children:o})]})]}),fh=({showArchived:e,BnfTableComponent:t,tableIdentifier:r,detailRoute:o})=>{const{texts:{substitutions:s}}=d.useContext(n.LuminusComponentsContext),{data:a}=Se.useGetApiData(`/permissions/substitutions?archived=${e}`),i=d.useMemo(()=>({enable:!0,column:"archived"}),[]),l=d.useMemo(()=>[{fieldName:"employeeName",caption:s.index.employeeName,type:"string",onMobile:{isIdentifier:!0}},{fieldName:"substituteName",caption:s.index.substitute,type:"string",onMobile:{isIdentifier:!0}},{fieldName:"from",caption:s.index.from,type:"date",onMobile:{displayGroup:s.index.generalInfo}},{fieldName:"to",caption:s.index.to,type:"date",onMobile:{displayGroup:s.index.generalInfo}},{fieldName:"archived",caption:"Archived",type:"boolean",isVisible:!1},{fieldName:"id",caption:"",type:"number",width:50,isVisible:!1}],[s]),c=d.useCallback(p=>oe.generatePath(o,{id:p.id.toString()}),[o]);return n.jsxRuntimeExports.jsx(t,{data:a??[],columnsDef:l,tableId:r,useSearchState:!0,paginationMode:"enabled",useScrollableContainer:!0,archiveHighlighting:i,rowNavigation:c})},xh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,resetsFields:o,type:s,required:a,hidden:i,disabled:l,withoutLabel:c,hint:p,onChange:u,className:m})=>{const{register:f,formState:x,setValue:g}=De.useFormContext(),b=n.useFormDisabledContext({falseIfNotInit:!0}),[v,h]=d.useState(void 0),[y,R]=d.useState(!1);d.useEffect(()=>{const S=t.split(".");let D=x.errors;S.forEach(I=>{D!==void 0&&(D=D[I])}),h(D)},[x,t]);const j=d.useMemo(()=>l||b,[l,b]),E=v!==void 0;return d.useEffect(()=>{x.isSubmitted&&R(!0)},[x]),n.jsxRuntimeExports.jsxs(e,{isForCheckInput:!0,hidden:i,label:r??"",required:a,disabled:j,isInvalid:E,withoutLabel:c,hint:p,className:m,children:[n.jsxRuntimeExports.jsx(n.Form.Check,{id:`check-${t}`,type:s??"checkbox",label:`${r}${a?" *":""}`,...f(t,{onChange:S=>{o&&o.forEach(D=>g(D,null,{shouldDirty:!0,shouldValidate:y})),u&&u(S.target.value??null)}}),isInvalid:E,hidden:i,disabled:j,className:"w-100"}),v&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:v.message})]})},gh=({InputContainer:e=n.RowLabelInput,label:t,formField:r,options:o,resetsFields:s,required:a,disabled:i,hidden:l,onChange:c,className:p})=>{const{register:u,formState:m,setValue:f,watch:x}=De.useFormContext(),g=n.useFormDisabledContext({falseIfNotInit:!0}),[b,v]=d.useState(void 0),[h,y]=d.useState(!1),R=d.useMemo(()=>o,[o]),j=d.useMemo(()=>i||g,[i,g]);d.useEffect(()=>{const S=r.split(".");let D=m.errors;S.forEach(I=>{D!==void 0&&(D=D[I])}),v(D)},[m,r]),d.useEffect(()=>{m.isSubmitted&&y(!0)},[m]);const E=b!==void 0;return n.jsxRuntimeExports.jsxs(e,{isForRadioInput:!0,hidden:l,withoutLabel:!t,label:t??"",required:a,disabled:j,isInvalid:E,className:p,children:[R.map(S=>n.jsxRuntimeExports.jsx(n.Form.Check,{id:`radio-${S.id}`,label:S.name,type:"radio",value:S.id??"",checked:x(r)===S.id,...u(r,{onChange:D=>{var I;s&&s.forEach(w=>f(w,null,{shouldDirty:!0,shouldValidate:h})),c&&c((I=D.target)!=null&&I.value?D.target.value.toString():null)}}),isInvalid:E,hidden:l,disabled:j,className:"w-100"},S.id)),b&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:b.message})]})},vh=({label:e,InputContainer:t=n.RowLabelInput,className:r,withoutLabel:o,hidden:s,disabled:a,contactType:i,formField:l,...c})=>{const{watch:p}=De.useFormContext(),u=p(l),m=n.useFormDisabledContext({falseIfNotInit:!0}),f=d.useMemo(()=>a||m,[a,m]);return s?null:n.jsxRuntimeExports.jsx(Hi,{contactType:i,value:u,withoutLabel:o,label:e,className:r,children:n.jsxRuntimeExports.jsx(n.HookFormTextInput,{type:"text",formField:l,InputContainer:t,size:"sm",withoutLabel:!0,className:"flex-grow-1",disabled:f,...c})})},hh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,size:o,defaultSelection:s,resetsFields:a,isNumber:i,required:l,hidden:c,disabled:p,items:u,onSearchQueryChange:m,selectedItemNavigateTo:f,texts:x,dropdownItemsNameWidth:g,isLoading:b,withoutLabel:v,additionalColumns:h,CustomOnChangeComponent:y,icon:R,displayIdAsName:j,onSelect:E,className:S,archiveColumn:D,hint:I,addNewOptionPath:w,refreshOptions:_,MiniDetailComponent:T,miniDetailPlacement:A,suggestedItems:C,suggestedItemsTitle:O})=>{const{formState:F,setValue:P,watch:B,control:G}=De.useFormContext(),L=n.useFormDisabledContext({falseIfNotInit:!0}),[$,U]=d.useState(void 0),[q,X]=d.useState(!1),[Q,le]=d.useState(!1),V=B(t)??null,Y=V===(s==null?void 0:s.id)?s==null?void 0:s.name:B(`${t}-DropdownName`),re=d.useMemo(()=>V==null?null:{id:V??null,name:Y??""},[V,Y]),fe=d.useCallback(()=>{const M=t.split(".");let z=F.errors;M.forEach(ee=>{z!==void 0&&(z=z[ee])}),U(z)},[F,t]),te=d.useCallback(M=>{if((M==null?void 0:M.id)===V)return;if(E&&E(M),a&&a.forEach(ee=>P(ee,null,{shouldDirty:!0,shouldValidate:Q})),M===null){P(t,null,{shouldDirty:!0,shouldValidate:Q}),P(`${t}-DropdownName`,null);return}let z=null;i?z=(M==null?void 0:M.id)!==null&&(M==null?void 0:M.id)!==""?parseInt(M.id.toString(),10):null:z=M.id===null||M.id===void 0||M.id===""?null:M.id,P(t,z,{shouldDirty:!0,shouldValidate:Q}),P(`${t}-DropdownName`,M.name??"")},[P,t,Q,i,a,V,E]),k=d.useCallback(M=>{X(!1),te(M)},[te]),Z=d.useCallback(()=>{X(!1)},[]),ve=d.useRef(null),_e=$!==void 0,Ae=f!==void 0,qe=Ae&&re!==null,W=d.useMemo(()=>p||L,[p,L]);return d.useEffect(()=>{fe()},[fe]),d.useEffect(()=>{F.isSubmitted&&le(!0)},[F]),n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(e,{label:r??"",required:l,disabled:W,hidden:c,withoutLabel:v,isInvalid:_e,inputContainerClassName:n.classNames({"luminus-dropdown-select-open":q}),hint:I,className:S,children:[n.jsxRuntimeExports.jsxs(n.InputAnchorContainer,{currentSelection:re,selectedItemNavigateTo:f,children:[j&&(re==null?void 0:re.name)&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"d-flex justify-content-end mt-2 luminus-dropdown-selection-name",children:re.name}),n.jsxRuntimeExports.jsx(De.Controller,{control:G,name:t,render:()=>n.jsxRuntimeExports.jsx(n.MiniDetailWrapper,{value:V,MiniDetailComponent:T,miniDetailPlacement:A,children:n.jsxRuntimeExports.jsx(n.Form.Select,{size:o,onMouseDown:M=>{M.currentTarget.focus(),M.preventDefault()},onClick:()=>{!Ae&&!W&&X(!0)},ref:ve,value:V??"",onChange:()=>{},isInvalid:_e,hidden:c,className:n.classNames("w-100",{"luminus-dropdown-picker-disabled":W,"luminus-dropdown-picker-link":qe}),children:n.jsxRuntimeExports.jsx("option",{value:V,children:j?V:(Y==null?void 0:Y.length)>0?Y:V})})})}),y||!W&&Ae?n.jsxRuntimeExports.jsxs("div",{className:"custom-picker-button",children:[!y&&!W&&Ae&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"secondary",onClick:M=>{M.preventDefault(),M.stopPropagation(),X(!0)},children:R??n.jsxRuntimeExports.jsx(n.MdOutlineEdit,{})}),y??null]}):null]}),$&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:$.message}),ve.current&&n.jsxRuntimeExports.jsx(n.SimplePicker,{show:q,onCancel:Z,items:u,currentSelection:re,onSelectionChange:k,onSearchQueryChange:m,texts:x,itemsNameWidth:g,additionalColumns:h,displayIdAsName:j,isLoading:b,disabled:W,inputRef:ve,archiveColumn:D,addNewOptionPath:w,refreshOptions:_,suggestedItems:C,suggestedItemsTitle:O})]})})},bh=({InputContainer:e=n.RowLabelInput,label:t,formField:r,hidden:o,required:s,placeholder:a,disabled:i,showClearIcon:l,resetsFields:c,multiple:p,accept:u,withoutLabel:m,hint:f,className:x})=>{const{watch:g,setValue:b,register:v,formState:h}=De.useFormContext(),y=n.useFormDisabledContext({falseIfNotInit:!0}),[R,j]=d.useState(!1),[E,S]=d.useState(void 0),D=d.useCallback(()=>{b(r,"")},[b,r]),I=d.useCallback(()=>{const T=r.split(".");let A=h.errors;T.forEach(C=>{A!==void 0&&(A=A[C])}),S(A)},[h,r]);d.useEffect(I,[I]),d.useEffect(()=>{h.isSubmitted&&j(!0)},[h]);const w=d.useMemo(()=>i||y,[i,y]),_=E!==void 0;return n.jsxRuntimeExports.jsxs(e,{label:t??"",required:s,disabled:w,hidden:o,withoutLabel:m,isInvalid:_,hint:f,className:x,children:[n.jsxRuntimeExports.jsx(n.FormControl,{type:"file",multiple:p,accept:u.join(", "),placeholder:a??t,isInvalid:_,hidden:o,disabled:w,className:"w-100",...v(r,{onChange:()=>{c&&c.forEach(T=>b(T,null,{shouldDirty:!0,shouldValidate:R}))}})}),l&&g(r)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:D,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),E&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:E.message})]})},sl=({children:e,onStorno:t,noSpacer:r})=>{const{formState:o}=De.useFormContext(),s=n.useFormDisabledContext({falseIfNotInit:!0}),[a,i]=d.useState(!1);return d.useEffect(()=>{i(Object.keys(o.dirtyFields).length>0)},[o]),a?n.jsxRuntimeExports.jsx(ba,{onStorno:t,noSpacer:r,disabled:s,children:e}):null},Cr=({InputContainer:e=n.RowLabelInput,options:t,formField:r,label:o,size:s,resetsFields:a,isNumber:i,required:l,hidden:c,disabled:p,withoutLabel:u,noSortOptions:m,suffixIdToName:f,onSelect:x,className:g,appendCurrentSelectionWithName:b,hint:v,addNewOptionPath:h,refreshOptions:y,MiniDetailComponent:R,miniDetailPlacement:j,selectedItemNavigateTo:E})=>{const{texts:{customSelect:S}}=d.useContext(n.LuminusComponentsContext),{formState:D,setValue:I,watch:w,control:_}=De.useFormContext(),T=n.useFormDisabledContext({falseIfNotInit:!0}),[A,C]=d.useState(void 0),[O,F]=d.useState(!1),[P,B]=d.useState(!1),[G,L]=d.useState(""),$=w(r),U=d.useMemo(()=>t.find(k=>k.id===$)??null,[t,$]),q=d.useCallback(()=>{const k=r.split(".");let Z=D.errors;k.forEach(ve=>{Z!==void 0&&(Z=Z[ve])}),C(Z)},[D,r]),X=d.useCallback(k=>{if((k==null?void 0:k.id)===$)return;if(x&&x(k),a&&a.forEach(ve=>I(ve,null,{shouldDirty:!0,shouldValidate:P})),k===null){I(r,null,{shouldDirty:!0,shouldValidate:P});return}let Z=null;i?Z=(k==null?void 0:k.id)!==null&&(k==null?void 0:k.id)!==""?parseInt(k.id.toString(),10):null:Z=k.id===null||k.id===void 0||k.id===""?null:k.id,I(r,Z,{shouldDirty:!0,shouldValidate:P})},[I,r,i,a,$,P,x]),Q=d.useCallback(k=>{F(!1),X(k)},[X]),le=d.useCallback(k=>{L(k)},[]),V=d.useMemo(()=>p||T,[p,T]);d.useEffect(()=>{q()},[q]),d.useEffect(()=>{D.isSubmitted&&B(!0)},[D]);const Y=d.useCallback(k=>{var Z;return k===null?"":!k.name||k.name.length===0?((Z=k.id)==null?void 0:Z.toString())??"":f?`${k.name} (${k.id})`:k.name},[f]),re=d.useMemo(()=>{const k=t?[...t]:[];return b!==void 0&&$&&(k.some(Z=>Z.id===$)||k.push({id:$,name:b})),k.map(Z=>({id:Z.id,name:Y(Z)})).filter(Z=>n.stringSearchWithin(Z.name,G)).sort((Z,ve)=>m?0:(Z.name??"").localeCompare(ve.name??""))},[t,m,G,Y,b,$]),fe=d.useRef(null),te=A!==void 0;return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(e,{label:o??"",required:l,disabled:V,hidden:c,withoutLabel:u,isInvalid:te,inputContainerClassName:n.classNames({"luminus-dropdown-select-open":O}),hint:v,className:g,children:[n.jsxRuntimeExports.jsx(n.InputAnchorContainer,{currentSelection:U,selectedItemNavigateTo:E,children:n.jsxRuntimeExports.jsx(De.Controller,{control:_,name:r,render:()=>n.jsxRuntimeExports.jsx(n.MiniDetailWrapper,{value:$,MiniDetailComponent:R,miniDetailPlacement:j,children:n.jsxRuntimeExports.jsx(n.Form.Select,{size:s,onMouseDown:k=>{k.currentTarget.focus(),k.preventDefault()},onClick:()=>{F(!0)},ref:fe,value:$??"",onChange:()=>{},isInvalid:te,hidden:c,disabled:V,className:"w-100",children:n.jsxRuntimeExports.jsx("option",{value:(U==null?void 0:U.id)??"",children:Y(U)})})})})}),A&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:A.message}),fe.current&&n.jsxRuntimeExports.jsx(n.SimplePicker,{show:O,onCancel:()=>F(!1),items:re,currentSelection:U??null,onSelectionChange:Q,onSearchQueryChange:le,texts:S,disabled:V,inputRef:fe,autoHideSearch:!0,allItemsLength:t.length,addNewOptionPath:h,refreshOptions:y})]})})},jh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,placeholder:o,size:s,resetsFields:a,showClearIcon:i,clearValue:l,required:c,hidden:p,disabled:u,withoutLabel:m,step:f,stepperStep:x=1,className:g,min:b,max:v,onChange:h,hint:y})=>{const{register:R,formState:j,setValue:E,watch:S}=De.useFormContext(),D=n.useFormDisabledContext({falseIfNotInit:!0}),[I,w]=d.useState(void 0),[_,T]=d.useState(!1),A=d.useCallback((G,L,$)=>{E(G,ze.limitNumber(L,b,v),$)},[v,b,E]),C=d.useCallback(()=>{const G=l??null;A(t,G!==null?Number(G):null,{shouldDirty:!0,shouldValidate:_})},[l,A,t,_]),O=d.useCallback(()=>{const G=t.split(".");let L=j.errors;G.forEach($=>{L!==void 0&&(L=L[$])}),w(L)},[j,t]),F=d.useMemo(()=>u||D,[u,D]);d.useEffect(()=>{O()},[O]),d.useEffect(()=>{j.isSubmitted&&T(!0)},[j]);const P=I!==void 0,B=S(t);return n.jsxRuntimeExports.jsxs(e,{label:r??"",required:c,disabled:F,hidden:p,withoutLabel:m,isInvalid:P,hint:y,className:g,children:[n.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[n.jsxRuntimeExports.jsx(n.Form.Control,{type:"number",placeholder:o??r,size:s,...R(t,{setValueAs:G=>G==null||G===""?null:ze.limitNumber(Number(G),b,v),min:b,max:v,onChange:G=>{var L;a&&a.forEach($=>E($,null,{shouldDirty:!0,shouldValidate:_})),h&&h((L=G.target)!=null&&L.value?Number(G.target.value)??null:null)}}),isInvalid:P,hidden:p,disabled:F,className:"w-100 luminus-numeric-stepper",step:f,min:b,max:v}),n.jsxRuntimeExports.jsx("div",{className:"stepper-icon left",children:!u&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:G=>{G.preventDefault(),G.stopPropagation(),A(t,((B?Number(B):0)-x).toString(),{shouldDirty:!0,shouldValidate:_})},children:n.jsxRuntimeExports.jsx(n.FaMinus,{})})}),n.jsxRuntimeExports.jsx("div",{className:"stepper-icon right",children:!u&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:G=>{G.preventDefault(),G.stopPropagation(),A(t,((B?Number(B):0)+x).toString(),{shouldDirty:!0,shouldValidate:_})},children:n.jsxRuntimeExports.jsx(n.FaPlus,{})})})]}),i&&S(t)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:C,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),I&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:I.message})]})},Eh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,placeholder:o,resetsFields:s,showClearIcon:a,clearValue:i,required:l,hidden:c,disabled:p,withoutLabel:u,step:m,size:f,CustomOnChangeComponent:x,noSelectOnFocus:g,className:b,decimalScale:v=2,fixedDecimalScale:h=!1,numberPrefix:y,numberSuffix:R,min:j,max:E,onChange:S,hint:D})=>{const{formState:I,setValue:w,watch:_,control:T}=De.useFormContext(),A=n.useFormDisabledContext({falseIfNotInit:!0}),[C,O]=d.useState(void 0),[F,P]=d.useState(!1),B=d.useCallback(()=>{const q=i??null;w(t,q!==null?Number(q):null,{shouldDirty:!0,shouldValidate:F})},[i,w,t,F]),G=d.useCallback(()=>{const q=t.split(".");let X=I.errors;q.forEach(Q=>{X!==void 0&&(X=X[Q])}),O(X)},[I,t]),L=d.useMemo(()=>p||A,[p,A]);d.useEffect(()=>{G()},[G]),d.useEffect(()=>{I.isSubmitted&&P(!0)},[I]);const $=_(t);d.useEffect(()=>{E!==void 0&&$>E&&w(t,E),j!==void 0&&$<j&&w(t,j)},[t,$,E,j,w]);const U=C!==void 0;return n.jsxRuntimeExports.jsxs(e,{label:r??"",required:l,disabled:L,hidden:c,withoutLabel:u,isInvalid:U,hint:D,className:b,children:[n.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[n.jsxRuntimeExports.jsx(De.Controller,{control:T,name:t,render:({field:{ref:q,onChange:X,name:Q,value:le}})=>n.jsxRuntimeExports.jsx(io,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:v,fixedDecimalScale:h,prefix:y,suffix:R,defaultValue:"",name:Q,value:le??"",placeholder:o??r,onFocus:V=>{!g&&V.target.select()},onChange:V=>{var fe,te;const Y=parseFloat(((te=(fe=V.target)==null?void 0:fe.value)==null?void 0:te.replaceAll(" ","").replaceAll(",","."))??0);s&&s.forEach(k=>w(k,null,{shouldDirty:!0,shouldValidate:F}));const re=Y==null||Number.isNaN(Y)?null:Number(Y);X(re),S&&S(re)},hidden:c,disabled:L,className:n.classNames("form-control text-end w-100",{"is-invalid":U},{[`form-control-${f}`]:f}),step:m,getInputRef:q,min:j,max:E})}),x&&n.jsxRuntimeExports.jsx("div",{className:"custom-picker-button",children:x})]}),a&&_(t)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:B,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),C&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:C.message})]})},yh=(e,t)=>{const r=n.useAxios(),o=oe.useNavigate(),{startLoading:s,stopLoading:a}=d.useContext(n.LoadingContext),{zDateRequired:i,zNumberRequired:l}=n.useZodSchemaTypes(),{addNotification:c}=n.useNotifications(),{refreshAvailableDelegations:p}=d.useContext(n.DelegationContext),{user:u}=d.useContext(n.UserContext),{texts:{substitutions:{detail:m}}}=d.useContext(n.LuminusComponentsContext),f=n.z.object({id:l(),employeeId:l(),substituteId:l(),from:i(),to:i(),roles:n.z.array(n.z.string())}),x=d.useMemo(()=>({id:(e==null?void 0:e.id)??0,employeeId:(e==null?void 0:e.employeeId)??(u==null?void 0:u.personalNumber)??void 0,substituteId:(e==null?void 0:e.substituteId)??void 0,from:(e==null?void 0:e.from)??n.format(new Date,"yyyy-MM-dd"),to:(e==null?void 0:e.to)??n.format(new Date,"yyyy-MM-dd"),roles:(e==null?void 0:e.roles)??[]}),[e==null?void 0:e.employeeId,e==null?void 0:e.from,e==null?void 0:e.id,e==null?void 0:e.roles,e==null?void 0:e.substituteId,e==null?void 0:e.to,u==null?void 0:u.personalNumber]),g=De.useForm({resolver:n.t(f),defaultValues:x}),b=d.useCallback(async v=>{s("premissions-substitute-submit");try{await r.post("permissions/substitutions",v),c(m.updateSuccess,"success"),p(),o(t)}catch(h){n.hookFormSetServerErrors(g,h)}finally{a("premissions-substitute-submit")}},[c,r,g,o,p,s,a,t,m]);return d.useEffect(()=>{g.reset(x)},[x,g]),{formSchema:f,onSubmit:b,formMethods:g}},Rh=({indexRoute:e})=>{var j;const{id:t}=oe.useParams(),{user:r}=d.useContext(n.UserContext),o=n.useAxios(),s=oe.useNavigate(),{confirm:a}=n.useConfirm(),{texts:{substitutions:{detail:i}}}=d.useContext(n.LuminusComponentsContext),{data:l}=Se.useGetApiData(`/permissions/substitutions/${t}`,{enabled:t!==void 0}),{data:c}=Se.useGetApiData("/permissions/users"),{onSubmit:p,formMethods:u}=yh(l,e),m=u.watch("employeeId"),{data:f}=Se.useGetApiData(`/permissions/roles?userName=${(j=c==null?void 0:c.find(E=>E.employeeId===m))==null?void 0:j.name}`,{enabled:m>0&&!!c}),{refreshAvailableDelegations:x}=d.useContext(n.DelegationContext),{checkUserHasPermissions:g}=n.usePermissions(),b=d.useCallback(async()=>{await a(i.deleteConfirm)&&(await o.delete(`/permissions/substitutions/${t}`),x(),s(e))},[o,a,t,s,x,i,e]),v=d.useMemo(()=>m!==(r==null?void 0:r.personalNumber)&&!g(["ZASTUP_MODIFY"]),[g,m,r==null?void 0:r.personalNumber]),h=u.watch("roles"),y=d.useMemo(()=>f==null?void 0:f.filter(E=>E.canBeRepresented),[f]),R=d.useMemo(()=>(y==null?void 0:y.every(E=>h==null?void 0:h.includes(E.name)))??!1,[y,h]);return n.jsxRuntimeExports.jsx(n.PageContainer,{title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:i.title}),n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>b(),children:i.delete})})]}),children:n.jsxRuntimeExports.jsx(De.FormProvider,{...u,children:n.jsxRuntimeExports.jsx(we.FormDisabledProvider,{disabled:v,children:n.jsxRuntimeExports.jsxs(n.Form,{onSubmit:u.handleSubmit(p),className:"h-100",children:[n.jsxRuntimeExports.jsxs(Ir,{className:"h-100 gx-3 gy-3",children:[n.jsxRuntimeExports.jsx(n.Col,{sm:12,md:4,children:n.jsxRuntimeExports.jsxs(Gt,{title:i.title,children:[n.jsxRuntimeExports.jsx(Cr,{formField:"employeeId",options:(c==null?void 0:c.map(E=>({id:E.employeeId,name:`${E.employeeName} (${E.name})`})))??[],label:i.employee,isNumber:!0,required:!0,disabled:!g(["ZASTUP_MODIFY"]),resetsFields:["roles"]}),n.jsxRuntimeExports.jsx(Cr,{formField:"substituteId",options:(c==null?void 0:c.map(E=>({id:E.employeeId,name:`${E.employeeName} (${E.name})`})))??[],label:i.substitute,isNumber:!0,required:!0}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{formField:"from",label:i.from,type:"date",required:!0}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{formField:"to",label:i.to,type:"date",required:!0})]})}),n.jsxRuntimeExports.jsx(n.Col,{sm:12,md:4,children:n.jsxRuntimeExports.jsxs(Gt,{title:i.roles(`${(h==null?void 0:h.length)??0}/${(y==null?void 0:y.length)??0}`),className:"h-max-100",contentClassName:"d-flex flex-column overflow-hidden",children:[v?null:n.jsxRuntimeExports.jsx("div",{className:"bg-darker",style:{marginLeft:"-12px",marginRight:"-12px",marginTop:"-12px",padding:"0px 12px"},children:n.jsxRuntimeExports.jsx(Qt,{label:R?i.uncheckAllRoles:i.checkAllRoles,indeterminate:!R&&(h==null?void 0:h.length)>0,value:R,disabled:v,onChange:()=>{u.setValue("roles",R?[]:(y==null?void 0:y.map(E=>E.name))??[],{shouldDirty:!0})},InputContainer:n.RowLabelInput})}),n.jsxRuntimeExports.jsx("div",{className:"overflow-auto",style:{maxHeight:"60vh",marginLeft:"-12px",marginRight:"-12px",padding:"0px 12px"},children:f==null?void 0:f.map(E=>n.jsxRuntimeExports.jsx(Qt,{label:E.name,value:(h==null?void 0:h.find(S=>S===E.name))!==void 0,disabled:v||!E.canBeRepresented,onChange:S=>{u.setValue("roles",S?[...h??[],E.name]:(h==null?void 0:h.filter(D=>D!==E.name))??[],{shouldDirty:!0})},InputContainer:n.RowLabelInput},E.name))})]})})]}),n.jsxRuntimeExports.jsx(sl,{onStorno:()=>u.reset(),children:i.save})]})})})})},lo=["slice","options","formats","conditions"],Us=e=>{const t=e.current.flexmonster.getReport({withDefaults:!0});if(typeof t=="string")throw alert("report is string"),new Error("report is string");const r={};return lo.forEach(o=>{r[o]=t[o]}),JSON.stringify(r)},Ch=e=>{if(e.settings){const t=JSON.parse(e.settings);return lo.forEach(r=>{t[r]===void 0&&(t[r]=null)}),t}return{}},Nh=e=>{const t={};return lo.forEach(r=>{t[r]=(e==null?void 0:e[r])??void 0}),t},wh=e=>e&&e.type==="header"&&e.member&&e.member.caption!=="All"&&e.label==="",Hs=(e,t)=>e.hierarchy&&e.hierarchy.uniqueName===t,zs=e=>!e.member&&!e.isDrillThrough,qs=(e,t)=>typeof e=="function"?e(t):e.replace(":id",t),al=({dataSource:e,settings:t,pivotRef:r,localization:o,licenseKey:s,hyperlinkColumn:a,roomPasportization:i,enabled:l=!0})=>{const{texts:{reports:c}}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(!1),m=d.useRef(null),f=r??m,x=d.useMemo(()=>({localization:o}),[o]),g=d.useCallback(j=>{delete j[0],delete j[1],delete j[2];const E=[{id:"fm-tab-expand",title:c.expandAll,handler:f.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:c.collapseAll,handler:f.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 j.unshift({id:"fm-tab-expand",title:c.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:E,rightGroup:!0}),j},[f,c.collapseAll,c.expand,c.expandAll]),b=j=>{const E=j.getTabs();j.getTabs=()=>g(E)},v=d.useMemo(()=>e&&e.mapping?Object.values(e.mapping).filter(j=>j.caption.includes("P:")).map(j=>({uniqueName:j.caption.replace("P:",""),caption:j.caption})):[],[e]),h=d.useMemo(()=>{var E,S,D,I;const j=(E=f.current)==null?void 0:E.flexmonster.getReport();return j&&j.slice?{...j.slice,rows:[...((S=j.slice.rows)==null?void 0:S.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v],columns:[...((D=j.slice.columns)==null?void 0:D.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v],measures:[...((I=j.slice.measures)==null?void 0:I.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v]}:null},[v,f]);d.useEffect(()=>{var j,E,S,D;if(p&&l){if(i&&h){const I=(j=f.current)==null?void 0:j.flexmonster.getReport(),w=I&&I.options?{...I.options,grid:{...(E=I.options)==null?void 0:E.grid,autoSwitchToCompact:!1}}:{};(S=f.current)==null||S.flexmonster.setReport({...I,dataSource:e,slice:h,options:w})}else(D=f.current)==null||D.flexmonster.updateData(e);console.log("Updating flexmonster dataSource to: ",e)}},[e,l,p,v,f,i,h]),d.useEffect(()=>{var j,E,S,D,I;if(p&&l){const w=(j=f.current)==null?void 0:j.flexmonster.getReport();if(w===void 0||typeof w=="string")return;const _=Nh(t);_.options={...t==null?void 0:t.options,grid:{...(E=t==null?void 0:t.options)==null?void 0:E.grid,autoSwitchToCompact:!1},showFieldListSearch:!0,datePattern:"dd.MM.yyyy",dateTimePattern:"dd.MM.yyyy HH:mm:ss"},i&&(_.slice={...t==null?void 0:t.slice,rows:[...((D=(S=t==null?void 0:t.slice)==null?void 0:S.rows)==null?void 0:D.filter(A=>{var C;return!((C=A.caption)!=null&&C.includes("P:"))}))??[],...v]});const T={...w,..._};(I=f.current)==null||I.flexmonster.setReport(T),console.log("Refreshing flexmonster settings. New report: ",T)}},[l,p,v,f,i,t]);const y=d.useCallback((j,E)=>{var A,C;if(wh(E)){j.text=((A=E.member)==null?void 0:A.caption)??"";const O=j.style["padding-left"]??"4px",F=parseInt(O,10);j.style["padding-left"]=F+11+"px"}if(!a||!Hs(E,a.idColumn)||zs(E))return;const S=(C=E.escapedLabel)==null?void 0:C.toString();if(S===void 0)return;const D=qs(a.url,S),I="style='color: #00a45a; text-decoration: underline; cursor: pointer;'",w=E.type==="header"?"onclick='event.stopImmediatePropagation()'":"",_=E.isDrillThrough||E.type==="header"?`href='${D}' target='_blank'`:"";j.style&&(j.style["z-index"]=1);const T=`<a ${_} ${I} ${w}>${E.escapedLabel}</a>`;j.text=T},[a]),R=d.useCallback(j=>{if(!a||!Hs(j,a.idColumn)||zs(j))return;const E=qs(a.url,j.escapedLabel??"");window.open(E??"","_blank","noreferrer")},[a]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(xl.Pivot,{ref:f,global:x,licenseKey:s,toolbar:!0,height:"100%",beforetoolbarcreated:b,ready:()=>{u(!0)},width:"100%",customizeCell:y,cellclick:R})})},Sh=(e,t,r,o)=>{const{texts:{reports:s}}=d.useContext(n.LuminusComponentsContext),{prompt:a}=n.usePrompt(),{confirm:i}=n.useConfirm(),l=n.useAxios(),{user:c}=d.useContext(n.UserContext),{startLoading:p,stopLoading:u}=d.useContext(n.LoadingContext),{addNotification:m}=n.useNotifications(),f=d.useCallback(async h=>{p("report-versionSavingAs");try{const y=await l.post("/reports/version",h);m(s.saveSuccessful,"success"),await o(y.data)}finally{u("report-versionSavingAs")}},[m,o,l,s.saveSuccessful,p,u]),x=d.useCallback(async()=>{if(r===null){m("none open","warning");return}if(!await i(s.confirmOverwriteSave))return;const y=Us(t);f({reportSourceName:e,reportVersionId:r,settings:y})},[m,i,t,e,s.confirmOverwriteSave,f,r]),g=d.useCallback(async()=>{const h=await a(s.enterName,{input:"input",required:!0});if(h===null)return;const y=Us(t);f({reportSourceName:e,name:h,settings:y})},[t,a,e,s.enterName,f]),b=d.useCallback(async()=>{p("report-versionSavingAs");try{await l.post("/reports/version",{reportVersionId:r??void 0,reportSourceName:e,isArchived:!0}),m(s.deleteSuccessful,"success")}finally{u("report-versionSavingAs")}},[m,l,e,s.deleteSuccessful,r,p,u]),v=d.useCallback(async()=>{p("report-versionSavingAs");try{await l.post("/reports/version-restrictions",{reportVersionId:r??void 0,userRestricts:[{employeeId:c.personalNumber,addRights:!1}]}),m(s.detachSuccessful,"success")}finally{u("report-versionSavingAs")}},[m,l,s.detachSuccessful,r,p,u,c.personalNumber]);return{saveAs:g,save:x,archive:b,detach:v}},Dh=e=>{const t=n.useAxios(),{startLoading:r,stopLoading:o}=d.useContext(n.LoadingContext);return{changeEmployeeRights:d.useCallback(async(a,i)=>{let l=null;r("reportSharing-addPerson");try{l=(await t.post("/reports/version-restrictions",{reportVersionId:e,userRestricts:[{employeeId:a,addRights:i}]})).data}finally{o("reportSharing-addPerson")}return l},[t,e,r,o])}},Ih=({isOpen:e,onHide:t,usersData:r,reportVersionId:o,EmployeePicker:s,setReportVersion:a})=>{const{ProjectIconComponent:i,texts:{reports:l}}=d.useContext(n.LuminusComponentsContext),{confirm:c}=n.useConfirm(),[p,u]=d.useState(null),{changeEmployeeRights:m}=Dh(o),f=d.useCallback(b=>{a(v=>v===null?null:{...v,users:b.filter(h=>h.isReportOwner===!1)})},[a]),x=d.useCallback(async()=>{if(p===null)return;const b=await m(p.id,!0);f(b),u(null)},[p,m,f]),g=d.useCallback(async b=>{if(!await c(l.removeSharingWith(b)))return;const h=await m(b,!1);f(h)},[m,c,l,f]);return n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:t,children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:l.reportSharing})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h6",children:l.sharedWith}),n.jsxRuntimeExports.jsxs(n.ListGroup,{variant:"flush",children:[r&&r.length===0?n.jsxRuntimeExports.jsx("div",{className:"px-2 text-muted",children:l.noone.toLowerCase()}):null,r==null?void 0:r.map(b=>n.jsxRuntimeExports.jsxs(n.ListGroupItem,{className:"d-flex justify-content-between align-items-center gap-3 border-bottom px-2 py-1",children:[b.lastName," ",b.firstName," [",b.id,"]",n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>g(b.id),children:n.jsxRuntimeExports.jsx(i,{icon:"delete"})})]},b.id))]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"h6",className:"mt-2 mb-2",children:l.addSharing}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center",children:[n.jsxRuntimeExports.jsx("div",{className:"flex-grow-1",children:n.jsxRuntimeExports.jsx(s,{label:l.shareWith,onSelect:b=>{if(b===null||typeof b.id!="number"){u(null);return}u(b)},value:p})}),n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:x,disabled:p===null,children:l.add})]})]})]})},_h=(e,t)=>{const[r,o]=d.useState(null);return d.useEffect(()=>{e.then(({default:s})=>{const a=t!==void 0?t(s):s;o(a)})},[t,e]),{mappings:r}},Oh=({reportType:e,title:t,data:r,filterElements:o,getReportRoute:s,localization:a,licenseKey:i,EmployeePicker:l,localizationJsonFile:c,localizationTransformer:p,hyperlinkColumn:u,roomPasportization:m=!1})=>{const{texts:{reports:f}}=d.useContext(n.LuminusComponentsContext),{confirm:x}=n.useConfirm(),g=oe.useNavigate(),[b]=oe.useSearchParams(),{id:v}=oe.useParams(),h=d.useMemo(()=>v===void 0?null:Number(v),[v]),y=d.useCallback(V=>{const Y=V===null?"":V.toString();g(oe.generatePath(s(e),{id:Y})+"?"+b.toString(),{replace:!0,flushSync:!0})},[s,g,e,b]),[R,j]=d.useState(!1),E=d.useRef(null),{user:S}=d.useContext(n.UserContext),{data:D,reloadData:I}=Se.useGetApiData(`/reports/${e}`),{mappings:w}=_h(c,p),[_,T]=d.useState({}),A=d.useCallback(V=>{const Y=V.target.value,re=Y===""?null:Number(Y);y(re)},[y]),C=d.useCallback(async V=>{await I(),y(V)},[I,y]),{data:O,setData:F}=Se.useGetApiData(`/reports/version/${h}`,{enabled:h!==null,nullStateBeforeLoad:!1,nullStateOnFail:!0});d.useEffect(()=>{var Y;if(O===null){T({});return}const V=Ch(O)??{};T(V),(Y=E.current)==null||Y.flexmonster.refresh()},[O]);const{save:P,saveAs:B,archive:G,detach:L}=Sh(e,E,h,C),$=d.useMemo(()=>({data:r??[],mapping:w??void 0}),[r,w]),U=d.useCallback(async()=>{var Y;await x(f.confirmRevertChanges)&&((Y=E.current)==null||Y.flexmonster.setReport({dataSource:$,..._}))},[x,$,f.confirmRevertChanges,_]),q=d.useMemo(()=>(O==null?void 0:O.ownerId)===S.personalNumber,[O==null?void 0:O.ownerId,S.personalNumber]),X=d.useMemo(()=>{var V;return(V=O==null?void 0:O.users)==null?void 0:V.some(Y=>Y.id===S.personalNumber&&!Y.isReportOwner)},[O==null?void 0:O.users,S.personalNumber]),Q=d.useCallback(async()=>{await x(f.confirmDelete(O==null?void 0:O.name))&&(await G(),y(null),await I())},[G,x,I,O==null?void 0:O.name,f,y]),le=d.useCallback(async()=>{await x(f.confirmDetach(O==null?void 0:O.name))&&(await L(),y(null),await I())},[x,L,I,O==null?void 0:O.name,f,y]);return d.useEffect(()=>{var V,Y;h===null&&y(((V=D==null?void 0:D.reportVersions.find(re=>re.isSystem===!0))==null?void 0:V.reportVersionId)??((Y=D==null?void 0:D.reportVersions[0])==null?void 0:Y.reportVersionId)??null)},[D==null?void 0:D.reportVersions,h,y]),n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.PageContainer,{variant:"fullScreen",title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-start gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:t}),o,n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[n.jsxRuntimeExports.jsxs(n.FormSelect,{size:"sm",value:h??void 0,onChange:A,children:[n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectSystem,children:D==null?void 0:D.reportVersions.filter(V=>V.isSystem===!0).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:V.name},V.reportVersionId))}),n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectYour,children:D==null?void 0:D.reportVersions.filter(V=>V.ownerId===S.personalNumber).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:V.name},V.reportVersionId))}),n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectSharedWithYou,children:D==null?void 0:D.reportVersions.filter(V=>V.isSystem===!1&&V.ownerId!==S.personalNumber).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:`${V.name} [${V.ownerId}]`},V.reportVersionId))})]}),n.jsxRuntimeExports.jsx(n.ContextButton,{icon:n.jsxRuntimeExports.jsx(n.MdSave,{}),onClick:P,disabled:h===null||(O==null?void 0:O.isSystem)||!q,children:f.save}),n.jsxRuntimeExports.jsx(n.ContextButton,{icon:n.jsxRuntimeExports.jsx(n.MdSaveAs,{}),onClick:B,className:"flex-shrink-0",children:f.saveAs}),n.jsxRuntimeExports.jsxs(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:[n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:U,children:f.revertChanges}),n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>j(!0),disabled:!q||(O==null?void 0:O.isSystem),children:f.share}),q&&!(O!=null&&O.isSystem)?n.jsxRuntimeExports.jsx(n.DropdownItem,{color:"danger",onClick:Q,children:f.delete}):null,X&&!(O!=null&&O.isSystem)?n.jsxRuntimeExports.jsx(n.DropdownItem,{color:"danger",onClick:le,children:f.detach}):null]})]})]}),children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("h-100 w-100",$.data&&$.data.length>0?"":"d-none"),children:n.jsxRuntimeExports.jsx(al,{dataSource:$,settings:_,pivotRef:E,enabled:$.data&&$.data.length>0,roomPasportization:m,localization:a,licenseKey:i,hyperlinkColumn:u})})}),O!==null?n.jsxRuntimeExports.jsx(Ih,{isOpen:R,onHide:()=>j(!1),usersData:O.users??null,setReportVersion:F,reportVersionId:O==null?void 0:O.reportVersionId,EmployeePicker:l}):null]})},Th=({cell:{value:e}})=>n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e?n.jsxRuntimeExports.jsx(n.AvatarIcon,{name:e,size:21,fontSize:12}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{})}),kh=({knownTypes:e,typeFilters:t,onChangeTypeFilters:r})=>n.jsxRuntimeExports.jsx("div",{className:"mb-1 d-flex justify-content-center gap-2",children:e.map(o=>n.jsxRuntimeExports.jsx("div",{role:"button",style:{height:"14px",width:"14px",borderRadius:"50%",border:"2px solid transparent",backgroundColor:"transparent"},className:n.classNames(`border-${o}`,t.includes(o)&&`bg-${o}`),onClick:()=>{t.includes(o)?r(t.filter(s=>s!==o)):r([...t,o])}},o))}),Ph=({linksTo:e,onClick:t,children:r})=>e?n.jsxRuntimeExports.jsx(oe.Link,{to:e,className:"text-decoration-none",onClick:t,children:r}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:r}),Ah=({message:e,onDeleteMessage:t,onClickMessage:r,getIcon:o,getLinksTo:s})=>{const{ProjectIconComponent:a,localizationContext:i}=d.useContext(n.LuminusComponentsContext),{dateFnsLocale:l}=d.useContext(i),c=e.dateTime?n.parseISO(e.dateTime):null,p=c?bl(new Date(Date.now()),c):0;return n.jsxRuntimeExports.jsxs("div",{children:[c&&n.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:n.format(c,"dd.MM.yyyy HH:mm"),placement:"left",children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:p>2?n.format(c,"dd.MM.yyyy"):El(c,new Date(Date.now()),{locale:l.code})})})})}),n.jsxRuntimeExports.jsx(Ph,{linksTo:s(e)??void 0,onClick:r,children:n.jsxRuntimeExports.jsx(Vi,{level:e.type,noIcon:!0,children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start gap-2",children:[o(e),n.jsxRuntimeExports.jsxs("div",{className:"d-flex flex-column gap-1 w-100",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start justify-content-between gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"fw-bold",children:e.subject}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:u=>{u.preventDefault(),u.stopPropagation(),t(e.id)},children:n.jsxRuntimeExports.jsx(a,{icon:"delete"})})]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:e.text})]})]})})})]})},Ys=["info","warning","danger"],Ks=({messages:e,isLoading:t,onDeleteMessage:r,onClickMessage:o,getIcon:s,getLinksTo:a})=>{const{texts:{messageBoard:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(Ys),p=d.useMemo(()=>e.filter(u=>l.includes(u.type??"")),[l,e]);return n.jsxRuntimeExports.jsxs("div",{className:"h-100 d-flex flex-column overflow-hidden",children:[n.jsxRuntimeExports.jsx(kh,{knownTypes:Ys,typeFilters:l,onChangeTypeFilters:u=>c(u)}),t&&n.jsxRuntimeExports.jsxs("div",{className:"p-3 w-100",children:[n.jsxRuntimeExports.jsx(Xe,{as:Ro.Title,animation:"glow",children:n.jsxRuntimeExports.jsx(Xe,{xs:6})}),n.jsxRuntimeExports.jsxs(Xe,{as:Ro.Text,animation:"glow",children:[n.jsxRuntimeExports.jsx(Xe,{xs:7})," ",n.jsxRuntimeExports.jsx(Xe,{xs:4})," ",n.jsxRuntimeExports.jsx(Xe,{xs:4})," ",n.jsxRuntimeExports.jsx(Xe,{xs:6})," ",n.jsxRuntimeExports.jsx(Xe,{xs:8})]})]}),!t&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[e.length===0&&n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",size:"sm",className:"mt-2",children:i.noMessages}),n.jsxRuntimeExports.jsx("div",{className:"h-100 overflow-y-auto d-flex flex-column gap-2 luminus-thin-scrollbar",children:p.map(u=>n.jsxRuntimeExports.jsx(Ah,{message:u,onDeleteMessage:r,onClickMessage:o,getIcon:s,getLinksTo:a},u.id))})]})]})},ar={apiGet:"/messageBoard",apiDelete:"/messageBoard/"},Bh=({renderAsNotifPanel:e,notifIcon:t,apiUrls:{apiGet:r=ar.apiGet,apiDelete:o=ar.apiDelete}=ar,getIcon:s,getLinksTo:a})=>{const l=n.useAxios(),[c,p]=d.useState([]),[u,m]=d.useState(!1),[f,x]=d.useState(!1),[g,b]=d.useState(!1),v=d.useCallback(async()=>{x(!0),await l.get(r).then(({data:E})=>{p(E),m(!0),x(!1)}).catch(()=>{p([]),x(!1)})},[r,l]),h=d.useCallback(async E=>l.delete(`${o}${E}`).then(()=>!0).catch(()=>!1),[o,l]),y=d.useCallback(E=>{h(E).then(S=>{S&&p(c.filter(D=>D.id!==E))})},[h,c]);d.useEffect(()=>{v();const E=setInterval(()=>v(),60*1e3);return()=>{clearInterval(E)}},[v]);const R=c.filter(E=>E.type==="danger").length,j=u?!1:f;return e?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsxs("div",{className:"position-relative",children:[n.jsxRuntimeExports.jsx(n.IconButton,{size:"md",onClick:()=>b(!g),children:t}),R>0&&n.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:R})]}),n.jsxRuntimeExports.jsx(No,{show:g,onHide:()=>b(!1),placement:"end",children:n.jsxRuntimeExports.jsx(No.Body,{children:n.jsxRuntimeExports.jsx(Ks,{messages:c,isLoading:j,onDeleteMessage:y,onClickMessage:()=>b(!1),getIcon:s,getLinksTo:a})})})]}):n.jsxRuntimeExports.jsx(Ks,{messages:c,isLoading:j,onDeleteMessage:y,getIcon:s,getLinksTo:a})},Mh="_tab-panel_d8l8q_1",Lh="_full-height-no-overflow_d8l8q_5",Fh="_disabled_d8l8q_12",ir={"tab-panel":"_tab-panel_d8l8q_1",tabPanel:Mh,"full-height-no-overflow":"_full-height-no-overflow_d8l8q_5",fullHeightNoOverflow:Lh,disabled:Fh},il=({eventKey:e,activeTab:t,fullHeightNoOverflow:r,disabled:o,className:s,children:a})=>e!==t?null:n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-tab-panel",ir.tabPanel,{[ir.fullHeightNoOverflow]:r},{disabled:o},{[ir.disabled]:o},s),children:a}),Vh="_join-line_1q9e8_1",$h={"join-line":"_join-line_1q9e8_1",joinLine:Vh},co=({activeTab:e,onSelect:t,children:r,vertical:o,verticalStepper:s})=>n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-tabs d-flex mb-2",{"gap-1":!s},{"gap-0":s},{"flex-column":o||s}),children:r.map((a,i)=>{const l=a.type,c=a.props;if(!c)return null;const p=c.eventKey,u=c.children,m=c.className,f=c.onClick;return n.jsxRuntimeExports.jsxs(d.Fragment,{children:[n.jsxRuntimeExports.jsx(l,{...c,className:n.classNames({active:e===p},m),onClick:()=>{t(p),f&&f(p)},vertical:o||s,children:u}),s&&i<r.length-1&&n.jsxRuntimeExports.jsx("div",{className:n.classNames("join-line",$h.joinLine)})]},c.eventKey)})}),Gh="_tab_1tbi7_1",Wh="_disabled_1tbi7_7",Uh="_vertical_1tbi7_13",lr={tab:Gh,disabled:Wh,vertical:Uh},uo=({eventKey:e,className:t,onClick:r,disabled:o,vertical:s,children:a})=>n.jsxRuntimeExports.jsx("div",{role:"button",className:n.classNames("luminus-tab text-primary rounded",lr.tab,t,{disabled:o},{[lr.disabled]:o},{vertical:s},{[lr.vertical]:s}),onClick:()=>r&&!o&&r(e),children:typeof a=="string"?n.jsxRuntimeExports.jsx(n.Typography,{variant:s?"body":"h6",className:s?"":"text-primary",children:a}):a}),Hh=({tabs:e,activeTab:t,onSelect:r,...o})=>{var i;const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),{isMobile:a}=n.useWindowSize();return a?n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle,text:((i=e.find(l=>l.id===t))==null?void 0:i.name)??"",icon:n.jsxRuntimeExports.jsx(s,{icon:"chevron-down"})}),...o,children:e.map(l=>n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>r(l.id),children:l.name},l.id))}):n.jsxRuntimeExports.jsx(co,{activeTab:t,onSelect:l=>r(l),...o,children:e.map(l=>n.jsxRuntimeExports.jsx(uo,{eventKey:l.id,children:l.name},l.id))})},zh="_selection_1dtmm_1",qh="_selectionBg_1dtmm_10",Yh="_selectionItemsContainer_1dtmm_18",Kh="_selectionItems_1dtmm_18",xn={selection:zh,selectionBg:qh,selectionItemsContainer:Yh,selectionItems:Kh},po=({icon:e,setIcon:t,IconComponent:r,IconTypeArray:o})=>{const[s,a]=d.useState(!1),i=l=>{t(l),a(!1)};return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.IconButton,{className:"rounded m-1",onClick:()=>a(!0),children:n.jsxRuntimeExports.jsx(r,{icon:e})}),s&&n.jsxRuntimeExports.jsxs("div",{className:xn.selection,children:[n.jsxRuntimeExports.jsx("div",{className:xn.selectionBg,onClick:()=>a(!1)}),n.jsxRuntimeExports.jsx("div",{className:xn.selectionItemsContainer,children:n.jsxRuntimeExports.jsx("div",{className:xn.selectionItems,children:o.filter((l,c,p)=>p.indexOf(l)===c).map(l=>n.jsxRuntimeExports.jsx(n.IconButton,{className:"rounded",onClick:()=>i(l),children:n.jsxRuntimeExports.jsx(r,{icon:l})},l))})})]})]})},mo=()=>{const e=d.useContext(n.ShortcutLinksContext);if(e===void 0)throw new Error("ShortcutLinksProvider not initilized. Probably tried to use useShortcutLinks outside ShortcutLinksProvider.");return e},Xh=({shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o})=>{const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),[a,i]=d.useState(e.icon),[l,c]=d.useState(e.name);console.log(a,typeof a);const p=d.useMemo(()=>!(a===e.icon&&l===e.name),[a,l,e.icon,e.name]),u=d.useCallback(()=>{i(e.icon),c(e.name)},[e]),m=d.useCallback(()=>{o({...e,icon:a,name:l})},[o,a,l,e]);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",maxLength:20,value:l,onChange:c,className:"d-flex-grow-1",InputContainer:n.NoInputContainer})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle text-center",children:n.jsxRuntimeExports.jsx(po,{icon:a,setIcon:i,IconComponent:t,IconTypeArray:r})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle",style:{width:"7em"},children:p&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.IconButton,{onClick:u,color:"danger",className:"d-inline mx-2",children:n.jsxRuntimeExports.jsx(s,{icon:"cancel"})}),n.jsxRuntimeExports.jsx(n.IconButton,{onClick:m,color:"success",className:"d-inline mx-2",children:n.jsxRuntimeExports.jsx(s,{icon:"check"})})]})})]})},Qh=({shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o,deleteShortcutLink:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useCallback(()=>{s(e.id)},[s,e.id]);return n.jsxRuntimeExports.jsx("tr",{className:"mb-3",children:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:n.jsxRuntimeExports.jsx(n.IconButton,{onClick:i,color:"danger",children:n.jsxRuntimeExports.jsx(a,{icon:"delete"})})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:e.url.length<=23?e.url:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:e.url,children:n.jsxRuntimeExports.jsxs("span",{children:[e.url.slice(0,21),"..."]})})}),n.jsxRuntimeExports.jsx(Xh,{shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o})]})})},Jh=({IconComponent:e,IconTypeArray:t})=>{const{texts:r}=d.useContext(n.LuminusComponentsContext),{shortcutLinks:o,editShortcutLink:s,deleteShortcutLink:a}=mo();return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:o!==null&&o.length>0?n.jsxRuntimeExports.jsxs(Ml,{title:r.shortcutLinks.shortcutLinksSetting,children:[n.jsxRuntimeExports.jsx("thead",{className:"fw-bold",children:n.jsxRuntimeExports.jsxs("tr",{children:[n.jsxRuntimeExports.jsx("th",{}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.target}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.name}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.icon}),n.jsxRuntimeExports.jsx("th",{})]})}),n.jsxRuntimeExports.jsx("tbody",{children:o==null?void 0:o.map(i=>n.jsxRuntimeExports.jsx(Qh,{shortcutLink:i,IconComponent:e,IconTypeArray:t,editShortcutLink:s,deleteShortcutLink:a},i.id))})]}):n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",children:r.shortcutLinks.addLinksToEditThemHereInfo})})},Nr=5,Zh="_linkButton_pnlvi_1",eb="_linkAddButton_pnlvi_31",tb="_createLinkRow_pnlvi_39",jt={linkButton:Zh,linkAddButton:eb,createLinkRow:tb},nb=({shortcutLink:e,IconComponent:t})=>n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:e.name,placement:"bottom",children:n.jsxRuntimeExports.jsx(oe.Link,{to:e.url,className:jt.linkButton,children:n.jsxRuntimeExports.jsx(t,{icon:e.icon})})}),rb=({closeModal:e,isOpen:t,createLink:r,pageTitlePrefix:o,IconComponent:s,IconTypeArray:a})=>{const i=oe.useLocation(),{texts:l}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState("star-outline"),[u,m]=d.useState(o?document.title.replace(o,""):document.title),f=d.useCallback(async()=>{await r({icon:c,name:u,url:i.pathname+i.search}),e()},[e,r,c,i.pathname,i.search,u]),x=d.useMemo(()=>i.pathname+i.search,[i.pathname,i.search]);return n.jsxRuntimeExports.jsx(n.Modal,{show:t,onHide:e,size:"sm",children:n.jsxRuntimeExports.jsxs("div",{onKeyDown:g=>{g.code!=="Escape"&&g.stopPropagation()},children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:l.shortcutLinks.newShortcut})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.target}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold text-muted",children:x.length<=23?x:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:x,children:n.jsxRuntimeExports.jsxs("span",{children:[x.slice(0,21),"..."]})})})]}),n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.name}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold",children:n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",maxLength:25,value:u,onChange:m,className:"w-100",InputContainer:n.RowLabelInput,withoutLabel:!0})})]}),n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.icon}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold",children:n.jsxRuntimeExports.jsx(po,{icon:c,setIcon:p,IconComponent:s,IconTypeArray:a})})]})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:f,children:l.shortcutLinks.addShortcut})})]})})},ob=({IconComponent:e,IconTypeArray:t,pageTitlePrefix:r,createLink:o})=>{const{ProjectIconComponent:s,texts:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(!1),[c]=n.a(i,100);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:a.shortcutLinks.addShortcut,placement:"bottom",children:n.jsxRuntimeExports.jsx("button",{type:"button",className:n.classNames(jt.linkButton,jt.linkAddButton),onClick:()=>l(!0),children:n.jsxRuntimeExports.jsx(s,{icon:"add"})})}),(i||c)&&n.jsxRuntimeExports.jsx(rb,{IconComponent:e,IconTypeArray:t,closeModal:()=>l(!1),createLink:o,isOpen:i,pageTitlePrefix:r})]})},sb=({IconComponent:e,IconTypeArray:t,pageTitlePrefix:r})=>{const{shortcutLinks:o,createShortcutLink:s}=mo(),a=d.useMemo(()=>o!==null&&o.length<Nr,[o]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2",children:[o==null?void 0:o.slice(0,Nr).map((i,l)=>i!==null?n.jsxRuntimeExports.jsx(nb,{shortcutLink:i,IconComponent:e},l):null),a&&n.jsxRuntimeExports.jsx(ob,{IconComponent:e,IconTypeArray:t,pageTitlePrefix:r,createLink:s})]})})},ab=e=>{const t=n.useAxios(),{startLoading:r,stopLoading:o}=d.useContext(n.LoadingContext),s=d.useCallback(async l=>{r("submit-createShortcutLink");try{await t.post(`/dynamicForms/insert?referenceId=${e}`,l)}finally{o("submit-createShortcutLink")}},[t,e,r,o]),a=d.useCallback(async l=>{r("submit-updateShortcutLink");try{await t.post(`/dynamicForms/update?referenceId=${e}`,l)}finally{o("submit-updateShortcutLink")}},[t,e,r,o]),i=d.useCallback(async l=>{r("delete-deleteShortcutLink");try{await t.delete(`/dynamicForms/delete?referenceId=${e}&pk=${l.toString()}`)}finally{o("delete-deleteShortcutLink")}},[t,e,r,o]);return{create:s,update:a,remove:i}},ib=e=>{if(e==null)throw new Error("Tried to make operation on null shortcutLinks.");return e},Xs=e=>{if(e==null)throw new Error("Tried to make operation on null shortcutLinks.");return e},lb=({children:e,referenceId:t})=>{const{user:r}=d.useContext(n.UserContext),o=d.useCallback(x=>x.map(g=>({id:g.id,icon:g.icon,name:g.name,url:g.url})),[]),{data:s,reloadData:a}=Se.useGetApiData(`/dynamicForms/lookup-data-all?referenceId=${t}&employee=${r==null?void 0:r.personalNumber}`,{silent:!0,dataTransformer:o,enabled:r!==null}),{create:i,update:l,remove:c}=ab(t),p=d.useCallback(async x=>{const g=Xs(r);if(ib(s).length>=Nr)throw new Error("Cannot add more shortcut links.");await i({...x,employee:g.personalNumber}),await a()},[i,a,s,r]),u=d.useCallback(async x=>{const g=Xs(r);await l({...x,employee:g.personalNumber}),await a()},[a,l,r]),m=d.useCallback(async x=>{await c(x),await a()},[a,c]),f=d.useMemo(()=>({shortcutLinks:s,createShortcutLink:p,editShortcutLink:u,deleteShortcutLink:m}),[p,m,u,s]);return n.jsxRuntimeExports.jsx(n.ShortcutLinksContext.Provider,{value:f,children:e})},cb=({targets:e,removeNotifTarget:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e&&e.sort((o,s)=>(o.employeeId??0)-(s.employeeId??0)).map(o=>n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center justify-content-between mb-1",children:[n.jsxRuntimeExports.jsx("div",{className:"text-secondary",children:n.jsxRuntimeExports.jsx("span",{className:"d-flex gap-2 ",children:o.employeeId&&o.roleName===null?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(r,{icon:"user"}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"subtitle",children:o.employeeName})]}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(r,{icon:"role"}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"subtitle",children:o.roleName})]})})}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"danger",onClick:()=>t(o.id),children:n.jsxRuntimeExports.jsx(r,{icon:"delete"})})]},o.id))})},ub=({show:e,onHide:t,roles:r,onAddTarget:o,EmployeePicker:s,templateId:a})=>{const{texts:{notifCentrum:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(null),[p,u]=d.useState(null),[m,f]=d.useState("R"),x=d.useCallback(()=>{c(null),u(null),t()},[t]);return n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:()=>x(),children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:i.addNewTarget})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(el,{options:[{id:"E",name:i.employee},{id:"R",name:i.role}],value:m,onChange:g=>f(g),InputContainer:n.RowLabelInput}),m==="E"?n.jsxRuntimeExports.jsx(s,{InputContainer:n.RowLabelInput,label:i.employee,value:{id:(l==null?void 0:l.id)??null,name:(l==null?void 0:l.name)??""},onSelect:g=>c({id:Number(g==null?void 0:g.id)??null,name:(g==null?void 0:g.name)??""})}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{InputContainer:n.RowLabelInput,label:i.role,options:r.map(g=>({id:g,name:g})),value:p,onChange:g=>u((g==null?void 0:g.toString())??"")})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:()=>{o({templateId:a??0,targetId:null,employeeId:(l==null?void 0:l.id)??null,roleName:p},(l==null?void 0:l.name)??null),x()},children:i.add})})]})},db=({templates:e,selectedTemplateId:t,setSelectedTemplateId:r,roles:o,onAddNotifTarget:s,onRemoveNotifTarget:a,EmployeePicker:i})=>{const{texts:{notifCentrum:l},ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(!1);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.ListGroup,{className:"overflow-auto h-max-100 p-2",children:e.map(m=>n.jsxRuntimeExports.jsxs(n.ListGroup.Item,{action:t!==m.id,className:`p-0 mb-2 border rounded shadow-sm ${t===m.id?"border-1 border-primary":""}`,onClick:()=>r(m.id),children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 justify-content-between align-items-center border-1 border-bottom border-primary p-2",children:[n.jsxRuntimeExports.jsx("div",{className:"text-primary",children:m.destinationId===1?n.jsxRuntimeExports.jsx(c,{icon:"mail-envelope"}):n.jsxRuntimeExports.jsx(c,{icon:"dashboard"})}),n.jsxRuntimeExports.jsx(n.Typography,{className:"text-truncate text-primary",variant:"subtitle",children:m.subjectTemplate}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>u(!0),children:n.jsxRuntimeExports.jsx(c,{icon:"add"})})]}),n.jsxRuntimeExports.jsx("div",{className:"my-2 ps-3 pe-2",children:m.targets.length>0?n.jsxRuntimeExports.jsx(cb,{targets:m.targets,removeNotifTarget:a}):n.jsxRuntimeExports.jsx(n.Alert,{size:"sm",variant:"warning",children:l.noTargets})})]},m.id))}),n.jsxRuntimeExports.jsx(ub,{show:p,onHide:()=>u(!1),roles:o??[],onAddTarget:s,EmployeePicker:i,templateId:t})]})},pb=({data:e,onClick:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),s=d.useMemo(()=>e==null?void 0:e.map(l=>{var c;return{...l,recipientsString:((c=l.recipients)==null?void 0:c.map(p=>p.name).join(", "))??""}}),[e]),a=d.useMemo(()=>[{caption:o.date,fieldName:"date",type:"date"},{caption:o.recipients,fieldName:"recipientsString",type:"string"},{caption:o.subject,fieldName:"subject",type:"string",isVisible:!1},{caption:"Id",fieldName:"id",type:"number",isVisible:!1}],[o]),i=d.useCallback(l=>{t(l.id)},[t]);return n.jsxRuntimeExports.jsx(r,{columnsDef:a,data:s,useScrollableContainer:!0,onRowClick:i,bottomBarProps:{hidden:!0}})},mb=({kinds:e,reloadActions:t,reloadHistory:r,reloadRoles:o,onRemoveTarget:s,onPostTarget:a,EmployeePicker:i,BnfTableComponent:l})=>{var T,A;const{texts:{notifCentrum:c}}=d.useContext(n.LuminusComponentsContext),{confirm:p}=n.useConfirm(),[u,m]=d.useState(null),[f,x]=d.useState(null),[g,b]=Se.useLocalStorageState("notif-kind-id",null);d.useEffect(()=>{var C;e.length>0?b(((C=e.at(0))==null?void 0:C.id)??null):b(null)},[e,b]);const[v,h]=d.useState([]);d.useEffect(()=>{g&&t(g).then(C=>{h(C)}).catch(C=>{console.log(C),h([])})},[t,g]);const[y,R]=Se.useLocalStorageState("notif-action-id",((T=v==null?void 0:v.at(0))==null?void 0:T.id)??null),[j,E]=d.useState([]);d.useEffect(()=>{y===null||u===null||r(y,u).then(C=>{E(C)}).catch(C=>{console.log(C),E([])})},[t,r,y,g,u]);const[S,D]=d.useState([]);d.useEffect(()=>{y!==null&&o(y).then(C=>{D(C)}).catch(C=>{console.log(C),D([])})},[o,y]);const I=d.useMemo(()=>{var C;return!v||!y?[]:((C=v.find(O=>O.id===y))==null?void 0:C.templates)??[]},[v,y]),w=d.useCallback((C,O)=>{a(C,O).then(F=>{h(v?[...v.map(P=>P.id!==y?P:{...P,templates:[...P.templates.map(B=>B.id!==u?B:{...B,targets:[...B.targets,F]})]})]:[])}).catch(F=>console.log(F))},[v,a,y,u,h]),_=d.useCallback(async C=>{await p(c.confirmTargetDelete)&&s(C).then(()=>h(v?[...v.map(O=>O.id!==y?O:{...O,templates:[...O.templates.map(F=>F.id!==u?F:{...F,targets:F.targets.filter(P=>P.id!==C)})]})]:[]))},[v,p,c,s,y,u]);return n.jsxRuntimeExports.jsxs("div",{className:"h-100 overflow-hidden",children:[n.jsxRuntimeExports.jsxs("div",{className:"row mb-2",children:[n.jsxRuntimeExports.jsx("div",{className:"col-2",children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:c.kind,size:"sm",noEmptyOption:!0,options:(e==null?void 0:e.map(C=>({id:C.id,name:C.name})))??[],value:g??null,onChange:C=>b(Number(C)),dropdownWidth:200})}),n.jsxRuntimeExports.jsx("div",{className:"col-3",children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:c.subkind,size:"sm",noEmptyOption:!0,options:(v==null?void 0:v.map(C=>({id:C.id,name:C.name})))??[],value:y??null,onChange:C=>R(Number(C)),dropdownWidth:250})})]}),n.jsxRuntimeExports.jsxs("div",{className:"vh-100 overflow-hidden d-flex gap-1",children:[n.jsxRuntimeExports.jsx("div",{className:"h-75 w-25 overflow-hidden",children:n.jsxRuntimeExports.jsx(db,{templates:I,roles:S??[],onAddNotifTarget:w,onRemoveNotifTarget:_,selectedTemplateId:u,setSelectedTemplateId:C=>{m(C),x(null)},EmployeePicker:i})}),n.jsxRuntimeExports.jsx("div",{className:"w-25 h-75 overflow-hidden",children:u&&n.jsxRuntimeExports.jsx(pb,{data:j??[],onClick:C=>x((j==null?void 0:j.find(O=>O.id===C))??null),BnfTableComponent:l})}),u&&n.jsxRuntimeExports.jsx("div",{className:"h-75 w-75 overflow-hidden bg-darker",children:n.jsxRuntimeExports.jsx("iframe",{title:"notification",className:"w-100 h-100",srcDoc:(f==null?void 0:f.message)??((A=I.find(C=>C.id===u))==null?void 0:A.textTemplate)})})]})]})},fb=({history:e,onClick:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),s=d.useMemo(()=>[{caption:"notificationHistory.id",fieldName:"id",type:"number",isVisible:!1},{caption:"notificationHistory.recipientId",fieldName:"recipientId",type:"number",isVisible:!1},{caption:"notificationHistory.recipientFullName",fieldName:"recipientFullName",type:"string",isVisible:!1},{caption:"notificationHistory.actionKindId",fieldName:"actionKindId",type:"number",isVisible:!1},{caption:o.subkind,fieldName:"actionKindName",type:"string",filterType:"select"},{caption:"notificationHistory.actionId",fieldName:"actionId",type:"number",isVisible:!1},{caption:o.subkind,fieldName:"actionName",type:"string",filterType:"select"},{caption:o.date,fieldName:"date",type:"string"},{caption:o.subject,fieldName:"subject",type:"string"},{caption:"notificationHistory.message",fieldName:"message",type:"string",isVisible:!1}],[o]),a=d.useCallback(i=>{t(i.id)},[t]);return n.jsxRuntimeExports.jsx(r,{columnsDef:s,data:e,useScrollableContainer:!0,paginationMode:"enabled",bottomBarProps:{hideFullScreen:!0},onRowClick:a})},xb=({reloadUserHistory:e,EmployeePicker:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),[s,a]=d.useState(null),[i,l]=Se.useLocalStorageState("notif-user",null),[c,p]=d.useState([]);return d.useEffect(()=>{i!==null&&e(i.id).then(u=>{p(u)}).catch(u=>{console.log(u),p([])})},[i,e]),n.jsxRuntimeExports.jsxs("div",{className:"h-100 overflow-hidden d-flex flex-column gap-1",children:[n.jsxRuntimeExports.jsx("div",{className:"row",children:n.jsxRuntimeExports.jsx("div",{className:"col-3",children:n.jsxRuntimeExports.jsx(t,{label:o.employee,value:i,size:"sm",onSelect:u=>l(u?{id:Number(u.id),name:u.name}:null)})})}),n.jsxRuntimeExports.jsxs("div",{className:"vh-100 overflow hidden row",children:[n.jsxRuntimeExports.jsx("div",{className:"col-5 h-75 overflow-hidden",children:n.jsxRuntimeExports.jsx(fb,{history:c??[],onClick:u=>a((c==null?void 0:c.find(m=>m.id===u))??null),BnfTableComponent:r})}),s&&n.jsxRuntimeExports.jsx("div",{className:"col bg-darker h-75",children:n.jsxRuntimeExports.jsx("iframe",{title:"notification",className:"w-100 h-100",srcDoc:s==null?void 0:s.message})})]})]})},ll=({result:e,onClose:t,tableIdentifier:r,BnfTableComponent:o})=>{var l,c,p,u,m;const{texts:{imports:s},ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useMemo(()=>[{fieldName:"row",caption:s.row,type:"number",width:100},{fieldName:"column",caption:s.column,type:"number",width:100},{fieldName:"error",caption:s.error,type:"string",width:500}],[s.row,s.column,s.error]);return e?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.Alert,{variant:e.success?"success":"danger",size:"sm",className:"mb-2 p-2",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-3 align-items-start",children:[n.jsxRuntimeExports.jsxs("div",{className:"w-100",children:[n.jsxRuntimeExports.jsx("div",{className:"w-100 text-center",children:e.success?s.importSuccess:s.importFailed}),e.success&&((l=e.data)!=null&&l.added||(c=e.data)!=null&&c.updated||(p=e.data)!=null&&p.deleted)?n.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-center mt-2",children:n.jsxRuntimeExports.jsxs("div",{className:"list-group",children:[e.data.added?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importAdded(e.data.added)," "]})}):null,e.data.updated?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importUpdated(e.data.updated)," "]})}):null,e.data.deleted?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importDeleted(e.data.deleted)," "]})}):null]})}):null,!e.success&&((m=(u=e.data)==null?void 0:u.errors)==null?void 0:m.length)>0?n.jsxRuntimeExports.jsx("div",{className:"mt-3",children:n.jsxRuntimeExports.jsx(o,{columnsDef:i,data:e.data.errors,useScrollableContainer:!0,tableId:r})}):null]}),t!==void 0?n.jsxRuntimeExports.jsx(n.IconButton,{color:e.success?"success":"danger",className:n.classNames("hover-darken",e.success?"bg-success-subtle":"bg-danger-subtle"),onClick:t,children:n.jsxRuntimeExports.jsx(a,{icon:"close"})}):null]})})}):null},gb="_upload-box_9ka79_1",vb="_browse-btn_9ka79_15",cr={"upload-box":"_upload-box_9ka79_1",uploadBox:gb,"browse-btn":"_browse-btn_9ka79_15",browseBtn:vb},cl=({file:e,onFileChange:t,onImport:r,children:o,multiple:s,accept:a})=>{const{ProjectIconComponent:i,texts:{imports:l}}=d.useContext(n.LuminusComponentsContext),c=d.useCallback(async u=>{u.length>0&&t(s===!0?[...u]:u[0])},[e,s,t]),p=d.useCallback(u=>{var f;u.preventDefault();const m=(f=u.dataTransfer)==null?void 0:f.files;m&&(m==null?void 0:m.length)>0&&c(m)},[c]);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[e!==null?n.jsxRuntimeExports.jsxs("div",{className:"d-flex border rounded p-1 ps-2 bg-white justify-content-between align-items-center mb-2",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:s?e.map(u=>u.name).join(", "):e.name}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[o??null,n.jsxRuntimeExports.jsx(n.PrimaryButton,{className:"text-nowrap",size:"sm",disabled:e===null,onClick:r,children:l.start})]})]}):null,n.jsxRuntimeExports.jsxs("div",{className:n.classNames(cr.uploadBox,{[cr.active]:e!==null}),onDrop:p,onDragOver:u=>u.preventDefault(),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:l.dropHint}),n.jsxRuntimeExports.jsx("input",{type:"file",hidden:!0,id:"browse",onChange:u=>{var m;return((m=u.target)==null?void 0:m.files)&&c(u.target.files)},multiple:s,accept:a}),n.jsxRuntimeExports.jsx("label",{htmlFor:"browse",className:cr.browseBtn,children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"d-flex gap-2 align-items-center",children:[n.jsxRuntimeExports.jsx(i,{icon:"file-upload"}),l.pickFileHint]})})]})]})},hb=({otherSettingId:e,languageOptions:t,tableIdentifier:r,SettingsOutlet:o,BnfTableComponent:s,importLocalization:a})=>{const{texts:{localizations:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(t[0].id),[p,u]=d.useState(null),[m,f]=d.useState(null),x=d.useCallback(async()=>{if(p===null)return;const g=await a({file:p,lang:l});g.status==="success"&&f(g.data)},[a,l,p]);return n.jsxRuntimeExports.jsx(o,{itemId:e,title:i.localizationImport,children:m?n.jsxRuntimeExports.jsx(ll,{result:m,onClose:()=>f(null),BnfTableComponent:s,tableIdentifier:r}):n.jsxRuntimeExports.jsx(cl,{file:p,onFileChange:u,onImport:x,children:n.jsxRuntimeExports.jsx("div",{style:{minWidth:140},children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{value:l,onChange:g=>typeof g=="string"?c(g):null,options:t,label:i.importedLanguage})})})})},bb=(e,t)=>{const r=t.split(".");let o=e;for(let s=0;s<r.length;s++){const a=r[s],i=o[a];if(typeof i=="string")return i;if(i===void 0)return;o=i}},jb=({selLng:e,lngsData:t,localizationKey:r,reloadData:o,saveChanges:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useMemo(()=>{const m=t.get(e);if(m===void 0)return"";const f=bb(m,r);return m!==void 0&&f!==void 0?f:""},[t,r,e]),[l,c]=d.useState(i),p=d.useCallback(async()=>{await s([{fileName:e+".json",items:[{key:r,value:l}]}]),await o()},[r,o,s,e,l]),u=d.useMemo(()=>l!==i,[i,l]);return n.jsxRuntimeExports.jsxs("div",{className:"d-flex",children:[n.jsxRuntimeExports.jsx(n.TextInput,{label:e+r,type:"text",value:l,onChange:m=>{c(typeof m!="string"?"":m)},InputContainer:n.RowLabelInput,withoutLabel:!0,className:"flex-grow-1"}),u?n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>c(i),children:n.jsxRuntimeExports.jsx(a,{icon:"cancel"})}),n.jsxRuntimeExports.jsx(n.IconButton,{onClick:p,children:n.jsxRuntimeExports.jsx(a,{icon:"check"})})]}):null]})},Eb="_keysTable_1j6ns_1",yb="_subgrid_1j6ns_14",Rb="_lngSelectRow_1j6ns_19",Cb="_tableItem_1j6ns_26",Nb="_tableFooter_1j6ns_29",wb="_tableFullWidth_1j6ns_35",Sb="_tableBody_1j6ns_39",Db="_lngSelect_1j6ns_19",Ib="_addLng_1j6ns_52",_b="_fileSelect_1j6ns_57",Ob="_searchBox_1j6ns_61",Ne={keysTable:Eb,subgrid:yb,lngSelectRow:Rb,tableItem:Cb,tableFooter:Nb,tableFullWidth:wb,tableBody:Sb,lngSelect:Db,addLng:Ib,fileSelect:_b,searchBox:Ob},gn=50,Tb=(e,t)=>{const r=t.split(".");let o=e;for(let s=0;s<r.length;s++){const a=r[s],i=o[a];if(typeof i=="string")return i;if(i===void 0)return;o=i}},kb=({languageOptions:e,envMode:t,getOtherSettingsUrl:r,downloadXls:o,saveChanges:s,localizationFilesOptions:a,remoteLocalesRoot:i})=>{const{texts:{localizations:l},ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(1),[m,f]=d.useState(new Map),[x,g]=d.useState(null),[b,v]=d.useState(""),[h,y]=d.useState(new Set),R=d.useCallback(C=>{f(new Map),y(C)},[]),j=d.useMemo(()=>e.filter(C=>!h.has(C.id)),[h,e]),E=d.useMemo(()=>{if(m.size===0)return[];const C=new Set,O=(L,$="")=>{if(typeof L[1]=="object"){Object.entries(L[1]).forEach(U=>O(U,$+L[0]+"."));return}C.add($+L[0])};Array.from(m).forEach(L=>{Object.entries(L[1]).forEach($=>O($))});const F=Array.from(C),P=a.find(L=>L.path===x);return((P==null?void 0:P.type)==="report"?F.filter(L=>{const $=L.split(".");return $[$.length-1]==="caption"}):F).map(L=>({key:L,lngData:new Map(Array.from(h).map($=>{const U=m.get($);return[$,(U===void 0?void 0:Tb(U,L))??""]}))}))},[m,a,x,h]),S=d.useMemo(()=>E.filter(C=>n.stringSearchWithin(C.key,b)||Array.from(C.lngData).some(O=>typeof(O==null?void 0:O[1])!="string"?!1:n.stringSearchWithin((O==null?void 0:O[1])??"",b))),[b,E]),D=d.useMemo(()=>Math.ceil(S.length/gn),[S.length]),I=d.useCallback(C=>{C!==null&&u(()=>Math.max(1,Math.min(C,D)))},[D]),w=d.useCallback(async()=>{if(x===null)return;const C=Array.from(h).map(F=>(async()=>{const P=await n.axios.get(`${i}${x==null?void 0:x.replace("{{lng}}",F)}&v=${new Date().getTime()}`,{responseType:"json"});return[F,P.data]})()),O=await Promise.allSettled(C);f(new Map(O.map(F=>F.status==="fulfilled"?F.value:["",{}])))},[i,x,h]),_=d.useCallback(async()=>{w()},[w]),T=d.useMemo(()=>j.length>0,[j.length]),A=d.useMemo(()=>h.size+1+(T?1:0),[T,h.size]);return d.useEffect(()=>{I(p)},[I,p,S]),d.useEffect(()=>{w()},[w]),i===void 0?n.jsxRuntimeExports.jsx(n.PageContainer,{children:n.jsxRuntimeExports.jsxs(n.Alert,{variant:"danger",className:"fw-bold",children:[l.cantRunLocalizationSettings,n.jsxRuntimeExports.jsx("br",{}),n.jsxRuntimeExports.jsx("br",{}),l.envNotConnectedToRemote(t.toUpperCase())]})}):n.jsxRuntimeExports.jsx(n.PageContainer,{title:n.jsxRuntimeExports.jsx("div",{className:"d-flex gap-4",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:l.localizationSettings})}),helmet:l.localizationSettings,variant:"fullScreen",children:n.jsxRuntimeExports.jsxs("div",{className:Ne.keysTable,style:{"--keys-table-columns":A,"--adding-column":T?1:0},children:[n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.tableFullWidth,"d-flex align-items-center justify-content-between gap-2 px-2 mt-1"),children:[n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:a.map(C=>({id:C.path,name:C.nameTranslationKey})),value:x,onChange:C=>typeof C!="number"?g(C):null,size:"sm",label:l.localizationFile,className:Ne.fileSelect,noSortOptions:!0}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.searchBox,"d-flex align-items-center gap-2 border rounded"),children:[n.jsxRuntimeExports.jsx(c,{icon:"search",className:"text-muted",size:18,iconProps:{className:"mt- me-n4"}}),n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",value:b,onChange:C=>v(typeof C=="string"?C:""),size:"sm",showClearIcon:b!=="",withoutLabel:!0,placeholder:"vyhledávat...",className:"placeholder-muted bg-transparent border-0 my-0 py-0 w-100"})]}),n.jsxRuntimeExports.jsxs(n.ResponsiveContextDropdown,{children:[n.jsxRuntimeExports.jsx(n.ResponsiveContextDropdownItem,{cKey:"export",hideOn:"always",onClick:o,icon:n.jsxRuntimeExports.jsx(n.FileExtensionIcon,{fileExtension:"xls"}),children:l.xlsExport}),n.jsxRuntimeExports.jsx(n.ResponsiveContextDropdownItem,{cKey:"import",hideOn:"always",to:r("localizationImport"),icon:n.jsxRuntimeExports.jsx(c,{icon:"link"}),children:l.import})]})]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.lngSelectRow),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:l.key}),Array.from(h).map((C,O)=>n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:e.filter(F=>F.id===C||!h.has(F.id)),value:C,onChange:F=>R(P=>F===null?(P.delete(C),new Set(P)):(typeof F=="string"&&(P.delete(C),P.add(F)),new Set(P))),size:"sm",label:`${l.language} ${O+1}`,withoutLabel:!0,InputContainer:n.RowLabelInput,className:n.classNames(Ne.lngSelect)},C)),T?n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:j,value:null,onChange:C=>R(O=>(typeof C=="string"&&O.add(C),new Set(O))),size:"sm",label:l.addLanguage,InputContainer:n.RowLabelInput,className:n.classNames(Ne.lngSelect,Ne.addLng)}):null]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.tableBody),children:[E.length===0||S.length===0?n.jsxRuntimeExports.jsx(n.Alert,{variant:"warning",className:n.classNames(Ne.tableFullWidth,Ne.emptyTableAlert,"my-n1"),children:E.length===0?l.noDataLoaded:S.length===0?l.noDataFiltered:null}):null,S.slice(gn*(p-1),gn*p).map(C=>n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.tableItem),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",children:C.key}),Array.from(h).map(O=>n.jsxRuntimeExports.jsx(jb,{localizationKey:C.key,lngsData:m,selLng:O,reloadData:_,saveChanges:s},O))]},C.key))]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames("d-flex align-items-center justify-content-around gap-3 px-2 py-0",Ne.tableFooter),children:[n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[l.keyCount,":"," ",n.jsxRuntimeExports.jsx("span",{className:"fw-bold",children:S.length})]})}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[l.page,": "]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>I(p-1),children:n.jsxRuntimeExports.jsx(c,{icon:"minus"})}),n.jsxRuntimeExports.jsx("div",{style:{width:30},children:n.jsxRuntimeExports.jsx(Zi,{value:p,onChange:I,InputContainer:n.RowLabelInput,withoutLabel:!0,size:"sm"})}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:["/",Math.ceil(S.length/gn)]}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>I(p+1),children:n.jsxRuntimeExports.jsx(c,{icon:"plus"})})]})]})]})]})})},Qs=3,ul=(e,t,r)=>{var s;if((t==null?void 0:t.customPathBuilder)!==void 0)return t.customPathBuilder(e,t);const o=(s=r.find(a=>a.key===e.type))==null?void 0:s.toPath;return o?`${o}/${e.searchKey}`:"/not-found"},dl=(e,t)=>{var r;return((r=t==null?void 0:t.customNameBuilder)==null?void 0:r.call(t,e))??e.name},pl=(e,t,r,o,s)=>{const a=n.useAxios(),[i,l]=d.useState(!1),[c,p]=d.useState([]),u=e==="",m=d.useCallback(()=>{p([]),!(t.length<Qs)&&(l(!0),a.get(ze.generateApiPath(r,{path:{query:t},query:{type:u?void 0:e,count:o?void 0:u?5:20}})).then(({data:g})=>{p(g),l(!1)}).catch(()=>{l(!1)}))},[a,o,u,t,r,e]),f=d.useMemo(()=>{if(s===void 0)return[];if(t.length<Qs&&e!=="XAP")return[];const g=[];return s.forEach(b=>{const v=b.items.filter(h=>n.stringSearchWithin(h.name,decodeURIComponent(t)));v.length>0&&g.push({key:{...b.key,totalCount:v.length},items:v})}),g},[t,s,e]),x=d.useMemo(()=>f.concat(c),[c,f]);return d.useEffect(()=>{m()},[m]),{isLoading:i,searchItems:x}},Pb="_input-group_1hcpm_1",Ab="_input-group-text_1hcpm_5",Bb="_left_1hcpm_9",Mb="_right_1hcpm_13",Lb="_input_1hcpm_1",Fb="_submit-button_1hcpm_20",it={"input-group":"_input-group_1hcpm_1",inputGroup:Pb,"input-group-text":"_input-group-text_1hcpm_5",inputGroupText:Ab,left:Bb,right:Mb,input:Lb,"submit-button":"_submit-button_1hcpm_20",submitButton:Fb},Vb=({searchTypes:e,selectedType:t,setSelectedType:r})=>n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle,icon:null,text:t==null?void 0:t.text}),children:e.map(o=>n.jsxRuntimeExports.jsx(n.DropdownItem,{icon:null,onClick:()=>r(o.key),children:o.text},o.key))}),$b="_dropdown_1ddrg_1",Gb="_open_1ddrg_12",Wb="_loading-container_1ddrg_15",Ub="_groups-container_1ddrg_22",Hb="_group_1ddrg_22",zb="_header_1ddrg_26",qb="_item_1ddrg_33",ut={dropdown:$b,open:Gb,"loading-container":"_loading-container_1ddrg_15",loadingContainer:Wb,"groups-container":"_groups-container_1ddrg_22",groupsContainer:Ub,group:Hb,header:zb,item:qb},Yb=({item:e,searchTypes:t,onCancel:r})=>{const o=d.useMemo(()=>t.find(i=>i.key===e.type),[e.type,t]),s=d.useMemo(()=>ul(e,o,t),[e,o,t]),a=d.useMemo(()=>dl(e,o),[e,o]);return n.jsxRuntimeExports.jsxs(oe.Link,{to:s,className:n.classNames("search-item d-flex gap-3 align-items-center justify-content-between",ut.item),onClick:r,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-nowrap text-truncate",children:a}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:n.jsxRuntimeExports.jsx(n.MdOutlineArrowOutward,{})})]})},Kb=({show:e,query:t,onCancel:r,groups:o,isLoading:s,searchTypes:a})=>{const{texts:{appSearch:i}}=d.useContext(n.LuminusComponentsContext),l=d.useRef(null);return n.useClickOutside([l],r),n.jsxRuntimeExports.jsx("div",{ref:l,className:n.classNames("luminus-app-search-dropdown shadow rounded",ut.dropdown,{[ut.open]:e}),children:s?n.jsxRuntimeExports.jsx("div",{className:ut.loadingContainer,children:n.jsxRuntimeExports.jsx(n.Spinner,{animation:"border",variant:"primary"})}):n.jsxRuntimeExports.jsx("div",{className:ut.groupsContainer,children:o==null?void 0:o.map(c=>{var p;return n.jsxRuntimeExports.jsxs("div",{className:n.classNames(ut.group),children:[n.jsxRuntimeExports.jsxs(oe.Link,{to:`/search?query=${t}&type=${c.key.category}`,className:n.classNames("group-header",ut.header),onClick:r,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"text-primary",children:c.key.categoryName}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"caption",children:[c.items.length," ",i.amountFrom," ",c.key.totalCount]})]}),(p=c.items)==null?void 0:p.map((u,m)=>n.jsxRuntimeExports.jsx(Yb,{item:u,onCancel:r,searchTypes:a},m))]},c.key.category)})})})},Xb=({searchTypes:e,navigateFunction:t,currentPath:r,homePath:o="/",className:s,staticAppItems:a,searchEndpointUri:i})=>{var j;const{texts:{appSearch:l}}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState(e.length>0?((j=e.at(0))==null?void 0:j.key)??null:null),u=d.useMemo(()=>e.find(E=>E.key===c)??null,[e,c]),[m,f]=d.useState(""),[x,g]=n.a(encodeURIComponent(m),500),{isLoading:b,searchItems:v}=pl(c,x,i,!1,a),[h,y]=d.useState(!1);d.useEffect(()=>{(v.length>0||b)&&y(!0)},[v,b]);const R=d.useRef(null);return d.useEffect(()=>{var E;f(""),r===o&&((E=R.current)==null||E.focus())},[r,o]),n.jsxRuntimeExports.jsx(n.Form,{className:"w-100 d-flex align-items-center justify-content-center",onSubmit:E=>{E.preventDefault(),E.stopPropagation(),g.flush(),y(!1),x.length>2&&t(`/search?query=${x}${u&&u.key&&`&type=${u==null?void 0:u.key}`}`)},children:n.jsxRuntimeExports.jsxs(hn,{className:n.classNames(it.inputGroup,s),children:[n.jsxRuntimeExports.jsx(hn.Text,{className:n.classNames("p-1 rounded",it.inputGroupText,it.left),children:n.jsxRuntimeExports.jsx(Vb,{searchTypes:e,selectedType:u,setSelectedType:p})}),n.jsxRuntimeExports.jsx(n.Form.Control,{ref:R,placeholder:l.searchPlaceholder,type:"text",size:"sm",className:n.classNames("luminus-app-search-input",it.input),value:m,onChange:E=>{var S;return f(((S=E.target)==null?void 0:S.value)??"")},onFocus:()=>v.length>0&&y(!0)}),n.jsxRuntimeExports.jsx(hn.Text,{className:n.classNames("p-0 rounded",it.inputGroupText,it.right),children:n.jsxRuntimeExports.jsx("button",{type:"submit",className:n.classNames("text-primary",it.submitButton),children:n.jsxRuntimeExports.jsx(n.FaSearch,{})})}),n.jsxRuntimeExports.jsx(Kb,{query:x,searchTypes:e,show:h,onCancel:()=>y(!1),groups:v,isLoading:b})]})})},Qb=({item:e,searchTypes:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext),o=d.useMemo(()=>t.find(i=>i.key===e.type),[e.type,t]),s=d.useMemo(()=>ul(e,o,t),[e,o,t]),a=d.useMemo(()=>dl(e,o),[e,o]);return n.jsxRuntimeExports.jsxs(oe.Link,{to:s,className:"text-nowrap list-group-item list-group-item-action d-flex justify-content-between align-items-center",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:a}),n.jsxRuntimeExports.jsx(r,{icon:"chevron-right",className:"text-primary"})]})},Jb=({query:e,type:t,appSearchTypes:r,searchEndpointUri:o,staticAppItems:s})=>{var u,m;const{texts:{appSearch:a}}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(""),{searchItems:c,isLoading:p}=pl(t,e,o,!0,s);return d.useEffect(()=>{var f;i||c===null||c.length===0||l(((f=c[0].key)==null?void 0:f.category)??"")},[c,i]),c===null?null:n.jsxRuntimeExports.jsx(n.PageContainer,{variant:"fullScreen",children:p?n.jsxRuntimeExports.jsx(we.Loading,{}):c.length===0?n.jsxRuntimeExports.jsx("div",{className:"alert alert-warning",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:a.noResultsFor(e)})}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(co,{activeTab:i,onSelect:f=>l((f==null?void 0:f.toString())??""),children:c.map(f=>{var x,g;return n.jsxRuntimeExports.jsx(uo,{eventKey:((x=f.key)==null?void 0:x.category)??"",children:((g=f.key)==null?void 0:g.categoryName)??""},f.key.category)})}),n.jsxRuntimeExports.jsx(il,{eventKey:i,activeTab:i,fullHeightNoOverflow:!0,children:n.jsxRuntimeExports.jsx("div",{className:"list-group h-100 overflow-auto",children:(m=(u=c.find(f=>f.key.category===i))==null?void 0:u.items)==null?void 0:m.map((f,x)=>n.jsxRuntimeExports.jsx(Qb,{item:f,searchTypes:r},x))})})]})})},Zb=()=>{const{texts:{userSettings:e}}=d.useContext(n.LuminusComponentsContext),[t,r]=Se.useLocalStorageState("file-download-try-opening",!0);return n.jsxRuntimeExports.jsx(pt,{title:e.downloads,defaultOpen:!0,children:n.jsxRuntimeExports.jsx("div",{className:"p-2 bg-white rounded",children:n.jsxRuntimeExports.jsx(Qt,{type:"switch",value:t===void 0?!0:t,onChange:r,label:e.tryOpenFileLabel})})})},ej=({show:e,handleClose:t,onConfirm:r,apiCreateBackup:o})=>{const{texts:{userSettings:s}}=d.useContext(n.LuminusComponentsContext),{zStringRequired:a}=n.useZodSchemaTypes(),{addNotification:i}=n.useNotifications(),l=n.useAxios(),{startLoading:c,stopLoading:p}=d.useContext(n.LoadingContext),[u,m]=d.useState(null),f=n.z.object({name:a()}),x=De.useForm({resolver:n.t(f)}),g=d.useCallback(async(v,h)=>(c("localStorageSettingPost"),l.post(o,{name:v,setting:h}).then(()=>!0).catch(()=>!1).finally(()=>p("localStorageSettingPost"))),[l,o,c,p]),b=async v=>{await g(v.name,JSON.stringify(u))&&(i(s.localStorageCreateBackupSuccess,"success"),r())};return d.useEffect(()=>{e&&m(ze.dumpLocalStorage())},[e]),n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:()=>t(),children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:s.localStorageCreateBackup})}),n.jsxRuntimeExports.jsx(De.FormProvider,{...x,children:n.jsxRuntimeExports.jsxs(n.Form,{onSubmit:x.handleSubmit(b),noValidate:!0,children:[n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",size:"sm",children:s.localStorageCreateBackupInfo(Object.keys(u||{}).length)}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{required:!0,label:s.localStorageCreateBackupName,formField:"name",type:"text"})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{type:"submit",children:s.localStorageCreateBackupSave})})]})})]})},vn={apiGetBackups:"/localStorageSettings",apiCreateBackup:"/localStorageSettings",apiDeleteBackup:"/localStorageSettings"},tj=({apiUrls:{apiGetBackups:e=vn.apiGetBackups,apiCreateBackup:t=vn.apiCreateBackup,apiDeleteBackup:r=vn.apiDeleteBackup}=vn})=>{const{ProjectIconComponent:o,texts:{userSettings:s}}=d.useContext(n.LuminusComponentsContext),{confirm:a}=n.useConfirm(),i=n.useAxios(),{startLoading:l,stopLoading:c}=d.useContext(n.LoadingContext),{addNotification:p}=n.useNotifications(),[u,m]=d.useState(!1),{data:f,setData:x,reloadData:g}=Se.useGetApiData(e),b=d.useCallback(async y=>(l("localStorageSettingDelete"),i.delete(`${r}/${y}`).then(()=>!0).catch(()=>!1).finally(()=>c("localStorageSettingDelete"))),[i,r,l,c]),v=d.useCallback(async y=>{await a(s.localStorageDeleteBackupConfirm)&&await b(y)&&(p(s.localStorageDeleteBackupSuccess,"success"),x(R=>(R==null?void 0:R.filter(j=>j.id!==y))??null))},[a,s,b,p,x]),h=d.useCallback(async y=>{y.setting&&await a(s.localStorageLoadBackup)&&(ze.restoreLocalStorage(y.setting)?p(s.localStorageLoadBackupSuccess,"success"):p(s.localStorageLoadBackupError,"danger"))},[a,s,p]);return n.jsxRuntimeExports.jsxs(pt,{title:s.localStorage,defaultOpen:!0,children:[f&&f.length>0?n.jsxRuntimeExports.jsx("div",{className:"list-group",children:f.map((y,R)=>n.jsxRuntimeExports.jsxs("div",{role:"button",className:"list-group-item list-group-item-action d-flex justify-content-between align-items-center",onClick:()=>h(y),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:y.name}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-muted",children:y.date}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"danger",onClick:j=>{j.stopPropagation(),v(y.id)},children:n.jsxRuntimeExports.jsx(o,{icon:"delete"})})]})]},R))}):f?n.jsxRuntimeExports.jsx(n.Alert,{variant:"secondary",size:"sm",children:s.localStorageNoBackups}):null,n.jsxRuntimeExports.jsx(n.PrimaryButton,{className:"mt-3",size:"sm",onClick:()=>m(!0),children:s.localStorageCreateBackup}),n.jsxRuntimeExports.jsx(ej,{show:u,handleClose:()=>m(!1),onConfirm:()=>{m(!1),g()},apiCreateBackup:t})]})};exports.Alert=n.Alert;exports.AvatarIcon=n.AvatarIcon;exports.Backdrop=n.Backdrop;exports.ContextButton=n.ContextButton;exports.Documents=n.Documents;exports.Dropdown=n.Dropdown;exports.DropdownDivider=n.DropdownDivider;exports.DropdownItem=n.DropdownItem;exports.DropdownToggle=n.DropdownToggle;exports.FileExtensionIcon=n.FileExtensionIcon;exports.FileUploadContextButton=n.FileUploadContextButton;exports.FloatingLabelInput=n.FloatingLabelInput;exports.HookFormTextAreaInput=n.HookFormTextAreaInput;exports.HookFormTextInput=n.HookFormTextInput;exports.HtmlTooltip=n.HtmlTooltip;exports.IconButton=n.IconButton;exports.InvalidFeedback=n.InvalidFeedback;exports.NoInputContainer=n.NoInputContainer;exports.PrimaryButton=n.PrimaryButton;exports.ResponsiveContextDropdown=n.ResponsiveContextDropdown;exports.ResponsiveContextDropdownItem=n.ResponsiveContextDropdownItem;exports.RowLabelInput=n.RowLabelInput;exports.SelectInput=n.CustomSelectInput;exports.SimplePicker=n.SimplePicker;exports.SimpleToggle=n.SimpleDropdownToggle;exports.SimpleTooltip=n.SimpleTooltip;exports.TextInput=n.TextInput;exports.Typography=n.Typography;exports.UserAvatarToggle=n.UserAvatarToggle;exports.Loading=we.Loading;exports.AlertItem=Vi;exports.ApiFileDownloadButton=vl;exports.AppSearch=Xb;exports.Approval=sh;exports.AuthTemplate=qx;exports.Badge=jc;exports.BarChart=Gv;exports.Card=Gt;exports.CheckInput=Qt;exports.Collapse=pt;exports.ColumnResizer=rl;exports.ContactButtonQrModal=Wi;exports.ContactInput=jg;exports.ContactsLink=Ui;exports.DisabledRowLabelLink=Bv;exports.DropdownPicker=Eg;exports.DynamicForm=kv;exports.EmployeeSmallPhoto=Fv;exports.ErrorBoundary=ya;exports.FileDownloadUS=Zb;exports.FileUploadButton=Ll;exports.FileUploadDropdownItem=Rc;exports.Flexmonster=al;exports.FloatingActionContainer=$i;exports.FloatingFormSubmit=ba;exports.FromToDatePicker=Zg;exports.HomeDashboard=fc;exports.HookFormCheckInput=xh;exports.HookFormContactInput=vh;exports.HookFormDropdownPicker=hh;exports.HookFormFileInput=bh;exports.HookFormFloatingSubmit=sl;exports.HookFormNumericStepperInput=jh;exports.HookFormNumericTextInput=Eh;exports.HookFormRadioInput=gh;exports.HookFormSelectInput=Cr;exports.HrWithText=ol;exports.IconPicker=po;exports.ImgApi=Rr;exports.ImgBlob=dg;exports.ImgDirect=so;exports.ImportFilePicker=cl;exports.ImportResult=ll;exports.LanguageSwitch=Mv;exports.LineChart=ov;exports.LoadingBlock=Js;exports.LocalStorageBackupUS=tj;exports.LocalizationImport=hb;exports.LocalizationSettings=kb;exports.MessageBoard=Bh;exports.MiniDetailTooltip=nh;exports.MiniDetailValueItem=rh;exports.MonthPicker=ja;exports.MonthPickerSearchParams=ev;exports.NotificationActions=mb;exports.NotificationUsers=xb;exports.NumericFormat=$v;exports.NumericStepperInput=Rg;exports.NumericTextInput=Zi;exports.PermissionSubstituteDetail=Rh;exports.PermissionSubstituteTable=fh;exports.PhotoLibrary=Fi;exports.PhotoLightbox=Li;exports.PieChart=nv;exports.RadioInput=el;exports.ReportPage=Oh;exports.ReportsIndexPage=Jv;exports.ResponsiveTabs=Hh;exports.RouteLink=oh;exports.SearchBox=Vv;exports.SearchPage=Jb;exports.SettingsFormPicker=Av;exports.ShortcutLinks=sb;exports.ShortcutLinksProvider=lb;exports.ShortcutLinksSetup=Jh;exports.StateToggle=mh;exports.Tab=uo;exports.TabPanel=il;exports.Tabs=co;exports.TextAreaInput=yg;exports.Timeline=Gi;exports.TypedFormGroup=Lv;exports.UserAvatarValueFormat=Th;exports.VersionInfo=eg;exports.WidgetCard=mr;exports.YearPicker=Ea;exports.YearPickerSearchParams=tv;exports.useShortcutLinksContext=mo;
|
|
186
|
+
`),a=!1),Object.assign(Object.assign({},e),{allowNegative:a})}function zg(e){e=Hg(e),e.decimalSeparator,e.allowedDecimalSeparators,e.thousandsGroupStyle;var t=e.suffix,r=e.allowNegative,o=e.allowLeadingZeros,s=e.onKeyDown;s===void 0&&(s=Qe);var a=e.onBlur;a===void 0&&(a=Qe);var i=e.thousandSeparator,l=e.decimalScale,c=e.fixedDecimalScale,p=e.prefix;p===void 0&&(p="");var u=e.defaultValue,m=e.value,f=e.valueIsNumericString,x=e.onValueChange,g=zi(e,["decimalSeparator","allowedDecimalSeparators","thousandsGroupStyle","suffix","allowNegative","allowLeadingZeros","onKeyDown","onBlur","thousandSeparator","decimalScale","fixedDecimalScale","prefix","defaultValue","value","valueIsNumericString","onValueChange"]),b=Pn(e),v=b.decimalSeparator,h=b.allowedDecimalSeparators,y=function(P){return Os(P,e)},R=function(P,B){return Wg(P,B,e)},j=bt(m)?u:m,E=f??Gg(j,p,t);bt(m)?bt(u)||(E=E||typeof u=="number"):E=E||typeof m=="number";var S=function(P){return qi(P)?P:(typeof P=="number"&&(P=Xi(P)),E&&typeof l=="number"?Is(P,l,!!c):P)},D=Ji(S(m),S(u),!!E,y,R,x),I=D[0],w=I.numAsString,_=I.formattedValue,T=D[1],A=function(P){var B=P.target,G=P.key,L=B.selectionStart,$=B.selectionEnd,U=B.value;if(U===void 0&&(U=""),(G==="Backspace"||G==="Delete")&&$<p.length){P.preventDefault();return}if(L!==$){s(P);return}G==="Backspace"&&U[0]==="-"&&L===p.length+1&&r&&dt(B,1),l&&c&&(G==="Backspace"&&U[L-1]===v?(dt(B,L-1),P.preventDefault()):G==="Delete"&&U[L]===v&&P.preventDefault()),h!=null&&h.includes(G)&&U[L]===v&&dt(B,L+1);var q=i===!0?",":i;G==="Backspace"&&U[L-1]===q&&dt(B,L-1),G==="Delete"&&U[L]===q&&dt(B,L+1),s(P)},C=function(P){var B=w;if(B.match(/\d/g)||(B=""),o||(B=Ig(B)),c&&l&&(B=Is(B,l,c)),B!==w){var G=Os(B,e);T({formattedValue:G,value:B,floatValue:parseFloat(B)},{event:P,source:Jt.event})}a(P)},O=function(P){return P===v?!0:Zt(P)},F=function(P){var B=P.currentValue,G=P.lastValue,L=P.formattedValue,$=P.currentValueIndex,U=P.formattedValueIndex,q=B[$],X=L[U],Q=Qi(G,B),le=Q.to,V=function(Y){return R(Y).indexOf(".")+p.length};return m===0&&c&&l&&B[le.start]===v&&V(B)<$&&V(L)>U?!1:$>=le.start&&$<le.end&&h&&h.includes(q)&&X===v?!0:q===X};return Object.assign(Object.assign({},g),{value:_,valueIsNumericString:!1,isValidInputCharacter:O,isCharacterSame:F,onValueChange:T,format:y,removeFormatting:R,getCaretBoundary:function(P){return Ug(P,e)},onKeyDown:A,onBlur:C})}function io(e){var t=zg(e);return d.createElement(Fg,Object.assign({},t))}const Zi=({InputContainer:e=n.FloatingLabelInput,value:t,onChange:r,debounceMs:o,label:s,withoutLabel:a,placeholder:i,size:l,hidden:c,disabled:p,showClearIcon:u,clearValue:m,className:f,step:x,noSelectOnFocus:g,decimalScale:b,fixedDecimalScale:v=!1,numberPrefix:h,numberSuffix:y,min:R,max:j,hint:E})=>{const S=d.useCallback(()=>{if(!r)return;const A=m??null;r(A?Number(A):null)},[m,r]),D=d.useRef(null),[I,w]=d.useState((t==null?void 0:t.toString())??""),_=d.useCallback(A=>{const C=A;r&&r(C==null||C===""?null:Number(C))},[r]),T=d.useCallback(A=>{var O,F;let C=parseFloat(((F=(O=A.target)==null?void 0:O.value)==null?void 0:F.replaceAll(" ","").replaceAll(",","."))??0);if(Number.isNaN(C)&&(C=0),!o){_(C.toString());return}w(C.toString()),D.current!==null&&window.clearTimeout(D.current),D.current=window.setTimeout(()=>{_(C.toString())},o)},[o,_]);return d.useEffect(()=>{w(t===null?"":t.toString())},[j,R,t]),d.useEffect(()=>{j!==void 0&&Number(I)>j&&w(j.toString()),R!==void 0&&Number(I)<R&&w(R.toString())},[I,j,R,w]),d.useEffect(()=>{!r||t===null||(j!==void 0&&t>j&&r(j),R!==void 0&&t<R&&r(R))},[t,j,R,r]),n.jsxRuntimeExports.jsxs(e,{withoutLabel:a,label:s??"",hidden:c,className:f,hint:E,disabled:p,children:[n.jsxRuntimeExports.jsx(io,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:b,fixedDecimalScale:v,prefix:h,suffix:y,defaultValue:"",value:o?I:(t==null?void 0:t.toString())??"",placeholder:i??s,onFocus:A=>{!g&&A.target.select()},onChange:T,hidden:c,disabled:p,className:n.classNames("form-control text-end w-100",{[`form-control-${l}`]:l}),step:x,min:R,max:j}),u&&t!==null&&r&&!p&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:S,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})})]})},el=({InputContainer:e=n.RowLabelInput,label:t,options:r,disabled:o,hidden:s,className:a,value:i,onChange:l})=>{const c=d.useCallback(p=>{l&&l(p.target.value)},[l]);return n.jsxRuntimeExports.jsx(e,{isForRadioInput:!0,hidden:s,withoutLabel:!t,label:`${t}`,className:a,disabled:o,children:r.map(p=>n.jsxRuntimeExports.jsx(n.Form.Check,{id:`radio-${p.id}`,label:p.name,type:"radio",value:p.id??"",checked:i===p.id,onChange:c,hidden:s,disabled:o,className:"w-100"},p.id))})},Ts=[["D","day"],["M","month"],["Y","year"],["C","custom"]],qg="_wrapper_qfqux_1",Yg="_lg_qfqux_7",Kg="_sm_qfqux_11",Xg="_md_qfqux_14",ks={wrapper:qg,lg:Yg,sm:Kg,md:Xg},jn=e=>{const t=new Date(e),r=n.trimIsoDate(t.toISOString());t.setUTCMonth(t.getUTCMonth()+1),t.setUTCDate(t.getUTCDate()-1);const o=n.trimIsoDate(t.toISOString());return{from:r,to:o}},$t=e=>{const t=new Date(e),r=n.trimIsoDate(t.toISOString());t.setUTCFullYear(t.getUTCFullYear()+1),t.setUTCDate(t.getUTCDate()-1);const o=n.trimIsoDate(t.toISOString());return{from:r,to:o}},Qg=(e,t)=>{if(e===null||t===null)return"C";if(e===t)return"D";const r=new Date(e);return jn(r).to===t?"M":$t(r).to===t?"Y":(console.log($t(r),t),"C")},Jg=(e,t,r)=>{const o=d.useCallback((i,l)=>{if(e==="C"){r(c=>({...c,[i]:l}));return}switch(i){case"from":r(c=>{if(l===null)return c;const p=new Date(l);if(e==="D"){const u=n.trimIsoDate(p.toISOString());return{from:u,to:u}}return e==="M"?jn(p):e==="Y"?$t(p):c});break;case"to":t("C"),r(c=>({...c,[i]:l}));break}},[e,r,t]),s=d.useCallback(i=>{r(l=>{if(l.from===null||l.to===null)return l;const c=new Date(l.from);c.setHours(c.getHours()-c.getTimezoneOffset()/60);const p=new Date(l.to);if(e==="D"){c.setDate(c.getDate()+i);const u=n.trimIsoDate(c.toISOString());return{from:u,to:u}}return e==="M"?(c.setMonth(c.getMonth()+i),jn(c)):e==="Y"?(c.setFullYear(c.getFullYear()+i),$t(c)):{from:n.trimIsoDate(c.toISOString()),to:n.trimIsoDate(p.toISOString())}})},[e,r]),a=d.useCallback(i=>{i==="D"?r(l=>({from:l.from,to:l.from})):i==="M"?r(l=>{if(l.from===null)return l;const c=n.getFirstDayOfMonth(l.from);return jn(c)}):i==="Y"&&r(l=>{if(l.from===null)return l;const c=n.getFirstDayOfYear(new Date(l.from).getFullYear());return $t(c)}),t(i)},[r,t]);return{setFromToProp:o,handleArrowClick:s,handleRangeChange:a}},Zg=({fromtoState:[e,t],className:r,size:o})=>{const{texts:{date:s},ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState("C"),{handleArrowClick:c,handleRangeChange:p,setFromToProp:u}=Jg(i,l,t),m=d.useMemo(()=>i==="C",[i]),f=d.useRef(!0);return d.useEffect(()=>{if(f.current){const x=Qg(e.from,e.to);l(x),f.current=!1}},[e.from,e.to]),n.jsxRuntimeExports.jsxs("div",{className:n.classNames("d-inline-flex align-items-center gap-1",ks.wrapper,ks[o??"md"],r),children:[n.jsxRuntimeExports.jsx(n.IconButton,{disabled:m,onClick:()=>{c(-1)},children:n.jsxRuntimeExports.jsx(a,{icon:"chevron-left"})}),n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.TextInput,{type:"date",value:e.from,onChange:x=>u("from",x===null?null:x.toString()),InputContainer:n.NoInputContainer,size:o}),n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{text:s[Ts.find(x=>x[0]===i)[1]].substring(0,1),as:n.FromToDatePickerDropdownToggle}),children:Ts.map(x=>n.jsxRuntimeExports.jsx(n.DropdownItem,{disabled:x[0]===i,className:n.classNames(x[0]===i?"text-black-50":""),onClick:()=>p(x[0]),role:"button",children:s[x[1]]},x[0]))}),n.jsxRuntimeExports.jsx(n.TextInput,{type:"date",value:e.to,onChange:x=>u("to",x===null?null:x.toString()),InputContainer:n.NoInputContainer,size:o})]})}),n.jsxRuntimeExports.jsx(n.IconButton,{disabled:m,onClick:()=>{c(1)},children:n.jsxRuntimeExports.jsx(a,{icon:"chevron-right"})})]})},ev=({defaultMonth:e,searchKey:t="monthFrom",yearMin:r,yearMax:o})=>{const{localizationContext:s}=d.useContext(n.LuminusComponentsContext),{dateFnsLocale:a}=d.useContext(s),{searchParams:i,setSearch:l}=Nt.useSearchQuery(),c=i.get(t),p=c?n.parseISO(c):e,u=d.useCallback(m=>{l(t,ur(m,{representation:"date"}))},[t,l]);return n.jsxRuntimeExports.jsx(ja,{month:p,onChangeMonth:u,locale:a,yearMin:r,yearMax:o})},tv=({defaultYear:e,searchKey:t="yearFrom",...r})=>{const[o,s]=Nt.useSearchQueryState(t,ur(e,{representation:"date"})),a=o?n.parseISO(o):e,i=d.useCallback(l=>{s(ur(l,{representation:"date"}))},[s]);return n.jsxRuntimeExports.jsx(Ea,{year:a,onChangeYear:i,...r})},nv=({data:e,showLegend:t=!1,legendPosition:r="left",onClick:o})=>{const{chartColorPalette:s}=d.useContext(n.LuminusComponentsContext);return n.jsxRuntimeExports.jsx(n._,{data:e,margin:{top:50,right:t&&r==="right"?200:100,bottom:50,left:t&&r==="left"?200:100},innerRadius:.4,padAngle:4,cornerRadius:2,activeOuterRadiusOffset:10,borderWidth:2,borderColor:{from:"color",modifiers:[["darker",.5]]},colors:s,arcLinkLabelsSkipAngle:10,arcLinkLabelsTextColor:{from:"color",modifiers:[["darker",.5]]},arcLinkLabelsThickness:2,arcLinkLabelsColor:{from:"color"},enableArcLabels:!1,legends:t?[{anchor:r,direction:r==="left"||r==="right"?"column":"row",justify:!1,translateX:r==="left"?-200:r==="right"?200:0,translateY:r==="top"?-50:r==="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=>o&&o(a.data)})},rv=({val:e,translateKey:t,data:r})=>{var l,c;const o=e.point.id.split("."),s=o[0],a=Number(o[1]),i=d.useMemo(()=>{const p=e.point.x<100?"56%":"-56%",u=e.point.y<60?"70px":"8px";return{transform:`translate(${p}, ${u})`}},[e.point.x,e.point.y]);return n.jsxRuntimeExports.jsxs("div",{className:"bg-white shadow-sm px-2 py-1 rounded",style:i,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:t(e.point.serieId)}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex",children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"pe-1",children:[(l=e.point.data.x)==null?void 0:l.toString(),":"]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"fw-bold",children:(c=r==null?void 0:r[a])==null?void 0:c[s]})]})]})},ov=({data:e,xKey:t,yKeys:r,translateKey:o,usePercentageValue:s=!1,variant:a="default",legendPosition:i,noSort:l=!1})=>{const{confirm:c}=n.useConfirm(),{chartColorPalette:p,texts:{chart:u}}=d.useContext(n.LuminusComponentsContext),[m,f]=d.useState(new Set),x=d.useRef(null),g=async()=>{var _;const w=(_=x.current)==null?void 0:_.querySelector("svg");if(w&&await c(u.confirmExport)){const T=w.cloneNode(!0);T.setAttribute("fill","none");const C=new XMLSerializer().serializeToString(T);n.saveFile(new Blob([C],{type:"image/svg+xml"}),"graf.svg")}},b=w=>{f(_=>{const T=new Set(_);return T.has(w.id)?T.delete(w.id):T.add(w.id),T})},v=d.useMemo(()=>l?e:e.toSorted((w,_)=>{var T;return typeof _[t]=="number"&&typeof w[t]=="number"?w[t]-_[t]:(w[t]??"").toString().localeCompare(((T=_[t])==null?void 0:T.toString())??"")}),[e,l,t]),h=d.useMemo(()=>{const w=[];return r.forEach(_=>{if(s){const T=Math.max(...v.map(C=>C[_]??-1/0));if(T===-1/0)return;const A=[];v.forEach(C=>{C[_]!=null&&A.push({x:C[t],y:T===0?0:C[_]/T})}),w.push({id:_,data:A})}else w.push({id:_,data:v.map(T=>({x:T[t],y:T[_]}))})}),w},[v,s,t,r]),y=d.useCallback(w=>n.jsxRuntimeExports.jsx(rv,{data:v,translateKey:o,val:w}),[v,o]),R=d.useMemo(()=>Math.min(...e.map(w=>w[t]??1/0)),[e,t]),j=d.useMemo(()=>Math.max(...e.map(w=>w[t]??-1/0)),[e,t]),E=d.useMemo(()=>{var w;return typeof((w=e==null?void 0:e[0])==null?void 0:w[t])},[e,t]),S=i??(a==="sideContent"?"bottom":"right"),D=d.useMemo(()=>!s&&a!=="sideContent",[s,a]),I=d.useMemo(()=>[R,j],[j,R]);return n.jsxRuntimeExports.jsx("div",{ref:x,className:"d-flex h-100 w-100",children:n.jsxRuntimeExports.jsx(n.pe,{onClick:()=>g(),data:h,xScale:E==="string"?{type:"point"}:{type:"linear",min:R},yScale:{type:"linear",nice:!0},axisLeft:D?{tickSize:5,tickPadding:5,tickRotation:0,legend:s?"%":"count",legendOffset:-40,legendPosition:"middle",truncateTickAt:0}:null,axisBottom:{tickValues:a==="sideContent"?I:void 0},gridYValues:a==="sideContent"?[0]:void 0,legends:S!=="none"?[{data:r.map((w,_)=>({id:w,label:o(w),color:p==null?void 0:p[_],hidden:m.has(w)})),onClick:b,anchor:S,direction:S==="right"?"column":"row",toggleSerie:!0,justify:!1,translateX:S==="right"?120:void 0,translateY:S==="right"?0:S==="bottom"?44:void 0,itemsSpacing:0,itemDirection:"left-to-right",itemWidth:100,itemHeight:20,itemOpacity:.75,symbolSize:12,symbolShape:"circle",effects:[{on:"hover",style:{itemBackground:"rgba(0, 0, 0, .04)",itemOpacity:1,symbolSize:14}}]}]:void 0,pointSize:6,pointColor:{theme:"background"},pointBorderWidth:2,pointBorderColor:{from:"serieColor"},margin:{top:10,right:S==="right"?130:20,bottom:S==="bottom"?44:20,left:D?50:20},colors:p,isInteractive:!0,enableCrosshair:!0,enableTouchCrosshair:!0,useMesh:!0,animate:!1,tooltip:y})})},sv=({errors:e,schema:t})=>{const r=o=>{var s,a;return o.toLowerCase()==="others"?"Obecné":((a=(s=t.columns)==null?void 0:s.find(i=>i.field===o))==null?void 0:a.caption)??o};return n.jsxRuntimeExports.jsx("div",{className:"alert alert-danger w-100 m-0 p-2",children:n.jsxRuntimeExports.jsx("table",{children:n.jsxRuntimeExports.jsx("tbody",{children:e.map(o=>n.jsxRuntimeExports.jsxs("tr",{children:[n.jsxRuntimeExports.jsx("td",{className:"fw-bold pe-2",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[r(o.name),":"]})}),n.jsxRuntimeExports.jsx("td",{className:"",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:o.errors})})]},o.name))})})})},tl=e=>{const t={};return Object.keys(e).forEach(r=>{if(e[r].value===!0){t[r]=1;return}if(e[r].value===!1){t[r]=0;return}t[r]=e[r].value}),t},Ps=(e,t)=>{const r={};return Object.keys(e).forEach(o=>{var i;const s=e[o],a=(i=t.columns)==null?void 0:i.find(l=>l.field===o);if((a==null?void 0:a.type)==="BIT"&&(s===1||s===0)){r[o]={value:s===1,defaultValue:s===1};return}r[o]={value:s,defaultValue:s}}),r},av="_table_1klfy_1",iv="_table-header_1klfy_10",lv="_table-row_1klfy_10",cv="_table-head_1klfy_10",uv="_filters-row_1klfy_19",dv="_table-body_1klfy_30",pv="_table-cell_1klfy_30",mv="_action-column_1klfy_43",fv="_sticky-top_1klfy_47",xv="_sticky-first_1klfy_54",gv="_sticky-last_1klfy_61",vv="_sticky-bottom_1klfy_68",de={table:av,"table-header":"_table-header_1klfy_10",tableHeader:iv,"table-row":"_table-row_1klfy_10",tableRow:lv,"table-head":"_table-head_1klfy_10",tableHead:cv,"filters-row":"_filters-row_1klfy_19",filtersRow:uv,"table-body":"_table-body_1klfy_30",tableBody:dv,"table-cell":"_table-cell_1klfy_30",tableCell:pv,"action-column":"_action-column_1klfy_43",actionColumn:mv,"sticky-top":"_sticky-top_1klfy_47",stickyTop:fv,"sticky-first":"_sticky-first_1klfy_54",stickyFirst:xv,"sticky-last":"_sticky-last_1klfy_61",stickyLast:gv,"sticky-bottom":"_sticky-bottom_1klfy_68",stickyBottom:vv},hv="_input_pxkkh_1",Ye={input:hv},bv="_multiselect_134m5_1",jv="_multiselect-menu_134m5_10",Ev="_dropdown-item_134m5_18",yv="_special-option_134m5_24",vt={multiselect:bv,"multiselect-menu":"_multiselect-menu_134m5_10",multiselectMenu:jv,"dropdown-item":"_dropdown-item_134m5_18",dropdownItem:Ev,"special-option":"_special-option_134m5_24",specialOption:yv},As=10,Bs=({value:e,field:t,disabled:r,valuesForSelect:o,onChangeHandler:s,separator:a})=>{var v,h,y,R;const{texts:{dynamicForms:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState("");o==null||o.sort((j,E)=>(j.name??"").localeCompare(E.name??""));const p=d.useMemo(()=>{var j;return e?(j=e==null?void 0:e.toString())==null?void 0:j.split(a):[]},[e,a]),u=d.useCallback((j,E)=>{const S=j.split(a),D=E?S.every(I=>p.includes(I))&&p.length===S.length?null:S:j===""?void 0:p.includes(j)?p.filter(I=>I!==j):[...p,j];s(D!=null&&D.length?D.join(a):null)},[s,p,a]),m=d.useMemo(()=>{const j=[{value:o.map(E=>{var S;return((S=E.id)==null?void 0:S.toString())??""}).join(a),label:i.allOptionsMultiselect,specialOption:!0}];return o.forEach(E=>{var S,D;j.push({value:((S=E.id)==null?void 0:S.toString())??"",label:((D=E.name)==null?void 0:D.toString())??"",specialOption:!1})}),j},[o,i,a]),f=d.useRef(null),x=d.useRef(null),[g,b]=d.useState(!1);return d.useEffect(()=>{g&&x.current&&x.current.focus()},[g]),d.useEffect(()=>{m.length<As&&c("")},[m]),n.jsxRuntimeExports.jsxs(n.Dropdown$1,{autoClose:"outside",onToggle:j=>b(j),children:[n.jsxRuntimeExports.jsx(n.Dropdown$1.Toggle,{variant:"light",ref:f,id:`multiselect-${t}`,size:"sm",className:n.classNames("bg-white border",vt.multiselect),onKeyDown:j=>{r||j.key==="Escape"&&s(null)},children:p.length>1||p.length===0?i.xValuesMultiselect(p.length):p.length===1?(v=m.find(j=>j.value===p.at(0)))==null?void 0:v.label:i.allOptionsMultiselect}),n.jsxRuntimeExports.jsxs(n.Dropdown$1.Menu,{className:n.classNames(vt.multiselectMenu),style:{left:(h=f.current)==null?void 0:h.getBoundingClientRect().left,top:(y=f.current)==null?void 0:y.getBoundingClientRect().bottom,maxWidth:`max(300px, ${(R=f.current)==null?void 0:R.getBoundingClientRect().width}px)`},children:[m.length>=As?n.jsxRuntimeExports.jsx(n.Dropdown$1.Item,{className:n.classNames("rounded",vt.dropdownItem,vt.searchItem),children:n.jsxRuntimeExports.jsx(n.Form.Control,{ref:x,type:"search",size:"sm",value:l,onChange:j=>c(j.target.value??""),className:"w-100"})}):null,m.filter(j=>j.specialOption?!0:l?n.stringSearchWithin(j.value,l):!0).map(j=>n.jsxRuntimeExports.jsx(n.Dropdown$1.Item,{onClick:()=>!r&&u(j.value,j.specialOption),disabled:r,className:n.classNames("rounded",vt.dropdownItem,{[vt.specialOption]:j.specialOption},{"text-muted":r}),children:n.jsxRuntimeExports.jsx(n.Form.Check,{disabled:r,label:j.label,checked:j.specialOption?p.length===j.value.split(a).length&&p.every(E=>j.value.split(a).includes(E)):p.includes(j.value),onChange:()=>{}})},j.value))]})]})},nl=({type:e,value:t,field:r,isPrimary:o,isReadonly:s,primaryEditable:a=!1,valuesForSelect:i,addValueToValuesForSelect:l,onChangeHandler:c,hideClearIcon:p,clearValue:u,customPickers:m,isMultiChoice:f,multiChoiceSeparator:x})=>{var g;switch(e){case"NUM":return i&&i.length>0?f?n.jsxRuntimeExports.jsx(Bs,{field:r,value:(t==null?void 0:t.toString())??"",separator:x??",",onChangeHandler:b=>c(r,b),valuesForSelect:i,disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,b===null?null:Number(b)),options:i,disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u,dropdownWidth:200}):n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",type:"number",value:t===null?null:Number(t),onChange:b=>c(r,b===null?null:Number(b)),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});case"STR":return i&&i.length>0?f?n.jsxRuntimeExports.jsx(Bs,{field:r,value:(t==null?void 0:t.toString())??"",separator:x??",",onChangeHandler:b=>{c(r,b)},valuesForSelect:i,disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),options:i,disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u,dropdownWidth:200}):n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:n.classNames(Ye.input,Ye.longer),size:"sm",type:"text",value:(t==null?void 0:t.toString())??"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});case"BIT":return n.jsxRuntimeExports.jsx(Qt,{InputContainer:n.NoInputContainer,className:Ye.input,value:t===!0,onChange:b=>c(r,b),disabled:s?!0:o?!a:!1});case"DT":return n.jsxRuntimeExports.jsx(n.TextInput,{withoutLabel:!0,InputContainer:n.NoInputContainer,className:Ye.input,size:"sm",type:"date",value:t?t.toString().split("T")[0]??"":"",onChange:b=>c(r,(b==null?void 0:b.toString())??null),disabled:s?!0:o?!a:!1,showClearIcon:!p,clearValue:u});default:{const b=m==null?void 0:m.find(v=>v.type===e);return b?n.jsxRuntimeExports.jsx(b.picker,{className:n.classNames(Ye.input,Ye.longer),value:t?{id:(t==null?void 0:t.toString())??null,name:((g=i==null?void 0:i.find(v=>{var h;return((h=v.id)==null?void 0:h.toString())===(t==null?void 0:t.toString())}))==null?void 0:g.name)??""}:null,onChange:v=>{var h;c(r,(v==null?void 0:v.id)??null),console.log(v,i==null?void 0:i.some(y=>{var R,j;return((R=y.id)==null?void 0:R.toString())===((j=v==null?void 0:v.id)==null?void 0:j.toString())}),l),v&&!(i!=null&&i.some(y=>{var R,j;return((R=y.id)==null?void 0:R.toString())===((j=v==null?void 0:v.id)==null?void 0:j.toString())}))&&l&&(console.log("adding to values for select"),l({id:((h=v.id)==null?void 0:h.toString())??"",name:v.name}))},disabled:s?!0:o?!a:!1}):n.jsxRuntimeExports.jsx("div",{className:"alert alert-warning p-1 m-0",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:["Neznámý typ ",e]})})}}},Rv=({schema:e,columns:t,setColumns:r,initialItem:o,onEdit:s,onDelete:a,customPickers:i,appDetail:l})=>{const{ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(o),m=d.useCallback((g,b)=>{console.log("changeValue",g,b),u(v=>({...v,[g]:{...v[g],value:b}}))},[]),f=g=>(g==null?void 0:g.value)!==(g==null?void 0:g.defaultValue),x=d.useCallback(()=>Object.keys(p).some(g=>f(p[g])),[p]);return d.useEffect(()=>{u(o)},[o]),n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row",de.tableRow),children:[n.jsxRuntimeExports.jsx("td",{className:n.classNames("table-cell",de.tableCell,de.stickyFirst),children:x()&&n.jsxRuntimeExports.jsx(n.IconButton,{color:"success",onClick:()=>s(tl(p)),children:n.jsxRuntimeExports.jsx(c,{icon:"check"})})}),t.map(g=>{var b,v;return n.jsxRuntimeExports.jsx("td",{className:n.classNames("table-cell",de.tableCell),children:n.jsxRuntimeExports.jsx(nl,{type:g.type,value:(b=p[g.field??""])==null?void 0:b.value,field:g.field,isReadonly:g.readOnly,isPrimary:e.primaryKey===g.field,valuesForSelect:g.valuesForSelect,addValueToValuesForSelect:h=>{r(t.map(y=>y.field===g.field?{...y,valuesForSelect:[...y.valuesForSelect??[],h]}:y))},onChangeHandler:m,hideClearIcon:!f(p[g.field??""]),clearValue:(v=p[g.field??""].defaultValue)==null?void 0:v.toString(),customPickers:i,isMultiChoice:g.multiChoice??!1,multiChoiceSeparator:g.multiChoiceSeparator??null})},`${e.id}-${g.field}`)}),n.jsxRuntimeExports.jsxs("td",{className:n.classNames("table-cell d-flex gap-1",de.tableCell,de.stickyLast),children:[e!=null&&e.slaves&&e.slaves.length>0?e.slaves.map((g,b)=>{var v,h;return n.jsxRuntimeExports.jsx(n.IconButton,{as:"link",href:`${oe.generatePath(l,{id:(v=g.id)==null?void 0:v.toString()})}?type=dynamic-form&masterId=${(h=p.id)==null?void 0:h.value}`,children:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:g.name??"",placement:"left",children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"d-flex align-items-center text-primary",children:[e.slaves.length>1?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:b+1}):null,n.jsxRuntimeExports.jsx(n.MdOutlineSubdirectoryArrowRight,{})]})})})},g.id)}):null,n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>a(p[e.primaryKey??""].value),children:n.jsxRuntimeExports.jsx(c,{icon:"delete"})})]})]})},Cv=({schema:e,columns:t,setColumns:r,onCreate:o,customPickers:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(null),c=d.useCallback(()=>{var m;const u={};(m=e.columns)==null||m.forEach(f=>{const x=f.type==="BIT"?!1:f.type==="NUM"?null:f.type==="STR"?"":null;u[f.field??""]={value:x,defaultValue:x}}),l(u)},[e]),p=d.useCallback((u,m)=>{l(f=>f&&{...f,[u]:{...f[u],value:m}})},[]);return i?n.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[n.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"success",onClick:async()=>{const u=tl(i);u&&await o(u)&&l(null)},children:n.jsxRuntimeExports.jsx(a,{icon:"check"})})}),t.map(u=>n.jsxRuntimeExports.jsx("td",{children:n.jsxRuntimeExports.jsx(nl,{type:u.type,value:i[u.field??""].value,field:u.field,isReadonly:u.readOnly,isPrimary:e.primaryKey===u.field,valuesForSelect:u.valuesForSelect,addValueToValuesForSelect:m=>{r(t.map(f=>f.field===u.field?{...f,valuesForSelect:[...f.valuesForSelect??[],m]}:f))},onChangeHandler:p,primaryEditable:!0,customPickers:s,isMultiChoice:u.multiChoice??!1,multiChoiceSeparator:u.multiChoiceSeparator??null})},`${e.id}-${u.field}`)),n.jsxRuntimeExports.jsx("td",{className:"sticky-last",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>l(null),children:n.jsxRuntimeExports.jsx(a,{icon:"cancel"})})})]}):n.jsxRuntimeExports.jsxs("tr",{className:"sticky-bottom shadow",children:[n.jsxRuntimeExports.jsx("td",{className:"sticky-first",children:n.jsxRuntimeExports.jsx(n.IconButton,{onClick:c,children:n.jsxRuntimeExports.jsx(a,{icon:"add"})})}),n.jsxRuntimeExports.jsx("td",{colSpan:t.length+1})]})},Nv="_resizer_ref0b_1",wv="_content_ref0b_11",Sv="_dragging_ref0b_16",mn={resizer:Nv,content:wv,dragging:Sv},rl=({cellRef:e,defaultWidth:t})=>{const[r,o]=d.useState(t),[,s]=d.useState(null);return d.useEffect(()=>{o(t)},[t]),d.useEffect(()=>{e.current&&(e.current.style.minWidth=`${r}px`)},[r,e]),n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-column-resizer",mn.resizer),draggable:!0,onDragStart:a=>{s(a.currentTarget.getBoundingClientRect().x),a.currentTarget.classList.add(mn.dragging)},onDrag:a=>{s(i=>(e.current&&o(l=>l+a.clientX-(i??0)),a.clientX))},onDragEnd:a=>{s(null),a.currentTarget.classList.remove(mn.dragging)},children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("content",mn.content)})})},Dv=({column:e,children:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext);return e.description?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:e.description??"",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between",children:[t,n.jsxRuntimeExports.jsx(r,{icon:"info"})]})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:t})},Iv=({column:e,sortByField:t,sortByType:r,setSortBy:o})=>{const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),a=d.useRef(null),i=d.useMemo(()=>{if(e.valuesForSelect&&e.valuesForSelect.length>0)return 200;switch(e.type){case"NUM":return 80;case"STR":return 200;case"BIT":return 50;case"DT":return 100;default:return 100}},[e.type,e.valuesForSelect]);return n.jsxRuntimeExports.jsxs("th",{ref:a,className:n.classNames("table-head",de.tableHead),onClick:()=>{const l=t===e.field?r:null;if(l==="asc"){o(e.field,"desc");return}if(l==="desc"){o(e.field,null);return}o(e.field,"asc")},children:[n.jsxRuntimeExports.jsx(Dv,{column:e,children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[e.label,t===e.field&&n.jsxRuntimeExports.jsx(s,{icon:r==="asc"?"chevron-up":"chevron-down"})]})}),n.jsxRuntimeExports.jsx(rl,{cellRef:a,defaultWidth:i})]})},_v=({schema:e,items:t,onEditItem:r,onDeleteItem:o,onCreateItem:s,filters:a,setFilter:i,sortByField:l,sortByType:c,setSortBy:p,selectedMaster:u,customPickers:m,appDetail:f})=>{const{texts:{dynamicForms:x}}=d.useContext(n.LuminusComponentsContext),[g,b]=d.useState([]);return d.useEffect(()=>{var v,h,y;b([...((y=(h=(v=e.columns)==null?void 0:v.filter(R=>!R.hidden))==null?void 0:h.filter(R=>e.masterReference?R.field!==e.masterReferenceColumn:!0))==null?void 0:y.map(R=>{var j;return{label:R.caption??"",width:100,description:R.description??null,field:R.field??"",type:R.type,readOnly:R.readOnly,valuesForSelect:((j=R.values)==null?void 0:j.filter(E=>R.valuesFilteredByMaster?E.masterValue===u:!0).map(E=>({id:E.id??"",name:E.name})))??void 0,multiChoice:R.multiChoice??!1,multiChoiceSeparator:R.multiChoiceSeparator??null}}))??[]])},[e,u]),n.jsxRuntimeExports.jsxs("table",{id:`dynamic-table-${e.id}`,className:n.classNames("table table-borderless luminus-df-table",de.table),children:[n.jsxRuntimeExports.jsxs("thead",{className:n.classNames("text-nowrap table-header",de.stickyTop,de.tableHeader),children:[n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row",de.tableRow),children:[n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyFirst)}),g.map(v=>n.jsxRuntimeExports.jsx(Iv,{column:v,sortByField:l,sortByType:c,setSortBy:p},`${e.id}-${v.field}`)),n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyLast)})]}),n.jsxRuntimeExports.jsxs("tr",{className:n.classNames("table-row filters-row",de.tableRow,de.filtersRow),children:[n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyFirst)}),g.map(v=>n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead),children:v.valuesForSelect&&v.valuesForSelect.length>0||v.type==="BIT"?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{InputContainer:n.NoInputContainer,withoutLabel:!0,size:"sm",value:a[v.field]??"",onChange:h=>i(v.field,(h==null?void 0:h.toString())??null),options:v.type==="BIT"?[{id:1,name:x.yes},{id:0,name:x.no}]:v.valuesForSelect??[],isNumber:v.type==="BIT",showClearIcon:!0,dropdownWidth:200})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.TextInput,{InputContainer:n.NoInputContainer,withoutLabel:!0,size:"sm",type:v.type==="NUM"?"number":v.type==="DT"?"date":"text",value:a[v.field]??"",onChange:h=>i(v.field,(h==null?void 0:h.toString())??null)})})},`${e.id}-${v.field}`)),n.jsxRuntimeExports.jsx("th",{className:n.classNames("table-head",de.tableHead,de.actionColumn,de.stickyLast)})]})]}),n.jsxRuntimeExports.jsxs("tbody",{className:n.classNames("table-body",de.tableBody),children:[t.filter(v=>v[e.primaryKey??""]).map(v=>n.jsxRuntimeExports.jsx(Rv,{schema:e,columns:g,setColumns:b,initialItem:v,onEdit:r,onDelete:o,customPickers:m,appDetail:f},`${e.id}-${v[e.primaryKey??""].value}`)),n.jsxRuntimeExports.jsx(Cv,{schema:e,columns:g,setColumns:b,onCreate:s,customPickers:m})]})]})},Ov=({master:e,onChange:t,options:r,label:o})=>n.jsxRuntimeExports.jsx("div",{style:{minWidth:"200px"},children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:o,value:e,onChange:s=>t(s?s.toString():null),options:r,size:"sm"})}),Tv="_pagination_gujwe_1",Ms={pagination:Tv},Ls={appDetail:"/settings/:id"},at={apiSchemaGet:"/dynamicForms/schema",apiDataGet:"/dynamicForms/data",apiItemPost:"/dynamicForms/update",apiItemDelete:"/dynamicForms/delete",apiItemCreate:"/dynamicForms/insert",apiExportGet:"/dynamicForms/export"},kv=({id:e,page:t,setPage:r,filters:o,setFilter:s,sortByField:a,sortByType:i,setSortBy:l,appUrls:{appDetail:c=Ls.appDetail}=Ls,apiUrls:{apiSchemaGet:p=at.apiSchemaGet,apiDataGet:u=at.apiDataGet,apiItemPost:m=at.apiItemPost,apiItemDelete:f=at.apiItemDelete,apiItemCreate:x=at.apiItemCreate,apiExportGet:g=at.apiExportGet}=at,customPickers:b})=>{var Re,Ve,$e,xt,fo,xo,go;const{texts:{dynamicForms:v},ProjectIconComponent:h}=d.useContext(n.LuminusComponentsContext),y=n.useAxios(),{startLoading:R,stopLoading:j}=d.useContext(n.LoadingContext),[E,S]=d.useState(null),[D,I]=d.useState(null),[w,_]=d.useState(null),[T,A]=d.useState(null),[C,O]=d.useState(!1),{addNotification:F}=n.useNotifications(),[P,B]=d.useState([]),{confirm:G}=n.useConfirm(),L=20,$=L+1,U=T?Math.ceil(T.length/L):1,q=t?t>1:!1,X=t?t<U:!1,Q=t?(t-1)*L:0,le=t?t*L:L,V=d.useMemo(()=>T?T.length>$:!1,[T,$]),Y=d.useMemo(()=>V?(T==null?void 0:T.slice(Q,le))??null:T??null,[V,T,Q,le]),[re,fe]=Nt.useSearchQueryState("masterId",null,"string"),[te,k]=d.useState(re);d.useEffect(()=>{S(null),I(null),O(!1),B([])},[e]),d.useEffect(()=>{re!==null&&(k(re),fe(null))},[re,e,fe]);const Z=d.useCallback(async()=>{R("dynamicFormSchema"),await y.get(`${p}?id=${e}`).then(({data:K})=>{S(K),j("dynamicFormSchema")}).catch(()=>j("dynamicFormSchema"))},[y,e,R,j,p]),ve=d.useCallback(async()=>{var K;if(!(E===null||((K=E.id)==null?void 0:K.toString())!==e)){if(E.masterReference&&!te){I([]);return}R("dynamicFormData"),await y.get(`${u}?id=${e}&showArchive=${C}${E.masterReference?`&master=${te}`:""}`).then(({data:ae})=>{const me=ae.map(ie=>{var he;return Object.fromEntries(((he=E.columns)==null?void 0:he.filter(be=>be.field).map(be=>[be.field,{value:ie[be.field??""],defaultValue:ie[be.field??""]}]))??[])});I(me),j("dynamicFormData")}).catch(()=>j("dynamicFormData"))}},[y,e,E,R,j,C,te,u]),_e=d.useCallback(async()=>{var K;E===null||((K=E.id)==null?void 0:K.toString())!==e||E.masterReference&&!te||(R("dynamicFormExport"),await y.get(`${g}?id=${e}&showArchive=${C}${E.masterReference?`&master=${te}`:""}`,{responseType:"blob"}).then(ae=>n.saveFileFromResponse(ae,{fallbackName:`export-${e}`})).finally(()=>j("dynamicFormExport")))},[y,e,E,R,j,C,te,g]),Ae=d.useCallback(async K=>(R("dynamicFormEdit"),y.post(`${m}?id=${e}`,K).then(()=>(j("dynamicFormEdit"),B([]),!0)).catch(ae=>(j("dynamicFormEdit"),B(n.extractErrorsFromResponse(ae)),!1))),[y,e,R,j,m]),qe=d.useCallback(async K=>(R("dynamicFormDelete"),y.delete(`${f}?id=${e}&pk=${K}`).then(()=>(j("dynamicFormDelete"),B([]),!0)).catch(ae=>(j("dynamicFormDelete"),B(n.extractErrorsFromResponse(ae)),!1))),[y,e,R,j,f]),W=d.useCallback(async K=>(R("dynamicFormCreate"),y.post(`${x}?id=${e}`,K).then(({data:ae})=>(j("dynamicFormCreate"),B([]),ae)).catch(ae=>(j("dynamicFormCreate"),B(n.extractErrorsFromResponse(ae)),null))),[y,e,R,j,x]),M=d.useCallback(async K=>{E&&await Ae(E.masterReference?{...K,[E.masterReferenceColumn??""]:te}:K)&&(F(v.editSuccess,"success"),I(ae=>ae&&ae.map(me=>{var ie;return((ie=me[(E==null?void 0:E.primaryKey)??""])==null?void 0:ie.value)===K[(E==null?void 0:E.primaryKey)??""]?Ps(K,E):me})))},[F,Ae,E,te,v]),z=d.useCallback(async K=>{await G(v.deleteConfirm)&&await qe(K)&&(F(v.deleteSuccess,"success"),I(ae=>ae&&ae.filter(me=>{var ie;return((ie=me[(E==null?void 0:E.primaryKey)??""])==null?void 0:ie.value)!==K})))},[F,qe,v,G,E]),ee=d.useCallback(async K=>{if(!E)return!1;const ae=await W(E.masterReference?{...K,[E.masterReferenceColumn??""]:te}:K);if(ae!==null){F(v.createSuccess,"success");const me=Ps(K,E);return me[(E==null?void 0:E.primaryKey)??""]={value:ae,defaultValue:ae},I(ie=>[...ie??[],me]),!0}return!1},[F,W,v,E,te]),xe=K=>{K>U?r(U):K<1&&r(1),r(K)},se=d.useCallback(()=>{if(!D||!E){_(null);return}const K=D.filter(ae=>Object.entries(o).every(([me,ie])=>{var _t,Ot,Tt;if(ie===null)return!0;const he=(_t=ae[me])==null?void 0:_t.value;if(he==null)return!1;const be=(Ot=E.columns)==null?void 0:Ot.find(an=>an.field===me),Dt=be==null?void 0:be.type,It=(be==null?void 0:be.values)&&((Tt=be==null?void 0:be.values)==null?void 0:Tt.length)>0;if(!Dt)return!1;switch(Dt){case"STR":return It?he===ie:he.toString().toLowerCase().includes(ie.toLowerCase());case"NUM":return It?Number(he)===Number(ie):he.toString().toLowerCase().includes(ie.toLowerCase());case"DT":return he.toString().toLowerCase().includes(ie.toLowerCase());case"BIT":return Number(he)===Number(ie);default:return he.toString().toLowerCase().includes(ie.toLowerCase())}}));_(K)},[D,o,E]),J=d.useCallback(()=>{if(!w||!E){A([]);return}if(!a){A(w);return}A([...w].sort((K,ae)=>{var Dt,It,_t,Ot,Tt,an;const me=((It=(Dt=K[a])==null?void 0:Dt.value)==null?void 0:It.toString())??"",ie=((Ot=(_t=ae[a])==null?void 0:_t.value)==null?void 0:Ot.toString())??"",he=E.columns.find(Ue=>Ue.field===a),be=he==null?void 0:he.type;if(!he||!be||!me&&!ie)return 0;if(!me)return 1;if(!ie)return-1;if(he.values&&he.values.length>0){const Ue=((Tt=he.values.find(An=>{var kt;return((kt=An.id)==null?void 0:kt.toString())===me}))==null?void 0:Tt.name)??"",Ke=((an=he.values.find(An=>{var kt;return((kt=An.id)==null?void 0:kt.toString())===ie}))==null?void 0:an.name)??"";return i==="asc"?Ue.localeCompare(Ke):Ke.localeCompare(Ue)}if(be==="NUM"){const Ue=Number(me),Ke=Number(ie);return i==="asc"?Ue-Ke:Ke-Ue}if(be==="DT"){const Ue=n.parseISO(me==null?void 0:me.toString()).getTime(),Ke=n.parseISO(ie==null?void 0:ie.toString()).getTime();return i==="asc"?Ue-Ke:Ke-Ue}return i==="asc"?me.toString().localeCompare(ie.toString()):ie.toString().localeCompare(me.toString())}))},[w,E,a,i]);return d.useEffect(()=>{Z()},[Z]),d.useEffect(()=>{ve()},[ve]),d.useEffect(()=>{se()},[se]),d.useEffect(()=>{J()},[J]),d.useEffect(()=>{V?t||r(1):T&&r(null)},[T,V,t,r]),d.useEffect(()=>{!V||!t||(t>U&&r(U),t<1&&r(1))},[t,V,U,r]),n.jsxRuntimeExports.jsxs("div",{className:"h-100 w-100 d-flex flex-column",children:[n.jsxRuntimeExports.jsxs("div",{className:"mb-3 d-flex justify-content-between align-items-start",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:(E==null?void 0:E.name)??""}),(E==null?void 0:E.masterReference)&&n.jsxRuntimeExports.jsx(Ov,{label:((Ve=(Re=E.columns)==null?void 0:Re.find(K=>K.field===E.masterReferenceColumn))==null?void 0:Ve.caption)??"",options:((xt=($e=E.columns)==null?void 0:$e.find(K=>K.field===E.masterReferenceColumn))==null?void 0:xt.values)??[],master:te,onChange:K=>k(K)})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[(fo=E==null?void 0:E.slaves)==null?void 0:fo.map((K,ae)=>{var me;return n.jsxRuntimeExports.jsxs(n.ContextButton,{as:"link",href:`${oe.generatePath(c,{id:(me=K.id)==null?void 0:me.toString()})}?type=dynamic-form`,children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center",children:[E.slaves.length>1?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:ae+1}):null,n.jsxRuntimeExports.jsx(n.MdOutlineSubdirectoryArrowRight,{})]}),K.name]},K.id)}),n.jsxRuntimeExports.jsxs(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:[n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>O(!C),children:C?v.hideArchived:v.showArchived}),n.jsxRuntimeExports.jsx(n.DropdownDivider,{}),n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:_e,icon:n.jsxRuntimeExports.jsx(h,{icon:"file-download"}),children:v.downloadExport})]})]})]}),(E==null?void 0:E.description)&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"mb-3",children:E==null?void 0:E.description}),E!=null&&E.masterReference&&!te?n.jsxRuntimeExports.jsx(n.Alert,{variant:"warning",children:v.selectMaster(((go=(xo=E.columns)==null?void 0:xo.find(K=>K.field===E.masterReferenceColumn))==null?void 0:go.caption)??"").toLowerCase()}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[E&&P.length>0&&n.jsxRuntimeExports.jsx("div",{className:"mb-2",children:n.jsxRuntimeExports.jsx(sv,{errors:P,schema:E})}),E&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("div",{className:n.classNames("rounded border overflow-auto",Ms.tableContainer),children:n.jsxRuntimeExports.jsx(_v,{schema:E,items:!V&&T&&(T==null?void 0:T.length)>$?[]:(V?Y:T)??[],onEditItem:M,onDeleteItem:z,onCreateItem:ee,filters:o,setFilter:s,sortByField:a,sortByType:i,setSortBy:l,selectedMaster:(te==null?void 0:te.toString())??null,customPickers:b,appDetail:c})}),V&&t&&n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ms.pagination,"d-flex align-items-center gap-3 p-1 border-bottom border-start border-end rounded"),children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(1),disabled:!q,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-double-left"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(t-1),disabled:!q,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-left"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(t+1),disabled:!X,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-right"})}),n.jsxRuntimeExports.jsx(n.IconButton,{color:"primary",onClick:()=>xe(U),disabled:!X,children:n.jsxRuntimeExports.jsx(h,{icon:"chevron-double-right"})})]}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[v.tablePage," ",t," ",v.tablePageFrom," ",U]})]})]})]})]})},Fs={appDetail:"/settings/:id"},Vs={apiDynamicFormsGet:"/dynamicForms"},Pv=({item:e,children:t})=>e.description?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:e.description??"",children:n.jsxRuntimeExports.jsx("div",{children:t})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:t}),Av=({activeId:e,otherForms:t=[],groupsDefs:r=[],searchQuery:o,fullSize:s,appUrls:{appDetail:a=Fs.appDetail}=Fs,apiUrls:{apiDynamicFormsGet:i=Vs.apiDynamicFormsGet}=Vs})=>{const l=n.useAxios(),{startLoading:c,stopLoading:p}=d.useContext(n.LoadingContext),[u,m]=d.useState(null),[f]=Nt.useSearchQueryState("search",""),x=d.useMemo(()=>[...(u==null?void 0:u.map(v=>({...v,type:"dynamic-form"})))??[],...t].filter(v=>n.stringSearchWithin(v.name,o)||n.stringSearchWithin(v.description,o)).sort((v,h)=>(v.name??"").localeCompare(h.name??""))??[],[u,t,o]),g=d.useMemo(()=>r.map(v=>({id:v.id,name:v.name??"",items:x.filter(h=>h.group===v.id)})).filter(v=>v.items.length>0),[r,x]),b=d.useCallback(async()=>{c("dynamicForms"),await l.get(i).then(({data:v})=>{m(v),p("dynamicForms")}).catch(()=>p("dynamicForms"))},[l,c,p,i]);return d.useEffect(()=>{!u&&b()},[b,u]),x.length>0?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx("div",{className:"w-auto list-group forms-items overflow-x-hidden",children:g.map(v=>n.jsxRuntimeExports.jsx(pt,{title:v.name,defaultOpen:!0,children:v.items.map(h=>{var y,R,j,E;return s?n.jsxRuntimeExports.jsxs(oe.Link,{to:`${oe.generatePath(a,{id:(y=h.id)==null?void 0:y.toString()})}?type=${h.type}&search=${f??""}`,className:`text-nowrap list-group-item list-group-item-action ${(e==null?void 0:e.toString())===((R=h.id)==null?void 0:R.toString())?"active":""}`,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:h.name}),h.description&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-muted mt-2",children:h.description})]},h.id):n.jsxRuntimeExports.jsx(Pv,{item:h,children:n.jsxRuntimeExports.jsx(oe.Link,{to:`${oe.generatePath(a,{id:(j=h.id)==null?void 0:j.toString()})}?type=${h.type}&search=${f??""}`,className:`text-nowrap list-group-item list-group-item-action ${(e==null?void 0:e.toString())===((E=h.id)==null?void 0:E.toString())?"active":""}`,children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:h.name})})},h.id)})},v.id))})}):null},Bv=({label:e,to:t,value:r})=>n.jsxRuntimeExports.jsxs(n.RowLabelInput,{label:e,children:[n.jsxRuntimeExports.jsx("input",{disabled:!0,className:"form-control d-none"}),t?n.jsxRuntimeExports.jsx(oe.Link,{to:t,className:"border-bottom luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:r}):n.jsxRuntimeExports.jsx("div",{className:"luminus-dropdown-picker-link form-control d-flex justify-content-end align-items-center",children:r})]}),Mv=()=>{const{localizationContext:e}=d.useContext(n.LuminusComponentsContext),{language:t,setLanguage:r}=d.useContext(e),o=s=>{r(s)};return n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:s=>{o(t==="cz"?"en":t==="en"?"de":"cz"),s.stopPropagation()},children:t==="cz"?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"CZ"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"EN"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"DE"})]}):t==="en"?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"EN"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"DE"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"CZ"})]}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("strong",{className:"fw-bold",children:"DE"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"CZ"}),n.jsxRuntimeExports.jsx(n.MdArrowRight,{}),n.jsxRuntimeExports.jsx("span",{children:"EN"})]})})},Lv=({controlId:e,...t})=>n.jsxRuntimeExports.jsx(n.Form.Group,{controlId:e,...t}),Fv=({employeeId:e,alt:t,noPhotoImage:r,cafmApiUrl:o,showLargeInLightBox:s=!1})=>{const{user:a}=d.useContext(n.UserContext),{photoPath:i,photoPathSm:l}=Nt.useEmployeePhotoPath(e);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e&&n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:s?n.jsxRuntimeExports.jsx(Fi,{baseUrl:o,customToken:a.cafmToken??void 0,photos:[{id:e.toString(),alt:t??"",isDefault:!0,smSrc:l,lgSrc:i}],placeholder:r,ImgComponent:Rr}):n.jsxRuntimeExports.jsx(Rr,{baseUrl:o,customToken:a.cafmToken??void 0,src:l,alt:t,placeholder:r,className:"rounded w-100"})})})},Vv=({text:e,setText:t,onSearchButtonClick:r,className:o})=>{const s=a=>{t(a)};return n.jsxRuntimeExports.jsxs(hn,{className:`${o}`,children:[n.jsxRuntimeExports.jsx(n.Form.Control,{value:e,onChange:a=>t(a.target.value)}),e&&n.jsxRuntimeExports.jsx(n.Button,{onClick:()=>s(""),variant:"link",className:"border text-muted",children:n.jsxRuntimeExports.jsx(n.MdClear,{})}),n.jsxRuntimeExports.jsx(n.Button,{onClick:()=>r&&r(e),variant:"link",className:"border",children:n.jsxRuntimeExports.jsx(n.MdSearch,{})})]})},$v=({value:e,numberPrefix:t,numberSuffix:r,decimalScale:o=2,fixedDecimalScale:s=!1,className:a})=>n.jsxRuntimeExports.jsx(io,{value:e,displayType:"text",thousandSeparator:" ",decimalScale:o,fixedDecimalScale:s,defaultValue:"",prefix:t,suffix:r,className:a,decimalSeparator:","}),Gv=({data:e,keys:t,colors:r,tooltipLabel:o})=>n.jsxRuntimeExports.jsx(n.Re,{data:e.map(s=>({name:s.name,...s.values})),indexBy:"name",keys:t,margin:{top:20,right:50,bottom:30,left:150},layout:"horizontal",colors:r,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:o}),Wv="_hrText_xxish_1",Uv={hrText:Wv},ol=({text:e})=>n.jsxRuntimeExports.jsx("hr",{className:n.classNames(Uv.hrText),"data-content":e}),Hv="_cards-group_1gvpy_1",zv="_group-title_1gvpy_1",qv="_group-content_1gvpy_8",Yv="_report-card_1gvpy_12",Kv="_card-title-link_1gvpy_22",ht={"cards-group":"_cards-group_1gvpy_1",cardsGroup:Hv,"group-title":"_group-title_1gvpy_1",groupTitle:zv,"group-content":"_group-content_1gvpy_8",groupContent:qv,"report-card":"_report-card_1gvpy_12",reportCard:Yv,"card-title-link":"_card-title-link_1gvpy_22",cardTitleLink:Kv},Xv=({reportsLastUsedGet:e,getReportRoute:t,getReportName:r})=>{const{texts:{reports:o}}=d.useContext(n.LuminusComponentsContext),{data:s}=Se.useGetApiData(e);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(pt,{defaultOpen:!0,title:o.index.lastUsedReports,children:n.jsxRuntimeExports.jsx(n.ListGroup,{children:s&&s.map(a=>a.versions.map(i=>n.jsxRuntimeExports.jsxs(n.ListGroupItem,{as:oe.Link,to:t(a,i.id),className:"p-1 px-2",action:!0,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-uppercase",children:r(a)}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"caption",className:"d-flex justify-content-between align-items-center gap-3 text-dark",children:[i.name,n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-end opacity-50",children:n.formatDate(i.lastUsedDate)})]})]})))})})})},$s=({reportVersion:e,getReportRoute:t,report:r})=>n.jsxRuntimeExports.jsx(n.ListGroupItem,{as:oe.Link,to:t(r,e.id),className:"p-1 px-2",action:!0,children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"d-flex justify-content-between align-items-center gap-3",children:n.jsxRuntimeExports.jsx("div",{className:"link",children:e.name})})}),fn=5,Gs=({versionsList:e,getReportRoute:t,report:r})=>{const{ProjectIconComponent:o}=d.useContext(n.LuminusComponentsContext),[s,a]=d.useState(!0),i=d.useMemo(()=>e.length<=fn?e:e.slice(0,fn-1),[e]),l=d.useMemo(()=>e.length<=fn?[]:e.slice(fn-1),[e]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(n.ListGroup,{children:[i.map(c=>n.jsxRuntimeExports.jsx($s,{reportVersion:c,getReportRoute:t,report:r})),s?null:l.map(c=>n.jsxRuntimeExports.jsx($s,{reportVersion:c,getReportRoute:t,report:r})),l.length>0&&n.jsxRuntimeExports.jsx(n.ListGroupItem,{onClick:()=>a(c=>!c),className:"py-0 d-flex justify-content-center",children:s?n.jsxRuntimeExports.jsx(o,{icon:"chevron-down"}):n.jsxRuntimeExports.jsx(o,{icon:"chevron-up"})})]})})},Qv=({report:e,getReportRoute:t,getReportName:r,getReportDescription:o})=>{const s=d.useMemo(()=>e.versionsCustom.length===0?{xs:12}:{xs:12,sm:6,md:12,lg:12,xl:12,xxl:6},[e.versionsCustom.length]);return n.jsxRuntimeExports.jsx("div",{className:"col-12 col-lg-4",children:n.jsxRuntimeExports.jsxs(Gt,{title:n.jsxRuntimeExports.jsx(oe.Link,{to:t(e),className:n.classNames(ht.cardTitleLink,"w-100 text-uppercase fw-normal"),children:r(e)}),headerClassName:"bg-darker",className:n.classNames(ht.reportCard,"shadow h-100 d-flex flex-column"),contentClassName:"d-flex flex-column gap-2 h-100",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"px-2",children:o(e)}),n.jsxRuntimeExports.jsxs(Ir,{className:"h-100 g-2",children:[e.versions&&e.versions.length>0?n.jsxRuntimeExports.jsx(n.Col,{...s,children:n.jsxRuntimeExports.jsx(Gs,{versionsList:e.versions,getReportRoute:t,report:e})}):null,e.versionsCustom&&e.versionsCustom.length>0?n.jsxRuntimeExports.jsx(n.Col,{...s,children:n.jsxRuntimeExports.jsx(Gs,{versionsList:e.versionsCustom,getReportRoute:t,report:e})}):null]})]})},e.id)},sr={reportsGet:"/reports",reportsLastUsedGet:"/reports/last-used"},Jv=({groups:e,apiUrls:{reportsGet:t=sr.reportsGet,reportsLastUsedGet:r=sr.reportsLastUsedGet}=sr,getReportName:o,getReportDescription:s,getGroupTitle:a,getReportRoute:i})=>{const{texts:{reports:l}}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState(""),[u]=n.a(c,500),m=d.useCallback(v=>v.map(h=>({...h,groupId:!h.groupId||h.groupId===0||!e.some(y=>y===h.groupId)?999:h.groupId})),[e]),{data:f}=Se.useGetApiData(t,{dataTransformer:m}),x=d.useMemo(()=>{if(f===null)return{};const v={};return e.forEach(h=>{v[h]=f.filter(y=>y.groupId===h&&(n.stringSearchWithin(o(y),u)||n.stringSearchWithin(s(y),u)||y.versions.some(R=>n.stringSearchWithin(R.name,u))||y.versionsCustom.some(R=>n.stringSearchWithin(R.name,u))))}),v},[u,e,f,s,o]),g=d.useMemo(()=>e.filter(v=>{var h;return((h=x[v])==null?void 0:h.length)>0}),[x,e]),{isMobile:b}=n.useWindowSize();return n.jsxRuntimeExports.jsxs(n.PageContainer,{unavailableOnMobile:!0,variant:"fullScreen",sideContent:n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(Xv,{reportsLastUsedGet:r,getReportName:o,getReportRoute:i})}),children:[n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(n.Form.Control,{className:"mb-3",type:"search",value:c,onChange:v=>{var h;return p(((h=v.target)==null?void 0:h.value)??"")},placeholder:l.index.search})}),n.jsxRuntimeExports.jsx("div",{className:"overflow-x-hidden luminus-thin-scrollbar luminus-reports-index",children:g.map(v=>n.jsxRuntimeExports.jsxs("div",{className:n.classNames(ht.cardsGroup,{[ht.mobile]:b}),children:[n.jsxRuntimeExports.jsx("div",{className:n.classNames("group-title z-1",ht.groupTitle),children:n.jsxRuntimeExports.jsx(ol,{text:a(v)})}),n.jsxRuntimeExports.jsx("div",{className:n.classNames(ht.groupContent),children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("row gx-3 gy-3"),children:x[v].map(h=>n.jsxRuntimeExports.jsx(Qv,{report:h,getReportRoute:i,getReportName:o,getReportDescription:s}))})})]},v))})]})},Zv="_mini-detail-popover_obryf_1",eh="_sm_obryf_5",th="_lg_obryf_9",Ws={"mini-detail-popover":"_mini-detail-popover_obryf_1",miniDetailPopover:Zv,sm:eh,lg:th},nh=({children:e,useMiniDetail:t,miniDetailProps:r,placement:o="bottom",trigger:s=["hover"],delayMs:a=500})=>{const{user:i}=d.useContext(n.UserContext),[l,c]=d.useState(!1),{isLoading:p,detail:u,heading:m,tooltipWidth:f}=t({...r,enabled:l&&!(i!=null&&i.external)}),x=d.useRef(null);return n.jsxRuntimeExports.jsx("div",{onMouseEnter:()=>{x.current=window.setTimeout(()=>c(!0),a)},onMouseLeave:()=>{x.current&&clearTimeout(x.current),c(!1)},children:l&&!(i!=null&&i.external)?n.jsxRuntimeExports.jsx(n.HtmlTooltip,{heading:p?n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"placeholder-glow",children:n.jsxRuntimeExports.jsx("span",{className:"placeholder bg-primary col-6"})}):m,content:n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:p?n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"placeholder-glow",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-5"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-3"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-2"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-6"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-3"})]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between py-1",children:[n.jsxRuntimeExports.jsx("span",{className:"placeholder col-5"}),n.jsxRuntimeExports.jsx("span",{className:"placeholder col-4"})]})]}):u}),placement:o,trigger:s,popoverClassName:n.classNames(Ws.miniDetailPopover,Ws[f]),children:n.jsxRuntimeExports.jsx("div",{children:e})}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e})})},rh=({label:e,value:t})=>n.jsxRuntimeExports.jsxs("div",{className:"py-1 border-bottom d-flex gap-3 align-items-center justify-content-between",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:e}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-end",children:t??"-"})]}),oh=({route:e,variant:t="link",children:r,className:o,disabled:s=!1,routeParams:a})=>{const{checkUserHasPermissions:i}=n.usePermissions(),l=d.useMemo(()=>s||!(e.permissions===void 0||i(e.permissions)),[i,s,e.permissions]),c=r??e.name,p=d.useMemo(()=>{switch(t){case"primaryButton":return n.PrimaryButton;case"contextButton":return n.ContextButton;case"iconButton":return n.IconButton;default:return d.Fragment}},[t]);return t==="link"?n.jsxRuntimeExports.jsx(oe.Link,{to:ze.generateApiPath(e.route,a),className:n.classNames("link font-size-14",l?"disabled":void 0,o),children:c}):n.jsxRuntimeExports.jsx(p,{as:"link",href:ze.generateApiPath(e.route,a),className:n.classNames(l?"disabled":void 0,o),children:c})},sh=({id:e,getTimelineApiPath:t})=>{var i;const{texts:{approval:r},ProjectIconComponent:o}=d.useContext(n.LuminusComponentsContext),{data:s}=Se.useGetApiData(t(e)),a=d.useCallback((l,c=!1)=>{switch(l){case n.ApprovalState.Zamitnuto:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateRejected,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"cancel-simple",className:c?"text-danger":"bg-danger rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Nevyrizeno:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateUnrealized,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"pending",className:c?"text-secondary":"bg-secondary rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Odebrano:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateRemoved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"cancel-simple",className:c?"text-warning":"bg-warning rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});case n.ApprovalState.Schvaleno:return n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.stateApproved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(o,{icon:"check-simple",className:c?"text-success":"bg-success rounded-circle p-1",iconProps:{fontSize:"14px",color:c?void 0:"white"}})})});default:return null}},[r,o]);return n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(Gi,{dontSort:!0,steps:[s!=null&&s.startDate?{date:n.parseISO(s.startDate),title:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:r.startDate}),dateFormat:"date"}:null,...((i=s==null?void 0:s.approvalLevels)==null?void 0:i.map(l=>{var c;return{date:void 0,title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center justify-content-between w-100",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"fw-bold",children:r.getLevelText(l.index)}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-end",children:r.getThresholdText(l.threshold)})]}),icon:a(l.state),text:l.approvers&&((c=l.approvers)==null?void 0:c.length)>0?n.jsxRuntimeExports.jsx("div",{className:"list-group",children:l.approvers.map(p=>n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center gap-2",children:[p.automaticApproval?n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"left",text:r.autoApproved,children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx("div",{className:"text-success",style:{fontSize:"14px"},children:"A"})})}):a(p.state,!0),n.jsxRuntimeExports.jsxs("div",{className:"text-end",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:p.delegatedApprover?p.delegatedApprover.name:p.approver.name}),p.responseDate?n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:n.formatDate(p.responseDate)}):null]})]})},p.id))}):null}}))??[],s!=null&&s.finishedDate?{date:n.parseISO(s.finishedDate),title:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:r.finishedDate}),dateFormat:"date"}:null].filter(l=>l!==null).map(l=>l)})})},ah="_state-switch_uc6su_1",ih="_switch-button_uc6su_7",lh="_bg-layer_uc6su_17",ch="_text-layer_uc6su_26",uh="_left_uc6su_38",dh="_right_uc6su_41",ph="_active_uc6su_44",Ge={"state-switch":"_state-switch_uc6su_1",stateSwitch:ah,"switch-button":"_switch-button_uc6su_7",switchButton:ih,"bg-layer":"_bg-layer_uc6su_17",bgLayer:lh,"text-layer":"_text-layer_uc6su_26",textLayer:ch,left:uh,right:dh,active:ph},mh=({isLeftStateActive:e,toggleState:t,leftStateLabel:r,rightStateLabel:o})=>n.jsxRuntimeExports.jsxs("div",{role:"button",className:n.classNames("gap-1",Ge.stateSwitch),onClick:t,children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:n.classNames(Ge.switchButton,Ge.left,{[Ge.active]:e}),children:[n.jsxRuntimeExports.jsx("div",{className:Ge.bgLayer}),n.jsxRuntimeExports.jsx("div",{className:Ge.textLayer,children:r})]}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:n.classNames(Ge.switchButton,Ge.right,{[Ge.active]:!e}),children:[n.jsxRuntimeExports.jsx("div",{className:Ge.bgLayer}),n.jsxRuntimeExports.jsx("div",{className:Ge.textLayer,children:o})]})]}),fh=({showArchived:e,BnfTableComponent:t,tableIdentifier:r,detailRoute:o})=>{const{texts:{substitutions:s}}=d.useContext(n.LuminusComponentsContext),{data:a}=Se.useGetApiData(`/permissions/substitutions?archived=${e}`),i=d.useMemo(()=>({enable:!0,column:"archived"}),[]),l=d.useMemo(()=>[{fieldName:"employeeName",caption:s.index.employeeName,type:"string",onMobile:{isIdentifier:!0}},{fieldName:"substituteName",caption:s.index.substitute,type:"string",onMobile:{isIdentifier:!0}},{fieldName:"from",caption:s.index.from,type:"date",onMobile:{displayGroup:s.index.generalInfo}},{fieldName:"to",caption:s.index.to,type:"date",onMobile:{displayGroup:s.index.generalInfo}},{fieldName:"archived",caption:"Archived",type:"boolean",isVisible:!1},{fieldName:"id",caption:"",type:"number",width:50,isVisible:!1}],[s]),c=d.useCallback(p=>oe.generatePath(o,{id:p.id.toString()}),[o]);return n.jsxRuntimeExports.jsx(t,{data:a??[],columnsDef:l,tableId:r,useSearchState:!0,paginationMode:"enabled",useScrollableContainer:!0,archiveHighlighting:i,rowNavigation:c})},xh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,resetsFields:o,type:s,required:a,hidden:i,disabled:l,withoutLabel:c,hint:p,onChange:u,className:m})=>{const{register:f,formState:x,setValue:g}=De.useFormContext(),b=n.useFormDisabledContext({falseIfNotInit:!0}),[v,h]=d.useState(void 0),[y,R]=d.useState(!1);d.useEffect(()=>{const S=t.split(".");let D=x.errors;S.forEach(I=>{D!==void 0&&(D=D[I])}),h(D)},[x,t]);const j=d.useMemo(()=>l||b,[l,b]),E=v!==void 0;return d.useEffect(()=>{x.isSubmitted&&R(!0)},[x]),n.jsxRuntimeExports.jsxs(e,{isForCheckInput:!0,hidden:i,label:r??"",required:a,disabled:j,isInvalid:E,withoutLabel:c,hint:p,className:m,children:[n.jsxRuntimeExports.jsx(n.Form.Check,{id:`check-${t}`,type:s??"checkbox",label:`${r}${a?" *":""}`,...f(t,{onChange:S=>{o&&o.forEach(D=>g(D,null,{shouldDirty:!0,shouldValidate:y})),u&&u(S.target.value??null)}}),isInvalid:E,hidden:i,disabled:j,className:"w-100"}),v&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:v.message})]})},gh=({InputContainer:e=n.RowLabelInput,label:t,formField:r,options:o,resetsFields:s,required:a,disabled:i,hidden:l,onChange:c,className:p})=>{const{register:u,formState:m,setValue:f,watch:x}=De.useFormContext(),g=n.useFormDisabledContext({falseIfNotInit:!0}),[b,v]=d.useState(void 0),[h,y]=d.useState(!1),R=d.useMemo(()=>o,[o]),j=d.useMemo(()=>i||g,[i,g]);d.useEffect(()=>{const S=r.split(".");let D=m.errors;S.forEach(I=>{D!==void 0&&(D=D[I])}),v(D)},[m,r]),d.useEffect(()=>{m.isSubmitted&&y(!0)},[m]);const E=b!==void 0;return n.jsxRuntimeExports.jsxs(e,{isForRadioInput:!0,hidden:l,withoutLabel:!t,label:t??"",required:a,disabled:j,isInvalid:E,className:p,children:[R.map(S=>n.jsxRuntimeExports.jsx(n.Form.Check,{id:`radio-${S.id}`,label:S.name,type:"radio",value:S.id??"",checked:x(r)===S.id,...u(r,{onChange:D=>{var I;s&&s.forEach(w=>f(w,null,{shouldDirty:!0,shouldValidate:h})),c&&c((I=D.target)!=null&&I.value?D.target.value.toString():null)}}),isInvalid:E,hidden:l,disabled:j,className:"w-100"},S.id)),b&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:b.message})]})},vh=({label:e,InputContainer:t=n.RowLabelInput,className:r,withoutLabel:o,hidden:s,disabled:a,contactType:i,formField:l,...c})=>{const{watch:p}=De.useFormContext(),u=p(l),m=n.useFormDisabledContext({falseIfNotInit:!0}),f=d.useMemo(()=>a||m,[a,m]);return s?null:n.jsxRuntimeExports.jsx(Hi,{contactType:i,value:u,withoutLabel:o,label:e,className:r,children:n.jsxRuntimeExports.jsx(n.HookFormTextInput,{type:"text",formField:l,InputContainer:t,size:"sm",withoutLabel:!0,className:"flex-grow-1",disabled:f,...c})})},hh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,size:o,defaultSelection:s,resetsFields:a,isNumber:i,required:l,hidden:c,disabled:p,items:u,onSearchQueryChange:m,selectedItemNavigateTo:f,texts:x,dropdownItemsNameWidth:g,isLoading:b,withoutLabel:v,additionalColumns:h,CustomOnChangeComponent:y,icon:R,displayIdAsName:j,onSelect:E,className:S,archiveColumn:D,hint:I,addNewOptionPath:w,refreshOptions:_,MiniDetailComponent:T,miniDetailPlacement:A,suggestedItems:C,suggestedItemsTitle:O})=>{const{formState:F,setValue:P,watch:B,control:G}=De.useFormContext(),L=n.useFormDisabledContext({falseIfNotInit:!0}),[$,U]=d.useState(void 0),[q,X]=d.useState(!1),[Q,le]=d.useState(!1),V=B(t)??null,Y=V===(s==null?void 0:s.id)?s==null?void 0:s.name:B(`${t}-DropdownName`),re=d.useMemo(()=>V==null?null:{id:V??null,name:Y??""},[V,Y]),fe=d.useCallback(()=>{const M=t.split(".");let z=F.errors;M.forEach(ee=>{z!==void 0&&(z=z[ee])}),U(z)},[F,t]),te=d.useCallback(M=>{if((M==null?void 0:M.id)===V)return;if(E&&E(M),a&&a.forEach(ee=>P(ee,null,{shouldDirty:!0,shouldValidate:Q})),M===null){P(t,null,{shouldDirty:!0,shouldValidate:Q}),P(`${t}-DropdownName`,null);return}let z=null;i?z=(M==null?void 0:M.id)!==null&&(M==null?void 0:M.id)!==""?parseInt(M.id.toString(),10):null:z=M.id===null||M.id===void 0||M.id===""?null:M.id,P(t,z,{shouldDirty:!0,shouldValidate:Q}),P(`${t}-DropdownName`,M.name??"")},[P,t,Q,i,a,V,E]),k=d.useCallback(M=>{X(!1),te(M)},[te]),Z=d.useCallback(()=>{X(!1)},[]),ve=d.useRef(null),_e=$!==void 0,Ae=f!==void 0,qe=Ae&&re!==null,W=d.useMemo(()=>p||L,[p,L]);return d.useEffect(()=>{fe()},[fe]),d.useEffect(()=>{F.isSubmitted&&le(!0)},[F]),n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(e,{label:r??"",required:l,disabled:W,hidden:c,withoutLabel:v,isInvalid:_e,inputContainerClassName:n.classNames({"luminus-dropdown-select-open":q}),hint:I,className:S,children:[n.jsxRuntimeExports.jsxs(n.InputAnchorContainer,{currentSelection:re,selectedItemNavigateTo:f,children:[j&&(re==null?void 0:re.name)&&n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"d-flex justify-content-end mt-2 luminus-dropdown-selection-name",children:re.name}),n.jsxRuntimeExports.jsx(De.Controller,{control:G,name:t,render:()=>n.jsxRuntimeExports.jsx(n.MiniDetailWrapper,{value:V,MiniDetailComponent:T,miniDetailPlacement:A,children:n.jsxRuntimeExports.jsx(n.Form.Select,{size:o,onMouseDown:M=>{M.currentTarget.focus(),M.preventDefault()},onClick:()=>{!Ae&&!W&&X(!0)},ref:ve,value:V??"",onChange:()=>{},isInvalid:_e,hidden:c,className:n.classNames("w-100",{"luminus-dropdown-picker-disabled":W,"luminus-dropdown-picker-link":qe}),children:n.jsxRuntimeExports.jsx("option",{value:V,children:j?V:(Y==null?void 0:Y.length)>0?Y:V})})})}),y||!W&&Ae?n.jsxRuntimeExports.jsxs("div",{className:"custom-picker-button",children:[!y&&!W&&Ae&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"secondary",onClick:M=>{M.preventDefault(),M.stopPropagation(),X(!0)},children:R??n.jsxRuntimeExports.jsx(n.MdOutlineEdit,{})}),y??null]}):null]}),$&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:$.message}),ve.current&&n.jsxRuntimeExports.jsx(n.SimplePicker,{show:q,onCancel:Z,items:u,currentSelection:re,onSelectionChange:k,onSearchQueryChange:m,texts:x,itemsNameWidth:g,additionalColumns:h,displayIdAsName:j,isLoading:b,disabled:W,inputRef:ve,archiveColumn:D,addNewOptionPath:w,refreshOptions:_,suggestedItems:C,suggestedItemsTitle:O})]})})},bh=({InputContainer:e=n.RowLabelInput,label:t,formField:r,hidden:o,required:s,placeholder:a,disabled:i,showClearIcon:l,resetsFields:c,multiple:p,accept:u,withoutLabel:m,hint:f,className:x})=>{const{watch:g,setValue:b,register:v,formState:h}=De.useFormContext(),y=n.useFormDisabledContext({falseIfNotInit:!0}),[R,j]=d.useState(!1),[E,S]=d.useState(void 0),D=d.useCallback(()=>{b(r,"")},[b,r]),I=d.useCallback(()=>{const T=r.split(".");let A=h.errors;T.forEach(C=>{A!==void 0&&(A=A[C])}),S(A)},[h,r]);d.useEffect(I,[I]),d.useEffect(()=>{h.isSubmitted&&j(!0)},[h]);const w=d.useMemo(()=>i||y,[i,y]),_=E!==void 0;return n.jsxRuntimeExports.jsxs(e,{label:t??"",required:s,disabled:w,hidden:o,withoutLabel:m,isInvalid:_,hint:f,className:x,children:[n.jsxRuntimeExports.jsx(n.FormControl,{type:"file",multiple:p,accept:u.join(", "),placeholder:a??t,isInvalid:_,hidden:o,disabled:w,className:"w-100",...v(r,{onChange:()=>{c&&c.forEach(T=>b(T,null,{shouldDirty:!0,shouldValidate:R}))}})}),l&&g(r)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:D,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),E&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:E.message})]})},sl=({children:e,onStorno:t,noSpacer:r})=>{const{formState:o}=De.useFormContext(),s=n.useFormDisabledContext({falseIfNotInit:!0}),[a,i]=d.useState(!1);return d.useEffect(()=>{i(Object.keys(o.dirtyFields).length>0)},[o]),a?n.jsxRuntimeExports.jsx(ba,{onStorno:t,noSpacer:r,disabled:s,children:e}):null},Cr=({InputContainer:e=n.RowLabelInput,options:t,formField:r,label:o,size:s,resetsFields:a,isNumber:i,required:l,hidden:c,disabled:p,withoutLabel:u,noSortOptions:m,suffixIdToName:f,onSelect:x,className:g,appendCurrentSelectionWithName:b,hint:v,addNewOptionPath:h,refreshOptions:y,MiniDetailComponent:R,miniDetailPlacement:j,selectedItemNavigateTo:E})=>{const{texts:{customSelect:S}}=d.useContext(n.LuminusComponentsContext),{formState:D,setValue:I,watch:w,control:_}=De.useFormContext(),T=n.useFormDisabledContext({falseIfNotInit:!0}),[A,C]=d.useState(void 0),[O,F]=d.useState(!1),[P,B]=d.useState(!1),[G,L]=d.useState(""),$=w(r),U=d.useMemo(()=>t.find(k=>k.id===$)??null,[t,$]),q=d.useCallback(()=>{const k=r.split(".");let Z=D.errors;k.forEach(ve=>{Z!==void 0&&(Z=Z[ve])}),C(Z)},[D,r]),X=d.useCallback(k=>{if((k==null?void 0:k.id)===$)return;if(x&&x(k),a&&a.forEach(ve=>I(ve,null,{shouldDirty:!0,shouldValidate:P})),k===null){I(r,null,{shouldDirty:!0,shouldValidate:P});return}let Z=null;i?Z=(k==null?void 0:k.id)!==null&&(k==null?void 0:k.id)!==""?parseInt(k.id.toString(),10):null:Z=k.id===null||k.id===void 0||k.id===""?null:k.id,I(r,Z,{shouldDirty:!0,shouldValidate:P})},[I,r,i,a,$,P,x]),Q=d.useCallback(k=>{F(!1),X(k)},[X]),le=d.useCallback(k=>{L(k)},[]),V=d.useMemo(()=>p||T,[p,T]);d.useEffect(()=>{q()},[q]),d.useEffect(()=>{D.isSubmitted&&B(!0)},[D]);const Y=d.useCallback(k=>{var Z;return k===null?"":!k.name||k.name.length===0?((Z=k.id)==null?void 0:Z.toString())??"":f?`${k.name} (${k.id})`:k.name},[f]),re=d.useMemo(()=>{const k=t?[...t]:[];return b!==void 0&&$&&(k.some(Z=>Z.id===$)||k.push({id:$,name:b})),k.map(Z=>({id:Z.id,name:Y(Z)})).filter(Z=>n.stringSearchWithin(Z.name,G)).sort((Z,ve)=>m?0:(Z.name??"").localeCompare(ve.name??""))},[t,m,G,Y,b,$]),fe=d.useRef(null),te=A!==void 0;return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs(e,{label:o??"",required:l,disabled:V,hidden:c,withoutLabel:u,isInvalid:te,inputContainerClassName:n.classNames({"luminus-dropdown-select-open":O}),hint:v,className:g,children:[n.jsxRuntimeExports.jsx(n.InputAnchorContainer,{currentSelection:U,selectedItemNavigateTo:E,children:n.jsxRuntimeExports.jsx(De.Controller,{control:_,name:r,render:()=>n.jsxRuntimeExports.jsx(n.MiniDetailWrapper,{value:$,MiniDetailComponent:R,miniDetailPlacement:j,children:n.jsxRuntimeExports.jsx(n.Form.Select,{size:s,onMouseDown:k=>{k.currentTarget.focus(),k.preventDefault()},onClick:()=>{F(!0)},ref:fe,value:$??"",onChange:()=>{},isInvalid:te,hidden:c,disabled:V,className:"w-100",children:n.jsxRuntimeExports.jsx("option",{value:(U==null?void 0:U.id)??"",children:Y(U)})})})})}),A&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:A.message}),fe.current&&n.jsxRuntimeExports.jsx(n.SimplePicker,{show:O,onCancel:()=>F(!1),items:re,currentSelection:U??null,onSelectionChange:Q,onSearchQueryChange:le,texts:S,disabled:V,inputRef:fe,autoHideSearch:!0,allItemsLength:t.length,addNewOptionPath:h,refreshOptions:y})]})})},jh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,placeholder:o,size:s,resetsFields:a,showClearIcon:i,clearValue:l,required:c,hidden:p,disabled:u,withoutLabel:m,step:f,stepperStep:x=1,className:g,min:b,max:v,onChange:h,hint:y})=>{const{register:R,formState:j,setValue:E,watch:S}=De.useFormContext(),D=n.useFormDisabledContext({falseIfNotInit:!0}),[I,w]=d.useState(void 0),[_,T]=d.useState(!1),A=d.useCallback((G,L,$)=>{E(G,ze.limitNumber(L,b,v),$)},[v,b,E]),C=d.useCallback(()=>{const G=l??null;A(t,G!==null?Number(G):null,{shouldDirty:!0,shouldValidate:_})},[l,A,t,_]),O=d.useCallback(()=>{const G=t.split(".");let L=j.errors;G.forEach($=>{L!==void 0&&(L=L[$])}),w(L)},[j,t]),F=d.useMemo(()=>u||D,[u,D]);d.useEffect(()=>{O()},[O]),d.useEffect(()=>{j.isSubmitted&&T(!0)},[j]);const P=I!==void 0,B=S(t);return n.jsxRuntimeExports.jsxs(e,{label:r??"",required:c,disabled:F,hidden:p,withoutLabel:m,isInvalid:P,hint:y,className:g,children:[n.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[n.jsxRuntimeExports.jsx(n.Form.Control,{type:"number",placeholder:o??r,size:s,...R(t,{setValueAs:G=>G==null||G===""?null:ze.limitNumber(Number(G),b,v),min:b,max:v,onChange:G=>{var L;a&&a.forEach($=>E($,null,{shouldDirty:!0,shouldValidate:_})),h&&h((L=G.target)!=null&&L.value?Number(G.target.value)??null:null)}}),isInvalid:P,hidden:p,disabled:F,className:"w-100 luminus-numeric-stepper",step:f,min:b,max:v}),n.jsxRuntimeExports.jsx("div",{className:"stepper-icon left",children:!u&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:G=>{G.preventDefault(),G.stopPropagation(),A(t,((B?Number(B):0)-x).toString(),{shouldDirty:!0,shouldValidate:_})},children:n.jsxRuntimeExports.jsx(n.FaMinus,{})})}),n.jsxRuntimeExports.jsx("div",{className:"stepper-icon right",children:!u&&n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:G=>{G.preventDefault(),G.stopPropagation(),A(t,((B?Number(B):0)+x).toString(),{shouldDirty:!0,shouldValidate:_})},children:n.jsxRuntimeExports.jsx(n.FaPlus,{})})})]}),i&&S(t)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:C,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),I&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:I.message})]})},Eh=({InputContainer:e=n.RowLabelInput,formField:t,label:r,placeholder:o,resetsFields:s,showClearIcon:a,clearValue:i,required:l,hidden:c,disabled:p,withoutLabel:u,step:m,size:f,CustomOnChangeComponent:x,noSelectOnFocus:g,className:b,decimalScale:v=2,fixedDecimalScale:h=!1,numberPrefix:y,numberSuffix:R,min:j,max:E,onChange:S,hint:D})=>{const{formState:I,setValue:w,watch:_,control:T}=De.useFormContext(),A=n.useFormDisabledContext({falseIfNotInit:!0}),[C,O]=d.useState(void 0),[F,P]=d.useState(!1),B=d.useCallback(()=>{const q=i??null;w(t,q!==null?Number(q):null,{shouldDirty:!0,shouldValidate:F})},[i,w,t,F]),G=d.useCallback(()=>{const q=t.split(".");let X=I.errors;q.forEach(Q=>{X!==void 0&&(X=X[Q])}),O(X)},[I,t]),L=d.useMemo(()=>p||A,[p,A]);d.useEffect(()=>{G()},[G]),d.useEffect(()=>{I.isSubmitted&&P(!0)},[I]);const $=_(t);d.useEffect(()=>{E!==void 0&&$>E&&w(t,E),j!==void 0&&$<j&&w(t,j)},[t,$,E,j,w]);const U=C!==void 0;return n.jsxRuntimeExports.jsxs(e,{label:r??"",required:l,disabled:L,hidden:c,withoutLabel:u,isInvalid:U,hint:D,className:b,children:[n.jsxRuntimeExports.jsxs("div",{className:"luminus-input-container position-relative w-100",children:[n.jsxRuntimeExports.jsx(De.Controller,{control:T,name:t,render:({field:{ref:q,onChange:X,name:Q,value:le}})=>n.jsxRuntimeExports.jsx(io,{displayType:"input",thousandSeparator:" ",decimalSeparator:",",decimalScale:v,fixedDecimalScale:h,prefix:y,suffix:R,defaultValue:"",name:Q,value:le??"",placeholder:o??r,onFocus:V=>{!g&&V.target.select()},onChange:V=>{var fe,te;const Y=parseFloat(((te=(fe=V.target)==null?void 0:fe.value)==null?void 0:te.replaceAll(" ","").replaceAll(",","."))??0);s&&s.forEach(k=>w(k,null,{shouldDirty:!0,shouldValidate:F}));const re=Y==null||Number.isNaN(Y)?null:Number(Y);X(re),S&&S(re)},hidden:c,disabled:L,className:n.classNames("form-control text-end w-100",{"is-invalid":U},{[`form-control-${f}`]:f}),step:m,getInputRef:q,min:j,max:E})}),x&&n.jsxRuntimeExports.jsx("div",{className:"custom-picker-button",children:x})]}),a&&_(t)&&n.jsxRuntimeExports.jsx("div",{className:"luminus-input-remove-icon inset",children:n.jsxRuntimeExports.jsx(n.IconButton,{color:"secondary",size:"sm",onClick:B,children:n.jsxRuntimeExports.jsx(n.MdClear,{})})}),C&&n.jsxRuntimeExports.jsx(n.InvalidFeedback,{message:C.message})]})},yh=(e,t)=>{const r=n.useAxios(),o=oe.useNavigate(),{startLoading:s,stopLoading:a}=d.useContext(n.LoadingContext),{zDateRequired:i,zNumberRequired:l}=n.useZodSchemaTypes(),{addNotification:c}=n.useNotifications(),{refreshAvailableDelegations:p}=d.useContext(n.DelegationContext),{user:u}=d.useContext(n.UserContext),{texts:{substitutions:{detail:m}}}=d.useContext(n.LuminusComponentsContext),f=n.z.object({id:l(),employeeId:l(),substituteId:l(),from:i(),to:i(),roles:n.z.array(n.z.string())}),x=d.useMemo(()=>({id:(e==null?void 0:e.id)??0,employeeId:(e==null?void 0:e.employeeId)??(u==null?void 0:u.personalNumber)??void 0,substituteId:(e==null?void 0:e.substituteId)??void 0,from:(e==null?void 0:e.from)??n.format(new Date,"yyyy-MM-dd"),to:(e==null?void 0:e.to)??n.format(new Date,"yyyy-MM-dd"),roles:(e==null?void 0:e.roles)??[]}),[e==null?void 0:e.employeeId,e==null?void 0:e.from,e==null?void 0:e.id,e==null?void 0:e.roles,e==null?void 0:e.substituteId,e==null?void 0:e.to,u==null?void 0:u.personalNumber]),g=De.useForm({resolver:n.t(f),defaultValues:x}),b=d.useCallback(async v=>{s("premissions-substitute-submit");try{await r.post("permissions/substitutions",v),c(m.updateSuccess,"success"),p(),o(t)}catch(h){n.hookFormSetServerErrors(g,h)}finally{a("premissions-substitute-submit")}},[c,r,g,o,p,s,a,t,m]);return d.useEffect(()=>{g.reset(x)},[x,g]),{formSchema:f,onSubmit:b,formMethods:g}},Rh=({indexRoute:e})=>{var j;const{id:t}=oe.useParams(),{user:r}=d.useContext(n.UserContext),o=n.useAxios(),s=oe.useNavigate(),{confirm:a}=n.useConfirm(),{texts:{substitutions:{detail:i}}}=d.useContext(n.LuminusComponentsContext),{data:l}=Se.useGetApiData(`/permissions/substitutions/${t}`,{enabled:t!==void 0}),{data:c}=Se.useGetApiData("/permissions/users"),{onSubmit:p,formMethods:u}=yh(l,e),m=u.watch("employeeId"),{data:f}=Se.useGetApiData(`/permissions/roles?userName=${(j=c==null?void 0:c.find(E=>E.employeeId===m))==null?void 0:j.name}`,{enabled:m>0&&!!c}),{refreshAvailableDelegations:x}=d.useContext(n.DelegationContext),{checkUserHasPermissions:g}=n.usePermissions(),b=d.useCallback(async()=>{await a(i.deleteConfirm)&&(await o.delete(`/permissions/substitutions/${t}`),x(),s(e))},[o,a,t,s,x,i,e]),v=d.useMemo(()=>m!==(r==null?void 0:r.personalNumber)&&!g(["ZASTUP_MODIFY"]),[g,m,r==null?void 0:r.personalNumber]),h=u.watch("roles"),y=d.useMemo(()=>f==null?void 0:f.filter(E=>E.canBeRepresented),[f]),R=d.useMemo(()=>(y==null?void 0:y.every(E=>h==null?void 0:h.includes(E.name)))??!1,[y,h]);return n.jsxRuntimeExports.jsx(n.PageContainer,{title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-between align-items-center",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:i.title}),n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>b(),children:i.delete})})]}),children:n.jsxRuntimeExports.jsx(De.FormProvider,{...u,children:n.jsxRuntimeExports.jsx(we.FormDisabledProvider,{disabled:v,children:n.jsxRuntimeExports.jsxs(n.Form,{onSubmit:u.handleSubmit(p),className:"h-100",children:[n.jsxRuntimeExports.jsxs(Ir,{className:"h-100 gx-3 gy-3",children:[n.jsxRuntimeExports.jsx(n.Col,{sm:12,md:4,children:n.jsxRuntimeExports.jsxs(Gt,{title:i.title,children:[n.jsxRuntimeExports.jsx(Cr,{formField:"employeeId",options:(c==null?void 0:c.map(E=>({id:E.employeeId,name:`${E.employeeName} (${E.name})`})))??[],label:i.employee,isNumber:!0,required:!0,disabled:!g(["ZASTUP_MODIFY"]),resetsFields:["roles"]}),n.jsxRuntimeExports.jsx(Cr,{formField:"substituteId",options:(c==null?void 0:c.map(E=>({id:E.employeeId,name:`${E.employeeName} (${E.name})`})))??[],label:i.substitute,isNumber:!0,required:!0}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{formField:"from",label:i.from,type:"date",required:!0}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{formField:"to",label:i.to,type:"date",required:!0})]})}),n.jsxRuntimeExports.jsx(n.Col,{sm:12,md:4,children:n.jsxRuntimeExports.jsxs(Gt,{title:i.roles(`${(h==null?void 0:h.length)??0}/${(y==null?void 0:y.length)??0}`),className:"h-max-100",contentClassName:"d-flex flex-column overflow-hidden",children:[v?null:n.jsxRuntimeExports.jsx("div",{className:"bg-darker",style:{marginLeft:"-12px",marginRight:"-12px",marginTop:"-12px",padding:"0px 12px"},children:n.jsxRuntimeExports.jsx(Qt,{label:R?i.uncheckAllRoles:i.checkAllRoles,indeterminate:!R&&(h==null?void 0:h.length)>0,value:R,disabled:v,onChange:()=>{u.setValue("roles",R?[]:(y==null?void 0:y.map(E=>E.name))??[],{shouldDirty:!0})},InputContainer:n.RowLabelInput})}),n.jsxRuntimeExports.jsx("div",{className:"overflow-auto",style:{maxHeight:"60vh",marginLeft:"-12px",marginRight:"-12px",padding:"0px 12px"},children:f==null?void 0:f.map(E=>n.jsxRuntimeExports.jsx(Qt,{label:E.name,value:(h==null?void 0:h.find(S=>S===E.name))!==void 0,disabled:v||!E.canBeRepresented,onChange:S=>{u.setValue("roles",S?[...h??[],E.name]:(h==null?void 0:h.filter(D=>D!==E.name))??[],{shouldDirty:!0})},InputContainer:n.RowLabelInput},E.name))})]})})]}),n.jsxRuntimeExports.jsx(sl,{onStorno:()=>u.reset(),children:i.save})]})})})})},lo=["slice","options","formats","conditions"],Us=e=>{const t=e.current.flexmonster.getReport({withDefaults:!0});if(typeof t=="string")throw alert("report is string"),new Error("report is string");const r={};return lo.forEach(o=>{r[o]=t[o]}),JSON.stringify(r)},Ch=e=>{if(e.settings){const t=JSON.parse(e.settings);return lo.forEach(r=>{t[r]===void 0&&(t[r]=null)}),t}return{}},Nh=e=>{const t={};return lo.forEach(r=>{t[r]=(e==null?void 0:e[r])??void 0}),t},wh=e=>e&&e.type==="header"&&e.member&&e.member.caption!=="All"&&e.label==="",Hs=(e,t)=>e.hierarchy&&e.hierarchy.uniqueName===t,zs=e=>!e.member&&!e.isDrillThrough,qs=(e,t)=>typeof e=="function"?e(t):e.replace(":id",t),al=({dataSource:e,settings:t,pivotRef:r,localization:o,licenseKey:s,hyperlinkColumn:a,roomPasportization:i,enabled:l=!0})=>{const{texts:{reports:c}}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(!1),m=d.useRef(null),f=r??m,x=d.useMemo(()=>({localization:o}),[o]),g=d.useCallback(j=>{delete j[0],delete j[1],delete j[2];const E=[{id:"fm-tab-expand",title:c.expandAll,handler:f.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:c.collapseAll,handler:f.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 j.unshift({id:"fm-tab-expand",title:c.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:E,rightGroup:!0}),j},[f,c.collapseAll,c.expand,c.expandAll]),b=j=>{const E=j.getTabs();j.getTabs=()=>g(E)},v=d.useMemo(()=>e&&e.mapping?Object.values(e.mapping).filter(j=>j.caption.includes("P:")).map(j=>({uniqueName:j.caption.replace("P:",""),caption:j.caption})):[],[e]),h=d.useMemo(()=>{var E,S,D,I;const j=(E=f.current)==null?void 0:E.flexmonster.getReport();return j&&j.slice?{...j.slice,rows:[...((S=j.slice.rows)==null?void 0:S.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v],columns:[...((D=j.slice.columns)==null?void 0:D.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v],measures:[...((I=j.slice.measures)==null?void 0:I.filter(w=>{var _;return!((_=w.caption)!=null&&_.includes("P:"))}))??[],...v]}:null},[v,f]);d.useEffect(()=>{var j,E,S,D;if(p&&l){if(i&&h){const I=(j=f.current)==null?void 0:j.flexmonster.getReport(),w=I&&I.options?{...I.options,grid:{...(E=I.options)==null?void 0:E.grid,autoSwitchToCompact:!1}}:{};(S=f.current)==null||S.flexmonster.setReport({...I,dataSource:e,slice:h,options:w})}else(D=f.current)==null||D.flexmonster.updateData(e);console.log("Updating flexmonster dataSource to: ",e)}},[e,l,p,v,f,i,h]),d.useEffect(()=>{var j,E,S,D,I;if(p&&l){const w=(j=f.current)==null?void 0:j.flexmonster.getReport();if(w===void 0||typeof w=="string")return;const _=Nh(t);_.options={...t==null?void 0:t.options,grid:{...(E=t==null?void 0:t.options)==null?void 0:E.grid,autoSwitchToCompact:!1},showFieldListSearch:!0,datePattern:"dd.MM.yyyy",dateTimePattern:"dd.MM.yyyy HH:mm:ss"},i&&(_.slice={...t==null?void 0:t.slice,rows:[...((D=(S=t==null?void 0:t.slice)==null?void 0:S.rows)==null?void 0:D.filter(A=>{var C;return!((C=A.caption)!=null&&C.includes("P:"))}))??[],...v]});const T={...w,..._};(I=f.current)==null||I.flexmonster.setReport(T),console.log("Refreshing flexmonster settings. New report: ",T)}},[l,p,v,f,i,t]);const y=d.useCallback((j,E)=>{var A,C;if(wh(E)){j.text=((A=E.member)==null?void 0:A.caption)??"";const O=j.style["padding-left"]??"4px",F=parseInt(O,10);j.style["padding-left"]=F+11+"px"}if(!a||!Hs(E,a.idColumn)||zs(E))return;const S=(C=E.escapedLabel)==null?void 0:C.toString();if(S===void 0)return;const D=qs(a.url,S),I="style='color: #00a45a; text-decoration: underline; cursor: pointer;'",w=E.type==="header"?"onclick='event.stopImmediatePropagation()'":"",_=E.isDrillThrough||E.type==="header"?`href='${D}' target='_blank'`:"";j.style&&(j.style["z-index"]=1);const T=`<a ${_} ${I} ${w}>${E.escapedLabel}</a>`;j.text=T},[a]),R=d.useCallback(j=>{if(!a||!Hs(j,a.idColumn)||zs(j))return;const E=qs(a.url,j.escapedLabel??"");window.open(E??"","_blank","noreferrer")},[a]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(xl.Pivot,{ref:f,global:x,licenseKey:s,toolbar:!0,height:"100%",beforetoolbarcreated:b,ready:()=>{u(!0)},width:"100%",customizeCell:y,cellclick:R})})},Sh=(e,t,r,o)=>{const{texts:{reports:s}}=d.useContext(n.LuminusComponentsContext),{prompt:a}=n.usePrompt(),{confirm:i}=n.useConfirm(),l=n.useAxios(),{user:c}=d.useContext(n.UserContext),{startLoading:p,stopLoading:u}=d.useContext(n.LoadingContext),{addNotification:m}=n.useNotifications(),f=d.useCallback(async h=>{p("report-versionSavingAs");try{const y=await l.post("/reports/version",h);m(s.saveSuccessful,"success"),await o(y.data)}finally{u("report-versionSavingAs")}},[m,o,l,s.saveSuccessful,p,u]),x=d.useCallback(async()=>{if(r===null){m("none open","warning");return}if(!await i(s.confirmOverwriteSave))return;const y=Us(t);f({reportSourceName:e,reportVersionId:r,settings:y})},[m,i,t,e,s.confirmOverwriteSave,f,r]),g=d.useCallback(async()=>{const h=await a(s.enterName,{input:"input",required:!0});if(h===null)return;const y=Us(t);f({reportSourceName:e,name:h,settings:y})},[t,a,e,s.enterName,f]),b=d.useCallback(async()=>{p("report-versionSavingAs");try{await l.post("/reports/version",{reportVersionId:r??void 0,reportSourceName:e,isArchived:!0}),m(s.deleteSuccessful,"success")}finally{u("report-versionSavingAs")}},[m,l,e,s.deleteSuccessful,r,p,u]),v=d.useCallback(async()=>{p("report-versionSavingAs");try{await l.post("/reports/version-restrictions",{reportVersionId:r??void 0,userRestricts:[{employeeId:c.personalNumber,addRights:!1}]}),m(s.detachSuccessful,"success")}finally{u("report-versionSavingAs")}},[m,l,s.detachSuccessful,r,p,u,c.personalNumber]);return{saveAs:g,save:x,archive:b,detach:v}},Dh=e=>{const t=n.useAxios(),{startLoading:r,stopLoading:o}=d.useContext(n.LoadingContext);return{changeEmployeeRights:d.useCallback(async(a,i)=>{let l=null;r("reportSharing-addPerson");try{l=(await t.post("/reports/version-restrictions",{reportVersionId:e,userRestricts:[{employeeId:a,addRights:i}]})).data}finally{o("reportSharing-addPerson")}return l},[t,e,r,o])}},Ih=({isOpen:e,onHide:t,usersData:r,reportVersionId:o,EmployeePicker:s,setReportVersion:a})=>{const{ProjectIconComponent:i,texts:{reports:l}}=d.useContext(n.LuminusComponentsContext),{confirm:c}=n.useConfirm(),[p,u]=d.useState(null),{changeEmployeeRights:m}=Dh(o),f=d.useCallback(b=>{a(v=>v===null?null:{...v,users:b.filter(h=>h.isReportOwner===!1)})},[a]),x=d.useCallback(async()=>{if(p===null)return;const b=await m(p.id,!0);f(b),u(null)},[p,m,f]),g=d.useCallback(async b=>{if(!await c(l.removeSharingWith(b)))return;const h=await m(b,!1);f(h)},[m,c,l,f]);return n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:t,children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:l.reportSharing})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h6",children:l.sharedWith}),n.jsxRuntimeExports.jsxs(n.ListGroup,{variant:"flush",children:[r&&r.length===0?n.jsxRuntimeExports.jsx("div",{className:"px-2 text-muted",children:l.noone.toLowerCase()}):null,r==null?void 0:r.map(b=>n.jsxRuntimeExports.jsxs(n.ListGroupItem,{className:"d-flex justify-content-between align-items-center gap-3 border-bottom px-2 py-1",children:[b.lastName," ",b.firstName," [",b.id,"]",n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>g(b.id),children:n.jsxRuntimeExports.jsx(i,{icon:"delete"})})]},b.id))]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"h6",className:"mt-2 mb-2",children:l.addSharing}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center",children:[n.jsxRuntimeExports.jsx("div",{className:"flex-grow-1",children:n.jsxRuntimeExports.jsx(s,{label:l.shareWith,onSelect:b=>{if(b===null||typeof b.id!="number"){u(null);return}u(b)},value:p})}),n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:x,disabled:p===null,children:l.add})]})]})]})},_h=(e,t)=>{const[r,o]=d.useState(null);return d.useEffect(()=>{e.then(({default:s})=>{const a=t!==void 0?t(s):s;o(a)})},[t,e]),{mappings:r}},Oh=({reportType:e,title:t,data:r,filterElements:o,getReportRoute:s,localization:a,licenseKey:i,EmployeePicker:l,localizationJsonFile:c,localizationTransformer:p,hyperlinkColumn:u,roomPasportization:m=!1})=>{const{texts:{reports:f}}=d.useContext(n.LuminusComponentsContext),{confirm:x}=n.useConfirm(),g=oe.useNavigate(),[b]=oe.useSearchParams(),{id:v}=oe.useParams(),h=d.useMemo(()=>v===void 0?null:Number(v),[v]),y=d.useCallback(V=>{const Y=V===null?"":V.toString();g(oe.generatePath(s(e),{id:Y})+"?"+b.toString(),{replace:!0,flushSync:!0})},[s,g,e,b]),[R,j]=d.useState(!1),E=d.useRef(null),{user:S}=d.useContext(n.UserContext),{data:D,reloadData:I}=Se.useGetApiData(`/reports/${e}`),{mappings:w}=_h(c,p),[_,T]=d.useState({}),A=d.useCallback(V=>{const Y=V.target.value,re=Y===""?null:Number(Y);y(re)},[y]),C=d.useCallback(async V=>{await I(),y(V)},[I,y]),{data:O,setData:F}=Se.useGetApiData(`/reports/version/${h}`,{enabled:h!==null,nullStateBeforeLoad:!1,nullStateOnFail:!0});d.useEffect(()=>{var Y;if(O===null){T({});return}const V=Ch(O)??{};T(V),(Y=E.current)==null||Y.flexmonster.refresh()},[O]);const{save:P,saveAs:B,archive:G,detach:L}=Sh(e,E,h,C),$=d.useMemo(()=>({data:r??[],mapping:w??void 0}),[r,w]),U=d.useCallback(async()=>{var Y;await x(f.confirmRevertChanges)&&((Y=E.current)==null||Y.flexmonster.setReport({dataSource:$,..._}))},[x,$,f.confirmRevertChanges,_]),q=d.useMemo(()=>(O==null?void 0:O.ownerId)===S.personalNumber,[O==null?void 0:O.ownerId,S.personalNumber]),X=d.useMemo(()=>{var V;return(V=O==null?void 0:O.users)==null?void 0:V.some(Y=>Y.id===S.personalNumber&&!Y.isReportOwner)},[O==null?void 0:O.users,S.personalNumber]),Q=d.useCallback(async()=>{await x(f.confirmDelete(O==null?void 0:O.name))&&(await G(),y(null),await I())},[G,x,I,O==null?void 0:O.name,f,y]),le=d.useCallback(async()=>{await x(f.confirmDetach(O==null?void 0:O.name))&&(await L(),y(null),await I())},[x,L,I,O==null?void 0:O.name,f,y]);return d.useEffect(()=>{var V,Y;h===null&&y(((V=D==null?void 0:D.reportVersions.find(re=>re.isSystem===!0))==null?void 0:V.reportVersionId)??((Y=D==null?void 0:D.reportVersions[0])==null?void 0:Y.reportVersionId)??null)},[D==null?void 0:D.reportVersions,h,y]),n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.PageContainer,{variant:"fullScreen",title:n.jsxRuntimeExports.jsxs("div",{className:"d-flex justify-content-start gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:t}),o,n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[n.jsxRuntimeExports.jsxs(n.FormSelect,{size:"sm",value:h??void 0,onChange:A,children:[n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectSystem,children:D==null?void 0:D.reportVersions.filter(V=>V.isSystem===!0).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:V.name},V.reportVersionId))}),n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectYour,children:D==null?void 0:D.reportVersions.filter(V=>V.ownerId===S.personalNumber).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:V.name},V.reportVersionId))}),n.jsxRuntimeExports.jsx("optgroup",{label:f.versionSelectSharedWithYou,children:D==null?void 0:D.reportVersions.filter(V=>V.isSystem===!1&&V.ownerId!==S.personalNumber).map(V=>n.jsxRuntimeExports.jsx("option",{value:V.reportVersionId,children:`${V.name} [${V.ownerId}]`},V.reportVersionId))})]}),n.jsxRuntimeExports.jsx(n.ContextButton,{icon:n.jsxRuntimeExports.jsx(n.MdSave,{}),onClick:P,disabled:h===null||(O==null?void 0:O.isSystem)||!q,children:f.save}),n.jsxRuntimeExports.jsx(n.ContextButton,{icon:n.jsxRuntimeExports.jsx(n.MdSaveAs,{}),onClick:B,className:"flex-shrink-0",children:f.saveAs}),n.jsxRuntimeExports.jsxs(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle}),children:[n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:U,children:f.revertChanges}),n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>j(!0),disabled:!q||(O==null?void 0:O.isSystem),children:f.share}),q&&!(O!=null&&O.isSystem)?n.jsxRuntimeExports.jsx(n.DropdownItem,{color:"danger",onClick:Q,children:f.delete}):null,X&&!(O!=null&&O.isSystem)?n.jsxRuntimeExports.jsx(n.DropdownItem,{color:"danger",onClick:le,children:f.detach}):null]})]})]}),children:n.jsxRuntimeExports.jsx("div",{className:n.classNames("h-100 w-100",$.data&&$.data.length>0?"":"d-none"),children:n.jsxRuntimeExports.jsx(al,{dataSource:$,settings:_,pivotRef:E,enabled:$.data&&$.data.length>0,roomPasportization:m,localization:a,licenseKey:i,hyperlinkColumn:u})})}),O!==null?n.jsxRuntimeExports.jsx(Ih,{isOpen:R,onHide:()=>j(!1),usersData:O.users??null,setReportVersion:F,reportVersionId:O==null?void 0:O.reportVersionId,EmployeePicker:l}):null]})},Th=({cell:{value:e}})=>n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e?n.jsxRuntimeExports.jsx(n.AvatarIcon,{name:e,size:21,fontSize:12}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{})}),kh=({knownTypes:e,typeFilters:t,onChangeTypeFilters:r})=>n.jsxRuntimeExports.jsx("div",{className:"mb-1 d-flex justify-content-center gap-2",children:e.map(o=>n.jsxRuntimeExports.jsx("div",{role:"button",style:{height:"14px",width:"14px",borderRadius:"50%",border:"2px solid transparent",backgroundColor:"transparent"},className:n.classNames(`border-${o}`,t.includes(o)&&`bg-${o}`),onClick:()=>{t.includes(o)?r(t.filter(s=>s!==o)):r([...t,o])}},o))}),Ph=({linksTo:e,onClick:t,children:r})=>e?n.jsxRuntimeExports.jsx(oe.Link,{to:e,className:"text-decoration-none",onClick:t,children:r}):n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:r}),Ah=({message:e,onDeleteMessage:t,onClickMessage:r,getIcon:o,getLinksTo:s})=>{const{ProjectIconComponent:a,localizationContext:i}=d.useContext(n.LuminusComponentsContext),{dateFnsLocale:l}=d.useContext(i),c=e.dateTime?n.parseISO(e.dateTime):null,p=c?bl(new Date(Date.now()),c):0;return n.jsxRuntimeExports.jsxs("div",{children:[c&&n.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:n.format(c,"dd.MM.yyyy HH:mm"),placement:"left",children:n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",children:p>2?n.format(c,"dd.MM.yyyy"):El(c,new Date(Date.now()),{locale:l.code})})})})}),n.jsxRuntimeExports.jsx(Ph,{linksTo:s(e)??void 0,onClick:r,children:n.jsxRuntimeExports.jsx(Vi,{level:e.type,noIcon:!0,children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start gap-2",children:[o(e),n.jsxRuntimeExports.jsxs("div",{className:"d-flex flex-column gap-1 w-100",children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-start justify-content-between gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"fw-bold",children:e.subject}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:u=>{u.preventDefault(),u.stopPropagation(),t(e.id)},children:n.jsxRuntimeExports.jsx(a,{icon:"delete"})})]}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:e.text})]})]})})})]})},Ys=["info","warning","danger"],Ks=({messages:e,isLoading:t,onDeleteMessage:r,onClickMessage:o,getIcon:s,getLinksTo:a})=>{const{texts:{messageBoard:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(Ys),p=d.useMemo(()=>e.filter(u=>l.includes(u.type??"")),[l,e]);return n.jsxRuntimeExports.jsxs("div",{className:"h-100 d-flex flex-column overflow-hidden",children:[n.jsxRuntimeExports.jsx(kh,{knownTypes:Ys,typeFilters:l,onChangeTypeFilters:u=>c(u)}),t&&n.jsxRuntimeExports.jsxs("div",{className:"p-3 w-100",children:[n.jsxRuntimeExports.jsx(Xe,{as:Ro.Title,animation:"glow",children:n.jsxRuntimeExports.jsx(Xe,{xs:6})}),n.jsxRuntimeExports.jsxs(Xe,{as:Ro.Text,animation:"glow",children:[n.jsxRuntimeExports.jsx(Xe,{xs:7})," ",n.jsxRuntimeExports.jsx(Xe,{xs:4})," ",n.jsxRuntimeExports.jsx(Xe,{xs:4})," ",n.jsxRuntimeExports.jsx(Xe,{xs:6})," ",n.jsxRuntimeExports.jsx(Xe,{xs:8})]})]}),!t&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[e.length===0&&n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",size:"sm",className:"mt-2",children:i.noMessages}),n.jsxRuntimeExports.jsx("div",{className:"h-100 overflow-y-auto d-flex flex-column gap-2 luminus-thin-scrollbar",children:p.map(u=>n.jsxRuntimeExports.jsx(Ah,{message:u,onDeleteMessage:r,onClickMessage:o,getIcon:s,getLinksTo:a},u.id))})]})]})},ar={apiGet:"/messageBoard",apiDelete:"/messageBoard/"},Bh=({renderAsNotifPanel:e,notifIcon:t,apiUrls:{apiGet:r=ar.apiGet,apiDelete:o=ar.apiDelete}=ar,getIcon:s,getLinksTo:a})=>{const l=n.useAxios(),[c,p]=d.useState([]),[u,m]=d.useState(!1),[f,x]=d.useState(!1),[g,b]=d.useState(!1),v=d.useCallback(async()=>{x(!0),await l.get(r).then(({data:E})=>{p(E),m(!0),x(!1)}).catch(()=>{p([]),x(!1)})},[r,l]),h=d.useCallback(async E=>l.delete(`${o}${E}`).then(()=>!0).catch(()=>!1),[o,l]),y=d.useCallback(E=>{h(E).then(S=>{S&&p(c.filter(D=>D.id!==E))})},[h,c]);d.useEffect(()=>{v();const E=setInterval(()=>v(),60*1e3);return()=>{clearInterval(E)}},[v]);const R=c.filter(E=>E.type==="danger").length,j=u?!1:f;return e?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsxs("div",{className:"position-relative",children:[n.jsxRuntimeExports.jsx(n.IconButton,{size:"md",onClick:()=>b(!g),children:t}),R>0&&n.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:R})]}),n.jsxRuntimeExports.jsx(No,{show:g,onHide:()=>b(!1),placement:"end",children:n.jsxRuntimeExports.jsx(No.Body,{children:n.jsxRuntimeExports.jsx(Ks,{messages:c,isLoading:j,onDeleteMessage:y,onClickMessage:()=>b(!1),getIcon:s,getLinksTo:a})})})]}):n.jsxRuntimeExports.jsx(Ks,{messages:c,isLoading:j,onDeleteMessage:y,getIcon:s,getLinksTo:a})},Mh="_tab-panel_d8l8q_1",Lh="_full-height-no-overflow_d8l8q_5",Fh="_disabled_d8l8q_12",ir={"tab-panel":"_tab-panel_d8l8q_1",tabPanel:Mh,"full-height-no-overflow":"_full-height-no-overflow_d8l8q_5",fullHeightNoOverflow:Lh,disabled:Fh},il=({eventKey:e,activeTab:t,fullHeightNoOverflow:r,disabled:o,className:s,children:a})=>e!==t?null:n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-tab-panel",ir.tabPanel,{[ir.fullHeightNoOverflow]:r},{disabled:o},{[ir.disabled]:o},s),children:a}),Vh="_join-line_1q9e8_1",$h={"join-line":"_join-line_1q9e8_1",joinLine:Vh},co=({activeTab:e,onSelect:t,children:r,vertical:o,verticalStepper:s})=>n.jsxRuntimeExports.jsx("div",{className:n.classNames("luminus-tabs d-flex mb-2",{"gap-1":!s},{"gap-0":s},{"flex-column":o||s}),children:r.map((a,i)=>{const l=a.type,c=a.props;if(!c)return null;const p=c.eventKey,u=c.children,m=c.className,f=c.onClick;return n.jsxRuntimeExports.jsxs(d.Fragment,{children:[n.jsxRuntimeExports.jsx(l,{...c,className:n.classNames({active:e===p},m),onClick:()=>{t(p),f&&f(p)},vertical:o||s,children:u}),s&&i<r.length-1&&n.jsxRuntimeExports.jsx("div",{className:n.classNames("join-line",$h.joinLine)})]},c.eventKey)})}),Gh="_tab_1tbi7_1",Wh="_disabled_1tbi7_7",Uh="_vertical_1tbi7_13",lr={tab:Gh,disabled:Wh,vertical:Uh},uo=({eventKey:e,className:t,onClick:r,disabled:o,vertical:s,children:a})=>n.jsxRuntimeExports.jsx("div",{role:"button",className:n.classNames("luminus-tab text-primary rounded",lr.tab,t,{disabled:o},{[lr.disabled]:o},{vertical:s},{[lr.vertical]:s}),onClick:()=>r&&!o&&r(e),children:typeof a=="string"?n.jsxRuntimeExports.jsx(n.Typography,{variant:s?"body":"h6",className:s?"":"text-primary",children:a}):a}),Hh=({tabs:e,activeTab:t,onSelect:r,...o})=>{var i;const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),{isMobile:a}=n.useWindowSize();return a?n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle,text:((i=e.find(l=>l.id===t))==null?void 0:i.name)??"",icon:n.jsxRuntimeExports.jsx(s,{icon:"chevron-down"})}),...o,children:e.map(l=>n.jsxRuntimeExports.jsx(n.DropdownItem,{onClick:()=>r(l.id),children:l.name},l.id))}):n.jsxRuntimeExports.jsx(co,{activeTab:t,onSelect:l=>r(l),...o,children:e.map(l=>n.jsxRuntimeExports.jsx(uo,{eventKey:l.id,children:l.name},l.id))})},zh="_selection_1dtmm_1",qh="_selectionBg_1dtmm_10",Yh="_selectionItemsContainer_1dtmm_18",Kh="_selectionItems_1dtmm_18",xn={selection:zh,selectionBg:qh,selectionItemsContainer:Yh,selectionItems:Kh},po=({icon:e,setIcon:t,IconComponent:r,IconTypeArray:o})=>{const[s,a]=d.useState(!1),i=l=>{t(l),a(!1)};return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.IconButton,{className:"rounded m-1",onClick:()=>a(!0),children:n.jsxRuntimeExports.jsx(r,{icon:e})}),s&&n.jsxRuntimeExports.jsxs("div",{className:xn.selection,children:[n.jsxRuntimeExports.jsx("div",{className:xn.selectionBg,onClick:()=>a(!1)}),n.jsxRuntimeExports.jsx("div",{className:xn.selectionItemsContainer,children:n.jsxRuntimeExports.jsx("div",{className:xn.selectionItems,children:o.filter((l,c,p)=>p.indexOf(l)===c).map(l=>n.jsxRuntimeExports.jsx(n.IconButton,{className:"rounded",onClick:()=>i(l),children:n.jsxRuntimeExports.jsx(r,{icon:l})},l))})})]})]})},mo=()=>{const e=d.useContext(n.ShortcutLinksContext);if(e===void 0)throw new Error("ShortcutLinksProvider not initilized. Probably tried to use useShortcutLinks outside ShortcutLinksProvider.");return e},Xh=({shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o})=>{const{ProjectIconComponent:s}=d.useContext(n.LuminusComponentsContext),[a,i]=d.useState(e.icon),[l,c]=d.useState(e.name);console.log(a,typeof a);const p=d.useMemo(()=>!(a===e.icon&&l===e.name),[a,l,e.icon,e.name]),u=d.useCallback(()=>{i(e.icon),c(e.name)},[e]),m=d.useCallback(()=>{o({...e,icon:a,name:l})},[o,a,l,e]);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",maxLength:20,value:l,onChange:c,className:"d-flex-grow-1",InputContainer:n.NoInputContainer})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle text-center",children:n.jsxRuntimeExports.jsx(po,{icon:a,setIcon:i,IconComponent:t,IconTypeArray:r})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle",style:{width:"7em"},children:p&&n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.IconButton,{onClick:u,color:"danger",className:"d-inline mx-2",children:n.jsxRuntimeExports.jsx(s,{icon:"cancel"})}),n.jsxRuntimeExports.jsx(n.IconButton,{onClick:m,color:"success",className:"d-inline mx-2",children:n.jsxRuntimeExports.jsx(s,{icon:"check"})})]})})]})},Qh=({shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o,deleteShortcutLink:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useCallback(()=>{s(e.id)},[s,e.id]);return n.jsxRuntimeExports.jsx("tr",{className:"mb-3",children:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:n.jsxRuntimeExports.jsx(n.IconButton,{onClick:i,color:"danger",children:n.jsxRuntimeExports.jsx(a,{icon:"delete"})})}),n.jsxRuntimeExports.jsx("td",{className:"align-middle",children:e.url.length<=23?e.url:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:e.url,children:n.jsxRuntimeExports.jsxs("span",{children:[e.url.slice(0,21),"..."]})})}),n.jsxRuntimeExports.jsx(Xh,{shortcutLink:e,IconComponent:t,IconTypeArray:r,editShortcutLink:o})]})})},Jh=({IconComponent:e,IconTypeArray:t})=>{const{texts:r}=d.useContext(n.LuminusComponentsContext),{shortcutLinks:o,editShortcutLink:s,deleteShortcutLink:a}=mo();return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:o!==null&&o.length>0?n.jsxRuntimeExports.jsxs(Ml,{title:r.shortcutLinks.shortcutLinksSetting,children:[n.jsxRuntimeExports.jsx("thead",{className:"fw-bold",children:n.jsxRuntimeExports.jsxs("tr",{children:[n.jsxRuntimeExports.jsx("th",{}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.target}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.name}),n.jsxRuntimeExports.jsx("th",{children:r.shortcutLinks.icon}),n.jsxRuntimeExports.jsx("th",{})]})}),n.jsxRuntimeExports.jsx("tbody",{children:o==null?void 0:o.map(i=>n.jsxRuntimeExports.jsx(Qh,{shortcutLink:i,IconComponent:e,IconTypeArray:t,editShortcutLink:s,deleteShortcutLink:a},i.id))})]}):n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",children:r.shortcutLinks.addLinksToEditThemHereInfo})})},Nr=5,Zh="_linkButton_pnlvi_1",eb="_linkAddButton_pnlvi_31",tb="_createLinkRow_pnlvi_39",jt={linkButton:Zh,linkAddButton:eb,createLinkRow:tb},nb=({shortcutLink:e,IconComponent:t})=>n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:e.name,placement:"bottom",children:n.jsxRuntimeExports.jsx(oe.Link,{to:e.url,className:jt.linkButton,children:n.jsxRuntimeExports.jsx(t,{icon:e.icon})})}),rb=({closeModal:e,isOpen:t,createLink:r,pageTitlePrefix:o,IconComponent:s,IconTypeArray:a})=>{const i=oe.useLocation(),{texts:l}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState("star-outline"),[u,m]=d.useState(o?document.title.replace(o,""):document.title),f=d.useCallback(async()=>{await r({icon:c,name:u,url:i.pathname+i.search}),e()},[e,r,c,i.pathname,i.search,u]),x=d.useMemo(()=>i.pathname+i.search,[i.pathname,i.search]);return n.jsxRuntimeExports.jsx(n.Modal,{show:t,onHide:e,size:"sm",children:n.jsxRuntimeExports.jsxs("div",{onKeyDown:g=>{g.code!=="Escape"&&g.stopPropagation()},children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:l.shortcutLinks.newShortcut})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.target}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold text-muted",children:x.length<=23?x:n.jsxRuntimeExports.jsx(n.SimpleTooltip,{placement:"bottom",text:x,children:n.jsxRuntimeExports.jsxs("span",{children:[x.slice(0,21),"..."]})})})]}),n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.name}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold",children:n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",maxLength:25,value:u,onChange:m,className:"w-100",InputContainer:n.RowLabelInput,withoutLabel:!0})})]}),n.jsxRuntimeExports.jsxs("div",{className:jt.createLinkRow,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",className:"pe-3 text-end",children:l.shortcutLinks.icon}),n.jsxRuntimeExports.jsx("div",{className:"d-flex align-items-middle fw-bold",children:n.jsxRuntimeExports.jsx(po,{icon:c,setIcon:p,IconComponent:s,IconTypeArray:a})})]})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:f,children:l.shortcutLinks.addShortcut})})]})})},ob=({IconComponent:e,IconTypeArray:t,pageTitlePrefix:r,createLink:o})=>{const{ProjectIconComponent:s,texts:a}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(!1),[c]=n.a(i,100);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.SimpleTooltip,{text:a.shortcutLinks.addShortcut,placement:"bottom",children:n.jsxRuntimeExports.jsx("button",{type:"button",className:n.classNames(jt.linkButton,jt.linkAddButton),onClick:()=>l(!0),children:n.jsxRuntimeExports.jsx(s,{icon:"add"})})}),(i||c)&&n.jsxRuntimeExports.jsx(rb,{IconComponent:e,IconTypeArray:t,closeModal:()=>l(!1),createLink:o,isOpen:i,pageTitlePrefix:r})]})},sb=({IconComponent:e,IconTypeArray:t,pageTitlePrefix:r})=>{const{shortcutLinks:o,createShortcutLink:s}=mo(),a=d.useMemo(()=>o!==null&&o.length<Nr,[o]);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2",children:[o==null?void 0:o.slice(0,Nr).map((i,l)=>i!==null?n.jsxRuntimeExports.jsx(nb,{shortcutLink:i,IconComponent:e},l):null),a&&n.jsxRuntimeExports.jsx(ob,{IconComponent:e,IconTypeArray:t,pageTitlePrefix:r,createLink:s})]})})},ab=e=>{const t=n.useAxios(),{startLoading:r,stopLoading:o}=d.useContext(n.LoadingContext),s=d.useCallback(async l=>{r("submit-createShortcutLink");try{await t.post(`/dynamicForms/insert?referenceId=${e}`,l)}finally{o("submit-createShortcutLink")}},[t,e,r,o]),a=d.useCallback(async l=>{r("submit-updateShortcutLink");try{await t.post(`/dynamicForms/update?referenceId=${e}`,l)}finally{o("submit-updateShortcutLink")}},[t,e,r,o]),i=d.useCallback(async l=>{r("delete-deleteShortcutLink");try{await t.delete(`/dynamicForms/delete?referenceId=${e}&pk=${l.toString()}`)}finally{o("delete-deleteShortcutLink")}},[t,e,r,o]);return{create:s,update:a,remove:i}},ib=e=>{if(e==null)throw new Error("Tried to make operation on null shortcutLinks.");return e},Xs=e=>{if(e==null)throw new Error("Tried to make operation on null shortcutLinks.");return e},lb=({children:e,referenceId:t})=>{const{user:r}=d.useContext(n.UserContext),o=d.useCallback(x=>x.map(g=>({id:g.id,icon:g.icon,name:g.name,url:g.url})),[]),{data:s,reloadData:a}=Se.useGetApiData(`/dynamicForms/lookup-data-all?referenceId=${t}&employee=${r==null?void 0:r.personalNumber}`,{silent:!0,dataTransformer:o,enabled:r!==null}),{create:i,update:l,remove:c}=ab(t),p=d.useCallback(async x=>{const g=Xs(r);if(ib(s).length>=Nr)throw new Error("Cannot add more shortcut links.");await i({...x,employee:g.personalNumber}),await a()},[i,a,s,r]),u=d.useCallback(async x=>{const g=Xs(r);await l({...x,employee:g.personalNumber}),await a()},[a,l,r]),m=d.useCallback(async x=>{await c(x),await a()},[a,c]),f=d.useMemo(()=>({shortcutLinks:s,createShortcutLink:p,editShortcutLink:u,deleteShortcutLink:m}),[p,m,u,s]);return n.jsxRuntimeExports.jsx(n.ShortcutLinksContext.Provider,{value:f,children:e})},cb=({targets:e,removeNotifTarget:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext);return n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:e&&e.sort((o,s)=>(o.employeeId??0)-(s.employeeId??0)).map(o=>n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 align-items-center justify-content-between mb-1",children:[n.jsxRuntimeExports.jsx("div",{className:"text-secondary",children:n.jsxRuntimeExports.jsx("span",{className:"d-flex gap-2 ",children:o.employeeId&&o.roleName===null?n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(r,{icon:"user"}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"subtitle",children:o.employeeName})]}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(r,{icon:"role"}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"subtitle",children:o.roleName})]})})}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"danger",onClick:()=>t(o.id),children:n.jsxRuntimeExports.jsx(r,{icon:"delete"})})]},o.id))})},ub=({show:e,onHide:t,roles:r,onAddTarget:o,EmployeePicker:s,templateId:a})=>{const{texts:{notifCentrum:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(null),[p,u]=d.useState(null),[m,f]=d.useState("R"),x=d.useCallback(()=>{c(null),u(null),t()},[t]);return n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:()=>x(),children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:i.addNewTarget})}),n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(el,{options:[{id:"E",name:i.employee},{id:"R",name:i.role}],value:m,onChange:g=>f(g),InputContainer:n.RowLabelInput}),m==="E"?n.jsxRuntimeExports.jsx(s,{InputContainer:n.RowLabelInput,label:i.employee,value:{id:(l==null?void 0:l.id)??null,name:(l==null?void 0:l.name)??""},onSelect:g=>c({id:Number(g==null?void 0:g.id)??null,name:(g==null?void 0:g.name)??""})}):n.jsxRuntimeExports.jsx(n.CustomSelectInput,{InputContainer:n.RowLabelInput,label:i.role,options:r.map(g=>({id:g,name:g})),value:p,onChange:g=>u((g==null?void 0:g.toString())??"")})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"d-flex justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{onClick:()=>{o({templateId:a??0,targetId:null,employeeId:(l==null?void 0:l.id)??null,roleName:p},(l==null?void 0:l.name)??null),x()},children:i.add})})]})},db=({templates:e,selectedTemplateId:t,setSelectedTemplateId:r,roles:o,onAddNotifTarget:s,onRemoveNotifTarget:a,EmployeePicker:i})=>{const{texts:{notifCentrum:l},ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(!1);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(n.ListGroup,{className:"overflow-auto h-max-100 p-2",children:e.map(m=>n.jsxRuntimeExports.jsxs(n.ListGroup.Item,{action:t!==m.id,className:`p-0 mb-2 border rounded shadow-sm ${t===m.id?"border-1 border-primary":""}`,onClick:()=>r(m.id),children:[n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-2 justify-content-between align-items-center border-1 border-bottom border-primary p-2",children:[n.jsxRuntimeExports.jsx("div",{className:"text-primary",children:m.destinationId===1?n.jsxRuntimeExports.jsx(c,{icon:"mail-envelope"}):n.jsxRuntimeExports.jsx(c,{icon:"dashboard"})}),n.jsxRuntimeExports.jsx(n.Typography,{className:"text-truncate text-primary",variant:"subtitle",children:m.subjectTemplate}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>u(!0),children:n.jsxRuntimeExports.jsx(c,{icon:"add"})})]}),n.jsxRuntimeExports.jsx("div",{className:"my-2 ps-3 pe-2",children:m.targets.length>0?n.jsxRuntimeExports.jsx(cb,{targets:m.targets,removeNotifTarget:a}):n.jsxRuntimeExports.jsx(n.Alert,{size:"sm",variant:"warning",children:l.noTargets})})]},m.id))}),n.jsxRuntimeExports.jsx(ub,{show:p,onHide:()=>u(!1),roles:o??[],onAddTarget:s,EmployeePicker:i,templateId:t})]})},pb=({data:e,onClick:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),s=d.useMemo(()=>e==null?void 0:e.map(l=>{var c;return{...l,recipientsString:((c=l.recipients)==null?void 0:c.map(p=>p.name).join(", "))??""}}),[e]),a=d.useMemo(()=>[{caption:o.date,fieldName:"date",type:"date"},{caption:o.recipients,fieldName:"recipientsString",type:"string"},{caption:o.subject,fieldName:"subject",type:"string",isVisible:!1},{caption:"Id",fieldName:"id",type:"number",isVisible:!1}],[o]),i=d.useCallback(l=>{t(l.id)},[t]);return n.jsxRuntimeExports.jsx(r,{columnsDef:a,data:s,useScrollableContainer:!0,onRowClick:i,bottomBarProps:{hidden:!0}})},mb=({kinds:e,reloadActions:t,reloadHistory:r,reloadRoles:o,onRemoveTarget:s,onPostTarget:a,EmployeePicker:i,BnfTableComponent:l})=>{var T,A;const{texts:{notifCentrum:c}}=d.useContext(n.LuminusComponentsContext),{confirm:p}=n.useConfirm(),[u,m]=d.useState(null),[f,x]=d.useState(null),[g,b]=Se.useLocalStorageState("notif-kind-id",null);d.useEffect(()=>{var C;e.length>0?b(((C=e.at(0))==null?void 0:C.id)??null):b(null)},[e,b]);const[v,h]=d.useState([]);d.useEffect(()=>{g&&t(g).then(C=>{h(C)}).catch(C=>{console.log(C),h([])})},[t,g]);const[y,R]=Se.useLocalStorageState("notif-action-id",((T=v==null?void 0:v.at(0))==null?void 0:T.id)??null),[j,E]=d.useState([]);d.useEffect(()=>{y===null||u===null||r(y,u).then(C=>{E(C)}).catch(C=>{console.log(C),E([])})},[t,r,y,g,u]);const[S,D]=d.useState([]);d.useEffect(()=>{y!==null&&o(y).then(C=>{D(C)}).catch(C=>{console.log(C),D([])})},[o,y]);const I=d.useMemo(()=>{var C;return!v||!y?[]:((C=v.find(O=>O.id===y))==null?void 0:C.templates)??[]},[v,y]),w=d.useCallback((C,O)=>{a(C,O).then(F=>{h(v?[...v.map(P=>P.id!==y?P:{...P,templates:[...P.templates.map(B=>B.id!==u?B:{...B,targets:[...B.targets,F]})]})]:[])}).catch(F=>console.log(F))},[v,a,y,u,h]),_=d.useCallback(async C=>{await p(c.confirmTargetDelete)&&s(C).then(()=>h(v?[...v.map(O=>O.id!==y?O:{...O,templates:[...O.templates.map(F=>F.id!==u?F:{...F,targets:F.targets.filter(P=>P.id!==C)})]})]:[]))},[v,p,c,s,y,u]);return n.jsxRuntimeExports.jsxs("div",{className:"h-100 overflow-hidden",children:[n.jsxRuntimeExports.jsxs("div",{className:"row mb-2",children:[n.jsxRuntimeExports.jsx("div",{className:"col-2",children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:c.kind,size:"sm",noEmptyOption:!0,options:(e==null?void 0:e.map(C=>({id:C.id,name:C.name})))??[],value:g??null,onChange:C=>b(Number(C)),dropdownWidth:200})}),n.jsxRuntimeExports.jsx("div",{className:"col-3",children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{label:c.subkind,size:"sm",noEmptyOption:!0,options:(v==null?void 0:v.map(C=>({id:C.id,name:C.name})))??[],value:y??null,onChange:C=>R(Number(C)),dropdownWidth:250})})]}),n.jsxRuntimeExports.jsxs("div",{className:"vh-100 overflow-hidden d-flex gap-1",children:[n.jsxRuntimeExports.jsx("div",{className:"h-75 w-25 overflow-hidden",children:n.jsxRuntimeExports.jsx(db,{templates:I,roles:S??[],onAddNotifTarget:w,onRemoveNotifTarget:_,selectedTemplateId:u,setSelectedTemplateId:C=>{m(C),x(null)},EmployeePicker:i})}),n.jsxRuntimeExports.jsx("div",{className:"w-25 h-75 overflow-hidden",children:u&&n.jsxRuntimeExports.jsx(pb,{data:j??[],onClick:C=>x((j==null?void 0:j.find(O=>O.id===C))??null),BnfTableComponent:l})}),u&&n.jsxRuntimeExports.jsx("div",{className:"h-75 w-75 overflow-hidden bg-darker",children:n.jsxRuntimeExports.jsx("iframe",{title:"notification",className:"w-100 h-100",srcDoc:(f==null?void 0:f.message)??((A=I.find(C=>C.id===u))==null?void 0:A.textTemplate)})})]})]})},fb=({history:e,onClick:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),s=d.useMemo(()=>[{caption:"notificationHistory.id",fieldName:"id",type:"number",isVisible:!1},{caption:"notificationHistory.recipientId",fieldName:"recipientId",type:"number",isVisible:!1},{caption:"notificationHistory.recipientFullName",fieldName:"recipientFullName",type:"string",isVisible:!1},{caption:"notificationHistory.actionKindId",fieldName:"actionKindId",type:"number",isVisible:!1},{caption:o.subkind,fieldName:"actionKindName",type:"string",filterType:"select"},{caption:"notificationHistory.actionId",fieldName:"actionId",type:"number",isVisible:!1},{caption:o.subkind,fieldName:"actionName",type:"string",filterType:"select"},{caption:o.date,fieldName:"date",type:"string"},{caption:o.subject,fieldName:"subject",type:"string"},{caption:"notificationHistory.message",fieldName:"message",type:"string",isVisible:!1}],[o]),a=d.useCallback(i=>{t(i.id)},[t]);return n.jsxRuntimeExports.jsx(r,{columnsDef:s,data:e,useScrollableContainer:!0,paginationMode:"enabled",bottomBarProps:{hideFullScreen:!0},onRowClick:a})},xb=({reloadUserHistory:e,EmployeePicker:t,BnfTableComponent:r})=>{const{texts:{notifCentrum:o}}=d.useContext(n.LuminusComponentsContext),[s,a]=d.useState(null),[i,l]=Se.useLocalStorageState("notif-user",null),[c,p]=d.useState([]);return d.useEffect(()=>{i!==null&&e(i.id).then(u=>{p(u)}).catch(u=>{console.log(u),p([])})},[i,e]),n.jsxRuntimeExports.jsxs("div",{className:"h-100 overflow-hidden d-flex flex-column gap-1",children:[n.jsxRuntimeExports.jsx("div",{className:"row",children:n.jsxRuntimeExports.jsx("div",{className:"col-3",children:n.jsxRuntimeExports.jsx(t,{label:o.employee,value:i,size:"sm",onSelect:u=>l(u?{id:Number(u.id),name:u.name}:null)})})}),n.jsxRuntimeExports.jsxs("div",{className:"vh-100 overflow hidden row",children:[n.jsxRuntimeExports.jsx("div",{className:"col-5 h-75 overflow-hidden",children:n.jsxRuntimeExports.jsx(fb,{history:c??[],onClick:u=>a((c==null?void 0:c.find(m=>m.id===u))??null),BnfTableComponent:r})}),s&&n.jsxRuntimeExports.jsx("div",{className:"col bg-darker h-75",children:n.jsxRuntimeExports.jsx("iframe",{title:"notification",className:"w-100 h-100",srcDoc:s==null?void 0:s.message})})]})]})},ll=({result:e,onClose:t,tableIdentifier:r,BnfTableComponent:o})=>{var l,c,p,u,m;const{texts:{imports:s},ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useMemo(()=>[{fieldName:"row",caption:s.row,type:"number",width:100},{fieldName:"column",caption:s.column,type:"number",width:100},{fieldName:"error",caption:s.error,type:"string",width:500}],[s.row,s.column,s.error]);return e?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:n.jsxRuntimeExports.jsx(n.Alert,{variant:e.success?"success":"danger",size:"sm",className:"mb-2 p-2",children:n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-3 align-items-start",children:[n.jsxRuntimeExports.jsxs("div",{className:"w-100",children:[n.jsxRuntimeExports.jsx("div",{className:"w-100 text-center",children:e.success?s.importSuccess:s.importFailed}),e.success&&((l=e.data)!=null&&l.added||(c=e.data)!=null&&c.updated||(p=e.data)!=null&&p.deleted)?n.jsxRuntimeExports.jsx("div",{className:"d-flex justify-content-center mt-2",children:n.jsxRuntimeExports.jsxs("div",{className:"list-group",children:[e.data.added?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importAdded(e.data.added)," "]})}):null,e.data.updated?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importUpdated(e.data.updated)," "]})}):null,e.data.deleted?n.jsxRuntimeExports.jsx("div",{className:"list-group-item p-1 px-3",children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body2",className:"d-flex gap-2 align-items-center",children:[s.importDeleted(e.data.deleted)," "]})}):null]})}):null,!e.success&&((m=(u=e.data)==null?void 0:u.errors)==null?void 0:m.length)>0?n.jsxRuntimeExports.jsx("div",{className:"mt-3",children:n.jsxRuntimeExports.jsx(o,{columnsDef:i,data:e.data.errors,useScrollableContainer:!0,tableId:r})}):null]}),t!==void 0?n.jsxRuntimeExports.jsx(n.IconButton,{color:e.success?"success":"danger",className:n.classNames("hover-darken",e.success?"bg-success-subtle":"bg-danger-subtle"),onClick:t,children:n.jsxRuntimeExports.jsx(a,{icon:"close"})}):null]})})}):null},gb="_upload-box_9ka79_1",vb="_browse-btn_9ka79_15",cr={"upload-box":"_upload-box_9ka79_1",uploadBox:gb,"browse-btn":"_browse-btn_9ka79_15",browseBtn:vb},cl=({file:e,onFileChange:t,onImport:r,children:o,multiple:s,accept:a})=>{const{ProjectIconComponent:i,texts:{imports:l}}=d.useContext(n.LuminusComponentsContext),c=d.useCallback(async u=>{u.length>0&&t(s===!0?[...u]:u[0])},[e,s,t]),p=d.useCallback(u=>{var f;u.preventDefault();const m=(f=u.dataTransfer)==null?void 0:f.files;m&&(m==null?void 0:m.length)>0&&c(m)},[c]);return n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[e!==null?n.jsxRuntimeExports.jsxs("div",{className:"d-flex border rounded p-1 ps-2 bg-white justify-content-between align-items-center mb-2",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:s?e.map(u=>u.name).join(", "):e.name}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[o??null,n.jsxRuntimeExports.jsx(n.PrimaryButton,{className:"text-nowrap",size:"sm",disabled:e===null,onClick:r,children:l.start})]})]}):null,n.jsxRuntimeExports.jsxs("div",{className:n.classNames(cr.uploadBox,{[cr.active]:e!==null}),onDrop:p,onDragOver:u=>u.preventDefault(),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:l.dropHint}),n.jsxRuntimeExports.jsx("input",{type:"file",hidden:!0,id:"browse",onChange:u=>{var m;return((m=u.target)==null?void 0:m.files)&&c(u.target.files)},multiple:s,accept:a}),n.jsxRuntimeExports.jsx("label",{htmlFor:"browse",className:cr.browseBtn,children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",className:"d-flex gap-2 align-items-center",children:[n.jsxRuntimeExports.jsx(i,{icon:"file-upload"}),l.pickFileHint]})})]})]})},hb=({otherSettingId:e,languageOptions:t,tableIdentifier:r,SettingsOutlet:o,BnfTableComponent:s,importLocalization:a})=>{const{texts:{localizations:i}}=d.useContext(n.LuminusComponentsContext),[l,c]=d.useState(t[0].id),[p,u]=d.useState(null),[m,f]=d.useState(null),x=d.useCallback(async()=>{if(p===null)return;const g=await a({file:p,lang:l});g.status==="success"&&f(g.data)},[a,l,p]);return n.jsxRuntimeExports.jsx(o,{itemId:e,title:i.localizationImport,children:m?n.jsxRuntimeExports.jsx(ll,{result:m,onClose:()=>f(null),BnfTableComponent:s,tableIdentifier:r}):n.jsxRuntimeExports.jsx(cl,{file:p,onFileChange:u,onImport:x,children:n.jsxRuntimeExports.jsx("div",{style:{minWidth:140},children:n.jsxRuntimeExports.jsx(n.CustomSelectInput,{value:l,onChange:g=>typeof g=="string"?c(g):null,options:t,label:i.importedLanguage})})})})},bb=(e,t)=>{const r=t.split(".");let o=e;for(let s=0;s<r.length;s++){const a=r[s],i=o[a];if(typeof i=="string")return i;if(i===void 0)return;o=i}},jb=({selLng:e,lngsData:t,localizationKey:r,reloadData:o,saveChanges:s})=>{const{ProjectIconComponent:a}=d.useContext(n.LuminusComponentsContext),i=d.useMemo(()=>{const m=t.get(e);if(m===void 0)return"";const f=bb(m,r);return m!==void 0&&f!==void 0?f:""},[t,r,e]),[l,c]=d.useState(i),p=d.useCallback(async()=>{await s([{fileName:e+".json",items:[{key:r,value:l}]}]),await o()},[r,o,s,e,l]),u=d.useMemo(()=>l!==i,[i,l]);return n.jsxRuntimeExports.jsxs("div",{className:"d-flex",children:[n.jsxRuntimeExports.jsx(n.TextInput,{label:e+r,type:"text",value:l,onChange:m=>{c(typeof m!="string"?"":m)},InputContainer:n.RowLabelInput,withoutLabel:!0,className:"flex-grow-1"}),u?n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{color:"danger",onClick:()=>c(i),children:n.jsxRuntimeExports.jsx(a,{icon:"cancel"})}),n.jsxRuntimeExports.jsx(n.IconButton,{onClick:p,children:n.jsxRuntimeExports.jsx(a,{icon:"check"})})]}):null]})},Eb="_keysTable_1j6ns_1",yb="_subgrid_1j6ns_14",Rb="_lngSelectRow_1j6ns_19",Cb="_tableItem_1j6ns_26",Nb="_tableFooter_1j6ns_29",wb="_tableFullWidth_1j6ns_35",Sb="_tableBody_1j6ns_39",Db="_lngSelect_1j6ns_19",Ib="_addLng_1j6ns_52",_b="_fileSelect_1j6ns_57",Ob="_searchBox_1j6ns_61",Ne={keysTable:Eb,subgrid:yb,lngSelectRow:Rb,tableItem:Cb,tableFooter:Nb,tableFullWidth:wb,tableBody:Sb,lngSelect:Db,addLng:Ib,fileSelect:_b,searchBox:Ob},gn=50,Tb=(e,t)=>{const r=t.split(".");let o=e;for(let s=0;s<r.length;s++){const a=r[s],i=o[a];if(typeof i=="string")return i;if(i===void 0)return;o=i}},kb=({languageOptions:e,envMode:t,getOtherSettingsUrl:r,downloadXls:o,saveChanges:s,localizationFilesOptions:a,remoteLocalesRoot:i})=>{const{texts:{localizations:l},ProjectIconComponent:c}=d.useContext(n.LuminusComponentsContext),[p,u]=d.useState(1),[m,f]=d.useState(new Map),[x,g]=d.useState(null),[b,v]=d.useState(""),[h,y]=d.useState(new Set),R=d.useCallback(C=>{f(new Map),y(C)},[]),j=d.useMemo(()=>e.filter(C=>!h.has(C.id)),[h,e]),E=d.useMemo(()=>{if(m.size===0)return[];const C=new Set,O=(L,$="")=>{if(typeof L[1]=="object"){Object.entries(L[1]).forEach(U=>O(U,$+L[0]+"."));return}C.add($+L[0])};Array.from(m).forEach(L=>{Object.entries(L[1]).forEach($=>O($))});const F=Array.from(C),P=a.find(L=>L.path===x);return((P==null?void 0:P.type)==="report"?F.filter(L=>{const $=L.split(".");return $[$.length-1]==="caption"}):F).map(L=>({key:L,lngData:new Map(Array.from(h).map($=>{const U=m.get($);return[$,(U===void 0?void 0:Tb(U,L))??""]}))}))},[m,a,x,h]),S=d.useMemo(()=>E.filter(C=>n.stringSearchWithin(C.key,b)||Array.from(C.lngData).some(O=>typeof(O==null?void 0:O[1])!="string"?!1:n.stringSearchWithin((O==null?void 0:O[1])??"",b))),[b,E]),D=d.useMemo(()=>Math.ceil(S.length/gn),[S.length]),I=d.useCallback(C=>{C!==null&&u(()=>Math.max(1,Math.min(C,D)))},[D]),w=d.useCallback(async()=>{if(x===null)return;const C=Array.from(h).map(F=>(async()=>{const P=await n.axios.get(`${i}${x==null?void 0:x.replace("{{lng}}",F)}&v=${new Date().getTime()}`,{responseType:"json"});return[F,P.data]})()),O=await Promise.allSettled(C);f(new Map(O.map(F=>F.status==="fulfilled"?F.value:["",{}])))},[i,x,h]),_=d.useCallback(async()=>{w()},[w]),T=d.useMemo(()=>j.length>0,[j.length]),A=d.useMemo(()=>h.size+1+(T?1:0),[T,h.size]);return d.useEffect(()=>{I(p)},[I,p,S]),d.useEffect(()=>{w()},[w]),i===void 0?n.jsxRuntimeExports.jsx(n.PageContainer,{children:n.jsxRuntimeExports.jsxs(n.Alert,{variant:"danger",className:"fw-bold",children:[l.cantRunLocalizationSettings,n.jsxRuntimeExports.jsx("br",{}),n.jsxRuntimeExports.jsx("br",{}),l.envNotConnectedToRemote(t.toUpperCase())]})}):n.jsxRuntimeExports.jsx(n.PageContainer,{title:n.jsxRuntimeExports.jsx("div",{className:"d-flex gap-4",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"h3",children:l.localizationSettings})}),helmet:l.localizationSettings,variant:"fullScreen",children:n.jsxRuntimeExports.jsxs("div",{className:Ne.keysTable,style:{"--keys-table-columns":A,"--adding-column":T?1:0},children:[n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.tableFullWidth,"d-flex align-items-center justify-content-between gap-2 px-2 mt-1"),children:[n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:a.map(C=>({id:C.path,name:C.nameTranslationKey})),value:x,onChange:C=>typeof C!="number"?g(C):null,size:"sm",label:l.localizationFile,className:Ne.fileSelect,noSortOptions:!0}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.searchBox,"d-flex align-items-center gap-2 border rounded"),children:[n.jsxRuntimeExports.jsx(c,{icon:"search",className:"text-muted",size:18,iconProps:{className:"mt- me-n4"}}),n.jsxRuntimeExports.jsx(n.TextInput,{type:"text",value:b,onChange:C=>v(typeof C=="string"?C:""),size:"sm",showClearIcon:b!=="",withoutLabel:!0,placeholder:"vyhledávat...",className:"placeholder-muted bg-transparent border-0 my-0 py-0 w-100"})]}),n.jsxRuntimeExports.jsxs(n.ResponsiveContextDropdown,{children:[n.jsxRuntimeExports.jsx(n.ResponsiveContextDropdownItem,{cKey:"export",hideOn:"always",onClick:o,icon:n.jsxRuntimeExports.jsx(n.FileExtensionIcon,{fileExtension:"xls"}),children:l.xlsExport}),n.jsxRuntimeExports.jsx(n.ResponsiveContextDropdownItem,{cKey:"import",hideOn:"always",to:r("localizationImport"),icon:n.jsxRuntimeExports.jsx(c,{icon:"link"}),children:l.import})]})]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.lngSelectRow),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:l.key}),Array.from(h).map((C,O)=>n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:e.filter(F=>F.id===C||!h.has(F.id)),value:C,onChange:F=>R(P=>F===null?(P.delete(C),new Set(P)):(typeof F=="string"&&(P.delete(C),P.add(F)),new Set(P))),size:"sm",label:`${l.language} ${O+1}`,withoutLabel:!0,InputContainer:n.RowLabelInput,className:n.classNames(Ne.lngSelect)},C)),T?n.jsxRuntimeExports.jsx(n.CustomSelectInput,{options:j,value:null,onChange:C=>R(O=>(typeof C=="string"&&O.add(C),new Set(O))),size:"sm",label:l.addLanguage,InputContainer:n.RowLabelInput,className:n.classNames(Ne.lngSelect,Ne.addLng)}):null]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.tableBody),children:[E.length===0||S.length===0?n.jsxRuntimeExports.jsx(n.Alert,{variant:"warning",className:n.classNames(Ne.tableFullWidth,Ne.emptyTableAlert,"my-n1"),children:E.length===0?l.noDataLoaded:S.length===0?l.noDataFiltered:null}):null,S.slice(gn*(p-1),gn*p).map(C=>n.jsxRuntimeExports.jsxs("div",{className:n.classNames(Ne.subgrid,Ne.tableItem),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"form-label",children:C.key}),Array.from(h).map(O=>n.jsxRuntimeExports.jsx(jb,{localizationKey:C.key,lngsData:m,selLng:O,reloadData:_,saveChanges:s},O))]},C.key))]}),n.jsxRuntimeExports.jsxs("div",{className:n.classNames("d-flex align-items-center justify-content-around gap-3 px-2 py-0",Ne.tableFooter),children:[n.jsxRuntimeExports.jsx("div",{children:n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[l.keyCount,":"," ",n.jsxRuntimeExports.jsx("span",{className:"fw-bold",children:S.length})]})}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex gap-1 align-items-center",children:[n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:[l.page,": "]}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-1",children:[n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>I(p-1),children:n.jsxRuntimeExports.jsx(c,{icon:"minus"})}),n.jsxRuntimeExports.jsx("div",{style:{width:30},children:n.jsxRuntimeExports.jsx(Zi,{value:p,onChange:I,InputContainer:n.RowLabelInput,withoutLabel:!0,size:"sm"})}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"body",children:["/",Math.ceil(S.length/gn)]}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",onClick:()=>I(p+1),children:n.jsxRuntimeExports.jsx(c,{icon:"plus"})})]})]})]})]})})},Qs=3,ul=(e,t,r)=>{var s;if((t==null?void 0:t.customPathBuilder)!==void 0)return t.customPathBuilder(e,t);const o=(s=r.find(a=>a.key===e.type))==null?void 0:s.toPath;return o?`${o}/${e.searchKey}`:"/not-found"},dl=(e,t)=>{var r;return((r=t==null?void 0:t.customNameBuilder)==null?void 0:r.call(t,e))??e.name},pl=(e,t,r,o,s)=>{const a=n.useAxios(),[i,l]=d.useState(!1),[c,p]=d.useState([]),u=e==="",m=d.useCallback(()=>{p([]),!(t.length<Qs)&&(l(!0),a.get(ze.generateApiPath(r,{path:{query:t},query:{type:u?void 0:e,count:o?void 0:u?5:20}})).then(({data:g})=>{p(g),l(!1)}).catch(()=>{l(!1)}))},[a,o,u,t,r,e]),f=d.useMemo(()=>{if(s===void 0)return[];if(t.length<Qs&&e!=="XAP")return[];const g=[];return s.forEach(b=>{const v=b.items.filter(h=>n.stringSearchWithin(h.name,decodeURIComponent(t)));v.length>0&&g.push({key:{...b.key,totalCount:v.length},items:v})}),g},[t,s,e]),x=d.useMemo(()=>f.concat(c),[c,f]);return d.useEffect(()=>{m()},[m]),{isLoading:i,searchItems:x}},Pb="_input-group_1hcpm_1",Ab="_input-group-text_1hcpm_5",Bb="_left_1hcpm_9",Mb="_right_1hcpm_13",Lb="_input_1hcpm_1",Fb="_submit-button_1hcpm_20",it={"input-group":"_input-group_1hcpm_1",inputGroup:Pb,"input-group-text":"_input-group-text_1hcpm_5",inputGroupText:Ab,left:Bb,right:Mb,input:Lb,"submit-button":"_submit-button_1hcpm_20",submitButton:Fb},Vb=({searchTypes:e,selectedType:t,setSelectedType:r})=>n.jsxRuntimeExports.jsx(n.Dropdown,{toggle:n.jsxRuntimeExports.jsx(n.DropdownToggle,{as:n.SimpleDropdownToggle,icon:null,text:t==null?void 0:t.text}),children:e.map(o=>n.jsxRuntimeExports.jsx(n.DropdownItem,{icon:null,onClick:()=>r(o.key),children:o.text},o.key))}),$b="_dropdown_1ddrg_1",Gb="_open_1ddrg_12",Wb="_loading-container_1ddrg_15",Ub="_groups-container_1ddrg_22",Hb="_group_1ddrg_22",zb="_header_1ddrg_26",qb="_item_1ddrg_33",ut={dropdown:$b,open:Gb,"loading-container":"_loading-container_1ddrg_15",loadingContainer:Wb,"groups-container":"_groups-container_1ddrg_22",groupsContainer:Ub,group:Hb,header:zb,item:qb},Yb=({item:e,searchTypes:t,onCancel:r})=>{const o=d.useMemo(()=>t.find(i=>i.key===e.type),[e.type,t]),s=d.useMemo(()=>ul(e,o,t),[e,o,t]),a=d.useMemo(()=>dl(e,o),[e,o]);return n.jsxRuntimeExports.jsxs(oe.Link,{to:s,className:n.classNames("search-item d-flex gap-3 align-items-center justify-content-between",ut.item),onClick:r,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-nowrap text-truncate",children:a}),n.jsxRuntimeExports.jsx(n.Typography,{variant:"caption",className:"text-primary",children:n.jsxRuntimeExports.jsx(n.MdOutlineArrowOutward,{})})]})},Kb=({show:e,query:t,onCancel:r,groups:o,isLoading:s,searchTypes:a})=>{const{texts:{appSearch:i}}=d.useContext(n.LuminusComponentsContext),l=d.useRef(null);return n.useClickOutside([l],r),n.jsxRuntimeExports.jsx("div",{ref:l,className:n.classNames("luminus-app-search-dropdown shadow rounded",ut.dropdown,{[ut.open]:e}),children:s?n.jsxRuntimeExports.jsx("div",{className:ut.loadingContainer,children:n.jsxRuntimeExports.jsx(n.Spinner,{animation:"border",variant:"primary"})}):n.jsxRuntimeExports.jsx("div",{className:ut.groupsContainer,children:o==null?void 0:o.map(c=>{var p;return n.jsxRuntimeExports.jsxs("div",{className:n.classNames(ut.group),children:[n.jsxRuntimeExports.jsxs(oe.Link,{to:`/search?query=${t}&type=${c.key.category}`,className:n.classNames("group-header",ut.header),onClick:r,children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",className:"text-primary",children:c.key.categoryName}),n.jsxRuntimeExports.jsxs(n.Typography,{variant:"caption",children:[c.items.length," ",i.amountFrom," ",c.key.totalCount]})]}),(p=c.items)==null?void 0:p.map((u,m)=>n.jsxRuntimeExports.jsx(Yb,{item:u,onCancel:r,searchTypes:a},m))]},c.key.category)})})})},Xb=({searchTypes:e,navigateFunction:t,currentPath:r,homePath:o="/",className:s,staticAppItems:a,searchEndpointUri:i})=>{var j;const{texts:{appSearch:l}}=d.useContext(n.LuminusComponentsContext),[c,p]=d.useState(e.length>0?((j=e.at(0))==null?void 0:j.key)??null:null),u=d.useMemo(()=>e.find(E=>E.key===c)??null,[e,c]),[m,f]=d.useState(""),[x,g]=n.a(encodeURIComponent(m),500),{isLoading:b,searchItems:v}=pl(c,x,i,!1,a),[h,y]=d.useState(!1);d.useEffect(()=>{(v.length>0||b)&&y(!0)},[v,b]);const R=d.useRef(null);return d.useEffect(()=>{var E;f(""),r===o&&((E=R.current)==null||E.focus())},[r,o]),n.jsxRuntimeExports.jsx(n.Form,{className:"w-100 d-flex align-items-center justify-content-center",onSubmit:E=>{E.preventDefault(),E.stopPropagation(),g.flush(),y(!1),x.length>2&&t(`/search?query=${x}${u&&u.key&&`&type=${u==null?void 0:u.key}`}`)},children:n.jsxRuntimeExports.jsxs(hn,{className:n.classNames(it.inputGroup,s),children:[n.jsxRuntimeExports.jsx(hn.Text,{className:n.classNames("p-1 rounded",it.inputGroupText,it.left),children:n.jsxRuntimeExports.jsx(Vb,{searchTypes:e,selectedType:u,setSelectedType:p})}),n.jsxRuntimeExports.jsx(n.Form.Control,{ref:R,placeholder:l.searchPlaceholder,type:"text",size:"sm",className:n.classNames("luminus-app-search-input",it.input),value:m,onChange:E=>{var S;return f(((S=E.target)==null?void 0:S.value)??"")},onFocus:()=>v.length>0&&y(!0)}),n.jsxRuntimeExports.jsx(hn.Text,{className:n.classNames("p-0 rounded",it.inputGroupText,it.right),children:n.jsxRuntimeExports.jsx("button",{type:"submit",className:n.classNames("text-primary",it.submitButton),children:n.jsxRuntimeExports.jsx(n.FaSearch,{})})}),n.jsxRuntimeExports.jsx(Kb,{query:x,searchTypes:e,show:h,onCancel:()=>y(!1),groups:v,isLoading:b})]})})},Qb=({item:e,searchTypes:t})=>{const{ProjectIconComponent:r}=d.useContext(n.LuminusComponentsContext),o=d.useMemo(()=>t.find(i=>i.key===e.type),[e.type,t]),s=d.useMemo(()=>ul(e,o,t),[e,o,t]),a=d.useMemo(()=>dl(e,o),[e,o]);return n.jsxRuntimeExports.jsxs(oe.Link,{to:s,className:"text-nowrap list-group-item list-group-item-action d-flex justify-content-between align-items-center",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:a}),n.jsxRuntimeExports.jsx(r,{icon:"chevron-right",className:"text-primary"})]})},Jb=({query:e,type:t,appSearchTypes:r,searchEndpointUri:o,staticAppItems:s})=>{var u,m;const{texts:{appSearch:a}}=d.useContext(n.LuminusComponentsContext),[i,l]=d.useState(""),{searchItems:c,isLoading:p}=pl(t,e,o,!0,s);return d.useEffect(()=>{var f;i||c===null||c.length===0||l(((f=c[0].key)==null?void 0:f.category)??"")},[c,i]),c===null?null:n.jsxRuntimeExports.jsx(n.PageContainer,{variant:"fullScreen",children:p?n.jsxRuntimeExports.jsx(we.Loading,{}):c.length===0?n.jsxRuntimeExports.jsx("div",{className:"alert alert-warning",children:n.jsxRuntimeExports.jsx(n.Typography,{variant:"body",children:a.noResultsFor(e)})}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(co,{activeTab:i,onSelect:f=>l((f==null?void 0:f.toString())??""),children:c.map(f=>{var x,g;return n.jsxRuntimeExports.jsx(uo,{eventKey:((x=f.key)==null?void 0:x.category)??"",children:((g=f.key)==null?void 0:g.categoryName)??""},f.key.category)})}),n.jsxRuntimeExports.jsx(il,{eventKey:i,activeTab:i,fullHeightNoOverflow:!0,children:n.jsxRuntimeExports.jsx("div",{className:"list-group h-100 overflow-auto",children:(m=(u=c.find(f=>f.key.category===i))==null?void 0:u.items)==null?void 0:m.map((f,x)=>n.jsxRuntimeExports.jsx(Qb,{item:f,searchTypes:r},x))})})]})})},Zb=()=>{const{texts:{userSettings:e}}=d.useContext(n.LuminusComponentsContext),[t,r]=Se.useLocalStorageState("file-download-try-opening",!0);return n.jsxRuntimeExports.jsx(pt,{title:e.downloads,defaultOpen:!0,children:n.jsxRuntimeExports.jsx("div",{className:"p-2 bg-white rounded",children:n.jsxRuntimeExports.jsx(Qt,{type:"switch",value:t===void 0?!0:t,onChange:r,label:e.tryOpenFileLabel})})})},ej=({show:e,handleClose:t,onConfirm:r,apiCreateBackup:o})=>{const{texts:{userSettings:s}}=d.useContext(n.LuminusComponentsContext),{zStringRequired:a}=n.useZodSchemaTypes(),{addNotification:i}=n.useNotifications(),l=n.useAxios(),{startLoading:c,stopLoading:p}=d.useContext(n.LoadingContext),[u,m]=d.useState(null),f=n.z.object({name:a()}),x=De.useForm({resolver:n.t(f)}),g=d.useCallback(async(v,h)=>(c("localStorageSettingPost"),l.post(o,{name:v,setting:h}).then(()=>!0).catch(()=>!1).finally(()=>p("localStorageSettingPost"))),[l,o,c,p]),b=async v=>{await g(v.name,JSON.stringify(u))&&(i(s.localStorageCreateBackupSuccess,"success"),r())};return d.useEffect(()=>{e&&m(ze.dumpLocalStorage())},[e]),n.jsxRuntimeExports.jsxs(n.Modal,{show:e,onHide:()=>t(),children:[n.jsxRuntimeExports.jsx(n.Modal.Header,{closeButton:!0,children:n.jsxRuntimeExports.jsx(n.Modal.Title,{children:s.localStorageCreateBackup})}),n.jsxRuntimeExports.jsx(De.FormProvider,{...x,children:n.jsxRuntimeExports.jsxs(n.Form,{onSubmit:x.handleSubmit(b),noValidate:!0,children:[n.jsxRuntimeExports.jsxs(n.Modal.Body,{children:[n.jsxRuntimeExports.jsx(n.Alert,{variant:"info",size:"sm",children:s.localStorageCreateBackupInfo(Object.keys(u||{}).length)}),n.jsxRuntimeExports.jsx(n.HookFormTextInput,{required:!0,label:s.localStorageCreateBackupName,formField:"name",type:"text"})]}),n.jsxRuntimeExports.jsx(n.Modal.Footer,{className:"justify-content-end",children:n.jsxRuntimeExports.jsx(n.PrimaryButton,{type:"submit",children:s.localStorageCreateBackupSave})})]})})]})},vn={apiGetBackups:"/localStorageSettings",apiCreateBackup:"/localStorageSettings",apiDeleteBackup:"/localStorageSettings"},tj=({apiUrls:{apiGetBackups:e=vn.apiGetBackups,apiCreateBackup:t=vn.apiCreateBackup,apiDeleteBackup:r=vn.apiDeleteBackup}=vn})=>{const{ProjectIconComponent:o,texts:{userSettings:s}}=d.useContext(n.LuminusComponentsContext),{confirm:a}=n.useConfirm(),i=n.useAxios(),{startLoading:l,stopLoading:c}=d.useContext(n.LoadingContext),{addNotification:p}=n.useNotifications(),[u,m]=d.useState(!1),{data:f,setData:x,reloadData:g}=Se.useGetApiData(e),b=d.useCallback(async y=>(l("localStorageSettingDelete"),i.delete(`${r}/${y}`).then(()=>!0).catch(()=>!1).finally(()=>c("localStorageSettingDelete"))),[i,r,l,c]),v=d.useCallback(async y=>{await a(s.localStorageDeleteBackupConfirm)&&await b(y)&&(p(s.localStorageDeleteBackupSuccess,"success"),x(R=>(R==null?void 0:R.filter(j=>j.id!==y))??null))},[a,s,b,p,x]),h=d.useCallback(async y=>{y.setting&&await a(s.localStorageLoadBackup)&&(ze.restoreLocalStorage(y.setting)?p(s.localStorageLoadBackupSuccess,"success"):p(s.localStorageLoadBackupError,"danger"))},[a,s,p]);return n.jsxRuntimeExports.jsxs(pt,{title:s.localStorage,defaultOpen:!0,children:[f&&f.length>0?n.jsxRuntimeExports.jsx("div",{className:"list-group",children:f.map((y,R)=>n.jsxRuntimeExports.jsxs("div",{role:"button",className:"list-group-item list-group-item-action d-flex justify-content-between align-items-center",onClick:()=>h(y),children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",children:y.name}),n.jsxRuntimeExports.jsxs("div",{className:"d-flex align-items-center gap-3",children:[n.jsxRuntimeExports.jsx(n.Typography,{variant:"body2",className:"text-muted",children:y.date?n.formatDate(y.date):""}),n.jsxRuntimeExports.jsx(n.IconButton,{size:"sm",color:"danger",onClick:j=>{j.stopPropagation(),v(y.id)},children:n.jsxRuntimeExports.jsx(o,{icon:"delete"})})]})]},R))}):f?n.jsxRuntimeExports.jsx(n.Alert,{variant:"secondary",size:"sm",children:s.localStorageNoBackups}):null,n.jsxRuntimeExports.jsx(n.PrimaryButton,{className:"mt-3",size:"sm",onClick:()=>m(!0),children:s.localStorageCreateBackup}),n.jsxRuntimeExports.jsx(ej,{show:u,handleClose:()=>m(!1),onConfirm:()=>{m(!1),g()},apiCreateBackup:t})]})};exports.Alert=n.Alert;exports.AvatarIcon=n.AvatarIcon;exports.Backdrop=n.Backdrop;exports.ContextButton=n.ContextButton;exports.Documents=n.Documents;exports.Dropdown=n.Dropdown;exports.DropdownDivider=n.DropdownDivider;exports.DropdownItem=n.DropdownItem;exports.DropdownToggle=n.DropdownToggle;exports.FileExtensionIcon=n.FileExtensionIcon;exports.FileUploadContextButton=n.FileUploadContextButton;exports.FloatingLabelInput=n.FloatingLabelInput;exports.HookFormTextAreaInput=n.HookFormTextAreaInput;exports.HookFormTextInput=n.HookFormTextInput;exports.HtmlTooltip=n.HtmlTooltip;exports.IconButton=n.IconButton;exports.InvalidFeedback=n.InvalidFeedback;exports.NoInputContainer=n.NoInputContainer;exports.PrimaryButton=n.PrimaryButton;exports.ResponsiveContextDropdown=n.ResponsiveContextDropdown;exports.ResponsiveContextDropdownItem=n.ResponsiveContextDropdownItem;exports.RowLabelInput=n.RowLabelInput;exports.SelectInput=n.CustomSelectInput;exports.SimplePicker=n.SimplePicker;exports.SimpleToggle=n.SimpleDropdownToggle;exports.SimpleTooltip=n.SimpleTooltip;exports.TextInput=n.TextInput;exports.Typography=n.Typography;exports.UserAvatarToggle=n.UserAvatarToggle;exports.Loading=we.Loading;exports.AlertItem=Vi;exports.ApiFileDownloadButton=vl;exports.AppSearch=Xb;exports.Approval=sh;exports.AuthTemplate=qx;exports.Badge=jc;exports.BarChart=Gv;exports.Card=Gt;exports.CheckInput=Qt;exports.Collapse=pt;exports.ColumnResizer=rl;exports.ContactButtonQrModal=Wi;exports.ContactInput=jg;exports.ContactsLink=Ui;exports.DisabledRowLabelLink=Bv;exports.DropdownPicker=Eg;exports.DynamicForm=kv;exports.EmployeeSmallPhoto=Fv;exports.ErrorBoundary=ya;exports.FileDownloadUS=Zb;exports.FileUploadButton=Ll;exports.FileUploadDropdownItem=Rc;exports.Flexmonster=al;exports.FloatingActionContainer=$i;exports.FloatingFormSubmit=ba;exports.FromToDatePicker=Zg;exports.HomeDashboard=fc;exports.HookFormCheckInput=xh;exports.HookFormContactInput=vh;exports.HookFormDropdownPicker=hh;exports.HookFormFileInput=bh;exports.HookFormFloatingSubmit=sl;exports.HookFormNumericStepperInput=jh;exports.HookFormNumericTextInput=Eh;exports.HookFormRadioInput=gh;exports.HookFormSelectInput=Cr;exports.HrWithText=ol;exports.IconPicker=po;exports.ImgApi=Rr;exports.ImgBlob=dg;exports.ImgDirect=so;exports.ImportFilePicker=cl;exports.ImportResult=ll;exports.LanguageSwitch=Mv;exports.LineChart=ov;exports.LoadingBlock=Js;exports.LocalStorageBackupUS=tj;exports.LocalizationImport=hb;exports.LocalizationSettings=kb;exports.MessageBoard=Bh;exports.MiniDetailTooltip=nh;exports.MiniDetailValueItem=rh;exports.MonthPicker=ja;exports.MonthPickerSearchParams=ev;exports.NotificationActions=mb;exports.NotificationUsers=xb;exports.NumericFormat=$v;exports.NumericStepperInput=Rg;exports.NumericTextInput=Zi;exports.PermissionSubstituteDetail=Rh;exports.PermissionSubstituteTable=fh;exports.PhotoLibrary=Fi;exports.PhotoLightbox=Li;exports.PieChart=nv;exports.RadioInput=el;exports.ReportPage=Oh;exports.ReportsIndexPage=Jv;exports.ResponsiveTabs=Hh;exports.RouteLink=oh;exports.SearchBox=Vv;exports.SearchPage=Jb;exports.SettingsFormPicker=Av;exports.ShortcutLinks=sb;exports.ShortcutLinksProvider=lb;exports.ShortcutLinksSetup=Jh;exports.StateToggle=mh;exports.Tab=uo;exports.TabPanel=il;exports.Tabs=co;exports.TextAreaInput=yg;exports.Timeline=Gi;exports.TypedFormGroup=Lv;exports.UserAvatarValueFormat=Th;exports.VersionInfo=eg;exports.WidgetCard=mr;exports.YearPicker=Ea;exports.YearPickerSearchParams=tv;exports.useShortcutLinksContext=mo;
|