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